From e425f97dbf7ef5d7b2b3ba7d73b579122fa42251 Mon Sep 17 00:00:00 2001 From: Alper Rifat Ulucinar Date: Mon, 31 Jul 2023 16:23:12 +0300 Subject: [PATCH] Add an event filter with the resource.DesiredStateChanged predicate to filter status updates out - Generate the spec.initProvider API for the MRs. Signed-off-by: Alper Rifat Ulucinar --- .../v1beta1/zz_generated.deepcopy.go | 2631 +- .../v1beta1/zz_generated.managed.go | 60 +- .../v1beta1/zz_generated_terraformed.go | 50 + .../zz_monitoractionruleactiongroup_types.go | 190 +- .../zz_monitoractionrulesuppression_types.go | 231 +- ...toralertprocessingruleactiongroup_types.go | 329 +- ...toralertprocessingrulesuppression_types.go | 329 +- .../zz_monitorsmartdetectoralertrule_types.go | 61 +- .../v1beta1/zz_generated.deepcopy.go | 104 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_server_types.go | 69 +- apis/apimanagement/v1beta1/zz_api_types.go | 181 +- .../v1beta1/zz_apidiagnostic_types.go | 265 +- .../v1beta1/zz_apioperation_types.go | 548 +- .../v1beta1/zz_apioperationpolicy_types.go | 21 + .../v1beta1/zz_apioperationtag_types.go | 20 +- .../v1beta1/zz_apipolicy_types.go | 21 + .../v1beta1/zz_apirelease_types.go | 18 + .../v1beta1/zz_apischema_types.go | 29 +- apis/apimanagement/v1beta1/zz_apitag_types.go | 15 + .../v1beta1/zz_apiversionset_types.go | 34 +- .../v1beta1/zz_authorizationserver_types.go | 86 +- .../apimanagement/v1beta1/zz_backend_types.go | 142 +- .../v1beta1/zz_certificate_types.go | 18 + .../v1beta1/zz_diagnostic_types.go | 265 +- .../v1beta1/zz_emailtemplate_types.go | 25 +- .../apimanagement/v1beta1/zz_gateway_types.go | 42 +- .../v1beta1/zz_gatewayapi_types.go | 15 + .../v1beta1/zz_generated.deepcopy.go | 5013 +++- .../v1beta1/zz_generated.managed.go | 456 +- .../v1beta1/zz_generated_terraformed.go | 380 + .../v1beta1/zz_globalschema_types.go | 28 +- .../v1beta1/zz_identityprovideraad_types.go | 30 +- .../zz_identityproviderfacebook_types.go | 22 +- .../zz_identityprovidergoogle_types.go | 22 +- .../zz_identityprovidermicrosoft_types.go | 22 +- .../zz_identityprovidertwitter_types.go | 19 +- apis/apimanagement/v1beta1/zz_logger_types.go | 40 +- .../v1beta1/zz_management_types.go | 305 +- .../v1beta1/zz_namedvalue_types.go | 42 +- .../zz_notificationrecipientemail_types.go | 15 + .../zz_notificationrecipientuser_types.go | 20 +- .../v1beta1/zz_openidconnectprovider_types.go | 32 +- apis/apimanagement/v1beta1/zz_policy_types.go | 21 + .../apimanagement/v1beta1/zz_product_types.go | 40 +- .../v1beta1/zz_productapi_types.go | 15 + .../v1beta1/zz_productpolicy_types.go | 21 + .../v1beta1/zz_producttag_types.go | 15 + .../v1beta1/zz_rediscache_types.go | 23 +- .../v1beta1/zz_subscription_types.go | 27 + apis/apimanagement/v1beta1/zz_tag_types.go | 18 + apis/apimanagement/v1beta1/zz_user_types.go | 39 +- .../v1beta1/zz_configuration_types.go | 72 +- .../v1beta1/zz_generated.deepcopy.go | 179 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_generated.deepcopy.go | 1981 +- .../v1beta1/zz_generated.managed.go | 264 +- .../v1beta1/zz_generated_terraformed.go | 220 + .../zz_springcloudaccelerator_types.go | 20 +- .../zz_springcloudactivedeployment_types.go | 15 + .../v1beta1/zz_springcloudapiportal_types.go | 42 + ..._springcloudapiportalcustomdomain_types.go | 23 +- .../v1beta1/zz_springcloudapp_types.go | 116 +- ...springcloudappcosmosdbassociation_types.go | 35 +- ...zz_springcloudappmysqlassociation_types.go | 17 +- ...zz_springcloudappredisassociation_types.go | 18 + .../zz_springcloudbuilddeployment_types.go | 41 +- .../v1beta1/zz_springcloudbuilder_types.go | 60 +- .../zz_springcloudbuildpackbinding_types.go | 30 + .../zz_springcloudcertificate_types.go | 18 + ...z_springcloudconfigurationservice_types.go | 64 +- ...zz_springcloudcontainerdeployment_types.go | 55 +- .../zz_springcloudcustomdomain_types.go | 26 +- ..._springcloudcustomizedaccelerator_types.go | 76 +- .../zz_springclouddevtoolportal_types.go | 47 +- .../v1beta1/zz_springcloudgateway_types.go | 105 + ...zz_springcloudgatewaycustomdomain_types.go | 23 +- .../zz_springcloudjavadeployment_types.go | 39 + .../v1beta1/zz_springcloudservice_types.go | 170 +- .../v1beta1/zz_springcloudstorage_types.go | 15 + .../v1beta1/zz_generated.deepcopy.go | 88 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + apis/attestation/v1beta1/zz_provider_types.go | 43 +- .../v1beta1/zz_generated.deepcopy.go | 1290 +- .../v1beta1/zz_generated.managed.go | 108 +- .../v1beta1/zz_generated_terraformed.go | 90 + .../v1beta1/zz_managementlock_types.go | 28 +- .../v1beta1/zz_policydefinition_types.go | 45 +- .../zz_resourcegrouppolicyassignment_types.go | 125 +- .../zz_resourcepolicyassignment_types.go | 135 +- .../zz_resourcepolicyexemption_types.go | 40 +- .../v1beta1/zz_roleassignment_types.go | 46 +- .../v1beta1/zz_roledefinition_types.go | 52 +- .../zz_subscriptionpolicyassignment_types.go | 130 +- .../zz_subscriptionpolicyexemption_types.go | 40 +- apis/automation/v1beta1/zz_account_types.go | 70 +- .../automation/v1beta1/zz_connection_types.go | 28 +- .../zz_connectionclassiccertificate_types.go | 33 +- .../v1beta1/zz_connectiontype_types.go | 51 +- .../automation/v1beta1/zz_credential_types.go | 25 +- .../v1beta1/zz_generated.deepcopy.go | 1119 +- .../v1beta1/zz_generated.managed.go | 168 +- .../v1beta1/zz_generated_terraformed.go | 140 + .../zz_hybridrunbookworkergroup_types.go | 28 +- apis/automation/v1beta1/zz_module_types.go | 50 +- apis/automation/v1beta1/zz_runbook_types.go | 181 +- apis/automation/v1beta1/zz_schedule_types.go | 61 +- .../v1beta1/zz_variablebool_types.go | 24 + .../v1beta1/zz_variabledatetime_types.go | 24 + .../v1beta1/zz_variableint_types.go | 24 + .../v1beta1/zz_variablestring_types.go | 24 + apis/automation/v1beta1/zz_webhook_types.go | 34 +- apis/azure/v1beta1/zz_generated.deepcopy.go | 140 + apis/azure/v1beta1/zz_generated.managed.go | 36 +- .../azure/v1beta1/zz_generated_terraformed.go | 30 + apis/azure/v1beta1/zz_resourcegroup_types.go | 23 +- .../zz_resourceproviderregistration_types.go | 40 +- apis/azure/v1beta1/zz_subscription_types.go | 35 +- .../azurestackhci/v1beta1/zz_cluster_types.go | 31 +- .../v1beta1/zz_generated.deepcopy.go | 46 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_botchannelalexa_types.go | 25 +- .../v1beta1/zz_botchanneldirectline_types.go | 50 +- .../v1beta1/zz_botchannelline_types.go | 28 +- .../v1beta1/zz_botchannelmsteams_types.go | 26 +- .../v1beta1/zz_botchannelslack_types.go | 32 +- .../v1beta1/zz_botchannelsms_types.go | 32 +- .../zz_botchannelsregistration_types.go | 68 +- .../v1beta1/zz_botchannelwebchat_types.go | 25 +- .../v1beta1/zz_botconnection_types.go | 41 +- apis/botservice/v1beta1/zz_botwebapp_types.go | 48 +- .../v1beta1/zz_generated.deepcopy.go | 515 + .../v1beta1/zz_generated.managed.go | 120 +- .../v1beta1/zz_generated_terraformed.go | 100 + apis/cache/v1beta1/zz_generated.deepcopy.go | 457 + apis/cache/v1beta1/zz_generated.managed.go | 60 +- .../cache/v1beta1/zz_generated_terraformed.go | 50 + apis/cache/v1beta1/zz_rediscache_types.go | 141 +- .../zz_redisenterprisecluster_types.go | 34 +- .../zz_redisenterprisedatabase_types.go | 49 +- .../v1beta1/zz_redisfirewallrule_types.go | 25 +- .../v1beta1/zz_redislinkedserver_types.go | 25 +- apis/cdn/v1beta1/zz_endpoint_types.go | 707 +- .../v1beta1/zz_frontdoorcustomdomain_types.go | 37 +- ..._frontdoorcustomdomainassociation_types.go | 15 + .../cdn/v1beta1/zz_frontdoorendpoint_types.go | 21 + apis/cdn/v1beta1/zz_frontdoororigin_types.go | 50 +- .../v1beta1/zz_frontdoororigingroup_types.go | 64 +- apis/cdn/v1beta1/zz_frontdoorprofile_types.go | 26 +- apis/cdn/v1beta1/zz_frontdoorroute_types.go | 58 +- apis/cdn/v1beta1/zz_frontdoorrule_types.go | 574 +- apis/cdn/v1beta1/zz_frontdoorruleset_types.go | 15 + apis/cdn/v1beta1/zz_generated.deepcopy.go | 8788 ++++--- apis/cdn/v1beta1/zz_generated.managed.go | 132 +- apis/cdn/v1beta1/zz_generated_terraformed.go | 110 + apis/cdn/v1beta1/zz_profile_types.go | 28 +- .../zz_appservicecertificateorder_types.go | 44 +- .../v1beta1/zz_generated.deepcopy.go | 81 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_account_types.go | 142 +- .../v1beta1/zz_generated.deepcopy.go | 279 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_generated.deepcopy.go | 36 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../communication/v1beta1/zz_service_types.go | 21 + .../v1beta1/zz_availabilityset_types.go | 35 +- .../v1beta1/zz_capacityreservation_types.go | 43 +- .../zz_capacityreservationgroup_types.go | 26 +- .../compute/v1beta1/zz_dedicatedhost_types.go | 39 +- apis/compute/v1beta1/zz_diskaccess_types.go | 23 +- .../v1beta1/zz_diskencryptionset_types.go | 50 +- .../v1beta1/zz_galleryapplication_types.go | 43 +- .../zz_galleryapplicationversion_types.go | 91 +- apis/compute/v1beta1/zz_generated.deepcopy.go | 17600 ++++++++----- apis/compute/v1beta1/zz_generated.managed.go | 252 +- .../v1beta1/zz_generated_terraformed.go | 210 + apis/compute/v1beta1/zz_image_types.go | 78 +- .../v1beta1/zz_linuxvirtualmachine_types.go | 347 +- .../zz_linuxvirtualmachinescaleset_types.go | 753 +- apis/compute/v1beta1/zz_manageddisk_types.go | 156 +- .../v1beta1/zz_manageddisksastoken_types.go | 25 +- ...rchestratedvirtualmachinescaleset_types.go | 706 +- .../zz_proximityplacementgroup_types.go | 29 +- apis/compute/v1beta1/zz_sharedimage_types.go | 127 +- .../v1beta1/zz_sharedimagegallery_types.go | 26 +- apis/compute/v1beta1/zz_snapshot_types.go | 88 +- apis/compute/v1beta1/zz_sshpublickey_types.go | 28 +- .../v1beta1/zz_windowsvirtualmachine_types.go | 371 +- .../zz_windowsvirtualmachinescaleset_types.go | 772 +- .../v1beta1/zz_generated.deepcopy.go | 110 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_ledger_types.go | 77 +- .../v1beta1/zz_budgetmanagementgroup_types.go | 188 +- .../v1beta1/zz_budgetresourcegroup_types.go | 190 +- .../v1beta1/zz_budgetsubscription_types.go | 187 +- .../v1beta1/zz_generated.deepcopy.go | 1076 +- .../v1beta1/zz_generated.managed.go | 36 +- .../v1beta1/zz_generated_terraformed.go | 30 + .../v1beta1/zz_agentpool_types.go | 29 +- .../zz_containerconnectedregistry_types.go | 65 +- .../v1beta1/zz_generated.deepcopy.go | 756 +- .../v1beta1/zz_generated.managed.go | 84 +- .../v1beta1/zz_generated_terraformed.go | 70 + .../v1beta1/zz_registry_types.go | 153 +- .../v1beta1/zz_scopemap_types.go | 23 +- .../v1beta1/zz_token_types.go | 18 + .../v1beta1/zz_tokenpassword_types.go | 35 +- .../v1beta1/zz_webhook_types.go | 42 +- .../v1beta1/zz_generated.deepcopy.go | 2951 ++- .../v1beta1/zz_generated.managed.go | 36 +- .../v1beta1/zz_generated_terraformed.go | 30 + .../v1beta1/zz_kubernetescluster_types.go | 906 +- .../zz_kubernetesclusternodepool_types.go | 291 +- .../zz_kubernetesfleetmanager_types.go | 34 +- apis/cosmosdb/v1beta1/zz_account_types.go | 285 +- .../v1beta1/zz_cassandracluster_types.go | 59 +- .../v1beta1/zz_cassandradatacenter_types.go | 44 +- .../v1beta1/zz_cassandrakeyspace_types.go | 27 + .../v1beta1/zz_cassandratable_types.go | 102 +- .../cosmosdb/v1beta1/zz_generated.deepcopy.go | 2096 +- apis/cosmosdb/v1beta1/zz_generated.managed.go | 216 +- .../v1beta1/zz_generated_terraformed.go | 180 + .../v1beta1/zz_gremlindatabase_types.go | 27 + .../cosmosdb/v1beta1/zz_gremlingraph_types.go | 135 +- .../v1beta1/zz_mongocollection_types.go | 55 +- .../v1beta1/zz_mongodatabase_types.go | 27 + .../cosmosdb/v1beta1/zz_sqlcontainer_types.go | 151 +- apis/cosmosdb/v1beta1/zz_sqldatabase_types.go | 27 + .../v1beta1/zz_sqldedicatedgateway_types.go | 25 +- apis/cosmosdb/v1beta1/zz_sqlfunction_types.go | 20 +- .../v1beta1/zz_sqlroleassignment_types.go | 23 +- .../v1beta1/zz_sqlroledefinition_types.go | 46 +- .../v1beta1/zz_sqlstoredprocedure_types.go | 20 +- apis/cosmosdb/v1beta1/zz_sqltrigger_types.go | 30 +- apis/cosmosdb/v1beta1/zz_table_types.go | 27 + .../v1beta1/zz_costanomalyalert_types.go | 33 +- .../v1beta1/zz_generated.deepcopy.go | 237 + .../v1beta1/zz_generated.managed.go | 36 +- .../v1beta1/zz_generated_terraformed.go | 30 + ...resourcegroupcostmanagementexport_types.go | 70 +- ..._subscriptioncostmanagementexport_types.go | 75 +- .../v1beta1/zz_customprovider_types.go | 79 +- .../v1beta1/zz_generated.deepcopy.go | 132 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + apis/databoxedge/v1beta1/zz_device_types.go | 31 +- .../v1beta1/zz_generated.deepcopy.go | 56 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_accessconnector_types.go | 39 +- .../v1beta1/zz_generated.deepcopy.go | 273 + .../v1beta1/zz_generated.managed.go | 36 +- .../v1beta1/zz_generated_terraformed.go | 30 + apis/databricks/v1beta1/zz_workspace_types.go | 94 +- .../zz_workspacecustomermanagedkey_types.go | 15 + .../v1beta1/zz_customdataset_types.go | 54 +- apis/datafactory/v1beta1/zz_dataflow_types.go | 285 +- .../v1beta1/zz_datasetazureblob_types.go | 61 +- .../v1beta1/zz_datasetbinary_types.go | 133 +- .../v1beta1/zz_datasetcosmosdbsqlapi_types.go | 52 +- .../v1beta1/zz_datasetdelimitedtext_types.go | 156 +- .../v1beta1/zz_datasethttp_types.go | 58 +- .../v1beta1/zz_datasetjson_types.go | 121 +- .../v1beta1/zz_datasetmysql_types.go | 52 +- .../v1beta1/zz_datasetparquet_types.go | 112 +- .../v1beta1/zz_datasetpostgresql_types.go | 52 +- .../v1beta1/zz_datasetsnowflake_types.go | 58 +- .../v1beta1/zz_datasetsqlservertable_types.go | 52 +- apis/datafactory/v1beta1/zz_factory_types.go | 170 +- .../v1beta1/zz_generated.deepcopy.go | 7741 +++++- .../v1beta1/zz_generated.managed.go | 540 +- .../v1beta1/zz_generated_terraformed.go | 450 + .../zz_integrationruntimeazure_types.go | 38 +- .../zz_integrationruntimeazuressis_types.go | 236 +- .../zz_integrationruntimemanaged_types.go | 85 +- .../zz_integrationruntimeselfhosted_types.go | 31 +- .../v1beta1/zz_linkedcustomservice_types.go | 53 +- .../zz_linkedserviceazureblobstorage_types.go | 74 +- .../zz_linkedserviceazuredatabricks_types.go | 128 +- .../zz_linkedserviceazurefilestorage_types.go | 61 +- .../zz_linkedserviceazurefunction_types.go | 55 +- .../zz_linkedserviceazuresearch_types.go | 35 +- .../zz_linkedserviceazuresqldatabase_types.go | 85 +- ...zz_linkedserviceazuretablestorage_types.go | 32 +- .../v1beta1/zz_linkedservicecosmosdb_types.go | 36 + .../zz_linkedservicecosmosdbmongoapi_types.go | 36 + ..._linkedservicedatalakestoragegen2_types.go | 50 +- .../v1beta1/zz_linkedservicekeyvault_types.go | 30 + .../v1beta1/zz_linkedservicekusto_types.go | 39 + .../v1beta1/zz_linkedservicemysql_types.go | 35 +- .../v1beta1/zz_linkedserviceodata_types.go | 48 +- .../v1beta1/zz_linkedserviceodbc_types.go | 48 +- .../zz_linkedservicepostgresql_types.go | 35 +- .../v1beta1/zz_linkedservicesftp_types.go | 58 +- .../zz_linkedservicesnowflake_types.go | 48 +- .../zz_linkedservicesqlserver_types.go | 69 +- .../v1beta1/zz_linkedservicesynapse_types.go | 48 +- .../v1beta1/zz_linkedserviceweb_types.go | 43 +- .../zz_managedprivateendpoint_types.go | 26 +- apis/datafactory/v1beta1/zz_pipeline_types.go | 39 + .../v1beta1/zz_triggerblobevent_types.go | 52 +- .../v1beta1/zz_triggercustomevent_types.go | 49 +- .../v1beta1/zz_triggerschedule_types.go | 92 +- .../zz_databasemigrationproject_types.go | 38 +- .../zz_databasemigrationservice_types.go | 33 +- .../v1beta1/zz_generated.deepcopy.go | 97 + .../v1beta1/zz_generated.managed.go | 24 +- .../v1beta1/zz_generated_terraformed.go | 20 + .../zz_backupinstanceblobstorage_types.go | 20 +- .../v1beta1/zz_backupinstancedisk_types.go | 20 +- .../zz_backupinstancepostgresql_types.go | 20 +- .../zz_backuppolicyblobstorage_types.go | 20 +- .../v1beta1/zz_backuppolicydisk_types.go | 65 +- .../zz_backuppolicypostgresql_types.go | 77 +- .../v1beta1/zz_backupvault_types.go | 46 +- .../v1beta1/zz_generated.deepcopy.go | 440 + .../v1beta1/zz_generated.managed.go | 96 +- .../v1beta1/zz_generated_terraformed.go | 80 + .../v1beta1/zz_resourceguard_types.go | 26 +- apis/datashare/v1beta1/zz_account_types.go | 38 +- .../v1beta1/zz_datasetblobstorage_types.go | 36 +- .../v1beta1/zz_datasetdatalakegen2_types.go | 21 + .../v1beta1/zz_datasetkustocluster_types.go | 15 + .../v1beta1/zz_datasetkustodatabase_types.go | 15 + apis/datashare/v1beta1/zz_datashare_types.go | 53 +- .../v1beta1/zz_generated.deepcopy.go | 242 + .../datashare/v1beta1/zz_generated.managed.go | 72 +- .../v1beta1/zz_generated_terraformed.go | 60 + .../v1beta1/zz_configuration_types.go | 25 +- .../dbformariadb/v1beta1/zz_database_types.go | 25 +- .../v1beta1/zz_firewallrule_types.go | 25 +- .../v1beta1/zz_generated.deepcopy.go | 190 + .../v1beta1/zz_generated.managed.go | 60 +- .../v1beta1/zz_generated_terraformed.go | 50 + apis/dbformariadb/v1beta1/zz_server_types.go | 65 +- .../v1beta1/zz_virtualnetworkrule_types.go | 15 + .../zz_activedirectoryadministrator_types.go | 30 +- .../v1beta1/zz_configuration_types.go | 25 +- apis/dbformysql/v1beta1/zz_database_types.go | 25 +- .../v1beta1/zz_firewallrule_types.go | 25 +- .../v1beta1/zz_flexibledatabase_types.go | 25 +- .../v1beta1/zz_flexibleserver_types.go | 137 +- .../zz_flexibleserverconfiguration_types.go | 20 +- .../zz_flexibleserverfirewallrule_types.go | 25 +- .../v1beta1/zz_generated.deepcopy.go | 821 +- .../v1beta1/zz_generated.managed.go | 120 +- .../v1beta1/zz_generated_terraformed.go | 100 + apis/dbformysql/v1beta1/zz_server_types.go | 108 +- .../v1beta1/zz_virtualnetworkrule_types.go | 15 + .../zz_activedirectoryadministrator_types.go | 30 +- .../v1beta1/zz_configuration_types.go | 25 +- .../v1beta1/zz_database_types.go | 25 +- .../v1beta1/zz_firewallrule_types.go | 25 +- .../v1beta1/zz_flexibleserver_types.go | 130 +- .../zz_flexibleserverconfiguration_types.go | 25 +- .../zz_flexibleserverdatabase_types.go | 21 + .../zz_flexibleserverfirewallrule_types.go | 25 +- .../v1beta1/zz_generated.deepcopy.go | 798 +- .../v1beta1/zz_generated.managed.go | 132 +- .../v1beta1/zz_generated_terraformed.go | 110 + .../v1beta1/zz_server_types.go | 108 +- .../v1beta1/zz_serverkey_types.go | 15 + .../v1beta1/zz_virtualnetworkrule_types.go | 18 + apis/devices/v1beta1/zz_generated.deepcopy.go | 1015 +- apis/devices/v1beta1/zz_generated.managed.go | 168 +- .../v1beta1/zz_generated_terraformed.go | 140 + apis/devices/v1beta1/zz_iothub_types.go | 184 +- .../v1beta1/zz_iothubcertificate_types.go | 20 +- .../v1beta1/zz_iothubconsumergroup_types.go | 15 + apis/devices/v1beta1/zz_iothubdps_types.go | 103 +- .../v1beta1/zz_iothubdpscertificate_types.go | 20 +- .../zz_iothubdpssharedaccesspolicy_types.go | 30 + .../zz_iothubendpointeventhub_types.go | 27 + .../zz_iothubendpointservicebusqueue_types.go | 27 + .../zz_iothubendpointservicebustopic_types.go | 27 + ...zz_iothubendpointstoragecontainer_types.go | 36 + .../v1beta1/zz_iothubenrichment_types.go | 30 +- .../v1beta1/zz_iothubfallbackroute_types.go | 26 +- apis/devices/v1beta1/zz_iothubroute_types.go | 33 +- .../zz_iothubsharedaccesspolicy_types.go | 27 + .../v1beta1/zz_generated.deepcopy.go | 140 + .../v1beta1/zz_generated.managed.go | 24 +- .../v1beta1/zz_generated_terraformed.go | 20 + .../zz_iothubdeviceupdateaccount_types.go | 45 +- .../zz_iothubdeviceupdateinstance_types.go | 27 + .../v1beta1/zz_generated.deepcopy.go | 745 +- .../v1beta1/zz_generated.managed.go | 84 +- .../v1beta1/zz_generated_terraformed.go | 70 + .../zz_globalvmshutdownschedule_types.go | 60 +- apis/devtestlab/v1beta1/zz_lab_types.go | 26 +- .../v1beta1/zz_linuxvirtualmachine_types.go | 111 +- apis/devtestlab/v1beta1/zz_policy_types.go | 44 +- apis/devtestlab/v1beta1/zz_schedule_types.go | 95 +- .../v1beta1/zz_virtualnetwork_types.go | 38 +- .../v1beta1/zz_windowsvirtualmachine_types.go | 110 +- .../v1beta1/zz_generated.deepcopy.go | 63 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../digitaltwins/v1beta1/zz_instance_types.go | 36 +- .../v1beta1/zz_cloudelasticsearch_types.go | 78 +- apis/elastic/v1beta1/zz_generated.deepcopy.go | 125 + apis/elastic/v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + apis/eventgrid/v1beta1/zz_domain_types.go | 105 +- .../eventgrid/v1beta1/zz_domaintopic_types.go | 15 + .../v1beta1/zz_eventsubscription_types.go | 585 +- .../v1beta1/zz_generated.deepcopy.go | 1745 +- .../eventgrid/v1beta1/zz_generated.managed.go | 60 +- .../v1beta1/zz_generated_terraformed.go | 50 + .../eventgrid/v1beta1/zz_systemtopic_types.go | 44 +- apis/eventgrid/v1beta1/zz_topic_types.go | 99 +- .../v1beta1/zz_authorizationrule_types.go | 24 + .../v1beta1/zz_consumergroup_types.go | 18 + apis/eventhub/v1beta1/zz_eventhub_types.go | 95 +- .../v1beta1/zz_eventhubnamespace_types.go | 104 +- .../eventhub/v1beta1/zz_generated.deepcopy.go | 460 + apis/eventhub/v1beta1/zz_generated.managed.go | 84 +- .../v1beta1/zz_generated_terraformed.go | 70 + .../zz_namespaceauthorizationrule_types.go | 24 + ...z_namespacedisasterrecoveryconfig_types.go | 15 + .../v1beta1/zz_namespaceschemagroup_types.go | 25 +- .../v1beta1/zz_generated.deepcopy.go | 84 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + apis/fluidrelay/v1beta1/zz_server_types.go | 47 +- .../v1beta1/zz_generated.deepcopy.go | 95 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + ...ualmachineconfigurationassignment_types.go | 60 +- .../v1beta1/zz_generated.deepcopy.go | 5346 +++- .../hdinsight/v1beta1/zz_generated.managed.go | 60 +- .../v1beta1/zz_generated_terraformed.go | 50 + .../v1beta1/zz_hadoopcluster_types.go | 650 +- .../v1beta1/zz_hbasecluster_types.go | 529 +- .../zz_interactivequerycluster_types.go | 562 +- .../v1beta1/zz_kafkacluster_types.go | 568 +- .../v1beta1/zz_sparkcluster_types.go | 562 +- .../v1beta1/zz_generated.deepcopy.go | 41 + .../healthbot/v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + apis/healthbot/v1beta1/zz_healthbot_types.go | 28 +- .../v1beta1/zz_generated.deepcopy.go | 686 +- .../v1beta1/zz_generated.managed.go | 72 +- .../v1beta1/zz_generated_terraformed.go | 60 + .../zz_healthcaredicomservice_types.go | 48 +- .../v1beta1/zz_healthcarefhirservice_types.go | 129 +- .../zz_healthcaremedtechservice_types.go | 42 +- ...caremedtechservicefhirdestination_types.go | 30 +- .../v1beta1/zz_healthcareservice_types.go | 75 +- .../v1beta1/zz_healthcareworkspace_types.go | 26 +- .../v1beta1/zz_applicationinsights_types.go | 55 +- ..._applicationinsightsanalyticsitem_types.go | 38 +- .../zz_applicationinsightsapikey_types.go | 26 +- ...icationinsightssmartdetectionrule_types.go | 29 +- ...pplicationinsightsstandardwebtest_types.go | 124 +- .../zz_applicationinsightswebtest_types.go | 58 +- .../zz_applicationinsightsworkbook_types.go | 66 +- ...plicationinsightsworkbooktemplate_types.go | 73 +- .../insights/v1beta1/zz_generated.deepcopy.go | 4638 +++- apis/insights/v1beta1/zz_generated.managed.go | 240 +- .../v1beta1/zz_generated_terraformed.go | 200 + .../v1beta1/zz_monitoractiongroup_types.go | 381 +- .../zz_monitoractivitylogalert_types.go | 116 +- .../zz_monitorautoscalesetting_types.go | 303 +- .../zz_monitordatacollectionendpoint_types.go | 32 +- .../zz_monitordatacollectionrule_types.go | 590 +- ...itordatacollectionruleassociation_types.go | 18 + .../v1beta1/zz_monitormetricalert_types.go | 231 +- .../zz_monitorprivatelinkscope_types.go | 18 + ...z_monitorprivatelinkscopedservice_types.go | 15 + ...z_monitorscheduledqueryrulesalert_types.go | 131 +- ...monitorscheduledqueryrulesalertv2_types.go | 164 +- .../zz_monitorscheduledqueryruleslog_types.go | 79 +- .../v1beta1/zz_application_types.go | 58 +- .../zz_applicationnetworkruleset_types.go | 41 +- .../v1beta1/zz_generated.deepcopy.go | 151 + .../v1beta1/zz_generated.managed.go | 24 +- .../v1beta1/zz_generated_terraformed.go | 20 + .../keyvault/v1beta1/zz_accesspolicy_types.go | 40 +- apis/keyvault/v1beta1/zz_certificate_types.go | 188 +- .../v1beta1/zz_certificatecontacts_types.go | 36 +- .../v1beta1/zz_certificateissuer_types.go | 48 +- .../keyvault/v1beta1/zz_generated.deepcopy.go | 1168 +- apis/keyvault/v1beta1/zz_generated.managed.go | 120 +- .../v1beta1/zz_generated_terraformed.go | 100 + apis/keyvault/v1beta1/zz_key_types.go | 64 +- .../zz_managedhardwaresecuritymodule_types.go | 67 +- .../v1beta1/zz_managedstorageaccount_types.go | 29 +- ...dstorageaccountsastokendefinition_types.go | 33 +- apis/keyvault/v1beta1/zz_secret_types.go | 29 +- apis/keyvault/v1beta1/zz_vault_types.go | 102 +- .../zz_attacheddatabaseconfiguration_types.go | 52 +- apis/kusto/v1beta1/zz_cluster_types.go | 139 +- .../zz_clustermanagedprivateendpoint_types.go | 23 +- .../zz_clusterprincipalassignment_types.go | 35 +- apis/kusto/v1beta1/zz_database_types.go | 26 +- .../zz_databaseprincipalassignment_types.go | 35 +- .../zz_eventgriddataconnection_types.go | 44 +- .../zz_eventhubdataconnection_types.go | 41 +- apis/kusto/v1beta1/zz_generated.deepcopy.go | 724 +- apis/kusto/v1beta1/zz_generated.managed.go | 108 +- .../kusto/v1beta1/zz_generated_terraformed.go | 90 + .../v1beta1/zz_iothubdataconnection_types.go | 40 +- .../v1beta1/zz_generated.deepcopy.go | 572 + .../v1beta1/zz_generated.managed.go | 24 +- .../v1beta1/zz_generated_terraformed.go | 20 + .../v1beta1/zz_labservicelab_types.go | 205 +- .../v1beta1/zz_labserviceplan_types.go | 85 +- .../logic/v1beta1/zz_appactioncustom_types.go | 20 +- apis/logic/v1beta1/zz_appactionhttp_types.go | 54 +- .../v1beta1/zz_appintegrationaccount_types.go | 36 +- ...egrationaccountbatchconfiguration_types.go | 109 +- .../zz_appintegrationaccountpartner_types.go | 40 +- .../zz_appintegrationaccountschema_types.go | 26 +- .../zz_appintegrationaccountsession_types.go | 20 +- .../v1beta1/zz_apptriggercustom_types.go | 20 +- .../v1beta1/zz_apptriggerhttprequest_types.go | 26 +- .../v1beta1/zz_apptriggerrecurrence_types.go | 46 +- apis/logic/v1beta1/zz_appworkflow_types.go | 155 +- apis/logic/v1beta1/zz_generated.deepcopy.go | 1223 +- apis/logic/v1beta1/zz_generated.managed.go | 144 +- .../logic/v1beta1/zz_generated_terraformed.go | 120 + .../zz_integrationserviceenvironment_types.go | 31 +- apis/logz/v1beta1/zz_generated.deepcopy.go | 349 + apis/logz/v1beta1/zz_generated.managed.go | 48 +- apis/logz/v1beta1/zz_generated_terraformed.go | 40 + apis/logz/v1beta1/zz_monitor_types.go | 100 +- apis/logz/v1beta1/zz_subaccount_types.go | 57 +- .../v1beta1/zz_subaccounttagrule_types.go | 47 +- apis/logz/v1beta1/zz_tagrule_types.go | 47 +- .../v1beta1/zz_computecluster_types.go | 111 +- .../v1beta1/zz_computeinstance_types.go | 78 +- .../v1beta1/zz_generated.deepcopy.go | 554 + .../v1beta1/zz_generated.managed.go | 48 +- .../v1beta1/zz_generated_terraformed.go | 40 + .../v1beta1/zz_synapsespark_types.go | 45 +- .../v1beta1/zz_workspace_types.go | 74 +- .../v1beta1/zz_generated.deepcopy.go | 292 + .../v1beta1/zz_generated.managed.go | 36 +- .../v1beta1/zz_generated_terraformed.go | 30 + ...aintenanceassignmentdedicatedhost_types.go | 20 +- ...intenanceassignmentvirtualmachine_types.go | 20 +- .../zz_maintenanceconfiguration_types.go | 105 +- .../zz_federatedidentitycredential_types.go | 30 +- .../v1beta1/zz_generated.deepcopy.go | 78 + .../v1beta1/zz_generated.managed.go | 24 +- .../v1beta1/zz_generated_terraformed.go | 20 + .../v1beta1/zz_userassignedidentity_types.go | 28 +- .../v1beta1/zz_generated.deepcopy.go | 48 + .../v1beta1/zz_generated.managed.go | 24 +- .../v1beta1/zz_generated_terraformed.go | 20 + .../v1beta1/zz_managementgroup_types.go | 21 + ...ementgroupsubscriptionassociation_types.go | 15 + apis/maps/v1beta1/zz_account_types.go | 23 +- apis/maps/v1beta1/zz_creator_types.go | 28 +- apis/maps/v1beta1/zz_generated.deepcopy.go | 77 + apis/maps/v1beta1/zz_generated.managed.go | 24 +- apis/maps/v1beta1/zz_generated_terraformed.go | 20 + .../v1beta1/zz_generated.deepcopy.go | 31 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_marketplaceagreement_types.go | 30 +- apis/media/v1beta1/zz_asset_types.go | 27 + apis/media/v1beta1/zz_assetfilter_types.go | 69 +- .../v1beta1/zz_contentkeypolicy_types.go | 199 +- apis/media/v1beta1/zz_generated.deepcopy.go | 4232 +++- apis/media/v1beta1/zz_generated.managed.go | 144 +- .../media/v1beta1/zz_generated_terraformed.go | 120 + apis/media/v1beta1/zz_job_types.go | 43 +- apis/media/v1beta1/zz_liveevent_types.go | 139 +- .../media/v1beta1/zz_liveeventoutput_types.go | 34 +- .../media/v1beta1/zz_servicesaccount_types.go | 104 +- .../v1beta1/zz_servicesaccountfilter_types.go | 85 +- .../v1beta1/zz_streamingendpoint_types.go | 100 +- .../v1beta1/zz_streaminglocator_types.go | 59 +- .../media/v1beta1/zz_streamingpolicy_types.go | 287 +- apis/media/v1beta1/zz_transform_types.go | 727 +- .../v1beta1/zz_generated.deepcopy.go | 36 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_spatialanchorsaccount_types.go | 23 +- apis/netapp/v1beta1/zz_account_types.go | 60 +- apis/netapp/v1beta1/zz_generated.deepcopy.go | 626 +- apis/netapp/v1beta1/zz_generated.managed.go | 60 +- .../v1beta1/zz_generated_terraformed.go | 50 + apis/netapp/v1beta1/zz_pool_types.go | 36 +- apis/netapp/v1beta1/zz_snapshot_types.go | 20 +- .../netapp/v1beta1/zz_snapshotpolicy_types.go | 143 +- apis/netapp/v1beta1/zz_volume_types.go | 120 +- .../v1beta1/zz_applicationgateway_types.go | 996 +- .../zz_applicationsecuritygroup_types.go | 23 +- .../v1beta1/zz_connectionmonitor_types.go | 231 +- .../v1beta1/zz_ddosprotectionplan_types.go | 23 +- .../network/v1beta1/zz_dnsaaaarecord_types.go | 26 +- apis/network/v1beta1/zz_dnsarecord_types.go | 26 +- apis/network/v1beta1/zz_dnscaarecord_types.go | 52 +- .../v1beta1/zz_dnscnamerecord_types.go | 26 +- apis/network/v1beta1/zz_dnsmxrecord_types.go | 45 +- apis/network/v1beta1/zz_dnsnsrecord_types.go | 28 +- apis/network/v1beta1/zz_dnsptrrecord_types.go | 28 +- apis/network/v1beta1/zz_dnssrvrecord_types.go | 59 +- apis/network/v1beta1/zz_dnstxtrecord_types.go | 38 +- apis/network/v1beta1/zz_dnszone_types.go | 59 +- .../v1beta1/zz_expressroutecircuit_types.go | 63 +- ..._expressroutecircuitauthorization_types.go | 15 + .../zz_expressroutecircuitconnection_types.go | 23 +- .../zz_expressroutecircuitpeering_types.go | 101 +- .../zz_expressrouteconnection_types.go | 54 + .../v1beta1/zz_expressroutegateway_types.go | 31 +- .../v1beta1/zz_expressrouteport_types.go | 97 +- apis/network/v1beta1/zz_firewall_types.go | 97 +- ...firewallapplicationrulecollection_types.go | 75 +- .../zz_firewallnatrulecollection_types.go | 84 +- .../zz_firewallnetworkrulecollection_types.go | 72 +- .../v1beta1/zz_firewallpolicy_types.go | 234 +- ...firewallpolicyrulecollectiongroup_types.go | 260 +- apis/network/v1beta1/zz_frontdoor_types.go | 309 +- ...frontdoorcustomhttpsconfiguration_types.go | 40 +- .../zz_frontdoorfirewallpolicy_types.go | 245 +- .../v1beta1/zz_frontdoorrulesengine_types.go | 102 +- apis/network/v1beta1/zz_generated.deepcopy.go | 13842 ++++++++++- apis/network/v1beta1/zz_generated.managed.go | 1296 +- .../v1beta1/zz_generated_terraformed.go | 1082 +- apis/network/v1beta1/zz_ipgroup_types.go | 26 +- apis/network/v1beta1/zz_loadbalancer_types.go | 63 +- ...zz_loadbalancerbackendaddresspool_types.go | 52 +- ...balancerbackendaddresspooladdress_types.go | 25 + .../v1beta1/zz_loadbalancernatpool_types.go | 49 +- .../v1beta1/zz_loadbalancernatrule_types.go | 48 +- .../zz_loadbalanceroutboundrule_types.go | 42 +- .../v1beta1/zz_loadbalancerprobe_types.go | 35 +- .../v1beta1/zz_loadbalancerrule_types.go | 56 +- .../v1beta1/zz_localnetworkgateway_types.go | 55 +- apis/network/v1beta1/zz_manager_types.go | 48 +- ..._managermanagementgroupconnection_types.go | 18 + .../v1beta1/zz_managernetworkgroup_types.go | 18 + .../v1beta1/zz_managerstaticmember_types.go | 15 + .../zz_managersubscriptionconnection_types.go | 23 +- apis/network/v1beta1/zz_natgateway_types.go | 32 +- .../zz_natgatewaypublicipassociation_types.go | 15 + ...tgatewaypublicipprefixassociation_types.go | 15 + .../v1beta1/zz_networkinterface_types.go | 75 +- ...plicationsecuritygroupassociation_types.go | 15 + ...facebackendaddresspoolassociation_types.go | 20 +- ...etworkinterfacenatruleassociation_types.go | 20 +- ...interfacesecuritygroupassociation_types.go | 15 + .../network/v1beta1/zz_packetcapture_types.go | 65 +- .../v1beta1/zz_pointtositevpngateway_types.go | 104 +- .../v1beta1/zz_privatednsaaaarecord_types.go | 28 +- .../v1beta1/zz_privatednsarecord_types.go | 28 +- .../v1beta1/zz_privatednscnamerecord_types.go | 28 +- .../v1beta1/zz_privatednsmxrecord_types.go | 45 +- .../v1beta1/zz_privatednsptrrecord_types.go | 28 +- .../v1beta1/zz_privatednsresolver_types.go | 23 +- .../v1beta1/zz_privatednssrvrecord_types.go | 59 +- .../v1beta1/zz_privatednstxtrecord_types.go | 38 +- .../v1beta1/zz_privatednszone_types.go | 49 +- ..._privatednszonevirtualnetworklink_types.go | 21 + .../v1beta1/zz_privateendpoint_types.go | 111 +- ...plicationsecuritygroupassociation_types.go | 15 + .../v1beta1/zz_privatelinkservice_types.go | 68 +- apis/network/v1beta1/zz_profile_types.go | 55 +- apis/network/v1beta1/zz_publicip_types.go | 64 +- .../v1beta1/zz_publicipprefix_types.go | 35 +- apis/network/v1beta1/zz_route_types.go | 28 +- apis/network/v1beta1/zz_routefilter_types.go | 41 +- apis/network/v1beta1/zz_routemap_types.go | 85 +- apis/network/v1beta1/zz_routeserver_types.go | 31 +- .../zz_routeserverbgpconnection_types.go | 25 +- apis/network/v1beta1/zz_routetable_types.go | 44 +- .../network/v1beta1/zz_securitygroup_types.go | 77 +- apis/network/v1beta1/zz_securityrule_types.go | 68 +- apis/network/v1beta1/zz_subnet_types.go | 69 +- .../zz_subnetnatgatewayassociation_types.go | 15 + ...etnetworksecuritygroupassociation_types.go | 15 + .../zz_subnetroutetableassociation_types.go | 15 + ...ubnetserviceendpointstoragepolicy_types.go | 46 +- .../zz_trafficmanagerazureendpoint_types.go | 66 +- ...zz_trafficmanagerexternalendpoint_types.go | 74 +- .../zz_trafficmanagernestedendpoint_types.go | 80 +- .../v1beta1/zz_trafficmanagerprofile_types.go | 111 +- apis/network/v1beta1/zz_virtualhub_types.go | 52 +- .../v1beta1/zz_virtualhubconnection_types.go | 51 + apis/network/v1beta1/zz_virtualhubip_types.go | 21 + .../v1beta1/zz_virtualhubroutetable_types.go | 48 +- .../zz_virtualhubroutetableroute_types.go | 28 +- ...virtualhubsecuritypartnerprovider_types.go | 28 +- .../v1beta1/zz_virtualnetwork_types.go | 63 +- .../v1beta1/zz_virtualnetworkgateway_types.go | 183 +- ...z_virtualnetworkgatewayconnection_types.go | 164 +- .../v1beta1/zz_virtualnetworkpeering_types.go | 30 + apis/network/v1beta1/zz_virtualwan_types.go | 35 +- apis/network/v1beta1/zz_vpngateway_types.go | 78 +- .../v1beta1/zz_vpngatewayconnection_types.go | 210 +- .../zz_vpnserverconfiguration_types.go | 226 +- ...vpnserverconfigurationpolicygroup_types.go | 50 +- apis/network/v1beta1/zz_vpnsite_types.go | 98 +- apis/network/v1beta1/zz_watcher_types.go | 23 +- .../v1beta1/zz_watcherflowlog_types.go | 74 +- .../zz_webapplicationfirewallpolicy_types.go | 236 +- .../v1beta1/zz_authorizationrule_types.go | 24 + .../v1beta1/zz_generated.deepcopy.go | 180 + .../v1beta1/zz_generated.managed.go | 36 +- .../v1beta1/zz_generated_terraformed.go | 30 + .../v1beta1/zz_notificationhub_types.go | 63 +- .../zz_notificationhubnamespace_types.go | 36 +- .../v1beta1/zz_generated.deepcopy.go | 410 + .../v1beta1/zz_generated.managed.go | 108 +- .../v1beta1/zz_generated_terraformed.go | 90 + .../zz_loganalyticsdataexportrule_types.go | 23 +- ...oganalyticsdatasourcewindowsevent_types.go | 25 +- ...tasourcewindowsperformancecounter_types.go | 35 +- .../zz_loganalyticslinkedservice_types.go | 18 + ..._loganalyticslinkedstorageaccount_types.go | 20 +- .../v1beta1/zz_loganalyticsquerypack_types.go | 23 +- .../zz_loganalyticsquerypackquery_types.go | 46 +- .../zz_loganalyticssavedsearch_types.go | 39 +- .../v1beta1/zz_workspace_types.go | 50 +- .../v1beta1/zz_generated.deepcopy.go | 78 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_loganalyticssolution_types.go | 53 +- .../v1beta1/zz_contactprofile_types.go | 139 +- apis/orbital/v1beta1/zz_generated.deepcopy.go | 286 + apis/orbital/v1beta1/zz_generated.managed.go | 24 +- .../v1beta1/zz_generated_terraformed.go | 20 + apis/orbital/v1beta1/zz_spacecraft_types.go | 81 +- .../v1beta1/zz_generated.deepcopy.go | 124 + .../v1beta1/zz_generated.managed.go | 24 +- .../v1beta1/zz_generated_terraformed.go | 20 + .../zz_resourcepolicyremediation_types.go | 41 +- .../zz_subscriptionpolicyremediation_types.go | 41 +- apis/portal/v1beta1/zz_dashboard_types.go | 33 +- apis/portal/v1beta1/zz_generated.deepcopy.go | 46 + apis/portal/v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_generated.deepcopy.go | 57 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_powerbiembedded_types.go | 36 +- apis/purview/v1beta1/zz_account_types.go | 47 +- apis/purview/v1beta1/zz_generated.deepcopy.go | 94 + apis/purview/v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../zz_backupcontainerstorageaccount_types.go | 15 + .../v1beta1/zz_backuppolicyfileshare_types.go | 136 +- .../v1beta1/zz_backuppolicyvm_types.go | 165 +- .../zz_backuppolicyvmworkload_types.go | 186 +- .../zz_backupprotectedfileshare_types.go | 15 + .../v1beta1/zz_backupprotectedvm_types.go | 24 + .../v1beta1/zz_generated.deepcopy.go | 1352 +- .../v1beta1/zz_generated.managed.go | 144 +- .../v1beta1/zz_generated_terraformed.go | 120 + .../v1beta1/zz_siterecoveryfabric_types.go | 20 +- .../zz_siterecoverynetworkmapping_types.go | 30 +- ...z_siterecoveryprotectioncontainer_types.go | 15 + ...ecoveryprotectioncontainermapping_types.go | 27 + .../zz_siterecoveryreplicationpolicy_types.go | 25 +- .../v1beta1/zz_vault_types.go | 100 +- .../v1beta1/zz_eventrelaynamespace_types.go | 28 +- apis/relay/v1beta1/zz_generated.deepcopy.go | 134 + apis/relay/v1beta1/zz_generated.managed.go | 48 +- .../relay/v1beta1/zz_generated_terraformed.go | 40 + .../v1beta1/zz_hybridconnection_types.go | 26 +- ...hybridconnectionauthorizationrule_types.go | 24 + .../zz_namespaceauthorizationrule_types.go | 24 + .../v1beta1/zz_generated.deepcopy.go | 522 + .../resources/v1beta1/zz_generated.managed.go | 48 +- .../v1beta1/zz_generated_terraformed.go | 40 + ..._resourcedeploymentscriptazurecli_types.go | 110 +- ...cedeploymentscriptazurepowershell_types.go | 110 +- ...z_resourcegrouptemplatedeployment_types.go | 35 +- ...zz_subscriptiontemplatedeployment_types.go | 35 +- apis/search/v1beta1/zz_generated.deepcopy.go | 155 + apis/search/v1beta1/zz_generated.managed.go | 24 +- .../v1beta1/zz_generated_terraformed.go | 20 + apis/search/v1beta1/zz_service_types.go | 68 +- .../zz_sharedprivatelinkservice_types.go | 23 +- .../zz_advancedthreatprotection_types.go | 25 +- .../security/v1beta1/zz_generated.deepcopy.go | 753 +- apis/security/v1beta1/zz_generated.managed.go | 144 +- .../v1beta1/zz_generated_terraformed.go | 120 + .../zz_iotsecuritydevicegroup_types.go | 72 +- .../v1beta1/zz_iotsecuritysolution_types.go | 128 +- .../zz_securitycenterassessment_types.go | 39 +- ...zz_securitycenterassessmentpolicy_types.go | 43 +- ...zz_securitycenterautoprovisioning_types.go | 20 +- .../v1beta1/zz_securitycentercontact_types.go | 36 +- ...nterservervulnerabilityassessment_types.go | 18 + ...erabilityassessmentvirtualmachine_types.go | 15 + .../v1beta1/zz_securitycentersetting_types.go | 25 +- ...securitycentersubscriptionpricing_types.go | 26 +- .../zz_securitycenterworkspace_types.go | 20 +- .../v1beta1/zz_generated.deepcopy.go | 504 + .../v1beta1/zz_generated.managed.go | 84 +- .../v1beta1/zz_generated_terraformed.go | 70 + .../zz_sentinelalertrulefusion_types.go | 67 +- ...emachinelearningbehavioranalytics_types.go | 28 +- ...ntinelalertrulemssecurityincident_types.go | 45 +- .../zz_sentinelautomationrule_types.go | 126 +- .../zz_sentineldataconnectoriot_types.go | 18 + ...elloganalyticsworkspaceonboarding_types.go | 21 + .../v1beta1/zz_sentinelwatchlist_types.go | 34 +- .../v1beta1/zz_generated.deepcopy.go | 734 +- .../v1beta1/zz_generated.managed.go | 120 +- .../v1beta1/zz_generated_terraformed.go | 100 + .../zz_namespaceauthorizationrule_types.go | 24 + ...z_namespacedisasterrecoveryconfig_types.go | 15 + .../zz_namespacenetworkruleset_types.go | 36 + apis/servicebus/v1beta1/zz_queue_types.go | 63 + .../zz_queueauthorizationrule_types.go | 24 + .../v1beta1/zz_servicebusnamespace_types.go | 82 +- .../v1beta1/zz_subscription_types.go | 65 +- .../v1beta1/zz_subscriptionrule_types.go | 59 +- apis/servicebus/v1beta1/zz_topic_types.go | 52 + .../zz_topicauthorizationrule_types.go | 24 + .../servicefabric/v1beta1/zz_cluster_types.go | 449 +- .../v1beta1/zz_generated.deepcopy.go | 1235 +- .../v1beta1/zz_generated.managed.go | 24 +- .../v1beta1/zz_generated_terraformed.go | 20 + .../v1beta1/zz_managedcluster_types.go | 304 +- .../v1beta1/zz_generated.deepcopy.go | 105 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_springcloudconnection_types.go | 66 +- .../v1beta1/zz_generated.deepcopy.go | 830 +- .../v1beta1/zz_generated.managed.go | 72 +- .../v1beta1/zz_generated_terraformed.go | 60 + .../v1beta1/zz_networkacl_types.go | 46 +- .../v1beta1/zz_service_types.go | 156 +- ..._signalrsharedprivatelinkresource_types.go | 28 +- .../v1beta1/zz_webpubsub_types.go | 82 +- .../v1beta1/zz_webpubsubhub_types.go | 61 +- .../v1beta1/zz_webpubsubnetworkacl_types.go | 44 +- .../v1beta1/zz_generated.deepcopy.go | 103 + .../solutions/v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../zz_managedapplicationdefinition_types.go | 68 +- .../zz_cloudapplicationliveview_types.go | 15 + apis/spring/v1beta1/zz_generated.deepcopy.go | 16 + apis/spring/v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + apis/sql/v1beta1/zz_generated.deepcopy.go | 1589 +- apis/sql/v1beta1/zz_generated.managed.go | 252 +- apis/sql/v1beta1/zz_generated_terraformed.go | 210 + apis/sql/v1beta1/zz_mssqldatabase_types.go | 176 +- ...sqldatabaseextendedauditingpolicy_types.go | 27 + ...lnerabilityassessmentrulebaseline_types.go | 38 +- apis/sql/v1beta1/zz_mssqlelasticpool_types.go | 92 +- .../v1beta1/zz_mssqlfailovergroup_types.go | 47 +- .../sql/v1beta1/zz_mssqlfirewallrule_types.go | 25 +- apis/sql/v1beta1/zz_mssqljobagent_types.go | 28 +- .../v1beta1/zz_mssqljobcredential_types.go | 22 +- .../v1beta1/zz_mssqlmanageddatabase_types.go | 36 + .../v1beta1/zz_mssqlmanagedinstance_types.go | 87 +- ...tanceactivedirectoryadministrator_types.go | 33 +- ...mssqlmanagedinstancefailovergroup_types.go | 39 +- ...edinstancevulnerabilityassessment_types.go | 35 +- .../zz_mssqloutboundfirewallrule_types.go | 15 + apis/sql/v1beta1/zz_mssqlserver_types.go | 71 +- .../v1beta1/zz_mssqlserverdnsalias_types.go | 15 + ...vermicrosoftsupportauditingpolicy_types.go | 21 + ...zz_mssqlserversecurityalertpolicy_types.go | 32 +- ...qlservertransparentdataencryption_types.go | 18 + ...ssqlservervulnerabilityassessment_types.go | 35 +- .../zz_mssqlvirtualnetworkrule_types.go | 18 + apis/storage/v1beta1/zz_account_types.go | 617 +- .../v1beta1/zz_accountlocaluser_types.go | 78 +- .../v1beta1/zz_accountnetworkrules_types.go | 45 +- apis/storage/v1beta1/zz_blob_types.go | 50 +- .../v1beta1/zz_blobinventorypolicy_types.go | 86 +- apis/storage/v1beta1/zz_container_types.go | 21 + .../zz_datalakegen2filesystem_types.go | 50 +- .../v1beta1/zz_datalakegen2path_types.go | 57 +- .../v1beta1/zz_encryptionscope_types.go | 26 +- apis/storage/v1beta1/zz_generated.deepcopy.go | 2609 +- apis/storage/v1beta1/zz_generated.managed.go | 192 +- .../v1beta1/zz_generated_terraformed.go | 160 + .../v1beta1/zz_managementpolicy_types.go | 163 +- .../v1beta1/zz_objectreplication_types.go | 29 +- apis/storage/v1beta1/zz_queue_types.go | 18 + apis/storage/v1beta1/zz_share_types.go | 61 +- .../v1beta1/zz_sharedirectory_types.go | 23 +- apis/storage/v1beta1/zz_table_types.go | 60 +- apis/storage/v1beta1/zz_tableentity_types.go | 30 +- .../v1beta1/zz_generated.deepcopy.go | 594 +- .../v1beta1/zz_generated.managed.go | 60 +- .../v1beta1/zz_generated_terraformed.go | 50 + .../storagecache/v1beta1/zz_hpccache_types.go | 235 +- .../v1beta1/zz_hpccacheaccesspolicy_types.go | 55 +- .../v1beta1/zz_hpccacheblobnfstarget_types.go | 33 +- .../v1beta1/zz_hpccacheblobtarget_types.go | 23 +- .../v1beta1/zz_hpccachenfstarget_types.go | 53 +- apis/storagepool/v1beta1/zz_diskpool_types.go | 33 +- .../v1beta1/zz_generated.deepcopy.go | 52 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_generated.deepcopy.go | 41 + .../v1beta1/zz_generated.managed.go | 12 +- .../v1beta1/zz_generated_terraformed.go | 10 + .../v1beta1/zz_storagesync_types.go | 26 +- .../v1beta1/zz_cluster_types.go | 28 +- .../v1beta1/zz_functionjavascriptuda_types.go | 53 +- .../v1beta1/zz_generated.deepcopy.go | 1200 +- .../v1beta1/zz_generated.managed.go | 216 +- .../v1beta1/zz_generated_terraformed.go | 180 + apis/streamanalytics/v1beta1/zz_job_types.go | 87 +- .../zz_managedprivateendpoint_types.go | 20 +- .../v1beta1/zz_outputblob_types.go | 63 +- .../v1beta1/zz_outputeventhub_types.go | 51 +- .../v1beta1/zz_outputfunction_types.go | 28 +- .../v1beta1/zz_outputmssql_types.go | 37 +- .../v1beta1/zz_outputpowerbi_types.go | 41 +- .../v1beta1/zz_outputservicebusqueue_types.go | 56 +- .../v1beta1/zz_outputservicebustopic_types.go | 56 +- .../v1beta1/zz_outputsynapse_types.go | 32 +- .../v1beta1/zz_outputtable_types.go | 35 +- .../v1beta1/zz_referenceinputblob_types.go | 59 +- .../v1beta1/zz_referenceinputmssql_types.go | 41 +- .../v1beta1/zz_streaminputblob_types.go | 58 +- .../v1beta1/zz_streaminputeventhub_types.go | 50 +- .../v1beta1/zz_streaminputiothub_types.go | 53 +- apis/synapse/v1beta1/zz_firewallrule_types.go | 25 +- apis/synapse/v1beta1/zz_generated.deepcopy.go | 1338 +- apis/synapse/v1beta1/zz_generated.managed.go | 228 +- .../v1beta1/zz_generated_terraformed.go | 190 + .../zz_integrationruntimeazure_types.go | 32 +- .../zz_integrationruntimeselfhosted_types.go | 18 + .../synapse/v1beta1/zz_linkedservice_types.go | 54 +- .../zz_managedprivateendpoint_types.go | 25 +- .../v1beta1/zz_privatelinkhub_types.go | 23 +- .../v1beta1/zz_roleassignment_types.go | 28 +- apis/synapse/v1beta1/zz_sparkpool_types.go | 131 +- apis/synapse/v1beta1/zz_sqlpool_types.go | 58 +- .../zz_sqlpoolextendedauditingpolicy_types.go | 24 + .../zz_sqlpoolsecurityalertpolicy_types.go | 32 +- .../zz_sqlpoolworkloadclassifier_types.go | 35 +- .../v1beta1/zz_sqlpoolworkloadgroup_types.go | 37 +- apis/synapse/v1beta1/zz_workspace_types.go | 186 +- .../v1beta1/zz_workspaceaadadmin_types.go | 30 +- ...z_workspaceextendedauditingpolicy_types.go | 24 + .../zz_workspacesecurityalertpolicy_types.go | 32 +- .../v1beta1/zz_workspacesqlaadadmin_types.go | 30 +- ..._workspacevulnerabilityassessment_types.go | 35 +- .../v1beta1/zz_eventsourceeventhub_types.go | 28 +- .../v1beta1/zz_eventsourceiothub_types.go | 33 +- .../v1beta1/zz_gen2environment_types.go | 44 +- .../v1beta1/zz_generated.deepcopy.go | 293 + .../v1beta1/zz_generated.managed.go | 60 +- .../v1beta1/zz_generated_terraformed.go | 50 + .../v1beta1/zz_referencedataset_types.go | 48 +- .../v1beta1/zz_standardenvironment_types.go | 39 +- apis/web/v1beta1/zz_appactiveslot_types.go | 19 + .../v1beta1/zz_apphybridconnection_types.go | 31 +- apis/web/v1beta1/zz_appserviceplan_types.go | 69 +- apis/web/v1beta1/zz_functionapp_types.go | 385 +- .../v1beta1/zz_functionappactiveslot_types.go | 19 + .../v1beta1/zz_functionappfunction_types.go | 61 +- .../zz_functionapphybridconnection_types.go | 31 +- apis/web/v1beta1/zz_functionappslot_types.go | 353 +- apis/web/v1beta1/zz_generated.deepcopy.go | 20611 +++++++++++++++- apis/web/v1beta1/zz_generated.managed.go | 228 +- apis/web/v1beta1/zz_generated_terraformed.go | 190 + apis/web/v1beta1/zz_linuxfunctionapp_types.go | 1149 +- .../v1beta1/zz_linuxfunctionappslot_types.go | 1086 +- apis/web/v1beta1/zz_linuxwebapp_types.go | 1222 +- apis/web/v1beta1/zz_linuxwebappslot_types.go | 1240 +- apis/web/v1beta1/zz_serviceplan_types.go | 48 +- .../v1beta1/zz_sourcecontroltoken_types.go | 22 +- apis/web/v1beta1/zz_staticsite_types.go | 45 +- .../v1beta1/zz_windowsfunctionapp_types.go | 1075 +- .../zz_windowsfunctionappslot_types.go | 1070 +- apis/web/v1beta1/zz_windowswebapp_types.go | 1373 +- .../web/v1beta1/zz_windowswebappslot_types.go | 1274 +- cmd/provider/alertsmanagement/zz_main.go | 3 + cmd/provider/analysisservices/zz_main.go | 3 + cmd/provider/apimanagement/zz_main.go | 3 + cmd/provider/appconfiguration/zz_main.go | 3 + cmd/provider/appplatform/zz_main.go | 3 + cmd/provider/attestation/zz_main.go | 3 + cmd/provider/authorization/zz_main.go | 3 + cmd/provider/automation/zz_main.go | 3 + cmd/provider/azure/zz_main.go | 3 + cmd/provider/azurestackhci/zz_main.go | 3 + cmd/provider/botservice/zz_main.go | 3 + cmd/provider/cache/zz_main.go | 3 + cmd/provider/cdn/zz_main.go | 3 + .../certificateregistration/zz_main.go | 3 + cmd/provider/cognitiveservices/zz_main.go | 3 + cmd/provider/communication/zz_main.go | 3 + cmd/provider/compute/zz_main.go | 3 + cmd/provider/confidentialledger/zz_main.go | 3 + cmd/provider/config/zz_main.go | 3 + cmd/provider/consumption/zz_main.go | 3 + cmd/provider/containerregistry/zz_main.go | 3 + cmd/provider/containerservice/zz_main.go | 3 + cmd/provider/cosmosdb/zz_main.go | 3 + cmd/provider/costmanagement/zz_main.go | 3 + cmd/provider/customproviders/zz_main.go | 3 + cmd/provider/databoxedge/zz_main.go | 3 + cmd/provider/databricks/zz_main.go | 3 + cmd/provider/datafactory/zz_main.go | 3 + cmd/provider/datamigration/zz_main.go | 3 + cmd/provider/dataprotection/zz_main.go | 3 + cmd/provider/datashare/zz_main.go | 3 + cmd/provider/dbformariadb/zz_main.go | 3 + cmd/provider/dbformysql/zz_main.go | 3 + cmd/provider/dbforpostgresql/zz_main.go | 3 + cmd/provider/devices/zz_main.go | 3 + cmd/provider/deviceupdate/zz_main.go | 3 + cmd/provider/devtestlab/zz_main.go | 3 + cmd/provider/digitaltwins/zz_main.go | 3 + cmd/provider/elastic/zz_main.go | 3 + cmd/provider/eventgrid/zz_main.go | 3 + cmd/provider/eventhub/zz_main.go | 3 + cmd/provider/fluidrelay/zz_main.go | 3 + cmd/provider/guestconfiguration/zz_main.go | 3 + cmd/provider/hdinsight/zz_main.go | 3 + cmd/provider/healthbot/zz_main.go | 3 + cmd/provider/healthcareapis/zz_main.go | 3 + cmd/provider/insights/zz_main.go | 3 + cmd/provider/iotcentral/zz_main.go | 3 + cmd/provider/keyvault/zz_main.go | 3 + cmd/provider/kusto/zz_main.go | 3 + cmd/provider/labservices/zz_main.go | 3 + cmd/provider/logic/zz_main.go | 3 + cmd/provider/logz/zz_main.go | 3 + .../machinelearningservices/zz_main.go | 3 + cmd/provider/maintenance/zz_main.go | 3 + cmd/provider/managedidentity/zz_main.go | 3 + cmd/provider/management/zz_main.go | 3 + cmd/provider/maps/zz_main.go | 3 + cmd/provider/marketplaceordering/zz_main.go | 3 + cmd/provider/media/zz_main.go | 3 + cmd/provider/mixedreality/zz_main.go | 3 + cmd/provider/monolith/zz_main.go | 3 + cmd/provider/netapp/zz_main.go | 3 + cmd/provider/network/zz_main.go | 3 + cmd/provider/notificationhubs/zz_main.go | 3 + cmd/provider/operationalinsights/zz_main.go | 3 + cmd/provider/operationsmanagement/zz_main.go | 3 + cmd/provider/orbital/zz_main.go | 3 + cmd/provider/policyinsights/zz_main.go | 3 + cmd/provider/portal/zz_main.go | 3 + cmd/provider/powerbidedicated/zz_main.go | 3 + cmd/provider/purview/zz_main.go | 3 + cmd/provider/recoveryservices/zz_main.go | 3 + cmd/provider/relay/zz_main.go | 3 + cmd/provider/resources/zz_main.go | 3 + cmd/provider/search/zz_main.go | 3 + cmd/provider/security/zz_main.go | 3 + cmd/provider/securityinsights/zz_main.go | 3 + cmd/provider/servicebus/zz_main.go | 3 + cmd/provider/servicefabric/zz_main.go | 3 + cmd/provider/servicelinker/zz_main.go | 3 + cmd/provider/signalrservice/zz_main.go | 3 + cmd/provider/solutions/zz_main.go | 3 + cmd/provider/spring/zz_main.go | 3 + cmd/provider/sql/zz_main.go | 3 + cmd/provider/storage/zz_main.go | 3 + cmd/provider/storagecache/zz_main.go | 3 + cmd/provider/storagepool/zz_main.go | 3 + cmd/provider/storagesync/zz_main.go | 3 + cmd/provider/streamanalytics/zz_main.go | 3 + cmd/provider/synapse/zz_main.go | 3 + cmd/provider/timeseriesinsights/zz_main.go | 3 + cmd/provider/web/zz_main.go | 3 + config/provider.go | 17 +- .../monitoractionruleactiongroup.yaml | 3 - .../monitoractionrulesuppression.yaml | 3 - ...monitoralertprocessingruleactiongroup.yaml | 3 - ...monitoralertprocessingrulesuppression.yaml | 3 - .../monitorsmartdetectoralertrule.yaml | 3 - .../analysisservices/server.yaml | 3 - examples-generated/apimanagement/api.yaml | 3 - .../apimanagement/apidiagnostic.yaml | 3 - .../apimanagement/apioperation.yaml | 3 - .../apimanagement/apioperationpolicy.yaml | 3 - .../apimanagement/apioperationtag.yaml | 3 - .../apimanagement/apipolicy.yaml | 3 - .../apimanagement/apirelease.yaml | 3 - .../apimanagement/apischema.yaml | 3 - examples-generated/apimanagement/apitag.yaml | 3 - .../apimanagement/apiversionset.yaml | 3 - .../apimanagement/authorizationserver.yaml | 3 - examples-generated/apimanagement/backend.yaml | 3 - .../apimanagement/certificate.yaml | 3 - .../apimanagement/diagnostic.yaml | 3 - .../apimanagement/emailtemplate.yaml | 3 - examples-generated/apimanagement/gateway.yaml | 3 - .../apimanagement/gatewayapi.yaml | 3 - .../apimanagement/globalschema.yaml | 3 - .../apimanagement/identityprovideraad.yaml | 3 - .../identityproviderfacebook.yaml | 3 - .../apimanagement/identityprovidergoogle.yaml | 3 - .../identityprovidermicrosoft.yaml | 3 - .../identityprovidertwitter.yaml | 3 - examples-generated/apimanagement/logger.yaml | 3 - .../apimanagement/management.yaml | 3 - .../apimanagement/namedvalue.yaml | 3 - .../notificationrecipientemail.yaml | 3 - .../notificationrecipientuser.yaml | 3 - .../apimanagement/openidconnectprovider.yaml | 3 - examples-generated/apimanagement/policy.yaml | 3 - examples-generated/apimanagement/product.yaml | 3 - .../apimanagement/productapi.yaml | 3 - .../apimanagement/productpolicy.yaml | 3 - .../apimanagement/producttag.yaml | 3 - .../apimanagement/rediscache.yaml | 3 - .../apimanagement/subscription.yaml | 3 - examples-generated/apimanagement/tag.yaml | 3 - examples-generated/apimanagement/user.yaml | 3 - .../appconfiguration/configuration.yaml | 3 - .../appplatform/springcloudaccelerator.yaml | 3 - .../springcloudactivedeployment.yaml | 3 - .../appplatform/springcloudapiportal.yaml | 3 - .../springcloudapiportalcustomdomain.yaml | 3 - .../appplatform/springcloudapp.yaml | 3 - .../springcloudappcosmosdbassociation.yaml | 3 - .../springcloudappmysqlassociation.yaml | 3 - .../springcloudappredisassociation.yaml | 3 - .../springcloudbuilddeployment.yaml | 3 - .../appplatform/springcloudbuilder.yaml | 3 - .../springcloudbuildpackbinding.yaml | 3 - .../appplatform/springcloudcertificate.yaml | 3 - .../springcloudconfigurationservice.yaml | 3 - .../springcloudcontainerdeployment.yaml | 3 - .../appplatform/springcloudcustomdomain.yaml | 3 - .../springcloudcustomizedaccelerator.yaml | 3 - .../appplatform/springclouddevtoolportal.yaml | 3 - .../appplatform/springcloudgateway.yaml | 3 - .../springcloudgatewaycustomdomain.yaml | 3 - .../springcloudjavadeployment.yaml | 3 - .../appplatform/springcloudservice.yaml | 3 - .../appplatform/springcloudstorage.yaml | 3 - examples-generated/attestation/provider.yaml | 3 - .../authorization/managementlock.yaml | 3 - .../authorization/policydefinition.yaml | 3 - .../resourcegrouppolicyassignment.yaml | 3 - .../resourcepolicyassignment.yaml | 3 - .../resourcepolicyexemption.yaml | 3 - .../authorization/roleassignment.yaml | 3 - .../authorization/roledefinition.yaml | 3 - .../subscriptionpolicyassignment.yaml | 3 - .../subscriptionpolicyexemption.yaml | 3 - examples-generated/automation/account.yaml | 3 - examples-generated/automation/connection.yaml | 3 - .../connectionclassiccertificate.yaml | 3 - .../automation/connectiontype.yaml | 3 - examples-generated/automation/credential.yaml | 3 - .../automation/hybridrunbookworkergroup.yaml | 3 - examples-generated/automation/module.yaml | 3 - examples-generated/automation/runbook.yaml | 3 - examples-generated/automation/schedule.yaml | 3 - .../automation/variablebool.yaml | 3 - .../automation/variabledatetime.yaml | 3 - .../automation/variableint.yaml | 3 - .../automation/variablestring.yaml | 3 - examples-generated/automation/webhook.yaml | 3 - examples-generated/azure/resourcegroup.yaml | 3 - .../azure/resourceproviderregistration.yaml | 3 - examples-generated/azure/subscription.yaml | 3 - examples-generated/azurestackhci/cluster.yaml | 3 - .../botservice/botchannelalexa.yaml | 3 - .../botservice/botchanneldirectline.yaml | 3 - .../botservice/botchannelline.yaml | 3 - .../botservice/botchannelmsteams.yaml | 3 - .../botservice/botchannelslack.yaml | 3 - .../botservice/botchannelsms.yaml | 3 - .../botservice/botchannelsregistration.yaml | 3 - .../botservice/botchannelwebchat.yaml | 3 - .../botservice/botconnection.yaml | 3 - examples-generated/botservice/botwebapp.yaml | 3 - examples-generated/cache/rediscache.yaml | 3 - .../cache/redisenterprisecluster.yaml | 3 - .../cache/redisenterprisedatabase.yaml | 3 - .../cache/redisfirewallrule.yaml | 3 - .../cache/redislinkedserver.yaml | 3 - examples-generated/cdn/endpoint.yaml | 3 - .../cdn/frontdoorcustomdomain.yaml | 3 - .../cdn/frontdoorcustomdomainassociation.yaml | 3 - examples-generated/cdn/frontdoorendpoint.yaml | 3 - examples-generated/cdn/frontdoororigin.yaml | 3 - .../cdn/frontdoororigingroup.yaml | 3 - examples-generated/cdn/frontdoorprofile.yaml | 3 - examples-generated/cdn/frontdoorroute.yaml | 3 - examples-generated/cdn/frontdoorrule.yaml | 3 - examples-generated/cdn/frontdoorruleset.yaml | 3 - examples-generated/cdn/profile.yaml | 3 - .../appservicecertificateorder.yaml | 3 - .../cognitiveservices/account.yaml | 3 - examples-generated/communication/service.yaml | 3 - .../compute/availabilityset.yaml | 3 - .../compute/capacityreservation.yaml | 3 - .../compute/capacityreservationgroup.yaml | 3 - examples-generated/compute/dedicatedhost.yaml | 3 - examples-generated/compute/diskaccess.yaml | 3 - .../compute/diskencryptionset.yaml | 3 - .../compute/galleryapplication.yaml | 3 - .../compute/galleryapplicationversion.yaml | 3 - examples-generated/compute/image.yaml | 3 - .../compute/linuxvirtualmachine.yaml | 3 - .../compute/linuxvirtualmachinescaleset.yaml | 3 - examples-generated/compute/manageddisk.yaml | 3 - .../compute/manageddisksastoken.yaml | 3 - .../orchestratedvirtualmachinescaleset.yaml | 3 - .../compute/proximityplacementgroup.yaml | 3 - examples-generated/compute/sharedimage.yaml | 3 - .../compute/sharedimagegallery.yaml | 3 - examples-generated/compute/snapshot.yaml | 3 - examples-generated/compute/sshpublickey.yaml | 3 - .../compute/windowsvirtualmachine.yaml | 3 - .../windowsvirtualmachinescaleset.yaml | 3 - .../confidentialledger/ledger.yaml | 3 - .../consumption/budgetmanagementgroup.yaml | 3 - .../consumption/budgetresourcegroup.yaml | 3 - .../consumption/budgetsubscription.yaml | 3 - .../containerregistry/agentpool.yaml | 3 - .../containerconnectedregistry.yaml | 3 - .../containerregistry/registry.yaml | 3 - .../containerregistry/scopemap.yaml | 3 - .../containerregistry/token.yaml | 3 - .../containerregistry/tokenpassword.yaml | 3 - .../containerregistry/webhook.yaml | 3 - .../containerservice/kubernetescluster.yaml | 3 - .../kubernetesclusternodepool.yaml | 3 - .../kubernetesfleetmanager.yaml | 3 - examples-generated/cosmosdb/account.yaml | 3 - .../cosmosdb/cassandracluster.yaml | 3 - .../cosmosdb/cassandradatacenter.yaml | 3 - .../cosmosdb/cassandrakeyspace.yaml | 3 - .../cosmosdb/cassandratable.yaml | 3 - .../cosmosdb/gremlindatabase.yaml | 3 - examples-generated/cosmosdb/gremlingraph.yaml | 3 - .../cosmosdb/mongocollection.yaml | 3 - .../cosmosdb/mongodatabase.yaml | 3 - examples-generated/cosmosdb/sqlcontainer.yaml | 3 - examples-generated/cosmosdb/sqldatabase.yaml | 3 - .../cosmosdb/sqldedicatedgateway.yaml | 3 - examples-generated/cosmosdb/sqlfunction.yaml | 3 - .../cosmosdb/sqlroleassignment.yaml | 3 - .../cosmosdb/sqlroledefinition.yaml | 3 - .../cosmosdb/sqlstoredprocedure.yaml | 3 - examples-generated/cosmosdb/sqltrigger.yaml | 3 - examples-generated/cosmosdb/table.yaml | 3 - .../costmanagement/costanomalyalert.yaml | 3 - .../resourcegroupcostmanagementexport.yaml | 3 - .../subscriptioncostmanagementexport.yaml | 3 - .../customproviders/customprovider.yaml | 3 - examples-generated/databoxedge/device.yaml | 3 - .../databricks/accessconnector.yaml | 3 - examples-generated/databricks/workspace.yaml | 3 - .../workspacecustomermanagedkey.yaml | 3 - .../datafactory/customdataset.yaml | 3 - examples-generated/datafactory/dataflow.yaml | 3 - .../datafactory/datasetazureblob.yaml | 3 - .../datafactory/datasetbinary.yaml | 3 - .../datafactory/datasetcosmosdbsqlapi.yaml | 3 - .../datafactory/datasetdelimitedtext.yaml | 3 - .../datafactory/datasethttp.yaml | 3 - .../datafactory/datasetjson.yaml | 3 - .../datafactory/datasetmysql.yaml | 3 - .../datafactory/datasetparquet.yaml | 3 - .../datafactory/datasetpostgresql.yaml | 3 - .../datafactory/datasetsnowflake.yaml | 3 - .../datafactory/datasetsqlservertable.yaml | 3 - examples-generated/datafactory/factory.yaml | 3 - .../datafactory/integrationruntimeazure.yaml | 3 - .../integrationruntimeazuressis.yaml | 3 - .../integrationruntimemanaged.yaml | 3 - .../integrationruntimeselfhosted.yaml | 3 - .../datafactory/linkedcustomservice.yaml | 3 - .../linkedserviceazureblobstorage.yaml | 3 - .../linkedserviceazuredatabricks.yaml | 3 - .../linkedserviceazurefilestorage.yaml | 3 - .../linkedserviceazurefunction.yaml | 3 - .../datafactory/linkedserviceazuresearch.yaml | 3 - .../linkedserviceazuresqldatabase.yaml | 3 - .../linkedserviceazuretablestorage.yaml | 3 - .../datafactory/linkedservicecosmosdb.yaml | 3 - .../linkedservicecosmosdbmongoapi.yaml | 3 - .../linkedservicedatalakestoragegen2.yaml | 3 - .../datafactory/linkedservicekeyvault.yaml | 3 - .../datafactory/linkedservicekusto.yaml | 3 - .../datafactory/linkedservicemysql.yaml | 3 - .../datafactory/linkedserviceodata.yaml | 3 - .../datafactory/linkedserviceodbc.yaml | 3 - .../datafactory/linkedservicepostgresql.yaml | 3 - .../datafactory/linkedservicesftp.yaml | 3 - .../datafactory/linkedservicesnowflake.yaml | 3 - .../datafactory/linkedservicesqlserver.yaml | 3 - .../datafactory/linkedservicesynapse.yaml | 3 - .../datafactory/linkedserviceweb.yaml | 3 - .../datafactory/managedprivateendpoint.yaml | 3 - examples-generated/datafactory/pipeline.yaml | 3 - .../datafactory/triggerblobevent.yaml | 3 - .../datafactory/triggercustomevent.yaml | 3 - .../datafactory/triggerschedule.yaml | 3 - .../databasemigrationproject.yaml | 3 - .../databasemigrationservice.yaml | 3 - .../backupinstanceblobstorage.yaml | 3 - .../dataprotection/backupinstancedisk.yaml | 3 - .../backupinstancepostgresql.yaml | 3 - .../backuppolicyblobstorage.yaml | 3 - .../dataprotection/backuppolicydisk.yaml | 3 - .../backuppolicypostgresql.yaml | 3 - .../dataprotection/backupvault.yaml | 3 - .../dataprotection/resourceguard.yaml | 3 - examples-generated/datashare/account.yaml | 3 - .../datashare/datasetblobstorage.yaml | 3 - .../datashare/datasetdatalakegen2.yaml | 3 - .../datashare/datasetkustocluster.yaml | 3 - .../datashare/datasetkustodatabase.yaml | 3 - examples-generated/datashare/datashare.yaml | 3 - .../dbformariadb/configuration.yaml | 3 - examples-generated/dbformariadb/database.yaml | 3 - .../dbformariadb/firewallrule.yaml | 3 - examples-generated/dbformariadb/server.yaml | 3 - .../dbformariadb/virtualnetworkrule.yaml | 3 - .../activedirectoryadministrator.yaml | 3 - .../dbformysql/configuration.yaml | 3 - examples-generated/dbformysql/database.yaml | 3 - .../dbformysql/firewallrule.yaml | 3 - .../dbformysql/flexibledatabase.yaml | 3 - .../dbformysql/flexibleserver.yaml | 3 - .../flexibleserverconfiguration.yaml | 3 - .../flexibleserverfirewallrule.yaml | 3 - examples-generated/dbformysql/server.yaml | 3 - .../dbformysql/virtualnetworkrule.yaml | 3 - .../activedirectoryadministrator.yaml | 3 - .../dbforpostgresql/configuration.yaml | 3 - .../dbforpostgresql/database.yaml | 3 - .../dbforpostgresql/firewallrule.yaml | 3 - .../dbforpostgresql/flexibleserver.yaml | 3 - .../flexibleserverconfiguration.yaml | 3 - .../flexibleserverdatabase.yaml | 3 - .../flexibleserverfirewallrule.yaml | 3 - .../dbforpostgresql/server.yaml | 3 - .../dbforpostgresql/serverkey.yaml | 3 - .../dbforpostgresql/virtualnetworkrule.yaml | 3 - examples-generated/devices/iothub.yaml | 3 - .../devices/iothubcertificate.yaml | 3 - .../devices/iothubconsumergroup.yaml | 3 - examples-generated/devices/iothubdps.yaml | 3 - .../devices/iothubdpscertificate.yaml | 3 - .../devices/iothubdpssharedaccesspolicy.yaml | 3 - .../devices/iothubendpointeventhub.yaml | 3 - .../iothubendpointservicebusqueue.yaml | 3 - .../iothubendpointservicebustopic.yaml | 3 - .../iothubendpointstoragecontainer.yaml | 3 - .../devices/iothubenrichment.yaml | 3 - .../devices/iothubfallbackroute.yaml | 3 - examples-generated/devices/iothubroute.yaml | 3 - .../devices/iothubsharedaccesspolicy.yaml | 3 - .../iothubdeviceupdateaccount.yaml | 3 - .../iothubdeviceupdateinstance.yaml | 3 - .../devtestlab/globalvmshutdownschedule.yaml | 3 - examples-generated/devtestlab/lab.yaml | 3 - .../devtestlab/linuxvirtualmachine.yaml | 3 - examples-generated/devtestlab/policy.yaml | 3 - examples-generated/devtestlab/schedule.yaml | 3 - .../devtestlab/virtualnetwork.yaml | 3 - .../devtestlab/windowsvirtualmachine.yaml | 3 - examples-generated/digitaltwins/instance.yaml | 3 - .../elastic/cloudelasticsearch.yaml | 3 - examples-generated/eventgrid/domain.yaml | 3 - examples-generated/eventgrid/domaintopic.yaml | 3 - .../eventgrid/eventsubscription.yaml | 3 - examples-generated/eventgrid/systemtopic.yaml | 3 - examples-generated/eventgrid/topic.yaml | 3 - .../eventhub/authorizationrule.yaml | 3 - .../eventhub/consumergroup.yaml | 3 - examples-generated/eventhub/eventhub.yaml | 3 - .../eventhub/eventhubnamespace.yaml | 3 - .../eventhub/namespaceauthorizationrule.yaml | 3 - .../namespacedisasterrecoveryconfig.yaml | 3 - .../eventhub/namespaceschemagroup.yaml | 3 - examples-generated/fluidrelay/server.yaml | 3 - ...virtualmachineconfigurationassignment.yaml | 3 - .../hdinsight/hadoopcluster.yaml | 3 - .../hdinsight/hbasecluster.yaml | 3 - .../hdinsight/interactivequerycluster.yaml | 3 - .../hdinsight/kafkacluster.yaml | 3 - .../hdinsight/sparkcluster.yaml | 3 - examples-generated/healthbot/healthbot.yaml | 3 - .../healthcaredicomservice.yaml | 3 - .../healthcareapis/healthcarefhirservice.yaml | 3 - .../healthcaremedtechservice.yaml | 3 - ...althcaremedtechservicefhirdestination.yaml | 3 - .../healthcareapis/healthcareservice.yaml | 3 - .../healthcareapis/healthcareworkspace.yaml | 3 - .../insights/applicationinsights.yaml | 3 - .../applicationinsightsanalyticsitem.yaml | 3 - .../insights/applicationinsightsapikey.yaml | 3 - ...applicationinsightssmartdetectionrule.yaml | 3 - .../applicationinsightsstandardwebtest.yaml | 3 - .../insights/applicationinsightswebtest.yaml | 3 - .../insights/applicationinsightsworkbook.yaml | 3 - .../applicationinsightsworkbooktemplate.yaml | 3 - .../insights/monitoractiongroup.yaml | 3 - .../insights/monitoractivitylogalert.yaml | 3 - .../insights/monitorautoscalesetting.yaml | 3 - .../monitordatacollectionendpoint.yaml | 3 - .../insights/monitordatacollectionrule.yaml | 3 - .../monitordatacollectionruleassociation.yaml | 3 - .../insights/monitormetricalert.yaml | 3 - .../insights/monitorprivatelinkscope.yaml | 3 - .../monitorprivatelinkscopedservice.yaml | 3 - .../monitorscheduledqueryrulesalert.yaml | 3 - .../monitorscheduledqueryrulesalertv2.yaml | 3 - .../monitorscheduledqueryruleslog.yaml | 3 - .../iotcentral/application.yaml | 3 - .../iotcentral/applicationnetworkruleset.yaml | 3 - examples-generated/keyvault/accesspolicy.yaml | 3 - examples-generated/keyvault/certificate.yaml | 3 - .../keyvault/certificatecontacts.yaml | 3 - .../keyvault/certificateissuer.yaml | 3 - examples-generated/keyvault/key.yaml | 3 - .../managedhardwaresecuritymodule.yaml | 3 - .../keyvault/managedstorageaccount.yaml | 3 - ...nagedstorageaccountsastokendefinition.yaml | 3 - examples-generated/keyvault/secret.yaml | 3 - examples-generated/keyvault/vault.yaml | 3 - .../kusto/attacheddatabaseconfiguration.yaml | 3 - examples-generated/kusto/cluster.yaml | 3 - .../kusto/clustermanagedprivateendpoint.yaml | 3 - .../kusto/clusterprincipalassignment.yaml | 3 - examples-generated/kusto/database.yaml | 3 - .../kusto/databaseprincipalassignment.yaml | 3 - .../kusto/eventgriddataconnection.yaml | 3 - .../kusto/eventhubdataconnection.yaml | 3 - .../kusto/iothubdataconnection.yaml | 3 - .../labservices/labservicelab.yaml | 3 - .../labservices/labserviceplan.yaml | 3 - examples-generated/logic/appactioncustom.yaml | 3 - examples-generated/logic/appactionhttp.yaml | 3 - .../logic/appintegrationaccount.yaml | 3 - ...pintegrationaccountbatchconfiguration.yaml | 3 - .../logic/appintegrationaccountpartner.yaml | 3 - .../logic/appintegrationaccountschema.yaml | 3 - .../logic/appintegrationaccountsession.yaml | 3 - .../logic/apptriggercustom.yaml | 3 - .../logic/apptriggerhttprequest.yaml | 3 - .../logic/apptriggerrecurrence.yaml | 3 - examples-generated/logic/appworkflow.yaml | 3 - .../logic/integrationserviceenvironment.yaml | 3 - examples-generated/logz/monitor.yaml | 3 - examples-generated/logz/subaccount.yaml | 3 - .../logz/subaccounttagrule.yaml | 3 - examples-generated/logz/tagrule.yaml | 3 - .../computecluster.yaml | 3 - .../computeinstance.yaml | 3 - .../machinelearningservices/synapsespark.yaml | 3 - .../machinelearningservices/workspace.yaml | 3 - .../maintenanceassignmentdedicatedhost.yaml | 3 - .../maintenanceassignmentvirtualmachine.yaml | 3 - .../maintenance/maintenanceconfiguration.yaml | 3 - .../federatedidentitycredential.yaml | 3 - .../managedidentity/userassignedidentity.yaml | 3 - .../management/managementgroup.yaml | 3 - ...anagementgroupsubscriptionassociation.yaml | 3 - examples-generated/maps/account.yaml | 3 - examples-generated/maps/creator.yaml | 3 - .../marketplaceagreement.yaml | 3 - examples-generated/media/asset.yaml | 3 - examples-generated/media/assetfilter.yaml | 3 - .../media/contentkeypolicy.yaml | 3 - examples-generated/media/job.yaml | 3 - examples-generated/media/liveevent.yaml | 3 - examples-generated/media/liveeventoutput.yaml | 3 - examples-generated/media/servicesaccount.yaml | 3 - .../media/servicesaccountfilter.yaml | 3 - .../media/streamingendpoint.yaml | 3 - .../media/streaminglocator.yaml | 3 - examples-generated/media/streamingpolicy.yaml | 3 - examples-generated/media/transform.yaml | 3 - .../mixedreality/spatialanchorsaccount.yaml | 3 - examples-generated/netapp/account.yaml | 3 - examples-generated/netapp/pool.yaml | 3 - examples-generated/netapp/snapshot.yaml | 3 - examples-generated/netapp/snapshotpolicy.yaml | 3 - examples-generated/netapp/volume.yaml | 3 - .../network/applicationgateway.yaml | 3 - .../network/applicationsecuritygroup.yaml | 3 - .../network/connectionmonitor.yaml | 3 - .../network/ddosprotectionplan.yaml | 3 - examples-generated/network/dnsaaaarecord.yaml | 3 - examples-generated/network/dnsarecord.yaml | 3 - examples-generated/network/dnscaarecord.yaml | 3 - .../network/dnscnamerecord.yaml | 3 - examples-generated/network/dnsmxrecord.yaml | 3 - examples-generated/network/dnsnsrecord.yaml | 3 - examples-generated/network/dnsptrrecord.yaml | 3 - examples-generated/network/dnssrvrecord.yaml | 3 - examples-generated/network/dnstxtrecord.yaml | 3 - examples-generated/network/dnszone.yaml | 3 - .../network/expressroutecircuit.yaml | 3 - .../expressroutecircuitauthorization.yaml | 3 - .../expressroutecircuitconnection.yaml | 3 - .../network/expressroutecircuitpeering.yaml | 3 - .../network/expressrouteconnection.yaml | 3 - .../network/expressroutegateway.yaml | 3 - .../network/expressrouteport.yaml | 3 - examples-generated/network/firewall.yaml | 3 - .../firewallapplicationrulecollection.yaml | 3 - .../network/firewallnatrulecollection.yaml | 3 - .../firewallnetworkrulecollection.yaml | 3 - .../network/firewallpolicy.yaml | 3 - .../firewallpolicyrulecollectiongroup.yaml | 3 - examples-generated/network/frontdoor.yaml | 3 - .../frontdoorcustomhttpsconfiguration.yaml | 3 - .../network/frontdoorfirewallpolicy.yaml | 3 - .../network/frontdoorrulesengine.yaml | 3 - examples-generated/network/ipgroup.yaml | 3 - examples-generated/network/loadbalancer.yaml | 3 - .../loadbalancerbackendaddresspool.yaml | 3 - ...loadbalancerbackendaddresspooladdress.yaml | 3 - .../network/loadbalancernatpool.yaml | 3 - .../network/loadbalancernatrule.yaml | 3 - .../network/loadbalanceroutboundrule.yaml | 3 - .../network/loadbalancerprobe.yaml | 3 - .../network/loadbalancerrule.yaml | 3 - .../network/localnetworkgateway.yaml | 3 - examples-generated/network/manager.yaml | 3 - .../managermanagementgroupconnection.yaml | 3 - .../network/managernetworkgroup.yaml | 3 - .../network/managerstaticmember.yaml | 3 - .../managersubscriptionconnection.yaml | 3 - examples-generated/network/natgateway.yaml | 3 - .../natgatewaypublicipassociation.yaml | 3 - .../natgatewaypublicipprefixassociation.yaml | 3 - .../network/networkinterface.yaml | 3 - ...ceapplicationsecuritygroupassociation.yaml | 3 - ...nterfacebackendaddresspoolassociation.yaml | 3 - .../networkinterfacenatruleassociation.yaml | 3 - ...workinterfacesecuritygroupassociation.yaml | 3 - examples-generated/network/packetcapture.yaml | 3 - .../network/pointtositevpngateway.yaml | 3 - .../network/privatednsaaaarecord.yaml | 3 - .../network/privatednsarecord.yaml | 3 - .../network/privatednscnamerecord.yaml | 3 - .../network/privatednsmxrecord.yaml | 3 - .../network/privatednsptrrecord.yaml | 3 - .../network/privatednsresolver.yaml | 3 - .../network/privatednssrvrecord.yaml | 3 - .../network/privatednstxtrecord.yaml | 3 - .../network/privatednszone.yaml | 3 - .../privatednszonevirtualnetworklink.yaml | 3 - .../network/privateendpoint.yaml | 3 - ...ntapplicationsecuritygroupassociation.yaml | 3 - .../network/privatelinkservice.yaml | 3 - examples-generated/network/profile.yaml | 3 - examples-generated/network/publicip.yaml | 3 - .../network/publicipprefix.yaml | 3 - examples-generated/network/route.yaml | 3 - examples-generated/network/routefilter.yaml | 3 - examples-generated/network/routemap.yaml | 3 - examples-generated/network/routeserver.yaml | 3 - .../network/routeserverbgpconnection.yaml | 3 - examples-generated/network/routetable.yaml | 3 - examples-generated/network/securitygroup.yaml | 3 - examples-generated/network/securityrule.yaml | 3 - examples-generated/network/subnet.yaml | 3 - .../network/subnetnatgatewayassociation.yaml | 3 - ...subnetnetworksecuritygroupassociation.yaml | 3 - .../network/subnetroutetableassociation.yaml | 3 - .../subnetserviceendpointstoragepolicy.yaml | 3 - .../network/trafficmanagerazureendpoint.yaml | 3 - .../trafficmanagerexternalendpoint.yaml | 3 - .../network/trafficmanagernestedendpoint.yaml | 3 - .../network/trafficmanagerprofile.yaml | 3 - examples-generated/network/virtualhub.yaml | 3 - .../network/virtualhubconnection.yaml | 3 - examples-generated/network/virtualhubip.yaml | 3 - .../network/virtualhubroutetable.yaml | 3 - .../network/virtualhubroutetableroute.yaml | 3 - .../virtualhubsecuritypartnerprovider.yaml | 3 - .../network/virtualnetwork.yaml | 3 - .../network/virtualnetworkgateway.yaml | 3 - .../virtualnetworkgatewayconnection.yaml | 3 - .../network/virtualnetworkpeering.yaml | 3 - examples-generated/network/virtualwan.yaml | 3 - examples-generated/network/vpngateway.yaml | 3 - .../network/vpngatewayconnection.yaml | 3 - .../network/vpnserverconfiguration.yaml | 3 - .../vpnserverconfigurationpolicygroup.yaml | 3 - examples-generated/network/vpnsite.yaml | 3 - examples-generated/network/watcher.yaml | 3 - .../network/watcherflowlog.yaml | 3 - .../network/webapplicationfirewallpolicy.yaml | 3 - .../notificationhubs/authorizationrule.yaml | 3 - .../notificationhubs/notificationhub.yaml | 3 - .../notificationhubnamespace.yaml | 3 - .../loganalyticsdataexportrule.yaml | 3 - .../loganalyticsdatasourcewindowsevent.yaml | 3 - ...csdatasourcewindowsperformancecounter.yaml | 3 - .../loganalyticslinkedservice.yaml | 3 - .../loganalyticslinkedstorageaccount.yaml | 3 - .../loganalyticsquerypack.yaml | 3 - .../loganalyticsquerypackquery.yaml | 3 - .../loganalyticssavedsearch.yaml | 3 - .../operationalinsights/workspace.yaml | 3 - .../loganalyticssolution.yaml | 3 - .../orbital/contactprofile.yaml | 3 - examples-generated/orbital/spacecraft.yaml | 3 - .../resourcepolicyremediation.yaml | 3 - .../subscriptionpolicyremediation.yaml | 3 - examples-generated/portal/dashboard.yaml | 3 - .../powerbidedicated/powerbiembedded.yaml | 3 - examples-generated/purview/account.yaml | 3 - .../backupcontainerstorageaccount.yaml | 3 - .../backuppolicyfileshare.yaml | 3 - .../recoveryservices/backuppolicyvm.yaml | 3 - .../backuppolicyvmworkload.yaml | 3 - .../backupprotectedfileshare.yaml | 3 - .../recoveryservices/backupprotectedvm.yaml | 3 - .../recoveryservices/siterecoveryfabric.yaml | 3 - .../siterecoverynetworkmapping.yaml | 3 - .../siterecoveryprotectioncontainer.yaml | 3 - ...iterecoveryprotectioncontainermapping.yaml | 3 - .../siterecoveryreplicationpolicy.yaml | 3 - .../recoveryservices/vault.yaml | 3 - .../relay/eventrelaynamespace.yaml | 3 - .../relay/hybridconnection.yaml | 3 - .../hybridconnectionauthorizationrule.yaml | 3 - .../relay/namespaceauthorizationrule.yaml | 3 - .../resourcedeploymentscriptazurecli.yaml | 3 - ...sourcedeploymentscriptazurepowershell.yaml | 3 - .../resourcegrouptemplatedeployment.yaml | 3 - .../subscriptiontemplatedeployment.yaml | 3 - examples-generated/search/service.yaml | 3 - .../search/sharedprivatelinkservice.yaml | 3 - .../security/advancedthreatprotection.yaml | 3 - .../security/iotsecuritydevicegroup.yaml | 3 - .../security/iotsecuritysolution.yaml | 3 - .../security/securitycenterassessment.yaml | 3 - .../securitycenterassessmentpolicy.yaml | 3 - .../securitycenterautoprovisioning.yaml | 3 - .../security/securitycentercontact.yaml | 3 - ...tycenterservervulnerabilityassessment.yaml | 3 - ...vulnerabilityassessmentvirtualmachine.yaml | 3 - .../security/securitycentersetting.yaml | 3 - .../securitycentersubscriptionpricing.yaml | 3 - .../security/securitycenterworkspace.yaml | 3 - .../sentinelalertrulefusion.yaml | 3 - ...trulemachinelearningbehavioranalytics.yaml | 3 - .../sentinelalertrulemssecurityincident.yaml | 3 - .../sentinelautomationrule.yaml | 3 - .../sentineldataconnectoriot.yaml | 3 - ...ntinelloganalyticsworkspaceonboarding.yaml | 3 - .../securityinsights/sentinelwatchlist.yaml | 3 - .../namespaceauthorizationrule.yaml | 3 - .../namespacedisasterrecoveryconfig.yaml | 3 - .../servicebus/namespacenetworkruleset.yaml | 3 - examples-generated/servicebus/queue.yaml | 3 - .../servicebus/queueauthorizationrule.yaml | 3 - .../servicebus/servicebusnamespace.yaml | 3 - .../servicebus/subscription.yaml | 3 - .../servicebus/subscriptionrule.yaml | 3 - examples-generated/servicebus/topic.yaml | 3 - .../servicebus/topicauthorizationrule.yaml | 3 - examples-generated/servicefabric/cluster.yaml | 3 - .../servicefabric/managedcluster.yaml | 3 - .../servicelinker/springcloudconnection.yaml | 3 - .../signalrservice/networkacl.yaml | 3 - .../signalrservice/service.yaml | 3 - .../signalrsharedprivatelinkresource.yaml | 3 - .../signalrservice/webpubsub.yaml | 3 - .../signalrservice/webpubsubhub.yaml | 3 - .../signalrservice/webpubsubnetworkacl.yaml | 3 - .../managedapplicationdefinition.yaml | 3 - .../spring/cloudapplicationliveview.yaml | 3 - examples-generated/sql/mssqldatabase.yaml | 3 - .../mssqldatabaseextendedauditingpolicy.yaml | 3 - ...sevulnerabilityassessmentrulebaseline.yaml | 3 - examples-generated/sql/mssqlelasticpool.yaml | 3 - .../sql/mssqlfailovergroup.yaml | 3 - examples-generated/sql/mssqlfirewallrule.yaml | 3 - examples-generated/sql/mssqljobagent.yaml | 3 - .../sql/mssqljobcredential.yaml | 3 - .../sql/mssqlmanageddatabase.yaml | 3 - .../sql/mssqlmanagedinstance.yaml | 3 - ...dinstanceactivedirectoryadministrator.yaml | 3 - .../mssqlmanagedinstancefailovergroup.yaml | 3 - ...anagedinstancevulnerabilityassessment.yaml | 3 - .../sql/mssqloutboundfirewallrule.yaml | 3 - examples-generated/sql/mssqlserver.yaml | 3 - .../sql/mssqlserverdnsalias.yaml | 3 - ...lservermicrosoftsupportauditingpolicy.yaml | 3 - .../sql/mssqlserversecurityalertpolicy.yaml | 3 - .../mssqlservertransparentdataencryption.yaml | 3 - .../mssqlservervulnerabilityassessment.yaml | 3 - .../sql/mssqlvirtualnetworkrule.yaml | 3 - examples-generated/storage/account.yaml | 3 - .../storage/accountlocaluser.yaml | 3 - .../storage/accountnetworkrules.yaml | 3 - examples-generated/storage/blob.yaml | 3 - .../storage/blobinventorypolicy.yaml | 3 - examples-generated/storage/container.yaml | 3 - .../storage/datalakegen2filesystem.yaml | 3 - .../storage/datalakegen2path.yaml | 3 - .../storage/encryptionscope.yaml | 3 - .../storage/managementpolicy.yaml | 3 - .../storage/objectreplication.yaml | 3 - examples-generated/storage/queue.yaml | 3 - examples-generated/storage/share.yaml | 3 - .../storage/sharedirectory.yaml | 3 - examples-generated/storage/table.yaml | 3 - examples-generated/storage/tableentity.yaml | 3 - examples-generated/storagecache/hpccache.yaml | 3 - .../storagecache/hpccacheaccesspolicy.yaml | 3 - .../storagecache/hpccacheblobnfstarget.yaml | 3 - .../storagecache/hpccacheblobtarget.yaml | 3 - .../storagecache/hpccachenfstarget.yaml | 3 - examples-generated/storagepool/diskpool.yaml | 3 - .../storagesync/storagesync.yaml | 3 - .../streamanalytics/cluster.yaml | 3 - .../functionjavascriptuda.yaml | 3 - examples-generated/streamanalytics/job.yaml | 3 - .../managedprivateendpoint.yaml | 3 - .../streamanalytics/outputblob.yaml | 3 - .../streamanalytics/outputeventhub.yaml | 3 - .../streamanalytics/outputfunction.yaml | 3 - .../streamanalytics/outputmssql.yaml | 3 - .../streamanalytics/outputpowerbi.yaml | 3 - .../outputservicebusqueue.yaml | 3 - .../outputservicebustopic.yaml | 3 - .../streamanalytics/outputsynapse.yaml | 3 - .../streamanalytics/outputtable.yaml | 3 - .../streamanalytics/referenceinputblob.yaml | 3 - .../streamanalytics/referenceinputmssql.yaml | 3 - .../streamanalytics/streaminputblob.yaml | 3 - .../streamanalytics/streaminputeventhub.yaml | 3 - .../streamanalytics/streaminputiothub.yaml | 3 - examples-generated/synapse/firewallrule.yaml | 3 - .../synapse/integrationruntimeazure.yaml | 3 - .../synapse/integrationruntimeselfhosted.yaml | 3 - examples-generated/synapse/linkedservice.yaml | 3 - .../synapse/managedprivateendpoint.yaml | 3 - .../synapse/privatelinkhub.yaml | 3 - .../synapse/roleassignment.yaml | 3 - examples-generated/synapse/sparkpool.yaml | 3 - examples-generated/synapse/sqlpool.yaml | 3 - .../sqlpoolextendedauditingpolicy.yaml | 3 - .../synapse/sqlpoolsecurityalertpolicy.yaml | 3 - .../synapse/sqlpoolworkloadclassifier.yaml | 3 - .../synapse/sqlpoolworkloadgroup.yaml | 3 - examples-generated/synapse/workspace.yaml | 3 - .../synapse/workspaceaadadmin.yaml | 3 - .../workspaceextendedauditingpolicy.yaml | 3 - .../synapse/workspacesecurityalertpolicy.yaml | 3 - .../synapse/workspacesqlaadadmin.yaml | 3 - .../workspacevulnerabilityassessment.yaml | 3 - .../eventsourceeventhub.yaml | 3 - .../timeseriesinsights/eventsourceiothub.yaml | 3 - .../timeseriesinsights/gen2environment.yaml | 3 - .../timeseriesinsights/referencedataset.yaml | 3 - .../standardenvironment.yaml | 3 - examples-generated/web/appactiveslot.yaml | 3 - .../web/apphybridconnection.yaml | 3 - examples-generated/web/appserviceplan.yaml | 3 - examples-generated/web/functionapp.yaml | 3 - .../web/functionappactiveslot.yaml | 3 - .../web/functionappfunction.yaml | 3 - .../web/functionapphybridconnection.yaml | 3 - examples-generated/web/functionappslot.yaml | 3 - examples-generated/web/linuxfunctionapp.yaml | 3 - .../web/linuxfunctionappslot.yaml | 3 - examples-generated/web/linuxwebapp.yaml | 3 - examples-generated/web/linuxwebappslot.yaml | 3 - examples-generated/web/serviceplan.yaml | 3 - .../web/sourcecontroltoken.yaml | 3 - examples-generated/web/staticsite.yaml | 3 - .../web/windowsfunctionapp.yaml | 3 - .../web/windowsfunctionappslot.yaml | 3 - examples-generated/web/windowswebapp.yaml | 3 - examples-generated/web/windowswebappslot.yaml | 3 - go.mod | 116 +- go.sum | 397 +- hack/main.go.tmpl | 3 + .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../analysisservices/server/zz_controller.go | 6 +- .../apimanagement/api/zz_controller.go | 6 +- .../apidiagnostic/zz_controller.go | 6 +- .../apioperation/zz_controller.go | 6 +- .../apioperationpolicy/zz_controller.go | 6 +- .../apioperationtag/zz_controller.go | 6 +- .../apimanagement/apipolicy/zz_controller.go | 6 +- .../apimanagement/apirelease/zz_controller.go | 6 +- .../apimanagement/apischema/zz_controller.go | 6 +- .../apimanagement/apitag/zz_controller.go | 6 +- .../apiversionset/zz_controller.go | 6 +- .../authorizationserver/zz_controller.go | 6 +- .../apimanagement/backend/zz_controller.go | 6 +- .../certificate/zz_controller.go | 6 +- .../apimanagement/diagnostic/zz_controller.go | 6 +- .../emailtemplate/zz_controller.go | 6 +- .../apimanagement/gateway/zz_controller.go | 6 +- .../apimanagement/gatewayapi/zz_controller.go | 6 +- .../globalschema/zz_controller.go | 6 +- .../identityprovideraad/zz_controller.go | 6 +- .../identityproviderfacebook/zz_controller.go | 6 +- .../identityprovidergoogle/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../identityprovidertwitter/zz_controller.go | 6 +- .../apimanagement/logger/zz_controller.go | 6 +- .../apimanagement/management/zz_controller.go | 3 +- .../apimanagement/namedvalue/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../openidconnectprovider/zz_controller.go | 6 +- .../apimanagement/policy/zz_controller.go | 6 +- .../apimanagement/product/zz_controller.go | 6 +- .../apimanagement/productapi/zz_controller.go | 6 +- .../productpolicy/zz_controller.go | 6 +- .../apimanagement/producttag/zz_controller.go | 6 +- .../apimanagement/rediscache/zz_controller.go | 6 +- .../subscription/zz_controller.go | 6 +- .../apimanagement/tag/zz_controller.go | 6 +- .../apimanagement/user/zz_controller.go | 6 +- .../configuration/zz_controller.go | 6 +- .../springcloudaccelerator/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../springcloudapiportal/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../springcloudapp/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../springcloudbuilder/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../springcloudcertificate/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../springcloudcustomdomain/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../springclouddevtoolportal/zz_controller.go | 6 +- .../springcloudgateway/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../springcloudservice/zz_controller.go | 6 +- .../springcloudstorage/zz_controller.go | 6 +- .../attestation/provider/zz_controller.go | 6 +- .../managementlock/zz_controller.go | 6 +- .../policydefinition/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../resourcepolicyassignment/zz_controller.go | 6 +- .../resourcepolicyexemption/zz_controller.go | 6 +- .../roleassignment/zz_controller.go | 6 +- .../roledefinition/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../automation/account/zz_controller.go | 6 +- .../automation/connection/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../connectiontype/zz_controller.go | 6 +- .../automation/credential/zz_controller.go | 6 +- .../hybridrunbookworkergroup/zz_controller.go | 6 +- .../automation/module/zz_controller.go | 6 +- .../automation/runbook/zz_controller.go | 6 +- .../automation/schedule/zz_controller.go | 6 +- .../automation/variablebool/zz_controller.go | 6 +- .../variabledatetime/zz_controller.go | 6 +- .../automation/variableint/zz_controller.go | 6 +- .../variablestring/zz_controller.go | 6 +- .../automation/webhook/zz_controller.go | 6 +- .../azure/resourcegroup/zz_controller.go | 3 +- .../zz_controller.go | 3 +- .../azure/subscription/zz_controller.go | 3 +- .../azurestackhci/cluster/zz_controller.go | 6 +- .../botchannelalexa/zz_controller.go | 6 +- .../botchanneldirectline/zz_controller.go | 6 +- .../botchannelline/zz_controller.go | 6 +- .../botchannelmsteams/zz_controller.go | 6 +- .../botchannelslack/zz_controller.go | 6 +- .../botservice/botchannelsms/zz_controller.go | 6 +- .../botchannelsregistration/zz_controller.go | 6 +- .../botchannelwebchat/zz_controller.go | 6 +- .../botservice/botconnection/zz_controller.go | 6 +- .../botservice/botwebapp/zz_controller.go | 6 +- .../cache/rediscache/zz_controller.go | 6 +- .../redisenterprisecluster/zz_controller.go | 6 +- .../redisenterprisedatabase/zz_controller.go | 6 +- .../cache/redisfirewallrule/zz_controller.go | 6 +- .../cache/redislinkedserver/zz_controller.go | 6 +- .../controller/cdn/endpoint/zz_controller.go | 6 +- .../frontdoorcustomdomain/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../cdn/frontdoorendpoint/zz_controller.go | 6 +- .../cdn/frontdoororigin/zz_controller.go | 6 +- .../cdn/frontdoororigingroup/zz_controller.go | 6 +- .../cdn/frontdoorprofile/zz_controller.go | 6 +- .../cdn/frontdoorroute/zz_controller.go | 6 +- .../cdn/frontdoorrule/zz_controller.go | 6 +- .../cdn/frontdoorruleset/zz_controller.go | 6 +- .../controller/cdn/profile/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../account/zz_controller.go | 6 +- .../communication/service/zz_controller.go | 6 +- .../compute/availabilityset/zz_controller.go | 6 +- .../capacityreservation/zz_controller.go | 6 +- .../capacityreservationgroup/zz_controller.go | 6 +- .../compute/dedicatedhost/zz_controller.go | 6 +- .../compute/diskaccess/zz_controller.go | 6 +- .../diskencryptionset/zz_controller.go | 6 +- .../galleryapplication/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../controller/compute/image/zz_controller.go | 6 +- .../linuxvirtualmachine/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../compute/manageddisk/zz_controller.go | 6 +- .../manageddisksastoken/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../proximityplacementgroup/zz_controller.go | 6 +- .../compute/sharedimage/zz_controller.go | 6 +- .../sharedimagegallery/zz_controller.go | 6 +- .../compute/snapshot/zz_controller.go | 6 +- .../compute/sshpublickey/zz_controller.go | 6 +- .../windowsvirtualmachine/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../ledger/zz_controller.go | 6 +- .../budgetmanagementgroup/zz_controller.go | 6 +- .../budgetresourcegroup/zz_controller.go | 6 +- .../budgetsubscription/zz_controller.go | 6 +- .../agentpool/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../registry/zz_controller.go | 6 +- .../scopemap/zz_controller.go | 6 +- .../containerregistry/token/zz_controller.go | 6 +- .../tokenpassword/zz_controller.go | 6 +- .../webhook/zz_controller.go | 6 +- .../kubernetescluster/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../kubernetesfleetmanager/zz_controller.go | 6 +- .../cosmosdb/account/zz_controller.go | 6 +- .../cassandracluster/zz_controller.go | 6 +- .../cassandradatacenter/zz_controller.go | 6 +- .../cassandrakeyspace/zz_controller.go | 6 +- .../cosmosdb/cassandratable/zz_controller.go | 6 +- .../cosmosdb/gremlindatabase/zz_controller.go | 6 +- .../cosmosdb/gremlingraph/zz_controller.go | 6 +- .../cosmosdb/mongocollection/zz_controller.go | 6 +- .../cosmosdb/mongodatabase/zz_controller.go | 6 +- .../cosmosdb/sqlcontainer/zz_controller.go | 6 +- .../cosmosdb/sqldatabase/zz_controller.go | 6 +- .../sqldedicatedgateway/zz_controller.go | 6 +- .../cosmosdb/sqlfunction/zz_controller.go | 6 +- .../sqlroleassignment/zz_controller.go | 6 +- .../sqlroledefinition/zz_controller.go | 6 +- .../sqlstoredprocedure/zz_controller.go | 6 +- .../cosmosdb/sqltrigger/zz_controller.go | 6 +- .../cosmosdb/table/zz_controller.go | 6 +- .../costanomalyalert/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../customprovider/zz_controller.go | 6 +- .../databoxedge/device/zz_controller.go | 6 +- .../accessconnector/zz_controller.go | 6 +- .../databricks/workspace/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../customdataset/zz_controller.go | 6 +- .../datafactory/dataflow/zz_controller.go | 6 +- .../datasetazureblob/zz_controller.go | 6 +- .../datasetbinary/zz_controller.go | 6 +- .../datasetcosmosdbsqlapi/zz_controller.go | 6 +- .../datasetdelimitedtext/zz_controller.go | 6 +- .../datafactory/datasethttp/zz_controller.go | 6 +- .../datafactory/datasetjson/zz_controller.go | 6 +- .../datafactory/datasetmysql/zz_controller.go | 6 +- .../datasetparquet/zz_controller.go | 6 +- .../datasetpostgresql/zz_controller.go | 6 +- .../datasetsnowflake/zz_controller.go | 6 +- .../datasetsqlservertable/zz_controller.go | 6 +- .../datafactory/factory/zz_controller.go | 6 +- .../integrationruntimeazure/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../linkedcustomservice/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../linkedserviceazuresearch/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../linkedservicecosmosdb/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../linkedservicekeyvault/zz_controller.go | 6 +- .../linkedservicekusto/zz_controller.go | 6 +- .../linkedservicemysql/zz_controller.go | 6 +- .../linkedserviceodata/zz_controller.go | 6 +- .../linkedserviceodbc/zz_controller.go | 6 +- .../linkedservicepostgresql/zz_controller.go | 6 +- .../linkedservicesftp/zz_controller.go | 6 +- .../linkedservicesnowflake/zz_controller.go | 6 +- .../linkedservicesqlserver/zz_controller.go | 6 +- .../linkedservicesynapse/zz_controller.go | 6 +- .../linkedserviceweb/zz_controller.go | 6 +- .../managedprivateendpoint/zz_controller.go | 6 +- .../datafactory/pipeline/zz_controller.go | 6 +- .../triggerblobevent/zz_controller.go | 6 +- .../triggercustomevent/zz_controller.go | 6 +- .../triggerschedule/zz_controller.go | 6 +- .../databasemigrationproject/zz_controller.go | 6 +- .../databasemigrationservice/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../backupinstancedisk/zz_controller.go | 6 +- .../backupinstancepostgresql/zz_controller.go | 6 +- .../backuppolicyblobstorage/zz_controller.go | 6 +- .../backuppolicydisk/zz_controller.go | 6 +- .../backuppolicypostgresql/zz_controller.go | 6 +- .../backupvault/zz_controller.go | 6 +- .../resourceguard/zz_controller.go | 6 +- .../datashare/account/zz_controller.go | 6 +- .../datasetblobstorage/zz_controller.go | 6 +- .../datasetdatalakegen2/zz_controller.go | 6 +- .../datasetkustocluster/zz_controller.go | 6 +- .../datasetkustodatabase/zz_controller.go | 6 +- .../datashare/datashare/zz_controller.go | 6 +- .../configuration/zz_controller.go | 3 +- .../dbformariadb/database/zz_controller.go | 6 +- .../firewallrule/zz_controller.go | 6 +- .../dbformariadb/server/zz_controller.go | 6 +- .../virtualnetworkrule/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../dbformysql/configuration/zz_controller.go | 6 +- .../dbformysql/database/zz_controller.go | 6 +- .../dbformysql/firewallrule/zz_controller.go | 6 +- .../flexibledatabase/zz_controller.go | 6 +- .../flexibleserver/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../dbformysql/server/zz_controller.go | 6 +- .../virtualnetworkrule/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../configuration/zz_controller.go | 3 +- .../dbforpostgresql/database/zz_controller.go | 6 +- .../firewallrule/zz_controller.go | 6 +- .../flexibleserver/zz_controller.go | 6 +- .../zz_controller.go | 3 +- .../flexibleserverdatabase/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../dbforpostgresql/server/zz_controller.go | 6 +- .../serverkey/zz_controller.go | 6 +- .../virtualnetworkrule/zz_controller.go | 6 +- .../devices/iothub/zz_controller.go | 6 +- .../iothubcertificate/zz_controller.go | 6 +- .../iothubconsumergroup/zz_controller.go | 6 +- .../devices/iothubdps/zz_controller.go | 6 +- .../iothubdpscertificate/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../iothubendpointeventhub/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../devices/iothubenrichment/zz_controller.go | 6 +- .../iothubfallbackroute/zz_controller.go | 6 +- .../devices/iothubroute/zz_controller.go | 6 +- .../iothubsharedaccesspolicy/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../globalvmshutdownschedule/zz_controller.go | 6 +- .../devtestlab/lab/zz_controller.go | 6 +- .../linuxvirtualmachine/zz_controller.go | 6 +- .../devtestlab/policy/zz_controller.go | 6 +- .../devtestlab/schedule/zz_controller.go | 6 +- .../virtualnetwork/zz_controller.go | 6 +- .../windowsvirtualmachine/zz_controller.go | 6 +- .../digitaltwins/instance/zz_controller.go | 6 +- .../cloudelasticsearch/zz_controller.go | 6 +- .../eventgrid/domain/zz_controller.go | 6 +- .../eventgrid/domaintopic/zz_controller.go | 6 +- .../eventsubscription/zz_controller.go | 6 +- .../eventgrid/systemtopic/zz_controller.go | 6 +- .../eventgrid/topic/zz_controller.go | 6 +- .../authorizationrule/zz_controller.go | 6 +- .../eventhub/consumergroup/zz_controller.go | 6 +- .../eventhub/eventhub/zz_controller.go | 6 +- .../eventhubnamespace/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../namespaceschemagroup/zz_controller.go | 6 +- .../fluidrelay/server/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../hdinsight/hadoopcluster/zz_controller.go | 6 +- .../hdinsight/hbasecluster/zz_controller.go | 6 +- .../interactivequerycluster/zz_controller.go | 6 +- .../hdinsight/kafkacluster/zz_controller.go | 6 +- .../hdinsight/sparkcluster/zz_controller.go | 6 +- .../healthbot/healthbot/zz_controller.go | 6 +- .../healthcaredicomservice/zz_controller.go | 6 +- .../healthcarefhirservice/zz_controller.go | 6 +- .../healthcaremedtechservice/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../healthcareservice/zz_controller.go | 6 +- .../healthcareworkspace/zz_controller.go | 6 +- .../applicationinsights/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../monitoractiongroup/zz_controller.go | 6 +- .../monitoractivitylogalert/zz_controller.go | 6 +- .../monitorautoscalesetting/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../monitormetricalert/zz_controller.go | 6 +- .../monitorprivatelinkscope/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../iotcentral/application/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../keyvault/accesspolicy/zz_controller.go | 6 +- .../keyvault/certificate/zz_controller.go | 6 +- .../certificatecontacts/zz_controller.go | 6 +- .../certificateissuer/zz_controller.go | 6 +- .../controller/keyvault/key/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../managedstorageaccount/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../keyvault/secret/zz_controller.go | 6 +- .../keyvault/vault/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../controller/kusto/cluster/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../kusto/database/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../eventgriddataconnection/zz_controller.go | 6 +- .../eventhubdataconnection/zz_controller.go | 6 +- .../iothubdataconnection/zz_controller.go | 6 +- .../labservicelab/zz_controller.go | 6 +- .../labserviceplan/zz_controller.go | 6 +- .../logic/appactioncustom/zz_controller.go | 6 +- .../logic/appactionhttp/zz_controller.go | 6 +- .../appintegrationaccount/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../logic/apptriggercustom/zz_controller.go | 6 +- .../apptriggerhttprequest/zz_controller.go | 6 +- .../apptriggerrecurrence/zz_controller.go | 6 +- .../logic/appworkflow/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../controller/logz/monitor/zz_controller.go | 6 +- .../logz/subaccount/zz_controller.go | 6 +- .../logz/subaccounttagrule/zz_controller.go | 6 +- .../controller/logz/tagrule/zz_controller.go | 6 +- .../computecluster/zz_controller.go | 6 +- .../computeinstance/zz_controller.go | 6 +- .../synapsespark/zz_controller.go | 6 +- .../workspace/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../maintenanceconfiguration/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../userassignedidentity/zz_controller.go | 6 +- .../managementgroup/zz_controller.go | 3 +- .../zz_controller.go | 6 +- .../controller/maps/account/zz_controller.go | 6 +- .../controller/maps/creator/zz_controller.go | 6 +- .../marketplaceagreement/zz_controller.go | 6 +- .../controller/media/asset/zz_controller.go | 6 +- .../media/assetfilter/zz_controller.go | 6 +- .../media/contentkeypolicy/zz_controller.go | 6 +- .../controller/media/job/zz_controller.go | 6 +- .../media/liveevent/zz_controller.go | 6 +- .../media/liveeventoutput/zz_controller.go | 6 +- .../media/servicesaccount/zz_controller.go | 6 +- .../servicesaccountfilter/zz_controller.go | 6 +- .../media/streamingendpoint/zz_controller.go | 6 +- .../media/streaminglocator/zz_controller.go | 6 +- .../media/streamingpolicy/zz_controller.go | 6 +- .../media/transform/zz_controller.go | 6 +- .../spatialanchorsaccount/zz_controller.go | 6 +- .../netapp/account/zz_controller.go | 6 +- .../controller/netapp/pool/zz_controller.go | 6 +- .../netapp/snapshot/zz_controller.go | 6 +- .../netapp/snapshotpolicy/zz_controller.go | 6 +- .../controller/netapp/volume/zz_controller.go | 6 +- .../applicationgateway/zz_controller.go | 6 +- .../applicationsecuritygroup/zz_controller.go | 3 +- .../connectionmonitor/zz_controller.go | 3 +- .../ddosprotectionplan/zz_controller.go | 3 +- .../network/dnsaaaarecord/zz_controller.go | 6 +- .../network/dnsarecord/zz_controller.go | 6 +- .../network/dnscaarecord/zz_controller.go | 6 +- .../network/dnscnamerecord/zz_controller.go | 6 +- .../network/dnsmxrecord/zz_controller.go | 6 +- .../network/dnsnsrecord/zz_controller.go | 6 +- .../network/dnsptrrecord/zz_controller.go | 6 +- .../network/dnssrvrecord/zz_controller.go | 6 +- .../network/dnstxtrecord/zz_controller.go | 6 +- .../network/dnszone/zz_controller.go | 6 +- .../expressroutecircuit/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../expressrouteconnection/zz_controller.go | 6 +- .../expressroutegateway/zz_controller.go | 6 +- .../network/expressrouteport/zz_controller.go | 6 +- .../network/firewall/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../network/firewallpolicy/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../network/frontdoor/zz_controller.go | 3 +- .../zz_controller.go | 6 +- .../frontdoorfirewallpolicy/zz_controller.go | 6 +- .../frontdoorrulesengine/zz_controller.go | 6 +- .../network/ipgroup/zz_controller.go | 3 +- .../network/loadbalancer/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../loadbalancernatpool/zz_controller.go | 6 +- .../loadbalancernatrule/zz_controller.go | 6 +- .../loadbalanceroutboundrule/zz_controller.go | 6 +- .../loadbalancerprobe/zz_controller.go | 6 +- .../network/loadbalancerrule/zz_controller.go | 6 +- .../localnetworkgateway/zz_controller.go | 6 +- .../network/manager/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../managernetworkgroup/zz_controller.go | 6 +- .../managerstaticmember/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../network/natgateway/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../network/networkinterface/zz_controller.go | 3 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../network/packetcapture/zz_controller.go | 6 +- .../pointtositevpngateway/zz_controller.go | 6 +- .../privatednsaaaarecord/zz_controller.go | 3 +- .../privatednsarecord/zz_controller.go | 3 +- .../privatednscnamerecord/zz_controller.go | 6 +- .../privatednsmxrecord/zz_controller.go | 3 +- .../privatednsptrrecord/zz_controller.go | 3 +- .../privatednsresolver/zz_controller.go | 6 +- .../privatednssrvrecord/zz_controller.go | 3 +- .../privatednstxtrecord/zz_controller.go | 3 +- .../network/privatednszone/zz_controller.go | 3 +- .../zz_controller.go | 6 +- .../network/privateendpoint/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../privatelinkservice/zz_controller.go | 6 +- .../network/profile/zz_controller.go | 3 +- .../network/publicip/zz_controller.go | 3 +- .../network/publicipprefix/zz_controller.go | 3 +- .../controller/network/route/zz_controller.go | 6 +- .../network/routefilter/zz_controller.go | 6 +- .../network/routemap/zz_controller.go | 6 +- .../network/routeserver/zz_controller.go | 6 +- .../routeserverbgpconnection/zz_controller.go | 6 +- .../network/routetable/zz_controller.go | 6 +- .../network/securitygroup/zz_controller.go | 3 +- .../network/securityrule/zz_controller.go | 3 +- .../network/subnet/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../trafficmanagerprofile/zz_controller.go | 6 +- .../network/virtualhub/zz_controller.go | 6 +- .../virtualhubconnection/zz_controller.go | 6 +- .../network/virtualhubip/zz_controller.go | 6 +- .../virtualhubroutetable/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../network/virtualnetwork/zz_controller.go | 3 +- .../virtualnetworkgateway/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../virtualnetworkpeering/zz_controller.go | 6 +- .../network/virtualwan/zz_controller.go | 6 +- .../network/vpngateway/zz_controller.go | 6 +- .../vpngatewayconnection/zz_controller.go | 6 +- .../vpnserverconfiguration/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../network/vpnsite/zz_controller.go | 6 +- .../network/watcher/zz_controller.go | 3 +- .../network/watcherflowlog/zz_controller.go | 3 +- .../zz_controller.go | 6 +- .../authorizationrule/zz_controller.go | 6 +- .../notificationhub/zz_controller.go | 6 +- .../notificationhubnamespace/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../loganalyticsquerypack/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../loganalyticssavedsearch/zz_controller.go | 6 +- .../workspace/zz_controller.go | 6 +- .../loganalyticssolution/zz_controller.go | 6 +- .../orbital/contactprofile/zz_controller.go | 6 +- .../orbital/spacecraft/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../portal/dashboard/zz_controller.go | 6 +- .../powerbiembedded/zz_controller.go | 6 +- internal/controller/providerconfig/config.go | 8 +- .../purview/account/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../backuppolicyfileshare/zz_controller.go | 6 +- .../backuppolicyvm/zz_controller.go | 6 +- .../backuppolicyvmworkload/zz_controller.go | 6 +- .../backupprotectedfileshare/zz_controller.go | 6 +- .../backupprotectedvm/zz_controller.go | 6 +- .../siterecoveryfabric/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../recoveryservices/vault/zz_controller.go | 6 +- .../eventrelaynamespace/zz_controller.go | 6 +- .../relay/hybridconnection/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../search/service/zz_controller.go | 6 +- .../sharedprivatelinkservice/zz_controller.go | 6 +- .../advancedthreatprotection/zz_controller.go | 6 +- .../iotsecuritydevicegroup/zz_controller.go | 6 +- .../iotsecuritysolution/zz_controller.go | 6 +- .../securitycenterassessment/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../securitycentercontact/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../securitycentersetting/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../securitycenterworkspace/zz_controller.go | 6 +- .../sentinelalertrulefusion/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../sentinelautomationrule/zz_controller.go | 6 +- .../sentineldataconnectoriot/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../sentinelwatchlist/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../namespacenetworkruleset/zz_controller.go | 6 +- .../servicebus/queue/zz_controller.go | 6 +- .../queueauthorizationrule/zz_controller.go | 6 +- .../servicebusnamespace/zz_controller.go | 6 +- .../servicebus/subscription/zz_controller.go | 6 +- .../subscriptionrule/zz_controller.go | 6 +- .../servicebus/topic/zz_controller.go | 6 +- .../topicauthorizationrule/zz_controller.go | 6 +- .../servicefabric/cluster/zz_controller.go | 6 +- .../managedcluster/zz_controller.go | 6 +- .../springcloudconnection/zz_controller.go | 6 +- .../networkacl/zz_controller.go | 6 +- .../signalrservice/service/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../signalrservice/webpubsub/zz_controller.go | 6 +- .../webpubsubhub/zz_controller.go | 6 +- .../webpubsubnetworkacl/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../cloudapplicationliveview/zz_controller.go | 6 +- .../sql/mssqldatabase/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../sql/mssqlelasticpool/zz_controller.go | 6 +- .../sql/mssqlfailovergroup/zz_controller.go | 6 +- .../sql/mssqlfirewallrule/zz_controller.go | 6 +- .../sql/mssqljobagent/zz_controller.go | 6 +- .../sql/mssqljobcredential/zz_controller.go | 6 +- .../sql/mssqlmanageddatabase/zz_controller.go | 6 +- .../sql/mssqlmanagedinstance/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../sql/mssqlserver/zz_controller.go | 6 +- .../sql/mssqlserverdnsalias/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 3 +- .../zz_controller.go | 6 +- .../mssqlvirtualnetworkrule/zz_controller.go | 6 +- .../storage/account/zz_controller.go | 6 +- .../storage/accountlocaluser/zz_controller.go | 6 +- .../accountnetworkrules/zz_controller.go | 6 +- .../controller/storage/blob/zz_controller.go | 6 +- .../blobinventorypolicy/zz_controller.go | 6 +- .../storage/container/zz_controller.go | 6 +- .../datalakegen2filesystem/zz_controller.go | 6 +- .../storage/datalakegen2path/zz_controller.go | 6 +- .../storage/encryptionscope/zz_controller.go | 6 +- .../storage/managementpolicy/zz_controller.go | 6 +- .../objectreplication/zz_controller.go | 6 +- .../controller/storage/queue/zz_controller.go | 6 +- .../controller/storage/share/zz_controller.go | 6 +- .../storage/sharedirectory/zz_controller.go | 6 +- .../controller/storage/table/zz_controller.go | 6 +- .../storage/tableentity/zz_controller.go | 6 +- .../storagecache/hpccache/zz_controller.go | 6 +- .../hpccacheaccesspolicy/zz_controller.go | 6 +- .../hpccacheblobnfstarget/zz_controller.go | 6 +- .../hpccacheblobtarget/zz_controller.go | 6 +- .../hpccachenfstarget/zz_controller.go | 6 +- .../storagepool/diskpool/zz_controller.go | 6 +- .../storagesync/storagesync/zz_controller.go | 3 +- .../streamanalytics/cluster/zz_controller.go | 6 +- .../functionjavascriptuda/zz_controller.go | 6 +- .../streamanalytics/job/zz_controller.go | 6 +- .../managedprivateendpoint/zz_controller.go | 6 +- .../outputblob/zz_controller.go | 6 +- .../outputeventhub/zz_controller.go | 6 +- .../outputfunction/zz_controller.go | 6 +- .../outputmssql/zz_controller.go | 6 +- .../outputpowerbi/zz_controller.go | 6 +- .../outputservicebusqueue/zz_controller.go | 6 +- .../outputservicebustopic/zz_controller.go | 6 +- .../outputsynapse/zz_controller.go | 6 +- .../outputtable/zz_controller.go | 6 +- .../referenceinputblob/zz_controller.go | 6 +- .../referenceinputmssql/zz_controller.go | 6 +- .../streaminputblob/zz_controller.go | 6 +- .../streaminputeventhub/zz_controller.go | 6 +- .../streaminputiothub/zz_controller.go | 6 +- .../synapse/firewallrule/zz_controller.go | 6 +- .../integrationruntimeazure/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../synapse/linkedservice/zz_controller.go | 6 +- .../managedprivateendpoint/zz_controller.go | 6 +- .../synapse/privatelinkhub/zz_controller.go | 6 +- .../synapse/roleassignment/zz_controller.go | 6 +- .../synapse/sparkpool/zz_controller.go | 6 +- .../synapse/sqlpool/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../sqlpoolworkloadgroup/zz_controller.go | 6 +- .../synapse/workspace/zz_controller.go | 6 +- .../workspaceaadadmin/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../workspacesqlaadadmin/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../eventsourceeventhub/zz_controller.go | 6 +- .../eventsourceiothub/zz_controller.go | 6 +- .../gen2environment/zz_controller.go | 6 +- .../referencedataset/zz_controller.go | 6 +- .../standardenvironment/zz_controller.go | 6 +- .../web/appactiveslot/zz_controller.go | 6 +- .../web/apphybridconnection/zz_controller.go | 6 +- .../web/appserviceplan/zz_controller.go | 6 +- .../web/functionapp/zz_controller.go | 6 +- .../functionappactiveslot/zz_controller.go | 6 +- .../web/functionappfunction/zz_controller.go | 6 +- .../zz_controller.go | 6 +- .../web/functionappslot/zz_controller.go | 6 +- .../web/linuxfunctionapp/zz_controller.go | 6 +- .../web/linuxfunctionappslot/zz_controller.go | 6 +- .../web/linuxwebapp/zz_controller.go | 6 +- .../web/linuxwebappslot/zz_controller.go | 6 +- .../web/serviceplan/zz_controller.go | 6 +- .../web/sourcecontroltoken/zz_controller.go | 6 +- .../web/staticsite/zz_controller.go | 6 +- .../web/windowsfunctionapp/zz_controller.go | 6 +- .../windowsfunctionappslot/zz_controller.go | 6 +- .../web/windowswebapp/zz_controller.go | 6 +- .../web/windowswebappslot/zz_controller.go | 6 +- ...ound.io_monitoractionruleactiongroups.yaml | 225 +- ...ound.io_monitoractionrulesuppressions.yaml | 273 +- ...onitoralertprocessingruleactiongroups.yaml | 387 +- ...onitoralertprocessingrulesuppressions.yaml | 387 +- ...und.io_monitorsmartdetectoralertrules.yaml | 127 +- ...ysisservices.azure.upbound.io_servers.yaml | 121 +- ...ement.azure.upbound.io_apidiagnostics.yaml | 305 +- ...azure.upbound.io_apioperationpolicies.yaml | 63 +- ...gement.azure.upbound.io_apioperations.yaml | 591 +- ...ent.azure.upbound.io_apioperationtags.yaml | 64 +- ...nagement.azure.upbound.io_apipolicies.yaml | 63 +- ...nagement.azure.upbound.io_apireleases.yaml | 59 +- .../apimanagement.azure.upbound.io_apis.yaml | 239 +- ...anagement.azure.upbound.io_apischemas.yaml | 75 +- ...pimanagement.azure.upbound.io_apitags.yaml | 55 +- ...ement.azure.upbound.io_apiversionsets.yaml | 83 +- ...azure.upbound.io_authorizationservers.yaml | 155 +- ...imanagement.azure.upbound.io_backends.yaml | 204 +- ...agement.azure.upbound.io_certificates.yaml | 60 +- ...nagement.azure.upbound.io_diagnostics.yaml | 305 +- ...ement.azure.upbound.io_emailtemplates.yaml | 71 +- ...nagement.azure.upbound.io_gatewayapis.yaml | 55 +- ...imanagement.azure.upbound.io_gateways.yaml | 87 +- ...gement.azure.upbound.io_globalschemas.yaml | 75 +- ...azure.upbound.io_identityprovideraads.yaml | 80 +- ....upbound.io_identityproviderfacebooks.yaml | 66 +- ...re.upbound.io_identityprovidergoogles.yaml | 66 +- ...upbound.io_identityprovidermicrosofts.yaml | 66 +- ...e.upbound.io_identityprovidertwitters.yaml | 61 +- ...pimanagement.azure.upbound.io_loggers.yaml | 80 +- ...nagement.azure.upbound.io_managements.yaml | 378 +- ...nagement.azure.upbound.io_namedvalues.yaml | 91 +- ...pbound.io_notificationrecipientemails.yaml | 55 +- ...upbound.io_notificationrecipientusers.yaml | 67 +- ...ure.upbound.io_openidconnectproviders.yaml | 79 +- ...imanagement.azure.upbound.io_policies.yaml | 63 +- ...nagement.azure.upbound.io_productapis.yaml | 55 +- ...ment.azure.upbound.io_productpolicies.yaml | 63 +- ...imanagement.azure.upbound.io_products.yaml | 91 +- ...nagement.azure.upbound.io_producttags.yaml | 55 +- ...nagement.azure.upbound.io_rediscaches.yaml | 66 +- ...gement.azure.upbound.io_subscriptions.yaml | 74 +- .../apimanagement.azure.upbound.io_tags.yaml | 60 +- .../apimanagement.azure.upbound.io_users.yaml | 89 +- ...ation.azure.upbound.io_configurations.yaml | 116 +- ...re.upbound.io_springcloudaccelerators.yaml | 65 +- ...bound.io_springcloudactivedeployments.yaml | 55 +- ....io_springcloudapiportalcustomdomains.yaml | 69 +- ...zure.upbound.io_springcloudapiportals.yaml | 89 +- ...io_springcloudappcosmosdbassociations.yaml | 91 +- ...nd.io_springcloudappmysqlassociations.yaml | 58 +- ...nd.io_springcloudappredisassociations.yaml | 60 +- ...form.azure.upbound.io_springcloudapps.yaml | 167 +- ...pbound.io_springcloudbuilddeployments.yaml | 95 +- ....azure.upbound.io_springcloudbuilders.yaml | 105 +- ...bound.io_springcloudbuildpackbindings.yaml | 79 +- ...re.upbound.io_springcloudcertificates.yaml | 60 +- ...d.io_springcloudconfigurationservices.yaml | 102 +- ...nd.io_springcloudcontainerdeployments.yaml | 122 +- ...e.upbound.io_springcloudcustomdomains.yaml | 75 +- ....io_springcloudcustomizedaccelerators.yaml | 127 +- ....upbound.io_springclouddevtoolportals.yaml | 97 +- ...nd.io_springcloudgatewaycustomdomains.yaml | 69 +- ....azure.upbound.io_springcloudgateways.yaml | 188 +- ...upbound.io_springcloudjavadeployments.yaml | 92 +- ....azure.upbound.io_springcloudservices.yaml | 254 +- ....azure.upbound.io_springcloudstorages.yaml | 55 +- ...ttestation.azure.upbound.io_providers.yaml | 95 +- ...tion.azure.upbound.io_managementlocks.yaml | 77 +- ...on.azure.upbound.io_policydefinitions.yaml | 107 +- ...und.io_resourcegrouppolicyassignments.yaml | 198 +- ....upbound.io_resourcepolicyassignments.yaml | 216 +- ...e.upbound.io_resourcepolicyexemptions.yaml | 94 +- ...tion.azure.upbound.io_roleassignments.yaml | 111 +- ...tion.azure.upbound.io_roledefinitions.yaml | 128 +- ...ound.io_subscriptionpolicyassignments.yaml | 207 +- ...bound.io_subscriptionpolicyexemptions.yaml | 94 +- .../automation.azure.upbound.io_accounts.yaml | 122 +- ...ound.io_connectionclassiccertificates.yaml | 80 +- ...tomation.azure.upbound.io_connections.yaml | 80 +- ...tion.azure.upbound.io_connectiontypes.yaml | 98 +- ...tomation.azure.upbound.io_credentials.yaml | 69 +- ....upbound.io_hybridrunbookworkergroups.yaml | 78 +- .../automation.azure.upbound.io_modules.yaml | 87 +- .../automation.azure.upbound.io_runbooks.yaml | 232 +- ...automation.azure.upbound.io_schedules.yaml | 118 +- ...mation.azure.upbound.io_variablebools.yaml | 66 +- ...on.azure.upbound.io_variabledatetimes.yaml | 67 +- ...omation.azure.upbound.io_variableints.yaml | 66 +- ...tion.azure.upbound.io_variablestrings.yaml | 66 +- .../automation.azure.upbound.io_webhooks.yaml | 84 +- .../azure.upbound.io_providerconfigs.yaml | 3 +- ...azure.upbound.io_providerconfigusages.yaml | 3 +- .../crds/azure.upbound.io_resourcegroups.yaml | 70 +- ...ound.io_resourceproviderregistrations.yaml | 79 +- .../crds/azure.upbound.io_storeconfigs.yaml | 3 +- .../crds/azure.upbound.io_subscriptions.yaml | 84 +- ...urestackhci.azure.upbound.io_clusters.yaml | 84 +- ...ice.azure.upbound.io_botchannelalexas.yaml | 71 +- ...zure.upbound.io_botchanneldirectlines.yaml | 105 +- ...vice.azure.upbound.io_botchannellines.yaml | 73 +- ...ce.azure.upbound.io_botchannelmsteams.yaml | 72 +- ...ice.azure.upbound.io_botchannelslacks.yaml | 81 +- ...ice.azure.upbound.io_botchannelsmses.yaml} | 86 +- ...e.upbound.io_botchannelsregistrations.yaml | 131 +- ...e.azure.upbound.io_botchannelwebchats.yaml | 73 +- ...rvice.azure.upbound.io_botconnections.yaml | 97 +- ...otservice.azure.upbound.io_botwebapps.yaml | 106 +- .../cache.azure.upbound.io_rediscaches.yaml | 235 +- ...re.upbound.io_redisenterpriseclusters.yaml | 98 +- ...e.upbound.io_redisenterprisedatabases.yaml | 109 +- ...e.azure.upbound.io_redisfirewallrules.yaml | 70 +- ...e.azure.upbound.io_redislinkedservers.yaml | 73 +- .../crds/cdn.azure.upbound.io_endpoints.yaml | 848 +- ....io_frontdoorcustomdomainassociations.yaml | 55 +- ...ure.upbound.io_frontdoorcustomdomains.yaml | 88 +- ...n.azure.upbound.io_frontdoorendpoints.yaml | 66 +- ...zure.upbound.io_frontdoororigingroups.yaml | 120 +- ...cdn.azure.upbound.io_frontdoororigins.yaml | 109 +- ...dn.azure.upbound.io_frontdoorprofiles.yaml | 75 +- .../cdn.azure.upbound.io_frontdoorroutes.yaml | 135 +- .../cdn.azure.upbound.io_frontdoorrules.yaml | 929 +- ...dn.azure.upbound.io_frontdoorrulesets.yaml | 55 +- .../crds/cdn.azure.upbound.io_profiles.yaml | 79 +- ...pbound.io_appservicecertificateorders.yaml | 91 +- ...iveservices.azure.upbound.io_accounts.yaml | 229 +- ...mmunication.azure.upbound.io_services.yaml | 70 +- ...ute.azure.upbound.io_availabilitysets.yaml | 88 +- ....upbound.io_capacityreservationgroups.yaml | 76 +- ...azure.upbound.io_capacityreservations.yaml | 87 +- ...mpute.azure.upbound.io_dedicatedhosts.yaml | 106 +- ...compute.azure.upbound.io_diskaccesses.yaml | 70 +- ...e.azure.upbound.io_diskencryptionsets.yaml | 108 +- ....azure.upbound.io_galleryapplications.yaml | 96 +- ...upbound.io_galleryapplicationversions.yaml | 153 +- .../crds/compute.azure.upbound.io_images.yaml | 143 +- ...azure.upbound.io_linuxvirtualmachines.yaml | 478 +- ...bound.io_linuxvirtualmachinescalesets.yaml | 933 +- ...compute.azure.upbound.io_manageddisks.yaml | 261 +- ...azure.upbound.io_manageddisksastokens.yaml | 73 +- ...o_orchestratedvirtualmachinescalesets.yaml | 853 +- ...e.upbound.io_proximityplacementgroups.yaml | 79 +- ...azure.upbound.io_sharedimagegalleries.yaml | 72 +- ...compute.azure.upbound.io_sharedimages.yaml | 200 +- .../compute.azure.upbound.io_snapshots.yaml | 138 +- ...ompute.azure.upbound.io_sshpublickeys.yaml | 79 +- ...ure.upbound.io_windowsvirtualmachines.yaml | 510 +- ...und.io_windowsvirtualmachinescalesets.yaml | 977 +- ...entialledger.azure.upbound.io_ledgers.yaml | 127 +- ...ure.upbound.io_budgetmanagementgroups.yaml | 253 +- ...azure.upbound.io_budgetresourcegroups.yaml | 264 +- ....azure.upbound.io_budgetsubscriptions.yaml | 258 +- ...rregistry.azure.upbound.io_agentpools.yaml | 81 +- ...bound.io_containerconnectedregistries.yaml | 121 +- ...rregistry.azure.upbound.io_registries.yaml | 233 +- ...erregistry.azure.upbound.io_scopemaps.yaml | 69 +- ...istry.azure.upbound.io_tokenpasswords.yaml | 80 +- ...ainerregistry.azure.upbound.io_tokens.yaml | 60 +- ...nerregistry.azure.upbound.io_webhooks.yaml | 105 +- ...upbound.io_kubernetesclusternodepools.yaml | 502 +- ...e.azure.upbound.io_kubernetesclusters.yaml | 1294 +- ...re.upbound.io_kubernetesfleetmanagers.yaml | 83 +- .../cosmosdb.azure.upbound.io_accounts.yaml | 401 +- ...db.azure.upbound.io_cassandraclusters.yaml | 122 +- ...azure.upbound.io_cassandradatacenters.yaml | 99 +- ...b.azure.upbound.io_cassandrakeyspaces.yaml | 71 +- ...osdb.azure.upbound.io_cassandratables.yaml | 137 +- ...sdb.azure.upbound.io_gremlindatabases.yaml | 71 +- ...smosdb.azure.upbound.io_gremlingraphs.yaml | 198 +- ...sdb.azure.upbound.io_mongocollections.yaml | 104 +- ...mosdb.azure.upbound.io_mongodatabases.yaml | 71 +- ...smosdb.azure.upbound.io_sqlcontainers.yaml | 221 +- ...osmosdb.azure.upbound.io_sqldatabases.yaml | 73 +- ...azure.upbound.io_sqldedicatedgateways.yaml | 73 +- ...osmosdb.azure.upbound.io_sqlfunctions.yaml | 63 +- ...b.azure.upbound.io_sqlroleassignments.yaml | 69 +- ...b.azure.upbound.io_sqlroledefinitions.yaml | 106 +- ....azure.upbound.io_sqlstoredprocedures.yaml | 63 +- ...cosmosdb.azure.upbound.io_sqltriggers.yaml | 79 +- .../cosmosdb.azure.upbound.io_tables.yaml | 71 +- ...nt.azure.upbound.io_costanomalyalerts.yaml | 86 +- ...io_resourcegroupcostmanagementexports.yaml | 122 +- ....io_subscriptioncostmanagementexports.yaml | 130 +- ...ders.azure.upbound.io_customproviders.yaml | 119 +- .../databoxedge.azure.upbound.io_devices.yaml | 88 +- ...cks.azure.upbound.io_accessconnectors.yaml | 91 +- ...bound.io_workspacecustomermanagedkeys.yaml | 55 +- ...atabricks.azure.upbound.io_workspaces.yaml | 182 +- ...ctory.azure.upbound.io_customdatasets.yaml | 117 +- ...atafactory.azure.upbound.io_dataflows.yaml | 352 +- ...ry.azure.upbound.io_datasetazureblobs.yaml | 115 +- ...tory.azure.upbound.io_datasetbinaries.yaml | 179 +- ...ure.upbound.io_datasetcosmosdbsqlapis.yaml | 105 +- ...zure.upbound.io_datasetdelimitedtexts.yaml | 214 +- ...factory.azure.upbound.io_datasethttps.yaml | 112 +- ...factory.azure.upbound.io_datasetjsons.yaml | 164 +- ...actory.azure.upbound.io_datasetmysqls.yaml | 104 +- ...tory.azure.upbound.io_datasetparquets.yaml | 167 +- ...y.azure.upbound.io_datasetpostgresqls.yaml | 104 +- ...ry.azure.upbound.io_datasetsnowflakes.yaml | 114 +- ...ure.upbound.io_datasetsqlservertables.yaml | 106 +- ...atafactory.azure.upbound.io_factories.yaml | 195 +- ...e.upbound.io_integrationruntimeazures.yaml | 92 +- ...und.io_integrationruntimeazuressises.yaml} | 312 +- ...upbound.io_integrationruntimemanageds.yaml | 140 +- ...ound.io_integrationruntimeselfhosteds.yaml | 72 +- ...azure.upbound.io_linkedcustomservices.yaml | 113 +- ...und.io_linkedserviceazureblobstorages.yaml | 136 +- ...bound.io_linkedserviceazuredatabricks.yaml | 191 +- ...und.io_linkedserviceazurefilestorages.yaml | 113 +- ...pbound.io_linkedserviceazurefunctions.yaml | 109 +- ...upbound.io_linkedserviceazuresearches.yaml | 88 +- ...und.io_linkedserviceazuresqldatabases.yaml | 146 +- ...nd.io_linkedserviceazuretablestorages.yaml | 84 +- ...und.io_linkedservicecosmosdbmongoapis.yaml | 88 +- ...ure.upbound.io_linkedservicecosmosdbs.yaml | 89 +- ....io_linkedservicedatalakestoragegen2s.yaml | 115 +- ...ure.upbound.io_linkedservicekeyvaults.yaml | 82 +- ...azure.upbound.io_linkedservicekustos.yaml} | 97 +- ....azure.upbound.io_linkedservicemysqls.yaml | 90 +- ...y.azure.upbound.io_linkedserviceodata.yaml | 100 +- ...y.azure.upbound.io_linkedserviceodbcs.yaml | 101 +- ...e.upbound.io_linkedservicepostgresqls.yaml | 90 +- ...y.azure.upbound.io_linkedservicesftps.yaml | 121 +- ...re.upbound.io_linkedservicesnowflakes.yaml | 103 +- ...re.upbound.io_linkedservicesqlservers.yaml | 125 +- ...zure.upbound.io_linkedservicesynapses.yaml | 104 +- ...ry.azure.upbound.io_linkedservicewebs.yaml | 100 +- ...re.upbound.io_managedprivateendpoints.yaml | 76 +- ...atafactory.azure.upbound.io_pipelines.yaml | 93 +- ...ry.azure.upbound.io_triggerblobevents.yaml | 112 +- ....azure.upbound.io_triggercustomevents.yaml | 110 +- ...ory.azure.upbound.io_triggerschedules.yaml | 166 +- ....upbound.io_databasemigrationprojects.yaml | 95 +- ....upbound.io_databasemigrationservices.yaml | 87 +- ...upbound.io_backupinstanceblobstorages.yaml | 64 +- ....azure.upbound.io_backupinstancedisks.yaml | 65 +- ....upbound.io_backupinstancepostgresqls.yaml | 64 +- ...e.upbound.io_backuppolicyblobstorages.yaml | 65 +- ...on.azure.upbound.io_backuppolicydisks.yaml | 114 +- ...re.upbound.io_backuppolicypostgresqls.yaml | 148 +- ...tection.azure.upbound.io_backupvaults.yaml | 101 +- ...ction.azure.upbound.io_resourceguards.yaml | 76 +- .../datashare.azure.upbound.io_accounts.yaml | 89 +- ....azure.upbound.io_datasetblobstorages.yaml | 84 +- ...azure.upbound.io_datasetdatalakegen2s.yaml | 66 +- ...azure.upbound.io_datasetkustoclusters.yaml | 55 +- ...zure.upbound.io_datasetkustodatabases.yaml | 55 +- ...datashare.azure.upbound.io_datashares.yaml | 91 +- ...riadb.azure.upbound.io_configurations.yaml | 74 +- ...formariadb.azure.upbound.io_databases.yaml | 74 +- ...ariadb.azure.upbound.io_firewallrules.yaml | 72 +- ...dbformariadb.azure.upbound.io_servers.yaml | 150 +- ....azure.upbound.io_virtualnetworkrules.yaml | 55 +- ...ound.io_activedirectoryadministrators.yaml | 79 +- ...mysql.azure.upbound.io_configurations.yaml | 74 +- ...dbformysql.azure.upbound.io_databases.yaml | 74 +- ...rmysql.azure.upbound.io_firewallrules.yaml | 72 +- ...ql.azure.upbound.io_flexibledatabases.yaml | 74 +- ...bound.io_flexibleserverconfigurations.yaml | 65 +- ...pbound.io_flexibleserverfirewallrules.yaml | 72 +- ...ysql.azure.upbound.io_flexibleservers.yaml | 216 +- .../dbformysql.azure.upbound.io_servers.yaml | 208 +- ....azure.upbound.io_virtualnetworkrules.yaml | 55 +- ...ound.io_activedirectoryadministrators.yaml | 79 +- ...resql.azure.upbound.io_configurations.yaml | 74 +- ...postgresql.azure.upbound.io_databases.yaml | 75 +- ...gresql.azure.upbound.io_firewallrules.yaml | 72 +- ...bound.io_flexibleserverconfigurations.yaml | 73 +- ...re.upbound.io_flexibleserverdatabases.yaml | 68 +- ...pbound.io_flexibleserverfirewallrules.yaml | 72 +- ...esql.azure.upbound.io_flexibleservers.yaml | 217 +- ...ostgresql.azure.upbound.io_serverkeys.yaml | 55 +- ...orpostgresql.azure.upbound.io_servers.yaml | 210 +- ....azure.upbound.io_virtualnetworkrules.yaml | 60 +- ...s.azure.upbound.io_iothubcertificates.yaml | 62 +- ...azure.upbound.io_iothubconsumergroups.yaml | 55 +- ...zure.upbound.io_iothubdpscertificates.yaml | 64 +- ...devices.azure.upbound.io_iothubdpses.yaml} | 151 +- ...ound.io_iothubdpssharedaccesspolicies.yaml | 77 +- ...re.upbound.io_iothubendpointeventhubs.yaml | 74 +- ...und.io_iothubendpointservicebusqueues.yaml | 75 +- ...und.io_iothubendpointservicebustopics.yaml | 75 +- ...nd.io_iothubendpointstoragecontainers.yaml | 91 +- ...es.azure.upbound.io_iothubenrichments.yaml | 82 +- ...azure.upbound.io_iothubfallbackroutes.yaml | 74 +- ...devices.azure.upbound.io_iothubroutes.yaml | 88 +- .../devices.azure.upbound.io_iothubs.yaml | 251 +- ...upbound.io_iothubsharedaccesspolicies.yaml | 73 +- ...upbound.io_iothubdeviceupdateaccounts.yaml | 100 +- ...pbound.io_iothubdeviceupdateinstances.yaml | 71 +- ....upbound.io_globalvmshutdownschedules.yaml | 120 +- .../devtestlab.azure.upbound.io_labs.yaml | 74 +- ...azure.upbound.io_linuxvirtualmachines.yaml | 169 +- .../devtestlab.azure.upbound.io_policies.yaml | 103 +- ...devtestlab.azure.upbound.io_schedules.yaml | 157 +- ...tlab.azure.upbound.io_virtualnetworks.yaml | 86 +- ...ure.upbound.io_windowsvirtualmachines.yaml | 167 +- ...gitaltwins.azure.upbound.io_instances.yaml | 84 +- ...azure.upbound.io_cloudelasticsearches.yaml | 135 +- .../eventgrid.azure.upbound.io_domains.yaml | 184 +- ...entgrid.azure.upbound.io_domaintopics.yaml | 55 +- ...d.azure.upbound.io_eventsubscriptions.yaml | 654 +- ...entgrid.azure.upbound.io_systemtopics.yaml | 107 +- .../eventgrid.azure.upbound.io_topics.yaml | 174 +- ...b.azure.upbound.io_authorizationrules.yaml | 69 +- ...nthub.azure.upbound.io_consumergroups.yaml | 59 +- ...b.azure.upbound.io_eventhubnamespaces.yaml | 175 +- .../eventhub.azure.upbound.io_eventhubs.yaml | 138 +- ...pbound.io_namespaceauthorizationrules.yaml | 69 +- ...d.io_namespacedisasterrecoveryconfigs.yaml | 55 +- ...zure.upbound.io_namespaceschemagroups.yaml | 74 +- .../fluidrelay.azure.upbound.io_servers.yaml | 104 +- ...irtualmachineconfigurationassignments.yaml | 111 +- ...sight.azure.upbound.io_hadoopclusters.yaml | 821 +- ...nsight.azure.upbound.io_hbaseclusters.yaml | 660 +- ...e.upbound.io_interactivequeryclusters.yaml | 697 +- ...nsight.azure.upbound.io_kafkaclusters.yaml | 733 +- ...nsight.azure.upbound.io_sparkclusters.yaml | 697 +- ...healthbot.azure.upbound.io_healthbots.yaml | 78 +- ...re.upbound.io_healthcaredicomservices.yaml | 96 +- ...ure.upbound.io_healthcarefhirservices.yaml | 191 +- ...lthcaremedtechservicefhirdestinations.yaml | 83 +- ....upbound.io_healthcaremedtechservices.yaml | 95 +- ...s.azure.upbound.io_healthcareservices.yaml | 143 +- ...azure.upbound.io_healthcareworkspaces.yaml | 70 +- ....azure.upbound.io_applicationinsights.yaml | 121 +- ....io_applicationinsightsanalyticsitems.yaml | 94 +- ...upbound.io_applicationinsightsapikeys.yaml | 80 +- ...pplicationinsightssmartdetectionrules.yaml | 89 +- ...o_applicationinsightsstandardwebtests.yaml | 188 +- ...pbound.io_applicationinsightswebtests.yaml | 122 +- ...bound.io_applicationinsightsworkbooks.yaml | 134 +- ..._applicationinsightsworkbooktemplates.yaml | 130 +- ....azure.upbound.io_monitoractiongroups.yaml | 367 +- ...e.upbound.io_monitoractivitylogalerts.yaml | 209 +- ...e.upbound.io_monitorautoscalesettings.yaml | 361 +- ...und.io_monitordatacollectionendpoints.yaml | 83 +- ...monitordatacollectionruleassociations.yaml | 59 +- ...upbound.io_monitordatacollectionrules.yaml | 707 +- ....azure.upbound.io_monitormetricalerts.yaml | 264 +- ...d.io_monitorprivatelinkscopedservices.yaml | 55 +- ...e.upbound.io_monitorprivatelinkscopes.yaml | 62 +- ...d.io_monitorscheduledqueryrulesalerts.yaml | 201 +- ...io_monitorscheduledqueryrulesalertv2s.yaml | 251 +- ...und.io_monitorscheduledqueryruleslogs.yaml | 127 +- ...upbound.io_applicationnetworkrulesets.yaml | 83 +- ...central.azure.upbound.io_applications.yaml | 116 +- ...vault.azure.upbound.io_accesspolicies.yaml | 111 +- ....azure.upbound.io_certificatecontacts.yaml | 77 +- ...t.azure.upbound.io_certificateissuers.yaml | 92 +- ...eyvault.azure.upbound.io_certificates.yaml | 252 +- .../crds/keyvault.azure.upbound.io_keys.yaml | 128 +- ...und.io_managedhardwaresecuritymodules.yaml | 132 +- ...ure.upbound.io_managedstorageaccounts.yaml | 79 +- ...agedstorageaccountsastokendefinitions.yaml | 88 +- .../keyvault.azure.upbound.io_secrets.yaml | 73 +- .../keyvault.azure.upbound.io_vaults.yaml | 161 +- ...und.io_attacheddatabaseconfigurations.yaml | 118 +- ...und.io_clustermanagedprivateendpoints.yaml | 67 +- ...pbound.io_clusterprincipalassignments.yaml | 89 +- .../crds/kusto.azure.upbound.io_clusters.yaml | 233 +- ...bound.io_databaseprincipalassignments.yaml | 89 +- .../kusto.azure.upbound.io_databases.yaml | 74 +- ...e.upbound.io_eventgriddataconnections.yaml | 102 +- ...re.upbound.io_eventhubdataconnections.yaml | 99 +- ...zure.upbound.io_iothubdataconnections.yaml | 104 +- ...vices.azure.upbound.io_labservicelabs.yaml | 271 +- ...ices.azure.upbound.io_labserviceplans.yaml | 156 +- ...gic.azure.upbound.io_appactioncustoms.yaml | 64 +- ...logic.azure.upbound.io_appactionhttps.yaml | 109 +- ...integrationaccountbatchconfigurations.yaml | 181 +- ...ound.io_appintegrationaccountpartners.yaml | 81 +- ...ure.upbound.io_appintegrationaccounts.yaml | 93 +- ...bound.io_appintegrationaccountschemas.yaml | 72 +- ...ound.io_appintegrationaccountsessions.yaml | 64 +- ...ic.azure.upbound.io_apptriggercustoms.yaml | 64 +- ...ure.upbound.io_apptriggerhttprequests.yaml | 71 +- ...zure.upbound.io_apptriggerrecurrences.yaml | 107 +- .../logic.azure.upbound.io_appworkflows.yaml | 217 +- ...und.io_integrationserviceenvironments.yaml | 87 +- .../crds/logz.azure.upbound.io_monitors.yaml | 150 +- .../logz.azure.upbound.io_subaccounts.yaml | 106 +- ...z.azure.upbound.io_subaccounttagrules.yaml | 89 +- .../crds/logz.azure.upbound.io_tagrules.yaml | 88 +- ...ices.azure.upbound.io_computeclusters.yaml | 192 +- ...ces.azure.upbound.io_computeinstances.yaml | 147 +- ...rvices.azure.upbound.io_synapsesparks.yaml | 105 +- ...gservices.azure.upbound.io_workspaces.yaml | 137 +- ...o_maintenanceassignmentdedicatedhosts.yaml | 64 +- ..._maintenanceassignmentvirtualmachines.yaml | 64 +- ....upbound.io_maintenanceconfigurations.yaml | 190 +- ...bound.io_federatedidentitycredentials.yaml | 85 +- ...ure.upbound.io_userassignedidentities.yaml | 79 +- ...ent.azure.upbound.io_managementgroups.yaml | 66 +- ...nagementgroupsubscriptionassociations.yaml | 55 +- .../crds/maps.azure.upbound.io_accounts.yaml | 70 +- .../crds/maps.azure.upbound.io_creators.yaml | 78 +- ...zure.upbound.io_marketplaceagreements.yaml | 80 +- .../media.azure.upbound.io_assetfilters.yaml | 167 +- .../crds/media.azure.upbound.io_assets.yaml | 70 +- ...a.azure.upbound.io_contentkeypolicies.yaml | 291 +- package/crds/media.azure.upbound.io_jobs.yaml | 116 +- ...dia.azure.upbound.io_liveeventoutputs.yaml | 90 +- .../media.azure.upbound.io_liveevents.yaml | 249 +- ...ure.upbound.io_servicesaccountfilters.yaml | 173 +- ...dia.azure.upbound.io_servicesaccounts.yaml | 173 +- ...a.azure.upbound.io_streamingendpoints.yaml | 156 +- ...ia.azure.upbound.io_streaminglocators.yaml | 126 +- ...ia.azure.upbound.io_streamingpolicies.yaml | 394 +- .../media.azure.upbound.io_transforms.yaml | 1558 +- ...ure.upbound.io_spatialanchorsaccounts.yaml | 69 +- .../netapp.azure.upbound.io_accounts.yaml | 100 +- .../crds/netapp.azure.upbound.io_pools.yaml | 90 +- ...app.azure.upbound.io_snapshotpolicies.yaml | 178 +- .../netapp.azure.upbound.io_snapshots.yaml | 64 +- .../crds/netapp.azure.upbound.io_volumes.yaml | 203 +- ....azure.upbound.io_applicationgateways.yaml | 1115 +- ....upbound.io_applicationsecuritygroups.yaml | 69 +- ...k.azure.upbound.io_connectionmonitors.yaml | 305 +- ....azure.upbound.io_ddosprotectionplans.yaml | 69 +- ...twork.azure.upbound.io_dnsaaaarecords.yaml | 73 +- .../network.azure.upbound.io_dnsarecords.yaml | 73 +- ...etwork.azure.upbound.io_dnscaarecords.yaml | 94 +- ...work.azure.upbound.io_dnscnamerecords.yaml | 71 +- ...network.azure.upbound.io_dnsmxrecords.yaml | 91 +- ...network.azure.upbound.io_dnsnsrecords.yaml | 77 +- ...etwork.azure.upbound.io_dnsptrrecords.yaml | 77 +- ...etwork.azure.upbound.io_dnssrvrecords.yaml | 96 +- ...etwork.azure.upbound.io_dnstxtrecords.yaml | 85 +- .../network.azure.upbound.io_dnszones.yaml | 108 +- ....io_expressroutecircuitauthorizations.yaml | 55 +- ...und.io_expressroutecircuitconnections.yaml | 69 +- ...pbound.io_expressroutecircuitpeerings.yaml | 162 +- ...azure.upbound.io_expressroutecircuits.yaml | 117 +- ...re.upbound.io_expressrouteconnections.yaml | 110 +- ...azure.upbound.io_expressroutegateways.yaml | 82 +- ...rk.azure.upbound.io_expressrouteports.yaml | 166 +- ...io_firewallapplicationrulecollections.yaml | 128 +- ...upbound.io_firewallnatrulecollections.yaml | 129 +- ...und.io_firewallnetworkrulecollections.yaml | 130 +- ...ork.azure.upbound.io_firewallpolicies.yaml | 316 +- ...io_firewallpolicyrulecollectiongroups.yaml | 324 +- .../network.azure.upbound.io_firewalls.yaml | 161 +- ...io_frontdoorcustomhttpsconfigurations.yaml | 92 +- ....upbound.io_frontdoorfirewallpolicies.yaml | 306 +- ...zure.upbound.io_frontdoorrulesengines.yaml | 155 +- .../network.azure.upbound.io_frontdoors.yaml | 378 +- .../network.azure.upbound.io_ipgroups.yaml | 74 +- ...adbalancerbackendaddresspooladdresses.yaml | 66 +- ...nd.io_loadbalancerbackendaddresspools.yaml | 89 +- ...azure.upbound.io_loadbalancernatpools.yaml | 113 +- ...azure.upbound.io_loadbalancernatrules.yaml | 112 +- ....upbound.io_loadbalanceroutboundrules.yaml | 89 +- ...k.azure.upbound.io_loadbalancerprobes.yaml | 93 +- ...rk.azure.upbound.io_loadbalancerrules.yaml | 127 +- ...etwork.azure.upbound.io_loadbalancers.yaml | 126 +- ...azure.upbound.io_localnetworkgateways.yaml | 102 +- ....io_managermanagementgroupconnections.yaml | 60 +- ...azure.upbound.io_managernetworkgroups.yaml | 59 +- .../network.azure.upbound.io_managers.yaml | 105 +- ...azure.upbound.io_managerstaticmembers.yaml | 55 +- ...und.io_managersubscriptionconnections.yaml | 68 +- ...und.io_natgatewaypublicipassociations.yaml | 55 +- ..._natgatewaypublicipprefixassociations.yaml | 55 +- .../network.azure.upbound.io_natgateways.yaml | 85 +- ...eapplicationsecuritygroupassociations.yaml | 55 +- ...terfacebackendaddresspoolassociations.yaml | 65 +- ...o_networkinterfacenatruleassociations.yaml | 65 +- ...rk.azure.upbound.io_networkinterfaces.yaml | 131 +- ...orkinterfacesecuritygroupassociations.yaml | 55 +- ...twork.azure.upbound.io_packetcaptures.yaml | 139 +- ...ure.upbound.io_pointtositevpngateways.yaml | 170 +- ...zure.upbound.io_privatednsaaaarecords.yaml | 77 +- ...k.azure.upbound.io_privatednsarecords.yaml | 77 +- ...ure.upbound.io_privatednscnamerecords.yaml | 75 +- ....azure.upbound.io_privatednsmxrecords.yaml | 88 +- ...azure.upbound.io_privatednsptrrecords.yaml | 77 +- ....azure.upbound.io_privatednsresolvers.yaml | 71 +- ...azure.upbound.io_privatednssrvrecords.yaml | 95 +- ...azure.upbound.io_privatednstxtrecords.yaml | 84 +- ...work.azure.upbound.io_privatednszones.yaml | 99 +- ....io_privatednszonevirtualnetworklinks.yaml | 66 +- ...tapplicationsecuritygroupassociations.yaml | 55 +- ...ork.azure.upbound.io_privateendpoints.yaml | 170 +- ....azure.upbound.io_privatelinkservices.yaml | 135 +- .../network.azure.upbound.io_profiles.yaml | 99 +- ...ork.azure.upbound.io_publicipprefixes.yaml | 91 +- .../network.azure.upbound.io_publicips.yaml | 139 +- ...network.azure.upbound.io_routefilters.yaml | 93 +- .../network.azure.upbound.io_routemaps.yaml | 134 +- .../crds/network.azure.upbound.io_routes.yaml | 79 +- ....upbound.io_routeserverbgpconnections.yaml | 72 +- ...network.azure.upbound.io_routeservers.yaml | 82 +- .../network.azure.upbound.io_routetables.yaml | 98 +- ...twork.azure.upbound.io_securitygroups.yaml | 163 +- ...etwork.azure.upbound.io_securityrules.yaml | 156 +- ...bound.io_subnetnatgatewayassociations.yaml | 55 +- ...ubnetnetworksecuritygroupassociations.yaml | 55 +- ...bound.io_subnetroutetableassociations.yaml | 55 +- .../network.azure.upbound.io_subnets.yaml | 149 +- ..._subnetserviceendpointstoragepolicies.yaml | 94 +- ...bound.io_trafficmanagerazureendpoints.yaml | 115 +- ...nd.io_trafficmanagerexternalendpoints.yaml | 127 +- ...ound.io_trafficmanagernestedendpoints.yaml | 144 +- ...ure.upbound.io_trafficmanagerprofiles.yaml | 177 +- ...zure.upbound.io_virtualhubconnections.yaml | 104 +- ...etwork.azure.upbound.io_virtualhubips.yaml | 63 +- ...upbound.io_virtualhubroutetableroutes.yaml | 77 +- ...zure.upbound.io_virtualhubroutetables.yaml | 87 +- .../network.azure.upbound.io_virtualhubs.yaml | 101 +- ...io_virtualhubsecuritypartnerproviders.yaml | 79 +- ...d.io_virtualnetworkgatewayconnections.yaml | 226 +- ...ure.upbound.io_virtualnetworkgateways.yaml | 290 +- ...ure.upbound.io_virtualnetworkpeerings.yaml | 84 +- ...work.azure.upbound.io_virtualnetworks.yaml | 113 +- .../network.azure.upbound.io_virtualwans.yaml | 86 +- ...zure.upbound.io_vpngatewayconnections.yaml | 267 +- .../network.azure.upbound.io_vpngateways.yaml | 134 +- ...io_vpnserverconfigurationpolicygroups.yaml | 92 +- ...re.upbound.io_vpnserverconfigurations.yaml | 248 +- .../network.azure.upbound.io_vpnsites.yaml | 157 +- ...work.azure.upbound.io_watcherflowlogs.yaml | 116 +- .../network.azure.upbound.io_watchers.yaml | 69 +- ...und.io_webapplicationfirewallpolicies.yaml | 332 +- ...s.azure.upbound.io_authorizationrules.yaml | 68 +- ....upbound.io_notificationhubnamespaces.yaml | 90 +- ...ubs.azure.upbound.io_notificationhubs.yaml | 100 +- ...pbound.io_loganalyticsdataexportrules.yaml | 70 +- ...o_loganalyticsdatasourcewindowsevents.yaml | 75 +- ...sdatasourcewindowsperformancecounters.yaml | 88 +- ...upbound.io_loganalyticslinkedservices.yaml | 61 +- ....io_loganalyticslinkedstorageaccounts.yaml | 66 +- ...bound.io_loganalyticsquerypackqueries.yaml | 189 +- ...ure.upbound.io_loganalyticsquerypacks.yaml | 70 +- ....upbound.io_loganalyticssavedsearches.yaml | 97 +- ...linsights.azure.upbound.io_workspaces.yaml | 107 +- ...zure.upbound.io_loganalyticssolutions.yaml | 104 +- ...ital.azure.upbound.io_contactprofiles.yaml | 185 +- .../orbital.azure.upbound.io_spacecrafts.yaml | 129 +- ...upbound.io_resourcepolicyremediations.yaml | 103 +- ...und.io_subscriptionpolicyremediations.yaml | 104 +- .../portal.azure.upbound.io_dashboards.yaml | 85 +- ...ted.azure.upbound.io_powerbiembeddeds.yaml | 93 +- .../purview.azure.upbound.io_accounts.yaml | 97 +- ...und.io_backupcontainerstorageaccounts.yaml | 55 +- ...ure.upbound.io_backuppolicyfileshares.yaml | 185 +- ...ices.azure.upbound.io_backuppolicyvms.yaml | 226 +- ...re.upbound.io_backuppolicyvmworkloads.yaml | 263 +- ....upbound.io_backupprotectedfileshares.yaml | 55 +- ...s.azure.upbound.io_backupprotectedvms.yaml | 72 +- ....azure.upbound.io_siterecoveryfabrics.yaml | 64 +- ...pbound.io_siterecoverynetworkmappings.yaml | 81 +- ...terecoveryprotectioncontainermappings.yaml | 71 +- ...d.io_siterecoveryprotectioncontainers.yaml | 55 +- ...nd.io_siterecoveryreplicationpolicies.yaml | 72 +- ...overyservices.azure.upbound.io_vaults.yaml | 167 +- ...azure.upbound.io_eventrelaynamespaces.yaml | 78 +- ...io_hybridconnectionauthorizationrules.yaml | 69 +- ...ay.azure.upbound.io_hybridconnections.yaml | 76 +- ...pbound.io_namespaceauthorizationrules.yaml | 69 +- ...io_resourcedeploymentscriptazureclis.yaml} | 205 +- ...ourcedeploymentscriptazurepowershells.yaml | 197 +- ...d.io_resourcegrouptemplatedeployments.yaml | 90 +- ...nd.io_subscriptiontemplatedeployments.yaml | 88 +- .../search.azure.upbound.io_services.yaml | 136 +- ....upbound.io_sharedprivatelinkservices.yaml | 69 +- ....upbound.io_advancedthreatprotections.yaml | 73 +- ...re.upbound.io_iotsecuritydevicegroups.yaml | 126 +- ...azure.upbound.io_iotsecuritysolutions.yaml | 208 +- ...d.io_securitycenterassessmentpolicies.yaml | 103 +- ....upbound.io_securitycenterassessments.yaml | 84 +- ...nd.io_securitycenterautoprovisionings.yaml | 66 +- ...ure.upbound.io_securitycentercontacts.yaml | 86 +- ...ycenterservervulnerabilityassessments.yaml | 61 +- ...ulnerabilityassessmentvirtualmachines.yaml | 55 +- ...ure.upbound.io_securitycentersettings.yaml | 72 +- ...io_securitycentersubscriptionpricings.yaml | 75 +- ...e.upbound.io_securitycenterworkspaces.yaml | 65 +- ...e.upbound.io_sentinelalertrulefusions.yaml | 121 +- ...trulemachinelearningbehavioranalytics.yaml | 80 +- ..._sentinelalertrulemssecurityincidents.yaml | 113 +- ...re.upbound.io_sentinelautomationrules.yaml | 197 +- ....upbound.io_sentineldataconnectoriots.yaml | 61 +- ...tinelloganalyticsworkspaceonboardings.yaml | 65 +- ...s.azure.upbound.io_sentinelwatchlists.yaml | 89 +- ...pbound.io_namespaceauthorizationrules.yaml | 69 +- ...d.io_namespacedisasterrecoveryconfigs.yaml | 55 +- ...e.upbound.io_namespacenetworkrulesets.yaml | 87 +- ...re.upbound.io_queueauthorizationrules.yaml | 69 +- .../servicebus.azure.upbound.io_queues.yaml | 135 +- ...azure.upbound.io_servicebusnamespaces.yaml | 143 +- ...us.azure.upbound.io_subscriptionrules.yaml | 111 +- ...icebus.azure.upbound.io_subscriptions.yaml | 130 +- ...re.upbound.io_topicauthorizationrules.yaml | 69 +- .../servicebus.azure.upbound.io_topics.yaml | 108 +- ...rvicefabric.azure.upbound.io_clusters.yaml | 518 +- ...bric.azure.upbound.io_managedclusters.yaml | 325 +- ...ure.upbound.io_springcloudconnections.yaml | 126 +- ...rservice.azure.upbound.io_networkacls.yaml | 108 +- ...nalrservice.azure.upbound.io_services.yaml | 218 +- ....io_signalrsharedprivatelinkresources.yaml | 77 +- ...ervice.azure.upbound.io_webpubsubhubs.yaml | 119 +- ...azure.upbound.io_webpubsubnetworkacls.yaml | 105 +- ...lrservice.azure.upbound.io_webpubsubs.yaml | 146 +- ...ound.io_managedapplicationdefinitions.yaml | 125 +- ....upbound.io_cloudapplicationliveviews.yaml | 55 +- ...mssqldatabaseextendedauditingpolicies.yaml | 72 +- .../sql.azure.upbound.io_mssqldatabases.yaml | 294 +- ...evulnerabilityassessmentrulebaselines.yaml | 88 +- ...ql.azure.upbound.io_mssqlelasticpools.yaml | 165 +- ....azure.upbound.io_mssqlfailovergroups.yaml | 97 +- ...l.azure.upbound.io_mssqlfirewallrules.yaml | 72 +- .../sql.azure.upbound.io_mssqljobagents.yaml | 78 +- ....azure.upbound.io_mssqljobcredentials.yaml | 66 +- ...zure.upbound.io_mssqlmanageddatabases.yaml | 85 +- ...instanceactivedirectoryadministrators.yaml | 83 +- ...io_mssqlmanagedinstancefailovergroups.yaml | 81 +- ...zure.upbound.io_mssqlmanagedinstances.yaml | 169 +- ...nagedinstancevulnerabilityassessments.yaml | 86 +- ...upbound.io_mssqloutboundfirewallrules.yaml | 55 +- ...zure.upbound.io_mssqlserverdnsaliases.yaml | 55 +- ...ervermicrosoftsupportauditingpolicies.yaml | 65 +- .../sql.azure.upbound.io_mssqlservers.yaml | 138 +- ...d.io_mssqlserversecurityalertpolicies.yaml | 87 +- ...mssqlservertransparentdataencryptions.yaml | 63 +- ...o_mssqlservervulnerabilityassessments.yaml | 86 +- ...e.upbound.io_mssqlvirtualnetworkrules.yaml | 61 +- ...ge.azure.upbound.io_accountlocalusers.yaml | 122 +- ....azure.upbound.io_accountnetworkrules.yaml | 102 +- .../storage.azure.upbound.io_accounts.yaml | 729 +- ...zure.upbound.io_blobinventorypolicies.yaml | 135 +- .../crds/storage.azure.upbound.io_blobs.yaml | 116 +- .../storage.azure.upbound.io_containers.yaml | 66 +- ...re.upbound.io_datalakegen2filesystems.yaml | 100 +- ...ge.azure.upbound.io_datalakegen2paths.yaml | 111 +- ...age.azure.upbound.io_encryptionscopes.yaml | 73 +- ...e.azure.upbound.io_managementpolicies.yaml | 245 +- ...e.azure.upbound.io_objectreplications.yaml | 78 +- .../crds/storage.azure.upbound.io_queues.yaml | 62 +- ...age.azure.upbound.io_sharedirectories.yaml | 70 +- .../crds/storage.azure.upbound.io_shares.yaml | 116 +- ...torage.azure.upbound.io_tableentities.yaml | 82 +- .../crds/storage.azure.upbound.io_tables.yaml | 100 +- ...ure.upbound.io_hpccacheaccesspolicies.yaml | 104 +- ...ure.upbound.io_hpccacheblobnfstargets.yaml | 87 +- ....azure.upbound.io_hpccacheblobtargets.yaml | 68 +- ...e.azure.upbound.io_hpccachenfstargets.yaml | 107 +- ...oragecache.azure.upbound.io_hpccaches.yaml | 291 +- ...toragepool.azure.upbound.io_diskpools.yaml | 90 +- ...agesync.azure.upbound.io_storagesyncs.yaml | 74 +- ...amanalytics.azure.upbound.io_clusters.yaml | 78 +- ...ure.upbound.io_functionjavascriptuda.yaml} | 105 +- ...streamanalytics.azure.upbound.io_jobs.yaml | 156 +- ...re.upbound.io_managedprivateendpoints.yaml | 65 +- ...nalytics.azure.upbound.io_outputblobs.yaml | 125 +- ...tics.azure.upbound.io_outputeventhubs.yaml | 106 +- ...tics.azure.upbound.io_outputfunctions.yaml | 74 +- ...alytics.azure.upbound.io_outputmssqls.yaml | 90 +- ...ytics.azure.upbound.io_outputpowerbis.yaml | 95 +- ...ure.upbound.io_outputservicebusqueues.yaml | 117 +- ...ure.upbound.io_outputservicebustopics.yaml | 117 +- ...ytics.azure.upbound.io_outputsynapses.yaml | 83 +- ...alytics.azure.upbound.io_outputtables.yaml | 89 +- ....azure.upbound.io_referenceinputblobs.yaml | 121 +- ...azure.upbound.io_referenceinputmssqls.yaml | 97 +- ...ics.azure.upbound.io_streaminputblobs.yaml | 119 +- ...azure.upbound.io_streaminputeventhubs.yaml | 102 +- ...s.azure.upbound.io_streaminputiothubs.yaml | 109 +- ...ynapse.azure.upbound.io_firewallrules.yaml | 72 +- ...e.upbound.io_integrationruntimeazures.yaml | 83 +- ...ound.io_integrationruntimeselfhosteds.yaml | 59 +- ...napse.azure.upbound.io_linkedservices.yaml | 125 +- ...re.upbound.io_managedprivateendpoints.yaml | 74 +- ...apse.azure.upbound.io_privatelinkhubs.yaml | 70 +- ...apse.azure.upbound.io_roleassignments.yaml | 77 +- .../synapse.azure.upbound.io_sparkpools.yaml | 177 +- ...nd.io_sqlpoolextendedauditingpolicies.yaml | 69 +- .../synapse.azure.upbound.io_sqlpools.yaml | 116 +- ...bound.io_sqlpoolsecurityalertpolicies.yaml | 87 +- ...upbound.io_sqlpoolworkloadclassifiers.yaml | 84 +- ...zure.upbound.io_sqlpoolworkloadgroups.yaml | 84 +- ...e.azure.upbound.io_workspaceaadadmins.yaml | 80 +- ....io_workspaceextendedauditingpolicies.yaml | 69 +- .../synapse.azure.upbound.io_workspaces.yaml | 236 +- ...und.io_workspacesecurityalertpolicies.yaml | 87 +- ...zure.upbound.io_workspacesqlaadadmins.yaml | 80 +- ....io_workspacevulnerabilityassessments.yaml | 86 +- ...azure.upbound.io_eventsourceeventhubs.yaml | 77 +- ...s.azure.upbound.io_eventsourceiothubs.yaml | 85 +- ...hts.azure.upbound.io_gen2environments.yaml | 104 +- ...ts.azure.upbound.io_referencedatasets.yaml | 97 +- ...azure.upbound.io_standardenvironments.yaml | 104 +- .../web.azure.upbound.io_appactiveslots.yaml | 64 +- ...azure.upbound.io_apphybridconnections.yaml | 77 +- .../web.azure.upbound.io_appserviceplans.yaml | 123 +- ...ure.upbound.io_functionappactiveslots.yaml | 64 +- ...azure.upbound.io_functionappfunctions.yaml | 104 +- ...bound.io_functionapphybridconnections.yaml | 77 +- .../web.azure.upbound.io_functionapps.yaml | 542 +- ...web.azure.upbound.io_functionappslots.yaml | 494 +- ...eb.azure.upbound.io_linuxfunctionapps.yaml | 1433 +- ...zure.upbound.io_linuxfunctionappslots.yaml | 1392 +- .../web.azure.upbound.io_linuxwebapps.yaml | 1501 +- ...web.azure.upbound.io_linuxwebappslots.yaml | 1491 +- .../web.azure.upbound.io_serviceplans.yaml | 109 +- ....azure.upbound.io_sourcecontroltokens.yaml | 67 +- .../web.azure.upbound.io_staticsites.yaml | 96 +- ....azure.upbound.io_windowsfunctionapps.yaml | 1387 +- ...re.upbound.io_windowsfunctionappslots.yaml | 1354 +- .../web.azure.upbound.io_windowswebapps.yaml | 1575 +- ...b.azure.upbound.io_windowswebappslots.yaml | 1559 +- 3210 files changed, 281103 insertions(+), 43085 deletions(-) rename package/crds/{botservice.azure.upbound.io_botchannelsms.yaml => botservice.azure.upbound.io_botchannelsmses.yaml} (85%) rename package/crds/{datafactory.azure.upbound.io_integrationruntimeazuressis.yaml => datafactory.azure.upbound.io_integrationruntimeazuressises.yaml} (79%) rename package/crds/{datafactory.azure.upbound.io_linkedservicekustoes.yaml => datafactory.azure.upbound.io_linkedservicekustos.yaml} (87%) rename package/crds/{devices.azure.upbound.io_iothubdps.yaml => devices.azure.upbound.io_iothubdpses.yaml} (80%) rename package/crds/{resources.azure.upbound.io_resourcedeploymentscriptazureclicli.yaml => resources.azure.upbound.io_resourcedeploymentscriptazureclis.yaml} (79%) rename package/crds/{streamanalytics.azure.upbound.io_functionjavascriptudas.yaml => streamanalytics.azure.upbound.io_functionjavascriptuda.yaml} (81%) diff --git a/apis/alertsmanagement/v1beta1/zz_generated.deepcopy.go b/apis/alertsmanagement/v1beta1/zz_generated.deepcopy.go index 6a13f5b41..556dbd850 100644 --- a/apis/alertsmanagement/v1beta1/zz_generated.deepcopy.go +++ b/apis/alertsmanagement/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,31 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionGroupInitParameters) DeepCopyInto(out *ActionGroupInitParameters) { + *out = *in + if in.EmailSubject != nil { + in, out := &in.EmailSubject, &out.EmailSubject + *out = new(string) + **out = **in + } + if in.WebhookPayload != nil { + in, out := &in.WebhookPayload, &out.WebhookPayload + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionGroupInitParameters. +func (in *ActionGroupInitParameters) DeepCopy() *ActionGroupInitParameters { + if in == nil { + return nil + } + out := new(ActionGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionGroupObservation) DeepCopyInto(out *ActionGroupObservation) { *out = *in @@ -99,7 +124,7 @@ func (in *ActionGroupParameters) DeepCopy() *ActionGroupParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AlertContextObservation) DeepCopyInto(out *AlertContextObservation) { +func (in *AlertContextInitParameters) DeepCopyInto(out *AlertContextInitParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -119,18 +144,18 @@ func (in *AlertContextObservation) DeepCopyInto(out *AlertContextObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertContextObservation. -func (in *AlertContextObservation) DeepCopy() *AlertContextObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertContextInitParameters. +func (in *AlertContextInitParameters) DeepCopy() *AlertContextInitParameters { if in == nil { return nil } - out := new(AlertContextObservation) + out := new(AlertContextInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AlertContextParameters) DeepCopyInto(out *AlertContextParameters) { +func (in *AlertContextObservation) DeepCopyInto(out *AlertContextObservation) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -150,18 +175,18 @@ func (in *AlertContextParameters) DeepCopyInto(out *AlertContextParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertContextParameters. -func (in *AlertContextParameters) DeepCopy() *AlertContextParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertContextObservation. +func (in *AlertContextObservation) DeepCopy() *AlertContextObservation { if in == nil { return nil } - out := new(AlertContextParameters) + out := new(AlertContextObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AlertRuleIDObservation) DeepCopyInto(out *AlertRuleIDObservation) { +func (in *AlertContextParameters) DeepCopyInto(out *AlertContextParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -181,18 +206,18 @@ func (in *AlertRuleIDObservation) DeepCopyInto(out *AlertRuleIDObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRuleIDObservation. -func (in *AlertRuleIDObservation) DeepCopy() *AlertRuleIDObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertContextParameters. +func (in *AlertContextParameters) DeepCopy() *AlertContextParameters { if in == nil { return nil } - out := new(AlertRuleIDObservation) + out := new(AlertContextParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AlertRuleIDParameters) DeepCopyInto(out *AlertRuleIDParameters) { +func (in *AlertRuleIDInitParameters) DeepCopyInto(out *AlertRuleIDInitParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -212,18 +237,18 @@ func (in *AlertRuleIDParameters) DeepCopyInto(out *AlertRuleIDParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRuleIDParameters. -func (in *AlertRuleIDParameters) DeepCopy() *AlertRuleIDParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRuleIDInitParameters. +func (in *AlertRuleIDInitParameters) DeepCopy() *AlertRuleIDInitParameters { if in == nil { return nil } - out := new(AlertRuleIDParameters) + out := new(AlertRuleIDInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AlertRuleNameObservation) DeepCopyInto(out *AlertRuleNameObservation) { +func (in *AlertRuleIDObservation) DeepCopyInto(out *AlertRuleIDObservation) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -243,18 +268,18 @@ func (in *AlertRuleNameObservation) DeepCopyInto(out *AlertRuleNameObservation) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRuleNameObservation. -func (in *AlertRuleNameObservation) DeepCopy() *AlertRuleNameObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRuleIDObservation. +func (in *AlertRuleIDObservation) DeepCopy() *AlertRuleIDObservation { if in == nil { return nil } - out := new(AlertRuleNameObservation) + out := new(AlertRuleIDObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AlertRuleNameParameters) DeepCopyInto(out *AlertRuleNameParameters) { +func (in *AlertRuleIDParameters) DeepCopyInto(out *AlertRuleIDParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -274,18 +299,18 @@ func (in *AlertRuleNameParameters) DeepCopyInto(out *AlertRuleNameParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRuleNameParameters. -func (in *AlertRuleNameParameters) DeepCopy() *AlertRuleNameParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRuleIDParameters. +func (in *AlertRuleIDParameters) DeepCopy() *AlertRuleIDParameters { if in == nil { return nil } - out := new(AlertRuleNameParameters) + out := new(AlertRuleIDParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionAlertContextObservation) DeepCopyInto(out *ConditionAlertContextObservation) { +func (in *AlertRuleNameInitParameters) DeepCopyInto(out *AlertRuleNameInitParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -305,18 +330,18 @@ func (in *ConditionAlertContextObservation) DeepCopyInto(out *ConditionAlertCont } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertContextObservation. -func (in *ConditionAlertContextObservation) DeepCopy() *ConditionAlertContextObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRuleNameInitParameters. +func (in *AlertRuleNameInitParameters) DeepCopy() *AlertRuleNameInitParameters { if in == nil { return nil } - out := new(ConditionAlertContextObservation) + out := new(AlertRuleNameInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionAlertContextParameters) DeepCopyInto(out *ConditionAlertContextParameters) { +func (in *AlertRuleNameObservation) DeepCopyInto(out *AlertRuleNameObservation) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -336,18 +361,18 @@ func (in *ConditionAlertContextParameters) DeepCopyInto(out *ConditionAlertConte } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertContextParameters. -func (in *ConditionAlertContextParameters) DeepCopy() *ConditionAlertContextParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRuleNameObservation. +func (in *AlertRuleNameObservation) DeepCopy() *AlertRuleNameObservation { if in == nil { return nil } - out := new(ConditionAlertContextParameters) + out := new(AlertRuleNameObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionAlertRuleIDObservation) DeepCopyInto(out *ConditionAlertRuleIDObservation) { +func (in *AlertRuleNameParameters) DeepCopyInto(out *AlertRuleNameParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -367,18 +392,18 @@ func (in *ConditionAlertRuleIDObservation) DeepCopyInto(out *ConditionAlertRuleI } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertRuleIDObservation. -func (in *ConditionAlertRuleIDObservation) DeepCopy() *ConditionAlertRuleIDObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRuleNameParameters. +func (in *AlertRuleNameParameters) DeepCopy() *AlertRuleNameParameters { if in == nil { return nil } - out := new(ConditionAlertRuleIDObservation) + out := new(AlertRuleNameParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionAlertRuleIDParameters) DeepCopyInto(out *ConditionAlertRuleIDParameters) { +func (in *ConditionAlertContextInitParameters) DeepCopyInto(out *ConditionAlertContextInitParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -398,18 +423,18 @@ func (in *ConditionAlertRuleIDParameters) DeepCopyInto(out *ConditionAlertRuleID } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertRuleIDParameters. -func (in *ConditionAlertRuleIDParameters) DeepCopy() *ConditionAlertRuleIDParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertContextInitParameters. +func (in *ConditionAlertContextInitParameters) DeepCopy() *ConditionAlertContextInitParameters { if in == nil { return nil } - out := new(ConditionAlertRuleIDParameters) + out := new(ConditionAlertContextInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionAlertRuleNameObservation) DeepCopyInto(out *ConditionAlertRuleNameObservation) { +func (in *ConditionAlertContextObservation) DeepCopyInto(out *ConditionAlertContextObservation) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -429,18 +454,18 @@ func (in *ConditionAlertRuleNameObservation) DeepCopyInto(out *ConditionAlertRul } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertRuleNameObservation. -func (in *ConditionAlertRuleNameObservation) DeepCopy() *ConditionAlertRuleNameObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertContextObservation. +func (in *ConditionAlertContextObservation) DeepCopy() *ConditionAlertContextObservation { if in == nil { return nil } - out := new(ConditionAlertRuleNameObservation) + out := new(ConditionAlertContextObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionAlertRuleNameParameters) DeepCopyInto(out *ConditionAlertRuleNameParameters) { +func (in *ConditionAlertContextParameters) DeepCopyInto(out *ConditionAlertContextParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -460,18 +485,18 @@ func (in *ConditionAlertRuleNameParameters) DeepCopyInto(out *ConditionAlertRule } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertRuleNameParameters. -func (in *ConditionAlertRuleNameParameters) DeepCopy() *ConditionAlertRuleNameParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertContextParameters. +func (in *ConditionAlertContextParameters) DeepCopy() *ConditionAlertContextParameters { if in == nil { return nil } - out := new(ConditionAlertRuleNameParameters) + out := new(ConditionAlertContextParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionDescriptionObservation) DeepCopyInto(out *ConditionDescriptionObservation) { +func (in *ConditionAlertRuleIDInitParameters) DeepCopyInto(out *ConditionAlertRuleIDInitParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -491,18 +516,18 @@ func (in *ConditionDescriptionObservation) DeepCopyInto(out *ConditionDescriptio } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionDescriptionObservation. -func (in *ConditionDescriptionObservation) DeepCopy() *ConditionDescriptionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertRuleIDInitParameters. +func (in *ConditionAlertRuleIDInitParameters) DeepCopy() *ConditionAlertRuleIDInitParameters { if in == nil { return nil } - out := new(ConditionDescriptionObservation) + out := new(ConditionAlertRuleIDInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionDescriptionParameters) DeepCopyInto(out *ConditionDescriptionParameters) { +func (in *ConditionAlertRuleIDObservation) DeepCopyInto(out *ConditionAlertRuleIDObservation) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -522,18 +547,18 @@ func (in *ConditionDescriptionParameters) DeepCopyInto(out *ConditionDescription } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionDescriptionParameters. -func (in *ConditionDescriptionParameters) DeepCopy() *ConditionDescriptionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertRuleIDObservation. +func (in *ConditionAlertRuleIDObservation) DeepCopy() *ConditionAlertRuleIDObservation { if in == nil { return nil } - out := new(ConditionDescriptionParameters) + out := new(ConditionAlertRuleIDObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionMonitorConditionObservation) DeepCopyInto(out *ConditionMonitorConditionObservation) { +func (in *ConditionAlertRuleIDParameters) DeepCopyInto(out *ConditionAlertRuleIDParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -553,18 +578,18 @@ func (in *ConditionMonitorConditionObservation) DeepCopyInto(out *ConditionMonit } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorConditionObservation. -func (in *ConditionMonitorConditionObservation) DeepCopy() *ConditionMonitorConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertRuleIDParameters. +func (in *ConditionAlertRuleIDParameters) DeepCopy() *ConditionAlertRuleIDParameters { if in == nil { return nil } - out := new(ConditionMonitorConditionObservation) + out := new(ConditionAlertRuleIDParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionMonitorConditionParameters) DeepCopyInto(out *ConditionMonitorConditionParameters) { +func (in *ConditionAlertRuleNameInitParameters) DeepCopyInto(out *ConditionAlertRuleNameInitParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -584,18 +609,18 @@ func (in *ConditionMonitorConditionParameters) DeepCopyInto(out *ConditionMonito } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorConditionParameters. -func (in *ConditionMonitorConditionParameters) DeepCopy() *ConditionMonitorConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertRuleNameInitParameters. +func (in *ConditionAlertRuleNameInitParameters) DeepCopy() *ConditionAlertRuleNameInitParameters { if in == nil { return nil } - out := new(ConditionMonitorConditionParameters) + out := new(ConditionAlertRuleNameInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionMonitorObservation) DeepCopyInto(out *ConditionMonitorObservation) { +func (in *ConditionAlertRuleNameObservation) DeepCopyInto(out *ConditionAlertRuleNameObservation) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -615,18 +640,18 @@ func (in *ConditionMonitorObservation) DeepCopyInto(out *ConditionMonitorObserva } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorObservation. -func (in *ConditionMonitorObservation) DeepCopy() *ConditionMonitorObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertRuleNameObservation. +func (in *ConditionAlertRuleNameObservation) DeepCopy() *ConditionAlertRuleNameObservation { if in == nil { return nil } - out := new(ConditionMonitorObservation) + out := new(ConditionAlertRuleNameObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionMonitorParameters) DeepCopyInto(out *ConditionMonitorParameters) { +func (in *ConditionAlertRuleNameParameters) DeepCopyInto(out *ConditionAlertRuleNameParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -646,18 +671,18 @@ func (in *ConditionMonitorParameters) DeepCopyInto(out *ConditionMonitorParamete } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorParameters. -func (in *ConditionMonitorParameters) DeepCopy() *ConditionMonitorParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionAlertRuleNameParameters. +func (in *ConditionAlertRuleNameParameters) DeepCopy() *ConditionAlertRuleNameParameters { if in == nil { return nil } - out := new(ConditionMonitorParameters) + out := new(ConditionAlertRuleNameParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionMonitorServiceObservation) DeepCopyInto(out *ConditionMonitorServiceObservation) { +func (in *ConditionDescriptionInitParameters) DeepCopyInto(out *ConditionDescriptionInitParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -677,18 +702,18 @@ func (in *ConditionMonitorServiceObservation) DeepCopyInto(out *ConditionMonitor } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorServiceObservation. -func (in *ConditionMonitorServiceObservation) DeepCopy() *ConditionMonitorServiceObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionDescriptionInitParameters. +func (in *ConditionDescriptionInitParameters) DeepCopy() *ConditionDescriptionInitParameters { if in == nil { return nil } - out := new(ConditionMonitorServiceObservation) + out := new(ConditionDescriptionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionMonitorServiceParameters) DeepCopyInto(out *ConditionMonitorServiceParameters) { +func (in *ConditionDescriptionObservation) DeepCopyInto(out *ConditionDescriptionObservation) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -708,146 +733,113 @@ func (in *ConditionMonitorServiceParameters) DeepCopyInto(out *ConditionMonitorS } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorServiceParameters. -func (in *ConditionMonitorServiceParameters) DeepCopy() *ConditionMonitorServiceParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionDescriptionObservation. +func (in *ConditionDescriptionObservation) DeepCopy() *ConditionDescriptionObservation { if in == nil { return nil } - out := new(ConditionMonitorServiceParameters) + out := new(ConditionDescriptionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionObservation) DeepCopyInto(out *ConditionObservation) { +func (in *ConditionDescriptionParameters) DeepCopyInto(out *ConditionDescriptionParameters) { *out = *in - if in.AlertContext != nil { - in, out := &in.AlertContext, &out.AlertContext - *out = make([]AlertContextObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AlertRuleID != nil { - in, out := &in.AlertRuleID, &out.AlertRuleID - *out = make([]AlertRuleIDObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Description != nil { - in, out := &in.Description, &out.Description - *out = make([]DescriptionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Monitor != nil { - in, out := &in.Monitor, &out.Monitor - *out = make([]MonitorObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.MonitorService != nil { - in, out := &in.MonitorService, &out.MonitorService - *out = make([]MonitorServiceObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Severity != nil { - in, out := &in.Severity, &out.Severity - *out = make([]SeverityObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in } - if in.TargetResourceType != nil { - in, out := &in.TargetResourceType, &out.TargetResourceType - *out = make([]TargetResourceTypeObservation, len(*in)) + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionObservation. -func (in *ConditionObservation) DeepCopy() *ConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionDescriptionParameters. +func (in *ConditionDescriptionParameters) DeepCopy() *ConditionDescriptionParameters { if in == nil { return nil } - out := new(ConditionObservation) + out := new(ConditionDescriptionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionParameters) DeepCopyInto(out *ConditionParameters) { +func (in *ConditionInitParameters) DeepCopyInto(out *ConditionInitParameters) { *out = *in if in.AlertContext != nil { in, out := &in.AlertContext, &out.AlertContext - *out = make([]AlertContextParameters, len(*in)) + *out = make([]AlertContextInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.AlertRuleID != nil { in, out := &in.AlertRuleID, &out.AlertRuleID - *out = make([]AlertRuleIDParameters, len(*in)) + *out = make([]AlertRuleIDInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.Description != nil { in, out := &in.Description, &out.Description - *out = make([]DescriptionParameters, len(*in)) + *out = make([]DescriptionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.Monitor != nil { in, out := &in.Monitor, &out.Monitor - *out = make([]MonitorParameters, len(*in)) + *out = make([]MonitorInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.MonitorService != nil { in, out := &in.MonitorService, &out.MonitorService - *out = make([]MonitorServiceParameters, len(*in)) + *out = make([]MonitorServiceInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.Severity != nil { in, out := &in.Severity, &out.Severity - *out = make([]SeverityParameters, len(*in)) + *out = make([]SeverityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.TargetResourceType != nil { in, out := &in.TargetResourceType, &out.TargetResourceType - *out = make([]TargetResourceTypeParameters, len(*in)) + *out = make([]TargetResourceTypeInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionParameters. -func (in *ConditionParameters) DeepCopy() *ConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionInitParameters. +func (in *ConditionInitParameters) DeepCopy() *ConditionInitParameters { if in == nil { return nil } - out := new(ConditionParameters) + out := new(ConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionSeverityObservation) DeepCopyInto(out *ConditionSeverityObservation) { +func (in *ConditionMonitorConditionInitParameters) DeepCopyInto(out *ConditionMonitorConditionInitParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -867,18 +859,18 @@ func (in *ConditionSeverityObservation) DeepCopyInto(out *ConditionSeverityObser } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSeverityObservation. -func (in *ConditionSeverityObservation) DeepCopy() *ConditionSeverityObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorConditionInitParameters. +func (in *ConditionMonitorConditionInitParameters) DeepCopy() *ConditionMonitorConditionInitParameters { if in == nil { return nil } - out := new(ConditionSeverityObservation) + out := new(ConditionMonitorConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionSeverityParameters) DeepCopyInto(out *ConditionSeverityParameters) { +func (in *ConditionMonitorConditionObservation) DeepCopyInto(out *ConditionMonitorConditionObservation) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -898,18 +890,18 @@ func (in *ConditionSeverityParameters) DeepCopyInto(out *ConditionSeverityParame } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSeverityParameters. -func (in *ConditionSeverityParameters) DeepCopy() *ConditionSeverityParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorConditionObservation. +func (in *ConditionMonitorConditionObservation) DeepCopy() *ConditionMonitorConditionObservation { if in == nil { return nil } - out := new(ConditionSeverityParameters) + out := new(ConditionMonitorConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionSignalTypeObservation) DeepCopyInto(out *ConditionSignalTypeObservation) { +func (in *ConditionMonitorConditionParameters) DeepCopyInto(out *ConditionMonitorConditionParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -929,18 +921,18 @@ func (in *ConditionSignalTypeObservation) DeepCopyInto(out *ConditionSignalTypeO } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSignalTypeObservation. -func (in *ConditionSignalTypeObservation) DeepCopy() *ConditionSignalTypeObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorConditionParameters. +func (in *ConditionMonitorConditionParameters) DeepCopy() *ConditionMonitorConditionParameters { if in == nil { return nil } - out := new(ConditionSignalTypeObservation) + out := new(ConditionMonitorConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionSignalTypeParameters) DeepCopyInto(out *ConditionSignalTypeParameters) { +func (in *ConditionMonitorInitParameters) DeepCopyInto(out *ConditionMonitorInitParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -960,18 +952,18 @@ func (in *ConditionSignalTypeParameters) DeepCopyInto(out *ConditionSignalTypePa } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSignalTypeParameters. -func (in *ConditionSignalTypeParameters) DeepCopy() *ConditionSignalTypeParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorInitParameters. +func (in *ConditionMonitorInitParameters) DeepCopy() *ConditionMonitorInitParameters { if in == nil { return nil } - out := new(ConditionSignalTypeParameters) + out := new(ConditionMonitorInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionTargetResourceGroupObservation) DeepCopyInto(out *ConditionTargetResourceGroupObservation) { +func (in *ConditionMonitorObservation) DeepCopyInto(out *ConditionMonitorObservation) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -991,7 +983,507 @@ func (in *ConditionTargetResourceGroupObservation) DeepCopyInto(out *ConditionTa } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionTargetResourceGroupObservation. +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorObservation. +func (in *ConditionMonitorObservation) DeepCopy() *ConditionMonitorObservation { + if in == nil { + return nil + } + out := new(ConditionMonitorObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionMonitorParameters) DeepCopyInto(out *ConditionMonitorParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorParameters. +func (in *ConditionMonitorParameters) DeepCopy() *ConditionMonitorParameters { + if in == nil { + return nil + } + out := new(ConditionMonitorParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionMonitorServiceInitParameters) DeepCopyInto(out *ConditionMonitorServiceInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorServiceInitParameters. +func (in *ConditionMonitorServiceInitParameters) DeepCopy() *ConditionMonitorServiceInitParameters { + if in == nil { + return nil + } + out := new(ConditionMonitorServiceInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionMonitorServiceObservation) DeepCopyInto(out *ConditionMonitorServiceObservation) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorServiceObservation. +func (in *ConditionMonitorServiceObservation) DeepCopy() *ConditionMonitorServiceObservation { + if in == nil { + return nil + } + out := new(ConditionMonitorServiceObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionMonitorServiceParameters) DeepCopyInto(out *ConditionMonitorServiceParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionMonitorServiceParameters. +func (in *ConditionMonitorServiceParameters) DeepCopy() *ConditionMonitorServiceParameters { + if in == nil { + return nil + } + out := new(ConditionMonitorServiceParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionObservation) DeepCopyInto(out *ConditionObservation) { + *out = *in + if in.AlertContext != nil { + in, out := &in.AlertContext, &out.AlertContext + *out = make([]AlertContextObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AlertRuleID != nil { + in, out := &in.AlertRuleID, &out.AlertRuleID + *out = make([]AlertRuleIDObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = make([]DescriptionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Monitor != nil { + in, out := &in.Monitor, &out.Monitor + *out = make([]MonitorObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MonitorService != nil { + in, out := &in.MonitorService, &out.MonitorService + *out = make([]MonitorServiceObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = make([]SeverityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetResourceType != nil { + in, out := &in.TargetResourceType, &out.TargetResourceType + *out = make([]TargetResourceTypeObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionObservation. +func (in *ConditionObservation) DeepCopy() *ConditionObservation { + if in == nil { + return nil + } + out := new(ConditionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionParameters) DeepCopyInto(out *ConditionParameters) { + *out = *in + if in.AlertContext != nil { + in, out := &in.AlertContext, &out.AlertContext + *out = make([]AlertContextParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AlertRuleID != nil { + in, out := &in.AlertRuleID, &out.AlertRuleID + *out = make([]AlertRuleIDParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = make([]DescriptionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Monitor != nil { + in, out := &in.Monitor, &out.Monitor + *out = make([]MonitorParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MonitorService != nil { + in, out := &in.MonitorService, &out.MonitorService + *out = make([]MonitorServiceParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = make([]SeverityParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetResourceType != nil { + in, out := &in.TargetResourceType, &out.TargetResourceType + *out = make([]TargetResourceTypeParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionParameters. +func (in *ConditionParameters) DeepCopy() *ConditionParameters { + if in == nil { + return nil + } + out := new(ConditionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionSeverityInitParameters) DeepCopyInto(out *ConditionSeverityInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSeverityInitParameters. +func (in *ConditionSeverityInitParameters) DeepCopy() *ConditionSeverityInitParameters { + if in == nil { + return nil + } + out := new(ConditionSeverityInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionSeverityObservation) DeepCopyInto(out *ConditionSeverityObservation) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSeverityObservation. +func (in *ConditionSeverityObservation) DeepCopy() *ConditionSeverityObservation { + if in == nil { + return nil + } + out := new(ConditionSeverityObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionSeverityParameters) DeepCopyInto(out *ConditionSeverityParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSeverityParameters. +func (in *ConditionSeverityParameters) DeepCopy() *ConditionSeverityParameters { + if in == nil { + return nil + } + out := new(ConditionSeverityParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionSignalTypeInitParameters) DeepCopyInto(out *ConditionSignalTypeInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSignalTypeInitParameters. +func (in *ConditionSignalTypeInitParameters) DeepCopy() *ConditionSignalTypeInitParameters { + if in == nil { + return nil + } + out := new(ConditionSignalTypeInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionSignalTypeObservation) DeepCopyInto(out *ConditionSignalTypeObservation) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSignalTypeObservation. +func (in *ConditionSignalTypeObservation) DeepCopy() *ConditionSignalTypeObservation { + if in == nil { + return nil + } + out := new(ConditionSignalTypeObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionSignalTypeParameters) DeepCopyInto(out *ConditionSignalTypeParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionSignalTypeParameters. +func (in *ConditionSignalTypeParameters) DeepCopy() *ConditionSignalTypeParameters { + if in == nil { + return nil + } + out := new(ConditionSignalTypeParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionTargetResourceGroupInitParameters) DeepCopyInto(out *ConditionTargetResourceGroupInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionTargetResourceGroupInitParameters. +func (in *ConditionTargetResourceGroupInitParameters) DeepCopy() *ConditionTargetResourceGroupInitParameters { + if in == nil { + return nil + } + out := new(ConditionTargetResourceGroupInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionTargetResourceGroupObservation) DeepCopyInto(out *ConditionTargetResourceGroupObservation) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionTargetResourceGroupObservation. func (in *ConditionTargetResourceGroupObservation) DeepCopy() *ConditionTargetResourceGroupObservation { if in == nil { return nil @@ -1032,6 +1524,37 @@ func (in *ConditionTargetResourceGroupParameters) DeepCopy() *ConditionTargetRes return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionTargetResourceInitParameters) DeepCopyInto(out *ConditionTargetResourceInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionTargetResourceInitParameters. +func (in *ConditionTargetResourceInitParameters) DeepCopy() *ConditionTargetResourceInitParameters { + if in == nil { + return nil + } + out := new(ConditionTargetResourceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConditionTargetResourceObservation) DeepCopyInto(out *ConditionTargetResourceObservation) { *out = *in @@ -1089,7 +1612,38 @@ func (in *ConditionTargetResourceParameters) DeepCopy() *ConditionTargetResource if in == nil { return nil } - out := new(ConditionTargetResourceParameters) + out := new(ConditionTargetResourceParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionTargetResourceTypeInitParameters) DeepCopyInto(out *ConditionTargetResourceTypeInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionTargetResourceTypeInitParameters. +func (in *ConditionTargetResourceTypeInitParameters) DeepCopy() *ConditionTargetResourceTypeInitParameters { + if in == nil { + return nil + } + out := new(ConditionTargetResourceTypeInitParameters) in.DeepCopyInto(out) return out } @@ -1156,6 +1710,31 @@ func (in *ConditionTargetResourceTypeParameters) DeepCopy() *ConditionTargetReso return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DailyInitParameters) DeepCopyInto(out *DailyInitParameters) { + *out = *in + if in.EndTime != nil { + in, out := &in.EndTime, &out.EndTime + *out = new(string) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DailyInitParameters. +func (in *DailyInitParameters) DeepCopy() *DailyInitParameters { + if in == nil { + return nil + } + out := new(DailyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DailyObservation) DeepCopyInto(out *DailyObservation) { *out = *in @@ -1206,6 +1785,37 @@ func (in *DailyParameters) DeepCopy() *DailyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DescriptionInitParameters) DeepCopyInto(out *DescriptionInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DescriptionInitParameters. +func (in *DescriptionInitParameters) DeepCopy() *DescriptionInitParameters { + if in == nil { + return nil + } + out := new(DescriptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DescriptionObservation) DeepCopyInto(out *DescriptionObservation) { *out = *in @@ -1295,6 +1905,60 @@ func (in *MonitorActionRuleActionGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorActionRuleActionGroupInitParameters) DeepCopyInto(out *MonitorActionRuleActionGroupInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]ConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = make([]ScopeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorActionRuleActionGroupInitParameters. +func (in *MonitorActionRuleActionGroupInitParameters) DeepCopy() *MonitorActionRuleActionGroupInitParameters { + if in == nil { + return nil + } + out := new(MonitorActionRuleActionGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorActionRuleActionGroupList) DeepCopyInto(out *MonitorActionRuleActionGroupList) { *out = *in @@ -1485,6 +2149,7 @@ func (in *MonitorActionRuleActionGroupSpec) DeepCopyInto(out *MonitorActionRuleA *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorActionRuleActionGroupSpec. @@ -1541,6 +2206,70 @@ func (in *MonitorActionRuleSuppression) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorActionRuleSuppressionConditionInitParameters) DeepCopyInto(out *MonitorActionRuleSuppressionConditionInitParameters) { + *out = *in + if in.AlertContext != nil { + in, out := &in.AlertContext, &out.AlertContext + *out = make([]ConditionAlertContextInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AlertRuleID != nil { + in, out := &in.AlertRuleID, &out.AlertRuleID + *out = make([]ConditionAlertRuleIDInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = make([]ConditionDescriptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Monitor != nil { + in, out := &in.Monitor, &out.Monitor + *out = make([]ConditionMonitorInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MonitorService != nil { + in, out := &in.MonitorService, &out.MonitorService + *out = make([]ConditionMonitorServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = make([]ConditionSeverityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetResourceType != nil { + in, out := &in.TargetResourceType, &out.TargetResourceType + *out = make([]ConditionTargetResourceTypeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorActionRuleSuppressionConditionInitParameters. +func (in *MonitorActionRuleSuppressionConditionInitParameters) DeepCopy() *MonitorActionRuleSuppressionConditionInitParameters { + if in == nil { + return nil + } + out := new(MonitorActionRuleSuppressionConditionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorActionRuleSuppressionConditionObservation) DeepCopyInto(out *MonitorActionRuleSuppressionConditionObservation) { *out = *in @@ -1669,6 +2398,67 @@ func (in *MonitorActionRuleSuppressionConditionParameters) DeepCopy() *MonitorAc return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorActionRuleSuppressionInitParameters) DeepCopyInto(out *MonitorActionRuleSuppressionInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]MonitorActionRuleSuppressionConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = make([]MonitorActionRuleSuppressionScopeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Suppression != nil { + in, out := &in.Suppression, &out.Suppression + *out = make([]SuppressionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorActionRuleSuppressionInitParameters. +func (in *MonitorActionRuleSuppressionInitParameters) DeepCopy() *MonitorActionRuleSuppressionInitParameters { + if in == nil { + return nil + } + out := new(MonitorActionRuleSuppressionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorActionRuleSuppressionList) DeepCopyInto(out *MonitorActionRuleSuppressionList) { *out = *in @@ -1848,6 +2638,37 @@ func (in *MonitorActionRuleSuppressionParameters) DeepCopy() *MonitorActionRuleS return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorActionRuleSuppressionScopeInitParameters) DeepCopyInto(out *MonitorActionRuleSuppressionScopeInitParameters) { + *out = *in + if in.ResourceIds != nil { + in, out := &in.ResourceIds, &out.ResourceIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorActionRuleSuppressionScopeInitParameters. +func (in *MonitorActionRuleSuppressionScopeInitParameters) DeepCopy() *MonitorActionRuleSuppressionScopeInitParameters { + if in == nil { + return nil + } + out := new(MonitorActionRuleSuppressionScopeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorActionRuleSuppressionScopeObservation) DeepCopyInto(out *MonitorActionRuleSuppressionScopeObservation) { *out = *in @@ -1915,6 +2736,7 @@ func (in *MonitorActionRuleSuppressionSpec) DeepCopyInto(out *MonitorActionRuleS *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorActionRuleSuppressionSpec. @@ -1968,7 +2790,38 @@ func (in *MonitorAlertProcessingRuleActionGroup) DeepCopyObject() runtime.Object if c := in.DeepCopy(); c != nil { return c } - return nil + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleActionGroupConditionAlertContextInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionAlertContextInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupConditionAlertContextInitParameters. +func (in *MonitorAlertProcessingRuleActionGroupConditionAlertContextInitParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupConditionAlertContextInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleActionGroupConditionAlertContextInitParameters) + in.DeepCopyInto(out) + return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. @@ -2033,6 +2886,37 @@ func (in *MonitorAlertProcessingRuleActionGroupConditionAlertContextParameters) return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDInitParameters. +func (in *MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDInitParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDObservation) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDObservation) { *out = *in @@ -2095,6 +2979,37 @@ func (in *MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDParameters) D return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleActionGroupConditionDescriptionInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionDescriptionInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupConditionDescriptionInitParameters. +func (in *MonitorAlertProcessingRuleActionGroupConditionDescriptionInitParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupConditionDescriptionInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleActionGroupConditionDescriptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleActionGroupConditionDescriptionObservation) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionDescriptionObservation) { *out = *in @@ -2157,6 +3072,129 @@ func (in *MonitorAlertProcessingRuleActionGroupConditionDescriptionParameters) D return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleActionGroupConditionInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionInitParameters) { + *out = *in + if in.AlertContext != nil { + in, out := &in.AlertContext, &out.AlertContext + *out = make([]MonitorAlertProcessingRuleActionGroupConditionAlertContextInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AlertRuleID != nil { + in, out := &in.AlertRuleID, &out.AlertRuleID + *out = make([]MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AlertRuleName != nil { + in, out := &in.AlertRuleName, &out.AlertRuleName + *out = make([]AlertRuleNameInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = make([]MonitorAlertProcessingRuleActionGroupConditionDescriptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MonitorCondition != nil { + in, out := &in.MonitorCondition, &out.MonitorCondition + *out = make([]MonitorConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MonitorService != nil { + in, out := &in.MonitorService, &out.MonitorService + *out = make([]MonitorAlertProcessingRuleActionGroupConditionMonitorServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = make([]MonitorAlertProcessingRuleActionGroupConditionSeverityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SignalType != nil { + in, out := &in.SignalType, &out.SignalType + *out = make([]SignalTypeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetResource != nil { + in, out := &in.TargetResource, &out.TargetResource + *out = make([]TargetResourceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetResourceGroup != nil { + in, out := &in.TargetResourceGroup, &out.TargetResourceGroup + *out = make([]TargetResourceGroupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetResourceType != nil { + in, out := &in.TargetResourceType, &out.TargetResourceType + *out = make([]MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupConditionInitParameters. +func (in *MonitorAlertProcessingRuleActionGroupConditionInitParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupConditionInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleActionGroupConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleActionGroupConditionMonitorServiceInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionMonitorServiceInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupConditionMonitorServiceInitParameters. +func (in *MonitorAlertProcessingRuleActionGroupConditionMonitorServiceInitParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupConditionMonitorServiceInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleActionGroupConditionMonitorServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleActionGroupConditionMonitorServiceObservation) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionMonitorServiceObservation) { *out = *in @@ -2403,6 +3441,37 @@ func (in *MonitorAlertProcessingRuleActionGroupConditionParameters) DeepCopy() * return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleActionGroupConditionSeverityInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionSeverityInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupConditionSeverityInitParameters. +func (in *MonitorAlertProcessingRuleActionGroupConditionSeverityInitParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupConditionSeverityInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleActionGroupConditionSeverityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleActionGroupConditionSeverityObservation) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionSeverityObservation) { *out = *in @@ -2465,6 +3534,37 @@ func (in *MonitorAlertProcessingRuleActionGroupConditionSeverityParameters) Deep return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeInitParameters. +func (in *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeInitParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeObservation) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeObservation) { *out = *in @@ -2504,25 +3604,79 @@ func (in *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParame *out = new(string) **out = **in } - if in.Values != nil { - in, out := &in.Values, &out.Values - *out = make([]*string, len(*in)) + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters. +func (in *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleActionGroupInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]MonitorAlertProcessingRuleActionGroupConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]MonitorAlertProcessingRuleActionGroupScheduleInitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal *out = new(string) **out = **in } + (*out)[key] = outVal } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters. -func (in *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupInitParameters. +func (in *MonitorAlertProcessingRuleActionGroupInitParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupInitParameters { if in == nil { return nil } - out := new(MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters) + out := new(MonitorAlertProcessingRuleActionGroupInitParameters) in.DeepCopyInto(out) return out } @@ -2760,6 +3914,43 @@ func (in *MonitorAlertProcessingRuleActionGroupParameters) DeepCopy() *MonitorAl return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleActionGroupScheduleInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupScheduleInitParameters) { + *out = *in + if in.EffectiveFrom != nil { + in, out := &in.EffectiveFrom, &out.EffectiveFrom + *out = new(string) + **out = **in + } + if in.EffectiveUntil != nil { + in, out := &in.EffectiveUntil, &out.EffectiveUntil + *out = new(string) + **out = **in + } + if in.Recurrence != nil { + in, out := &in.Recurrence, &out.Recurrence + *out = make([]RecurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TimeZone != nil { + in, out := &in.TimeZone, &out.TimeZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupScheduleInitParameters. +func (in *MonitorAlertProcessingRuleActionGroupScheduleInitParameters) DeepCopy() *MonitorAlertProcessingRuleActionGroupScheduleInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleActionGroupScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleActionGroupScheduleObservation) DeepCopyInto(out *MonitorAlertProcessingRuleActionGroupScheduleObservation) { *out = *in @@ -2839,6 +4030,7 @@ func (in *MonitorAlertProcessingRuleActionGroupSpec) DeepCopyInto(out *MonitorAl *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleActionGroupSpec. @@ -2895,6 +4087,37 @@ func (in *MonitorAlertProcessingRuleSuppression) DeepCopyObject() runtime.Object return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleSuppressionConditionAlertContextInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionAlertContextInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionAlertContextInitParameters. +func (in *MonitorAlertProcessingRuleSuppressionConditionAlertContextInitParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionAlertContextInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleSuppressionConditionAlertContextInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleSuppressionConditionAlertContextObservation) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionAlertContextObservation) { *out = *in @@ -2957,6 +4180,37 @@ func (in *MonitorAlertProcessingRuleSuppressionConditionAlertContextParameters) return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDInitParameters. +func (in *MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDInitParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDObservation) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDObservation) { *out = *in @@ -3014,44 +4268,198 @@ func (in *MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDParameters) D if in == nil { return nil } - out := new(MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation) { - *out = *in - if in.Operator != nil { - in, out := &in.Operator, &out.Operator - *out = new(string) - **out = **in + out := new(MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionDescriptionInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionDescriptionInitParameters. +func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionInitParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionDescriptionInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleSuppressionConditionDescriptionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation. +func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters. +func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleSuppressionConditionInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionInitParameters) { + *out = *in + if in.AlertContext != nil { + in, out := &in.AlertContext, &out.AlertContext + *out = make([]MonitorAlertProcessingRuleSuppressionConditionAlertContextInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AlertRuleID != nil { + in, out := &in.AlertRuleID, &out.AlertRuleID + *out = make([]MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AlertRuleName != nil { + in, out := &in.AlertRuleName, &out.AlertRuleName + *out = make([]ConditionAlertRuleNameInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = make([]MonitorAlertProcessingRuleSuppressionConditionDescriptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MonitorCondition != nil { + in, out := &in.MonitorCondition, &out.MonitorCondition + *out = make([]ConditionMonitorConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MonitorService != nil { + in, out := &in.MonitorService, &out.MonitorService + *out = make([]MonitorAlertProcessingRuleSuppressionConditionMonitorServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = make([]MonitorAlertProcessingRuleSuppressionConditionSeverityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SignalType != nil { + in, out := &in.SignalType, &out.SignalType + *out = make([]ConditionSignalTypeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetResource != nil { + in, out := &in.TargetResource, &out.TargetResource + *out = make([]ConditionTargetResourceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetResourceGroup != nil { + in, out := &in.TargetResourceGroup, &out.TargetResourceGroup + *out = make([]ConditionTargetResourceGroupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Values != nil { - in, out := &in.Values, &out.Values - *out = make([]*string, len(*in)) + if in.TargetResourceType != nil { + in, out := &in.TargetResourceType, &out.TargetResourceType + *out = make([]MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeInitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation. -func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionInitParameters. +func (in *MonitorAlertProcessingRuleSuppressionConditionInitParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionInitParameters { if in == nil { return nil } - out := new(MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation) + out := new(MonitorAlertProcessingRuleSuppressionConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters) { +func (in *MonitorAlertProcessingRuleSuppressionConditionMonitorServiceInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionMonitorServiceInitParameters) { *out = *in if in.Operator != nil { in, out := &in.Operator, &out.Operator @@ -3071,12 +4479,12 @@ func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters) D } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters. -func (in *MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionMonitorServiceInitParameters. +func (in *MonitorAlertProcessingRuleSuppressionConditionMonitorServiceInitParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionMonitorServiceInitParameters { if in == nil { return nil } - out := new(MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters) + out := new(MonitorAlertProcessingRuleSuppressionConditionMonitorServiceInitParameters) in.DeepCopyInto(out) return out } @@ -3327,6 +4735,37 @@ func (in *MonitorAlertProcessingRuleSuppressionConditionParameters) DeepCopy() * return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleSuppressionConditionSeverityInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionSeverityInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionSeverityInitParameters. +func (in *MonitorAlertProcessingRuleSuppressionConditionSeverityInitParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionSeverityInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleSuppressionConditionSeverityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleSuppressionConditionSeverityObservation) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionSeverityObservation) { *out = *in @@ -3389,6 +4828,37 @@ func (in *MonitorAlertProcessingRuleSuppressionConditionSeverityParameters) Deep return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeInitParameters. +func (in *MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeInitParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeObservation) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeObservation) { *out = *in @@ -3451,6 +4921,60 @@ func (in *MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleSuppressionInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]MonitorAlertProcessingRuleSuppressionConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]MonitorAlertProcessingRuleSuppressionScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionInitParameters. +func (in *MonitorAlertProcessingRuleSuppressionInitParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleSuppressionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleSuppressionList) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionList) { *out = *in @@ -3650,6 +5174,43 @@ func (in *MonitorAlertProcessingRuleSuppressionParameters) DeepCopy() *MonitorAl return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAlertProcessingRuleSuppressionScheduleInitParameters) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionScheduleInitParameters) { + *out = *in + if in.EffectiveFrom != nil { + in, out := &in.EffectiveFrom, &out.EffectiveFrom + *out = new(string) + **out = **in + } + if in.EffectiveUntil != nil { + in, out := &in.EffectiveUntil, &out.EffectiveUntil + *out = new(string) + **out = **in + } + if in.Recurrence != nil { + in, out := &in.Recurrence, &out.Recurrence + *out = make([]ScheduleRecurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TimeZone != nil { + in, out := &in.TimeZone, &out.TimeZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionScheduleInitParameters. +func (in *MonitorAlertProcessingRuleSuppressionScheduleInitParameters) DeepCopy() *MonitorAlertProcessingRuleSuppressionScheduleInitParameters { + if in == nil { + return nil + } + out := new(MonitorAlertProcessingRuleSuppressionScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAlertProcessingRuleSuppressionScheduleObservation) DeepCopyInto(out *MonitorAlertProcessingRuleSuppressionScheduleObservation) { *out = *in @@ -3729,6 +5290,7 @@ func (in *MonitorAlertProcessingRuleSuppressionSpec) DeepCopyInto(out *MonitorAl *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAlertProcessingRuleSuppressionSpec. @@ -3758,6 +5320,37 @@ func (in *MonitorAlertProcessingRuleSuppressionStatus) DeepCopy() *MonitorAlertP return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorConditionInitParameters) DeepCopyInto(out *MonitorConditionInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorConditionInitParameters. +func (in *MonitorConditionInitParameters) DeepCopy() *MonitorConditionInitParameters { + if in == nil { + return nil + } + out := new(MonitorConditionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorConditionObservation) DeepCopyInto(out *MonitorConditionObservation) { *out = *in @@ -3820,6 +5413,37 @@ func (in *MonitorConditionParameters) DeepCopy() *MonitorConditionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorInitParameters) DeepCopyInto(out *MonitorInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorInitParameters. +func (in *MonitorInitParameters) DeepCopy() *MonitorInitParameters { + if in == nil { + return nil + } + out := new(MonitorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorObservation) DeepCopyInto(out *MonitorObservation) { *out = *in @@ -3877,7 +5501,38 @@ func (in *MonitorParameters) DeepCopy() *MonitorParameters { if in == nil { return nil } - out := new(MonitorParameters) + out := new(MonitorParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorServiceInitParameters) DeepCopyInto(out *MonitorServiceInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorServiceInitParameters. +func (in *MonitorServiceInitParameters) DeepCopy() *MonitorServiceInitParameters { + if in == nil { + return nil + } + out := new(MonitorServiceInitParameters) in.DeepCopyInto(out) return out } @@ -3971,6 +5626,78 @@ func (in *MonitorSmartDetectorAlertRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorSmartDetectorAlertRuleInitParameters) DeepCopyInto(out *MonitorSmartDetectorAlertRuleInitParameters) { + *out = *in + if in.ActionGroup != nil { + in, out := &in.ActionGroup, &out.ActionGroup + *out = make([]ActionGroupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DetectorType != nil { + in, out := &in.DetectorType, &out.DetectorType + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ThrottlingDuration != nil { + in, out := &in.ThrottlingDuration, &out.ThrottlingDuration + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorSmartDetectorAlertRuleInitParameters. +func (in *MonitorSmartDetectorAlertRuleInitParameters) DeepCopy() *MonitorSmartDetectorAlertRuleInitParameters { + if in == nil { + return nil + } + out := new(MonitorSmartDetectorAlertRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorSmartDetectorAlertRuleList) DeepCopyInto(out *MonitorSmartDetectorAlertRuleList) { *out = *in @@ -4211,6 +5938,7 @@ func (in *MonitorSmartDetectorAlertRuleSpec) DeepCopyInto(out *MonitorSmartDetec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorSmartDetectorAlertRuleSpec. @@ -4240,6 +5968,42 @@ func (in *MonitorSmartDetectorAlertRuleStatus) DeepCopy() *MonitorSmartDetectorA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonthlyInitParameters) DeepCopyInto(out *MonthlyInitParameters) { + *out = *in + if in.DaysOfMonth != nil { + in, out := &in.DaysOfMonth, &out.DaysOfMonth + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.EndTime != nil { + in, out := &in.EndTime, &out.EndTime + *out = new(string) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonthlyInitParameters. +func (in *MonthlyInitParameters) DeepCopy() *MonthlyInitParameters { + if in == nil { + return nil + } + out := new(MonthlyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonthlyObservation) DeepCopyInto(out *MonthlyObservation) { *out = *in @@ -4312,6 +6076,31 @@ func (in *MonthlyParameters) DeepCopy() *MonthlyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecurrenceDailyInitParameters) DeepCopyInto(out *RecurrenceDailyInitParameters) { + *out = *in + if in.EndTime != nil { + in, out := &in.EndTime, &out.EndTime + *out = new(string) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceDailyInitParameters. +func (in *RecurrenceDailyInitParameters) DeepCopy() *RecurrenceDailyInitParameters { + if in == nil { + return nil + } + out := new(RecurrenceDailyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecurrenceDailyObservation) DeepCopyInto(out *RecurrenceDailyObservation) { *out = *in @@ -4362,6 +6151,78 @@ func (in *RecurrenceDailyParameters) DeepCopy() *RecurrenceDailyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecurrenceInitParameters) DeepCopyInto(out *RecurrenceInitParameters) { + *out = *in + if in.Daily != nil { + in, out := &in.Daily, &out.Daily + *out = make([]DailyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Monthly != nil { + in, out := &in.Monthly, &out.Monthly + *out = make([]MonthlyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Weekly != nil { + in, out := &in.Weekly, &out.Weekly + *out = make([]WeeklyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceInitParameters. +func (in *RecurrenceInitParameters) DeepCopy() *RecurrenceInitParameters { + if in == nil { + return nil + } + out := new(RecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecurrenceMonthlyInitParameters) DeepCopyInto(out *RecurrenceMonthlyInitParameters) { + *out = *in + if in.DaysOfMonth != nil { + in, out := &in.DaysOfMonth, &out.DaysOfMonth + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.EndTime != nil { + in, out := &in.EndTime, &out.EndTime + *out = new(string) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceMonthlyInitParameters. +func (in *RecurrenceMonthlyInitParameters) DeepCopy() *RecurrenceMonthlyInitParameters { + if in == nil { + return nil + } + out := new(RecurrenceMonthlyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecurrenceMonthlyObservation) DeepCopyInto(out *RecurrenceMonthlyObservation) { *out = *in @@ -4506,6 +6367,42 @@ func (in *RecurrenceParameters) DeepCopy() *RecurrenceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecurrenceWeeklyInitParameters) DeepCopyInto(out *RecurrenceWeeklyInitParameters) { + *out = *in + if in.DaysOfWeek != nil { + in, out := &in.DaysOfWeek, &out.DaysOfWeek + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EndTime != nil { + in, out := &in.EndTime, &out.EndTime + *out = new(string) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceWeeklyInitParameters. +func (in *RecurrenceWeeklyInitParameters) DeepCopy() *RecurrenceWeeklyInitParameters { + if in == nil { + return nil + } + out := new(RecurrenceWeeklyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecurrenceWeeklyObservation) DeepCopyInto(out *RecurrenceWeeklyObservation) { *out = *in @@ -4561,19 +6458,66 @@ func (in *RecurrenceWeeklyParameters) DeepCopyInto(out *RecurrenceWeeklyParamete *out = new(string) **out = **in } - if in.StartTime != nil { - in, out := &in.StartTime, &out.StartTime + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceWeeklyParameters. +func (in *RecurrenceWeeklyParameters) DeepCopy() *RecurrenceWeeklyParameters { + if in == nil { + return nil + } + out := new(RecurrenceWeeklyParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScheduleInitParameters) DeepCopyInto(out *ScheduleInitParameters) { + *out = *in + if in.EndDateUtc != nil { + in, out := &in.EndDateUtc, &out.EndDateUtc + *out = new(string) + **out = **in + } + if in.RecurrenceMonthly != nil { + in, out := &in.RecurrenceMonthly, &out.RecurrenceMonthly + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.RecurrenceWeekly != nil { + in, out := &in.RecurrenceWeekly, &out.RecurrenceWeekly + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.StartDateUtc != nil { + in, out := &in.StartDateUtc, &out.StartDateUtc *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceWeeklyParameters. -func (in *RecurrenceWeeklyParameters) DeepCopy() *RecurrenceWeeklyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleInitParameters. +func (in *ScheduleInitParameters) DeepCopy() *ScheduleInitParameters { if in == nil { return nil } - out := new(RecurrenceWeeklyParameters) + out := new(ScheduleInitParameters) in.DeepCopyInto(out) return out } @@ -4672,6 +6616,42 @@ func (in *ScheduleParameters) DeepCopy() *ScheduleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScheduleRecurrenceInitParameters) DeepCopyInto(out *ScheduleRecurrenceInitParameters) { + *out = *in + if in.Daily != nil { + in, out := &in.Daily, &out.Daily + *out = make([]RecurrenceDailyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Monthly != nil { + in, out := &in.Monthly, &out.Monthly + *out = make([]RecurrenceMonthlyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Weekly != nil { + in, out := &in.Weekly, &out.Weekly + *out = make([]RecurrenceWeeklyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleRecurrenceInitParameters. +func (in *ScheduleRecurrenceInitParameters) DeepCopy() *ScheduleRecurrenceInitParameters { + if in == nil { + return nil + } + out := new(ScheduleRecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScheduleRecurrenceObservation) DeepCopyInto(out *ScheduleRecurrenceObservation) { *out = *in @@ -4744,6 +6724,37 @@ func (in *ScheduleRecurrenceParameters) DeepCopy() *ScheduleRecurrenceParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScopeInitParameters) DeepCopyInto(out *ScopeInitParameters) { + *out = *in + if in.ResourceIds != nil { + in, out := &in.ResourceIds, &out.ResourceIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScopeInitParameters. +func (in *ScopeInitParameters) DeepCopy() *ScopeInitParameters { + if in == nil { + return nil + } + out := new(ScopeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScopeObservation) DeepCopyInto(out *ScopeObservation) { *out = *in @@ -4806,6 +6817,37 @@ func (in *ScopeParameters) DeepCopy() *ScopeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SeverityInitParameters) DeepCopyInto(out *SeverityInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SeverityInitParameters. +func (in *SeverityInitParameters) DeepCopy() *SeverityInitParameters { + if in == nil { + return nil + } + out := new(SeverityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SeverityObservation) DeepCopyInto(out *SeverityObservation) { *out = *in @@ -4868,6 +6910,37 @@ func (in *SeverityParameters) DeepCopy() *SeverityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SignalTypeInitParameters) DeepCopyInto(out *SignalTypeInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SignalTypeInitParameters. +func (in *SignalTypeInitParameters) DeepCopy() *SignalTypeInitParameters { + if in == nil { + return nil + } + out := new(SignalTypeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SignalTypeObservation) DeepCopyInto(out *SignalTypeObservation) { *out = *in @@ -4930,6 +7003,33 @@ func (in *SignalTypeParameters) DeepCopy() *SignalTypeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SuppressionInitParameters) DeepCopyInto(out *SuppressionInitParameters) { + *out = *in + if in.RecurrenceType != nil { + in, out := &in.RecurrenceType, &out.RecurrenceType + *out = new(string) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]ScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SuppressionInitParameters. +func (in *SuppressionInitParameters) DeepCopy() *SuppressionInitParameters { + if in == nil { + return nil + } + out := new(SuppressionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SuppressionObservation) DeepCopyInto(out *SuppressionObservation) { *out = *in @@ -4984,6 +7084,37 @@ func (in *SuppressionParameters) DeepCopy() *SuppressionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TargetResourceGroupInitParameters) DeepCopyInto(out *TargetResourceGroupInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetResourceGroupInitParameters. +func (in *TargetResourceGroupInitParameters) DeepCopy() *TargetResourceGroupInitParameters { + if in == nil { + return nil + } + out := new(TargetResourceGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TargetResourceGroupObservation) DeepCopyInto(out *TargetResourceGroupObservation) { *out = *in @@ -5046,6 +7177,37 @@ func (in *TargetResourceGroupParameters) DeepCopy() *TargetResourceGroupParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TargetResourceInitParameters) DeepCopyInto(out *TargetResourceInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetResourceInitParameters. +func (in *TargetResourceInitParameters) DeepCopy() *TargetResourceInitParameters { + if in == nil { + return nil + } + out := new(TargetResourceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TargetResourceObservation) DeepCopyInto(out *TargetResourceObservation) { *out = *in @@ -5108,6 +7270,37 @@ func (in *TargetResourceParameters) DeepCopy() *TargetResourceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TargetResourceTypeInitParameters) DeepCopyInto(out *TargetResourceTypeInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetResourceTypeInitParameters. +func (in *TargetResourceTypeInitParameters) DeepCopy() *TargetResourceTypeInitParameters { + if in == nil { + return nil + } + out := new(TargetResourceTypeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TargetResourceTypeObservation) DeepCopyInto(out *TargetResourceTypeObservation) { *out = *in @@ -5170,6 +7363,42 @@ func (in *TargetResourceTypeParameters) DeepCopy() *TargetResourceTypeParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WeeklyInitParameters) DeepCopyInto(out *WeeklyInitParameters) { + *out = *in + if in.DaysOfWeek != nil { + in, out := &in.DaysOfWeek, &out.DaysOfWeek + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EndTime != nil { + in, out := &in.EndTime, &out.EndTime + *out = new(string) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WeeklyInitParameters. +func (in *WeeklyInitParameters) DeepCopy() *WeeklyInitParameters { + if in == nil { + return nil + } + out := new(WeeklyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WeeklyObservation) DeepCopyInto(out *WeeklyObservation) { *out = *in diff --git a/apis/alertsmanagement/v1beta1/zz_generated.managed.go b/apis/alertsmanagement/v1beta1/zz_generated.managed.go index 4609ff3a4..36b8d3f33 100644 --- a/apis/alertsmanagement/v1beta1/zz_generated.managed.go +++ b/apis/alertsmanagement/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *MonitorActionRuleActionGroup) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorActionRuleActionGroup. -func (mg *MonitorActionRuleActionGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorActionRuleActionGroup. +func (mg *MonitorActionRuleActionGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorActionRuleActionGroup. @@ -55,9 +55,9 @@ func (mg *MonitorActionRuleActionGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorActionRuleActionGroup. -func (mg *MonitorActionRuleActionGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorActionRuleActionGroup. +func (mg *MonitorActionRuleActionGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorActionRuleActionGroup. @@ -93,9 +93,9 @@ func (mg *MonitorActionRuleSuppression) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorActionRuleSuppression. -func (mg *MonitorActionRuleSuppression) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorActionRuleSuppression. +func (mg *MonitorActionRuleSuppression) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorActionRuleSuppression. @@ -131,9 +131,9 @@ func (mg *MonitorActionRuleSuppression) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorActionRuleSuppression. -func (mg *MonitorActionRuleSuppression) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorActionRuleSuppression. +func (mg *MonitorActionRuleSuppression) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorActionRuleSuppression. @@ -169,9 +169,9 @@ func (mg *MonitorAlertProcessingRuleActionGroup) GetDeletionPolicy() xpv1.Deleti return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorAlertProcessingRuleActionGroup. -func (mg *MonitorAlertProcessingRuleActionGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorAlertProcessingRuleActionGroup. +func (mg *MonitorAlertProcessingRuleActionGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorAlertProcessingRuleActionGroup. @@ -207,9 +207,9 @@ func (mg *MonitorAlertProcessingRuleActionGroup) SetDeletionPolicy(r xpv1.Deleti mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorAlertProcessingRuleActionGroup. -func (mg *MonitorAlertProcessingRuleActionGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorAlertProcessingRuleActionGroup. +func (mg *MonitorAlertProcessingRuleActionGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorAlertProcessingRuleActionGroup. @@ -245,9 +245,9 @@ func (mg *MonitorAlertProcessingRuleSuppression) GetDeletionPolicy() xpv1.Deleti return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorAlertProcessingRuleSuppression. -func (mg *MonitorAlertProcessingRuleSuppression) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorAlertProcessingRuleSuppression. +func (mg *MonitorAlertProcessingRuleSuppression) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorAlertProcessingRuleSuppression. @@ -283,9 +283,9 @@ func (mg *MonitorAlertProcessingRuleSuppression) SetDeletionPolicy(r xpv1.Deleti mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorAlertProcessingRuleSuppression. -func (mg *MonitorAlertProcessingRuleSuppression) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorAlertProcessingRuleSuppression. +func (mg *MonitorAlertProcessingRuleSuppression) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorAlertProcessingRuleSuppression. @@ -321,9 +321,9 @@ func (mg *MonitorSmartDetectorAlertRule) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorSmartDetectorAlertRule. -func (mg *MonitorSmartDetectorAlertRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorSmartDetectorAlertRule. +func (mg *MonitorSmartDetectorAlertRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorSmartDetectorAlertRule. @@ -359,9 +359,9 @@ func (mg *MonitorSmartDetectorAlertRule) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorSmartDetectorAlertRule. -func (mg *MonitorSmartDetectorAlertRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorSmartDetectorAlertRule. +func (mg *MonitorSmartDetectorAlertRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorSmartDetectorAlertRule. diff --git a/apis/alertsmanagement/v1beta1/zz_generated_terraformed.go b/apis/alertsmanagement/v1beta1/zz_generated_terraformed.go index 8f9c9afdb..5af2a7952 100755 --- a/apis/alertsmanagement/v1beta1/zz_generated_terraformed.go +++ b/apis/alertsmanagement/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *MonitorActionRuleActionGroup) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorActionRuleActionGroup +func (tr *MonitorActionRuleActionGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorActionRuleActionGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorActionRuleActionGroup) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *MonitorActionRuleSuppression) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorActionRuleSuppression +func (tr *MonitorActionRuleSuppression) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorActionRuleSuppression using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorActionRuleSuppression) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *MonitorAlertProcessingRuleActionGroup) SetParameters(params map[string return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorAlertProcessingRuleActionGroup +func (tr *MonitorAlertProcessingRuleActionGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorAlertProcessingRuleActionGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorAlertProcessingRuleActionGroup) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *MonitorAlertProcessingRuleSuppression) SetParameters(params map[string return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorAlertProcessingRuleSuppression +func (tr *MonitorAlertProcessingRuleSuppression) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorAlertProcessingRuleSuppression using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorAlertProcessingRuleSuppression) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *MonitorSmartDetectorAlertRule) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorSmartDetectorAlertRule +func (tr *MonitorSmartDetectorAlertRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorSmartDetectorAlertRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorSmartDetectorAlertRule) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/alertsmanagement/v1beta1/zz_monitoractionruleactiongroup_types.go b/apis/alertsmanagement/v1beta1/zz_monitoractionruleactiongroup_types.go index ebb2ecd4c..4b3c7d0e6 100755 --- a/apis/alertsmanagement/v1beta1/zz_monitoractionruleactiongroup_types.go +++ b/apis/alertsmanagement/v1beta1/zz_monitoractionruleactiongroup_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AlertContextInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type AlertContextObservation struct { // The operator for a given condition. Possible values are Equals and NotEquals. @@ -25,12 +34,21 @@ type AlertContextObservation struct { type AlertContextParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type AlertRuleIDInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type AlertRuleIDObservation struct { @@ -45,12 +63,36 @@ type AlertRuleIDObservation struct { type AlertRuleIDParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionInitParameters struct { + + // A alert_context block as defined below. + AlertContext []AlertContextInitParameters `json:"alertContext,omitempty" tf:"alert_context,omitempty"` + + // A alert_rule_id block as defined below. + AlertRuleID []AlertRuleIDInitParameters `json:"alertRuleId,omitempty" tf:"alert_rule_id,omitempty"` + + // A description block as defined below. + Description []DescriptionInitParameters `json:"description,omitempty" tf:"description,omitempty"` + + // A monitor block as defined below. + Monitor []MonitorInitParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` + + // A monitor_service as block defined below. + MonitorService []MonitorServiceInitParameters `json:"monitorService,omitempty" tf:"monitor_service,omitempty"` + + // A severity block as defined below. + Severity []SeverityInitParameters `json:"severity,omitempty" tf:"severity,omitempty"` + + // A target_resource_type block as defined below. + TargetResourceType []TargetResourceTypeInitParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } type ConditionObservation struct { @@ -108,6 +150,15 @@ type ConditionParameters struct { TargetResourceType []TargetResourceTypeParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } +type DescriptionInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type DescriptionObservation struct { // The operator for a given condition. Possible values are Equals and NotEquals. @@ -120,12 +171,30 @@ type DescriptionObservation struct { type DescriptionParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorActionRuleActionGroupInitParameters struct { + + // A condition block as defined below. + Condition []ConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` + + // Specifies a description for the Action Rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Is the Action Rule enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A scope block as defined below. + Scope []ScopeInitParameters `json:"scope,omitempty" tf:"scope,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type MonitorActionRuleActionGroupObservation struct { @@ -205,6 +274,15 @@ type MonitorActionRuleActionGroupParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type MonitorInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type MonitorObservation struct { // The operator for a given condition. Possible values are Equals and NotEquals. @@ -217,12 +295,21 @@ type MonitorObservation struct { type MonitorParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorServiceInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorServiceObservation struct { @@ -237,12 +324,21 @@ type MonitorServiceObservation struct { type MonitorServiceParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ScopeInitParameters struct { + + // A list of resource IDs of the given scope type which will be the target of action rule. + ResourceIds []*string `json:"resourceIds,omitempty" tf:"resource_ids,omitempty"` + + // Specifies the type of target scope. Possible values are ResourceGroup and Resource. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type ScopeObservation struct { @@ -257,12 +353,21 @@ type ScopeObservation struct { type ScopeParameters struct { // A list of resource IDs of the given scope type which will be the target of action rule. - // +kubebuilder:validation:Required - ResourceIds []*string `json:"resourceIds" tf:"resource_ids,omitempty"` + // +kubebuilder:validation:Optional + ResourceIds []*string `json:"resourceIds,omitempty" tf:"resource_ids,omitempty"` // Specifies the type of target scope. Possible values are ResourceGroup and Resource. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type SeverityInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type SeverityObservation struct { @@ -277,12 +382,21 @@ type SeverityObservation struct { type SeverityParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type TargetResourceTypeInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type TargetResourceTypeObservation struct { @@ -297,18 +411,30 @@ type TargetResourceTypeObservation struct { type TargetResourceTypeParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } // MonitorActionRuleActionGroupSpec defines the desired state of MonitorActionRuleActionGroup type MonitorActionRuleActionGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorActionRuleActionGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorActionRuleActionGroupInitParameters `json:"initProvider,omitempty"` } // MonitorActionRuleActionGroupStatus defines the observed state of MonitorActionRuleActionGroup. diff --git a/apis/alertsmanagement/v1beta1/zz_monitoractionrulesuppression_types.go b/apis/alertsmanagement/v1beta1/zz_monitoractionrulesuppression_types.go index 611dea04b..5981712e7 100755 --- a/apis/alertsmanagement/v1beta1/zz_monitoractionrulesuppression_types.go +++ b/apis/alertsmanagement/v1beta1/zz_monitoractionrulesuppression_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConditionAlertContextInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type ConditionAlertContextObservation struct { // The operator for a given condition. Possible values are Equals and NotEquals. @@ -25,12 +34,21 @@ type ConditionAlertContextObservation struct { type ConditionAlertContextParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionAlertRuleIDInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type ConditionAlertRuleIDObservation struct { @@ -45,12 +63,21 @@ type ConditionAlertRuleIDObservation struct { type ConditionAlertRuleIDParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionDescriptionInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type ConditionDescriptionObservation struct { @@ -65,12 +92,21 @@ type ConditionDescriptionObservation struct { type ConditionDescriptionParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionMonitorInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type ConditionMonitorObservation struct { @@ -85,12 +121,21 @@ type ConditionMonitorObservation struct { type ConditionMonitorParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionMonitorServiceInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type ConditionMonitorServiceObservation struct { @@ -105,12 +150,21 @@ type ConditionMonitorServiceObservation struct { type ConditionMonitorServiceParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionSeverityInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type ConditionSeverityObservation struct { @@ -125,12 +179,21 @@ type ConditionSeverityObservation struct { type ConditionSeverityParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionTargetResourceTypeInitParameters struct { + + // The operator for a given condition. Possible values are Equals and NotEquals. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type ConditionTargetResourceTypeObservation struct { @@ -145,12 +208,36 @@ type ConditionTargetResourceTypeObservation struct { type ConditionTargetResourceTypeParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorActionRuleSuppressionConditionInitParameters struct { + + // A alert_context block as defined below. + AlertContext []ConditionAlertContextInitParameters `json:"alertContext,omitempty" tf:"alert_context,omitempty"` + + // A alert_rule_id block as defined below. + AlertRuleID []ConditionAlertRuleIDInitParameters `json:"alertRuleId,omitempty" tf:"alert_rule_id,omitempty"` + + // A description block as defined below. + Description []ConditionDescriptionInitParameters `json:"description,omitempty" tf:"description,omitempty"` + + // A monitor block as defined below. + Monitor []ConditionMonitorInitParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` + + // A monitor_service as block defined below. + MonitorService []ConditionMonitorServiceInitParameters `json:"monitorService,omitempty" tf:"monitor_service,omitempty"` + + // A severity block as defined below. + Severity []ConditionSeverityInitParameters `json:"severity,omitempty" tf:"severity,omitempty"` + + // A target_resource_type block as defined below. + TargetResourceType []ConditionTargetResourceTypeInitParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } type MonitorActionRuleSuppressionConditionObservation struct { @@ -208,6 +295,27 @@ type MonitorActionRuleSuppressionConditionParameters struct { TargetResourceType []ConditionTargetResourceTypeParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } +type MonitorActionRuleSuppressionInitParameters struct { + + // A condition block as defined below. + Condition []MonitorActionRuleSuppressionConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` + + // Specifies a description for the Action Rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Is the Action Rule enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A scope block as defined below. + Scope []MonitorActionRuleSuppressionScopeInitParameters `json:"scope,omitempty" tf:"scope,omitempty"` + + // A suppression block as defined below. + Suppression []SuppressionInitParameters `json:"suppression,omitempty" tf:"suppression,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type MonitorActionRuleSuppressionObservation struct { // A condition block as defined below. @@ -275,6 +383,15 @@ type MonitorActionRuleSuppressionParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type MonitorActionRuleSuppressionScopeInitParameters struct { + + // A list of resource IDs of the given scope type which will be the target of action rule. + ResourceIds []*string `json:"resourceIds,omitempty" tf:"resource_ids,omitempty"` + + // Specifies the type of target scope. Possible values are ResourceGroup and Resource. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type MonitorActionRuleSuppressionScopeObservation struct { // A list of resource IDs of the given scope type which will be the target of action rule. @@ -287,12 +404,27 @@ type MonitorActionRuleSuppressionScopeObservation struct { type MonitorActionRuleSuppressionScopeParameters struct { // A list of resource IDs of the given scope type which will be the target of action rule. - // +kubebuilder:validation:Required - ResourceIds []*string `json:"resourceIds" tf:"resource_ids,omitempty"` + // +kubebuilder:validation:Optional + ResourceIds []*string `json:"resourceIds,omitempty" tf:"resource_ids,omitempty"` // Specifies the type of target scope. Possible values are ResourceGroup and Resource. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ScheduleInitParameters struct { + + // specifies the recurrence UTC end datetime (Y-m-d'T'H:M:S'Z'). + EndDateUtc *string `json:"endDateUtc,omitempty" tf:"end_date_utc,omitempty"` + + // specifies the list of dayOfMonth to recurrence. Possible values are between 1 - 31. Required if recurrence_type is Monthly. + RecurrenceMonthly []*float64 `json:"recurrenceMonthly,omitempty" tf:"recurrence_monthly,omitempty"` + + // specifies the list of dayOfWeek to recurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. + RecurrenceWeekly []*string `json:"recurrenceWeekly,omitempty" tf:"recurrence_weekly,omitempty"` + + // specifies the recurrence UTC start datetime (Y-m-d'T'H:M:S'Z'). + StartDateUtc *string `json:"startDateUtc,omitempty" tf:"start_date_utc,omitempty"` } type ScheduleObservation struct { @@ -313,8 +445,8 @@ type ScheduleObservation struct { type ScheduleParameters struct { // specifies the recurrence UTC end datetime (Y-m-d'T'H:M:S'Z'). - // +kubebuilder:validation:Required - EndDateUtc *string `json:"endDateUtc" tf:"end_date_utc,omitempty"` + // +kubebuilder:validation:Optional + EndDateUtc *string `json:"endDateUtc,omitempty" tf:"end_date_utc,omitempty"` // specifies the list of dayOfMonth to recurrence. Possible values are between 1 - 31. Required if recurrence_type is Monthly. // +kubebuilder:validation:Optional @@ -325,8 +457,17 @@ type ScheduleParameters struct { RecurrenceWeekly []*string `json:"recurrenceWeekly,omitempty" tf:"recurrence_weekly,omitempty"` // specifies the recurrence UTC start datetime (Y-m-d'T'H:M:S'Z'). - // +kubebuilder:validation:Required - StartDateUtc *string `json:"startDateUtc" tf:"start_date_utc,omitempty"` + // +kubebuilder:validation:Optional + StartDateUtc *string `json:"startDateUtc,omitempty" tf:"start_date_utc,omitempty"` +} + +type SuppressionInitParameters struct { + + // Specifies the type of suppression. Possible values are Always, Daily, Monthly, Once, and Weekly. + RecurrenceType *string `json:"recurrenceType,omitempty" tf:"recurrence_type,omitempty"` + + // A schedule block as defined below. Required if recurrence_type is Daily, Monthly, Once or Weekly. + Schedule []ScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` } type SuppressionObservation struct { @@ -341,8 +482,8 @@ type SuppressionObservation struct { type SuppressionParameters struct { // Specifies the type of suppression. Possible values are Always, Daily, Monthly, Once, and Weekly. - // +kubebuilder:validation:Required - RecurrenceType *string `json:"recurrenceType" tf:"recurrence_type,omitempty"` + // +kubebuilder:validation:Optional + RecurrenceType *string `json:"recurrenceType,omitempty" tf:"recurrence_type,omitempty"` // A schedule block as defined below. Required if recurrence_type is Daily, Monthly, Once or Weekly. // +kubebuilder:validation:Optional @@ -353,6 +494,18 @@ type SuppressionParameters struct { type MonitorActionRuleSuppressionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorActionRuleSuppressionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorActionRuleSuppressionInitParameters `json:"initProvider,omitempty"` } // MonitorActionRuleSuppressionStatus defines the observed state of MonitorActionRuleSuppression. @@ -373,7 +526,7 @@ type MonitorActionRuleSuppressionStatus struct { type MonitorActionRuleSuppression struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.suppression)",message="suppression is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.suppression) || has(self.initProvider.suppression)",message="suppression is a required parameter" Spec MonitorActionRuleSuppressionSpec `json:"spec"` Status MonitorActionRuleSuppressionStatus `json:"status,omitempty"` } diff --git a/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingruleactiongroup_types.go b/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingruleactiongroup_types.go index 158236b9b..9544ce39e 100755 --- a/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingruleactiongroup_types.go +++ b/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingruleactiongroup_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AlertRuleNameInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type AlertRuleNameObservation struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. @@ -25,12 +34,21 @@ type AlertRuleNameObservation struct { type AlertRuleNameParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type DailyInitParameters struct { + + // Specifies the recurrence end time (H:M:S). + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` + + // Specifies the recurrence start time (H:M:S). + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } type DailyObservation struct { @@ -45,12 +63,21 @@ type DailyObservation struct { type DailyParameters struct { // Specifies the recurrence end time (H:M:S). - // +kubebuilder:validation:Required - EndTime *string `json:"endTime" tf:"end_time,omitempty"` + // +kubebuilder:validation:Optional + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // Specifies the recurrence start time (H:M:S). - // +kubebuilder:validation:Required - StartTime *string `json:"startTime" tf:"start_time,omitempty"` + // +kubebuilder:validation:Optional + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + +type MonitorAlertProcessingRuleActionGroupConditionAlertContextInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleActionGroupConditionAlertContextObservation struct { @@ -65,12 +92,21 @@ type MonitorAlertProcessingRuleActionGroupConditionAlertContextObservation struc type MonitorAlertProcessingRuleActionGroupConditionAlertContextParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDObservation struct { @@ -85,12 +121,21 @@ type MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDObservation struct type MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleActionGroupConditionDescriptionInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleActionGroupConditionDescriptionObservation struct { @@ -105,12 +150,57 @@ type MonitorAlertProcessingRuleActionGroupConditionDescriptionObservation struct type MonitorAlertProcessingRuleActionGroupConditionDescriptionParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleActionGroupConditionInitParameters struct { + + // A alert_context block as defined above. + AlertContext []MonitorAlertProcessingRuleActionGroupConditionAlertContextInitParameters `json:"alertContext,omitempty" tf:"alert_context,omitempty"` + + // A alert_rule_id block as defined above. + AlertRuleID []MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDInitParameters `json:"alertRuleId,omitempty" tf:"alert_rule_id,omitempty"` + + // A alert_rule_name block as defined above. + AlertRuleName []AlertRuleNameInitParameters `json:"alertRuleName,omitempty" tf:"alert_rule_name,omitempty"` + + // A description block as defined below. + Description []MonitorAlertProcessingRuleActionGroupConditionDescriptionInitParameters `json:"description,omitempty" tf:"description,omitempty"` + + // A monitor_condition block as defined below. + MonitorCondition []MonitorConditionInitParameters `json:"monitorCondition,omitempty" tf:"monitor_condition,omitempty"` + + // A monitor_service block as defined below. + MonitorService []MonitorAlertProcessingRuleActionGroupConditionMonitorServiceInitParameters `json:"monitorService,omitempty" tf:"monitor_service,omitempty"` + + // A severity block as defined below. + Severity []MonitorAlertProcessingRuleActionGroupConditionSeverityInitParameters `json:"severity,omitempty" tf:"severity,omitempty"` + + // A signal_type block as defined below. + SignalType []SignalTypeInitParameters `json:"signalType,omitempty" tf:"signal_type,omitempty"` + + // A target_resource block as defined below. + TargetResource []TargetResourceInitParameters `json:"targetResource,omitempty" tf:"target_resource,omitempty"` + + // A target_resource_group block as defined below. + TargetResourceGroup []TargetResourceGroupInitParameters `json:"targetResourceGroup,omitempty" tf:"target_resource_group,omitempty"` + + // A target_resource_type block as defined below. + TargetResourceType []MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeInitParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` +} + +type MonitorAlertProcessingRuleActionGroupConditionMonitorServiceInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleActionGroupConditionMonitorServiceObservation struct { @@ -125,12 +215,12 @@ type MonitorAlertProcessingRuleActionGroupConditionMonitorServiceObservation str type MonitorAlertProcessingRuleActionGroupConditionMonitorServiceParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleActionGroupConditionObservation struct { @@ -216,6 +306,15 @@ type MonitorAlertProcessingRuleActionGroupConditionParameters struct { TargetResourceType []MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } +type MonitorAlertProcessingRuleActionGroupConditionSeverityInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type MonitorAlertProcessingRuleActionGroupConditionSeverityObservation struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. @@ -228,12 +327,21 @@ type MonitorAlertProcessingRuleActionGroupConditionSeverityObservation struct { type MonitorAlertProcessingRuleActionGroupConditionSeverityParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeObservation struct { @@ -248,12 +356,30 @@ type MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeObservation type MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleActionGroupInitParameters struct { + + // A condition block as defined below. + Condition []MonitorAlertProcessingRuleActionGroupConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` + + // Specifies a description for the Alert Processing Rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Should the Alert Processing Rule be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A schedule block as defined below. + Schedule []MonitorAlertProcessingRuleActionGroupScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` + + // A mapping of tags which should be assigned to the Alert Processing Rule. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type MonitorAlertProcessingRuleActionGroupObservation struct { @@ -350,6 +476,21 @@ type MonitorAlertProcessingRuleActionGroupParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type MonitorAlertProcessingRuleActionGroupScheduleInitParameters struct { + + // Specifies the Alert Processing Rule effective start time (Y-m-d'T'H:M:S). + EffectiveFrom *string `json:"effectiveFrom,omitempty" tf:"effective_from,omitempty"` + + // Specifies the Alert Processing Rule effective end time (Y-m-d'T'H:M:S). + EffectiveUntil *string `json:"effectiveUntil,omitempty" tf:"effective_until,omitempty"` + + // A recurrence block as defined above. + Recurrence []RecurrenceInitParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` + + // The time zone (e.g. Pacific Standard time, Eastern Standard Time). Defaults to UTC. possible values are defined here. + TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` +} + type MonitorAlertProcessingRuleActionGroupScheduleObservation struct { // Specifies the Alert Processing Rule effective start time (Y-m-d'T'H:M:S). @@ -384,6 +525,15 @@ type MonitorAlertProcessingRuleActionGroupScheduleParameters struct { TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } +type MonitorConditionInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type MonitorConditionObservation struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. @@ -396,12 +546,24 @@ type MonitorConditionObservation struct { type MonitorConditionParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonthlyInitParameters struct { + + // Specifies a list of dayOfMonth to recurrence. Possible values are integers between 1 - 31. + DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` + + // Specifies the recurrence end time (H:M:S). + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` + + // Specifies the recurrence start time (H:M:S). + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } type MonthlyObservation struct { @@ -419,8 +581,8 @@ type MonthlyObservation struct { type MonthlyParameters struct { // Specifies a list of dayOfMonth to recurrence. Possible values are integers between 1 - 31. - // +kubebuilder:validation:Required - DaysOfMonth []*float64 `json:"daysOfMonth" tf:"days_of_month,omitempty"` + // +kubebuilder:validation:Optional + DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` // Specifies the recurrence end time (H:M:S). // +kubebuilder:validation:Optional @@ -431,6 +593,18 @@ type MonthlyParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type RecurrenceInitParameters struct { + + // One or more daily blocks as defined above. + Daily []DailyInitParameters `json:"daily,omitempty" tf:"daily,omitempty"` + + // One or more monthly blocks as defined above. + Monthly []MonthlyInitParameters `json:"monthly,omitempty" tf:"monthly,omitempty"` + + // One or more weekly blocks as defined below. + Weekly []WeeklyInitParameters `json:"weekly,omitempty" tf:"weekly,omitempty"` +} + type RecurrenceObservation struct { // One or more daily blocks as defined above. @@ -458,6 +632,15 @@ type RecurrenceParameters struct { Weekly []WeeklyParameters `json:"weekly,omitempty" tf:"weekly,omitempty"` } +type SignalTypeInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type SignalTypeObservation struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. @@ -470,12 +653,21 @@ type SignalTypeObservation struct { type SignalTypeParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type TargetResourceGroupInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type TargetResourceGroupObservation struct { @@ -490,12 +682,21 @@ type TargetResourceGroupObservation struct { type TargetResourceGroupParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type TargetResourceInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type TargetResourceObservation struct { @@ -510,12 +711,24 @@ type TargetResourceObservation struct { type TargetResourceParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type WeeklyInitParameters struct { + + // Specifies a list of dayOfWeek to recurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and Saturday. + DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` + + // Specifies the recurrence end time (H:M:S). + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` + + // Specifies the recurrence start time (H:M:S). + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } type WeeklyObservation struct { @@ -533,8 +746,8 @@ type WeeklyObservation struct { type WeeklyParameters struct { // Specifies a list of dayOfWeek to recurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and Saturday. - // +kubebuilder:validation:Required - DaysOfWeek []*string `json:"daysOfWeek" tf:"days_of_week,omitempty"` + // +kubebuilder:validation:Optional + DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` // Specifies the recurrence end time (H:M:S). // +kubebuilder:validation:Optional @@ -549,6 +762,18 @@ type WeeklyParameters struct { type MonitorAlertProcessingRuleActionGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorAlertProcessingRuleActionGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorAlertProcessingRuleActionGroupInitParameters `json:"initProvider,omitempty"` } // MonitorAlertProcessingRuleActionGroupStatus defines the observed state of MonitorAlertProcessingRuleActionGroup. diff --git a/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingrulesuppression_types.go b/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingrulesuppression_types.go index 49c7e38a9..9e09cd9c9 100755 --- a/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingrulesuppression_types.go +++ b/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingrulesuppression_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConditionAlertRuleNameInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type ConditionAlertRuleNameObservation struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. @@ -25,12 +34,21 @@ type ConditionAlertRuleNameObservation struct { type ConditionAlertRuleNameParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionMonitorConditionInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type ConditionMonitorConditionObservation struct { @@ -45,12 +63,21 @@ type ConditionMonitorConditionObservation struct { type ConditionMonitorConditionParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionSignalTypeInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type ConditionSignalTypeObservation struct { @@ -65,12 +92,21 @@ type ConditionSignalTypeObservation struct { type ConditionSignalTypeParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionTargetResourceGroupInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type ConditionTargetResourceGroupObservation struct { @@ -85,12 +121,21 @@ type ConditionTargetResourceGroupObservation struct { type ConditionTargetResourceGroupParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type ConditionTargetResourceInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type ConditionTargetResourceObservation struct { @@ -105,12 +150,21 @@ type ConditionTargetResourceObservation struct { type ConditionTargetResourceParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleSuppressionConditionAlertContextInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleSuppressionConditionAlertContextObservation struct { @@ -125,12 +179,21 @@ type MonitorAlertProcessingRuleSuppressionConditionAlertContextObservation struc type MonitorAlertProcessingRuleSuppressionConditionAlertContextParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDObservation struct { @@ -145,12 +208,21 @@ type MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDObservation struct type MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleSuppressionConditionDescriptionInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation struct { @@ -165,12 +237,57 @@ type MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation struct type MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleSuppressionConditionInitParameters struct { + + // A alert_context block as defined above. + AlertContext []MonitorAlertProcessingRuleSuppressionConditionAlertContextInitParameters `json:"alertContext,omitempty" tf:"alert_context,omitempty"` + + // A alert_rule_id block as defined above. + AlertRuleID []MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDInitParameters `json:"alertRuleId,omitempty" tf:"alert_rule_id,omitempty"` + + // A alert_rule_name block as defined above. + AlertRuleName []ConditionAlertRuleNameInitParameters `json:"alertRuleName,omitempty" tf:"alert_rule_name,omitempty"` + + // A description block as defined below. + Description []MonitorAlertProcessingRuleSuppressionConditionDescriptionInitParameters `json:"description,omitempty" tf:"description,omitempty"` + + // A monitor_condition block as defined below. + MonitorCondition []ConditionMonitorConditionInitParameters `json:"monitorCondition,omitempty" tf:"monitor_condition,omitempty"` + + // A monitor_service block as defined below. + MonitorService []MonitorAlertProcessingRuleSuppressionConditionMonitorServiceInitParameters `json:"monitorService,omitempty" tf:"monitor_service,omitempty"` + + // A severity block as defined below. + Severity []MonitorAlertProcessingRuleSuppressionConditionSeverityInitParameters `json:"severity,omitempty" tf:"severity,omitempty"` + + // A signal_type block as defined below. + SignalType []ConditionSignalTypeInitParameters `json:"signalType,omitempty" tf:"signal_type,omitempty"` + + // A target_resource block as defined below. + TargetResource []ConditionTargetResourceInitParameters `json:"targetResource,omitempty" tf:"target_resource,omitempty"` + + // A target_resource_group block as defined below. + TargetResourceGroup []ConditionTargetResourceGroupInitParameters `json:"targetResourceGroup,omitempty" tf:"target_resource_group,omitempty"` + + // A target_resource_type block as defined below. + TargetResourceType []MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeInitParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` +} + +type MonitorAlertProcessingRuleSuppressionConditionMonitorServiceInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleSuppressionConditionMonitorServiceObservation struct { @@ -185,12 +302,12 @@ type MonitorAlertProcessingRuleSuppressionConditionMonitorServiceObservation str type MonitorAlertProcessingRuleSuppressionConditionMonitorServiceParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleSuppressionConditionObservation struct { @@ -276,6 +393,15 @@ type MonitorAlertProcessingRuleSuppressionConditionParameters struct { TargetResourceType []MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } +type MonitorAlertProcessingRuleSuppressionConditionSeverityInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type MonitorAlertProcessingRuleSuppressionConditionSeverityObservation struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. @@ -288,12 +414,21 @@ type MonitorAlertProcessingRuleSuppressionConditionSeverityObservation struct { type MonitorAlertProcessingRuleSuppressionConditionSeverityParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeInitParameters struct { + + // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeObservation struct { @@ -308,12 +443,30 @@ type MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeObservation type MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorAlertProcessingRuleSuppressionInitParameters struct { + + // A condition block as defined below. + Condition []MonitorAlertProcessingRuleSuppressionConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` + + // Specifies a description for the Alert Processing Rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Should the Alert Processing Rule be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A schedule block as defined below. + Schedule []MonitorAlertProcessingRuleSuppressionScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` + + // A mapping of tags which should be assigned to the Alert Processing Rule. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type MonitorAlertProcessingRuleSuppressionObservation struct { @@ -393,6 +546,21 @@ type MonitorAlertProcessingRuleSuppressionParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type MonitorAlertProcessingRuleSuppressionScheduleInitParameters struct { + + // Specifies the Alert Processing Rule effective start time (Y-m-d'T'H:M:S). + EffectiveFrom *string `json:"effectiveFrom,omitempty" tf:"effective_from,omitempty"` + + // Specifies the Alert Processing Rule effective end time (Y-m-d'T'H:M:S). + EffectiveUntil *string `json:"effectiveUntil,omitempty" tf:"effective_until,omitempty"` + + // A recurrence block as defined above. + Recurrence []ScheduleRecurrenceInitParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` + + // The time zone (e.g. Pacific Standard time, Eastern Standard Time). Defaults to UTC. possible values are defined here. + TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` +} + type MonitorAlertProcessingRuleSuppressionScheduleObservation struct { // Specifies the Alert Processing Rule effective start time (Y-m-d'T'H:M:S). @@ -427,6 +595,15 @@ type MonitorAlertProcessingRuleSuppressionScheduleParameters struct { TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } +type RecurrenceDailyInitParameters struct { + + // Specifies the recurrence end time (H:M:S). + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` + + // Specifies the recurrence start time (H:M:S). + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type RecurrenceDailyObservation struct { // Specifies the recurrence end time (H:M:S). @@ -439,12 +616,24 @@ type RecurrenceDailyObservation struct { type RecurrenceDailyParameters struct { // Specifies the recurrence end time (H:M:S). - // +kubebuilder:validation:Required - EndTime *string `json:"endTime" tf:"end_time,omitempty"` + // +kubebuilder:validation:Optional + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // Specifies the recurrence start time (H:M:S). - // +kubebuilder:validation:Required - StartTime *string `json:"startTime" tf:"start_time,omitempty"` + // +kubebuilder:validation:Optional + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + +type RecurrenceMonthlyInitParameters struct { + + // Specifies a list of dayOfMonth to recurrence. Possible values are integers between 1 - 31. + DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` + + // Specifies the recurrence end time (H:M:S). + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` + + // Specifies the recurrence start time (H:M:S). + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } type RecurrenceMonthlyObservation struct { @@ -462,8 +651,8 @@ type RecurrenceMonthlyObservation struct { type RecurrenceMonthlyParameters struct { // Specifies a list of dayOfMonth to recurrence. Possible values are integers between 1 - 31. - // +kubebuilder:validation:Required - DaysOfMonth []*float64 `json:"daysOfMonth" tf:"days_of_month,omitempty"` + // +kubebuilder:validation:Optional + DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` // Specifies the recurrence end time (H:M:S). // +kubebuilder:validation:Optional @@ -474,6 +663,18 @@ type RecurrenceMonthlyParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type RecurrenceWeeklyInitParameters struct { + + // Specifies a list of dayOfWeek to recurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and Saturday. + DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` + + // Specifies the recurrence end time (H:M:S). + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` + + // Specifies the recurrence start time (H:M:S). + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type RecurrenceWeeklyObservation struct { // Specifies a list of dayOfWeek to recurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and Saturday. @@ -489,8 +690,8 @@ type RecurrenceWeeklyObservation struct { type RecurrenceWeeklyParameters struct { // Specifies a list of dayOfWeek to recurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and Saturday. - // +kubebuilder:validation:Required - DaysOfWeek []*string `json:"daysOfWeek" tf:"days_of_week,omitempty"` + // +kubebuilder:validation:Optional + DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` // Specifies the recurrence end time (H:M:S). // +kubebuilder:validation:Optional @@ -501,6 +702,18 @@ type RecurrenceWeeklyParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type ScheduleRecurrenceInitParameters struct { + + // One or more daily blocks as defined above. + Daily []RecurrenceDailyInitParameters `json:"daily,omitempty" tf:"daily,omitempty"` + + // One or more monthly blocks as defined above. + Monthly []RecurrenceMonthlyInitParameters `json:"monthly,omitempty" tf:"monthly,omitempty"` + + // One or more weekly blocks as defined below. + Weekly []RecurrenceWeeklyInitParameters `json:"weekly,omitempty" tf:"weekly,omitempty"` +} + type ScheduleRecurrenceObservation struct { // One or more daily blocks as defined above. @@ -532,6 +745,18 @@ type ScheduleRecurrenceParameters struct { type MonitorAlertProcessingRuleSuppressionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorAlertProcessingRuleSuppressionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorAlertProcessingRuleSuppressionInitParameters `json:"initProvider,omitempty"` } // MonitorAlertProcessingRuleSuppressionStatus defines the observed state of MonitorAlertProcessingRuleSuppression. diff --git a/apis/alertsmanagement/v1beta1/zz_monitorsmartdetectoralertrule_types.go b/apis/alertsmanagement/v1beta1/zz_monitorsmartdetectoralertrule_types.go index 8b8f92cdf..f962a5797 100755 --- a/apis/alertsmanagement/v1beta1/zz_monitorsmartdetectoralertrule_types.go +++ b/apis/alertsmanagement/v1beta1/zz_monitorsmartdetectoralertrule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActionGroupInitParameters struct { + + // Specifies a custom email subject if Email Receiver is specified in Monitor Action Group resource. + EmailSubject *string `json:"emailSubject,omitempty" tf:"email_subject,omitempty"` + + // A JSON String which Specifies the custom webhook payload if Webhook Receiver is specified in Monitor Action Group resource. + WebhookPayload *string `json:"webhookPayload,omitempty" tf:"webhook_payload,omitempty"` +} + type ActionGroupObservation struct { // Specifies a custom email subject if Email Receiver is specified in Monitor Action Group resource. @@ -50,6 +59,36 @@ type ActionGroupParameters struct { WebhookPayload *string `json:"webhookPayload,omitempty" tf:"webhook_payload,omitempty"` } +type MonitorSmartDetectorAlertRuleInitParameters struct { + + // An action_group block as defined below. + ActionGroup []ActionGroupInitParameters `json:"actionGroup,omitempty" tf:"action_group,omitempty"` + + // Specifies a description for the Smart Detector Alert Rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies the Built-In Smart Detector type that this alert rule will use. Currently the only possible values are FailureAnomaliesDetector, RequestPerformanceDegradationDetector, DependencyPerformanceDegradationDetector, ExceptionVolumeChangedDetector, TraceSeverityDetector, MemoryLeakDetector. + DetectorType *string `json:"detectorType,omitempty" tf:"detector_type,omitempty"` + + // Is the Smart Detector Alert Rule enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Specifies the frequency of this Smart Detector Alert Rule in ISO8601 format. + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // Specifies the name of the Monitor Smart Detector Alert Rule. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the severity of this Smart Detector Alert Rule. Possible values are Sev0, Sev1, Sev2, Sev3 or Sev4. + Severity *string `json:"severity,omitempty" tf:"severity,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the duration (in ISO8601 format) to wait before notifying on the alert rule again. + ThrottlingDuration *string `json:"throttlingDuration,omitempty" tf:"throttling_duration,omitempty"` +} + type MonitorSmartDetectorAlertRuleObservation struct { // An action_group block as defined below. @@ -159,6 +198,18 @@ type MonitorSmartDetectorAlertRuleParameters struct { type MonitorSmartDetectorAlertRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorSmartDetectorAlertRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorSmartDetectorAlertRuleInitParameters `json:"initProvider,omitempty"` } // MonitorSmartDetectorAlertRuleStatus defines the observed state of MonitorSmartDetectorAlertRule. @@ -179,11 +230,11 @@ type MonitorSmartDetectorAlertRuleStatus struct { type MonitorSmartDetectorAlertRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.actionGroup)",message="actionGroup is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.detectorType)",message="detectorType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frequency)",message="frequency is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.severity)",message="severity is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.actionGroup) || has(self.initProvider.actionGroup)",message="actionGroup is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.detectorType) || has(self.initProvider.detectorType)",message="detectorType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frequency) || has(self.initProvider.frequency)",message="frequency is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.severity) || has(self.initProvider.severity)",message="severity is a required parameter" Spec MonitorSmartDetectorAlertRuleSpec `json:"spec"` Status MonitorSmartDetectorAlertRuleStatus `json:"status,omitempty"` } diff --git a/apis/analysisservices/v1beta1/zz_generated.deepcopy.go b/apis/analysisservices/v1beta1/zz_generated.deepcopy.go index 317c1bda8..36a72d785 100644 --- a/apis/analysisservices/v1beta1/zz_generated.deepcopy.go +++ b/apis/analysisservices/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,36 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPv4FirewallRuleInitParameters) DeepCopyInto(out *IPv4FirewallRuleInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RangeEnd != nil { + in, out := &in.RangeEnd, &out.RangeEnd + *out = new(string) + **out = **in + } + if in.RangeStart != nil { + in, out := &in.RangeStart, &out.RangeStart + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPv4FirewallRuleInitParameters. +func (in *IPv4FirewallRuleInitParameters) DeepCopy() *IPv4FirewallRuleInitParameters { + if in == nil { + return nil + } + out := new(IPv4FirewallRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPv4FirewallRuleObservation) DeepCopyInto(out *IPv4FirewallRuleObservation) { *out = *in @@ -101,6 +131,79 @@ func (in *Server) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerInitParameters) DeepCopyInto(out *ServerInitParameters) { + *out = *in + if in.AdminUsers != nil { + in, out := &in.AdminUsers, &out.AdminUsers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EnablePowerBiService != nil { + in, out := &in.EnablePowerBiService, &out.EnablePowerBiService + *out = new(bool) + **out = **in + } + if in.IPv4FirewallRule != nil { + in, out := &in.IPv4FirewallRule, &out.IPv4FirewallRule + *out = make([]IPv4FirewallRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.QuerypoolConnectionMode != nil { + in, out := &in.QuerypoolConnectionMode, &out.QuerypoolConnectionMode + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerInitParameters. +func (in *ServerInitParameters) DeepCopy() *ServerInitParameters { + if in == nil { + return nil + } + out := new(ServerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerList) DeepCopyInto(out *ServerList) { *out = *in @@ -319,6 +422,7 @@ func (in *ServerSpec) DeepCopyInto(out *ServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSpec. diff --git a/apis/analysisservices/v1beta1/zz_generated.managed.go b/apis/analysisservices/v1beta1/zz_generated.managed.go index 9b19ce64c..5f6b52d98 100644 --- a/apis/analysisservices/v1beta1/zz_generated.managed.go +++ b/apis/analysisservices/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Server) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Server. -func (mg *Server) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Server. +func (mg *Server) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Server. @@ -55,9 +55,9 @@ func (mg *Server) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Server. -func (mg *Server) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Server. +func (mg *Server) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Server. diff --git a/apis/analysisservices/v1beta1/zz_generated_terraformed.go b/apis/analysisservices/v1beta1/zz_generated_terraformed.go index 488f414c9..5e96f82c4 100755 --- a/apis/analysisservices/v1beta1/zz_generated_terraformed.go +++ b/apis/analysisservices/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Server) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Server +func (tr *Server) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Server using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Server) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/analysisservices/v1beta1/zz_server_types.go b/apis/analysisservices/v1beta1/zz_server_types.go index f6976ed78..6f4baafb8 100755 --- a/apis/analysisservices/v1beta1/zz_server_types.go +++ b/apis/analysisservices/v1beta1/zz_server_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IPv4FirewallRuleInitParameters struct { + + // Specifies the name of the firewall rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // End of the firewall rule range as IPv4 address. + RangeEnd *string `json:"rangeEnd,omitempty" tf:"range_end,omitempty"` + + // Start of the firewall rule range as IPv4 address. + RangeStart *string `json:"rangeStart,omitempty" tf:"range_start,omitempty"` +} + type IPv4FirewallRuleObservation struct { // Specifies the name of the firewall rule. @@ -28,16 +40,43 @@ type IPv4FirewallRuleObservation struct { type IPv4FirewallRuleParameters struct { // Specifies the name of the firewall rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // End of the firewall rule range as IPv4 address. - // +kubebuilder:validation:Required - RangeEnd *string `json:"rangeEnd" tf:"range_end,omitempty"` + // +kubebuilder:validation:Optional + RangeEnd *string `json:"rangeEnd,omitempty" tf:"range_end,omitempty"` // Start of the firewall rule range as IPv4 address. - // +kubebuilder:validation:Required - RangeStart *string `json:"rangeStart" tf:"range_start,omitempty"` + // +kubebuilder:validation:Optional + RangeStart *string `json:"rangeStart,omitempty" tf:"range_start,omitempty"` +} + +type ServerInitParameters struct { + + // List of email addresses of admin users. + AdminUsers []*string `json:"adminUsers,omitempty" tf:"admin_users,omitempty"` + + // Indicates if the Power BI service is allowed to access or not. + EnablePowerBiService *bool `json:"enablePowerBiService,omitempty" tf:"enable_power_bi_service,omitempty"` + + // One or more ipv4_firewall_rule block(s) as defined below. + IPv4FirewallRule []IPv4FirewallRuleInitParameters `json:"ipv4FirewallRule,omitempty" tf:"ipv4_firewall_rule,omitempty"` + + // The Azure location where the Analysis Services Server exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the Analysis Services Server. Only lowercase Alphanumeric characters allowed, starting with a letter. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Controls how the read-write server is used in the query pool. If this value is set to All then read-write servers are also used for queries. Otherwise with ReadOnly these servers do not participate in query operations. + QuerypoolConnectionMode *string `json:"querypoolConnectionMode,omitempty" tf:"querypool_connection_mode,omitempty"` + + // SKU for the Analysis Services Server. Possible values are: D1, B1, B2, S0, S1, S2, S4, S8, S9, S8v2 and S9v2. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type ServerObservation struct { @@ -132,6 +171,18 @@ type ServerParameters struct { type ServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServerInitParameters `json:"initProvider,omitempty"` } // ServerStatus defines the observed state of Server. @@ -152,9 +203,9 @@ type ServerStatus struct { type Server struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec ServerSpec `json:"spec"` Status ServerStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_api_types.go b/apis/apimanagement/v1beta1/zz_api_types.go index ec6b76506..9c5fc6b0b 100755 --- a/apis/apimanagement/v1beta1/zz_api_types.go +++ b/apis/apimanagement/v1beta1/zz_api_types.go @@ -13,6 +13,72 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APIInitParameters struct { + + // Type of API. Possible values are graphql, http, soap, and websocket. Defaults to http. + APIType *string `json:"apiType,omitempty" tf:"api_type,omitempty"` + + // A contact block as documented below. + Contact []ContactInitParameters `json:"contact,omitempty" tf:"contact,omitempty"` + + // A description of the API Management API, which may include HTML formatting tags. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The display name of the API. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // A import block as documented below. + Import []ImportInitParameters `json:"import,omitempty" tf:"import,omitempty"` + + // A license block as documented below. + License []LicenseInitParameters `json:"license,omitempty" tf:"license,omitempty"` + + // An oauth2_authorization block as documented below. + Oauth2Authorization []Oauth2AuthorizationInitParameters `json:"oauth2Authorization,omitempty" tf:"oauth2_authorization,omitempty"` + + // An openid_authentication block as documented below. + OpenIDAuthentication []OpenIDAuthenticationInitParameters `json:"openidAuthentication,omitempty" tf:"openid_authentication,omitempty"` + + // The Path for this API Management API, which is a relative URL which uniquely identifies this API and all of its resource paths within the API Management Service. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // A list of protocols the operations in this API can be invoked. Possible values are http, https, ws, and wss. + Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` + + // The Revision which used for this API. Changing this forces a new resource to be created. + Revision *string `json:"revision,omitempty" tf:"revision,omitempty"` + + // The description of the API Revision of the API Management API. + RevisionDescription *string `json:"revisionDescription,omitempty" tf:"revision_description,omitempty"` + + // Absolute URL of the backend service implementing this API. + ServiceURL *string `json:"serviceUrl,omitempty" tf:"service_url,omitempty"` + + // Should this API expose a SOAP frontend, rather than a HTTP frontend? Defaults to false. + SoapPassThrough *bool `json:"soapPassThrough,omitempty" tf:"soap_pass_through,omitempty"` + + // The API id of the source API, which could be in format azurerm_api_management_api.example.id or in format azurerm_api_management_api.example.id;rev=1 + SourceAPIID *string `json:"sourceApiId,omitempty" tf:"source_api_id,omitempty"` + + // A subscription_key_parameter_names block as documented below. + SubscriptionKeyParameterNames []SubscriptionKeyParameterNamesInitParameters `json:"subscriptionKeyParameterNames,omitempty" tf:"subscription_key_parameter_names,omitempty"` + + // Should this API require a subscription key? Defaults to true. + SubscriptionRequired *bool `json:"subscriptionRequired,omitempty" tf:"subscription_required,omitempty"` + + // Absolute URL of the Terms of Service for the API. + TermsOfServiceURL *string `json:"termsOfServiceUrl,omitempty" tf:"terms_of_service_url,omitempty"` + + // The Version number of this API, if this API is versioned. + Version *string `json:"version,omitempty" tf:"version,omitempty"` + + // The description of the API Version of the API Management API. + VersionDescription *string `json:"versionDescription,omitempty" tf:"version_description,omitempty"` + + // The ID of the Version Set which this API is associated with. + VersionSetID *string `json:"versionSetId,omitempty" tf:"version_set_id,omitempty"` +} + type APIObservation struct { // The Name of the API Management Service where this API should be created. Changing this forces a new resource to be created. @@ -207,6 +273,18 @@ type APIParameters struct { VersionSetID *string `json:"versionSetId,omitempty" tf:"version_set_id,omitempty"` } +type ContactInitParameters struct { + + // The email address of the contact person/organization. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // The name of the contact person/organization. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Absolute URL of the contact information. + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type ContactObservation struct { // The email address of the contact person/organization. @@ -234,6 +312,18 @@ type ContactParameters struct { URL *string `json:"url,omitempty" tf:"url,omitempty"` } +type ImportInitParameters struct { + + // The format of the content from which the API Definition should be imported. Possible values are: openapi, openapi+json, openapi+json-link, openapi-link, swagger-json, swagger-link-json, wadl-link-json, wadl-xml, wsdl and wsdl-link. + ContentFormat *string `json:"contentFormat,omitempty" tf:"content_format,omitempty"` + + // The Content from which the API Definition should be imported. When a content_format of *-link-* is specified this must be a URL, otherwise this must be defined inline. + ContentValue *string `json:"contentValue,omitempty" tf:"content_value,omitempty"` + + // A wsdl_selector block as defined below, which allows you to limit the import of a WSDL to only a subset of the document. This can only be specified when content_format is wsdl or wsdl-link. + WsdlSelector []WsdlSelectorInitParameters `json:"wsdlSelector,omitempty" tf:"wsdl_selector,omitempty"` +} + type ImportObservation struct { // The format of the content from which the API Definition should be imported. Possible values are: openapi, openapi+json, openapi+json-link, openapi-link, swagger-json, swagger-link-json, wadl-link-json, wadl-xml, wsdl and wsdl-link. @@ -249,18 +339,27 @@ type ImportObservation struct { type ImportParameters struct { // The format of the content from which the API Definition should be imported. Possible values are: openapi, openapi+json, openapi+json-link, openapi-link, swagger-json, swagger-link-json, wadl-link-json, wadl-xml, wsdl and wsdl-link. - // +kubebuilder:validation:Required - ContentFormat *string `json:"contentFormat" tf:"content_format,omitempty"` + // +kubebuilder:validation:Optional + ContentFormat *string `json:"contentFormat,omitempty" tf:"content_format,omitempty"` // The Content from which the API Definition should be imported. When a content_format of *-link-* is specified this must be a URL, otherwise this must be defined inline. - // +kubebuilder:validation:Required - ContentValue *string `json:"contentValue" tf:"content_value,omitempty"` + // +kubebuilder:validation:Optional + ContentValue *string `json:"contentValue,omitempty" tf:"content_value,omitempty"` // A wsdl_selector block as defined below, which allows you to limit the import of a WSDL to only a subset of the document. This can only be specified when content_format is wsdl or wsdl-link. // +kubebuilder:validation:Optional WsdlSelector []WsdlSelectorParameters `json:"wsdlSelector,omitempty" tf:"wsdl_selector,omitempty"` } +type LicenseInitParameters struct { + + // The name of the license . + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Absolute URL of the license. + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type LicenseObservation struct { // The name of the license . @@ -281,6 +380,15 @@ type LicenseParameters struct { URL *string `json:"url,omitempty" tf:"url,omitempty"` } +type Oauth2AuthorizationInitParameters struct { + + // OAuth authorization server identifier. The name of an OAuth2 Authorization Server. + AuthorizationServerName *string `json:"authorizationServerName,omitempty" tf:"authorization_server_name,omitempty"` + + // Operations scope. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` +} + type Oauth2AuthorizationObservation struct { // OAuth authorization server identifier. The name of an OAuth2 Authorization Server. @@ -293,14 +401,23 @@ type Oauth2AuthorizationObservation struct { type Oauth2AuthorizationParameters struct { // OAuth authorization server identifier. The name of an OAuth2 Authorization Server. - // +kubebuilder:validation:Required - AuthorizationServerName *string `json:"authorizationServerName" tf:"authorization_server_name,omitempty"` + // +kubebuilder:validation:Optional + AuthorizationServerName *string `json:"authorizationServerName,omitempty" tf:"authorization_server_name,omitempty"` // Operations scope. // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` } +type OpenIDAuthenticationInitParameters struct { + + // How to send token to the server. A list of zero or more methods. Valid values are authorizationHeader and query. + BearerTokenSendingMethods []*string `json:"bearerTokenSendingMethods,omitempty" tf:"bearer_token_sending_methods,omitempty"` + + // OpenID Connect provider identifier. The name of an OpenID Connect Provider. + OpenIDProviderName *string `json:"openidProviderName,omitempty" tf:"openid_provider_name,omitempty"` +} + type OpenIDAuthenticationObservation struct { // How to send token to the server. A list of zero or more methods. Valid values are authorizationHeader and query. @@ -317,8 +434,17 @@ type OpenIDAuthenticationParameters struct { BearerTokenSendingMethods []*string `json:"bearerTokenSendingMethods,omitempty" tf:"bearer_token_sending_methods,omitempty"` // OpenID Connect provider identifier. The name of an OpenID Connect Provider. - // +kubebuilder:validation:Required - OpenIDProviderName *string `json:"openidProviderName" tf:"openid_provider_name,omitempty"` + // +kubebuilder:validation:Optional + OpenIDProviderName *string `json:"openidProviderName,omitempty" tf:"openid_provider_name,omitempty"` +} + +type SubscriptionKeyParameterNamesInitParameters struct { + + // The name of the HTTP Header which should be used for the Subscription Key. + Header *string `json:"header,omitempty" tf:"header,omitempty"` + + // The name of the QueryString parameter which should be used for the Subscription Key. + Query *string `json:"query,omitempty" tf:"query,omitempty"` } type SubscriptionKeyParameterNamesObservation struct { @@ -333,12 +459,21 @@ type SubscriptionKeyParameterNamesObservation struct { type SubscriptionKeyParameterNamesParameters struct { // The name of the HTTP Header which should be used for the Subscription Key. - // +kubebuilder:validation:Required - Header *string `json:"header" tf:"header,omitempty"` + // +kubebuilder:validation:Optional + Header *string `json:"header,omitempty" tf:"header,omitempty"` // The name of the QueryString parameter which should be used for the Subscription Key. - // +kubebuilder:validation:Required - Query *string `json:"query" tf:"query,omitempty"` + // +kubebuilder:validation:Optional + Query *string `json:"query,omitempty" tf:"query,omitempty"` +} + +type WsdlSelectorInitParameters struct { + + // The name of endpoint (port) to import from WSDL. + EndpointName *string `json:"endpointName,omitempty" tf:"endpoint_name,omitempty"` + + // The name of service to import from WSDL. + ServiceName *string `json:"serviceName,omitempty" tf:"service_name,omitempty"` } type WsdlSelectorObservation struct { @@ -353,18 +488,30 @@ type WsdlSelectorObservation struct { type WsdlSelectorParameters struct { // The name of endpoint (port) to import from WSDL. - // +kubebuilder:validation:Required - EndpointName *string `json:"endpointName" tf:"endpoint_name,omitempty"` + // +kubebuilder:validation:Optional + EndpointName *string `json:"endpointName,omitempty" tf:"endpoint_name,omitempty"` // The name of service to import from WSDL. - // +kubebuilder:validation:Required - ServiceName *string `json:"serviceName" tf:"service_name,omitempty"` + // +kubebuilder:validation:Optional + ServiceName *string `json:"serviceName,omitempty" tf:"service_name,omitempty"` } // APISpec defines the desired state of API type APISpec struct { v1.ResourceSpec `json:",inline"` ForProvider APIParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider APIInitParameters `json:"initProvider,omitempty"` } // APIStatus defines the observed state of API. @@ -385,7 +532,7 @@ type APIStatus struct { type API struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.revision)",message="revision is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.revision) || has(self.initProvider.revision)",message="revision is a required parameter" Spec APISpec `json:"spec"` Status APIStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apidiagnostic_types.go b/apis/apimanagement/v1beta1/zz_apidiagnostic_types.go index 07e0d9ea9..56bcb8dcc 100755 --- a/apis/apimanagement/v1beta1/zz_apidiagnostic_types.go +++ b/apis/apimanagement/v1beta1/zz_apidiagnostic_types.go @@ -13,6 +13,39 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APIDiagnosticInitParameters struct { + + // Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings. + AlwaysLogErrors *bool `json:"alwaysLogErrors,omitempty" tf:"always_log_errors,omitempty"` + + // A backend_request block as defined below. + BackendRequest []BackendRequestInitParameters `json:"backendRequest,omitempty" tf:"backend_request,omitempty"` + + // A backend_response block as defined below. + BackendResponse []BackendResponseInitParameters `json:"backendResponse,omitempty" tf:"backend_response,omitempty"` + + // A frontend_request block as defined below. + FrontendRequest []FrontendRequestInitParameters `json:"frontendRequest,omitempty" tf:"frontend_request,omitempty"` + + // A frontend_response block as defined below. + FrontendResponse []FrontendResponseInitParameters `json:"frontendResponse,omitempty" tf:"frontend_response,omitempty"` + + // The HTTP Correlation Protocol to use. Possible values are None, Legacy or W3C. + HTTPCorrelationProtocol *string `json:"httpCorrelationProtocol,omitempty" tf:"http_correlation_protocol,omitempty"` + + // Log client IP address. + LogClientIP *bool `json:"logClientIp,omitempty" tf:"log_client_ip,omitempty"` + + // The format of the Operation Name for Application Insights telemetries. Possible values are Name, and Url. Defaults to Name. + OperationNameFormat *string `json:"operationNameFormat,omitempty" tf:"operation_name_format,omitempty"` + + // Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between 0.0 and 100.0. + SamplingPercentage *float64 `json:"samplingPercentage,omitempty" tf:"sampling_percentage,omitempty"` + + // Logging verbosity. Possible values are verbose, information or error. + Verbosity *string `json:"verbosity,omitempty" tf:"verbosity,omitempty"` +} + type APIDiagnosticObservation struct { // The ID (name) of the Diagnostics Logger. @@ -157,6 +190,18 @@ type APIDiagnosticParameters struct { Verbosity *string `json:"verbosity,omitempty" tf:"verbosity,omitempty"` } +type BackendRequestInitParameters struct { + + // Number of payload bytes to log (up to 8192). + BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` + + // A data_masking block as defined below. + DataMasking []DataMaskingInitParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` + + // Specifies a list of headers to log. + HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` +} + type BackendRequestObservation struct { // Number of payload bytes to log (up to 8192). @@ -184,6 +229,15 @@ type BackendRequestParameters struct { HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } +type BackendResponseDataMaskingInitParameters struct { + + // A headers block as defined below. + Headers []DataMaskingHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // A query_params block as defined below. + QueryParams []DataMaskingQueryParamsInitParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` +} + type BackendResponseDataMaskingObservation struct { // A headers block as defined below. @@ -204,6 +258,18 @@ type BackendResponseDataMaskingParameters struct { QueryParams []DataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } +type BackendResponseInitParameters struct { + + // Number of payload bytes to log (up to 8192). + BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` + + // A data_masking block as defined below. + DataMasking []BackendResponseDataMaskingInitParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` + + // Specifies a list of headers to log. + HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` +} + type BackendResponseObservation struct { // Number of payload bytes to log (up to 8192). @@ -231,6 +297,15 @@ type BackendResponseParameters struct { HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } +type DataMaskingHeadersInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type DataMaskingHeadersObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -243,12 +318,21 @@ type DataMaskingHeadersObservation struct { type DataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type DataMaskingInitParameters struct { + + // A headers block as defined below. + Headers []HeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // A query_params block as defined below. + QueryParams []QueryParamsInitParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } type DataMaskingObservation struct { @@ -271,6 +355,15 @@ type DataMaskingParameters struct { QueryParams []QueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } +type DataMaskingQueryParamsInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type DataMaskingQueryParamsObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -283,12 +376,21 @@ type DataMaskingQueryParamsObservation struct { type DataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type FrontendRequestDataMaskingHeadersInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type FrontendRequestDataMaskingHeadersObservation struct { @@ -303,12 +405,21 @@ type FrontendRequestDataMaskingHeadersObservation struct { type FrontendRequestDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type FrontendRequestDataMaskingInitParameters struct { + + // A headers block as defined below. + Headers []FrontendRequestDataMaskingHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // A query_params block as defined below. + QueryParams []FrontendRequestDataMaskingQueryParamsInitParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } type FrontendRequestDataMaskingObservation struct { @@ -331,6 +442,15 @@ type FrontendRequestDataMaskingParameters struct { QueryParams []FrontendRequestDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } +type FrontendRequestDataMaskingQueryParamsInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type FrontendRequestDataMaskingQueryParamsObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -343,12 +463,24 @@ type FrontendRequestDataMaskingQueryParamsObservation struct { type FrontendRequestDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type FrontendRequestInitParameters struct { + + // Number of payload bytes to log (up to 8192). + BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` + + // A data_masking block as defined below. + DataMasking []FrontendRequestDataMaskingInitParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` + + // Specifies a list of headers to log. + HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } type FrontendRequestObservation struct { @@ -378,6 +510,15 @@ type FrontendRequestParameters struct { HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } +type FrontendResponseDataMaskingHeadersInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type FrontendResponseDataMaskingHeadersObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -390,12 +531,21 @@ type FrontendResponseDataMaskingHeadersObservation struct { type FrontendResponseDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type FrontendResponseDataMaskingInitParameters struct { + + // A headers block as defined below. + Headers []FrontendResponseDataMaskingHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // A query_params block as defined below. + QueryParams []FrontendResponseDataMaskingQueryParamsInitParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } type FrontendResponseDataMaskingObservation struct { @@ -418,6 +568,15 @@ type FrontendResponseDataMaskingParameters struct { QueryParams []FrontendResponseDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } +type FrontendResponseDataMaskingQueryParamsInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type FrontendResponseDataMaskingQueryParamsObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -430,12 +589,24 @@ type FrontendResponseDataMaskingQueryParamsObservation struct { type FrontendResponseDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type FrontendResponseInitParameters struct { + + // Number of payload bytes to log (up to 8192). + BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` + + // A data_masking block as defined below. + DataMasking []FrontendResponseDataMaskingInitParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` + + // Specifies a list of headers to log. + HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } type FrontendResponseObservation struct { @@ -465,6 +636,15 @@ type FrontendResponseParameters struct { HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } +type HeadersInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type HeadersObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -477,12 +657,21 @@ type HeadersObservation struct { type HeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type QueryParamsInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type QueryParamsObservation struct { @@ -497,18 +686,30 @@ type QueryParamsObservation struct { type QueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` } // APIDiagnosticSpec defines the desired state of APIDiagnostic type APIDiagnosticSpec struct { v1.ResourceSpec `json:",inline"` ForProvider APIDiagnosticParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider APIDiagnosticInitParameters `json:"initProvider,omitempty"` } // APIDiagnosticStatus defines the observed state of APIDiagnostic. diff --git a/apis/apimanagement/v1beta1/zz_apioperation_types.go b/apis/apimanagement/v1beta1/zz_apioperation_types.go index a480078ad..5ead38ef5 100755 --- a/apis/apimanagement/v1beta1/zz_apioperation_types.go +++ b/apis/apimanagement/v1beta1/zz_apioperation_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APIOperationInitParameters struct { + + // A description for this API Operation, which may include HTML formatting tags. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Display Name for this API Management Operation. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The HTTP Method used for this API Management Operation, like GET, DELETE, PUT or POST - but not limited to these values. + Method *string `json:"method,omitempty" tf:"method,omitempty"` + + // A request block as defined below. + Request []RequestInitParameters `json:"request,omitempty" tf:"request,omitempty"` + + // One or more response blocks as defined below. + Response []ResponseInitParameters `json:"response,omitempty" tf:"response,omitempty"` + + // One or more template_parameter blocks as defined below. + TemplateParameter []TemplateParameterInitParameters `json:"templateParameter,omitempty" tf:"template_parameter,omitempty"` + + // The relative URL Template identifying the target resource for this operation, which may include parameters. + URLTemplate *string `json:"urlTemplate,omitempty" tf:"url_template,omitempty"` +} + type APIOperationObservation struct { // The Name of the API Management Service where the API exists. Changing this forces a new resource to be created. @@ -119,6 +143,24 @@ type APIOperationParameters struct { URLTemplate *string `json:"urlTemplate,omitempty" tf:"url_template,omitempty"` } +type ExampleInitParameters struct { + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A URL that points to the literal example. + ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A short description for this example. + Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` + + // The example of the representation. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ExampleObservation struct { // A description of this Template Parameter. @@ -148,8 +190,8 @@ type ExampleParameters struct { ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. // +kubebuilder:validation:Optional @@ -160,6 +202,24 @@ type ExampleParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type FormParameterExampleInitParameters struct { + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A URL that points to the literal example. + ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A short description for this example. + Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` + + // The example of the representation. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type FormParameterExampleObservation struct { // A description of this Template Parameter. @@ -189,8 +249,8 @@ type FormParameterExampleParameters struct { ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. // +kubebuilder:validation:Optional @@ -201,6 +261,36 @@ type FormParameterExampleParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type FormParameterInitParameters struct { + + // The default value for this Template Parameter. + DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more example blocks as defined above. + Example []FormParameterExampleInitParameters `json:"example,omitempty" tf:"example,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this Template Parameter Required? + Required *bool `json:"required,omitempty" tf:"required,omitempty"` + + // The name of the Schema. + SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` + + // The Type of this Template Parameter, such as a string. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The type name defined by the Schema. + TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` + + // One or more acceptable values for this Template Parameter. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type FormParameterObservation struct { // The default value for this Template Parameter. @@ -246,20 +336,20 @@ type FormParameterParameters struct { Example []FormParameterExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? - // +kubebuilder:validation:Required - Required *bool `json:"required" tf:"required,omitempty"` + // +kubebuilder:validation:Optional + Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. // +kubebuilder:validation:Optional @@ -270,6 +360,24 @@ type FormParameterParameters struct { Values []*string `json:"values,omitempty" tf:"values,omitempty"` } +type HeaderExampleInitParameters struct { + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A URL that points to the literal example. + ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A short description for this example. + Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` + + // The example of the representation. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type HeaderExampleObservation struct { // A description of this Template Parameter. @@ -299,8 +407,8 @@ type HeaderExampleParameters struct { ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. // +kubebuilder:validation:Optional @@ -311,6 +419,36 @@ type HeaderExampleParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type HeaderInitParameters struct { + + // The default value for this Template Parameter. + DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more example blocks as defined above. + Example []ExampleInitParameters `json:"example,omitempty" tf:"example,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this Template Parameter Required? + Required *bool `json:"required,omitempty" tf:"required,omitempty"` + + // The name of the Schema. + SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` + + // The Type of this Template Parameter, such as a string. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The type name defined by the Schema. + TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` + + // One or more acceptable values for this Template Parameter. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type HeaderObservation struct { // The default value for this Template Parameter. @@ -356,20 +494,20 @@ type HeaderParameters struct { Example []ExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? - // +kubebuilder:validation:Required - Required *bool `json:"required" tf:"required,omitempty"` + // +kubebuilder:validation:Optional + Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. // +kubebuilder:validation:Optional @@ -380,6 +518,24 @@ type HeaderParameters struct { Values []*string `json:"values,omitempty" tf:"values,omitempty"` } +type QueryParameterExampleInitParameters struct { + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A URL that points to the literal example. + ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A short description for this example. + Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` + + // The example of the representation. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type QueryParameterExampleObservation struct { // A description of this Template Parameter. @@ -409,8 +565,8 @@ type QueryParameterExampleParameters struct { ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. // +kubebuilder:validation:Optional @@ -421,6 +577,36 @@ type QueryParameterExampleParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type QueryParameterInitParameters struct { + + // The default value for this Template Parameter. + DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more example blocks as defined above. + Example []QueryParameterExampleInitParameters `json:"example,omitempty" tf:"example,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this Template Parameter Required? + Required *bool `json:"required,omitempty" tf:"required,omitempty"` + + // The name of the Schema. + SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` + + // The Type of this Template Parameter, such as a string. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The type name defined by the Schema. + TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` + + // One or more acceptable values for this Template Parameter. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type QueryParameterObservation struct { // The default value for this Template Parameter. @@ -466,20 +652,20 @@ type QueryParameterParameters struct { Example []QueryParameterExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? - // +kubebuilder:validation:Required - Required *bool `json:"required" tf:"required,omitempty"` + // +kubebuilder:validation:Optional + Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. // +kubebuilder:validation:Optional @@ -490,6 +676,24 @@ type QueryParameterParameters struct { Values []*string `json:"values,omitempty" tf:"values,omitempty"` } +type RepresentationExampleInitParameters struct { + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A URL that points to the literal example. + ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A short description for this example. + Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` + + // The example of the representation. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type RepresentationExampleObservation struct { // A description of this Template Parameter. @@ -519,8 +723,8 @@ type RepresentationExampleParameters struct { ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. // +kubebuilder:validation:Optional @@ -531,6 +735,24 @@ type RepresentationExampleParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type RepresentationFormParameterExampleInitParameters struct { + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A URL that points to the literal example. + ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A short description for this example. + Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` + + // The example of the representation. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type RepresentationFormParameterExampleObservation struct { // A description of this Template Parameter. @@ -560,8 +782,8 @@ type RepresentationFormParameterExampleParameters struct { ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. // +kubebuilder:validation:Optional @@ -572,6 +794,36 @@ type RepresentationFormParameterExampleParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type RepresentationFormParameterInitParameters struct { + + // The default value for this Template Parameter. + DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more example blocks as defined above. + Example []RepresentationFormParameterExampleInitParameters `json:"example,omitempty" tf:"example,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this Template Parameter Required? + Required *bool `json:"required,omitempty" tf:"required,omitempty"` + + // The name of the Schema. + SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` + + // The Type of this Template Parameter, such as a string. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The type name defined by the Schema. + TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` + + // One or more acceptable values for this Template Parameter. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type RepresentationFormParameterObservation struct { // The default value for this Template Parameter. @@ -617,20 +869,20 @@ type RepresentationFormParameterParameters struct { Example []RepresentationFormParameterExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? - // +kubebuilder:validation:Required - Required *bool `json:"required" tf:"required,omitempty"` + // +kubebuilder:validation:Optional + Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. // +kubebuilder:validation:Optional @@ -641,6 +893,24 @@ type RepresentationFormParameterParameters struct { Values []*string `json:"values,omitempty" tf:"values,omitempty"` } +type RepresentationInitParameters struct { + + // The Content Type of this representation, such as application/json. + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` + + // One or more example blocks as defined above. + Example []RepresentationExampleInitParameters `json:"example,omitempty" tf:"example,omitempty"` + + // One or more form_parameter block as defined above. + FormParameter []FormParameterInitParameters `json:"formParameter,omitempty" tf:"form_parameter,omitempty"` + + // The name of the Schema. + SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` + + // The type name defined by the Schema. + TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` +} + type RepresentationObservation struct { // The Content Type of this representation, such as application/json. @@ -662,8 +932,8 @@ type RepresentationObservation struct { type RepresentationParameters struct { // The Content Type of this representation, such as application/json. - // +kubebuilder:validation:Required - ContentType *string `json:"contentType" tf:"content_type,omitempty"` + // +kubebuilder:validation:Optional + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` // One or more example blocks as defined above. // +kubebuilder:validation:Optional @@ -682,6 +952,21 @@ type RepresentationParameters struct { TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` } +type RequestInitParameters struct { + + // A description of the HTTP Request, which may include HTML tags. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more header blocks as defined above. + Header []HeaderInitParameters `json:"header,omitempty" tf:"header,omitempty"` + + // One or more query_parameter blocks as defined above. + QueryParameter []QueryParameterInitParameters `json:"queryParameter,omitempty" tf:"query_parameter,omitempty"` + + // One or more representation blocks as defined below. + Representation []RepresentationInitParameters `json:"representation,omitempty" tf:"representation,omitempty"` +} + type RequestObservation struct { // A description of the HTTP Request, which may include HTML tags. @@ -716,6 +1001,36 @@ type RequestParameters struct { Representation []RepresentationParameters `json:"representation,omitempty" tf:"representation,omitempty"` } +type ResponseHeaderInitParameters struct { + + // The default value for this Template Parameter. + DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more example blocks as defined above. + Example []HeaderExampleInitParameters `json:"example,omitempty" tf:"example,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this Template Parameter Required? + Required *bool `json:"required,omitempty" tf:"required,omitempty"` + + // The name of the Schema. + SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` + + // The Type of this Template Parameter, such as a string. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The type name defined by the Schema. + TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` + + // One or more acceptable values for this Template Parameter. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type ResponseHeaderObservation struct { // The default value for this Template Parameter. @@ -761,20 +1076,20 @@ type ResponseHeaderParameters struct { Example []HeaderExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? - // +kubebuilder:validation:Required - Required *bool `json:"required" tf:"required,omitempty"` + // +kubebuilder:validation:Optional + Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. // +kubebuilder:validation:Optional @@ -785,6 +1100,21 @@ type ResponseHeaderParameters struct { Values []*string `json:"values,omitempty" tf:"values,omitempty"` } +type ResponseInitParameters struct { + + // A description of the HTTP Response, which may include HTML tags. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more header blocks as defined above. + Header []ResponseHeaderInitParameters `json:"header,omitempty" tf:"header,omitempty"` + + // One or more representation blocks as defined below. + Representation []ResponseRepresentationInitParameters `json:"representation,omitempty" tf:"representation,omitempty"` + + // The HTTP Status Code. + StatusCode *float64 `json:"statusCode,omitempty" tf:"status_code,omitempty"` +} + type ResponseObservation struct { // A description of the HTTP Response, which may include HTML tags. @@ -815,8 +1145,26 @@ type ResponseParameters struct { Representation []ResponseRepresentationParameters `json:"representation,omitempty" tf:"representation,omitempty"` // The HTTP Status Code. - // +kubebuilder:validation:Required - StatusCode *float64 `json:"statusCode" tf:"status_code,omitempty"` + // +kubebuilder:validation:Optional + StatusCode *float64 `json:"statusCode,omitempty" tf:"status_code,omitempty"` +} + +type ResponseRepresentationExampleInitParameters struct { + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A URL that points to the literal example. + ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A short description for this example. + Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` + + // The example of the representation. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type ResponseRepresentationExampleObservation struct { @@ -848,8 +1196,8 @@ type ResponseRepresentationExampleParameters struct { ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. // +kubebuilder:validation:Optional @@ -860,6 +1208,24 @@ type ResponseRepresentationExampleParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type ResponseRepresentationInitParameters struct { + + // The Content Type of this representation, such as application/json. + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` + + // One or more example blocks as defined above. + Example []ResponseRepresentationExampleInitParameters `json:"example,omitempty" tf:"example,omitempty"` + + // One or more form_parameter block as defined above. + FormParameter []RepresentationFormParameterInitParameters `json:"formParameter,omitempty" tf:"form_parameter,omitempty"` + + // The name of the Schema. + SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` + + // The type name defined by the Schema. + TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` +} + type ResponseRepresentationObservation struct { // The Content Type of this representation, such as application/json. @@ -881,8 +1247,8 @@ type ResponseRepresentationObservation struct { type ResponseRepresentationParameters struct { // The Content Type of this representation, such as application/json. - // +kubebuilder:validation:Required - ContentType *string `json:"contentType" tf:"content_type,omitempty"` + // +kubebuilder:validation:Optional + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` // One or more example blocks as defined above. // +kubebuilder:validation:Optional @@ -901,6 +1267,24 @@ type ResponseRepresentationParameters struct { TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` } +type TemplateParameterExampleInitParameters struct { + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A URL that points to the literal example. + ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A short description for this example. + Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` + + // The example of the representation. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type TemplateParameterExampleObservation struct { // A description of this Template Parameter. @@ -930,8 +1314,8 @@ type TemplateParameterExampleParameters struct { ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. // +kubebuilder:validation:Optional @@ -942,6 +1326,36 @@ type TemplateParameterExampleParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type TemplateParameterInitParameters struct { + + // The default value for this Template Parameter. + DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` + + // A description of this Template Parameter. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more example blocks as defined above. + Example []TemplateParameterExampleInitParameters `json:"example,omitempty" tf:"example,omitempty"` + + // The Name of this Template Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this Template Parameter Required? + Required *bool `json:"required,omitempty" tf:"required,omitempty"` + + // The name of the Schema. + SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` + + // The Type of this Template Parameter, such as a string. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The type name defined by the Schema. + TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` + + // One or more acceptable values for this Template Parameter. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type TemplateParameterObservation struct { // The default value for this Template Parameter. @@ -987,20 +1401,20 @@ type TemplateParameterParameters struct { Example []TemplateParameterExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? - // +kubebuilder:validation:Required - Required *bool `json:"required" tf:"required,omitempty"` + // +kubebuilder:validation:Optional + Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. // +kubebuilder:validation:Optional @@ -1015,6 +1429,18 @@ type TemplateParameterParameters struct { type APIOperationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider APIOperationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider APIOperationInitParameters `json:"initProvider,omitempty"` } // APIOperationStatus defines the observed state of APIOperation. @@ -1035,9 +1461,9 @@ type APIOperationStatus struct { type APIOperation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.method)",message="method is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.urlTemplate)",message="urlTemplate is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.method) || has(self.initProvider.method)",message="method is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.urlTemplate) || has(self.initProvider.urlTemplate)",message="urlTemplate is a required parameter" Spec APIOperationSpec `json:"spec"` Status APIOperationStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apioperationpolicy_types.go b/apis/apimanagement/v1beta1/zz_apioperationpolicy_types.go index a74ea524e..3b1c5ba0c 100755 --- a/apis/apimanagement/v1beta1/zz_apioperationpolicy_types.go +++ b/apis/apimanagement/v1beta1/zz_apioperationpolicy_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APIOperationPolicyInitParameters struct { + + // The XML Content for this Policy. + XMLContent *string `json:"xmlContent,omitempty" tf:"xml_content,omitempty"` + + // A link to a Policy XML Document, which must be publicly available. + XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link,omitempty"` +} + type APIOperationPolicyObservation struct { // The name of the API Management Service. Changing this forces a new resource to be created. @@ -106,6 +115,18 @@ type APIOperationPolicyParameters struct { type APIOperationPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider APIOperationPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider APIOperationPolicyInitParameters `json:"initProvider,omitempty"` } // APIOperationPolicyStatus defines the observed state of APIOperationPolicy. diff --git a/apis/apimanagement/v1beta1/zz_apioperationtag_types.go b/apis/apimanagement/v1beta1/zz_apioperationtag_types.go index 262cfedfe..1c851101f 100755 --- a/apis/apimanagement/v1beta1/zz_apioperationtag_types.go +++ b/apis/apimanagement/v1beta1/zz_apioperationtag_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APIOperationTagInitParameters struct { + + // The display name of the API Management API Operation Tag. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` +} + type APIOperationTagObservation struct { // The ID of the API Management API Operation. Changing this forces a new API Management API Operation Tag to be created. @@ -50,6 +56,18 @@ type APIOperationTagParameters struct { type APIOperationTagSpec struct { v1.ResourceSpec `json:",inline"` ForProvider APIOperationTagParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider APIOperationTagInitParameters `json:"initProvider,omitempty"` } // APIOperationTagStatus defines the observed state of APIOperationTag. @@ -70,7 +88,7 @@ type APIOperationTagStatus struct { type APIOperationTag struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" Spec APIOperationTagSpec `json:"spec"` Status APIOperationTagStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apipolicy_types.go b/apis/apimanagement/v1beta1/zz_apipolicy_types.go index 4734b81cc..70db84397 100755 --- a/apis/apimanagement/v1beta1/zz_apipolicy_types.go +++ b/apis/apimanagement/v1beta1/zz_apipolicy_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APIPolicyInitParameters struct { + + // The XML Content for this Policy as a string. + XMLContent *string `json:"xmlContent,omitempty" tf:"xml_content,omitempty"` + + // A link to a Policy XML Document, which must be publicly available. + XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link,omitempty"` +} + type APIPolicyObservation struct { // The name of the API Management Service. Changing this forces a new resource to be created. @@ -88,6 +97,18 @@ type APIPolicyParameters struct { type APIPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider APIPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider APIPolicyInitParameters `json:"initProvider,omitempty"` } // APIPolicyStatus defines the observed state of APIPolicy. diff --git a/apis/apimanagement/v1beta1/zz_apirelease_types.go b/apis/apimanagement/v1beta1/zz_apirelease_types.go index a1358a37c..b9d777517 100755 --- a/apis/apimanagement/v1beta1/zz_apirelease_types.go +++ b/apis/apimanagement/v1beta1/zz_apirelease_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APIReleaseInitParameters struct { + + // The Release Notes. + Notes *string `json:"notes,omitempty" tf:"notes,omitempty"` +} + type APIReleaseObservation struct { // The ID of the API Management API. Changing this forces a new API Management API Release to be created. @@ -50,6 +56,18 @@ type APIReleaseParameters struct { type APIReleaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider APIReleaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider APIReleaseInitParameters `json:"initProvider,omitempty"` } // APIReleaseStatus defines the observed state of APIRelease. diff --git a/apis/apimanagement/v1beta1/zz_apischema_types.go b/apis/apimanagement/v1beta1/zz_apischema_types.go index b9dd86ba0..795c2405a 100755 --- a/apis/apimanagement/v1beta1/zz_apischema_types.go +++ b/apis/apimanagement/v1beta1/zz_apischema_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APISchemaInitParameters struct { + + // Types definitions. Used for Swagger/OpenAPI v2/v3 schemas only. + Components *string `json:"components,omitempty" tf:"components,omitempty"` + + // The content type of the API Schema. + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` + + // Types definitions. Used for Swagger/OpenAPI v1 schemas only. + Definitions *string `json:"definitions,omitempty" tf:"definitions,omitempty"` + + // The JSON escaped string defining the document representing the Schema. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type APISchemaObservation struct { // The Name of the API Management Service where the API exists. Changing this forces a new resource to be created. @@ -102,6 +117,18 @@ type APISchemaParameters struct { type APISchemaSpec struct { v1.ResourceSpec `json:",inline"` ForProvider APISchemaParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider APISchemaInitParameters `json:"initProvider,omitempty"` } // APISchemaStatus defines the observed state of APISchema. @@ -122,7 +149,7 @@ type APISchemaStatus struct { type APISchema struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.contentType)",message="contentType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.contentType) || has(self.initProvider.contentType)",message="contentType is a required parameter" Spec APISchemaSpec `json:"spec"` Status APISchemaStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apitag_types.go b/apis/apimanagement/v1beta1/zz_apitag_types.go index 7d19dd6d9..244e8fc55 100755 --- a/apis/apimanagement/v1beta1/zz_apitag_types.go +++ b/apis/apimanagement/v1beta1/zz_apitag_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APITagInitParameters struct { +} + type APITagObservation struct { // The ID of the API Management API. Changing this forces a new API Management API Tag to be created. @@ -43,6 +46,18 @@ type APITagParameters struct { type APITagSpec struct { v1.ResourceSpec `json:",inline"` ForProvider APITagParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider APITagInitParameters `json:"initProvider,omitempty"` } // APITagStatus defines the observed state of APITag. diff --git a/apis/apimanagement/v1beta1/zz_apiversionset_types.go b/apis/apimanagement/v1beta1/zz_apiversionset_types.go index 6aca9cb2d..a27aefbf8 100755 --- a/apis/apimanagement/v1beta1/zz_apiversionset_types.go +++ b/apis/apimanagement/v1beta1/zz_apiversionset_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APIVersionSetInitParameters struct { + + // The description of API Version Set. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The display name of this API Version Set. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The name of the Header which should be read from Inbound Requests which defines the API Version. + VersionHeaderName *string `json:"versionHeaderName,omitempty" tf:"version_header_name,omitempty"` + + // The name of the Query String which should be read from Inbound Requests which defines the API Version. + VersionQueryName *string `json:"versionQueryName,omitempty" tf:"version_query_name,omitempty"` + + // Specifies where in an Inbound HTTP Request that the API Version should be read from. Possible values are Header, Query and Segment. + VersioningScheme *string `json:"versioningScheme,omitempty" tf:"versioning_scheme,omitempty"` +} + type APIVersionSetObservation struct { // The name of the API Management Service in which the API Version Set should exist. May only contain alphanumeric characters and dashes up to 50 characters in length. Changing this forces a new resource to be created. @@ -93,6 +111,18 @@ type APIVersionSetParameters struct { type APIVersionSetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider APIVersionSetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider APIVersionSetInitParameters `json:"initProvider,omitempty"` } // APIVersionSetStatus defines the observed state of APIVersionSet. @@ -113,8 +143,8 @@ type APIVersionSetStatus struct { type APIVersionSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.versioningScheme)",message="versioningScheme is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.versioningScheme) || has(self.initProvider.versioningScheme)",message="versioningScheme is a required parameter" Spec APIVersionSetSpec `json:"spec"` Status APIVersionSetStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_authorizationserver_types.go b/apis/apimanagement/v1beta1/zz_authorizationserver_types.go index 7664ca3ac..be0f49690 100755 --- a/apis/apimanagement/v1beta1/zz_authorizationserver_types.go +++ b/apis/apimanagement/v1beta1/zz_authorizationserver_types.go @@ -13,6 +13,51 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthorizationServerInitParameters struct { + + // The OAUTH Authorization Endpoint. + AuthorizationEndpoint *string `json:"authorizationEndpoint,omitempty" tf:"authorization_endpoint,omitempty"` + + // The HTTP Verbs supported by the Authorization Endpoint. Possible values are DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT and TRACE. + AuthorizationMethods []*string `json:"authorizationMethods,omitempty" tf:"authorization_methods,omitempty"` + + // The mechanism by which Access Tokens are passed to the API. Possible values are authorizationHeader and query. + BearerTokenSendingMethods []*string `json:"bearerTokenSendingMethods,omitempty" tf:"bearer_token_sending_methods,omitempty"` + + // The Authentication Methods supported by the Token endpoint of this Authorization Server.. Possible values are Basic and Body. + ClientAuthenticationMethod []*string `json:"clientAuthenticationMethod,omitempty" tf:"client_authentication_method,omitempty"` + + // The Client/App ID registered with this Authorization Server. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The URI of page where Client/App Registration is performed for this Authorization Server. + ClientRegistrationEndpoint *string `json:"clientRegistrationEndpoint,omitempty" tf:"client_registration_endpoint,omitempty"` + + // The Default Scope used when requesting an Access Token, specified as a string containing space-delimited values. + DefaultScope *string `json:"defaultScope,omitempty" tf:"default_scope,omitempty"` + + // A description of the Authorization Server, which may contain HTML formatting tags. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The user-friendly name of this Authorization Server. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Form of Authorization Grants required when requesting an Access Token. Possible values are authorizationCode, clientCredentials, implicit and resourceOwnerPassword. + GrantTypes []*string `json:"grantTypes,omitempty" tf:"grant_types,omitempty"` + + // The username associated with the Resource Owner. + ResourceOwnerUsername *string `json:"resourceOwnerUsername,omitempty" tf:"resource_owner_username,omitempty"` + + // Does this Authorization Server support State? If this is set to true the client may use the state parameter to raise protocol security. + SupportState *bool `json:"supportState,omitempty" tf:"support_state,omitempty"` + + // A token_body_parameter block as defined below. + TokenBodyParameter []TokenBodyParameterInitParameters `json:"tokenBodyParameter,omitempty" tf:"token_body_parameter,omitempty"` + + // The OAUTH Token Endpoint. + TokenEndpoint *string `json:"tokenEndpoint,omitempty" tf:"token_endpoint,omitempty"` +} + type AuthorizationServerObservation struct { // The name of the API Management Service in which this Authorization Server should be created. Changing this forces a new resource to be created. @@ -160,6 +205,15 @@ type AuthorizationServerParameters struct { TokenEndpoint *string `json:"tokenEndpoint,omitempty" tf:"token_endpoint,omitempty"` } +type TokenBodyParameterInitParameters struct { + + // The Name of the Parameter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Value of the Parameter. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type TokenBodyParameterObservation struct { // The Name of the Parameter. @@ -172,18 +226,30 @@ type TokenBodyParameterObservation struct { type TokenBodyParameterParameters struct { // The Name of the Parameter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Value of the Parameter. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` } // AuthorizationServerSpec defines the desired state of AuthorizationServer type AuthorizationServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AuthorizationServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AuthorizationServerInitParameters `json:"initProvider,omitempty"` } // AuthorizationServerStatus defines the observed state of AuthorizationServer. @@ -204,12 +270,12 @@ type AuthorizationServerStatus struct { type AuthorizationServer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authorizationEndpoint)",message="authorizationEndpoint is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authorizationMethods)",message="authorizationMethods is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId)",message="clientId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientRegistrationEndpoint)",message="clientRegistrationEndpoint is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.grantTypes)",message="grantTypes is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.authorizationEndpoint) || has(self.initProvider.authorizationEndpoint)",message="authorizationEndpoint is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.authorizationMethods) || has(self.initProvider.authorizationMethods)",message="authorizationMethods is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientId) || has(self.initProvider.clientId)",message="clientId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientRegistrationEndpoint) || has(self.initProvider.clientRegistrationEndpoint)",message="clientRegistrationEndpoint is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.grantTypes) || has(self.initProvider.grantTypes)",message="grantTypes is a required parameter" Spec AuthorizationServerSpec `json:"spec"` Status AuthorizationServerStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_backend_types.go b/apis/apimanagement/v1beta1/zz_backend_types.go index cac24b24d..79ce60d5a 100755 --- a/apis/apimanagement/v1beta1/zz_backend_types.go +++ b/apis/apimanagement/v1beta1/zz_backend_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthorizationInitParameters struct { + + // The authentication Parameter value. + Parameter *string `json:"parameter,omitempty" tf:"parameter,omitempty"` + + // The authentication Scheme name. + Scheme *string `json:"scheme,omitempty" tf:"scheme,omitempty"` +} + type AuthorizationObservation struct { // The authentication Parameter value. @@ -33,6 +42,36 @@ type AuthorizationParameters struct { Scheme *string `json:"scheme,omitempty" tf:"scheme,omitempty"` } +type BackendInitParameters struct { + + // A credentials block as documented below. + Credentials []CredentialsInitParameters `json:"credentials,omitempty" tf:"credentials,omitempty"` + + // The description of the backend. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The protocol used by the backend host. Possible values are http or soap. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // A proxy block as documented below. + Proxy []BackendProxyInitParameters `json:"proxy,omitempty" tf:"proxy,omitempty"` + + // The management URI of the backend host in an external system. This URI can be the ARM Resource ID of Logic Apps, Function Apps or API Apps, or the management endpoint of a Service Fabric cluster. + ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` + + // A service_fabric_cluster block as documented below. + ServiceFabricCluster []ServiceFabricClusterInitParameters `json:"serviceFabricCluster,omitempty" tf:"service_fabric_cluster,omitempty"` + + // A tls block as documented below. + TLS []TLSInitParameters `json:"tls,omitempty" tf:"tls,omitempty"` + + // The title of the backend. + Title *string `json:"title,omitempty" tf:"title,omitempty"` + + // The URL of the backend host. + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type BackendObservation struct { // The Name of the API Management Service where this backend should be created. Changing this forces a new resource to be created. @@ -137,6 +176,15 @@ type BackendParameters struct { URL *string `json:"url,omitempty" tf:"url,omitempty"` } +type BackendProxyInitParameters struct { + + // The URL of the proxy server. + URL *string `json:"url,omitempty" tf:"url,omitempty"` + + // The username to connect to the proxy server. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type BackendProxyObservation struct { // The URL of the proxy server. @@ -153,12 +201,27 @@ type BackendProxyParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // The URL of the proxy server. - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` // The username to connect to the proxy server. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type CredentialsInitParameters struct { + + // An authorization block as defined below. + Authorization []AuthorizationInitParameters `json:"authorization,omitempty" tf:"authorization,omitempty"` + + // A list of client certificate thumbprints to present to the backend host. The certificates must exist within the API Management Service. + Certificate []*string `json:"certificate,omitempty" tf:"certificate,omitempty"` + + // A mapping of header parameters to pass to the backend host. The keys are the header names and the values are a comma separated string of header values. This is converted to a list before being passed to the API. + Header map[string]*string `json:"header,omitempty" tf:"header,omitempty"` + + // A mapping of query parameters to pass to the backend host. The keys are the query names and the values are a comma separated string of query values. This is converted to a list before being passed to the API. + Query map[string]*string `json:"query,omitempty" tf:"query,omitempty"` } type CredentialsObservation struct { @@ -195,6 +258,15 @@ type CredentialsParameters struct { Query map[string]*string `json:"query,omitempty" tf:"query,omitempty"` } +type ServerX509NameInitParameters struct { + + // The thumbprint for the issuer of the certificate. + IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint,omitempty" tf:"issuer_certificate_thumbprint,omitempty"` + + // The common name of the certificate. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type ServerX509NameObservation struct { // The thumbprint for the issuer of the certificate. @@ -207,12 +279,33 @@ type ServerX509NameObservation struct { type ServerX509NameParameters struct { // The thumbprint for the issuer of the certificate. - // +kubebuilder:validation:Required - IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint" tf:"issuer_certificate_thumbprint,omitempty"` + // +kubebuilder:validation:Optional + IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint,omitempty" tf:"issuer_certificate_thumbprint,omitempty"` // The common name of the certificate. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type ServiceFabricClusterInitParameters struct { + + // The client certificate resource id for the management endpoint. + ClientCertificateID *string `json:"clientCertificateId,omitempty" tf:"client_certificate_id,omitempty"` + + // The client certificate thumbprint for the management endpoint. + ClientCertificateThumbprint *string `json:"clientCertificateThumbprint,omitempty" tf:"client_certificate_thumbprint,omitempty"` + + // A list of cluster management endpoints. + ManagementEndpoints []*string `json:"managementEndpoints,omitempty" tf:"management_endpoints,omitempty"` + + // The maximum number of retries when attempting resolve the partition. + MaxPartitionResolutionRetries *float64 `json:"maxPartitionResolutionRetries,omitempty" tf:"max_partition_resolution_retries,omitempty"` + + // A list of thumbprints of the server certificates of the Service Fabric cluster. + ServerCertificateThumbprints []*string `json:"serverCertificateThumbprints,omitempty" tf:"server_certificate_thumbprints,omitempty"` + + // One or more server_x509_name blocks as documented below. + ServerX509Name []ServerX509NameInitParameters `json:"serverX509Name,omitempty" tf:"server_x509_name,omitempty"` } type ServiceFabricClusterObservation struct { @@ -247,12 +340,12 @@ type ServiceFabricClusterParameters struct { ClientCertificateThumbprint *string `json:"clientCertificateThumbprint,omitempty" tf:"client_certificate_thumbprint,omitempty"` // A list of cluster management endpoints. - // +kubebuilder:validation:Required - ManagementEndpoints []*string `json:"managementEndpoints" tf:"management_endpoints,omitempty"` + // +kubebuilder:validation:Optional + ManagementEndpoints []*string `json:"managementEndpoints,omitempty" tf:"management_endpoints,omitempty"` // The maximum number of retries when attempting resolve the partition. - // +kubebuilder:validation:Required - MaxPartitionResolutionRetries *float64 `json:"maxPartitionResolutionRetries" tf:"max_partition_resolution_retries,omitempty"` + // +kubebuilder:validation:Optional + MaxPartitionResolutionRetries *float64 `json:"maxPartitionResolutionRetries,omitempty" tf:"max_partition_resolution_retries,omitempty"` // A list of thumbprints of the server certificates of the Service Fabric cluster. // +kubebuilder:validation:Optional @@ -263,6 +356,15 @@ type ServiceFabricClusterParameters struct { ServerX509Name []ServerX509NameParameters `json:"serverX509Name,omitempty" tf:"server_x509_name,omitempty"` } +type TLSInitParameters struct { + + // Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for the backend host. + ValidateCertificateChain *bool `json:"validateCertificateChain,omitempty" tf:"validate_certificate_chain,omitempty"` + + // Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for the backend host. + ValidateCertificateName *bool `json:"validateCertificateName,omitempty" tf:"validate_certificate_name,omitempty"` +} + type TLSObservation struct { // Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for the backend host. @@ -287,6 +389,18 @@ type TLSParameters struct { type BackendSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackendParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackendInitParameters `json:"initProvider,omitempty"` } // BackendStatus defines the observed state of Backend. @@ -307,8 +421,8 @@ type BackendStatus struct { type Backend struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol)",message="protocol is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url)",message="url is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.protocol) || has(self.initProvider.protocol)",message="protocol is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || has(self.initProvider.url)",message="url is a required parameter" Spec BackendSpec `json:"spec"` Status BackendStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_certificate_types.go b/apis/apimanagement/v1beta1/zz_certificate_types.go index 13eefabb6..a3902072e 100755 --- a/apis/apimanagement/v1beta1/zz_certificate_types.go +++ b/apis/apimanagement/v1beta1/zz_certificate_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CertificateInitParameters_2 struct { + + // The Client ID of the User Assigned Managed Identity to use for retrieving certificate. + KeyVaultIdentityClientID *string `json:"keyVaultIdentityClientId,omitempty" tf:"key_vault_identity_client_id,omitempty"` +} + type CertificateObservation_2 struct { // The Name of the API Management Service where this Service should be created. Changing this forces a new resource to be created. @@ -99,6 +105,18 @@ type CertificateParameters_2 struct { type CertificateSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CertificateParameters_2 `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CertificateInitParameters_2 `json:"initProvider,omitempty"` } // CertificateStatus defines the observed state of Certificate. diff --git a/apis/apimanagement/v1beta1/zz_diagnostic_types.go b/apis/apimanagement/v1beta1/zz_diagnostic_types.go index 96a5f3f06..c0c0e8ba4 100755 --- a/apis/apimanagement/v1beta1/zz_diagnostic_types.go +++ b/apis/apimanagement/v1beta1/zz_diagnostic_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackendRequestDataMaskingHeadersInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type BackendRequestDataMaskingHeadersObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -25,12 +34,21 @@ type BackendRequestDataMaskingHeadersObservation struct { type BackendRequestDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type BackendRequestDataMaskingInitParameters struct { + + // A headers block as defined below. + Headers []BackendRequestDataMaskingHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // A query_params block as defined below. + QueryParams []BackendRequestDataMaskingQueryParamsInitParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } type BackendRequestDataMaskingObservation struct { @@ -53,6 +71,15 @@ type BackendRequestDataMaskingParameters struct { QueryParams []BackendRequestDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } +type BackendRequestDataMaskingQueryParamsInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type BackendRequestDataMaskingQueryParamsObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -65,12 +92,21 @@ type BackendRequestDataMaskingQueryParamsObservation struct { type BackendRequestDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type BackendResponseDataMaskingHeadersInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type BackendResponseDataMaskingHeadersObservation struct { @@ -85,12 +121,21 @@ type BackendResponseDataMaskingHeadersObservation struct { type BackendResponseDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type BackendResponseDataMaskingQueryParamsInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type BackendResponseDataMaskingQueryParamsObservation struct { @@ -105,12 +150,24 @@ type BackendResponseDataMaskingQueryParamsObservation struct { type BackendResponseDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type DiagnosticBackendRequestInitParameters struct { + + // Number of payload bytes to log (up to 8192). + BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` + + // A data_masking block as defined below. + DataMasking []BackendRequestDataMaskingInitParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` + + // Specifies a list of headers to log. + HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } type DiagnosticBackendRequestObservation struct { @@ -140,6 +197,15 @@ type DiagnosticBackendRequestParameters struct { HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } +type DiagnosticBackendResponseDataMaskingInitParameters struct { + + // A headers block as defined below. + Headers []BackendResponseDataMaskingHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // A query_params block as defined below. + QueryParams []BackendResponseDataMaskingQueryParamsInitParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` +} + type DiagnosticBackendResponseDataMaskingObservation struct { // A headers block as defined below. @@ -160,6 +226,18 @@ type DiagnosticBackendResponseDataMaskingParameters struct { QueryParams []BackendResponseDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } +type DiagnosticBackendResponseInitParameters struct { + + // Number of payload bytes to log (up to 8192). + BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` + + // A data_masking block as defined below. + DataMasking []DiagnosticBackendResponseDataMaskingInitParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` + + // Specifies a list of headers to log. + HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` +} + type DiagnosticBackendResponseObservation struct { // Number of payload bytes to log (up to 8192). @@ -187,6 +265,15 @@ type DiagnosticBackendResponseParameters struct { HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } +type DiagnosticFrontendRequestDataMaskingHeadersInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type DiagnosticFrontendRequestDataMaskingHeadersObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -199,12 +286,21 @@ type DiagnosticFrontendRequestDataMaskingHeadersObservation struct { type DiagnosticFrontendRequestDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type DiagnosticFrontendRequestDataMaskingInitParameters struct { + + // A headers block as defined below. + Headers []DiagnosticFrontendRequestDataMaskingHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // A query_params block as defined below. + QueryParams []DiagnosticFrontendRequestDataMaskingQueryParamsInitParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } type DiagnosticFrontendRequestDataMaskingObservation struct { @@ -227,6 +323,15 @@ type DiagnosticFrontendRequestDataMaskingParameters struct { QueryParams []DiagnosticFrontendRequestDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } +type DiagnosticFrontendRequestDataMaskingQueryParamsInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type DiagnosticFrontendRequestDataMaskingQueryParamsObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -239,12 +344,24 @@ type DiagnosticFrontendRequestDataMaskingQueryParamsObservation struct { type DiagnosticFrontendRequestDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type DiagnosticFrontendRequestInitParameters struct { + + // Number of payload bytes to log (up to 8192). + BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` + + // A data_masking block as defined below. + DataMasking []DiagnosticFrontendRequestDataMaskingInitParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` + + // Specifies a list of headers to log. + HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } type DiagnosticFrontendRequestObservation struct { @@ -274,6 +391,15 @@ type DiagnosticFrontendRequestParameters struct { HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } +type DiagnosticFrontendResponseDataMaskingHeadersInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type DiagnosticFrontendResponseDataMaskingHeadersObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -286,12 +412,21 @@ type DiagnosticFrontendResponseDataMaskingHeadersObservation struct { type DiagnosticFrontendResponseDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type DiagnosticFrontendResponseDataMaskingInitParameters struct { + + // A headers block as defined below. + Headers []DiagnosticFrontendResponseDataMaskingHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // A query_params block as defined below. + QueryParams []DiagnosticFrontendResponseDataMaskingQueryParamsInitParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } type DiagnosticFrontendResponseDataMaskingObservation struct { @@ -314,6 +449,15 @@ type DiagnosticFrontendResponseDataMaskingParameters struct { QueryParams []DiagnosticFrontendResponseDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } +type DiagnosticFrontendResponseDataMaskingQueryParamsInitParameters struct { + + // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The name of the header or the query parameter to mask. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type DiagnosticFrontendResponseDataMaskingQueryParamsObservation struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. @@ -326,12 +470,24 @@ type DiagnosticFrontendResponseDataMaskingQueryParamsObservation struct { type DiagnosticFrontendResponseDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type DiagnosticFrontendResponseInitParameters struct { + + // Number of payload bytes to log (up to 8192). + BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` + + // A data_masking block as defined below. + DataMasking []DiagnosticFrontendResponseDataMaskingInitParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` + + // Specifies a list of headers to log. + HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } type DiagnosticFrontendResponseObservation struct { @@ -361,6 +517,39 @@ type DiagnosticFrontendResponseParameters struct { HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } +type DiagnosticInitParameters struct { + + // Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings. + AlwaysLogErrors *bool `json:"alwaysLogErrors,omitempty" tf:"always_log_errors,omitempty"` + + // A backend_request block as defined below. + BackendRequest []DiagnosticBackendRequestInitParameters `json:"backendRequest,omitempty" tf:"backend_request,omitempty"` + + // A backend_response block as defined below. + BackendResponse []DiagnosticBackendResponseInitParameters `json:"backendResponse,omitempty" tf:"backend_response,omitempty"` + + // A frontend_request block as defined below. + FrontendRequest []DiagnosticFrontendRequestInitParameters `json:"frontendRequest,omitempty" tf:"frontend_request,omitempty"` + + // A frontend_response block as defined below. + FrontendResponse []DiagnosticFrontendResponseInitParameters `json:"frontendResponse,omitempty" tf:"frontend_response,omitempty"` + + // The HTTP Correlation Protocol to use. Possible values are None, Legacy or W3C. + HTTPCorrelationProtocol *string `json:"httpCorrelationProtocol,omitempty" tf:"http_correlation_protocol,omitempty"` + + // Log client IP address. + LogClientIP *bool `json:"logClientIp,omitempty" tf:"log_client_ip,omitempty"` + + // The format of the Operation Name for Application Insights telemetries. Possible values are Name, and Url. Defaults to Name. + OperationNameFormat *string `json:"operationNameFormat,omitempty" tf:"operation_name_format,omitempty"` + + // Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between 0.0 and 100.0. + SamplingPercentage *float64 `json:"samplingPercentage,omitempty" tf:"sampling_percentage,omitempty"` + + // Logging verbosity. Possible values are verbose, information or error. + Verbosity *string `json:"verbosity,omitempty" tf:"verbosity,omitempty"` +} + type DiagnosticObservation struct { // The id of the target API Management Logger where the API Management Diagnostic should be saved. @@ -493,6 +682,18 @@ type DiagnosticParameters struct { type DiagnosticSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DiagnosticParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DiagnosticInitParameters `json:"initProvider,omitempty"` } // DiagnosticStatus defines the observed state of Diagnostic. diff --git a/apis/apimanagement/v1beta1/zz_emailtemplate_types.go b/apis/apimanagement/v1beta1/zz_emailtemplate_types.go index 6dff29811..a11d80808 100755 --- a/apis/apimanagement/v1beta1/zz_emailtemplate_types.go +++ b/apis/apimanagement/v1beta1/zz_emailtemplate_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EmailTemplateInitParameters struct { + + // The body of the Email. Its format has to be a well-formed HTML document. + Body *string `json:"body,omitempty" tf:"body,omitempty"` + + // The subject of the Email. + Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` +} + type EmailTemplateObservation struct { // The name of the API Management Service in which the Email Template should exist. Changing this forces a new API Management Email Template to be created. @@ -85,6 +94,18 @@ type EmailTemplateParameters struct { type EmailTemplateSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EmailTemplateParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EmailTemplateInitParameters `json:"initProvider,omitempty"` } // EmailTemplateStatus defines the observed state of EmailTemplate. @@ -105,8 +126,8 @@ type EmailTemplateStatus struct { type EmailTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body)",message="body is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subject)",message="subject is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.body) || has(self.initProvider.body)",message="body is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subject) || has(self.initProvider.subject)",message="subject is a required parameter" Spec EmailTemplateSpec `json:"spec"` Status EmailTemplateStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_gateway_types.go b/apis/apimanagement/v1beta1/zz_gateway_types.go index 8ef2972fc..339cb21af 100755 --- a/apis/apimanagement/v1beta1/zz_gateway_types.go +++ b/apis/apimanagement/v1beta1/zz_gateway_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type GatewayInitParameters struct { + + // The description of the API Management Gateway. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A location_data block as documented below. + LocationData []LocationDataInitParameters `json:"locationData,omitempty" tf:"location_data,omitempty"` +} + type GatewayObservation struct { // The ID of the API Management Resource in which the gateway will be created. Changing this forces a new API Management Gateway resource to be created. @@ -53,6 +62,21 @@ type GatewayParameters struct { LocationData []LocationDataParameters `json:"locationData,omitempty" tf:"location_data,omitempty"` } +type LocationDataInitParameters struct { + + // The city or locality where the resource is located. + City *string `json:"city,omitempty" tf:"city,omitempty"` + + // The district, state, or province where the resource is located. + District *string `json:"district,omitempty" tf:"district,omitempty"` + + // A canonical name for the geographic or physical location. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The country or region where the resource is located. + Region *string `json:"region,omitempty" tf:"region,omitempty"` +} + type LocationDataObservation struct { // The city or locality where the resource is located. @@ -79,8 +103,8 @@ type LocationDataParameters struct { District *string `json:"district,omitempty" tf:"district,omitempty"` // A canonical name for the geographic or physical location. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The country or region where the resource is located. // +kubebuilder:validation:Optional @@ -91,6 +115,18 @@ type LocationDataParameters struct { type GatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider GatewayParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider GatewayInitParameters `json:"initProvider,omitempty"` } // GatewayStatus defines the observed state of Gateway. @@ -111,7 +147,7 @@ type GatewayStatus struct { type Gateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.locationData)",message="locationData is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.locationData) || has(self.initProvider.locationData)",message="locationData is a required parameter" Spec GatewaySpec `json:"spec"` Status GatewayStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_gatewayapi_types.go b/apis/apimanagement/v1beta1/zz_gatewayapi_types.go index 4520b87d0..a30a18614 100755 --- a/apis/apimanagement/v1beta1/zz_gatewayapi_types.go +++ b/apis/apimanagement/v1beta1/zz_gatewayapi_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type GatewayAPIInitParameters struct { +} + type GatewayAPIObservation struct { // The Identifier of the API Management API within the API Management Service. Changing this forces a new API Management Gateway API to be created. @@ -60,6 +63,18 @@ type GatewayAPIParameters struct { type GatewayAPISpec struct { v1.ResourceSpec `json:",inline"` ForProvider GatewayAPIParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider GatewayAPIInitParameters `json:"initProvider,omitempty"` } // GatewayAPIStatus defines the observed state of GatewayAPI. diff --git a/apis/apimanagement/v1beta1/zz_generated.deepcopy.go b/apis/apimanagement/v1beta1/zz_generated.deepcopy.go index 8ffac0600..6ff06b5e7 100644 --- a/apis/apimanagement/v1beta1/zz_generated.deepcopy.go +++ b/apis/apimanagement/v1beta1/zz_generated.deepcopy.go @@ -68,6 +68,79 @@ func (in *APIDiagnostic) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIDiagnosticInitParameters) DeepCopyInto(out *APIDiagnosticInitParameters) { + *out = *in + if in.AlwaysLogErrors != nil { + in, out := &in.AlwaysLogErrors, &out.AlwaysLogErrors + *out = new(bool) + **out = **in + } + if in.BackendRequest != nil { + in, out := &in.BackendRequest, &out.BackendRequest + *out = make([]BackendRequestInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BackendResponse != nil { + in, out := &in.BackendResponse, &out.BackendResponse + *out = make([]BackendResponseInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FrontendRequest != nil { + in, out := &in.FrontendRequest, &out.FrontendRequest + *out = make([]FrontendRequestInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FrontendResponse != nil { + in, out := &in.FrontendResponse, &out.FrontendResponse + *out = make([]FrontendResponseInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPCorrelationProtocol != nil { + in, out := &in.HTTPCorrelationProtocol, &out.HTTPCorrelationProtocol + *out = new(string) + **out = **in + } + if in.LogClientIP != nil { + in, out := &in.LogClientIP, &out.LogClientIP + *out = new(bool) + **out = **in + } + if in.OperationNameFormat != nil { + in, out := &in.OperationNameFormat, &out.OperationNameFormat + *out = new(string) + **out = **in + } + if in.SamplingPercentage != nil { + in, out := &in.SamplingPercentage, &out.SamplingPercentage + *out = new(float64) + **out = **in + } + if in.Verbosity != nil { + in, out := &in.Verbosity, &out.Verbosity + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIDiagnosticInitParameters. +func (in *APIDiagnosticInitParameters) DeepCopy() *APIDiagnosticInitParameters { + if in == nil { + return nil + } + out := new(APIDiagnosticInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APIDiagnosticList) DeepCopyInto(out *APIDiagnosticList) { *out = *in @@ -336,6 +409,7 @@ func (in *APIDiagnosticSpec) DeepCopyInto(out *APIDiagnosticSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIDiagnosticSpec. @@ -365,6 +439,144 @@ func (in *APIDiagnosticStatus) DeepCopy() *APIDiagnosticStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIInitParameters) DeepCopyInto(out *APIInitParameters) { + *out = *in + if in.APIType != nil { + in, out := &in.APIType, &out.APIType + *out = new(string) + **out = **in + } + if in.Contact != nil { + in, out := &in.Contact, &out.Contact + *out = make([]ContactInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Import != nil { + in, out := &in.Import, &out.Import + *out = make([]ImportInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.License != nil { + in, out := &in.License, &out.License + *out = make([]LicenseInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Oauth2Authorization != nil { + in, out := &in.Oauth2Authorization, &out.Oauth2Authorization + *out = make([]Oauth2AuthorizationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OpenIDAuthentication != nil { + in, out := &in.OpenIDAuthentication, &out.OpenIDAuthentication + *out = make([]OpenIDAuthenticationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.Protocols != nil { + in, out := &in.Protocols, &out.Protocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Revision != nil { + in, out := &in.Revision, &out.Revision + *out = new(string) + **out = **in + } + if in.RevisionDescription != nil { + in, out := &in.RevisionDescription, &out.RevisionDescription + *out = new(string) + **out = **in + } + if in.ServiceURL != nil { + in, out := &in.ServiceURL, &out.ServiceURL + *out = new(string) + **out = **in + } + if in.SoapPassThrough != nil { + in, out := &in.SoapPassThrough, &out.SoapPassThrough + *out = new(bool) + **out = **in + } + if in.SourceAPIID != nil { + in, out := &in.SourceAPIID, &out.SourceAPIID + *out = new(string) + **out = **in + } + if in.SubscriptionKeyParameterNames != nil { + in, out := &in.SubscriptionKeyParameterNames, &out.SubscriptionKeyParameterNames + *out = make([]SubscriptionKeyParameterNamesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubscriptionRequired != nil { + in, out := &in.SubscriptionRequired, &out.SubscriptionRequired + *out = new(bool) + **out = **in + } + if in.TermsOfServiceURL != nil { + in, out := &in.TermsOfServiceURL, &out.TermsOfServiceURL + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } + if in.VersionDescription != nil { + in, out := &in.VersionDescription, &out.VersionDescription + *out = new(string) + **out = **in + } + if in.VersionSetID != nil { + in, out := &in.VersionSetID, &out.VersionSetID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIInitParameters. +func (in *APIInitParameters) DeepCopy() *APIInitParameters { + if in == nil { + return nil + } + out := new(APIInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APIList) DeepCopyInto(out *APIList) { *out = *in @@ -587,6 +799,62 @@ func (in *APIOperation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIOperationInitParameters) DeepCopyInto(out *APIOperationInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Method != nil { + in, out := &in.Method, &out.Method + *out = new(string) + **out = **in + } + if in.Request != nil { + in, out := &in.Request, &out.Request + *out = make([]RequestInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Response != nil { + in, out := &in.Response, &out.Response + *out = make([]ResponseInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TemplateParameter != nil { + in, out := &in.TemplateParameter, &out.TemplateParameter + *out = make([]TemplateParameterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLTemplate != nil { + in, out := &in.URLTemplate, &out.URLTemplate + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIOperationInitParameters. +func (in *APIOperationInitParameters) DeepCopy() *APIOperationInitParameters { + if in == nil { + return nil + } + out := new(APIOperationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APIOperationList) DeepCopyInto(out *APIOperationList) { *out = *in @@ -824,18 +1092,43 @@ func (in *APIOperationPolicy) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *APIOperationPolicyList) DeepCopyInto(out *APIOperationPolicyList) { +func (in *APIOperationPolicyInitParameters) DeepCopyInto(out *APIOperationPolicyInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]APIOperationPolicy, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.XMLContent != nil { + in, out := &in.XMLContent, &out.XMLContent + *out = new(string) + **out = **in } -} + if in.XMLLink != nil { + in, out := &in.XMLLink, &out.XMLLink + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIOperationPolicyInitParameters. +func (in *APIOperationPolicyInitParameters) DeepCopy() *APIOperationPolicyInitParameters { + if in == nil { + return nil + } + out := new(APIOperationPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIOperationPolicyList) DeepCopyInto(out *APIOperationPolicyList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]APIOperationPolicy, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIOperationPolicyList. func (in *APIOperationPolicyList) DeepCopy() *APIOperationPolicyList { @@ -995,6 +1288,7 @@ func (in *APIOperationPolicySpec) DeepCopyInto(out *APIOperationPolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIOperationPolicySpec. @@ -1029,6 +1323,7 @@ func (in *APIOperationSpec) DeepCopyInto(out *APIOperationSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIOperationSpec. @@ -1085,6 +1380,26 @@ func (in *APIOperationTag) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIOperationTagInitParameters) DeepCopyInto(out *APIOperationTagInitParameters) { + *out = *in + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIOperationTagInitParameters. +func (in *APIOperationTagInitParameters) DeepCopy() *APIOperationTagInitParameters { + if in == nil { + return nil + } + out := new(APIOperationTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APIOperationTagList) DeepCopyInto(out *APIOperationTagList) { *out = *in @@ -1187,6 +1502,7 @@ func (in *APIOperationTagSpec) DeepCopyInto(out *APIOperationTagSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIOperationTagSpec. @@ -1411,6 +1727,31 @@ func (in *APIPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIPolicyInitParameters) DeepCopyInto(out *APIPolicyInitParameters) { + *out = *in + if in.XMLContent != nil { + in, out := &in.XMLContent, &out.XMLContent + *out = new(string) + **out = **in + } + if in.XMLLink != nil { + in, out := &in.XMLLink, &out.XMLLink + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIPolicyInitParameters. +func (in *APIPolicyInitParameters) DeepCopy() *APIPolicyInitParameters { + if in == nil { + return nil + } + out := new(APIPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APIPolicyList) DeepCopyInto(out *APIPolicyList) { *out = *in @@ -1563,6 +1904,7 @@ func (in *APIPolicySpec) DeepCopyInto(out *APIPolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIPolicySpec. @@ -1619,6 +1961,26 @@ func (in *APIRelease) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIReleaseInitParameters) DeepCopyInto(out *APIReleaseInitParameters) { + *out = *in + if in.Notes != nil { + in, out := &in.Notes, &out.Notes + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIReleaseInitParameters. +func (in *APIReleaseInitParameters) DeepCopy() *APIReleaseInitParameters { + if in == nil { + return nil + } + out := new(APIReleaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APIReleaseList) DeepCopyInto(out *APIReleaseList) { *out = *in @@ -1721,6 +2083,7 @@ func (in *APIReleaseSpec) DeepCopyInto(out *APIReleaseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIReleaseSpec. @@ -1777,6 +2140,41 @@ func (in *APISchema) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APISchemaInitParameters) DeepCopyInto(out *APISchemaInitParameters) { + *out = *in + if in.Components != nil { + in, out := &in.Components, &out.Components + *out = new(string) + **out = **in + } + if in.ContentType != nil { + in, out := &in.ContentType, &out.ContentType + *out = new(string) + **out = **in + } + if in.Definitions != nil { + in, out := &in.Definitions, &out.Definitions + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APISchemaInitParameters. +func (in *APISchemaInitParameters) DeepCopy() *APISchemaInitParameters { + if in == nil { + return nil + } + out := new(APISchemaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APISchemaList) DeepCopyInto(out *APISchemaList) { *out = *in @@ -1949,6 +2347,7 @@ func (in *APISchemaSpec) DeepCopyInto(out *APISchemaSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APISchemaSpec. @@ -1983,6 +2382,7 @@ func (in *APISpec) DeepCopyInto(out *APISpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APISpec. @@ -2039,6 +2439,21 @@ func (in *APITag) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APITagInitParameters) DeepCopyInto(out *APITagInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APITagInitParameters. +func (in *APITagInitParameters) DeepCopy() *APITagInitParameters { + if in == nil { + return nil + } + out := new(APITagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APITagList) DeepCopyInto(out *APITagList) { *out = *in @@ -2131,6 +2546,7 @@ func (in *APITagSpec) DeepCopyInto(out *APITagSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APITagSpec. @@ -2187,6 +2603,46 @@ func (in *APIVersionSet) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIVersionSetInitParameters) DeepCopyInto(out *APIVersionSetInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.VersionHeaderName != nil { + in, out := &in.VersionHeaderName, &out.VersionHeaderName + *out = new(string) + **out = **in + } + if in.VersionQueryName != nil { + in, out := &in.VersionQueryName, &out.VersionQueryName + *out = new(string) + **out = **in + } + if in.VersioningScheme != nil { + in, out := &in.VersioningScheme, &out.VersioningScheme + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIVersionSetInitParameters. +func (in *APIVersionSetInitParameters) DeepCopy() *APIVersionSetInitParameters { + if in == nil { + return nil + } + out := new(APIVersionSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APIVersionSetList) DeepCopyInto(out *APIVersionSetList) { *out = *in @@ -2349,6 +2805,7 @@ func (in *APIVersionSetSpec) DeepCopyInto(out *APIVersionSetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIVersionSetSpec. @@ -2378,6 +2835,57 @@ func (in *APIVersionSetStatus) DeepCopy() *APIVersionSetStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AdditionalLocationInitParameters) DeepCopyInto(out *AdditionalLocationInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.GatewayDisabled != nil { + in, out := &in.GatewayDisabled, &out.GatewayDisabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicIPAddressID != nil { + in, out := &in.PublicIPAddressID, &out.PublicIPAddressID + *out = new(string) + **out = **in + } + if in.VirtualNetworkConfiguration != nil { + in, out := &in.VirtualNetworkConfiguration, &out.VirtualNetworkConfiguration + *out = make([]VirtualNetworkConfigurationInitParameters, len(*in)) + copy(*out, *in) + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalLocationInitParameters. +func (in *AdditionalLocationInitParameters) DeepCopy() *AdditionalLocationInitParameters { + if in == nil { + return nil + } + out := new(AdditionalLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AdditionalLocationObservation) DeepCopyInto(out *AdditionalLocationObservation) { *out = *in @@ -2511,6 +3019,21 @@ func (in *AdditionalLocationParameters) DeepCopy() *AdditionalLocationParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsInitParameters) DeepCopyInto(out *ApplicationInsightsInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsInitParameters. +func (in *ApplicationInsightsInitParameters) DeepCopy() *ApplicationInsightsInitParameters { + if in == nil { + return nil + } + out := new(ApplicationInsightsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationInsightsObservation) DeepCopyInto(out *ApplicationInsightsObservation) { *out = *in @@ -2542,6 +3065,31 @@ func (in *ApplicationInsightsParameters) DeepCopy() *ApplicationInsightsParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthorizationInitParameters) DeepCopyInto(out *AuthorizationInitParameters) { + *out = *in + if in.Parameter != nil { + in, out := &in.Parameter, &out.Parameter + *out = new(string) + **out = **in + } + if in.Scheme != nil { + in, out := &in.Scheme, &out.Scheme + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthorizationInitParameters. +func (in *AuthorizationInitParameters) DeepCopy() *AuthorizationInitParameters { + if in == nil { + return nil + } + out := new(AuthorizationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthorizationObservation) DeepCopyInto(out *AuthorizationObservation) { *out = *in @@ -2620,15 +3168,126 @@ func (in *AuthorizationServer) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AuthorizationServerList) DeepCopyInto(out *AuthorizationServerList) { +func (in *AuthorizationServerInitParameters) DeepCopyInto(out *AuthorizationServerInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]AuthorizationServer, len(*in)) + if in.AuthorizationEndpoint != nil { + in, out := &in.AuthorizationEndpoint, &out.AuthorizationEndpoint + *out = new(string) + **out = **in + } + if in.AuthorizationMethods != nil { + in, out := &in.AuthorizationMethods, &out.AuthorizationMethods + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.BearerTokenSendingMethods != nil { + in, out := &in.BearerTokenSendingMethods, &out.BearerTokenSendingMethods + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientAuthenticationMethod != nil { + in, out := &in.ClientAuthenticationMethod, &out.ClientAuthenticationMethod + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientRegistrationEndpoint != nil { + in, out := &in.ClientRegistrationEndpoint, &out.ClientRegistrationEndpoint + *out = new(string) + **out = **in + } + if in.DefaultScope != nil { + in, out := &in.DefaultScope, &out.DefaultScope + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.GrantTypes != nil { + in, out := &in.GrantTypes, &out.GrantTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ResourceOwnerUsername != nil { + in, out := &in.ResourceOwnerUsername, &out.ResourceOwnerUsername + *out = new(string) + **out = **in + } + if in.SupportState != nil { + in, out := &in.SupportState, &out.SupportState + *out = new(bool) + **out = **in + } + if in.TokenBodyParameter != nil { + in, out := &in.TokenBodyParameter, &out.TokenBodyParameter + *out = make([]TokenBodyParameterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TokenEndpoint != nil { + in, out := &in.TokenEndpoint, &out.TokenEndpoint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthorizationServerInitParameters. +func (in *AuthorizationServerInitParameters) DeepCopy() *AuthorizationServerInitParameters { + if in == nil { + return nil + } + out := new(AuthorizationServerInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthorizationServerList) DeepCopyInto(out *AuthorizationServerList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]AuthorizationServer, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } } @@ -2933,6 +3592,7 @@ func (in *AuthorizationServerSpec) DeepCopyInto(out *AuthorizationServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthorizationServerSpec. @@ -2989,6 +3649,74 @@ func (in *Backend) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendInitParameters) DeepCopyInto(out *BackendInitParameters) { + *out = *in + if in.Credentials != nil { + in, out := &in.Credentials, &out.Credentials + *out = make([]CredentialsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.Proxy != nil { + in, out := &in.Proxy, &out.Proxy + *out = make([]BackendProxyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } + if in.ServiceFabricCluster != nil { + in, out := &in.ServiceFabricCluster, &out.ServiceFabricCluster + *out = make([]ServiceFabricClusterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TLS != nil { + in, out := &in.TLS, &out.TLS + *out = make([]TLSInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Title != nil { + in, out := &in.Title, &out.Title + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendInitParameters. +func (in *BackendInitParameters) DeepCopy() *BackendInitParameters { + if in == nil { + return nil + } + out := new(BackendInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendList) DeepCopyInto(out *BackendList) { *out = *in @@ -3202,6 +3930,31 @@ func (in *BackendParameters) DeepCopy() *BackendParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendProxyInitParameters) DeepCopyInto(out *BackendProxyInitParameters) { + *out = *in + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendProxyInitParameters. +func (in *BackendProxyInitParameters) DeepCopy() *BackendProxyInitParameters { + if in == nil { + return nil + } + out := new(BackendProxyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendProxyObservation) DeepCopyInto(out *BackendProxyObservation) { *out = *in @@ -3257,6 +4010,31 @@ func (in *BackendProxyParameters) DeepCopy() *BackendProxyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendRequestDataMaskingHeadersInitParameters) DeepCopyInto(out *BackendRequestDataMaskingHeadersInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendRequestDataMaskingHeadersInitParameters. +func (in *BackendRequestDataMaskingHeadersInitParameters) DeepCopy() *BackendRequestDataMaskingHeadersInitParameters { + if in == nil { + return nil + } + out := new(BackendRequestDataMaskingHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendRequestDataMaskingHeadersObservation) DeepCopyInto(out *BackendRequestDataMaskingHeadersObservation) { *out = *in @@ -3307,6 +4085,35 @@ func (in *BackendRequestDataMaskingHeadersParameters) DeepCopy() *BackendRequest return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendRequestDataMaskingInitParameters) DeepCopyInto(out *BackendRequestDataMaskingInitParameters) { + *out = *in + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]BackendRequestDataMaskingHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryParams != nil { + in, out := &in.QueryParams, &out.QueryParams + *out = make([]BackendRequestDataMaskingQueryParamsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendRequestDataMaskingInitParameters. +func (in *BackendRequestDataMaskingInitParameters) DeepCopy() *BackendRequestDataMaskingInitParameters { + if in == nil { + return nil + } + out := new(BackendRequestDataMaskingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendRequestDataMaskingObservation) DeepCopyInto(out *BackendRequestDataMaskingObservation) { *out = *in @@ -3365,6 +4172,31 @@ func (in *BackendRequestDataMaskingParameters) DeepCopy() *BackendRequestDataMas return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendRequestDataMaskingQueryParamsInitParameters) DeepCopyInto(out *BackendRequestDataMaskingQueryParamsInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendRequestDataMaskingQueryParamsInitParameters. +func (in *BackendRequestDataMaskingQueryParamsInitParameters) DeepCopy() *BackendRequestDataMaskingQueryParamsInitParameters { + if in == nil { + return nil + } + out := new(BackendRequestDataMaskingQueryParamsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendRequestDataMaskingQueryParamsObservation) DeepCopyInto(out *BackendRequestDataMaskingQueryParamsObservation) { *out = *in @@ -3416,7 +4248,7 @@ func (in *BackendRequestDataMaskingQueryParamsParameters) DeepCopy() *BackendReq } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BackendRequestObservation) DeepCopyInto(out *BackendRequestObservation) { +func (in *BackendRequestInitParameters) DeepCopyInto(out *BackendRequestInitParameters) { *out = *in if in.BodyBytes != nil { in, out := &in.BodyBytes, &out.BodyBytes @@ -3425,7 +4257,7 @@ func (in *BackendRequestObservation) DeepCopyInto(out *BackendRequestObservation } if in.DataMasking != nil { in, out := &in.DataMasking, &out.DataMasking - *out = make([]DataMaskingObservation, len(*in)) + *out = make([]DataMaskingInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -3443,18 +4275,18 @@ func (in *BackendRequestObservation) DeepCopyInto(out *BackendRequestObservation } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendRequestObservation. -func (in *BackendRequestObservation) DeepCopy() *BackendRequestObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendRequestInitParameters. +func (in *BackendRequestInitParameters) DeepCopy() *BackendRequestInitParameters { if in == nil { return nil } - out := new(BackendRequestObservation) + out := new(BackendRequestInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BackendRequestParameters) DeepCopyInto(out *BackendRequestParameters) { +func (in *BackendRequestObservation) DeepCopyInto(out *BackendRequestObservation) { *out = *in if in.BodyBytes != nil { in, out := &in.BodyBytes, &out.BodyBytes @@ -3463,7 +4295,7 @@ func (in *BackendRequestParameters) DeepCopyInto(out *BackendRequestParameters) } if in.DataMasking != nil { in, out := &in.DataMasking, &out.DataMasking - *out = make([]DataMaskingParameters, len(*in)) + *out = make([]DataMaskingObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -3481,7 +4313,45 @@ func (in *BackendRequestParameters) DeepCopyInto(out *BackendRequestParameters) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendRequestParameters. +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendRequestObservation. +func (in *BackendRequestObservation) DeepCopy() *BackendRequestObservation { + if in == nil { + return nil + } + out := new(BackendRequestObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendRequestParameters) DeepCopyInto(out *BackendRequestParameters) { + *out = *in + if in.BodyBytes != nil { + in, out := &in.BodyBytes, &out.BodyBytes + *out = new(float64) + **out = **in + } + if in.DataMasking != nil { + in, out := &in.DataMasking, &out.DataMasking + *out = make([]DataMaskingParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HeadersToLog != nil { + in, out := &in.HeadersToLog, &out.HeadersToLog + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendRequestParameters. func (in *BackendRequestParameters) DeepCopy() *BackendRequestParameters { if in == nil { return nil @@ -3491,6 +4361,31 @@ func (in *BackendRequestParameters) DeepCopy() *BackendRequestParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendResponseDataMaskingHeadersInitParameters) DeepCopyInto(out *BackendResponseDataMaskingHeadersInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendResponseDataMaskingHeadersInitParameters. +func (in *BackendResponseDataMaskingHeadersInitParameters) DeepCopy() *BackendResponseDataMaskingHeadersInitParameters { + if in == nil { + return nil + } + out := new(BackendResponseDataMaskingHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendResponseDataMaskingHeadersObservation) DeepCopyInto(out *BackendResponseDataMaskingHeadersObservation) { *out = *in @@ -3541,6 +4436,35 @@ func (in *BackendResponseDataMaskingHeadersParameters) DeepCopy() *BackendRespon return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendResponseDataMaskingInitParameters) DeepCopyInto(out *BackendResponseDataMaskingInitParameters) { + *out = *in + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]DataMaskingHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryParams != nil { + in, out := &in.QueryParams, &out.QueryParams + *out = make([]DataMaskingQueryParamsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendResponseDataMaskingInitParameters. +func (in *BackendResponseDataMaskingInitParameters) DeepCopy() *BackendResponseDataMaskingInitParameters { + if in == nil { + return nil + } + out := new(BackendResponseDataMaskingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendResponseDataMaskingObservation) DeepCopyInto(out *BackendResponseDataMaskingObservation) { *out = *in @@ -3599,6 +4523,31 @@ func (in *BackendResponseDataMaskingParameters) DeepCopy() *BackendResponseDataM return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendResponseDataMaskingQueryParamsInitParameters) DeepCopyInto(out *BackendResponseDataMaskingQueryParamsInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendResponseDataMaskingQueryParamsInitParameters. +func (in *BackendResponseDataMaskingQueryParamsInitParameters) DeepCopy() *BackendResponseDataMaskingQueryParamsInitParameters { + if in == nil { + return nil + } + out := new(BackendResponseDataMaskingQueryParamsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendResponseDataMaskingQueryParamsObservation) DeepCopyInto(out *BackendResponseDataMaskingQueryParamsObservation) { *out = *in @@ -3649,6 +4598,44 @@ func (in *BackendResponseDataMaskingQueryParamsParameters) DeepCopy() *BackendRe return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendResponseInitParameters) DeepCopyInto(out *BackendResponseInitParameters) { + *out = *in + if in.BodyBytes != nil { + in, out := &in.BodyBytes, &out.BodyBytes + *out = new(float64) + **out = **in + } + if in.DataMasking != nil { + in, out := &in.DataMasking, &out.DataMasking + *out = make([]BackendResponseDataMaskingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HeadersToLog != nil { + in, out := &in.HeadersToLog, &out.HeadersToLog + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendResponseInitParameters. +func (in *BackendResponseInitParameters) DeepCopy() *BackendResponseInitParameters { + if in == nil { + return nil + } + out := new(BackendResponseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendResponseObservation) DeepCopyInto(out *BackendResponseObservation) { *out = *in @@ -3730,6 +4717,7 @@ func (in *BackendSpec) DeepCopyInto(out *BackendSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendSpec. @@ -3786,6 +4774,46 @@ func (in *Certificate) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateInitParameters) DeepCopyInto(out *CertificateInitParameters) { + *out = *in + if in.StoreName != nil { + in, out := &in.StoreName, &out.StoreName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInitParameters. +func (in *CertificateInitParameters) DeepCopy() *CertificateInitParameters { + if in == nil { + return nil + } + out := new(CertificateInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateInitParameters_2) DeepCopyInto(out *CertificateInitParameters_2) { + *out = *in + if in.KeyVaultIdentityClientID != nil { + in, out := &in.KeyVaultIdentityClientID, &out.KeyVaultIdentityClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInitParameters_2. +func (in *CertificateInitParameters_2) DeepCopy() *CertificateInitParameters_2 { + if in == nil { + return nil + } + out := new(CertificateInitParameters_2) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificateList) DeepCopyInto(out *CertificateList) { *out = *in @@ -4014,6 +5042,7 @@ func (in *CertificateSpec) DeepCopyInto(out *CertificateSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateSpec. @@ -4043,6 +5072,36 @@ func (in *CertificateStatus) DeepCopy() *CertificateStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContactInitParameters) DeepCopyInto(out *ContactInitParameters) { + *out = *in + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContactInitParameters. +func (in *ContactInitParameters) DeepCopy() *ContactInitParameters { + if in == nil { + return nil + } + out := new(ContactInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContactObservation) DeepCopyInto(out *ContactObservation) { *out = *in @@ -4103,6 +5162,69 @@ func (in *ContactParameters) DeepCopy() *ContactParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CredentialsInitParameters) DeepCopyInto(out *CredentialsInitParameters) { + *out = *in + if in.Authorization != nil { + in, out := &in.Authorization, &out.Authorization + *out = make([]AuthorizationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialsInitParameters. +func (in *CredentialsInitParameters) DeepCopy() *CredentialsInitParameters { + if in == nil { + return nil + } + out := new(CredentialsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CredentialsObservation) DeepCopyInto(out *CredentialsObservation) { *out = *in @@ -4230,7 +5352,7 @@ func (in *CredentialsParameters) DeepCopy() *CredentialsParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataMaskingHeadersObservation) DeepCopyInto(out *DataMaskingHeadersObservation) { +func (in *DataMaskingHeadersInitParameters) DeepCopyInto(out *DataMaskingHeadersInitParameters) { *out = *in if in.Mode != nil { in, out := &in.Mode, &out.Mode @@ -4244,8 +5366,33 @@ func (in *DataMaskingHeadersObservation) DeepCopyInto(out *DataMaskingHeadersObs } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataMaskingHeadersObservation. -func (in *DataMaskingHeadersObservation) DeepCopy() *DataMaskingHeadersObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataMaskingHeadersInitParameters. +func (in *DataMaskingHeadersInitParameters) DeepCopy() *DataMaskingHeadersInitParameters { + if in == nil { + return nil + } + out := new(DataMaskingHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataMaskingHeadersObservation) DeepCopyInto(out *DataMaskingHeadersObservation) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataMaskingHeadersObservation. +func (in *DataMaskingHeadersObservation) DeepCopy() *DataMaskingHeadersObservation { if in == nil { return nil } @@ -4279,6 +5426,35 @@ func (in *DataMaskingHeadersParameters) DeepCopy() *DataMaskingHeadersParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataMaskingInitParameters) DeepCopyInto(out *DataMaskingInitParameters) { + *out = *in + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]HeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryParams != nil { + in, out := &in.QueryParams, &out.QueryParams + *out = make([]QueryParamsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataMaskingInitParameters. +func (in *DataMaskingInitParameters) DeepCopy() *DataMaskingInitParameters { + if in == nil { + return nil + } + out := new(DataMaskingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataMaskingObservation) DeepCopyInto(out *DataMaskingObservation) { *out = *in @@ -4337,6 +5513,31 @@ func (in *DataMaskingParameters) DeepCopy() *DataMaskingParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataMaskingQueryParamsInitParameters) DeepCopyInto(out *DataMaskingQueryParamsInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataMaskingQueryParamsInitParameters. +func (in *DataMaskingQueryParamsInitParameters) DeepCopy() *DataMaskingQueryParamsInitParameters { + if in == nil { + return nil + } + out := new(DataMaskingQueryParamsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataMaskingQueryParamsObservation) DeepCopyInto(out *DataMaskingQueryParamsObservation) { *out = *in @@ -4387,6 +5588,36 @@ func (in *DataMaskingQueryParamsParameters) DeepCopy() *DataMaskingQueryParamsPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DelegationInitParameters) DeepCopyInto(out *DelegationInitParameters) { + *out = *in + if in.SubscriptionsEnabled != nil { + in, out := &in.SubscriptionsEnabled, &out.SubscriptionsEnabled + *out = new(bool) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } + if in.UserRegistrationEnabled != nil { + in, out := &in.UserRegistrationEnabled, &out.UserRegistrationEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DelegationInitParameters. +func (in *DelegationInitParameters) DeepCopy() *DelegationInitParameters { + if in == nil { + return nil + } + out := new(DelegationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DelegationObservation) DeepCopyInto(out *DelegationObservation) { *out = *in @@ -4452,6 +5683,21 @@ func (in *DelegationParameters) DeepCopy() *DelegationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeveloperPortalInitParameters) DeepCopyInto(out *DeveloperPortalInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeveloperPortalInitParameters. +func (in *DeveloperPortalInitParameters) DeepCopy() *DeveloperPortalInitParameters { + if in == nil { + return nil + } + out := new(DeveloperPortalInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DeveloperPortalObservation) DeepCopyInto(out *DeveloperPortalObservation) { *out = *in @@ -4554,6 +5800,44 @@ func (in *Diagnostic) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticBackendRequestInitParameters) DeepCopyInto(out *DiagnosticBackendRequestInitParameters) { + *out = *in + if in.BodyBytes != nil { + in, out := &in.BodyBytes, &out.BodyBytes + *out = new(float64) + **out = **in + } + if in.DataMasking != nil { + in, out := &in.DataMasking, &out.DataMasking + *out = make([]BackendRequestDataMaskingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HeadersToLog != nil { + in, out := &in.HeadersToLog, &out.HeadersToLog + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticBackendRequestInitParameters. +func (in *DiagnosticBackendRequestInitParameters) DeepCopy() *DiagnosticBackendRequestInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticBackendRequestInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticBackendRequestObservation) DeepCopyInto(out *DiagnosticBackendRequestObservation) { *out = *in @@ -4630,6 +5914,35 @@ func (in *DiagnosticBackendRequestParameters) DeepCopy() *DiagnosticBackendReque return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticBackendResponseDataMaskingInitParameters) DeepCopyInto(out *DiagnosticBackendResponseDataMaskingInitParameters) { + *out = *in + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]BackendResponseDataMaskingHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryParams != nil { + in, out := &in.QueryParams, &out.QueryParams + *out = make([]BackendResponseDataMaskingQueryParamsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticBackendResponseDataMaskingInitParameters. +func (in *DiagnosticBackendResponseDataMaskingInitParameters) DeepCopy() *DiagnosticBackendResponseDataMaskingInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticBackendResponseDataMaskingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticBackendResponseDataMaskingObservation) DeepCopyInto(out *DiagnosticBackendResponseDataMaskingObservation) { *out = *in @@ -4688,6 +6001,44 @@ func (in *DiagnosticBackendResponseDataMaskingParameters) DeepCopy() *Diagnostic return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticBackendResponseInitParameters) DeepCopyInto(out *DiagnosticBackendResponseInitParameters) { + *out = *in + if in.BodyBytes != nil { + in, out := &in.BodyBytes, &out.BodyBytes + *out = new(float64) + **out = **in + } + if in.DataMasking != nil { + in, out := &in.DataMasking, &out.DataMasking + *out = make([]DiagnosticBackendResponseDataMaskingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HeadersToLog != nil { + in, out := &in.HeadersToLog, &out.HeadersToLog + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticBackendResponseInitParameters. +func (in *DiagnosticBackendResponseInitParameters) DeepCopy() *DiagnosticBackendResponseInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticBackendResponseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticBackendResponseObservation) DeepCopyInto(out *DiagnosticBackendResponseObservation) { *out = *in @@ -4764,6 +6115,31 @@ func (in *DiagnosticBackendResponseParameters) DeepCopy() *DiagnosticBackendResp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticFrontendRequestDataMaskingHeadersInitParameters) DeepCopyInto(out *DiagnosticFrontendRequestDataMaskingHeadersInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendRequestDataMaskingHeadersInitParameters. +func (in *DiagnosticFrontendRequestDataMaskingHeadersInitParameters) DeepCopy() *DiagnosticFrontendRequestDataMaskingHeadersInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticFrontendRequestDataMaskingHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticFrontendRequestDataMaskingHeadersObservation) DeepCopyInto(out *DiagnosticFrontendRequestDataMaskingHeadersObservation) { *out = *in @@ -4814,6 +6190,35 @@ func (in *DiagnosticFrontendRequestDataMaskingHeadersParameters) DeepCopy() *Dia return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticFrontendRequestDataMaskingInitParameters) DeepCopyInto(out *DiagnosticFrontendRequestDataMaskingInitParameters) { + *out = *in + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]DiagnosticFrontendRequestDataMaskingHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryParams != nil { + in, out := &in.QueryParams, &out.QueryParams + *out = make([]DiagnosticFrontendRequestDataMaskingQueryParamsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendRequestDataMaskingInitParameters. +func (in *DiagnosticFrontendRequestDataMaskingInitParameters) DeepCopy() *DiagnosticFrontendRequestDataMaskingInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticFrontendRequestDataMaskingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticFrontendRequestDataMaskingObservation) DeepCopyInto(out *DiagnosticFrontendRequestDataMaskingObservation) { *out = *in @@ -4873,7 +6278,7 @@ func (in *DiagnosticFrontendRequestDataMaskingParameters) DeepCopy() *Diagnostic } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DiagnosticFrontendRequestDataMaskingQueryParamsObservation) DeepCopyInto(out *DiagnosticFrontendRequestDataMaskingQueryParamsObservation) { +func (in *DiagnosticFrontendRequestDataMaskingQueryParamsInitParameters) DeepCopyInto(out *DiagnosticFrontendRequestDataMaskingQueryParamsInitParameters) { *out = *in if in.Mode != nil { in, out := &in.Mode, &out.Mode @@ -4887,18 +6292,18 @@ func (in *DiagnosticFrontendRequestDataMaskingQueryParamsObservation) DeepCopyIn } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendRequestDataMaskingQueryParamsObservation. -func (in *DiagnosticFrontendRequestDataMaskingQueryParamsObservation) DeepCopy() *DiagnosticFrontendRequestDataMaskingQueryParamsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendRequestDataMaskingQueryParamsInitParameters. +func (in *DiagnosticFrontendRequestDataMaskingQueryParamsInitParameters) DeepCopy() *DiagnosticFrontendRequestDataMaskingQueryParamsInitParameters { if in == nil { return nil } - out := new(DiagnosticFrontendRequestDataMaskingQueryParamsObservation) + out := new(DiagnosticFrontendRequestDataMaskingQueryParamsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DiagnosticFrontendRequestDataMaskingQueryParamsParameters) DeepCopyInto(out *DiagnosticFrontendRequestDataMaskingQueryParamsParameters) { +func (in *DiagnosticFrontendRequestDataMaskingQueryParamsObservation) DeepCopyInto(out *DiagnosticFrontendRequestDataMaskingQueryParamsObservation) { *out = *in if in.Mode != nil { in, out := &in.Mode, &out.Mode @@ -4912,23 +6317,86 @@ func (in *DiagnosticFrontendRequestDataMaskingQueryParamsParameters) DeepCopyInt } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendRequestDataMaskingQueryParamsParameters. -func (in *DiagnosticFrontendRequestDataMaskingQueryParamsParameters) DeepCopy() *DiagnosticFrontendRequestDataMaskingQueryParamsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendRequestDataMaskingQueryParamsObservation. +func (in *DiagnosticFrontendRequestDataMaskingQueryParamsObservation) DeepCopy() *DiagnosticFrontendRequestDataMaskingQueryParamsObservation { if in == nil { return nil } - out := new(DiagnosticFrontendRequestDataMaskingQueryParamsParameters) + out := new(DiagnosticFrontendRequestDataMaskingQueryParamsObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DiagnosticFrontendRequestObservation) DeepCopyInto(out *DiagnosticFrontendRequestObservation) { +func (in *DiagnosticFrontendRequestDataMaskingQueryParamsParameters) DeepCopyInto(out *DiagnosticFrontendRequestDataMaskingQueryParamsParameters) { *out = *in - if in.BodyBytes != nil { - in, out := &in.BodyBytes, &out.BodyBytes - *out = new(float64) - **out = **in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendRequestDataMaskingQueryParamsParameters. +func (in *DiagnosticFrontendRequestDataMaskingQueryParamsParameters) DeepCopy() *DiagnosticFrontendRequestDataMaskingQueryParamsParameters { + if in == nil { + return nil + } + out := new(DiagnosticFrontendRequestDataMaskingQueryParamsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticFrontendRequestInitParameters) DeepCopyInto(out *DiagnosticFrontendRequestInitParameters) { + *out = *in + if in.BodyBytes != nil { + in, out := &in.BodyBytes, &out.BodyBytes + *out = new(float64) + **out = **in + } + if in.DataMasking != nil { + in, out := &in.DataMasking, &out.DataMasking + *out = make([]DiagnosticFrontendRequestDataMaskingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HeadersToLog != nil { + in, out := &in.HeadersToLog, &out.HeadersToLog + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendRequestInitParameters. +func (in *DiagnosticFrontendRequestInitParameters) DeepCopy() *DiagnosticFrontendRequestInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticFrontendRequestInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticFrontendRequestObservation) DeepCopyInto(out *DiagnosticFrontendRequestObservation) { + *out = *in + if in.BodyBytes != nil { + in, out := &in.BodyBytes, &out.BodyBytes + *out = new(float64) + **out = **in } if in.DataMasking != nil { in, out := &in.DataMasking, &out.DataMasking @@ -4998,6 +6466,31 @@ func (in *DiagnosticFrontendRequestParameters) DeepCopy() *DiagnosticFrontendReq return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticFrontendResponseDataMaskingHeadersInitParameters) DeepCopyInto(out *DiagnosticFrontendResponseDataMaskingHeadersInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendResponseDataMaskingHeadersInitParameters. +func (in *DiagnosticFrontendResponseDataMaskingHeadersInitParameters) DeepCopy() *DiagnosticFrontendResponseDataMaskingHeadersInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticFrontendResponseDataMaskingHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticFrontendResponseDataMaskingHeadersObservation) DeepCopyInto(out *DiagnosticFrontendResponseDataMaskingHeadersObservation) { *out = *in @@ -5048,6 +6541,35 @@ func (in *DiagnosticFrontendResponseDataMaskingHeadersParameters) DeepCopy() *Di return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticFrontendResponseDataMaskingInitParameters) DeepCopyInto(out *DiagnosticFrontendResponseDataMaskingInitParameters) { + *out = *in + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]DiagnosticFrontendResponseDataMaskingHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryParams != nil { + in, out := &in.QueryParams, &out.QueryParams + *out = make([]DiagnosticFrontendResponseDataMaskingQueryParamsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendResponseDataMaskingInitParameters. +func (in *DiagnosticFrontendResponseDataMaskingInitParameters) DeepCopy() *DiagnosticFrontendResponseDataMaskingInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticFrontendResponseDataMaskingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticFrontendResponseDataMaskingObservation) DeepCopyInto(out *DiagnosticFrontendResponseDataMaskingObservation) { *out = *in @@ -5106,6 +6628,31 @@ func (in *DiagnosticFrontendResponseDataMaskingParameters) DeepCopy() *Diagnosti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticFrontendResponseDataMaskingQueryParamsInitParameters) DeepCopyInto(out *DiagnosticFrontendResponseDataMaskingQueryParamsInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendResponseDataMaskingQueryParamsInitParameters. +func (in *DiagnosticFrontendResponseDataMaskingQueryParamsInitParameters) DeepCopy() *DiagnosticFrontendResponseDataMaskingQueryParamsInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticFrontendResponseDataMaskingQueryParamsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticFrontendResponseDataMaskingQueryParamsObservation) DeepCopyInto(out *DiagnosticFrontendResponseDataMaskingQueryParamsObservation) { *out = *in @@ -5156,6 +6703,44 @@ func (in *DiagnosticFrontendResponseDataMaskingQueryParamsParameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticFrontendResponseInitParameters) DeepCopyInto(out *DiagnosticFrontendResponseInitParameters) { + *out = *in + if in.BodyBytes != nil { + in, out := &in.BodyBytes, &out.BodyBytes + *out = new(float64) + **out = **in + } + if in.DataMasking != nil { + in, out := &in.DataMasking, &out.DataMasking + *out = make([]DiagnosticFrontendResponseDataMaskingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HeadersToLog != nil { + in, out := &in.HeadersToLog, &out.HeadersToLog + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticFrontendResponseInitParameters. +func (in *DiagnosticFrontendResponseInitParameters) DeepCopy() *DiagnosticFrontendResponseInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticFrontendResponseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticFrontendResponseObservation) DeepCopyInto(out *DiagnosticFrontendResponseObservation) { *out = *in @@ -5232,6 +6817,79 @@ func (in *DiagnosticFrontendResponseParameters) DeepCopy() *DiagnosticFrontendRe return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticInitParameters) DeepCopyInto(out *DiagnosticInitParameters) { + *out = *in + if in.AlwaysLogErrors != nil { + in, out := &in.AlwaysLogErrors, &out.AlwaysLogErrors + *out = new(bool) + **out = **in + } + if in.BackendRequest != nil { + in, out := &in.BackendRequest, &out.BackendRequest + *out = make([]DiagnosticBackendRequestInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BackendResponse != nil { + in, out := &in.BackendResponse, &out.BackendResponse + *out = make([]DiagnosticBackendResponseInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FrontendRequest != nil { + in, out := &in.FrontendRequest, &out.FrontendRequest + *out = make([]DiagnosticFrontendRequestInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FrontendResponse != nil { + in, out := &in.FrontendResponse, &out.FrontendResponse + *out = make([]DiagnosticFrontendResponseInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPCorrelationProtocol != nil { + in, out := &in.HTTPCorrelationProtocol, &out.HTTPCorrelationProtocol + *out = new(string) + **out = **in + } + if in.LogClientIP != nil { + in, out := &in.LogClientIP, &out.LogClientIP + *out = new(bool) + **out = **in + } + if in.OperationNameFormat != nil { + in, out := &in.OperationNameFormat, &out.OperationNameFormat + *out = new(string) + **out = **in + } + if in.SamplingPercentage != nil { + in, out := &in.SamplingPercentage, &out.SamplingPercentage + *out = new(float64) + **out = **in + } + if in.Verbosity != nil { + in, out := &in.Verbosity, &out.Verbosity + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticInitParameters. +func (in *DiagnosticInitParameters) DeepCopy() *DiagnosticInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticList) DeepCopyInto(out *DiagnosticList) { *out = *in @@ -5480,6 +7138,7 @@ func (in *DiagnosticSpec) DeepCopyInto(out *DiagnosticSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticSpec. @@ -5536,6 +7195,31 @@ func (in *EmailTemplate) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EmailTemplateInitParameters) DeepCopyInto(out *EmailTemplateInitParameters) { + *out = *in + if in.Body != nil { + in, out := &in.Body, &out.Body + *out = new(string) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmailTemplateInitParameters. +func (in *EmailTemplateInitParameters) DeepCopy() *EmailTemplateInitParameters { + if in == nil { + return nil + } + out := new(EmailTemplateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EmailTemplateList) DeepCopyInto(out *EmailTemplateList) { *out = *in @@ -5688,6 +7372,7 @@ func (in *EmailTemplateSpec) DeepCopyInto(out *EmailTemplateSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmailTemplateSpec. @@ -5718,7 +7403,7 @@ func (in *EmailTemplateStatus) DeepCopy() *EmailTemplateStatus { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EventHubObservation) DeepCopyInto(out *EventHubObservation) { +func (in *EventHubInitParameters) DeepCopyInto(out *EventHubInitParameters) { *out = *in if in.Name != nil { in, out := &in.Name, &out.Name @@ -5727,20 +7412,19 @@ func (in *EventHubObservation) DeepCopyInto(out *EventHubObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubObservation. -func (in *EventHubObservation) DeepCopy() *EventHubObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubInitParameters. +func (in *EventHubInitParameters) DeepCopy() *EventHubInitParameters { if in == nil { return nil } - out := new(EventHubObservation) + out := new(EventHubInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EventHubParameters) DeepCopyInto(out *EventHubParameters) { +func (in *EventHubObservation) DeepCopyInto(out *EventHubObservation) { *out = *in - out.ConnectionStringSecretRef = in.ConnectionStringSecretRef if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -5748,9 +7432,30 @@ func (in *EventHubParameters) DeepCopyInto(out *EventHubParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubParameters. -func (in *EventHubParameters) DeepCopy() *EventHubParameters { - if in == nil { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubObservation. +func (in *EventHubObservation) DeepCopy() *EventHubObservation { + if in == nil { + return nil + } + out := new(EventHubObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventHubParameters) DeepCopyInto(out *EventHubParameters) { + *out = *in + out.ConnectionStringSecretRef = in.ConnectionStringSecretRef + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubParameters. +func (in *EventHubParameters) DeepCopy() *EventHubParameters { + if in == nil { return nil } out := new(EventHubParameters) @@ -5758,6 +7463,46 @@ func (in *EventHubParameters) DeepCopy() *EventHubParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExampleInitParameters) DeepCopyInto(out *ExampleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ExternalValue != nil { + in, out := &in.ExternalValue, &out.ExternalValue + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Summary != nil { + in, out := &in.Summary, &out.Summary + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExampleInitParameters. +func (in *ExampleInitParameters) DeepCopy() *ExampleInitParameters { + if in == nil { + return nil + } + out := new(ExampleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExampleObservation) DeepCopyInto(out *ExampleObservation) { *out = *in @@ -5838,6 +7583,46 @@ func (in *ExampleParameters) DeepCopy() *ExampleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FormParameterExampleInitParameters) DeepCopyInto(out *FormParameterExampleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ExternalValue != nil { + in, out := &in.ExternalValue, &out.ExternalValue + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Summary != nil { + in, out := &in.Summary, &out.Summary + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FormParameterExampleInitParameters. +func (in *FormParameterExampleInitParameters) DeepCopy() *FormParameterExampleInitParameters { + if in == nil { + return nil + } + out := new(FormParameterExampleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FormParameterExampleObservation) DeepCopyInto(out *FormParameterExampleObservation) { *out = *in @@ -5918,6 +7703,74 @@ func (in *FormParameterExampleParameters) DeepCopy() *FormParameterExampleParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FormParameterInitParameters) DeepCopyInto(out *FormParameterInitParameters) { + *out = *in + if in.DefaultValue != nil { + in, out := &in.DefaultValue, &out.DefaultValue + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Example != nil { + in, out := &in.Example, &out.Example + *out = make([]FormParameterExampleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Required != nil { + in, out := &in.Required, &out.Required + *out = new(bool) + **out = **in + } + if in.SchemaID != nil { + in, out := &in.SchemaID, &out.SchemaID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeName != nil { + in, out := &in.TypeName, &out.TypeName + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FormParameterInitParameters. +func (in *FormParameterInitParameters) DeepCopy() *FormParameterInitParameters { + if in == nil { + return nil + } + out := new(FormParameterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FormParameterObservation) DeepCopyInto(out *FormParameterObservation) { *out = *in @@ -6054,6 +7907,31 @@ func (in *FormParameterParameters) DeepCopy() *FormParameterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendRequestDataMaskingHeadersInitParameters) DeepCopyInto(out *FrontendRequestDataMaskingHeadersInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendRequestDataMaskingHeadersInitParameters. +func (in *FrontendRequestDataMaskingHeadersInitParameters) DeepCopy() *FrontendRequestDataMaskingHeadersInitParameters { + if in == nil { + return nil + } + out := new(FrontendRequestDataMaskingHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontendRequestDataMaskingHeadersObservation) DeepCopyInto(out *FrontendRequestDataMaskingHeadersObservation) { *out = *in @@ -6104,6 +7982,35 @@ func (in *FrontendRequestDataMaskingHeadersParameters) DeepCopy() *FrontendReque return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendRequestDataMaskingInitParameters) DeepCopyInto(out *FrontendRequestDataMaskingInitParameters) { + *out = *in + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]FrontendRequestDataMaskingHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryParams != nil { + in, out := &in.QueryParams, &out.QueryParams + *out = make([]FrontendRequestDataMaskingQueryParamsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendRequestDataMaskingInitParameters. +func (in *FrontendRequestDataMaskingInitParameters) DeepCopy() *FrontendRequestDataMaskingInitParameters { + if in == nil { + return nil + } + out := new(FrontendRequestDataMaskingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontendRequestDataMaskingObservation) DeepCopyInto(out *FrontendRequestDataMaskingObservation) { *out = *in @@ -6162,6 +8069,31 @@ func (in *FrontendRequestDataMaskingParameters) DeepCopy() *FrontendRequestDataM return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendRequestDataMaskingQueryParamsInitParameters) DeepCopyInto(out *FrontendRequestDataMaskingQueryParamsInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendRequestDataMaskingQueryParamsInitParameters. +func (in *FrontendRequestDataMaskingQueryParamsInitParameters) DeepCopy() *FrontendRequestDataMaskingQueryParamsInitParameters { + if in == nil { + return nil + } + out := new(FrontendRequestDataMaskingQueryParamsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontendRequestDataMaskingQueryParamsObservation) DeepCopyInto(out *FrontendRequestDataMaskingQueryParamsObservation) { *out = *in @@ -6213,7 +8145,7 @@ func (in *FrontendRequestDataMaskingQueryParamsParameters) DeepCopy() *FrontendR } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontendRequestObservation) DeepCopyInto(out *FrontendRequestObservation) { +func (in *FrontendRequestInitParameters) DeepCopyInto(out *FrontendRequestInitParameters) { *out = *in if in.BodyBytes != nil { in, out := &in.BodyBytes, &out.BodyBytes @@ -6222,7 +8154,7 @@ func (in *FrontendRequestObservation) DeepCopyInto(out *FrontendRequestObservati } if in.DataMasking != nil { in, out := &in.DataMasking, &out.DataMasking - *out = make([]FrontendRequestDataMaskingObservation, len(*in)) + *out = make([]FrontendRequestDataMaskingInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -6240,18 +8172,18 @@ func (in *FrontendRequestObservation) DeepCopyInto(out *FrontendRequestObservati } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendRequestObservation. -func (in *FrontendRequestObservation) DeepCopy() *FrontendRequestObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendRequestInitParameters. +func (in *FrontendRequestInitParameters) DeepCopy() *FrontendRequestInitParameters { if in == nil { return nil } - out := new(FrontendRequestObservation) + out := new(FrontendRequestInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontendRequestParameters) DeepCopyInto(out *FrontendRequestParameters) { +func (in *FrontendRequestObservation) DeepCopyInto(out *FrontendRequestObservation) { *out = *in if in.BodyBytes != nil { in, out := &in.BodyBytes, &out.BodyBytes @@ -6260,7 +8192,7 @@ func (in *FrontendRequestParameters) DeepCopyInto(out *FrontendRequestParameters } if in.DataMasking != nil { in, out := &in.DataMasking, &out.DataMasking - *out = make([]FrontendRequestDataMaskingParameters, len(*in)) + *out = make([]FrontendRequestDataMaskingObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -6278,33 +8210,96 @@ func (in *FrontendRequestParameters) DeepCopyInto(out *FrontendRequestParameters } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendRequestParameters. -func (in *FrontendRequestParameters) DeepCopy() *FrontendRequestParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendRequestObservation. +func (in *FrontendRequestObservation) DeepCopy() *FrontendRequestObservation { if in == nil { return nil } - out := new(FrontendRequestParameters) + out := new(FrontendRequestObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontendResponseDataMaskingHeadersObservation) DeepCopyInto(out *FrontendResponseDataMaskingHeadersObservation) { +func (in *FrontendRequestParameters) DeepCopyInto(out *FrontendRequestParameters) { *out = *in - if in.Mode != nil { - in, out := &in.Mode, &out.Mode - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = new(string) + if in.BodyBytes != nil { + in, out := &in.BodyBytes, &out.BodyBytes + *out = new(float64) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendResponseDataMaskingHeadersObservation. -func (in *FrontendResponseDataMaskingHeadersObservation) DeepCopy() *FrontendResponseDataMaskingHeadersObservation { + if in.DataMasking != nil { + in, out := &in.DataMasking, &out.DataMasking + *out = make([]FrontendRequestDataMaskingParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HeadersToLog != nil { + in, out := &in.HeadersToLog, &out.HeadersToLog + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendRequestParameters. +func (in *FrontendRequestParameters) DeepCopy() *FrontendRequestParameters { + if in == nil { + return nil + } + out := new(FrontendRequestParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendResponseDataMaskingHeadersInitParameters) DeepCopyInto(out *FrontendResponseDataMaskingHeadersInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendResponseDataMaskingHeadersInitParameters. +func (in *FrontendResponseDataMaskingHeadersInitParameters) DeepCopy() *FrontendResponseDataMaskingHeadersInitParameters { + if in == nil { + return nil + } + out := new(FrontendResponseDataMaskingHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendResponseDataMaskingHeadersObservation) DeepCopyInto(out *FrontendResponseDataMaskingHeadersObservation) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendResponseDataMaskingHeadersObservation. +func (in *FrontendResponseDataMaskingHeadersObservation) DeepCopy() *FrontendResponseDataMaskingHeadersObservation { if in == nil { return nil } @@ -6338,6 +8333,35 @@ func (in *FrontendResponseDataMaskingHeadersParameters) DeepCopy() *FrontendResp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendResponseDataMaskingInitParameters) DeepCopyInto(out *FrontendResponseDataMaskingInitParameters) { + *out = *in + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]FrontendResponseDataMaskingHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryParams != nil { + in, out := &in.QueryParams, &out.QueryParams + *out = make([]FrontendResponseDataMaskingQueryParamsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendResponseDataMaskingInitParameters. +func (in *FrontendResponseDataMaskingInitParameters) DeepCopy() *FrontendResponseDataMaskingInitParameters { + if in == nil { + return nil + } + out := new(FrontendResponseDataMaskingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontendResponseDataMaskingObservation) DeepCopyInto(out *FrontendResponseDataMaskingObservation) { *out = *in @@ -6396,6 +8420,31 @@ func (in *FrontendResponseDataMaskingParameters) DeepCopy() *FrontendResponseDat return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendResponseDataMaskingQueryParamsInitParameters) DeepCopyInto(out *FrontendResponseDataMaskingQueryParamsInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendResponseDataMaskingQueryParamsInitParameters. +func (in *FrontendResponseDataMaskingQueryParamsInitParameters) DeepCopy() *FrontendResponseDataMaskingQueryParamsInitParameters { + if in == nil { + return nil + } + out := new(FrontendResponseDataMaskingQueryParamsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontendResponseDataMaskingQueryParamsObservation) DeepCopyInto(out *FrontendResponseDataMaskingQueryParamsObservation) { *out = *in @@ -6446,6 +8495,44 @@ func (in *FrontendResponseDataMaskingQueryParamsParameters) DeepCopy() *Frontend return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendResponseInitParameters) DeepCopyInto(out *FrontendResponseInitParameters) { + *out = *in + if in.BodyBytes != nil { + in, out := &in.BodyBytes, &out.BodyBytes + *out = new(float64) + **out = **in + } + if in.DataMasking != nil { + in, out := &in.DataMasking, &out.DataMasking + *out = make([]FrontendResponseDataMaskingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HeadersToLog != nil { + in, out := &in.HeadersToLog, &out.HeadersToLog + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendResponseInitParameters. +func (in *FrontendResponseInitParameters) DeepCopy() *FrontendResponseInitParameters { + if in == nil { + return nil + } + out := new(FrontendResponseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontendResponseObservation) DeepCopyInto(out *FrontendResponseObservation) { *out = *in @@ -6576,6 +8663,21 @@ func (in *GatewayAPI) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GatewayAPIInitParameters) DeepCopyInto(out *GatewayAPIInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayAPIInitParameters. +func (in *GatewayAPIInitParameters) DeepCopy() *GatewayAPIInitParameters { + if in == nil { + return nil + } + out := new(GatewayAPIInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GatewayAPIList) DeepCopyInto(out *GatewayAPIList) { *out = *in @@ -6688,6 +8790,7 @@ func (in *GatewayAPISpec) DeepCopyInto(out *GatewayAPISpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayAPISpec. @@ -6717,6 +8820,33 @@ func (in *GatewayAPIStatus) DeepCopy() *GatewayAPIStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GatewayInitParameters) DeepCopyInto(out *GatewayInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.LocationData != nil { + in, out := &in.LocationData, &out.LocationData + *out = make([]LocationDataInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayInitParameters. +func (in *GatewayInitParameters) DeepCopy() *GatewayInitParameters { + if in == nil { + return nil + } + out := new(GatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GatewayList) DeepCopyInto(out *GatewayList) { *out = *in @@ -6833,6 +8963,7 @@ func (in *GatewaySpec) DeepCopyInto(out *GatewaySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewaySpec. @@ -6889,6 +9020,36 @@ func (in *GlobalSchema) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalSchemaInitParameters) DeepCopyInto(out *GlobalSchemaInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalSchemaInitParameters. +func (in *GlobalSchemaInitParameters) DeepCopy() *GlobalSchemaInitParameters { + if in == nil { + return nil + } + out := new(GlobalSchemaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GlobalSchemaList) DeepCopyInto(out *GlobalSchemaList) { *out = *in @@ -7031,6 +9192,7 @@ func (in *GlobalSchemaSpec) DeepCopyInto(out *GlobalSchemaSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalSchemaSpec. @@ -7060,6 +9222,46 @@ func (in *GlobalSchemaStatus) DeepCopy() *GlobalSchemaStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HeaderExampleInitParameters) DeepCopyInto(out *HeaderExampleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ExternalValue != nil { + in, out := &in.ExternalValue, &out.ExternalValue + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Summary != nil { + in, out := &in.Summary, &out.Summary + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderExampleInitParameters. +func (in *HeaderExampleInitParameters) DeepCopy() *HeaderExampleInitParameters { + if in == nil { + return nil + } + out := new(HeaderExampleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HeaderExampleObservation) DeepCopyInto(out *HeaderExampleObservation) { *out = *in @@ -7141,7 +9343,7 @@ func (in *HeaderExampleParameters) DeepCopy() *HeaderExampleParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HeaderObservation) DeepCopyInto(out *HeaderObservation) { +func (in *HeaderInitParameters) DeepCopyInto(out *HeaderInitParameters) { *out = *in if in.DefaultValue != nil { in, out := &in.DefaultValue, &out.DefaultValue @@ -7155,7 +9357,7 @@ func (in *HeaderObservation) DeepCopyInto(out *HeaderObservation) { } if in.Example != nil { in, out := &in.Example, &out.Example - *out = make([]ExampleObservation, len(*in)) + *out = make([]ExampleInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -7198,18 +9400,18 @@ func (in *HeaderObservation) DeepCopyInto(out *HeaderObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderObservation. -func (in *HeaderObservation) DeepCopy() *HeaderObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderInitParameters. +func (in *HeaderInitParameters) DeepCopy() *HeaderInitParameters { if in == nil { return nil } - out := new(HeaderObservation) + out := new(HeaderInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HeaderParameters) DeepCopyInto(out *HeaderParameters) { +func (in *HeaderObservation) DeepCopyInto(out *HeaderObservation) { *out = *in if in.DefaultValue != nil { in, out := &in.DefaultValue, &out.DefaultValue @@ -7223,7 +9425,7 @@ func (in *HeaderParameters) DeepCopyInto(out *HeaderParameters) { } if in.Example != nil { in, out := &in.Example, &out.Example - *out = make([]ExampleParameters, len(*in)) + *out = make([]ExampleObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -7266,18 +9468,111 @@ func (in *HeaderParameters) DeepCopyInto(out *HeaderParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderParameters. -func (in *HeaderParameters) DeepCopy() *HeaderParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderObservation. +func (in *HeaderObservation) DeepCopy() *HeaderObservation { if in == nil { return nil } - out := new(HeaderParameters) + out := new(HeaderObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HeadersObservation) DeepCopyInto(out *HeadersObservation) { +func (in *HeaderParameters) DeepCopyInto(out *HeaderParameters) { + *out = *in + if in.DefaultValue != nil { + in, out := &in.DefaultValue, &out.DefaultValue + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Example != nil { + in, out := &in.Example, &out.Example + *out = make([]ExampleParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Required != nil { + in, out := &in.Required, &out.Required + *out = new(bool) + **out = **in + } + if in.SchemaID != nil { + in, out := &in.SchemaID, &out.SchemaID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeName != nil { + in, out := &in.TypeName, &out.TypeName + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderParameters. +func (in *HeaderParameters) DeepCopy() *HeaderParameters { + if in == nil { + return nil + } + out := new(HeaderParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HeadersInitParameters) DeepCopyInto(out *HeadersInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersInitParameters. +func (in *HeadersInitParameters) DeepCopy() *HeadersInitParameters { + if in == nil { + return nil + } + out := new(HeadersInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HeadersObservation) DeepCopyInto(out *HeadersObservation) { *out = *in if in.Mode != nil { in, out := &in.Mode, &out.Mode @@ -7326,6 +9621,36 @@ func (in *HeadersParameters) DeepCopy() *HeadersParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HostNameConfigurationInitParameters) DeepCopyInto(out *HostNameConfigurationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostNameConfigurationInitParameters. +func (in *HostNameConfigurationInitParameters) DeepCopy() *HostNameConfigurationInitParameters { + if in == nil { + return nil + } + out := new(HostNameConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HostNameConfigurationManagementInitParameters) DeepCopyInto(out *HostNameConfigurationManagementInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostNameConfigurationManagementInitParameters. +func (in *HostNameConfigurationManagementInitParameters) DeepCopy() *HostNameConfigurationManagementInitParameters { + if in == nil { + return nil + } + out := new(HostNameConfigurationManagementInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HostNameConfigurationManagementObservation) DeepCopyInto(out *HostNameConfigurationManagementObservation) { *out = *in @@ -7466,6 +9791,37 @@ func (in *HostNameConfigurationParameters) DeepCopy() *HostNameConfigurationPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -7565,6 +9921,42 @@ func (in *IdentityProviderAAD) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityProviderAADInitParameters) DeepCopyInto(out *IdentityProviderAADInitParameters) { + *out = *in + if in.AllowedTenants != nil { + in, out := &in.AllowedTenants, &out.AllowedTenants + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.SigninTenant != nil { + in, out := &in.SigninTenant, &out.SigninTenant + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderAADInitParameters. +func (in *IdentityProviderAADInitParameters) DeepCopy() *IdentityProviderAADInitParameters { + if in == nil { + return nil + } + out := new(IdentityProviderAADInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityProviderAADList) DeepCopyInto(out *IdentityProviderAADList) { *out = *in @@ -7720,6 +10112,7 @@ func (in *IdentityProviderAADSpec) DeepCopyInto(out *IdentityProviderAADSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderAADSpec. @@ -7776,6 +10169,26 @@ func (in *IdentityProviderFacebook) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityProviderFacebookInitParameters) DeepCopyInto(out *IdentityProviderFacebookInitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderFacebookInitParameters. +func (in *IdentityProviderFacebookInitParameters) DeepCopy() *IdentityProviderFacebookInitParameters { + if in == nil { + return nil + } + out := new(IdentityProviderFacebookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityProviderFacebookList) DeepCopyInto(out *IdentityProviderFacebookList) { *out = *in @@ -7899,6 +10312,7 @@ func (in *IdentityProviderFacebookSpec) DeepCopyInto(out *IdentityProviderFacebo *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderFacebookSpec. @@ -7955,6 +10369,26 @@ func (in *IdentityProviderGoogle) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityProviderGoogleInitParameters) DeepCopyInto(out *IdentityProviderGoogleInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderGoogleInitParameters. +func (in *IdentityProviderGoogleInitParameters) DeepCopy() *IdentityProviderGoogleInitParameters { + if in == nil { + return nil + } + out := new(IdentityProviderGoogleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityProviderGoogleList) DeepCopyInto(out *IdentityProviderGoogleList) { *out = *in @@ -8078,6 +10512,7 @@ func (in *IdentityProviderGoogleSpec) DeepCopyInto(out *IdentityProviderGoogleSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderGoogleSpec. @@ -8134,6 +10569,26 @@ func (in *IdentityProviderMicrosoft) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityProviderMicrosoftInitParameters) DeepCopyInto(out *IdentityProviderMicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderMicrosoftInitParameters. +func (in *IdentityProviderMicrosoftInitParameters) DeepCopy() *IdentityProviderMicrosoftInitParameters { + if in == nil { + return nil + } + out := new(IdentityProviderMicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityProviderMicrosoftList) DeepCopyInto(out *IdentityProviderMicrosoftList) { *out = *in @@ -8257,6 +10712,7 @@ func (in *IdentityProviderMicrosoftSpec) DeepCopyInto(out *IdentityProviderMicro *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderMicrosoftSpec. @@ -8313,6 +10769,21 @@ func (in *IdentityProviderTwitter) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityProviderTwitterInitParameters) DeepCopyInto(out *IdentityProviderTwitterInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderTwitterInitParameters. +func (in *IdentityProviderTwitterInitParameters) DeepCopy() *IdentityProviderTwitterInitParameters { + if in == nil { + return nil + } + out := new(IdentityProviderTwitterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityProviderTwitterList) DeepCopyInto(out *IdentityProviderTwitterList) { *out = *in @@ -8427,6 +10898,7 @@ func (in *IdentityProviderTwitterSpec) DeepCopyInto(out *IdentityProviderTwitter *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityProviderTwitterSpec. @@ -8457,7 +10929,7 @@ func (in *IdentityProviderTwitterStatus) DeepCopy() *IdentityProviderTwitterStat } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ImportObservation) DeepCopyInto(out *ImportObservation) { +func (in *ImportInitParameters) DeepCopyInto(out *ImportInitParameters) { *out = *in if in.ContentFormat != nil { in, out := &in.ContentFormat, &out.ContentFormat @@ -8471,25 +10943,25 @@ func (in *ImportObservation) DeepCopyInto(out *ImportObservation) { } if in.WsdlSelector != nil { in, out := &in.WsdlSelector, &out.WsdlSelector - *out = make([]WsdlSelectorObservation, len(*in)) + *out = make([]WsdlSelectorInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImportObservation. -func (in *ImportObservation) DeepCopy() *ImportObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImportInitParameters. +func (in *ImportInitParameters) DeepCopy() *ImportInitParameters { if in == nil { return nil } - out := new(ImportObservation) + out := new(ImportInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ImportParameters) DeepCopyInto(out *ImportParameters) { +func (in *ImportObservation) DeepCopyInto(out *ImportObservation) { *out = *in if in.ContentFormat != nil { in, out := &in.ContentFormat, &out.ContentFormat @@ -8503,37 +10975,94 @@ func (in *ImportParameters) DeepCopyInto(out *ImportParameters) { } if in.WsdlSelector != nil { in, out := &in.WsdlSelector, &out.WsdlSelector - *out = make([]WsdlSelectorParameters, len(*in)) + *out = make([]WsdlSelectorObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImportParameters. -func (in *ImportParameters) DeepCopy() *ImportParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImportObservation. +func (in *ImportObservation) DeepCopy() *ImportObservation { if in == nil { return nil } - out := new(ImportParameters) + out := new(ImportObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LicenseObservation) DeepCopyInto(out *LicenseObservation) { +func (in *ImportParameters) DeepCopyInto(out *ImportParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.ContentFormat != nil { + in, out := &in.ContentFormat, &out.ContentFormat *out = new(string) **out = **in } - if in.URL != nil { - in, out := &in.URL, &out.URL + if in.ContentValue != nil { + in, out := &in.ContentValue, &out.ContentValue *out = new(string) **out = **in } -} + if in.WsdlSelector != nil { + in, out := &in.WsdlSelector, &out.WsdlSelector + *out = make([]WsdlSelectorParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImportParameters. +func (in *ImportParameters) DeepCopy() *ImportParameters { + if in == nil { + return nil + } + out := new(ImportParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LicenseInitParameters) DeepCopyInto(out *LicenseInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LicenseInitParameters. +func (in *LicenseInitParameters) DeepCopy() *LicenseInitParameters { + if in == nil { + return nil + } + out := new(LicenseInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LicenseObservation) DeepCopyInto(out *LicenseObservation) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LicenseObservation. func (in *LicenseObservation) DeepCopy() *LicenseObservation { @@ -8570,6 +11099,41 @@ func (in *LicenseParameters) DeepCopy() *LicenseParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LocationDataInitParameters) DeepCopyInto(out *LocationDataInitParameters) { + *out = *in + if in.City != nil { + in, out := &in.City, &out.City + *out = new(string) + **out = **in + } + if in.District != nil { + in, out := &in.District, &out.District + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Region != nil { + in, out := &in.Region, &out.Region + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocationDataInitParameters. +func (in *LocationDataInitParameters) DeepCopy() *LocationDataInitParameters { + if in == nil { + return nil + } + out := new(LocationDataInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LocationDataObservation) DeepCopyInto(out *LocationDataObservation) { *out = *in @@ -8667,6 +11231,43 @@ func (in *Logger) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoggerInitParameters) DeepCopyInto(out *LoggerInitParameters) { + *out = *in + if in.ApplicationInsights != nil { + in, out := &in.ApplicationInsights, &out.ApplicationInsights + *out = make([]ApplicationInsightsInitParameters, len(*in)) + copy(*out, *in) + } + if in.Buffered != nil { + in, out := &in.Buffered, &out.Buffered + *out = new(bool) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.EventHub != nil { + in, out := &in.EventHub, &out.EventHub + *out = make([]EventHubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggerInitParameters. +func (in *LoggerInitParameters) DeepCopy() *LoggerInitParameters { + if in == nil { + return nil + } + out := new(LoggerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoggerList) DeepCopyInto(out *LoggerList) { *out = *in @@ -8843,6 +11444,7 @@ func (in *LoggerSpec) DeepCopyInto(out *LoggerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggerSpec. @@ -8900,50 +11502,18 @@ func (in *Management) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagementList) DeepCopyInto(out *ManagementList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Management, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementList. -func (in *ManagementList) DeepCopy() *ManagementList { - if in == nil { - return nil - } - out := new(ManagementList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ManagementList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation) { +func (in *ManagementInitParameters) DeepCopyInto(out *ManagementInitParameters) { *out = *in if in.AdditionalLocation != nil { in, out := &in.AdditionalLocation, &out.AdditionalLocation - *out = make([]AdditionalLocationObservation, len(*in)) + *out = make([]AdditionalLocationInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.Certificate != nil { in, out := &in.Certificate, &out.Certificate - *out = make([]CertificateObservation, len(*in)) + *out = make([]CertificateInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -8955,46 +11525,19 @@ func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation) { } if in.Delegation != nil { in, out := &in.Delegation, &out.Delegation - *out = make([]DelegationObservation, len(*in)) + *out = make([]DelegationInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DeveloperPortalURL != nil { - in, out := &in.DeveloperPortalURL, &out.DeveloperPortalURL - *out = new(string) - **out = **in - } if in.GatewayDisabled != nil { in, out := &in.GatewayDisabled, &out.GatewayDisabled *out = new(bool) **out = **in } - if in.GatewayRegionalURL != nil { - in, out := &in.GatewayRegionalURL, &out.GatewayRegionalURL - *out = new(string) - **out = **in - } - if in.GatewayURL != nil { - in, out := &in.GatewayURL, &out.GatewayURL - *out = new(string) - **out = **in - } - if in.HostNameConfiguration != nil { - in, out := &in.HostNameConfiguration, &out.HostNameConfiguration - *out = make([]HostNameConfigurationObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.Identity != nil { in, out := &in.Identity, &out.Identity - *out = make([]IdentityObservation, len(*in)) + *out = make([]IdentityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -9004,11 +11547,6 @@ func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation) { *out = new(string) **out = **in } - if in.ManagementAPIURL != nil { - in, out := &in.ManagementAPIURL, &out.ManagementAPIURL - *out = new(string) - **out = **in - } if in.MinAPIVersion != nil { in, out := &in.MinAPIVersion, &out.MinAPIVersion *out = new(string) @@ -9021,30 +11559,14 @@ func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation) { } if in.Policy != nil { in, out := &in.Policy, &out.Policy - *out = make([]PolicyObservation, len(*in)) + *out = make([]PolicyInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.PortalURL != nil { - in, out := &in.PortalURL, &out.PortalURL - *out = new(string) - **out = **in - } - if in.PrivateIPAddresses != nil { - in, out := &in.PrivateIPAddresses, &out.PrivateIPAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } if in.Protocols != nil { in, out := &in.Protocols, &out.Protocols - *out = make([]ProtocolsObservation, len(*in)) + *out = make([]ProtocolsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -9054,17 +11576,6 @@ func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation) { *out = new(string) **out = **in } - if in.PublicIPAddresses != nil { - in, out := &in.PublicIPAddresses, &out.PublicIPAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } if in.PublicNetworkAccessEnabled != nil { in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled *out = new(bool) @@ -9080,33 +11591,23 @@ func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation) { *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } - if in.ScmURL != nil { - in, out := &in.ScmURL, &out.ScmURL - *out = new(string) - **out = **in - } if in.Security != nil { in, out := &in.Security, &out.Security - *out = make([]SecurityObservation, len(*in)) + *out = make([]SecurityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.SignIn != nil { in, out := &in.SignIn, &out.SignIn - *out = make([]SignInObservation, len(*in)) + *out = make([]SignInInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.SignUp != nil { in, out := &in.SignUp, &out.SignUp - *out = make([]SignUpObservation, len(*in)) + *out = make([]SignUpInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -9133,17 +11634,15 @@ func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation) { } if in.TenantAccess != nil { in, out := &in.TenantAccess, &out.TenantAccess - *out = make([]TenantAccessObservation, len(*in)) + *out = make([]TenantAccessInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.VirtualNetworkConfiguration != nil { in, out := &in.VirtualNetworkConfiguration, &out.VirtualNetworkConfiguration - *out = make([]ManagementVirtualNetworkConfigurationObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + *out = make([]ManagementVirtualNetworkConfigurationInitParameters, len(*in)) + copy(*out, *in) } if in.VirtualNetworkType != nil { in, out := &in.VirtualNetworkType, &out.VirtualNetworkType @@ -9163,36 +11662,310 @@ func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementObservation. -func (in *ManagementObservation) DeepCopy() *ManagementObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementInitParameters. +func (in *ManagementInitParameters) DeepCopy() *ManagementInitParameters { if in == nil { return nil } - out := new(ManagementObservation) + out := new(ManagementInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagementParameters) DeepCopyInto(out *ManagementParameters) { +func (in *ManagementList) DeepCopyInto(out *ManagementList) { *out = *in - if in.AdditionalLocation != nil { - in, out := &in.AdditionalLocation, &out.AdditionalLocation - *out = make([]AdditionalLocationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = make([]CertificateParameters, len(*in)) + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Management, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ClientCertificateEnabled != nil { - in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled - *out = new(bool) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementList. +func (in *ManagementList) DeepCopy() *ManagementList { + if in == nil { + return nil + } + out := new(ManagementList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ManagementList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation) { + *out = *in + if in.AdditionalLocation != nil { + in, out := &in.AdditionalLocation, &out.AdditionalLocation + *out = make([]AdditionalLocationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]CertificateObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientCertificateEnabled != nil { + in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled + *out = new(bool) + **out = **in + } + if in.Delegation != nil { + in, out := &in.Delegation, &out.Delegation + *out = make([]DelegationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DeveloperPortalURL != nil { + in, out := &in.DeveloperPortalURL, &out.DeveloperPortalURL + *out = new(string) + **out = **in + } + if in.GatewayDisabled != nil { + in, out := &in.GatewayDisabled, &out.GatewayDisabled + *out = new(bool) + **out = **in + } + if in.GatewayRegionalURL != nil { + in, out := &in.GatewayRegionalURL, &out.GatewayRegionalURL + *out = new(string) + **out = **in + } + if in.GatewayURL != nil { + in, out := &in.GatewayURL, &out.GatewayURL + *out = new(string) + **out = **in + } + if in.HostNameConfiguration != nil { + in, out := &in.HostNameConfiguration, &out.HostNameConfiguration + *out = make([]HostNameConfigurationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ManagementAPIURL != nil { + in, out := &in.ManagementAPIURL, &out.ManagementAPIURL + *out = new(string) + **out = **in + } + if in.MinAPIVersion != nil { + in, out := &in.MinAPIVersion, &out.MinAPIVersion + *out = new(string) + **out = **in + } + if in.NotificationSenderEmail != nil { + in, out := &in.NotificationSenderEmail, &out.NotificationSenderEmail + *out = new(string) + **out = **in + } + if in.Policy != nil { + in, out := &in.Policy, &out.Policy + *out = make([]PolicyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PortalURL != nil { + in, out := &in.PortalURL, &out.PortalURL + *out = new(string) + **out = **in + } + if in.PrivateIPAddresses != nil { + in, out := &in.PrivateIPAddresses, &out.PrivateIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Protocols != nil { + in, out := &in.Protocols, &out.Protocols + *out = make([]ProtocolsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicIPAddressID != nil { + in, out := &in.PublicIPAddressID, &out.PublicIPAddressID + *out = new(string) + **out = **in + } + if in.PublicIPAddresses != nil { + in, out := &in.PublicIPAddresses, &out.PublicIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.PublisherEmail != nil { + in, out := &in.PublisherEmail, &out.PublisherEmail + *out = new(string) + **out = **in + } + if in.PublisherName != nil { + in, out := &in.PublisherName, &out.PublisherName + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ScmURL != nil { + in, out := &in.ScmURL, &out.ScmURL + *out = new(string) + **out = **in + } + if in.Security != nil { + in, out := &in.Security, &out.Security + *out = make([]SecurityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SignIn != nil { + in, out := &in.SignIn, &out.SignIn + *out = make([]SignInObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SignUp != nil { + in, out := &in.SignUp, &out.SignUp + *out = make([]SignUpObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantAccess != nil { + in, out := &in.TenantAccess, &out.TenantAccess + *out = make([]TenantAccessObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VirtualNetworkConfiguration != nil { + in, out := &in.VirtualNetworkConfiguration, &out.VirtualNetworkConfiguration + *out = make([]ManagementVirtualNetworkConfigurationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VirtualNetworkType != nil { + in, out := &in.VirtualNetworkType, &out.VirtualNetworkType + *out = new(string) + **out = **in + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementObservation. +func (in *ManagementObservation) DeepCopy() *ManagementObservation { + if in == nil { + return nil + } + out := new(ManagementObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementParameters) DeepCopyInto(out *ManagementParameters) { + *out = *in + if in.AdditionalLocation != nil { + in, out := &in.AdditionalLocation, &out.AdditionalLocation + *out = make([]AdditionalLocationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]CertificateParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientCertificateEnabled != nil { + in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled + *out = new(bool) **out = **in } if in.Delegation != nil { @@ -9366,6 +12139,7 @@ func (in *ManagementSpec) DeepCopyInto(out *ManagementSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementSpec. @@ -9373,24 +12147,39 @@ func (in *ManagementSpec) DeepCopy() *ManagementSpec { if in == nil { return nil } - out := new(ManagementSpec) + out := new(ManagementSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementStatus) DeepCopyInto(out *ManagementStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementStatus. +func (in *ManagementStatus) DeepCopy() *ManagementStatus { + if in == nil { + return nil + } + out := new(ManagementStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagementStatus) DeepCopyInto(out *ManagementStatus) { +func (in *ManagementVirtualNetworkConfigurationInitParameters) DeepCopyInto(out *ManagementVirtualNetworkConfigurationInitParameters) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementStatus. -func (in *ManagementStatus) DeepCopy() *ManagementStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementVirtualNetworkConfigurationInitParameters. +func (in *ManagementVirtualNetworkConfigurationInitParameters) DeepCopy() *ManagementVirtualNetworkConfigurationInitParameters { if in == nil { return nil } - out := new(ManagementStatus) + out := new(ManagementVirtualNetworkConfigurationInitParameters) in.DeepCopyInto(out) return out } @@ -9472,6 +12261,49 @@ func (in *NamedValue) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamedValueInitParameters) DeepCopyInto(out *NamedValueInitParameters) { + *out = *in + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ValueFromKeyVault != nil { + in, out := &in.ValueFromKeyVault, &out.ValueFromKeyVault + *out = make([]ValueFromKeyVaultInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamedValueInitParameters. +func (in *NamedValueInitParameters) DeepCopy() *NamedValueInitParameters { + if in == nil { + return nil + } + out := new(NamedValueInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NamedValueList) DeepCopyInto(out *NamedValueList) { *out = *in @@ -9645,6 +12477,7 @@ func (in *NamedValueSpec) DeepCopyInto(out *NamedValueSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamedValueSpec. @@ -9701,6 +12534,21 @@ func (in *NotificationRecipientEmail) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotificationRecipientEmailInitParameters) DeepCopyInto(out *NotificationRecipientEmailInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationRecipientEmailInitParameters. +func (in *NotificationRecipientEmailInitParameters) DeepCopy() *NotificationRecipientEmailInitParameters { + if in == nil { + return nil + } + out := new(NotificationRecipientEmailInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotificationRecipientEmailList) DeepCopyInto(out *NotificationRecipientEmailList) { *out = *in @@ -9813,6 +12661,7 @@ func (in *NotificationRecipientEmailSpec) DeepCopyInto(out *NotificationRecipien *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationRecipientEmailSpec. @@ -9869,6 +12718,26 @@ func (in *NotificationRecipientUser) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotificationRecipientUserInitParameters) DeepCopyInto(out *NotificationRecipientUserInitParameters) { + *out = *in + if in.NotificationType != nil { + in, out := &in.NotificationType, &out.NotificationType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationRecipientUserInitParameters. +func (in *NotificationRecipientUserInitParameters) DeepCopy() *NotificationRecipientUserInitParameters { + if in == nil { + return nil + } + out := new(NotificationRecipientUserInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotificationRecipientUserList) DeepCopyInto(out *NotificationRecipientUserList) { *out = *in @@ -9991,6 +12860,7 @@ func (in *NotificationRecipientUserSpec) DeepCopyInto(out *NotificationRecipient *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationRecipientUserSpec. @@ -10020,6 +12890,31 @@ func (in *NotificationRecipientUserStatus) DeepCopy() *NotificationRecipientUser return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Oauth2AuthorizationInitParameters) DeepCopyInto(out *Oauth2AuthorizationInitParameters) { + *out = *in + if in.AuthorizationServerName != nil { + in, out := &in.AuthorizationServerName, &out.AuthorizationServerName + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Oauth2AuthorizationInitParameters. +func (in *Oauth2AuthorizationInitParameters) DeepCopy() *Oauth2AuthorizationInitParameters { + if in == nil { + return nil + } + out := new(Oauth2AuthorizationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Oauth2AuthorizationObservation) DeepCopyInto(out *Oauth2AuthorizationObservation) { *out = *in @@ -10070,6 +12965,37 @@ func (in *Oauth2AuthorizationParameters) DeepCopy() *Oauth2AuthorizationParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OpenIDAuthenticationInitParameters) DeepCopyInto(out *OpenIDAuthenticationInitParameters) { + *out = *in + if in.BearerTokenSendingMethods != nil { + in, out := &in.BearerTokenSendingMethods, &out.BearerTokenSendingMethods + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.OpenIDProviderName != nil { + in, out := &in.OpenIDProviderName, &out.OpenIDProviderName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIDAuthenticationInitParameters. +func (in *OpenIDAuthenticationInitParameters) DeepCopy() *OpenIDAuthenticationInitParameters { + if in == nil { + return nil + } + out := new(OpenIDAuthenticationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OpenIDAuthenticationObservation) DeepCopyInto(out *OpenIDAuthenticationObservation) { *out = *in @@ -10159,6 +13085,36 @@ func (in *OpenIDConnectProvider) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OpenIDConnectProviderInitParameters) DeepCopyInto(out *OpenIDConnectProviderInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.MetadataEndpoint != nil { + in, out := &in.MetadataEndpoint, &out.MetadataEndpoint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIDConnectProviderInitParameters. +func (in *OpenIDConnectProviderInitParameters) DeepCopy() *OpenIDConnectProviderInitParameters { + if in == nil { + return nil + } + out := new(OpenIDConnectProviderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OpenIDConnectProviderList) DeepCopyInto(out *OpenIDConnectProviderList) { *out = *in @@ -10303,6 +13259,7 @@ func (in *OpenIDConnectProviderSpec) DeepCopyInto(out *OpenIDConnectProviderSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIDConnectProviderSpec. @@ -10359,6 +13316,56 @@ func (in *Policy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyInitParameters) DeepCopyInto(out *PolicyInitParameters) { + *out = *in + if in.XMLContent != nil { + in, out := &in.XMLContent, &out.XMLContent + *out = new(string) + **out = **in + } + if in.XMLLink != nil { + in, out := &in.XMLLink, &out.XMLLink + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyInitParameters. +func (in *PolicyInitParameters) DeepCopy() *PolicyInitParameters { + if in == nil { + return nil + } + out := new(PolicyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyInitParameters_2) DeepCopyInto(out *PolicyInitParameters_2) { + *out = *in + if in.XMLContent != nil { + in, out := &in.XMLContent, &out.XMLContent + *out = new(string) + **out = **in + } + if in.XMLLink != nil { + in, out := &in.XMLLink, &out.XMLLink + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyInitParameters_2. +func (in *PolicyInitParameters_2) DeepCopy() *PolicyInitParameters_2 { + if in == nil { + return nil + } + out := new(PolicyInitParameters_2) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PolicyList) DeepCopyInto(out *PolicyList) { *out = *in @@ -10521,6 +13528,7 @@ func (in *PolicySpec) DeepCopyInto(out *PolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicySpec. @@ -10550,6 +13558,21 @@ func (in *PolicyStatus) DeepCopy() *PolicyStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PortalInitParameters) DeepCopyInto(out *PortalInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PortalInitParameters. +func (in *PortalInitParameters) DeepCopy() *PortalInitParameters { + if in == nil { + return nil + } + out := new(PortalInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PortalObservation) DeepCopyInto(out *PortalObservation) { *out = *in @@ -10679,6 +13702,21 @@ func (in *ProductAPI) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProductAPIInitParameters) DeepCopyInto(out *ProductAPIInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProductAPIInitParameters. +func (in *ProductAPIInitParameters) DeepCopy() *ProductAPIInitParameters { + if in == nil { + return nil + } + out := new(ProductAPIInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProductAPIList) DeepCopyInto(out *ProductAPIList) { *out = *in @@ -10831,6 +13869,7 @@ func (in *ProductAPISpec) DeepCopyInto(out *ProductAPISpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProductAPISpec. @@ -10850,12 +13889,62 @@ func (in *ProductAPIStatus) DeepCopyInto(out *ProductAPIStatus) { in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProductAPIStatus. -func (in *ProductAPIStatus) DeepCopy() *ProductAPIStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProductAPIStatus. +func (in *ProductAPIStatus) DeepCopy() *ProductAPIStatus { + if in == nil { + return nil + } + out := new(ProductAPIStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProductInitParameters) DeepCopyInto(out *ProductInitParameters) { + *out = *in + if in.ApprovalRequired != nil { + in, out := &in.ApprovalRequired, &out.ApprovalRequired + *out = new(bool) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Published != nil { + in, out := &in.Published, &out.Published + *out = new(bool) + **out = **in + } + if in.SubscriptionRequired != nil { + in, out := &in.SubscriptionRequired, &out.SubscriptionRequired + *out = new(bool) + **out = **in + } + if in.SubscriptionsLimit != nil { + in, out := &in.SubscriptionsLimit, &out.SubscriptionsLimit + *out = new(float64) + **out = **in + } + if in.Terms != nil { + in, out := &in.Terms, &out.Terms + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProductInitParameters. +func (in *ProductInitParameters) DeepCopy() *ProductInitParameters { if in == nil { return nil } - out := new(ProductAPIStatus) + out := new(ProductInitParameters) in.DeepCopyInto(out) return out } @@ -11064,6 +14153,31 @@ func (in *ProductPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProductPolicyInitParameters) DeepCopyInto(out *ProductPolicyInitParameters) { + *out = *in + if in.XMLContent != nil { + in, out := &in.XMLContent, &out.XMLContent + *out = new(string) + **out = **in + } + if in.XMLLink != nil { + in, out := &in.XMLLink, &out.XMLLink + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProductPolicyInitParameters. +func (in *ProductPolicyInitParameters) DeepCopy() *ProductPolicyInitParameters { + if in == nil { + return nil + } + out := new(ProductPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProductPolicyList) DeepCopyInto(out *ProductPolicyList) { *out = *in @@ -11216,6 +14330,7 @@ func (in *ProductPolicySpec) DeepCopyInto(out *ProductPolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProductPolicySpec. @@ -11250,6 +14365,7 @@ func (in *ProductSpec) DeepCopyInto(out *ProductSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProductSpec. @@ -11306,6 +14422,21 @@ func (in *ProductTag) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProductTagInitParameters) DeepCopyInto(out *ProductTagInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProductTagInitParameters. +func (in *ProductTagInitParameters) DeepCopy() *ProductTagInitParameters { + if in == nil { + return nil + } + out := new(ProductTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProductTagList) DeepCopyInto(out *ProductTagList) { *out = *in @@ -11458,6 +14589,7 @@ func (in *ProductTagSpec) DeepCopyInto(out *ProductTagSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProductTagSpec. @@ -11487,6 +14619,26 @@ func (in *ProductTagStatus) DeepCopy() *ProductTagStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProtocolsInitParameters) DeepCopyInto(out *ProtocolsInitParameters) { + *out = *in + if in.EnableHttp2 != nil { + in, out := &in.EnableHttp2, &out.EnableHttp2 + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtocolsInitParameters. +func (in *ProtocolsInitParameters) DeepCopy() *ProtocolsInitParameters { + if in == nil { + return nil + } + out := new(ProtocolsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProtocolsObservation) DeepCopyInto(out *ProtocolsObservation) { *out = *in @@ -11527,6 +14679,21 @@ func (in *ProtocolsParameters) DeepCopy() *ProtocolsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProxyInitParameters) DeepCopyInto(out *ProxyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyInitParameters. +func (in *ProxyInitParameters) DeepCopy() *ProxyInitParameters { + if in == nil { + return nil + } + out := new(ProxyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProxyObservation) DeepCopyInto(out *ProxyObservation) { *out = *in @@ -11607,6 +14774,46 @@ func (in *ProxyParameters) DeepCopy() *ProxyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueryParameterExampleInitParameters) DeepCopyInto(out *QueryParameterExampleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ExternalValue != nil { + in, out := &in.ExternalValue, &out.ExternalValue + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Summary != nil { + in, out := &in.Summary, &out.Summary + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryParameterExampleInitParameters. +func (in *QueryParameterExampleInitParameters) DeepCopy() *QueryParameterExampleInitParameters { + if in == nil { + return nil + } + out := new(QueryParameterExampleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *QueryParameterExampleObservation) DeepCopyInto(out *QueryParameterExampleObservation) { *out = *in @@ -11687,6 +14894,74 @@ func (in *QueryParameterExampleParameters) DeepCopy() *QueryParameterExamplePara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueryParameterInitParameters) DeepCopyInto(out *QueryParameterInitParameters) { + *out = *in + if in.DefaultValue != nil { + in, out := &in.DefaultValue, &out.DefaultValue + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Example != nil { + in, out := &in.Example, &out.Example + *out = make([]QueryParameterExampleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Required != nil { + in, out := &in.Required, &out.Required + *out = new(bool) + **out = **in + } + if in.SchemaID != nil { + in, out := &in.SchemaID, &out.SchemaID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeName != nil { + in, out := &in.TypeName, &out.TypeName + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryParameterInitParameters. +func (in *QueryParameterInitParameters) DeepCopy() *QueryParameterInitParameters { + if in == nil { + return nil + } + out := new(QueryParameterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *QueryParameterObservation) DeepCopyInto(out *QueryParameterObservation) { *out = *in @@ -11823,6 +15098,31 @@ func (in *QueryParameterParameters) DeepCopy() *QueryParameterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueryParamsInitParameters) DeepCopyInto(out *QueryParamsInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryParamsInitParameters. +func (in *QueryParamsInitParameters) DeepCopy() *QueryParamsInitParameters { + if in == nil { + return nil + } + out := new(QueryParamsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *QueryParamsObservation) DeepCopyInto(out *QueryParamsObservation) { *out = *in @@ -11900,6 +15200,31 @@ func (in *RedisCache) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisCacheInitParameters) DeepCopyInto(out *RedisCacheInitParameters) { + *out = *in + if in.CacheLocation != nil { + in, out := &in.CacheLocation, &out.CacheLocation + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheInitParameters. +func (in *RedisCacheInitParameters) DeepCopy() *RedisCacheInitParameters { + if in == nil { + return nil + } + out := new(RedisCacheInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisCacheList) DeepCopyInto(out *RedisCacheList) { *out = *in @@ -12033,37 +15358,118 @@ func (in *RedisCacheSpec) DeepCopyInto(out *RedisCacheSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheSpec. +func (in *RedisCacheSpec) DeepCopy() *RedisCacheSpec { + if in == nil { + return nil + } + out := new(RedisCacheSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisCacheStatus) DeepCopyInto(out *RedisCacheStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheStatus. +func (in *RedisCacheStatus) DeepCopy() *RedisCacheStatus { + if in == nil { + return nil + } + out := new(RedisCacheStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RepresentationExampleInitParameters) DeepCopyInto(out *RepresentationExampleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ExternalValue != nil { + in, out := &in.ExternalValue, &out.ExternalValue + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Summary != nil { + in, out := &in.Summary, &out.Summary + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheSpec. -func (in *RedisCacheSpec) DeepCopy() *RedisCacheSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepresentationExampleInitParameters. +func (in *RepresentationExampleInitParameters) DeepCopy() *RepresentationExampleInitParameters { if in == nil { return nil } - out := new(RedisCacheSpec) + out := new(RepresentationExampleInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RedisCacheStatus) DeepCopyInto(out *RedisCacheStatus) { +func (in *RepresentationExampleObservation) DeepCopyInto(out *RepresentationExampleObservation) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ExternalValue != nil { + in, out := &in.ExternalValue, &out.ExternalValue + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Summary != nil { + in, out := &in.Summary, &out.Summary + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheStatus. -func (in *RedisCacheStatus) DeepCopy() *RedisCacheStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepresentationExampleObservation. +func (in *RepresentationExampleObservation) DeepCopy() *RepresentationExampleObservation { if in == nil { return nil } - out := new(RedisCacheStatus) + out := new(RepresentationExampleObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RepresentationExampleObservation) DeepCopyInto(out *RepresentationExampleObservation) { +func (in *RepresentationExampleParameters) DeepCopyInto(out *RepresentationExampleParameters) { *out = *in if in.Description != nil { in, out := &in.Description, &out.Description @@ -12092,18 +15498,18 @@ func (in *RepresentationExampleObservation) DeepCopyInto(out *RepresentationExam } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepresentationExampleObservation. -func (in *RepresentationExampleObservation) DeepCopy() *RepresentationExampleObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepresentationExampleParameters. +func (in *RepresentationExampleParameters) DeepCopy() *RepresentationExampleParameters { if in == nil { return nil } - out := new(RepresentationExampleObservation) + out := new(RepresentationExampleParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RepresentationExampleParameters) DeepCopyInto(out *RepresentationExampleParameters) { +func (in *RepresentationFormParameterExampleInitParameters) DeepCopyInto(out *RepresentationFormParameterExampleInitParameters) { *out = *in if in.Description != nil { in, out := &in.Description, &out.Description @@ -12132,12 +15538,12 @@ func (in *RepresentationExampleParameters) DeepCopyInto(out *RepresentationExamp } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepresentationExampleParameters. -func (in *RepresentationExampleParameters) DeepCopy() *RepresentationExampleParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepresentationFormParameterExampleInitParameters. +func (in *RepresentationFormParameterExampleInitParameters) DeepCopy() *RepresentationFormParameterExampleInitParameters { if in == nil { return nil } - out := new(RepresentationExampleParameters) + out := new(RepresentationFormParameterExampleInitParameters) in.DeepCopyInto(out) return out } @@ -12222,6 +15628,74 @@ func (in *RepresentationFormParameterExampleParameters) DeepCopy() *Representati return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RepresentationFormParameterInitParameters) DeepCopyInto(out *RepresentationFormParameterInitParameters) { + *out = *in + if in.DefaultValue != nil { + in, out := &in.DefaultValue, &out.DefaultValue + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Example != nil { + in, out := &in.Example, &out.Example + *out = make([]RepresentationFormParameterExampleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Required != nil { + in, out := &in.Required, &out.Required + *out = new(bool) + **out = **in + } + if in.SchemaID != nil { + in, out := &in.SchemaID, &out.SchemaID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeName != nil { + in, out := &in.TypeName, &out.TypeName + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepresentationFormParameterInitParameters. +func (in *RepresentationFormParameterInitParameters) DeepCopy() *RepresentationFormParameterInitParameters { + if in == nil { + return nil + } + out := new(RepresentationFormParameterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RepresentationFormParameterObservation) DeepCopyInto(out *RepresentationFormParameterObservation) { *out = *in @@ -12358,6 +15832,50 @@ func (in *RepresentationFormParameterParameters) DeepCopy() *RepresentationFormP return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RepresentationInitParameters) DeepCopyInto(out *RepresentationInitParameters) { + *out = *in + if in.ContentType != nil { + in, out := &in.ContentType, &out.ContentType + *out = new(string) + **out = **in + } + if in.Example != nil { + in, out := &in.Example, &out.Example + *out = make([]RepresentationExampleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FormParameter != nil { + in, out := &in.FormParameter, &out.FormParameter + *out = make([]FormParameterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SchemaID != nil { + in, out := &in.SchemaID, &out.SchemaID + *out = new(string) + **out = **in + } + if in.TypeName != nil { + in, out := &in.TypeName, &out.TypeName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepresentationInitParameters. +func (in *RepresentationInitParameters) DeepCopy() *RepresentationInitParameters { + if in == nil { + return nil + } + out := new(RepresentationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RepresentationObservation) DeepCopyInto(out *RepresentationObservation) { *out = *in @@ -12446,6 +15964,47 @@ func (in *RepresentationParameters) DeepCopy() *RepresentationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestInitParameters) DeepCopyInto(out *RequestInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = make([]HeaderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryParameter != nil { + in, out := &in.QueryParameter, &out.QueryParameter + *out = make([]QueryParameterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Representation != nil { + in, out := &in.Representation, &out.Representation + *out = make([]RepresentationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestInitParameters. +func (in *RequestInitParameters) DeepCopy() *RequestInitParameters { + if in == nil { + return nil + } + out := new(RequestInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RequestObservation) DeepCopyInto(out *RequestObservation) { *out = *in @@ -12502,28 +16061,96 @@ func (in *RequestParameters) DeepCopyInto(out *RequestParameters) { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.QueryParameter != nil { - in, out := &in.QueryParameter, &out.QueryParameter - *out = make([]QueryParameterParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.QueryParameter != nil { + in, out := &in.QueryParameter, &out.QueryParameter + *out = make([]QueryParameterParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Representation != nil { + in, out := &in.Representation, &out.Representation + *out = make([]RepresentationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestParameters. +func (in *RequestParameters) DeepCopy() *RequestParameters { + if in == nil { + return nil + } + out := new(RequestParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResponseHeaderInitParameters) DeepCopyInto(out *ResponseHeaderInitParameters) { + *out = *in + if in.DefaultValue != nil { + in, out := &in.DefaultValue, &out.DefaultValue + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Example != nil { + in, out := &in.Example, &out.Example + *out = make([]HeaderExampleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Required != nil { + in, out := &in.Required, &out.Required + *out = new(bool) + **out = **in + } + if in.SchemaID != nil { + in, out := &in.SchemaID, &out.SchemaID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeName != nil { + in, out := &in.TypeName, &out.TypeName + *out = new(string) + **out = **in } - if in.Representation != nil { - in, out := &in.Representation, &out.Representation - *out = make([]RepresentationParameters, len(*in)) + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestParameters. -func (in *RequestParameters) DeepCopy() *RequestParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseHeaderInitParameters. +func (in *ResponseHeaderInitParameters) DeepCopy() *ResponseHeaderInitParameters { if in == nil { return nil } - out := new(RequestParameters) + out := new(ResponseHeaderInitParameters) in.DeepCopyInto(out) return out } @@ -12664,6 +16291,45 @@ func (in *ResponseHeaderParameters) DeepCopy() *ResponseHeaderParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResponseInitParameters) DeepCopyInto(out *ResponseInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = make([]ResponseHeaderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Representation != nil { + in, out := &in.Representation, &out.Representation + *out = make([]ResponseRepresentationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StatusCode != nil { + in, out := &in.StatusCode, &out.StatusCode + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseInitParameters. +func (in *ResponseInitParameters) DeepCopy() *ResponseInitParameters { + if in == nil { + return nil + } + out := new(ResponseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResponseObservation) DeepCopyInto(out *ResponseObservation) { *out = *in @@ -12742,6 +16408,46 @@ func (in *ResponseParameters) DeepCopy() *ResponseParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResponseRepresentationExampleInitParameters) DeepCopyInto(out *ResponseRepresentationExampleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ExternalValue != nil { + in, out := &in.ExternalValue, &out.ExternalValue + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Summary != nil { + in, out := &in.Summary, &out.Summary + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseRepresentationExampleInitParameters. +func (in *ResponseRepresentationExampleInitParameters) DeepCopy() *ResponseRepresentationExampleInitParameters { + if in == nil { + return nil + } + out := new(ResponseRepresentationExampleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResponseRepresentationExampleObservation) DeepCopyInto(out *ResponseRepresentationExampleObservation) { *out = *in @@ -12822,6 +16528,50 @@ func (in *ResponseRepresentationExampleParameters) DeepCopy() *ResponseRepresent return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResponseRepresentationInitParameters) DeepCopyInto(out *ResponseRepresentationInitParameters) { + *out = *in + if in.ContentType != nil { + in, out := &in.ContentType, &out.ContentType + *out = new(string) + **out = **in + } + if in.Example != nil { + in, out := &in.Example, &out.Example + *out = make([]ResponseRepresentationExampleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FormParameter != nil { + in, out := &in.FormParameter, &out.FormParameter + *out = make([]RepresentationFormParameterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SchemaID != nil { + in, out := &in.SchemaID, &out.SchemaID + *out = new(string) + **out = **in + } + if in.TypeName != nil { + in, out := &in.TypeName, &out.TypeName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseRepresentationInitParameters. +func (in *ResponseRepresentationInitParameters) DeepCopy() *ResponseRepresentationInitParameters { + if in == nil { + return nil + } + out := new(ResponseRepresentationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResponseRepresentationObservation) DeepCopyInto(out *ResponseRepresentationObservation) { *out = *in @@ -12910,6 +16660,21 @@ func (in *ResponseRepresentationParameters) DeepCopy() *ResponseRepresentationPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScmInitParameters) DeepCopyInto(out *ScmInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScmInitParameters. +func (in *ScmInitParameters) DeepCopy() *ScmInitParameters { + if in == nil { + return nil + } + out := new(ScmInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScmObservation) DeepCopyInto(out *ScmObservation) { *out = *in @@ -12928,59 +16693,159 @@ func (in *ScmObservation) DeepCopyInto(out *ScmObservation) { *out = new(string) **out = **in } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName - *out = new(string) + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } + if in.NegotiateClientCertificate != nil { + in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate + *out = new(bool) + **out = **in + } + if in.SSLKeyvaultIdentityClientID != nil { + in, out := &in.SSLKeyvaultIdentityClientID, &out.SSLKeyvaultIdentityClientID + *out = new(string) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScmObservation. +func (in *ScmObservation) DeepCopy() *ScmObservation { + if in == nil { + return nil + } + out := new(ScmObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScmParameters) DeepCopyInto(out *ScmParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScmParameters. +func (in *ScmParameters) DeepCopy() *ScmParameters { + if in == nil { + return nil + } + out := new(ScmParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityInitParameters) DeepCopyInto(out *SecurityInitParameters) { + *out = *in + if in.EnableBackendSsl30 != nil { + in, out := &in.EnableBackendSsl30, &out.EnableBackendSsl30 + *out = new(bool) + **out = **in + } + if in.EnableBackendTls10 != nil { + in, out := &in.EnableBackendTls10, &out.EnableBackendTls10 + *out = new(bool) + **out = **in + } + if in.EnableBackendTls11 != nil { + in, out := &in.EnableBackendTls11, &out.EnableBackendTls11 + *out = new(bool) + **out = **in + } + if in.EnableFrontendSsl30 != nil { + in, out := &in.EnableFrontendSsl30, &out.EnableFrontendSsl30 + *out = new(bool) + **out = **in + } + if in.EnableFrontendTls10 != nil { + in, out := &in.EnableFrontendTls10, &out.EnableFrontendTls10 + *out = new(bool) + **out = **in + } + if in.EnableFrontendTls11 != nil { + in, out := &in.EnableFrontendTls11, &out.EnableFrontendTls11 + *out = new(bool) + **out = **in + } + if in.TLSEcdheEcdsaWithAes128CbcShaCiphersEnabled != nil { + in, out := &in.TLSEcdheEcdsaWithAes128CbcShaCiphersEnabled, &out.TLSEcdheEcdsaWithAes128CbcShaCiphersEnabled + *out = new(bool) + **out = **in + } + if in.TLSEcdheEcdsaWithAes256CbcShaCiphersEnabled != nil { + in, out := &in.TLSEcdheEcdsaWithAes256CbcShaCiphersEnabled, &out.TLSEcdheEcdsaWithAes256CbcShaCiphersEnabled + *out = new(bool) + **out = **in + } + if in.TLSEcdheRsaWithAes128CbcShaCiphersEnabled != nil { + in, out := &in.TLSEcdheRsaWithAes128CbcShaCiphersEnabled, &out.TLSEcdheRsaWithAes128CbcShaCiphersEnabled + *out = new(bool) + **out = **in + } + if in.TLSEcdheRsaWithAes256CbcShaCiphersEnabled != nil { + in, out := &in.TLSEcdheRsaWithAes256CbcShaCiphersEnabled, &out.TLSEcdheRsaWithAes256CbcShaCiphersEnabled + *out = new(bool) + **out = **in + } + if in.TLSRsaWithAes128CbcSha256CiphersEnabled != nil { + in, out := &in.TLSRsaWithAes128CbcSha256CiphersEnabled, &out.TLSRsaWithAes128CbcSha256CiphersEnabled + *out = new(bool) + **out = **in + } + if in.TLSRsaWithAes128CbcShaCiphersEnabled != nil { + in, out := &in.TLSRsaWithAes128CbcShaCiphersEnabled, &out.TLSRsaWithAes128CbcShaCiphersEnabled + *out = new(bool) **out = **in } - if in.KeyVaultID != nil { - in, out := &in.KeyVaultID, &out.KeyVaultID - *out = new(string) + if in.TLSRsaWithAes128GCMSha256CiphersEnabled != nil { + in, out := &in.TLSRsaWithAes128GCMSha256CiphersEnabled, &out.TLSRsaWithAes128GCMSha256CiphersEnabled + *out = new(bool) **out = **in } - if in.NegotiateClientCertificate != nil { - in, out := &in.NegotiateClientCertificate, &out.NegotiateClientCertificate + if in.TLSRsaWithAes256CbcSha256CiphersEnabled != nil { + in, out := &in.TLSRsaWithAes256CbcSha256CiphersEnabled, &out.TLSRsaWithAes256CbcSha256CiphersEnabled *out = new(bool) **out = **in } - if in.SSLKeyvaultIdentityClientID != nil { - in, out := &in.SSLKeyvaultIdentityClientID, &out.SSLKeyvaultIdentityClientID - *out = new(string) + if in.TLSRsaWithAes256CbcShaCiphersEnabled != nil { + in, out := &in.TLSRsaWithAes256CbcShaCiphersEnabled, &out.TLSRsaWithAes256CbcShaCiphersEnabled + *out = new(bool) **out = **in } - if in.Subject != nil { - in, out := &in.Subject, &out.Subject - *out = new(string) + if in.TLSRsaWithAes256GCMSha384CiphersEnabled != nil { + in, out := &in.TLSRsaWithAes256GCMSha384CiphersEnabled, &out.TLSRsaWithAes256GCMSha384CiphersEnabled + *out = new(bool) **out = **in } - if in.Thumbprint != nil { - in, out := &in.Thumbprint, &out.Thumbprint - *out = new(string) + if in.TripleDesCiphersEnabled != nil { + in, out := &in.TripleDesCiphersEnabled, &out.TripleDesCiphersEnabled + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScmObservation. -func (in *ScmObservation) DeepCopy() *ScmObservation { - if in == nil { - return nil - } - out := new(ScmObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ScmParameters) DeepCopyInto(out *ScmParameters) { - *out = *in -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScmParameters. -func (in *ScmParameters) DeepCopy() *ScmParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityInitParameters. +func (in *SecurityInitParameters) DeepCopy() *SecurityInitParameters { if in == nil { return nil } - out := new(ScmParameters) + out := new(SecurityInitParameters) in.DeepCopyInto(out) return out } @@ -13185,6 +17050,31 @@ func (in *SecurityParameters) DeepCopy() *SecurityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerX509NameInitParameters) DeepCopyInto(out *ServerX509NameInitParameters) { + *out = *in + if in.IssuerCertificateThumbprint != nil { + in, out := &in.IssuerCertificateThumbprint, &out.IssuerCertificateThumbprint + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerX509NameInitParameters. +func (in *ServerX509NameInitParameters) DeepCopy() *ServerX509NameInitParameters { + if in == nil { + return nil + } + out := new(ServerX509NameInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerX509NameObservation) DeepCopyInto(out *ServerX509NameObservation) { *out = *in @@ -13235,6 +17125,65 @@ func (in *ServerX509NameParameters) DeepCopy() *ServerX509NameParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceFabricClusterInitParameters) DeepCopyInto(out *ServiceFabricClusterInitParameters) { + *out = *in + if in.ClientCertificateID != nil { + in, out := &in.ClientCertificateID, &out.ClientCertificateID + *out = new(string) + **out = **in + } + if in.ClientCertificateThumbprint != nil { + in, out := &in.ClientCertificateThumbprint, &out.ClientCertificateThumbprint + *out = new(string) + **out = **in + } + if in.ManagementEndpoints != nil { + in, out := &in.ManagementEndpoints, &out.ManagementEndpoints + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxPartitionResolutionRetries != nil { + in, out := &in.MaxPartitionResolutionRetries, &out.MaxPartitionResolutionRetries + *out = new(float64) + **out = **in + } + if in.ServerCertificateThumbprints != nil { + in, out := &in.ServerCertificateThumbprints, &out.ServerCertificateThumbprints + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ServerX509Name != nil { + in, out := &in.ServerX509Name, &out.ServerX509Name + *out = make([]ServerX509NameInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceFabricClusterInitParameters. +func (in *ServiceFabricClusterInitParameters) DeepCopy() *ServiceFabricClusterInitParameters { + if in == nil { + return nil + } + out := new(ServiceFabricClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServiceFabricClusterObservation) DeepCopyInto(out *ServiceFabricClusterObservation) { *out = *in @@ -13353,6 +17302,26 @@ func (in *ServiceFabricClusterParameters) DeepCopy() *ServiceFabricClusterParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SignInInitParameters) DeepCopyInto(out *SignInInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SignInInitParameters. +func (in *SignInInitParameters) DeepCopy() *SignInInitParameters { + if in == nil { + return nil + } + out := new(SignInInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SignInObservation) DeepCopyInto(out *SignInObservation) { *out = *in @@ -13393,6 +17362,33 @@ func (in *SignInParameters) DeepCopy() *SignInParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SignUpInitParameters) DeepCopyInto(out *SignUpInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.TermsOfService != nil { + in, out := &in.TermsOfService, &out.TermsOfService + *out = make([]TermsOfServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SignUpInitParameters. +func (in *SignUpInitParameters) DeepCopy() *SignUpInitParameters { + if in == nil { + return nil + } + out := new(SignUpInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SignUpObservation) DeepCopyInto(out *SignUpObservation) { *out = *in @@ -13474,6 +17470,66 @@ func (in *Subscription) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionInitParameters) DeepCopyInto(out *SubscriptionInitParameters) { + *out = *in + if in.APIID != nil { + in, out := &in.APIID, &out.APIID + *out = new(string) + **out = **in + } + if in.AllowTracing != nil { + in, out := &in.AllowTracing, &out.AllowTracing + *out = new(bool) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionInitParameters. +func (in *SubscriptionInitParameters) DeepCopy() *SubscriptionInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionKeyParameterNamesInitParameters) DeepCopyInto(out *SubscriptionKeyParameterNamesInitParameters) { + *out = *in + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = new(string) + **out = **in + } + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionKeyParameterNamesInitParameters. +func (in *SubscriptionKeyParameterNamesInitParameters) DeepCopy() *SubscriptionKeyParameterNamesInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionKeyParameterNamesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionKeyParameterNamesObservation) DeepCopyInto(out *SubscriptionKeyParameterNamesObservation) { *out = *in @@ -13726,6 +17782,7 @@ func (in *SubscriptionSpec) DeepCopyInto(out *SubscriptionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionSpec. @@ -13755,6 +17812,31 @@ func (in *SubscriptionStatus) DeepCopy() *SubscriptionStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TLSInitParameters) DeepCopyInto(out *TLSInitParameters) { + *out = *in + if in.ValidateCertificateChain != nil { + in, out := &in.ValidateCertificateChain, &out.ValidateCertificateChain + *out = new(bool) + **out = **in + } + if in.ValidateCertificateName != nil { + in, out := &in.ValidateCertificateName, &out.ValidateCertificateName + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSInitParameters. +func (in *TLSInitParameters) DeepCopy() *TLSInitParameters { + if in == nil { + return nil + } + out := new(TLSInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TLSObservation) DeepCopyInto(out *TLSObservation) { *out = *in @@ -13832,6 +17914,26 @@ func (in *Tag) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TagInitParameters) DeepCopyInto(out *TagInitParameters) { + *out = *in + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TagInitParameters. +func (in *TagInitParameters) DeepCopy() *TagInitParameters { + if in == nil { + return nil + } + out := new(TagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TagList) DeepCopyInto(out *TagList) { *out = *in @@ -13934,6 +18036,7 @@ func (in *TagSpec) DeepCopyInto(out *TagSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TagSpec. @@ -13963,6 +18066,46 @@ func (in *TagStatus) DeepCopy() *TagStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TemplateParameterExampleInitParameters) DeepCopyInto(out *TemplateParameterExampleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ExternalValue != nil { + in, out := &in.ExternalValue, &out.ExternalValue + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Summary != nil { + in, out := &in.Summary, &out.Summary + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateParameterExampleInitParameters. +func (in *TemplateParameterExampleInitParameters) DeepCopy() *TemplateParameterExampleInitParameters { + if in == nil { + return nil + } + out := new(TemplateParameterExampleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TemplateParameterExampleObservation) DeepCopyInto(out *TemplateParameterExampleObservation) { *out = *in @@ -14043,6 +18186,74 @@ func (in *TemplateParameterExampleParameters) DeepCopy() *TemplateParameterExamp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TemplateParameterInitParameters) DeepCopyInto(out *TemplateParameterInitParameters) { + *out = *in + if in.DefaultValue != nil { + in, out := &in.DefaultValue, &out.DefaultValue + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Example != nil { + in, out := &in.Example, &out.Example + *out = make([]TemplateParameterExampleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Required != nil { + in, out := &in.Required, &out.Required + *out = new(bool) + **out = **in + } + if in.SchemaID != nil { + in, out := &in.SchemaID, &out.SchemaID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeName != nil { + in, out := &in.TypeName, &out.TypeName + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateParameterInitParameters. +func (in *TemplateParameterInitParameters) DeepCopy() *TemplateParameterInitParameters { + if in == nil { + return nil + } + out := new(TemplateParameterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TemplateParameterObservation) DeepCopyInto(out *TemplateParameterObservation) { *out = *in @@ -14179,6 +18390,26 @@ func (in *TemplateParameterParameters) DeepCopy() *TemplateParameterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TenantAccessInitParameters) DeepCopyInto(out *TenantAccessInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantAccessInitParameters. +func (in *TenantAccessInitParameters) DeepCopy() *TenantAccessInitParameters { + if in == nil { + return nil + } + out := new(TenantAccessInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TenantAccessObservation) DeepCopyInto(out *TenantAccessObservation) { *out = *in @@ -14224,6 +18455,36 @@ func (in *TenantAccessParameters) DeepCopy() *TenantAccessParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TermsOfServiceInitParameters) DeepCopyInto(out *TermsOfServiceInitParameters) { + *out = *in + if in.ConsentRequired != nil { + in, out := &in.ConsentRequired, &out.ConsentRequired + *out = new(bool) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Text != nil { + in, out := &in.Text, &out.Text + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TermsOfServiceInitParameters. +func (in *TermsOfServiceInitParameters) DeepCopy() *TermsOfServiceInitParameters { + if in == nil { + return nil + } + out := new(TermsOfServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TermsOfServiceObservation) DeepCopyInto(out *TermsOfServiceObservation) { *out = *in @@ -14284,6 +18545,31 @@ func (in *TermsOfServiceParameters) DeepCopy() *TermsOfServiceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TokenBodyParameterInitParameters) DeepCopyInto(out *TokenBodyParameterInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenBodyParameterInitParameters. +func (in *TokenBodyParameterInitParameters) DeepCopy() *TokenBodyParameterInitParameters { + if in == nil { + return nil + } + out := new(TokenBodyParameterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TokenBodyParameterObservation) DeepCopyInto(out *TokenBodyParameterObservation) { *out = *in @@ -14361,6 +18647,51 @@ func (in *User) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UserInitParameters) DeepCopyInto(out *UserInitParameters) { + *out = *in + if in.Confirmation != nil { + in, out := &in.Confirmation, &out.Confirmation + *out = new(string) + **out = **in + } + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.FirstName != nil { + in, out := &in.FirstName, &out.FirstName + *out = new(string) + **out = **in + } + if in.LastName != nil { + in, out := &in.LastName, &out.LastName + *out = new(string) + **out = **in + } + if in.Note != nil { + in, out := &in.Note, &out.Note + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserInitParameters. +func (in *UserInitParameters) DeepCopy() *UserInitParameters { + if in == nil { + return nil + } + out := new(UserInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *UserList) DeepCopyInto(out *UserList) { *out = *in @@ -14538,6 +18869,7 @@ func (in *UserSpec) DeepCopyInto(out *UserSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserSpec. @@ -14567,6 +18899,31 @@ func (in *UserStatus) DeepCopy() *UserStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ValueFromKeyVaultInitParameters) DeepCopyInto(out *ValueFromKeyVaultInitParameters) { + *out = *in + if in.IdentityClientID != nil { + in, out := &in.IdentityClientID, &out.IdentityClientID + *out = new(string) + **out = **in + } + if in.SecretID != nil { + in, out := &in.SecretID, &out.SecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueFromKeyVaultInitParameters. +func (in *ValueFromKeyVaultInitParameters) DeepCopy() *ValueFromKeyVaultInitParameters { + if in == nil { + return nil + } + out := new(ValueFromKeyVaultInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ValueFromKeyVaultObservation) DeepCopyInto(out *ValueFromKeyVaultObservation) { *out = *in @@ -14617,6 +18974,21 @@ func (in *ValueFromKeyVaultParameters) DeepCopy() *ValueFromKeyVaultParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkConfigurationInitParameters) DeepCopyInto(out *VirtualNetworkConfigurationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkConfigurationInitParameters. +func (in *VirtualNetworkConfigurationInitParameters) DeepCopy() *VirtualNetworkConfigurationInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkConfigurationObservation) DeepCopyInto(out *VirtualNetworkConfigurationObservation) { *out = *in @@ -14667,6 +19039,31 @@ func (in *VirtualNetworkConfigurationParameters) DeepCopy() *VirtualNetworkConfi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WsdlSelectorInitParameters) DeepCopyInto(out *WsdlSelectorInitParameters) { + *out = *in + if in.EndpointName != nil { + in, out := &in.EndpointName, &out.EndpointName + *out = new(string) + **out = **in + } + if in.ServiceName != nil { + in, out := &in.ServiceName, &out.ServiceName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WsdlSelectorInitParameters. +func (in *WsdlSelectorInitParameters) DeepCopy() *WsdlSelectorInitParameters { + if in == nil { + return nil + } + out := new(WsdlSelectorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WsdlSelectorObservation) DeepCopyInto(out *WsdlSelectorObservation) { *out = *in diff --git a/apis/apimanagement/v1beta1/zz_generated.managed.go b/apis/apimanagement/v1beta1/zz_generated.managed.go index d10e08db4..08df964fb 100644 --- a/apis/apimanagement/v1beta1/zz_generated.managed.go +++ b/apis/apimanagement/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *API) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this API. -func (mg *API) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this API. +func (mg *API) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this API. @@ -55,9 +55,9 @@ func (mg *API) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this API. -func (mg *API) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this API. +func (mg *API) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this API. @@ -93,9 +93,9 @@ func (mg *APIDiagnostic) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this APIDiagnostic. -func (mg *APIDiagnostic) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this APIDiagnostic. +func (mg *APIDiagnostic) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this APIDiagnostic. @@ -131,9 +131,9 @@ func (mg *APIDiagnostic) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this APIDiagnostic. -func (mg *APIDiagnostic) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this APIDiagnostic. +func (mg *APIDiagnostic) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this APIDiagnostic. @@ -169,9 +169,9 @@ func (mg *APIOperation) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this APIOperation. -func (mg *APIOperation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this APIOperation. +func (mg *APIOperation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this APIOperation. @@ -207,9 +207,9 @@ func (mg *APIOperation) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this APIOperation. -func (mg *APIOperation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this APIOperation. +func (mg *APIOperation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this APIOperation. @@ -245,9 +245,9 @@ func (mg *APIOperationPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this APIOperationPolicy. -func (mg *APIOperationPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this APIOperationPolicy. +func (mg *APIOperationPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this APIOperationPolicy. @@ -283,9 +283,9 @@ func (mg *APIOperationPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this APIOperationPolicy. -func (mg *APIOperationPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this APIOperationPolicy. +func (mg *APIOperationPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this APIOperationPolicy. @@ -321,9 +321,9 @@ func (mg *APIOperationTag) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this APIOperationTag. -func (mg *APIOperationTag) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this APIOperationTag. +func (mg *APIOperationTag) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this APIOperationTag. @@ -359,9 +359,9 @@ func (mg *APIOperationTag) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this APIOperationTag. -func (mg *APIOperationTag) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this APIOperationTag. +func (mg *APIOperationTag) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this APIOperationTag. @@ -397,9 +397,9 @@ func (mg *APIPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this APIPolicy. -func (mg *APIPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this APIPolicy. +func (mg *APIPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this APIPolicy. @@ -435,9 +435,9 @@ func (mg *APIPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this APIPolicy. -func (mg *APIPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this APIPolicy. +func (mg *APIPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this APIPolicy. @@ -473,9 +473,9 @@ func (mg *APIRelease) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this APIRelease. -func (mg *APIRelease) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this APIRelease. +func (mg *APIRelease) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this APIRelease. @@ -511,9 +511,9 @@ func (mg *APIRelease) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this APIRelease. -func (mg *APIRelease) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this APIRelease. +func (mg *APIRelease) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this APIRelease. @@ -549,9 +549,9 @@ func (mg *APISchema) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this APISchema. -func (mg *APISchema) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this APISchema. +func (mg *APISchema) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this APISchema. @@ -587,9 +587,9 @@ func (mg *APISchema) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this APISchema. -func (mg *APISchema) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this APISchema. +func (mg *APISchema) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this APISchema. @@ -625,9 +625,9 @@ func (mg *APITag) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this APITag. -func (mg *APITag) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this APITag. +func (mg *APITag) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this APITag. @@ -663,9 +663,9 @@ func (mg *APITag) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this APITag. -func (mg *APITag) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this APITag. +func (mg *APITag) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this APITag. @@ -701,9 +701,9 @@ func (mg *APIVersionSet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this APIVersionSet. -func (mg *APIVersionSet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this APIVersionSet. +func (mg *APIVersionSet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this APIVersionSet. @@ -739,9 +739,9 @@ func (mg *APIVersionSet) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this APIVersionSet. -func (mg *APIVersionSet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this APIVersionSet. +func (mg *APIVersionSet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this APIVersionSet. @@ -777,9 +777,9 @@ func (mg *AuthorizationServer) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AuthorizationServer. -func (mg *AuthorizationServer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AuthorizationServer. +func (mg *AuthorizationServer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AuthorizationServer. @@ -815,9 +815,9 @@ func (mg *AuthorizationServer) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AuthorizationServer. -func (mg *AuthorizationServer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AuthorizationServer. +func (mg *AuthorizationServer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AuthorizationServer. @@ -853,9 +853,9 @@ func (mg *Backend) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Backend. -func (mg *Backend) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Backend. +func (mg *Backend) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Backend. @@ -891,9 +891,9 @@ func (mg *Backend) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Backend. -func (mg *Backend) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Backend. +func (mg *Backend) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Backend. @@ -929,9 +929,9 @@ func (mg *Certificate) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Certificate. -func (mg *Certificate) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Certificate. +func (mg *Certificate) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Certificate. @@ -967,9 +967,9 @@ func (mg *Certificate) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Certificate. -func (mg *Certificate) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Certificate. +func (mg *Certificate) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Certificate. @@ -1005,9 +1005,9 @@ func (mg *Diagnostic) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Diagnostic. -func (mg *Diagnostic) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Diagnostic. +func (mg *Diagnostic) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Diagnostic. @@ -1043,9 +1043,9 @@ func (mg *Diagnostic) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Diagnostic. -func (mg *Diagnostic) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Diagnostic. +func (mg *Diagnostic) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Diagnostic. @@ -1081,9 +1081,9 @@ func (mg *EmailTemplate) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this EmailTemplate. -func (mg *EmailTemplate) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this EmailTemplate. +func (mg *EmailTemplate) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this EmailTemplate. @@ -1119,9 +1119,9 @@ func (mg *EmailTemplate) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this EmailTemplate. -func (mg *EmailTemplate) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this EmailTemplate. +func (mg *EmailTemplate) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this EmailTemplate. @@ -1157,9 +1157,9 @@ func (mg *Gateway) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Gateway. -func (mg *Gateway) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Gateway. +func (mg *Gateway) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Gateway. @@ -1195,9 +1195,9 @@ func (mg *Gateway) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Gateway. -func (mg *Gateway) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Gateway. +func (mg *Gateway) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Gateway. @@ -1233,9 +1233,9 @@ func (mg *GatewayAPI) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this GatewayAPI. -func (mg *GatewayAPI) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this GatewayAPI. +func (mg *GatewayAPI) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this GatewayAPI. @@ -1271,9 +1271,9 @@ func (mg *GatewayAPI) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this GatewayAPI. -func (mg *GatewayAPI) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this GatewayAPI. +func (mg *GatewayAPI) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this GatewayAPI. @@ -1309,9 +1309,9 @@ func (mg *GlobalSchema) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this GlobalSchema. -func (mg *GlobalSchema) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this GlobalSchema. +func (mg *GlobalSchema) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this GlobalSchema. @@ -1347,9 +1347,9 @@ func (mg *GlobalSchema) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this GlobalSchema. -func (mg *GlobalSchema) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this GlobalSchema. +func (mg *GlobalSchema) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this GlobalSchema. @@ -1385,9 +1385,9 @@ func (mg *IdentityProviderAAD) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IdentityProviderAAD. -func (mg *IdentityProviderAAD) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IdentityProviderAAD. +func (mg *IdentityProviderAAD) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IdentityProviderAAD. @@ -1423,9 +1423,9 @@ func (mg *IdentityProviderAAD) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IdentityProviderAAD. -func (mg *IdentityProviderAAD) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IdentityProviderAAD. +func (mg *IdentityProviderAAD) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IdentityProviderAAD. @@ -1461,9 +1461,9 @@ func (mg *IdentityProviderFacebook) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IdentityProviderFacebook. -func (mg *IdentityProviderFacebook) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IdentityProviderFacebook. +func (mg *IdentityProviderFacebook) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IdentityProviderFacebook. @@ -1499,9 +1499,9 @@ func (mg *IdentityProviderFacebook) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IdentityProviderFacebook. -func (mg *IdentityProviderFacebook) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IdentityProviderFacebook. +func (mg *IdentityProviderFacebook) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IdentityProviderFacebook. @@ -1537,9 +1537,9 @@ func (mg *IdentityProviderGoogle) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IdentityProviderGoogle. -func (mg *IdentityProviderGoogle) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IdentityProviderGoogle. +func (mg *IdentityProviderGoogle) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IdentityProviderGoogle. @@ -1575,9 +1575,9 @@ func (mg *IdentityProviderGoogle) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IdentityProviderGoogle. -func (mg *IdentityProviderGoogle) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IdentityProviderGoogle. +func (mg *IdentityProviderGoogle) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IdentityProviderGoogle. @@ -1613,9 +1613,9 @@ func (mg *IdentityProviderMicrosoft) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IdentityProviderMicrosoft. -func (mg *IdentityProviderMicrosoft) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IdentityProviderMicrosoft. +func (mg *IdentityProviderMicrosoft) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IdentityProviderMicrosoft. @@ -1651,9 +1651,9 @@ func (mg *IdentityProviderMicrosoft) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IdentityProviderMicrosoft. -func (mg *IdentityProviderMicrosoft) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IdentityProviderMicrosoft. +func (mg *IdentityProviderMicrosoft) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IdentityProviderMicrosoft. @@ -1689,9 +1689,9 @@ func (mg *IdentityProviderTwitter) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IdentityProviderTwitter. -func (mg *IdentityProviderTwitter) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IdentityProviderTwitter. +func (mg *IdentityProviderTwitter) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IdentityProviderTwitter. @@ -1727,9 +1727,9 @@ func (mg *IdentityProviderTwitter) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IdentityProviderTwitter. -func (mg *IdentityProviderTwitter) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IdentityProviderTwitter. +func (mg *IdentityProviderTwitter) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IdentityProviderTwitter. @@ -1765,9 +1765,9 @@ func (mg *Logger) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Logger. -func (mg *Logger) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Logger. +func (mg *Logger) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Logger. @@ -1803,9 +1803,9 @@ func (mg *Logger) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Logger. -func (mg *Logger) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Logger. +func (mg *Logger) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Logger. @@ -1841,9 +1841,9 @@ func (mg *Management) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Management. -func (mg *Management) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Management. +func (mg *Management) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Management. @@ -1879,9 +1879,9 @@ func (mg *Management) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Management. -func (mg *Management) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Management. +func (mg *Management) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Management. @@ -1917,9 +1917,9 @@ func (mg *NamedValue) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NamedValue. -func (mg *NamedValue) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NamedValue. +func (mg *NamedValue) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NamedValue. @@ -1955,9 +1955,9 @@ func (mg *NamedValue) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NamedValue. -func (mg *NamedValue) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NamedValue. +func (mg *NamedValue) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NamedValue. @@ -1993,9 +1993,9 @@ func (mg *NotificationRecipientEmail) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NotificationRecipientEmail. -func (mg *NotificationRecipientEmail) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NotificationRecipientEmail. +func (mg *NotificationRecipientEmail) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NotificationRecipientEmail. @@ -2031,9 +2031,9 @@ func (mg *NotificationRecipientEmail) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NotificationRecipientEmail. -func (mg *NotificationRecipientEmail) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NotificationRecipientEmail. +func (mg *NotificationRecipientEmail) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NotificationRecipientEmail. @@ -2069,9 +2069,9 @@ func (mg *NotificationRecipientUser) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NotificationRecipientUser. -func (mg *NotificationRecipientUser) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NotificationRecipientUser. +func (mg *NotificationRecipientUser) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NotificationRecipientUser. @@ -2107,9 +2107,9 @@ func (mg *NotificationRecipientUser) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NotificationRecipientUser. -func (mg *NotificationRecipientUser) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NotificationRecipientUser. +func (mg *NotificationRecipientUser) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NotificationRecipientUser. @@ -2145,9 +2145,9 @@ func (mg *OpenIDConnectProvider) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OpenIDConnectProvider. -func (mg *OpenIDConnectProvider) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OpenIDConnectProvider. +func (mg *OpenIDConnectProvider) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OpenIDConnectProvider. @@ -2183,9 +2183,9 @@ func (mg *OpenIDConnectProvider) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OpenIDConnectProvider. -func (mg *OpenIDConnectProvider) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OpenIDConnectProvider. +func (mg *OpenIDConnectProvider) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OpenIDConnectProvider. @@ -2221,9 +2221,9 @@ func (mg *Policy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Policy. -func (mg *Policy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Policy. +func (mg *Policy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Policy. @@ -2259,9 +2259,9 @@ func (mg *Policy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Policy. -func (mg *Policy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Policy. +func (mg *Policy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Policy. @@ -2297,9 +2297,9 @@ func (mg *Product) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Product. -func (mg *Product) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Product. +func (mg *Product) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Product. @@ -2335,9 +2335,9 @@ func (mg *Product) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Product. -func (mg *Product) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Product. +func (mg *Product) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Product. @@ -2373,9 +2373,9 @@ func (mg *ProductAPI) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ProductAPI. -func (mg *ProductAPI) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ProductAPI. +func (mg *ProductAPI) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ProductAPI. @@ -2411,9 +2411,9 @@ func (mg *ProductAPI) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ProductAPI. -func (mg *ProductAPI) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ProductAPI. +func (mg *ProductAPI) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ProductAPI. @@ -2449,9 +2449,9 @@ func (mg *ProductPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ProductPolicy. -func (mg *ProductPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ProductPolicy. +func (mg *ProductPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ProductPolicy. @@ -2487,9 +2487,9 @@ func (mg *ProductPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ProductPolicy. -func (mg *ProductPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ProductPolicy. +func (mg *ProductPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ProductPolicy. @@ -2525,9 +2525,9 @@ func (mg *ProductTag) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ProductTag. -func (mg *ProductTag) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ProductTag. +func (mg *ProductTag) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ProductTag. @@ -2563,9 +2563,9 @@ func (mg *ProductTag) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ProductTag. -func (mg *ProductTag) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ProductTag. +func (mg *ProductTag) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ProductTag. @@ -2601,9 +2601,9 @@ func (mg *RedisCache) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RedisCache. -func (mg *RedisCache) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RedisCache. +func (mg *RedisCache) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RedisCache. @@ -2639,9 +2639,9 @@ func (mg *RedisCache) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RedisCache. -func (mg *RedisCache) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RedisCache. +func (mg *RedisCache) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RedisCache. @@ -2677,9 +2677,9 @@ func (mg *Subscription) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Subscription. -func (mg *Subscription) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Subscription. +func (mg *Subscription) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Subscription. @@ -2715,9 +2715,9 @@ func (mg *Subscription) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Subscription. -func (mg *Subscription) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Subscription. +func (mg *Subscription) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Subscription. @@ -2753,9 +2753,9 @@ func (mg *Tag) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Tag. -func (mg *Tag) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Tag. +func (mg *Tag) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Tag. @@ -2791,9 +2791,9 @@ func (mg *Tag) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Tag. -func (mg *Tag) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Tag. +func (mg *Tag) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Tag. @@ -2829,9 +2829,9 @@ func (mg *User) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this User. -func (mg *User) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this User. +func (mg *User) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this User. @@ -2867,9 +2867,9 @@ func (mg *User) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this User. -func (mg *User) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this User. +func (mg *User) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this User. diff --git a/apis/apimanagement/v1beta1/zz_generated_terraformed.go b/apis/apimanagement/v1beta1/zz_generated_terraformed.go index f8bd28020..8374f8055 100755 --- a/apis/apimanagement/v1beta1/zz_generated_terraformed.go +++ b/apis/apimanagement/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Management) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Management +func (tr *Management) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Management using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Management) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *API) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this API +func (tr *API) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this API using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *API) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *APIDiagnostic) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this APIDiagnostic +func (tr *APIDiagnostic) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this APIDiagnostic using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *APIDiagnostic) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *APIOperation) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this APIOperation +func (tr *APIOperation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this APIOperation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *APIOperation) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *APIOperationPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this APIOperationPolicy +func (tr *APIOperationPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this APIOperationPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *APIOperationPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *APIOperationTag) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this APIOperationTag +func (tr *APIOperationTag) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this APIOperationTag using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *APIOperationTag) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *APIPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this APIPolicy +func (tr *APIPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this APIPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *APIPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *APIRelease) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this APIRelease +func (tr *APIRelease) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this APIRelease using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *APIRelease) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *APISchema) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this APISchema +func (tr *APISchema) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this APISchema using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *APISchema) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *APITag) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this APITag +func (tr *APITag) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this APITag using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *APITag) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *APIVersionSet) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this APIVersionSet +func (tr *APIVersionSet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this APIVersionSet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *APIVersionSet) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *AuthorizationServer) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AuthorizationServer +func (tr *AuthorizationServer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AuthorizationServer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AuthorizationServer) LateInitialize(attrs []byte) (bool, error) { @@ -957,6 +1077,16 @@ func (tr *Backend) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Backend +func (tr *Backend) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Backend using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Backend) LateInitialize(attrs []byte) (bool, error) { @@ -1031,6 +1161,16 @@ func (tr *Certificate) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Certificate +func (tr *Certificate) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Certificate using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Certificate) LateInitialize(attrs []byte) (bool, error) { @@ -1105,6 +1245,16 @@ func (tr *Diagnostic) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Diagnostic +func (tr *Diagnostic) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Diagnostic using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Diagnostic) LateInitialize(attrs []byte) (bool, error) { @@ -1179,6 +1329,16 @@ func (tr *EmailTemplate) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this EmailTemplate +func (tr *EmailTemplate) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this EmailTemplate using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *EmailTemplate) LateInitialize(attrs []byte) (bool, error) { @@ -1253,6 +1413,16 @@ func (tr *Gateway) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Gateway +func (tr *Gateway) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Gateway using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Gateway) LateInitialize(attrs []byte) (bool, error) { @@ -1327,6 +1497,16 @@ func (tr *GatewayAPI) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this GatewayAPI +func (tr *GatewayAPI) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this GatewayAPI using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *GatewayAPI) LateInitialize(attrs []byte) (bool, error) { @@ -1401,6 +1581,16 @@ func (tr *GlobalSchema) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this GlobalSchema +func (tr *GlobalSchema) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this GlobalSchema using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *GlobalSchema) LateInitialize(attrs []byte) (bool, error) { @@ -1475,6 +1665,16 @@ func (tr *IdentityProviderAAD) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IdentityProviderAAD +func (tr *IdentityProviderAAD) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IdentityProviderAAD using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IdentityProviderAAD) LateInitialize(attrs []byte) (bool, error) { @@ -1549,6 +1749,16 @@ func (tr *IdentityProviderFacebook) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IdentityProviderFacebook +func (tr *IdentityProviderFacebook) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IdentityProviderFacebook using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IdentityProviderFacebook) LateInitialize(attrs []byte) (bool, error) { @@ -1623,6 +1833,16 @@ func (tr *IdentityProviderGoogle) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IdentityProviderGoogle +func (tr *IdentityProviderGoogle) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IdentityProviderGoogle using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IdentityProviderGoogle) LateInitialize(attrs []byte) (bool, error) { @@ -1697,6 +1917,16 @@ func (tr *IdentityProviderMicrosoft) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IdentityProviderMicrosoft +func (tr *IdentityProviderMicrosoft) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IdentityProviderMicrosoft using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IdentityProviderMicrosoft) LateInitialize(attrs []byte) (bool, error) { @@ -1771,6 +2001,16 @@ func (tr *IdentityProviderTwitter) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IdentityProviderTwitter +func (tr *IdentityProviderTwitter) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IdentityProviderTwitter using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IdentityProviderTwitter) LateInitialize(attrs []byte) (bool, error) { @@ -1845,6 +2085,16 @@ func (tr *Logger) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Logger +func (tr *Logger) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Logger using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Logger) LateInitialize(attrs []byte) (bool, error) { @@ -1919,6 +2169,16 @@ func (tr *NamedValue) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NamedValue +func (tr *NamedValue) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NamedValue using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NamedValue) LateInitialize(attrs []byte) (bool, error) { @@ -1993,6 +2253,16 @@ func (tr *NotificationRecipientEmail) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NotificationRecipientEmail +func (tr *NotificationRecipientEmail) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NotificationRecipientEmail using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NotificationRecipientEmail) LateInitialize(attrs []byte) (bool, error) { @@ -2067,6 +2337,16 @@ func (tr *NotificationRecipientUser) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NotificationRecipientUser +func (tr *NotificationRecipientUser) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NotificationRecipientUser using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NotificationRecipientUser) LateInitialize(attrs []byte) (bool, error) { @@ -2141,6 +2421,16 @@ func (tr *OpenIDConnectProvider) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OpenIDConnectProvider +func (tr *OpenIDConnectProvider) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OpenIDConnectProvider using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OpenIDConnectProvider) LateInitialize(attrs []byte) (bool, error) { @@ -2215,6 +2505,16 @@ func (tr *Policy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Policy +func (tr *Policy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Policy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Policy) LateInitialize(attrs []byte) (bool, error) { @@ -2289,6 +2589,16 @@ func (tr *Product) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Product +func (tr *Product) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Product using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Product) LateInitialize(attrs []byte) (bool, error) { @@ -2363,6 +2673,16 @@ func (tr *ProductAPI) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ProductAPI +func (tr *ProductAPI) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ProductAPI using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ProductAPI) LateInitialize(attrs []byte) (bool, error) { @@ -2437,6 +2757,16 @@ func (tr *ProductPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ProductPolicy +func (tr *ProductPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ProductPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ProductPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -2511,6 +2841,16 @@ func (tr *ProductTag) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ProductTag +func (tr *ProductTag) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ProductTag using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ProductTag) LateInitialize(attrs []byte) (bool, error) { @@ -2585,6 +2925,16 @@ func (tr *RedisCache) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RedisCache +func (tr *RedisCache) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RedisCache using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RedisCache) LateInitialize(attrs []byte) (bool, error) { @@ -2659,6 +3009,16 @@ func (tr *Subscription) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Subscription +func (tr *Subscription) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Subscription using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Subscription) LateInitialize(attrs []byte) (bool, error) { @@ -2733,6 +3093,16 @@ func (tr *Tag) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Tag +func (tr *Tag) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Tag using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Tag) LateInitialize(attrs []byte) (bool, error) { @@ -2807,6 +3177,16 @@ func (tr *User) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this User +func (tr *User) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this User using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *User) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/apimanagement/v1beta1/zz_globalschema_types.go b/apis/apimanagement/v1beta1/zz_globalschema_types.go index cdea49fd3..231d26fc3 100755 --- a/apis/apimanagement/v1beta1/zz_globalschema_types.go +++ b/apis/apimanagement/v1beta1/zz_globalschema_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type GlobalSchemaInitParameters struct { + + // The description of the schema. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The content type of the Schema. Possible values are xml and json. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The string defining the document representing the Schema. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type GlobalSchemaObservation struct { // The Name of the API Management Service where the API exists. Changing this forces a new resource to be created. @@ -79,6 +91,18 @@ type GlobalSchemaParameters struct { type GlobalSchemaSpec struct { v1.ResourceSpec `json:",inline"` ForProvider GlobalSchemaParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider GlobalSchemaInitParameters `json:"initProvider,omitempty"` } // GlobalSchemaStatus defines the observed state of GlobalSchema. @@ -99,8 +123,8 @@ type GlobalSchemaStatus struct { type GlobalSchema struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value)",message="value is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.value) || has(self.initProvider.value)",message="value is a required parameter" Spec GlobalSchemaSpec `json:"spec"` Status GlobalSchemaStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_identityprovideraad_types.go b/apis/apimanagement/v1beta1/zz_identityprovideraad_types.go index 9b57d994b..ac1045bdb 100755 --- a/apis/apimanagement/v1beta1/zz_identityprovideraad_types.go +++ b/apis/apimanagement/v1beta1/zz_identityprovideraad_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityProviderAADInitParameters struct { + + // List of allowed AAD Tenants. + AllowedTenants []*string `json:"allowedTenants,omitempty" tf:"allowed_tenants,omitempty"` + + // Client Id of the Application in the AAD Identity Provider. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The AAD Tenant to use instead of Common when logging into Active Directory + SigninTenant *string `json:"signinTenant,omitempty" tf:"signin_tenant,omitempty"` +} + type IdentityProviderAADObservation struct { // The Name of the API Management Service where this AAD Identity Provider should be created. Changing this forces a new resource to be created. @@ -83,6 +95,18 @@ type IdentityProviderAADParameters struct { type IdentityProviderAADSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IdentityProviderAADParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IdentityProviderAADInitParameters `json:"initProvider,omitempty"` } // IdentityProviderAADStatus defines the observed state of IdentityProviderAAD. @@ -103,9 +127,9 @@ type IdentityProviderAADStatus struct { type IdentityProviderAAD struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.allowedTenants)",message="allowedTenants is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId)",message="clientId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.allowedTenants) || has(self.initProvider.allowedTenants)",message="allowedTenants is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientId) || has(self.initProvider.clientId)",message="clientId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" Spec IdentityProviderAADSpec `json:"spec"` Status IdentityProviderAADStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_identityproviderfacebook_types.go b/apis/apimanagement/v1beta1/zz_identityproviderfacebook_types.go index c0af0f409..1e1b2da3a 100755 --- a/apis/apimanagement/v1beta1/zz_identityproviderfacebook_types.go +++ b/apis/apimanagement/v1beta1/zz_identityproviderfacebook_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityProviderFacebookInitParameters struct { + + // App ID for Facebook. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` +} + type IdentityProviderFacebookObservation struct { // The Name of the API Management Service where this Facebook Identity Provider should be created. Changing this forces a new resource to be created. @@ -69,6 +75,18 @@ type IdentityProviderFacebookParameters struct { type IdentityProviderFacebookSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IdentityProviderFacebookParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IdentityProviderFacebookInitParameters `json:"initProvider,omitempty"` } // IdentityProviderFacebookStatus defines the observed state of IdentityProviderFacebook. @@ -89,8 +107,8 @@ type IdentityProviderFacebookStatus struct { type IdentityProviderFacebook struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.appId)",message="appId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.appSecretSecretRef)",message="appSecretSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.appId) || has(self.initProvider.appId)",message="appId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.appSecretSecretRef)",message="appSecretSecretRef is a required parameter" Spec IdentityProviderFacebookSpec `json:"spec"` Status IdentityProviderFacebookStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_identityprovidergoogle_types.go b/apis/apimanagement/v1beta1/zz_identityprovidergoogle_types.go index f020319d8..53f01725a 100755 --- a/apis/apimanagement/v1beta1/zz_identityprovidergoogle_types.go +++ b/apis/apimanagement/v1beta1/zz_identityprovidergoogle_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityProviderGoogleInitParameters struct { + + // Client Id for Google Sign-in. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + type IdentityProviderGoogleObservation struct { // The Name of the API Management Service where this Google Identity Provider should be created. Changing this forces a new resource to be created. @@ -69,6 +75,18 @@ type IdentityProviderGoogleParameters struct { type IdentityProviderGoogleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IdentityProviderGoogleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IdentityProviderGoogleInitParameters `json:"initProvider,omitempty"` } // IdentityProviderGoogleStatus defines the observed state of IdentityProviderGoogle. @@ -89,8 +107,8 @@ type IdentityProviderGoogleStatus struct { type IdentityProviderGoogle struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId)",message="clientId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientId) || has(self.initProvider.clientId)",message="clientId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" Spec IdentityProviderGoogleSpec `json:"spec"` Status IdentityProviderGoogleStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_identityprovidermicrosoft_types.go b/apis/apimanagement/v1beta1/zz_identityprovidermicrosoft_types.go index e4db806b0..4ec356548 100755 --- a/apis/apimanagement/v1beta1/zz_identityprovidermicrosoft_types.go +++ b/apis/apimanagement/v1beta1/zz_identityprovidermicrosoft_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityProviderMicrosoftInitParameters struct { + + // Client Id of the Azure AD Application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + type IdentityProviderMicrosoftObservation struct { // The Name of the API Management Service where this Microsoft Identity Provider should be created. Changing this forces a new resource to be created. @@ -69,6 +75,18 @@ type IdentityProviderMicrosoftParameters struct { type IdentityProviderMicrosoftSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IdentityProviderMicrosoftParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IdentityProviderMicrosoftInitParameters `json:"initProvider,omitempty"` } // IdentityProviderMicrosoftStatus defines the observed state of IdentityProviderMicrosoft. @@ -89,8 +107,8 @@ type IdentityProviderMicrosoftStatus struct { type IdentityProviderMicrosoft struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId)",message="clientId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientId) || has(self.initProvider.clientId)",message="clientId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" Spec IdentityProviderMicrosoftSpec `json:"spec"` Status IdentityProviderMicrosoftStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_identityprovidertwitter_types.go b/apis/apimanagement/v1beta1/zz_identityprovidertwitter_types.go index 7292c3af5..6d07ad80a 100755 --- a/apis/apimanagement/v1beta1/zz_identityprovidertwitter_types.go +++ b/apis/apimanagement/v1beta1/zz_identityprovidertwitter_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityProviderTwitterInitParameters struct { +} + type IdentityProviderTwitterObservation struct { // The Name of the API Management Service where this Twitter Identity Provider should be created. Changing this forces a new resource to be created. @@ -66,6 +69,18 @@ type IdentityProviderTwitterParameters struct { type IdentityProviderTwitterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IdentityProviderTwitterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IdentityProviderTwitterInitParameters `json:"initProvider,omitempty"` } // IdentityProviderTwitterStatus defines the observed state of IdentityProviderTwitter. @@ -86,8 +101,8 @@ type IdentityProviderTwitterStatus struct { type IdentityProviderTwitter struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.apiKeySecretRef)",message="apiKeySecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.apiSecretKeySecretRef)",message="apiSecretKeySecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.apiKeySecretRef)",message="apiKeySecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.apiSecretKeySecretRef)",message="apiSecretKeySecretRef is a required parameter" Spec IdentityProviderTwitterSpec `json:"spec"` Status IdentityProviderTwitterStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_logger_types.go b/apis/apimanagement/v1beta1/zz_logger_types.go index 8ec4e474b..0269279cc 100755 --- a/apis/apimanagement/v1beta1/zz_logger_types.go +++ b/apis/apimanagement/v1beta1/zz_logger_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInsightsInitParameters struct { +} + type ApplicationInsightsObservation struct { } @@ -23,6 +26,12 @@ type ApplicationInsightsParameters struct { InstrumentationKeySecretRef v1.SecretKeySelector `json:"instrumentationKeySecretRef" tf:"-"` } +type EventHubInitParameters struct { + + // The name of an EventHub. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type EventHubObservation struct { // The name of an EventHub. @@ -36,8 +45,23 @@ type EventHubParameters struct { ConnectionStringSecretRef v1.SecretKeySelector `json:"connectionStringSecretRef" tf:"-"` // The name of an EventHub. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type LoggerInitParameters struct { + + // An application_insights block as documented below. Changing this forces a new resource to be created. + ApplicationInsights []ApplicationInsightsInitParameters `json:"applicationInsights,omitempty" tf:"application_insights,omitempty"` + + // Specifies whether records should be buffered in the Logger prior to publishing. Defaults to true. + Buffered *bool `json:"buffered,omitempty" tf:"buffered,omitempty"` + + // A description of this Logger. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // An eventhub block as documented below. Changing this forces a new resource to be created. + EventHub []EventHubInitParameters `json:"eventhub,omitempty" tf:"eventhub,omitempty"` } type LoggerObservation struct { @@ -130,6 +154,18 @@ type LoggerParameters struct { type LoggerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LoggerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LoggerInitParameters `json:"initProvider,omitempty"` } // LoggerStatus defines the observed state of Logger. diff --git a/apis/apimanagement/v1beta1/zz_management_types.go b/apis/apimanagement/v1beta1/zz_management_types.go index 7e7f35f3c..cd959f671 100755 --- a/apis/apimanagement/v1beta1/zz_management_types.go +++ b/apis/apimanagement/v1beta1/zz_management_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AdditionalLocationInitParameters struct { + + // The number of compute units in this region. Defaults to the capacity of the main region. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // Only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in this additional location. + GatewayDisabled *bool `json:"gatewayDisabled,omitempty" tf:"gateway_disabled,omitempty"` + + // The name of the Azure Region in which the API Management Service should be expanded to. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // ID of a standard SKU IPv4 Public IP. + PublicIPAddressID *string `json:"publicIpAddressId,omitempty" tf:"public_ip_address_id,omitempty"` + + // A virtual_network_configuration block as defined below. Required when virtual_network_type is External or Internal. + VirtualNetworkConfiguration []VirtualNetworkConfigurationInitParameters `json:"virtualNetworkConfiguration,omitempty" tf:"virtual_network_configuration,omitempty"` + + // A list of availability zones. Changing this forces a new resource to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type AdditionalLocationObservation struct { // The number of compute units in this region. Defaults to the capacity of the main region. @@ -54,8 +75,8 @@ type AdditionalLocationParameters struct { GatewayDisabled *bool `json:"gatewayDisabled,omitempty" tf:"gateway_disabled,omitempty"` // The name of the Azure Region in which the API Management Service should be expanded to. - // +kubebuilder:validation:Required - Location *string `json:"location" tf:"location,omitempty"` + // +kubebuilder:validation:Optional + Location *string `json:"location,omitempty" tf:"location,omitempty"` // ID of a standard SKU IPv4 Public IP. // +kubebuilder:validation:Optional @@ -70,6 +91,12 @@ type AdditionalLocationParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type CertificateInitParameters struct { + + // The name of the Certificate Store where this certificate should be stored. Possible values are CertificateAuthority and Root. + StoreName *string `json:"storeName,omitempty" tf:"store_name,omitempty"` +} + type CertificateObservation struct { // The expiration date of the certificate in RFC3339 format: 2000-01-02T03:04:05Z. @@ -96,8 +123,20 @@ type CertificateParameters struct { EncodedCertificateSecretRef v1.SecretKeySelector `json:"encodedCertificateSecretRef" tf:"-"` // The name of the Certificate Store where this certificate should be stored. Possible values are CertificateAuthority and Root. - // +kubebuilder:validation:Required - StoreName *string `json:"storeName" tf:"store_name,omitempty"` + // +kubebuilder:validation:Optional + StoreName *string `json:"storeName,omitempty" tf:"store_name,omitempty"` +} + +type DelegationInitParameters struct { + + // Should subscription requests be delegated to an external url? Defaults to false. + SubscriptionsEnabled *bool `json:"subscriptionsEnabled,omitempty" tf:"subscriptions_enabled,omitempty"` + + // The delegation URL. + URL *string `json:"url,omitempty" tf:"url,omitempty"` + + // Should user registration requests be delegated to an external url? Defaults to false. + UserRegistrationEnabled *bool `json:"userRegistrationEnabled,omitempty" tf:"user_registration_enabled,omitempty"` } type DelegationObservation struct { @@ -131,6 +170,9 @@ type DelegationParameters struct { ValidationKeySecretRef *v1.SecretKeySelector `json:"validationKeySecretRef,omitempty" tf:"-"` } +type DeveloperPortalInitParameters struct { +} + type DeveloperPortalObservation struct { // The source of the certificate. @@ -164,6 +206,12 @@ type DeveloperPortalObservation struct { type DeveloperPortalParameters struct { } +type HostNameConfigurationInitParameters struct { +} + +type HostNameConfigurationManagementInitParameters struct { +} + type HostNameConfigurationManagementObservation struct { // The source of the certificate. @@ -218,6 +266,15 @@ type HostNameConfigurationObservation struct { type HostNameConfigurationParameters struct { } +type IdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this API Management Service. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this API Management Service. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this API Management Service. @@ -240,8 +297,83 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this API Management Service. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ManagementInitParameters struct { + + // One or more additional_location blocks as defined below. + AdditionalLocation []AdditionalLocationInitParameters `json:"additionalLocation,omitempty" tf:"additional_location,omitempty"` + + // One or more (up to 10) certificate blocks as defined below. + Certificate []CertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` + + // Enforce a client certificate to be presented on each request to the gateway? This is only supported when SKU type is Consumption. + ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` + + // A delegation block as defined below. + Delegation []DelegationInitParameters `json:"delegation,omitempty" tf:"delegation,omitempty"` + + // Disable the gateway in main region? This is only supported when additional_location is set. + GatewayDisabled *bool `json:"gatewayDisabled,omitempty" tf:"gateway_disabled,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure location where the API Management Service exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The version which the control plane API calls to API Management service are limited with version equal to or newer than. + MinAPIVersion *string `json:"minApiVersion,omitempty" tf:"min_api_version,omitempty"` + + // Email address from which the notification will be sent. + NotificationSenderEmail *string `json:"notificationSenderEmail,omitempty" tf:"notification_sender_email,omitempty"` + + // A policy block as defined below. + Policy []PolicyInitParameters `json:"policy,omitempty" tf:"policy,omitempty"` + + // A protocols block as defined below. + Protocols []ProtocolsInitParameters `json:"protocols,omitempty" tf:"protocols,omitempty"` + + // ID of a standard SKU IPv4 Public IP. + PublicIPAddressID *string `json:"publicIpAddressId,omitempty" tf:"public_ip_address_id,omitempty"` + + // Is public access to the service allowed?. Defaults to true + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // The email of publisher/company. + PublisherEmail *string `json:"publisherEmail,omitempty" tf:"publisher_email,omitempty"` + + // The name of publisher/company. + PublisherName *string `json:"publisherName,omitempty" tf:"publisher_name,omitempty"` + + // A security block as defined below. + Security []SecurityInitParameters `json:"security,omitempty" tf:"security,omitempty"` + + // A sign_in block as defined below. + SignIn []SignInInitParameters `json:"signIn,omitempty" tf:"sign_in,omitempty"` + + // A sign_up block as defined below. + SignUp []SignUpInitParameters `json:"signUp,omitempty" tf:"sign_up,omitempty"` + + // sku_name is a string consisting of two parts separated by an underscore(_). The first part is the name, valid values include: Consumption, Developer, Basic, Standard and Premium. The second part is the capacity (e.g. the number of deployed units of the sku), which must be a positive integer (e.g. Developer_1). + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags assigned to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A tenant_access block as defined below. + TenantAccess []TenantAccessInitParameters `json:"tenantAccess,omitempty" tf:"tenant_access,omitempty"` + + // A virtual_network_configuration block as defined below. Required when virtual_network_type is External or Internal. + VirtualNetworkConfiguration []ManagementVirtualNetworkConfigurationInitParameters `json:"virtualNetworkConfiguration,omitempty" tf:"virtual_network_configuration,omitempty"` + + // The type of virtual network you want to use, valid values include: None, External, Internal. + VirtualNetworkType *string `json:"virtualNetworkType,omitempty" tf:"virtual_network_type,omitempty"` + + // Specifies a list of Availability Zones in which this API Management service should be located. Changing this forces a new API Management service to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } type ManagementObservation struct { @@ -464,6 +596,9 @@ type ManagementParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type ManagementVirtualNetworkConfigurationInitParameters struct { +} + type ManagementVirtualNetworkConfigurationObservation struct { // The id of the subnet that will be used for the API Management. @@ -487,6 +622,15 @@ type ManagementVirtualNetworkConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type PolicyInitParameters struct { + + // The XML Content for this Policy. + XMLContent *string `json:"xmlContent,omitempty" tf:"xml_content"` + + // A link to an API Management Policy XML Document, which must be publicly available. + XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link"` +} + type PolicyObservation struct { // The XML Content for this Policy. @@ -507,6 +651,9 @@ type PolicyParameters struct { XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link"` } +type PortalInitParameters struct { +} + type PortalObservation struct { // The source of the certificate. @@ -540,6 +687,12 @@ type PortalObservation struct { type PortalParameters struct { } +type ProtocolsInitParameters struct { + + // Should HTTP/2 be supported by the API Management Service? Defaults to false. + EnableHttp2 *bool `json:"enableHttp2,omitempty" tf:"enable_http2,omitempty"` +} + type ProtocolsObservation struct { // Should HTTP/2 be supported by the API Management Service? Defaults to false. @@ -553,6 +706,9 @@ type ProtocolsParameters struct { EnableHttp2 *bool `json:"enableHttp2,omitempty" tf:"enable_http2,omitempty"` } +type ProxyInitParameters struct { +} + type ProxyObservation struct { // The source of the certificate. @@ -589,6 +745,9 @@ type ProxyObservation struct { type ProxyParameters struct { } +type ScmInitParameters struct { +} + type ScmObservation struct { // The source of the certificate. @@ -622,6 +781,60 @@ type ScmObservation struct { type ScmParameters struct { } +type SecurityInitParameters struct { + + // Should SSL 3.0 be enabled on the backend of the gateway? Defaults to false. + EnableBackendSsl30 *bool `json:"enableBackendSsl30,omitempty" tf:"enable_backend_ssl30,omitempty"` + + // Should TLS 1.0 be enabled on the backend of the gateway? Defaults to false. + EnableBackendTls10 *bool `json:"enableBackendTls10,omitempty" tf:"enable_backend_tls10,omitempty"` + + // Should TLS 1.1 be enabled on the backend of the gateway? Defaults to false. + EnableBackendTls11 *bool `json:"enableBackendTls11,omitempty" tf:"enable_backend_tls11,omitempty"` + + // Should SSL 3.0 be enabled on the frontend of the gateway? Defaults to false. + EnableFrontendSsl30 *bool `json:"enableFrontendSsl30,omitempty" tf:"enable_frontend_ssl30,omitempty"` + + // Should TLS 1.0 be enabled on the frontend of the gateway? Defaults to false. + EnableFrontendTls10 *bool `json:"enableFrontendTls10,omitempty" tf:"enable_frontend_tls10,omitempty"` + + // Should TLS 1.1 be enabled on the frontend of the gateway? Defaults to false. + EnableFrontendTls11 *bool `json:"enableFrontendTls11,omitempty" tf:"enable_frontend_tls11,omitempty"` + + // Should the TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA cipher be enabled? Defaults to false. + TLSEcdheEcdsaWithAes128CbcShaCiphersEnabled *bool `json:"tlsEcdheEcdsaWithAes128CbcShaCiphersEnabled,omitempty" tf:"tls_ecdhe_ecdsa_with_aes128_cbc_sha_ciphers_enabled,omitempty"` + + // Should the TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA cipher be enabled? Defaults to false. + TLSEcdheEcdsaWithAes256CbcShaCiphersEnabled *bool `json:"tlsEcdheEcdsaWithAes256CbcShaCiphersEnabled,omitempty" tf:"tls_ecdhe_ecdsa_with_aes256_cbc_sha_ciphers_enabled,omitempty"` + + // Should the TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA cipher be enabled? Defaults to false. + TLSEcdheRsaWithAes128CbcShaCiphersEnabled *bool `json:"tlsEcdheRsaWithAes128CbcShaCiphersEnabled,omitempty" tf:"tls_ecdhe_rsa_with_aes128_cbc_sha_ciphers_enabled,omitempty"` + + // Should the TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA cipher be enabled? Defaults to false. + TLSEcdheRsaWithAes256CbcShaCiphersEnabled *bool `json:"tlsEcdheRsaWithAes256CbcShaCiphersEnabled,omitempty" tf:"tls_ecdhe_rsa_with_aes256_cbc_sha_ciphers_enabled,omitempty"` + + // Should the TLS_RSA_WITH_AES_128_CBC_SHA256 cipher be enabled? Defaults to false. + TLSRsaWithAes128CbcSha256CiphersEnabled *bool `json:"tlsRsaWithAes128CbcSha256CiphersEnabled,omitempty" tf:"tls_rsa_with_aes128_cbc_sha256_ciphers_enabled,omitempty"` + + // Should the TLS_RSA_WITH_AES_128_CBC_SHA cipher be enabled? Defaults to false. + TLSRsaWithAes128CbcShaCiphersEnabled *bool `json:"tlsRsaWithAes128CbcShaCiphersEnabled,omitempty" tf:"tls_rsa_with_aes128_cbc_sha_ciphers_enabled,omitempty"` + + // Should the TLS_RSA_WITH_AES_128_GCM_SHA256 cipher be enabled? Defaults to false. + TLSRsaWithAes128GCMSha256CiphersEnabled *bool `json:"tlsRsaWithAes128GcmSha256CiphersEnabled,omitempty" tf:"tls_rsa_with_aes128_gcm_sha256_ciphers_enabled,omitempty"` + + // Should the TLS_RSA_WITH_AES_256_CBC_SHA256 cipher be enabled? Defaults to false. + TLSRsaWithAes256CbcSha256CiphersEnabled *bool `json:"tlsRsaWithAes256CbcSha256CiphersEnabled,omitempty" tf:"tls_rsa_with_aes256_cbc_sha256_ciphers_enabled,omitempty"` + + // Should the TLS_RSA_WITH_AES_256_CBC_SHA cipher be enabled? Defaults to false. + TLSRsaWithAes256CbcShaCiphersEnabled *bool `json:"tlsRsaWithAes256CbcShaCiphersEnabled,omitempty" tf:"tls_rsa_with_aes256_cbc_sha_ciphers_enabled,omitempty"` + + // Should the TLS_RSA_WITH_AES_256_GCM_SHA384 cipher be enabled? Defaults to false. + TLSRsaWithAes256GCMSha384CiphersEnabled *bool `json:"tlsRsaWithAes256GcmSha384CiphersEnabled,omitempty" tf:"tls_rsa_with_aes256_gcm_sha384_ciphers_enabled,omitempty"` + + // Should the TLS_RSA_WITH_3DES_EDE_CBC_SHA cipher be enabled for alL TLS versions (1.0, 1.1 and 1.2)? + TripleDesCiphersEnabled *bool `json:"tripleDesCiphersEnabled,omitempty" tf:"triple_des_ciphers_enabled,omitempty"` +} + type SecurityObservation struct { // Should SSL 3.0 be enabled on the backend of the gateway? Defaults to false. @@ -747,6 +960,12 @@ type SecurityParameters struct { TripleDesCiphersEnabled *bool `json:"tripleDesCiphersEnabled,omitempty" tf:"triple_des_ciphers_enabled,omitempty"` } +type SignInInitParameters struct { + + // Should anonymous users be redirected to the sign in page? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + type SignInObservation struct { // Should anonymous users be redirected to the sign in page? @@ -756,8 +975,17 @@ type SignInObservation struct { type SignInParameters struct { // Should anonymous users be redirected to the sign in page? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + +type SignUpInitParameters struct { + + // Can users sign up on the development portal? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A terms_of_service block as defined below. + TermsOfService []TermsOfServiceInitParameters `json:"termsOfService,omitempty" tf:"terms_of_service,omitempty"` } type SignUpObservation struct { @@ -772,12 +1000,18 @@ type SignUpObservation struct { type SignUpParameters struct { // Can users sign up on the development portal? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A terms_of_service block as defined below. - // +kubebuilder:validation:Required - TermsOfService []TermsOfServiceParameters `json:"termsOfService" tf:"terms_of_service,omitempty"` + // +kubebuilder:validation:Optional + TermsOfService []TermsOfServiceParameters `json:"termsOfService,omitempty" tf:"terms_of_service,omitempty"` +} + +type TenantAccessInitParameters struct { + + // Should the access to the management API be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } type TenantAccessObservation struct { @@ -792,8 +1026,20 @@ type TenantAccessObservation struct { type TenantAccessParameters struct { // Should the access to the management API be enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + +type TermsOfServiceInitParameters struct { + + // Should the user be asked for consent during sign up? + ConsentRequired *bool `json:"consentRequired,omitempty" tf:"consent_required,omitempty"` + + // Should Terms of Service be displayed during sign up?. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The Terms of Service which users are required to agree to in order to sign up. + Text *string `json:"text,omitempty" tf:"text,omitempty"` } type TermsOfServiceObservation struct { @@ -811,18 +1057,21 @@ type TermsOfServiceObservation struct { type TermsOfServiceParameters struct { // Should the user be asked for consent during sign up? - // +kubebuilder:validation:Required - ConsentRequired *bool `json:"consentRequired" tf:"consent_required,omitempty"` + // +kubebuilder:validation:Optional + ConsentRequired *bool `json:"consentRequired,omitempty" tf:"consent_required,omitempty"` // Should Terms of Service be displayed during sign up?. - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The Terms of Service which users are required to agree to in order to sign up. // +kubebuilder:validation:Optional Text *string `json:"text,omitempty" tf:"text,omitempty"` } +type VirtualNetworkConfigurationInitParameters struct { +} + type VirtualNetworkConfigurationObservation struct { // The id of the subnet that will be used for the API Management. @@ -850,6 +1099,18 @@ type VirtualNetworkConfigurationParameters struct { type ManagementSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagementParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagementInitParameters `json:"initProvider,omitempty"` } // ManagementStatus defines the observed state of Management. @@ -870,10 +1131,10 @@ type ManagementStatus struct { type Management struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publisherEmail)",message="publisherEmail is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publisherName)",message="publisherName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.publisherEmail) || has(self.initProvider.publisherEmail)",message="publisherEmail is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.publisherName) || has(self.initProvider.publisherName)",message="publisherName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec ManagementSpec `json:"spec"` Status ManagementStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_namedvalue_types.go b/apis/apimanagement/v1beta1/zz_namedvalue_types.go index 22401d9aa..43515ded6 100755 --- a/apis/apimanagement/v1beta1/zz_namedvalue_types.go +++ b/apis/apimanagement/v1beta1/zz_namedvalue_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NamedValueInitParameters struct { + + // The display name of this API Management Named Value. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Specifies whether the API Management Named Value is secret. Valid values are true or false. The default value is false. + Secret *bool `json:"secret,omitempty" tf:"secret,omitempty"` + + // A list of tags to be applied to the API Management Named Value. + Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A value_from_key_vault block as defined below. + ValueFromKeyVault []ValueFromKeyVaultInitParameters `json:"valueFromKeyVault,omitempty" tf:"value_from_key_vault,omitempty"` +} + type NamedValueObservation struct { // The name of the API Management Service in which the API Management Named Value should exist. Changing this forces a new resource to be created. @@ -86,6 +101,15 @@ type NamedValueParameters struct { ValueSecretRef *v1.SecretKeySelector `json:"valueSecretRef,omitempty" tf:"-"` } +type ValueFromKeyVaultInitParameters struct { + + // The client ID of User Assigned Identity, for the API Management Service, which will be used to access the key vault secret. The System Assigned Identity will be used in absence. + IdentityClientID *string `json:"identityClientId,omitempty" tf:"identity_client_id,omitempty"` + + // The resource ID of the Key Vault Secret. + SecretID *string `json:"secretId,omitempty" tf:"secret_id,omitempty"` +} + type ValueFromKeyVaultObservation struct { // The client ID of User Assigned Identity, for the API Management Service, which will be used to access the key vault secret. The System Assigned Identity will be used in absence. @@ -102,14 +126,26 @@ type ValueFromKeyVaultParameters struct { IdentityClientID *string `json:"identityClientId,omitempty" tf:"identity_client_id,omitempty"` // The resource ID of the Key Vault Secret. - // +kubebuilder:validation:Required - SecretID *string `json:"secretId" tf:"secret_id,omitempty"` + // +kubebuilder:validation:Optional + SecretID *string `json:"secretId,omitempty" tf:"secret_id,omitempty"` } // NamedValueSpec defines the desired state of NamedValue type NamedValueSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NamedValueParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NamedValueInitParameters `json:"initProvider,omitempty"` } // NamedValueStatus defines the observed state of NamedValue. @@ -130,7 +166,7 @@ type NamedValueStatus struct { type NamedValue struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" Spec NamedValueSpec `json:"spec"` Status NamedValueStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_notificationrecipientemail_types.go b/apis/apimanagement/v1beta1/zz_notificationrecipientemail_types.go index 92bb6310d..9b51cdb70 100755 --- a/apis/apimanagement/v1beta1/zz_notificationrecipientemail_types.go +++ b/apis/apimanagement/v1beta1/zz_notificationrecipientemail_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NotificationRecipientEmailInitParameters struct { +} + type NotificationRecipientEmailObservation struct { // The ID of the API Management Service from which to create this Notification Recipient Email. Changing this forces a new API Management Notification Recipient Email to be created. @@ -57,6 +60,18 @@ type NotificationRecipientEmailParameters struct { type NotificationRecipientEmailSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NotificationRecipientEmailParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NotificationRecipientEmailInitParameters `json:"initProvider,omitempty"` } // NotificationRecipientEmailStatus defines the observed state of NotificationRecipientEmail. diff --git a/apis/apimanagement/v1beta1/zz_notificationrecipientuser_types.go b/apis/apimanagement/v1beta1/zz_notificationrecipientuser_types.go index 0dec4088f..12c3c52c4 100755 --- a/apis/apimanagement/v1beta1/zz_notificationrecipientuser_types.go +++ b/apis/apimanagement/v1beta1/zz_notificationrecipientuser_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NotificationRecipientUserInitParameters struct { + + // The Notification Name to be received. Changing this forces a new API Management Notification Recipient User to be created. Possible values are AccountClosedPublisher, BCC, NewApplicationNotificationMessage, NewIssuePublisherNotificationMessage, PurchasePublisherNotificationMessage, QuotaLimitApproachingPublisherNotificationMessage, and RequestPublisherNotificationMessage. + NotificationType *string `json:"notificationType,omitempty" tf:"notification_type,omitempty"` +} + type NotificationRecipientUserObservation struct { // The ID of the API Management Service from which to create this Notification Recipient User. Changing this forces a new API Management Notification Recipient User to be created. @@ -66,6 +72,18 @@ type NotificationRecipientUserParameters struct { type NotificationRecipientUserSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NotificationRecipientUserParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NotificationRecipientUserInitParameters `json:"initProvider,omitempty"` } // NotificationRecipientUserStatus defines the observed state of NotificationRecipientUser. @@ -86,7 +104,7 @@ type NotificationRecipientUserStatus struct { type NotificationRecipientUser struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notificationType)",message="notificationType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.notificationType) || has(self.initProvider.notificationType)",message="notificationType is a required parameter" Spec NotificationRecipientUserSpec `json:"spec"` Status NotificationRecipientUserStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_openidconnectprovider_types.go b/apis/apimanagement/v1beta1/zz_openidconnectprovider_types.go index 1070f628f..715d54b7d 100755 --- a/apis/apimanagement/v1beta1/zz_openidconnectprovider_types.go +++ b/apis/apimanagement/v1beta1/zz_openidconnectprovider_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OpenIDConnectProviderInitParameters struct { + + // A description of this OpenID Connect Provider. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A user-friendly name for this OpenID Connect Provider. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The URI of the Metadata endpoint. + MetadataEndpoint *string `json:"metadataEndpoint,omitempty" tf:"metadata_endpoint,omitempty"` +} + type OpenIDConnectProviderObservation struct { // The name of the API Management Service in which this OpenID Connect Provider should be created. Changing this forces a new resource to be created. @@ -87,6 +99,18 @@ type OpenIDConnectProviderParameters struct { type OpenIDConnectProviderSpec struct { v1.ResourceSpec `json:",inline"` ForProvider OpenIDConnectProviderParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OpenIDConnectProviderInitParameters `json:"initProvider,omitempty"` } // OpenIDConnectProviderStatus defines the observed state of OpenIDConnectProvider. @@ -107,10 +131,10 @@ type OpenIDConnectProviderStatus struct { type OpenIDConnectProvider struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientIdSecretRef)",message="clientIdSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.metadataEndpoint)",message="metadataEndpoint is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientIdSecretRef)",message="clientIdSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.metadataEndpoint) || has(self.initProvider.metadataEndpoint)",message="metadataEndpoint is a required parameter" Spec OpenIDConnectProviderSpec `json:"spec"` Status OpenIDConnectProviderStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_policy_types.go b/apis/apimanagement/v1beta1/zz_policy_types.go index a028228eb..bd0c6f0c6 100755 --- a/apis/apimanagement/v1beta1/zz_policy_types.go +++ b/apis/apimanagement/v1beta1/zz_policy_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PolicyInitParameters_2 struct { + + // The XML Content for this Policy as a string. + XMLContent *string `json:"xmlContent,omitempty" tf:"xml_content,omitempty"` + + // A link to a Policy XML Document, which must be publicly available. + XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link,omitempty"` +} + type PolicyObservation_2 struct { // The ID of the API Management service. Changing this forces a new API Management service Policy to be created. @@ -57,6 +66,18 @@ type PolicyParameters_2 struct { type PolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider PolicyParameters_2 `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PolicyInitParameters_2 `json:"initProvider,omitempty"` } // PolicyStatus defines the observed state of Policy. diff --git a/apis/apimanagement/v1beta1/zz_product_types.go b/apis/apimanagement/v1beta1/zz_product_types.go index 3d929dac9..42e172c79 100755 --- a/apis/apimanagement/v1beta1/zz_product_types.go +++ b/apis/apimanagement/v1beta1/zz_product_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ProductInitParameters struct { + + // Do subscribers need to be approved prior to being able to use the Product? + ApprovalRequired *bool `json:"approvalRequired,omitempty" tf:"approval_required,omitempty"` + + // A description of this Product, which may include HTML formatting tags. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Display Name for this API Management Product. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Is this Product Published? + Published *bool `json:"published,omitempty" tf:"published,omitempty"` + + // Is a Subscription required to access API's included in this Product? Defaults to true. + SubscriptionRequired *bool `json:"subscriptionRequired,omitempty" tf:"subscription_required,omitempty"` + + // The number of subscriptions a user can have to this Product at the same time. + SubscriptionsLimit *float64 `json:"subscriptionsLimit,omitempty" tf:"subscriptions_limit,omitempty"` + + // The Terms and Conditions for this Product, which must be accepted by Developers before they can begin the Subscription process. + Terms *string `json:"terms,omitempty" tf:"terms,omitempty"` +} + type ProductObservation struct { // The name of the API Management Service. Changing this forces a new resource to be created. @@ -107,6 +131,18 @@ type ProductParameters struct { type ProductSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ProductParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ProductInitParameters `json:"initProvider,omitempty"` } // ProductStatus defines the observed state of Product. @@ -127,8 +163,8 @@ type ProductStatus struct { type Product struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.published)",message="published is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.published) || has(self.initProvider.published)",message="published is a required parameter" Spec ProductSpec `json:"spec"` Status ProductStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_productapi_types.go b/apis/apimanagement/v1beta1/zz_productapi_types.go index 3a9e2c558..bfc6c5547 100755 --- a/apis/apimanagement/v1beta1/zz_productapi_types.go +++ b/apis/apimanagement/v1beta1/zz_productapi_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ProductAPIInitParameters struct { +} + type ProductAPIObservation struct { // The name of the API Management Service. Changing this forces a new resource to be created. @@ -90,6 +93,18 @@ type ProductAPIParameters struct { type ProductAPISpec struct { v1.ResourceSpec `json:",inline"` ForProvider ProductAPIParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ProductAPIInitParameters `json:"initProvider,omitempty"` } // ProductAPIStatus defines the observed state of ProductAPI. diff --git a/apis/apimanagement/v1beta1/zz_productpolicy_types.go b/apis/apimanagement/v1beta1/zz_productpolicy_types.go index 65e3fcc8e..eed580421 100755 --- a/apis/apimanagement/v1beta1/zz_productpolicy_types.go +++ b/apis/apimanagement/v1beta1/zz_productpolicy_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ProductPolicyInitParameters struct { + + // The XML Content for this Policy. + XMLContent *string `json:"xmlContent,omitempty" tf:"xml_content,omitempty"` + + // A link to a Policy XML Document, which must be publicly available. + XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link,omitempty"` +} + type ProductPolicyObservation struct { // The name of the API Management Service. Changing this forces a new resource to be created. @@ -88,6 +97,18 @@ type ProductPolicyParameters struct { type ProductPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider ProductPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ProductPolicyInitParameters `json:"initProvider,omitempty"` } // ProductPolicyStatus defines the observed state of ProductPolicy. diff --git a/apis/apimanagement/v1beta1/zz_producttag_types.go b/apis/apimanagement/v1beta1/zz_producttag_types.go index 61be1400b..58c5424af 100755 --- a/apis/apimanagement/v1beta1/zz_producttag_types.go +++ b/apis/apimanagement/v1beta1/zz_producttag_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ProductTagInitParameters struct { +} + type ProductTagObservation struct { // The name of the API Management Service. Changing this forces a new resource to be created. @@ -90,6 +93,18 @@ type ProductTagParameters struct { type ProductTagSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ProductTagParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ProductTagInitParameters `json:"initProvider,omitempty"` } // ProductTagStatus defines the observed state of ProductTag. diff --git a/apis/apimanagement/v1beta1/zz_rediscache_types.go b/apis/apimanagement/v1beta1/zz_rediscache_types.go index 6cafc6aea..1f239acbe 100755 --- a/apis/apimanagement/v1beta1/zz_rediscache_types.go +++ b/apis/apimanagement/v1beta1/zz_rediscache_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RedisCacheInitParameters struct { + + // The location where to use cache from. Possible values are default and valid Azure regions. Defaults to default. + CacheLocation *string `json:"cacheLocation,omitempty" tf:"cache_location,omitempty"` + + // The description of the API Management Redis Cache. + Description *string `json:"description,omitempty" tf:"description,omitempty"` +} + type RedisCacheObservation struct { // The resource ID of the API Management Service from which to create this external cache. Changing this forces a new API Management Redis Cache to be created. @@ -78,6 +87,18 @@ type RedisCacheParameters struct { type RedisCacheSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RedisCacheParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RedisCacheInitParameters `json:"initProvider,omitempty"` } // RedisCacheStatus defines the observed state of RedisCache. @@ -98,7 +119,7 @@ type RedisCacheStatus struct { type RedisCache struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionStringSecretRef)",message="connectionStringSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.connectionStringSecretRef)",message="connectionStringSecretRef is a required parameter" Spec RedisCacheSpec `json:"spec"` Status RedisCacheStatus `json:"status,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_subscription_types.go b/apis/apimanagement/v1beta1/zz_subscription_types.go index b83f9a46d..af60274ad 100755 --- a/apis/apimanagement/v1beta1/zz_subscription_types.go +++ b/apis/apimanagement/v1beta1/zz_subscription_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubscriptionInitParameters struct { + + // The ID of the API which should be assigned to this Subscription. Changing this forces a new resource to be created. + APIID *string `json:"apiId,omitempty" tf:"api_id,omitempty"` + + // Determines whether tracing can be enabled. Defaults to true. + AllowTracing *bool `json:"allowTracing,omitempty" tf:"allow_tracing,omitempty"` + + // The state of this Subscription. Possible values are active, cancelled, expired, rejected, submitted and suspended. Defaults to submitted. + State *string `json:"state,omitempty" tf:"state,omitempty"` + + // An Identifier which should used as the ID of this Subscription. If not specified a new Subscription ID will be generated. Changing this forces a new resource to be created. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` +} + type SubscriptionObservation struct { // The ID of the API which should be assigned to this Subscription. Changing this forces a new resource to be created. @@ -128,6 +143,18 @@ type SubscriptionParameters struct { type SubscriptionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubscriptionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubscriptionInitParameters `json:"initProvider,omitempty"` } // SubscriptionStatus defines the observed state of Subscription. diff --git a/apis/apimanagement/v1beta1/zz_tag_types.go b/apis/apimanagement/v1beta1/zz_tag_types.go index c85445526..ba9a2d47c 100755 --- a/apis/apimanagement/v1beta1/zz_tag_types.go +++ b/apis/apimanagement/v1beta1/zz_tag_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TagInitParameters struct { + + // The display name of the API Management Tag. Defaults to the name. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` +} + type TagObservation struct { // The ID of the API Management. Changing this forces a new API Management Tag to be created. @@ -50,6 +56,18 @@ type TagParameters struct { type TagSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TagParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TagInitParameters `json:"initProvider,omitempty"` } // TagStatus defines the observed state of Tag. diff --git a/apis/apimanagement/v1beta1/zz_user_types.go b/apis/apimanagement/v1beta1/zz_user_types.go index 124f80891..44dadd0e7 100755 --- a/apis/apimanagement/v1beta1/zz_user_types.go +++ b/apis/apimanagement/v1beta1/zz_user_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type UserInitParameters struct { + + // The kind of confirmation email which will be sent to this user. Possible values are invite and signup. Changing this forces a new resource to be created. + Confirmation *string `json:"confirmation,omitempty" tf:"confirmation,omitempty"` + + // The email address associated with this user. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // The first name for this user. + FirstName *string `json:"firstName,omitempty" tf:"first_name,omitempty"` + + // The last name for this user. + LastName *string `json:"lastName,omitempty" tf:"last_name,omitempty"` + + // A note about this user. + Note *string `json:"note,omitempty" tf:"note,omitempty"` + + // The state of this user. Possible values are active, blocked and pending. + State *string `json:"state,omitempty" tf:"state,omitempty"` +} + type UserObservation struct { // The name of the API Management Service in which the User should be created. Changing this forces a new resource to be created. @@ -104,6 +125,18 @@ type UserParameters struct { type UserSpec struct { v1.ResourceSpec `json:",inline"` ForProvider UserParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider UserInitParameters `json:"initProvider,omitempty"` } // UserStatus defines the observed state of User. @@ -124,9 +157,9 @@ type UserStatus struct { type User struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.email)",message="email is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.firstName)",message="firstName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.lastName)",message="lastName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.email) || has(self.initProvider.email)",message="email is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.firstName) || has(self.initProvider.firstName)",message="firstName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.lastName) || has(self.initProvider.lastName)",message="lastName is a required parameter" Spec UserSpec `json:"spec"` Status UserStatus `json:"status,omitempty"` } diff --git a/apis/appconfiguration/v1beta1/zz_configuration_types.go b/apis/appconfiguration/v1beta1/zz_configuration_types.go index 6ba9d574d..16e94d310 100755 --- a/apis/appconfiguration/v1beta1/zz_configuration_types.go +++ b/apis/appconfiguration/v1beta1/zz_configuration_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConfigurationInitParameters struct { + + // An encryption block as defined below. + Encryption []EncryptionInitParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Whether local authentication methods is enabled. Defaults to true. + LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The Public Network Access setting of the App Configuration. Possible values are Enabled and Disabled. + PublicNetworkAccess *string `json:"publicNetworkAccess,omitempty" tf:"public_network_access,omitempty"` + + // Whether Purge Protection is enabled. This field only works for standard sku. Defaults to false. + PurgeProtectionEnabled *bool `json:"purgeProtectionEnabled,omitempty" tf:"purge_protection_enabled,omitempty"` + + // The SKU name of the App Configuration. Possible values are free and standard. Defaults to free. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // The number of days that items should be retained for once soft-deleted. This field only works for standard sku. This value can be between 1 and 7 days. Defaults to 7. Changing this forces a new resource to be created. + SoftDeleteRetentionDays *float64 `json:"softDeleteRetentionDays,omitempty" tf:"soft_delete_retention_days,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ConfigurationObservation struct { // An encryption block as defined below. @@ -116,6 +146,9 @@ type ConfigurationParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type EncryptionInitParameters struct { +} + type EncryptionObservation struct { // Specifies the client id of the identity which will be used to access key vault. @@ -156,6 +189,15 @@ type EncryptionParameters struct { KeyVaultKeyIdentifierSelector *v1.Selector `json:"keyVaultKeyIdentifierSelector,omitempty" tf:"-"` } +type IdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this App Configuration. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this App Configuration. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this App Configuration. @@ -178,8 +220,11 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this App Configuration. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type PrimaryReadKeyInitParameters struct { } type PrimaryReadKeyObservation struct { @@ -197,6 +242,9 @@ type PrimaryReadKeyObservation struct { type PrimaryReadKeyParameters struct { } +type PrimaryWriteKeyInitParameters struct { +} + type PrimaryWriteKeyObservation struct { // The Connection String for this Access Key - comprising of the Endpoint, ID and Secret. @@ -212,6 +260,9 @@ type PrimaryWriteKeyObservation struct { type PrimaryWriteKeyParameters struct { } +type SecondaryReadKeyInitParameters struct { +} + type SecondaryReadKeyObservation struct { // The Connection String for this Access Key - comprising of the Endpoint, ID and Secret. @@ -227,6 +278,9 @@ type SecondaryReadKeyObservation struct { type SecondaryReadKeyParameters struct { } +type SecondaryWriteKeyInitParameters struct { +} + type SecondaryWriteKeyObservation struct { // The Connection String for this Access Key - comprising of the Endpoint, ID and Secret. @@ -246,6 +300,18 @@ type SecondaryWriteKeyParameters struct { type ConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ConfigurationInitParameters `json:"initProvider,omitempty"` } // ConfigurationStatus defines the observed state of Configuration. @@ -266,7 +332,7 @@ type ConfigurationStatus struct { type Configuration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ConfigurationSpec `json:"spec"` Status ConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/appconfiguration/v1beta1/zz_generated.deepcopy.go b/apis/appconfiguration/v1beta1/zz_generated.deepcopy.go index 864631aea..0052c8106 100644 --- a/apis/appconfiguration/v1beta1/zz_generated.deepcopy.go +++ b/apis/appconfiguration/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,78 @@ func (in *Configuration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigurationInitParameters) DeepCopyInto(out *ConfigurationInitParameters) { + *out = *in + if in.Encryption != nil { + in, out := &in.Encryption, &out.Encryption + *out = make([]EncryptionInitParameters, len(*in)) + copy(*out, *in) + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAuthEnabled != nil { + in, out := &in.LocalAuthEnabled, &out.LocalAuthEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccess != nil { + in, out := &in.PublicNetworkAccess, &out.PublicNetworkAccess + *out = new(string) + **out = **in + } + if in.PurgeProtectionEnabled != nil { + in, out := &in.PurgeProtectionEnabled, &out.PurgeProtectionEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.SoftDeleteRetentionDays != nil { + in, out := &in.SoftDeleteRetentionDays, &out.SoftDeleteRetentionDays + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigurationInitParameters. +func (in *ConfigurationInitParameters) DeepCopy() *ConfigurationInitParameters { + if in == nil { + return nil + } + out := new(ConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfigurationList) DeepCopyInto(out *ConfigurationList) { *out = *in @@ -284,6 +356,7 @@ func (in *ConfigurationSpec) DeepCopyInto(out *ConfigurationSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigurationSpec. @@ -313,6 +386,21 @@ func (in *ConfigurationStatus) DeepCopy() *ConfigurationStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncryptionInitParameters) DeepCopyInto(out *EncryptionInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionInitParameters. +func (in *EncryptionInitParameters) DeepCopy() *EncryptionInitParameters { + if in == nil { + return nil + } + out := new(EncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EncryptionObservation) DeepCopyInto(out *EncryptionObservation) { *out = *in @@ -383,6 +471,37 @@ func (in *EncryptionParameters) DeepCopy() *EncryptionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -455,6 +574,21 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrimaryReadKeyInitParameters) DeepCopyInto(out *PrimaryReadKeyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrimaryReadKeyInitParameters. +func (in *PrimaryReadKeyInitParameters) DeepCopy() *PrimaryReadKeyInitParameters { + if in == nil { + return nil + } + out := new(PrimaryReadKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrimaryReadKeyObservation) DeepCopyInto(out *PrimaryReadKeyObservation) { *out = *in @@ -500,6 +634,21 @@ func (in *PrimaryReadKeyParameters) DeepCopy() *PrimaryReadKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrimaryWriteKeyInitParameters) DeepCopyInto(out *PrimaryWriteKeyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrimaryWriteKeyInitParameters. +func (in *PrimaryWriteKeyInitParameters) DeepCopy() *PrimaryWriteKeyInitParameters { + if in == nil { + return nil + } + out := new(PrimaryWriteKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrimaryWriteKeyObservation) DeepCopyInto(out *PrimaryWriteKeyObservation) { *out = *in @@ -545,6 +694,21 @@ func (in *PrimaryWriteKeyParameters) DeepCopy() *PrimaryWriteKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecondaryReadKeyInitParameters) DeepCopyInto(out *SecondaryReadKeyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecondaryReadKeyInitParameters. +func (in *SecondaryReadKeyInitParameters) DeepCopy() *SecondaryReadKeyInitParameters { + if in == nil { + return nil + } + out := new(SecondaryReadKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecondaryReadKeyObservation) DeepCopyInto(out *SecondaryReadKeyObservation) { *out = *in @@ -590,6 +754,21 @@ func (in *SecondaryReadKeyParameters) DeepCopy() *SecondaryReadKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecondaryWriteKeyInitParameters) DeepCopyInto(out *SecondaryWriteKeyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecondaryWriteKeyInitParameters. +func (in *SecondaryWriteKeyInitParameters) DeepCopy() *SecondaryWriteKeyInitParameters { + if in == nil { + return nil + } + out := new(SecondaryWriteKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecondaryWriteKeyObservation) DeepCopyInto(out *SecondaryWriteKeyObservation) { *out = *in diff --git a/apis/appconfiguration/v1beta1/zz_generated.managed.go b/apis/appconfiguration/v1beta1/zz_generated.managed.go index 636e248ac..b29130e65 100644 --- a/apis/appconfiguration/v1beta1/zz_generated.managed.go +++ b/apis/appconfiguration/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Configuration) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Configuration. -func (mg *Configuration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Configuration. +func (mg *Configuration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Configuration. @@ -55,9 +55,9 @@ func (mg *Configuration) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Configuration. -func (mg *Configuration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Configuration. +func (mg *Configuration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Configuration. diff --git a/apis/appconfiguration/v1beta1/zz_generated_terraformed.go b/apis/appconfiguration/v1beta1/zz_generated_terraformed.go index 959945146..0d2d4f65c 100755 --- a/apis/appconfiguration/v1beta1/zz_generated_terraformed.go +++ b/apis/appconfiguration/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Configuration) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Configuration +func (tr *Configuration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Configuration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Configuration) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/appplatform/v1beta1/zz_generated.deepcopy.go b/apis/appplatform/v1beta1/zz_generated.deepcopy.go index f75501a47..2201a5a3e 100644 --- a/apis/appplatform/v1beta1/zz_generated.deepcopy.go +++ b/apis/appplatform/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,46 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIMetadataInitParameters) DeepCopyInto(out *APIMetadataInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DocumentationURL != nil { + in, out := &in.DocumentationURL, &out.DocumentationURL + *out = new(string) + **out = **in + } + if in.ServerURL != nil { + in, out := &in.ServerURL, &out.ServerURL + *out = new(string) + **out = **in + } + if in.Title != nil { + in, out := &in.Title, &out.Title + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIMetadataInitParameters. +func (in *APIMetadataInitParameters) DeepCopy() *APIMetadataInitParameters { + if in == nil { + return nil + } + out := new(APIMetadataInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APIMetadataObservation) DeepCopyInto(out *APIMetadataObservation) { *out = *in @@ -94,6 +134,26 @@ func (in *APIMetadataParameters) DeepCopy() *APIMetadataParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BasicAuthInitParameters) DeepCopyInto(out *BasicAuthInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BasicAuthInitParameters. +func (in *BasicAuthInitParameters) DeepCopy() *BasicAuthInitParameters { + if in == nil { + return nil + } + out := new(BasicAuthInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BasicAuthObservation) DeepCopyInto(out *BasicAuthObservation) { *out = *in @@ -135,6 +195,37 @@ func (in *BasicAuthParameters) DeepCopy() *BasicAuthParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BuildPackGroupInitParameters) DeepCopyInto(out *BuildPackGroupInitParameters) { + *out = *in + if in.BuildPackIds != nil { + in, out := &in.BuildPackIds, &out.BuildPackIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildPackGroupInitParameters. +func (in *BuildPackGroupInitParameters) DeepCopy() *BuildPackGroupInitParameters { + if in == nil { + return nil + } + out := new(BuildPackGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BuildPackGroupObservation) DeepCopyInto(out *BuildPackGroupObservation) { *out = *in @@ -197,6 +288,63 @@ func (in *BuildPackGroupParameters) DeepCopy() *BuildPackGroupParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigServerGitSettingInitParameters) DeepCopyInto(out *ConfigServerGitSettingInitParameters) { + *out = *in + if in.HTTPBasicAuth != nil { + in, out := &in.HTTPBasicAuth, &out.HTTPBasicAuth + *out = make([]HTTPBasicAuthInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Repository != nil { + in, out := &in.Repository, &out.Repository + *out = make([]ConfigServerGitSettingRepositoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSHAuth != nil { + in, out := &in.SSHAuth, &out.SSHAuth + *out = make([]ConfigServerGitSettingSSHAuthInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SearchPaths != nil { + in, out := &in.SearchPaths, &out.SearchPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigServerGitSettingInitParameters. +func (in *ConfigServerGitSettingInitParameters) DeepCopy() *ConfigServerGitSettingInitParameters { + if in == nil { + return nil + } + out := new(ConfigServerGitSettingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfigServerGitSettingObservation) DeepCopyInto(out *ConfigServerGitSettingObservation) { *out = *in @@ -311,6 +459,72 @@ func (in *ConfigServerGitSettingParameters) DeepCopy() *ConfigServerGitSettingPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigServerGitSettingRepositoryInitParameters) DeepCopyInto(out *ConfigServerGitSettingRepositoryInitParameters) { + *out = *in + if in.HTTPBasicAuth != nil { + in, out := &in.HTTPBasicAuth, &out.HTTPBasicAuth + *out = make([]RepositoryHTTPBasicAuthInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Pattern != nil { + in, out := &in.Pattern, &out.Pattern + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SSHAuth != nil { + in, out := &in.SSHAuth, &out.SSHAuth + *out = make([]RepositorySSHAuthInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SearchPaths != nil { + in, out := &in.SearchPaths, &out.SearchPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigServerGitSettingRepositoryInitParameters. +func (in *ConfigServerGitSettingRepositoryInitParameters) DeepCopy() *ConfigServerGitSettingRepositoryInitParameters { + if in == nil { + return nil + } + out := new(ConfigServerGitSettingRepositoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfigServerGitSettingRepositoryObservation) DeepCopyInto(out *ConfigServerGitSettingRepositoryObservation) { *out = *in @@ -443,6 +657,31 @@ func (in *ConfigServerGitSettingRepositoryParameters) DeepCopy() *ConfigServerGi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigServerGitSettingSSHAuthInitParameters) DeepCopyInto(out *ConfigServerGitSettingSSHAuthInitParameters) { + *out = *in + if in.HostKeyAlgorithm != nil { + in, out := &in.HostKeyAlgorithm, &out.HostKeyAlgorithm + *out = new(string) + **out = **in + } + if in.StrictHostKeyCheckingEnabled != nil { + in, out := &in.StrictHostKeyCheckingEnabled, &out.StrictHostKeyCheckingEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigServerGitSettingSSHAuthInitParameters. +func (in *ConfigServerGitSettingSSHAuthInitParameters) DeepCopy() *ConfigServerGitSettingSSHAuthInitParameters { + if in == nil { + return nil + } + out := new(ConfigServerGitSettingSSHAuthInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfigServerGitSettingSSHAuthObservation) DeepCopyInto(out *ConfigServerGitSettingSSHAuthObservation) { *out = *in @@ -499,6 +738,75 @@ func (in *ConfigServerGitSettingSSHAuthParameters) DeepCopy() *ConfigServerGitSe return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CorsInitParameters) DeepCopyInto(out *CorsInitParameters) { + *out = *in + if in.AllowedHeaders != nil { + in, out := &in.AllowedHeaders, &out.AllowedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedMethods != nil { + in, out := &in.AllowedMethods, &out.AllowedMethods + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CredentialsAllowed != nil { + in, out := &in.CredentialsAllowed, &out.CredentialsAllowed + *out = new(bool) + **out = **in + } + if in.ExposedHeaders != nil { + in, out := &in.ExposedHeaders, &out.ExposedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAgeSeconds != nil { + in, out := &in.MaxAgeSeconds, &out.MaxAgeSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorsInitParameters. +func (in *CorsInitParameters) DeepCopy() *CorsInitParameters { + if in == nil { + return nil + } + out := new(CorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CorsObservation) DeepCopyInto(out *CorsObservation) { *out = *in @@ -637,6 +945,52 @@ func (in *CorsParameters) DeepCopy() *CorsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomPersistentDiskInitParameters) DeepCopyInto(out *CustomPersistentDiskInitParameters) { + *out = *in + if in.MountOptions != nil { + in, out := &in.MountOptions, &out.MountOptions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MountPath != nil { + in, out := &in.MountPath, &out.MountPath + *out = new(string) + **out = **in + } + if in.ReadOnlyEnabled != nil { + in, out := &in.ReadOnlyEnabled, &out.ReadOnlyEnabled + *out = new(bool) + **out = **in + } + if in.ShareName != nil { + in, out := &in.ShareName, &out.ShareName + *out = new(string) + **out = **in + } + if in.StorageName != nil { + in, out := &in.StorageName, &out.StorageName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomPersistentDiskInitParameters. +func (in *CustomPersistentDiskInitParameters) DeepCopy() *CustomPersistentDiskInitParameters { + if in == nil { + return nil + } + out := new(CustomPersistentDiskInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomPersistentDiskObservation) DeepCopyInto(out *CustomPersistentDiskObservation) { *out = *in @@ -729,6 +1083,60 @@ func (in *CustomPersistentDiskParameters) DeepCopy() *CustomPersistentDiskParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GitRepositoryInitParameters) DeepCopyInto(out *GitRepositoryInitParameters) { + *out = *in + if in.BasicAuth != nil { + in, out := &in.BasicAuth, &out.BasicAuth + *out = make([]BasicAuthInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Branch != nil { + in, out := &in.Branch, &out.Branch + *out = new(string) + **out = **in + } + if in.Commit != nil { + in, out := &in.Commit, &out.Commit + *out = new(string) + **out = **in + } + if in.GitTag != nil { + in, out := &in.GitTag, &out.GitTag + *out = new(string) + **out = **in + } + if in.IntervalInSeconds != nil { + in, out := &in.IntervalInSeconds, &out.IntervalInSeconds + *out = new(float64) + **out = **in + } + if in.SSHAuth != nil { + in, out := &in.SSHAuth, &out.SSHAuth + *out = make([]SSHAuthInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepositoryInitParameters. +func (in *GitRepositoryInitParameters) DeepCopy() *GitRepositoryInitParameters { + if in == nil { + return nil + } + out := new(GitRepositoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GitRepositoryObservation) DeepCopyInto(out *GitRepositoryObservation) { *out = *in @@ -837,6 +1245,26 @@ func (in *GitRepositoryParameters) DeepCopy() *GitRepositoryParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPBasicAuthInitParameters) DeepCopyInto(out *HTTPBasicAuthInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPBasicAuthInitParameters. +func (in *HTTPBasicAuthInitParameters) DeepCopy() *HTTPBasicAuthInitParameters { + if in == nil { + return nil + } + out := new(HTTPBasicAuthInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HTTPBasicAuthObservation) DeepCopyInto(out *HTTPBasicAuthObservation) { *out = *in @@ -878,6 +1306,37 @@ func (in *HTTPBasicAuthParameters) DeepCopy() *HTTPBasicAuthParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -940,12 +1399,52 @@ func (in *IdentityParameters) DeepCopyInto(out *IdentityParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityParameters. -func (in *IdentityParameters) DeepCopy() *IdentityParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityParameters. +func (in *IdentityParameters) DeepCopy() *IdentityParameters { + if in == nil { + return nil + } + out := new(IdentityParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IngressSettingsInitParameters) DeepCopyInto(out *IngressSettingsInitParameters) { + *out = *in + if in.BackendProtocol != nil { + in, out := &in.BackendProtocol, &out.BackendProtocol + *out = new(string) + **out = **in + } + if in.ReadTimeoutInSeconds != nil { + in, out := &in.ReadTimeoutInSeconds, &out.ReadTimeoutInSeconds + *out = new(float64) + **out = **in + } + if in.SendTimeoutInSeconds != nil { + in, out := &in.SendTimeoutInSeconds, &out.SendTimeoutInSeconds + *out = new(float64) + **out = **in + } + if in.SessionAffinity != nil { + in, out := &in.SessionAffinity, &out.SessionAffinity + *out = new(string) + **out = **in + } + if in.SessionCookieMaxAge != nil { + in, out := &in.SessionCookieMaxAge, &out.SessionCookieMaxAge + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressSettingsInitParameters. +func (in *IngressSettingsInitParameters) DeepCopy() *IngressSettingsInitParameters { if in == nil { return nil } - out := new(IdentityParameters) + out := new(IngressSettingsInitParameters) in.DeepCopyInto(out) return out } @@ -1030,6 +1529,51 @@ func (in *IngressSettingsParameters) DeepCopy() *IngressSettingsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LaunchInitParameters) DeepCopyInto(out *LaunchInitParameters) { + *out = *in + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Secrets != nil { + in, out := &in.Secrets, &out.Secrets + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LaunchInitParameters. +func (in *LaunchInitParameters) DeepCopy() *LaunchInitParameters { + if in == nil { + return nil + } + out := new(LaunchInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LaunchObservation) DeepCopyInto(out *LaunchObservation) { *out = *in @@ -1120,6 +1664,47 @@ func (in *LaunchParameters) DeepCopy() *LaunchParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkInitParameters) DeepCopyInto(out *NetworkInitParameters) { + *out = *in + if in.AppNetworkResourceGroup != nil { + in, out := &in.AppNetworkResourceGroup, &out.AppNetworkResourceGroup + *out = new(string) + **out = **in + } + if in.CidrRanges != nil { + in, out := &in.CidrRanges, &out.CidrRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ReadTimeoutSeconds != nil { + in, out := &in.ReadTimeoutSeconds, &out.ReadTimeoutSeconds + *out = new(float64) + **out = **in + } + if in.ServiceRuntimeNetworkResourceGroup != nil { + in, out := &in.ServiceRuntimeNetworkResourceGroup, &out.ServiceRuntimeNetworkResourceGroup + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInitParameters. +func (in *NetworkInitParameters) DeepCopy() *NetworkInitParameters { + if in == nil { + return nil + } + out := new(NetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkObservation) DeepCopyInto(out *NetworkObservation) { *out = *in @@ -1242,6 +1827,31 @@ func (in *NetworkParameters) DeepCopy() *NetworkParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PersistentDiskInitParameters) DeepCopyInto(out *PersistentDiskInitParameters) { + *out = *in + if in.MountPath != nil { + in, out := &in.MountPath, &out.MountPath + *out = new(string) + **out = **in + } + if in.SizeInGb != nil { + in, out := &in.SizeInGb, &out.SizeInGb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentDiskInitParameters. +func (in *PersistentDiskInitParameters) DeepCopy() *PersistentDiskInitParameters { + if in == nil { + return nil + } + out := new(PersistentDiskInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PersistentDiskObservation) DeepCopyInto(out *PersistentDiskObservation) { *out = *in @@ -1292,6 +1902,31 @@ func (in *PersistentDiskParameters) DeepCopy() *PersistentDiskParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QuotaInitParameters) DeepCopyInto(out *QuotaInitParameters) { + *out = *in + if in.CPU != nil { + in, out := &in.CPU, &out.CPU + *out = new(string) + **out = **in + } + if in.Memory != nil { + in, out := &in.Memory, &out.Memory + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QuotaInitParameters. +func (in *QuotaInitParameters) DeepCopy() *QuotaInitParameters { + if in == nil { + return nil + } + out := new(QuotaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *QuotaObservation) DeepCopyInto(out *QuotaObservation) { *out = *in @@ -1342,6 +1977,26 @@ func (in *QuotaParameters) DeepCopy() *QuotaParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RepositoryHTTPBasicAuthInitParameters) DeepCopyInto(out *RepositoryHTTPBasicAuthInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepositoryHTTPBasicAuthInitParameters. +func (in *RepositoryHTTPBasicAuthInitParameters) DeepCopy() *RepositoryHTTPBasicAuthInitParameters { + if in == nil { + return nil + } + out := new(RepositoryHTTPBasicAuthInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RepositoryHTTPBasicAuthObservation) DeepCopyInto(out *RepositoryHTTPBasicAuthObservation) { *out = *in @@ -1383,6 +2038,78 @@ func (in *RepositoryHTTPBasicAuthParameters) DeepCopy() *RepositoryHTTPBasicAuth return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RepositoryInitParameters) DeepCopyInto(out *RepositoryInitParameters) { + *out = *in + if in.HostKey != nil { + in, out := &in.HostKey, &out.HostKey + *out = new(string) + **out = **in + } + if in.HostKeyAlgorithm != nil { + in, out := &in.HostKeyAlgorithm, &out.HostKeyAlgorithm + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Patterns != nil { + in, out := &in.Patterns, &out.Patterns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SearchPaths != nil { + in, out := &in.SearchPaths, &out.SearchPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.StrictHostKeyChecking != nil { + in, out := &in.StrictHostKeyChecking, &out.StrictHostKeyChecking + *out = new(bool) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepositoryInitParameters. +func (in *RepositoryInitParameters) DeepCopy() *RepositoryInitParameters { + if in == nil { + return nil + } + out := new(RepositoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RepositoryObservation) DeepCopyInto(out *RepositoryObservation) { *out = *in @@ -1537,6 +2264,31 @@ func (in *RepositoryParameters) DeepCopy() *RepositoryParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RepositorySSHAuthInitParameters) DeepCopyInto(out *RepositorySSHAuthInitParameters) { + *out = *in + if in.HostKeyAlgorithm != nil { + in, out := &in.HostKeyAlgorithm, &out.HostKeyAlgorithm + *out = new(string) + **out = **in + } + if in.StrictHostKeyCheckingEnabled != nil { + in, out := &in.StrictHostKeyCheckingEnabled, &out.StrictHostKeyCheckingEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepositorySSHAuthInitParameters. +func (in *RepositorySSHAuthInitParameters) DeepCopy() *RepositorySSHAuthInitParameters { + if in == nil { + return nil + } + out := new(RepositorySSHAuthInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RepositorySSHAuthObservation) DeepCopyInto(out *RepositorySSHAuthObservation) { *out = *in @@ -1593,6 +2345,21 @@ func (in *RepositorySSHAuthParameters) DeepCopy() *RepositorySSHAuthParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequiredNetworkTrafficRulesInitParameters) DeepCopyInto(out *RequiredNetworkTrafficRulesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequiredNetworkTrafficRulesInitParameters. +func (in *RequiredNetworkTrafficRulesInitParameters) DeepCopy() *RequiredNetworkTrafficRulesInitParameters { + if in == nil { + return nil + } + out := new(RequiredNetworkTrafficRulesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RequiredNetworkTrafficRulesObservation) DeepCopyInto(out *RequiredNetworkTrafficRulesObservation) { *out = *in @@ -1655,7 +2422,27 @@ func (in *RequiredNetworkTrafficRulesParameters) DeepCopy() *RequiredNetworkTraf if in == nil { return nil } - out := new(RequiredNetworkTrafficRulesParameters) + out := new(RequiredNetworkTrafficRulesParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHAuthInitParameters) DeepCopyInto(out *SSHAuthInitParameters) { + *out = *in + if in.HostKeyAlgorithm != nil { + in, out := &in.HostKeyAlgorithm, &out.HostKeyAlgorithm + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHAuthInitParameters. +func (in *SSHAuthInitParameters) DeepCopy() *SSHAuthInitParameters { + if in == nil { + return nil + } + out := new(SSHAuthInitParameters) in.DeepCopyInto(out) return out } @@ -1760,6 +2547,31 @@ func (in *SpringCloudAPIPortalCustomDomain) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudAPIPortalCustomDomainInitParameters) DeepCopyInto(out *SpringCloudAPIPortalCustomDomainInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAPIPortalCustomDomainInitParameters. +func (in *SpringCloudAPIPortalCustomDomainInitParameters) DeepCopy() *SpringCloudAPIPortalCustomDomainInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudAPIPortalCustomDomainInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudAPIPortalCustomDomainList) DeepCopyInto(out *SpringCloudAPIPortalCustomDomainList) { *out = *in @@ -1872,6 +2684,7 @@ func (in *SpringCloudAPIPortalCustomDomainSpec) DeepCopyInto(out *SpringCloudAPI *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAPIPortalCustomDomainSpec. @@ -1901,6 +2714,43 @@ func (in *SpringCloudAPIPortalCustomDomainStatus) DeepCopy() *SpringCloudAPIPort return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudAPIPortalInitParameters) DeepCopyInto(out *SpringCloudAPIPortalInitParameters) { + *out = *in + if in.HTTPSOnlyEnabled != nil { + in, out := &in.HTTPSOnlyEnabled, &out.HTTPSOnlyEnabled + *out = new(bool) + **out = **in + } + if in.InstanceCount != nil { + in, out := &in.InstanceCount, &out.InstanceCount + *out = new(float64) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sso != nil { + in, out := &in.Sso, &out.Sso + *out = make([]SsoInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAPIPortalInitParameters. +func (in *SpringCloudAPIPortalInitParameters) DeepCopy() *SpringCloudAPIPortalInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudAPIPortalInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudAPIPortalList) DeepCopyInto(out *SpringCloudAPIPortalList) { *out = *in @@ -2076,6 +2926,7 @@ func (in *SpringCloudAPIPortalSpec) DeepCopyInto(out *SpringCloudAPIPortalSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAPIPortalSpec. @@ -2132,6 +2983,26 @@ func (in *SpringCloudAccelerator) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudAcceleratorInitParameters) DeepCopyInto(out *SpringCloudAcceleratorInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAcceleratorInitParameters. +func (in *SpringCloudAcceleratorInitParameters) DeepCopy() *SpringCloudAcceleratorInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudAcceleratorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudAcceleratorList) DeepCopyInto(out *SpringCloudAcceleratorList) { *out = *in @@ -2234,6 +3105,7 @@ func (in *SpringCloudAcceleratorSpec) DeepCopyInto(out *SpringCloudAcceleratorSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAcceleratorSpec. @@ -2290,6 +3162,21 @@ func (in *SpringCloudActiveDeployment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudActiveDeploymentInitParameters) DeepCopyInto(out *SpringCloudActiveDeploymentInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudActiveDeploymentInitParameters. +func (in *SpringCloudActiveDeploymentInitParameters) DeepCopy() *SpringCloudActiveDeploymentInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudActiveDeploymentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudActiveDeploymentList) DeepCopyInto(out *SpringCloudActiveDeploymentList) { *out = *in @@ -2402,6 +3289,7 @@ func (in *SpringCloudActiveDeploymentSpec) DeepCopyInto(out *SpringCloudActiveDe *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudActiveDeploymentSpec. @@ -2485,6 +3373,51 @@ func (in *SpringCloudAppCosmosDBAssociation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudAppCosmosDBAssociationInitParameters) DeepCopyInto(out *SpringCloudAppCosmosDBAssociationInitParameters) { + *out = *in + if in.APIType != nil { + in, out := &in.APIType, &out.APIType + *out = new(string) + **out = **in + } + if in.CosmosDBCassandraKeySpaceName != nil { + in, out := &in.CosmosDBCassandraKeySpaceName, &out.CosmosDBCassandraKeySpaceName + *out = new(string) + **out = **in + } + if in.CosmosDBGremlinDatabaseName != nil { + in, out := &in.CosmosDBGremlinDatabaseName, &out.CosmosDBGremlinDatabaseName + *out = new(string) + **out = **in + } + if in.CosmosDBGremlinGraphName != nil { + in, out := &in.CosmosDBGremlinGraphName, &out.CosmosDBGremlinGraphName + *out = new(string) + **out = **in + } + if in.CosmosDBMongoDatabaseName != nil { + in, out := &in.CosmosDBMongoDatabaseName, &out.CosmosDBMongoDatabaseName + *out = new(string) + **out = **in + } + if in.CosmosDBSQLDatabaseName != nil { + in, out := &in.CosmosDBSQLDatabaseName, &out.CosmosDBSQLDatabaseName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAppCosmosDBAssociationInitParameters. +func (in *SpringCloudAppCosmosDBAssociationInitParameters) DeepCopy() *SpringCloudAppCosmosDBAssociationInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudAppCosmosDBAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudAppCosmosDBAssociationList) DeepCopyInto(out *SpringCloudAppCosmosDBAssociationList) { *out = *in @@ -2677,6 +3610,7 @@ func (in *SpringCloudAppCosmosDBAssociationSpec) DeepCopyInto(out *SpringCloudAp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAppCosmosDBAssociationSpec. @@ -2706,6 +3640,74 @@ func (in *SpringCloudAppCosmosDBAssociationStatus) DeepCopy() *SpringCloudAppCos return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudAppInitParameters) DeepCopyInto(out *SpringCloudAppInitParameters) { + *out = *in + if in.AddonJSON != nil { + in, out := &in.AddonJSON, &out.AddonJSON + *out = new(string) + **out = **in + } + if in.CustomPersistentDisk != nil { + in, out := &in.CustomPersistentDisk, &out.CustomPersistentDisk + *out = make([]CustomPersistentDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IngressSettings != nil { + in, out := &in.IngressSettings, &out.IngressSettings + *out = make([]IngressSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IsPublic != nil { + in, out := &in.IsPublic, &out.IsPublic + *out = new(bool) + **out = **in + } + if in.PersistentDisk != nil { + in, out := &in.PersistentDisk, &out.PersistentDisk + *out = make([]PersistentDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicEndpointEnabled != nil { + in, out := &in.PublicEndpointEnabled, &out.PublicEndpointEnabled + *out = new(bool) + **out = **in + } + if in.TLSEnabled != nil { + in, out := &in.TLSEnabled, &out.TLSEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAppInitParameters. +func (in *SpringCloudAppInitParameters) DeepCopy() *SpringCloudAppInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudAppInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudAppList) DeepCopyInto(out *SpringCloudAppList) { *out = *in @@ -2765,6 +3767,21 @@ func (in *SpringCloudAppMySQLAssociation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudAppMySQLAssociationInitParameters) DeepCopyInto(out *SpringCloudAppMySQLAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAppMySQLAssociationInitParameters. +func (in *SpringCloudAppMySQLAssociationInitParameters) DeepCopy() *SpringCloudAppMySQLAssociationInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudAppMySQLAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudAppMySQLAssociationList) DeepCopyInto(out *SpringCloudAppMySQLAssociationList) { *out = *in @@ -2918,6 +3935,7 @@ func (in *SpringCloudAppMySQLAssociationSpec) DeepCopyInto(out *SpringCloudAppMy *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAppMySQLAssociationSpec. @@ -3165,6 +4183,26 @@ func (in *SpringCloudAppRedisAssociation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudAppRedisAssociationInitParameters) DeepCopyInto(out *SpringCloudAppRedisAssociationInitParameters) { + *out = *in + if in.SSLEnabled != nil { + in, out := &in.SSLEnabled, &out.SSLEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAppRedisAssociationInitParameters. +func (in *SpringCloudAppRedisAssociationInitParameters) DeepCopy() *SpringCloudAppRedisAssociationInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudAppRedisAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudAppRedisAssociationList) DeepCopyInto(out *SpringCloudAppRedisAssociationList) { *out = *in @@ -3307,6 +4345,7 @@ func (in *SpringCloudAppRedisAssociationSpec) DeepCopyInto(out *SpringCloudAppRe *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAppRedisAssociationSpec. @@ -3341,6 +4380,7 @@ func (in *SpringCloudAppSpec) DeepCopyInto(out *SpringCloudAppSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudAppSpec. @@ -3397,6 +4437,58 @@ func (in *SpringCloudBuildDeployment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudBuildDeploymentInitParameters) DeepCopyInto(out *SpringCloudBuildDeploymentInitParameters) { + *out = *in + if in.AddonJSON != nil { + in, out := &in.AddonJSON, &out.AddonJSON + *out = new(string) + **out = **in + } + if in.BuildResultID != nil { + in, out := &in.BuildResultID, &out.BuildResultID + *out = new(string) + **out = **in + } + if in.EnvironmentVariables != nil { + in, out := &in.EnvironmentVariables, &out.EnvironmentVariables + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.InstanceCount != nil { + in, out := &in.InstanceCount, &out.InstanceCount + *out = new(float64) + **out = **in + } + if in.Quota != nil { + in, out := &in.Quota, &out.Quota + *out = make([]QuotaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudBuildDeploymentInitParameters. +func (in *SpringCloudBuildDeploymentInitParameters) DeepCopy() *SpringCloudBuildDeploymentInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudBuildDeploymentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudBuildDeploymentList) DeepCopyInto(out *SpringCloudBuildDeploymentList) { *out = *in @@ -3563,6 +4655,7 @@ func (in *SpringCloudBuildDeploymentSpec) DeepCopyInto(out *SpringCloudBuildDepl *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudBuildDeploymentSpec. @@ -3619,6 +4712,33 @@ func (in *SpringCloudBuildPackBinding) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudBuildPackBindingInitParameters) DeepCopyInto(out *SpringCloudBuildPackBindingInitParameters) { + *out = *in + if in.BindingType != nil { + in, out := &in.BindingType, &out.BindingType + *out = new(string) + **out = **in + } + if in.Launch != nil { + in, out := &in.Launch, &out.Launch + *out = make([]LaunchInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudBuildPackBindingInitParameters. +func (in *SpringCloudBuildPackBindingInitParameters) DeepCopy() *SpringCloudBuildPackBindingInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudBuildPackBindingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudBuildPackBindingList) DeepCopyInto(out *SpringCloudBuildPackBindingList) { *out = *in @@ -3735,6 +4855,7 @@ func (in *SpringCloudBuildPackBindingSpec) DeepCopyInto(out *SpringCloudBuildPac *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudBuildPackBindingSpec. @@ -3791,6 +4912,40 @@ func (in *SpringCloudBuilder) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudBuilderInitParameters) DeepCopyInto(out *SpringCloudBuilderInitParameters) { + *out = *in + if in.BuildPackGroup != nil { + in, out := &in.BuildPackGroup, &out.BuildPackGroup + *out = make([]BuildPackGroupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Stack != nil { + in, out := &in.Stack, &out.Stack + *out = make([]StackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudBuilderInitParameters. +func (in *SpringCloudBuilderInitParameters) DeepCopy() *SpringCloudBuilderInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudBuilderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudBuilderList) DeepCopyInto(out *SpringCloudBuilderList) { *out = *in @@ -3921,6 +5076,7 @@ func (in *SpringCloudBuilderSpec) DeepCopyInto(out *SpringCloudBuilderSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudBuilderSpec. @@ -3977,6 +5133,26 @@ func (in *SpringCloudCertificate) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudCertificateInitParameters) DeepCopyInto(out *SpringCloudCertificateInitParameters) { + *out = *in + if in.CertificateContent != nil { + in, out := &in.CertificateContent, &out.CertificateContent + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudCertificateInitParameters. +func (in *SpringCloudCertificateInitParameters) DeepCopy() *SpringCloudCertificateInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudCertificateList) DeepCopyInto(out *SpringCloudCertificateList) { *out = *in @@ -4124,6 +5300,7 @@ func (in *SpringCloudCertificateSpec) DeepCopyInto(out *SpringCloudCertificateSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudCertificateSpec. @@ -4180,6 +5357,28 @@ func (in *SpringCloudConfigurationService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudConfigurationServiceInitParameters) DeepCopyInto(out *SpringCloudConfigurationServiceInitParameters) { + *out = *in + if in.Repository != nil { + in, out := &in.Repository, &out.Repository + *out = make([]RepositoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudConfigurationServiceInitParameters. +func (in *SpringCloudConfigurationServiceInitParameters) DeepCopy() *SpringCloudConfigurationServiceInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudConfigurationServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudConfigurationServiceList) DeepCopyInto(out *SpringCloudConfigurationServiceList) { *out = *in @@ -4286,6 +5485,7 @@ func (in *SpringCloudConfigurationServiceSpec) DeepCopyInto(out *SpringCloudConf *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudConfigurationServiceSpec. @@ -4342,6 +5542,90 @@ func (in *SpringCloudContainerDeployment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudContainerDeploymentInitParameters) DeepCopyInto(out *SpringCloudContainerDeploymentInitParameters) { + *out = *in + if in.AddonJSON != nil { + in, out := &in.AddonJSON, &out.AddonJSON + *out = new(string) + **out = **in + } + if in.Arguments != nil { + in, out := &in.Arguments, &out.Arguments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Commands != nil { + in, out := &in.Commands, &out.Commands + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EnvironmentVariables != nil { + in, out := &in.EnvironmentVariables, &out.EnvironmentVariables + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Image != nil { + in, out := &in.Image, &out.Image + *out = new(string) + **out = **in + } + if in.InstanceCount != nil { + in, out := &in.InstanceCount, &out.InstanceCount + *out = new(float64) + **out = **in + } + if in.LanguageFramework != nil { + in, out := &in.LanguageFramework, &out.LanguageFramework + *out = new(string) + **out = **in + } + if in.Quota != nil { + in, out := &in.Quota, &out.Quota + *out = make([]SpringCloudContainerDeploymentQuotaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudContainerDeploymentInitParameters. +func (in *SpringCloudContainerDeploymentInitParameters) DeepCopy() *SpringCloudContainerDeploymentInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudContainerDeploymentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudContainerDeploymentList) DeepCopyInto(out *SpringCloudContainerDeploymentList) { *out = *in @@ -4567,6 +5851,31 @@ func (in *SpringCloudContainerDeploymentParameters) DeepCopy() *SpringCloudConta return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudContainerDeploymentQuotaInitParameters) DeepCopyInto(out *SpringCloudContainerDeploymentQuotaInitParameters) { + *out = *in + if in.CPU != nil { + in, out := &in.CPU, &out.CPU + *out = new(string) + **out = **in + } + if in.Memory != nil { + in, out := &in.Memory, &out.Memory + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudContainerDeploymentQuotaInitParameters. +func (in *SpringCloudContainerDeploymentQuotaInitParameters) DeepCopy() *SpringCloudContainerDeploymentQuotaInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudContainerDeploymentQuotaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudContainerDeploymentQuotaObservation) DeepCopyInto(out *SpringCloudContainerDeploymentQuotaObservation) { *out = *in @@ -4622,6 +5931,7 @@ func (in *SpringCloudContainerDeploymentSpec) DeepCopyInto(out *SpringCloudConta *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudContainerDeploymentSpec. @@ -4678,6 +5988,36 @@ func (in *SpringCloudCustomDomain) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudCustomDomainInitParameters) DeepCopyInto(out *SpringCloudCustomDomainInitParameters) { + *out = *in + if in.CertificateName != nil { + in, out := &in.CertificateName, &out.CertificateName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudCustomDomainInitParameters. +func (in *SpringCloudCustomDomainInitParameters) DeepCopy() *SpringCloudCustomDomainInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudCustomDomainInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudCustomDomainList) DeepCopyInto(out *SpringCloudCustomDomainList) { *out = *in @@ -4800,6 +6140,7 @@ func (in *SpringCloudCustomDomainSpec) DeepCopyInto(out *SpringCloudCustomDomain *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudCustomDomainSpec. @@ -4838,24 +6179,72 @@ func (in *SpringCloudCustomizedAccelerator) DeepCopyInto(out *SpringCloudCustomi in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudCustomizedAccelerator. -func (in *SpringCloudCustomizedAccelerator) DeepCopy() *SpringCloudCustomizedAccelerator { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudCustomizedAccelerator. +func (in *SpringCloudCustomizedAccelerator) DeepCopy() *SpringCloudCustomizedAccelerator { + if in == nil { + return nil + } + out := new(SpringCloudCustomizedAccelerator) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SpringCloudCustomizedAccelerator) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudCustomizedAcceleratorInitParameters) DeepCopyInto(out *SpringCloudCustomizedAcceleratorInitParameters) { + *out = *in + if in.AcceleratorTags != nil { + in, out := &in.AcceleratorTags, &out.AcceleratorTags + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.GitRepository != nil { + in, out := &in.GitRepository, &out.GitRepository + *out = make([]GitRepositoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IconURL != nil { + in, out := &in.IconURL, &out.IconURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudCustomizedAcceleratorInitParameters. +func (in *SpringCloudCustomizedAcceleratorInitParameters) DeepCopy() *SpringCloudCustomizedAcceleratorInitParameters { if in == nil { return nil } - out := new(SpringCloudCustomizedAccelerator) + out := new(SpringCloudCustomizedAcceleratorInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SpringCloudCustomizedAccelerator) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudCustomizedAcceleratorList) DeepCopyInto(out *SpringCloudCustomizedAcceleratorList) { *out = *in @@ -5014,6 +6403,7 @@ func (in *SpringCloudCustomizedAcceleratorSpec) DeepCopyInto(out *SpringCloudCus *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudCustomizedAcceleratorSpec. @@ -5070,6 +6460,48 @@ func (in *SpringCloudDevToolPortal) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudDevToolPortalInitParameters) DeepCopyInto(out *SpringCloudDevToolPortalInitParameters) { + *out = *in + if in.ApplicationAcceleratorEnabled != nil { + in, out := &in.ApplicationAcceleratorEnabled, &out.ApplicationAcceleratorEnabled + *out = new(bool) + **out = **in + } + if in.ApplicationLiveViewEnabled != nil { + in, out := &in.ApplicationLiveViewEnabled, &out.ApplicationLiveViewEnabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sso != nil { + in, out := &in.Sso, &out.Sso + *out = make([]SpringCloudDevToolPortalSsoInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudDevToolPortalInitParameters. +func (in *SpringCloudDevToolPortalInitParameters) DeepCopy() *SpringCloudDevToolPortalInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudDevToolPortalInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudDevToolPortalList) DeepCopyInto(out *SpringCloudDevToolPortalList) { *out = *in @@ -5216,6 +6648,7 @@ func (in *SpringCloudDevToolPortalSpec) DeepCopyInto(out *SpringCloudDevToolPort *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudDevToolPortalSpec. @@ -5228,6 +6661,47 @@ func (in *SpringCloudDevToolPortalSpec) DeepCopy() *SpringCloudDevToolPortalSpec return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudDevToolPortalSsoInitParameters) DeepCopyInto(out *SpringCloudDevToolPortalSsoInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecret != nil { + in, out := &in.ClientSecret, &out.ClientSecret + *out = new(string) + **out = **in + } + if in.MetadataURL != nil { + in, out := &in.MetadataURL, &out.MetadataURL + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudDevToolPortalSsoInitParameters. +func (in *SpringCloudDevToolPortalSsoInitParameters) DeepCopy() *SpringCloudDevToolPortalSsoInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudDevToolPortalSsoInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudDevToolPortalSsoObservation) DeepCopyInto(out *SpringCloudDevToolPortalSsoObservation) { *out = *in @@ -5381,6 +6855,31 @@ func (in *SpringCloudGatewayCustomDomain) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudGatewayCustomDomainInitParameters) DeepCopyInto(out *SpringCloudGatewayCustomDomainInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudGatewayCustomDomainInitParameters. +func (in *SpringCloudGatewayCustomDomainInitParameters) DeepCopy() *SpringCloudGatewayCustomDomainInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudGatewayCustomDomainInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudGatewayCustomDomainList) DeepCopyInto(out *SpringCloudGatewayCustomDomainList) { *out = *in @@ -5493,6 +6992,7 @@ func (in *SpringCloudGatewayCustomDomainSpec) DeepCopyInto(out *SpringCloudGatew *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudGatewayCustomDomainSpec. @@ -5522,6 +7022,90 @@ func (in *SpringCloudGatewayCustomDomainStatus) DeepCopy() *SpringCloudGatewayCu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudGatewayInitParameters) DeepCopyInto(out *SpringCloudGatewayInitParameters) { + *out = *in + if in.APIMetadata != nil { + in, out := &in.APIMetadata, &out.APIMetadata + *out = make([]APIMetadataInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ApplicationPerformanceMonitoringTypes != nil { + in, out := &in.ApplicationPerformanceMonitoringTypes, &out.ApplicationPerformanceMonitoringTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]CorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EnvironmentVariables != nil { + in, out := &in.EnvironmentVariables, &out.EnvironmentVariables + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.InstanceCount != nil { + in, out := &in.InstanceCount, &out.InstanceCount + *out = new(float64) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Quota != nil { + in, out := &in.Quota, &out.Quota + *out = make([]SpringCloudGatewayQuotaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Sso != nil { + in, out := &in.Sso, &out.Sso + *out = make([]SpringCloudGatewaySsoInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudGatewayInitParameters. +func (in *SpringCloudGatewayInitParameters) DeepCopy() *SpringCloudGatewayInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudGatewayList) DeepCopyInto(out *SpringCloudGatewayList) { *out = *in @@ -5757,6 +7341,31 @@ func (in *SpringCloudGatewayParameters) DeepCopy() *SpringCloudGatewayParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudGatewayQuotaInitParameters) DeepCopyInto(out *SpringCloudGatewayQuotaInitParameters) { + *out = *in + if in.CPU != nil { + in, out := &in.CPU, &out.CPU + *out = new(string) + **out = **in + } + if in.Memory != nil { + in, out := &in.Memory, &out.Memory + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudGatewayQuotaInitParameters. +func (in *SpringCloudGatewayQuotaInitParameters) DeepCopy() *SpringCloudGatewayQuotaInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudGatewayQuotaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudGatewayQuotaObservation) DeepCopyInto(out *SpringCloudGatewayQuotaObservation) { *out = *in @@ -5795,31 +7404,73 @@ func (in *SpringCloudGatewayQuotaParameters) DeepCopyInto(out *SpringCloudGatewa *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudGatewayQuotaParameters. -func (in *SpringCloudGatewayQuotaParameters) DeepCopy() *SpringCloudGatewayQuotaParameters { - if in == nil { - return nil +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudGatewayQuotaParameters. +func (in *SpringCloudGatewayQuotaParameters) DeepCopy() *SpringCloudGatewayQuotaParameters { + if in == nil { + return nil + } + out := new(SpringCloudGatewayQuotaParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudGatewaySpec) DeepCopyInto(out *SpringCloudGatewaySpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudGatewaySpec. +func (in *SpringCloudGatewaySpec) DeepCopy() *SpringCloudGatewaySpec { + if in == nil { + return nil + } + out := new(SpringCloudGatewaySpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudGatewaySsoInitParameters) DeepCopyInto(out *SpringCloudGatewaySsoInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecret != nil { + in, out := &in.ClientSecret, &out.ClientSecret + *out = new(string) + **out = **in + } + if in.IssuerURI != nil { + in, out := &in.IssuerURI, &out.IssuerURI + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - out := new(SpringCloudGatewayQuotaParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SpringCloudGatewaySpec) DeepCopyInto(out *SpringCloudGatewaySpec) { - *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudGatewaySpec. -func (in *SpringCloudGatewaySpec) DeepCopy() *SpringCloudGatewaySpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudGatewaySsoInitParameters. +func (in *SpringCloudGatewaySsoInitParameters) DeepCopy() *SpringCloudGatewaySsoInitParameters { if in == nil { return nil } - out := new(SpringCloudGatewaySpec) + out := new(SpringCloudGatewaySsoInitParameters) in.DeepCopyInto(out) return out } @@ -5950,6 +7601,58 @@ func (in *SpringCloudJavaDeployment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudJavaDeploymentInitParameters) DeepCopyInto(out *SpringCloudJavaDeploymentInitParameters) { + *out = *in + if in.EnvironmentVariables != nil { + in, out := &in.EnvironmentVariables, &out.EnvironmentVariables + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.InstanceCount != nil { + in, out := &in.InstanceCount, &out.InstanceCount + *out = new(float64) + **out = **in + } + if in.JvmOptions != nil { + in, out := &in.JvmOptions, &out.JvmOptions + *out = new(string) + **out = **in + } + if in.Quota != nil { + in, out := &in.Quota, &out.Quota + *out = make([]SpringCloudJavaDeploymentQuotaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudJavaDeploymentInitParameters. +func (in *SpringCloudJavaDeploymentInitParameters) DeepCopy() *SpringCloudJavaDeploymentInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudJavaDeploymentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudJavaDeploymentList) DeepCopyInto(out *SpringCloudJavaDeploymentList) { *out = *in @@ -6111,6 +7814,31 @@ func (in *SpringCloudJavaDeploymentParameters) DeepCopy() *SpringCloudJavaDeploy return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudJavaDeploymentQuotaInitParameters) DeepCopyInto(out *SpringCloudJavaDeploymentQuotaInitParameters) { + *out = *in + if in.CPU != nil { + in, out := &in.CPU, &out.CPU + *out = new(string) + **out = **in + } + if in.Memory != nil { + in, out := &in.Memory, &out.Memory + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudJavaDeploymentQuotaInitParameters. +func (in *SpringCloudJavaDeploymentQuotaInitParameters) DeepCopy() *SpringCloudJavaDeploymentQuotaInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudJavaDeploymentQuotaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudJavaDeploymentQuotaObservation) DeepCopyInto(out *SpringCloudJavaDeploymentQuotaObservation) { *out = *in @@ -6166,6 +7894,7 @@ func (in *SpringCloudJavaDeploymentSpec) DeepCopyInto(out *SpringCloudJavaDeploy *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudJavaDeploymentSpec. @@ -6222,6 +7951,87 @@ func (in *SpringCloudService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudServiceInitParameters) DeepCopyInto(out *SpringCloudServiceInitParameters) { + *out = *in + if in.BuildAgentPoolSize != nil { + in, out := &in.BuildAgentPoolSize, &out.BuildAgentPoolSize + *out = new(string) + **out = **in + } + if in.ConfigServerGitSetting != nil { + in, out := &in.ConfigServerGitSetting, &out.ConfigServerGitSetting + *out = make([]ConfigServerGitSettingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.LogStreamPublicEndpointEnabled != nil { + in, out := &in.LogStreamPublicEndpointEnabled, &out.LogStreamPublicEndpointEnabled + *out = new(bool) + **out = **in + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = make([]NetworkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ServiceRegistryEnabled != nil { + in, out := &in.ServiceRegistryEnabled, &out.ServiceRegistryEnabled + *out = new(bool) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Trace != nil { + in, out := &in.Trace, &out.Trace + *out = make([]TraceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ZoneRedundant != nil { + in, out := &in.ZoneRedundant, &out.ZoneRedundant + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudServiceInitParameters. +func (in *SpringCloudServiceInitParameters) DeepCopy() *SpringCloudServiceInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudServiceList) DeepCopyInto(out *SpringCloudServiceList) { *out = *in @@ -6469,6 +8279,7 @@ func (in *SpringCloudServiceSpec) DeepCopyInto(out *SpringCloudServiceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudServiceSpec. @@ -6525,6 +8336,21 @@ func (in *SpringCloudStorage) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudStorageInitParameters) DeepCopyInto(out *SpringCloudStorageInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudStorageInitParameters. +func (in *SpringCloudStorageInitParameters) DeepCopy() *SpringCloudStorageInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudStorageList) DeepCopyInto(out *SpringCloudStorageList) { *out = *in @@ -6657,6 +8483,7 @@ func (in *SpringCloudStorageSpec) DeepCopyInto(out *SpringCloudStorageSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudStorageSpec. @@ -6686,6 +8513,47 @@ func (in *SpringCloudStorageStatus) DeepCopy() *SpringCloudStorageStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SsoInitParameters) DeepCopyInto(out *SsoInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecret != nil { + in, out := &in.ClientSecret, &out.ClientSecret + *out = new(string) + **out = **in + } + if in.IssuerURI != nil { + in, out := &in.IssuerURI, &out.IssuerURI + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SsoInitParameters. +func (in *SsoInitParameters) DeepCopy() *SsoInitParameters { + if in == nil { + return nil + } + out := new(SsoInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SsoObservation) DeepCopyInto(out *SsoObservation) { *out = *in @@ -6768,6 +8636,31 @@ func (in *SsoParameters) DeepCopy() *SsoParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StackInitParameters) DeepCopyInto(out *StackInitParameters) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StackInitParameters. +func (in *StackInitParameters) DeepCopy() *StackInitParameters { + if in == nil { + return nil + } + out := new(StackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StackObservation) DeepCopyInto(out *StackObservation) { *out = *in @@ -6818,6 +8711,26 @@ func (in *StackParameters) DeepCopy() *StackParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TraceInitParameters) DeepCopyInto(out *TraceInitParameters) { + *out = *in + if in.SampleRate != nil { + in, out := &in.SampleRate, &out.SampleRate + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TraceInitParameters. +func (in *TraceInitParameters) DeepCopy() *TraceInitParameters { + if in == nil { + return nil + } + out := new(TraceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TraceObservation) DeepCopyInto(out *TraceObservation) { *out = *in diff --git a/apis/appplatform/v1beta1/zz_generated.managed.go b/apis/appplatform/v1beta1/zz_generated.managed.go index aec8efbb3..9b35e8d3a 100644 --- a/apis/appplatform/v1beta1/zz_generated.managed.go +++ b/apis/appplatform/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *SpringCloudAPIPortal) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudAPIPortal. -func (mg *SpringCloudAPIPortal) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudAPIPortal. +func (mg *SpringCloudAPIPortal) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudAPIPortal. @@ -55,9 +55,9 @@ func (mg *SpringCloudAPIPortal) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudAPIPortal. -func (mg *SpringCloudAPIPortal) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudAPIPortal. +func (mg *SpringCloudAPIPortal) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudAPIPortal. @@ -93,9 +93,9 @@ func (mg *SpringCloudAPIPortalCustomDomain) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudAPIPortalCustomDomain. -func (mg *SpringCloudAPIPortalCustomDomain) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudAPIPortalCustomDomain. +func (mg *SpringCloudAPIPortalCustomDomain) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudAPIPortalCustomDomain. @@ -131,9 +131,9 @@ func (mg *SpringCloudAPIPortalCustomDomain) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudAPIPortalCustomDomain. -func (mg *SpringCloudAPIPortalCustomDomain) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudAPIPortalCustomDomain. +func (mg *SpringCloudAPIPortalCustomDomain) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudAPIPortalCustomDomain. @@ -169,9 +169,9 @@ func (mg *SpringCloudAccelerator) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudAccelerator. -func (mg *SpringCloudAccelerator) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudAccelerator. +func (mg *SpringCloudAccelerator) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudAccelerator. @@ -207,9 +207,9 @@ func (mg *SpringCloudAccelerator) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudAccelerator. -func (mg *SpringCloudAccelerator) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudAccelerator. +func (mg *SpringCloudAccelerator) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudAccelerator. @@ -245,9 +245,9 @@ func (mg *SpringCloudActiveDeployment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudActiveDeployment. -func (mg *SpringCloudActiveDeployment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudActiveDeployment. +func (mg *SpringCloudActiveDeployment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudActiveDeployment. @@ -283,9 +283,9 @@ func (mg *SpringCloudActiveDeployment) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudActiveDeployment. -func (mg *SpringCloudActiveDeployment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudActiveDeployment. +func (mg *SpringCloudActiveDeployment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudActiveDeployment. @@ -321,9 +321,9 @@ func (mg *SpringCloudApp) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudApp. -func (mg *SpringCloudApp) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudApp. +func (mg *SpringCloudApp) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudApp. @@ -359,9 +359,9 @@ func (mg *SpringCloudApp) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudApp. -func (mg *SpringCloudApp) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudApp. +func (mg *SpringCloudApp) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudApp. @@ -397,9 +397,9 @@ func (mg *SpringCloudAppCosmosDBAssociation) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudAppCosmosDBAssociation. -func (mg *SpringCloudAppCosmosDBAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudAppCosmosDBAssociation. +func (mg *SpringCloudAppCosmosDBAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudAppCosmosDBAssociation. @@ -435,9 +435,9 @@ func (mg *SpringCloudAppCosmosDBAssociation) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudAppCosmosDBAssociation. -func (mg *SpringCloudAppCosmosDBAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudAppCosmosDBAssociation. +func (mg *SpringCloudAppCosmosDBAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudAppCosmosDBAssociation. @@ -473,9 +473,9 @@ func (mg *SpringCloudAppMySQLAssociation) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudAppMySQLAssociation. -func (mg *SpringCloudAppMySQLAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudAppMySQLAssociation. +func (mg *SpringCloudAppMySQLAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudAppMySQLAssociation. @@ -511,9 +511,9 @@ func (mg *SpringCloudAppMySQLAssociation) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudAppMySQLAssociation. -func (mg *SpringCloudAppMySQLAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudAppMySQLAssociation. +func (mg *SpringCloudAppMySQLAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudAppMySQLAssociation. @@ -549,9 +549,9 @@ func (mg *SpringCloudAppRedisAssociation) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudAppRedisAssociation. -func (mg *SpringCloudAppRedisAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudAppRedisAssociation. +func (mg *SpringCloudAppRedisAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudAppRedisAssociation. @@ -587,9 +587,9 @@ func (mg *SpringCloudAppRedisAssociation) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudAppRedisAssociation. -func (mg *SpringCloudAppRedisAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudAppRedisAssociation. +func (mg *SpringCloudAppRedisAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudAppRedisAssociation. @@ -625,9 +625,9 @@ func (mg *SpringCloudBuildDeployment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudBuildDeployment. -func (mg *SpringCloudBuildDeployment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudBuildDeployment. +func (mg *SpringCloudBuildDeployment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudBuildDeployment. @@ -663,9 +663,9 @@ func (mg *SpringCloudBuildDeployment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudBuildDeployment. -func (mg *SpringCloudBuildDeployment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudBuildDeployment. +func (mg *SpringCloudBuildDeployment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudBuildDeployment. @@ -701,9 +701,9 @@ func (mg *SpringCloudBuildPackBinding) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudBuildPackBinding. -func (mg *SpringCloudBuildPackBinding) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudBuildPackBinding. +func (mg *SpringCloudBuildPackBinding) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudBuildPackBinding. @@ -739,9 +739,9 @@ func (mg *SpringCloudBuildPackBinding) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudBuildPackBinding. -func (mg *SpringCloudBuildPackBinding) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudBuildPackBinding. +func (mg *SpringCloudBuildPackBinding) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudBuildPackBinding. @@ -777,9 +777,9 @@ func (mg *SpringCloudBuilder) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudBuilder. -func (mg *SpringCloudBuilder) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudBuilder. +func (mg *SpringCloudBuilder) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudBuilder. @@ -815,9 +815,9 @@ func (mg *SpringCloudBuilder) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudBuilder. -func (mg *SpringCloudBuilder) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudBuilder. +func (mg *SpringCloudBuilder) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudBuilder. @@ -853,9 +853,9 @@ func (mg *SpringCloudCertificate) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudCertificate. -func (mg *SpringCloudCertificate) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudCertificate. +func (mg *SpringCloudCertificate) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudCertificate. @@ -891,9 +891,9 @@ func (mg *SpringCloudCertificate) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudCertificate. -func (mg *SpringCloudCertificate) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudCertificate. +func (mg *SpringCloudCertificate) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudCertificate. @@ -929,9 +929,9 @@ func (mg *SpringCloudConfigurationService) GetDeletionPolicy() xpv1.DeletionPoli return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudConfigurationService. -func (mg *SpringCloudConfigurationService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudConfigurationService. +func (mg *SpringCloudConfigurationService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudConfigurationService. @@ -967,9 +967,9 @@ func (mg *SpringCloudConfigurationService) SetDeletionPolicy(r xpv1.DeletionPoli mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudConfigurationService. -func (mg *SpringCloudConfigurationService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudConfigurationService. +func (mg *SpringCloudConfigurationService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudConfigurationService. @@ -1005,9 +1005,9 @@ func (mg *SpringCloudContainerDeployment) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudContainerDeployment. -func (mg *SpringCloudContainerDeployment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudContainerDeployment. +func (mg *SpringCloudContainerDeployment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudContainerDeployment. @@ -1043,9 +1043,9 @@ func (mg *SpringCloudContainerDeployment) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudContainerDeployment. -func (mg *SpringCloudContainerDeployment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudContainerDeployment. +func (mg *SpringCloudContainerDeployment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudContainerDeployment. @@ -1081,9 +1081,9 @@ func (mg *SpringCloudCustomDomain) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudCustomDomain. -func (mg *SpringCloudCustomDomain) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudCustomDomain. +func (mg *SpringCloudCustomDomain) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudCustomDomain. @@ -1119,9 +1119,9 @@ func (mg *SpringCloudCustomDomain) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudCustomDomain. -func (mg *SpringCloudCustomDomain) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudCustomDomain. +func (mg *SpringCloudCustomDomain) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudCustomDomain. @@ -1157,9 +1157,9 @@ func (mg *SpringCloudCustomizedAccelerator) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudCustomizedAccelerator. -func (mg *SpringCloudCustomizedAccelerator) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudCustomizedAccelerator. +func (mg *SpringCloudCustomizedAccelerator) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudCustomizedAccelerator. @@ -1195,9 +1195,9 @@ func (mg *SpringCloudCustomizedAccelerator) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudCustomizedAccelerator. -func (mg *SpringCloudCustomizedAccelerator) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudCustomizedAccelerator. +func (mg *SpringCloudCustomizedAccelerator) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudCustomizedAccelerator. @@ -1233,9 +1233,9 @@ func (mg *SpringCloudDevToolPortal) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudDevToolPortal. -func (mg *SpringCloudDevToolPortal) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudDevToolPortal. +func (mg *SpringCloudDevToolPortal) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudDevToolPortal. @@ -1271,9 +1271,9 @@ func (mg *SpringCloudDevToolPortal) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudDevToolPortal. -func (mg *SpringCloudDevToolPortal) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudDevToolPortal. +func (mg *SpringCloudDevToolPortal) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudDevToolPortal. @@ -1309,9 +1309,9 @@ func (mg *SpringCloudGateway) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudGateway. -func (mg *SpringCloudGateway) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudGateway. +func (mg *SpringCloudGateway) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudGateway. @@ -1347,9 +1347,9 @@ func (mg *SpringCloudGateway) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudGateway. -func (mg *SpringCloudGateway) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudGateway. +func (mg *SpringCloudGateway) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudGateway. @@ -1385,9 +1385,9 @@ func (mg *SpringCloudGatewayCustomDomain) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudGatewayCustomDomain. -func (mg *SpringCloudGatewayCustomDomain) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudGatewayCustomDomain. +func (mg *SpringCloudGatewayCustomDomain) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudGatewayCustomDomain. @@ -1423,9 +1423,9 @@ func (mg *SpringCloudGatewayCustomDomain) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudGatewayCustomDomain. -func (mg *SpringCloudGatewayCustomDomain) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudGatewayCustomDomain. +func (mg *SpringCloudGatewayCustomDomain) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudGatewayCustomDomain. @@ -1461,9 +1461,9 @@ func (mg *SpringCloudJavaDeployment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudJavaDeployment. -func (mg *SpringCloudJavaDeployment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudJavaDeployment. +func (mg *SpringCloudJavaDeployment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudJavaDeployment. @@ -1499,9 +1499,9 @@ func (mg *SpringCloudJavaDeployment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudJavaDeployment. -func (mg *SpringCloudJavaDeployment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudJavaDeployment. +func (mg *SpringCloudJavaDeployment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudJavaDeployment. @@ -1537,9 +1537,9 @@ func (mg *SpringCloudService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudService. -func (mg *SpringCloudService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudService. +func (mg *SpringCloudService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudService. @@ -1575,9 +1575,9 @@ func (mg *SpringCloudService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudService. -func (mg *SpringCloudService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudService. +func (mg *SpringCloudService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudService. @@ -1613,9 +1613,9 @@ func (mg *SpringCloudStorage) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudStorage. -func (mg *SpringCloudStorage) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudStorage. +func (mg *SpringCloudStorage) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudStorage. @@ -1651,9 +1651,9 @@ func (mg *SpringCloudStorage) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudStorage. -func (mg *SpringCloudStorage) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudStorage. +func (mg *SpringCloudStorage) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudStorage. diff --git a/apis/appplatform/v1beta1/zz_generated_terraformed.go b/apis/appplatform/v1beta1/zz_generated_terraformed.go index 8e33afb3b..7a4557441 100755 --- a/apis/appplatform/v1beta1/zz_generated_terraformed.go +++ b/apis/appplatform/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *SpringCloudAccelerator) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudAccelerator +func (tr *SpringCloudAccelerator) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudAccelerator using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudAccelerator) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *SpringCloudActiveDeployment) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudActiveDeployment +func (tr *SpringCloudActiveDeployment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudActiveDeployment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudActiveDeployment) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *SpringCloudAPIPortal) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudAPIPortal +func (tr *SpringCloudAPIPortal) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudAPIPortal using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudAPIPortal) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *SpringCloudAPIPortalCustomDomain) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudAPIPortalCustomDomain +func (tr *SpringCloudAPIPortalCustomDomain) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudAPIPortalCustomDomain using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudAPIPortalCustomDomain) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *SpringCloudApp) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudApp +func (tr *SpringCloudApp) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudApp using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudApp) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *SpringCloudAppCosmosDBAssociation) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudAppCosmosDBAssociation +func (tr *SpringCloudAppCosmosDBAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudAppCosmosDBAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudAppCosmosDBAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *SpringCloudAppMySQLAssociation) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudAppMySQLAssociation +func (tr *SpringCloudAppMySQLAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudAppMySQLAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudAppMySQLAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *SpringCloudAppRedisAssociation) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudAppRedisAssociation +func (tr *SpringCloudAppRedisAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudAppRedisAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudAppRedisAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *SpringCloudBuildDeployment) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudBuildDeployment +func (tr *SpringCloudBuildDeployment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudBuildDeployment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudBuildDeployment) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *SpringCloudBuildPackBinding) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudBuildPackBinding +func (tr *SpringCloudBuildPackBinding) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudBuildPackBinding using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudBuildPackBinding) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *SpringCloudBuilder) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudBuilder +func (tr *SpringCloudBuilder) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudBuilder using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudBuilder) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *SpringCloudCertificate) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudCertificate +func (tr *SpringCloudCertificate) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudCertificate using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudCertificate) LateInitialize(attrs []byte) (bool, error) { @@ -957,6 +1077,16 @@ func (tr *SpringCloudConfigurationService) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudConfigurationService +func (tr *SpringCloudConfigurationService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudConfigurationService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudConfigurationService) LateInitialize(attrs []byte) (bool, error) { @@ -1031,6 +1161,16 @@ func (tr *SpringCloudContainerDeployment) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudContainerDeployment +func (tr *SpringCloudContainerDeployment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudContainerDeployment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudContainerDeployment) LateInitialize(attrs []byte) (bool, error) { @@ -1105,6 +1245,16 @@ func (tr *SpringCloudCustomDomain) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudCustomDomain +func (tr *SpringCloudCustomDomain) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudCustomDomain using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudCustomDomain) LateInitialize(attrs []byte) (bool, error) { @@ -1179,6 +1329,16 @@ func (tr *SpringCloudCustomizedAccelerator) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudCustomizedAccelerator +func (tr *SpringCloudCustomizedAccelerator) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudCustomizedAccelerator using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudCustomizedAccelerator) LateInitialize(attrs []byte) (bool, error) { @@ -1253,6 +1413,16 @@ func (tr *SpringCloudDevToolPortal) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudDevToolPortal +func (tr *SpringCloudDevToolPortal) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudDevToolPortal using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudDevToolPortal) LateInitialize(attrs []byte) (bool, error) { @@ -1327,6 +1497,16 @@ func (tr *SpringCloudGateway) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudGateway +func (tr *SpringCloudGateway) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudGateway using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudGateway) LateInitialize(attrs []byte) (bool, error) { @@ -1401,6 +1581,16 @@ func (tr *SpringCloudGatewayCustomDomain) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudGatewayCustomDomain +func (tr *SpringCloudGatewayCustomDomain) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudGatewayCustomDomain using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudGatewayCustomDomain) LateInitialize(attrs []byte) (bool, error) { @@ -1475,6 +1665,16 @@ func (tr *SpringCloudJavaDeployment) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudJavaDeployment +func (tr *SpringCloudJavaDeployment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudJavaDeployment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudJavaDeployment) LateInitialize(attrs []byte) (bool, error) { @@ -1549,6 +1749,16 @@ func (tr *SpringCloudService) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudService +func (tr *SpringCloudService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudService) LateInitialize(attrs []byte) (bool, error) { @@ -1623,6 +1833,16 @@ func (tr *SpringCloudStorage) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudStorage +func (tr *SpringCloudStorage) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudStorage using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudStorage) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/appplatform/v1beta1/zz_springcloudaccelerator_types.go b/apis/appplatform/v1beta1/zz_springcloudaccelerator_types.go index babeb45de..c0062a813 100755 --- a/apis/appplatform/v1beta1/zz_springcloudaccelerator_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudaccelerator_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudAcceleratorInitParameters struct { + + // The name which should be used for this Spring Cloud Accelerator. Changing this forces a new Spring Cloud Accelerator to be created. The only possible value is default. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type SpringCloudAcceleratorObservation struct { // The ID of the Spring Cloud Accelerator. @@ -50,6 +56,18 @@ type SpringCloudAcceleratorParameters struct { type SpringCloudAcceleratorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudAcceleratorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudAcceleratorInitParameters `json:"initProvider,omitempty"` } // SpringCloudAcceleratorStatus defines the observed state of SpringCloudAccelerator. @@ -70,7 +88,7 @@ type SpringCloudAcceleratorStatus struct { type SpringCloudAccelerator struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec SpringCloudAcceleratorSpec `json:"spec"` Status SpringCloudAcceleratorStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudactivedeployment_types.go b/apis/appplatform/v1beta1/zz_springcloudactivedeployment_types.go index 7974816c4..18c4c881d 100755 --- a/apis/appplatform/v1beta1/zz_springcloudactivedeployment_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudactivedeployment_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudActiveDeploymentInitParameters struct { +} + type SpringCloudActiveDeploymentObservation struct { // Specifies the name of Spring Cloud Deployment which is going to be active. @@ -59,6 +62,18 @@ type SpringCloudActiveDeploymentParameters struct { type SpringCloudActiveDeploymentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudActiveDeploymentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudActiveDeploymentInitParameters `json:"initProvider,omitempty"` } // SpringCloudActiveDeploymentStatus defines the observed state of SpringCloudActiveDeployment. diff --git a/apis/appplatform/v1beta1/zz_springcloudapiportal_types.go b/apis/appplatform/v1beta1/zz_springcloudapiportal_types.go index eceac90f4..e611294c6 100755 --- a/apis/appplatform/v1beta1/zz_springcloudapiportal_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudapiportal_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudAPIPortalInitParameters struct { + + // is only https is allowed? + HTTPSOnlyEnabled *bool `json:"httpsOnlyEnabled,omitempty" tf:"https_only_enabled,omitempty"` + + // Specifies the required instance count of the Spring Cloud API Portal. Possible Values are between 1 and 500. Defaults to 1 if not specified. + InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` + + // Is the public network access enabled? + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A sso block as defined below. + Sso []SsoInitParameters `json:"sso,omitempty" tf:"sso,omitempty"` +} + type SpringCloudAPIPortalObservation struct { // Specifies a list of Spring Cloud Gateway. @@ -87,6 +102,21 @@ type SpringCloudAPIPortalParameters struct { Sso []SsoParameters `json:"sso,omitempty" tf:"sso,omitempty"` } +type SsoInitParameters struct { + + // The public identifier for the application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The secret known only to the application and the authorization server. + ClientSecret *string `json:"clientSecret,omitempty" tf:"client_secret,omitempty"` + + // The URI of Issuer Identifier. + IssuerURI *string `json:"issuerUri,omitempty" tf:"issuer_uri,omitempty"` + + // It defines the specific actions applications can be allowed to do on a user's behalf. + Scope []*string `json:"scope,omitempty" tf:"scope,omitempty"` +} + type SsoObservation struct { // The public identifier for the application. @@ -125,6 +155,18 @@ type SsoParameters struct { type SpringCloudAPIPortalSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudAPIPortalParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudAPIPortalInitParameters `json:"initProvider,omitempty"` } // SpringCloudAPIPortalStatus defines the observed state of SpringCloudAPIPortal. diff --git a/apis/appplatform/v1beta1/zz_springcloudapiportalcustomdomain_types.go b/apis/appplatform/v1beta1/zz_springcloudapiportalcustomdomain_types.go index 32b0c59b0..624226416 100755 --- a/apis/appplatform/v1beta1/zz_springcloudapiportalcustomdomain_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudapiportalcustomdomain_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudAPIPortalCustomDomainInitParameters struct { + + // The name which should be used for this Spring Cloud API Portal Domain. Changing this forces a new Spring Cloud API Portal Domain to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the thumbprint of the Spring Cloud Certificate that binds to the Spring Cloud API Portal Domain. + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` +} + type SpringCloudAPIPortalCustomDomainObservation struct { // The ID of the Spring Cloud API Portal Domain. @@ -57,6 +66,18 @@ type SpringCloudAPIPortalCustomDomainParameters struct { type SpringCloudAPIPortalCustomDomainSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudAPIPortalCustomDomainParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudAPIPortalCustomDomainInitParameters `json:"initProvider,omitempty"` } // SpringCloudAPIPortalCustomDomainStatus defines the observed state of SpringCloudAPIPortalCustomDomain. @@ -77,7 +98,7 @@ type SpringCloudAPIPortalCustomDomainStatus struct { type SpringCloudAPIPortalCustomDomain struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec SpringCloudAPIPortalCustomDomainSpec `json:"spec"` Status SpringCloudAPIPortalCustomDomainStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudapp_types.go b/apis/appplatform/v1beta1/zz_springcloudapp_types.go index d56c9fb28..3625e606f 100755 --- a/apis/appplatform/v1beta1/zz_springcloudapp_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudapp_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomPersistentDiskInitParameters struct { + + // These are the mount options for a persistent disk. + MountOptions []*string `json:"mountOptions,omitempty" tf:"mount_options,omitempty"` + + // The mount path of the persistent disk. + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` + + // Indicates whether the persistent disk is a readOnly one. + ReadOnlyEnabled *bool `json:"readOnlyEnabled,omitempty" tf:"read_only_enabled,omitempty"` + + // The share name of the Azure File share. + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` + + // The name of the Spring Cloud Storage. + StorageName *string `json:"storageName,omitempty" tf:"storage_name,omitempty"` +} + type CustomPersistentDiskObservation struct { // These are the mount options for a persistent disk. @@ -38,20 +56,29 @@ type CustomPersistentDiskParameters struct { MountOptions []*string `json:"mountOptions,omitempty" tf:"mount_options,omitempty"` // The mount path of the persistent disk. - // +kubebuilder:validation:Required - MountPath *string `json:"mountPath" tf:"mount_path,omitempty"` + // +kubebuilder:validation:Optional + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // Indicates whether the persistent disk is a readOnly one. // +kubebuilder:validation:Optional ReadOnlyEnabled *bool `json:"readOnlyEnabled,omitempty" tf:"read_only_enabled,omitempty"` // The share name of the Azure File share. - // +kubebuilder:validation:Required - ShareName *string `json:"shareName" tf:"share_name,omitempty"` + // +kubebuilder:validation:Optional + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The name of the Spring Cloud Storage. - // +kubebuilder:validation:Required - StorageName *string `json:"storageName" tf:"storage_name,omitempty"` + // +kubebuilder:validation:Optional + StorageName *string `json:"storageName,omitempty" tf:"storage_name,omitempty"` +} + +type IdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Spring Cloud Application. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Spring Cloud Application. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type IdentityObservation struct { @@ -76,8 +103,26 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Spring Cloud Application. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type IngressSettingsInitParameters struct { + + // Specifies how ingress should communicate with this app backend service. Allowed values are GRPC and Default. Defaults to Default. + BackendProtocol *string `json:"backendProtocol,omitempty" tf:"backend_protocol,omitempty"` + + // Specifies the ingress read time out in seconds. Defaults to 300. + ReadTimeoutInSeconds *float64 `json:"readTimeoutInSeconds,omitempty" tf:"read_timeout_in_seconds,omitempty"` + + // Specifies the ingress send time out in seconds. Defaults to 60. + SendTimeoutInSeconds *float64 `json:"sendTimeoutInSeconds,omitempty" tf:"send_timeout_in_seconds,omitempty"` + + // Specifies the type of the affinity, set this to Cookie to enable session affinity. Allowed values are Cookie and None. Defaults to None. + SessionAffinity *string `json:"sessionAffinity,omitempty" tf:"session_affinity,omitempty"` + + // Specifies the time in seconds until the cookie expires. + SessionCookieMaxAge *float64 `json:"sessionCookieMaxAge,omitempty" tf:"session_cookie_max_age,omitempty"` } type IngressSettingsObservation struct { @@ -121,6 +166,15 @@ type IngressSettingsParameters struct { SessionCookieMaxAge *float64 `json:"sessionCookieMaxAge,omitempty" tf:"session_cookie_max_age,omitempty"` } +type PersistentDiskInitParameters struct { + + // Specifies the mount path of the persistent disk. Defaults to /persistent. + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` + + // Specifies the size of the persistent disk in GB. Possible values are between 0 and 50. + SizeInGb *float64 `json:"sizeInGb,omitempty" tf:"size_in_gb,omitempty"` +} + type PersistentDiskObservation struct { // Specifies the mount path of the persistent disk. Defaults to /persistent. @@ -137,8 +191,38 @@ type PersistentDiskParameters struct { MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // Specifies the size of the persistent disk in GB. Possible values are between 0 and 50. - // +kubebuilder:validation:Required - SizeInGb *float64 `json:"sizeInGb" tf:"size_in_gb,omitempty"` + // +kubebuilder:validation:Optional + SizeInGb *float64 `json:"sizeInGb,omitempty" tf:"size_in_gb,omitempty"` +} + +type SpringCloudAppInitParameters struct { + + // A JSON object that contains the addon configurations of the Spring Cloud Service. + AddonJSON *string `json:"addonJson,omitempty" tf:"addon_json,omitempty"` + + // A custom_persistent_disk block as defined below. + CustomPersistentDisk []CustomPersistentDiskInitParameters `json:"customPersistentDisk,omitempty" tf:"custom_persistent_disk,omitempty"` + + // Is only HTTPS allowed? Defaults to false. + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // An ingress_settings block as defined below. + IngressSettings []IngressSettingsInitParameters `json:"ingressSettings,omitempty" tf:"ingress_settings,omitempty"` + + // Does the Spring Cloud Application have public endpoint? Defaults to false. + IsPublic *bool `json:"isPublic,omitempty" tf:"is_public,omitempty"` + + // An persistent_disk block as defined below. + PersistentDisk []PersistentDiskInitParameters `json:"persistentDisk,omitempty" tf:"persistent_disk,omitempty"` + + // Should the App in vnet injection instance exposes endpoint which could be accessed from Internet? + PublicEndpointEnabled *bool `json:"publicEndpointEnabled,omitempty" tf:"public_endpoint_enabled,omitempty"` + + // Is End to End TLS Enabled? Defaults to false. + TLSEnabled *bool `json:"tlsEnabled,omitempty" tf:"tls_enabled,omitempty"` } type SpringCloudAppObservation struct { @@ -255,6 +339,18 @@ type SpringCloudAppParameters struct { type SpringCloudAppSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudAppParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudAppInitParameters `json:"initProvider,omitempty"` } // SpringCloudAppStatus defines the observed state of SpringCloudApp. diff --git a/apis/appplatform/v1beta1/zz_springcloudappcosmosdbassociation_types.go b/apis/appplatform/v1beta1/zz_springcloudappcosmosdbassociation_types.go index 021a2aafe..1bdfc9ddd 100755 --- a/apis/appplatform/v1beta1/zz_springcloudappcosmosdbassociation_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudappcosmosdbassociation_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudAppCosmosDBAssociationInitParameters struct { + + // Specifies the API type which should be used when connecting to the CosmosDB Account. Possible values are cassandra, gremlin, mongo, sql or table. Changing this forces a new resource to be created. + APIType *string `json:"apiType,omitempty" tf:"api_type,omitempty"` + + // Specifies the name of the Cassandra Keyspace which the Spring Cloud App should be associated with. Should only be set when api_type is cassandra. + CosmosDBCassandraKeySpaceName *string `json:"cosmosdbCassandraKeyspaceName,omitempty" tf:"cosmosdb_cassandra_keyspace_name,omitempty"` + + // Specifies the name of the Gremlin Database which the Spring Cloud App should be associated with. Should only be set when api_type is gremlin. + CosmosDBGremlinDatabaseName *string `json:"cosmosdbGremlinDatabaseName,omitempty" tf:"cosmosdb_gremlin_database_name,omitempty"` + + // Specifies the name of the Gremlin Graph which the Spring Cloud App should be associated with. Should only be set when api_type is gremlin. + CosmosDBGremlinGraphName *string `json:"cosmosdbGremlinGraphName,omitempty" tf:"cosmosdb_gremlin_graph_name,omitempty"` + + // Specifies the name of the Mongo Database which the Spring Cloud App should be associated with. Should only be set when api_type is mongo. + CosmosDBMongoDatabaseName *string `json:"cosmosdbMongoDatabaseName,omitempty" tf:"cosmosdb_mongo_database_name,omitempty"` + + // Specifies the name of the SQL Database which the Spring Cloud App should be associated with. Should only be set when api_type is sql. + CosmosDBSQLDatabaseName *string `json:"cosmosdbSqlDatabaseName,omitempty" tf:"cosmosdb_sql_database_name,omitempty"` +} + type SpringCloudAppCosmosDBAssociationObservation struct { // Specifies the API type which should be used when connecting to the CosmosDB Account. Possible values are cassandra, gremlin, mongo, sql or table. Changing this forces a new resource to be created. @@ -119,6 +140,18 @@ type SpringCloudAppCosmosDBAssociationParameters struct { type SpringCloudAppCosmosDBAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudAppCosmosDBAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudAppCosmosDBAssociationInitParameters `json:"initProvider,omitempty"` } // SpringCloudAppCosmosDBAssociationStatus defines the observed state of SpringCloudAppCosmosDBAssociation. @@ -139,7 +172,7 @@ type SpringCloudAppCosmosDBAssociationStatus struct { type SpringCloudAppCosmosDBAssociation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.apiType)",message="apiType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.apiType) || has(self.initProvider.apiType)",message="apiType is a required parameter" Spec SpringCloudAppCosmosDBAssociationSpec `json:"spec"` Status SpringCloudAppCosmosDBAssociationStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudappmysqlassociation_types.go b/apis/appplatform/v1beta1/zz_springcloudappmysqlassociation_types.go index 029574282..4684376fa 100755 --- a/apis/appplatform/v1beta1/zz_springcloudappmysqlassociation_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudappmysqlassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudAppMySQLAssociationInitParameters struct { +} + type SpringCloudAppMySQLAssociationObservation struct { // Specifies the name of the MySQL Database which the Spring Cloud App should be associated with. @@ -97,6 +100,18 @@ type SpringCloudAppMySQLAssociationParameters struct { type SpringCloudAppMySQLAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudAppMySQLAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudAppMySQLAssociationInitParameters `json:"initProvider,omitempty"` } // SpringCloudAppMySQLAssociationStatus defines the observed state of SpringCloudAppMySQLAssociation. @@ -117,7 +132,7 @@ type SpringCloudAppMySQLAssociationStatus struct { type SpringCloudAppMySQLAssociation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" Spec SpringCloudAppMySQLAssociationSpec `json:"spec"` Status SpringCloudAppMySQLAssociationStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudappredisassociation_types.go b/apis/appplatform/v1beta1/zz_springcloudappredisassociation_types.go index 9de7d6e56..c5520b9d0 100755 --- a/apis/appplatform/v1beta1/zz_springcloudappredisassociation_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudappredisassociation_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudAppRedisAssociationInitParameters struct { + + // Should SSL be used when connecting to Redis? Defaults to true. + SSLEnabled *bool `json:"sslEnabled,omitempty" tf:"ssl_enabled,omitempty"` +} + type SpringCloudAppRedisAssociationObservation struct { // The ID of the Spring Cloud Application Redis Association. @@ -84,6 +90,18 @@ type SpringCloudAppRedisAssociationParameters struct { type SpringCloudAppRedisAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudAppRedisAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudAppRedisAssociationInitParameters `json:"initProvider,omitempty"` } // SpringCloudAppRedisAssociationStatus defines the observed state of SpringCloudAppRedisAssociation. diff --git a/apis/appplatform/v1beta1/zz_springcloudbuilddeployment_types.go b/apis/appplatform/v1beta1/zz_springcloudbuilddeployment_types.go index a18c4eb20..c0b4f3ab2 100755 --- a/apis/appplatform/v1beta1/zz_springcloudbuilddeployment_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudbuilddeployment_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type QuotaInitParameters struct { + + // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. + CPU *string `json:"cpu,omitempty" tf:"cpu,omitempty"` + + // Specifies the required memory size of the Spring Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not specified. + Memory *string `json:"memory,omitempty" tf:"memory,omitempty"` +} + type QuotaObservation struct { // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. @@ -33,6 +42,24 @@ type QuotaParameters struct { Memory *string `json:"memory,omitempty" tf:"memory,omitempty"` } +type SpringCloudBuildDeploymentInitParameters struct { + + // A JSON object that contains the addon configurations of the Spring Cloud Build Deployment. + AddonJSON *string `json:"addonJson,omitempty" tf:"addon_json,omitempty"` + + // The ID of the Spring Cloud Build Result. + BuildResultID *string `json:"buildResultId,omitempty" tf:"build_result_id,omitempty"` + + // Specifies the environment variables of the Spring Cloud Deployment as a map of key-value pairs. + EnvironmentVariables map[string]*string `json:"environmentVariables,omitempty" tf:"environment_variables,omitempty"` + + // Specifies the required instance count of the Spring Cloud Deployment. Possible Values are between 1 and 500. Defaults to 1 if not specified. + InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` + + // A quota block as defined below. + Quota []QuotaInitParameters `json:"quota,omitempty" tf:"quota,omitempty"` +} + type SpringCloudBuildDeploymentObservation struct { // A JSON object that contains the addon configurations of the Spring Cloud Build Deployment. @@ -98,6 +125,18 @@ type SpringCloudBuildDeploymentParameters struct { type SpringCloudBuildDeploymentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudBuildDeploymentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudBuildDeploymentInitParameters `json:"initProvider,omitempty"` } // SpringCloudBuildDeploymentStatus defines the observed state of SpringCloudBuildDeployment. @@ -118,7 +157,7 @@ type SpringCloudBuildDeploymentStatus struct { type SpringCloudBuildDeployment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.buildResultId)",message="buildResultId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.buildResultId) || has(self.initProvider.buildResultId)",message="buildResultId is a required parameter" Spec SpringCloudBuildDeploymentSpec `json:"spec"` Status SpringCloudBuildDeploymentStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudbuilder_types.go b/apis/appplatform/v1beta1/zz_springcloudbuilder_types.go index 7fdecf8bb..289e00705 100755 --- a/apis/appplatform/v1beta1/zz_springcloudbuilder_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudbuilder_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BuildPackGroupInitParameters struct { + + // Specifies a list of the build pack's ID. + BuildPackIds []*string `json:"buildPackIds,omitempty" tf:"build_pack_ids,omitempty"` + + // The name which should be used for this build pack group. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type BuildPackGroupObservation struct { // Specifies a list of the build pack's ID. @@ -29,8 +38,20 @@ type BuildPackGroupParameters struct { BuildPackIds []*string `json:"buildPackIds,omitempty" tf:"build_pack_ids,omitempty"` // The name which should be used for this build pack group. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type SpringCloudBuilderInitParameters struct { + + // One or more build_pack_group blocks as defined below. + BuildPackGroup []BuildPackGroupInitParameters `json:"buildPackGroup,omitempty" tf:"build_pack_group,omitempty"` + + // The name which should be used for this Spring Cloud Builder. Changing this forces a new Spring Cloud Builder to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A stack block as defined below. + Stack []StackInitParameters `json:"stack,omitempty" tf:"stack,omitempty"` } type SpringCloudBuilderObservation struct { @@ -80,6 +101,15 @@ type SpringCloudBuilderParameters struct { Stack []StackParameters `json:"stack,omitempty" tf:"stack,omitempty"` } +type StackInitParameters struct { + + // Specifies the ID of the ClusterStack. + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // Specifies the version of the ClusterStack + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type StackObservation struct { // Specifies the ID of the ClusterStack. @@ -92,18 +122,30 @@ type StackObservation struct { type StackParameters struct { // Specifies the ID of the ClusterStack. - // +kubebuilder:validation:Required - ID *string `json:"id" tf:"id,omitempty"` + // +kubebuilder:validation:Optional + ID *string `json:"id,omitempty" tf:"id,omitempty"` // Specifies the version of the ClusterStack - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` } // SpringCloudBuilderSpec defines the desired state of SpringCloudBuilder type SpringCloudBuilderSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudBuilderParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudBuilderInitParameters `json:"initProvider,omitempty"` } // SpringCloudBuilderStatus defines the observed state of SpringCloudBuilder. @@ -124,9 +166,9 @@ type SpringCloudBuilderStatus struct { type SpringCloudBuilder struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.buildPackGroup)",message="buildPackGroup is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.stack)",message="stack is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.buildPackGroup) || has(self.initProvider.buildPackGroup)",message="buildPackGroup is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.stack) || has(self.initProvider.stack)",message="stack is a required parameter" Spec SpringCloudBuilderSpec `json:"spec"` Status SpringCloudBuilderStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudbuildpackbinding_types.go b/apis/appplatform/v1beta1/zz_springcloudbuildpackbinding_types.go index 9a65570b8..6c470e856 100755 --- a/apis/appplatform/v1beta1/zz_springcloudbuildpackbinding_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudbuildpackbinding_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LaunchInitParameters struct { + + // Specifies a map of non-sensitive properties for launchProperties. + Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` + + // Specifies a map of sensitive properties for launchProperties. + Secrets map[string]*string `json:"secrets,omitempty" tf:"secrets,omitempty"` +} + type LaunchObservation struct { // Specifies a map of non-sensitive properties for launchProperties. @@ -33,6 +42,15 @@ type LaunchParameters struct { Secrets map[string]*string `json:"secrets,omitempty" tf:"secrets,omitempty"` } +type SpringCloudBuildPackBindingInitParameters struct { + + // Specifies the Build Pack Binding Type. Allowed values are ApacheSkyWalking, AppDynamics, ApplicationInsights, Dynatrace, ElasticAPM and NewRelic. + BindingType *string `json:"bindingType,omitempty" tf:"binding_type,omitempty"` + + // A launch block as defined below. + Launch []LaunchInitParameters `json:"launch,omitempty" tf:"launch,omitempty"` +} + type SpringCloudBuildPackBindingObservation struct { // Specifies the Build Pack Binding Type. Allowed values are ApacheSkyWalking, AppDynamics, ApplicationInsights, Dynatrace, ElasticAPM and NewRelic. @@ -77,6 +95,18 @@ type SpringCloudBuildPackBindingParameters struct { type SpringCloudBuildPackBindingSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudBuildPackBindingParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudBuildPackBindingInitParameters `json:"initProvider,omitempty"` } // SpringCloudBuildPackBindingStatus defines the observed state of SpringCloudBuildPackBinding. diff --git a/apis/appplatform/v1beta1/zz_springcloudcertificate_types.go b/apis/appplatform/v1beta1/zz_springcloudcertificate_types.go index eff6207b2..77358b253 100755 --- a/apis/appplatform/v1beta1/zz_springcloudcertificate_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudcertificate_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudCertificateInitParameters struct { + + // The content of uploaded certificate. Changing this forces a new resource to be created. + CertificateContent *string `json:"certificateContent,omitempty" tf:"certificate_content,omitempty"` +} + type SpringCloudCertificateObservation struct { // The content of uploaded certificate. Changing this forces a new resource to be created. @@ -85,6 +91,18 @@ type SpringCloudCertificateParameters struct { type SpringCloudCertificateSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudCertificateParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudCertificateInitParameters `json:"initProvider,omitempty"` } // SpringCloudCertificateStatus defines the observed state of SpringCloudCertificate. diff --git a/apis/appplatform/v1beta1/zz_springcloudconfigurationservice_types.go b/apis/appplatform/v1beta1/zz_springcloudconfigurationservice_types.go index 614f81820..fcb4c9983 100755 --- a/apis/appplatform/v1beta1/zz_springcloudconfigurationservice_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudconfigurationservice_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RepositoryInitParameters struct { + + // Specifies the SSH public key of git repository. + HostKey *string `json:"hostKey,omitempty" tf:"host_key,omitempty"` + + // Specifies the SSH key algorithm of git repository. + HostKeyAlgorithm *string `json:"hostKeyAlgorithm,omitempty" tf:"host_key_algorithm,omitempty"` + + // Specifies the label of the repository. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // Specifies the name which should be used for this repository. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the collection of patterns of the repository. + Patterns []*string `json:"patterns,omitempty" tf:"patterns,omitempty"` + + // Specifies a list of searching path of the repository + SearchPaths []*string `json:"searchPaths,omitempty" tf:"search_paths,omitempty"` + + // Specifies whether enable the strict host key checking. + StrictHostKeyChecking *bool `json:"strictHostKeyChecking,omitempty" tf:"strict_host_key_checking,omitempty"` + + // Specifies the URI of the repository. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` + + // Specifies the username of git repository basic auth. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type RepositoryObservation struct { // Specifies the SSH public key of git repository. @@ -54,20 +84,20 @@ type RepositoryParameters struct { HostKeyAlgorithm *string `json:"hostKeyAlgorithm,omitempty" tf:"host_key_algorithm,omitempty"` // Specifies the label of the repository. - // +kubebuilder:validation:Required - Label *string `json:"label" tf:"label,omitempty"` + // +kubebuilder:validation:Optional + Label *string `json:"label,omitempty" tf:"label,omitempty"` // Specifies the name which should be used for this repository. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the password of git repository basic auth. // +kubebuilder:validation:Optional PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // Specifies the collection of patterns of the repository. - // +kubebuilder:validation:Required - Patterns []*string `json:"patterns" tf:"patterns,omitempty"` + // +kubebuilder:validation:Optional + Patterns []*string `json:"patterns,omitempty" tf:"patterns,omitempty"` // Specifies the SSH private key of git repository. // +kubebuilder:validation:Optional @@ -82,14 +112,20 @@ type RepositoryParameters struct { StrictHostKeyChecking *bool `json:"strictHostKeyChecking,omitempty" tf:"strict_host_key_checking,omitempty"` // Specifies the URI of the repository. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` // Specifies the username of git repository basic auth. // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } +type SpringCloudConfigurationServiceInitParameters struct { + + // One or more repository blocks as defined below. + Repository []RepositoryInitParameters `json:"repository,omitempty" tf:"repository,omitempty"` +} + type SpringCloudConfigurationServiceObservation struct { // The ID of the Spring Cloud Configuration Service. @@ -127,6 +163,18 @@ type SpringCloudConfigurationServiceParameters struct { type SpringCloudConfigurationServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudConfigurationServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudConfigurationServiceInitParameters `json:"initProvider,omitempty"` } // SpringCloudConfigurationServiceStatus defines the observed state of SpringCloudConfigurationService. diff --git a/apis/appplatform/v1beta1/zz_springcloudcontainerdeployment_types.go b/apis/appplatform/v1beta1/zz_springcloudcontainerdeployment_types.go index 3724deb61..3303eac6a 100755 --- a/apis/appplatform/v1beta1/zz_springcloudcontainerdeployment_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudcontainerdeployment_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudContainerDeploymentInitParameters struct { + + // A JSON object that contains the addon configurations of the Spring Cloud Container Deployment. + AddonJSON *string `json:"addonJson,omitempty" tf:"addon_json,omitempty"` + + // Specifies the arguments to the entrypoint. The docker image's CMD is used if not specified. + Arguments []*string `json:"arguments,omitempty" tf:"arguments,omitempty"` + + // Specifies the entrypoint array. It will not be executed within a shell. The docker image's ENTRYPOINT is used if not specified. + Commands []*string `json:"commands,omitempty" tf:"commands,omitempty"` + + // Specifies the environment variables of the Spring Cloud Deployment as a map of key-value pairs. + EnvironmentVariables map[string]*string `json:"environmentVariables,omitempty" tf:"environment_variables,omitempty"` + + // Container image of the custom container. This should be in the form of : without the server name of the registry. + Image *string `json:"image,omitempty" tf:"image,omitempty"` + + // Specifies the required instance count of the Spring Cloud Deployment. Possible Values are between 1 and 500. Defaults to 1 if not specified. + InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` + + // Specifies the language framework of the container image. The only possible value is springboot. + LanguageFramework *string `json:"languageFramework,omitempty" tf:"language_framework,omitempty"` + + // A quota block as defined below. + Quota []SpringCloudContainerDeploymentQuotaInitParameters `json:"quota,omitempty" tf:"quota,omitempty"` + + // The name of the registry that contains the container image. + Server *string `json:"server,omitempty" tf:"server,omitempty"` +} + type SpringCloudContainerDeploymentObservation struct { // A JSON object that contains the addon configurations of the Spring Cloud Container Deployment. @@ -102,6 +132,15 @@ type SpringCloudContainerDeploymentParameters struct { SpringCloudAppIDSelector *v1.Selector `json:"springCloudAppIdSelector,omitempty" tf:"-"` } +type SpringCloudContainerDeploymentQuotaInitParameters struct { + + // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. + CPU *string `json:"cpu,omitempty" tf:"cpu,omitempty"` + + // Specifies the required memory size of the Spring Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not specified. + Memory *string `json:"memory,omitempty" tf:"memory,omitempty"` +} + type SpringCloudContainerDeploymentQuotaObservation struct { // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. @@ -126,6 +165,18 @@ type SpringCloudContainerDeploymentQuotaParameters struct { type SpringCloudContainerDeploymentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudContainerDeploymentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudContainerDeploymentInitParameters `json:"initProvider,omitempty"` } // SpringCloudContainerDeploymentStatus defines the observed state of SpringCloudContainerDeployment. @@ -146,8 +197,8 @@ type SpringCloudContainerDeploymentStatus struct { type SpringCloudContainerDeployment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.image)",message="image is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.server)",message="server is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.image) || has(self.initProvider.image)",message="image is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.server) || has(self.initProvider.server)",message="server is a required parameter" Spec SpringCloudContainerDeploymentSpec `json:"spec"` Status SpringCloudContainerDeploymentStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudcustomdomain_types.go b/apis/appplatform/v1beta1/zz_springcloudcustomdomain_types.go index 0271471ce..ff1290e17 100755 --- a/apis/appplatform/v1beta1/zz_springcloudcustomdomain_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudcustomdomain_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudCustomDomainInitParameters struct { + + // Specifies the name of the Spring Cloud Certificate that binds to the Spring Cloud Custom Domain. Required when thumbprint is specified + CertificateName *string `json:"certificateName,omitempty" tf:"certificate_name,omitempty"` + + // Specifies the name of the Spring Cloud Custom Domain. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the thumbprint of the Spring Cloud Certificate that binds to the Spring Cloud Custom Domain. Required when certificate_name is specified. Changing this forces a new resource to be created. + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` +} + type SpringCloudCustomDomainObservation struct { // Specifies the name of the Spring Cloud Certificate that binds to the Spring Cloud Custom Domain. Required when thumbprint is specified @@ -64,6 +76,18 @@ type SpringCloudCustomDomainParameters struct { type SpringCloudCustomDomainSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudCustomDomainParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudCustomDomainInitParameters `json:"initProvider,omitempty"` } // SpringCloudCustomDomainStatus defines the observed state of SpringCloudCustomDomain. @@ -84,7 +108,7 @@ type SpringCloudCustomDomainStatus struct { type SpringCloudCustomDomain struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec SpringCloudCustomDomainSpec `json:"spec"` Status SpringCloudCustomDomainStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudcustomizedaccelerator_types.go b/apis/appplatform/v1beta1/zz_springcloudcustomizedaccelerator_types.go index 8488ee9d3..ba169fdb8 100755 --- a/apis/appplatform/v1beta1/zz_springcloudcustomizedaccelerator_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudcustomizedaccelerator_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BasicAuthInitParameters struct { + + // Specifies the username of git repository basic auth. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type BasicAuthObservation struct { // Specifies the username of git repository basic auth. @@ -26,8 +32,32 @@ type BasicAuthParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // Specifies the username of git repository basic auth. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type GitRepositoryInitParameters struct { + + // A basic_auth block as defined below. Conflicts with git_repository.0.ssh_auth. Changing this forces a new Spring Cloud Customized Accelerator to be created. + BasicAuth []BasicAuthInitParameters `json:"basicAuth,omitempty" tf:"basic_auth,omitempty"` + + // Specifies the Git repository branch to be used. + Branch *string `json:"branch,omitempty" tf:"branch,omitempty"` + + // Specifies the Git repository commit to be used. + Commit *string `json:"commit,omitempty" tf:"commit,omitempty"` + + // Specifies the Git repository tag to be used. + GitTag *string `json:"gitTag,omitempty" tf:"git_tag,omitempty"` + + // Specifies the interval for checking for updates to Git or image repository. It should be greater than 10. + IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` + + // A ssh_auth block as defined below. Conflicts with git_repository.0.basic_auth. Changing this forces a new Spring Cloud Customized Accelerator to be created. + SSHAuth []SSHAuthInitParameters `json:"sshAuth,omitempty" tf:"ssh_auth,omitempty"` + + // Specifies Git repository URL for the accelerator. + URL *string `json:"url,omitempty" tf:"url,omitempty"` } type GitRepositoryObservation struct { @@ -81,8 +111,14 @@ type GitRepositoryParameters struct { SSHAuth []SSHAuthParameters `json:"sshAuth,omitempty" tf:"ssh_auth,omitempty"` // Specifies Git repository URL for the accelerator. - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + +type SSHAuthInitParameters struct { + + // Specifies the SSH Key algorithm of git repository basic auth. + HostKeyAlgorithm *string `json:"hostKeyAlgorithm,omitempty" tf:"host_key_algorithm,omitempty"` } type SSHAuthObservation struct { @@ -106,6 +142,24 @@ type SSHAuthParameters struct { PrivateKeySecretRef v1.SecretKeySelector `json:"privateKeySecretRef" tf:"-"` } +type SpringCloudCustomizedAcceleratorInitParameters struct { + + // Specifies a list of accelerator tags. + AcceleratorTags []*string `json:"acceleratorTags,omitempty" tf:"accelerator_tags,omitempty"` + + // Specifies the description of the Spring Cloud Customized Accelerator. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies the display name of the Spring Cloud Customized Accelerator.. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // A git_repository block as defined below. + GitRepository []GitRepositoryInitParameters `json:"gitRepository,omitempty" tf:"git_repository,omitempty"` + + // Specifies the icon URL of the Spring Cloud Customized Accelerator.. + IconURL *string `json:"iconUrl,omitempty" tf:"icon_url,omitempty"` +} + type SpringCloudCustomizedAcceleratorObservation struct { // Specifies a list of accelerator tags. @@ -171,6 +225,18 @@ type SpringCloudCustomizedAcceleratorParameters struct { type SpringCloudCustomizedAcceleratorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudCustomizedAcceleratorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudCustomizedAcceleratorInitParameters `json:"initProvider,omitempty"` } // SpringCloudCustomizedAcceleratorStatus defines the observed state of SpringCloudCustomizedAccelerator. @@ -191,7 +257,7 @@ type SpringCloudCustomizedAcceleratorStatus struct { type SpringCloudCustomizedAccelerator struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gitRepository)",message="gitRepository is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.gitRepository) || has(self.initProvider.gitRepository)",message="gitRepository is a required parameter" Spec SpringCloudCustomizedAcceleratorSpec `json:"spec"` Status SpringCloudCustomizedAcceleratorStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springclouddevtoolportal_types.go b/apis/appplatform/v1beta1/zz_springclouddevtoolportal_types.go index 841878c0f..c6b0606e1 100755 --- a/apis/appplatform/v1beta1/zz_springclouddevtoolportal_types.go +++ b/apis/appplatform/v1beta1/zz_springclouddevtoolportal_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudDevToolPortalInitParameters struct { + + // Should the Accelerator plugin be enabled? + ApplicationAcceleratorEnabled *bool `json:"applicationAcceleratorEnabled,omitempty" tf:"application_accelerator_enabled,omitempty"` + + // Should the Application Live View be enabled? + ApplicationLiveViewEnabled *bool `json:"applicationLiveViewEnabled,omitempty" tf:"application_live_view_enabled,omitempty"` + + // The name which should be used for this Spring Cloud Dev Tool Portal. The only possible value is default. Changing this forces a new Spring Cloud Dev Tool Portal to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is public network access enabled? + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A sso block as defined below. + Sso []SpringCloudDevToolPortalSsoInitParameters `json:"sso,omitempty" tf:"sso,omitempty"` +} + type SpringCloudDevToolPortalObservation struct { // Should the Accelerator plugin be enabled? @@ -74,6 +92,21 @@ type SpringCloudDevToolPortalParameters struct { Sso []SpringCloudDevToolPortalSsoParameters `json:"sso,omitempty" tf:"sso,omitempty"` } +type SpringCloudDevToolPortalSsoInitParameters struct { + + // Specifies the public identifier for the application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // Specifies the secret known only to the application and the authorization server. + ClientSecret *string `json:"clientSecret,omitempty" tf:"client_secret,omitempty"` + + // Specifies the URI of a JSON file with generic OIDC provider configuration. + MetadataURL *string `json:"metadataUrl,omitempty" tf:"metadata_url,omitempty"` + + // Specifies a list of specific actions applications can be allowed to do on a user's behalf. + Scope []*string `json:"scope,omitempty" tf:"scope,omitempty"` +} + type SpringCloudDevToolPortalSsoObservation struct { // Specifies the public identifier for the application. @@ -112,6 +145,18 @@ type SpringCloudDevToolPortalSsoParameters struct { type SpringCloudDevToolPortalSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudDevToolPortalParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudDevToolPortalInitParameters `json:"initProvider,omitempty"` } // SpringCloudDevToolPortalStatus defines the observed state of SpringCloudDevToolPortal. @@ -132,7 +177,7 @@ type SpringCloudDevToolPortalStatus struct { type SpringCloudDevToolPortal struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec SpringCloudDevToolPortalSpec `json:"spec"` Status SpringCloudDevToolPortalStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudgateway_types.go b/apis/appplatform/v1beta1/zz_springcloudgateway_types.go index 61da23b2d..ac7b44470 100755 --- a/apis/appplatform/v1beta1/zz_springcloudgateway_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudgateway_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APIMetadataInitParameters struct { + + // Detailed description of the APIs available on the Gateway instance. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Location of additional documentation for the APIs available on the Gateway instance. + DocumentationURL *string `json:"documentationUrl,omitempty" tf:"documentation_url,omitempty"` + + // Base URL that API consumers will use to access APIs on the Gateway instance. + ServerURL *string `json:"serverUrl,omitempty" tf:"server_url,omitempty"` + + // Specifies the title describing the context of the APIs available on the Gateway instance. + Title *string `json:"title,omitempty" tf:"title,omitempty"` + + // Specifies the version of APIs available on this Gateway instance. + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type APIMetadataObservation struct { // Detailed description of the APIs available on the Gateway instance. @@ -54,6 +72,27 @@ type APIMetadataParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type CorsInitParameters struct { + + // Allowed headers in cross-site requests. The special value * allows actual requests to send any header. + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` + + // Allowed HTTP methods on cross-site requests. The special value * allows all methods. If not set, GET and HEAD are allowed by default. Possible values are DELETE, GET, HEAD, MERGE, POST, OPTIONS and PUT. + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` + + // Allowed origins to make cross-site requests. The special value * allows all domains. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // is user credentials are supported on cross-site requests? + CredentialsAllowed *bool `json:"credentialsAllowed,omitempty" tf:"credentials_allowed,omitempty"` + + // HTTP response headers to expose for cross-site requests. + ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` + + // How long, in seconds, the response from a pre-flight request can be cached by clients. + MaxAgeSeconds *float64 `json:"maxAgeSeconds,omitempty" tf:"max_age_seconds,omitempty"` +} + type CorsObservation struct { // Allowed headers in cross-site requests. The special value * allows actual requests to send any header. @@ -102,6 +141,36 @@ type CorsParameters struct { MaxAgeSeconds *float64 `json:"maxAgeSeconds,omitempty" tf:"max_age_seconds,omitempty"` } +type SpringCloudGatewayInitParameters struct { + + // A api_metadata block as defined below. + APIMetadata []APIMetadataInitParameters `json:"apiMetadata,omitempty" tf:"api_metadata,omitempty"` + + // Specifies a list of application performance monitoring types used in the Spring Cloud Gateway. The allowed values are AppDynamics, ApplicationInsights, Dynatrace, ElasticAPM and NewRelic. + ApplicationPerformanceMonitoringTypes []*string `json:"applicationPerformanceMonitoringTypes,omitempty" tf:"application_performance_monitoring_types,omitempty"` + + // A cors block as defined below. + Cors []CorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // Specifies the environment variables of the Spring Cloud Gateway as a map of key-value pairs. Changing this forces a new resource to be created. + EnvironmentVariables map[string]*string `json:"environmentVariables,omitempty" tf:"environment_variables,omitempty"` + + // is only https is allowed? + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // Specifies the required instance count of the Spring Cloud Gateway. Possible Values are between 1 and 500. Defaults to 1 if not specified. + InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` + + // Indicates whether the Spring Cloud Gateway exposes endpoint. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A quota block as defined below. + Quota []SpringCloudGatewayQuotaInitParameters `json:"quota,omitempty" tf:"quota,omitempty"` + + // A sso block as defined below. + Sso []SpringCloudGatewaySsoInitParameters `json:"sso,omitempty" tf:"sso,omitempty"` +} + type SpringCloudGatewayObservation struct { // A api_metadata block as defined below. @@ -198,6 +267,15 @@ type SpringCloudGatewayParameters struct { Sso []SpringCloudGatewaySsoParameters `json:"sso,omitempty" tf:"sso,omitempty"` } +type SpringCloudGatewayQuotaInitParameters struct { + + // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. + CPU *string `json:"cpu,omitempty" tf:"cpu,omitempty"` + + // Specifies the required memory size of the Spring Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not specified. + Memory *string `json:"memory,omitempty" tf:"memory,omitempty"` +} + type SpringCloudGatewayQuotaObservation struct { // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. @@ -218,6 +296,21 @@ type SpringCloudGatewayQuotaParameters struct { Memory *string `json:"memory,omitempty" tf:"memory,omitempty"` } +type SpringCloudGatewaySsoInitParameters struct { + + // The public identifier for the application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The secret known only to the application and the authorization server. + ClientSecret *string `json:"clientSecret,omitempty" tf:"client_secret,omitempty"` + + // The URI of Issuer Identifier. + IssuerURI *string `json:"issuerUri,omitempty" tf:"issuer_uri,omitempty"` + + // It defines the specific actions applications can be allowed to do on a user's behalf. + Scope []*string `json:"scope,omitempty" tf:"scope,omitempty"` +} + type SpringCloudGatewaySsoObservation struct { // The public identifier for the application. @@ -256,6 +349,18 @@ type SpringCloudGatewaySsoParameters struct { type SpringCloudGatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudGatewayParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudGatewayInitParameters `json:"initProvider,omitempty"` } // SpringCloudGatewayStatus defines the observed state of SpringCloudGateway. diff --git a/apis/appplatform/v1beta1/zz_springcloudgatewaycustomdomain_types.go b/apis/appplatform/v1beta1/zz_springcloudgatewaycustomdomain_types.go index aabf486fb..f00756b22 100755 --- a/apis/appplatform/v1beta1/zz_springcloudgatewaycustomdomain_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudgatewaycustomdomain_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudGatewayCustomDomainInitParameters struct { + + // The name which should be used for this Spring Cloud Gateway Custom Domain. Changing this forces a new Spring Cloud Gateway Custom Domain to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the thumbprint of the Spring Cloud Certificate that binds to the Spring Cloud Gateway Custom Domain. + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` +} + type SpringCloudGatewayCustomDomainObservation struct { // The ID of the Spring Cloud Gateway Custom Domain. @@ -57,6 +66,18 @@ type SpringCloudGatewayCustomDomainParameters struct { type SpringCloudGatewayCustomDomainSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudGatewayCustomDomainParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudGatewayCustomDomainInitParameters `json:"initProvider,omitempty"` } // SpringCloudGatewayCustomDomainStatus defines the observed state of SpringCloudGatewayCustomDomain. @@ -77,7 +98,7 @@ type SpringCloudGatewayCustomDomainStatus struct { type SpringCloudGatewayCustomDomain struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec SpringCloudGatewayCustomDomainSpec `json:"spec"` Status SpringCloudGatewayCustomDomainStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudjavadeployment_types.go b/apis/appplatform/v1beta1/zz_springcloudjavadeployment_types.go index 335341e63..c4e51ccb8 100755 --- a/apis/appplatform/v1beta1/zz_springcloudjavadeployment_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudjavadeployment_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudJavaDeploymentInitParameters struct { + + // Specifies the environment variables of the Spring Cloud Deployment as a map of key-value pairs. + EnvironmentVariables map[string]*string `json:"environmentVariables,omitempty" tf:"environment_variables,omitempty"` + + // Specifies the required instance count of the Spring Cloud Deployment. Possible Values are between 1 and 500. Defaults to 1 if not specified. + InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` + + // Specifies the jvm option of the Spring Cloud Deployment. + JvmOptions *string `json:"jvmOptions,omitempty" tf:"jvm_options,omitempty"` + + // A quota block as defined below. + Quota []SpringCloudJavaDeploymentQuotaInitParameters `json:"quota,omitempty" tf:"quota,omitempty"` + + // Specifies the runtime version of the Spring Cloud Deployment. Possible Values are Java_8, Java_11 and Java_17. Defaults to Java_8. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` +} + type SpringCloudJavaDeploymentObservation struct { // Specifies the environment variables of the Spring Cloud Deployment as a map of key-value pairs. @@ -74,6 +92,15 @@ type SpringCloudJavaDeploymentParameters struct { SpringCloudAppIDSelector *v1.Selector `json:"springCloudAppIdSelector,omitempty" tf:"-"` } +type SpringCloudJavaDeploymentQuotaInitParameters struct { + + // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. + CPU *string `json:"cpu,omitempty" tf:"cpu,omitempty"` + + // Specifies the required memory size of the Spring Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not specified. + Memory *string `json:"memory,omitempty" tf:"memory,omitempty"` +} + type SpringCloudJavaDeploymentQuotaObservation struct { // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. @@ -98,6 +125,18 @@ type SpringCloudJavaDeploymentQuotaParameters struct { type SpringCloudJavaDeploymentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudJavaDeploymentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudJavaDeploymentInitParameters `json:"initProvider,omitempty"` } // SpringCloudJavaDeploymentStatus defines the observed state of SpringCloudJavaDeployment. diff --git a/apis/appplatform/v1beta1/zz_springcloudservice_types.go b/apis/appplatform/v1beta1/zz_springcloudservice_types.go index 889b7c137..b57fefdfa 100755 --- a/apis/appplatform/v1beta1/zz_springcloudservice_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudservice_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConfigServerGitSettingInitParameters struct { + + // A http_basic_auth block as defined below. + HTTPBasicAuth []HTTPBasicAuthInitParameters `json:"httpBasicAuth,omitempty" tf:"http_basic_auth,omitempty"` + + // The default label of the Git repository, should be the branch name, tag name, or commit-id of the repository. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // One or more repository blocks as defined below. + Repository []ConfigServerGitSettingRepositoryInitParameters `json:"repository,omitempty" tf:"repository,omitempty"` + + // A ssh_auth block as defined below. + SSHAuth []ConfigServerGitSettingSSHAuthInitParameters `json:"sshAuth,omitempty" tf:"ssh_auth,omitempty"` + + // An array of strings used to search subdirectories of the Git repository. + SearchPaths []*string `json:"searchPaths,omitempty" tf:"search_paths,omitempty"` + + // The URI of the default Git repository used as the Config Server back end, should be started with http://, https://, git@, or ssh://. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type ConfigServerGitSettingObservation struct { // A http_basic_auth block as defined below. @@ -57,8 +78,32 @@ type ConfigServerGitSettingParameters struct { SearchPaths []*string `json:"searchPaths,omitempty" tf:"search_paths,omitempty"` // The URI of the default Git repository used as the Config Server back end, should be started with http://, https://, git@, or ssh://. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type ConfigServerGitSettingRepositoryInitParameters struct { + + // A http_basic_auth block as defined below. + HTTPBasicAuth []RepositoryHTTPBasicAuthInitParameters `json:"httpBasicAuth,omitempty" tf:"http_basic_auth,omitempty"` + + // The default label of the Git repository, should be the branch name, tag name, or commit-id of the repository. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // A name to identify on the Git repository, required only if repos exists. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // An array of strings used to match an application name. For each pattern, use the {application}/{profile} format with wildcards. + Pattern []*string `json:"pattern,omitempty" tf:"pattern,omitempty"` + + // A ssh_auth block as defined below. + SSHAuth []RepositorySSHAuthInitParameters `json:"sshAuth,omitempty" tf:"ssh_auth,omitempty"` + + // An array of strings used to search subdirectories of the Git repository. + SearchPaths []*string `json:"searchPaths,omitempty" tf:"search_paths,omitempty"` + + // The URI of the Git repository that's used as the Config Server back end should be started with http://, https://, git@, or ssh://. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } type ConfigServerGitSettingRepositoryObservation struct { @@ -96,8 +141,8 @@ type ConfigServerGitSettingRepositoryParameters struct { Label *string `json:"label,omitempty" tf:"label,omitempty"` // A name to identify on the Git repository, required only if repos exists. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // An array of strings used to match an application name. For each pattern, use the {application}/{profile} format with wildcards. // +kubebuilder:validation:Optional @@ -112,8 +157,17 @@ type ConfigServerGitSettingRepositoryParameters struct { SearchPaths []*string `json:"searchPaths,omitempty" tf:"search_paths,omitempty"` // The URI of the Git repository that's used as the Config Server back end should be started with http://, https://, git@, or ssh://. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type ConfigServerGitSettingSSHAuthInitParameters struct { + + // The host key algorithm, should be ssh-dss, ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, or ecdsa-sha2-nistp521. Required only if host-key exists. + HostKeyAlgorithm *string `json:"hostKeyAlgorithm,omitempty" tf:"host_key_algorithm,omitempty"` + + // Indicates whether the Config Server instance will fail to start if the host_key does not match. Defaults to true. + StrictHostKeyCheckingEnabled *bool `json:"strictHostKeyCheckingEnabled,omitempty" tf:"strict_host_key_checking_enabled,omitempty"` } type ConfigServerGitSettingSSHAuthObservation struct { @@ -144,6 +198,12 @@ type ConfigServerGitSettingSSHAuthParameters struct { StrictHostKeyCheckingEnabled *bool `json:"strictHostKeyCheckingEnabled,omitempty" tf:"strict_host_key_checking_enabled,omitempty"` } +type HTTPBasicAuthInitParameters struct { + + // The username that's used to access the Git repository server, required when the Git repository server supports HTTP Basic Authentication. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type HTTPBasicAuthObservation struct { // The username that's used to access the Git repository server, required when the Git repository server supports HTTP Basic Authentication. @@ -157,8 +217,23 @@ type HTTPBasicAuthParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username that's used to access the Git repository server, required when the Git repository server supports HTTP Basic Authentication. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type NetworkInitParameters struct { + + // Specifies the Name of the resource group containing network resources of Azure Spring Cloud Apps. Changing this forces a new resource to be created. + AppNetworkResourceGroup *string `json:"appNetworkResourceGroup,omitempty" tf:"app_network_resource_group,omitempty"` + + // A list of (at least 3) CIDR ranges (at least /16) which are used to host the Spring Cloud infrastructure, which must not overlap with any existing CIDR ranges in the Subnet. Changing this forces a new resource to be created. + CidrRanges []*string `json:"cidrRanges,omitempty" tf:"cidr_ranges,omitempty"` + + // Ingress read time out in seconds. + ReadTimeoutSeconds *float64 `json:"readTimeoutSeconds,omitempty" tf:"read_timeout_seconds,omitempty"` + + // Specifies the Name of the resource group containing network resources of Azure Spring Cloud Service Runtime. Changing this forces a new resource to be created. + ServiceRuntimeNetworkResourceGroup *string `json:"serviceRuntimeNetworkResourceGroup,omitempty" tf:"service_runtime_network_resource_group,omitempty"` } type NetworkObservation struct { @@ -203,8 +278,8 @@ type NetworkParameters struct { AppSubnetIDSelector *v1.Selector `json:"appSubnetIdSelector,omitempty" tf:"-"` // A list of (at least 3) CIDR ranges (at least /16) which are used to host the Spring Cloud infrastructure, which must not overlap with any existing CIDR ranges in the Subnet. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - CidrRanges []*string `json:"cidrRanges" tf:"cidr_ranges,omitempty"` + // +kubebuilder:validation:Optional + CidrRanges []*string `json:"cidrRanges,omitempty" tf:"cidr_ranges,omitempty"` // Ingress read time out in seconds. // +kubebuilder:validation:Optional @@ -229,6 +304,12 @@ type NetworkParameters struct { ServiceRuntimeSubnetIDSelector *v1.Selector `json:"serviceRuntimeSubnetIdSelector,omitempty" tf:"-"` } +type RepositoryHTTPBasicAuthInitParameters struct { + + // The username that's used to access the Git repository server, required when the Git repository server supports HTTP Basic Authentication. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type RepositoryHTTPBasicAuthObservation struct { // The username that's used to access the Git repository server, required when the Git repository server supports HTTP Basic Authentication. @@ -242,8 +323,17 @@ type RepositoryHTTPBasicAuthParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username that's used to access the Git repository server, required when the Git repository server supports HTTP Basic Authentication. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type RepositorySSHAuthInitParameters struct { + + // The host key algorithm, should be ssh-dss, ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, or ecdsa-sha2-nistp521. Required only if host-key exists. + HostKeyAlgorithm *string `json:"hostKeyAlgorithm,omitempty" tf:"host_key_algorithm,omitempty"` + + // Indicates whether the Config Server instance will fail to start if the host_key does not match. Defaults to true. + StrictHostKeyCheckingEnabled *bool `json:"strictHostKeyCheckingEnabled,omitempty" tf:"strict_host_key_checking_enabled,omitempty"` } type RepositorySSHAuthObservation struct { @@ -274,6 +364,9 @@ type RepositorySSHAuthParameters struct { StrictHostKeyCheckingEnabled *bool `json:"strictHostKeyCheckingEnabled,omitempty" tf:"strict_host_key_checking_enabled,omitempty"` } +type RequiredNetworkTrafficRulesInitParameters struct { +} + type RequiredNetworkTrafficRulesObservation struct { // The direction of required traffic. Possible values are Inbound, Outbound. @@ -295,6 +388,39 @@ type RequiredNetworkTrafficRulesObservation struct { type RequiredNetworkTrafficRulesParameters struct { } +type SpringCloudServiceInitParameters struct { + + // Specifies the size for this Spring Cloud Service's default build agent pool. Possible values are S1, S2, S3, S4 and S5. This field is applicable only for Spring Cloud Service with enterprise tier. + BuildAgentPoolSize *string `json:"buildAgentPoolSize,omitempty" tf:"build_agent_pool_size,omitempty"` + + // A config_server_git_setting block as defined below. This field is applicable only for Spring Cloud Service with basic and standard tier. + ConfigServerGitSetting []ConfigServerGitSettingInitParameters `json:"configServerGitSetting,omitempty" tf:"config_server_git_setting,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Should the log stream in vnet injection instance could be accessed from Internet? + LogStreamPublicEndpointEnabled *bool `json:"logStreamPublicEndpointEnabled,omitempty" tf:"log_stream_public_endpoint_enabled,omitempty"` + + // A network block as defined below. Changing this forces a new resource to be created. + Network []NetworkInitParameters `json:"network,omitempty" tf:"network,omitempty"` + + // Whether enable the default Service Registry. This field is applicable only for Spring Cloud Service with enterprise tier. + ServiceRegistryEnabled *bool `json:"serviceRegistryEnabled,omitempty" tf:"service_registry_enabled,omitempty"` + + // Specifies the SKU Name for this Spring Cloud Service. Possible values are B0, S0 and E0. Defaults to S0. Changing this forces a new resource to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A trace block as defined below. + Trace []TraceInitParameters `json:"trace,omitempty" tf:"trace,omitempty"` + + // Whether zone redundancy is enabled for this Spring Cloud Service. Defaults to false. + ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` +} + type SpringCloudServiceObservation struct { // Specifies the size for this Spring Cloud Service's default build agent pool. Possible values are S1, S2, S3, S4 and S5. This field is applicable only for Spring Cloud Service with enterprise tier. @@ -399,6 +525,12 @@ type SpringCloudServiceParameters struct { ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } +type TraceInitParameters struct { + + // The sampling rate of Application Insights Agent. Must be between 0.0 and 100.0. Defaults to 10.0. + SampleRate *float64 `json:"sampleRate,omitempty" tf:"sample_rate,omitempty"` +} + type TraceObservation struct { // The connection string used for Application Insights. @@ -433,6 +565,18 @@ type TraceParameters struct { type SpringCloudServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudServiceInitParameters `json:"initProvider,omitempty"` } // SpringCloudServiceStatus defines the observed state of SpringCloudService. @@ -453,7 +597,7 @@ type SpringCloudServiceStatus struct { type SpringCloudService struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SpringCloudServiceSpec `json:"spec"` Status SpringCloudServiceStatus `json:"status,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudstorage_types.go b/apis/appplatform/v1beta1/zz_springcloudstorage_types.go index 88c6ce63c..6584cd96b 100755 --- a/apis/appplatform/v1beta1/zz_springcloudstorage_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudstorage_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpringCloudStorageInitParameters struct { +} + type SpringCloudStorageObservation struct { // The ID of the Spring Cloud Storage. @@ -76,6 +79,18 @@ type SpringCloudStorageParameters struct { type SpringCloudStorageSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudStorageParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudStorageInitParameters `json:"initProvider,omitempty"` } // SpringCloudStorageStatus defines the observed state of SpringCloudStorage. diff --git a/apis/attestation/v1beta1/zz_generated.deepcopy.go b/apis/attestation/v1beta1/zz_generated.deepcopy.go index 51c43fce5..340f821c3 100644 --- a/apis/attestation/v1beta1/zz_generated.deepcopy.go +++ b/apis/attestation/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,31 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyInitParameters) DeepCopyInto(out *PolicyInitParameters) { + *out = *in + if in.Data != nil { + in, out := &in.Data, &out.Data + *out = new(string) + **out = **in + } + if in.EnvironmentType != nil { + in, out := &in.EnvironmentType, &out.EnvironmentType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyInitParameters. +func (in *PolicyInitParameters) DeepCopy() *PolicyInitParameters { + if in == nil { + return nil + } + out := new(PolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PolicyObservation) DeepCopyInto(out *PolicyObservation) { *out = *in @@ -91,6 +116,68 @@ func (in *Provider) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProviderInitParameters) DeepCopyInto(out *ProviderInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.OpenEnclavePolicyBase64 != nil { + in, out := &in.OpenEnclavePolicyBase64, &out.OpenEnclavePolicyBase64 + *out = new(string) + **out = **in + } + if in.Policy != nil { + in, out := &in.Policy, &out.Policy + *out = make([]PolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PolicySigningCertificateData != nil { + in, out := &in.PolicySigningCertificateData, &out.PolicySigningCertificateData + *out = new(string) + **out = **in + } + if in.SgxEnclavePolicyBase64 != nil { + in, out := &in.SgxEnclavePolicyBase64, &out.SgxEnclavePolicyBase64 + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TpmPolicyBase64 != nil { + in, out := &in.TpmPolicyBase64, &out.TpmPolicyBase64 + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProviderInitParameters. +func (in *ProviderInitParameters) DeepCopy() *ProviderInitParameters { + if in == nil { + return nil + } + out := new(ProviderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProviderList) DeepCopyInto(out *ProviderList) { *out = *in @@ -287,6 +374,7 @@ func (in *ProviderSpec) DeepCopyInto(out *ProviderSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProviderSpec. diff --git a/apis/attestation/v1beta1/zz_generated.managed.go b/apis/attestation/v1beta1/zz_generated.managed.go index 46c06b1b7..2dc748d69 100644 --- a/apis/attestation/v1beta1/zz_generated.managed.go +++ b/apis/attestation/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Provider) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Provider. -func (mg *Provider) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Provider. +func (mg *Provider) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Provider. @@ -55,9 +55,9 @@ func (mg *Provider) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Provider. -func (mg *Provider) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Provider. +func (mg *Provider) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Provider. diff --git a/apis/attestation/v1beta1/zz_generated_terraformed.go b/apis/attestation/v1beta1/zz_generated_terraformed.go index 8e6793575..d10a27b57 100755 --- a/apis/attestation/v1beta1/zz_generated_terraformed.go +++ b/apis/attestation/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Provider) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Provider +func (tr *Provider) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Provider using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Provider) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/attestation/v1beta1/zz_provider_types.go b/apis/attestation/v1beta1/zz_provider_types.go index 9a2d4a954..afe5e29a6 100755 --- a/apis/attestation/v1beta1/zz_provider_types.go +++ b/apis/attestation/v1beta1/zz_provider_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PolicyInitParameters struct { + Data *string `json:"data,omitempty" tf:"data,omitempty"` + + EnvironmentType *string `json:"environmentType,omitempty" tf:"environment_type,omitempty"` +} + type PolicyObservation struct { Data *string `json:"data,omitempty" tf:"data,omitempty"` @@ -28,6 +34,29 @@ type PolicyParameters struct { EnvironmentType *string `json:"environmentType,omitempty" tf:"environment_type,omitempty"` } +type ProviderInitParameters struct { + + // The Azure Region where the Attestation Provider should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the base64 URI Encoded RFC 7519 JWT that should be used for the TPM Policy. + OpenEnclavePolicyBase64 *string `json:"openEnclavePolicyBase64,omitempty" tf:"open_enclave_policy_base64,omitempty"` + + Policy []PolicyInitParameters `json:"policy,omitempty" tf:"policy,omitempty"` + + // A valid X.509 certificate (Section 4 of RFC4648). Changing this forces a new resource to be created. + PolicySigningCertificateData *string `json:"policySigningCertificateData,omitempty" tf:"policy_signing_certificate_data,omitempty"` + + // Specifies the base64 URI Encoded RFC 7519 JWT that should be used for the TPM Policy. + SgxEnclavePolicyBase64 *string `json:"sgxEnclavePolicyBase64,omitempty" tf:"sgx_enclave_policy_base64,omitempty"` + + // A mapping of tags which should be assigned to the Attestation Provider. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the base64 URI Encoded RFC 7519 JWT that should be used for the TPM Policy. + TpmPolicyBase64 *string `json:"tpmPolicyBase64,omitempty" tf:"tpm_policy_base64,omitempty"` +} + type ProviderObservation struct { // The URI of the Attestation Service. @@ -110,6 +139,18 @@ type ProviderParameters struct { type ProviderSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ProviderParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ProviderInitParameters `json:"initProvider,omitempty"` } // ProviderStatus defines the observed state of Provider. @@ -130,7 +171,7 @@ type ProviderStatus struct { type Provider struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ProviderSpec `json:"spec"` Status ProviderStatus `json:"status,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_generated.deepcopy.go b/apis/authorization/v1beta1/zz_generated.deepcopy.go index 513bf0587..95f931245 100644 --- a/apis/authorization/v1beta1/zz_generated.deepcopy.go +++ b/apis/authorization/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,37 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -113,6 +144,36 @@ func (in *ManagementLock) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementLockInitParameters) DeepCopyInto(out *ManagementLockInitParameters) { + *out = *in + if in.LockLevel != nil { + in, out := &in.LockLevel, &out.LockLevel + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Notes != nil { + in, out := &in.Notes, &out.Notes + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementLockInitParameters. +func (in *ManagementLockInitParameters) DeepCopy() *ManagementLockInitParameters { + if in == nil { + return nil + } + out := new(ManagementLockInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagementLockList) DeepCopyInto(out *ManagementLockList) { *out = *in @@ -235,6 +296,7 @@ func (in *ManagementLockSpec) DeepCopyInto(out *ManagementLockSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementLockSpec. @@ -264,6 +326,31 @@ func (in *ManagementLockStatus) DeepCopy() *ManagementLockStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NonComplianceMessageInitParameters) DeepCopyInto(out *NonComplianceMessageInitParameters) { + *out = *in + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = new(string) + **out = **in + } + if in.PolicyDefinitionReferenceID != nil { + in, out := &in.PolicyDefinitionReferenceID, &out.PolicyDefinitionReferenceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NonComplianceMessageInitParameters. +func (in *NonComplianceMessageInitParameters) DeepCopy() *NonComplianceMessageInitParameters { + if in == nil { + return nil + } + out := new(NonComplianceMessageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NonComplianceMessageObservation) DeepCopyInto(out *NonComplianceMessageObservation) { *out = *in @@ -314,6 +401,33 @@ func (in *NonComplianceMessageParameters) DeepCopy() *NonComplianceMessageParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OverridesInitParameters) DeepCopyInto(out *OverridesInitParameters) { + *out = *in + if in.Selectors != nil { + in, out := &in.Selectors, &out.Selectors + *out = make([]SelectorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OverridesInitParameters. +func (in *OverridesInitParameters) DeepCopy() *OverridesInitParameters { + if in == nil { + return nil + } + out := new(OverridesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OverridesObservation) DeepCopyInto(out *OverridesObservation) { *out = *in @@ -368,6 +482,43 @@ func (in *OverridesParameters) DeepCopy() *OverridesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OverridesSelectorsInitParameters) DeepCopyInto(out *OverridesSelectorsInitParameters) { + *out = *in + if in.In != nil { + in, out := &in.In, &out.In + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NotIn != nil { + in, out := &in.NotIn, &out.NotIn + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OverridesSelectorsInitParameters. +func (in *OverridesSelectorsInitParameters) DeepCopy() *OverridesSelectorsInitParameters { + if in == nil { + return nil + } + out := new(OverridesSelectorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OverridesSelectorsObservation) DeepCopyInto(out *OverridesSelectorsObservation) { *out = *in @@ -447,6 +598,65 @@ func (in *OverridesSelectorsParameters) DeepCopy() *OverridesSelectorsParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PermissionsInitParameters) DeepCopyInto(out *PermissionsInitParameters) { + *out = *in + if in.Actions != nil { + in, out := &in.Actions, &out.Actions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DataActions != nil { + in, out := &in.DataActions, &out.DataActions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NotActions != nil { + in, out := &in.NotActions, &out.NotActions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NotDataActions != nil { + in, out := &in.NotDataActions, &out.NotDataActions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionsInitParameters. +func (in *PermissionsInitParameters) DeepCopy() *PermissionsInitParameters { + if in == nil { + return nil + } + out := new(PermissionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PermissionsObservation) DeepCopyInto(out *PermissionsObservation) { *out = *in @@ -592,6 +802,61 @@ func (in *PolicyDefinition) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyDefinitionInitParameters) DeepCopyInto(out *PolicyDefinitionInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.ManagementGroupID != nil { + in, out := &in.ManagementGroupID, &out.ManagementGroupID + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = new(string) + **out = **in + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.PolicyRule != nil { + in, out := &in.PolicyRule, &out.PolicyRule + *out = new(string) + **out = **in + } + if in.PolicyType != nil { + in, out := &in.PolicyType, &out.PolicyType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyDefinitionInitParameters. +func (in *PolicyDefinitionInitParameters) DeepCopy() *PolicyDefinitionInitParameters { + if in == nil { + return nil + } + out := new(PolicyDefinitionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PolicyDefinitionList) DeepCopyInto(out *PolicyDefinitionList) { *out = *in @@ -755,6 +1020,7 @@ func (in *PolicyDefinitionSpec) DeepCopyInto(out *PolicyDefinitionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyDefinitionSpec. @@ -812,25 +1078,109 @@ func (in *ResourceGroupPolicyAssignment) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ResourceGroupPolicyAssignmentList) DeepCopyInto(out *ResourceGroupPolicyAssignmentList) { +func (in *ResourceGroupPolicyAssignmentInitParameters) DeepCopyInto(out *ResourceGroupPolicyAssignmentInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ResourceGroupPolicyAssignment, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGroupPolicyAssignmentList. -func (in *ResourceGroupPolicyAssignmentList) DeepCopy() *ResourceGroupPolicyAssignmentList { - if in == nil { - return nil + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in } - out := new(ResourceGroupPolicyAssignmentList) + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Enforce != nil { + in, out := &in.Enforce, &out.Enforce + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = new(string) + **out = **in + } + if in.NonComplianceMessage != nil { + in, out := &in.NonComplianceMessage, &out.NonComplianceMessage + *out = make([]NonComplianceMessageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NotScopes != nil { + in, out := &in.NotScopes, &out.NotScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Overrides != nil { + in, out := &in.Overrides, &out.Overrides + *out = make([]OverridesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.ResourceSelectors != nil { + in, out := &in.ResourceSelectors, &out.ResourceSelectors + *out = make([]ResourceSelectorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGroupPolicyAssignmentInitParameters. +func (in *ResourceGroupPolicyAssignmentInitParameters) DeepCopy() *ResourceGroupPolicyAssignmentInitParameters { + if in == nil { + return nil + } + out := new(ResourceGroupPolicyAssignmentInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceGroupPolicyAssignmentList) DeepCopyInto(out *ResourceGroupPolicyAssignmentList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ResourceGroupPolicyAssignment, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGroupPolicyAssignmentList. +func (in *ResourceGroupPolicyAssignmentList) DeepCopy() *ResourceGroupPolicyAssignmentList { + if in == nil { + return nil + } + out := new(ResourceGroupPolicyAssignmentList) in.DeepCopyInto(out) return out } @@ -1061,6 +1411,7 @@ func (in *ResourceGroupPolicyAssignmentSpec) DeepCopyInto(out *ResourceGroupPoli *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGroupPolicyAssignmentSpec. @@ -1117,6 +1468,37 @@ func (in *ResourcePolicyAssignment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourcePolicyAssignmentIdentityInitParameters) DeepCopyInto(out *ResourcePolicyAssignmentIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentIdentityInitParameters. +func (in *ResourcePolicyAssignmentIdentityInitParameters) DeepCopy() *ResourcePolicyAssignmentIdentityInitParameters { + if in == nil { + return nil + } + out := new(ResourcePolicyAssignmentIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourcePolicyAssignmentIdentityObservation) DeepCopyInto(out *ResourcePolicyAssignmentIdentityObservation) { *out = *in @@ -1189,6 +1571,100 @@ func (in *ResourcePolicyAssignmentIdentityParameters) DeepCopy() *ResourcePolicy return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourcePolicyAssignmentInitParameters) DeepCopyInto(out *ResourcePolicyAssignmentInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Enforce != nil { + in, out := &in.Enforce, &out.Enforce + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]ResourcePolicyAssignmentIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NonComplianceMessage != nil { + in, out := &in.NonComplianceMessage, &out.NonComplianceMessage + *out = make([]ResourcePolicyAssignmentNonComplianceMessageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NotScopes != nil { + in, out := &in.NotScopes, &out.NotScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Overrides != nil { + in, out := &in.Overrides, &out.Overrides + *out = make([]ResourcePolicyAssignmentOverridesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } + if in.ResourceSelectors != nil { + in, out := &in.ResourceSelectors, &out.ResourceSelectors + *out = make([]ResourcePolicyAssignmentResourceSelectorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentInitParameters. +func (in *ResourcePolicyAssignmentInitParameters) DeepCopy() *ResourcePolicyAssignmentInitParameters { + if in == nil { + return nil + } + out := new(ResourcePolicyAssignmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourcePolicyAssignmentList) DeepCopyInto(out *ResourcePolicyAssignmentList) { *out = *in @@ -1221,6 +1697,31 @@ func (in *ResourcePolicyAssignmentList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourcePolicyAssignmentNonComplianceMessageInitParameters) DeepCopyInto(out *ResourcePolicyAssignmentNonComplianceMessageInitParameters) { + *out = *in + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = new(string) + **out = **in + } + if in.PolicyDefinitionReferenceID != nil { + in, out := &in.PolicyDefinitionReferenceID, &out.PolicyDefinitionReferenceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentNonComplianceMessageInitParameters. +func (in *ResourcePolicyAssignmentNonComplianceMessageInitParameters) DeepCopy() *ResourcePolicyAssignmentNonComplianceMessageInitParameters { + if in == nil { + return nil + } + out := new(ResourcePolicyAssignmentNonComplianceMessageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourcePolicyAssignmentNonComplianceMessageObservation) DeepCopyInto(out *ResourcePolicyAssignmentNonComplianceMessageObservation) { *out = *in @@ -1375,6 +1876,33 @@ func (in *ResourcePolicyAssignmentObservation) DeepCopy() *ResourcePolicyAssignm return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourcePolicyAssignmentOverridesInitParameters) DeepCopyInto(out *ResourcePolicyAssignmentOverridesInitParameters) { + *out = *in + if in.Selectors != nil { + in, out := &in.Selectors, &out.Selectors + *out = make([]OverridesSelectorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentOverridesInitParameters. +func (in *ResourcePolicyAssignmentOverridesInitParameters) DeepCopy() *ResourcePolicyAssignmentOverridesInitParameters { + if in == nil { + return nil + } + out := new(ResourcePolicyAssignmentOverridesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourcePolicyAssignmentOverridesObservation) DeepCopyInto(out *ResourcePolicyAssignmentOverridesObservation) { *out = *in @@ -1539,7 +2067,7 @@ func (in *ResourcePolicyAssignmentParameters) DeepCopy() *ResourcePolicyAssignme } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ResourcePolicyAssignmentResourceSelectorsObservation) DeepCopyInto(out *ResourcePolicyAssignmentResourceSelectorsObservation) { +func (in *ResourcePolicyAssignmentResourceSelectorsInitParameters) DeepCopyInto(out *ResourcePolicyAssignmentResourceSelectorsInitParameters) { *out = *in if in.Name != nil { in, out := &in.Name, &out.Name @@ -1548,25 +2076,25 @@ func (in *ResourcePolicyAssignmentResourceSelectorsObservation) DeepCopyInto(out } if in.Selectors != nil { in, out := &in.Selectors, &out.Selectors - *out = make([]ResourcePolicyAssignmentResourceSelectorsSelectorsObservation, len(*in)) + *out = make([]ResourcePolicyAssignmentResourceSelectorsSelectorsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentResourceSelectorsObservation. -func (in *ResourcePolicyAssignmentResourceSelectorsObservation) DeepCopy() *ResourcePolicyAssignmentResourceSelectorsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentResourceSelectorsInitParameters. +func (in *ResourcePolicyAssignmentResourceSelectorsInitParameters) DeepCopy() *ResourcePolicyAssignmentResourceSelectorsInitParameters { if in == nil { return nil } - out := new(ResourcePolicyAssignmentResourceSelectorsObservation) + out := new(ResourcePolicyAssignmentResourceSelectorsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ResourcePolicyAssignmentResourceSelectorsParameters) DeepCopyInto(out *ResourcePolicyAssignmentResourceSelectorsParameters) { +func (in *ResourcePolicyAssignmentResourceSelectorsObservation) DeepCopyInto(out *ResourcePolicyAssignmentResourceSelectorsObservation) { *out = *in if in.Name != nil { in, out := &in.Name, &out.Name @@ -1575,15 +2103,42 @@ func (in *ResourcePolicyAssignmentResourceSelectorsParameters) DeepCopyInto(out } if in.Selectors != nil { in, out := &in.Selectors, &out.Selectors - *out = make([]ResourcePolicyAssignmentResourceSelectorsSelectorsParameters, len(*in)) + *out = make([]ResourcePolicyAssignmentResourceSelectorsSelectorsObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentResourceSelectorsParameters. -func (in *ResourcePolicyAssignmentResourceSelectorsParameters) DeepCopy() *ResourcePolicyAssignmentResourceSelectorsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentResourceSelectorsObservation. +func (in *ResourcePolicyAssignmentResourceSelectorsObservation) DeepCopy() *ResourcePolicyAssignmentResourceSelectorsObservation { + if in == nil { + return nil + } + out := new(ResourcePolicyAssignmentResourceSelectorsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourcePolicyAssignmentResourceSelectorsParameters) DeepCopyInto(out *ResourcePolicyAssignmentResourceSelectorsParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Selectors != nil { + in, out := &in.Selectors, &out.Selectors + *out = make([]ResourcePolicyAssignmentResourceSelectorsSelectorsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentResourceSelectorsParameters. +func (in *ResourcePolicyAssignmentResourceSelectorsParameters) DeepCopy() *ResourcePolicyAssignmentResourceSelectorsParameters { if in == nil { return nil } @@ -1592,6 +2147,48 @@ func (in *ResourcePolicyAssignmentResourceSelectorsParameters) DeepCopy() *Resou return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourcePolicyAssignmentResourceSelectorsSelectorsInitParameters) DeepCopyInto(out *ResourcePolicyAssignmentResourceSelectorsSelectorsInitParameters) { + *out = *in + if in.In != nil { + in, out := &in.In, &out.In + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.NotIn != nil { + in, out := &in.NotIn, &out.NotIn + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentResourceSelectorsSelectorsInitParameters. +func (in *ResourcePolicyAssignmentResourceSelectorsSelectorsInitParameters) DeepCopy() *ResourcePolicyAssignmentResourceSelectorsSelectorsInitParameters { + if in == nil { + return nil + } + out := new(ResourcePolicyAssignmentResourceSelectorsSelectorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourcePolicyAssignmentResourceSelectorsSelectorsObservation) DeepCopyInto(out *ResourcePolicyAssignmentResourceSelectorsSelectorsObservation) { *out = *in @@ -1681,6 +2278,7 @@ func (in *ResourcePolicyAssignmentSpec) DeepCopyInto(out *ResourcePolicyAssignme *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyAssignmentSpec. @@ -1737,6 +2335,62 @@ func (in *ResourcePolicyExemption) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourcePolicyExemptionInitParameters) DeepCopyInto(out *ResourcePolicyExemptionInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.ExemptionCategory != nil { + in, out := &in.ExemptionCategory, &out.ExemptionCategory + *out = new(string) + **out = **in + } + if in.ExpiresOn != nil { + in, out := &in.ExpiresOn, &out.ExpiresOn + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PolicyDefinitionReferenceIds != nil { + in, out := &in.PolicyDefinitionReferenceIds, &out.PolicyDefinitionReferenceIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyExemptionInitParameters. +func (in *ResourcePolicyExemptionInitParameters) DeepCopy() *ResourcePolicyExemptionInitParameters { + if in == nil { + return nil + } + out := new(ResourcePolicyExemptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourcePolicyExemptionList) DeepCopyInto(out *ResourcePolicyExemptionList) { *out = *in @@ -1931,6 +2585,7 @@ func (in *ResourcePolicyExemptionSpec) DeepCopyInto(out *ResourcePolicyExemption *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyExemptionSpec. @@ -1960,6 +2615,33 @@ func (in *ResourcePolicyExemptionStatus) DeepCopy() *ResourcePolicyExemptionStat return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceSelectorsInitParameters) DeepCopyInto(out *ResourceSelectorsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Selectors != nil { + in, out := &in.Selectors, &out.Selectors + *out = make([]ResourceSelectorsSelectorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceSelectorsInitParameters. +func (in *ResourceSelectorsInitParameters) DeepCopy() *ResourceSelectorsInitParameters { + if in == nil { + return nil + } + out := new(ResourceSelectorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceSelectorsObservation) DeepCopyInto(out *ResourceSelectorsObservation) { *out = *in @@ -2014,6 +2696,48 @@ func (in *ResourceSelectorsParameters) DeepCopy() *ResourceSelectorsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceSelectorsSelectorsInitParameters) DeepCopyInto(out *ResourceSelectorsSelectorsInitParameters) { + *out = *in + if in.In != nil { + in, out := &in.In, &out.In + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.NotIn != nil { + in, out := &in.NotIn, &out.NotIn + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceSelectorsSelectorsInitParameters. +func (in *ResourceSelectorsSelectorsInitParameters) DeepCopy() *ResourceSelectorsSelectorsInitParameters { + if in == nil { + return nil + } + out := new(ResourceSelectorsSelectorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceSelectorsSelectorsObservation) DeepCopyInto(out *ResourceSelectorsSelectorsObservation) { *out = *in @@ -2125,6 +2849,66 @@ func (in *RoleAssignment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RoleAssignmentInitParameters) DeepCopyInto(out *RoleAssignmentInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = new(string) + **out = **in + } + if in.ConditionVersion != nil { + in, out := &in.ConditionVersion, &out.ConditionVersion + *out = new(string) + **out = **in + } + if in.DelegatedManagedIdentityResourceID != nil { + in, out := &in.DelegatedManagedIdentityResourceID, &out.DelegatedManagedIdentityResourceID + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID + *out = new(string) + **out = **in + } + if in.RoleDefinitionName != nil { + in, out := &in.RoleDefinitionName, &out.RoleDefinitionName + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.SkipServicePrincipalAADCheck != nil { + in, out := &in.SkipServicePrincipalAADCheck, &out.SkipServicePrincipalAADCheck + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleAssignmentInitParameters. +func (in *RoleAssignmentInitParameters) DeepCopy() *RoleAssignmentInitParameters { + if in == nil { + return nil + } + out := new(RoleAssignmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RoleAssignmentList) DeepCopyInto(out *RoleAssignmentList) { *out = *in @@ -2312,6 +3096,7 @@ func (in *RoleAssignmentSpec) DeepCopyInto(out *RoleAssignmentSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleAssignmentSpec. @@ -2369,23 +3154,76 @@ func (in *RoleDefinition) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RoleDefinitionList) DeepCopyInto(out *RoleDefinitionList) { +func (in *RoleDefinitionInitParameters) DeepCopyInto(out *RoleDefinitionInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]RoleDefinition, len(*in)) + if in.AssignableScopes != nil { + in, out := &in.AssignableScopes, &out.AssignableScopes + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleDefinitionList. -func (in *RoleDefinitionList) DeepCopy() *RoleDefinitionList { - if in == nil { - return nil + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Permissions != nil { + in, out := &in.Permissions, &out.Permissions + *out = make([]PermissionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RoleDefinitionID != nil { + in, out := &in.RoleDefinitionID, &out.RoleDefinitionID + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleDefinitionInitParameters. +func (in *RoleDefinitionInitParameters) DeepCopy() *RoleDefinitionInitParameters { + if in == nil { + return nil + } + out := new(RoleDefinitionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RoleDefinitionList) DeepCopyInto(out *RoleDefinitionList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]RoleDefinition, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleDefinitionList. +func (in *RoleDefinitionList) DeepCopy() *RoleDefinitionList { + if in == nil { + return nil } out := new(RoleDefinitionList) in.DeepCopyInto(out) @@ -2521,6 +3359,7 @@ func (in *RoleDefinitionSpec) DeepCopyInto(out *RoleDefinitionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleDefinitionSpec. @@ -2550,6 +3389,43 @@ func (in *RoleDefinitionStatus) DeepCopy() *RoleDefinitionStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SelectorsInitParameters) DeepCopyInto(out *SelectorsInitParameters) { + *out = *in + if in.In != nil { + in, out := &in.In, &out.In + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NotIn != nil { + in, out := &in.NotIn, &out.NotIn + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelectorsInitParameters. +func (in *SelectorsInitParameters) DeepCopy() *SelectorsInitParameters { + if in == nil { + return nil + } + out := new(SelectorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SelectorsObservation) DeepCopyInto(out *SelectorsObservation) { *out = *in @@ -2656,6 +3532,37 @@ func (in *SubscriptionPolicyAssignment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionPolicyAssignmentIdentityInitParameters) DeepCopyInto(out *SubscriptionPolicyAssignmentIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyAssignmentIdentityInitParameters. +func (in *SubscriptionPolicyAssignmentIdentityInitParameters) DeepCopy() *SubscriptionPolicyAssignmentIdentityInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionPolicyAssignmentIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionPolicyAssignmentIdentityObservation) DeepCopyInto(out *SubscriptionPolicyAssignmentIdentityObservation) { *out = *in @@ -2728,6 +3635,95 @@ func (in *SubscriptionPolicyAssignmentIdentityParameters) DeepCopy() *Subscripti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionPolicyAssignmentInitParameters) DeepCopyInto(out *SubscriptionPolicyAssignmentInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Enforce != nil { + in, out := &in.Enforce, &out.Enforce + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]SubscriptionPolicyAssignmentIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = new(string) + **out = **in + } + if in.NonComplianceMessage != nil { + in, out := &in.NonComplianceMessage, &out.NonComplianceMessage + *out = make([]SubscriptionPolicyAssignmentNonComplianceMessageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NotScopes != nil { + in, out := &in.NotScopes, &out.NotScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Overrides != nil { + in, out := &in.Overrides, &out.Overrides + *out = make([]SubscriptionPolicyAssignmentOverridesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.ResourceSelectors != nil { + in, out := &in.ResourceSelectors, &out.ResourceSelectors + *out = make([]SubscriptionPolicyAssignmentResourceSelectorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyAssignmentInitParameters. +func (in *SubscriptionPolicyAssignmentInitParameters) DeepCopy() *SubscriptionPolicyAssignmentInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionPolicyAssignmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionPolicyAssignmentList) DeepCopyInto(out *SubscriptionPolicyAssignmentList) { *out = *in @@ -2760,6 +3756,31 @@ func (in *SubscriptionPolicyAssignmentList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionPolicyAssignmentNonComplianceMessageInitParameters) DeepCopyInto(out *SubscriptionPolicyAssignmentNonComplianceMessageInitParameters) { + *out = *in + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = new(string) + **out = **in + } + if in.PolicyDefinitionReferenceID != nil { + in, out := &in.PolicyDefinitionReferenceID, &out.PolicyDefinitionReferenceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyAssignmentNonComplianceMessageInitParameters. +func (in *SubscriptionPolicyAssignmentNonComplianceMessageInitParameters) DeepCopy() *SubscriptionPolicyAssignmentNonComplianceMessageInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionPolicyAssignmentNonComplianceMessageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionPolicyAssignmentNonComplianceMessageObservation) DeepCopyInto(out *SubscriptionPolicyAssignmentNonComplianceMessageObservation) { *out = *in @@ -2909,6 +3930,33 @@ func (in *SubscriptionPolicyAssignmentObservation) DeepCopy() *SubscriptionPolic return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionPolicyAssignmentOverridesInitParameters) DeepCopyInto(out *SubscriptionPolicyAssignmentOverridesInitParameters) { + *out = *in + if in.Selectors != nil { + in, out := &in.Selectors, &out.Selectors + *out = make([]SubscriptionPolicyAssignmentOverridesSelectorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyAssignmentOverridesInitParameters. +func (in *SubscriptionPolicyAssignmentOverridesInitParameters) DeepCopy() *SubscriptionPolicyAssignmentOverridesInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionPolicyAssignmentOverridesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionPolicyAssignmentOverridesObservation) DeepCopyInto(out *SubscriptionPolicyAssignmentOverridesObservation) { *out = *in @@ -2963,6 +4011,43 @@ func (in *SubscriptionPolicyAssignmentOverridesParameters) DeepCopy() *Subscript return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionPolicyAssignmentOverridesSelectorsInitParameters) DeepCopyInto(out *SubscriptionPolicyAssignmentOverridesSelectorsInitParameters) { + *out = *in + if in.In != nil { + in, out := &in.In, &out.In + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NotIn != nil { + in, out := &in.NotIn, &out.NotIn + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyAssignmentOverridesSelectorsInitParameters. +func (in *SubscriptionPolicyAssignmentOverridesSelectorsInitParameters) DeepCopy() *SubscriptionPolicyAssignmentOverridesSelectorsInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionPolicyAssignmentOverridesSelectorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionPolicyAssignmentOverridesSelectorsObservation) DeepCopyInto(out *SubscriptionPolicyAssignmentOverridesSelectorsObservation) { *out = *in @@ -3146,6 +4231,33 @@ func (in *SubscriptionPolicyAssignmentParameters) DeepCopy() *SubscriptionPolicy return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionPolicyAssignmentResourceSelectorsInitParameters) DeepCopyInto(out *SubscriptionPolicyAssignmentResourceSelectorsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Selectors != nil { + in, out := &in.Selectors, &out.Selectors + *out = make([]SubscriptionPolicyAssignmentResourceSelectorsSelectorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyAssignmentResourceSelectorsInitParameters. +func (in *SubscriptionPolicyAssignmentResourceSelectorsInitParameters) DeepCopy() *SubscriptionPolicyAssignmentResourceSelectorsInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionPolicyAssignmentResourceSelectorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionPolicyAssignmentResourceSelectorsObservation) DeepCopyInto(out *SubscriptionPolicyAssignmentResourceSelectorsObservation) { *out = *in @@ -3200,6 +4312,48 @@ func (in *SubscriptionPolicyAssignmentResourceSelectorsParameters) DeepCopy() *S return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionPolicyAssignmentResourceSelectorsSelectorsInitParameters) DeepCopyInto(out *SubscriptionPolicyAssignmentResourceSelectorsSelectorsInitParameters) { + *out = *in + if in.In != nil { + in, out := &in.In, &out.In + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.NotIn != nil { + in, out := &in.NotIn, &out.NotIn + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyAssignmentResourceSelectorsSelectorsInitParameters. +func (in *SubscriptionPolicyAssignmentResourceSelectorsSelectorsInitParameters) DeepCopy() *SubscriptionPolicyAssignmentResourceSelectorsSelectorsInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionPolicyAssignmentResourceSelectorsSelectorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionPolicyAssignmentResourceSelectorsSelectorsObservation) DeepCopyInto(out *SubscriptionPolicyAssignmentResourceSelectorsSelectorsObservation) { *out = *in @@ -3289,6 +4443,7 @@ func (in *SubscriptionPolicyAssignmentSpec) DeepCopyInto(out *SubscriptionPolicy *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyAssignmentSpec. @@ -3345,6 +4500,62 @@ func (in *SubscriptionPolicyExemption) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionPolicyExemptionInitParameters) DeepCopyInto(out *SubscriptionPolicyExemptionInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.ExemptionCategory != nil { + in, out := &in.ExemptionCategory, &out.ExemptionCategory + *out = new(string) + **out = **in + } + if in.ExpiresOn != nil { + in, out := &in.ExpiresOn, &out.ExpiresOn + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = new(string) + **out = **in + } + if in.PolicyDefinitionReferenceIds != nil { + in, out := &in.PolicyDefinitionReferenceIds, &out.PolicyDefinitionReferenceIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyExemptionInitParameters. +func (in *SubscriptionPolicyExemptionInitParameters) DeepCopy() *SubscriptionPolicyExemptionInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionPolicyExemptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionPolicyExemptionList) DeepCopyInto(out *SubscriptionPolicyExemptionList) { *out = *in @@ -3519,6 +4730,7 @@ func (in *SubscriptionPolicyExemptionSpec) DeepCopyInto(out *SubscriptionPolicyE *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyExemptionSpec. diff --git a/apis/authorization/v1beta1/zz_generated.managed.go b/apis/authorization/v1beta1/zz_generated.managed.go index 7bd435fe8..5ac298550 100644 --- a/apis/authorization/v1beta1/zz_generated.managed.go +++ b/apis/authorization/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ManagementLock) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagementLock. -func (mg *ManagementLock) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagementLock. +func (mg *ManagementLock) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagementLock. @@ -55,9 +55,9 @@ func (mg *ManagementLock) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagementLock. -func (mg *ManagementLock) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagementLock. +func (mg *ManagementLock) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagementLock. @@ -93,9 +93,9 @@ func (mg *PolicyDefinition) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PolicyDefinition. -func (mg *PolicyDefinition) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PolicyDefinition. +func (mg *PolicyDefinition) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PolicyDefinition. @@ -131,9 +131,9 @@ func (mg *PolicyDefinition) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PolicyDefinition. -func (mg *PolicyDefinition) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PolicyDefinition. +func (mg *PolicyDefinition) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PolicyDefinition. @@ -169,9 +169,9 @@ func (mg *ResourceGroupPolicyAssignment) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourceGroupPolicyAssignment. -func (mg *ResourceGroupPolicyAssignment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourceGroupPolicyAssignment. +func (mg *ResourceGroupPolicyAssignment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourceGroupPolicyAssignment. @@ -207,9 +207,9 @@ func (mg *ResourceGroupPolicyAssignment) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourceGroupPolicyAssignment. -func (mg *ResourceGroupPolicyAssignment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourceGroupPolicyAssignment. +func (mg *ResourceGroupPolicyAssignment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourceGroupPolicyAssignment. @@ -245,9 +245,9 @@ func (mg *ResourcePolicyAssignment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourcePolicyAssignment. -func (mg *ResourcePolicyAssignment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourcePolicyAssignment. +func (mg *ResourcePolicyAssignment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourcePolicyAssignment. @@ -283,9 +283,9 @@ func (mg *ResourcePolicyAssignment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourcePolicyAssignment. -func (mg *ResourcePolicyAssignment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourcePolicyAssignment. +func (mg *ResourcePolicyAssignment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourcePolicyAssignment. @@ -321,9 +321,9 @@ func (mg *ResourcePolicyExemption) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourcePolicyExemption. -func (mg *ResourcePolicyExemption) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourcePolicyExemption. +func (mg *ResourcePolicyExemption) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourcePolicyExemption. @@ -359,9 +359,9 @@ func (mg *ResourcePolicyExemption) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourcePolicyExemption. -func (mg *ResourcePolicyExemption) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourcePolicyExemption. +func (mg *ResourcePolicyExemption) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourcePolicyExemption. @@ -397,9 +397,9 @@ func (mg *RoleAssignment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RoleAssignment. -func (mg *RoleAssignment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RoleAssignment. +func (mg *RoleAssignment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RoleAssignment. @@ -435,9 +435,9 @@ func (mg *RoleAssignment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RoleAssignment. -func (mg *RoleAssignment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RoleAssignment. +func (mg *RoleAssignment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RoleAssignment. @@ -473,9 +473,9 @@ func (mg *RoleDefinition) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RoleDefinition. -func (mg *RoleDefinition) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RoleDefinition. +func (mg *RoleDefinition) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RoleDefinition. @@ -511,9 +511,9 @@ func (mg *RoleDefinition) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RoleDefinition. -func (mg *RoleDefinition) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RoleDefinition. +func (mg *RoleDefinition) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RoleDefinition. @@ -549,9 +549,9 @@ func (mg *SubscriptionPolicyAssignment) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubscriptionPolicyAssignment. -func (mg *SubscriptionPolicyAssignment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubscriptionPolicyAssignment. +func (mg *SubscriptionPolicyAssignment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubscriptionPolicyAssignment. @@ -587,9 +587,9 @@ func (mg *SubscriptionPolicyAssignment) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubscriptionPolicyAssignment. -func (mg *SubscriptionPolicyAssignment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubscriptionPolicyAssignment. +func (mg *SubscriptionPolicyAssignment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubscriptionPolicyAssignment. @@ -625,9 +625,9 @@ func (mg *SubscriptionPolicyExemption) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubscriptionPolicyExemption. -func (mg *SubscriptionPolicyExemption) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubscriptionPolicyExemption. +func (mg *SubscriptionPolicyExemption) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubscriptionPolicyExemption. @@ -663,9 +663,9 @@ func (mg *SubscriptionPolicyExemption) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubscriptionPolicyExemption. -func (mg *SubscriptionPolicyExemption) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubscriptionPolicyExemption. +func (mg *SubscriptionPolicyExemption) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubscriptionPolicyExemption. diff --git a/apis/authorization/v1beta1/zz_generated_terraformed.go b/apis/authorization/v1beta1/zz_generated_terraformed.go index 9f73252f7..f89fdc2e6 100755 --- a/apis/authorization/v1beta1/zz_generated_terraformed.go +++ b/apis/authorization/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ManagementLock) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagementLock +func (tr *ManagementLock) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagementLock using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagementLock) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *PolicyDefinition) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PolicyDefinition +func (tr *PolicyDefinition) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PolicyDefinition using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PolicyDefinition) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *ResourceGroupPolicyAssignment) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourceGroupPolicyAssignment +func (tr *ResourceGroupPolicyAssignment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourceGroupPolicyAssignment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourceGroupPolicyAssignment) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *ResourcePolicyAssignment) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourcePolicyAssignment +func (tr *ResourcePolicyAssignment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourcePolicyAssignment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourcePolicyAssignment) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *ResourcePolicyExemption) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourcePolicyExemption +func (tr *ResourcePolicyExemption) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourcePolicyExemption using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourcePolicyExemption) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *RoleAssignment) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RoleAssignment +func (tr *RoleAssignment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RoleAssignment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RoleAssignment) LateInitialize(attrs []byte) (bool, error) { @@ -514,6 +574,16 @@ func (tr *RoleDefinition) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RoleDefinition +func (tr *RoleDefinition) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RoleDefinition using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RoleDefinition) LateInitialize(attrs []byte) (bool, error) { @@ -588,6 +658,16 @@ func (tr *SubscriptionPolicyAssignment) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubscriptionPolicyAssignment +func (tr *SubscriptionPolicyAssignment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubscriptionPolicyAssignment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubscriptionPolicyAssignment) LateInitialize(attrs []byte) (bool, error) { @@ -662,6 +742,16 @@ func (tr *SubscriptionPolicyExemption) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubscriptionPolicyExemption +func (tr *SubscriptionPolicyExemption) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubscriptionPolicyExemption using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubscriptionPolicyExemption) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/authorization/v1beta1/zz_managementlock_types.go b/apis/authorization/v1beta1/zz_managementlock_types.go index 814b1a1e9..8ab54536b 100755 --- a/apis/authorization/v1beta1/zz_managementlock_types.go +++ b/apis/authorization/v1beta1/zz_managementlock_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagementLockInitParameters struct { + + // Specifies the Level to be used for this Lock. Possible values are CanNotDelete and ReadOnly. Changing this forces a new resource to be created. + LockLevel *string `json:"lockLevel,omitempty" tf:"lock_level,omitempty"` + + // Specifies the name of the Management Lock. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies some notes about the lock. Maximum of 512 characters. Changing this forces a new resource to be created. + Notes *string `json:"notes,omitempty" tf:"notes,omitempty"` +} + type ManagementLockObservation struct { // The ID of the Management Lock @@ -64,6 +76,18 @@ type ManagementLockParameters struct { type ManagementLockSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagementLockParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagementLockInitParameters `json:"initProvider,omitempty"` } // ManagementLockStatus defines the observed state of ManagementLock. @@ -84,8 +108,8 @@ type ManagementLockStatus struct { type ManagementLock struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.lockLevel)",message="lockLevel is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.lockLevel) || has(self.initProvider.lockLevel)",message="lockLevel is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ManagementLockSpec `json:"spec"` Status ManagementLockStatus `json:"status,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_policydefinition_types.go b/apis/authorization/v1beta1/zz_policydefinition_types.go index d56b68a83..53d223ada 100755 --- a/apis/authorization/v1beta1/zz_policydefinition_types.go +++ b/apis/authorization/v1beta1/zz_policydefinition_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PolicyDefinitionInitParameters struct { + + // The description of the policy definition. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The display name of the policy definition. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The id of the Management Group where this policy should be defined. Changing this forces a new resource to be created. + ManagementGroupID *string `json:"managementGroupId,omitempty" tf:"management_group_id,omitempty"` + + // The metadata for the policy definition. This is a JSON string representing additional metadata that should be stored with the policy definition. + Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` + + // The policy resource manager mode that allows you to specify which resource types will be evaluated. Possible values are All, Indexed, Microsoft.ContainerService.Data, Microsoft.CustomerLockbox.Data, Microsoft.DataCatalog.Data, Microsoft.KeyVault.Data, Microsoft.Kubernetes.Data, Microsoft.MachineLearningServices.Data, Microsoft.Network.Data and Microsoft.Synapse.Data. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Parameters for the policy definition. This field is a JSON string that allows you to parameterize your policy definition. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The policy rule for the policy definition. This is a JSON string representing the rule that contains an if and a then block. + PolicyRule *string `json:"policyRule,omitempty" tf:"policy_rule,omitempty"` + + // The policy type. Possible values are BuiltIn, Custom, NotSpecified and Static. Changing this forces a new resource to be created. + PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` +} + type PolicyDefinitionObservation struct { // The description of the policy definition. @@ -85,6 +112,18 @@ type PolicyDefinitionParameters struct { type PolicyDefinitionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PolicyDefinitionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PolicyDefinitionInitParameters `json:"initProvider,omitempty"` } // PolicyDefinitionStatus defines the observed state of PolicyDefinition. @@ -105,9 +144,9 @@ type PolicyDefinitionStatus struct { type PolicyDefinition struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.mode)",message="mode is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policyType)",message="policyType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.mode) || has(self.initProvider.mode)",message="mode is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.policyType) || has(self.initProvider.policyType)",message="policyType is a required parameter" Spec PolicyDefinitionSpec `json:"spec"` Status PolicyDefinitionStatus `json:"status,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_resourcegrouppolicyassignment_types.go b/apis/authorization/v1beta1/zz_resourcegrouppolicyassignment_types.go index c7875bdb8..eefa00a5b 100755 --- a/apis/authorization/v1beta1/zz_resourcegrouppolicyassignment_types.go +++ b/apis/authorization/v1beta1/zz_resourcegrouppolicyassignment_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityInitParameters struct { + + // A list of User Managed Identity IDs which should be assigned to the Policy Definition. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssigned and UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // A list of User Managed Identity IDs which should be assigned to the Policy Definition. @@ -35,8 +44,17 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssigned and UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type NonComplianceMessageInitParameters struct { + + // The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies. + Content *string `json:"content,omitempty" tf:"content,omitempty"` + + // When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to. + PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` } type NonComplianceMessageObservation struct { @@ -51,14 +69,23 @@ type NonComplianceMessageObservation struct { type NonComplianceMessageParameters struct { // The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies. - // +kubebuilder:validation:Required - Content *string `json:"content" tf:"content,omitempty"` + // +kubebuilder:validation:Optional + Content *string `json:"content,omitempty" tf:"content,omitempty"` // When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to. // +kubebuilder:validation:Optional PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` } +type OverridesInitParameters struct { + + // One or more override_selector as defined below. + Selectors []SelectorsInitParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` + + // Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type OverridesObservation struct { // One or more override_selector as defined below. @@ -75,8 +102,44 @@ type OverridesParameters struct { Selectors []SelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` // Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type ResourceGroupPolicyAssignmentInitParameters struct { + + // A description which should be used for this Policy Assignment. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Display Name for this Policy Assignment. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Specifies if this Policy should be enforced or not? Defaults to true. + Enforce *bool `json:"enforce,omitempty" tf:"enforce,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A JSON mapping of any Metadata for this Policy. + Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` + + // One or more non_compliance_message blocks as defined below. + NonComplianceMessage []NonComplianceMessageInitParameters `json:"nonComplianceMessage,omitempty" tf:"non_compliance_message,omitempty"` + + // Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy. + NotScopes []*string `json:"notScopes,omitempty" tf:"not_scopes,omitempty"` + + // One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure + Overrides []OverridesInitParameters `json:"overrides,omitempty" tf:"overrides,omitempty"` + + // A JSON mapping of any Parameters for this Policy. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // One or more resource_selectors blocks as defined below to filter polices by resource properties. + ResourceSelectors []ResourceSelectorsInitParameters `json:"resourceSelectors,omitempty" tf:"resource_selectors,omitempty"` } type ResourceGroupPolicyAssignmentObservation struct { @@ -199,6 +262,15 @@ type ResourceGroupPolicyAssignmentParameters struct { ResourceSelectors []ResourceSelectorsParameters `json:"resourceSelectors,omitempty" tf:"resource_selectors,omitempty"` } +type ResourceSelectorsInitParameters struct { + + // Specifies a name for the resource selector. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more resource_selector block as defined below. + Selectors []ResourceSelectorsSelectorsInitParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` +} + type ResourceSelectorsObservation struct { // Specifies a name for the resource selector. @@ -215,8 +287,20 @@ type ResourceSelectorsParameters struct { Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more resource_selector block as defined below. - // +kubebuilder:validation:Required - Selectors []ResourceSelectorsSelectorsParameters `json:"selectors" tf:"selectors,omitempty"` + // +kubebuilder:validation:Optional + Selectors []ResourceSelectorsSelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` +} + +type ResourceSelectorsSelectorsInitParameters struct { + + // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + In []*string `json:"in,omitempty" tf:"in,omitempty"` + + // Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } type ResourceSelectorsSelectorsObservation struct { @@ -238,14 +322,23 @@ type ResourceSelectorsSelectorsParameters struct { In []*string `json:"in,omitempty" tf:"in,omitempty"` // Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation. - // +kubebuilder:validation:Required - Kind *string `json:"kind" tf:"kind,omitempty"` + // +kubebuilder:validation:Optional + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. // +kubebuilder:validation:Optional NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } +type SelectorsInitParameters struct { + + // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + In []*string `json:"in,omitempty" tf:"in,omitempty"` + + // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` +} + type SelectorsObservation struct { // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. @@ -273,6 +366,18 @@ type SelectorsParameters struct { type ResourceGroupPolicyAssignmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourceGroupPolicyAssignmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourceGroupPolicyAssignmentInitParameters `json:"initProvider,omitempty"` } // ResourceGroupPolicyAssignmentStatus defines the observed state of ResourceGroupPolicyAssignment. diff --git a/apis/authorization/v1beta1/zz_resourcepolicyassignment_types.go b/apis/authorization/v1beta1/zz_resourcepolicyassignment_types.go index c11ad4281..ecd09849d 100755 --- a/apis/authorization/v1beta1/zz_resourcepolicyassignment_types.go +++ b/apis/authorization/v1beta1/zz_resourcepolicyassignment_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OverridesSelectorsInitParameters struct { + + // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + In []*string `json:"in,omitempty" tf:"in,omitempty"` + + // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` +} + type OverridesSelectorsObservation struct { // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. @@ -36,6 +45,15 @@ type OverridesSelectorsParameters struct { NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } +type ResourcePolicyAssignmentIdentityInitParameters struct { + + // A list of User Managed Identity IDs which should be assigned to the Policy Definition. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssigned and UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ResourcePolicyAssignmentIdentityObservation struct { // A list of User Managed Identity IDs which should be assigned to the Policy Definition. @@ -58,8 +76,59 @@ type ResourcePolicyAssignmentIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssigned and UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ResourcePolicyAssignmentInitParameters struct { + + // A description which should be used for this Policy Assignment. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Display Name for this Policy Assignment. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Specifies if this Policy should be enforced or not? Defaults to true. + Enforce *bool `json:"enforce,omitempty" tf:"enforce,omitempty"` + + // An identity block as defined below. + Identity []ResourcePolicyAssignmentIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A JSON mapping of any Metadata for this Policy. + Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` + + // The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more non_compliance_message blocks as defined below. + NonComplianceMessage []ResourcePolicyAssignmentNonComplianceMessageInitParameters `json:"nonComplianceMessage,omitempty" tf:"non_compliance_message,omitempty"` + + // Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy. + NotScopes []*string `json:"notScopes,omitempty" tf:"not_scopes,omitempty"` + + // One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure + Overrides []ResourcePolicyAssignmentOverridesInitParameters `json:"overrides,omitempty" tf:"overrides,omitempty"` + + // A JSON mapping of any Parameters for this Policy. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created. + ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` + + // One or more resource_selectors blocks as defined below to filter polices by resource properties. + ResourceSelectors []ResourcePolicyAssignmentResourceSelectorsInitParameters `json:"resourceSelectors,omitempty" tf:"resource_selectors,omitempty"` +} + +type ResourcePolicyAssignmentNonComplianceMessageInitParameters struct { + + // The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies. + Content *string `json:"content,omitempty" tf:"content,omitempty"` + + // When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to. + PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` } type ResourcePolicyAssignmentNonComplianceMessageObservation struct { @@ -74,8 +143,8 @@ type ResourcePolicyAssignmentNonComplianceMessageObservation struct { type ResourcePolicyAssignmentNonComplianceMessageParameters struct { // The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies. - // +kubebuilder:validation:Required - Content *string `json:"content" tf:"content,omitempty"` + // +kubebuilder:validation:Optional + Content *string `json:"content,omitempty" tf:"content,omitempty"` // When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to. // +kubebuilder:validation:Optional @@ -130,6 +199,15 @@ type ResourcePolicyAssignmentObservation struct { ResourceSelectors []ResourcePolicyAssignmentResourceSelectorsObservation `json:"resourceSelectors,omitempty" tf:"resource_selectors,omitempty"` } +type ResourcePolicyAssignmentOverridesInitParameters struct { + + // One or more override_selector as defined below. + Selectors []OverridesSelectorsInitParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` + + // Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ResourcePolicyAssignmentOverridesObservation struct { // One or more override_selector as defined below. @@ -146,8 +224,8 @@ type ResourcePolicyAssignmentOverridesParameters struct { Selectors []OverridesSelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` // Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type ResourcePolicyAssignmentParameters struct { @@ -219,6 +297,15 @@ type ResourcePolicyAssignmentParameters struct { ResourceSelectors []ResourcePolicyAssignmentResourceSelectorsParameters `json:"resourceSelectors,omitempty" tf:"resource_selectors,omitempty"` } +type ResourcePolicyAssignmentResourceSelectorsInitParameters struct { + + // Specifies a name for the resource selector. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more resource_selector block as defined below. + Selectors []ResourcePolicyAssignmentResourceSelectorsSelectorsInitParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` +} + type ResourcePolicyAssignmentResourceSelectorsObservation struct { // Specifies a name for the resource selector. @@ -235,8 +322,20 @@ type ResourcePolicyAssignmentResourceSelectorsParameters struct { Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more resource_selector block as defined below. - // +kubebuilder:validation:Required - Selectors []ResourcePolicyAssignmentResourceSelectorsSelectorsParameters `json:"selectors" tf:"selectors,omitempty"` + // +kubebuilder:validation:Optional + Selectors []ResourcePolicyAssignmentResourceSelectorsSelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` +} + +type ResourcePolicyAssignmentResourceSelectorsSelectorsInitParameters struct { + + // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + In []*string `json:"in,omitempty" tf:"in,omitempty"` + + // Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } type ResourcePolicyAssignmentResourceSelectorsSelectorsObservation struct { @@ -258,8 +357,8 @@ type ResourcePolicyAssignmentResourceSelectorsSelectorsParameters struct { In []*string `json:"in,omitempty" tf:"in,omitempty"` // Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation. - // +kubebuilder:validation:Required - Kind *string `json:"kind" tf:"kind,omitempty"` + // +kubebuilder:validation:Optional + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. // +kubebuilder:validation:Optional @@ -270,6 +369,18 @@ type ResourcePolicyAssignmentResourceSelectorsSelectorsParameters struct { type ResourcePolicyAssignmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourcePolicyAssignmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourcePolicyAssignmentInitParameters `json:"initProvider,omitempty"` } // ResourcePolicyAssignmentStatus defines the observed state of ResourcePolicyAssignment. @@ -290,8 +401,8 @@ type ResourcePolicyAssignmentStatus struct { type ResourcePolicyAssignment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.resourceId)",message="resourceId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.resourceId) || has(self.initProvider.resourceId)",message="resourceId is a required parameter" Spec ResourcePolicyAssignmentSpec `json:"spec"` Status ResourcePolicyAssignmentStatus `json:"status,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_resourcepolicyexemption_types.go b/apis/authorization/v1beta1/zz_resourcepolicyexemption_types.go index 16d0adbf9..f526eca1d 100755 --- a/apis/authorization/v1beta1/zz_resourcepolicyexemption_types.go +++ b/apis/authorization/v1beta1/zz_resourcepolicyexemption_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ResourcePolicyExemptionInitParameters struct { + + // A description to use for this Policy Exemption. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A friendly display name to use for this Policy Exemption. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The category of this policy exemption. Possible values are Waiver and Mitigated. + ExemptionCategory *string `json:"exemptionCategory,omitempty" tf:"exemption_category,omitempty"` + + // The expiration date and time in UTC ISO 8601 format of this policy exemption. + ExpiresOn *string `json:"expiresOn,omitempty" tf:"expires_on,omitempty"` + + // The metadata for this policy exemption. This is a JSON string representing additional metadata that should be stored with the policy exemption. + Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` + + // The name of the Policy Exemption. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The policy definition reference ID list when the associated policy assignment is an assignment of a policy set definition. + PolicyDefinitionReferenceIds []*string `json:"policyDefinitionReferenceIds,omitempty" tf:"policy_definition_reference_ids,omitempty"` +} + type ResourcePolicyExemptionObservation struct { // A description to use for this Policy Exemption. @@ -109,6 +133,18 @@ type ResourcePolicyExemptionParameters struct { type ResourcePolicyExemptionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourcePolicyExemptionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourcePolicyExemptionInitParameters `json:"initProvider,omitempty"` } // ResourcePolicyExemptionStatus defines the observed state of ResourcePolicyExemption. @@ -129,8 +165,8 @@ type ResourcePolicyExemptionStatus struct { type ResourcePolicyExemption struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exemptionCategory)",message="exemptionCategory is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.exemptionCategory) || has(self.initProvider.exemptionCategory)",message="exemptionCategory is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ResourcePolicyExemptionSpec `json:"spec"` Status ResourcePolicyExemptionStatus `json:"status,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_roleassignment_types.go b/apis/authorization/v1beta1/zz_roleassignment_types.go index 7eedb49b8..d06db1e4b 100755 --- a/apis/authorization/v1beta1/zz_roleassignment_types.go +++ b/apis/authorization/v1beta1/zz_roleassignment_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RoleAssignmentInitParameters struct { + + // The condition that limits the resources that the role can be assigned to. Changing this forces a new resource to be created. + Condition *string `json:"condition,omitempty" tf:"condition,omitempty"` + + // The version of the condition. Possible values are 1.0 or 2.0. Changing this forces a new resource to be created. + ConditionVersion *string `json:"conditionVersion,omitempty" tf:"condition_version,omitempty"` + + // The delegated Azure Resource Id which contains a Managed Identity. Changing this forces a new resource to be created. + DelegatedManagedIdentityResourceID *string `json:"delegatedManagedIdentityResourceId,omitempty" tf:"delegated_managed_identity_resource_id,omitempty"` + + // The description for this Role Assignment. Changing this forces a new resource to be created. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A unique UUID/GUID for this Role Assignment - one will be generated if not specified. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of the Principal (User, Group or Service Principal) to assign the Role Definition to. Changing this forces a new resource to be created. + PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` + + // The name of a built-in Role. Changing this forces a new resource to be created. Conflicts with role_definition_id. + RoleDefinitionName *string `json:"roleDefinitionName,omitempty" tf:"role_definition_name,omitempty"` + + // The scope at which the Role Assignment applies to, such as /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333, /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup, or /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup/providers/Microsoft.Compute/virtualMachines/myVM, or /providers/Microsoft.Management/managementGroups/myMG. Changing this forces a new resource to be created. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + + // If the principal_id is a newly provisioned Service Principal set this value to true to skip the Azure Active Directory check which may fail due to replication lag. This argument is only valid if the principal_id is a Service Principal identity. Defaults to false. + SkipServicePrincipalAADCheck *bool `json:"skipServicePrincipalAadCheck,omitempty" tf:"skip_service_principal_aad_check,omitempty"` +} + type RoleAssignmentObservation struct { // The condition that limits the resources that the role can be assigned to. Changing this forces a new resource to be created. @@ -109,6 +139,18 @@ type RoleAssignmentParameters struct { type RoleAssignmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RoleAssignmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RoleAssignmentInitParameters `json:"initProvider,omitempty"` } // RoleAssignmentStatus defines the observed state of RoleAssignment. @@ -129,8 +171,8 @@ type RoleAssignmentStatus struct { type RoleAssignment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalId)",message="principalId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope)",message="scope is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.principalId) || has(self.initProvider.principalId)",message="principalId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scope) || has(self.initProvider.scope)",message="scope is a required parameter" Spec RoleAssignmentSpec `json:"spec"` Status RoleAssignmentStatus `json:"status,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_roledefinition_types.go b/apis/authorization/v1beta1/zz_roledefinition_types.go index 07ac3fb36..cb0ba45a7 100755 --- a/apis/authorization/v1beta1/zz_roledefinition_types.go +++ b/apis/authorization/v1beta1/zz_roledefinition_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PermissionsInitParameters struct { + + // One or more Allowed Actions, such as *, Microsoft.Resources/subscriptions/resourceGroups/read. See 'Azure Resource Manager resource provider operations' for details. + Actions []*string `json:"actions,omitempty" tf:"actions,omitempty"` + + // One or more Allowed Data Actions, such as *, Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read. See 'Azure Resource Manager resource provider operations' for details. + DataActions []*string `json:"dataActions,omitempty" tf:"data_actions,omitempty"` + + // One or more Disallowed Actions, such as *, Microsoft.Resources/subscriptions/resourceGroups/read. See 'Azure Resource Manager resource provider operations' for details. + NotActions []*string `json:"notActions,omitempty" tf:"not_actions,omitempty"` + + // One or more Disallowed Data Actions, such as *, Microsoft.Resources/subscriptions/resourceGroups/read. See 'Azure Resource Manager resource provider operations' for details. + NotDataActions []*string `json:"notDataActions,omitempty" tf:"not_data_actions,omitempty"` +} + type PermissionsObservation struct { // One or more Allowed Actions, such as *, Microsoft.Resources/subscriptions/resourceGroups/read. See 'Azure Resource Manager resource provider operations' for details. @@ -47,6 +62,27 @@ type PermissionsParameters struct { NotDataActions []*string `json:"notDataActions,omitempty" tf:"not_data_actions,omitempty"` } +type RoleDefinitionInitParameters struct { + + // One or more assignable scopes for this Role Definition, such as /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333, /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup, or /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup/providers/Microsoft.Compute/virtualMachines/myVM. + AssignableScopes []*string `json:"assignableScopes,omitempty" tf:"assignable_scopes,omitempty"` + + // A description of the Role Definition. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the Role Definition. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A permissions block as defined below. + Permissions []PermissionsInitParameters `json:"permissions,omitempty" tf:"permissions,omitempty"` + + // A unique UUID/GUID which identifies this role - one will be generated if not specified. Changing this forces a new resource to be created. + RoleDefinitionID *string `json:"roleDefinitionId,omitempty" tf:"role_definition_id,omitempty"` + + // The scope at which the Role Definition applies to, such as /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333, /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup, or /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup/providers/Microsoft.Compute/virtualMachines/myVM. It is recommended to use the first entry of the assignable_scopes. Changing this forces a new resource to be created. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` +} + type RoleDefinitionObservation struct { // One or more assignable scopes for this Role Definition, such as /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333, /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup, or /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup/providers/Microsoft.Compute/virtualMachines/myVM. @@ -104,6 +140,18 @@ type RoleDefinitionParameters struct { type RoleDefinitionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RoleDefinitionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RoleDefinitionInitParameters `json:"initProvider,omitempty"` } // RoleDefinitionStatus defines the observed state of RoleDefinition. @@ -124,8 +172,8 @@ type RoleDefinitionStatus struct { type RoleDefinition struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope)",message="scope is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scope) || has(self.initProvider.scope)",message="scope is a required parameter" Spec RoleDefinitionSpec `json:"spec"` Status RoleDefinitionStatus `json:"status,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_subscriptionpolicyassignment_types.go b/apis/authorization/v1beta1/zz_subscriptionpolicyassignment_types.go index bb1d898d9..03bb5a5a0 100755 --- a/apis/authorization/v1beta1/zz_subscriptionpolicyassignment_types.go +++ b/apis/authorization/v1beta1/zz_subscriptionpolicyassignment_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubscriptionPolicyAssignmentIdentityInitParameters struct { + + // A list of User Managed Identity IDs which should be assigned to the Policy Definition. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssigned or UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type SubscriptionPolicyAssignmentIdentityObservation struct { // A list of User Managed Identity IDs which should be assigned to the Policy Definition. @@ -35,8 +44,56 @@ type SubscriptionPolicyAssignmentIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssigned or UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type SubscriptionPolicyAssignmentInitParameters struct { + + // A description which should be used for this Policy Assignment. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Display Name for this Policy Assignment. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Specifies if this Policy should be enforced or not? Defaults to true. + Enforce *bool `json:"enforce,omitempty" tf:"enforce,omitempty"` + + // An identity block as defined below. + Identity []SubscriptionPolicyAssignmentIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A JSON mapping of any Metadata for this Policy. + Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` + + // One or more non_compliance_message blocks as defined below. + NonComplianceMessage []SubscriptionPolicyAssignmentNonComplianceMessageInitParameters `json:"nonComplianceMessage,omitempty" tf:"non_compliance_message,omitempty"` + + // Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy. + NotScopes []*string `json:"notScopes,omitempty" tf:"not_scopes,omitempty"` + + // One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure + Overrides []SubscriptionPolicyAssignmentOverridesInitParameters `json:"overrides,omitempty" tf:"overrides,omitempty"` + + // A JSON mapping of any Parameters for this Policy. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // One or more resource_selectors blocks as defined below to filter polices by resource properties. + ResourceSelectors []SubscriptionPolicyAssignmentResourceSelectorsInitParameters `json:"resourceSelectors,omitempty" tf:"resource_selectors,omitempty"` + + // The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new Policy Assignment to be created. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` +} + +type SubscriptionPolicyAssignmentNonComplianceMessageInitParameters struct { + + // The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies. + Content *string `json:"content,omitempty" tf:"content,omitempty"` + + // When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to. + PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` } type SubscriptionPolicyAssignmentNonComplianceMessageObservation struct { @@ -51,8 +108,8 @@ type SubscriptionPolicyAssignmentNonComplianceMessageObservation struct { type SubscriptionPolicyAssignmentNonComplianceMessageParameters struct { // The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies. - // +kubebuilder:validation:Required - Content *string `json:"content" tf:"content,omitempty"` + // +kubebuilder:validation:Optional + Content *string `json:"content,omitempty" tf:"content,omitempty"` // When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to. // +kubebuilder:validation:Optional @@ -104,6 +161,15 @@ type SubscriptionPolicyAssignmentObservation struct { SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` } +type SubscriptionPolicyAssignmentOverridesInitParameters struct { + + // One or more override_selector as defined below. + Selectors []SubscriptionPolicyAssignmentOverridesSelectorsInitParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` + + // Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type SubscriptionPolicyAssignmentOverridesObservation struct { // One or more override_selector as defined below. @@ -120,8 +186,17 @@ type SubscriptionPolicyAssignmentOverridesParameters struct { Selectors []SubscriptionPolicyAssignmentOverridesSelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` // Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type SubscriptionPolicyAssignmentOverridesSelectorsInitParameters struct { + + // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + In []*string `json:"in,omitempty" tf:"in,omitempty"` + + // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } type SubscriptionPolicyAssignmentOverridesSelectorsObservation struct { @@ -212,6 +287,15 @@ type SubscriptionPolicyAssignmentParameters struct { SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` } +type SubscriptionPolicyAssignmentResourceSelectorsInitParameters struct { + + // Specifies a name for the resource selector. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more resource_selector block as defined below. + Selectors []SubscriptionPolicyAssignmentResourceSelectorsSelectorsInitParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` +} + type SubscriptionPolicyAssignmentResourceSelectorsObservation struct { // Specifies a name for the resource selector. @@ -228,8 +312,20 @@ type SubscriptionPolicyAssignmentResourceSelectorsParameters struct { Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more resource_selector block as defined below. - // +kubebuilder:validation:Required - Selectors []SubscriptionPolicyAssignmentResourceSelectorsSelectorsParameters `json:"selectors" tf:"selectors,omitempty"` + // +kubebuilder:validation:Optional + Selectors []SubscriptionPolicyAssignmentResourceSelectorsSelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` +} + +type SubscriptionPolicyAssignmentResourceSelectorsSelectorsInitParameters struct { + + // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + In []*string `json:"in,omitempty" tf:"in,omitempty"` + + // Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } type SubscriptionPolicyAssignmentResourceSelectorsSelectorsObservation struct { @@ -251,8 +347,8 @@ type SubscriptionPolicyAssignmentResourceSelectorsSelectorsParameters struct { In []*string `json:"in,omitempty" tf:"in,omitempty"` // Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation. - // +kubebuilder:validation:Required - Kind *string `json:"kind" tf:"kind,omitempty"` + // +kubebuilder:validation:Optional + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. // +kubebuilder:validation:Optional @@ -263,6 +359,18 @@ type SubscriptionPolicyAssignmentResourceSelectorsSelectorsParameters struct { type SubscriptionPolicyAssignmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubscriptionPolicyAssignmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubscriptionPolicyAssignmentInitParameters `json:"initProvider,omitempty"` } // SubscriptionPolicyAssignmentStatus defines the observed state of SubscriptionPolicyAssignment. @@ -283,7 +391,7 @@ type SubscriptionPolicyAssignmentStatus struct { type SubscriptionPolicyAssignment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId)",message="subscriptionId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subscriptionId) || has(self.initProvider.subscriptionId)",message="subscriptionId is a required parameter" Spec SubscriptionPolicyAssignmentSpec `json:"spec"` Status SubscriptionPolicyAssignmentStatus `json:"status,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_subscriptionpolicyexemption_types.go b/apis/authorization/v1beta1/zz_subscriptionpolicyexemption_types.go index c5553825c..0d45ec104 100755 --- a/apis/authorization/v1beta1/zz_subscriptionpolicyexemption_types.go +++ b/apis/authorization/v1beta1/zz_subscriptionpolicyexemption_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubscriptionPolicyExemptionInitParameters struct { + + // A description to use for this Policy Exemption. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A friendly display name to use for this Policy Exemption. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The category of this policy exemption. Possible values are Waiver and Mitigated. + ExemptionCategory *string `json:"exemptionCategory,omitempty" tf:"exemption_category,omitempty"` + + // The expiration date and time in UTC ISO 8601 format of this policy exemption. + ExpiresOn *string `json:"expiresOn,omitempty" tf:"expires_on,omitempty"` + + // The metadata for this policy exemption. This is a JSON string representing additional metadata that should be stored with the policy exemption. + Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` + + // The policy definition reference ID list when the associated policy assignment is an assignment of a policy set definition. + PolicyDefinitionReferenceIds []*string `json:"policyDefinitionReferenceIds,omitempty" tf:"policy_definition_reference_ids,omitempty"` + + // The Subscription ID where the Policy Exemption should be applied. Changing this forces a new resource to be created. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` +} + type SubscriptionPolicyExemptionObservation struct { // A description to use for this Policy Exemption. @@ -92,6 +116,18 @@ type SubscriptionPolicyExemptionParameters struct { type SubscriptionPolicyExemptionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubscriptionPolicyExemptionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubscriptionPolicyExemptionInitParameters `json:"initProvider,omitempty"` } // SubscriptionPolicyExemptionStatus defines the observed state of SubscriptionPolicyExemption. @@ -112,8 +148,8 @@ type SubscriptionPolicyExemptionStatus struct { type SubscriptionPolicyExemption struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exemptionCategory)",message="exemptionCategory is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId)",message="subscriptionId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.exemptionCategory) || has(self.initProvider.exemptionCategory)",message="exemptionCategory is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subscriptionId) || has(self.initProvider.subscriptionId)",message="subscriptionId is a required parameter" Spec SubscriptionPolicyExemptionSpec `json:"spec"` Status SubscriptionPolicyExemptionStatus `json:"status,omitempty"` } diff --git a/apis/automation/v1beta1/zz_account_types.go b/apis/automation/v1beta1/zz_account_types.go index 32c8527f2..7ecacddca 100755 --- a/apis/automation/v1beta1/zz_account_types.go +++ b/apis/automation/v1beta1/zz_account_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccountInitParameters struct { + + // An encryption block as defined below. + Encryption []EncryptionInitParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Whether requests using non-AAD authentication are blocked. Defaults to true. + LocalAuthenticationEnabled *bool `json:"localAuthenticationEnabled,omitempty" tf:"local_authentication_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether public network access is allowed for the container registry. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // The SKU of the account. Possible values are Basic and Free. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type AccountObservation struct { // The DSC Server Endpoint associated with this Automation Account. @@ -95,6 +119,16 @@ type AccountParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type EncryptionInitParameters struct { + KeySource *string `json:"keySource,omitempty" tf:"key_source,omitempty"` + + // The ID of the Key Vault Key which should be used to Encrypt the data in this Automation Account. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // The User Assigned Managed Identity ID to be used for accessing the Customer Managed Key for encryption. + UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` +} + type EncryptionObservation struct { KeySource *string `json:"keySource,omitempty" tf:"key_source,omitempty"` @@ -111,14 +145,23 @@ type EncryptionParameters struct { KeySource *string `json:"keySource,omitempty" tf:"key_source,omitempty"` // The ID of the Key Vault Key which should be used to Encrypt the data in this Automation Account. - // +kubebuilder:validation:Required - KeyVaultKeyID *string `json:"keyVaultKeyId" tf:"key_vault_key_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // The User Assigned Managed Identity ID to be used for accessing the Customer Managed Key for encryption. // +kubebuilder:validation:Optional UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` } +type IdentityInitParameters struct { + + // The ID of the User Assigned Identity which should be assigned to this Automation Account. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The type of identity used for this Automation Account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // The ID of the User Assigned Identity which should be assigned to this Automation Account. @@ -141,8 +184,11 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of identity used for this Automation Account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type PrivateEndpointConnectionInitParameters struct { } type PrivateEndpointConnectionObservation struct { @@ -161,6 +207,18 @@ type PrivateEndpointConnectionParameters struct { type AccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccountInitParameters `json:"initProvider,omitempty"` } // AccountStatus defines the observed state of Account. @@ -181,8 +239,8 @@ type AccountStatus struct { type Account struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec AccountSpec `json:"spec"` Status AccountStatus `json:"status,omitempty"` } diff --git a/apis/automation/v1beta1/zz_connection_types.go b/apis/automation/v1beta1/zz_connection_types.go index 2dc3d22f3..0a2f1d35e 100755 --- a/apis/automation/v1beta1/zz_connection_types.go +++ b/apis/automation/v1beta1/zz_connection_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConnectionInitParameters struct { + + // A description for this Connection. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The type of the Connection - can be either builtin type such as Azure, AzureClassicCertificate, and AzureServicePrincipal, or a user defined types. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // A mapping of key value pairs passed to the connection. Different type needs different parameters in the values. Builtin types have required field values as below: + Values map[string]*string `json:"values,omitempty" tf:"values,omitempty"` +} + type ConnectionObservation struct { // The name of the automation account in which the Connection is created. Changing this forces a new resource to be created. @@ -79,6 +91,18 @@ type ConnectionParameters struct { type ConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ConnectionInitParameters `json:"initProvider,omitempty"` } // ConnectionStatus defines the observed state of Connection. @@ -99,8 +123,8 @@ type ConnectionStatus struct { type Connection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.values)",message="values is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.values) || has(self.initProvider.values)",message="values is a required parameter" Spec ConnectionSpec `json:"spec"` Status ConnectionStatus `json:"status,omitempty"` } diff --git a/apis/automation/v1beta1/zz_connectionclassiccertificate_types.go b/apis/automation/v1beta1/zz_connectionclassiccertificate_types.go index 244914eca..ed21128d0 100755 --- a/apis/automation/v1beta1/zz_connectionclassiccertificate_types.go +++ b/apis/automation/v1beta1/zz_connectionclassiccertificate_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConnectionClassicCertificateInitParameters struct { + + // The name of the certificate asset. + CertificateAssetName *string `json:"certificateAssetName,omitempty" tf:"certificate_asset_name,omitempty"` + + // A description for this Connection. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The id of subscription. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` + + // The name of subscription. + SubscriptionName *string `json:"subscriptionName,omitempty" tf:"subscription_name,omitempty"` +} + type ConnectionClassicCertificateObservation struct { // The name of the automation account in which the Connection is created. Changing this forces a new resource to be created. @@ -86,6 +101,18 @@ type ConnectionClassicCertificateParameters struct { type ConnectionClassicCertificateSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ConnectionClassicCertificateParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ConnectionClassicCertificateInitParameters `json:"initProvider,omitempty"` } // ConnectionClassicCertificateStatus defines the observed state of ConnectionClassicCertificate. @@ -106,9 +133,9 @@ type ConnectionClassicCertificateStatus struct { type ConnectionClassicCertificate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.certificateAssetName)",message="certificateAssetName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId)",message="subscriptionId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionName)",message="subscriptionName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.certificateAssetName) || has(self.initProvider.certificateAssetName)",message="certificateAssetName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subscriptionId) || has(self.initProvider.subscriptionId)",message="subscriptionId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subscriptionName) || has(self.initProvider.subscriptionName)",message="subscriptionName is a required parameter" Spec ConnectionClassicCertificateSpec `json:"spec"` Status ConnectionClassicCertificateStatus `json:"status,omitempty"` } diff --git a/apis/automation/v1beta1/zz_connectiontype_types.go b/apis/automation/v1beta1/zz_connectiontype_types.go index 882978c0a..d9718ea12 100755 --- a/apis/automation/v1beta1/zz_connectiontype_types.go +++ b/apis/automation/v1beta1/zz_connectiontype_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConnectionTypeInitParameters struct { + + // One or more field blocks as defined below. Changing this forces a new Automation to be created. + Field []FieldInitParameters `json:"field,omitempty" tf:"field,omitempty"` + + // Whether the connection type is global. Changing this forces a new Automation to be created. + IsGlobal *bool `json:"isGlobal,omitempty" tf:"is_global,omitempty"` + + // The name which should be used for this Automation Connection Type. Changing this forces a new Automation to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type ConnectionTypeObservation struct { // The name of the automation account in which the Connection is created. Changing this forces a new resource to be created. @@ -75,6 +87,21 @@ type ConnectionTypeParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` } +type FieldInitParameters struct { + + // Whether to set the isEncrypted flag of the connection field definition. + IsEncrypted *bool `json:"isEncrypted,omitempty" tf:"is_encrypted,omitempty"` + + // Whether to set the isOptional flag of the connection field definition. + IsOptional *bool `json:"isOptional,omitempty" tf:"is_optional,omitempty"` + + // The name which should be used for this connection field definition. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The type of the connection field definition. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type FieldObservation struct { // Whether to set the isEncrypted flag of the connection field definition. @@ -101,18 +128,30 @@ type FieldParameters struct { IsOptional *bool `json:"isOptional,omitempty" tf:"is_optional,omitempty"` // The name which should be used for this connection field definition. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The type of the connection field definition. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // ConnectionTypeSpec defines the desired state of ConnectionType type ConnectionTypeSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ConnectionTypeParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ConnectionTypeInitParameters `json:"initProvider,omitempty"` } // ConnectionTypeStatus defines the observed state of ConnectionType. @@ -133,8 +172,8 @@ type ConnectionTypeStatus struct { type ConnectionType struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.field)",message="field is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.field) || has(self.initProvider.field)",message="field is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ConnectionTypeSpec `json:"spec"` Status ConnectionTypeStatus `json:"status,omitempty"` } diff --git a/apis/automation/v1beta1/zz_credential_types.go b/apis/automation/v1beta1/zz_credential_types.go index 6bcecdc37..a32bbbf5d 100755 --- a/apis/automation/v1beta1/zz_credential_types.go +++ b/apis/automation/v1beta1/zz_credential_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CredentialInitParameters struct { + + // The description associated with this Automation Credential. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The username associated with this Automation Credential. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type CredentialObservation struct { // The name of the automation account in which the Credential is created. Changing this forces a new resource to be created. @@ -76,6 +85,18 @@ type CredentialParameters struct { type CredentialSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CredentialParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CredentialInitParameters `json:"initProvider,omitempty"` } // CredentialStatus defines the observed state of Credential. @@ -96,8 +117,8 @@ type CredentialStatus struct { type Credential struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username)",message="username is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.username) || has(self.initProvider.username)",message="username is a required parameter" Spec CredentialSpec `json:"spec"` Status CredentialStatus `json:"status,omitempty"` } diff --git a/apis/automation/v1beta1/zz_generated.deepcopy.go b/apis/automation/v1beta1/zz_generated.deepcopy.go index d7817d591..67bcc942d 100644 --- a/apis/automation/v1beta1/zz_generated.deepcopy.go +++ b/apis/automation/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,70 @@ func (in *Account) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountInitParameters) DeepCopyInto(out *AccountInitParameters) { + *out = *in + if in.Encryption != nil { + in, out := &in.Encryption, &out.Encryption + *out = make([]EncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAuthenticationEnabled != nil { + in, out := &in.LocalAuthenticationEnabled, &out.LocalAuthenticationEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountInitParameters. +func (in *AccountInitParameters) DeepCopy() *AccountInitParameters { + if in == nil { + return nil + } + out := new(AccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountList) DeepCopyInto(out *AccountList) { *out = *in @@ -248,6 +312,7 @@ func (in *AccountSpec) DeepCopyInto(out *AccountSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountSpec. @@ -331,6 +396,41 @@ func (in *ConnectionClassicCertificate) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConnectionClassicCertificateInitParameters) DeepCopyInto(out *ConnectionClassicCertificateInitParameters) { + *out = *in + if in.CertificateAssetName != nil { + in, out := &in.CertificateAssetName, &out.CertificateAssetName + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } + if in.SubscriptionName != nil { + in, out := &in.SubscriptionName, &out.SubscriptionName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionClassicCertificateInitParameters. +func (in *ConnectionClassicCertificateInitParameters) DeepCopy() *ConnectionClassicCertificateInitParameters { + if in == nil { + return nil + } + out := new(ConnectionClassicCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConnectionClassicCertificateList) DeepCopyInto(out *ConnectionClassicCertificateList) { *out = *in @@ -483,6 +583,7 @@ func (in *ConnectionClassicCertificateSpec) DeepCopyInto(out *ConnectionClassicC *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionClassicCertificateSpec. @@ -512,6 +613,46 @@ func (in *ConnectionClassicCertificateStatus) DeepCopy() *ConnectionClassicCerti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConnectionInitParameters) DeepCopyInto(out *ConnectionInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionInitParameters. +func (in *ConnectionInitParameters) DeepCopy() *ConnectionInitParameters { + if in == nil { + return nil + } + out := new(ConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConnectionList) DeepCopyInto(out *ConnectionList) { *out = *in @@ -674,6 +815,7 @@ func (in *ConnectionSpec) DeepCopyInto(out *ConnectionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionSpec. @@ -730,6 +872,38 @@ func (in *ConnectionType) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConnectionTypeInitParameters) DeepCopyInto(out *ConnectionTypeInitParameters) { + *out = *in + if in.Field != nil { + in, out := &in.Field, &out.Field + *out = make([]FieldInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IsGlobal != nil { + in, out := &in.IsGlobal, &out.IsGlobal + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionTypeInitParameters. +func (in *ConnectionTypeInitParameters) DeepCopy() *ConnectionTypeInitParameters { + if in == nil { + return nil + } + out := new(ConnectionTypeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConnectionTypeList) DeepCopyInto(out *ConnectionTypeList) { *out = *in @@ -876,6 +1050,7 @@ func (in *ConnectionTypeSpec) DeepCopyInto(out *ConnectionTypeSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionTypeSpec. @@ -905,6 +1080,31 @@ func (in *ConnectionTypeStatus) DeepCopy() *ConnectionTypeStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContentLinkHashInitParameters) DeepCopyInto(out *ContentLinkHashInitParameters) { + *out = *in + if in.Algorithm != nil { + in, out := &in.Algorithm, &out.Algorithm + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContentLinkHashInitParameters. +func (in *ContentLinkHashInitParameters) DeepCopy() *ContentLinkHashInitParameters { + if in == nil { + return nil + } + out := new(ContentLinkHashInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContentLinkHashObservation) DeepCopyInto(out *ContentLinkHashObservation) { *out = *in @@ -955,6 +1155,38 @@ func (in *ContentLinkHashParameters) DeepCopy() *ContentLinkHashParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContentLinkInitParameters) DeepCopyInto(out *ContentLinkInitParameters) { + *out = *in + if in.Hash != nil { + in, out := &in.Hash, &out.Hash + *out = make([]ContentLinkHashInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContentLinkInitParameters. +func (in *ContentLinkInitParameters) DeepCopy() *ContentLinkInitParameters { + if in == nil { + return nil + } + out := new(ContentLinkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContentLinkObservation) DeepCopyInto(out *ContentLinkObservation) { *out = *in @@ -1046,6 +1278,31 @@ func (in *Credential) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CredentialInitParameters) DeepCopyInto(out *CredentialInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialInitParameters. +func (in *CredentialInitParameters) DeepCopy() *CredentialInitParameters { + if in == nil { + return nil + } + out := new(CredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CredentialList) DeepCopyInto(out *CredentialList) { *out = *in @@ -1179,6 +1436,7 @@ func (in *CredentialSpec) DeepCopyInto(out *CredentialSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialSpec. @@ -1209,30 +1467,20 @@ func (in *CredentialStatus) DeepCopy() *CredentialStatus { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DraftObservation) DeepCopyInto(out *DraftObservation) { +func (in *DraftInitParameters) DeepCopyInto(out *DraftInitParameters) { *out = *in if in.ContentLink != nil { in, out := &in.ContentLink, &out.ContentLink - *out = make([]ContentLinkObservation, len(*in)) + *out = make([]ContentLinkInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.CreationTime != nil { - in, out := &in.CreationTime, &out.CreationTime - *out = new(string) - **out = **in - } if in.EditModeEnabled != nil { in, out := &in.EditModeEnabled, &out.EditModeEnabled *out = new(bool) **out = **in } - if in.LastModifiedTime != nil { - in, out := &in.LastModifiedTime, &out.LastModifiedTime - *out = new(string) - **out = **in - } if in.OutputTypes != nil { in, out := &in.OutputTypes, &out.OutputTypes *out = make([]*string, len(*in)) @@ -1246,38 +1494,48 @@ func (in *DraftObservation) DeepCopyInto(out *DraftObservation) { } if in.Parameters != nil { in, out := &in.Parameters, &out.Parameters - *out = make([]ParametersObservation, len(*in)) + *out = make([]ParametersInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DraftObservation. -func (in *DraftObservation) DeepCopy() *DraftObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DraftInitParameters. +func (in *DraftInitParameters) DeepCopy() *DraftInitParameters { if in == nil { return nil } - out := new(DraftObservation) + out := new(DraftInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DraftParameters) DeepCopyInto(out *DraftParameters) { +func (in *DraftObservation) DeepCopyInto(out *DraftObservation) { *out = *in if in.ContentLink != nil { in, out := &in.ContentLink, &out.ContentLink - *out = make([]ContentLinkParameters, len(*in)) + *out = make([]ContentLinkObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.CreationTime != nil { + in, out := &in.CreationTime, &out.CreationTime + *out = new(string) + **out = **in + } if in.EditModeEnabled != nil { in, out := &in.EditModeEnabled, &out.EditModeEnabled *out = new(bool) **out = **in } + if in.LastModifiedTime != nil { + in, out := &in.LastModifiedTime, &out.LastModifiedTime + *out = new(string) + **out = **in + } if in.OutputTypes != nil { in, out := &in.OutputTypes, &out.OutputTypes *out = make([]*string, len(*in)) @@ -1291,16 +1549,61 @@ func (in *DraftParameters) DeepCopyInto(out *DraftParameters) { } if in.Parameters != nil { in, out := &in.Parameters, &out.Parameters - *out = make([]ParametersParameters, len(*in)) + *out = make([]ParametersObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DraftParameters. -func (in *DraftParameters) DeepCopy() *DraftParameters { - if in == nil { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DraftObservation. +func (in *DraftObservation) DeepCopy() *DraftObservation { + if in == nil { + return nil + } + out := new(DraftObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DraftParameters) DeepCopyInto(out *DraftParameters) { + *out = *in + if in.ContentLink != nil { + in, out := &in.ContentLink, &out.ContentLink + *out = make([]ContentLinkParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EditModeEnabled != nil { + in, out := &in.EditModeEnabled, &out.EditModeEnabled + *out = new(bool) + **out = **in + } + if in.OutputTypes != nil { + in, out := &in.OutputTypes, &out.OutputTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make([]ParametersParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DraftParameters. +func (in *DraftParameters) DeepCopy() *DraftParameters { + if in == nil { return nil } out := new(DraftParameters) @@ -1308,6 +1611,36 @@ func (in *DraftParameters) DeepCopy() *DraftParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncryptionInitParameters) DeepCopyInto(out *EncryptionInitParameters) { + *out = *in + if in.KeySource != nil { + in, out := &in.KeySource, &out.KeySource + *out = new(string) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.UserAssignedIdentityID != nil { + in, out := &in.UserAssignedIdentityID, &out.UserAssignedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionInitParameters. +func (in *EncryptionInitParameters) DeepCopy() *EncryptionInitParameters { + if in == nil { + return nil + } + out := new(EncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EncryptionObservation) DeepCopyInto(out *EncryptionObservation) { *out = *in @@ -1368,6 +1701,41 @@ func (in *EncryptionParameters) DeepCopy() *EncryptionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FieldInitParameters) DeepCopyInto(out *FieldInitParameters) { + *out = *in + if in.IsEncrypted != nil { + in, out := &in.IsEncrypted, &out.IsEncrypted + *out = new(bool) + **out = **in + } + if in.IsOptional != nil { + in, out := &in.IsOptional, &out.IsOptional + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FieldInitParameters. +func (in *FieldInitParameters) DeepCopy() *FieldInitParameters { + if in == nil { + return nil + } + out := new(FieldInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FieldObservation) DeepCopyInto(out *FieldObservation) { *out = *in @@ -1438,6 +1806,31 @@ func (in *FieldParameters) DeepCopy() *FieldParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HashInitParameters) DeepCopyInto(out *HashInitParameters) { + *out = *in + if in.Algorithm != nil { + in, out := &in.Algorithm, &out.Algorithm + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HashInitParameters. +func (in *HashInitParameters) DeepCopy() *HashInitParameters { + if in == nil { + return nil + } + out := new(HashInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HashObservation) DeepCopyInto(out *HashObservation) { *out = *in @@ -1515,6 +1908,36 @@ func (in *HybridRunBookWorkerGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HybridRunBookWorkerGroupInitParameters) DeepCopyInto(out *HybridRunBookWorkerGroupInitParameters) { + *out = *in + if in.AutomationAccountName != nil { + in, out := &in.AutomationAccountName, &out.AutomationAccountName + *out = new(string) + **out = **in + } + if in.CredentialName != nil { + in, out := &in.CredentialName, &out.CredentialName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HybridRunBookWorkerGroupInitParameters. +func (in *HybridRunBookWorkerGroupInitParameters) DeepCopy() *HybridRunBookWorkerGroupInitParameters { + if in == nil { + return nil + } + out := new(HybridRunBookWorkerGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HybridRunBookWorkerGroupList) DeepCopyInto(out *HybridRunBookWorkerGroupList) { *out = *in @@ -1637,6 +2060,7 @@ func (in *HybridRunBookWorkerGroupSpec) DeepCopyInto(out *HybridRunBookWorkerGro *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HybridRunBookWorkerGroupSpec. @@ -1666,6 +2090,37 @@ func (in *HybridRunBookWorkerGroupStatus) DeepCopy() *HybridRunBookWorkerGroupSt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -1738,6 +2193,51 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *JobScheduleInitParameters) DeepCopyInto(out *JobScheduleInitParameters) { + *out = *in + if in.JobScheduleID != nil { + in, out := &in.JobScheduleID, &out.JobScheduleID + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.RunOn != nil { + in, out := &in.RunOn, &out.RunOn + *out = new(string) + **out = **in + } + if in.ScheduleName != nil { + in, out := &in.ScheduleName, &out.ScheduleName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobScheduleInitParameters. +func (in *JobScheduleInitParameters) DeepCopy() *JobScheduleInitParameters { + if in == nil { + return nil + } + out := new(JobScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *JobScheduleObservation) DeepCopyInto(out *JobScheduleObservation) { *out = *in @@ -1855,6 +2355,55 @@ func (in *Module) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ModuleInitParameters) DeepCopyInto(out *ModuleInitParameters) { + *out = *in + if in.ModuleLink != nil { + in, out := &in.ModuleLink, &out.ModuleLink + *out = make([]ModuleLinkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleInitParameters. +func (in *ModuleInitParameters) DeepCopy() *ModuleInitParameters { + if in == nil { + return nil + } + out := new(ModuleInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ModuleLinkInitParameters) DeepCopyInto(out *ModuleLinkInitParameters) { + *out = *in + if in.Hash != nil { + in, out := &in.Hash, &out.Hash + *out = make([]HashInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleLinkInitParameters. +func (in *ModuleLinkInitParameters) DeepCopy() *ModuleLinkInitParameters { + if in == nil { + return nil + } + out := new(ModuleLinkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ModuleLinkObservation) DeepCopyInto(out *ModuleLinkObservation) { *out = *in @@ -2035,6 +2584,7 @@ func (in *ModuleSpec) DeepCopyInto(out *ModuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleSpec. @@ -2064,6 +2614,31 @@ func (in *ModuleStatus) DeepCopy() *ModuleStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonthlyOccurrenceInitParameters) DeepCopyInto(out *MonthlyOccurrenceInitParameters) { + *out = *in + if in.Day != nil { + in, out := &in.Day, &out.Day + *out = new(string) + **out = **in + } + if in.Occurrence != nil { + in, out := &in.Occurrence, &out.Occurrence + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonthlyOccurrenceInitParameters. +func (in *MonthlyOccurrenceInitParameters) DeepCopy() *MonthlyOccurrenceInitParameters { + if in == nil { + return nil + } + out := new(MonthlyOccurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonthlyOccurrenceObservation) DeepCopyInto(out *MonthlyOccurrenceObservation) { *out = *in @@ -2114,6 +2689,46 @@ func (in *MonthlyOccurrenceParameters) DeepCopy() *MonthlyOccurrenceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ParametersInitParameters) DeepCopyInto(out *ParametersInitParameters) { + *out = *in + if in.DefaultValue != nil { + in, out := &in.DefaultValue, &out.DefaultValue + *out = new(string) + **out = **in + } + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Mandatory != nil { + in, out := &in.Mandatory, &out.Mandatory + *out = new(bool) + **out = **in + } + if in.Position != nil { + in, out := &in.Position, &out.Position + *out = new(float64) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParametersInitParameters. +func (in *ParametersInitParameters) DeepCopy() *ParametersInitParameters { + if in == nil { + return nil + } + out := new(ParametersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ParametersObservation) DeepCopyInto(out *ParametersObservation) { *out = *in @@ -2194,6 +2809,21 @@ func (in *ParametersParameters) DeepCopy() *ParametersParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointConnectionInitParameters) DeepCopyInto(out *PrivateEndpointConnectionInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointConnectionInitParameters. +func (in *PrivateEndpointConnectionInitParameters) DeepCopy() *PrivateEndpointConnectionInitParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateEndpointConnectionObservation) DeepCopyInto(out *PrivateEndpointConnectionObservation) { *out = *in @@ -2234,6 +2864,31 @@ func (in *PrivateEndpointConnectionParameters) DeepCopy() *PrivateEndpointConnec return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PublishContentLinkHashInitParameters) DeepCopyInto(out *PublishContentLinkHashInitParameters) { + *out = *in + if in.Algorithm != nil { + in, out := &in.Algorithm, &out.Algorithm + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublishContentLinkHashInitParameters. +func (in *PublishContentLinkHashInitParameters) DeepCopy() *PublishContentLinkHashInitParameters { + if in == nil { + return nil + } + out := new(PublishContentLinkHashInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PublishContentLinkHashObservation) DeepCopyInto(out *PublishContentLinkHashObservation) { *out = *in @@ -2284,6 +2939,38 @@ func (in *PublishContentLinkHashParameters) DeepCopy() *PublishContentLinkHashPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PublishContentLinkInitParameters) DeepCopyInto(out *PublishContentLinkInitParameters) { + *out = *in + if in.Hash != nil { + in, out := &in.Hash, &out.Hash + *out = make([]PublishContentLinkHashInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublishContentLinkInitParameters. +func (in *PublishContentLinkInitParameters) DeepCopy() *PublishContentLinkInitParameters { + if in == nil { + return nil + } + out := new(PublishContentLinkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PublishContentLinkObservation) DeepCopyInto(out *PublishContentLinkObservation) { *out = *in @@ -2343,38 +3030,129 @@ func (in *PublishContentLinkParameters) DeepCopy() *PublishContentLinkParameters if in == nil { return nil } - out := new(PublishContentLinkParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RunBook) DeepCopyInto(out *RunBook) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + out := new(PublishContentLinkParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RunBook) DeepCopyInto(out *RunBook) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunBook. +func (in *RunBook) DeepCopy() *RunBook { + if in == nil { + return nil + } + out := new(RunBook) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *RunBook) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RunBookInitParameters) DeepCopyInto(out *RunBookInitParameters) { + *out = *in + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Draft != nil { + in, out := &in.Draft, &out.Draft + *out = make([]DraftInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.JobSchedule != nil { + in, out := &in.JobSchedule, &out.JobSchedule + *out = make([]JobScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.LogActivityTraceLevel != nil { + in, out := &in.LogActivityTraceLevel, &out.LogActivityTraceLevel + *out = new(float64) + **out = **in + } + if in.LogProgress != nil { + in, out := &in.LogProgress, &out.LogProgress + *out = new(bool) + **out = **in + } + if in.LogVerbose != nil { + in, out := &in.LogVerbose, &out.LogVerbose + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublishContentLink != nil { + in, out := &in.PublishContentLink, &out.PublishContentLink + *out = make([]PublishContentLinkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RunBookType != nil { + in, out := &in.RunBookType, &out.RunBookType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunBook. -func (in *RunBook) DeepCopy() *RunBook { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunBookInitParameters. +func (in *RunBookInitParameters) DeepCopy() *RunBookInitParameters { if in == nil { return nil } - out := new(RunBook) + out := new(RunBookInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *RunBook) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RunBookList) DeepCopyInto(out *RunBookList) { *out = *in @@ -2639,6 +3417,7 @@ func (in *RunBookSpec) DeepCopyInto(out *RunBookSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunBookSpec. @@ -2695,6 +3474,80 @@ func (in *Schedule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScheduleInitParameters) DeepCopyInto(out *ScheduleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ExpiryTime != nil { + in, out := &in.ExpiryTime, &out.ExpiryTime + *out = new(string) + **out = **in + } + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(string) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(float64) + **out = **in + } + if in.MonthDays != nil { + in, out := &in.MonthDays, &out.MonthDays + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.MonthlyOccurrence != nil { + in, out := &in.MonthlyOccurrence, &out.MonthlyOccurrence + *out = make([]MonthlyOccurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } + if in.WeekDays != nil { + in, out := &in.WeekDays, &out.WeekDays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleInitParameters. +func (in *ScheduleInitParameters) DeepCopy() *ScheduleInitParameters { + if in == nil { + return nil + } + out := new(ScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScheduleList) DeepCopyInto(out *ScheduleList) { *out = *in @@ -2925,6 +3778,7 @@ func (in *ScheduleSpec) DeepCopyInto(out *ScheduleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleSpec. @@ -2981,6 +3835,36 @@ func (in *VariableBool) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VariableBoolInitParameters) DeepCopyInto(out *VariableBoolInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Encrypted != nil { + in, out := &in.Encrypted, &out.Encrypted + *out = new(bool) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VariableBoolInitParameters. +func (in *VariableBoolInitParameters) DeepCopy() *VariableBoolInitParameters { + if in == nil { + return nil + } + out := new(VariableBoolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VariableBoolList) DeepCopyInto(out *VariableBoolList) { *out = *in @@ -3123,6 +4007,7 @@ func (in *VariableBoolSpec) DeepCopyInto(out *VariableBoolSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VariableBoolSpec. @@ -3179,6 +4064,36 @@ func (in *VariableDateTime) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VariableDateTimeInitParameters) DeepCopyInto(out *VariableDateTimeInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Encrypted != nil { + in, out := &in.Encrypted, &out.Encrypted + *out = new(bool) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VariableDateTimeInitParameters. +func (in *VariableDateTimeInitParameters) DeepCopy() *VariableDateTimeInitParameters { + if in == nil { + return nil + } + out := new(VariableDateTimeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VariableDateTimeList) DeepCopyInto(out *VariableDateTimeList) { *out = *in @@ -3321,6 +4236,7 @@ func (in *VariableDateTimeSpec) DeepCopyInto(out *VariableDateTimeSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VariableDateTimeSpec. @@ -3377,6 +4293,36 @@ func (in *VariableInt) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VariableIntInitParameters) DeepCopyInto(out *VariableIntInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Encrypted != nil { + in, out := &in.Encrypted, &out.Encrypted + *out = new(bool) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VariableIntInitParameters. +func (in *VariableIntInitParameters) DeepCopy() *VariableIntInitParameters { + if in == nil { + return nil + } + out := new(VariableIntInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VariableIntList) DeepCopyInto(out *VariableIntList) { *out = *in @@ -3519,6 +4465,7 @@ func (in *VariableIntSpec) DeepCopyInto(out *VariableIntSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VariableIntSpec. @@ -3575,6 +4522,36 @@ func (in *VariableString) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VariableStringInitParameters) DeepCopyInto(out *VariableStringInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Encrypted != nil { + in, out := &in.Encrypted, &out.Encrypted + *out = new(bool) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VariableStringInitParameters. +func (in *VariableStringInitParameters) DeepCopy() *VariableStringInitParameters { + if in == nil { + return nil + } + out := new(VariableStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VariableStringList) DeepCopyInto(out *VariableStringList) { *out = *in @@ -3717,6 +4694,7 @@ func (in *VariableStringSpec) DeepCopyInto(out *VariableStringSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VariableStringSpec. @@ -3773,6 +4751,56 @@ func (in *Webhook) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebhookInitParameters) DeepCopyInto(out *WebhookInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ExpiryTime != nil { + in, out := &in.ExpiryTime, &out.ExpiryTime + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.RunOnWorkerGroup != nil { + in, out := &in.RunOnWorkerGroup, &out.RunOnWorkerGroup + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookInitParameters. +func (in *WebhookInitParameters) DeepCopy() *WebhookInitParameters { + if in == nil { + return nil + } + out := new(WebhookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebhookList) DeepCopyInto(out *WebhookList) { *out = *in @@ -3980,6 +5008,7 @@ func (in *WebhookSpec) DeepCopyInto(out *WebhookSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookSpec. diff --git a/apis/automation/v1beta1/zz_generated.managed.go b/apis/automation/v1beta1/zz_generated.managed.go index b49265462..77d781cb2 100644 --- a/apis/automation/v1beta1/zz_generated.managed.go +++ b/apis/automation/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Account) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Account. -func (mg *Account) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Account. +func (mg *Account) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Account. @@ -55,9 +55,9 @@ func (mg *Account) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Account. -func (mg *Account) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Account. +func (mg *Account) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Account. @@ -93,9 +93,9 @@ func (mg *Connection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Connection. -func (mg *Connection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Connection. +func (mg *Connection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Connection. @@ -131,9 +131,9 @@ func (mg *Connection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Connection. -func (mg *Connection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Connection. +func (mg *Connection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Connection. @@ -169,9 +169,9 @@ func (mg *ConnectionClassicCertificate) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ConnectionClassicCertificate. -func (mg *ConnectionClassicCertificate) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ConnectionClassicCertificate. +func (mg *ConnectionClassicCertificate) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ConnectionClassicCertificate. @@ -207,9 +207,9 @@ func (mg *ConnectionClassicCertificate) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ConnectionClassicCertificate. -func (mg *ConnectionClassicCertificate) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ConnectionClassicCertificate. +func (mg *ConnectionClassicCertificate) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ConnectionClassicCertificate. @@ -245,9 +245,9 @@ func (mg *ConnectionType) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ConnectionType. -func (mg *ConnectionType) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ConnectionType. +func (mg *ConnectionType) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ConnectionType. @@ -283,9 +283,9 @@ func (mg *ConnectionType) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ConnectionType. -func (mg *ConnectionType) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ConnectionType. +func (mg *ConnectionType) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ConnectionType. @@ -321,9 +321,9 @@ func (mg *Credential) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Credential. -func (mg *Credential) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Credential. +func (mg *Credential) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Credential. @@ -359,9 +359,9 @@ func (mg *Credential) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Credential. -func (mg *Credential) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Credential. +func (mg *Credential) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Credential. @@ -397,9 +397,9 @@ func (mg *HybridRunBookWorkerGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HybridRunBookWorkerGroup. -func (mg *HybridRunBookWorkerGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HybridRunBookWorkerGroup. +func (mg *HybridRunBookWorkerGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HybridRunBookWorkerGroup. @@ -435,9 +435,9 @@ func (mg *HybridRunBookWorkerGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HybridRunBookWorkerGroup. -func (mg *HybridRunBookWorkerGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HybridRunBookWorkerGroup. +func (mg *HybridRunBookWorkerGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HybridRunBookWorkerGroup. @@ -473,9 +473,9 @@ func (mg *Module) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Module. -func (mg *Module) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Module. +func (mg *Module) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Module. @@ -511,9 +511,9 @@ func (mg *Module) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Module. -func (mg *Module) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Module. +func (mg *Module) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Module. @@ -549,9 +549,9 @@ func (mg *RunBook) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RunBook. -func (mg *RunBook) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RunBook. +func (mg *RunBook) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RunBook. @@ -587,9 +587,9 @@ func (mg *RunBook) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RunBook. -func (mg *RunBook) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RunBook. +func (mg *RunBook) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RunBook. @@ -625,9 +625,9 @@ func (mg *Schedule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Schedule. -func (mg *Schedule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Schedule. +func (mg *Schedule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Schedule. @@ -663,9 +663,9 @@ func (mg *Schedule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Schedule. -func (mg *Schedule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Schedule. +func (mg *Schedule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Schedule. @@ -701,9 +701,9 @@ func (mg *VariableBool) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VariableBool. -func (mg *VariableBool) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VariableBool. +func (mg *VariableBool) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VariableBool. @@ -739,9 +739,9 @@ func (mg *VariableBool) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VariableBool. -func (mg *VariableBool) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VariableBool. +func (mg *VariableBool) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VariableBool. @@ -777,9 +777,9 @@ func (mg *VariableDateTime) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VariableDateTime. -func (mg *VariableDateTime) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VariableDateTime. +func (mg *VariableDateTime) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VariableDateTime. @@ -815,9 +815,9 @@ func (mg *VariableDateTime) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VariableDateTime. -func (mg *VariableDateTime) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VariableDateTime. +func (mg *VariableDateTime) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VariableDateTime. @@ -853,9 +853,9 @@ func (mg *VariableInt) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VariableInt. -func (mg *VariableInt) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VariableInt. +func (mg *VariableInt) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VariableInt. @@ -891,9 +891,9 @@ func (mg *VariableInt) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VariableInt. -func (mg *VariableInt) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VariableInt. +func (mg *VariableInt) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VariableInt. @@ -929,9 +929,9 @@ func (mg *VariableString) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VariableString. -func (mg *VariableString) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VariableString. +func (mg *VariableString) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VariableString. @@ -967,9 +967,9 @@ func (mg *VariableString) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VariableString. -func (mg *VariableString) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VariableString. +func (mg *VariableString) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VariableString. @@ -1005,9 +1005,9 @@ func (mg *Webhook) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Webhook. -func (mg *Webhook) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Webhook. +func (mg *Webhook) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Webhook. @@ -1043,9 +1043,9 @@ func (mg *Webhook) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Webhook. -func (mg *Webhook) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Webhook. +func (mg *Webhook) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Webhook. diff --git a/apis/automation/v1beta1/zz_generated_terraformed.go b/apis/automation/v1beta1/zz_generated_terraformed.go index 4d1fbeba6..094f38dca 100755 --- a/apis/automation/v1beta1/zz_generated_terraformed.go +++ b/apis/automation/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Account) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Account +func (tr *Account) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Account using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Account) LateInitialize(attrs []byte) (bool, error) { @@ -144,6 +154,16 @@ func (tr *Connection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Connection +func (tr *Connection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Connection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Connection) LateInitialize(attrs []byte) (bool, error) { @@ -218,6 +238,16 @@ func (tr *ConnectionClassicCertificate) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ConnectionClassicCertificate +func (tr *ConnectionClassicCertificate) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ConnectionClassicCertificate using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ConnectionClassicCertificate) LateInitialize(attrs []byte) (bool, error) { @@ -292,6 +322,16 @@ func (tr *ConnectionType) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ConnectionType +func (tr *ConnectionType) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ConnectionType using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ConnectionType) LateInitialize(attrs []byte) (bool, error) { @@ -366,6 +406,16 @@ func (tr *Credential) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Credential +func (tr *Credential) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Credential using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Credential) LateInitialize(attrs []byte) (bool, error) { @@ -440,6 +490,16 @@ func (tr *HybridRunBookWorkerGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HybridRunBookWorkerGroup +func (tr *HybridRunBookWorkerGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HybridRunBookWorkerGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HybridRunBookWorkerGroup) LateInitialize(attrs []byte) (bool, error) { @@ -514,6 +574,16 @@ func (tr *Module) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Module +func (tr *Module) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Module using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Module) LateInitialize(attrs []byte) (bool, error) { @@ -588,6 +658,16 @@ func (tr *RunBook) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RunBook +func (tr *RunBook) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RunBook using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RunBook) LateInitialize(attrs []byte) (bool, error) { @@ -662,6 +742,16 @@ func (tr *Schedule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Schedule +func (tr *Schedule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Schedule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Schedule) LateInitialize(attrs []byte) (bool, error) { @@ -736,6 +826,16 @@ func (tr *VariableBool) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VariableBool +func (tr *VariableBool) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VariableBool using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VariableBool) LateInitialize(attrs []byte) (bool, error) { @@ -810,6 +910,16 @@ func (tr *VariableDateTime) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VariableDateTime +func (tr *VariableDateTime) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VariableDateTime using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VariableDateTime) LateInitialize(attrs []byte) (bool, error) { @@ -884,6 +994,16 @@ func (tr *VariableInt) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VariableInt +func (tr *VariableInt) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VariableInt using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VariableInt) LateInitialize(attrs []byte) (bool, error) { @@ -958,6 +1078,16 @@ func (tr *VariableString) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VariableString +func (tr *VariableString) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VariableString using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VariableString) LateInitialize(attrs []byte) (bool, error) { @@ -1032,6 +1162,16 @@ func (tr *Webhook) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Webhook +func (tr *Webhook) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Webhook using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Webhook) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/automation/v1beta1/zz_hybridrunbookworkergroup_types.go b/apis/automation/v1beta1/zz_hybridrunbookworkergroup_types.go index 0409c8742..ecbae11a6 100755 --- a/apis/automation/v1beta1/zz_hybridrunbookworkergroup_types.go +++ b/apis/automation/v1beta1/zz_hybridrunbookworkergroup_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HybridRunBookWorkerGroupInitParameters struct { + + // The name of the Automation Account in which the Runbook Worker Group is created. Changing this forces a new resource to be created. + AutomationAccountName *string `json:"automationAccountName,omitempty" tf:"automation_account_name,omitempty"` + + // The name of resource type azurerm_automation_credential to use for hybrid worker. + CredentialName *string `json:"credentialName,omitempty" tf:"credential_name,omitempty"` + + // The name which should be used for this Automation Account Runbook Worker Group. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type HybridRunBookWorkerGroupObservation struct { // The name of the Automation Account in which the Runbook Worker Group is created. Changing this forces a new resource to be created. @@ -63,6 +75,18 @@ type HybridRunBookWorkerGroupParameters struct { type HybridRunBookWorkerGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HybridRunBookWorkerGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HybridRunBookWorkerGroupInitParameters `json:"initProvider,omitempty"` } // HybridRunBookWorkerGroupStatus defines the observed state of HybridRunBookWorkerGroup. @@ -83,8 +107,8 @@ type HybridRunBookWorkerGroupStatus struct { type HybridRunBookWorkerGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.automationAccountName)",message="automationAccountName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.automationAccountName) || has(self.initProvider.automationAccountName)",message="automationAccountName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec HybridRunBookWorkerGroupSpec `json:"spec"` Status HybridRunBookWorkerGroupStatus `json:"status,omitempty"` } diff --git a/apis/automation/v1beta1/zz_module_types.go b/apis/automation/v1beta1/zz_module_types.go index f49cee20a..8b7678c4b 100755 --- a/apis/automation/v1beta1/zz_module_types.go +++ b/apis/automation/v1beta1/zz_module_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HashInitParameters struct { + + // Specifies the algorithm used for the hash content. + Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"` + + // The hash value of the content. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type HashObservation struct { // Specifies the algorithm used for the hash content. @@ -25,12 +34,27 @@ type HashObservation struct { type HashParameters struct { // Specifies the algorithm used for the hash content. - // +kubebuilder:validation:Required - Algorithm *string `json:"algorithm" tf:"algorithm,omitempty"` + // +kubebuilder:validation:Optional + Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"` // The hash value of the content. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type ModuleInitParameters struct { + + // A module_link block as defined below. + ModuleLink []ModuleLinkInitParameters `json:"moduleLink,omitempty" tf:"module_link,omitempty"` +} + +type ModuleLinkInitParameters struct { + + // A hash block as defined below. + Hash []HashInitParameters `json:"hash,omitempty" tf:"hash,omitempty"` + + // The URI of the module content (zip or nupkg). + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } type ModuleLinkObservation struct { @@ -49,8 +73,8 @@ type ModuleLinkParameters struct { Hash []HashParameters `json:"hash,omitempty" tf:"hash,omitempty"` // The URI of the module content (zip or nupkg). - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } type ModuleObservation struct { @@ -105,6 +129,18 @@ type ModuleParameters struct { type ModuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ModuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ModuleInitParameters `json:"initProvider,omitempty"` } // ModuleStatus defines the observed state of Module. @@ -125,7 +161,7 @@ type ModuleStatus struct { type Module struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.moduleLink)",message="moduleLink is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.moduleLink) || has(self.initProvider.moduleLink)",message="moduleLink is a required parameter" Spec ModuleSpec `json:"spec"` Status ModuleStatus `json:"status,omitempty"` } diff --git a/apis/automation/v1beta1/zz_runbook_types.go b/apis/automation/v1beta1/zz_runbook_types.go index 5176c61fa..35739d00c 100755 --- a/apis/automation/v1beta1/zz_runbook_types.go +++ b/apis/automation/v1beta1/zz_runbook_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ContentLinkHashInitParameters struct { + + // Specifies the hash algorithm used to hash the content. + Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"` + + // Specifies the expected hash value of the content. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ContentLinkHashObservation struct { // Specifies the hash algorithm used to hash the content. @@ -25,12 +34,24 @@ type ContentLinkHashObservation struct { type ContentLinkHashParameters struct { // Specifies the hash algorithm used to hash the content. - // +kubebuilder:validation:Required - Algorithm *string `json:"algorithm" tf:"algorithm,omitempty"` + // +kubebuilder:validation:Optional + Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"` // Specifies the expected hash value of the content. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type ContentLinkInitParameters struct { + + // A hash block as defined below. + Hash []ContentLinkHashInitParameters `json:"hash,omitempty" tf:"hash,omitempty"` + + // The URI of the runbook content. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` + + // Specifies the version of the content + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type ContentLinkObservation struct { @@ -52,14 +73,29 @@ type ContentLinkParameters struct { Hash []ContentLinkHashParameters `json:"hash,omitempty" tf:"hash,omitempty"` // The URI of the runbook content. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` // Specifies the version of the content // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type DraftInitParameters struct { + + // A publish_content_link block as defined above. + ContentLink []ContentLinkInitParameters `json:"contentLink,omitempty" tf:"content_link,omitempty"` + + // Whether the draft in edit mode. + EditModeEnabled *bool `json:"editModeEnabled,omitempty" tf:"edit_mode_enabled,omitempty"` + + // Specifies the output types of the runbook. + OutputTypes []*string `json:"outputTypes,omitempty" tf:"output_types,omitempty"` + + // A list of parameters block as defined below. + Parameters []ParametersInitParameters `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type DraftObservation struct { // A publish_content_link block as defined above. @@ -98,6 +134,20 @@ type DraftParameters struct { Parameters []ParametersParameters `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type JobScheduleInitParameters struct { + + // The Automation Runbook ID. + JobScheduleID *string `json:"jobScheduleId,omitempty" tf:"job_schedule_id"` + + // A list of parameters block as defined below. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters"` + + RunOn *string `json:"runOn,omitempty" tf:"run_on"` + + // Specifies the name of the Runbook. Changing this forces a new resource to be created. + ScheduleName *string `json:"scheduleName,omitempty" tf:"schedule_name"` +} + type JobScheduleObservation struct { // The Automation Runbook ID. @@ -130,6 +180,24 @@ type JobScheduleParameters struct { ScheduleName *string `json:"scheduleName,omitempty" tf:"schedule_name"` } +type ParametersInitParameters struct { + + // Specifies the default value of the parameter. + DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` + + // The name of the parameter. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Whether this parameter is mandatory. + Mandatory *bool `json:"mandatory,omitempty" tf:"mandatory,omitempty"` + + // Specifies the position of the parameter. + Position *float64 `json:"position,omitempty" tf:"position,omitempty"` + + // Specifies the type of this parameter. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ParametersObservation struct { // Specifies the default value of the parameter. @@ -155,8 +223,8 @@ type ParametersParameters struct { DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` // The name of the parameter. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Whether this parameter is mandatory. // +kubebuilder:validation:Optional @@ -167,8 +235,17 @@ type ParametersParameters struct { Position *float64 `json:"position,omitempty" tf:"position,omitempty"` // Specifies the type of this parameter. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type PublishContentLinkHashInitParameters struct { + + // Specifies the hash algorithm used to hash the content. + Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"` + + // Specifies the expected hash value of the content. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type PublishContentLinkHashObservation struct { @@ -183,12 +260,24 @@ type PublishContentLinkHashObservation struct { type PublishContentLinkHashParameters struct { // Specifies the hash algorithm used to hash the content. - // +kubebuilder:validation:Required - Algorithm *string `json:"algorithm" tf:"algorithm,omitempty"` + // +kubebuilder:validation:Optional + Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"` // Specifies the expected hash value of the content. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type PublishContentLinkInitParameters struct { + + // A hash block as defined below. + Hash []PublishContentLinkHashInitParameters `json:"hash,omitempty" tf:"hash,omitempty"` + + // The URI of the runbook content. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` + + // Specifies the version of the content + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type PublishContentLinkObservation struct { @@ -210,14 +299,52 @@ type PublishContentLinkParameters struct { Hash []PublishContentLinkHashParameters `json:"hash,omitempty" tf:"hash,omitempty"` // The URI of the runbook content. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` // Specifies the version of the content // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type RunBookInitParameters struct { + + // The desired content of the runbook. + Content *string `json:"content,omitempty" tf:"content,omitempty"` + + // A description for this credential. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A draft block as defined below . + Draft []DraftInitParameters `json:"draft,omitempty" tf:"draft,omitempty"` + + JobSchedule []JobScheduleInitParameters `json:"jobSchedule,omitempty" tf:"job_schedule,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the activity-level tracing options of the runbook, available only for Graphical runbooks. Possible values are 0 for None, 9 for Basic, and 15 for Detailed. Must turn on Verbose logging in order to see the tracing. + LogActivityTraceLevel *float64 `json:"logActivityTraceLevel,omitempty" tf:"log_activity_trace_level,omitempty"` + + // Progress log option. + LogProgress *bool `json:"logProgress,omitempty" tf:"log_progress,omitempty"` + + // Verbose log option. + LogVerbose *bool `json:"logVerbose,omitempty" tf:"log_verbose,omitempty"` + + // Specifies the name of the Runbook. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The published runbook content link. + PublishContentLink []PublishContentLinkInitParameters `json:"publishContentLink,omitempty" tf:"publish_content_link,omitempty"` + + // The type of the runbook - can be either Graph, GraphPowerShell, GraphPowerShellWorkflow, PowerShellWorkflow, PowerShell, Python3, Python2 or Script. Changing this forces a new resource to be created. + RunBookType *string `json:"runbookType,omitempty" tf:"runbook_type,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type RunBookObservation struct { // The name of the automation account in which the Runbook is created. Changing this forces a new resource to be created. @@ -345,6 +472,18 @@ type RunBookParameters struct { type RunBookSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RunBookParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RunBookInitParameters `json:"initProvider,omitempty"` } // RunBookStatus defines the observed state of RunBook. @@ -365,11 +504,11 @@ type RunBookStatus struct { type RunBook struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.logProgress)",message="logProgress is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.logVerbose)",message="logVerbose is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.runbookType)",message="runbookType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.logProgress) || has(self.initProvider.logProgress)",message="logProgress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.logVerbose) || has(self.initProvider.logVerbose)",message="logVerbose is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.runbookType) || has(self.initProvider.runbookType)",message="runbookType is a required parameter" Spec RunBookSpec `json:"spec"` Status RunBookStatus `json:"status,omitempty"` } diff --git a/apis/automation/v1beta1/zz_schedule_types.go b/apis/automation/v1beta1/zz_schedule_types.go index fef483ba8..fd2aaa6a0 100755 --- a/apis/automation/v1beta1/zz_schedule_types.go +++ b/apis/automation/v1beta1/zz_schedule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MonthlyOccurrenceInitParameters struct { + + // Day of the occurrence. Must be one of Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday. + Day *string `json:"day,omitempty" tf:"day,omitempty"` + + // Occurrence of the week within the month. Must be between 1 and 5. -1 for last week within the month. + Occurrence *float64 `json:"occurrence,omitempty" tf:"occurrence,omitempty"` +} + type MonthlyOccurrenceObservation struct { // Day of the occurrence. Must be one of Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday. @@ -25,12 +34,42 @@ type MonthlyOccurrenceObservation struct { type MonthlyOccurrenceParameters struct { // Day of the occurrence. Must be one of Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday. - // +kubebuilder:validation:Required - Day *string `json:"day" tf:"day,omitempty"` + // +kubebuilder:validation:Optional + Day *string `json:"day,omitempty" tf:"day,omitempty"` // Occurrence of the week within the month. Must be between 1 and 5. -1 for last week within the month. - // +kubebuilder:validation:Required - Occurrence *float64 `json:"occurrence" tf:"occurrence,omitempty"` + // +kubebuilder:validation:Optional + Occurrence *float64 `json:"occurrence,omitempty" tf:"occurrence,omitempty"` +} + +type ScheduleInitParameters struct { + + // A description for this Schedule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The end time of the schedule. + ExpiryTime *string `json:"expiryTime,omitempty" tf:"expiry_time,omitempty"` + + // The frequency of the schedule. - can be either OneTime, Day, Hour, Week, or Month. + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // The number of frequencys between runs. Only valid when frequency is Day, Hour, Week, or Month and defaults to 1. + Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` + + // List of days of the month that the job should execute on. Must be between 1 and 31. -1 for last day of the month. Only valid when frequency is Month. + MonthDays []*float64 `json:"monthDays,omitempty" tf:"month_days,omitempty"` + + // List of monthly_occurrence blocks as defined below to specifies occurrences of days within a month. Only valid when frequency is Month. The monthly_occurrence block supports fields documented below. + MonthlyOccurrence []MonthlyOccurrenceInitParameters `json:"monthlyOccurrence,omitempty" tf:"monthly_occurrence,omitempty"` + + // Start time of the schedule. Must be at least five minutes in the future. Defaults to seven minutes in the future from the time the resource is created. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` + + // The timezone of the start time. Defaults to Etc/UTC. For possible values see: https://docs.microsoft.com/en-us/rest/api/maps/timezone/gettimezoneenumwindows + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` + + // List of days of the week that the job should execute on. Only valid when frequency is Week. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + WeekDays []*string `json:"weekDays,omitempty" tf:"week_days,omitempty"` } type ScheduleObservation struct { @@ -141,6 +180,18 @@ type ScheduleParameters struct { type ScheduleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ScheduleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ScheduleInitParameters `json:"initProvider,omitempty"` } // ScheduleStatus defines the observed state of Schedule. @@ -161,7 +212,7 @@ type ScheduleStatus struct { type Schedule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frequency)",message="frequency is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frequency) || has(self.initProvider.frequency)",message="frequency is a required parameter" Spec ScheduleSpec `json:"spec"` Status ScheduleStatus `json:"status,omitempty"` } diff --git a/apis/automation/v1beta1/zz_variablebool_types.go b/apis/automation/v1beta1/zz_variablebool_types.go index 8c22c05bd..cbf397114 100755 --- a/apis/automation/v1beta1/zz_variablebool_types.go +++ b/apis/automation/v1beta1/zz_variablebool_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VariableBoolInitParameters struct { + + // The description of the Automation Variable. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies if the Automation Variable is encrypted. Defaults to false. + Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` + + // The value of the Automation Variable as a boolean. + Value *bool `json:"value,omitempty" tf:"value,omitempty"` +} + type VariableBoolObservation struct { // The name of the automation account in which the Variable is created. Changing this forces a new resource to be created. @@ -79,6 +91,18 @@ type VariableBoolParameters struct { type VariableBoolSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VariableBoolParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VariableBoolInitParameters `json:"initProvider,omitempty"` } // VariableBoolStatus defines the observed state of VariableBool. diff --git a/apis/automation/v1beta1/zz_variabledatetime_types.go b/apis/automation/v1beta1/zz_variabledatetime_types.go index 8c83e547c..09506651b 100755 --- a/apis/automation/v1beta1/zz_variabledatetime_types.go +++ b/apis/automation/v1beta1/zz_variabledatetime_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VariableDateTimeInitParameters struct { + + // The description of the Automation Variable. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies if the Automation Variable is encrypted. Defaults to false. + Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` + + // The value of the Automation Variable in the RFC3339 Section 5.6 Internet Date/Time Format. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type VariableDateTimeObservation struct { // The name of the automation account in which the Variable is created. Changing this forces a new resource to be created. @@ -79,6 +91,18 @@ type VariableDateTimeParameters struct { type VariableDateTimeSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VariableDateTimeParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VariableDateTimeInitParameters `json:"initProvider,omitempty"` } // VariableDateTimeStatus defines the observed state of VariableDateTime. diff --git a/apis/automation/v1beta1/zz_variableint_types.go b/apis/automation/v1beta1/zz_variableint_types.go index 47ebcf030..7edbd0521 100755 --- a/apis/automation/v1beta1/zz_variableint_types.go +++ b/apis/automation/v1beta1/zz_variableint_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VariableIntInitParameters struct { + + // The description of the Automation Variable. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies if the Automation Variable is encrypted. Defaults to false. + Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` + + // The value of the Automation Variable as a integer. + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` +} + type VariableIntObservation struct { // The name of the automation account in which the Variable is created. Changing this forces a new resource to be created. @@ -79,6 +91,18 @@ type VariableIntParameters struct { type VariableIntSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VariableIntParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VariableIntInitParameters `json:"initProvider,omitempty"` } // VariableIntStatus defines the observed state of VariableInt. diff --git a/apis/automation/v1beta1/zz_variablestring_types.go b/apis/automation/v1beta1/zz_variablestring_types.go index 762550c06..9321fc4d7 100755 --- a/apis/automation/v1beta1/zz_variablestring_types.go +++ b/apis/automation/v1beta1/zz_variablestring_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VariableStringInitParameters struct { + + // The description of the Automation Variable. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies if the Automation Variable is encrypted. Defaults to false. + Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` + + // The value of the Automation Variable as a string. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type VariableStringObservation struct { // The name of the automation account in which the Variable is created. Changing this forces a new resource to be created. @@ -79,6 +91,18 @@ type VariableStringParameters struct { type VariableStringSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VariableStringParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VariableStringInitParameters `json:"initProvider,omitempty"` } // VariableStringStatus defines the observed state of VariableString. diff --git a/apis/automation/v1beta1/zz_webhook_types.go b/apis/automation/v1beta1/zz_webhook_types.go index 0ba076894..9a9b44a55 100755 --- a/apis/automation/v1beta1/zz_webhook_types.go +++ b/apis/automation/v1beta1/zz_webhook_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WebhookInitParameters struct { + + // Controls if Webhook is enabled. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Timestamp when the webhook expires. Changing this forces a new resource to be created. + ExpiryTime *string `json:"expiryTime,omitempty" tf:"expiry_time,omitempty"` + + // Specifies the name of the Webhook. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Map of input parameters passed to runbook. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // Name of the hybrid worker group the Webhook job will run on. + RunOnWorkerGroup *string `json:"runOnWorkerGroup,omitempty" tf:"run_on_worker_group,omitempty"` +} + type WebhookObservation struct { // The name of the automation account in which the Webhook is created. Changing this forces a new resource to be created. @@ -114,6 +132,18 @@ type WebhookParameters struct { type WebhookSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WebhookParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WebhookInitParameters `json:"initProvider,omitempty"` } // WebhookStatus defines the observed state of Webhook. @@ -134,8 +164,8 @@ type WebhookStatus struct { type Webhook struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.expiryTime)",message="expiryTime is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.expiryTime) || has(self.initProvider.expiryTime)",message="expiryTime is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec WebhookSpec `json:"spec"` Status WebhookStatus `json:"status,omitempty"` } diff --git a/apis/azure/v1beta1/zz_generated.deepcopy.go b/apis/azure/v1beta1/zz_generated.deepcopy.go index 73b7d8cf2..b1ca6751b 100644 --- a/apis/azure/v1beta1/zz_generated.deepcopy.go +++ b/apis/azure/v1beta1/zz_generated.deepcopy.go @@ -13,6 +13,31 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FeatureInitParameters) DeepCopyInto(out *FeatureInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Registered != nil { + in, out := &in.Registered, &out.Registered + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureInitParameters. +func (in *FeatureInitParameters) DeepCopy() *FeatureInitParameters { + if in == nil { + return nil + } + out := new(FeatureInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FeatureObservation) DeepCopyInto(out *FeatureObservation) { *out = *in @@ -90,6 +115,41 @@ func (in *ResourceGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceGroupInitParameters) DeepCopyInto(out *ResourceGroupInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGroupInitParameters. +func (in *ResourceGroupInitParameters) DeepCopy() *ResourceGroupInitParameters { + if in == nil { + return nil + } + out := new(ResourceGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceGroupList) DeepCopyInto(out *ResourceGroupList) { *out = *in @@ -202,6 +262,7 @@ func (in *ResourceGroupSpec) DeepCopyInto(out *ResourceGroupSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGroupSpec. @@ -258,6 +319,33 @@ func (in *ResourceProviderRegistration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceProviderRegistrationInitParameters) DeepCopyInto(out *ResourceProviderRegistrationInitParameters) { + *out = *in + if in.Feature != nil { + in, out := &in.Feature, &out.Feature + *out = make([]FeatureInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceProviderRegistrationInitParameters. +func (in *ResourceProviderRegistrationInitParameters) DeepCopy() *ResourceProviderRegistrationInitParameters { + if in == nil { + return nil + } + out := new(ResourceProviderRegistrationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceProviderRegistrationList) DeepCopyInto(out *ResourceProviderRegistrationList) { *out = *in @@ -354,6 +442,7 @@ func (in *ResourceProviderRegistrationSpec) DeepCopyInto(out *ResourceProviderRe *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceProviderRegistrationSpec. @@ -410,6 +499,56 @@ func (in *Subscription) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionInitParameters) DeepCopyInto(out *SubscriptionInitParameters) { + *out = *in + if in.BillingScopeID != nil { + in, out := &in.BillingScopeID, &out.BillingScopeID + *out = new(string) + **out = **in + } + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } + if in.SubscriptionName != nil { + in, out := &in.SubscriptionName, &out.SubscriptionName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Workload != nil { + in, out := &in.Workload, &out.Workload + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionInitParameters. +func (in *SubscriptionInitParameters) DeepCopy() *SubscriptionInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionList) DeepCopyInto(out *SubscriptionList) { *out = *in @@ -557,6 +696,7 @@ func (in *SubscriptionSpec) DeepCopyInto(out *SubscriptionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionSpec. diff --git a/apis/azure/v1beta1/zz_generated.managed.go b/apis/azure/v1beta1/zz_generated.managed.go index 50f81915d..b7699c06e 100644 --- a/apis/azure/v1beta1/zz_generated.managed.go +++ b/apis/azure/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ResourceGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourceGroup. -func (mg *ResourceGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourceGroup. +func (mg *ResourceGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourceGroup. @@ -55,9 +55,9 @@ func (mg *ResourceGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourceGroup. -func (mg *ResourceGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourceGroup. +func (mg *ResourceGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourceGroup. @@ -93,9 +93,9 @@ func (mg *ResourceProviderRegistration) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourceProviderRegistration. -func (mg *ResourceProviderRegistration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourceProviderRegistration. +func (mg *ResourceProviderRegistration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourceProviderRegistration. @@ -131,9 +131,9 @@ func (mg *ResourceProviderRegistration) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourceProviderRegistration. -func (mg *ResourceProviderRegistration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourceProviderRegistration. +func (mg *ResourceProviderRegistration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourceProviderRegistration. @@ -169,9 +169,9 @@ func (mg *Subscription) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Subscription. -func (mg *Subscription) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Subscription. +func (mg *Subscription) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Subscription. @@ -207,9 +207,9 @@ func (mg *Subscription) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Subscription. -func (mg *Subscription) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Subscription. +func (mg *Subscription) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Subscription. diff --git a/apis/azure/v1beta1/zz_generated_terraformed.go b/apis/azure/v1beta1/zz_generated_terraformed.go index 11e8378d7..af9d04461 100755 --- a/apis/azure/v1beta1/zz_generated_terraformed.go +++ b/apis/azure/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ResourceGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourceGroup +func (tr *ResourceGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourceGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourceGroup) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *ResourceProviderRegistration) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourceProviderRegistration +func (tr *ResourceProviderRegistration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourceProviderRegistration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourceProviderRegistration) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *Subscription) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Subscription +func (tr *Subscription) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Subscription using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Subscription) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/azure/v1beta1/zz_resourcegroup_types.go b/apis/azure/v1beta1/zz_resourcegroup_types.go index baa7d88c0..ea9d21eed 100755 --- a/apis/azure/v1beta1/zz_resourcegroup_types.go +++ b/apis/azure/v1beta1/zz_resourcegroup_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ResourceGroupInitParameters struct { + + // The Azure Region where the Resource Group should exist. Changing this forces a new Resource Group to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Resource Group. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ResourceGroupObservation struct { // The ID of the Resource Group. @@ -40,6 +49,18 @@ type ResourceGroupParameters struct { type ResourceGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourceGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourceGroupInitParameters `json:"initProvider,omitempty"` } // ResourceGroupStatus defines the observed state of ResourceGroup. @@ -60,7 +81,7 @@ type ResourceGroupStatus struct { type ResourceGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ResourceGroupSpec `json:"spec"` Status ResourceGroupStatus `json:"status,omitempty"` } diff --git a/apis/azure/v1beta1/zz_resourceproviderregistration_types.go b/apis/azure/v1beta1/zz_resourceproviderregistration_types.go index 91bbed936..ad837e326 100755 --- a/apis/azure/v1beta1/zz_resourceproviderregistration_types.go +++ b/apis/azure/v1beta1/zz_resourceproviderregistration_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FeatureInitParameters struct { + + // Specifies the name of the feature to register. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Should this feature be Registered or Unregistered? + Registered *bool `json:"registered,omitempty" tf:"registered,omitempty"` +} + type FeatureObservation struct { // Specifies the name of the feature to register. @@ -25,12 +34,21 @@ type FeatureObservation struct { type FeatureParameters struct { // Specifies the name of the feature to register. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Should this feature be Registered or Unregistered? - // +kubebuilder:validation:Required - Registered *bool `json:"registered" tf:"registered,omitempty"` + // +kubebuilder:validation:Optional + Registered *bool `json:"registered,omitempty" tf:"registered,omitempty"` +} + +type ResourceProviderRegistrationInitParameters struct { + + // A list of feature blocks as defined below. + Feature []FeatureInitParameters `json:"feature,omitempty" tf:"feature,omitempty"` + + // The namespace of the Resource Provider which should be registered. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type ResourceProviderRegistrationObservation struct { @@ -59,6 +77,18 @@ type ResourceProviderRegistrationParameters struct { type ResourceProviderRegistrationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourceProviderRegistrationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourceProviderRegistrationInitParameters `json:"initProvider,omitempty"` } // ResourceProviderRegistrationStatus defines the observed state of ResourceProviderRegistration. @@ -79,7 +109,7 @@ type ResourceProviderRegistrationStatus struct { type ResourceProviderRegistration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ResourceProviderRegistrationSpec `json:"spec"` Status ResourceProviderRegistrationStatus `json:"status,omitempty"` } diff --git a/apis/azure/v1beta1/zz_subscription_types.go b/apis/azure/v1beta1/zz_subscription_types.go index 7f82f38f6..ccd56fc26 100755 --- a/apis/azure/v1beta1/zz_subscription_types.go +++ b/apis/azure/v1beta1/zz_subscription_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubscriptionInitParameters struct { + + // The Azure Billing Scope ID. Can be a Microsoft Customer Account Billing Scope ID, a Microsoft Partner Account Billing Scope ID or an Enrollment Billing Scope ID. + BillingScopeID *string `json:"billingScopeId,omitempty" tf:"billing_scope_id,omitempty"` + + // The ID of the Subscription. Changing this forces a new Subscription to be created. + // The GUID of the Subscription. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` + + // The Name of the Subscription. This is the Display Name in the portal. + // The Display Name for the Subscription. + SubscriptionName *string `json:"subscriptionName,omitempty" tf:"subscription_name,omitempty"` + + // A mapping of tags to assign to the Subscription. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The workload type of the Subscription. Possible values are Production (default) and DevTest. Changing this forces a new Subscription to be created. + // The workload type for the Subscription. Possible values are `Production` (default) and `DevTest`. + Workload *string `json:"workload,omitempty" tf:"workload,omitempty"` +} + type SubscriptionObservation struct { // The Azure Billing Scope ID. Can be a Microsoft Customer Account Billing Scope ID, a Microsoft Partner Account Billing Scope ID or an Enrollment Billing Scope ID. @@ -71,6 +92,18 @@ type SubscriptionParameters struct { type SubscriptionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubscriptionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubscriptionInitParameters `json:"initProvider,omitempty"` } // SubscriptionStatus defines the observed state of Subscription. @@ -91,7 +124,7 @@ type SubscriptionStatus struct { type Subscription struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionName)",message="subscriptionName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subscriptionName) || has(self.initProvider.subscriptionName)",message="subscriptionName is a required parameter" Spec SubscriptionSpec `json:"spec"` Status SubscriptionStatus `json:"status,omitempty"` } diff --git a/apis/azurestackhci/v1beta1/zz_cluster_types.go b/apis/azurestackhci/v1beta1/zz_cluster_types.go index 89183b420..98d023f66 100755 --- a/apis/azurestackhci/v1beta1/zz_cluster_types.go +++ b/apis/azurestackhci/v1beta1/zz_cluster_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ClusterInitParameters struct { + + // The Client ID of the Azure Active Directory which is used by the Azure Stack HCI Cluster. Changing this forces a new resource to be created. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The Azure Region where the Azure Stack HCI Cluster should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Azure Stack HCI Cluster. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The Tenant ID of the Azure Active Directory which is used by the Azure Stack HCI Cluster. Changing this forces a new resource to be created. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type ClusterObservation struct { // The Client ID of the Azure Active Directory which is used by the Azure Stack HCI Cluster. Changing this forces a new resource to be created. @@ -70,6 +85,18 @@ type ClusterParameters struct { type ClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ClusterInitParameters `json:"initProvider,omitempty"` } // ClusterStatus defines the observed state of Cluster. @@ -90,8 +117,8 @@ type ClusterStatus struct { type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId)",message="clientId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientId) || has(self.initProvider.clientId)",message="clientId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ClusterSpec `json:"spec"` Status ClusterStatus `json:"status,omitempty"` } diff --git a/apis/azurestackhci/v1beta1/zz_generated.deepcopy.go b/apis/azurestackhci/v1beta1/zz_generated.deepcopy.go index 0040804c5..d55b8bcb4 100644 --- a/apis/azurestackhci/v1beta1/zz_generated.deepcopy.go +++ b/apis/azurestackhci/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,51 @@ func (in *Cluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterInitParameters) DeepCopyInto(out *ClusterInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInitParameters. +func (in *ClusterInitParameters) DeepCopy() *ClusterInitParameters { + if in == nil { + return nil + } + out := new(ClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClusterList) DeepCopyInto(out *ClusterList) { *out = *in @@ -193,6 +238,7 @@ func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec. diff --git a/apis/azurestackhci/v1beta1/zz_generated.managed.go b/apis/azurestackhci/v1beta1/zz_generated.managed.go index 327e9619a..b66142a60 100644 --- a/apis/azurestackhci/v1beta1/zz_generated.managed.go +++ b/apis/azurestackhci/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Cluster. -func (mg *Cluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Cluster. +func (mg *Cluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Cluster. @@ -55,9 +55,9 @@ func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Cluster. -func (mg *Cluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Cluster. +func (mg *Cluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Cluster. diff --git a/apis/azurestackhci/v1beta1/zz_generated_terraformed.go b/apis/azurestackhci/v1beta1/zz_generated_terraformed.go index 6a998821b..ed4392c59 100755 --- a/apis/azurestackhci/v1beta1/zz_generated_terraformed.go +++ b/apis/azurestackhci/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Cluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Cluster +func (tr *Cluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Cluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Cluster) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/botservice/v1beta1/zz_botchannelalexa_types.go b/apis/botservice/v1beta1/zz_botchannelalexa_types.go index d4fb8dd0c..2cc607427 100755 --- a/apis/botservice/v1beta1/zz_botchannelalexa_types.go +++ b/apis/botservice/v1beta1/zz_botchannelalexa_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BotChannelAlexaInitParameters struct { + + // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The Alexa skill ID for the Alexa Channel. + SkillID *string `json:"skillId,omitempty" tf:"skill_id,omitempty"` +} + type BotChannelAlexaObservation struct { // The name of the Bot Resource this channel will be associated with. Changing this forces a new resource to be created. @@ -73,6 +82,18 @@ type BotChannelAlexaParameters struct { type BotChannelAlexaSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BotChannelAlexaParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BotChannelAlexaInitParameters `json:"initProvider,omitempty"` } // BotChannelAlexaStatus defines the observed state of BotChannelAlexa. @@ -93,8 +114,8 @@ type BotChannelAlexaStatus struct { type BotChannelAlexa struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skillId)",message="skillId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skillId) || has(self.initProvider.skillId)",message="skillId is a required parameter" Spec BotChannelAlexaSpec `json:"spec"` Status BotChannelAlexaStatus `json:"status,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchanneldirectline_types.go b/apis/botservice/v1beta1/zz_botchanneldirectline_types.go index 68e6e15d0..aa36dff09 100755 --- a/apis/botservice/v1beta1/zz_botchanneldirectline_types.go +++ b/apis/botservice/v1beta1/zz_botchanneldirectline_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BotChannelDirectLineInitParameters struct { + + // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A site represents a client application that you want to connect to your bot. Multiple site blocks may be defined as below + Site []SiteInitParameters `json:"site,omitempty" tf:"site,omitempty"` +} + type BotChannelDirectLineObservation struct { // The name of the Bot Resource this channel will be associated with. Changing this forces a new resource to be created. @@ -69,6 +78,27 @@ type BotChannelDirectLineParameters struct { Site []SiteParameters `json:"site,omitempty" tf:"site,omitempty"` } +type SiteInitParameters struct { + + // Enables/Disables this site. Enabled by default Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Enables additional security measures for this site, see Enhanced Directline Authentication Features. Disabled by default. + EnhancedAuthenticationEnabled *bool `json:"enhancedAuthenticationEnabled,omitempty" tf:"enhanced_authentication_enabled,omitempty"` + + // The name of the site + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // This field is required when is_secure_site_enabled is enabled. Determines which origins can establish a Directline conversation for this site. + TrustedOrigins []*string `json:"trustedOrigins,omitempty" tf:"trusted_origins,omitempty"` + + // Enables v1 of the Directline protocol for this site. Enabled by default Defaults to true. + V1Allowed *bool `json:"v1Allowed,omitempty" tf:"v1_allowed,omitempty"` + + // Enables v3 of the Directline protocol for this site. Enabled by default Defaults to true. + V3Allowed *bool `json:"v3Allowed,omitempty" tf:"v3_allowed,omitempty"` +} + type SiteObservation struct { // Enables/Disables this site. Enabled by default Defaults to true. @@ -104,8 +134,8 @@ type SiteParameters struct { EnhancedAuthenticationEnabled *bool `json:"enhancedAuthenticationEnabled,omitempty" tf:"enhanced_authentication_enabled,omitempty"` // The name of the site - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // This field is required when is_secure_site_enabled is enabled. Determines which origins can establish a Directline conversation for this site. // +kubebuilder:validation:Optional @@ -124,6 +154,18 @@ type SiteParameters struct { type BotChannelDirectLineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BotChannelDirectLineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BotChannelDirectLineInitParameters `json:"initProvider,omitempty"` } // BotChannelDirectLineStatus defines the observed state of BotChannelDirectLine. @@ -144,8 +186,8 @@ type BotChannelDirectLineStatus struct { type BotChannelDirectLine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.site)",message="site is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.site) || has(self.initProvider.site)",message="site is a required parameter" Spec BotChannelDirectLineSpec `json:"spec"` Status BotChannelDirectLineStatus `json:"status,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchannelline_types.go b/apis/botservice/v1beta1/zz_botchannelline_types.go index 2992cbcce..9b5b3e4c5 100755 --- a/apis/botservice/v1beta1/zz_botchannelline_types.go +++ b/apis/botservice/v1beta1/zz_botchannelline_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BotChannelLineInitParameters struct { + + // One or more line_channel blocks as defined below. + LineChannel []LineChannelInitParameters `json:"lineChannel,omitempty" tf:"line_channel,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type BotChannelLineObservation struct { // The name of the Bot Resource this channel will be associated with. Changing this forces a new resource to be created. @@ -69,6 +78,9 @@ type BotChannelLineParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` } +type LineChannelInitParameters struct { +} + type LineChannelObservation struct { } @@ -87,6 +99,18 @@ type LineChannelParameters struct { type BotChannelLineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BotChannelLineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BotChannelLineInitParameters `json:"initProvider,omitempty"` } // BotChannelLineStatus defines the observed state of BotChannelLine. @@ -107,8 +131,8 @@ type BotChannelLineStatus struct { type BotChannelLine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.lineChannel)",message="lineChannel is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.lineChannel) || has(self.initProvider.lineChannel)",message="lineChannel is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec BotChannelLineSpec `json:"spec"` Status BotChannelLineStatus `json:"status,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchannelmsteams_types.go b/apis/botservice/v1beta1/zz_botchannelmsteams_types.go index 586233b3c..ce820ef5c 100755 --- a/apis/botservice/v1beta1/zz_botchannelmsteams_types.go +++ b/apis/botservice/v1beta1/zz_botchannelmsteams_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BotChannelMSTeamsInitParameters struct { + + // Specifies the webhook for Microsoft Teams channel calls. + CallingWebHook *string `json:"callingWebHook,omitempty" tf:"calling_web_hook,omitempty"` + + // Specifies whether to enable Microsoft Teams channel calls. This defaults to false. + EnableCalling *bool `json:"enableCalling,omitempty" tf:"enable_calling,omitempty"` + + // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type BotChannelMSTeamsObservation struct { // The name of the Bot Resource this channel will be associated with. Changing this forces a new resource to be created. @@ -80,6 +92,18 @@ type BotChannelMSTeamsParameters struct { type BotChannelMSTeamsSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BotChannelMSTeamsParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BotChannelMSTeamsInitParameters `json:"initProvider,omitempty"` } // BotChannelMSTeamsStatus defines the observed state of BotChannelMSTeams. @@ -100,7 +124,7 @@ type BotChannelMSTeamsStatus struct { type BotChannelMSTeams struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec BotChannelMSTeamsSpec `json:"spec"` Status BotChannelMSTeamsStatus `json:"status,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchannelslack_types.go b/apis/botservice/v1beta1/zz_botchannelslack_types.go index db183a0f8..8eeeffbe8 100755 --- a/apis/botservice/v1beta1/zz_botchannelslack_types.go +++ b/apis/botservice/v1beta1/zz_botchannelslack_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BotChannelSlackInitParameters struct { + + // The Client ID that will be used to authenticate with Slack. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The Slack Landing Page URL. + LandingPageURL *string `json:"landingPageUrl,omitempty" tf:"landing_page_url,omitempty"` + + // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type BotChannelSlackObservation struct { // The name of the Bot Resource this channel will be associated with. Changing this forces a new resource to be created. @@ -92,6 +104,18 @@ type BotChannelSlackParameters struct { type BotChannelSlackSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BotChannelSlackParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BotChannelSlackInitParameters `json:"initProvider,omitempty"` } // BotChannelSlackStatus defines the observed state of BotChannelSlack. @@ -112,10 +136,10 @@ type BotChannelSlackStatus struct { type BotChannelSlack struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId)",message="clientId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.verificationTokenSecretRef)",message="verificationTokenSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientId) || has(self.initProvider.clientId)",message="clientId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.verificationTokenSecretRef)",message="verificationTokenSecretRef is a required parameter" Spec BotChannelSlackSpec `json:"spec"` Status BotChannelSlackStatus `json:"status,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchannelsms_types.go b/apis/botservice/v1beta1/zz_botchannelsms_types.go index b0497eeb0..0fab49a8b 100755 --- a/apis/botservice/v1beta1/zz_botchannelsms_types.go +++ b/apis/botservice/v1beta1/zz_botchannelsms_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BotChannelSMSInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The phone number for the SMS Channel. + PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` + + // The account security identifier (SID) for the SMS Channel. + SMSChannelAccountSecurityID *string `json:"smsChannelAccountSecurityId,omitempty" tf:"sms_channel_account_security_id,omitempty"` +} + type BotChannelSMSObservation struct { // The name of the Bot Resource this channel will be associated with. Changing this forces a new resource to be created. @@ -84,6 +96,18 @@ type BotChannelSMSParameters struct { type BotChannelSMSSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BotChannelSMSParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BotChannelSMSInitParameters `json:"initProvider,omitempty"` } // BotChannelSMSStatus defines the observed state of BotChannelSMS. @@ -104,10 +128,10 @@ type BotChannelSMSStatus struct { type BotChannelSMS struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.phoneNumber)",message="phoneNumber is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.smsChannelAccountSecurityId)",message="smsChannelAccountSecurityId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.smsChannelAuthTokenSecretRef)",message="smsChannelAuthTokenSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.phoneNumber) || has(self.initProvider.phoneNumber)",message="phoneNumber is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.smsChannelAccountSecurityId) || has(self.initProvider.smsChannelAccountSecurityId)",message="smsChannelAccountSecurityId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.smsChannelAuthTokenSecretRef)",message="smsChannelAuthTokenSecretRef is a required parameter" Spec BotChannelSMSSpec `json:"spec"` Status BotChannelSMSStatus `json:"status,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchannelsregistration_types.go b/apis/botservice/v1beta1/zz_botchannelsregistration_types.go index 8b20d06b8..d27100477 100755 --- a/apis/botservice/v1beta1/zz_botchannelsregistration_types.go +++ b/apis/botservice/v1beta1/zz_botchannelsregistration_types.go @@ -13,6 +13,54 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BotChannelsRegistrationInitParameters struct { + + // The CMK Key Vault Key URL to encrypt the Bot Channels Registration with the Customer Managed Encryption Key. + CmkKeyVaultURL *string `json:"cmkKeyVaultUrl,omitempty" tf:"cmk_key_vault_url,omitempty"` + + // The description of the Bot Channels Registration. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Application Insights Application ID to associate with the Bot Channels Registration. + DeveloperAppInsightsApplicationID *string `json:"developerAppInsightsApplicationId,omitempty" tf:"developer_app_insights_application_id,omitempty"` + + // The Application Insights Key to associate with the Bot Channels Registration. + DeveloperAppInsightsKey *string `json:"developerAppInsightsKey,omitempty" tf:"developer_app_insights_key,omitempty"` + + // The name of the Bot Channels Registration will be displayed as. This defaults to name if not specified. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The Bot Channels Registration endpoint. + Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` + + // The icon URL to visually identify the Bot Channels Registration. + IconURL *string `json:"iconUrl,omitempty" tf:"icon_url,omitempty"` + + // Is the Bot Channels Registration in an isolated network? + IsolatedNetworkEnabled *bool `json:"isolatedNetworkEnabled,omitempty" tf:"isolated_network_enabled,omitempty"` + + // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The Microsoft Application ID for the Bot Channels Registration. Changing this forces a new resource to be created. + MicrosoftAppID *string `json:"microsoftAppId,omitempty" tf:"microsoft_app_id,omitempty"` + + // Specifies the name of the Bot Channels Registration. Changing this forces a new resource to be created. Must be globally unique. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is the Bot Channels Registration in an isolated network? + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // The SKU of the Bot Channels Registration. Valid values include F0 or S1. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // Is the streaming endpoint enabled for the Bot Channels Registration. Defaults to false. + StreamingEndpointEnabled *bool `json:"streamingEndpointEnabled,omitempty" tf:"streaming_endpoint_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type BotChannelsRegistrationObservation struct { // The CMK Key Vault Key URL to encrypt the Bot Channels Registration with the Customer Managed Encryption Key. @@ -151,6 +199,18 @@ type BotChannelsRegistrationParameters struct { type BotChannelsRegistrationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BotChannelsRegistrationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BotChannelsRegistrationInitParameters `json:"initProvider,omitempty"` } // BotChannelsRegistrationStatus defines the observed state of BotChannelsRegistration. @@ -171,10 +231,10 @@ type BotChannelsRegistrationStatus struct { type BotChannelsRegistration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.microsoftAppId)",message="microsoftAppId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.microsoftAppId) || has(self.initProvider.microsoftAppId)",message="microsoftAppId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec BotChannelsRegistrationSpec `json:"spec"` Status BotChannelsRegistrationStatus `json:"status,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchannelwebchat_types.go b/apis/botservice/v1beta1/zz_botchannelwebchat_types.go index 7f4ec7f9c..a96e077dc 100755 --- a/apis/botservice/v1beta1/zz_botchannelwebchat_types.go +++ b/apis/botservice/v1beta1/zz_botchannelwebchat_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BotChannelWebChatInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A list of Web Chat Site names. + SiteNames []*string `json:"siteNames,omitempty" tf:"site_names,omitempty"` +} + type BotChannelWebChatObservation struct { // The name of the Bot Resource this channel will be associated with. Changing this forces a new resource to be created. @@ -73,6 +82,18 @@ type BotChannelWebChatParameters struct { type BotChannelWebChatSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BotChannelWebChatParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BotChannelWebChatInitParameters `json:"initProvider,omitempty"` } // BotChannelWebChatStatus defines the observed state of BotChannelWebChat. @@ -93,8 +114,8 @@ type BotChannelWebChatStatus struct { type BotChannelWebChat struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteNames)",message="siteNames is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.siteNames) || has(self.initProvider.siteNames)",message="siteNames is a required parameter" Spec BotChannelWebChatSpec `json:"spec"` Status BotChannelWebChatStatus `json:"status,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botconnection_types.go b/apis/botservice/v1beta1/zz_botconnection_types.go index b4c8f2163..028fb2223 100755 --- a/apis/botservice/v1beta1/zz_botconnection_types.go +++ b/apis/botservice/v1beta1/zz_botconnection_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BotConnectionInitParameters struct { + + // The Client ID that will be used to authenticate with the service provider. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A map of additional parameters to apply to the connection. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The Scopes at which the connection should be applied. + Scopes *string `json:"scopes,omitempty" tf:"scopes,omitempty"` + + // The name of the service provider that will be associated with this connection. Changing this forces a new resource to be created. + ServiceProviderName *string `json:"serviceProviderName,omitempty" tf:"service_provider_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type BotConnectionObservation struct { // The name of the Bot Resource this connection will be associated with. Changing this forces a new resource to be created. @@ -105,6 +126,18 @@ type BotConnectionParameters struct { type BotConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BotConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BotConnectionInitParameters `json:"initProvider,omitempty"` } // BotConnectionStatus defines the observed state of BotConnection. @@ -125,10 +158,10 @@ type BotConnectionStatus struct { type BotConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId)",message="clientId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serviceProviderName)",message="serviceProviderName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientId) || has(self.initProvider.clientId)",message="clientId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)",message="clientSecretSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serviceProviderName) || has(self.initProvider.serviceProviderName)",message="serviceProviderName is a required parameter" Spec BotConnectionSpec `json:"spec"` Status BotConnectionStatus `json:"status,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botwebapp_types.go b/apis/botservice/v1beta1/zz_botwebapp_types.go index dd8f511f1..a8d79666f 100755 --- a/apis/botservice/v1beta1/zz_botwebapp_types.go +++ b/apis/botservice/v1beta1/zz_botwebapp_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BotWebAppInitParameters struct { + + // The Application Insights Application ID to associate with the Web App Bot. + DeveloperAppInsightsApplicationID *string `json:"developerAppInsightsApplicationId,omitempty" tf:"developer_app_insights_application_id,omitempty"` + + // The Application Insights Key to associate with the Web App Bot. + DeveloperAppInsightsKey *string `json:"developerAppInsightsKey,omitempty" tf:"developer_app_insights_key,omitempty"` + + // The name of the Web App Bot will be displayed as. This defaults to name if not specified. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The Web App Bot endpoint. + Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` + + // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A list of LUIS App IDs to associate with the Web App Bot. + LuisAppIds []*string `json:"luisAppIds,omitempty" tf:"luis_app_ids,omitempty"` + + // The Microsoft Application ID for the Web App Bot. Changing this forces a new resource to be created. + MicrosoftAppID *string `json:"microsoftAppId,omitempty" tf:"microsoft_app_id,omitempty"` + + // The SKU of the Web App Bot. Valid values include F0 or S1. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type BotWebAppObservation struct { // The Application Insights Application ID to associate with the Web App Bot. @@ -113,6 +143,18 @@ type BotWebAppParameters struct { type BotWebAppSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BotWebAppParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BotWebAppInitParameters `json:"initProvider,omitempty"` } // BotWebAppStatus defines the observed state of BotWebApp. @@ -133,9 +175,9 @@ type BotWebAppStatus struct { type BotWebApp struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.microsoftAppId)",message="microsoftAppId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.microsoftAppId) || has(self.initProvider.microsoftAppId)",message="microsoftAppId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec BotWebAppSpec `json:"spec"` Status BotWebAppStatus `json:"status,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_generated.deepcopy.go b/apis/botservice/v1beta1/zz_generated.deepcopy.go index 8bab642d5..2b34654ee 100644 --- a/apis/botservice/v1beta1/zz_generated.deepcopy.go +++ b/apis/botservice/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,31 @@ func (in *BotChannelAlexa) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BotChannelAlexaInitParameters) DeepCopyInto(out *BotChannelAlexaInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SkillID != nil { + in, out := &in.SkillID, &out.SkillID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelAlexaInitParameters. +func (in *BotChannelAlexaInitParameters) DeepCopy() *BotChannelAlexaInitParameters { + if in == nil { + return nil + } + out := new(BotChannelAlexaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BotChannelAlexaList) DeepCopyInto(out *BotChannelAlexaList) { *out = *in @@ -173,6 +198,7 @@ func (in *BotChannelAlexaSpec) DeepCopyInto(out *BotChannelAlexaSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelAlexaSpec. @@ -229,6 +255,33 @@ func (in *BotChannelDirectLine) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BotChannelDirectLineInitParameters) DeepCopyInto(out *BotChannelDirectLineInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Site != nil { + in, out := &in.Site, &out.Site + *out = make([]SiteInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelDirectLineInitParameters. +func (in *BotChannelDirectLineInitParameters) DeepCopy() *BotChannelDirectLineInitParameters { + if in == nil { + return nil + } + out := new(BotChannelDirectLineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BotChannelDirectLineList) DeepCopyInto(out *BotChannelDirectLineList) { *out = *in @@ -365,6 +418,7 @@ func (in *BotChannelDirectLineSpec) DeepCopyInto(out *BotChannelDirectLineSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelDirectLineSpec. @@ -421,6 +475,31 @@ func (in *BotChannelLine) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BotChannelLineInitParameters) DeepCopyInto(out *BotChannelLineInitParameters) { + *out = *in + if in.LineChannel != nil { + in, out := &in.LineChannel, &out.LineChannel + *out = make([]LineChannelInitParameters, len(*in)) + copy(*out, *in) + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelLineInitParameters. +func (in *BotChannelLineInitParameters) DeepCopy() *BotChannelLineInitParameters { + if in == nil { + return nil + } + out := new(BotChannelLineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BotChannelLineList) DeepCopyInto(out *BotChannelLineList) { *out = *in @@ -553,6 +632,7 @@ func (in *BotChannelLineSpec) DeepCopyInto(out *BotChannelLineSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelLineSpec. @@ -609,6 +689,36 @@ func (in *BotChannelMSTeams) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BotChannelMSTeamsInitParameters) DeepCopyInto(out *BotChannelMSTeamsInitParameters) { + *out = *in + if in.CallingWebHook != nil { + in, out := &in.CallingWebHook, &out.CallingWebHook + *out = new(string) + **out = **in + } + if in.EnableCalling != nil { + in, out := &in.EnableCalling, &out.EnableCalling + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelMSTeamsInitParameters. +func (in *BotChannelMSTeamsInitParameters) DeepCopy() *BotChannelMSTeamsInitParameters { + if in == nil { + return nil + } + out := new(BotChannelMSTeamsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BotChannelMSTeamsList) DeepCopyInto(out *BotChannelMSTeamsList) { *out = *in @@ -751,6 +861,7 @@ func (in *BotChannelMSTeamsSpec) DeepCopyInto(out *BotChannelMSTeamsSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelMSTeamsSpec. @@ -807,6 +918,36 @@ func (in *BotChannelSMS) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BotChannelSMSInitParameters) DeepCopyInto(out *BotChannelSMSInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PhoneNumber != nil { + in, out := &in.PhoneNumber, &out.PhoneNumber + *out = new(string) + **out = **in + } + if in.SMSChannelAccountSecurityID != nil { + in, out := &in.SMSChannelAccountSecurityID, &out.SMSChannelAccountSecurityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelSMSInitParameters. +func (in *BotChannelSMSInitParameters) DeepCopy() *BotChannelSMSInitParameters { + if in == nil { + return nil + } + out := new(BotChannelSMSInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BotChannelSMSList) DeepCopyInto(out *BotChannelSMSList) { *out = *in @@ -950,6 +1091,7 @@ func (in *BotChannelSMSSpec) DeepCopyInto(out *BotChannelSMSSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelSMSSpec. @@ -1006,6 +1148,36 @@ func (in *BotChannelSlack) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BotChannelSlackInitParameters) DeepCopyInto(out *BotChannelSlackInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.LandingPageURL != nil { + in, out := &in.LandingPageURL, &out.LandingPageURL + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelSlackInitParameters. +func (in *BotChannelSlackInitParameters) DeepCopy() *BotChannelSlackInitParameters { + if in == nil { + return nil + } + out := new(BotChannelSlackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BotChannelSlackList) DeepCopyInto(out *BotChannelSlackList) { *out = *in @@ -1155,6 +1327,7 @@ func (in *BotChannelSlackSpec) DeepCopyInto(out *BotChannelSlackSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelSlackSpec. @@ -1211,6 +1384,37 @@ func (in *BotChannelWebChat) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BotChannelWebChatInitParameters) DeepCopyInto(out *BotChannelWebChatInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SiteNames != nil { + in, out := &in.SiteNames, &out.SiteNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelWebChatInitParameters. +func (in *BotChannelWebChatInitParameters) DeepCopy() *BotChannelWebChatInitParameters { + if in == nil { + return nil + } + out := new(BotChannelWebChatInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BotChannelWebChatList) DeepCopyInto(out *BotChannelWebChatList) { *out = *in @@ -1355,6 +1559,7 @@ func (in *BotChannelWebChatSpec) DeepCopyInto(out *BotChannelWebChatSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelWebChatSpec. @@ -1411,6 +1616,106 @@ func (in *BotChannelsRegistration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BotChannelsRegistrationInitParameters) DeepCopyInto(out *BotChannelsRegistrationInitParameters) { + *out = *in + if in.CmkKeyVaultURL != nil { + in, out := &in.CmkKeyVaultURL, &out.CmkKeyVaultURL + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DeveloperAppInsightsApplicationID != nil { + in, out := &in.DeveloperAppInsightsApplicationID, &out.DeveloperAppInsightsApplicationID + *out = new(string) + **out = **in + } + if in.DeveloperAppInsightsKey != nil { + in, out := &in.DeveloperAppInsightsKey, &out.DeveloperAppInsightsKey + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Endpoint != nil { + in, out := &in.Endpoint, &out.Endpoint + *out = new(string) + **out = **in + } + if in.IconURL != nil { + in, out := &in.IconURL, &out.IconURL + *out = new(string) + **out = **in + } + if in.IsolatedNetworkEnabled != nil { + in, out := &in.IsolatedNetworkEnabled, &out.IsolatedNetworkEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MicrosoftAppID != nil { + in, out := &in.MicrosoftAppID, &out.MicrosoftAppID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.StreamingEndpointEnabled != nil { + in, out := &in.StreamingEndpointEnabled, &out.StreamingEndpointEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelsRegistrationInitParameters. +func (in *BotChannelsRegistrationInitParameters) DeepCopy() *BotChannelsRegistrationInitParameters { + if in == nil { + return nil + } + out := new(BotChannelsRegistrationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BotChannelsRegistrationList) DeepCopyInto(out *BotChannelsRegistrationList) { *out = *in @@ -1678,6 +1983,7 @@ func (in *BotChannelsRegistrationSpec) DeepCopyInto(out *BotChannelsRegistration *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotChannelsRegistrationSpec. @@ -1734,6 +2040,71 @@ func (in *BotConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BotConnectionInitParameters) DeepCopyInto(out *BotConnectionInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = new(string) + **out = **in + } + if in.ServiceProviderName != nil { + in, out := &in.ServiceProviderName, &out.ServiceProviderName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotConnectionInitParameters. +func (in *BotConnectionInitParameters) DeepCopy() *BotConnectionInitParameters { + if in == nil { + return nil + } + out := new(BotConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BotConnectionList) DeepCopyInto(out *BotConnectionList) { *out = *in @@ -1947,6 +2318,7 @@ func (in *BotConnectionSpec) DeepCopyInto(out *BotConnectionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotConnectionSpec. @@ -2003,6 +2375,82 @@ func (in *BotWebApp) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BotWebAppInitParameters) DeepCopyInto(out *BotWebAppInitParameters) { + *out = *in + if in.DeveloperAppInsightsApplicationID != nil { + in, out := &in.DeveloperAppInsightsApplicationID, &out.DeveloperAppInsightsApplicationID + *out = new(string) + **out = **in + } + if in.DeveloperAppInsightsKey != nil { + in, out := &in.DeveloperAppInsightsKey, &out.DeveloperAppInsightsKey + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Endpoint != nil { + in, out := &in.Endpoint, &out.Endpoint + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.LuisAppIds != nil { + in, out := &in.LuisAppIds, &out.LuisAppIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MicrosoftAppID != nil { + in, out := &in.MicrosoftAppID, &out.MicrosoftAppID + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotWebAppInitParameters. +func (in *BotWebAppInitParameters) DeepCopy() *BotWebAppInitParameters { + if in == nil { + return nil + } + out := new(BotWebAppInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BotWebAppList) DeepCopyInto(out *BotWebAppList) { *out = *in @@ -2227,6 +2675,7 @@ func (in *BotWebAppSpec) DeepCopyInto(out *BotWebAppSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BotWebAppSpec. @@ -2256,6 +2705,21 @@ func (in *BotWebAppStatus) DeepCopy() *BotWebAppStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LineChannelInitParameters) DeepCopyInto(out *LineChannelInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LineChannelInitParameters. +func (in *LineChannelInitParameters) DeepCopy() *LineChannelInitParameters { + if in == nil { + return nil + } + out := new(LineChannelInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LineChannelObservation) DeepCopyInto(out *LineChannelObservation) { *out = *in @@ -2288,6 +2752,57 @@ func (in *LineChannelParameters) DeepCopy() *LineChannelParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteInitParameters) DeepCopyInto(out *SiteInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.EnhancedAuthenticationEnabled != nil { + in, out := &in.EnhancedAuthenticationEnabled, &out.EnhancedAuthenticationEnabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.TrustedOrigins != nil { + in, out := &in.TrustedOrigins, &out.TrustedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.V1Allowed != nil { + in, out := &in.V1Allowed, &out.V1Allowed + *out = new(bool) + **out = **in + } + if in.V3Allowed != nil { + in, out := &in.V3Allowed, &out.V3Allowed + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteInitParameters. +func (in *SiteInitParameters) DeepCopy() *SiteInitParameters { + if in == nil { + return nil + } + out := new(SiteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteObservation) DeepCopyInto(out *SiteObservation) { *out = *in diff --git a/apis/botservice/v1beta1/zz_generated.managed.go b/apis/botservice/v1beta1/zz_generated.managed.go index a54582a31..0c73e109d 100644 --- a/apis/botservice/v1beta1/zz_generated.managed.go +++ b/apis/botservice/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *BotChannelAlexa) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BotChannelAlexa. -func (mg *BotChannelAlexa) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BotChannelAlexa. +func (mg *BotChannelAlexa) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BotChannelAlexa. @@ -55,9 +55,9 @@ func (mg *BotChannelAlexa) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BotChannelAlexa. -func (mg *BotChannelAlexa) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BotChannelAlexa. +func (mg *BotChannelAlexa) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BotChannelAlexa. @@ -93,9 +93,9 @@ func (mg *BotChannelDirectLine) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BotChannelDirectLine. -func (mg *BotChannelDirectLine) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BotChannelDirectLine. +func (mg *BotChannelDirectLine) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BotChannelDirectLine. @@ -131,9 +131,9 @@ func (mg *BotChannelDirectLine) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BotChannelDirectLine. -func (mg *BotChannelDirectLine) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BotChannelDirectLine. +func (mg *BotChannelDirectLine) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BotChannelDirectLine. @@ -169,9 +169,9 @@ func (mg *BotChannelLine) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BotChannelLine. -func (mg *BotChannelLine) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BotChannelLine. +func (mg *BotChannelLine) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BotChannelLine. @@ -207,9 +207,9 @@ func (mg *BotChannelLine) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BotChannelLine. -func (mg *BotChannelLine) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BotChannelLine. +func (mg *BotChannelLine) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BotChannelLine. @@ -245,9 +245,9 @@ func (mg *BotChannelMSTeams) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BotChannelMSTeams. -func (mg *BotChannelMSTeams) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BotChannelMSTeams. +func (mg *BotChannelMSTeams) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BotChannelMSTeams. @@ -283,9 +283,9 @@ func (mg *BotChannelMSTeams) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BotChannelMSTeams. -func (mg *BotChannelMSTeams) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BotChannelMSTeams. +func (mg *BotChannelMSTeams) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BotChannelMSTeams. @@ -321,9 +321,9 @@ func (mg *BotChannelSMS) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BotChannelSMS. -func (mg *BotChannelSMS) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BotChannelSMS. +func (mg *BotChannelSMS) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BotChannelSMS. @@ -359,9 +359,9 @@ func (mg *BotChannelSMS) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BotChannelSMS. -func (mg *BotChannelSMS) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BotChannelSMS. +func (mg *BotChannelSMS) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BotChannelSMS. @@ -397,9 +397,9 @@ func (mg *BotChannelSlack) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BotChannelSlack. -func (mg *BotChannelSlack) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BotChannelSlack. +func (mg *BotChannelSlack) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BotChannelSlack. @@ -435,9 +435,9 @@ func (mg *BotChannelSlack) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BotChannelSlack. -func (mg *BotChannelSlack) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BotChannelSlack. +func (mg *BotChannelSlack) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BotChannelSlack. @@ -473,9 +473,9 @@ func (mg *BotChannelWebChat) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BotChannelWebChat. -func (mg *BotChannelWebChat) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BotChannelWebChat. +func (mg *BotChannelWebChat) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BotChannelWebChat. @@ -511,9 +511,9 @@ func (mg *BotChannelWebChat) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BotChannelWebChat. -func (mg *BotChannelWebChat) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BotChannelWebChat. +func (mg *BotChannelWebChat) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BotChannelWebChat. @@ -549,9 +549,9 @@ func (mg *BotChannelsRegistration) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BotChannelsRegistration. -func (mg *BotChannelsRegistration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BotChannelsRegistration. +func (mg *BotChannelsRegistration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BotChannelsRegistration. @@ -587,9 +587,9 @@ func (mg *BotChannelsRegistration) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BotChannelsRegistration. -func (mg *BotChannelsRegistration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BotChannelsRegistration. +func (mg *BotChannelsRegistration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BotChannelsRegistration. @@ -625,9 +625,9 @@ func (mg *BotConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BotConnection. -func (mg *BotConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BotConnection. +func (mg *BotConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BotConnection. @@ -663,9 +663,9 @@ func (mg *BotConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BotConnection. -func (mg *BotConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BotConnection. +func (mg *BotConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BotConnection. @@ -701,9 +701,9 @@ func (mg *BotWebApp) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BotWebApp. -func (mg *BotWebApp) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BotWebApp. +func (mg *BotWebApp) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BotWebApp. @@ -739,9 +739,9 @@ func (mg *BotWebApp) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BotWebApp. -func (mg *BotWebApp) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BotWebApp. +func (mg *BotWebApp) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BotWebApp. diff --git a/apis/botservice/v1beta1/zz_generated_terraformed.go b/apis/botservice/v1beta1/zz_generated_terraformed.go index 80a41281d..70f24cdd7 100755 --- a/apis/botservice/v1beta1/zz_generated_terraformed.go +++ b/apis/botservice/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *BotChannelAlexa) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BotChannelAlexa +func (tr *BotChannelAlexa) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BotChannelAlexa using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BotChannelAlexa) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *BotChannelDirectLine) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BotChannelDirectLine +func (tr *BotChannelDirectLine) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BotChannelDirectLine using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BotChannelDirectLine) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *BotChannelLine) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BotChannelLine +func (tr *BotChannelLine) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BotChannelLine using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BotChannelLine) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *BotChannelMSTeams) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BotChannelMSTeams +func (tr *BotChannelMSTeams) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BotChannelMSTeams using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BotChannelMSTeams) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *BotChannelSlack) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BotChannelSlack +func (tr *BotChannelSlack) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BotChannelSlack using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BotChannelSlack) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *BotChannelSMS) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BotChannelSMS +func (tr *BotChannelSMS) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BotChannelSMS using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BotChannelSMS) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *BotChannelWebChat) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BotChannelWebChat +func (tr *BotChannelWebChat) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BotChannelWebChat using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BotChannelWebChat) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *BotChannelsRegistration) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BotChannelsRegistration +func (tr *BotChannelsRegistration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BotChannelsRegistration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BotChannelsRegistration) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *BotConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BotConnection +func (tr *BotConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BotConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BotConnection) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *BotWebApp) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BotWebApp +func (tr *BotWebApp) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BotWebApp using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BotWebApp) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/cache/v1beta1/zz_generated.deepcopy.go b/apis/cache/v1beta1/zz_generated.deepcopy.go index 6ffaa4f28..b4679025f 100644 --- a/apis/cache/v1beta1/zz_generated.deepcopy.go +++ b/apis/cache/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,37 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -86,6 +117,31 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ModuleInitParameters) DeepCopyInto(out *ModuleInitParameters) { + *out = *in + if in.Args != nil { + in, out := &in.Args, &out.Args + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModuleInitParameters. +func (in *ModuleInitParameters) DeepCopy() *ModuleInitParameters { + if in == nil { + return nil + } + out := new(ModuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ModuleObservation) DeepCopyInto(out *ModuleObservation) { *out = *in @@ -141,6 +197,36 @@ func (in *ModuleParameters) DeepCopy() *ModuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PatchScheduleInitParameters) DeepCopyInto(out *PatchScheduleInitParameters) { + *out = *in + if in.DayOfWeek != nil { + in, out := &in.DayOfWeek, &out.DayOfWeek + *out = new(string) + **out = **in + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = new(string) + **out = **in + } + if in.StartHourUtc != nil { + in, out := &in.StartHourUtc, &out.StartHourUtc + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PatchScheduleInitParameters. +func (in *PatchScheduleInitParameters) DeepCopy() *PatchScheduleInitParameters { + if in == nil { + return nil + } + out := new(PatchScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PatchScheduleObservation) DeepCopyInto(out *PatchScheduleObservation) { *out = *in @@ -228,6 +314,143 @@ func (in *RedisCache) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisCacheInitParameters) DeepCopyInto(out *RedisCacheInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.EnableNonSSLPort != nil { + in, out := &in.EnableNonSSLPort, &out.EnableNonSSLPort + *out = new(bool) + **out = **in + } + if in.Family != nil { + in, out := &in.Family, &out.Family + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.PatchSchedule != nil { + in, out := &in.PatchSchedule, &out.PatchSchedule + *out = make([]PatchScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PrivateStaticIPAddress != nil { + in, out := &in.PrivateStaticIPAddress, &out.PrivateStaticIPAddress + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.RedisConfiguration != nil { + in, out := &in.RedisConfiguration, &out.RedisConfiguration + *out = make([]RedisConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RedisVersion != nil { + in, out := &in.RedisVersion, &out.RedisVersion + *out = new(string) + **out = **in + } + if in.ReplicasPerMaster != nil { + in, out := &in.ReplicasPerMaster, &out.ReplicasPerMaster + *out = new(float64) + **out = **in + } + if in.ReplicasPerPrimary != nil { + in, out := &in.ReplicasPerPrimary, &out.ReplicasPerPrimary + *out = new(float64) + **out = **in + } + if in.ShardCount != nil { + in, out := &in.ShardCount, &out.ShardCount + *out = new(float64) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantSettings != nil { + in, out := &in.TenantSettings, &out.TenantSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheInitParameters. +func (in *RedisCacheInitParameters) DeepCopy() *RedisCacheInitParameters { + if in == nil { + return nil + } + out := new(RedisCacheInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisCacheList) DeepCopyInto(out *RedisCacheList) { *out = *in @@ -599,6 +822,7 @@ func (in *RedisCacheSpec) DeepCopyInto(out *RedisCacheSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisCacheSpec. @@ -628,6 +852,71 @@ func (in *RedisCacheStatus) DeepCopy() *RedisCacheStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisConfigurationInitParameters) DeepCopyInto(out *RedisConfigurationInitParameters) { + *out = *in + if in.AofBackupEnabled != nil { + in, out := &in.AofBackupEnabled, &out.AofBackupEnabled + *out = new(bool) + **out = **in + } + if in.EnableAuthentication != nil { + in, out := &in.EnableAuthentication, &out.EnableAuthentication + *out = new(bool) + **out = **in + } + if in.MaxfragmentationmemoryReserved != nil { + in, out := &in.MaxfragmentationmemoryReserved, &out.MaxfragmentationmemoryReserved + *out = new(float64) + **out = **in + } + if in.MaxmemoryDelta != nil { + in, out := &in.MaxmemoryDelta, &out.MaxmemoryDelta + *out = new(float64) + **out = **in + } + if in.MaxmemoryPolicy != nil { + in, out := &in.MaxmemoryPolicy, &out.MaxmemoryPolicy + *out = new(string) + **out = **in + } + if in.MaxmemoryReserved != nil { + in, out := &in.MaxmemoryReserved, &out.MaxmemoryReserved + *out = new(float64) + **out = **in + } + if in.NotifyKeySpaceEvents != nil { + in, out := &in.NotifyKeySpaceEvents, &out.NotifyKeySpaceEvents + *out = new(string) + **out = **in + } + if in.RdbBackupEnabled != nil { + in, out := &in.RdbBackupEnabled, &out.RdbBackupEnabled + *out = new(bool) + **out = **in + } + if in.RdbBackupFrequency != nil { + in, out := &in.RdbBackupFrequency, &out.RdbBackupFrequency + *out = new(float64) + **out = **in + } + if in.RdbBackupMaxSnapshotCount != nil { + in, out := &in.RdbBackupMaxSnapshotCount, &out.RdbBackupMaxSnapshotCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisConfigurationInitParameters. +func (in *RedisConfigurationInitParameters) DeepCopy() *RedisConfigurationInitParameters { + if in == nil { + return nil + } + out := new(RedisConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisConfigurationObservation) DeepCopyInto(out *RedisConfigurationObservation) { *out = *in @@ -805,6 +1094,62 @@ func (in *RedisEnterpriseCluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisEnterpriseClusterInitParameters) DeepCopyInto(out *RedisEnterpriseClusterInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisEnterpriseClusterInitParameters. +func (in *RedisEnterpriseClusterInitParameters) DeepCopy() *RedisEnterpriseClusterInitParameters { + if in == nil { + return nil + } + out := new(RedisEnterpriseClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisEnterpriseClusterList) DeepCopyInto(out *RedisEnterpriseClusterList) { *out = *in @@ -984,6 +1329,7 @@ func (in *RedisEnterpriseClusterSpec) DeepCopyInto(out *RedisEnterpriseClusterSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisEnterpriseClusterSpec. @@ -1040,6 +1386,64 @@ func (in *RedisEnterpriseDatabase) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisEnterpriseDatabaseInitParameters) DeepCopyInto(out *RedisEnterpriseDatabaseInitParameters) { + *out = *in + if in.ClientProtocol != nil { + in, out := &in.ClientProtocol, &out.ClientProtocol + *out = new(string) + **out = **in + } + if in.ClusteringPolicy != nil { + in, out := &in.ClusteringPolicy, &out.ClusteringPolicy + *out = new(string) + **out = **in + } + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy + *out = new(string) + **out = **in + } + if in.LinkedDatabaseGroupNickname != nil { + in, out := &in.LinkedDatabaseGroupNickname, &out.LinkedDatabaseGroupNickname + *out = new(string) + **out = **in + } + if in.LinkedDatabaseID != nil { + in, out := &in.LinkedDatabaseID, &out.LinkedDatabaseID + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Module != nil { + in, out := &in.Module, &out.Module + *out = make([]ModuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisEnterpriseDatabaseInitParameters. +func (in *RedisEnterpriseDatabaseInitParameters) DeepCopy() *RedisEnterpriseDatabaseInitParameters { + if in == nil { + return nil + } + out := new(RedisEnterpriseDatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisEnterpriseDatabaseList) DeepCopyInto(out *RedisEnterpriseDatabaseList) { *out = *in @@ -1238,6 +1642,7 @@ func (in *RedisEnterpriseDatabaseSpec) DeepCopyInto(out *RedisEnterpriseDatabase *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisEnterpriseDatabaseSpec. @@ -1294,6 +1699,31 @@ func (in *RedisFirewallRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisFirewallRuleInitParameters) DeepCopyInto(out *RedisFirewallRuleInitParameters) { + *out = *in + if in.EndIP != nil { + in, out := &in.EndIP, &out.EndIP + *out = new(string) + **out = **in + } + if in.StartIP != nil { + in, out := &in.StartIP, &out.StartIP + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisFirewallRuleInitParameters. +func (in *RedisFirewallRuleInitParameters) DeepCopy() *RedisFirewallRuleInitParameters { + if in == nil { + return nil + } + out := new(RedisFirewallRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisFirewallRuleList) DeepCopyInto(out *RedisFirewallRuleList) { *out = *in @@ -1426,6 +1856,7 @@ func (in *RedisFirewallRuleSpec) DeepCopyInto(out *RedisFirewallRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisFirewallRuleSpec. @@ -1482,6 +1913,31 @@ func (in *RedisLinkedServer) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedisLinkedServerInitParameters) DeepCopyInto(out *RedisLinkedServerInitParameters) { + *out = *in + if in.LinkedRedisCacheLocation != nil { + in, out := &in.LinkedRedisCacheLocation, &out.LinkedRedisCacheLocation + *out = new(string) + **out = **in + } + if in.ServerRole != nil { + in, out := &in.ServerRole, &out.ServerRole + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisLinkedServerInitParameters. +func (in *RedisLinkedServerInitParameters) DeepCopy() *RedisLinkedServerInitParameters { + if in == nil { + return nil + } + out := new(RedisLinkedServerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedisLinkedServerList) DeepCopyInto(out *RedisLinkedServerList) { *out = *in @@ -1639,6 +2095,7 @@ func (in *RedisLinkedServerSpec) DeepCopyInto(out *RedisLinkedServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisLinkedServerSpec. diff --git a/apis/cache/v1beta1/zz_generated.managed.go b/apis/cache/v1beta1/zz_generated.managed.go index 6ef8de5bc..82ed59955 100644 --- a/apis/cache/v1beta1/zz_generated.managed.go +++ b/apis/cache/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *RedisCache) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RedisCache. -func (mg *RedisCache) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RedisCache. +func (mg *RedisCache) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RedisCache. @@ -55,9 +55,9 @@ func (mg *RedisCache) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RedisCache. -func (mg *RedisCache) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RedisCache. +func (mg *RedisCache) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RedisCache. @@ -93,9 +93,9 @@ func (mg *RedisEnterpriseCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RedisEnterpriseCluster. -func (mg *RedisEnterpriseCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RedisEnterpriseCluster. +func (mg *RedisEnterpriseCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RedisEnterpriseCluster. @@ -131,9 +131,9 @@ func (mg *RedisEnterpriseCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RedisEnterpriseCluster. -func (mg *RedisEnterpriseCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RedisEnterpriseCluster. +func (mg *RedisEnterpriseCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RedisEnterpriseCluster. @@ -169,9 +169,9 @@ func (mg *RedisEnterpriseDatabase) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RedisEnterpriseDatabase. -func (mg *RedisEnterpriseDatabase) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RedisEnterpriseDatabase. +func (mg *RedisEnterpriseDatabase) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RedisEnterpriseDatabase. @@ -207,9 +207,9 @@ func (mg *RedisEnterpriseDatabase) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RedisEnterpriseDatabase. -func (mg *RedisEnterpriseDatabase) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RedisEnterpriseDatabase. +func (mg *RedisEnterpriseDatabase) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RedisEnterpriseDatabase. @@ -245,9 +245,9 @@ func (mg *RedisFirewallRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RedisFirewallRule. -func (mg *RedisFirewallRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RedisFirewallRule. +func (mg *RedisFirewallRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RedisFirewallRule. @@ -283,9 +283,9 @@ func (mg *RedisFirewallRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RedisFirewallRule. -func (mg *RedisFirewallRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RedisFirewallRule. +func (mg *RedisFirewallRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RedisFirewallRule. @@ -321,9 +321,9 @@ func (mg *RedisLinkedServer) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RedisLinkedServer. -func (mg *RedisLinkedServer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RedisLinkedServer. +func (mg *RedisLinkedServer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RedisLinkedServer. @@ -359,9 +359,9 @@ func (mg *RedisLinkedServer) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RedisLinkedServer. -func (mg *RedisLinkedServer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RedisLinkedServer. +func (mg *RedisLinkedServer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RedisLinkedServer. diff --git a/apis/cache/v1beta1/zz_generated_terraformed.go b/apis/cache/v1beta1/zz_generated_terraformed.go index c3a11759c..e7f1d7e2a 100755 --- a/apis/cache/v1beta1/zz_generated_terraformed.go +++ b/apis/cache/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *RedisCache) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RedisCache +func (tr *RedisCache) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RedisCache using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RedisCache) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *RedisEnterpriseCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RedisEnterpriseCluster +func (tr *RedisEnterpriseCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RedisEnterpriseCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RedisEnterpriseCluster) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *RedisEnterpriseDatabase) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RedisEnterpriseDatabase +func (tr *RedisEnterpriseDatabase) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RedisEnterpriseDatabase using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RedisEnterpriseDatabase) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *RedisFirewallRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RedisFirewallRule +func (tr *RedisFirewallRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RedisFirewallRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RedisFirewallRule) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *RedisLinkedServer) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RedisLinkedServer +func (tr *RedisLinkedServer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RedisLinkedServer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RedisLinkedServer) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/cache/v1beta1/zz_rediscache_types.go b/apis/cache/v1beta1/zz_rediscache_types.go index 944c1adbf..f6ccf0fe2 100755 --- a/apis/cache/v1beta1/zz_rediscache_types.go +++ b/apis/cache/v1beta1/zz_rediscache_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Redis Cluster. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Redis Cluster. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this Redis Cluster. @@ -35,8 +44,20 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Redis Cluster. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type PatchScheduleInitParameters struct { + + // the Weekday name - possible values include Monday, Tuesday, Wednesday etc. + DayOfWeek *string `json:"dayOfWeek,omitempty" tf:"day_of_week,omitempty"` + + // The ISO 8601 timespan which specifies the amount of time the Redis Cache can be updated. Defaults to PT5H. + MaintenanceWindow *string `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` + + // the Start Hour for maintenance in UTC - possible values range from 0 - 23. + StartHourUtc *float64 `json:"startHourUtc,omitempty" tf:"start_hour_utc,omitempty"` } type PatchScheduleObservation struct { @@ -54,8 +75,8 @@ type PatchScheduleObservation struct { type PatchScheduleParameters struct { // the Weekday name - possible values include Monday, Tuesday, Wednesday etc. - // +kubebuilder:validation:Required - DayOfWeek *string `json:"dayOfWeek" tf:"day_of_week,omitempty"` + // +kubebuilder:validation:Optional + DayOfWeek *string `json:"dayOfWeek,omitempty" tf:"day_of_week,omitempty"` // The ISO 8601 timespan which specifies the amount of time the Redis Cache can be updated. Defaults to PT5H. // +kubebuilder:validation:Optional @@ -66,6 +87,63 @@ type PatchScheduleParameters struct { StartHourUtc *float64 `json:"startHourUtc,omitempty" tf:"start_hour_utc,omitempty"` } +type RedisCacheInitParameters struct { + + // The size of the Redis cache to deploy. Valid values for a SKU family of C (Basic/Standard) are 0, 1, 2, 3, 4, 5, 6, and for P (Premium) family are 1, 2, 3, 4, 5. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // Enable the non-SSL port (6379) - disabled by default. + EnableNonSSLPort *bool `json:"enableNonSslPort,omitempty" tf:"enable_non_ssl_port,omitempty"` + + // The SKU family/pricing group to use. Valid values are C (for Basic/Standard SKU family) and P (for Premium) + Family *string `json:"family,omitempty" tf:"family,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The location of the resource group. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The minimum TLS version. Possible values are 1.0, 1.1 and 1.2. Defaults to 1.0. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // A list of patch_schedule blocks as defined below. + PatchSchedule []PatchScheduleInitParameters `json:"patchSchedule,omitempty" tf:"patch_schedule,omitempty"` + + // The Static IP Address to assign to the Redis Cache when hosted inside the Virtual Network. This argument implies the use of subnet_id. Changing this forces a new resource to be created. + PrivateStaticIPAddress *string `json:"privateStaticIpAddress,omitempty" tf:"private_static_ip_address,omitempty"` + + // Whether or not public network access is allowed for this Redis Cache. true means this resource could be accessed by both public and private endpoint. false means only private endpoint access is allowed. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A redis_configuration as defined below - with some limitations by SKU - defaults/details are shown below. + RedisConfiguration []RedisConfigurationInitParameters `json:"redisConfiguration,omitempty" tf:"redis_configuration,omitempty"` + + // Redis version. Only major version needed. Valid values: 4, 6. + RedisVersion *string `json:"redisVersion,omitempty" tf:"redis_version,omitempty"` + + // Amount of replicas to create per master for this Redis Cache. + ReplicasPerMaster *float64 `json:"replicasPerMaster,omitempty" tf:"replicas_per_master,omitempty"` + + // Amount of replicas to create per primary for this Redis Cache. If both replicas_per_primary and replicas_per_master are set, they need to be equal. + ReplicasPerPrimary *float64 `json:"replicasPerPrimary,omitempty" tf:"replicas_per_primary,omitempty"` + + // Only available when using the Premium SKU The number of Shards to create on the Redis Cluster. + ShardCount *float64 `json:"shardCount,omitempty" tf:"shard_count,omitempty"` + + // The SKU of Redis to use. Possible values are Basic, Standard and Premium. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A mapping of tenant settings to assign to the resource. + TenantSettings map[string]*string `json:"tenantSettings,omitempty" tf:"tenant_settings,omitempty"` + + // Specifies a list of Availability Zones in which this Redis Cache should be located. Changing this forces a new Redis Cache to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type RedisCacheObservation struct { // The size of the Redis cache to deploy. Valid values for a SKU family of C (Basic/Standard) are 0, 1, 2, 3, 4, 5, 6, and for P (Premium) family are 1, 2, 3, 4, 5. @@ -243,6 +321,39 @@ type RedisCacheParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type RedisConfigurationInitParameters struct { + + // Enable or disable AOF persistence for this Redis Cache. Defaults to false. + AofBackupEnabled *bool `json:"aofBackupEnabled,omitempty" tf:"aof_backup_enabled,omitempty"` + + // If set to false, the Redis instance will be accessible without authentication. Defaults to true. + EnableAuthentication *bool `json:"enableAuthentication,omitempty" tf:"enable_authentication,omitempty"` + + // Value in megabytes reserved to accommodate for memory fragmentation. Defaults are shown below. + MaxfragmentationmemoryReserved *float64 `json:"maxfragmentationmemoryReserved,omitempty" tf:"maxfragmentationmemory_reserved,omitempty"` + + // The max-memory delta for this Redis instance. Defaults are shown below. + MaxmemoryDelta *float64 `json:"maxmemoryDelta,omitempty" tf:"maxmemory_delta,omitempty"` + + // How Redis will select what to remove when maxmemory is reached. Defaults are shown below. Defaults to volatile-lru. + MaxmemoryPolicy *string `json:"maxmemoryPolicy,omitempty" tf:"maxmemory_policy,omitempty"` + + // Value in megabytes reserved for non-cache usage e.g. failover. Defaults are shown below. + MaxmemoryReserved *float64 `json:"maxmemoryReserved,omitempty" tf:"maxmemory_reserved,omitempty"` + + // Keyspace notifications allows clients to subscribe to Pub/Sub channels in order to receive events affecting the Redis data set in some way. Reference + NotifyKeySpaceEvents *string `json:"notifyKeyspaceEvents,omitempty" tf:"notify_keyspace_events,omitempty"` + + // Is Backup Enabled? Only supported on Premium SKUs. Defaults to false. + RdbBackupEnabled *bool `json:"rdbBackupEnabled,omitempty" tf:"rdb_backup_enabled,omitempty"` + + // The Backup Frequency in Minutes. Only supported on Premium SKUs. Possible values are: 15, 30, 60, 360, 720 and 1440. + RdbBackupFrequency *float64 `json:"rdbBackupFrequency,omitempty" tf:"rdb_backup_frequency,omitempty"` + + // The maximum number of snapshots to create as a backup. Only supported for Premium SKUs. + RdbBackupMaxSnapshotCount *float64 `json:"rdbBackupMaxSnapshotCount,omitempty" tf:"rdb_backup_max_snapshot_count,omitempty"` +} + type RedisConfigurationObservation struct { // Enable or disable AOF persistence for this Redis Cache. Defaults to false. @@ -338,6 +449,18 @@ type RedisConfigurationParameters struct { type RedisCacheSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RedisCacheParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RedisCacheInitParameters `json:"initProvider,omitempty"` } // RedisCacheStatus defines the observed state of RedisCache. @@ -358,11 +481,11 @@ type RedisCacheStatus struct { type RedisCache struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.capacity)",message="capacity is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.family)",message="family is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.redisVersion)",message="redisVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.capacity) || has(self.initProvider.capacity)",message="capacity is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.family) || has(self.initProvider.family)",message="family is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.redisVersion) || has(self.initProvider.redisVersion)",message="redisVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec RedisCacheSpec `json:"spec"` Status RedisCacheStatus `json:"status,omitempty"` } diff --git a/apis/cache/v1beta1/zz_redisenterprisecluster_types.go b/apis/cache/v1beta1/zz_redisenterprisecluster_types.go index 1569d613f..99cc7e4f3 100755 --- a/apis/cache/v1beta1/zz_redisenterprisecluster_types.go +++ b/apis/cache/v1beta1/zz_redisenterprisecluster_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RedisEnterpriseClusterInitParameters struct { + + // The Azure Region where the Redis Enterprise Cluster should exist. Changing this forces a new Redis Enterprise Cluster to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The minimum TLS version. Possible values are 1.0, 1.1 and 1.2. Defaults to 1.2. Changing this forces a new Redis Enterprise Cluster to be created. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // The sku_name is comprised of two segments separated by a hyphen (e.g. Enterprise_E10-2). The first segment of the sku_name defines the name of the SKU, possible values are Enterprise_E10, Enterprise_E20", Enterprise_E50, Enterprise_E100, EnterpriseFlash_F300, EnterpriseFlash_F700 or EnterpriseFlash_F1500. The second segment defines the capacity of the sku_name, possible values for Enteprise SKUs are (2, 4, 6, ...). Possible values for EnterpriseFlash SKUs are (3, 9, 15, ...). Changing this forces a new Redis Enterprise Cluster to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags which should be assigned to the Redis Enterprise Cluster. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies a list of Availability Zones in which this Redis Enterprise Cluster should be located. Changing this forces a new Redis Enterprise Cluster to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type RedisEnterpriseClusterObservation struct { // DNS name of the cluster endpoint. @@ -80,6 +98,18 @@ type RedisEnterpriseClusterParameters struct { type RedisEnterpriseClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RedisEnterpriseClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RedisEnterpriseClusterInitParameters `json:"initProvider,omitempty"` } // RedisEnterpriseClusterStatus defines the observed state of RedisEnterpriseCluster. @@ -100,8 +130,8 @@ type RedisEnterpriseClusterStatus struct { type RedisEnterpriseCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec RedisEnterpriseClusterSpec `json:"spec"` Status RedisEnterpriseClusterStatus `json:"status,omitempty"` } diff --git a/apis/cache/v1beta1/zz_redisenterprisedatabase_types.go b/apis/cache/v1beta1/zz_redisenterprisedatabase_types.go index 23a048fd0..df9e0c576 100755 --- a/apis/cache/v1beta1/zz_redisenterprisedatabase_types.go +++ b/apis/cache/v1beta1/zz_redisenterprisedatabase_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ModuleInitParameters struct { + + // Configuration options for the module (e.g. ERROR_RATE 0.00 INITIAL_SIZE 400). Changing this forces a new resource to be created. Defaults to "". + Args *string `json:"args,omitempty" tf:"args,omitempty"` + + // The name which should be used for this module. Possible values are RedisBloom, RedisTimeSeries, RediSearch and RedisJSON. Changing this forces a new Redis Enterprise Database to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type ModuleObservation struct { // Configuration options for the module (e.g. ERROR_RATE 0.00 INITIAL_SIZE 400). Changing this forces a new resource to be created. Defaults to "". @@ -31,8 +40,32 @@ type ModuleParameters struct { Args *string `json:"args,omitempty" tf:"args,omitempty"` // The name which should be used for this module. Possible values are RedisBloom, RedisTimeSeries, RediSearch and RedisJSON. Changing this forces a new Redis Enterprise Database to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type RedisEnterpriseDatabaseInitParameters struct { + + // Specifies whether redis clients can connect using TLS-encrypted or plaintext redis protocols. Default is TLS-encrypted. Possible values are Encrypted and Plaintext. Defaults to Encrypted. Changing this forces a new Redis Enterprise Database to be created. + ClientProtocol *string `json:"clientProtocol,omitempty" tf:"client_protocol,omitempty"` + + // Clustering policy - default is OSSCluster. Specified at create time. Possible values are EnterpriseCluster and OSSCluster. Defaults to OSSCluster. Changing this forces a new Redis Enterprise Database to be created. + ClusteringPolicy *string `json:"clusteringPolicy,omitempty" tf:"clustering_policy,omitempty"` + + // Redis eviction policy - default is VolatileLRU. Possible values are AllKeysLFU, AllKeysLRU, AllKeysRandom, VolatileLRU, VolatileLFU, VolatileTTL, VolatileRandom and NoEviction. Changing this forces a new Redis Enterprise Database to be created. + EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` + + // Nickname of the group of linked databases. Changing this force a new Redis Enterprise Geo Database to be created. + LinkedDatabaseGroupNickname *string `json:"linkedDatabaseGroupNickname,omitempty" tf:"linked_database_group_nickname,omitempty"` + + // A list of database resources to link with this database with a maximum of 5. + LinkedDatabaseID []*string `json:"linkedDatabaseId,omitempty" tf:"linked_database_id,omitempty"` + + // A module block as defined below. Changing this forces a new resource to be created. + Module []ModuleInitParameters `json:"module,omitempty" tf:"module,omitempty"` + + // TCP port of the database endpoint. Specified at create time. Defaults to an available port. Changing this forces a new Redis Enterprise Database to be created. Defaults to 10000. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` } type RedisEnterpriseDatabaseObservation struct { @@ -130,6 +163,18 @@ type RedisEnterpriseDatabaseParameters struct { type RedisEnterpriseDatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RedisEnterpriseDatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RedisEnterpriseDatabaseInitParameters `json:"initProvider,omitempty"` } // RedisEnterpriseDatabaseStatus defines the observed state of RedisEnterpriseDatabase. diff --git a/apis/cache/v1beta1/zz_redisfirewallrule_types.go b/apis/cache/v1beta1/zz_redisfirewallrule_types.go index ceb246302..e2af7c156 100755 --- a/apis/cache/v1beta1/zz_redisfirewallrule_types.go +++ b/apis/cache/v1beta1/zz_redisfirewallrule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RedisFirewallRuleInitParameters struct { + + // The highest IP address included in the range. + EndIP *string `json:"endIp,omitempty" tf:"end_ip,omitempty"` + + // The lowest IP address included in the range + StartIP *string `json:"startIp,omitempty" tf:"start_ip,omitempty"` +} + type RedisFirewallRuleObservation struct { // The highest IP address included in the range. @@ -72,6 +81,18 @@ type RedisFirewallRuleParameters struct { type RedisFirewallRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RedisFirewallRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RedisFirewallRuleInitParameters `json:"initProvider,omitempty"` } // RedisFirewallRuleStatus defines the observed state of RedisFirewallRule. @@ -92,8 +113,8 @@ type RedisFirewallRuleStatus struct { type RedisFirewallRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIp)",message="endIp is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIp)",message="startIp is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endIp) || has(self.initProvider.endIp)",message="endIp is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.startIp) || has(self.initProvider.startIp)",message="startIp is a required parameter" Spec RedisFirewallRuleSpec `json:"spec"` Status RedisFirewallRuleStatus `json:"status,omitempty"` } diff --git a/apis/cache/v1beta1/zz_redislinkedserver_types.go b/apis/cache/v1beta1/zz_redislinkedserver_types.go index 528b0396e..e84d52c65 100755 --- a/apis/cache/v1beta1/zz_redislinkedserver_types.go +++ b/apis/cache/v1beta1/zz_redislinkedserver_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RedisLinkedServerInitParameters struct { + + // The location of the linked Redis cache. Changing this forces a new Redis to be created. + LinkedRedisCacheLocation *string `json:"linkedRedisCacheLocation,omitempty" tf:"linked_redis_cache_location,omitempty"` + + // The role of the linked Redis cache (eg "Secondary"). Changing this forces a new Redis to be created. Possible values are Primary and Secondary. + ServerRole *string `json:"serverRole,omitempty" tf:"server_role,omitempty"` +} + type RedisLinkedServerObservation struct { // The ID of the Redis. @@ -92,6 +101,18 @@ type RedisLinkedServerParameters struct { type RedisLinkedServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RedisLinkedServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RedisLinkedServerInitParameters `json:"initProvider,omitempty"` } // RedisLinkedServerStatus defines the observed state of RedisLinkedServer. @@ -112,8 +133,8 @@ type RedisLinkedServerStatus struct { type RedisLinkedServer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.linkedRedisCacheLocation)",message="linkedRedisCacheLocation is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serverRole)",message="serverRole is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.linkedRedisCacheLocation) || has(self.initProvider.linkedRedisCacheLocation)",message="linkedRedisCacheLocation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serverRole) || has(self.initProvider.serverRole)",message="serverRole is a required parameter" Spec RedisLinkedServerSpec `json:"spec"` Status RedisLinkedServerStatus `json:"status,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_endpoint_types.go b/apis/cdn/v1beta1/zz_endpoint_types.go index dcfbb8e35..706f68076 100755 --- a/apis/cdn/v1beta1/zz_endpoint_types.go +++ b/apis/cdn/v1beta1/zz_endpoint_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CacheExpirationActionInitParameters struct { + + // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. + Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` + + // Duration of the cache. Only allowed when behavior is set to Override or SetIfMissing. Format: [d.]hh:mm:ss + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` +} + type CacheExpirationActionObservation struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. @@ -25,14 +34,23 @@ type CacheExpirationActionObservation struct { type CacheExpirationActionParameters struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. - // +kubebuilder:validation:Required - Behavior *string `json:"behavior" tf:"behavior,omitempty"` + // +kubebuilder:validation:Optional + Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` // Duration of the cache. Only allowed when behavior is set to Override or SetIfMissing. Format: [d.]hh:mm:ss // +kubebuilder:validation:Optional Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` } +type CacheKeyQueryStringActionInitParameters struct { + + // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. + Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` + + // Comma separated list of parameter values. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type CacheKeyQueryStringActionObservation struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. @@ -45,14 +63,32 @@ type CacheKeyQueryStringActionObservation struct { type CacheKeyQueryStringActionParameters struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. - // +kubebuilder:validation:Required - Behavior *string `json:"behavior" tf:"behavior,omitempty"` + // +kubebuilder:validation:Optional + Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` // Comma separated list of parameter values. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type CookiesConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Header name. + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` + + // A list of transforms. Valid values are Lowercase and Uppercase. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type CookiesConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -82,18 +118,87 @@ type CookiesConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Header name. - // +kubebuilder:validation:Required - Selector *string `json:"selector" tf:"selector,omitempty"` + // +kubebuilder:validation:Optional + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type DeliveryRuleInitParameters struct { + + // A cache_expiration_action block as defined above. + CacheExpirationAction []CacheExpirationActionInitParameters `json:"cacheExpirationAction,omitempty" tf:"cache_expiration_action,omitempty"` + + // A cache_key_query_string_action block as defined above. + CacheKeyQueryStringAction []CacheKeyQueryStringActionInitParameters `json:"cacheKeyQueryStringAction,omitempty" tf:"cache_key_query_string_action,omitempty"` + + // A cookies_condition block as defined above. + CookiesCondition []CookiesConditionInitParameters `json:"cookiesCondition,omitempty" tf:"cookies_condition,omitempty"` + + // A device_condition block as defined below. + DeviceCondition []DeviceConditionInitParameters `json:"deviceCondition,omitempty" tf:"device_condition,omitempty"` + + // A http_version_condition block as defined below. + HTTPVersionCondition []HTTPVersionConditionInitParameters `json:"httpVersionCondition,omitempty" tf:"http_version_condition,omitempty"` + + // A modify_request_header_action block as defined below. + ModifyRequestHeaderAction []ModifyRequestHeaderActionInitParameters `json:"modifyRequestHeaderAction,omitempty" tf:"modify_request_header_action,omitempty"` + + // A modify_response_header_action block as defined below. + ModifyResponseHeaderAction []ModifyResponseHeaderActionInitParameters `json:"modifyResponseHeaderAction,omitempty" tf:"modify_response_header_action,omitempty"` + + // The Name which should be used for this Delivery Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The order used for this rule. The order values should be sequential and begin at 1. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // A post_arg_condition block as defined below. + PostArgCondition []PostArgConditionInitParameters `json:"postArgCondition,omitempty" tf:"post_arg_condition,omitempty"` + + // A query_string_condition block as defined below. + QueryStringCondition []QueryStringConditionInitParameters `json:"queryStringCondition,omitempty" tf:"query_string_condition,omitempty"` + + // A remote_address_condition block as defined below. + RemoteAddressCondition []RemoteAddressConditionInitParameters `json:"remoteAddressCondition,omitempty" tf:"remote_address_condition,omitempty"` + + // A request_body_condition block as defined below. + RequestBodyCondition []RequestBodyConditionInitParameters `json:"requestBodyCondition,omitempty" tf:"request_body_condition,omitempty"` + + // A request_header_condition block as defined below. + RequestHeaderCondition []RequestHeaderConditionInitParameters `json:"requestHeaderCondition,omitempty" tf:"request_header_condition,omitempty"` + + // A request_method_condition block as defined below. + RequestMethodCondition []RequestMethodConditionInitParameters `json:"requestMethodCondition,omitempty" tf:"request_method_condition,omitempty"` + + // A request_scheme_condition block as defined below. + RequestSchemeCondition []RequestSchemeConditionInitParameters `json:"requestSchemeCondition,omitempty" tf:"request_scheme_condition,omitempty"` + + // A request_uri_condition block as defined below. + RequestURICondition []RequestURIConditionInitParameters `json:"requestUriCondition,omitempty" tf:"request_uri_condition,omitempty"` + + // A url_file_extension_condition block as defined below. + URLFileExtensionCondition []URLFileExtensionConditionInitParameters `json:"urlFileExtensionCondition,omitempty" tf:"url_file_extension_condition,omitempty"` + + // A url_file_name_condition block as defined below. + URLFileNameCondition []URLFileNameConditionInitParameters `json:"urlFileNameCondition,omitempty" tf:"url_file_name_condition,omitempty"` + + // A url_path_condition block as defined below. + URLPathCondition []URLPathConditionInitParameters `json:"urlPathCondition,omitempty" tf:"url_path_condition,omitempty"` + + // A url_redirect_action block as defined below. + URLRedirectAction []URLRedirectActionInitParameters `json:"urlRedirectAction,omitempty" tf:"url_redirect_action,omitempty"` + + // A url_rewrite_action block as defined below. + URLRewriteAction []URLRewriteActionInitParameters `json:"urlRewriteAction,omitempty" tf:"url_rewrite_action,omitempty"` +} + type DeliveryRuleObservation struct { // A cache_expiration_action block as defined above. @@ -194,12 +299,12 @@ type DeliveryRuleParameters struct { ModifyResponseHeaderAction []ModifyResponseHeaderActionParameters `json:"modifyResponseHeaderAction,omitempty" tf:"modify_response_header_action,omitempty"` // The Name which should be used for this Delivery Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The order used for this rule. The order values should be sequential and begin at 1. - // +kubebuilder:validation:Required - Order *float64 `json:"order" tf:"order,omitempty"` + // +kubebuilder:validation:Optional + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // A post_arg_condition block as defined below. // +kubebuilder:validation:Optional @@ -254,6 +359,18 @@ type DeliveryRuleParameters struct { URLRewriteAction []URLRewriteActionParameters `json:"urlRewriteAction,omitempty" tf:"url_rewrite_action,omitempty"` } +type DeviceConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type DeviceConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -269,8 +386,8 @@ type DeviceConditionObservation struct { type DeviceConditionParameters struct { // List of string values. This is required if operator is not Any. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. // +kubebuilder:validation:Optional @@ -281,6 +398,54 @@ type DeviceConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type EndpointInitParameters struct { + + // An array of strings that indicates a content types on which compression will be applied. The value for the elements should be MIME types. + ContentTypesToCompress []*string `json:"contentTypesToCompress,omitempty" tf:"content_types_to_compress,omitempty"` + + // Rules for the rules engine. An endpoint can contain up until 4 of those rules that consist of conditions and actions. A delivery_rule blocks as defined below. + DeliveryRule []DeliveryRuleInitParameters `json:"deliveryRule,omitempty" tf:"delivery_rule,omitempty"` + + // A set of Geo Filters for this CDN Endpoint. Each geo_filter block supports fields documented below. + GeoFilter []GeoFilterInitParameters `json:"geoFilter,omitempty" tf:"geo_filter,omitempty"` + + // Actions that are valid for all resources regardless of any conditions. A global_delivery_rule block as defined below. + GlobalDeliveryRule []GlobalDeliveryRuleInitParameters `json:"globalDeliveryRule,omitempty" tf:"global_delivery_rule,omitempty"` + + // Indicates whether compression is to be enabled. + IsCompressionEnabled *bool `json:"isCompressionEnabled,omitempty" tf:"is_compression_enabled,omitempty"` + + // Defaults to true. + IsHTTPAllowed *bool `json:"isHttpAllowed,omitempty" tf:"is_http_allowed,omitempty"` + + // Defaults to true. + IsHTTPSAllowed *bool `json:"isHttpsAllowed,omitempty" tf:"is_https_allowed,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // What types of optimization should this CDN Endpoint optimize for? Possible values include DynamicSiteAcceleration, GeneralMediaStreaming, GeneralWebDelivery, LargeFileDownload and VideoOnDemandMediaStreaming. + OptimizationType *string `json:"optimizationType,omitempty" tf:"optimization_type,omitempty"` + + // The set of origins of the CDN endpoint. When multiple origins exist, the first origin will be used as primary and rest will be used as failover options. Each origin block supports fields documented below. Changing this forces a new resource to be created. + Origin []OriginInitParameters `json:"origin,omitempty" tf:"origin,omitempty"` + + // The host header CDN provider will send along with content requests to origins. + OriginHostHeader *string `json:"originHostHeader,omitempty" tf:"origin_host_header,omitempty"` + + // The path used at for origin requests. + OriginPath *string `json:"originPath,omitempty" tf:"origin_path,omitempty"` + + // the path to a file hosted on the origin which helps accelerate delivery of the dynamic content and calculate the most optimal routes for the CDN. This is relative to the origin_path. + ProbePath *string `json:"probePath,omitempty" tf:"probe_path,omitempty"` + + // Sets query string caching behavior. Allowed values are IgnoreQueryString, BypassCaching and UseQueryString. NotSet value can be used for Premium Verizon CDN profile. Defaults to IgnoreQueryString. + QuerystringCachingBehaviour *string `json:"querystringCachingBehaviour,omitempty" tf:"querystring_caching_behaviour,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type EndpointObservation struct { // An array of strings that indicates a content types on which compression will be applied. The value for the elements should be MIME types. @@ -430,6 +595,18 @@ type EndpointParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type GeoFilterInitParameters struct { + + // The Action of the Geo Filter. Possible values include Allow and Block. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A List of two letter country codes (e.g. US, GB) to be associated with this Geo Filter. + CountryCodes []*string `json:"countryCodes,omitempty" tf:"country_codes,omitempty"` + + // The relative path applicable to geo filter. + RelativePath *string `json:"relativePath,omitempty" tf:"relative_path,omitempty"` +} + type GeoFilterObservation struct { // The Action of the Geo Filter. Possible values include Allow and Block. @@ -445,16 +622,25 @@ type GeoFilterObservation struct { type GeoFilterParameters struct { // The Action of the Geo Filter. Possible values include Allow and Block. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // A List of two letter country codes (e.g. US, GB) to be associated with this Geo Filter. - // +kubebuilder:validation:Required - CountryCodes []*string `json:"countryCodes" tf:"country_codes,omitempty"` + // +kubebuilder:validation:Optional + CountryCodes []*string `json:"countryCodes,omitempty" tf:"country_codes,omitempty"` // The relative path applicable to geo filter. - // +kubebuilder:validation:Required - RelativePath *string `json:"relativePath" tf:"relative_path,omitempty"` + // +kubebuilder:validation:Optional + RelativePath *string `json:"relativePath,omitempty" tf:"relative_path,omitempty"` +} + +type GlobalDeliveryRuleCacheExpirationActionInitParameters struct { + + // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. + Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` + + // Duration of the cache. Only allowed when behavior is set to Override or SetIfMissing. Format: [d.]hh:mm:ss + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` } type GlobalDeliveryRuleCacheExpirationActionObservation struct { @@ -469,14 +655,23 @@ type GlobalDeliveryRuleCacheExpirationActionObservation struct { type GlobalDeliveryRuleCacheExpirationActionParameters struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. - // +kubebuilder:validation:Required - Behavior *string `json:"behavior" tf:"behavior,omitempty"` + // +kubebuilder:validation:Optional + Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` // Duration of the cache. Only allowed when behavior is set to Override or SetIfMissing. Format: [d.]hh:mm:ss // +kubebuilder:validation:Optional Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` } +type GlobalDeliveryRuleCacheKeyQueryStringActionInitParameters struct { + + // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. + Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` + + // Comma separated list of parameter values. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type GlobalDeliveryRuleCacheKeyQueryStringActionObservation struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. @@ -489,14 +684,47 @@ type GlobalDeliveryRuleCacheKeyQueryStringActionObservation struct { type GlobalDeliveryRuleCacheKeyQueryStringActionParameters struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. - // +kubebuilder:validation:Required - Behavior *string `json:"behavior" tf:"behavior,omitempty"` + // +kubebuilder:validation:Optional + Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` // Comma separated list of parameter values. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type GlobalDeliveryRuleInitParameters struct { + + // A cache_expiration_action block as defined above. + CacheExpirationAction []GlobalDeliveryRuleCacheExpirationActionInitParameters `json:"cacheExpirationAction,omitempty" tf:"cache_expiration_action,omitempty"` + + // A cache_key_query_string_action block as defined above. + CacheKeyQueryStringAction []GlobalDeliveryRuleCacheKeyQueryStringActionInitParameters `json:"cacheKeyQueryStringAction,omitempty" tf:"cache_key_query_string_action,omitempty"` + + // A modify_request_header_action block as defined below. + ModifyRequestHeaderAction []GlobalDeliveryRuleModifyRequestHeaderActionInitParameters `json:"modifyRequestHeaderAction,omitempty" tf:"modify_request_header_action,omitempty"` + + // A modify_response_header_action block as defined below. + ModifyResponseHeaderAction []GlobalDeliveryRuleModifyResponseHeaderActionInitParameters `json:"modifyResponseHeaderAction,omitempty" tf:"modify_response_header_action,omitempty"` + + // A url_redirect_action block as defined below. + URLRedirectAction []GlobalDeliveryRuleURLRedirectActionInitParameters `json:"urlRedirectAction,omitempty" tf:"url_redirect_action,omitempty"` + + // A url_rewrite_action block as defined below. + URLRewriteAction []GlobalDeliveryRuleURLRewriteActionInitParameters `json:"urlRewriteAction,omitempty" tf:"url_rewrite_action,omitempty"` +} + +type GlobalDeliveryRuleModifyRequestHeaderActionInitParameters struct { + + // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of the header. Only needed when action is set to Append or overwrite. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type GlobalDeliveryRuleModifyRequestHeaderActionObservation struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. @@ -512,18 +740,30 @@ type GlobalDeliveryRuleModifyRequestHeaderActionObservation struct { type GlobalDeliveryRuleModifyRequestHeaderActionParameters struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the header. Only needed when action is set to Append or overwrite. // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type GlobalDeliveryRuleModifyResponseHeaderActionInitParameters struct { + + // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of the header. Only needed when action is set to Append or overwrite. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type GlobalDeliveryRuleModifyResponseHeaderActionObservation struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. @@ -539,12 +779,12 @@ type GlobalDeliveryRuleModifyResponseHeaderActionObservation struct { type GlobalDeliveryRuleModifyResponseHeaderActionParameters struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the header. Only needed when action is set to Append or overwrite. // +kubebuilder:validation:Optional @@ -599,6 +839,27 @@ type GlobalDeliveryRuleParameters struct { URLRewriteAction []GlobalDeliveryRuleURLRewriteActionParameters `json:"urlRewriteAction,omitempty" tf:"url_rewrite_action,omitempty"` } +type GlobalDeliveryRuleURLRedirectActionInitParameters struct { + + // Specifies the fragment part of the URL. This value must not start with a #. + Fragment *string `json:"fragment,omitempty" tf:"fragment,omitempty"` + + // Specifies the hostname part of the URL. + HostName *string `json:"hostname,omitempty" tf:"hostname,omitempty"` + + // Specifies the path part of the URL. This value must begin with a /. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // Specifies the protocol part of the URL. Valid values are MatchRequest, Http and Https. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // Specifies the query string part of the URL. This value must not start with a ? or & and must be in = format separated by &. + QueryString *string `json:"queryString,omitempty" tf:"query_string,omitempty"` + + // Type of the redirect. Valid values are Found, Moved, PermanentRedirect and TemporaryRedirect. + RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` +} + type GlobalDeliveryRuleURLRedirectActionObservation struct { // Specifies the fragment part of the URL. This value must not start with a #. @@ -643,11 +904,11 @@ type GlobalDeliveryRuleURLRedirectActionParameters struct { QueryString *string `json:"queryString,omitempty" tf:"query_string,omitempty"` // Type of the redirect. Valid values are Found, Moved, PermanentRedirect and TemporaryRedirect. - // +kubebuilder:validation:Required - RedirectType *string `json:"redirectType" tf:"redirect_type,omitempty"` + // +kubebuilder:validation:Optional + RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` } -type GlobalDeliveryRuleURLRewriteActionObservation struct { +type GlobalDeliveryRuleURLRewriteActionInitParameters struct { // This value must start with a / and can't be longer than 260 characters. Destination *string `json:"destination,omitempty" tf:"destination,omitempty"` @@ -659,19 +920,43 @@ type GlobalDeliveryRuleURLRewriteActionObservation struct { SourcePattern *string `json:"sourcePattern,omitempty" tf:"source_pattern,omitempty"` } -type GlobalDeliveryRuleURLRewriteActionParameters struct { +type GlobalDeliveryRuleURLRewriteActionObservation struct { // This value must start with a / and can't be longer than 260 characters. - // +kubebuilder:validation:Required - Destination *string `json:"destination" tf:"destination,omitempty"` + Destination *string `json:"destination,omitempty" tf:"destination,omitempty"` + + // Defaults to true. + PreserveUnmatchedPath *bool `json:"preserveUnmatchedPath,omitempty" tf:"preserve_unmatched_path,omitempty"` + + // This value must start with a / and can't be longer than 260 characters. + SourcePattern *string `json:"sourcePattern,omitempty" tf:"source_pattern,omitempty"` +} + +type GlobalDeliveryRuleURLRewriteActionParameters struct { + + // This value must start with a / and can't be longer than 260 characters. + // +kubebuilder:validation:Optional + Destination *string `json:"destination,omitempty" tf:"destination,omitempty"` // Defaults to true. // +kubebuilder:validation:Optional PreserveUnmatchedPath *bool `json:"preserveUnmatchedPath,omitempty" tf:"preserve_unmatched_path,omitempty"` // This value must start with a / and can't be longer than 260 characters. - // +kubebuilder:validation:Required - SourcePattern *string `json:"sourcePattern" tf:"source_pattern,omitempty"` + // +kubebuilder:validation:Optional + SourcePattern *string `json:"sourcePattern,omitempty" tf:"source_pattern,omitempty"` +} + +type HTTPVersionConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } type HTTPVersionConditionObservation struct { @@ -689,8 +974,8 @@ type HTTPVersionConditionObservation struct { type HTTPVersionConditionParameters struct { // List of string values. This is required if operator is not Any. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. // +kubebuilder:validation:Optional @@ -701,6 +986,18 @@ type HTTPVersionConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type ModifyRequestHeaderActionInitParameters struct { + + // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of the header. Only needed when action is set to Append or overwrite. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ModifyRequestHeaderActionObservation struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. @@ -716,18 +1013,30 @@ type ModifyRequestHeaderActionObservation struct { type ModifyRequestHeaderActionParameters struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the header. Only needed when action is set to Append or overwrite. // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type ModifyResponseHeaderActionInitParameters struct { + + // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of the header. Only needed when action is set to Append or overwrite. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ModifyResponseHeaderActionObservation struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. @@ -743,18 +1052,33 @@ type ModifyResponseHeaderActionObservation struct { type ModifyResponseHeaderActionParameters struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the header. Only needed when action is set to Append or overwrite. // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type OriginInitParameters struct { + + // The HTTP port of the origin. Defaults to 80. Changing this forces a new resource to be created. + HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` + + // The HTTPS port of the origin. Defaults to 443. Changing this forces a new resource to be created. + HTTPSPort *float64 `json:"httpsPort,omitempty" tf:"https_port,omitempty"` + + // A string that determines the hostname/IP address of the origin server. This string can be a domain name, Storage Account endpoint, Web App endpoint, IPv4 address or IPv6 address. Changing this forces a new resource to be created. + HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` + + // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type OriginObservation struct { // The HTTP port of the origin. Defaults to 80. Changing this forces a new resource to be created. @@ -781,12 +1105,30 @@ type OriginParameters struct { HTTPSPort *float64 `json:"httpsPort,omitempty" tf:"https_port,omitempty"` // A string that determines the hostname/IP address of the origin server. This string can be a domain name, Storage Account endpoint, Web App endpoint, IPv4 address or IPv6 address. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - HostName *string `json:"hostName" tf:"host_name,omitempty"` + // +kubebuilder:validation:Optional + HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type PostArgConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Header name. + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` + + // A list of transforms. Valid values are Lowercase and Uppercase. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } type PostArgConditionObservation struct { @@ -818,18 +1160,33 @@ type PostArgConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Header name. - // +kubebuilder:validation:Required - Selector *string `json:"selector" tf:"selector,omitempty"` + // +kubebuilder:validation:Optional + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type QueryStringConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of transforms. Valid values are Lowercase and Uppercase. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type QueryStringConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -856,14 +1213,26 @@ type QueryStringConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type RemoteAddressConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type RemoteAddressConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -887,8 +1256,23 @@ type RemoteAddressConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + +type RequestBodyConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of transforms. Valid values are Lowercase and Uppercase. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } type RequestBodyConditionObservation struct { @@ -917,14 +1301,32 @@ type RequestBodyConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type RequestHeaderConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Header name. + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` + + // A list of transforms. Valid values are Lowercase and Uppercase. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type RequestHeaderConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -954,18 +1356,30 @@ type RequestHeaderConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Header name. - // +kubebuilder:validation:Required - Selector *string `json:"selector" tf:"selector,omitempty"` + // +kubebuilder:validation:Optional + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type RequestMethodConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type RequestMethodConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -981,8 +1395,8 @@ type RequestMethodConditionObservation struct { type RequestMethodConditionParameters struct { // List of string values. This is required if operator is not Any. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. // +kubebuilder:validation:Optional @@ -993,6 +1407,18 @@ type RequestMethodConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type RequestSchemeConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type RequestSchemeConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -1008,8 +1434,8 @@ type RequestSchemeConditionObservation struct { type RequestSchemeConditionParameters struct { // List of string values. This is required if operator is not Any. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. // +kubebuilder:validation:Optional @@ -1020,6 +1446,21 @@ type RequestSchemeConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type RequestURIConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of transforms. Valid values are Lowercase and Uppercase. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type RequestURIConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -1046,14 +1487,29 @@ type RequestURIConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type URLFileExtensionConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of transforms. Valid values are Lowercase and Uppercase. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type URLFileExtensionConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -1080,14 +1536,29 @@ type URLFileExtensionConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type URLFileNameConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of transforms. Valid values are Lowercase and Uppercase. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type URLFileNameConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -1114,14 +1585,29 @@ type URLFileNameConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type URLPathConditionInitParameters struct { + + // List of string values. This is required if operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // Defaults to false. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of transforms. Valid values are Lowercase and Uppercase. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type URLPathConditionObservation struct { // List of string values. This is required if operator is not Any. @@ -1148,14 +1634,35 @@ type URLPathConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type URLRedirectActionInitParameters struct { + + // Specifies the fragment part of the URL. This value must not start with a #. + Fragment *string `json:"fragment,omitempty" tf:"fragment,omitempty"` + + // Specifies the hostname part of the URL. + HostName *string `json:"hostname,omitempty" tf:"hostname,omitempty"` + + // Specifies the path part of the URL. This value must begin with a /. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // Specifies the protocol part of the URL. Valid values are MatchRequest, Http and Https. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // Specifies the query string part of the URL. This value must not start with a ? or & and must be in = format separated by &. + QueryString *string `json:"queryString,omitempty" tf:"query_string,omitempty"` + + // Type of the redirect. Valid values are Found, Moved, PermanentRedirect and TemporaryRedirect. + RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` +} + type URLRedirectActionObservation struct { // Specifies the fragment part of the URL. This value must not start with a #. @@ -1200,8 +1707,20 @@ type URLRedirectActionParameters struct { QueryString *string `json:"queryString,omitempty" tf:"query_string,omitempty"` // Type of the redirect. Valid values are Found, Moved, PermanentRedirect and TemporaryRedirect. - // +kubebuilder:validation:Required - RedirectType *string `json:"redirectType" tf:"redirect_type,omitempty"` + // +kubebuilder:validation:Optional + RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` +} + +type URLRewriteActionInitParameters struct { + + // This value must start with a / and can't be longer than 260 characters. + Destination *string `json:"destination,omitempty" tf:"destination,omitempty"` + + // Defaults to true. + PreserveUnmatchedPath *bool `json:"preserveUnmatchedPath,omitempty" tf:"preserve_unmatched_path,omitempty"` + + // This value must start with a / and can't be longer than 260 characters. + SourcePattern *string `json:"sourcePattern,omitempty" tf:"source_pattern,omitempty"` } type URLRewriteActionObservation struct { @@ -1219,22 +1738,34 @@ type URLRewriteActionObservation struct { type URLRewriteActionParameters struct { // This value must start with a / and can't be longer than 260 characters. - // +kubebuilder:validation:Required - Destination *string `json:"destination" tf:"destination,omitempty"` + // +kubebuilder:validation:Optional + Destination *string `json:"destination,omitempty" tf:"destination,omitempty"` // Defaults to true. // +kubebuilder:validation:Optional PreserveUnmatchedPath *bool `json:"preserveUnmatchedPath,omitempty" tf:"preserve_unmatched_path,omitempty"` // This value must start with a / and can't be longer than 260 characters. - // +kubebuilder:validation:Required - SourcePattern *string `json:"sourcePattern" tf:"source_pattern,omitempty"` + // +kubebuilder:validation:Optional + SourcePattern *string `json:"sourcePattern,omitempty" tf:"source_pattern,omitempty"` } // EndpointSpec defines the desired state of Endpoint type EndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EndpointInitParameters `json:"initProvider,omitempty"` } // EndpointStatus defines the observed state of Endpoint. @@ -1255,8 +1786,8 @@ type EndpointStatus struct { type Endpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.origin)",message="origin is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.origin) || has(self.initProvider.origin)",message="origin is a required parameter" Spec EndpointSpec `json:"spec"` Status EndpointStatus `json:"status,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorcustomdomain_types.go b/apis/cdn/v1beta1/zz_frontdoorcustomdomain_types.go index f2e22c010..f1c1b553d 100755 --- a/apis/cdn/v1beta1/zz_frontdoorcustomdomain_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorcustomdomain_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FrontdoorCustomDomainInitParameters struct { + + // The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created. + HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` + + // A tls block as defined below. + TLS []TLSInitParameters `json:"tls,omitempty" tf:"tls,omitempty"` +} + type FrontdoorCustomDomainObservation struct { // The ID of the Front Door Profile. Changing this forces a new Front Door Profile to be created. @@ -76,6 +85,18 @@ type FrontdoorCustomDomainParameters struct { TLS []TLSParameters `json:"tls,omitempty" tf:"tls,omitempty"` } +type TLSInitParameters struct { + + // Resource ID of the Front Door Secret. + CdnFrontdoorSecretID *string `json:"cdnFrontdoorSecretId,omitempty" tf:"cdn_frontdoor_secret_id,omitempty"` + + // Defines the source of the SSL certificate. Possible values include CustomerCertificate and ManagedCertificate. Defaults to ManagedCertificate. + CertificateType *string `json:"certificateType,omitempty" tf:"certificate_type,omitempty"` + + // TLS protocol version that will be used for Https. Possible values include TLS10 and TLS12. Defaults to TLS12. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` +} + type TLSObservation struct { // Resource ID of the Front Door Secret. @@ -107,6 +128,18 @@ type TLSParameters struct { type FrontdoorCustomDomainSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorCustomDomainParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorCustomDomainInitParameters `json:"initProvider,omitempty"` } // FrontdoorCustomDomainStatus defines the observed state of FrontdoorCustomDomain. @@ -127,8 +160,8 @@ type FrontdoorCustomDomainStatus struct { type FrontdoorCustomDomain struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.hostName)",message="hostName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tls)",message="tls is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.hostName) || has(self.initProvider.hostName)",message="hostName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tls) || has(self.initProvider.tls)",message="tls is a required parameter" Spec FrontdoorCustomDomainSpec `json:"spec"` Status FrontdoorCustomDomainStatus `json:"status,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorcustomdomainassociation_types.go b/apis/cdn/v1beta1/zz_frontdoorcustomdomainassociation_types.go index 6b965a85c..b887660ae 100755 --- a/apis/cdn/v1beta1/zz_frontdoorcustomdomainassociation_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorcustomdomainassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FrontdoorCustomDomainAssociationInitParameters struct { +} + type FrontdoorCustomDomainAssociationObservation struct { // The ID of the Front Door Custom Domain that should be managed by the association resource. Changing this forces a new association resource to be created. @@ -60,6 +63,18 @@ type FrontdoorCustomDomainAssociationParameters struct { type FrontdoorCustomDomainAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorCustomDomainAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorCustomDomainAssociationInitParameters `json:"initProvider,omitempty"` } // FrontdoorCustomDomainAssociationStatus defines the observed state of FrontdoorCustomDomainAssociation. diff --git a/apis/cdn/v1beta1/zz_frontdoorendpoint_types.go b/apis/cdn/v1beta1/zz_frontdoorendpoint_types.go index 40ed937b6..10b9599a3 100755 --- a/apis/cdn/v1beta1/zz_frontdoorendpoint_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorendpoint_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FrontdoorEndpointInitParameters struct { + + // Specifies if this Front Door Endpoint is enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Specifies a mapping of tags which should be assigned to the Front Door Endpoint. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type FrontdoorEndpointObservation struct { // The ID of the Front Door Profile within which this Front Door Endpoint should exist. Changing this forces a new Front Door Endpoint to be created. @@ -60,6 +69,18 @@ type FrontdoorEndpointParameters struct { type FrontdoorEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorEndpointInitParameters `json:"initProvider,omitempty"` } // FrontdoorEndpointStatus defines the observed state of FrontdoorEndpoint. diff --git a/apis/cdn/v1beta1/zz_frontdoororigin_types.go b/apis/cdn/v1beta1/zz_frontdoororigin_types.go index 5c9d74e91..29987a301 100755 --- a/apis/cdn/v1beta1/zz_frontdoororigin_types.go +++ b/apis/cdn/v1beta1/zz_frontdoororigin_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FrontdoorOriginInitParameters struct { + + // Specifies whether certificate name checks are enabled for this origin. + CertificateNameCheckEnabled *bool `json:"certificateNameCheckEnabled,omitempty" tf:"certificate_name_check_enabled,omitempty"` + + // Should the origin be enabled? Possible values are true or false. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The value of the HTTP port. Must be between 1 and 65535. Defaults to 80. + HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` + + // The value of the HTTPS port. Must be between 1 and 65535. Defaults to 443. + HTTPSPort *float64 `json:"httpsPort,omitempty" tf:"https_port,omitempty"` + + // Should the origin be enabled? Possible values are true or false. Defaults to true. + HealthProbesEnabled *bool `json:"healthProbesEnabled,omitempty" tf:"health_probes_enabled,omitempty"` + + // Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy. Must be between 1 and 5 (inclusive). Defaults to 1. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // A private_link block as defined below. + PrivateLink []PrivateLinkInitParameters `json:"privateLink,omitempty" tf:"private_link,omitempty"` + + // The weight of the origin in a given origin group for load balancing. Must be between 1 and 1000. Defaults to 500. + Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` +} + type FrontdoorOriginObservation struct { // The ID of the Front Door Origin Group within which this Front Door Origin should exist. Changing this forces a new Front Door Origin to be created. @@ -129,6 +156,15 @@ type FrontdoorOriginParameters struct { Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } +type PrivateLinkInitParameters struct { + + // Specifies the request message that will be submitted to the private_link_target_id when requesting the private link endpoint connection. Values must be between 1 and 140 characters in length. Defaults to Access request for CDN FrontDoor Private Link Origin. + RequestMessage *string `json:"requestMessage,omitempty" tf:"request_message,omitempty"` + + // Specifies the type of target for this Private Link Endpoint. Possible values are blob, blob_secondary, web and sites. + TargetType *string `json:"targetType,omitempty" tf:"target_type,omitempty"` +} + type PrivateLinkObservation struct { // Specifies the location where the Private Link resource should exist. Changing this forces a new resource to be created. @@ -187,6 +223,18 @@ type PrivateLinkParameters struct { type FrontdoorOriginSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorOriginParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorOriginInitParameters `json:"initProvider,omitempty"` } // FrontdoorOriginStatus defines the observed state of FrontdoorOrigin. @@ -207,7 +255,7 @@ type FrontdoorOriginStatus struct { type FrontdoorOrigin struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.certificateNameCheckEnabled)",message="certificateNameCheckEnabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.certificateNameCheckEnabled) || has(self.initProvider.certificateNameCheckEnabled)",message="certificateNameCheckEnabled is a required parameter" Spec FrontdoorOriginSpec `json:"spec"` Status FrontdoorOriginStatus `json:"status,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoororigingroup_types.go b/apis/cdn/v1beta1/zz_frontdoororigingroup_types.go index 2cf4ba8cd..e1ea06602 100755 --- a/apis/cdn/v1beta1/zz_frontdoororigingroup_types.go +++ b/apis/cdn/v1beta1/zz_frontdoororigingroup_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FrontdoorOriginGroupInitParameters struct { + + // A health_probe block as defined below. + HealthProbe []HealthProbeInitParameters `json:"healthProbe,omitempty" tf:"health_probe,omitempty"` + + // A load_balancing block as defined below. + LoadBalancing []LoadBalancingInitParameters `json:"loadBalancing,omitempty" tf:"load_balancing,omitempty"` + + // Specifies the amount of time which should elapse before shifting traffic to another endpoint when a healthy endpoint becomes unhealthy or a new endpoint is added. Possible values are between 0 and 50 minutes (inclusive). Default is 10 minutes. + RestoreTrafficTimeToHealedOrNewEndpointInMinutes *float64 `json:"restoreTrafficTimeToHealedOrNewEndpointInMinutes,omitempty" tf:"restore_traffic_time_to_healed_or_new_endpoint_in_minutes,omitempty"` + + // Specifies whether session affinity should be enabled on this host. Defaults to true. + SessionAffinityEnabled *bool `json:"sessionAffinityEnabled,omitempty" tf:"session_affinity_enabled,omitempty"` +} + type FrontdoorOriginGroupObservation struct { // The ID of the Front Door Profile within which this Front Door Origin Group should exist. Changing this forces a new Front Door Origin Group to be created. @@ -67,6 +82,21 @@ type FrontdoorOriginGroupParameters struct { SessionAffinityEnabled *bool `json:"sessionAffinityEnabled,omitempty" tf:"session_affinity_enabled,omitempty"` } +type HealthProbeInitParameters struct { + + // Specifies the number of seconds between health probes. Possible values are between 5 and 31536000 seconds (inclusive). + IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` + + // Specifies the path relative to the origin that is used to determine the health of the origin. Defaults to /. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // Specifies the protocol to use for health probe. Possible values are Http and Https. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // Specifies the type of health probe request that is made. Possible values are GET and HEAD. Defaults to HEAD. + RequestType *string `json:"requestType,omitempty" tf:"request_type,omitempty"` +} + type HealthProbeObservation struct { // Specifies the number of seconds between health probes. Possible values are between 5 and 31536000 seconds (inclusive). @@ -85,22 +115,34 @@ type HealthProbeObservation struct { type HealthProbeParameters struct { // Specifies the number of seconds between health probes. Possible values are between 5 and 31536000 seconds (inclusive). - // +kubebuilder:validation:Required - IntervalInSeconds *float64 `json:"intervalInSeconds" tf:"interval_in_seconds,omitempty"` + // +kubebuilder:validation:Optional + IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` // Specifies the path relative to the origin that is used to determine the health of the origin. Defaults to /. // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // Specifies the protocol to use for health probe. Possible values are Http and Https. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // Specifies the type of health probe request that is made. Possible values are GET and HEAD. Defaults to HEAD. // +kubebuilder:validation:Optional RequestType *string `json:"requestType,omitempty" tf:"request_type,omitempty"` } +type LoadBalancingInitParameters struct { + + // Specifies the additional latency in milliseconds for probes to fall into the lowest latency bucket. Possible values are between 0 and 1000 milliseconds (inclusive). Defaults to 50. + AdditionalLatencyInMilliseconds *float64 `json:"additionalLatencyInMilliseconds,omitempty" tf:"additional_latency_in_milliseconds,omitempty"` + + // Specifies the number of samples to consider for load balancing decisions. Possible values are between 0 and 255 (inclusive). Defaults to 4. + SampleSize *float64 `json:"sampleSize,omitempty" tf:"sample_size,omitempty"` + + // Specifies the number of samples within the sample period that must succeed. Possible values are between 0 and 255 (inclusive). Defaults to 3. + SuccessfulSamplesRequired *float64 `json:"successfulSamplesRequired,omitempty" tf:"successful_samples_required,omitempty"` +} + type LoadBalancingObservation struct { // Specifies the additional latency in milliseconds for probes to fall into the lowest latency bucket. Possible values are between 0 and 1000 milliseconds (inclusive). Defaults to 50. @@ -132,6 +174,18 @@ type LoadBalancingParameters struct { type FrontdoorOriginGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorOriginGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorOriginGroupInitParameters `json:"initProvider,omitempty"` } // FrontdoorOriginGroupStatus defines the observed state of FrontdoorOriginGroup. @@ -152,7 +206,7 @@ type FrontdoorOriginGroupStatus struct { type FrontdoorOriginGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.loadBalancing)",message="loadBalancing is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.loadBalancing) || has(self.initProvider.loadBalancing)",message="loadBalancing is a required parameter" Spec FrontdoorOriginGroupSpec `json:"spec"` Status FrontdoorOriginGroupStatus `json:"status,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorprofile_types.go b/apis/cdn/v1beta1/zz_frontdoorprofile_types.go index 77e20d19f..a19571ce7 100755 --- a/apis/cdn/v1beta1/zz_frontdoorprofile_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorprofile_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FrontdoorProfileInitParameters struct { + + // Specifies the maximum response timeout in seconds. Possible values are between 16 and 240 seconds (inclusive). Defaults to 120 seconds. + ResponseTimeoutSeconds *float64 `json:"responseTimeoutSeconds,omitempty" tf:"response_timeout_seconds,omitempty"` + + // Specifies the SKU for this Front Door Profile. Possible values include Standard_AzureFrontDoor and Premium_AzureFrontDoor. Changing this forces a new resource to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // Specifies a mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type FrontdoorProfileObservation struct { // The ID of this Front Door Profile. @@ -66,6 +78,18 @@ type FrontdoorProfileParameters struct { type FrontdoorProfileSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorProfileParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorProfileInitParameters `json:"initProvider,omitempty"` } // FrontdoorProfileStatus defines the observed state of FrontdoorProfile. @@ -86,7 +110,7 @@ type FrontdoorProfileStatus struct { type FrontdoorProfile struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec FrontdoorProfileSpec `json:"spec"` Status FrontdoorProfileStatus `json:"status,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorroute_types.go b/apis/cdn/v1beta1/zz_frontdoorroute_types.go index c751e1401..c5549edd6 100755 --- a/apis/cdn/v1beta1/zz_frontdoorroute_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorroute_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CacheInitParameters struct { + + // Is content compression enabled? Possible values are true or false. Defaults to false. + CompressionEnabled *bool `json:"compressionEnabled,omitempty" tf:"compression_enabled,omitempty"` + + // A list of one or more Content types (formerly known as MIME types) to compress. Possible values include application/eot, application/font, application/font-sfnt, application/javascript, application/json, application/opentype, application/otf, application/pkcs7-mime, application/truetype, application/ttf, application/vnd.ms-fontobject, application/xhtml+xml, application/xml, application/xml+rss, application/x-font-opentype, application/x-font-truetype, application/x-font-ttf, application/x-httpd-cgi, application/x-mpegurl, application/x-opentype, application/x-otf, application/x-perl, application/x-ttf, application/x-javascript, font/eot, font/ttf, font/otf, font/opentype, image/svg+xml, text/css, text/csv, text/html, text/javascript, text/js, text/plain, text/richtext, text/tab-separated-values, text/xml, text/x-script, text/x-component or text/x-java-source. + ContentTypesToCompress []*string `json:"contentTypesToCompress,omitempty" tf:"content_types_to_compress,omitempty"` + + // Defines how the Front Door Route will cache requests that include query strings. Possible values include IgnoreQueryString, IgnoreSpecifiedQueryStrings, IncludeSpecifiedQueryStrings or UseQueryString. Defaults it IgnoreQueryString. + QueryStringCachingBehavior *string `json:"queryStringCachingBehavior,omitempty" tf:"query_string_caching_behavior,omitempty"` + + // Query strings to include or ignore. + QueryStrings []*string `json:"queryStrings,omitempty" tf:"query_strings,omitempty"` +} + type CacheObservation struct { // Is content compression enabled? Possible values are true or false. Defaults to false. @@ -47,6 +62,33 @@ type CacheParameters struct { QueryStrings []*string `json:"queryStrings,omitempty" tf:"query_strings,omitempty"` } +type FrontdoorRouteInitParameters struct { + + // A cache block as defined below. + Cache []CacheInitParameters `json:"cache,omitempty" tf:"cache,omitempty"` + + // A directory path on the Front Door Origin that can be used to retrieve content (e.g. contoso.cloudapp.net/originpath). + CdnFrontdoorOriginPath *string `json:"cdnFrontdoorOriginPath,omitempty" tf:"cdn_frontdoor_origin_path,omitempty"` + + // Is this Front Door Route enabled? Possible values are true or false. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The Protocol that will be use when forwarding traffic to backends. Possible values are HttpOnly, HttpsOnly or MatchRequest. + ForwardingProtocol *string `json:"forwardingProtocol,omitempty" tf:"forwarding_protocol,omitempty"` + + // Automatically redirect HTTP traffic to HTTPS traffic? Possible values are true or false. Defaults to true. + HTTPSRedirectEnabled *bool `json:"httpsRedirectEnabled,omitempty" tf:"https_redirect_enabled,omitempty"` + + // Should this Front Door Route be linked to the default endpoint? Possible values include true or false. Defaults to true. + LinkToDefaultDomain *bool `json:"linkToDefaultDomain,omitempty" tf:"link_to_default_domain,omitempty"` + + // The route patterns of the rule. + PatternsToMatch []*string `json:"patternsToMatch,omitempty" tf:"patterns_to_match,omitempty"` + + // One or more Protocols supported by this Front Door Route. Possible values are Http or Https. + SupportedProtocols []*string `json:"supportedProtocols,omitempty" tf:"supported_protocols,omitempty"` +} + type FrontdoorRouteObservation struct { // A cache block as defined below. @@ -201,6 +243,18 @@ type FrontdoorRouteParameters struct { type FrontdoorRouteSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorRouteParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorRouteInitParameters `json:"initProvider,omitempty"` } // FrontdoorRouteStatus defines the observed state of FrontdoorRoute. @@ -221,8 +275,8 @@ type FrontdoorRouteStatus struct { type FrontdoorRoute struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.patternsToMatch)",message="patternsToMatch is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.supportedProtocols)",message="supportedProtocols is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.patternsToMatch) || has(self.initProvider.patternsToMatch)",message="patternsToMatch is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.supportedProtocols) || has(self.initProvider.supportedProtocols)",message="supportedProtocols is a required parameter" Spec FrontdoorRouteSpec `json:"spec"` Status FrontdoorRouteStatus `json:"status,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorrule_types.go b/apis/cdn/v1beta1/zz_frontdoorrule_types.go index 82c08da13..7d6d1a66f 100755 --- a/apis/cdn/v1beta1/zz_frontdoorrule_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorrule_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActionsInitParameters struct { + + // A request_header_action block as defined below. + RequestHeaderAction []RequestHeaderActionInitParameters `json:"requestHeaderAction,omitempty" tf:"request_header_action,omitempty"` + + // A response_header_action block as defined below. + ResponseHeaderAction []ResponseHeaderActionInitParameters `json:"responseHeaderAction,omitempty" tf:"response_header_action,omitempty"` + + // A route_configuration_override_action block as defined below. + RouteConfigurationOverrideAction []RouteConfigurationOverrideActionInitParameters `json:"routeConfigurationOverrideAction,omitempty" tf:"route_configuration_override_action,omitempty"` + + // A url_redirect_action block as defined below. You may not have a url_redirect_action and a url_rewrite_action defined in the same actions block. + URLRedirectAction []ActionsURLRedirectActionInitParameters `json:"urlRedirectAction,omitempty" tf:"url_redirect_action,omitempty"` + + // A url_rewrite_action block as defined below. You may not have a url_rewrite_action and a url_redirect_action defined in the same actions block. + URLRewriteAction []ActionsURLRewriteActionInitParameters `json:"urlRewriteAction,omitempty" tf:"url_rewrite_action,omitempty"` +} + type ActionsObservation struct { // A request_header_action block as defined below. @@ -54,6 +72,27 @@ type ActionsParameters struct { URLRewriteAction []ActionsURLRewriteActionParameters `json:"urlRewriteAction,omitempty" tf:"url_rewrite_action,omitempty"` } +type ActionsURLRedirectActionInitParameters struct { + + // The fragment to use in the redirect. The value must be a string between 0 and 1024 characters in length, leave blank to preserve the incoming fragment. Defaults to an empty string. Defaults to "". + DestinationFragment *string `json:"destinationFragment,omitempty" tf:"destination_fragment,omitempty"` + + // The host name you want the request to be redirected to. The value must be a string between 0 and 2048 characters in length, leave blank to preserve the incoming host. + DestinationHostName *string `json:"destinationHostname,omitempty" tf:"destination_hostname,omitempty"` + + // The path to use in the redirect. The value must be a string and include the leading /, leave blank to preserve the incoming path. Defaults to an empty string. Defaults to "". + DestinationPath *string `json:"destinationPath,omitempty" tf:"destination_path,omitempty"` + + // The query string used in the redirect URL. The value must be in the = or ={action_server_variable} format and must not include the leading ?, leave blank to preserve the incoming query string. Maximum allowed length for this field is 2048 characters. Defaults to an empty string. Defaults to "". + QueryString *string `json:"queryString,omitempty" tf:"query_string,omitempty"` + + // The protocol the request will be redirected as. Possible values include MatchRequest, Http or Https. Defaults to MatchRequest. + RedirectProtocol *string `json:"redirectProtocol,omitempty" tf:"redirect_protocol,omitempty"` + + // The response type to return to the requestor. Possible values include Moved, Found , TemporaryRedirect or PermanentRedirect. + RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` +} + type ActionsURLRedirectActionObservation struct { // The fragment to use in the redirect. The value must be a string between 0 and 1024 characters in length, leave blank to preserve the incoming fragment. Defaults to an empty string. Defaults to "". @@ -82,8 +121,8 @@ type ActionsURLRedirectActionParameters struct { DestinationFragment *string `json:"destinationFragment,omitempty" tf:"destination_fragment,omitempty"` // The host name you want the request to be redirected to. The value must be a string between 0 and 2048 characters in length, leave blank to preserve the incoming host. - // +kubebuilder:validation:Required - DestinationHostName *string `json:"destinationHostname" tf:"destination_hostname,omitempty"` + // +kubebuilder:validation:Optional + DestinationHostName *string `json:"destinationHostname,omitempty" tf:"destination_hostname,omitempty"` // The path to use in the redirect. The value must be a string and include the leading /, leave blank to preserve the incoming path. Defaults to an empty string. Defaults to "". // +kubebuilder:validation:Optional @@ -98,8 +137,20 @@ type ActionsURLRedirectActionParameters struct { RedirectProtocol *string `json:"redirectProtocol,omitempty" tf:"redirect_protocol,omitempty"` // The response type to return to the requestor. Possible values include Moved, Found , TemporaryRedirect or PermanentRedirect. - // +kubebuilder:validation:Required - RedirectType *string `json:"redirectType" tf:"redirect_type,omitempty"` + // +kubebuilder:validation:Optional + RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` +} + +type ActionsURLRewriteActionInitParameters struct { + + // The destination path to use in the rewrite. The destination path overwrites the source pattern. + Destination *string `json:"destination,omitempty" tf:"destination,omitempty"` + + // Append the remaining path after the source pattern to the new destination path? Possible values true or false. Defaults to false. + PreserveUnmatchedPath *bool `json:"preserveUnmatchedPath,omitempty" tf:"preserve_unmatched_path,omitempty"` + + // The source pattern in the URL path to replace. This uses prefix-based matching. For example, to match all URL paths use a forward slash "/" as the source pattern value. + SourcePattern *string `json:"sourcePattern,omitempty" tf:"source_pattern,omitempty"` } type ActionsURLRewriteActionObservation struct { @@ -117,16 +168,28 @@ type ActionsURLRewriteActionObservation struct { type ActionsURLRewriteActionParameters struct { // The destination path to use in the rewrite. The destination path overwrites the source pattern. - // +kubebuilder:validation:Required - Destination *string `json:"destination" tf:"destination,omitempty"` + // +kubebuilder:validation:Optional + Destination *string `json:"destination,omitempty" tf:"destination,omitempty"` // Append the remaining path after the source pattern to the new destination path? Possible values true or false. Defaults to false. // +kubebuilder:validation:Optional PreserveUnmatchedPath *bool `json:"preserveUnmatchedPath,omitempty" tf:"preserve_unmatched_path,omitempty"` // The source pattern in the URL path to replace. This uses prefix-based matching. For example, to match all URL paths use a forward slash "/" as the source pattern value. - // +kubebuilder:validation:Required - SourcePattern *string `json:"sourcePattern" tf:"source_pattern,omitempty"` + // +kubebuilder:validation:Optional + SourcePattern *string `json:"sourcePattern,omitempty" tf:"source_pattern,omitempty"` +} + +type ClientPortConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } type ClientPortConditionObservation struct { @@ -152,8 +215,26 @@ type ClientPortConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + +type ConditionsCookiesConditionInitParameters struct { + + // A string value representing the name of the cookie. + CookieName *string `json:"cookieName,omitempty" tf:"cookie_name,omitempty"` + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } type ConditionsCookiesConditionObservation struct { @@ -177,8 +258,8 @@ type ConditionsCookiesConditionObservation struct { type ConditionsCookiesConditionParameters struct { // A string value representing the name of the cookie. - // +kubebuilder:validation:Required - CookieName *string `json:"cookieName" tf:"cookie_name,omitempty"` + // +kubebuilder:validation:Optional + CookieName *string `json:"cookieName,omitempty" tf:"cookie_name,omitempty"` // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. // +kubebuilder:validation:Optional @@ -189,14 +270,26 @@ type ConditionsCookiesConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type ConditionsHTTPVersionConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type ConditionsHTTPVersionConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -212,8 +305,8 @@ type ConditionsHTTPVersionConditionObservation struct { type ConditionsHTTPVersionConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. // +kubebuilder:validation:Optional @@ -224,6 +317,66 @@ type ConditionsHTTPVersionConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type ConditionsInitParameters struct { + + // A client_port_condition block as defined below. + ClientPortCondition []ClientPortConditionInitParameters `json:"clientPortCondition,omitempty" tf:"client_port_condition,omitempty"` + + // A cookies_condition block as defined below. + CookiesCondition []ConditionsCookiesConditionInitParameters `json:"cookiesCondition,omitempty" tf:"cookies_condition,omitempty"` + + // A http_version_condition block as defined below. + HTTPVersionCondition []ConditionsHTTPVersionConditionInitParameters `json:"httpVersionCondition,omitempty" tf:"http_version_condition,omitempty"` + + // A host_name_condition block as defined below. + HostNameCondition []HostNameConditionInitParameters `json:"hostNameCondition,omitempty" tf:"host_name_condition,omitempty"` + + // A is_device_condition block as defined below. + IsDeviceCondition []IsDeviceConditionInitParameters `json:"isDeviceCondition,omitempty" tf:"is_device_condition,omitempty"` + + // A post_args_condition block as defined below. + PostArgsCondition []PostArgsConditionInitParameters `json:"postArgsCondition,omitempty" tf:"post_args_condition,omitempty"` + + // A query_string_condition block as defined below. + QueryStringCondition []ConditionsQueryStringConditionInitParameters `json:"queryStringCondition,omitempty" tf:"query_string_condition,omitempty"` + + // A remote_address_condition block as defined below. + RemoteAddressCondition []ConditionsRemoteAddressConditionInitParameters `json:"remoteAddressCondition,omitempty" tf:"remote_address_condition,omitempty"` + + // A request_body_condition block as defined below. + RequestBodyCondition []ConditionsRequestBodyConditionInitParameters `json:"requestBodyCondition,omitempty" tf:"request_body_condition,omitempty"` + + // A request_header_condition block as defined below. + RequestHeaderCondition []ConditionsRequestHeaderConditionInitParameters `json:"requestHeaderCondition,omitempty" tf:"request_header_condition,omitempty"` + + // A request_method_condition block as defined below. + RequestMethodCondition []ConditionsRequestMethodConditionInitParameters `json:"requestMethodCondition,omitempty" tf:"request_method_condition,omitempty"` + + // A request_scheme_condition block as defined below. + RequestSchemeCondition []ConditionsRequestSchemeConditionInitParameters `json:"requestSchemeCondition,omitempty" tf:"request_scheme_condition,omitempty"` + + // A request_uri_condition block as defined below. + RequestURICondition []ConditionsRequestURIConditionInitParameters `json:"requestUriCondition,omitempty" tf:"request_uri_condition,omitempty"` + + // A ssl_protocol_condition block as defined below. + SSLProtocolCondition []SSLProtocolConditionInitParameters `json:"sslProtocolCondition,omitempty" tf:"ssl_protocol_condition,omitempty"` + + // A server_port_condition block as defined below. + ServerPortCondition []ServerPortConditionInitParameters `json:"serverPortCondition,omitempty" tf:"server_port_condition,omitempty"` + + // A socket_address_condition block as defined below. + SocketAddressCondition []SocketAddressConditionInitParameters `json:"socketAddressCondition,omitempty" tf:"socket_address_condition,omitempty"` + + // A url_file_extension_condition block as defined below. + URLFileExtensionCondition []ConditionsURLFileExtensionConditionInitParameters `json:"urlFileExtensionCondition,omitempty" tf:"url_file_extension_condition,omitempty"` + + // A url_filename_condition block as defined below. + URLFilenameCondition []URLFilenameConditionInitParameters `json:"urlFilenameCondition,omitempty" tf:"url_filename_condition,omitempty"` + + // A url_path_condition block as defined below. + URLPathCondition []ConditionsURLPathConditionInitParameters `json:"urlPathCondition,omitempty" tf:"url_path_condition,omitempty"` +} + type ConditionsObservation struct { // A client_port_condition block as defined below. @@ -363,6 +516,21 @@ type ConditionsParameters struct { URLPathCondition []ConditionsURLPathConditionParameters `json:"urlPathCondition,omitempty" tf:"url_path_condition,omitempty"` } +type ConditionsQueryStringConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type ConditionsQueryStringConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -389,14 +557,26 @@ type ConditionsQueryStringConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type ConditionsRemoteAddressConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type ConditionsRemoteAddressConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -424,6 +604,21 @@ type ConditionsRemoteAddressConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type ConditionsRequestBodyConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type ConditionsRequestBodyConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -442,22 +637,40 @@ type ConditionsRequestBodyConditionObservation struct { type ConditionsRequestBodyConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type ConditionsRequestHeaderConditionInitParameters struct { + + // The name of the header to modify. + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type ConditionsRequestHeaderConditionObservation struct { // The name of the header to modify. @@ -479,8 +692,8 @@ type ConditionsRequestHeaderConditionObservation struct { type ConditionsRequestHeaderConditionParameters struct { // The name of the header to modify. - // +kubebuilder:validation:Required - HeaderName *string `json:"headerName" tf:"header_name,omitempty"` + // +kubebuilder:validation:Optional + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. // +kubebuilder:validation:Optional @@ -491,14 +704,26 @@ type ConditionsRequestHeaderConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type ConditionsRequestMethodConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type ConditionsRequestMethodConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -514,8 +739,8 @@ type ConditionsRequestMethodConditionObservation struct { type ConditionsRequestMethodConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. // +kubebuilder:validation:Optional @@ -526,6 +751,18 @@ type ConditionsRequestMethodConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type ConditionsRequestSchemeConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type ConditionsRequestSchemeConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -553,6 +790,21 @@ type ConditionsRequestSchemeConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type ConditionsRequestURIConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type ConditionsRequestURIConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -579,14 +831,29 @@ type ConditionsRequestURIConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type ConditionsURLFileExtensionConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type ConditionsURLFileExtensionConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -605,22 +872,37 @@ type ConditionsURLFileExtensionConditionObservation struct { type ConditionsURLFileExtensionConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type ConditionsURLPathConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type ConditionsURLPathConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -647,14 +929,29 @@ type ConditionsURLPathConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type FrontdoorRuleInitParameters struct { + + // An actions block as defined below. + Actions []ActionsInitParameters `json:"actions,omitempty" tf:"actions,omitempty"` + + // If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue. + BehaviorOnMatch *string `json:"behaviorOnMatch,omitempty" tf:"behavior_on_match,omitempty"` + + // A conditions block as defined below. + Conditions []ConditionsInitParameters `json:"conditions,omitempty" tf:"conditions,omitempty"` + + // The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` +} + type FrontdoorRuleObservation struct { // An actions block as defined below. @@ -712,6 +1009,21 @@ type FrontdoorRuleParameters struct { Order *float64 `json:"order,omitempty" tf:"order,omitempty"` } +type HostNameConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type HostNameConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -738,14 +1050,26 @@ type HostNameConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type IsDeviceConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type IsDeviceConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -773,6 +1097,24 @@ type IsDeviceConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type PostArgsConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A string value representing the name of the POST argument. + PostArgsName *string `json:"postArgsName,omitempty" tf:"post_args_name,omitempty"` + + // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type PostArgsConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -802,18 +1144,30 @@ type PostArgsConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A string value representing the name of the POST argument. - // +kubebuilder:validation:Required - PostArgsName *string `json:"postArgsName" tf:"post_args_name,omitempty"` + // +kubebuilder:validation:Optional + PostArgsName *string `json:"postArgsName,omitempty" tf:"post_args_name,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type RequestHeaderActionInitParameters struct { + + // The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete. + HeaderAction *string `json:"headerAction,omitempty" tf:"header_action,omitempty"` + + // The name of the header to modify. + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + + // The value to append or overwrite. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type RequestHeaderActionObservation struct { // The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete. @@ -829,18 +1183,30 @@ type RequestHeaderActionObservation struct { type RequestHeaderActionParameters struct { // The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete. - // +kubebuilder:validation:Required - HeaderAction *string `json:"headerAction" tf:"header_action,omitempty"` + // +kubebuilder:validation:Optional + HeaderAction *string `json:"headerAction,omitempty" tf:"header_action,omitempty"` // The name of the header to modify. - // +kubebuilder:validation:Required - HeaderName *string `json:"headerName" tf:"header_name,omitempty"` + // +kubebuilder:validation:Optional + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // The value to append or overwrite. // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type ResponseHeaderActionInitParameters struct { + + // The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete. + HeaderAction *string `json:"headerAction,omitempty" tf:"header_action,omitempty"` + + // The name of the header to modify. + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + + // The value to append or overwrite. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ResponseHeaderActionObservation struct { // The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete. @@ -856,18 +1222,39 @@ type ResponseHeaderActionObservation struct { type ResponseHeaderActionParameters struct { // The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete. - // +kubebuilder:validation:Required - HeaderAction *string `json:"headerAction" tf:"header_action,omitempty"` + // +kubebuilder:validation:Optional + HeaderAction *string `json:"headerAction,omitempty" tf:"header_action,omitempty"` // The name of the header to modify. - // +kubebuilder:validation:Required - HeaderName *string `json:"headerName" tf:"header_name,omitempty"` + // +kubebuilder:validation:Optional + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // The value to append or overwrite. // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type RouteConfigurationOverrideActionInitParameters struct { + + // HonorOrigin the Front Door will always honor origin response header directive. If the origin directive is missing, Front Door will cache contents anywhere from 1 to 3 days. OverrideAlways the TTL value returned from your Front Door Origin is overwritten with the value specified in the action. This behavior will only be applied if the response is cacheable. OverrideIfOriginMissing if no TTL value gets returned from your Front Door Origin, the rule sets the TTL to the value specified in the action. This behavior will only be applied if the response is cacheable. Disabled the Front Door will not cache the response contents, irrespective of Front Door Origin response directives. Possible values include HonorOrigin, OverrideAlways, OverrideIfOriginMissing or Disabled. + CacheBehavior *string `json:"cacheBehavior,omitempty" tf:"cache_behavior,omitempty"` + + // When Cache behavior is set to Override or SetIfMissing, this field specifies the cache duration to use. The maximum duration is 366 days specified in the d.HH:MM:SS format(e.g. 365.23:59:59). If the desired maximum cache duration is less than 1 day then the maximum cache duration should be specified in the HH:MM:SS format(e.g. 23:59:59). + CacheDuration *string `json:"cacheDuration,omitempty" tf:"cache_duration,omitempty"` + + // Should the Front Door dynamically compress the content? Possible values include true or false. + CompressionEnabled *bool `json:"compressionEnabled,omitempty" tf:"compression_enabled,omitempty"` + + // The forwarding protocol the request will be redirected as. This overrides the configuration specified in the route to be associated with. Possible values include MatchRequest, HttpOnly or HttpsOnly. + ForwardingProtocol *string `json:"forwardingProtocol,omitempty" tf:"forwarding_protocol,omitempty"` + + // IncludeSpecifiedQueryStrings query strings specified in the query_string_parameters field get included when the cache key gets generated. UseQueryString cache every unique URL, each unique URL will have its own cache key. IgnoreSpecifiedQueryStrings query strings specified in the query_string_parameters field get excluded when the cache key gets generated. IgnoreQueryString query strings aren't considered when the cache key gets generated. Possible values include IgnoreQueryString, UseQueryString, IgnoreSpecifiedQueryStrings or IncludeSpecifiedQueryStrings. + QueryStringCachingBehavior *string `json:"queryStringCachingBehavior,omitempty" tf:"query_string_caching_behavior,omitempty"` + + // A list of query string parameter names. + QueryStringParameters []*string `json:"queryStringParameters,omitempty" tf:"query_string_parameters,omitempty"` +} + type RouteConfigurationOverrideActionObservation struct { // HonorOrigin the Front Door will always honor origin response header directive. If the origin directive is missing, Front Door will cache contents anywhere from 1 to 3 days. OverrideAlways the TTL value returned from your Front Door Origin is overwritten with the value specified in the action. This behavior will only be applied if the response is cacheable. OverrideIfOriginMissing if no TTL value gets returned from your Front Door Origin, the rule sets the TTL to the value specified in the action. This behavior will only be applied if the response is cacheable. Disabled the Front Door will not cache the response contents, irrespective of Front Door Origin response directives. Possible values include HonorOrigin, OverrideAlways, OverrideIfOriginMissing or Disabled. @@ -933,6 +1320,18 @@ type RouteConfigurationOverrideActionParameters struct { QueryStringParameters []*string `json:"queryStringParameters,omitempty" tf:"query_string_parameters,omitempty"` } +type SSLProtocolConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type SSLProtocolConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -948,8 +1347,8 @@ type SSLProtocolConditionObservation struct { type SSLProtocolConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. // +kubebuilder:validation:Optional @@ -960,6 +1359,18 @@ type SSLProtocolConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type ServerPortConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + type ServerPortConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -975,16 +1386,28 @@ type ServerPortConditionObservation struct { type ServerPortConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` +} + +type SocketAddressConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } type SocketAddressConditionObservation struct { @@ -1014,6 +1437,21 @@ type SocketAddressConditionParameters struct { Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } +type URLFilenameConditionInitParameters struct { + + // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` +} + type URLFilenameConditionObservation struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. @@ -1032,16 +1470,16 @@ type URLFilenameConditionObservation struct { type URLFilenameConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. // +kubebuilder:validation:Optional @@ -1052,6 +1490,18 @@ type URLFilenameConditionParameters struct { type FrontdoorRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorRuleInitParameters `json:"initProvider,omitempty"` } // FrontdoorRuleStatus defines the observed state of FrontdoorRule. @@ -1072,8 +1522,8 @@ type FrontdoorRuleStatus struct { type FrontdoorRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.actions)",message="actions is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.order)",message="order is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.actions) || has(self.initProvider.actions)",message="actions is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.order) || has(self.initProvider.order)",message="order is a required parameter" Spec FrontdoorRuleSpec `json:"spec"` Status FrontdoorRuleStatus `json:"status,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorruleset_types.go b/apis/cdn/v1beta1/zz_frontdoorruleset_types.go index 50df2a216..7a766baa1 100755 --- a/apis/cdn/v1beta1/zz_frontdoorruleset_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorruleset_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FrontdoorRuleSetInitParameters struct { +} + type FrontdoorRuleSetObservation struct { // The ID of the Front Door Profile. Changing this forces a new Front Door Rule Set to be created. @@ -43,6 +46,18 @@ type FrontdoorRuleSetParameters struct { type FrontdoorRuleSetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorRuleSetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorRuleSetInitParameters `json:"initProvider,omitempty"` } // FrontdoorRuleSetStatus defines the observed state of FrontdoorRuleSet. diff --git a/apis/cdn/v1beta1/zz_generated.deepcopy.go b/apis/cdn/v1beta1/zz_generated.deepcopy.go index 62d8ba3ff..ab89a99df 100644 --- a/apis/cdn/v1beta1/zz_generated.deepcopy.go +++ b/apis/cdn/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,56 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionsInitParameters) DeepCopyInto(out *ActionsInitParameters) { + *out = *in + if in.RequestHeaderAction != nil { + in, out := &in.RequestHeaderAction, &out.RequestHeaderAction + *out = make([]RequestHeaderActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ResponseHeaderAction != nil { + in, out := &in.ResponseHeaderAction, &out.ResponseHeaderAction + *out = make([]ResponseHeaderActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RouteConfigurationOverrideAction != nil { + in, out := &in.RouteConfigurationOverrideAction, &out.RouteConfigurationOverrideAction + *out = make([]RouteConfigurationOverrideActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRedirectAction != nil { + in, out := &in.URLRedirectAction, &out.URLRedirectAction + *out = make([]ActionsURLRedirectActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRewriteAction != nil { + in, out := &in.URLRewriteAction, &out.URLRewriteAction + *out = make([]ActionsURLRewriteActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionsInitParameters. +func (in *ActionsInitParameters) DeepCopy() *ActionsInitParameters { + if in == nil { + return nil + } + out := new(ActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionsObservation) DeepCopyInto(out *ActionsObservation) { *out = *in @@ -114,6 +164,51 @@ func (in *ActionsParameters) DeepCopy() *ActionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionsURLRedirectActionInitParameters) DeepCopyInto(out *ActionsURLRedirectActionInitParameters) { + *out = *in + if in.DestinationFragment != nil { + in, out := &in.DestinationFragment, &out.DestinationFragment + *out = new(string) + **out = **in + } + if in.DestinationHostName != nil { + in, out := &in.DestinationHostName, &out.DestinationHostName + *out = new(string) + **out = **in + } + if in.DestinationPath != nil { + in, out := &in.DestinationPath, &out.DestinationPath + *out = new(string) + **out = **in + } + if in.QueryString != nil { + in, out := &in.QueryString, &out.QueryString + *out = new(string) + **out = **in + } + if in.RedirectProtocol != nil { + in, out := &in.RedirectProtocol, &out.RedirectProtocol + *out = new(string) + **out = **in + } + if in.RedirectType != nil { + in, out := &in.RedirectType, &out.RedirectType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionsURLRedirectActionInitParameters. +func (in *ActionsURLRedirectActionInitParameters) DeepCopy() *ActionsURLRedirectActionInitParameters { + if in == nil { + return nil + } + out := new(ActionsURLRedirectActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionsURLRedirectActionObservation) DeepCopyInto(out *ActionsURLRedirectActionObservation) { *out = *in @@ -204,6 +299,36 @@ func (in *ActionsURLRedirectActionParameters) DeepCopy() *ActionsURLRedirectActi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionsURLRewriteActionInitParameters) DeepCopyInto(out *ActionsURLRewriteActionInitParameters) { + *out = *in + if in.Destination != nil { + in, out := &in.Destination, &out.Destination + *out = new(string) + **out = **in + } + if in.PreserveUnmatchedPath != nil { + in, out := &in.PreserveUnmatchedPath, &out.PreserveUnmatchedPath + *out = new(bool) + **out = **in + } + if in.SourcePattern != nil { + in, out := &in.SourcePattern, &out.SourcePattern + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionsURLRewriteActionInitParameters. +func (in *ActionsURLRewriteActionInitParameters) DeepCopy() *ActionsURLRewriteActionInitParameters { + if in == nil { + return nil + } + out := new(ActionsURLRewriteActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionsURLRewriteActionObservation) DeepCopyInto(out *ActionsURLRewriteActionObservation) { *out = *in @@ -264,6 +389,31 @@ func (in *ActionsURLRewriteActionParameters) DeepCopy() *ActionsURLRewriteAction return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CacheExpirationActionInitParameters) DeepCopyInto(out *CacheExpirationActionInitParameters) { + *out = *in + if in.Behavior != nil { + in, out := &in.Behavior, &out.Behavior + *out = new(string) + **out = **in + } + if in.Duration != nil { + in, out := &in.Duration, &out.Duration + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CacheExpirationActionInitParameters. +func (in *CacheExpirationActionInitParameters) DeepCopy() *CacheExpirationActionInitParameters { + if in == nil { + return nil + } + out := new(CacheExpirationActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CacheExpirationActionObservation) DeepCopyInto(out *CacheExpirationActionObservation) { *out = *in @@ -314,6 +464,78 @@ func (in *CacheExpirationActionParameters) DeepCopy() *CacheExpirationActionPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CacheInitParameters) DeepCopyInto(out *CacheInitParameters) { + *out = *in + if in.CompressionEnabled != nil { + in, out := &in.CompressionEnabled, &out.CompressionEnabled + *out = new(bool) + **out = **in + } + if in.ContentTypesToCompress != nil { + in, out := &in.ContentTypesToCompress, &out.ContentTypesToCompress + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.QueryStringCachingBehavior != nil { + in, out := &in.QueryStringCachingBehavior, &out.QueryStringCachingBehavior + *out = new(string) + **out = **in + } + if in.QueryStrings != nil { + in, out := &in.QueryStrings, &out.QueryStrings + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CacheInitParameters. +func (in *CacheInitParameters) DeepCopy() *CacheInitParameters { + if in == nil { + return nil + } + out := new(CacheInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CacheKeyQueryStringActionInitParameters) DeepCopyInto(out *CacheKeyQueryStringActionInitParameters) { + *out = *in + if in.Behavior != nil { + in, out := &in.Behavior, &out.Behavior + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CacheKeyQueryStringActionInitParameters. +func (in *CacheKeyQueryStringActionInitParameters) DeepCopy() *CacheKeyQueryStringActionInitParameters { + if in == nil { + return nil + } + out := new(CacheKeyQueryStringActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CacheKeyQueryStringActionObservation) DeepCopyInto(out *CacheKeyQueryStringActionObservation) { *out = *in @@ -458,6 +680,42 @@ func (in *CacheParameters) DeepCopy() *CacheParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClientPortConditionInitParameters) DeepCopyInto(out *ClientPortConditionInitParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientPortConditionInitParameters. +func (in *ClientPortConditionInitParameters) DeepCopy() *ClientPortConditionInitParameters { + if in == nil { + return nil + } + out := new(ClientPortConditionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClientPortConditionObservation) DeepCopyInto(out *ClientPortConditionObservation) { *out = *in @@ -531,7 +789,7 @@ func (in *ClientPortConditionParameters) DeepCopy() *ClientPortConditionParamete } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsCookiesConditionObservation) DeepCopyInto(out *ConditionsCookiesConditionObservation) { +func (in *ConditionsCookiesConditionInitParameters) DeepCopyInto(out *ConditionsCookiesConditionInitParameters) { *out = *in if in.CookieName != nil { in, out := &in.CookieName, &out.CookieName @@ -572,18 +830,18 @@ func (in *ConditionsCookiesConditionObservation) DeepCopyInto(out *ConditionsCoo } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsCookiesConditionObservation. -func (in *ConditionsCookiesConditionObservation) DeepCopy() *ConditionsCookiesConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsCookiesConditionInitParameters. +func (in *ConditionsCookiesConditionInitParameters) DeepCopy() *ConditionsCookiesConditionInitParameters { if in == nil { return nil } - out := new(ConditionsCookiesConditionObservation) + out := new(ConditionsCookiesConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsCookiesConditionParameters) DeepCopyInto(out *ConditionsCookiesConditionParameters) { +func (in *ConditionsCookiesConditionObservation) DeepCopyInto(out *ConditionsCookiesConditionObservation) { *out = *in if in.CookieName != nil { in, out := &in.CookieName, &out.CookieName @@ -624,19 +882,24 @@ func (in *ConditionsCookiesConditionParameters) DeepCopyInto(out *ConditionsCook } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsCookiesConditionParameters. -func (in *ConditionsCookiesConditionParameters) DeepCopy() *ConditionsCookiesConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsCookiesConditionObservation. +func (in *ConditionsCookiesConditionObservation) DeepCopy() *ConditionsCookiesConditionObservation { if in == nil { return nil } - out := new(ConditionsCookiesConditionParameters) + out := new(ConditionsCookiesConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsHTTPVersionConditionObservation) DeepCopyInto(out *ConditionsHTTPVersionConditionObservation) { +func (in *ConditionsCookiesConditionParameters) DeepCopyInto(out *ConditionsCookiesConditionParameters) { *out = *in + if in.CookieName != nil { + in, out := &in.CookieName, &out.CookieName + *out = new(string) + **out = **in + } if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) @@ -658,9 +921,92 @@ func (in *ConditionsHTTPVersionConditionObservation) DeepCopyInto(out *Condition *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsHTTPVersionConditionObservation. +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsCookiesConditionParameters. +func (in *ConditionsCookiesConditionParameters) DeepCopy() *ConditionsCookiesConditionParameters { + if in == nil { + return nil + } + out := new(ConditionsCookiesConditionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionsHTTPVersionConditionInitParameters) DeepCopyInto(out *ConditionsHTTPVersionConditionInitParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsHTTPVersionConditionInitParameters. +func (in *ConditionsHTTPVersionConditionInitParameters) DeepCopy() *ConditionsHTTPVersionConditionInitParameters { + if in == nil { + return nil + } + out := new(ConditionsHTTPVersionConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionsHTTPVersionConditionObservation) DeepCopyInto(out *ConditionsHTTPVersionConditionObservation) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsHTTPVersionConditionObservation. func (in *ConditionsHTTPVersionConditionObservation) DeepCopy() *ConditionsHTTPVersionConditionObservation { if in == nil { return nil @@ -706,6 +1052,154 @@ func (in *ConditionsHTTPVersionConditionParameters) DeepCopy() *ConditionsHTTPVe return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionsInitParameters) DeepCopyInto(out *ConditionsInitParameters) { + *out = *in + if in.ClientPortCondition != nil { + in, out := &in.ClientPortCondition, &out.ClientPortCondition + *out = make([]ClientPortConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CookiesCondition != nil { + in, out := &in.CookiesCondition, &out.CookiesCondition + *out = make([]ConditionsCookiesConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPVersionCondition != nil { + in, out := &in.HTTPVersionCondition, &out.HTTPVersionCondition + *out = make([]ConditionsHTTPVersionConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HostNameCondition != nil { + in, out := &in.HostNameCondition, &out.HostNameCondition + *out = make([]HostNameConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IsDeviceCondition != nil { + in, out := &in.IsDeviceCondition, &out.IsDeviceCondition + *out = make([]IsDeviceConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PostArgsCondition != nil { + in, out := &in.PostArgsCondition, &out.PostArgsCondition + *out = make([]PostArgsConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryStringCondition != nil { + in, out := &in.QueryStringCondition, &out.QueryStringCondition + *out = make([]ConditionsQueryStringConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RemoteAddressCondition != nil { + in, out := &in.RemoteAddressCondition, &out.RemoteAddressCondition + *out = make([]ConditionsRemoteAddressConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestBodyCondition != nil { + in, out := &in.RequestBodyCondition, &out.RequestBodyCondition + *out = make([]ConditionsRequestBodyConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestHeaderCondition != nil { + in, out := &in.RequestHeaderCondition, &out.RequestHeaderCondition + *out = make([]ConditionsRequestHeaderConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestMethodCondition != nil { + in, out := &in.RequestMethodCondition, &out.RequestMethodCondition + *out = make([]ConditionsRequestMethodConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestSchemeCondition != nil { + in, out := &in.RequestSchemeCondition, &out.RequestSchemeCondition + *out = make([]ConditionsRequestSchemeConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestURICondition != nil { + in, out := &in.RequestURICondition, &out.RequestURICondition + *out = make([]ConditionsRequestURIConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSLProtocolCondition != nil { + in, out := &in.SSLProtocolCondition, &out.SSLProtocolCondition + *out = make([]SSLProtocolConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ServerPortCondition != nil { + in, out := &in.ServerPortCondition, &out.ServerPortCondition + *out = make([]ServerPortConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SocketAddressCondition != nil { + in, out := &in.SocketAddressCondition, &out.SocketAddressCondition + *out = make([]SocketAddressConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLFileExtensionCondition != nil { + in, out := &in.URLFileExtensionCondition, &out.URLFileExtensionCondition + *out = make([]ConditionsURLFileExtensionConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLFilenameCondition != nil { + in, out := &in.URLFilenameCondition, &out.URLFilenameCondition + *out = make([]URLFilenameConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLPathCondition != nil { + in, out := &in.URLPathCondition, &out.URLPathCondition + *out = make([]ConditionsURLPathConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsInitParameters. +func (in *ConditionsInitParameters) DeepCopy() *ConditionsInitParameters { + if in == nil { + return nil + } + out := new(ConditionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConditionsObservation) DeepCopyInto(out *ConditionsObservation) { *out = *in @@ -1003,7 +1497,7 @@ func (in *ConditionsParameters) DeepCopy() *ConditionsParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsQueryStringConditionObservation) DeepCopyInto(out *ConditionsQueryStringConditionObservation) { +func (in *ConditionsQueryStringConditionInitParameters) DeepCopyInto(out *ConditionsQueryStringConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1039,18 +1533,18 @@ func (in *ConditionsQueryStringConditionObservation) DeepCopyInto(out *Condition } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsQueryStringConditionObservation. -func (in *ConditionsQueryStringConditionObservation) DeepCopy() *ConditionsQueryStringConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsQueryStringConditionInitParameters. +func (in *ConditionsQueryStringConditionInitParameters) DeepCopy() *ConditionsQueryStringConditionInitParameters { if in == nil { return nil } - out := new(ConditionsQueryStringConditionObservation) + out := new(ConditionsQueryStringConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsQueryStringConditionParameters) DeepCopyInto(out *ConditionsQueryStringConditionParameters) { +func (in *ConditionsQueryStringConditionObservation) DeepCopyInto(out *ConditionsQueryStringConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1086,18 +1580,18 @@ func (in *ConditionsQueryStringConditionParameters) DeepCopyInto(out *Conditions } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsQueryStringConditionParameters. -func (in *ConditionsQueryStringConditionParameters) DeepCopy() *ConditionsQueryStringConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsQueryStringConditionObservation. +func (in *ConditionsQueryStringConditionObservation) DeepCopy() *ConditionsQueryStringConditionObservation { if in == nil { return nil } - out := new(ConditionsQueryStringConditionParameters) + out := new(ConditionsQueryStringConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRemoteAddressConditionObservation) DeepCopyInto(out *ConditionsRemoteAddressConditionObservation) { +func (in *ConditionsQueryStringConditionParameters) DeepCopyInto(out *ConditionsQueryStringConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1120,20 +1614,31 @@ func (in *ConditionsRemoteAddressConditionObservation) DeepCopyInto(out *Conditi *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRemoteAddressConditionObservation. -func (in *ConditionsRemoteAddressConditionObservation) DeepCopy() *ConditionsRemoteAddressConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsQueryStringConditionParameters. +func (in *ConditionsQueryStringConditionParameters) DeepCopy() *ConditionsQueryStringConditionParameters { if in == nil { return nil } - out := new(ConditionsRemoteAddressConditionObservation) + out := new(ConditionsQueryStringConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRemoteAddressConditionParameters) DeepCopyInto(out *ConditionsRemoteAddressConditionParameters) { +func (in *ConditionsRemoteAddressConditionInitParameters) DeepCopyInto(out *ConditionsRemoteAddressConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1158,18 +1663,18 @@ func (in *ConditionsRemoteAddressConditionParameters) DeepCopyInto(out *Conditio } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRemoteAddressConditionParameters. -func (in *ConditionsRemoteAddressConditionParameters) DeepCopy() *ConditionsRemoteAddressConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRemoteAddressConditionInitParameters. +func (in *ConditionsRemoteAddressConditionInitParameters) DeepCopy() *ConditionsRemoteAddressConditionInitParameters { if in == nil { return nil } - out := new(ConditionsRemoteAddressConditionParameters) + out := new(ConditionsRemoteAddressConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRequestBodyConditionObservation) DeepCopyInto(out *ConditionsRequestBodyConditionObservation) { +func (in *ConditionsRemoteAddressConditionObservation) DeepCopyInto(out *ConditionsRemoteAddressConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1192,31 +1697,20 @@ func (in *ConditionsRequestBodyConditionObservation) DeepCopyInto(out *Condition *out = new(string) **out = **in } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestBodyConditionObservation. -func (in *ConditionsRequestBodyConditionObservation) DeepCopy() *ConditionsRequestBodyConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRemoteAddressConditionObservation. +func (in *ConditionsRemoteAddressConditionObservation) DeepCopy() *ConditionsRemoteAddressConditionObservation { if in == nil { return nil } - out := new(ConditionsRequestBodyConditionObservation) + out := new(ConditionsRemoteAddressConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRequestBodyConditionParameters) DeepCopyInto(out *ConditionsRequestBodyConditionParameters) { +func (in *ConditionsRemoteAddressConditionParameters) DeepCopyInto(out *ConditionsRemoteAddressConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1239,37 +1733,21 @@ func (in *ConditionsRequestBodyConditionParameters) DeepCopyInto(out *Conditions *out = new(string) **out = **in } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestBodyConditionParameters. -func (in *ConditionsRequestBodyConditionParameters) DeepCopy() *ConditionsRequestBodyConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRemoteAddressConditionParameters. +func (in *ConditionsRemoteAddressConditionParameters) DeepCopy() *ConditionsRemoteAddressConditionParameters { if in == nil { return nil } - out := new(ConditionsRequestBodyConditionParameters) + out := new(ConditionsRemoteAddressConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRequestHeaderConditionObservation) DeepCopyInto(out *ConditionsRequestHeaderConditionObservation) { +func (in *ConditionsRequestBodyConditionInitParameters) DeepCopyInto(out *ConditionsRequestBodyConditionInitParameters) { *out = *in - if in.HeaderName != nil { - in, out := &in.HeaderName, &out.HeaderName - *out = new(string) - **out = **in - } if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) @@ -1304,24 +1782,19 @@ func (in *ConditionsRequestHeaderConditionObservation) DeepCopyInto(out *Conditi } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestHeaderConditionObservation. -func (in *ConditionsRequestHeaderConditionObservation) DeepCopy() *ConditionsRequestHeaderConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestBodyConditionInitParameters. +func (in *ConditionsRequestBodyConditionInitParameters) DeepCopy() *ConditionsRequestBodyConditionInitParameters { if in == nil { return nil } - out := new(ConditionsRequestHeaderConditionObservation) + out := new(ConditionsRequestBodyConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRequestHeaderConditionParameters) DeepCopyInto(out *ConditionsRequestHeaderConditionParameters) { +func (in *ConditionsRequestBodyConditionObservation) DeepCopyInto(out *ConditionsRequestBodyConditionObservation) { *out = *in - if in.HeaderName != nil { - in, out := &in.HeaderName, &out.HeaderName - *out = new(string) - **out = **in - } if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) @@ -1356,18 +1829,18 @@ func (in *ConditionsRequestHeaderConditionParameters) DeepCopyInto(out *Conditio } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestHeaderConditionParameters. -func (in *ConditionsRequestHeaderConditionParameters) DeepCopy() *ConditionsRequestHeaderConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestBodyConditionObservation. +func (in *ConditionsRequestBodyConditionObservation) DeepCopy() *ConditionsRequestBodyConditionObservation { if in == nil { return nil } - out := new(ConditionsRequestHeaderConditionParameters) + out := new(ConditionsRequestBodyConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRequestMethodConditionObservation) DeepCopyInto(out *ConditionsRequestMethodConditionObservation) { +func (in *ConditionsRequestBodyConditionParameters) DeepCopyInto(out *ConditionsRequestBodyConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1390,21 +1863,37 @@ func (in *ConditionsRequestMethodConditionObservation) DeepCopyInto(out *Conditi *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestMethodConditionObservation. -func (in *ConditionsRequestMethodConditionObservation) DeepCopy() *ConditionsRequestMethodConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestBodyConditionParameters. +func (in *ConditionsRequestBodyConditionParameters) DeepCopy() *ConditionsRequestBodyConditionParameters { if in == nil { return nil } - out := new(ConditionsRequestMethodConditionObservation) + out := new(ConditionsRequestBodyConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRequestMethodConditionParameters) DeepCopyInto(out *ConditionsRequestMethodConditionParameters) { +func (in *ConditionsRequestHeaderConditionInitParameters) DeepCopyInto(out *ConditionsRequestHeaderConditionInitParameters) { *out = *in + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName + *out = new(string) + **out = **in + } if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) @@ -1426,21 +1915,37 @@ func (in *ConditionsRequestMethodConditionParameters) DeepCopyInto(out *Conditio *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestMethodConditionParameters. -func (in *ConditionsRequestMethodConditionParameters) DeepCopy() *ConditionsRequestMethodConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestHeaderConditionInitParameters. +func (in *ConditionsRequestHeaderConditionInitParameters) DeepCopy() *ConditionsRequestHeaderConditionInitParameters { if in == nil { return nil } - out := new(ConditionsRequestMethodConditionParameters) + out := new(ConditionsRequestHeaderConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRequestSchemeConditionObservation) DeepCopyInto(out *ConditionsRequestSchemeConditionObservation) { +func (in *ConditionsRequestHeaderConditionObservation) DeepCopyInto(out *ConditionsRequestHeaderConditionObservation) { *out = *in + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName + *out = new(string) + **out = **in + } if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) @@ -1462,21 +1967,37 @@ func (in *ConditionsRequestSchemeConditionObservation) DeepCopyInto(out *Conditi *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestSchemeConditionObservation. -func (in *ConditionsRequestSchemeConditionObservation) DeepCopy() *ConditionsRequestSchemeConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestHeaderConditionObservation. +func (in *ConditionsRequestHeaderConditionObservation) DeepCopy() *ConditionsRequestHeaderConditionObservation { if in == nil { return nil } - out := new(ConditionsRequestSchemeConditionObservation) + out := new(ConditionsRequestHeaderConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRequestSchemeConditionParameters) DeepCopyInto(out *ConditionsRequestSchemeConditionParameters) { +func (in *ConditionsRequestHeaderConditionParameters) DeepCopyInto(out *ConditionsRequestHeaderConditionParameters) { *out = *in + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName + *out = new(string) + **out = **in + } if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) @@ -1498,20 +2019,31 @@ func (in *ConditionsRequestSchemeConditionParameters) DeepCopyInto(out *Conditio *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestSchemeConditionParameters. -func (in *ConditionsRequestSchemeConditionParameters) DeepCopy() *ConditionsRequestSchemeConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestHeaderConditionParameters. +func (in *ConditionsRequestHeaderConditionParameters) DeepCopy() *ConditionsRequestHeaderConditionParameters { if in == nil { return nil } - out := new(ConditionsRequestSchemeConditionParameters) + out := new(ConditionsRequestHeaderConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRequestURIConditionObservation) DeepCopyInto(out *ConditionsRequestURIConditionObservation) { +func (in *ConditionsRequestMethodConditionInitParameters) DeepCopyInto(out *ConditionsRequestMethodConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1534,8 +2066,23 @@ func (in *ConditionsRequestURIConditionObservation) DeepCopyInto(out *Conditions *out = new(string) **out = **in } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestMethodConditionInitParameters. +func (in *ConditionsRequestMethodConditionInitParameters) DeepCopy() *ConditionsRequestMethodConditionInitParameters { + if in == nil { + return nil + } + out := new(ConditionsRequestMethodConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionsRequestMethodConditionObservation) DeepCopyInto(out *ConditionsRequestMethodConditionObservation) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -1545,20 +2092,30 @@ func (in *ConditionsRequestURIConditionObservation) DeepCopyInto(out *Conditions } } } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestURIConditionObservation. -func (in *ConditionsRequestURIConditionObservation) DeepCopy() *ConditionsRequestURIConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestMethodConditionObservation. +func (in *ConditionsRequestMethodConditionObservation) DeepCopy() *ConditionsRequestMethodConditionObservation { if in == nil { return nil } - out := new(ConditionsRequestURIConditionObservation) + out := new(ConditionsRequestMethodConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsRequestURIConditionParameters) DeepCopyInto(out *ConditionsRequestURIConditionParameters) { +func (in *ConditionsRequestMethodConditionParameters) DeepCopyInto(out *ConditionsRequestMethodConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1581,8 +2138,23 @@ func (in *ConditionsRequestURIConditionParameters) DeepCopyInto(out *ConditionsR *out = new(string) **out = **in } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestMethodConditionParameters. +func (in *ConditionsRequestMethodConditionParameters) DeepCopy() *ConditionsRequestMethodConditionParameters { + if in == nil { + return nil + } + out := new(ConditionsRequestMethodConditionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionsRequestSchemeConditionInitParameters) DeepCopyInto(out *ConditionsRequestSchemeConditionInitParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -1592,20 +2164,30 @@ func (in *ConditionsRequestURIConditionParameters) DeepCopyInto(out *ConditionsR } } } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestURIConditionParameters. -func (in *ConditionsRequestURIConditionParameters) DeepCopy() *ConditionsRequestURIConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestSchemeConditionInitParameters. +func (in *ConditionsRequestSchemeConditionInitParameters) DeepCopy() *ConditionsRequestSchemeConditionInitParameters { if in == nil { return nil } - out := new(ConditionsRequestURIConditionParameters) + out := new(ConditionsRequestSchemeConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsURLFileExtensionConditionObservation) DeepCopyInto(out *ConditionsURLFileExtensionConditionObservation) { +func (in *ConditionsRequestSchemeConditionObservation) DeepCopyInto(out *ConditionsRequestSchemeConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1628,8 +2210,23 @@ func (in *ConditionsURLFileExtensionConditionObservation) DeepCopyInto(out *Cond *out = new(string) **out = **in } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestSchemeConditionObservation. +func (in *ConditionsRequestSchemeConditionObservation) DeepCopy() *ConditionsRequestSchemeConditionObservation { + if in == nil { + return nil + } + out := new(ConditionsRequestSchemeConditionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionsRequestSchemeConditionParameters) DeepCopyInto(out *ConditionsRequestSchemeConditionParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -1639,20 +2236,30 @@ func (in *ConditionsURLFileExtensionConditionObservation) DeepCopyInto(out *Cond } } } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsURLFileExtensionConditionObservation. -func (in *ConditionsURLFileExtensionConditionObservation) DeepCopy() *ConditionsURLFileExtensionConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestSchemeConditionParameters. +func (in *ConditionsRequestSchemeConditionParameters) DeepCopy() *ConditionsRequestSchemeConditionParameters { if in == nil { return nil } - out := new(ConditionsURLFileExtensionConditionObservation) + out := new(ConditionsRequestSchemeConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsURLFileExtensionConditionParameters) DeepCopyInto(out *ConditionsURLFileExtensionConditionParameters) { +func (in *ConditionsRequestURIConditionInitParameters) DeepCopyInto(out *ConditionsRequestURIConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1688,18 +2295,18 @@ func (in *ConditionsURLFileExtensionConditionParameters) DeepCopyInto(out *Condi } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsURLFileExtensionConditionParameters. -func (in *ConditionsURLFileExtensionConditionParameters) DeepCopy() *ConditionsURLFileExtensionConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestURIConditionInitParameters. +func (in *ConditionsRequestURIConditionInitParameters) DeepCopy() *ConditionsRequestURIConditionInitParameters { if in == nil { return nil } - out := new(ConditionsURLFileExtensionConditionParameters) + out := new(ConditionsRequestURIConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsURLPathConditionObservation) DeepCopyInto(out *ConditionsURLPathConditionObservation) { +func (in *ConditionsRequestURIConditionObservation) DeepCopyInto(out *ConditionsRequestURIConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1735,18 +2342,18 @@ func (in *ConditionsURLPathConditionObservation) DeepCopyInto(out *ConditionsURL } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsURLPathConditionObservation. -func (in *ConditionsURLPathConditionObservation) DeepCopy() *ConditionsURLPathConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestURIConditionObservation. +func (in *ConditionsRequestURIConditionObservation) DeepCopy() *ConditionsRequestURIConditionObservation { if in == nil { return nil } - out := new(ConditionsURLPathConditionObservation) + out := new(ConditionsRequestURIConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionsURLPathConditionParameters) DeepCopyInto(out *ConditionsURLPathConditionParameters) { +func (in *ConditionsRequestURIConditionParameters) DeepCopyInto(out *ConditionsRequestURIConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1782,18 +2389,18 @@ func (in *ConditionsURLPathConditionParameters) DeepCopyInto(out *ConditionsURLP } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsURLPathConditionParameters. -func (in *ConditionsURLPathConditionParameters) DeepCopy() *ConditionsURLPathConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsRequestURIConditionParameters. +func (in *ConditionsRequestURIConditionParameters) DeepCopy() *ConditionsRequestURIConditionParameters { if in == nil { return nil } - out := new(ConditionsURLPathConditionParameters) + out := new(ConditionsRequestURIConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CookiesConditionObservation) DeepCopyInto(out *CookiesConditionObservation) { +func (in *ConditionsURLFileExtensionConditionInitParameters) DeepCopyInto(out *ConditionsURLFileExtensionConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1816,11 +2423,6 @@ func (in *CookiesConditionObservation) DeepCopyInto(out *CookiesConditionObserva *out = new(string) **out = **in } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = new(string) - **out = **in - } if in.Transforms != nil { in, out := &in.Transforms, &out.Transforms *out = make([]*string, len(*in)) @@ -1834,18 +2436,18 @@ func (in *CookiesConditionObservation) DeepCopyInto(out *CookiesConditionObserva } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CookiesConditionObservation. -func (in *CookiesConditionObservation) DeepCopy() *CookiesConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsURLFileExtensionConditionInitParameters. +func (in *ConditionsURLFileExtensionConditionInitParameters) DeepCopy() *ConditionsURLFileExtensionConditionInitParameters { if in == nil { return nil } - out := new(CookiesConditionObservation) + out := new(ConditionsURLFileExtensionConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CookiesConditionParameters) DeepCopyInto(out *CookiesConditionParameters) { +func (in *ConditionsURLFileExtensionConditionObservation) DeepCopyInto(out *ConditionsURLFileExtensionConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -1868,11 +2470,6 @@ func (in *CookiesConditionParameters) DeepCopyInto(out *CookiesConditionParamete *out = new(string) **out = **in } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = new(string) - **out = **in - } if in.Transforms != nil { in, out := &in.Transforms, &out.Transforms *out = make([]*string, len(*in)) @@ -1886,229 +2483,408 @@ func (in *CookiesConditionParameters) DeepCopyInto(out *CookiesConditionParamete } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CookiesConditionParameters. -func (in *CookiesConditionParameters) DeepCopy() *CookiesConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsURLFileExtensionConditionObservation. +func (in *ConditionsURLFileExtensionConditionObservation) DeepCopy() *ConditionsURLFileExtensionConditionObservation { if in == nil { return nil } - out := new(CookiesConditionParameters) + out := new(ConditionsURLFileExtensionConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DeliveryRuleObservation) DeepCopyInto(out *DeliveryRuleObservation) { +func (in *ConditionsURLFileExtensionConditionParameters) DeepCopyInto(out *ConditionsURLFileExtensionConditionParameters) { *out = *in - if in.CacheExpirationAction != nil { - in, out := &in.CacheExpirationAction, &out.CacheExpirationAction - *out = make([]CacheExpirationActionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CacheKeyQueryStringAction != nil { - in, out := &in.CacheKeyQueryStringAction, &out.CacheKeyQueryStringAction - *out = make([]CacheKeyQueryStringActionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CookiesCondition != nil { - in, out := &in.CookiesCondition, &out.CookiesCondition - *out = make([]CookiesConditionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DeviceCondition != nil { - in, out := &in.DeviceCondition, &out.DeviceCondition - *out = make([]DeviceConditionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.HTTPVersionCondition != nil { - in, out := &in.HTTPVersionCondition, &out.HTTPVersionCondition - *out = make([]HTTPVersionConditionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ModifyRequestHeaderAction != nil { - in, out := &in.ModifyRequestHeaderAction, &out.ModifyRequestHeaderAction - *out = make([]ModifyRequestHeaderActionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ModifyResponseHeaderAction != nil { - in, out := &in.ModifyResponseHeaderAction, &out.ModifyResponseHeaderAction - *out = make([]ModifyResponseHeaderActionObservation, len(*in)) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.Order != nil { - in, out := &in.Order, &out.Order - *out = new(float64) + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) **out = **in } - if in.PostArgCondition != nil { - in, out := &in.PostArgCondition, &out.PostArgCondition - *out = make([]PostArgConditionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.QueryStringCondition != nil { - in, out := &in.QueryStringCondition, &out.QueryStringCondition - *out = make([]QueryStringConditionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.RemoteAddressCondition != nil { - in, out := &in.RemoteAddressCondition, &out.RemoteAddressCondition - *out = make([]RemoteAddressConditionObservation, len(*in)) + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.RequestBodyCondition != nil { - in, out := &in.RequestBodyCondition, &out.RequestBodyCondition - *out = make([]RequestBodyConditionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsURLFileExtensionConditionParameters. +func (in *ConditionsURLFileExtensionConditionParameters) DeepCopy() *ConditionsURLFileExtensionConditionParameters { + if in == nil { + return nil } - if in.RequestHeaderCondition != nil { - in, out := &in.RequestHeaderCondition, &out.RequestHeaderCondition - *out = make([]RequestHeaderConditionObservation, len(*in)) + out := new(ConditionsURLFileExtensionConditionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionsURLPathConditionInitParameters) DeepCopyInto(out *ConditionsURLPathConditionInitParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.RequestMethodCondition != nil { - in, out := &in.RequestMethodCondition, &out.RequestMethodCondition - *out = make([]RequestMethodConditionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in } - if in.RequestSchemeCondition != nil { - in, out := &in.RequestSchemeCondition, &out.RequestSchemeCondition - *out = make([]RequestSchemeConditionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in } - if in.RequestURICondition != nil { - in, out := &in.RequestURICondition, &out.RequestURICondition - *out = make([]RequestURIConditionObservation, len(*in)) + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.URLFileExtensionCondition != nil { - in, out := &in.URLFileExtensionCondition, &out.URLFileExtensionCondition - *out = make([]URLFileExtensionConditionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsURLPathConditionInitParameters. +func (in *ConditionsURLPathConditionInitParameters) DeepCopy() *ConditionsURLPathConditionInitParameters { + if in == nil { + return nil } - if in.URLFileNameCondition != nil { - in, out := &in.URLFileNameCondition, &out.URLFileNameCondition - *out = make([]URLFileNameConditionObservation, len(*in)) + out := new(ConditionsURLPathConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionsURLPathConditionObservation) DeepCopyInto(out *ConditionsURLPathConditionObservation) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.URLPathCondition != nil { - in, out := &in.URLPathCondition, &out.URLPathCondition - *out = make([]URLPathConditionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in } - if in.URLRedirectAction != nil { - in, out := &in.URLRedirectAction, &out.URLRedirectAction - *out = make([]URLRedirectActionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in } - if in.URLRewriteAction != nil { - in, out := &in.URLRewriteAction, &out.URLRewriteAction - *out = make([]URLRewriteActionObservation, len(*in)) + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryRuleObservation. -func (in *DeliveryRuleObservation) DeepCopy() *DeliveryRuleObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsURLPathConditionObservation. +func (in *ConditionsURLPathConditionObservation) DeepCopy() *ConditionsURLPathConditionObservation { if in == nil { return nil } - out := new(DeliveryRuleObservation) + out := new(ConditionsURLPathConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DeliveryRuleParameters) DeepCopyInto(out *DeliveryRuleParameters) { +func (in *ConditionsURLPathConditionParameters) DeepCopyInto(out *ConditionsURLPathConditionParameters) { *out = *in - if in.CacheExpirationAction != nil { - in, out := &in.CacheExpirationAction, &out.CacheExpirationAction - *out = make([]CacheExpirationActionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CacheKeyQueryStringAction != nil { - in, out := &in.CacheKeyQueryStringAction, &out.CacheKeyQueryStringAction - *out = make([]CacheKeyQueryStringActionParameters, len(*in)) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.CookiesCondition != nil { - in, out := &in.CookiesCondition, &out.CookiesCondition - *out = make([]CookiesConditionParameters, len(*in)) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionsURLPathConditionParameters. +func (in *ConditionsURLPathConditionParameters) DeepCopy() *ConditionsURLPathConditionParameters { + if in == nil { + return nil + } + out := new(ConditionsURLPathConditionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CookiesConditionInitParameters) DeepCopyInto(out *CookiesConditionInitParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CookiesConditionInitParameters. +func (in *CookiesConditionInitParameters) DeepCopy() *CookiesConditionInitParameters { + if in == nil { + return nil + } + out := new(CookiesConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CookiesConditionObservation) DeepCopyInto(out *CookiesConditionObservation) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CookiesConditionObservation. +func (in *CookiesConditionObservation) DeepCopy() *CookiesConditionObservation { + if in == nil { + return nil + } + out := new(CookiesConditionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CookiesConditionParameters) DeepCopyInto(out *CookiesConditionParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CookiesConditionParameters. +func (in *CookiesConditionParameters) DeepCopy() *CookiesConditionParameters { + if in == nil { + return nil + } + out := new(CookiesConditionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeliveryRuleInitParameters) DeepCopyInto(out *DeliveryRuleInitParameters) { + *out = *in + if in.CacheExpirationAction != nil { + in, out := &in.CacheExpirationAction, &out.CacheExpirationAction + *out = make([]CacheExpirationActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CacheKeyQueryStringAction != nil { + in, out := &in.CacheKeyQueryStringAction, &out.CacheKeyQueryStringAction + *out = make([]CacheKeyQueryStringActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CookiesCondition != nil { + in, out := &in.CookiesCondition, &out.CookiesCondition + *out = make([]CookiesConditionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.DeviceCondition != nil { in, out := &in.DeviceCondition, &out.DeviceCondition - *out = make([]DeviceConditionParameters, len(*in)) + *out = make([]DeviceConditionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.HTTPVersionCondition != nil { in, out := &in.HTTPVersionCondition, &out.HTTPVersionCondition - *out = make([]HTTPVersionConditionParameters, len(*in)) + *out = make([]HTTPVersionConditionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.ModifyRequestHeaderAction != nil { in, out := &in.ModifyRequestHeaderAction, &out.ModifyRequestHeaderAction - *out = make([]ModifyRequestHeaderActionParameters, len(*in)) + *out = make([]ModifyRequestHeaderActionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.ModifyResponseHeaderAction != nil { in, out := &in.ModifyResponseHeaderAction, &out.ModifyResponseHeaderAction - *out = make([]ModifyResponseHeaderActionParameters, len(*in)) + *out = make([]ModifyResponseHeaderActionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -2125,181 +2901,2256 @@ func (in *DeliveryRuleParameters) DeepCopyInto(out *DeliveryRuleParameters) { } if in.PostArgCondition != nil { in, out := &in.PostArgCondition, &out.PostArgCondition - *out = make([]PostArgConditionParameters, len(*in)) + *out = make([]PostArgConditionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.QueryStringCondition != nil { in, out := &in.QueryStringCondition, &out.QueryStringCondition - *out = make([]QueryStringConditionParameters, len(*in)) + *out = make([]QueryStringConditionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.RemoteAddressCondition != nil { in, out := &in.RemoteAddressCondition, &out.RemoteAddressCondition - *out = make([]RemoteAddressConditionParameters, len(*in)) + *out = make([]RemoteAddressConditionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.RequestBodyCondition != nil { in, out := &in.RequestBodyCondition, &out.RequestBodyCondition - *out = make([]RequestBodyConditionParameters, len(*in)) + *out = make([]RequestBodyConditionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.RequestHeaderCondition != nil { in, out := &in.RequestHeaderCondition, &out.RequestHeaderCondition - *out = make([]RequestHeaderConditionParameters, len(*in)) + *out = make([]RequestHeaderConditionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.RequestMethodCondition != nil { in, out := &in.RequestMethodCondition, &out.RequestMethodCondition - *out = make([]RequestMethodConditionParameters, len(*in)) + *out = make([]RequestMethodConditionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.RequestSchemeCondition != nil { in, out := &in.RequestSchemeCondition, &out.RequestSchemeCondition - *out = make([]RequestSchemeConditionParameters, len(*in)) + *out = make([]RequestSchemeConditionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.RequestURICondition != nil { in, out := &in.RequestURICondition, &out.RequestURICondition - *out = make([]RequestURIConditionParameters, len(*in)) + *out = make([]RequestURIConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLFileExtensionCondition != nil { + in, out := &in.URLFileExtensionCondition, &out.URLFileExtensionCondition + *out = make([]URLFileExtensionConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLFileNameCondition != nil { + in, out := &in.URLFileNameCondition, &out.URLFileNameCondition + *out = make([]URLFileNameConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLPathCondition != nil { + in, out := &in.URLPathCondition, &out.URLPathCondition + *out = make([]URLPathConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRedirectAction != nil { + in, out := &in.URLRedirectAction, &out.URLRedirectAction + *out = make([]URLRedirectActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRewriteAction != nil { + in, out := &in.URLRewriteAction, &out.URLRewriteAction + *out = make([]URLRewriteActionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.URLFileExtensionCondition != nil { - in, out := &in.URLFileExtensionCondition, &out.URLFileExtensionCondition - *out = make([]URLFileExtensionConditionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryRuleInitParameters. +func (in *DeliveryRuleInitParameters) DeepCopy() *DeliveryRuleInitParameters { + if in == nil { + return nil + } + out := new(DeliveryRuleInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeliveryRuleObservation) DeepCopyInto(out *DeliveryRuleObservation) { + *out = *in + if in.CacheExpirationAction != nil { + in, out := &in.CacheExpirationAction, &out.CacheExpirationAction + *out = make([]CacheExpirationActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CacheKeyQueryStringAction != nil { + in, out := &in.CacheKeyQueryStringAction, &out.CacheKeyQueryStringAction + *out = make([]CacheKeyQueryStringActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CookiesCondition != nil { + in, out := &in.CookiesCondition, &out.CookiesCondition + *out = make([]CookiesConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DeviceCondition != nil { + in, out := &in.DeviceCondition, &out.DeviceCondition + *out = make([]DeviceConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPVersionCondition != nil { + in, out := &in.HTTPVersionCondition, &out.HTTPVersionCondition + *out = make([]HTTPVersionConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ModifyRequestHeaderAction != nil { + in, out := &in.ModifyRequestHeaderAction, &out.ModifyRequestHeaderAction + *out = make([]ModifyRequestHeaderActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ModifyResponseHeaderAction != nil { + in, out := &in.ModifyResponseHeaderAction, &out.ModifyResponseHeaderAction + *out = make([]ModifyResponseHeaderActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.PostArgCondition != nil { + in, out := &in.PostArgCondition, &out.PostArgCondition + *out = make([]PostArgConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryStringCondition != nil { + in, out := &in.QueryStringCondition, &out.QueryStringCondition + *out = make([]QueryStringConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RemoteAddressCondition != nil { + in, out := &in.RemoteAddressCondition, &out.RemoteAddressCondition + *out = make([]RemoteAddressConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestBodyCondition != nil { + in, out := &in.RequestBodyCondition, &out.RequestBodyCondition + *out = make([]RequestBodyConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestHeaderCondition != nil { + in, out := &in.RequestHeaderCondition, &out.RequestHeaderCondition + *out = make([]RequestHeaderConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestMethodCondition != nil { + in, out := &in.RequestMethodCondition, &out.RequestMethodCondition + *out = make([]RequestMethodConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestSchemeCondition != nil { + in, out := &in.RequestSchemeCondition, &out.RequestSchemeCondition + *out = make([]RequestSchemeConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestURICondition != nil { + in, out := &in.RequestURICondition, &out.RequestURICondition + *out = make([]RequestURIConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLFileExtensionCondition != nil { + in, out := &in.URLFileExtensionCondition, &out.URLFileExtensionCondition + *out = make([]URLFileExtensionConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLFileNameCondition != nil { + in, out := &in.URLFileNameCondition, &out.URLFileNameCondition + *out = make([]URLFileNameConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLPathCondition != nil { + in, out := &in.URLPathCondition, &out.URLPathCondition + *out = make([]URLPathConditionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRedirectAction != nil { + in, out := &in.URLRedirectAction, &out.URLRedirectAction + *out = make([]URLRedirectActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRewriteAction != nil { + in, out := &in.URLRewriteAction, &out.URLRewriteAction + *out = make([]URLRewriteActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryRuleObservation. +func (in *DeliveryRuleObservation) DeepCopy() *DeliveryRuleObservation { + if in == nil { + return nil + } + out := new(DeliveryRuleObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeliveryRuleParameters) DeepCopyInto(out *DeliveryRuleParameters) { + *out = *in + if in.CacheExpirationAction != nil { + in, out := &in.CacheExpirationAction, &out.CacheExpirationAction + *out = make([]CacheExpirationActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CacheKeyQueryStringAction != nil { + in, out := &in.CacheKeyQueryStringAction, &out.CacheKeyQueryStringAction + *out = make([]CacheKeyQueryStringActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CookiesCondition != nil { + in, out := &in.CookiesCondition, &out.CookiesCondition + *out = make([]CookiesConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DeviceCondition != nil { + in, out := &in.DeviceCondition, &out.DeviceCondition + *out = make([]DeviceConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPVersionCondition != nil { + in, out := &in.HTTPVersionCondition, &out.HTTPVersionCondition + *out = make([]HTTPVersionConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ModifyRequestHeaderAction != nil { + in, out := &in.ModifyRequestHeaderAction, &out.ModifyRequestHeaderAction + *out = make([]ModifyRequestHeaderActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ModifyResponseHeaderAction != nil { + in, out := &in.ModifyResponseHeaderAction, &out.ModifyResponseHeaderAction + *out = make([]ModifyResponseHeaderActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.PostArgCondition != nil { + in, out := &in.PostArgCondition, &out.PostArgCondition + *out = make([]PostArgConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.QueryStringCondition != nil { + in, out := &in.QueryStringCondition, &out.QueryStringCondition + *out = make([]QueryStringConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RemoteAddressCondition != nil { + in, out := &in.RemoteAddressCondition, &out.RemoteAddressCondition + *out = make([]RemoteAddressConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestBodyCondition != nil { + in, out := &in.RequestBodyCondition, &out.RequestBodyCondition + *out = make([]RequestBodyConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestHeaderCondition != nil { + in, out := &in.RequestHeaderCondition, &out.RequestHeaderCondition + *out = make([]RequestHeaderConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestMethodCondition != nil { + in, out := &in.RequestMethodCondition, &out.RequestMethodCondition + *out = make([]RequestMethodConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestSchemeCondition != nil { + in, out := &in.RequestSchemeCondition, &out.RequestSchemeCondition + *out = make([]RequestSchemeConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestURICondition != nil { + in, out := &in.RequestURICondition, &out.RequestURICondition + *out = make([]RequestURIConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLFileExtensionCondition != nil { + in, out := &in.URLFileExtensionCondition, &out.URLFileExtensionCondition + *out = make([]URLFileExtensionConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLFileNameCondition != nil { + in, out := &in.URLFileNameCondition, &out.URLFileNameCondition + *out = make([]URLFileNameConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLPathCondition != nil { + in, out := &in.URLPathCondition, &out.URLPathCondition + *out = make([]URLPathConditionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRedirectAction != nil { + in, out := &in.URLRedirectAction, &out.URLRedirectAction + *out = make([]URLRedirectActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRewriteAction != nil { + in, out := &in.URLRewriteAction, &out.URLRewriteAction + *out = make([]URLRewriteActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryRuleParameters. +func (in *DeliveryRuleParameters) DeepCopy() *DeliveryRuleParameters { + if in == nil { + return nil + } + out := new(DeliveryRuleParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeviceConditionInitParameters) DeepCopyInto(out *DeviceConditionInitParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceConditionInitParameters. +func (in *DeviceConditionInitParameters) DeepCopy() *DeviceConditionInitParameters { + if in == nil { + return nil + } + out := new(DeviceConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeviceConditionObservation) DeepCopyInto(out *DeviceConditionObservation) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceConditionObservation. +func (in *DeviceConditionObservation) DeepCopy() *DeviceConditionObservation { + if in == nil { + return nil + } + out := new(DeviceConditionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeviceConditionParameters) DeepCopyInto(out *DeviceConditionParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceConditionParameters. +func (in *DeviceConditionParameters) DeepCopy() *DeviceConditionParameters { + if in == nil { + return nil + } + out := new(DeviceConditionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Endpoint) DeepCopyInto(out *Endpoint) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint. +func (in *Endpoint) DeepCopy() *Endpoint { + if in == nil { + return nil + } + out := new(Endpoint) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Endpoint) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointInitParameters) DeepCopyInto(out *EndpointInitParameters) { + *out = *in + if in.ContentTypesToCompress != nil { + in, out := &in.ContentTypesToCompress, &out.ContentTypesToCompress + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DeliveryRule != nil { + in, out := &in.DeliveryRule, &out.DeliveryRule + *out = make([]DeliveryRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GeoFilter != nil { + in, out := &in.GeoFilter, &out.GeoFilter + *out = make([]GeoFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GlobalDeliveryRule != nil { + in, out := &in.GlobalDeliveryRule, &out.GlobalDeliveryRule + *out = make([]GlobalDeliveryRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IsCompressionEnabled != nil { + in, out := &in.IsCompressionEnabled, &out.IsCompressionEnabled + *out = new(bool) + **out = **in + } + if in.IsHTTPAllowed != nil { + in, out := &in.IsHTTPAllowed, &out.IsHTTPAllowed + *out = new(bool) + **out = **in + } + if in.IsHTTPSAllowed != nil { + in, out := &in.IsHTTPSAllowed, &out.IsHTTPSAllowed + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.OptimizationType != nil { + in, out := &in.OptimizationType, &out.OptimizationType + *out = new(string) + **out = **in + } + if in.Origin != nil { + in, out := &in.Origin, &out.Origin + *out = make([]OriginInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OriginHostHeader != nil { + in, out := &in.OriginHostHeader, &out.OriginHostHeader + *out = new(string) + **out = **in + } + if in.OriginPath != nil { + in, out := &in.OriginPath, &out.OriginPath + *out = new(string) + **out = **in + } + if in.ProbePath != nil { + in, out := &in.ProbePath, &out.ProbePath + *out = new(string) + **out = **in + } + if in.QuerystringCachingBehaviour != nil { + in, out := &in.QuerystringCachingBehaviour, &out.QuerystringCachingBehaviour + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointInitParameters. +func (in *EndpointInitParameters) DeepCopy() *EndpointInitParameters { + if in == nil { + return nil + } + out := new(EndpointInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointList) DeepCopyInto(out *EndpointList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Endpoint, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointList. +func (in *EndpointList) DeepCopy() *EndpointList { + if in == nil { + return nil + } + out := new(EndpointList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *EndpointList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointObservation) DeepCopyInto(out *EndpointObservation) { + *out = *in + if in.ContentTypesToCompress != nil { + in, out := &in.ContentTypesToCompress, &out.ContentTypesToCompress + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DeliveryRule != nil { + in, out := &in.DeliveryRule, &out.DeliveryRule + *out = make([]DeliveryRuleObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Fqdn != nil { + in, out := &in.Fqdn, &out.Fqdn + *out = new(string) + **out = **in + } + if in.GeoFilter != nil { + in, out := &in.GeoFilter, &out.GeoFilter + *out = make([]GeoFilterObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GlobalDeliveryRule != nil { + in, out := &in.GlobalDeliveryRule, &out.GlobalDeliveryRule + *out = make([]GlobalDeliveryRuleObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.IsCompressionEnabled != nil { + in, out := &in.IsCompressionEnabled, &out.IsCompressionEnabled + *out = new(bool) + **out = **in + } + if in.IsHTTPAllowed != nil { + in, out := &in.IsHTTPAllowed, &out.IsHTTPAllowed + *out = new(bool) + **out = **in + } + if in.IsHTTPSAllowed != nil { + in, out := &in.IsHTTPSAllowed, &out.IsHTTPSAllowed + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.OptimizationType != nil { + in, out := &in.OptimizationType, &out.OptimizationType + *out = new(string) + **out = **in + } + if in.Origin != nil { + in, out := &in.Origin, &out.Origin + *out = make([]OriginObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OriginHostHeader != nil { + in, out := &in.OriginHostHeader, &out.OriginHostHeader + *out = new(string) + **out = **in + } + if in.OriginPath != nil { + in, out := &in.OriginPath, &out.OriginPath + *out = new(string) + **out = **in + } + if in.ProbePath != nil { + in, out := &in.ProbePath, &out.ProbePath + *out = new(string) + **out = **in + } + if in.ProfileName != nil { + in, out := &in.ProfileName, &out.ProfileName + *out = new(string) + **out = **in + } + if in.QuerystringCachingBehaviour != nil { + in, out := &in.QuerystringCachingBehaviour, &out.QuerystringCachingBehaviour + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointObservation. +func (in *EndpointObservation) DeepCopy() *EndpointObservation { + if in == nil { + return nil + } + out := new(EndpointObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointParameters) DeepCopyInto(out *EndpointParameters) { + *out = *in + if in.ContentTypesToCompress != nil { + in, out := &in.ContentTypesToCompress, &out.ContentTypesToCompress + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DeliveryRule != nil { + in, out := &in.DeliveryRule, &out.DeliveryRule + *out = make([]DeliveryRuleParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GeoFilter != nil { + in, out := &in.GeoFilter, &out.GeoFilter + *out = make([]GeoFilterParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GlobalDeliveryRule != nil { + in, out := &in.GlobalDeliveryRule, &out.GlobalDeliveryRule + *out = make([]GlobalDeliveryRuleParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IsCompressionEnabled != nil { + in, out := &in.IsCompressionEnabled, &out.IsCompressionEnabled + *out = new(bool) + **out = **in + } + if in.IsHTTPAllowed != nil { + in, out := &in.IsHTTPAllowed, &out.IsHTTPAllowed + *out = new(bool) + **out = **in + } + if in.IsHTTPSAllowed != nil { + in, out := &in.IsHTTPSAllowed, &out.IsHTTPSAllowed + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.OptimizationType != nil { + in, out := &in.OptimizationType, &out.OptimizationType + *out = new(string) + **out = **in + } + if in.Origin != nil { + in, out := &in.Origin, &out.Origin + *out = make([]OriginParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OriginHostHeader != nil { + in, out := &in.OriginHostHeader, &out.OriginHostHeader + *out = new(string) + **out = **in + } + if in.OriginPath != nil { + in, out := &in.OriginPath, &out.OriginPath + *out = new(string) + **out = **in + } + if in.ProbePath != nil { + in, out := &in.ProbePath, &out.ProbePath + *out = new(string) + **out = **in + } + if in.ProfileName != nil { + in, out := &in.ProfileName, &out.ProfileName + *out = new(string) + **out = **in + } + if in.ProfileNameRef != nil { + in, out := &in.ProfileNameRef, &out.ProfileNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ProfileNameSelector != nil { + in, out := &in.ProfileNameSelector, &out.ProfileNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.QuerystringCachingBehaviour != nil { + in, out := &in.QuerystringCachingBehaviour, &out.QuerystringCachingBehaviour + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointParameters. +func (in *EndpointParameters) DeepCopy() *EndpointParameters { + if in == nil { + return nil + } + out := new(EndpointParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointSpec) DeepCopyInto(out *EndpointSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSpec. +func (in *EndpointSpec) DeepCopy() *EndpointSpec { + if in == nil { + return nil + } + out := new(EndpointSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointStatus) DeepCopyInto(out *EndpointStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointStatus. +func (in *EndpointStatus) DeepCopy() *EndpointStatus { + if in == nil { + return nil + } + out := new(EndpointStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomain) DeepCopyInto(out *FrontdoorCustomDomain) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomain. +func (in *FrontdoorCustomDomain) DeepCopy() *FrontdoorCustomDomain { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomain) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorCustomDomain) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainAssociation) DeepCopyInto(out *FrontdoorCustomDomainAssociation) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociation. +func (in *FrontdoorCustomDomainAssociation) DeepCopy() *FrontdoorCustomDomainAssociation { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainAssociation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorCustomDomainAssociation) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainAssociationInitParameters) DeepCopyInto(out *FrontdoorCustomDomainAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationInitParameters. +func (in *FrontdoorCustomDomainAssociationInitParameters) DeepCopy() *FrontdoorCustomDomainAssociationInitParameters { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainAssociationList) DeepCopyInto(out *FrontdoorCustomDomainAssociationList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FrontdoorCustomDomainAssociation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationList. +func (in *FrontdoorCustomDomainAssociationList) DeepCopy() *FrontdoorCustomDomainAssociationList { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainAssociationList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorCustomDomainAssociationList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainAssociationObservation) DeepCopyInto(out *FrontdoorCustomDomainAssociationObservation) { + *out = *in + if in.CdnFrontdoorCustomDomainID != nil { + in, out := &in.CdnFrontdoorCustomDomainID, &out.CdnFrontdoorCustomDomainID + *out = new(string) + **out = **in + } + if in.CdnFrontdoorRouteIds != nil { + in, out := &in.CdnFrontdoorRouteIds, &out.CdnFrontdoorRouteIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationObservation. +func (in *FrontdoorCustomDomainAssociationObservation) DeepCopy() *FrontdoorCustomDomainAssociationObservation { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainAssociationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainAssociationParameters) DeepCopyInto(out *FrontdoorCustomDomainAssociationParameters) { + *out = *in + if in.CdnFrontdoorCustomDomainID != nil { + in, out := &in.CdnFrontdoorCustomDomainID, &out.CdnFrontdoorCustomDomainID + *out = new(string) + **out = **in + } + if in.CdnFrontdoorCustomDomainIDRef != nil { + in, out := &in.CdnFrontdoorCustomDomainIDRef, &out.CdnFrontdoorCustomDomainIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorCustomDomainIDSelector != nil { + in, out := &in.CdnFrontdoorCustomDomainIDSelector, &out.CdnFrontdoorCustomDomainIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorRouteIds != nil { + in, out := &in.CdnFrontdoorRouteIds, &out.CdnFrontdoorRouteIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CdnFrontdoorRouteIdsRefs != nil { + in, out := &in.CdnFrontdoorRouteIdsRefs, &out.CdnFrontdoorRouteIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CdnFrontdoorRouteIdsSelector != nil { + in, out := &in.CdnFrontdoorRouteIdsSelector, &out.CdnFrontdoorRouteIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationParameters. +func (in *FrontdoorCustomDomainAssociationParameters) DeepCopy() *FrontdoorCustomDomainAssociationParameters { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainAssociationParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainAssociationSpec) DeepCopyInto(out *FrontdoorCustomDomainAssociationSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationSpec. +func (in *FrontdoorCustomDomainAssociationSpec) DeepCopy() *FrontdoorCustomDomainAssociationSpec { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainAssociationSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainAssociationStatus) DeepCopyInto(out *FrontdoorCustomDomainAssociationStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationStatus. +func (in *FrontdoorCustomDomainAssociationStatus) DeepCopy() *FrontdoorCustomDomainAssociationStatus { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainAssociationStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainInitParameters) DeepCopyInto(out *FrontdoorCustomDomainInitParameters) { + *out = *in + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.TLS != nil { + in, out := &in.TLS, &out.TLS + *out = make([]TLSInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainInitParameters. +func (in *FrontdoorCustomDomainInitParameters) DeepCopy() *FrontdoorCustomDomainInitParameters { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainList) DeepCopyInto(out *FrontdoorCustomDomainList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FrontdoorCustomDomain, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainList. +func (in *FrontdoorCustomDomainList) DeepCopy() *FrontdoorCustomDomainList { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorCustomDomainList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainObservation) DeepCopyInto(out *FrontdoorCustomDomainObservation) { + *out = *in + if in.CdnFrontdoorProfileID != nil { + in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID + *out = new(string) + **out = **in + } + if in.DNSZoneID != nil { + in, out := &in.DNSZoneID, &out.DNSZoneID + *out = new(string) + **out = **in + } + if in.ExpirationDate != nil { + in, out := &in.ExpirationDate, &out.ExpirationDate + *out = new(string) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.TLS != nil { + in, out := &in.TLS, &out.TLS + *out = make([]TLSObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ValidationToken != nil { + in, out := &in.ValidationToken, &out.ValidationToken + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainObservation. +func (in *FrontdoorCustomDomainObservation) DeepCopy() *FrontdoorCustomDomainObservation { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainParameters) DeepCopyInto(out *FrontdoorCustomDomainParameters) { + *out = *in + if in.CdnFrontdoorProfileID != nil { + in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID + *out = new(string) + **out = **in + } + if in.CdnFrontdoorProfileIDRef != nil { + in, out := &in.CdnFrontdoorProfileIDRef, &out.CdnFrontdoorProfileIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorProfileIDSelector != nil { + in, out := &in.CdnFrontdoorProfileIDSelector, &out.CdnFrontdoorProfileIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.DNSZoneID != nil { + in, out := &in.DNSZoneID, &out.DNSZoneID + *out = new(string) + **out = **in + } + if in.DNSZoneIDRef != nil { + in, out := &in.DNSZoneIDRef, &out.DNSZoneIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.DNSZoneIDSelector != nil { + in, out := &in.DNSZoneIDSelector, &out.DNSZoneIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.TLS != nil { + in, out := &in.TLS, &out.TLS + *out = make([]TLSParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainParameters. +func (in *FrontdoorCustomDomainParameters) DeepCopy() *FrontdoorCustomDomainParameters { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainSpec) DeepCopyInto(out *FrontdoorCustomDomainSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainSpec. +func (in *FrontdoorCustomDomainSpec) DeepCopy() *FrontdoorCustomDomainSpec { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomDomainStatus) DeepCopyInto(out *FrontdoorCustomDomainStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainStatus. +func (in *FrontdoorCustomDomainStatus) DeepCopy() *FrontdoorCustomDomainStatus { + if in == nil { + return nil + } + out := new(FrontdoorCustomDomainStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorEndpoint) DeepCopyInto(out *FrontdoorEndpoint) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpoint. +func (in *FrontdoorEndpoint) DeepCopy() *FrontdoorEndpoint { + if in == nil { + return nil + } + out := new(FrontdoorEndpoint) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorEndpoint) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorEndpointInitParameters) DeepCopyInto(out *FrontdoorEndpointInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointInitParameters. +func (in *FrontdoorEndpointInitParameters) DeepCopy() *FrontdoorEndpointInitParameters { + if in == nil { + return nil + } + out := new(FrontdoorEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorEndpointList) DeepCopyInto(out *FrontdoorEndpointList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FrontdoorEndpoint, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointList. +func (in *FrontdoorEndpointList) DeepCopy() *FrontdoorEndpointList { + if in == nil { + return nil + } + out := new(FrontdoorEndpointList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorEndpointList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorEndpointObservation) DeepCopyInto(out *FrontdoorEndpointObservation) { + *out = *in + if in.CdnFrontdoorProfileID != nil { + in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointObservation. +func (in *FrontdoorEndpointObservation) DeepCopy() *FrontdoorEndpointObservation { + if in == nil { + return nil + } + out := new(FrontdoorEndpointObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorEndpointParameters) DeepCopyInto(out *FrontdoorEndpointParameters) { + *out = *in + if in.CdnFrontdoorProfileID != nil { + in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID + *out = new(string) + **out = **in + } + if in.CdnFrontdoorProfileIDRef != nil { + in, out := &in.CdnFrontdoorProfileIDRef, &out.CdnFrontdoorProfileIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorProfileIDSelector != nil { + in, out := &in.CdnFrontdoorProfileIDSelector, &out.CdnFrontdoorProfileIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointParameters. +func (in *FrontdoorEndpointParameters) DeepCopy() *FrontdoorEndpointParameters { + if in == nil { + return nil + } + out := new(FrontdoorEndpointParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorEndpointSpec) DeepCopyInto(out *FrontdoorEndpointSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointSpec. +func (in *FrontdoorEndpointSpec) DeepCopy() *FrontdoorEndpointSpec { + if in == nil { + return nil + } + out := new(FrontdoorEndpointSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorEndpointStatus) DeepCopyInto(out *FrontdoorEndpointStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointStatus. +func (in *FrontdoorEndpointStatus) DeepCopy() *FrontdoorEndpointStatus { + if in == nil { + return nil + } + out := new(FrontdoorEndpointStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOrigin) DeepCopyInto(out *FrontdoorOrigin) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOrigin. +func (in *FrontdoorOrigin) DeepCopy() *FrontdoorOrigin { + if in == nil { + return nil + } + out := new(FrontdoorOrigin) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorOrigin) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginGroup) DeepCopyInto(out *FrontdoorOriginGroup) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroup. +func (in *FrontdoorOriginGroup) DeepCopy() *FrontdoorOriginGroup { + if in == nil { + return nil + } + out := new(FrontdoorOriginGroup) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorOriginGroup) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginGroupInitParameters) DeepCopyInto(out *FrontdoorOriginGroupInitParameters) { + *out = *in + if in.HealthProbe != nil { + in, out := &in.HealthProbe, &out.HealthProbe + *out = make([]HealthProbeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancing != nil { + in, out := &in.LoadBalancing, &out.LoadBalancing + *out = make([]LoadBalancingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RestoreTrafficTimeToHealedOrNewEndpointInMinutes != nil { + in, out := &in.RestoreTrafficTimeToHealedOrNewEndpointInMinutes, &out.RestoreTrafficTimeToHealedOrNewEndpointInMinutes + *out = new(float64) + **out = **in + } + if in.SessionAffinityEnabled != nil { + in, out := &in.SessionAffinityEnabled, &out.SessionAffinityEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupInitParameters. +func (in *FrontdoorOriginGroupInitParameters) DeepCopy() *FrontdoorOriginGroupInitParameters { + if in == nil { + return nil + } + out := new(FrontdoorOriginGroupInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginGroupList) DeepCopyInto(out *FrontdoorOriginGroupList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FrontdoorOriginGroup, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupList. +func (in *FrontdoorOriginGroupList) DeepCopy() *FrontdoorOriginGroupList { + if in == nil { + return nil + } + out := new(FrontdoorOriginGroupList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorOriginGroupList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginGroupObservation) DeepCopyInto(out *FrontdoorOriginGroupObservation) { + *out = *in + if in.CdnFrontdoorProfileID != nil { + in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID + *out = new(string) + **out = **in + } + if in.HealthProbe != nil { + in, out := &in.HealthProbe, &out.HealthProbe + *out = make([]HealthProbeObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.LoadBalancing != nil { + in, out := &in.LoadBalancing, &out.LoadBalancing + *out = make([]LoadBalancingObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RestoreTrafficTimeToHealedOrNewEndpointInMinutes != nil { + in, out := &in.RestoreTrafficTimeToHealedOrNewEndpointInMinutes, &out.RestoreTrafficTimeToHealedOrNewEndpointInMinutes + *out = new(float64) + **out = **in + } + if in.SessionAffinityEnabled != nil { + in, out := &in.SessionAffinityEnabled, &out.SessionAffinityEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupObservation. +func (in *FrontdoorOriginGroupObservation) DeepCopy() *FrontdoorOriginGroupObservation { + if in == nil { + return nil + } + out := new(FrontdoorOriginGroupObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginGroupParameters) DeepCopyInto(out *FrontdoorOriginGroupParameters) { + *out = *in + if in.CdnFrontdoorProfileID != nil { + in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID + *out = new(string) + **out = **in + } + if in.CdnFrontdoorProfileIDRef != nil { + in, out := &in.CdnFrontdoorProfileIDRef, &out.CdnFrontdoorProfileIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorProfileIDSelector != nil { + in, out := &in.CdnFrontdoorProfileIDSelector, &out.CdnFrontdoorProfileIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.HealthProbe != nil { + in, out := &in.HealthProbe, &out.HealthProbe + *out = make([]HealthProbeParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancing != nil { + in, out := &in.LoadBalancing, &out.LoadBalancing + *out = make([]LoadBalancingParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RestoreTrafficTimeToHealedOrNewEndpointInMinutes != nil { + in, out := &in.RestoreTrafficTimeToHealedOrNewEndpointInMinutes, &out.RestoreTrafficTimeToHealedOrNewEndpointInMinutes + *out = new(float64) + **out = **in + } + if in.SessionAffinityEnabled != nil { + in, out := &in.SessionAffinityEnabled, &out.SessionAffinityEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupParameters. +func (in *FrontdoorOriginGroupParameters) DeepCopy() *FrontdoorOriginGroupParameters { + if in == nil { + return nil + } + out := new(FrontdoorOriginGroupParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginGroupSpec) DeepCopyInto(out *FrontdoorOriginGroupSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupSpec. +func (in *FrontdoorOriginGroupSpec) DeepCopy() *FrontdoorOriginGroupSpec { + if in == nil { + return nil + } + out := new(FrontdoorOriginGroupSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginGroupStatus) DeepCopyInto(out *FrontdoorOriginGroupStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupStatus. +func (in *FrontdoorOriginGroupStatus) DeepCopy() *FrontdoorOriginGroupStatus { + if in == nil { + return nil + } + out := new(FrontdoorOriginGroupStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginInitParameters) DeepCopyInto(out *FrontdoorOriginInitParameters) { + *out = *in + if in.CertificateNameCheckEnabled != nil { + in, out := &in.CertificateNameCheckEnabled, &out.CertificateNameCheckEnabled + *out = new(bool) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPPort != nil { + in, out := &in.HTTPPort, &out.HTTPPort + *out = new(float64) + **out = **in + } + if in.HTTPSPort != nil { + in, out := &in.HTTPSPort, &out.HTTPSPort + *out = new(float64) + **out = **in + } + if in.HealthProbesEnabled != nil { + in, out := &in.HealthProbesEnabled, &out.HealthProbesEnabled + *out = new(bool) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.PrivateLink != nil { + in, out := &in.PrivateLink, &out.PrivateLink + *out = make([]PrivateLinkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Weight != nil { + in, out := &in.Weight, &out.Weight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginInitParameters. +func (in *FrontdoorOriginInitParameters) DeepCopy() *FrontdoorOriginInitParameters { + if in == nil { + return nil + } + out := new(FrontdoorOriginInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginList) DeepCopyInto(out *FrontdoorOriginList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FrontdoorOrigin, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginList. +func (in *FrontdoorOriginList) DeepCopy() *FrontdoorOriginList { + if in == nil { + return nil + } + out := new(FrontdoorOriginList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorOriginList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginObservation) DeepCopyInto(out *FrontdoorOriginObservation) { + *out = *in + if in.CdnFrontdoorOriginGroupID != nil { + in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + *out = new(string) + **out = **in + } + if in.CertificateNameCheckEnabled != nil { + in, out := &in.CertificateNameCheckEnabled, &out.CertificateNameCheckEnabled + *out = new(bool) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPPort != nil { + in, out := &in.HTTPPort, &out.HTTPPort + *out = new(float64) + **out = **in + } + if in.HTTPSPort != nil { + in, out := &in.HTTPSPort, &out.HTTPSPort + *out = new(float64) + **out = **in + } + if in.HealthProbesEnabled != nil { + in, out := &in.HealthProbesEnabled, &out.HealthProbesEnabled + *out = new(bool) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.OriginHostHeader != nil { + in, out := &in.OriginHostHeader, &out.OriginHostHeader + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.PrivateLink != nil { + in, out := &in.PrivateLink, &out.PrivateLink + *out = make([]PrivateLinkObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Weight != nil { + in, out := &in.Weight, &out.Weight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginObservation. +func (in *FrontdoorOriginObservation) DeepCopy() *FrontdoorOriginObservation { + if in == nil { + return nil + } + out := new(FrontdoorOriginObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorOriginParameters) DeepCopyInto(out *FrontdoorOriginParameters) { + *out = *in + if in.CdnFrontdoorOriginGroupID != nil { + in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + *out = new(string) + **out = **in + } + if in.CdnFrontdoorOriginGroupIDRef != nil { + in, out := &in.CdnFrontdoorOriginGroupIDRef, &out.CdnFrontdoorOriginGroupIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorOriginGroupIDSelector != nil { + in, out := &in.CdnFrontdoorOriginGroupIDSelector, &out.CdnFrontdoorOriginGroupIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.CertificateNameCheckEnabled != nil { + in, out := &in.CertificateNameCheckEnabled, &out.CertificateNameCheckEnabled + *out = new(bool) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPPort != nil { + in, out := &in.HTTPPort, &out.HTTPPort + *out = new(float64) + **out = **in + } + if in.HTTPSPort != nil { + in, out := &in.HTTPSPort, &out.HTTPSPort + *out = new(float64) + **out = **in + } + if in.HealthProbesEnabled != nil { + in, out := &in.HealthProbesEnabled, &out.HealthProbesEnabled + *out = new(bool) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.HostNameRef != nil { + in, out := &in.HostNameRef, &out.HostNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.HostNameSelector != nil { + in, out := &in.HostNameSelector, &out.HostNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.OriginHostHeader != nil { + in, out := &in.OriginHostHeader, &out.OriginHostHeader + *out = new(string) + **out = **in + } + if in.OriginHostHeaderRef != nil { + in, out := &in.OriginHostHeaderRef, &out.OriginHostHeaderRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) } - if in.URLFileNameCondition != nil { - in, out := &in.URLFileNameCondition, &out.URLFileNameCondition - *out = make([]URLFileNameConditionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.OriginHostHeaderSelector != nil { + in, out := &in.OriginHostHeaderSelector, &out.OriginHostHeaderSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) } - if in.URLPathCondition != nil { - in, out := &in.URLPathCondition, &out.URLPathCondition - *out = make([]URLPathConditionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in } - if in.URLRedirectAction != nil { - in, out := &in.URLRedirectAction, &out.URLRedirectAction - *out = make([]URLRedirectActionParameters, len(*in)) + if in.PrivateLink != nil { + in, out := &in.PrivateLink, &out.PrivateLink + *out = make([]PrivateLinkParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.URLRewriteAction != nil { - in, out := &in.URLRewriteAction, &out.URLRewriteAction - *out = make([]URLRewriteActionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Weight != nil { + in, out := &in.Weight, &out.Weight + *out = new(float64) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryRuleParameters. -func (in *DeliveryRuleParameters) DeepCopy() *DeliveryRuleParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginParameters. +func (in *FrontdoorOriginParameters) DeepCopy() *FrontdoorOriginParameters { if in == nil { return nil } - out := new(DeliveryRuleParameters) + out := new(FrontdoorOriginParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DeviceConditionObservation) DeepCopyInto(out *DeviceConditionObservation) { +func (in *FrontdoorOriginSpec) DeepCopyInto(out *FrontdoorOriginSpec) { *out = *in - if in.MatchValues != nil { - in, out := &in.MatchValues, &out.MatchValues - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.NegateCondition != nil { - in, out := &in.NegateCondition, &out.NegateCondition - *out = new(bool) - **out = **in - } - if in.Operator != nil { - in, out := &in.Operator, &out.Operator - *out = new(string) - **out = **in - } + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceConditionObservation. -func (in *DeviceConditionObservation) DeepCopy() *DeviceConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginSpec. +func (in *FrontdoorOriginSpec) DeepCopy() *FrontdoorOriginSpec { if in == nil { return nil } - out := new(DeviceConditionObservation) + out := new(FrontdoorOriginSpec) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DeviceConditionParameters) DeepCopyInto(out *DeviceConditionParameters) { +func (in *FrontdoorOriginStatus) DeepCopyInto(out *FrontdoorOriginStatus) { *out = *in - if in.MatchValues != nil { - in, out := &in.MatchValues, &out.MatchValues - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.NegateCondition != nil { - in, out := &in.NegateCondition, &out.NegateCondition - *out = new(bool) - **out = **in - } - if in.Operator != nil { - in, out := &in.Operator, &out.Operator - *out = new(string) - **out = **in - } + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceConditionParameters. -func (in *DeviceConditionParameters) DeepCopy() *DeviceConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginStatus. +func (in *FrontdoorOriginStatus) DeepCopy() *FrontdoorOriginStatus { if in == nil { return nil } - out := new(DeviceConditionParameters) + out := new(FrontdoorOriginStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Endpoint) DeepCopyInto(out *Endpoint) { +func (in *FrontdoorProfile) DeepCopyInto(out *FrontdoorProfile) { *out = *in out.TypeMeta = in.TypeMeta in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) @@ -2307,50 +5158,18 @@ func (in *Endpoint) DeepCopyInto(out *Endpoint) { in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint. -func (in *Endpoint) DeepCopy() *Endpoint { - if in == nil { - return nil - } - out := new(Endpoint) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *Endpoint) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EndpointList) DeepCopyInto(out *EndpointList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Endpoint, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointList. -func (in *EndpointList) DeepCopy() *EndpointList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfile. +func (in *FrontdoorProfile) DeepCopy() *FrontdoorProfile { if in == nil { return nil } - out := new(EndpointList) + out := new(FrontdoorProfile) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *EndpointList) DeepCopyObject() runtime.Object { +func (in *FrontdoorProfile) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -2358,109 +5177,15 @@ func (in *EndpointList) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EndpointObservation) DeepCopyInto(out *EndpointObservation) { +func (in *FrontdoorProfileInitParameters) DeepCopyInto(out *FrontdoorProfileInitParameters) { *out = *in - if in.ContentTypesToCompress != nil { - in, out := &in.ContentTypesToCompress, &out.ContentTypesToCompress - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.DeliveryRule != nil { - in, out := &in.DeliveryRule, &out.DeliveryRule - *out = make([]DeliveryRuleObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Fqdn != nil { - in, out := &in.Fqdn, &out.Fqdn - *out = new(string) - **out = **in - } - if in.GeoFilter != nil { - in, out := &in.GeoFilter, &out.GeoFilter - *out = make([]GeoFilterObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.GlobalDeliveryRule != nil { - in, out := &in.GlobalDeliveryRule, &out.GlobalDeliveryRule - *out = make([]GlobalDeliveryRuleObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } - if in.IsCompressionEnabled != nil { - in, out := &in.IsCompressionEnabled, &out.IsCompressionEnabled - *out = new(bool) - **out = **in - } - if in.IsHTTPAllowed != nil { - in, out := &in.IsHTTPAllowed, &out.IsHTTPAllowed - *out = new(bool) - **out = **in - } - if in.IsHTTPSAllowed != nil { - in, out := &in.IsHTTPSAllowed, &out.IsHTTPSAllowed - *out = new(bool) - **out = **in - } - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) - **out = **in - } - if in.OptimizationType != nil { - in, out := &in.OptimizationType, &out.OptimizationType - *out = new(string) - **out = **in - } - if in.Origin != nil { - in, out := &in.Origin, &out.Origin - *out = make([]OriginObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.OriginHostHeader != nil { - in, out := &in.OriginHostHeader, &out.OriginHostHeader - *out = new(string) - **out = **in - } - if in.OriginPath != nil { - in, out := &in.OriginPath, &out.OriginPath - *out = new(string) - **out = **in - } - if in.ProbePath != nil { - in, out := &in.ProbePath, &out.ProbePath - *out = new(string) - **out = **in - } - if in.ProfileName != nil { - in, out := &in.ProfileName, &out.ProfileName - *out = new(string) - **out = **in - } - if in.QuerystringCachingBehaviour != nil { - in, out := &in.QuerystringCachingBehaviour, &out.QuerystringCachingBehaviour - *out = new(string) + if in.ResponseTimeoutSeconds != nil { + in, out := &in.ResponseTimeoutSeconds, &out.ResponseTimeoutSeconds + *out = new(float64) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName *out = new(string) **out = **in } @@ -2481,118 +5206,106 @@ func (in *EndpointObservation) DeepCopyInto(out *EndpointObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointObservation. -func (in *EndpointObservation) DeepCopy() *EndpointObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileInitParameters. +func (in *FrontdoorProfileInitParameters) DeepCopy() *FrontdoorProfileInitParameters { if in == nil { return nil } - out := new(EndpointObservation) + out := new(FrontdoorProfileInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EndpointParameters) DeepCopyInto(out *EndpointParameters) { +func (in *FrontdoorProfileList) DeepCopyInto(out *FrontdoorProfileList) { *out = *in - if in.ContentTypesToCompress != nil { - in, out := &in.ContentTypesToCompress, &out.ContentTypesToCompress - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.DeliveryRule != nil { - in, out := &in.DeliveryRule, &out.DeliveryRule - *out = make([]DeliveryRuleParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.GeoFilter != nil { - in, out := &in.GeoFilter, &out.GeoFilter - *out = make([]GeoFilterParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.GlobalDeliveryRule != nil { - in, out := &in.GlobalDeliveryRule, &out.GlobalDeliveryRule - *out = make([]GlobalDeliveryRuleParameters, len(*in)) + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FrontdoorProfile, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.IsCompressionEnabled != nil { - in, out := &in.IsCompressionEnabled, &out.IsCompressionEnabled - *out = new(bool) - **out = **in - } - if in.IsHTTPAllowed != nil { - in, out := &in.IsHTTPAllowed, &out.IsHTTPAllowed - *out = new(bool) - **out = **in - } - if in.IsHTTPSAllowed != nil { - in, out := &in.IsHTTPSAllowed, &out.IsHTTPSAllowed - *out = new(bool) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileList. +func (in *FrontdoorProfileList) DeepCopy() *FrontdoorProfileList { + if in == nil { + return nil } - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) - **out = **in + out := new(FrontdoorProfileList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorProfileList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c } - if in.OptimizationType != nil { - in, out := &in.OptimizationType, &out.OptimizationType + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorProfileObservation) DeepCopyInto(out *FrontdoorProfileObservation) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID *out = new(string) **out = **in } - if in.Origin != nil { - in, out := &in.Origin, &out.Origin - *out = make([]OriginParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.OriginHostHeader != nil { - in, out := &in.OriginHostHeader, &out.OriginHostHeader + if in.ResourceGUID != nil { + in, out := &in.ResourceGUID, &out.ResourceGUID *out = new(string) **out = **in } - if in.OriginPath != nil { - in, out := &in.OriginPath, &out.OriginPath + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName *out = new(string) **out = **in } - if in.ProbePath != nil { - in, out := &in.ProbePath, &out.ProbePath - *out = new(string) + if in.ResponseTimeoutSeconds != nil { + in, out := &in.ResponseTimeoutSeconds, &out.ResponseTimeoutSeconds + *out = new(float64) **out = **in } - if in.ProfileName != nil { - in, out := &in.ProfileName, &out.ProfileName + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName *out = new(string) **out = **in } - if in.ProfileNameRef != nil { - in, out := &in.ProfileNameRef, &out.ProfileNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.ProfileNameSelector != nil { - in, out := &in.ProfileNameSelector, &out.ProfileNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } } - if in.QuerystringCachingBehaviour != nil { - in, out := &in.QuerystringCachingBehaviour, &out.QuerystringCachingBehaviour - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileObservation. +func (in *FrontdoorProfileObservation) DeepCopy() *FrontdoorProfileObservation { + if in == nil { + return nil } + out := new(FrontdoorProfileObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorProfileParameters) DeepCopyInto(out *FrontdoorProfileParameters) { + *out = *in if in.ResourceGroupName != nil { in, out := &in.ResourceGroupName, &out.ResourceGroupName *out = new(string) @@ -2608,6 +5321,16 @@ func (in *EndpointParameters) DeepCopyInto(out *EndpointParameters) { *out = new(v1.Selector) (*in).DeepCopyInto(*out) } + if in.ResponseTimeoutSeconds != nil { + in, out := &in.ResponseTimeoutSeconds, &out.ResponseTimeoutSeconds + *out = new(float64) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -2625,52 +5348,53 @@ func (in *EndpointParameters) DeepCopyInto(out *EndpointParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointParameters. -func (in *EndpointParameters) DeepCopy() *EndpointParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileParameters. +func (in *FrontdoorProfileParameters) DeepCopy() *FrontdoorProfileParameters { if in == nil { return nil } - out := new(EndpointParameters) + out := new(FrontdoorProfileParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EndpointSpec) DeepCopyInto(out *EndpointSpec) { +func (in *FrontdoorProfileSpec) DeepCopyInto(out *FrontdoorProfileSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSpec. -func (in *EndpointSpec) DeepCopy() *EndpointSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileSpec. +func (in *FrontdoorProfileSpec) DeepCopy() *FrontdoorProfileSpec { if in == nil { return nil } - out := new(EndpointSpec) + out := new(FrontdoorProfileSpec) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EndpointStatus) DeepCopyInto(out *EndpointStatus) { +func (in *FrontdoorProfileStatus) DeepCopyInto(out *FrontdoorProfileStatus) { *out = *in in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointStatus. -func (in *EndpointStatus) DeepCopy() *EndpointStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileStatus. +func (in *FrontdoorProfileStatus) DeepCopy() *FrontdoorProfileStatus { if in == nil { return nil } - out := new(EndpointStatus) + out := new(FrontdoorProfileStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomain) DeepCopyInto(out *FrontdoorCustomDomain) { +func (in *FrontdoorRoute) DeepCopyInto(out *FrontdoorRoute) { *out = *in out.TypeMeta = in.TypeMeta in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) @@ -2678,18 +5402,18 @@ func (in *FrontdoorCustomDomain) DeepCopyInto(out *FrontdoorCustomDomain) { in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomain. -func (in *FrontdoorCustomDomain) DeepCopy() *FrontdoorCustomDomain { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRoute. +func (in *FrontdoorRoute) DeepCopy() *FrontdoorRoute { if in == nil { return nil } - out := new(FrontdoorCustomDomain) + out := new(FrontdoorRoute) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorCustomDomain) DeepCopyObject() runtime.Object { +func (in *FrontdoorRoute) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -2697,58 +5421,100 @@ func (in *FrontdoorCustomDomain) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainAssociation) DeepCopyInto(out *FrontdoorCustomDomainAssociation) { +func (in *FrontdoorRouteInitParameters) DeepCopyInto(out *FrontdoorRouteInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.Cache != nil { + in, out := &in.Cache, &out.Cache + *out = make([]CacheInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CdnFrontdoorOriginPath != nil { + in, out := &in.CdnFrontdoorOriginPath, &out.CdnFrontdoorOriginPath + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ForwardingProtocol != nil { + in, out := &in.ForwardingProtocol, &out.ForwardingProtocol + *out = new(string) + **out = **in + } + if in.HTTPSRedirectEnabled != nil { + in, out := &in.HTTPSRedirectEnabled, &out.HTTPSRedirectEnabled + *out = new(bool) + **out = **in + } + if in.LinkToDefaultDomain != nil { + in, out := &in.LinkToDefaultDomain, &out.LinkToDefaultDomain + *out = new(bool) + **out = **in + } + if in.PatternsToMatch != nil { + in, out := &in.PatternsToMatch, &out.PatternsToMatch + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportedProtocols != nil { + in, out := &in.SupportedProtocols, &out.SupportedProtocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociation. -func (in *FrontdoorCustomDomainAssociation) DeepCopy() *FrontdoorCustomDomainAssociation { + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteInitParameters. +func (in *FrontdoorRouteInitParameters) DeepCopy() *FrontdoorRouteInitParameters { if in == nil { return nil } - out := new(FrontdoorCustomDomainAssociation) + out := new(FrontdoorRouteInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorCustomDomainAssociation) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainAssociationList) DeepCopyInto(out *FrontdoorCustomDomainAssociationList) { +func (in *FrontdoorRouteList) DeepCopyInto(out *FrontdoorRouteList) { *out = *in out.TypeMeta = in.TypeMeta in.ListMeta.DeepCopyInto(&out.ListMeta) if in.Items != nil { in, out := &in.Items, &out.Items - *out = make([]FrontdoorCustomDomainAssociation, len(*in)) + *out = make([]FrontdoorRoute, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationList. -func (in *FrontdoorCustomDomainAssociationList) DeepCopy() *FrontdoorCustomDomainAssociationList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteList. +func (in *FrontdoorRouteList) DeepCopy() *FrontdoorRouteList { if in == nil { return nil } - out := new(FrontdoorCustomDomainAssociationList) + out := new(FrontdoorRouteList) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorCustomDomainAssociationList) DeepCopyObject() runtime.Object { +func (in *FrontdoorRouteList) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -2756,15 +5522,54 @@ func (in *FrontdoorCustomDomainAssociationList) DeepCopyObject() runtime.Object } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainAssociationObservation) DeepCopyInto(out *FrontdoorCustomDomainAssociationObservation) { +func (in *FrontdoorRouteObservation) DeepCopyInto(out *FrontdoorRouteObservation) { *out = *in - if in.CdnFrontdoorCustomDomainID != nil { - in, out := &in.CdnFrontdoorCustomDomainID, &out.CdnFrontdoorCustomDomainID + if in.Cache != nil { + in, out := &in.Cache, &out.Cache + *out = make([]CacheObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CdnFrontdoorCustomDomainIds != nil { + in, out := &in.CdnFrontdoorCustomDomainIds, &out.CdnFrontdoorCustomDomainIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CdnFrontdoorEndpointID != nil { + in, out := &in.CdnFrontdoorEndpointID, &out.CdnFrontdoorEndpointID *out = new(string) **out = **in } - if in.CdnFrontdoorRouteIds != nil { - in, out := &in.CdnFrontdoorRouteIds, &out.CdnFrontdoorRouteIds + if in.CdnFrontdoorOriginGroupID != nil { + in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + *out = new(string) + **out = **in + } + if in.CdnFrontdoorOriginIds != nil { + in, out := &in.CdnFrontdoorOriginIds, &out.CdnFrontdoorOriginIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CdnFrontdoorOriginPath != nil { + in, out := &in.CdnFrontdoorOriginPath, &out.CdnFrontdoorOriginPath + *out = new(string) + **out = **in + } + if in.CdnFrontdoorRuleSetIds != nil { + in, out := &in.CdnFrontdoorRuleSetIds, &out.CdnFrontdoorRuleSetIds *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -2774,43 +5579,130 @@ func (in *FrontdoorCustomDomainAssociationObservation) DeepCopyInto(out *Frontdo } } } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ForwardingProtocol != nil { + in, out := &in.ForwardingProtocol, &out.ForwardingProtocol + *out = new(string) + **out = **in + } + if in.HTTPSRedirectEnabled != nil { + in, out := &in.HTTPSRedirectEnabled, &out.HTTPSRedirectEnabled + *out = new(bool) + **out = **in + } if in.ID != nil { in, out := &in.ID, &out.ID *out = new(string) **out = **in } + if in.LinkToDefaultDomain != nil { + in, out := &in.LinkToDefaultDomain, &out.LinkToDefaultDomain + *out = new(bool) + **out = **in + } + if in.PatternsToMatch != nil { + in, out := &in.PatternsToMatch, &out.PatternsToMatch + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportedProtocols != nil { + in, out := &in.SupportedProtocols, &out.SupportedProtocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationObservation. -func (in *FrontdoorCustomDomainAssociationObservation) DeepCopy() *FrontdoorCustomDomainAssociationObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteObservation. +func (in *FrontdoorRouteObservation) DeepCopy() *FrontdoorRouteObservation { if in == nil { return nil } - out := new(FrontdoorCustomDomainAssociationObservation) + out := new(FrontdoorRouteObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainAssociationParameters) DeepCopyInto(out *FrontdoorCustomDomainAssociationParameters) { +func (in *FrontdoorRouteParameters) DeepCopyInto(out *FrontdoorRouteParameters) { *out = *in - if in.CdnFrontdoorCustomDomainID != nil { - in, out := &in.CdnFrontdoorCustomDomainID, &out.CdnFrontdoorCustomDomainID + if in.Cache != nil { + in, out := &in.Cache, &out.Cache + *out = make([]CacheParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CdnFrontdoorCustomDomainIds != nil { + in, out := &in.CdnFrontdoorCustomDomainIds, &out.CdnFrontdoorCustomDomainIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CdnFrontdoorCustomDomainIdsRefs != nil { + in, out := &in.CdnFrontdoorCustomDomainIdsRefs, &out.CdnFrontdoorCustomDomainIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CdnFrontdoorCustomDomainIdsSelector != nil { + in, out := &in.CdnFrontdoorCustomDomainIdsSelector, &out.CdnFrontdoorCustomDomainIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorEndpointID != nil { + in, out := &in.CdnFrontdoorEndpointID, &out.CdnFrontdoorEndpointID *out = new(string) **out = **in } - if in.CdnFrontdoorCustomDomainIDRef != nil { - in, out := &in.CdnFrontdoorCustomDomainIDRef, &out.CdnFrontdoorCustomDomainIDRef + if in.CdnFrontdoorEndpointIDRef != nil { + in, out := &in.CdnFrontdoorEndpointIDRef, &out.CdnFrontdoorEndpointIDRef *out = new(v1.Reference) (*in).DeepCopyInto(*out) } - if in.CdnFrontdoorCustomDomainIDSelector != nil { - in, out := &in.CdnFrontdoorCustomDomainIDSelector, &out.CdnFrontdoorCustomDomainIDSelector + if in.CdnFrontdoorEndpointIDSelector != nil { + in, out := &in.CdnFrontdoorEndpointIDSelector, &out.CdnFrontdoorEndpointIDSelector *out = new(v1.Selector) (*in).DeepCopyInto(*out) } - if in.CdnFrontdoorRouteIds != nil { - in, out := &in.CdnFrontdoorRouteIds, &out.CdnFrontdoorRouteIds + if in.CdnFrontdoorOriginGroupID != nil { + in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + *out = new(string) + **out = **in + } + if in.CdnFrontdoorOriginGroupIDRef != nil { + in, out := &in.CdnFrontdoorOriginGroupIDRef, &out.CdnFrontdoorOriginGroupIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorOriginGroupIDSelector != nil { + in, out := &in.CdnFrontdoorOriginGroupIDSelector, &out.CdnFrontdoorOriginGroupIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorOriginIds != nil { + in, out := &in.CdnFrontdoorOriginIds, &out.CdnFrontdoorOriginIds *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -2820,90 +5712,227 @@ func (in *FrontdoorCustomDomainAssociationParameters) DeepCopyInto(out *Frontdoo } } } - if in.CdnFrontdoorRouteIdsRefs != nil { - in, out := &in.CdnFrontdoorRouteIdsRefs, &out.CdnFrontdoorRouteIdsRefs + if in.CdnFrontdoorOriginIdsRefs != nil { + in, out := &in.CdnFrontdoorOriginIdsRefs, &out.CdnFrontdoorOriginIdsRefs *out = make([]v1.Reference, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.CdnFrontdoorRouteIdsSelector != nil { - in, out := &in.CdnFrontdoorRouteIdsSelector, &out.CdnFrontdoorRouteIdsSelector + if in.CdnFrontdoorOriginIdsSelector != nil { + in, out := &in.CdnFrontdoorOriginIdsSelector, &out.CdnFrontdoorOriginIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorOriginPath != nil { + in, out := &in.CdnFrontdoorOriginPath, &out.CdnFrontdoorOriginPath + *out = new(string) + **out = **in + } + if in.CdnFrontdoorRuleSetIds != nil { + in, out := &in.CdnFrontdoorRuleSetIds, &out.CdnFrontdoorRuleSetIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CdnFrontdoorRuleSetIdsRefs != nil { + in, out := &in.CdnFrontdoorRuleSetIdsRefs, &out.CdnFrontdoorRuleSetIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CdnFrontdoorRuleSetIdsSelector != nil { + in, out := &in.CdnFrontdoorRuleSetIdsSelector, &out.CdnFrontdoorRuleSetIdsSelector *out = new(v1.Selector) (*in).DeepCopyInto(*out) } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ForwardingProtocol != nil { + in, out := &in.ForwardingProtocol, &out.ForwardingProtocol + *out = new(string) + **out = **in + } + if in.HTTPSRedirectEnabled != nil { + in, out := &in.HTTPSRedirectEnabled, &out.HTTPSRedirectEnabled + *out = new(bool) + **out = **in + } + if in.LinkToDefaultDomain != nil { + in, out := &in.LinkToDefaultDomain, &out.LinkToDefaultDomain + *out = new(bool) + **out = **in + } + if in.PatternsToMatch != nil { + in, out := &in.PatternsToMatch, &out.PatternsToMatch + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportedProtocols != nil { + in, out := &in.SupportedProtocols, &out.SupportedProtocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationParameters. -func (in *FrontdoorCustomDomainAssociationParameters) DeepCopy() *FrontdoorCustomDomainAssociationParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteParameters. +func (in *FrontdoorRouteParameters) DeepCopy() *FrontdoorRouteParameters { if in == nil { return nil } - out := new(FrontdoorCustomDomainAssociationParameters) + out := new(FrontdoorRouteParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainAssociationSpec) DeepCopyInto(out *FrontdoorCustomDomainAssociationSpec) { +func (in *FrontdoorRouteSpec) DeepCopyInto(out *FrontdoorRouteSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationSpec. -func (in *FrontdoorCustomDomainAssociationSpec) DeepCopy() *FrontdoorCustomDomainAssociationSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteSpec. +func (in *FrontdoorRouteSpec) DeepCopy() *FrontdoorRouteSpec { if in == nil { return nil } - out := new(FrontdoorCustomDomainAssociationSpec) + out := new(FrontdoorRouteSpec) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainAssociationStatus) DeepCopyInto(out *FrontdoorCustomDomainAssociationStatus) { +func (in *FrontdoorRouteStatus) DeepCopyInto(out *FrontdoorRouteStatus) { *out = *in in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainAssociationStatus. -func (in *FrontdoorCustomDomainAssociationStatus) DeepCopy() *FrontdoorCustomDomainAssociationStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteStatus. +func (in *FrontdoorRouteStatus) DeepCopy() *FrontdoorRouteStatus { if in == nil { return nil } - out := new(FrontdoorCustomDomainAssociationStatus) + out := new(FrontdoorRouteStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainList) DeepCopyInto(out *FrontdoorCustomDomainList) { +func (in *FrontdoorRule) DeepCopyInto(out *FrontdoorRule) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRule. +func (in *FrontdoorRule) DeepCopy() *FrontdoorRule { + if in == nil { + return nil + } + out := new(FrontdoorRule) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorRule) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorRuleInitParameters) DeepCopyInto(out *FrontdoorRuleInitParameters) { + *out = *in + if in.Actions != nil { + in, out := &in.Actions, &out.Actions + *out = make([]ActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BehaviorOnMatch != nil { + in, out := &in.BehaviorOnMatch, &out.BehaviorOnMatch + *out = new(string) + **out = **in + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]ConditionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleInitParameters. +func (in *FrontdoorRuleInitParameters) DeepCopy() *FrontdoorRuleInitParameters { + if in == nil { + return nil + } + out := new(FrontdoorRuleInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorRuleList) DeepCopyInto(out *FrontdoorRuleList) { *out = *in out.TypeMeta = in.TypeMeta in.ListMeta.DeepCopyInto(&out.ListMeta) if in.Items != nil { in, out := &in.Items, &out.Items - *out = make([]FrontdoorCustomDomain, len(*in)) + *out = make([]FrontdoorRule, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainList. -func (in *FrontdoorCustomDomainList) DeepCopy() *FrontdoorCustomDomainList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleList. +func (in *FrontdoorRuleList) DeepCopy() *FrontdoorRuleList { if in == nil { return nil } - out := new(FrontdoorCustomDomainList) + out := new(FrontdoorRuleList) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorCustomDomainList) DeepCopyObject() runtime.Object { +func (in *FrontdoorRuleList) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -2911,201 +5940,181 @@ func (in *FrontdoorCustomDomainList) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainObservation) DeepCopyInto(out *FrontdoorCustomDomainObservation) { +func (in *FrontdoorRuleObservation) DeepCopyInto(out *FrontdoorRuleObservation) { *out = *in - if in.CdnFrontdoorProfileID != nil { - in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID - *out = new(string) - **out = **in - } - if in.DNSZoneID != nil { - in, out := &in.DNSZoneID, &out.DNSZoneID - *out = new(string) - **out = **in + if in.Actions != nil { + in, out := &in.Actions, &out.Actions + *out = make([]ActionsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.ExpirationDate != nil { - in, out := &in.ExpirationDate, &out.ExpirationDate + if in.BehaviorOnMatch != nil { + in, out := &in.BehaviorOnMatch, &out.BehaviorOnMatch *out = new(string) **out = **in } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName + if in.CdnFrontdoorRuleSetID != nil { + in, out := &in.CdnFrontdoorRuleSetID, &out.CdnFrontdoorRuleSetID *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.CdnFrontdoorRuleSetName != nil { + in, out := &in.CdnFrontdoorRuleSetName, &out.CdnFrontdoorRuleSetName *out = new(string) **out = **in } - if in.TLS != nil { - in, out := &in.TLS, &out.TLS - *out = make([]TLSObservation, len(*in)) + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]ConditionsObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ValidationToken != nil { - in, out := &in.ValidationToken, &out.ValidationToken + if in.ID != nil { + in, out := &in.ID, &out.ID *out = new(string) **out = **in } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainObservation. -func (in *FrontdoorCustomDomainObservation) DeepCopy() *FrontdoorCustomDomainObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleObservation. +func (in *FrontdoorRuleObservation) DeepCopy() *FrontdoorRuleObservation { if in == nil { return nil } - out := new(FrontdoorCustomDomainObservation) + out := new(FrontdoorRuleObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainParameters) DeepCopyInto(out *FrontdoorCustomDomainParameters) { +func (in *FrontdoorRuleParameters) DeepCopyInto(out *FrontdoorRuleParameters) { *out = *in - if in.CdnFrontdoorProfileID != nil { - in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID + if in.Actions != nil { + in, out := &in.Actions, &out.Actions + *out = make([]ActionsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BehaviorOnMatch != nil { + in, out := &in.BehaviorOnMatch, &out.BehaviorOnMatch *out = new(string) **out = **in } - if in.CdnFrontdoorProfileIDRef != nil { - in, out := &in.CdnFrontdoorProfileIDRef, &out.CdnFrontdoorProfileIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.CdnFrontdoorProfileIDSelector != nil { - in, out := &in.CdnFrontdoorProfileIDSelector, &out.CdnFrontdoorProfileIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.DNSZoneID != nil { - in, out := &in.DNSZoneID, &out.DNSZoneID + if in.CdnFrontdoorRuleSetID != nil { + in, out := &in.CdnFrontdoorRuleSetID, &out.CdnFrontdoorRuleSetID *out = new(string) **out = **in } - if in.DNSZoneIDRef != nil { - in, out := &in.DNSZoneIDRef, &out.DNSZoneIDRef + if in.CdnFrontdoorRuleSetIDRef != nil { + in, out := &in.CdnFrontdoorRuleSetIDRef, &out.CdnFrontdoorRuleSetIDRef *out = new(v1.Reference) (*in).DeepCopyInto(*out) } - if in.DNSZoneIDSelector != nil { - in, out := &in.DNSZoneIDSelector, &out.DNSZoneIDSelector + if in.CdnFrontdoorRuleSetIDSelector != nil { + in, out := &in.CdnFrontdoorRuleSetIDSelector, &out.CdnFrontdoorRuleSetIDSelector *out = new(v1.Selector) (*in).DeepCopyInto(*out) } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName - *out = new(string) - **out = **in - } - if in.TLS != nil { - in, out := &in.TLS, &out.TLS - *out = make([]TLSParameters, len(*in)) + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]ConditionsParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainParameters. -func (in *FrontdoorCustomDomainParameters) DeepCopy() *FrontdoorCustomDomainParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleParameters. +func (in *FrontdoorRuleParameters) DeepCopy() *FrontdoorRuleParameters { if in == nil { return nil } - out := new(FrontdoorCustomDomainParameters) + out := new(FrontdoorRuleParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainSpec) DeepCopyInto(out *FrontdoorCustomDomainSpec) { +func (in *FrontdoorRuleSet) DeepCopyInto(out *FrontdoorRuleSet) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainSpec. -func (in *FrontdoorCustomDomainSpec) DeepCopy() *FrontdoorCustomDomainSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSet. +func (in *FrontdoorRuleSet) DeepCopy() *FrontdoorRuleSet { if in == nil { return nil } - out := new(FrontdoorCustomDomainSpec) + out := new(FrontdoorRuleSet) in.DeepCopyInto(out) return out } -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorCustomDomainStatus) DeepCopyInto(out *FrontdoorCustomDomainStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomDomainStatus. -func (in *FrontdoorCustomDomainStatus) DeepCopy() *FrontdoorCustomDomainStatus { - if in == nil { - return nil +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FrontdoorRuleSet) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c } - out := new(FrontdoorCustomDomainStatus) - in.DeepCopyInto(out) - return out + return nil } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorEndpoint) DeepCopyInto(out *FrontdoorEndpoint) { +func (in *FrontdoorRuleSetInitParameters) DeepCopyInto(out *FrontdoorRuleSetInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpoint. -func (in *FrontdoorEndpoint) DeepCopy() *FrontdoorEndpoint { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetInitParameters. +func (in *FrontdoorRuleSetInitParameters) DeepCopy() *FrontdoorRuleSetInitParameters { if in == nil { return nil } - out := new(FrontdoorEndpoint) + out := new(FrontdoorRuleSetInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorEndpoint) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorEndpointList) DeepCopyInto(out *FrontdoorEndpointList) { +func (in *FrontdoorRuleSetList) DeepCopyInto(out *FrontdoorRuleSetList) { *out = *in out.TypeMeta = in.TypeMeta in.ListMeta.DeepCopyInto(&out.ListMeta) if in.Items != nil { in, out := &in.Items, &out.Items - *out = make([]FrontdoorEndpoint, len(*in)) + *out = make([]FrontdoorRuleSet, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointList. -func (in *FrontdoorEndpointList) DeepCopy() *FrontdoorEndpointList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetList. +func (in *FrontdoorRuleSetList) DeepCopy() *FrontdoorRuleSetList { if in == nil { return nil } - out := new(FrontdoorEndpointList) + out := new(FrontdoorRuleSetList) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorEndpointList) DeepCopyObject() runtime.Object { +func (in *FrontdoorRuleSetList) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -3113,57 +6122,32 @@ func (in *FrontdoorEndpointList) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorEndpointObservation) DeepCopyInto(out *FrontdoorEndpointObservation) { +func (in *FrontdoorRuleSetObservation) DeepCopyInto(out *FrontdoorRuleSetObservation) { *out = *in if in.CdnFrontdoorProfileID != nil { in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID *out = new(string) **out = **in } - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) - **out = **in - } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName - *out = new(string) - **out = **in - } if in.ID != nil { in, out := &in.ID, &out.ID *out = new(string) **out = **in } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointObservation. -func (in *FrontdoorEndpointObservation) DeepCopy() *FrontdoorEndpointObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetObservation. +func (in *FrontdoorRuleSetObservation) DeepCopy() *FrontdoorRuleSetObservation { if in == nil { return nil } - out := new(FrontdoorEndpointObservation) + out := new(FrontdoorRuleSetObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorEndpointParameters) DeepCopyInto(out *FrontdoorEndpointParameters) { +func (in *FrontdoorRuleSetParameters) DeepCopyInto(out *FrontdoorRuleSetParameters) { *out = *in if in.CdnFrontdoorProfileID != nil { in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID @@ -3180,931 +6164,927 @@ func (in *FrontdoorEndpointParameters) DeepCopyInto(out *FrontdoorEndpointParame *out = new(v1.Selector) (*in).DeepCopyInto(*out) } - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) - **out = **in - } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointParameters. -func (in *FrontdoorEndpointParameters) DeepCopy() *FrontdoorEndpointParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetParameters. +func (in *FrontdoorRuleSetParameters) DeepCopy() *FrontdoorRuleSetParameters { if in == nil { return nil } - out := new(FrontdoorEndpointParameters) + out := new(FrontdoorRuleSetParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorEndpointSpec) DeepCopyInto(out *FrontdoorEndpointSpec) { +func (in *FrontdoorRuleSetSpec) DeepCopyInto(out *FrontdoorRuleSetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointSpec. -func (in *FrontdoorEndpointSpec) DeepCopy() *FrontdoorEndpointSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetSpec. +func (in *FrontdoorRuleSetSpec) DeepCopy() *FrontdoorRuleSetSpec { if in == nil { return nil } - out := new(FrontdoorEndpointSpec) + out := new(FrontdoorRuleSetSpec) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorEndpointStatus) DeepCopyInto(out *FrontdoorEndpointStatus) { +func (in *FrontdoorRuleSetStatus) DeepCopyInto(out *FrontdoorRuleSetStatus) { *out = *in in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorEndpointStatus. -func (in *FrontdoorEndpointStatus) DeepCopy() *FrontdoorEndpointStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetStatus. +func (in *FrontdoorRuleSetStatus) DeepCopy() *FrontdoorRuleSetStatus { if in == nil { return nil } - out := new(FrontdoorEndpointStatus) + out := new(FrontdoorRuleSetStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOrigin) DeepCopyInto(out *FrontdoorOrigin) { +func (in *FrontdoorRuleSpec) DeepCopyInto(out *FrontdoorRuleSpec) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOrigin. -func (in *FrontdoorOrigin) DeepCopy() *FrontdoorOrigin { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSpec. +func (in *FrontdoorRuleSpec) DeepCopy() *FrontdoorRuleSpec { if in == nil { return nil } - out := new(FrontdoorOrigin) + out := new(FrontdoorRuleSpec) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorOrigin) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginGroup) DeepCopyInto(out *FrontdoorOriginGroup) { +func (in *FrontdoorRuleStatus) DeepCopyInto(out *FrontdoorRuleStatus) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroup. -func (in *FrontdoorOriginGroup) DeepCopy() *FrontdoorOriginGroup { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleStatus. +func (in *FrontdoorRuleStatus) DeepCopy() *FrontdoorRuleStatus { if in == nil { return nil } - out := new(FrontdoorOriginGroup) + out := new(FrontdoorRuleStatus) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorOriginGroup) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginGroupList) DeepCopyInto(out *FrontdoorOriginGroupList) { +func (in *GeoFilterInitParameters) DeepCopyInto(out *GeoFilterInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]FrontdoorOriginGroup, len(*in)) + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.CountryCodes != nil { + in, out := &in.CountryCodes, &out.CountryCodes + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } + if in.RelativePath != nil { + in, out := &in.RelativePath, &out.RelativePath + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupList. -func (in *FrontdoorOriginGroupList) DeepCopy() *FrontdoorOriginGroupList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoFilterInitParameters. +func (in *GeoFilterInitParameters) DeepCopy() *GeoFilterInitParameters { if in == nil { return nil } - out := new(FrontdoorOriginGroupList) + out := new(GeoFilterInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorOriginGroupList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginGroupObservation) DeepCopyInto(out *FrontdoorOriginGroupObservation) { +func (in *GeoFilterObservation) DeepCopyInto(out *GeoFilterObservation) { *out = *in - if in.CdnFrontdoorProfileID != nil { - in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID + if in.Action != nil { + in, out := &in.Action, &out.Action *out = new(string) **out = **in } - if in.HealthProbe != nil { - in, out := &in.HealthProbe, &out.HealthProbe - *out = make([]HealthProbeObservation, len(*in)) + if in.CountryCodes != nil { + in, out := &in.CountryCodes, &out.CountryCodes + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.RelativePath != nil { + in, out := &in.RelativePath, &out.RelativePath *out = new(string) **out = **in } - if in.LoadBalancing != nil { - in, out := &in.LoadBalancing, &out.LoadBalancing - *out = make([]LoadBalancingObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.RestoreTrafficTimeToHealedOrNewEndpointInMinutes != nil { - in, out := &in.RestoreTrafficTimeToHealedOrNewEndpointInMinutes, &out.RestoreTrafficTimeToHealedOrNewEndpointInMinutes - *out = new(float64) - **out = **in - } - if in.SessionAffinityEnabled != nil { - in, out := &in.SessionAffinityEnabled, &out.SessionAffinityEnabled - *out = new(bool) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupObservation. -func (in *FrontdoorOriginGroupObservation) DeepCopy() *FrontdoorOriginGroupObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoFilterObservation. +func (in *GeoFilterObservation) DeepCopy() *GeoFilterObservation { if in == nil { return nil } - out := new(FrontdoorOriginGroupObservation) + out := new(GeoFilterObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginGroupParameters) DeepCopyInto(out *FrontdoorOriginGroupParameters) { +func (in *GeoFilterParameters) DeepCopyInto(out *GeoFilterParameters) { *out = *in - if in.CdnFrontdoorProfileID != nil { - in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID + if in.Action != nil { + in, out := &in.Action, &out.Action *out = new(string) **out = **in } - if in.CdnFrontdoorProfileIDRef != nil { - in, out := &in.CdnFrontdoorProfileIDRef, &out.CdnFrontdoorProfileIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.CdnFrontdoorProfileIDSelector != nil { - in, out := &in.CdnFrontdoorProfileIDSelector, &out.CdnFrontdoorProfileIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.HealthProbe != nil { - in, out := &in.HealthProbe, &out.HealthProbe - *out = make([]HealthProbeParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.LoadBalancing != nil { - in, out := &in.LoadBalancing, &out.LoadBalancing - *out = make([]LoadBalancingParameters, len(*in)) + if in.CountryCodes != nil { + in, out := &in.CountryCodes, &out.CountryCodes + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.RestoreTrafficTimeToHealedOrNewEndpointInMinutes != nil { - in, out := &in.RestoreTrafficTimeToHealedOrNewEndpointInMinutes, &out.RestoreTrafficTimeToHealedOrNewEndpointInMinutes - *out = new(float64) - **out = **in - } - if in.SessionAffinityEnabled != nil { - in, out := &in.SessionAffinityEnabled, &out.SessionAffinityEnabled - *out = new(bool) + if in.RelativePath != nil { + in, out := &in.RelativePath, &out.RelativePath + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupParameters. -func (in *FrontdoorOriginGroupParameters) DeepCopy() *FrontdoorOriginGroupParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoFilterParameters. +func (in *GeoFilterParameters) DeepCopy() *GeoFilterParameters { if in == nil { return nil } - out := new(FrontdoorOriginGroupParameters) + out := new(GeoFilterParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginGroupSpec) DeepCopyInto(out *FrontdoorOriginGroupSpec) { +func (in *GlobalDeliveryRuleCacheExpirationActionInitParameters) DeepCopyInto(out *GlobalDeliveryRuleCacheExpirationActionInitParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + if in.Behavior != nil { + in, out := &in.Behavior, &out.Behavior + *out = new(string) + **out = **in + } + if in.Duration != nil { + in, out := &in.Duration, &out.Duration + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupSpec. -func (in *FrontdoorOriginGroupSpec) DeepCopy() *FrontdoorOriginGroupSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleCacheExpirationActionInitParameters. +func (in *GlobalDeliveryRuleCacheExpirationActionInitParameters) DeepCopy() *GlobalDeliveryRuleCacheExpirationActionInitParameters { if in == nil { return nil } - out := new(FrontdoorOriginGroupSpec) + out := new(GlobalDeliveryRuleCacheExpirationActionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginGroupStatus) DeepCopyInto(out *FrontdoorOriginGroupStatus) { +func (in *GlobalDeliveryRuleCacheExpirationActionObservation) DeepCopyInto(out *GlobalDeliveryRuleCacheExpirationActionObservation) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.Behavior != nil { + in, out := &in.Behavior, &out.Behavior + *out = new(string) + **out = **in + } + if in.Duration != nil { + in, out := &in.Duration, &out.Duration + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginGroupStatus. -func (in *FrontdoorOriginGroupStatus) DeepCopy() *FrontdoorOriginGroupStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleCacheExpirationActionObservation. +func (in *GlobalDeliveryRuleCacheExpirationActionObservation) DeepCopy() *GlobalDeliveryRuleCacheExpirationActionObservation { if in == nil { return nil } - out := new(FrontdoorOriginGroupStatus) + out := new(GlobalDeliveryRuleCacheExpirationActionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginList) DeepCopyInto(out *FrontdoorOriginList) { +func (in *GlobalDeliveryRuleCacheExpirationActionParameters) DeepCopyInto(out *GlobalDeliveryRuleCacheExpirationActionParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]FrontdoorOrigin, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Behavior != nil { + in, out := &in.Behavior, &out.Behavior + *out = new(string) + **out = **in + } + if in.Duration != nil { + in, out := &in.Duration, &out.Duration + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginList. -func (in *FrontdoorOriginList) DeepCopy() *FrontdoorOriginList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleCacheExpirationActionParameters. +func (in *GlobalDeliveryRuleCacheExpirationActionParameters) DeepCopy() *GlobalDeliveryRuleCacheExpirationActionParameters { if in == nil { return nil } - out := new(FrontdoorOriginList) + out := new(GlobalDeliveryRuleCacheExpirationActionParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorOriginList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginObservation) DeepCopyInto(out *FrontdoorOriginObservation) { +func (in *GlobalDeliveryRuleCacheKeyQueryStringActionInitParameters) DeepCopyInto(out *GlobalDeliveryRuleCacheKeyQueryStringActionInitParameters) { *out = *in - if in.CdnFrontdoorOriginGroupID != nil { - in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + if in.Behavior != nil { + in, out := &in.Behavior, &out.Behavior *out = new(string) **out = **in } - if in.CertificateNameCheckEnabled != nil { - in, out := &in.CertificateNameCheckEnabled, &out.CertificateNameCheckEnabled - *out = new(bool) + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) **out = **in } - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleCacheKeyQueryStringActionInitParameters. +func (in *GlobalDeliveryRuleCacheKeyQueryStringActionInitParameters) DeepCopy() *GlobalDeliveryRuleCacheKeyQueryStringActionInitParameters { + if in == nil { + return nil } - if in.HTTPPort != nil { - in, out := &in.HTTPPort, &out.HTTPPort - *out = new(float64) + out := new(GlobalDeliveryRuleCacheKeyQueryStringActionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalDeliveryRuleCacheKeyQueryStringActionObservation) DeepCopyInto(out *GlobalDeliveryRuleCacheKeyQueryStringActionObservation) { + *out = *in + if in.Behavior != nil { + in, out := &in.Behavior, &out.Behavior + *out = new(string) **out = **in } - if in.HTTPSPort != nil { - in, out := &in.HTTPSPort, &out.HTTPSPort - *out = new(float64) + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) **out = **in } - if in.HealthProbesEnabled != nil { - in, out := &in.HealthProbesEnabled, &out.HealthProbesEnabled - *out = new(bool) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleCacheKeyQueryStringActionObservation. +func (in *GlobalDeliveryRuleCacheKeyQueryStringActionObservation) DeepCopy() *GlobalDeliveryRuleCacheKeyQueryStringActionObservation { + if in == nil { + return nil } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName + out := new(GlobalDeliveryRuleCacheKeyQueryStringActionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalDeliveryRuleCacheKeyQueryStringActionParameters) DeepCopyInto(out *GlobalDeliveryRuleCacheKeyQueryStringActionParameters) { + *out = *in + if in.Behavior != nil { + in, out := &in.Behavior, &out.Behavior *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters *out = new(string) **out = **in } - if in.OriginHostHeader != nil { - in, out := &in.OriginHostHeader, &out.OriginHostHeader - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleCacheKeyQueryStringActionParameters. +func (in *GlobalDeliveryRuleCacheKeyQueryStringActionParameters) DeepCopy() *GlobalDeliveryRuleCacheKeyQueryStringActionParameters { + if in == nil { + return nil } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(float64) - **out = **in + out := new(GlobalDeliveryRuleCacheKeyQueryStringActionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalDeliveryRuleInitParameters) DeepCopyInto(out *GlobalDeliveryRuleInitParameters) { + *out = *in + if in.CacheExpirationAction != nil { + in, out := &in.CacheExpirationAction, &out.CacheExpirationAction + *out = make([]GlobalDeliveryRuleCacheExpirationActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PrivateLink != nil { - in, out := &in.PrivateLink, &out.PrivateLink - *out = make([]PrivateLinkObservation, len(*in)) + if in.CacheKeyQueryStringAction != nil { + in, out := &in.CacheKeyQueryStringAction, &out.CacheKeyQueryStringAction + *out = make([]GlobalDeliveryRuleCacheKeyQueryStringActionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Weight != nil { - in, out := &in.Weight, &out.Weight - *out = new(float64) - **out = **in + if in.ModifyRequestHeaderAction != nil { + in, out := &in.ModifyRequestHeaderAction, &out.ModifyRequestHeaderAction + *out = make([]GlobalDeliveryRuleModifyRequestHeaderActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ModifyResponseHeaderAction != nil { + in, out := &in.ModifyResponseHeaderAction, &out.ModifyResponseHeaderAction + *out = make([]GlobalDeliveryRuleModifyResponseHeaderActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRedirectAction != nil { + in, out := &in.URLRedirectAction, &out.URLRedirectAction + *out = make([]GlobalDeliveryRuleURLRedirectActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRewriteAction != nil { + in, out := &in.URLRewriteAction, &out.URLRewriteAction + *out = make([]GlobalDeliveryRuleURLRewriteActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginObservation. -func (in *FrontdoorOriginObservation) DeepCopy() *FrontdoorOriginObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleInitParameters. +func (in *GlobalDeliveryRuleInitParameters) DeepCopy() *GlobalDeliveryRuleInitParameters { if in == nil { return nil } - out := new(FrontdoorOriginObservation) + out := new(GlobalDeliveryRuleInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginParameters) DeepCopyInto(out *FrontdoorOriginParameters) { +func (in *GlobalDeliveryRuleModifyRequestHeaderActionInitParameters) DeepCopyInto(out *GlobalDeliveryRuleModifyRequestHeaderActionInitParameters) { *out = *in - if in.CdnFrontdoorOriginGroupID != nil { - in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + if in.Action != nil { + in, out := &in.Action, &out.Action *out = new(string) **out = **in } - if in.CdnFrontdoorOriginGroupIDRef != nil { - in, out := &in.CdnFrontdoorOriginGroupIDRef, &out.CdnFrontdoorOriginGroupIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.CdnFrontdoorOriginGroupIDSelector != nil { - in, out := &in.CdnFrontdoorOriginGroupIDSelector, &out.CdnFrontdoorOriginGroupIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.CertificateNameCheckEnabled != nil { - in, out := &in.CertificateNameCheckEnabled, &out.CertificateNameCheckEnabled - *out = new(bool) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) **out = **in } - if in.HTTPPort != nil { - in, out := &in.HTTPPort, &out.HTTPPort - *out = new(float64) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleModifyRequestHeaderActionInitParameters. +func (in *GlobalDeliveryRuleModifyRequestHeaderActionInitParameters) DeepCopy() *GlobalDeliveryRuleModifyRequestHeaderActionInitParameters { + if in == nil { + return nil } - if in.HTTPSPort != nil { - in, out := &in.HTTPSPort, &out.HTTPSPort - *out = new(float64) + out := new(GlobalDeliveryRuleModifyRequestHeaderActionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalDeliveryRuleModifyRequestHeaderActionObservation) DeepCopyInto(out *GlobalDeliveryRuleModifyRequestHeaderActionObservation) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) **out = **in } - if in.HealthProbesEnabled != nil { - in, out := &in.HealthProbesEnabled, &out.HealthProbesEnabled - *out = new(bool) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName + if in.Value != nil { + in, out := &in.Value, &out.Value *out = new(string) **out = **in } - if in.HostNameRef != nil { - in, out := &in.HostNameRef, &out.HostNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.HostNameSelector != nil { - in, out := &in.HostNameSelector, &out.HostNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleModifyRequestHeaderActionObservation. +func (in *GlobalDeliveryRuleModifyRequestHeaderActionObservation) DeepCopy() *GlobalDeliveryRuleModifyRequestHeaderActionObservation { + if in == nil { + return nil } - if in.OriginHostHeader != nil { - in, out := &in.OriginHostHeader, &out.OriginHostHeader + out := new(GlobalDeliveryRuleModifyRequestHeaderActionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalDeliveryRuleModifyRequestHeaderActionParameters) DeepCopyInto(out *GlobalDeliveryRuleModifyRequestHeaderActionParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action *out = new(string) **out = **in } - if in.OriginHostHeaderRef != nil { - in, out := &in.OriginHostHeaderRef, &out.OriginHostHeaderRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.OriginHostHeaderSelector != nil { - in, out := &in.OriginHostHeaderSelector, &out.OriginHostHeaderSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(float64) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } - if in.PrivateLink != nil { - in, out := &in.PrivateLink, &out.PrivateLink - *out = make([]PrivateLinkParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Weight != nil { - in, out := &in.Weight, &out.Weight - *out = new(float64) + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginParameters. -func (in *FrontdoorOriginParameters) DeepCopy() *FrontdoorOriginParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleModifyRequestHeaderActionParameters. +func (in *GlobalDeliveryRuleModifyRequestHeaderActionParameters) DeepCopy() *GlobalDeliveryRuleModifyRequestHeaderActionParameters { if in == nil { return nil } - out := new(FrontdoorOriginParameters) + out := new(GlobalDeliveryRuleModifyRequestHeaderActionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginSpec) DeepCopyInto(out *FrontdoorOriginSpec) { +func (in *GlobalDeliveryRuleModifyResponseHeaderActionInitParameters) DeepCopyInto(out *GlobalDeliveryRuleModifyResponseHeaderActionInitParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginSpec. -func (in *FrontdoorOriginSpec) DeepCopy() *FrontdoorOriginSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleModifyResponseHeaderActionInitParameters. +func (in *GlobalDeliveryRuleModifyResponseHeaderActionInitParameters) DeepCopy() *GlobalDeliveryRuleModifyResponseHeaderActionInitParameters { if in == nil { return nil } - out := new(FrontdoorOriginSpec) + out := new(GlobalDeliveryRuleModifyResponseHeaderActionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorOriginStatus) DeepCopyInto(out *FrontdoorOriginStatus) { +func (in *GlobalDeliveryRuleModifyResponseHeaderActionObservation) DeepCopyInto(out *GlobalDeliveryRuleModifyResponseHeaderActionObservation) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorOriginStatus. -func (in *FrontdoorOriginStatus) DeepCopy() *FrontdoorOriginStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleModifyResponseHeaderActionObservation. +func (in *GlobalDeliveryRuleModifyResponseHeaderActionObservation) DeepCopy() *GlobalDeliveryRuleModifyResponseHeaderActionObservation { if in == nil { return nil } - out := new(FrontdoorOriginStatus) + out := new(GlobalDeliveryRuleModifyResponseHeaderActionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorProfile) DeepCopyInto(out *FrontdoorProfile) { +func (in *GlobalDeliveryRuleModifyResponseHeaderActionParameters) DeepCopyInto(out *GlobalDeliveryRuleModifyResponseHeaderActionParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfile. -func (in *FrontdoorProfile) DeepCopy() *FrontdoorProfile { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleModifyResponseHeaderActionParameters. +func (in *GlobalDeliveryRuleModifyResponseHeaderActionParameters) DeepCopy() *GlobalDeliveryRuleModifyResponseHeaderActionParameters { if in == nil { return nil } - out := new(FrontdoorProfile) + out := new(GlobalDeliveryRuleModifyResponseHeaderActionParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorProfile) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorProfileList) DeepCopyInto(out *FrontdoorProfileList) { +func (in *GlobalDeliveryRuleObservation) DeepCopyInto(out *GlobalDeliveryRuleObservation) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]FrontdoorProfile, len(*in)) + if in.CacheExpirationAction != nil { + in, out := &in.CacheExpirationAction, &out.CacheExpirationAction + *out = make([]GlobalDeliveryRuleCacheExpirationActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CacheKeyQueryStringAction != nil { + in, out := &in.CacheKeyQueryStringAction, &out.CacheKeyQueryStringAction + *out = make([]GlobalDeliveryRuleCacheKeyQueryStringActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ModifyRequestHeaderAction != nil { + in, out := &in.ModifyRequestHeaderAction, &out.ModifyRequestHeaderAction + *out = make([]GlobalDeliveryRuleModifyRequestHeaderActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ModifyResponseHeaderAction != nil { + in, out := &in.ModifyResponseHeaderAction, &out.ModifyResponseHeaderAction + *out = make([]GlobalDeliveryRuleModifyResponseHeaderActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRedirectAction != nil { + in, out := &in.URLRedirectAction, &out.URLRedirectAction + *out = make([]GlobalDeliveryRuleURLRedirectActionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRewriteAction != nil { + in, out := &in.URLRewriteAction, &out.URLRewriteAction + *out = make([]GlobalDeliveryRuleURLRewriteActionObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileList. -func (in *FrontdoorProfileList) DeepCopy() *FrontdoorProfileList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleObservation. +func (in *GlobalDeliveryRuleObservation) DeepCopy() *GlobalDeliveryRuleObservation { if in == nil { return nil } - out := new(FrontdoorProfileList) + out := new(GlobalDeliveryRuleObservation) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorProfileList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalDeliveryRuleParameters) DeepCopyInto(out *GlobalDeliveryRuleParameters) { + *out = *in + if in.CacheExpirationAction != nil { + in, out := &in.CacheExpirationAction, &out.CacheExpirationAction + *out = make([]GlobalDeliveryRuleCacheExpirationActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - return nil + if in.CacheKeyQueryStringAction != nil { + in, out := &in.CacheKeyQueryStringAction, &out.CacheKeyQueryStringAction + *out = make([]GlobalDeliveryRuleCacheKeyQueryStringActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ModifyRequestHeaderAction != nil { + in, out := &in.ModifyRequestHeaderAction, &out.ModifyRequestHeaderAction + *out = make([]GlobalDeliveryRuleModifyRequestHeaderActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ModifyResponseHeaderAction != nil { + in, out := &in.ModifyResponseHeaderAction, &out.ModifyResponseHeaderAction + *out = make([]GlobalDeliveryRuleModifyResponseHeaderActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRedirectAction != nil { + in, out := &in.URLRedirectAction, &out.URLRedirectAction + *out = make([]GlobalDeliveryRuleURLRedirectActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLRewriteAction != nil { + in, out := &in.URLRewriteAction, &out.URLRewriteAction + *out = make([]GlobalDeliveryRuleURLRewriteActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleParameters. +func (in *GlobalDeliveryRuleParameters) DeepCopy() *GlobalDeliveryRuleParameters { + if in == nil { + return nil + } + out := new(GlobalDeliveryRuleParameters) + in.DeepCopyInto(out) + return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorProfileObservation) DeepCopyInto(out *FrontdoorProfileObservation) { +func (in *GlobalDeliveryRuleURLRedirectActionInitParameters) DeepCopyInto(out *GlobalDeliveryRuleURLRedirectActionInitParameters) { *out = *in - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.Fragment != nil { + in, out := &in.Fragment, &out.Fragment *out = new(string) **out = **in } - if in.ResourceGUID != nil { - in, out := &in.ResourceGUID, &out.ResourceGUID + if in.HostName != nil { + in, out := &in.HostName, &out.HostName *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.Path != nil { + in, out := &in.Path, &out.Path *out = new(string) **out = **in } - if in.ResponseTimeoutSeconds != nil { - in, out := &in.ResponseTimeoutSeconds, &out.ResponseTimeoutSeconds - *out = new(float64) + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) **out = **in } - if in.SkuName != nil { - in, out := &in.SkuName, &out.SkuName + if in.QueryString != nil { + in, out := &in.QueryString, &out.QueryString *out = new(string) **out = **in } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } + if in.RedirectType != nil { + in, out := &in.RedirectType, &out.RedirectType + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileObservation. -func (in *FrontdoorProfileObservation) DeepCopy() *FrontdoorProfileObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleURLRedirectActionInitParameters. +func (in *GlobalDeliveryRuleURLRedirectActionInitParameters) DeepCopy() *GlobalDeliveryRuleURLRedirectActionInitParameters { if in == nil { return nil } - out := new(FrontdoorProfileObservation) + out := new(GlobalDeliveryRuleURLRedirectActionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorProfileParameters) DeepCopyInto(out *FrontdoorProfileParameters) { +func (in *GlobalDeliveryRuleURLRedirectActionObservation) DeepCopyInto(out *GlobalDeliveryRuleURLRedirectActionObservation) { *out = *in - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.Fragment != nil { + in, out := &in.Fragment, &out.Fragment *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in } - if in.ResponseTimeoutSeconds != nil { - in, out := &in.ResponseTimeoutSeconds, &out.ResponseTimeoutSeconds - *out = new(float64) + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) **out = **in } - if in.SkuName != nil { - in, out := &in.SkuName, &out.SkuName + if in.QueryString != nil { + in, out := &in.QueryString, &out.QueryString *out = new(string) **out = **in } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } + if in.RedirectType != nil { + in, out := &in.RedirectType, &out.RedirectType + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileParameters. -func (in *FrontdoorProfileParameters) DeepCopy() *FrontdoorProfileParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleURLRedirectActionObservation. +func (in *GlobalDeliveryRuleURLRedirectActionObservation) DeepCopy() *GlobalDeliveryRuleURLRedirectActionObservation { if in == nil { return nil } - out := new(FrontdoorProfileParameters) + out := new(GlobalDeliveryRuleURLRedirectActionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorProfileSpec) DeepCopyInto(out *FrontdoorProfileSpec) { +func (in *GlobalDeliveryRuleURLRedirectActionParameters) DeepCopyInto(out *GlobalDeliveryRuleURLRedirectActionParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileSpec. -func (in *FrontdoorProfileSpec) DeepCopy() *FrontdoorProfileSpec { - if in == nil { - return nil + if in.Fragment != nil { + in, out := &in.Fragment, &out.Fragment + *out = new(string) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.QueryString != nil { + in, out := &in.QueryString, &out.QueryString + *out = new(string) + **out = **in + } + if in.RedirectType != nil { + in, out := &in.RedirectType, &out.RedirectType + *out = new(string) + **out = **in } - out := new(FrontdoorProfileSpec) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorProfileStatus) DeepCopyInto(out *FrontdoorProfileStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorProfileStatus. -func (in *FrontdoorProfileStatus) DeepCopy() *FrontdoorProfileStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleURLRedirectActionParameters. +func (in *GlobalDeliveryRuleURLRedirectActionParameters) DeepCopy() *GlobalDeliveryRuleURLRedirectActionParameters { if in == nil { return nil } - out := new(FrontdoorProfileStatus) + out := new(GlobalDeliveryRuleURLRedirectActionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRoute) DeepCopyInto(out *FrontdoorRoute) { +func (in *GlobalDeliveryRuleURLRewriteActionInitParameters) DeepCopyInto(out *GlobalDeliveryRuleURLRewriteActionInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRoute. -func (in *FrontdoorRoute) DeepCopy() *FrontdoorRoute { - if in == nil { - return nil + if in.Destination != nil { + in, out := &in.Destination, &out.Destination + *out = new(string) + **out = **in } - out := new(FrontdoorRoute) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorRoute) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c + if in.PreserveUnmatchedPath != nil { + in, out := &in.PreserveUnmatchedPath, &out.PreserveUnmatchedPath + *out = new(bool) + **out = **in } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRouteList) DeepCopyInto(out *FrontdoorRouteList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]FrontdoorRoute, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.SourcePattern != nil { + in, out := &in.SourcePattern, &out.SourcePattern + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteList. -func (in *FrontdoorRouteList) DeepCopy() *FrontdoorRouteList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleURLRewriteActionInitParameters. +func (in *GlobalDeliveryRuleURLRewriteActionInitParameters) DeepCopy() *GlobalDeliveryRuleURLRewriteActionInitParameters { if in == nil { return nil } - out := new(FrontdoorRouteList) + out := new(GlobalDeliveryRuleURLRewriteActionInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorRouteList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRouteObservation) DeepCopyInto(out *FrontdoorRouteObservation) { +func (in *GlobalDeliveryRuleURLRewriteActionObservation) DeepCopyInto(out *GlobalDeliveryRuleURLRewriteActionObservation) { *out = *in - if in.Cache != nil { - in, out := &in.Cache, &out.Cache - *out = make([]CacheObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CdnFrontdoorCustomDomainIds != nil { - in, out := &in.CdnFrontdoorCustomDomainIds, &out.CdnFrontdoorCustomDomainIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.CdnFrontdoorEndpointID != nil { - in, out := &in.CdnFrontdoorEndpointID, &out.CdnFrontdoorEndpointID - *out = new(string) - **out = **in - } - if in.CdnFrontdoorOriginGroupID != nil { - in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID - *out = new(string) - **out = **in - } - if in.CdnFrontdoorOriginIds != nil { - in, out := &in.CdnFrontdoorOriginIds, &out.CdnFrontdoorOriginIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.CdnFrontdoorOriginPath != nil { - in, out := &in.CdnFrontdoorOriginPath, &out.CdnFrontdoorOriginPath + if in.Destination != nil { + in, out := &in.Destination, &out.Destination *out = new(string) **out = **in } - if in.CdnFrontdoorRuleSetIds != nil { - in, out := &in.CdnFrontdoorRuleSetIds, &out.CdnFrontdoorRuleSetIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled + if in.PreserveUnmatchedPath != nil { + in, out := &in.PreserveUnmatchedPath, &out.PreserveUnmatchedPath *out = new(bool) **out = **in } - if in.ForwardingProtocol != nil { - in, out := &in.ForwardingProtocol, &out.ForwardingProtocol + if in.SourcePattern != nil { + in, out := &in.SourcePattern, &out.SourcePattern *out = new(string) **out = **in } - if in.HTTPSRedirectEnabled != nil { - in, out := &in.HTTPSRedirectEnabled, &out.HTTPSRedirectEnabled - *out = new(bool) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleURLRewriteActionObservation. +func (in *GlobalDeliveryRuleURLRewriteActionObservation) DeepCopy() *GlobalDeliveryRuleURLRewriteActionObservation { + if in == nil { + return nil } - if in.ID != nil { - in, out := &in.ID, &out.ID + out := new(GlobalDeliveryRuleURLRewriteActionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalDeliveryRuleURLRewriteActionParameters) DeepCopyInto(out *GlobalDeliveryRuleURLRewriteActionParameters) { + *out = *in + if in.Destination != nil { + in, out := &in.Destination, &out.Destination *out = new(string) **out = **in } - if in.LinkToDefaultDomain != nil { - in, out := &in.LinkToDefaultDomain, &out.LinkToDefaultDomain + if in.PreserveUnmatchedPath != nil { + in, out := &in.PreserveUnmatchedPath, &out.PreserveUnmatchedPath *out = new(bool) **out = **in } - if in.PatternsToMatch != nil { - in, out := &in.PatternsToMatch, &out.PatternsToMatch - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.SupportedProtocols != nil { - in, out := &in.SupportedProtocols, &out.SupportedProtocols - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.SourcePattern != nil { + in, out := &in.SourcePattern, &out.SourcePattern + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteObservation. -func (in *FrontdoorRouteObservation) DeepCopy() *FrontdoorRouteObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleURLRewriteActionParameters. +func (in *GlobalDeliveryRuleURLRewriteActionParameters) DeepCopy() *GlobalDeliveryRuleURLRewriteActionParameters { if in == nil { return nil } - out := new(FrontdoorRouteObservation) + out := new(GlobalDeliveryRuleURLRewriteActionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRouteParameters) DeepCopyInto(out *FrontdoorRouteParameters) { +func (in *HTTPVersionConditionInitParameters) DeepCopyInto(out *HTTPVersionConditionInitParameters) { *out = *in - if in.Cache != nil { - in, out := &in.Cache, &out.Cache - *out = make([]CacheParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CdnFrontdoorCustomDomainIds != nil { - in, out := &in.CdnFrontdoorCustomDomainIds, &out.CdnFrontdoorCustomDomainIds + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -4114,50 +7094,33 @@ func (in *FrontdoorRouteParameters) DeepCopyInto(out *FrontdoorRouteParameters) } } } - if in.CdnFrontdoorCustomDomainIdsRefs != nil { - in, out := &in.CdnFrontdoorCustomDomainIdsRefs, &out.CdnFrontdoorCustomDomainIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CdnFrontdoorCustomDomainIdsSelector != nil { - in, out := &in.CdnFrontdoorCustomDomainIdsSelector, &out.CdnFrontdoorCustomDomainIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.CdnFrontdoorEndpointID != nil { - in, out := &in.CdnFrontdoorEndpointID, &out.CdnFrontdoorEndpointID - *out = new(string) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.CdnFrontdoorEndpointIDRef != nil { - in, out := &in.CdnFrontdoorEndpointIDRef, &out.CdnFrontdoorEndpointIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.CdnFrontdoorEndpointIDSelector != nil { - in, out := &in.CdnFrontdoorEndpointIDSelector, &out.CdnFrontdoorEndpointIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.CdnFrontdoorOriginGroupID != nil { - in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.CdnFrontdoorOriginGroupIDRef != nil { - in, out := &in.CdnFrontdoorOriginGroupIDRef, &out.CdnFrontdoorOriginGroupIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.CdnFrontdoorOriginGroupIDSelector != nil { - in, out := &in.CdnFrontdoorOriginGroupIDSelector, &out.CdnFrontdoorOriginGroupIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPVersionConditionInitParameters. +func (in *HTTPVersionConditionInitParameters) DeepCopy() *HTTPVersionConditionInitParameters { + if in == nil { + return nil } - if in.CdnFrontdoorOriginIds != nil { - in, out := &in.CdnFrontdoorOriginIds, &out.CdnFrontdoorOriginIds + out := new(HTTPVersionConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPVersionConditionObservation) DeepCopyInto(out *HTTPVersionConditionObservation) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -4167,25 +7130,33 @@ func (in *FrontdoorRouteParameters) DeepCopyInto(out *FrontdoorRouteParameters) } } } - if in.CdnFrontdoorOriginIdsRefs != nil { - in, out := &in.CdnFrontdoorOriginIdsRefs, &out.CdnFrontdoorOriginIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CdnFrontdoorOriginIdsSelector != nil { - in, out := &in.CdnFrontdoorOriginIdsSelector, &out.CdnFrontdoorOriginIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in } - if in.CdnFrontdoorOriginPath != nil { - in, out := &in.CdnFrontdoorOriginPath, &out.CdnFrontdoorOriginPath + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.CdnFrontdoorRuleSetIds != nil { - in, out := &in.CdnFrontdoorRuleSetIds, &out.CdnFrontdoorRuleSetIds +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPVersionConditionObservation. +func (in *HTTPVersionConditionObservation) DeepCopy() *HTTPVersionConditionObservation { + if in == nil { + return nil + } + out := new(HTTPVersionConditionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPVersionConditionParameters) DeepCopyInto(out *HTTPVersionConditionParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -4195,1155 +7166,1425 @@ func (in *FrontdoorRouteParameters) DeepCopyInto(out *FrontdoorRouteParameters) } } } - if in.CdnFrontdoorRuleSetIdsRefs != nil { - in, out := &in.CdnFrontdoorRuleSetIdsRefs, &out.CdnFrontdoorRuleSetIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CdnFrontdoorRuleSetIdsSelector != nil { - in, out := &in.CdnFrontdoorRuleSetIdsSelector, &out.CdnFrontdoorRuleSetIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition *out = new(bool) **out = **in } - if in.ForwardingProtocol != nil { - in, out := &in.ForwardingProtocol, &out.ForwardingProtocol + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.HTTPSRedirectEnabled != nil { - in, out := &in.HTTPSRedirectEnabled, &out.HTTPSRedirectEnabled - *out = new(bool) - **out = **in - } - if in.LinkToDefaultDomain != nil { - in, out := &in.LinkToDefaultDomain, &out.LinkToDefaultDomain - *out = new(bool) - **out = **in - } - if in.PatternsToMatch != nil { - in, out := &in.PatternsToMatch, &out.PatternsToMatch - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.SupportedProtocols != nil { - in, out := &in.SupportedProtocols, &out.SupportedProtocols - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteParameters. -func (in *FrontdoorRouteParameters) DeepCopy() *FrontdoorRouteParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPVersionConditionParameters. +func (in *HTTPVersionConditionParameters) DeepCopy() *HTTPVersionConditionParameters { if in == nil { return nil } - out := new(FrontdoorRouteParameters) + out := new(HTTPVersionConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRouteSpec) DeepCopyInto(out *FrontdoorRouteSpec) { +func (in *HealthProbeInitParameters) DeepCopyInto(out *HealthProbeInitParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + if in.IntervalInSeconds != nil { + in, out := &in.IntervalInSeconds, &out.IntervalInSeconds + *out = new(float64) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.RequestType != nil { + in, out := &in.RequestType, &out.RequestType + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteSpec. -func (in *FrontdoorRouteSpec) DeepCopy() *FrontdoorRouteSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthProbeInitParameters. +func (in *HealthProbeInitParameters) DeepCopy() *HealthProbeInitParameters { if in == nil { return nil } - out := new(FrontdoorRouteSpec) + out := new(HealthProbeInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRouteStatus) DeepCopyInto(out *FrontdoorRouteStatus) { +func (in *HealthProbeObservation) DeepCopyInto(out *HealthProbeObservation) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.IntervalInSeconds != nil { + in, out := &in.IntervalInSeconds, &out.IntervalInSeconds + *out = new(float64) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.RequestType != nil { + in, out := &in.RequestType, &out.RequestType + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRouteStatus. -func (in *FrontdoorRouteStatus) DeepCopy() *FrontdoorRouteStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthProbeObservation. +func (in *HealthProbeObservation) DeepCopy() *HealthProbeObservation { if in == nil { return nil } - out := new(FrontdoorRouteStatus) + out := new(HealthProbeObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRule) DeepCopyInto(out *FrontdoorRule) { +func (in *HealthProbeParameters) DeepCopyInto(out *HealthProbeParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.IntervalInSeconds != nil { + in, out := &in.IntervalInSeconds, &out.IntervalInSeconds + *out = new(float64) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.RequestType != nil { + in, out := &in.RequestType, &out.RequestType + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRule. -func (in *FrontdoorRule) DeepCopy() *FrontdoorRule { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthProbeParameters. +func (in *HealthProbeParameters) DeepCopy() *HealthProbeParameters { if in == nil { return nil } - out := new(FrontdoorRule) + out := new(HealthProbeParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorRule) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleList) DeepCopyInto(out *FrontdoorRuleList) { +func (in *HostNameConditionInitParameters) DeepCopyInto(out *HostNameConditionInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]FrontdoorRule, len(*in)) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleList. -func (in *FrontdoorRuleList) DeepCopy() *FrontdoorRuleList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostNameConditionInitParameters. +func (in *HostNameConditionInitParameters) DeepCopy() *HostNameConditionInitParameters { if in == nil { return nil } - out := new(FrontdoorRuleList) + out := new(HostNameConditionInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorRuleList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleObservation) DeepCopyInto(out *FrontdoorRuleObservation) { +func (in *HostNameConditionObservation) DeepCopyInto(out *HostNameConditionObservation) { *out = *in - if in.Actions != nil { - in, out := &in.Actions, &out.Actions - *out = make([]ActionsObservation, len(*in)) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.BehaviorOnMatch != nil { - in, out := &in.BehaviorOnMatch, &out.BehaviorOnMatch - *out = new(string) - **out = **in - } - if in.CdnFrontdoorRuleSetID != nil { - in, out := &in.CdnFrontdoorRuleSetID, &out.CdnFrontdoorRuleSetID - *out = new(string) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.CdnFrontdoorRuleSetName != nil { - in, out := &in.CdnFrontdoorRuleSetName, &out.CdnFrontdoorRuleSetName + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]ConditionsObservation, len(*in)) + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } - if in.Order != nil { - in, out := &in.Order, &out.Order - *out = new(float64) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleObservation. -func (in *FrontdoorRuleObservation) DeepCopy() *FrontdoorRuleObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostNameConditionObservation. +func (in *HostNameConditionObservation) DeepCopy() *HostNameConditionObservation { if in == nil { return nil } - out := new(FrontdoorRuleObservation) + out := new(HostNameConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleParameters) DeepCopyInto(out *FrontdoorRuleParameters) { +func (in *HostNameConditionParameters) DeepCopyInto(out *HostNameConditionParameters) { *out = *in - if in.Actions != nil { - in, out := &in.Actions, &out.Actions - *out = make([]ActionsParameters, len(*in)) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.BehaviorOnMatch != nil { - in, out := &in.BehaviorOnMatch, &out.BehaviorOnMatch - *out = new(string) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.CdnFrontdoorRuleSetID != nil { - in, out := &in.CdnFrontdoorRuleSetID, &out.CdnFrontdoorRuleSetID + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.CdnFrontdoorRuleSetIDRef != nil { - in, out := &in.CdnFrontdoorRuleSetIDRef, &out.CdnFrontdoorRuleSetIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.CdnFrontdoorRuleSetIDSelector != nil { - in, out := &in.CdnFrontdoorRuleSetIDSelector, &out.CdnFrontdoorRuleSetIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostNameConditionParameters. +func (in *HostNameConditionParameters) DeepCopy() *HostNameConditionParameters { + if in == nil { + return nil } - if in.Conditions != nil { - in, out := &in.Conditions, &out.Conditions - *out = make([]ConditionsParameters, len(*in)) + out := new(HostNameConditionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IsDeviceConditionInitParameters) DeepCopyInto(out *IsDeviceConditionInitParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.Order != nil { - in, out := &in.Order, &out.Order - *out = new(float64) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleParameters. -func (in *FrontdoorRuleParameters) DeepCopy() *FrontdoorRuleParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IsDeviceConditionInitParameters. +func (in *IsDeviceConditionInitParameters) DeepCopy() *IsDeviceConditionInitParameters { if in == nil { return nil } - out := new(FrontdoorRuleParameters) + out := new(IsDeviceConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleSet) DeepCopyInto(out *FrontdoorRuleSet) { +func (in *IsDeviceConditionObservation) DeepCopyInto(out *IsDeviceConditionObservation) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSet. -func (in *FrontdoorRuleSet) DeepCopy() *FrontdoorRuleSet { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IsDeviceConditionObservation. +func (in *IsDeviceConditionObservation) DeepCopy() *IsDeviceConditionObservation { if in == nil { return nil } - out := new(FrontdoorRuleSet) + out := new(IsDeviceConditionObservation) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorRuleSet) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleSetList) DeepCopyInto(out *FrontdoorRuleSetList) { +func (in *IsDeviceConditionParameters) DeepCopyInto(out *IsDeviceConditionParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]FrontdoorRuleSet, len(*in)) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetList. -func (in *FrontdoorRuleSetList) DeepCopy() *FrontdoorRuleSetList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IsDeviceConditionParameters. +func (in *IsDeviceConditionParameters) DeepCopy() *IsDeviceConditionParameters { if in == nil { return nil } - out := new(FrontdoorRuleSetList) + out := new(IsDeviceConditionParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FrontdoorRuleSetList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleSetObservation) DeepCopyInto(out *FrontdoorRuleSetObservation) { +func (in *LoadBalancingInitParameters) DeepCopyInto(out *LoadBalancingInitParameters) { *out = *in - if in.CdnFrontdoorProfileID != nil { - in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID - *out = new(string) + if in.AdditionalLatencyInMilliseconds != nil { + in, out := &in.AdditionalLatencyInMilliseconds, &out.AdditionalLatencyInMilliseconds + *out = new(float64) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) + if in.SampleSize != nil { + in, out := &in.SampleSize, &out.SampleSize + *out = new(float64) + **out = **in + } + if in.SuccessfulSamplesRequired != nil { + in, out := &in.SuccessfulSamplesRequired, &out.SuccessfulSamplesRequired + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetObservation. -func (in *FrontdoorRuleSetObservation) DeepCopy() *FrontdoorRuleSetObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancingInitParameters. +func (in *LoadBalancingInitParameters) DeepCopy() *LoadBalancingInitParameters { if in == nil { return nil } - out := new(FrontdoorRuleSetObservation) + out := new(LoadBalancingInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleSetParameters) DeepCopyInto(out *FrontdoorRuleSetParameters) { +func (in *LoadBalancingObservation) DeepCopyInto(out *LoadBalancingObservation) { *out = *in - if in.CdnFrontdoorProfileID != nil { - in, out := &in.CdnFrontdoorProfileID, &out.CdnFrontdoorProfileID - *out = new(string) + if in.AdditionalLatencyInMilliseconds != nil { + in, out := &in.AdditionalLatencyInMilliseconds, &out.AdditionalLatencyInMilliseconds + *out = new(float64) **out = **in } - if in.CdnFrontdoorProfileIDRef != nil { - in, out := &in.CdnFrontdoorProfileIDRef, &out.CdnFrontdoorProfileIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.SampleSize != nil { + in, out := &in.SampleSize, &out.SampleSize + *out = new(float64) + **out = **in } - if in.CdnFrontdoorProfileIDSelector != nil { - in, out := &in.CdnFrontdoorProfileIDSelector, &out.CdnFrontdoorProfileIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.SuccessfulSamplesRequired != nil { + in, out := &in.SuccessfulSamplesRequired, &out.SuccessfulSamplesRequired + *out = new(float64) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetParameters. -func (in *FrontdoorRuleSetParameters) DeepCopy() *FrontdoorRuleSetParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancingObservation. +func (in *LoadBalancingObservation) DeepCopy() *LoadBalancingObservation { if in == nil { return nil } - out := new(FrontdoorRuleSetParameters) + out := new(LoadBalancingObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleSetSpec) DeepCopyInto(out *FrontdoorRuleSetSpec) { +func (in *LoadBalancingParameters) DeepCopyInto(out *LoadBalancingParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + if in.AdditionalLatencyInMilliseconds != nil { + in, out := &in.AdditionalLatencyInMilliseconds, &out.AdditionalLatencyInMilliseconds + *out = new(float64) + **out = **in + } + if in.SampleSize != nil { + in, out := &in.SampleSize, &out.SampleSize + *out = new(float64) + **out = **in + } + if in.SuccessfulSamplesRequired != nil { + in, out := &in.SuccessfulSamplesRequired, &out.SuccessfulSamplesRequired + *out = new(float64) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetSpec. -func (in *FrontdoorRuleSetSpec) DeepCopy() *FrontdoorRuleSetSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancingParameters. +func (in *LoadBalancingParameters) DeepCopy() *LoadBalancingParameters { if in == nil { return nil } - out := new(FrontdoorRuleSetSpec) + out := new(LoadBalancingParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleSetStatus) DeepCopyInto(out *FrontdoorRuleSetStatus) { +func (in *ModifyRequestHeaderActionInitParameters) DeepCopyInto(out *ModifyRequestHeaderActionInitParameters) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSetStatus. -func (in *FrontdoorRuleSetStatus) DeepCopy() *FrontdoorRuleSetStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifyRequestHeaderActionInitParameters. +func (in *ModifyRequestHeaderActionInitParameters) DeepCopy() *ModifyRequestHeaderActionInitParameters { if in == nil { return nil } - out := new(FrontdoorRuleSetStatus) + out := new(ModifyRequestHeaderActionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleSpec) DeepCopyInto(out *FrontdoorRuleSpec) { +func (in *ModifyRequestHeaderActionObservation) DeepCopyInto(out *ModifyRequestHeaderActionObservation) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleSpec. -func (in *FrontdoorRuleSpec) DeepCopy() *FrontdoorRuleSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifyRequestHeaderActionObservation. +func (in *ModifyRequestHeaderActionObservation) DeepCopy() *ModifyRequestHeaderActionObservation { if in == nil { return nil } - out := new(FrontdoorRuleSpec) + out := new(ModifyRequestHeaderActionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FrontdoorRuleStatus) DeepCopyInto(out *FrontdoorRuleStatus) { +func (in *ModifyRequestHeaderActionParameters) DeepCopyInto(out *ModifyRequestHeaderActionParameters) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRuleStatus. -func (in *FrontdoorRuleStatus) DeepCopy() *FrontdoorRuleStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifyRequestHeaderActionParameters. +func (in *ModifyRequestHeaderActionParameters) DeepCopy() *ModifyRequestHeaderActionParameters { if in == nil { return nil } - out := new(FrontdoorRuleStatus) + out := new(ModifyRequestHeaderActionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GeoFilterObservation) DeepCopyInto(out *GeoFilterObservation) { - *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action - *out = new(string) - **out = **in - } - if in.CountryCodes != nil { - in, out := &in.CountryCodes, &out.CountryCodes - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } +func (in *ModifyResponseHeaderActionInitParameters) DeepCopyInto(out *ModifyResponseHeaderActionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in } - if in.RelativePath != nil { - in, out := &in.RelativePath, &out.RelativePath + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoFilterObservation. -func (in *GeoFilterObservation) DeepCopy() *GeoFilterObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifyResponseHeaderActionInitParameters. +func (in *ModifyResponseHeaderActionInitParameters) DeepCopy() *ModifyResponseHeaderActionInitParameters { if in == nil { return nil } - out := new(GeoFilterObservation) + out := new(ModifyResponseHeaderActionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GeoFilterParameters) DeepCopyInto(out *GeoFilterParameters) { +func (in *ModifyResponseHeaderActionObservation) DeepCopyInto(out *ModifyResponseHeaderActionObservation) { *out = *in if in.Action != nil { in, out := &in.Action, &out.Action *out = new(string) **out = **in } - if in.CountryCodes != nil { - in, out := &in.CountryCodes, &out.CountryCodes - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in } - if in.RelativePath != nil { - in, out := &in.RelativePath, &out.RelativePath + if in.Value != nil { + in, out := &in.Value, &out.Value *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoFilterParameters. -func (in *GeoFilterParameters) DeepCopy() *GeoFilterParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifyResponseHeaderActionObservation. +func (in *ModifyResponseHeaderActionObservation) DeepCopy() *ModifyResponseHeaderActionObservation { if in == nil { return nil } - out := new(GeoFilterParameters) + out := new(ModifyResponseHeaderActionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleCacheExpirationActionObservation) DeepCopyInto(out *GlobalDeliveryRuleCacheExpirationActionObservation) { +func (in *ModifyResponseHeaderActionParameters) DeepCopyInto(out *ModifyResponseHeaderActionParameters) { *out = *in - if in.Behavior != nil { - in, out := &in.Behavior, &out.Behavior + if in.Action != nil { + in, out := &in.Action, &out.Action *out = new(string) **out = **in } - if in.Duration != nil { - in, out := &in.Duration, &out.Duration + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleCacheExpirationActionObservation. -func (in *GlobalDeliveryRuleCacheExpirationActionObservation) DeepCopy() *GlobalDeliveryRuleCacheExpirationActionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifyResponseHeaderActionParameters. +func (in *ModifyResponseHeaderActionParameters) DeepCopy() *ModifyResponseHeaderActionParameters { if in == nil { return nil } - out := new(GlobalDeliveryRuleCacheExpirationActionObservation) + out := new(ModifyResponseHeaderActionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleCacheExpirationActionParameters) DeepCopyInto(out *GlobalDeliveryRuleCacheExpirationActionParameters) { +func (in *OriginInitParameters) DeepCopyInto(out *OriginInitParameters) { *out = *in - if in.Behavior != nil { - in, out := &in.Behavior, &out.Behavior + if in.HTTPPort != nil { + in, out := &in.HTTPPort, &out.HTTPPort + *out = new(float64) + **out = **in + } + if in.HTTPSPort != nil { + in, out := &in.HTTPSPort, &out.HTTPSPort + *out = new(float64) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName *out = new(string) **out = **in } - if in.Duration != nil { - in, out := &in.Duration, &out.Duration + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleCacheExpirationActionParameters. -func (in *GlobalDeliveryRuleCacheExpirationActionParameters) DeepCopy() *GlobalDeliveryRuleCacheExpirationActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OriginInitParameters. +func (in *OriginInitParameters) DeepCopy() *OriginInitParameters { if in == nil { return nil } - out := new(GlobalDeliveryRuleCacheExpirationActionParameters) + out := new(OriginInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleCacheKeyQueryStringActionObservation) DeepCopyInto(out *GlobalDeliveryRuleCacheKeyQueryStringActionObservation) { +func (in *OriginObservation) DeepCopyInto(out *OriginObservation) { *out = *in - if in.Behavior != nil { - in, out := &in.Behavior, &out.Behavior + if in.HTTPPort != nil { + in, out := &in.HTTPPort, &out.HTTPPort + *out = new(float64) + **out = **in + } + if in.HTTPSPort != nil { + in, out := &in.HTTPSPort, &out.HTTPSPort + *out = new(float64) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName *out = new(string) **out = **in } - if in.Parameters != nil { - in, out := &in.Parameters, &out.Parameters + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleCacheKeyQueryStringActionObservation. -func (in *GlobalDeliveryRuleCacheKeyQueryStringActionObservation) DeepCopy() *GlobalDeliveryRuleCacheKeyQueryStringActionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OriginObservation. +func (in *OriginObservation) DeepCopy() *OriginObservation { if in == nil { return nil } - out := new(GlobalDeliveryRuleCacheKeyQueryStringActionObservation) + out := new(OriginObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleCacheKeyQueryStringActionParameters) DeepCopyInto(out *GlobalDeliveryRuleCacheKeyQueryStringActionParameters) { +func (in *OriginParameters) DeepCopyInto(out *OriginParameters) { *out = *in - if in.Behavior != nil { - in, out := &in.Behavior, &out.Behavior + if in.HTTPPort != nil { + in, out := &in.HTTPPort, &out.HTTPPort + *out = new(float64) + **out = **in + } + if in.HTTPSPort != nil { + in, out := &in.HTTPSPort, &out.HTTPSPort + *out = new(float64) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName *out = new(string) **out = **in } - if in.Parameters != nil { - in, out := &in.Parameters, &out.Parameters + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleCacheKeyQueryStringActionParameters. -func (in *GlobalDeliveryRuleCacheKeyQueryStringActionParameters) DeepCopy() *GlobalDeliveryRuleCacheKeyQueryStringActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OriginParameters. +func (in *OriginParameters) DeepCopy() *OriginParameters { if in == nil { return nil } - out := new(GlobalDeliveryRuleCacheKeyQueryStringActionParameters) + out := new(OriginParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleModifyRequestHeaderActionObservation) DeepCopyInto(out *GlobalDeliveryRuleModifyRequestHeaderActionObservation) { +func (in *PostArgConditionInitParameters) DeepCopyInto(out *PostArgConditionInitParameters) { *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action - *out = new(string) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.Value != nil { - in, out := &in.Value, &out.Value + if in.Selector != nil { + in, out := &in.Selector, &out.Selector *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleModifyRequestHeaderActionObservation. -func (in *GlobalDeliveryRuleModifyRequestHeaderActionObservation) DeepCopy() *GlobalDeliveryRuleModifyRequestHeaderActionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostArgConditionInitParameters. +func (in *PostArgConditionInitParameters) DeepCopy() *PostArgConditionInitParameters { if in == nil { return nil } - out := new(GlobalDeliveryRuleModifyRequestHeaderActionObservation) + out := new(PostArgConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleModifyRequestHeaderActionParameters) DeepCopyInto(out *GlobalDeliveryRuleModifyRequestHeaderActionParameters) { +func (in *PostArgConditionObservation) DeepCopyInto(out *PostArgConditionObservation) { *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action - *out = new(string) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.Value != nil { - in, out := &in.Value, &out.Value + if in.Selector != nil { + in, out := &in.Selector, &out.Selector *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleModifyRequestHeaderActionParameters. -func (in *GlobalDeliveryRuleModifyRequestHeaderActionParameters) DeepCopy() *GlobalDeliveryRuleModifyRequestHeaderActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostArgConditionObservation. +func (in *PostArgConditionObservation) DeepCopy() *PostArgConditionObservation { if in == nil { return nil } - out := new(GlobalDeliveryRuleModifyRequestHeaderActionParameters) + out := new(PostArgConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleModifyResponseHeaderActionObservation) DeepCopyInto(out *GlobalDeliveryRuleModifyResponseHeaderActionObservation) { +func (in *PostArgConditionParameters) DeepCopyInto(out *PostArgConditionParameters) { *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action - *out = new(string) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.Value != nil { - in, out := &in.Value, &out.Value + if in.Selector != nil { + in, out := &in.Selector, &out.Selector *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleModifyResponseHeaderActionObservation. -func (in *GlobalDeliveryRuleModifyResponseHeaderActionObservation) DeepCopy() *GlobalDeliveryRuleModifyResponseHeaderActionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostArgConditionParameters. +func (in *PostArgConditionParameters) DeepCopy() *PostArgConditionParameters { if in == nil { return nil } - out := new(GlobalDeliveryRuleModifyResponseHeaderActionObservation) + out := new(PostArgConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleModifyResponseHeaderActionParameters) DeepCopyInto(out *GlobalDeliveryRuleModifyResponseHeaderActionParameters) { +func (in *PostArgsConditionInitParameters) DeepCopyInto(out *PostArgsConditionInitParameters) { *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action - *out = new(string) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.Value != nil { - in, out := &in.Value, &out.Value + if in.PostArgsName != nil { + in, out := &in.PostArgsName, &out.PostArgsName *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleModifyResponseHeaderActionParameters. -func (in *GlobalDeliveryRuleModifyResponseHeaderActionParameters) DeepCopy() *GlobalDeliveryRuleModifyResponseHeaderActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostArgsConditionInitParameters. +func (in *PostArgsConditionInitParameters) DeepCopy() *PostArgsConditionInitParameters { if in == nil { return nil } - out := new(GlobalDeliveryRuleModifyResponseHeaderActionParameters) + out := new(PostArgsConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleObservation) DeepCopyInto(out *GlobalDeliveryRuleObservation) { +func (in *PostArgsConditionObservation) DeepCopyInto(out *PostArgsConditionObservation) { *out = *in - if in.CacheExpirationAction != nil { - in, out := &in.CacheExpirationAction, &out.CacheExpirationAction - *out = make([]GlobalDeliveryRuleCacheExpirationActionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CacheKeyQueryStringAction != nil { - in, out := &in.CacheKeyQueryStringAction, &out.CacheKeyQueryStringAction - *out = make([]GlobalDeliveryRuleCacheKeyQueryStringActionObservation, len(*in)) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.ModifyRequestHeaderAction != nil { - in, out := &in.ModifyRequestHeaderAction, &out.ModifyRequestHeaderAction - *out = make([]GlobalDeliveryRuleModifyRequestHeaderActionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in } - if in.ModifyResponseHeaderAction != nil { - in, out := &in.ModifyResponseHeaderAction, &out.ModifyResponseHeaderAction - *out = make([]GlobalDeliveryRuleModifyResponseHeaderActionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in } - if in.URLRedirectAction != nil { - in, out := &in.URLRedirectAction, &out.URLRedirectAction - *out = make([]GlobalDeliveryRuleURLRedirectActionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.PostArgsName != nil { + in, out := &in.PostArgsName, &out.PostArgsName + *out = new(string) + **out = **in } - if in.URLRewriteAction != nil { - in, out := &in.URLRewriteAction, &out.URLRewriteAction - *out = make([]GlobalDeliveryRuleURLRewriteActionObservation, len(*in)) + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleObservation. -func (in *GlobalDeliveryRuleObservation) DeepCopy() *GlobalDeliveryRuleObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostArgsConditionObservation. +func (in *PostArgsConditionObservation) DeepCopy() *PostArgsConditionObservation { if in == nil { return nil } - out := new(GlobalDeliveryRuleObservation) + out := new(PostArgsConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleParameters) DeepCopyInto(out *GlobalDeliveryRuleParameters) { +func (in *PostArgsConditionParameters) DeepCopyInto(out *PostArgsConditionParameters) { *out = *in - if in.CacheExpirationAction != nil { - in, out := &in.CacheExpirationAction, &out.CacheExpirationAction - *out = make([]GlobalDeliveryRuleCacheExpirationActionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.CacheKeyQueryStringAction != nil { - in, out := &in.CacheKeyQueryStringAction, &out.CacheKeyQueryStringAction - *out = make([]GlobalDeliveryRuleCacheKeyQueryStringActionParameters, len(*in)) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.ModifyRequestHeaderAction != nil { - in, out := &in.ModifyRequestHeaderAction, &out.ModifyRequestHeaderAction - *out = make([]GlobalDeliveryRuleModifyRequestHeaderActionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in } - if in.ModifyResponseHeaderAction != nil { - in, out := &in.ModifyResponseHeaderAction, &out.ModifyResponseHeaderAction - *out = make([]GlobalDeliveryRuleModifyResponseHeaderActionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in } - if in.URLRedirectAction != nil { - in, out := &in.URLRedirectAction, &out.URLRedirectAction - *out = make([]GlobalDeliveryRuleURLRedirectActionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.PostArgsName != nil { + in, out := &in.PostArgsName, &out.PostArgsName + *out = new(string) + **out = **in } - if in.URLRewriteAction != nil { - in, out := &in.URLRewriteAction, &out.URLRewriteAction - *out = make([]GlobalDeliveryRuleURLRewriteActionParameters, len(*in)) + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleParameters. -func (in *GlobalDeliveryRuleParameters) DeepCopy() *GlobalDeliveryRuleParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostArgsConditionParameters. +func (in *PostArgsConditionParameters) DeepCopy() *PostArgsConditionParameters { if in == nil { return nil } - out := new(GlobalDeliveryRuleParameters) + out := new(PostArgsConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleURLRedirectActionObservation) DeepCopyInto(out *GlobalDeliveryRuleURLRedirectActionObservation) { +func (in *PrivateLinkInitParameters) DeepCopyInto(out *PrivateLinkInitParameters) { *out = *in - if in.Fragment != nil { - in, out := &in.Fragment, &out.Fragment + if in.RequestMessage != nil { + in, out := &in.RequestMessage, &out.RequestMessage *out = new(string) **out = **in } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName + if in.TargetType != nil { + in, out := &in.TargetType, &out.TargetType *out = new(string) **out = **in } - if in.Path != nil { - in, out := &in.Path, &out.Path +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkInitParameters. +func (in *PrivateLinkInitParameters) DeepCopy() *PrivateLinkInitParameters { + if in == nil { + return nil + } + out := new(PrivateLinkInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateLinkObservation) DeepCopyInto(out *PrivateLinkObservation) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.Protocol != nil { - in, out := &in.Protocol, &out.Protocol + if in.PrivateLinkTargetID != nil { + in, out := &in.PrivateLinkTargetID, &out.PrivateLinkTargetID *out = new(string) **out = **in } - if in.QueryString != nil { - in, out := &in.QueryString, &out.QueryString + if in.RequestMessage != nil { + in, out := &in.RequestMessage, &out.RequestMessage *out = new(string) **out = **in } - if in.RedirectType != nil { - in, out := &in.RedirectType, &out.RedirectType + if in.TargetType != nil { + in, out := &in.TargetType, &out.TargetType *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleURLRedirectActionObservation. -func (in *GlobalDeliveryRuleURLRedirectActionObservation) DeepCopy() *GlobalDeliveryRuleURLRedirectActionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkObservation. +func (in *PrivateLinkObservation) DeepCopy() *PrivateLinkObservation { if in == nil { return nil } - out := new(GlobalDeliveryRuleURLRedirectActionObservation) + out := new(PrivateLinkObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleURLRedirectActionParameters) DeepCopyInto(out *GlobalDeliveryRuleURLRedirectActionParameters) { +func (in *PrivateLinkParameters) DeepCopyInto(out *PrivateLinkParameters) { *out = *in - if in.Fragment != nil { - in, out := &in.Fragment, &out.Fragment + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName - *out = new(string) - **out = **in + if in.LocationRef != nil { + in, out := &in.LocationRef, &out.LocationRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) } - if in.Path != nil { - in, out := &in.Path, &out.Path - *out = new(string) - **out = **in + if in.LocationSelector != nil { + in, out := &in.LocationSelector, &out.LocationSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) } - if in.Protocol != nil { - in, out := &in.Protocol, &out.Protocol + if in.PrivateLinkTargetID != nil { + in, out := &in.PrivateLinkTargetID, &out.PrivateLinkTargetID *out = new(string) **out = **in } - if in.QueryString != nil { - in, out := &in.QueryString, &out.QueryString + if in.PrivateLinkTargetIDRef != nil { + in, out := &in.PrivateLinkTargetIDRef, &out.PrivateLinkTargetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.PrivateLinkTargetIDSelector != nil { + in, out := &in.PrivateLinkTargetIDSelector, &out.PrivateLinkTargetIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.RequestMessage != nil { + in, out := &in.RequestMessage, &out.RequestMessage *out = new(string) **out = **in } - if in.RedirectType != nil { - in, out := &in.RedirectType, &out.RedirectType + if in.TargetType != nil { + in, out := &in.TargetType, &out.TargetType *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleURLRedirectActionParameters. -func (in *GlobalDeliveryRuleURLRedirectActionParameters) DeepCopy() *GlobalDeliveryRuleURLRedirectActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkParameters. +func (in *PrivateLinkParameters) DeepCopy() *PrivateLinkParameters { if in == nil { return nil } - out := new(GlobalDeliveryRuleURLRedirectActionParameters) + out := new(PrivateLinkParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleURLRewriteActionObservation) DeepCopyInto(out *GlobalDeliveryRuleURLRewriteActionObservation) { +func (in *Profile) DeepCopyInto(out *Profile) { *out = *in - if in.Destination != nil { - in, out := &in.Destination, &out.Destination - *out = new(string) - **out = **in - } - if in.PreserveUnmatchedPath != nil { - in, out := &in.PreserveUnmatchedPath, &out.PreserveUnmatchedPath - *out = new(bool) - **out = **in - } - if in.SourcePattern != nil { - in, out := &in.SourcePattern, &out.SourcePattern - *out = new(string) - **out = **in - } + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleURLRewriteActionObservation. -func (in *GlobalDeliveryRuleURLRewriteActionObservation) DeepCopy() *GlobalDeliveryRuleURLRewriteActionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Profile. +func (in *Profile) DeepCopy() *Profile { if in == nil { return nil } - out := new(GlobalDeliveryRuleURLRewriteActionObservation) + out := new(Profile) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Profile) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GlobalDeliveryRuleURLRewriteActionParameters) DeepCopyInto(out *GlobalDeliveryRuleURLRewriteActionParameters) { +func (in *ProfileInitParameters) DeepCopyInto(out *ProfileInitParameters) { *out = *in - if in.Destination != nil { - in, out := &in.Destination, &out.Destination + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.PreserveUnmatchedPath != nil { - in, out := &in.PreserveUnmatchedPath, &out.PreserveUnmatchedPath - *out = new(bool) - **out = **in - } - if in.SourcePattern != nil { - in, out := &in.SourcePattern, &out.SourcePattern + if in.Sku != nil { + in, out := &in.Sku, &out.Sku *out = new(string) **out = **in } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalDeliveryRuleURLRewriteActionParameters. -func (in *GlobalDeliveryRuleURLRewriteActionParameters) DeepCopy() *GlobalDeliveryRuleURLRewriteActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileInitParameters. +func (in *ProfileInitParameters) DeepCopy() *ProfileInitParameters { if in == nil { return nil } - out := new(GlobalDeliveryRuleURLRewriteActionParameters) + out := new(ProfileInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPVersionConditionObservation) DeepCopyInto(out *HTTPVersionConditionObservation) { +func (in *ProfileList) DeepCopyInto(out *ProfileList) { *out = *in - if in.MatchValues != nil { - in, out := &in.MatchValues, &out.MatchValues - *out = make([]*string, len(*in)) + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Profile, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.NegateCondition != nil { - in, out := &in.NegateCondition, &out.NegateCondition - *out = new(bool) - **out = **in - } - if in.Operator != nil { - in, out := &in.Operator, &out.Operator - *out = new(string) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPVersionConditionObservation. -func (in *HTTPVersionConditionObservation) DeepCopy() *HTTPVersionConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileList. +func (in *ProfileList) DeepCopy() *ProfileList { if in == nil { return nil } - out := new(HTTPVersionConditionObservation) + out := new(ProfileList) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ProfileList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPVersionConditionParameters) DeepCopyInto(out *HTTPVersionConditionParameters) { +func (in *ProfileObservation) DeepCopyInto(out *ProfileObservation) { *out = *in - if in.MatchValues != nil { - in, out := &in.MatchValues, &out.MatchValues - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in } - if in.NegateCondition != nil { - in, out := &in.NegateCondition, &out.NegateCondition - *out = new(bool) + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) **out = **in } - if in.Operator != nil { - in, out := &in.Operator, &out.Operator + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku *out = new(string) **out = **in } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPVersionConditionParameters. -func (in *HTTPVersionConditionParameters) DeepCopy() *HTTPVersionConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileObservation. +func (in *ProfileObservation) DeepCopy() *ProfileObservation { if in == nil { return nil } - out := new(HTTPVersionConditionParameters) + out := new(ProfileObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HealthProbeObservation) DeepCopyInto(out *HealthProbeObservation) { +func (in *ProfileParameters) DeepCopyInto(out *ProfileParameters) { *out = *in - if in.IntervalInSeconds != nil { - in, out := &in.IntervalInSeconds, &out.IntervalInSeconds - *out = new(float64) - **out = **in - } - if in.Path != nil { - in, out := &in.Path, &out.Path + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.Protocol != nil { - in, out := &in.Protocol, &out.Protocol + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName *out = new(string) **out = **in } - if in.RequestType != nil { - in, out := &in.RequestType, &out.RequestType + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku *out = new(string) **out = **in } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthProbeObservation. -func (in *HealthProbeObservation) DeepCopy() *HealthProbeObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileParameters. +func (in *ProfileParameters) DeepCopy() *ProfileParameters { if in == nil { return nil } - out := new(HealthProbeObservation) + out := new(ProfileParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HealthProbeParameters) DeepCopyInto(out *HealthProbeParameters) { - *out = *in - if in.IntervalInSeconds != nil { - in, out := &in.IntervalInSeconds, &out.IntervalInSeconds - *out = new(float64) - **out = **in - } - if in.Path != nil { - in, out := &in.Path, &out.Path - *out = new(string) - **out = **in - } - if in.Protocol != nil { - in, out := &in.Protocol, &out.Protocol - *out = new(string) - **out = **in - } - if in.RequestType != nil { - in, out := &in.RequestType, &out.RequestType - *out = new(string) - **out = **in +func (in *ProfileSpec) DeepCopyInto(out *ProfileSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileSpec. +func (in *ProfileSpec) DeepCopy() *ProfileSpec { + if in == nil { + return nil } + out := new(ProfileSpec) + in.DeepCopyInto(out) + return out } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthProbeParameters. -func (in *HealthProbeParameters) DeepCopy() *HealthProbeParameters { +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProfileStatus) DeepCopyInto(out *ProfileStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileStatus. +func (in *ProfileStatus) DeepCopy() *ProfileStatus { if in == nil { return nil } - out := new(HealthProbeParameters) + out := new(ProfileStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HostNameConditionObservation) DeepCopyInto(out *HostNameConditionObservation) { +func (in *QueryStringConditionInitParameters) DeepCopyInto(out *QueryStringConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -5379,18 +8620,18 @@ func (in *HostNameConditionObservation) DeepCopyInto(out *HostNameConditionObser } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostNameConditionObservation. -func (in *HostNameConditionObservation) DeepCopy() *HostNameConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryStringConditionInitParameters. +func (in *QueryStringConditionInitParameters) DeepCopy() *QueryStringConditionInitParameters { if in == nil { return nil } - out := new(HostNameConditionObservation) + out := new(QueryStringConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HostNameConditionParameters) DeepCopyInto(out *HostNameConditionParameters) { +func (in *QueryStringConditionObservation) DeepCopyInto(out *QueryStringConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -5426,54 +8667,18 @@ func (in *HostNameConditionParameters) DeepCopyInto(out *HostNameConditionParame } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostNameConditionParameters. -func (in *HostNameConditionParameters) DeepCopy() *HostNameConditionParameters { - if in == nil { - return nil - } - out := new(HostNameConditionParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IsDeviceConditionObservation) DeepCopyInto(out *IsDeviceConditionObservation) { - *out = *in - if in.MatchValues != nil { - in, out := &in.MatchValues, &out.MatchValues - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.NegateCondition != nil { - in, out := &in.NegateCondition, &out.NegateCondition - *out = new(bool) - **out = **in - } - if in.Operator != nil { - in, out := &in.Operator, &out.Operator - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IsDeviceConditionObservation. -func (in *IsDeviceConditionObservation) DeepCopy() *IsDeviceConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryStringConditionObservation. +func (in *QueryStringConditionObservation) DeepCopy() *QueryStringConditionObservation { if in == nil { return nil } - out := new(IsDeviceConditionObservation) + out := new(QueryStringConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IsDeviceConditionParameters) DeepCopyInto(out *IsDeviceConditionParameters) { +func (in *QueryStringConditionParameters) DeepCopyInto(out *QueryStringConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -5492,274 +8697,107 @@ func (in *IsDeviceConditionParameters) DeepCopyInto(out *IsDeviceConditionParame **out = **in } if in.Operator != nil { - in, out := &in.Operator, &out.Operator - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IsDeviceConditionParameters. -func (in *IsDeviceConditionParameters) DeepCopy() *IsDeviceConditionParameters { - if in == nil { - return nil - } - out := new(IsDeviceConditionParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LoadBalancingObservation) DeepCopyInto(out *LoadBalancingObservation) { - *out = *in - if in.AdditionalLatencyInMilliseconds != nil { - in, out := &in.AdditionalLatencyInMilliseconds, &out.AdditionalLatencyInMilliseconds - *out = new(float64) - **out = **in - } - if in.SampleSize != nil { - in, out := &in.SampleSize, &out.SampleSize - *out = new(float64) - **out = **in - } - if in.SuccessfulSamplesRequired != nil { - in, out := &in.SuccessfulSamplesRequired, &out.SuccessfulSamplesRequired - *out = new(float64) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancingObservation. -func (in *LoadBalancingObservation) DeepCopy() *LoadBalancingObservation { - if in == nil { - return nil - } - out := new(LoadBalancingObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LoadBalancingParameters) DeepCopyInto(out *LoadBalancingParameters) { - *out = *in - if in.AdditionalLatencyInMilliseconds != nil { - in, out := &in.AdditionalLatencyInMilliseconds, &out.AdditionalLatencyInMilliseconds - *out = new(float64) - **out = **in - } - if in.SampleSize != nil { - in, out := &in.SampleSize, &out.SampleSize - *out = new(float64) - **out = **in - } - if in.SuccessfulSamplesRequired != nil { - in, out := &in.SuccessfulSamplesRequired, &out.SuccessfulSamplesRequired - *out = new(float64) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancingParameters. -func (in *LoadBalancingParameters) DeepCopy() *LoadBalancingParameters { - if in == nil { - return nil - } - out := new(LoadBalancingParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ModifyRequestHeaderActionObservation) DeepCopyInto(out *ModifyRequestHeaderActionObservation) { - *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action - *out = new(string) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifyRequestHeaderActionObservation. -func (in *ModifyRequestHeaderActionObservation) DeepCopy() *ModifyRequestHeaderActionObservation { - if in == nil { - return nil - } - out := new(ModifyRequestHeaderActionObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ModifyRequestHeaderActionParameters) DeepCopyInto(out *ModifyRequestHeaderActionParameters) { - *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action - *out = new(string) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifyRequestHeaderActionParameters. -func (in *ModifyRequestHeaderActionParameters) DeepCopy() *ModifyRequestHeaderActionParameters { - if in == nil { - return nil - } - out := new(ModifyRequestHeaderActionParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ModifyResponseHeaderActionObservation) DeepCopyInto(out *ModifyResponseHeaderActionObservation) { - *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action - *out = new(string) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifyResponseHeaderActionObservation. -func (in *ModifyResponseHeaderActionObservation) DeepCopy() *ModifyResponseHeaderActionObservation { - if in == nil { - return nil - } - out := new(ModifyResponseHeaderActionObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ModifyResponseHeaderActionParameters) DeepCopyInto(out *ModifyResponseHeaderActionParameters) { - *out = *in - if in.Action != nil { - in, out := &in.Action, &out.Action - *out = new(string) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.Value != nil { - in, out := &in.Value, &out.Value + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifyResponseHeaderActionParameters. -func (in *ModifyResponseHeaderActionParameters) DeepCopy() *ModifyResponseHeaderActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryStringConditionParameters. +func (in *QueryStringConditionParameters) DeepCopy() *QueryStringConditionParameters { if in == nil { return nil } - out := new(ModifyResponseHeaderActionParameters) + out := new(QueryStringConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OriginObservation) DeepCopyInto(out *OriginObservation) { +func (in *RemoteAddressConditionInitParameters) DeepCopyInto(out *RemoteAddressConditionInitParameters) { *out = *in - if in.HTTPPort != nil { - in, out := &in.HTTPPort, &out.HTTPPort - *out = new(float64) - **out = **in - } - if in.HTTPSPort != nil { - in, out := &in.HTTPSPort, &out.HTTPSPort - *out = new(float64) - **out = **in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName - *out = new(string) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OriginObservation. -func (in *OriginObservation) DeepCopy() *OriginObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteAddressConditionInitParameters. +func (in *RemoteAddressConditionInitParameters) DeepCopy() *RemoteAddressConditionInitParameters { if in == nil { return nil } - out := new(OriginObservation) + out := new(RemoteAddressConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OriginParameters) DeepCopyInto(out *OriginParameters) { +func (in *RemoteAddressConditionObservation) DeepCopyInto(out *RemoteAddressConditionObservation) { *out = *in - if in.HTTPPort != nil { - in, out := &in.HTTPPort, &out.HTTPPort - *out = new(float64) - **out = **in - } - if in.HTTPSPort != nil { - in, out := &in.HTTPSPort, &out.HTTPSPort - *out = new(float64) - **out = **in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.HostName != nil { - in, out := &in.HostName, &out.HostName - *out = new(string) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OriginParameters. -func (in *OriginParameters) DeepCopy() *OriginParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteAddressConditionObservation. +func (in *RemoteAddressConditionObservation) DeepCopy() *RemoteAddressConditionObservation { if in == nil { return nil } - out := new(OriginParameters) + out := new(RemoteAddressConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostArgConditionObservation) DeepCopyInto(out *PostArgConditionObservation) { +func (in *RemoteAddressConditionParameters) DeepCopyInto(out *RemoteAddressConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -5782,36 +8820,20 @@ func (in *PostArgConditionObservation) DeepCopyInto(out *PostArgConditionObserva *out = new(string) **out = **in } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = new(string) - **out = **in - } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostArgConditionObservation. -func (in *PostArgConditionObservation) DeepCopy() *PostArgConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteAddressConditionParameters. +func (in *RemoteAddressConditionParameters) DeepCopy() *RemoteAddressConditionParameters { if in == nil { return nil } - out := new(PostArgConditionObservation) + out := new(RemoteAddressConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostArgConditionParameters) DeepCopyInto(out *PostArgConditionParameters) { +func (in *RequestBodyConditionInitParameters) DeepCopyInto(out *RequestBodyConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -5834,11 +8856,6 @@ func (in *PostArgConditionParameters) DeepCopyInto(out *PostArgConditionParamete *out = new(string) **out = **in } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = new(string) - **out = **in - } if in.Transforms != nil { in, out := &in.Transforms, &out.Transforms *out = make([]*string, len(*in)) @@ -5852,18 +8869,18 @@ func (in *PostArgConditionParameters) DeepCopyInto(out *PostArgConditionParamete } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostArgConditionParameters. -func (in *PostArgConditionParameters) DeepCopy() *PostArgConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestBodyConditionInitParameters. +func (in *RequestBodyConditionInitParameters) DeepCopy() *RequestBodyConditionInitParameters { if in == nil { return nil } - out := new(PostArgConditionParameters) + out := new(RequestBodyConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostArgsConditionObservation) DeepCopyInto(out *PostArgsConditionObservation) { +func (in *RequestBodyConditionObservation) DeepCopyInto(out *RequestBodyConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -5886,11 +8903,6 @@ func (in *PostArgsConditionObservation) DeepCopyInto(out *PostArgsConditionObser *out = new(string) **out = **in } - if in.PostArgsName != nil { - in, out := &in.PostArgsName, &out.PostArgsName - *out = new(string) - **out = **in - } if in.Transforms != nil { in, out := &in.Transforms, &out.Transforms *out = make([]*string, len(*in)) @@ -5904,18 +8916,18 @@ func (in *PostArgsConditionObservation) DeepCopyInto(out *PostArgsConditionObser } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostArgsConditionObservation. -func (in *PostArgsConditionObservation) DeepCopy() *PostArgsConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestBodyConditionObservation. +func (in *RequestBodyConditionObservation) DeepCopy() *RequestBodyConditionObservation { if in == nil { return nil } - out := new(PostArgsConditionObservation) + out := new(RequestBodyConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PostArgsConditionParameters) DeepCopyInto(out *PostArgsConditionParameters) { +func (in *RequestBodyConditionParameters) DeepCopyInto(out *RequestBodyConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -5938,11 +8950,6 @@ func (in *PostArgsConditionParameters) DeepCopyInto(out *PostArgsConditionParame *out = new(string) **out = **in } - if in.PostArgsName != nil { - in, out := &in.PostArgsName, &out.PostArgsName - *out = new(string) - **out = **in - } if in.Transforms != nil { in, out := &in.Transforms, &out.Transforms *out = make([]*string, len(*in)) @@ -5956,306 +8963,300 @@ func (in *PostArgsConditionParameters) DeepCopyInto(out *PostArgsConditionParame } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostArgsConditionParameters. -func (in *PostArgsConditionParameters) DeepCopy() *PostArgsConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestBodyConditionParameters. +func (in *RequestBodyConditionParameters) DeepCopy() *RequestBodyConditionParameters { if in == nil { return nil } - out := new(PostArgsConditionParameters) + out := new(RequestBodyConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PrivateLinkObservation) DeepCopyInto(out *PrivateLinkObservation) { +func (in *RequestHeaderActionInitParameters) DeepCopyInto(out *RequestHeaderActionInitParameters) { *out = *in - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) - **out = **in - } - if in.PrivateLinkTargetID != nil { - in, out := &in.PrivateLinkTargetID, &out.PrivateLinkTargetID + if in.HeaderAction != nil { + in, out := &in.HeaderAction, &out.HeaderAction *out = new(string) **out = **in } - if in.RequestMessage != nil { - in, out := &in.RequestMessage, &out.RequestMessage + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName *out = new(string) **out = **in } - if in.TargetType != nil { - in, out := &in.TargetType, &out.TargetType + if in.Value != nil { + in, out := &in.Value, &out.Value *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkObservation. -func (in *PrivateLinkObservation) DeepCopy() *PrivateLinkObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderActionInitParameters. +func (in *RequestHeaderActionInitParameters) DeepCopy() *RequestHeaderActionInitParameters { if in == nil { return nil } - out := new(PrivateLinkObservation) + out := new(RequestHeaderActionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PrivateLinkParameters) DeepCopyInto(out *PrivateLinkParameters) { +func (in *RequestHeaderActionObservation) DeepCopyInto(out *RequestHeaderActionObservation) { *out = *in - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) - **out = **in - } - if in.LocationRef != nil { - in, out := &in.LocationRef, &out.LocationRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.LocationSelector != nil { - in, out := &in.LocationSelector, &out.LocationSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.PrivateLinkTargetID != nil { - in, out := &in.PrivateLinkTargetID, &out.PrivateLinkTargetID + if in.HeaderAction != nil { + in, out := &in.HeaderAction, &out.HeaderAction *out = new(string) **out = **in } - if in.PrivateLinkTargetIDRef != nil { - in, out := &in.PrivateLinkTargetIDRef, &out.PrivateLinkTargetIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.PrivateLinkTargetIDSelector != nil { - in, out := &in.PrivateLinkTargetIDSelector, &out.PrivateLinkTargetIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.RequestMessage != nil { - in, out := &in.RequestMessage, &out.RequestMessage + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName *out = new(string) **out = **in } - if in.TargetType != nil { - in, out := &in.TargetType, &out.TargetType + if in.Value != nil { + in, out := &in.Value, &out.Value *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkParameters. -func (in *PrivateLinkParameters) DeepCopy() *PrivateLinkParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderActionObservation. +func (in *RequestHeaderActionObservation) DeepCopy() *RequestHeaderActionObservation { if in == nil { return nil } - out := new(PrivateLinkParameters) + out := new(RequestHeaderActionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Profile) DeepCopyInto(out *Profile) { +func (in *RequestHeaderActionParameters) DeepCopyInto(out *RequestHeaderActionParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Profile. -func (in *Profile) DeepCopy() *Profile { - if in == nil { - return nil + if in.HeaderAction != nil { + in, out := &in.HeaderAction, &out.HeaderAction + *out = new(string) + **out = **in } - out := new(Profile) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *Profile) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName + *out = new(string) + **out = **in } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProfileList) DeepCopyInto(out *ProfileList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Profile, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileList. -func (in *ProfileList) DeepCopy() *ProfileList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderActionParameters. +func (in *RequestHeaderActionParameters) DeepCopy() *RequestHeaderActionParameters { if in == nil { return nil } - out := new(ProfileList) + out := new(RequestHeaderActionParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ProfileList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProfileObservation) DeepCopyInto(out *ProfileObservation) { +func (in *RequestHeaderConditionInitParameters) DeepCopyInto(out *RequestHeaderConditionInitParameters) { *out = *in - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.Sku != nil { - in, out := &in.Sku, &out.Sku + if in.Selector != nil { + in, out := &in.Selector, &out.Selector *out = new(string) **out = **in } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] *out = new(string) **out = **in } - (*out)[key] = outVal } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileObservation. -func (in *ProfileObservation) DeepCopy() *ProfileObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderConditionInitParameters. +func (in *RequestHeaderConditionInitParameters) DeepCopy() *RequestHeaderConditionInitParameters { if in == nil { return nil } - out := new(ProfileObservation) + out := new(RequestHeaderConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProfileParameters) DeepCopyInto(out *ProfileParameters) { +func (in *RequestHeaderConditionObservation) DeepCopyInto(out *RequestHeaderConditionObservation) { *out = *in - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Sku != nil { - in, out := &in.Sku, &out.Sku + if in.Selector != nil { + in, out := &in.Selector, &out.Selector *out = new(string) **out = **in } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] *out = new(string) **out = **in } - (*out)[key] = outVal } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileParameters. -func (in *ProfileParameters) DeepCopy() *ProfileParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderConditionObservation. +func (in *RequestHeaderConditionObservation) DeepCopy() *RequestHeaderConditionObservation { if in == nil { return nil } - out := new(ProfileParameters) + out := new(RequestHeaderConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProfileSpec) DeepCopyInto(out *ProfileSpec) { +func (in *RequestHeaderConditionParameters) DeepCopyInto(out *RequestHeaderConditionParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileSpec. -func (in *ProfileSpec) DeepCopy() *ProfileSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderConditionParameters. +func (in *RequestHeaderConditionParameters) DeepCopy() *RequestHeaderConditionParameters { if in == nil { return nil } - out := new(ProfileSpec) + out := new(RequestHeaderConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProfileStatus) DeepCopyInto(out *ProfileStatus) { +func (in *RequestMethodConditionInitParameters) DeepCopyInto(out *RequestMethodConditionInitParameters) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileStatus. -func (in *ProfileStatus) DeepCopy() *ProfileStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestMethodConditionInitParameters. +func (in *RequestMethodConditionInitParameters) DeepCopy() *RequestMethodConditionInitParameters { if in == nil { return nil } - out := new(ProfileStatus) + out := new(RequestMethodConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *QueryStringConditionObservation) DeepCopyInto(out *QueryStringConditionObservation) { +func (in *RequestMethodConditionObservation) DeepCopyInto(out *RequestMethodConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6278,8 +9279,23 @@ func (in *QueryStringConditionObservation) DeepCopyInto(out *QueryStringConditio *out = new(string) **out = **in } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestMethodConditionObservation. +func (in *RequestMethodConditionObservation) DeepCopy() *RequestMethodConditionObservation { + if in == nil { + return nil + } + out := new(RequestMethodConditionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestMethodConditionParameters) DeepCopyInto(out *RequestMethodConditionParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -6289,20 +9305,30 @@ func (in *QueryStringConditionObservation) DeepCopyInto(out *QueryStringConditio } } } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryStringConditionObservation. -func (in *QueryStringConditionObservation) DeepCopy() *QueryStringConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestMethodConditionParameters. +func (in *RequestMethodConditionParameters) DeepCopy() *RequestMethodConditionParameters { if in == nil { return nil } - out := new(QueryStringConditionObservation) + out := new(RequestMethodConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *QueryStringConditionParameters) DeepCopyInto(out *QueryStringConditionParameters) { +func (in *RequestSchemeConditionInitParameters) DeepCopyInto(out *RequestSchemeConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6325,8 +9351,23 @@ func (in *QueryStringConditionParameters) DeepCopyInto(out *QueryStringCondition *out = new(string) **out = **in } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestSchemeConditionInitParameters. +func (in *RequestSchemeConditionInitParameters) DeepCopy() *RequestSchemeConditionInitParameters { + if in == nil { + return nil + } + out := new(RequestSchemeConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestSchemeConditionObservation) DeepCopyInto(out *RequestSchemeConditionObservation) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -6336,20 +9377,30 @@ func (in *QueryStringConditionParameters) DeepCopyInto(out *QueryStringCondition } } } + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryStringConditionParameters. -func (in *QueryStringConditionParameters) DeepCopy() *QueryStringConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestSchemeConditionObservation. +func (in *RequestSchemeConditionObservation) DeepCopy() *RequestSchemeConditionObservation { if in == nil { return nil } - out := new(QueryStringConditionParameters) + out := new(RequestSchemeConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RemoteAddressConditionObservation) DeepCopyInto(out *RemoteAddressConditionObservation) { +func (in *RequestSchemeConditionParameters) DeepCopyInto(out *RequestSchemeConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6374,18 +9425,18 @@ func (in *RemoteAddressConditionObservation) DeepCopyInto(out *RemoteAddressCond } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteAddressConditionObservation. -func (in *RemoteAddressConditionObservation) DeepCopy() *RemoteAddressConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestSchemeConditionParameters. +func (in *RequestSchemeConditionParameters) DeepCopy() *RequestSchemeConditionParameters { if in == nil { return nil } - out := new(RemoteAddressConditionObservation) + out := new(RequestSchemeConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RemoteAddressConditionParameters) DeepCopyInto(out *RemoteAddressConditionParameters) { +func (in *RequestURIConditionInitParameters) DeepCopyInto(out *RequestURIConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6408,20 +9459,31 @@ func (in *RemoteAddressConditionParameters) DeepCopyInto(out *RemoteAddressCondi *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteAddressConditionParameters. -func (in *RemoteAddressConditionParameters) DeepCopy() *RemoteAddressConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIConditionInitParameters. +func (in *RequestURIConditionInitParameters) DeepCopy() *RequestURIConditionInitParameters { if in == nil { return nil } - out := new(RemoteAddressConditionParameters) + out := new(RequestURIConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestBodyConditionObservation) DeepCopyInto(out *RequestBodyConditionObservation) { +func (in *RequestURIConditionObservation) DeepCopyInto(out *RequestURIConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6457,18 +9519,18 @@ func (in *RequestBodyConditionObservation) DeepCopyInto(out *RequestBodyConditio } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestBodyConditionObservation. -func (in *RequestBodyConditionObservation) DeepCopy() *RequestBodyConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIConditionObservation. +func (in *RequestURIConditionObservation) DeepCopy() *RequestURIConditionObservation { if in == nil { return nil } - out := new(RequestBodyConditionObservation) + out := new(RequestURIConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestBodyConditionParameters) DeepCopyInto(out *RequestBodyConditionParameters) { +func (in *RequestURIConditionParameters) DeepCopyInto(out *RequestURIConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6504,18 +9566,18 @@ func (in *RequestBodyConditionParameters) DeepCopyInto(out *RequestBodyCondition } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestBodyConditionParameters. -func (in *RequestBodyConditionParameters) DeepCopy() *RequestBodyConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIConditionParameters. +func (in *RequestURIConditionParameters) DeepCopy() *RequestURIConditionParameters { if in == nil { return nil } - out := new(RequestBodyConditionParameters) + out := new(RequestURIConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestHeaderActionObservation) DeepCopyInto(out *RequestHeaderActionObservation) { +func (in *ResponseHeaderActionInitParameters) DeepCopyInto(out *ResponseHeaderActionInitParameters) { *out = *in if in.HeaderAction != nil { in, out := &in.HeaderAction, &out.HeaderAction @@ -6534,18 +9596,18 @@ func (in *RequestHeaderActionObservation) DeepCopyInto(out *RequestHeaderActionO } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderActionObservation. -func (in *RequestHeaderActionObservation) DeepCopy() *RequestHeaderActionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseHeaderActionInitParameters. +func (in *ResponseHeaderActionInitParameters) DeepCopy() *ResponseHeaderActionInitParameters { if in == nil { return nil } - out := new(RequestHeaderActionObservation) + out := new(ResponseHeaderActionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestHeaderActionParameters) DeepCopyInto(out *RequestHeaderActionParameters) { +func (in *ResponseHeaderActionObservation) DeepCopyInto(out *ResponseHeaderActionObservation) { *out = *in if in.HeaderAction != nil { in, out := &in.HeaderAction, &out.HeaderAction @@ -6564,21 +9626,76 @@ func (in *RequestHeaderActionParameters) DeepCopyInto(out *RequestHeaderActionPa } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderActionParameters. -func (in *RequestHeaderActionParameters) DeepCopy() *RequestHeaderActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseHeaderActionObservation. +func (in *ResponseHeaderActionObservation) DeepCopy() *ResponseHeaderActionObservation { if in == nil { return nil } - out := new(RequestHeaderActionParameters) + out := new(ResponseHeaderActionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestHeaderConditionObservation) DeepCopyInto(out *RequestHeaderConditionObservation) { +func (in *ResponseHeaderActionParameters) DeepCopyInto(out *ResponseHeaderActionParameters) { *out = *in - if in.MatchValues != nil { - in, out := &in.MatchValues, &out.MatchValues + if in.HeaderAction != nil { + in, out := &in.HeaderAction, &out.HeaderAction + *out = new(string) + **out = **in + } + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseHeaderActionParameters. +func (in *ResponseHeaderActionParameters) DeepCopy() *ResponseHeaderActionParameters { + if in == nil { + return nil + } + out := new(ResponseHeaderActionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteConfigurationOverrideActionInitParameters) DeepCopyInto(out *RouteConfigurationOverrideActionInitParameters) { + *out = *in + if in.CacheBehavior != nil { + in, out := &in.CacheBehavior, &out.CacheBehavior + *out = new(string) + **out = **in + } + if in.CacheDuration != nil { + in, out := &in.CacheDuration, &out.CacheDuration + *out = new(string) + **out = **in + } + if in.CompressionEnabled != nil { + in, out := &in.CompressionEnabled, &out.CompressionEnabled + *out = new(bool) + **out = **in + } + if in.ForwardingProtocol != nil { + in, out := &in.ForwardingProtocol, &out.ForwardingProtocol + *out = new(string) + **out = **in + } + if in.QueryStringCachingBehavior != nil { + in, out := &in.QueryStringCachingBehavior, &out.QueryStringCachingBehavior + *out = new(string) + **out = **in + } + if in.QueryStringParameters != nil { + in, out := &in.QueryStringParameters, &out.QueryStringParameters *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -6588,23 +9705,53 @@ func (in *RequestHeaderConditionObservation) DeepCopyInto(out *RequestHeaderCond } } } - if in.NegateCondition != nil { - in, out := &in.NegateCondition, &out.NegateCondition +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteConfigurationOverrideActionInitParameters. +func (in *RouteConfigurationOverrideActionInitParameters) DeepCopy() *RouteConfigurationOverrideActionInitParameters { + if in == nil { + return nil + } + out := new(RouteConfigurationOverrideActionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteConfigurationOverrideActionObservation) DeepCopyInto(out *RouteConfigurationOverrideActionObservation) { + *out = *in + if in.CacheBehavior != nil { + in, out := &in.CacheBehavior, &out.CacheBehavior + *out = new(string) + **out = **in + } + if in.CacheDuration != nil { + in, out := &in.CacheDuration, &out.CacheDuration + *out = new(string) + **out = **in + } + if in.CdnFrontdoorOriginGroupID != nil { + in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + *out = new(string) + **out = **in + } + if in.CompressionEnabled != nil { + in, out := &in.CompressionEnabled, &out.CompressionEnabled *out = new(bool) **out = **in } - if in.Operator != nil { - in, out := &in.Operator, &out.Operator + if in.ForwardingProtocol != nil { + in, out := &in.ForwardingProtocol, &out.ForwardingProtocol *out = new(string) **out = **in } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector + if in.QueryStringCachingBehavior != nil { + in, out := &in.QueryStringCachingBehavior, &out.QueryStringCachingBehavior *out = new(string) **out = **in } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms + if in.QueryStringParameters != nil { + in, out := &in.QueryStringParameters, &out.QueryStringParameters *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -6616,18 +9763,84 @@ func (in *RequestHeaderConditionObservation) DeepCopyInto(out *RequestHeaderCond } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderConditionObservation. -func (in *RequestHeaderConditionObservation) DeepCopy() *RequestHeaderConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteConfigurationOverrideActionObservation. +func (in *RouteConfigurationOverrideActionObservation) DeepCopy() *RouteConfigurationOverrideActionObservation { if in == nil { return nil } - out := new(RequestHeaderConditionObservation) + out := new(RouteConfigurationOverrideActionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestHeaderConditionParameters) DeepCopyInto(out *RequestHeaderConditionParameters) { +func (in *RouteConfigurationOverrideActionParameters) DeepCopyInto(out *RouteConfigurationOverrideActionParameters) { + *out = *in + if in.CacheBehavior != nil { + in, out := &in.CacheBehavior, &out.CacheBehavior + *out = new(string) + **out = **in + } + if in.CacheDuration != nil { + in, out := &in.CacheDuration, &out.CacheDuration + *out = new(string) + **out = **in + } + if in.CdnFrontdoorOriginGroupID != nil { + in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + *out = new(string) + **out = **in + } + if in.CdnFrontdoorOriginGroupIDRef != nil { + in, out := &in.CdnFrontdoorOriginGroupIDRef, &out.CdnFrontdoorOriginGroupIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.CdnFrontdoorOriginGroupIDSelector != nil { + in, out := &in.CdnFrontdoorOriginGroupIDSelector, &out.CdnFrontdoorOriginGroupIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.CompressionEnabled != nil { + in, out := &in.CompressionEnabled, &out.CompressionEnabled + *out = new(bool) + **out = **in + } + if in.ForwardingProtocol != nil { + in, out := &in.ForwardingProtocol, &out.ForwardingProtocol + *out = new(string) + **out = **in + } + if in.QueryStringCachingBehavior != nil { + in, out := &in.QueryStringCachingBehavior, &out.QueryStringCachingBehavior + *out = new(string) + **out = **in + } + if in.QueryStringParameters != nil { + in, out := &in.QueryStringParameters, &out.QueryStringParameters + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteConfigurationOverrideActionParameters. +func (in *RouteConfigurationOverrideActionParameters) DeepCopy() *RouteConfigurationOverrideActionParameters { + if in == nil { + return nil + } + out := new(RouteConfigurationOverrideActionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSLProtocolConditionInitParameters) DeepCopyInto(out *SSLProtocolConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6650,36 +9863,20 @@ func (in *RequestHeaderConditionParameters) DeepCopyInto(out *RequestHeaderCondi *out = new(string) **out = **in } - if in.Selector != nil { - in, out := &in.Selector, &out.Selector - *out = new(string) - **out = **in - } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderConditionParameters. -func (in *RequestHeaderConditionParameters) DeepCopy() *RequestHeaderConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLProtocolConditionInitParameters. +func (in *SSLProtocolConditionInitParameters) DeepCopy() *SSLProtocolConditionInitParameters { if in == nil { return nil } - out := new(RequestHeaderConditionParameters) + out := new(SSLProtocolConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestMethodConditionObservation) DeepCopyInto(out *RequestMethodConditionObservation) { +func (in *SSLProtocolConditionObservation) DeepCopyInto(out *SSLProtocolConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6704,18 +9901,18 @@ func (in *RequestMethodConditionObservation) DeepCopyInto(out *RequestMethodCond } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestMethodConditionObservation. -func (in *RequestMethodConditionObservation) DeepCopy() *RequestMethodConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLProtocolConditionObservation. +func (in *SSLProtocolConditionObservation) DeepCopy() *SSLProtocolConditionObservation { if in == nil { return nil } - out := new(RequestMethodConditionObservation) + out := new(SSLProtocolConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestMethodConditionParameters) DeepCopyInto(out *RequestMethodConditionParameters) { +func (in *SSLProtocolConditionParameters) DeepCopyInto(out *SSLProtocolConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6740,18 +9937,18 @@ func (in *RequestMethodConditionParameters) DeepCopyInto(out *RequestMethodCondi } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestMethodConditionParameters. -func (in *RequestMethodConditionParameters) DeepCopy() *RequestMethodConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLProtocolConditionParameters. +func (in *SSLProtocolConditionParameters) DeepCopy() *SSLProtocolConditionParameters { if in == nil { return nil } - out := new(RequestMethodConditionParameters) + out := new(SSLProtocolConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestSchemeConditionObservation) DeepCopyInto(out *RequestSchemeConditionObservation) { +func (in *ServerPortConditionInitParameters) DeepCopyInto(out *ServerPortConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6776,18 +9973,18 @@ func (in *RequestSchemeConditionObservation) DeepCopyInto(out *RequestSchemeCond } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestSchemeConditionObservation. -func (in *RequestSchemeConditionObservation) DeepCopy() *RequestSchemeConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerPortConditionInitParameters. +func (in *ServerPortConditionInitParameters) DeepCopy() *ServerPortConditionInitParameters { if in == nil { return nil } - out := new(RequestSchemeConditionObservation) + out := new(ServerPortConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestSchemeConditionParameters) DeepCopyInto(out *RequestSchemeConditionParameters) { +func (in *ServerPortConditionObservation) DeepCopyInto(out *ServerPortConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6812,18 +10009,18 @@ func (in *RequestSchemeConditionParameters) DeepCopyInto(out *RequestSchemeCondi } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestSchemeConditionParameters. -func (in *RequestSchemeConditionParameters) DeepCopy() *RequestSchemeConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerPortConditionObservation. +func (in *ServerPortConditionObservation) DeepCopy() *ServerPortConditionObservation { if in == nil { return nil } - out := new(RequestSchemeConditionParameters) + out := new(ServerPortConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIConditionObservation) DeepCopyInto(out *RequestURIConditionObservation) { +func (in *ServerPortConditionParameters) DeepCopyInto(out *ServerPortConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6846,31 +10043,20 @@ func (in *RequestURIConditionObservation) DeepCopyInto(out *RequestURIConditionO *out = new(string) **out = **in } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIConditionObservation. -func (in *RequestURIConditionObservation) DeepCopy() *RequestURIConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerPortConditionParameters. +func (in *ServerPortConditionParameters) DeepCopy() *ServerPortConditionParameters { if in == nil { return nil } - out := new(RequestURIConditionObservation) + out := new(ServerPortConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RequestURIConditionParameters) DeepCopyInto(out *RequestURIConditionParameters) { +func (in *SocketAddressConditionInitParameters) DeepCopyInto(out *SocketAddressConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -6893,249 +10079,182 @@ func (in *RequestURIConditionParameters) DeepCopyInto(out *RequestURIConditionPa *out = new(string) **out = **in } - if in.Transforms != nil { - in, out := &in.Transforms, &out.Transforms - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestURIConditionParameters. -func (in *RequestURIConditionParameters) DeepCopy() *RequestURIConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SocketAddressConditionInitParameters. +func (in *SocketAddressConditionInitParameters) DeepCopy() *SocketAddressConditionInitParameters { if in == nil { return nil } - out := new(RequestURIConditionParameters) + out := new(SocketAddressConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ResponseHeaderActionObservation) DeepCopyInto(out *ResponseHeaderActionObservation) { +func (in *SocketAddressConditionObservation) DeepCopyInto(out *SocketAddressConditionObservation) { *out = *in - if in.HeaderAction != nil { - in, out := &in.HeaderAction, &out.HeaderAction - *out = new(string) - **out = **in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.HeaderName != nil { - in, out := &in.HeaderName, &out.HeaderName - *out = new(string) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.Value != nil { - in, out := &in.Value, &out.Value + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseHeaderActionObservation. -func (in *ResponseHeaderActionObservation) DeepCopy() *ResponseHeaderActionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SocketAddressConditionObservation. +func (in *SocketAddressConditionObservation) DeepCopy() *SocketAddressConditionObservation { if in == nil { return nil } - out := new(ResponseHeaderActionObservation) + out := new(SocketAddressConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ResponseHeaderActionParameters) DeepCopyInto(out *ResponseHeaderActionParameters) { +func (in *SocketAddressConditionParameters) DeepCopyInto(out *SocketAddressConditionParameters) { *out = *in - if in.HeaderAction != nil { - in, out := &in.HeaderAction, &out.HeaderAction - *out = new(string) - **out = **in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.HeaderName != nil { - in, out := &in.HeaderName, &out.HeaderName - *out = new(string) + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) **out = **in } - if in.Value != nil { - in, out := &in.Value, &out.Value + if in.Operator != nil { + in, out := &in.Operator, &out.Operator *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseHeaderActionParameters. -func (in *ResponseHeaderActionParameters) DeepCopy() *ResponseHeaderActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SocketAddressConditionParameters. +func (in *SocketAddressConditionParameters) DeepCopy() *SocketAddressConditionParameters { if in == nil { return nil } - out := new(ResponseHeaderActionParameters) + out := new(SocketAddressConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RouteConfigurationOverrideActionObservation) DeepCopyInto(out *RouteConfigurationOverrideActionObservation) { +func (in *TLSInitParameters) DeepCopyInto(out *TLSInitParameters) { *out = *in - if in.CacheBehavior != nil { - in, out := &in.CacheBehavior, &out.CacheBehavior - *out = new(string) - **out = **in - } - if in.CacheDuration != nil { - in, out := &in.CacheDuration, &out.CacheDuration - *out = new(string) - **out = **in - } - if in.CdnFrontdoorOriginGroupID != nil { - in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + if in.CdnFrontdoorSecretID != nil { + in, out := &in.CdnFrontdoorSecretID, &out.CdnFrontdoorSecretID *out = new(string) **out = **in } - if in.CompressionEnabled != nil { - in, out := &in.CompressionEnabled, &out.CompressionEnabled - *out = new(bool) - **out = **in - } - if in.ForwardingProtocol != nil { - in, out := &in.ForwardingProtocol, &out.ForwardingProtocol + if in.CertificateType != nil { + in, out := &in.CertificateType, &out.CertificateType *out = new(string) **out = **in } - if in.QueryStringCachingBehavior != nil { - in, out := &in.QueryStringCachingBehavior, &out.QueryStringCachingBehavior + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion *out = new(string) **out = **in } - if in.QueryStringParameters != nil { - in, out := &in.QueryStringParameters, &out.QueryStringParameters - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteConfigurationOverrideActionObservation. -func (in *RouteConfigurationOverrideActionObservation) DeepCopy() *RouteConfigurationOverrideActionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSInitParameters. +func (in *TLSInitParameters) DeepCopy() *TLSInitParameters { if in == nil { return nil } - out := new(RouteConfigurationOverrideActionObservation) + out := new(TLSInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RouteConfigurationOverrideActionParameters) DeepCopyInto(out *RouteConfigurationOverrideActionParameters) { +func (in *TLSObservation) DeepCopyInto(out *TLSObservation) { *out = *in - if in.CacheBehavior != nil { - in, out := &in.CacheBehavior, &out.CacheBehavior - *out = new(string) - **out = **in - } - if in.CacheDuration != nil { - in, out := &in.CacheDuration, &out.CacheDuration - *out = new(string) - **out = **in - } - if in.CdnFrontdoorOriginGroupID != nil { - in, out := &in.CdnFrontdoorOriginGroupID, &out.CdnFrontdoorOriginGroupID + if in.CdnFrontdoorSecretID != nil { + in, out := &in.CdnFrontdoorSecretID, &out.CdnFrontdoorSecretID *out = new(string) **out = **in } - if in.CdnFrontdoorOriginGroupIDRef != nil { - in, out := &in.CdnFrontdoorOriginGroupIDRef, &out.CdnFrontdoorOriginGroupIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.CdnFrontdoorOriginGroupIDSelector != nil { - in, out := &in.CdnFrontdoorOriginGroupIDSelector, &out.CdnFrontdoorOriginGroupIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.CompressionEnabled != nil { - in, out := &in.CompressionEnabled, &out.CompressionEnabled - *out = new(bool) - **out = **in - } - if in.ForwardingProtocol != nil { - in, out := &in.ForwardingProtocol, &out.ForwardingProtocol + if in.CertificateType != nil { + in, out := &in.CertificateType, &out.CertificateType *out = new(string) **out = **in } - if in.QueryStringCachingBehavior != nil { - in, out := &in.QueryStringCachingBehavior, &out.QueryStringCachingBehavior + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion *out = new(string) **out = **in } - if in.QueryStringParameters != nil { - in, out := &in.QueryStringParameters, &out.QueryStringParameters - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteConfigurationOverrideActionParameters. -func (in *RouteConfigurationOverrideActionParameters) DeepCopy() *RouteConfigurationOverrideActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSObservation. +func (in *TLSObservation) DeepCopy() *TLSObservation { if in == nil { return nil } - out := new(RouteConfigurationOverrideActionParameters) + out := new(TLSObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SSLProtocolConditionObservation) DeepCopyInto(out *SSLProtocolConditionObservation) { +func (in *TLSParameters) DeepCopyInto(out *TLSParameters) { *out = *in - if in.MatchValues != nil { - in, out := &in.MatchValues, &out.MatchValues - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.CdnFrontdoorSecretID != nil { + in, out := &in.CdnFrontdoorSecretID, &out.CdnFrontdoorSecretID + *out = new(string) + **out = **in } - if in.NegateCondition != nil { - in, out := &in.NegateCondition, &out.NegateCondition - *out = new(bool) + if in.CertificateType != nil { + in, out := &in.CertificateType, &out.CertificateType + *out = new(string) **out = **in } - if in.Operator != nil { - in, out := &in.Operator, &out.Operator + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion *out = new(string) **out = **in } } - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLProtocolConditionObservation. -func (in *SSLProtocolConditionObservation) DeepCopy() *SSLProtocolConditionObservation { + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSParameters. +func (in *TLSParameters) DeepCopy() *TLSParameters { if in == nil { return nil } - out := new(SSLProtocolConditionObservation) + out := new(TLSParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SSLProtocolConditionParameters) DeepCopyInto(out *SSLProtocolConditionParameters) { +func (in *URLFileExtensionConditionInitParameters) DeepCopyInto(out *URLFileExtensionConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -7158,23 +10277,8 @@ func (in *SSLProtocolConditionParameters) DeepCopyInto(out *SSLProtocolCondition *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLProtocolConditionParameters. -func (in *SSLProtocolConditionParameters) DeepCopy() *SSLProtocolConditionParameters { - if in == nil { - return nil - } - out := new(SSLProtocolConditionParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ServerPortConditionObservation) DeepCopyInto(out *ServerPortConditionObservation) { - *out = *in - if in.MatchValues != nil { - in, out := &in.MatchValues, &out.MatchValues + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -7184,30 +10288,20 @@ func (in *ServerPortConditionObservation) DeepCopyInto(out *ServerPortConditionO } } } - if in.NegateCondition != nil { - in, out := &in.NegateCondition, &out.NegateCondition - *out = new(bool) - **out = **in - } - if in.Operator != nil { - in, out := &in.Operator, &out.Operator - *out = new(string) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerPortConditionObservation. -func (in *ServerPortConditionObservation) DeepCopy() *ServerPortConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFileExtensionConditionInitParameters. +func (in *URLFileExtensionConditionInitParameters) DeepCopy() *URLFileExtensionConditionInitParameters { if in == nil { return nil } - out := new(ServerPortConditionObservation) + out := new(URLFileExtensionConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ServerPortConditionParameters) DeepCopyInto(out *ServerPortConditionParameters) { +func (in *URLFileExtensionConditionObservation) DeepCopyInto(out *URLFileExtensionConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -7230,20 +10324,31 @@ func (in *ServerPortConditionParameters) DeepCopyInto(out *ServerPortConditionPa *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerPortConditionParameters. -func (in *ServerPortConditionParameters) DeepCopy() *ServerPortConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFileExtensionConditionObservation. +func (in *URLFileExtensionConditionObservation) DeepCopy() *URLFileExtensionConditionObservation { if in == nil { return nil } - out := new(ServerPortConditionParameters) + out := new(URLFileExtensionConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SocketAddressConditionObservation) DeepCopyInto(out *SocketAddressConditionObservation) { +func (in *URLFileExtensionConditionParameters) DeepCopyInto(out *URLFileExtensionConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -7266,20 +10371,31 @@ func (in *SocketAddressConditionObservation) DeepCopyInto(out *SocketAddressCond *out = new(string) **out = **in } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SocketAddressConditionObservation. -func (in *SocketAddressConditionObservation) DeepCopy() *SocketAddressConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFileExtensionConditionParameters. +func (in *URLFileExtensionConditionParameters) DeepCopy() *URLFileExtensionConditionParameters { if in == nil { return nil } - out := new(SocketAddressConditionObservation) + out := new(URLFileExtensionConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SocketAddressConditionParameters) DeepCopyInto(out *SocketAddressConditionParameters) { +func (in *URLFileNameConditionInitParameters) DeepCopyInto(out *URLFileNameConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -7302,80 +10418,31 @@ func (in *SocketAddressConditionParameters) DeepCopyInto(out *SocketAddressCondi *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SocketAddressConditionParameters. -func (in *SocketAddressConditionParameters) DeepCopy() *SocketAddressConditionParameters { - if in == nil { - return nil - } - out := new(SocketAddressConditionParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TLSObservation) DeepCopyInto(out *TLSObservation) { - *out = *in - if in.CdnFrontdoorSecretID != nil { - in, out := &in.CdnFrontdoorSecretID, &out.CdnFrontdoorSecretID - *out = new(string) - **out = **in - } - if in.CertificateType != nil { - in, out := &in.CertificateType, &out.CertificateType - *out = new(string) - **out = **in - } - if in.MinimumTLSVersion != nil { - in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSObservation. -func (in *TLSObservation) DeepCopy() *TLSObservation { - if in == nil { - return nil - } - out := new(TLSObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TLSParameters) DeepCopyInto(out *TLSParameters) { - *out = *in - if in.CdnFrontdoorSecretID != nil { - in, out := &in.CdnFrontdoorSecretID, &out.CdnFrontdoorSecretID - *out = new(string) - **out = **in - } - if in.CertificateType != nil { - in, out := &in.CertificateType, &out.CertificateType - *out = new(string) - **out = **in - } - if in.MinimumTLSVersion != nil { - in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion - *out = new(string) - **out = **in + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSParameters. -func (in *TLSParameters) DeepCopy() *TLSParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFileNameConditionInitParameters. +func (in *URLFileNameConditionInitParameters) DeepCopy() *URLFileNameConditionInitParameters { if in == nil { return nil } - out := new(TLSParameters) + out := new(URLFileNameConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *URLFileExtensionConditionObservation) DeepCopyInto(out *URLFileExtensionConditionObservation) { +func (in *URLFileNameConditionObservation) DeepCopyInto(out *URLFileNameConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -7411,18 +10478,18 @@ func (in *URLFileExtensionConditionObservation) DeepCopyInto(out *URLFileExtensi } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFileExtensionConditionObservation. -func (in *URLFileExtensionConditionObservation) DeepCopy() *URLFileExtensionConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFileNameConditionObservation. +func (in *URLFileNameConditionObservation) DeepCopy() *URLFileNameConditionObservation { if in == nil { return nil } - out := new(URLFileExtensionConditionObservation) + out := new(URLFileNameConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *URLFileExtensionConditionParameters) DeepCopyInto(out *URLFileExtensionConditionParameters) { +func (in *URLFileNameConditionParameters) DeepCopyInto(out *URLFileNameConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -7458,18 +10525,18 @@ func (in *URLFileExtensionConditionParameters) DeepCopyInto(out *URLFileExtensio } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFileExtensionConditionParameters. -func (in *URLFileExtensionConditionParameters) DeepCopy() *URLFileExtensionConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFileNameConditionParameters. +func (in *URLFileNameConditionParameters) DeepCopy() *URLFileNameConditionParameters { if in == nil { return nil } - out := new(URLFileExtensionConditionParameters) + out := new(URLFileNameConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *URLFileNameConditionObservation) DeepCopyInto(out *URLFileNameConditionObservation) { +func (in *URLFilenameConditionInitParameters) DeepCopyInto(out *URLFilenameConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -7505,18 +10572,18 @@ func (in *URLFileNameConditionObservation) DeepCopyInto(out *URLFileNameConditio } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFileNameConditionObservation. -func (in *URLFileNameConditionObservation) DeepCopy() *URLFileNameConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFilenameConditionInitParameters. +func (in *URLFilenameConditionInitParameters) DeepCopy() *URLFilenameConditionInitParameters { if in == nil { return nil } - out := new(URLFileNameConditionObservation) + out := new(URLFilenameConditionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *URLFileNameConditionParameters) DeepCopyInto(out *URLFileNameConditionParameters) { +func (in *URLFilenameConditionObservation) DeepCopyInto(out *URLFilenameConditionObservation) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -7552,18 +10619,18 @@ func (in *URLFileNameConditionParameters) DeepCopyInto(out *URLFileNameCondition } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFileNameConditionParameters. -func (in *URLFileNameConditionParameters) DeepCopy() *URLFileNameConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFilenameConditionObservation. +func (in *URLFilenameConditionObservation) DeepCopy() *URLFilenameConditionObservation { if in == nil { return nil } - out := new(URLFileNameConditionParameters) + out := new(URLFilenameConditionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *URLFilenameConditionObservation) DeepCopyInto(out *URLFilenameConditionObservation) { +func (in *URLFilenameConditionParameters) DeepCopyInto(out *URLFilenameConditionParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -7599,18 +10666,18 @@ func (in *URLFilenameConditionObservation) DeepCopyInto(out *URLFilenameConditio } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFilenameConditionObservation. -func (in *URLFilenameConditionObservation) DeepCopy() *URLFilenameConditionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFilenameConditionParameters. +func (in *URLFilenameConditionParameters) DeepCopy() *URLFilenameConditionParameters { if in == nil { return nil } - out := new(URLFilenameConditionObservation) + out := new(URLFilenameConditionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *URLFilenameConditionParameters) DeepCopyInto(out *URLFilenameConditionParameters) { +func (in *URLPathConditionInitParameters) DeepCopyInto(out *URLPathConditionInitParameters) { *out = *in if in.MatchValues != nil { in, out := &in.MatchValues, &out.MatchValues @@ -7646,12 +10713,12 @@ func (in *URLFilenameConditionParameters) DeepCopyInto(out *URLFilenameCondition } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLFilenameConditionParameters. -func (in *URLFilenameConditionParameters) DeepCopy() *URLFilenameConditionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLPathConditionInitParameters. +func (in *URLPathConditionInitParameters) DeepCopy() *URLPathConditionInitParameters { if in == nil { return nil } - out := new(URLFilenameConditionParameters) + out := new(URLPathConditionInitParameters) in.DeepCopyInto(out) return out } @@ -7750,6 +10817,51 @@ func (in *URLPathConditionParameters) DeepCopy() *URLPathConditionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *URLRedirectActionInitParameters) DeepCopyInto(out *URLRedirectActionInitParameters) { + *out = *in + if in.Fragment != nil { + in, out := &in.Fragment, &out.Fragment + *out = new(string) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.QueryString != nil { + in, out := &in.QueryString, &out.QueryString + *out = new(string) + **out = **in + } + if in.RedirectType != nil { + in, out := &in.RedirectType, &out.RedirectType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLRedirectActionInitParameters. +func (in *URLRedirectActionInitParameters) DeepCopy() *URLRedirectActionInitParameters { + if in == nil { + return nil + } + out := new(URLRedirectActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *URLRedirectActionObservation) DeepCopyInto(out *URLRedirectActionObservation) { *out = *in @@ -7840,6 +10952,36 @@ func (in *URLRedirectActionParameters) DeepCopy() *URLRedirectActionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *URLRewriteActionInitParameters) DeepCopyInto(out *URLRewriteActionInitParameters) { + *out = *in + if in.Destination != nil { + in, out := &in.Destination, &out.Destination + *out = new(string) + **out = **in + } + if in.PreserveUnmatchedPath != nil { + in, out := &in.PreserveUnmatchedPath, &out.PreserveUnmatchedPath + *out = new(bool) + **out = **in + } + if in.SourcePattern != nil { + in, out := &in.SourcePattern, &out.SourcePattern + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLRewriteActionInitParameters. +func (in *URLRewriteActionInitParameters) DeepCopy() *URLRewriteActionInitParameters { + if in == nil { + return nil + } + out := new(URLRewriteActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *URLRewriteActionObservation) DeepCopyInto(out *URLRewriteActionObservation) { *out = *in diff --git a/apis/cdn/v1beta1/zz_generated.managed.go b/apis/cdn/v1beta1/zz_generated.managed.go index ef0c8432e..087fc9b67 100644 --- a/apis/cdn/v1beta1/zz_generated.managed.go +++ b/apis/cdn/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Endpoint) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Endpoint. -func (mg *Endpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Endpoint. +func (mg *Endpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Endpoint. @@ -55,9 +55,9 @@ func (mg *Endpoint) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Endpoint. -func (mg *Endpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Endpoint. +func (mg *Endpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Endpoint. @@ -93,9 +93,9 @@ func (mg *FrontdoorCustomDomain) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorCustomDomain. -func (mg *FrontdoorCustomDomain) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorCustomDomain. +func (mg *FrontdoorCustomDomain) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorCustomDomain. @@ -131,9 +131,9 @@ func (mg *FrontdoorCustomDomain) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorCustomDomain. -func (mg *FrontdoorCustomDomain) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorCustomDomain. +func (mg *FrontdoorCustomDomain) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorCustomDomain. @@ -169,9 +169,9 @@ func (mg *FrontdoorCustomDomainAssociation) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorCustomDomainAssociation. -func (mg *FrontdoorCustomDomainAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorCustomDomainAssociation. +func (mg *FrontdoorCustomDomainAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorCustomDomainAssociation. @@ -207,9 +207,9 @@ func (mg *FrontdoorCustomDomainAssociation) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorCustomDomainAssociation. -func (mg *FrontdoorCustomDomainAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorCustomDomainAssociation. +func (mg *FrontdoorCustomDomainAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorCustomDomainAssociation. @@ -245,9 +245,9 @@ func (mg *FrontdoorEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorEndpoint. -func (mg *FrontdoorEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorEndpoint. +func (mg *FrontdoorEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorEndpoint. @@ -283,9 +283,9 @@ func (mg *FrontdoorEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorEndpoint. -func (mg *FrontdoorEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorEndpoint. +func (mg *FrontdoorEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorEndpoint. @@ -321,9 +321,9 @@ func (mg *FrontdoorOrigin) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorOrigin. -func (mg *FrontdoorOrigin) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorOrigin. +func (mg *FrontdoorOrigin) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorOrigin. @@ -359,9 +359,9 @@ func (mg *FrontdoorOrigin) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorOrigin. -func (mg *FrontdoorOrigin) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorOrigin. +func (mg *FrontdoorOrigin) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorOrigin. @@ -397,9 +397,9 @@ func (mg *FrontdoorOriginGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorOriginGroup. -func (mg *FrontdoorOriginGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorOriginGroup. +func (mg *FrontdoorOriginGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorOriginGroup. @@ -435,9 +435,9 @@ func (mg *FrontdoorOriginGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorOriginGroup. -func (mg *FrontdoorOriginGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorOriginGroup. +func (mg *FrontdoorOriginGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorOriginGroup. @@ -473,9 +473,9 @@ func (mg *FrontdoorProfile) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorProfile. -func (mg *FrontdoorProfile) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorProfile. +func (mg *FrontdoorProfile) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorProfile. @@ -511,9 +511,9 @@ func (mg *FrontdoorProfile) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorProfile. -func (mg *FrontdoorProfile) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorProfile. +func (mg *FrontdoorProfile) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorProfile. @@ -549,9 +549,9 @@ func (mg *FrontdoorRoute) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorRoute. -func (mg *FrontdoorRoute) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorRoute. +func (mg *FrontdoorRoute) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorRoute. @@ -587,9 +587,9 @@ func (mg *FrontdoorRoute) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorRoute. -func (mg *FrontdoorRoute) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorRoute. +func (mg *FrontdoorRoute) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorRoute. @@ -625,9 +625,9 @@ func (mg *FrontdoorRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorRule. -func (mg *FrontdoorRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorRule. +func (mg *FrontdoorRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorRule. @@ -663,9 +663,9 @@ func (mg *FrontdoorRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorRule. -func (mg *FrontdoorRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorRule. +func (mg *FrontdoorRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorRule. @@ -701,9 +701,9 @@ func (mg *FrontdoorRuleSet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorRuleSet. -func (mg *FrontdoorRuleSet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorRuleSet. +func (mg *FrontdoorRuleSet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorRuleSet. @@ -739,9 +739,9 @@ func (mg *FrontdoorRuleSet) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorRuleSet. -func (mg *FrontdoorRuleSet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorRuleSet. +func (mg *FrontdoorRuleSet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorRuleSet. @@ -777,9 +777,9 @@ func (mg *Profile) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Profile. -func (mg *Profile) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Profile. +func (mg *Profile) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Profile. @@ -815,9 +815,9 @@ func (mg *Profile) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Profile. -func (mg *Profile) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Profile. +func (mg *Profile) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Profile. diff --git a/apis/cdn/v1beta1/zz_generated_terraformed.go b/apis/cdn/v1beta1/zz_generated_terraformed.go index 69ff9aba4..2bc5ba1a0 100755 --- a/apis/cdn/v1beta1/zz_generated_terraformed.go +++ b/apis/cdn/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Endpoint) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Endpoint +func (tr *Endpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Endpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Endpoint) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *FrontdoorCustomDomain) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorCustomDomain +func (tr *FrontdoorCustomDomain) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorCustomDomain using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorCustomDomain) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *FrontdoorCustomDomainAssociation) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorCustomDomainAssociation +func (tr *FrontdoorCustomDomainAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorCustomDomainAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorCustomDomainAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *FrontdoorEndpoint) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorEndpoint +func (tr *FrontdoorEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorEndpoint) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *FrontdoorOrigin) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorOrigin +func (tr *FrontdoorOrigin) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorOrigin using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorOrigin) LateInitialize(attrs []byte) (bool, error) { @@ -440,6 +490,16 @@ func (tr *FrontdoorOriginGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorOriginGroup +func (tr *FrontdoorOriginGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorOriginGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorOriginGroup) LateInitialize(attrs []byte) (bool, error) { @@ -514,6 +574,16 @@ func (tr *FrontdoorProfile) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorProfile +func (tr *FrontdoorProfile) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorProfile using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorProfile) LateInitialize(attrs []byte) (bool, error) { @@ -588,6 +658,16 @@ func (tr *FrontdoorRoute) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorRoute +func (tr *FrontdoorRoute) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorRoute using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorRoute) LateInitialize(attrs []byte) (bool, error) { @@ -662,6 +742,16 @@ func (tr *FrontdoorRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorRule +func (tr *FrontdoorRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorRule) LateInitialize(attrs []byte) (bool, error) { @@ -736,6 +826,16 @@ func (tr *FrontdoorRuleSet) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorRuleSet +func (tr *FrontdoorRuleSet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorRuleSet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorRuleSet) LateInitialize(attrs []byte) (bool, error) { @@ -810,6 +910,16 @@ func (tr *Profile) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Profile +func (tr *Profile) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Profile using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Profile) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/cdn/v1beta1/zz_profile_types.go b/apis/cdn/v1beta1/zz_profile_types.go index ecf842a51..881552369 100755 --- a/apis/cdn/v1beta1/zz_profile_types.go +++ b/apis/cdn/v1beta1/zz_profile_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ProfileInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The pricing related information of current CDN profile. Accepted values are Standard_Akamai, Standard_ChinaCdn, Standard_Microsoft, Standard_Verizon or Premium_Verizon. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ProfileObservation struct { // The ID of the CDN Profile. @@ -63,6 +75,18 @@ type ProfileParameters struct { type ProfileSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ProfileParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ProfileInitParameters `json:"initProvider,omitempty"` } // ProfileStatus defines the observed state of Profile. @@ -83,8 +107,8 @@ type ProfileStatus struct { type Profile struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec ProfileSpec `json:"spec"` Status ProfileStatus `json:"status,omitempty"` } diff --git a/apis/certificateregistration/v1beta1/zz_appservicecertificateorder_types.go b/apis/certificateregistration/v1beta1/zz_appservicecertificateorder_types.go index e1e2b3171..910d9c375 100755 --- a/apis/certificateregistration/v1beta1/zz_appservicecertificateorder_types.go +++ b/apis/certificateregistration/v1beta1/zz_appservicecertificateorder_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppServiceCertificateOrderInitParameters struct { + + // true if the certificate should be automatically renewed when it expires; otherwise, false. Defaults to true. + AutoRenew *bool `json:"autoRenew,omitempty" tf:"auto_renew,omitempty"` + + // Last CSR that was created for this order. + Csr *string `json:"csr,omitempty" tf:"csr,omitempty"` + + // The Distinguished Name for the App Service Certificate Order. + DistinguishedName *string `json:"distinguishedName,omitempty" tf:"distinguished_name,omitempty"` + + // Certificate key size. Defaults to 2048. + KeySize *float64 `json:"keySize,omitempty" tf:"key_size,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. Currently the only valid value is global. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Certificate product type, such as Standard or WildCard. + ProductType *string `json:"productType,omitempty" tf:"product_type,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Duration in years (must be between 1 and 3). Defaults to 1. + ValidityInYears *float64 `json:"validityInYears,omitempty" tf:"validity_in_years,omitempty"` +} + type AppServiceCertificateOrderObservation struct { // Reasons why App Service Certificate is not renewable at the current moment. @@ -121,6 +148,9 @@ type AppServiceCertificateOrderParameters struct { ValidityInYears *float64 `json:"validityInYears,omitempty" tf:"validity_in_years,omitempty"` } +type CertificatesInitParameters struct { +} + type CertificatesObservation struct { // The name of the App Service Certificate. @@ -143,6 +173,18 @@ type CertificatesParameters struct { type AppServiceCertificateOrderSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppServiceCertificateOrderParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppServiceCertificateOrderInitParameters `json:"initProvider,omitempty"` } // AppServiceCertificateOrderStatus defines the observed state of AppServiceCertificateOrder. @@ -163,7 +205,7 @@ type AppServiceCertificateOrderStatus struct { type AppServiceCertificateOrder struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec AppServiceCertificateOrderSpec `json:"spec"` Status AppServiceCertificateOrderStatus `json:"status,omitempty"` } diff --git a/apis/certificateregistration/v1beta1/zz_generated.deepcopy.go b/apis/certificateregistration/v1beta1/zz_generated.deepcopy.go index d8411488e..26ef9bad7 100644 --- a/apis/certificateregistration/v1beta1/zz_generated.deepcopy.go +++ b/apis/certificateregistration/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,71 @@ func (in *AppServiceCertificateOrder) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppServiceCertificateOrderInitParameters) DeepCopyInto(out *AppServiceCertificateOrderInitParameters) { + *out = *in + if in.AutoRenew != nil { + in, out := &in.AutoRenew, &out.AutoRenew + *out = new(bool) + **out = **in + } + if in.Csr != nil { + in, out := &in.Csr, &out.Csr + *out = new(string) + **out = **in + } + if in.DistinguishedName != nil { + in, out := &in.DistinguishedName, &out.DistinguishedName + *out = new(string) + **out = **in + } + if in.KeySize != nil { + in, out := &in.KeySize, &out.KeySize + *out = new(float64) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ProductType != nil { + in, out := &in.ProductType, &out.ProductType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ValidityInYears != nil { + in, out := &in.ValidityInYears, &out.ValidityInYears + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppServiceCertificateOrderInitParameters. +func (in *AppServiceCertificateOrderInitParameters) DeepCopy() *AppServiceCertificateOrderInitParameters { + if in == nil { + return nil + } + out := new(AppServiceCertificateOrderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppServiceCertificateOrderList) DeepCopyInto(out *AppServiceCertificateOrderList) { *out = *in @@ -286,6 +351,7 @@ func (in *AppServiceCertificateOrderSpec) DeepCopyInto(out *AppServiceCertificat *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppServiceCertificateOrderSpec. @@ -315,6 +381,21 @@ func (in *AppServiceCertificateOrderStatus) DeepCopy() *AppServiceCertificateOrd return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificatesInitParameters) DeepCopyInto(out *CertificatesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificatesInitParameters. +func (in *CertificatesInitParameters) DeepCopy() *CertificatesInitParameters { + if in == nil { + return nil + } + out := new(CertificatesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificatesObservation) DeepCopyInto(out *CertificatesObservation) { *out = *in diff --git a/apis/certificateregistration/v1beta1/zz_generated.managed.go b/apis/certificateregistration/v1beta1/zz_generated.managed.go index 9db0ed146..4ba64f012 100644 --- a/apis/certificateregistration/v1beta1/zz_generated.managed.go +++ b/apis/certificateregistration/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AppServiceCertificateOrder) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppServiceCertificateOrder. -func (mg *AppServiceCertificateOrder) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppServiceCertificateOrder. +func (mg *AppServiceCertificateOrder) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppServiceCertificateOrder. @@ -55,9 +55,9 @@ func (mg *AppServiceCertificateOrder) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppServiceCertificateOrder. -func (mg *AppServiceCertificateOrder) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppServiceCertificateOrder. +func (mg *AppServiceCertificateOrder) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppServiceCertificateOrder. diff --git a/apis/certificateregistration/v1beta1/zz_generated_terraformed.go b/apis/certificateregistration/v1beta1/zz_generated_terraformed.go index be47d5611..6eed98f62 100755 --- a/apis/certificateregistration/v1beta1/zz_generated_terraformed.go +++ b/apis/certificateregistration/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *AppServiceCertificateOrder) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppServiceCertificateOrder +func (tr *AppServiceCertificateOrder) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppServiceCertificateOrder using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppServiceCertificateOrder) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/cognitiveservices/v1beta1/zz_account_types.go b/apis/cognitiveservices/v1beta1/zz_account_types.go index acac17939..2aeda60e7 100755 --- a/apis/cognitiveservices/v1beta1/zz_account_types.go +++ b/apis/cognitiveservices/v1beta1/zz_account_types.go @@ -13,6 +13,69 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccountInitParameters struct { + + // If kind is TextAnalytics this specifies the ID of the Search service. + CustomQuestionAnsweringSearchServiceID *string `json:"customQuestionAnsweringSearchServiceId,omitempty" tf:"custom_question_answering_search_service_id,omitempty"` + + // The subdomain name used for token-based authentication. Changing this forces a new resource to be created. + CustomSubdomainName *string `json:"customSubdomainName,omitempty" tf:"custom_subdomain_name,omitempty"` + + // A customer_managed_key block as documented below. + CustomerManagedKey []CustomerManagedKeyInitParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` + + // Whether to enable the dynamic throttling for this Cognitive Service Account. + DynamicThrottlingEnabled *bool `json:"dynamicThrottlingEnabled,omitempty" tf:"dynamic_throttling_enabled,omitempty"` + + // List of FQDNs allowed for the Cognitive Account. + Fqdns []*string `json:"fqdns,omitempty" tf:"fqdns,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the type of Cognitive Service Account that should be created. Possible values are Academic, AnomalyDetector, Bing.Autosuggest, Bing.Autosuggest.v7, Bing.CustomSearch, Bing.Search, Bing.Search.v7, Bing.Speech, Bing.SpellCheck, Bing.SpellCheck.v7, CognitiveServices, ComputerVision, ContentModerator, CustomSpeech, CustomVision.Prediction, CustomVision.Training, Emotion, Face, FormRecognizer, ImmersiveReader, LUIS, LUIS.Authoring, MetricsAdvisor, OpenAI, Personalizer, QnAMaker, Recommendations, SpeakerRecognition, Speech, SpeechServices, SpeechTranslation, TextAnalytics, TextTranslation and WebLM. Changing this forces a new resource to be created. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // Whether local authentication methods is enabled for the Cognitive Account. Defaults to true. + LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The Azure AD Client ID (Application ID). This attribute is only set when kind is MetricsAdvisor. Changing this forces a new resource to be created. + MetricsAdvisorAADClientID *string `json:"metricsAdvisorAadClientId,omitempty" tf:"metrics_advisor_aad_client_id,omitempty"` + + // The Azure AD Tenant ID. This attribute is only set when kind is MetricsAdvisor. Changing this forces a new resource to be created. + MetricsAdvisorAADTenantID *string `json:"metricsAdvisorAadTenantId,omitempty" tf:"metrics_advisor_aad_tenant_id,omitempty"` + + // The super user of Metrics Advisor. This attribute is only set when kind is MetricsAdvisor. Changing this forces a new resource to be created. + MetricsAdvisorSuperUserName *string `json:"metricsAdvisorSuperUserName,omitempty" tf:"metrics_advisor_super_user_name,omitempty"` + + // The website name of Metrics Advisor. This attribute is only set when kind is MetricsAdvisor. Changing this forces a new resource to be created. + MetricsAdvisorWebsiteName *string `json:"metricsAdvisorWebsiteName,omitempty" tf:"metrics_advisor_website_name,omitempty"` + + // A network_acls block as defined below. + NetworkAcls []NetworkAclsInitParameters `json:"networkAcls,omitempty" tf:"network_acls,omitempty"` + + // Whether outbound network access is restricted for the Cognitive Account. Defaults to false. + OutboundNetworkAccessRestricted *bool `json:"outboundNetworkAccessRestricted,omitempty" tf:"outbound_network_access_restricted,omitempty"` + + // Whether public network access is allowed for the Cognitive Account. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A URL to link a QnAMaker cognitive account to a QnA runtime. + QnaRuntimeEndpoint *string `json:"qnaRuntimeEndpoint,omitempty" tf:"qna_runtime_endpoint,omitempty"` + + // Specifies the SKU Name for this Cognitive Service Account. Possible values are F0, F1, S0, S, S1, S2, S3, S4, S5, S6, P0, P1, P2, E0 and DC0. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A storage block as defined below. + Storage []StorageInitParameters `json:"storage,omitempty" tf:"storage,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type AccountObservation struct { // If kind is TextAnalytics this specifies the ID of the Search service. @@ -185,6 +248,15 @@ type AccountParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type CustomerManagedKeyInitParameters struct { + + // The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account. + IdentityClientID *string `json:"identityClientId,omitempty" tf:"identity_client_id,omitempty"` + + // The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` +} + type CustomerManagedKeyObservation struct { // The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account. @@ -201,8 +273,17 @@ type CustomerManagedKeyParameters struct { IdentityClientID *string `json:"identityClientId,omitempty" tf:"identity_client_id,omitempty"` // The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account. - // +kubebuilder:validation:Required - KeyVaultKeyID *string `json:"keyVaultKeyId" tf:"key_vault_key_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` +} + +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Cognitive Account. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Cognitive Account. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type IdentityObservation struct { @@ -227,8 +308,20 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Cognitive Account. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type NetworkAclsInitParameters struct { + + // The Default Action to use when no rules match from ip_rules / virtual_network_rules. Possible values are Allow and Deny. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + + // One or more IP Addresses, or CIDR Blocks which should be able to access the Cognitive Account. + IPRules []*string `json:"ipRules,omitempty" tf:"ip_rules,omitempty"` + + // A virtual_network_rules block as defined below. + VirtualNetworkRules []VirtualNetworkRulesInitParameters `json:"virtualNetworkRules,omitempty" tf:"virtual_network_rules,omitempty"` } type NetworkAclsObservation struct { @@ -246,8 +339,8 @@ type NetworkAclsObservation struct { type NetworkAclsParameters struct { // The Default Action to use when no rules match from ip_rules / virtual_network_rules. Possible values are Allow and Deny. - // +kubebuilder:validation:Required - DefaultAction *string `json:"defaultAction" tf:"default_action,omitempty"` + // +kubebuilder:validation:Optional + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // One or more IP Addresses, or CIDR Blocks which should be able to access the Cognitive Account. // +kubebuilder:validation:Optional @@ -258,6 +351,15 @@ type NetworkAclsParameters struct { VirtualNetworkRules []VirtualNetworkRulesParameters `json:"virtualNetworkRules,omitempty" tf:"virtual_network_rules,omitempty"` } +type StorageInitParameters struct { + + // The client ID of the managed identity associated with the storage resource. + IdentityClientID *string `json:"identityClientId,omitempty" tf:"identity_client_id,omitempty"` + + // Full resource id of a Microsoft.Storage resource. + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` +} + type StorageObservation struct { // The client ID of the managed identity associated with the storage resource. @@ -274,8 +376,14 @@ type StorageParameters struct { IdentityClientID *string `json:"identityClientId,omitempty" tf:"identity_client_id,omitempty"` // Full resource id of a Microsoft.Storage resource. - // +kubebuilder:validation:Required - StorageAccountID *string `json:"storageAccountId" tf:"storage_account_id,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` +} + +type VirtualNetworkRulesInitParameters struct { + + // Whether ignore missing vnet service endpoint or not. Default to false. + IgnoreMissingVnetServiceEndpoint *bool `json:"ignoreMissingVnetServiceEndpoint,omitempty" tf:"ignore_missing_vnet_service_endpoint,omitempty"` } type VirtualNetworkRulesObservation struct { @@ -312,6 +420,18 @@ type VirtualNetworkRulesParameters struct { type AccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccountInitParameters `json:"initProvider,omitempty"` } // AccountStatus defines the observed state of Account. @@ -332,9 +452,9 @@ type AccountStatus struct { type Account struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.kind)",message="kind is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.kind) || has(self.initProvider.kind)",message="kind is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec AccountSpec `json:"spec"` Status AccountStatus `json:"status,omitempty"` } diff --git a/apis/cognitiveservices/v1beta1/zz_generated.deepcopy.go b/apis/cognitiveservices/v1beta1/zz_generated.deepcopy.go index e465d0570..ab8db8048 100644 --- a/apis/cognitiveservices/v1beta1/zz_generated.deepcopy.go +++ b/apis/cognitiveservices/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,145 @@ func (in *Account) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountInitParameters) DeepCopyInto(out *AccountInitParameters) { + *out = *in + if in.CustomQuestionAnsweringSearchServiceID != nil { + in, out := &in.CustomQuestionAnsweringSearchServiceID, &out.CustomQuestionAnsweringSearchServiceID + *out = new(string) + **out = **in + } + if in.CustomSubdomainName != nil { + in, out := &in.CustomSubdomainName, &out.CustomSubdomainName + *out = new(string) + **out = **in + } + if in.CustomerManagedKey != nil { + in, out := &in.CustomerManagedKey, &out.CustomerManagedKey + *out = make([]CustomerManagedKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DynamicThrottlingEnabled != nil { + in, out := &in.DynamicThrottlingEnabled, &out.DynamicThrottlingEnabled + *out = new(bool) + **out = **in + } + if in.Fqdns != nil { + in, out := &in.Fqdns, &out.Fqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.LocalAuthEnabled != nil { + in, out := &in.LocalAuthEnabled, &out.LocalAuthEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MetricsAdvisorAADClientID != nil { + in, out := &in.MetricsAdvisorAADClientID, &out.MetricsAdvisorAADClientID + *out = new(string) + **out = **in + } + if in.MetricsAdvisorAADTenantID != nil { + in, out := &in.MetricsAdvisorAADTenantID, &out.MetricsAdvisorAADTenantID + *out = new(string) + **out = **in + } + if in.MetricsAdvisorSuperUserName != nil { + in, out := &in.MetricsAdvisorSuperUserName, &out.MetricsAdvisorSuperUserName + *out = new(string) + **out = **in + } + if in.MetricsAdvisorWebsiteName != nil { + in, out := &in.MetricsAdvisorWebsiteName, &out.MetricsAdvisorWebsiteName + *out = new(string) + **out = **in + } + if in.NetworkAcls != nil { + in, out := &in.NetworkAcls, &out.NetworkAcls + *out = make([]NetworkAclsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OutboundNetworkAccessRestricted != nil { + in, out := &in.OutboundNetworkAccessRestricted, &out.OutboundNetworkAccessRestricted + *out = new(bool) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.QnaRuntimeEndpoint != nil { + in, out := &in.QnaRuntimeEndpoint, &out.QnaRuntimeEndpoint + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Storage != nil { + in, out := &in.Storage, &out.Storage + *out = make([]StorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountInitParameters. +func (in *AccountInitParameters) DeepCopy() *AccountInitParameters { + if in == nil { + return nil + } + out := new(AccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountList) DeepCopyInto(out *AccountList) { *out = *in @@ -391,6 +530,7 @@ func (in *AccountSpec) DeepCopyInto(out *AccountSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountSpec. @@ -420,6 +560,31 @@ func (in *AccountStatus) DeepCopy() *AccountStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomerManagedKeyInitParameters) DeepCopyInto(out *CustomerManagedKeyInitParameters) { + *out = *in + if in.IdentityClientID != nil { + in, out := &in.IdentityClientID, &out.IdentityClientID + *out = new(string) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomerManagedKeyInitParameters. +func (in *CustomerManagedKeyInitParameters) DeepCopy() *CustomerManagedKeyInitParameters { + if in == nil { + return nil + } + out := new(CustomerManagedKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomerManagedKeyObservation) DeepCopyInto(out *CustomerManagedKeyObservation) { *out = *in @@ -470,6 +635,37 @@ func (in *CustomerManagedKeyParameters) DeepCopy() *CustomerManagedKeyParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -542,6 +738,44 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkAclsInitParameters) DeepCopyInto(out *NetworkAclsInitParameters) { + *out = *in + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.IPRules != nil { + in, out := &in.IPRules, &out.IPRules + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.VirtualNetworkRules != nil { + in, out := &in.VirtualNetworkRules, &out.VirtualNetworkRules + *out = make([]VirtualNetworkRulesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkAclsInitParameters. +func (in *NetworkAclsInitParameters) DeepCopy() *NetworkAclsInitParameters { + if in == nil { + return nil + } + out := new(NetworkAclsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkAclsObservation) DeepCopyInto(out *NetworkAclsObservation) { *out = *in @@ -618,6 +852,31 @@ func (in *NetworkAclsParameters) DeepCopy() *NetworkAclsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageInitParameters) DeepCopyInto(out *StorageInitParameters) { + *out = *in + if in.IdentityClientID != nil { + in, out := &in.IdentityClientID, &out.IdentityClientID + *out = new(string) + **out = **in + } + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageInitParameters. +func (in *StorageInitParameters) DeepCopy() *StorageInitParameters { + if in == nil { + return nil + } + out := new(StorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageObservation) DeepCopyInto(out *StorageObservation) { *out = *in @@ -668,6 +927,26 @@ func (in *StorageParameters) DeepCopy() *StorageParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkRulesInitParameters) DeepCopyInto(out *VirtualNetworkRulesInitParameters) { + *out = *in + if in.IgnoreMissingVnetServiceEndpoint != nil { + in, out := &in.IgnoreMissingVnetServiceEndpoint, &out.IgnoreMissingVnetServiceEndpoint + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkRulesInitParameters. +func (in *VirtualNetworkRulesInitParameters) DeepCopy() *VirtualNetworkRulesInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkRulesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkRulesObservation) DeepCopyInto(out *VirtualNetworkRulesObservation) { *out = *in diff --git a/apis/cognitiveservices/v1beta1/zz_generated.managed.go b/apis/cognitiveservices/v1beta1/zz_generated.managed.go index 2e1546880..353e547e7 100644 --- a/apis/cognitiveservices/v1beta1/zz_generated.managed.go +++ b/apis/cognitiveservices/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Account) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Account. -func (mg *Account) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Account. +func (mg *Account) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Account. @@ -55,9 +55,9 @@ func (mg *Account) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Account. -func (mg *Account) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Account. +func (mg *Account) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Account. diff --git a/apis/cognitiveservices/v1beta1/zz_generated_terraformed.go b/apis/cognitiveservices/v1beta1/zz_generated_terraformed.go index 404be3b82..9f669e10f 100755 --- a/apis/cognitiveservices/v1beta1/zz_generated_terraformed.go +++ b/apis/cognitiveservices/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Account) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Account +func (tr *Account) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Account using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Account) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/communication/v1beta1/zz_generated.deepcopy.go b/apis/communication/v1beta1/zz_generated.deepcopy.go index d88edccde..7565d5b09 100644 --- a/apis/communication/v1beta1/zz_generated.deepcopy.go +++ b/apis/communication/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,41 @@ func (in *Service) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceInitParameters) DeepCopyInto(out *ServiceInitParameters) { + *out = *in + if in.DataLocation != nil { + in, out := &in.DataLocation, &out.DataLocation + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceInitParameters. +func (in *ServiceInitParameters) DeepCopy() *ServiceInitParameters { + if in == nil { + return nil + } + out := new(ServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServiceList) DeepCopyInto(out *ServiceList) { *out = *in @@ -193,6 +228,7 @@ func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSpec. diff --git a/apis/communication/v1beta1/zz_generated.managed.go b/apis/communication/v1beta1/zz_generated.managed.go index 4d41ac76d..6f5419f5a 100644 --- a/apis/communication/v1beta1/zz_generated.managed.go +++ b/apis/communication/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Service) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Service. -func (mg *Service) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Service. +func (mg *Service) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Service. @@ -55,9 +55,9 @@ func (mg *Service) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Service. -func (mg *Service) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Service. +func (mg *Service) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Service. diff --git a/apis/communication/v1beta1/zz_generated_terraformed.go b/apis/communication/v1beta1/zz_generated_terraformed.go index fedb44047..2174b9ef5 100755 --- a/apis/communication/v1beta1/zz_generated_terraformed.go +++ b/apis/communication/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Service) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Service +func (tr *Service) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Service using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Service) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/communication/v1beta1/zz_service_types.go b/apis/communication/v1beta1/zz_service_types.go index a7f402c23..563b3b5fc 100755 --- a/apis/communication/v1beta1/zz_service_types.go +++ b/apis/communication/v1beta1/zz_service_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ServiceInitParameters struct { + + // The location where the Communication service stores its data at rest. Possible values are Africa, Asia Pacific, Australia, Brazil, Canada, Europe, France, Germany, India, Japan, Korea, Norway, Switzerland, UAE, UK and United States. Defaults to United States. Changing this forces a new Communication Service to be created. + DataLocation *string `json:"dataLocation,omitempty" tf:"data_location,omitempty"` + + // A mapping of tags which should be assigned to the Communication Service. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ServiceObservation struct { // The location where the Communication service stores its data at rest. Possible values are Africa, Asia Pacific, Australia, Brazil, Canada, Europe, France, Germany, India, Japan, Korea, Norway, Switzerland, UAE, UK and United States. Defaults to United States. Changing this forces a new Communication Service to be created. @@ -68,6 +77,18 @@ type ServiceParameters struct { type ServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServiceInitParameters `json:"initProvider,omitempty"` } // ServiceStatus defines the observed state of Service. diff --git a/apis/compute/v1beta1/zz_availabilityset_types.go b/apis/compute/v1beta1/zz_availabilityset_types.go index 38fcb2756..93b3550c6 100755 --- a/apis/compute/v1beta1/zz_availabilityset_types.go +++ b/apis/compute/v1beta1/zz_availabilityset_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AvailabilitySetInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is true. Changing this forces a new resource to be created. + Managed *bool `json:"managed,omitempty" tf:"managed,omitempty"` + + // Specifies the number of fault domains that are used. Defaults to 3. Changing this forces a new resource to be created. + PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"` + + // Specifies the number of update domains that are used. Defaults to 5. Changing this forces a new resource to be created. + PlatformUpdateDomainCount *float64 `json:"platformUpdateDomainCount,omitempty" tf:"platform_update_domain_count,omitempty"` + + // The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created. + ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type AvailabilitySetObservation struct { // The ID of the Availability Set. @@ -84,6 +105,18 @@ type AvailabilitySetParameters struct { type AvailabilitySetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AvailabilitySetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AvailabilitySetInitParameters `json:"initProvider,omitempty"` } // AvailabilitySetStatus defines the observed state of AvailabilitySet. @@ -104,7 +137,7 @@ type AvailabilitySetStatus struct { type AvailabilitySet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec AvailabilitySetSpec `json:"spec"` Status AvailabilitySetStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_capacityreservation_types.go b/apis/compute/v1beta1/zz_capacityreservation_types.go index f45db7125..3ab6a20d9 100755 --- a/apis/compute/v1beta1/zz_capacityreservation_types.go +++ b/apis/compute/v1beta1/zz_capacityreservation_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CapacityReservationInitParameters struct { + + // A sku block as defined below. + Sku []SkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the Availability Zone for this Capacity Reservation. Changing this forces a new resource to be created. + Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` +} + type CapacityReservationObservation struct { // The ID of the Capacity Reservation Group where the Capacity Reservation exists. Changing this forces a new resource to be created. @@ -60,6 +72,15 @@ type CapacityReservationParameters struct { Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } +type SkuInitParameters struct { + + // Specifies the number of instances to be reserved. It must be a positive integer and not exceed the quota in the subscription. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // Name of the sku, such as Standard_F2. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type SkuObservation struct { // Specifies the number of instances to be reserved. It must be a positive integer and not exceed the quota in the subscription. @@ -72,18 +93,30 @@ type SkuObservation struct { type SkuParameters struct { // Specifies the number of instances to be reserved. It must be a positive integer and not exceed the quota in the subscription. - // +kubebuilder:validation:Required - Capacity *float64 `json:"capacity" tf:"capacity,omitempty"` + // +kubebuilder:validation:Optional + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // Name of the sku, such as Standard_F2. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` } // CapacityReservationSpec defines the desired state of CapacityReservation type CapacityReservationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CapacityReservationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CapacityReservationInitParameters `json:"initProvider,omitempty"` } // CapacityReservationStatus defines the observed state of CapacityReservation. @@ -104,7 +137,7 @@ type CapacityReservationStatus struct { type CapacityReservation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec CapacityReservationSpec `json:"spec"` Status CapacityReservationStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_capacityreservationgroup_types.go b/apis/compute/v1beta1/zz_capacityreservationgroup_types.go index 2e63a8324..c958f377b 100755 --- a/apis/compute/v1beta1/zz_capacityreservationgroup_types.go +++ b/apis/compute/v1beta1/zz_capacityreservationgroup_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CapacityReservationGroupInitParameters struct { + + // The Azure location where the Capacity Reservation Group exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies a list of Availability Zones for this Capacity Reservation Group. Changing this forces a new resource to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type CapacityReservationGroupObservation struct { // The ID of the Capacity Reservation Group. @@ -63,6 +75,18 @@ type CapacityReservationGroupParameters struct { type CapacityReservationGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CapacityReservationGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CapacityReservationGroupInitParameters `json:"initProvider,omitempty"` } // CapacityReservationGroupStatus defines the observed state of CapacityReservationGroup. @@ -83,7 +107,7 @@ type CapacityReservationGroupStatus struct { type CapacityReservationGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec CapacityReservationGroupSpec `json:"spec"` Status CapacityReservationGroupStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_dedicatedhost_types.go b/apis/compute/v1beta1/zz_dedicatedhost_types.go index d29a8eacb..09af69aa1 100755 --- a/apis/compute/v1beta1/zz_dedicatedhost_types.go +++ b/apis/compute/v1beta1/zz_dedicatedhost_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DedicatedHostInitParameters struct { + + // Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to true. + AutoReplaceOnFailure *bool `json:"autoReplaceOnFailure,omitempty" tf:"auto_replace_on_failure,omitempty"` + + // Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are None, Windows_Server_Hybrid and Windows_Server_Perpetual. Defaults to None. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // Specify the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created. + PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"` + + // Specify the SKU name of the Dedicated Host. Possible values are DADSv5-Type1, DASv4-Type1, DASv4-Type2, DASv5-Type1, DCSv2-Type1, DDSv4-Type1, DDSv4-Type2, DDSv5-Type1, DSv3-Type1, DSv3-Type2, DSv3-Type3, DSv3-Type4, DSv4-Type1, DSv4-Type2, DSv5-Type1, EADSv5-Type1, EASv4-Type1, EASv4-Type2, EASv5-Type1, EDSv4-Type1, EDSv4-Type2, EDSv5-Type1, ESv3-Type1, ESv3-Type2, ESv3-Type3, ESv3-Type4, ESv4-Type1, ESv4-Type2, ESv5-Type1, FSv2-Type2, FSv2-Type3, FSv2-Type4, FXmds-Type1, LSv2-Type1, LSv3-Type1, MDMSv2MedMem-Type1, MDSv2MedMem-Type1, MMSv2MedMem-Type1, MS-Type1, MSm-Type1, MSmv2-Type1, MSv2-Type1, MSv2MedMem-Type1, NVASv4-Type1 and NVSv3-Type1. Changing this forces a new resource to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DedicatedHostObservation struct { // Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to true. @@ -75,6 +96,18 @@ type DedicatedHostParameters struct { type DedicatedHostSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DedicatedHostParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DedicatedHostInitParameters `json:"initProvider,omitempty"` } // DedicatedHostStatus defines the observed state of DedicatedHost. @@ -95,9 +128,9 @@ type DedicatedHostStatus struct { type DedicatedHost struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.platformFaultDomain)",message="platformFaultDomain is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.platformFaultDomain) || has(self.initProvider.platformFaultDomain)",message="platformFaultDomain is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec DedicatedHostSpec `json:"spec"` Status DedicatedHostStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_diskaccess_types.go b/apis/compute/v1beta1/zz_diskaccess_types.go index dc418f9ab..8297c318e 100755 --- a/apis/compute/v1beta1/zz_diskaccess_types.go +++ b/apis/compute/v1beta1/zz_diskaccess_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DiskAccessInitParameters struct { + + // The Azure Region where the Disk Access should exist. Changing this forces a new Disk to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Disk Access. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DiskAccessObservation struct { // The ID of the Disk Access resource. @@ -56,6 +65,18 @@ type DiskAccessParameters struct { type DiskAccessSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DiskAccessParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DiskAccessInitParameters `json:"initProvider,omitempty"` } // DiskAccessStatus defines the observed state of DiskAccess. @@ -76,7 +97,7 @@ type DiskAccessStatus struct { type DiskAccess struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec DiskAccessSpec `json:"spec"` Status DiskAccessStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_diskencryptionset_types.go b/apis/compute/v1beta1/zz_diskencryptionset_types.go index 1eff4e561..1fe390da1 100755 --- a/apis/compute/v1beta1/zz_diskencryptionset_types.go +++ b/apis/compute/v1beta1/zz_diskencryptionset_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DiskEncryptionSetInitParameters struct { + + // Boolean flag to specify whether Azure Disk Encryption Set automatically rotates encryption Key to latest version. + AutoKeyRotationEnabled *bool `json:"autoKeyRotationEnabled,omitempty" tf:"auto_key_rotation_enabled,omitempty"` + + // The type of key used to encrypt the data of the disk. Possible values are EncryptionAtRestWithCustomerKey, EncryptionAtRestWithPlatformAndCustomerKeys and ConfidentialVmEncryptedWithCustomerKey. Defaults to EncryptionAtRestWithCustomerKey. Changing this forces a new resource to be created. + EncryptionType *string `json:"encryptionType,omitempty" tf:"encryption_type,omitempty"` + + // Multi-tenant application client id to access key vault in a different tenant. + FederatedClientID *string `json:"federatedClientId,omitempty" tf:"federated_client_id,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the Azure Region where the Disk Encryption Set exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the Disk Encryption Set. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DiskEncryptionSetObservation struct { // Boolean flag to specify whether Azure Disk Encryption Set automatically rotates encryption Key to latest version. @@ -97,6 +118,15 @@ type DiskEncryptionSetParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Disk Encryption Set. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The type of Managed Service Identity that is configured on this Disk Encryption Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this Disk Encryption Set. @@ -119,14 +149,26 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of Managed Service Identity that is configured on this Disk Encryption Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // DiskEncryptionSetSpec defines the desired state of DiskEncryptionSet type DiskEncryptionSetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DiskEncryptionSetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DiskEncryptionSetInitParameters `json:"initProvider,omitempty"` } // DiskEncryptionSetStatus defines the observed state of DiskEncryptionSet. @@ -147,8 +189,8 @@ type DiskEncryptionSetStatus struct { type DiskEncryptionSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.identity)",message="identity is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.identity) || has(self.initProvider.identity)",message="identity is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec DiskEncryptionSetSpec `json:"spec"` Status DiskEncryptionSetStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_galleryapplication_types.go b/apis/compute/v1beta1/zz_galleryapplication_types.go index a28e41e38..416830bec 100755 --- a/apis/compute/v1beta1/zz_galleryapplication_types.go +++ b/apis/compute/v1beta1/zz_galleryapplication_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type GalleryApplicationInitParameters struct { + + // A description of the Gallery Application. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The end of life date in RFC3339 format of the Gallery Application. + EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"` + + // The End User Licence Agreement of the Gallery Application. + Eula *string `json:"eula,omitempty" tf:"eula,omitempty"` + + // The Azure Region where the Gallery Application exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The URI containing the Privacy Statement associated with the Gallery Application. + PrivacyStatementURI *string `json:"privacyStatementUri,omitempty" tf:"privacy_statement_uri,omitempty"` + + // The URI containing the Release Notes associated with the Gallery Application. + ReleaseNoteURI *string `json:"releaseNoteUri,omitempty" tf:"release_note_uri,omitempty"` + + // The type of the Operating System supported for the Gallery Application. Possible values are Linux and Windows. Changing this forces a new resource to be created. + SupportedOsType *string `json:"supportedOsType,omitempty" tf:"supported_os_type,omitempty"` + + // A mapping of tags to assign to the Gallery Application. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type GalleryApplicationObservation struct { // A description of the Gallery Application. @@ -99,6 +126,18 @@ type GalleryApplicationParameters struct { type GalleryApplicationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider GalleryApplicationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider GalleryApplicationInitParameters `json:"initProvider,omitempty"` } // GalleryApplicationStatus defines the observed state of GalleryApplication. @@ -119,8 +158,8 @@ type GalleryApplicationStatus struct { type GalleryApplication struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.supportedOsType)",message="supportedOsType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.supportedOsType) || has(self.initProvider.supportedOsType)",message="supportedOsType is a required parameter" Spec GalleryApplicationSpec `json:"spec"` Status GalleryApplicationStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_galleryapplicationversion_types.go b/apis/compute/v1beta1/zz_galleryapplicationversion_types.go index c2a5624a4..eb9c1eef6 100755 --- a/apis/compute/v1beta1/zz_galleryapplicationversion_types.go +++ b/apis/compute/v1beta1/zz_galleryapplicationversion_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type GalleryApplicationVersionInitParameters struct { + + // Should the Gallery Application reports health. Defaults to false. + EnableHealthCheck *bool `json:"enableHealthCheck,omitempty" tf:"enable_health_check,omitempty"` + + // The end of life date in RFC3339 format of the Gallery Application Version. + EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"` + + // Should the Gallery Application Version be excluded from the latest filter? If set to true this Gallery Application Version won't be returned for the latest version. Defaults to false. + ExcludeFromLatest *bool `json:"excludeFromLatest,omitempty" tf:"exclude_from_latest,omitempty"` + + // The Azure Region where the Gallery Application Version exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A manage_action block as defined below. + ManageAction []ManageActionInitParameters `json:"manageAction,omitempty" tf:"manage_action,omitempty"` + + // The version name of the Gallery Application Version, such as 1.0.0. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A source block as defined below. + Source []SourceInitParameters `json:"source,omitempty" tf:"source,omitempty"` + + // A mapping of tags to assign to the Gallery Application Version. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // One or more target_region blocks as defined below. + TargetRegion []TargetRegionInitParameters `json:"targetRegion,omitempty" tf:"target_region,omitempty"` +} + type GalleryApplicationVersionObservation struct { // Should the Gallery Application reports health. Defaults to false. @@ -102,6 +132,18 @@ type GalleryApplicationVersionParameters struct { TargetRegion []TargetRegionParameters `json:"targetRegion,omitempty" tf:"target_region,omitempty"` } +type ManageActionInitParameters struct { + + // The command to install the Gallery Application. Changing this forces a new resource to be created. + Install *string `json:"install,omitempty" tf:"install,omitempty"` + + // The command to remove the Gallery Application. Changing this forces a new resource to be created. + Remove *string `json:"remove,omitempty" tf:"remove,omitempty"` + + // The command to update the Gallery Application. Changing this forces a new resource to be created. + Update *string `json:"update,omitempty" tf:"update,omitempty"` +} + type ManageActionObservation struct { // The command to install the Gallery Application. Changing this forces a new resource to be created. @@ -117,18 +159,24 @@ type ManageActionObservation struct { type ManageActionParameters struct { // The command to install the Gallery Application. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Install *string `json:"install" tf:"install,omitempty"` + // +kubebuilder:validation:Optional + Install *string `json:"install,omitempty" tf:"install,omitempty"` // The command to remove the Gallery Application. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Remove *string `json:"remove" tf:"remove,omitempty"` + // +kubebuilder:validation:Optional + Remove *string `json:"remove,omitempty" tf:"remove,omitempty"` // The command to update the Gallery Application. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional Update *string `json:"update,omitempty" tf:"update,omitempty"` } +type SourceInitParameters struct { + + // The Storage Blob URI of the default configuration. Changing this forces a new resource to be created. + DefaultConfigurationLink *string `json:"defaultConfigurationLink,omitempty" tf:"default_configuration_link,omitempty"` +} + type SourceObservation struct { // The Storage Blob URI of the default configuration. Changing this forces a new resource to be created. @@ -159,6 +207,15 @@ type SourceParameters struct { MediaLinkSelector *v1.Selector `json:"mediaLinkSelector,omitempty" tf:"-"` } +type TargetRegionInitParameters struct { + + // The number of replicas of the Gallery Application Version to be created per region. Possible values are between 1 and 10. + RegionalReplicaCount *float64 `json:"regionalReplicaCount,omitempty" tf:"regional_replica_count,omitempty"` + + // The storage account type for the Gallery Application Version. Possible values are Standard_LRS, Premium_LRS and Standard_ZRS. Defaults to Standard_LRS. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` +} + type TargetRegionObservation struct { // The Azure Region in which the Gallery Application Version exists. @@ -188,8 +245,8 @@ type TargetRegionParameters struct { NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"` // The number of replicas of the Gallery Application Version to be created per region. Possible values are between 1 and 10. - // +kubebuilder:validation:Required - RegionalReplicaCount *float64 `json:"regionalReplicaCount" tf:"regional_replica_count,omitempty"` + // +kubebuilder:validation:Optional + RegionalReplicaCount *float64 `json:"regionalReplicaCount,omitempty" tf:"regional_replica_count,omitempty"` // The storage account type for the Gallery Application Version. Possible values are Standard_LRS, Premium_LRS and Standard_ZRS. Defaults to Standard_LRS. // +kubebuilder:validation:Optional @@ -200,6 +257,18 @@ type TargetRegionParameters struct { type GalleryApplicationVersionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider GalleryApplicationVersionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider GalleryApplicationVersionInitParameters `json:"initProvider,omitempty"` } // GalleryApplicationVersionStatus defines the observed state of GalleryApplicationVersion. @@ -220,11 +289,11 @@ type GalleryApplicationVersionStatus struct { type GalleryApplicationVersion struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.manageAction)",message="manageAction is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.source)",message="source is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetRegion)",message="targetRegion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.manageAction) || has(self.initProvider.manageAction)",message="manageAction is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.source) || has(self.initProvider.source)",message="source is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.targetRegion) || has(self.initProvider.targetRegion)",message="targetRegion is a required parameter" Spec GalleryApplicationVersionSpec `json:"spec"` Status GalleryApplicationVersionStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_generated.deepcopy.go b/apis/compute/v1beta1/zz_generated.deepcopy.go index b379f8ae3..398824ead 100644 --- a/apis/compute/v1beta1/zz_generated.deepcopy.go +++ b/apis/compute/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,26 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AdditionalCapabilitiesInitParameters) DeepCopyInto(out *AdditionalCapabilitiesInitParameters) { + *out = *in + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalCapabilitiesInitParameters. +func (in *AdditionalCapabilitiesInitParameters) DeepCopy() *AdditionalCapabilitiesInitParameters { + if in == nil { + return nil + } + out := new(AdditionalCapabilitiesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AdditionalCapabilitiesObservation) DeepCopyInto(out *AdditionalCapabilitiesObservation) { *out = *in @@ -54,6 +74,26 @@ func (in *AdditionalCapabilitiesParameters) DeepCopy() *AdditionalCapabilitiesPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AdditionalUnattendContentInitParameters) DeepCopyInto(out *AdditionalUnattendContentInitParameters) { + *out = *in + if in.Setting != nil { + in, out := &in.Setting, &out.Setting + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalUnattendContentInitParameters. +func (in *AdditionalUnattendContentInitParameters) DeepCopy() *AdditionalUnattendContentInitParameters { + if in == nil { + return nil + } + out := new(AdditionalUnattendContentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AdditionalUnattendContentObservation) DeepCopyInto(out *AdditionalUnattendContentObservation) { *out = *in @@ -95,6 +135,31 @@ func (in *AdditionalUnattendContentParameters) DeepCopy() *AdditionalUnattendCon return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AdminSSHKeyInitParameters) DeepCopyInto(out *AdminSSHKeyInitParameters) { + *out = *in + if in.PublicKey != nil { + in, out := &in.PublicKey, &out.PublicKey + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdminSSHKeyInitParameters. +func (in *AdminSSHKeyInitParameters) DeepCopy() *AdminSSHKeyInitParameters { + if in == nil { + return nil + } + out := new(AdminSSHKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AdminSSHKeyObservation) DeepCopyInto(out *AdminSSHKeyObservation) { *out = *in @@ -145,6 +210,31 @@ func (in *AdminSSHKeyParameters) DeepCopy() *AdminSSHKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutomaticInstanceRepairInitParameters) DeepCopyInto(out *AutomaticInstanceRepairInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.GracePeriod != nil { + in, out := &in.GracePeriod, &out.GracePeriod + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomaticInstanceRepairInitParameters. +func (in *AutomaticInstanceRepairInitParameters) DeepCopy() *AutomaticInstanceRepairInitParameters { + if in == nil { + return nil + } + out := new(AutomaticInstanceRepairInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutomaticInstanceRepairObservation) DeepCopyInto(out *AutomaticInstanceRepairObservation) { *out = *in @@ -195,6 +285,31 @@ func (in *AutomaticInstanceRepairParameters) DeepCopy() *AutomaticInstanceRepair return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutomaticOsUpgradePolicyInitParameters) DeepCopyInto(out *AutomaticOsUpgradePolicyInitParameters) { + *out = *in + if in.DisableAutomaticRollback != nil { + in, out := &in.DisableAutomaticRollback, &out.DisableAutomaticRollback + *out = new(bool) + **out = **in + } + if in.EnableAutomaticOsUpgrade != nil { + in, out := &in.EnableAutomaticOsUpgrade, &out.EnableAutomaticOsUpgrade + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomaticOsUpgradePolicyInitParameters. +func (in *AutomaticOsUpgradePolicyInitParameters) DeepCopy() *AutomaticOsUpgradePolicyInitParameters { + if in == nil { + return nil + } + out := new(AutomaticOsUpgradePolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutomaticOsUpgradePolicyObservation) DeepCopyInto(out *AutomaticOsUpgradePolicyObservation) { *out = *in @@ -272,6 +387,61 @@ func (in *AvailabilitySet) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AvailabilitySetInitParameters) DeepCopyInto(out *AvailabilitySetInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Managed != nil { + in, out := &in.Managed, &out.Managed + *out = new(bool) + **out = **in + } + if in.PlatformFaultDomainCount != nil { + in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount + *out = new(float64) + **out = **in + } + if in.PlatformUpdateDomainCount != nil { + in, out := &in.PlatformUpdateDomainCount, &out.PlatformUpdateDomainCount + *out = new(float64) + **out = **in + } + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AvailabilitySetInitParameters. +func (in *AvailabilitySetInitParameters) DeepCopy() *AvailabilitySetInitParameters { + if in == nil { + return nil + } + out := new(AvailabilitySetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AvailabilitySetList) DeepCopyInto(out *AvailabilitySetList) { *out = *in @@ -444,6 +614,7 @@ func (in *AvailabilitySetSpec) DeepCopyInto(out *AvailabilitySetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AvailabilitySetSpec. @@ -473,6 +644,26 @@ func (in *AvailabilitySetStatus) DeepCopy() *AvailabilitySetStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BootDiagnosticsInitParameters) DeepCopyInto(out *BootDiagnosticsInitParameters) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BootDiagnosticsInitParameters. +func (in *BootDiagnosticsInitParameters) DeepCopy() *BootDiagnosticsInitParameters { + if in == nil { + return nil + } + out := new(BootDiagnosticsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BootDiagnosticsObservation) DeepCopyInto(out *BootDiagnosticsObservation) { *out = *in @@ -567,6 +758,52 @@ func (in *CapacityReservationGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CapacityReservationGroupInitParameters) DeepCopyInto(out *CapacityReservationGroupInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapacityReservationGroupInitParameters. +func (in *CapacityReservationGroupInitParameters) DeepCopy() *CapacityReservationGroupInitParameters { + if in == nil { + return nil + } + out := new(CapacityReservationGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CapacityReservationGroupList) DeepCopyInto(out *CapacityReservationGroupList) { *out = *in @@ -721,6 +958,7 @@ func (in *CapacityReservationGroupSpec) DeepCopyInto(out *CapacityReservationGro *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapacityReservationGroupSpec. @@ -750,6 +988,48 @@ func (in *CapacityReservationGroupStatus) DeepCopy() *CapacityReservationGroupSt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CapacityReservationInitParameters) DeepCopyInto(out *CapacityReservationInitParameters) { + *out = *in + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = make([]SkuInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapacityReservationInitParameters. +func (in *CapacityReservationInitParameters) DeepCopy() *CapacityReservationInitParameters { + if in == nil { + return nil + } + out := new(CapacityReservationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CapacityReservationList) DeepCopyInto(out *CapacityReservationList) { *out = *in @@ -896,6 +1176,7 @@ func (in *CapacityReservationSpec) DeepCopyInto(out *CapacityReservationSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapacityReservationSpec. @@ -926,7 +1207,7 @@ func (in *CapacityReservationStatus) DeepCopy() *CapacityReservationStatus { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateObservation) DeepCopyInto(out *CertificateObservation) { +func (in *CertificateInitParameters) DeepCopyInto(out *CertificateInitParameters) { *out = *in if in.URL != nil { in, out := &in.URL, &out.URL @@ -935,18 +1216,18 @@ func (in *CertificateObservation) DeepCopyInto(out *CertificateObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateObservation. -func (in *CertificateObservation) DeepCopy() *CertificateObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInitParameters. +func (in *CertificateInitParameters) DeepCopy() *CertificateInitParameters { if in == nil { return nil } - out := new(CertificateObservation) + out := new(CertificateInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateParameters) DeepCopyInto(out *CertificateParameters) { +func (in *CertificateObservation) DeepCopyInto(out *CertificateObservation) { *out = *in if in.URL != nil { in, out := &in.URL, &out.URL @@ -955,20 +1236,80 @@ func (in *CertificateParameters) DeepCopyInto(out *CertificateParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateParameters. -func (in *CertificateParameters) DeepCopy() *CertificateParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateObservation. +func (in *CertificateObservation) DeepCopy() *CertificateObservation { if in == nil { return nil } - out := new(CertificateParameters) + out := new(CertificateObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataDiskObservation) DeepCopyInto(out *DataDiskObservation) { +func (in *CertificateParameters) DeepCopyInto(out *CertificateParameters) { *out = *in - if in.BlobURI != nil { + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateParameters. +func (in *CertificateParameters) DeepCopy() *CertificateParameters { + if in == nil { + return nil + } + out := new(CertificateParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataDiskInitParameters) DeepCopyInto(out *DataDiskInitParameters) { + *out = *in + if in.BlobURI != nil { + in, out := &in.BlobURI, &out.BlobURI + *out = new(string) + **out = **in + } + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in + } + if in.Lun != nil { + in, out := &in.Lun, &out.Lun + *out = new(float64) + **out = **in + } + if in.ManagedDiskID != nil { + in, out := &in.ManagedDiskID, &out.ManagedDiskID + *out = new(string) + **out = **in + } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDiskInitParameters. +func (in *DataDiskInitParameters) DeepCopy() *DataDiskInitParameters { + if in == nil { + return nil + } + out := new(DataDiskInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataDiskObservation) DeepCopyInto(out *DataDiskObservation) { + *out = *in + if in.BlobURI != nil { in, out := &in.BlobURI, &out.BlobURI *out = new(string) **out = **in @@ -1072,6 +1413,61 @@ func (in *DedicatedHost) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DedicatedHostInitParameters) DeepCopyInto(out *DedicatedHostInitParameters) { + *out = *in + if in.AutoReplaceOnFailure != nil { + in, out := &in.AutoReplaceOnFailure, &out.AutoReplaceOnFailure + *out = new(bool) + **out = **in + } + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PlatformFaultDomain != nil { + in, out := &in.PlatformFaultDomain, &out.PlatformFaultDomain + *out = new(float64) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DedicatedHostInitParameters. +func (in *DedicatedHostInitParameters) DeepCopy() *DedicatedHostInitParameters { + if in == nil { + return nil + } + out := new(DedicatedHostInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DedicatedHostList) DeepCopyInto(out *DedicatedHostList) { *out = *in @@ -1234,6 +1630,7 @@ func (in *DedicatedHostSpec) DeepCopyInto(out *DedicatedHostSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DedicatedHostSpec. @@ -1263,6 +1660,31 @@ func (in *DedicatedHostStatus) DeepCopy() *DedicatedHostStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiffDiskSettingsInitParameters) DeepCopyInto(out *DiffDiskSettingsInitParameters) { + *out = *in + if in.Option != nil { + in, out := &in.Option, &out.Option + *out = new(string) + **out = **in + } + if in.Placement != nil { + in, out := &in.Placement, &out.Placement + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiffDiskSettingsInitParameters. +func (in *DiffDiskSettingsInitParameters) DeepCopy() *DiffDiskSettingsInitParameters { + if in == nil { + return nil + } + out := new(DiffDiskSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiffDiskSettingsObservation) DeepCopyInto(out *DiffDiskSettingsObservation) { *out = *in @@ -1340,6 +1762,41 @@ func (in *DiskAccess) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiskAccessInitParameters) DeepCopyInto(out *DiskAccessInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskAccessInitParameters. +func (in *DiskAccessInitParameters) DeepCopy() *DiskAccessInitParameters { + if in == nil { + return nil + } + out := new(DiskAccessInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiskAccessList) DeepCopyInto(out *DiskAccessList) { *out = *in @@ -1472,6 +1929,7 @@ func (in *DiskAccessSpec) DeepCopyInto(out *DiskAccessSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskAccessSpec. @@ -1501,6 +1959,31 @@ func (in *DiskAccessStatus) DeepCopy() *DiskAccessStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiskEncryptionKeyInitParameters) DeepCopyInto(out *DiskEncryptionKeyInitParameters) { + *out = *in + if in.SecretURL != nil { + in, out := &in.SecretURL, &out.SecretURL + *out = new(string) + **out = **in + } + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskEncryptionKeyInitParameters. +func (in *DiskEncryptionKeyInitParameters) DeepCopy() *DiskEncryptionKeyInitParameters { + if in == nil { + return nil + } + out := new(DiskEncryptionKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiskEncryptionKeyObservation) DeepCopyInto(out *DiskEncryptionKeyObservation) { *out = *in @@ -1578,6 +2061,63 @@ func (in *DiskEncryptionSet) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiskEncryptionSetInitParameters) DeepCopyInto(out *DiskEncryptionSetInitParameters) { + *out = *in + if in.AutoKeyRotationEnabled != nil { + in, out := &in.AutoKeyRotationEnabled, &out.AutoKeyRotationEnabled + *out = new(bool) + **out = **in + } + if in.EncryptionType != nil { + in, out := &in.EncryptionType, &out.EncryptionType + *out = new(string) + **out = **in + } + if in.FederatedClientID != nil { + in, out := &in.FederatedClientID, &out.FederatedClientID + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskEncryptionSetInitParameters. +func (in *DiskEncryptionSetInitParameters) DeepCopy() *DiskEncryptionSetInitParameters { + if in == nil { + return nil + } + out := new(DiskEncryptionSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiskEncryptionSetList) DeepCopyInto(out *DiskEncryptionSetList) { *out = *in @@ -1774,6 +2314,7 @@ func (in *DiskEncryptionSetSpec) DeepCopyInto(out *DiskEncryptionSetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskEncryptionSetSpec. @@ -1804,7 +2345,7 @@ func (in *DiskEncryptionSetStatus) DeepCopy() *DiskEncryptionSetStatus { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EncryptionSettingsDiskEncryptionKeyObservation) DeepCopyInto(out *EncryptionSettingsDiskEncryptionKeyObservation) { +func (in *EncryptionSettingsDiskEncryptionKeyInitParameters) DeepCopyInto(out *EncryptionSettingsDiskEncryptionKeyInitParameters) { *out = *in if in.SecretURL != nil { in, out := &in.SecretURL, &out.SecretURL @@ -1818,18 +2359,18 @@ func (in *EncryptionSettingsDiskEncryptionKeyObservation) DeepCopyInto(out *Encr } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettingsDiskEncryptionKeyObservation. -func (in *EncryptionSettingsDiskEncryptionKeyObservation) DeepCopy() *EncryptionSettingsDiskEncryptionKeyObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettingsDiskEncryptionKeyInitParameters. +func (in *EncryptionSettingsDiskEncryptionKeyInitParameters) DeepCopy() *EncryptionSettingsDiskEncryptionKeyInitParameters { if in == nil { return nil } - out := new(EncryptionSettingsDiskEncryptionKeyObservation) + out := new(EncryptionSettingsDiskEncryptionKeyInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EncryptionSettingsDiskEncryptionKeyParameters) DeepCopyInto(out *EncryptionSettingsDiskEncryptionKeyParameters) { +func (in *EncryptionSettingsDiskEncryptionKeyObservation) DeepCopyInto(out *EncryptionSettingsDiskEncryptionKeyObservation) { *out = *in if in.SecretURL != nil { in, out := &in.SecretURL, &out.SecretURL @@ -1843,21 +2384,21 @@ func (in *EncryptionSettingsDiskEncryptionKeyParameters) DeepCopyInto(out *Encry } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettingsDiskEncryptionKeyParameters. -func (in *EncryptionSettingsDiskEncryptionKeyParameters) DeepCopy() *EncryptionSettingsDiskEncryptionKeyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettingsDiskEncryptionKeyObservation. +func (in *EncryptionSettingsDiskEncryptionKeyObservation) DeepCopy() *EncryptionSettingsDiskEncryptionKeyObservation { if in == nil { return nil } - out := new(EncryptionSettingsDiskEncryptionKeyParameters) + out := new(EncryptionSettingsDiskEncryptionKeyObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EncryptionSettingsKeyEncryptionKeyObservation) DeepCopyInto(out *EncryptionSettingsKeyEncryptionKeyObservation) { +func (in *EncryptionSettingsDiskEncryptionKeyParameters) DeepCopyInto(out *EncryptionSettingsDiskEncryptionKeyParameters) { *out = *in - if in.KeyURL != nil { - in, out := &in.KeyURL, &out.KeyURL + if in.SecretURL != nil { + in, out := &in.SecretURL, &out.SecretURL *out = new(string) **out = **in } @@ -1868,12 +2409,96 @@ func (in *EncryptionSettingsKeyEncryptionKeyObservation) DeepCopyInto(out *Encry } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettingsKeyEncryptionKeyObservation. -func (in *EncryptionSettingsKeyEncryptionKeyObservation) DeepCopy() *EncryptionSettingsKeyEncryptionKeyObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettingsDiskEncryptionKeyParameters. +func (in *EncryptionSettingsDiskEncryptionKeyParameters) DeepCopy() *EncryptionSettingsDiskEncryptionKeyParameters { if in == nil { return nil } - out := new(EncryptionSettingsKeyEncryptionKeyObservation) + out := new(EncryptionSettingsDiskEncryptionKeyParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncryptionSettingsInitParameters) DeepCopyInto(out *EncryptionSettingsInitParameters) { + *out = *in + if in.DiskEncryptionKey != nil { + in, out := &in.DiskEncryptionKey, &out.DiskEncryptionKey + *out = make([]DiskEncryptionKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.KeyEncryptionKey != nil { + in, out := &in.KeyEncryptionKey, &out.KeyEncryptionKey + *out = make([]KeyEncryptionKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettingsInitParameters. +func (in *EncryptionSettingsInitParameters) DeepCopy() *EncryptionSettingsInitParameters { + if in == nil { + return nil + } + out := new(EncryptionSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncryptionSettingsKeyEncryptionKeyInitParameters) DeepCopyInto(out *EncryptionSettingsKeyEncryptionKeyInitParameters) { + *out = *in + if in.KeyURL != nil { + in, out := &in.KeyURL, &out.KeyURL + *out = new(string) + **out = **in + } + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettingsKeyEncryptionKeyInitParameters. +func (in *EncryptionSettingsKeyEncryptionKeyInitParameters) DeepCopy() *EncryptionSettingsKeyEncryptionKeyInitParameters { + if in == nil { + return nil + } + out := new(EncryptionSettingsKeyEncryptionKeyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncryptionSettingsKeyEncryptionKeyObservation) DeepCopyInto(out *EncryptionSettingsKeyEncryptionKeyObservation) { + *out = *in + if in.KeyURL != nil { + in, out := &in.KeyURL, &out.KeyURL + *out = new(string) + **out = **in + } + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionSettingsKeyEncryptionKeyObservation. +func (in *EncryptionSettingsKeyEncryptionKeyObservation) DeepCopy() *EncryptionSettingsKeyEncryptionKeyObservation { + if in == nil { + return nil + } + out := new(EncryptionSettingsKeyEncryptionKeyObservation) in.DeepCopyInto(out) return out } @@ -1971,6 +2596,79 @@ func (in *EncryptionSettingsParameters) DeepCopy() *EncryptionSettingsParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExtensionInitParameters) DeepCopyInto(out *ExtensionInitParameters) { + *out = *in + if in.AutoUpgradeMinorVersion != nil { + in, out := &in.AutoUpgradeMinorVersion, &out.AutoUpgradeMinorVersion + *out = new(bool) + **out = **in + } + if in.AutomaticUpgradeEnabled != nil { + in, out := &in.AutomaticUpgradeEnabled, &out.AutomaticUpgradeEnabled + *out = new(bool) + **out = **in + } + if in.ForceUpdateTag != nil { + in, out := &in.ForceUpdateTag, &out.ForceUpdateTag + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ProtectedSettingsFromKeyVault != nil { + in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault + *out = make([]ProtectedSettingsFromKeyVaultInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ProvisionAfterExtensions != nil { + in, out := &in.ProvisionAfterExtensions, &out.ProvisionAfterExtensions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeHandlerVersion != nil { + in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionInitParameters. +func (in *ExtensionInitParameters) DeepCopy() *ExtensionInitParameters { + if in == nil { + return nil + } + out := new(ExtensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExtensionObservation) DeepCopyInto(out *ExtensionObservation) { *out = *in @@ -2122,6 +2820,31 @@ func (in *ExtensionParameters) DeepCopy() *ExtensionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExtensionProtectedSettingsFromKeyVaultInitParameters) DeepCopyInto(out *ExtensionProtectedSettingsFromKeyVaultInitParameters) { + *out = *in + if in.SecretURL != nil { + in, out := &in.SecretURL, &out.SecretURL + *out = new(string) + **out = **in + } + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionProtectedSettingsFromKeyVaultInitParameters. +func (in *ExtensionProtectedSettingsFromKeyVaultInitParameters) DeepCopy() *ExtensionProtectedSettingsFromKeyVaultInitParameters { + if in == nil { + return nil + } + out := new(ExtensionProtectedSettingsFromKeyVaultInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExtensionProtectedSettingsFromKeyVaultObservation) DeepCopyInto(out *ExtensionProtectedSettingsFromKeyVaultObservation) { *out = *in @@ -2199,6 +2922,71 @@ func (in *GalleryApplication) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GalleryApplicationInitParameters) DeepCopyInto(out *GalleryApplicationInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.EndOfLifeDate != nil { + in, out := &in.EndOfLifeDate, &out.EndOfLifeDate + *out = new(string) + **out = **in + } + if in.Eula != nil { + in, out := &in.Eula, &out.Eula + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PrivacyStatementURI != nil { + in, out := &in.PrivacyStatementURI, &out.PrivacyStatementURI + *out = new(string) + **out = **in + } + if in.ReleaseNoteURI != nil { + in, out := &in.ReleaseNoteURI, &out.ReleaseNoteURI + *out = new(string) + **out = **in + } + if in.SupportedOsType != nil { + in, out := &in.SupportedOsType, &out.SupportedOsType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GalleryApplicationInitParameters. +func (in *GalleryApplicationInitParameters) DeepCopy() *GalleryApplicationInitParameters { + if in == nil { + return nil + } + out := new(GalleryApplicationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GalleryApplicationList) DeepCopyInto(out *GalleryApplicationList) { *out = *in @@ -2391,6 +3179,7 @@ func (in *GalleryApplicationSpec) DeepCopyInto(out *GalleryApplicationSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GalleryApplicationSpec. @@ -2448,20 +3237,96 @@ func (in *GalleryApplicationVersion) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GalleryApplicationVersionList) DeepCopyInto(out *GalleryApplicationVersionList) { +func (in *GalleryApplicationVersionInitParameters) DeepCopyInto(out *GalleryApplicationVersionInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]GalleryApplicationVersion, len(*in)) + if in.EnableHealthCheck != nil { + in, out := &in.EnableHealthCheck, &out.EnableHealthCheck + *out = new(bool) + **out = **in + } + if in.EndOfLifeDate != nil { + in, out := &in.EndOfLifeDate, &out.EndOfLifeDate + *out = new(string) + **out = **in + } + if in.ExcludeFromLatest != nil { + in, out := &in.ExcludeFromLatest, &out.ExcludeFromLatest + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ManageAction != nil { + in, out := &in.ManageAction, &out.ManageAction + *out = make([]ManageActionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GalleryApplicationVersionList. + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Source != nil { + in, out := &in.Source, &out.Source + *out = make([]SourceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TargetRegion != nil { + in, out := &in.TargetRegion, &out.TargetRegion + *out = make([]TargetRegionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GalleryApplicationVersionInitParameters. +func (in *GalleryApplicationVersionInitParameters) DeepCopy() *GalleryApplicationVersionInitParameters { + if in == nil { + return nil + } + out := new(GalleryApplicationVersionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GalleryApplicationVersionList) DeepCopyInto(out *GalleryApplicationVersionList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]GalleryApplicationVersion, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GalleryApplicationVersionList. func (in *GalleryApplicationVersionList) DeepCopy() *GalleryApplicationVersionList { if in == nil { return nil @@ -2661,6 +3526,7 @@ func (in *GalleryApplicationVersionSpec) DeepCopyInto(out *GalleryApplicationVer *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GalleryApplicationVersionSpec. @@ -2690,6 +3556,41 @@ func (in *GalleryApplicationVersionStatus) DeepCopy() *GalleryApplicationVersion return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GalleryApplicationsInitParameters) DeepCopyInto(out *GalleryApplicationsInitParameters) { + *out = *in + if in.ConfigurationReferenceBlobURI != nil { + in, out := &in.ConfigurationReferenceBlobURI, &out.ConfigurationReferenceBlobURI + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.PackageReferenceID != nil { + in, out := &in.PackageReferenceID, &out.PackageReferenceID + *out = new(string) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GalleryApplicationsInitParameters. +func (in *GalleryApplicationsInitParameters) DeepCopy() *GalleryApplicationsInitParameters { + if in == nil { + return nil + } + out := new(GalleryApplicationsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GalleryApplicationsObservation) DeepCopyInto(out *GalleryApplicationsObservation) { *out = *in @@ -2760,6 +3661,87 @@ func (in *GalleryApplicationsParameters) DeepCopy() *GalleryApplicationsParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPConfigurationInitParameters) DeepCopyInto(out *IPConfigurationInitParameters) { + *out = *in + if in.ApplicationGatewayBackendAddressPoolIds != nil { + in, out := &in.ApplicationGatewayBackendAddressPoolIds, &out.ApplicationGatewayBackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ApplicationSecurityGroupIds != nil { + in, out := &in.ApplicationSecurityGroupIds, &out.ApplicationSecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoadBalancerBackendAddressPoolIds != nil { + in, out := &in.LoadBalancerBackendAddressPoolIds, &out.LoadBalancerBackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoadBalancerInboundNATRulesIds != nil { + in, out := &in.LoadBalancerInboundNATRulesIds, &out.LoadBalancerInboundNATRulesIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } + if in.PublicIPAddress != nil { + in, out := &in.PublicIPAddress, &out.PublicIPAddress + *out = make([]PublicIPAddressInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPConfigurationInitParameters. +func (in *IPConfigurationInitParameters) DeepCopy() *IPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(IPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPConfigurationObservation) DeepCopyInto(out *IPConfigurationObservation) { *out = *in @@ -2942,6 +3924,31 @@ func (in *IPConfigurationParameters) DeepCopy() *IPConfigurationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPConfigurationPublicIPAddressIPTagInitParameters) DeepCopyInto(out *IPConfigurationPublicIPAddressIPTagInitParameters) { + *out = *in + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPConfigurationPublicIPAddressIPTagInitParameters. +func (in *IPConfigurationPublicIPAddressIPTagInitParameters) DeepCopy() *IPConfigurationPublicIPAddressIPTagInitParameters { + if in == nil { + return nil + } + out := new(IPConfigurationPublicIPAddressIPTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPConfigurationPublicIPAddressIPTagObservation) DeepCopyInto(out *IPConfigurationPublicIPAddressIPTagObservation) { *out = *in @@ -2992,6 +3999,58 @@ func (in *IPConfigurationPublicIPAddressIPTagParameters) DeepCopy() *IPConfigura return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPConfigurationPublicIPAddressInitParameters) DeepCopyInto(out *IPConfigurationPublicIPAddressInitParameters) { + *out = *in + if in.DomainNameLabel != nil { + in, out := &in.DomainNameLabel, &out.DomainNameLabel + *out = new(string) + **out = **in + } + if in.IPTag != nil { + in, out := &in.IPTag, &out.IPTag + *out = make([]PublicIPAddressIPTagInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublicIPPrefixID != nil { + in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPConfigurationPublicIPAddressInitParameters. +func (in *IPConfigurationPublicIPAddressInitParameters) DeepCopy() *IPConfigurationPublicIPAddressInitParameters { + if in == nil { + return nil + } + out := new(IPConfigurationPublicIPAddressInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPConfigurationPublicIPAddressObservation) DeepCopyInto(out *IPConfigurationPublicIPAddressObservation) { *out = *in @@ -3096,6 +4155,31 @@ func (in *IPConfigurationPublicIPAddressParameters) DeepCopy() *IPConfigurationP return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPTagInitParameters) DeepCopyInto(out *IPTagInitParameters) { + *out = *in + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPTagInitParameters. +func (in *IPTagInitParameters) DeepCopy() *IPTagInitParameters { + if in == nil { + return nil + } + out := new(IPTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPTagObservation) DeepCopyInto(out *IPTagObservation) { *out = *in @@ -3147,7 +4231,7 @@ func (in *IPTagParameters) DeepCopy() *IPTagParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IdentifierObservation) DeepCopyInto(out *IdentifierObservation) { +func (in *IdentifierInitParameters) DeepCopyInto(out *IdentifierInitParameters) { *out = *in if in.Offer != nil { in, out := &in.Offer, &out.Offer @@ -3166,12 +4250,42 @@ func (in *IdentifierObservation) DeepCopyInto(out *IdentifierObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentifierObservation. -func (in *IdentifierObservation) DeepCopy() *IdentifierObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentifierInitParameters. +func (in *IdentifierInitParameters) DeepCopy() *IdentifierInitParameters { if in == nil { return nil } - out := new(IdentifierObservation) + out := new(IdentifierInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentifierObservation) DeepCopyInto(out *IdentifierObservation) { + *out = *in + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentifierObservation. +func (in *IdentifierObservation) DeepCopy() *IdentifierObservation { + if in == nil { + return nil + } + out := new(IdentifierObservation) in.DeepCopyInto(out) return out } @@ -3206,6 +4320,37 @@ func (in *IdentifierParameters) DeepCopy() *IdentifierParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -3305,6 +4450,70 @@ func (in *Image) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ImageInitParameters) DeepCopyInto(out *ImageInitParameters) { + *out = *in + if in.DataDisk != nil { + in, out := &in.DataDisk, &out.DataDisk + *out = make([]DataDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HyperVGeneration != nil { + in, out := &in.HyperVGeneration, &out.HyperVGeneration + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]OsDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceVirtualMachineID != nil { + in, out := &in.SourceVirtualMachineID, &out.SourceVirtualMachineID + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZoneResilient != nil { + in, out := &in.ZoneResilient, &out.ZoneResilient + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageInitParameters. +func (in *ImageInitParameters) DeepCopy() *ImageInitParameters { + if in == nil { + return nil + } + out := new(ImageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ImageList) DeepCopyInto(out *ImageList) { *out = *in @@ -3495,6 +4704,7 @@ func (in *ImageSpec) DeepCopyInto(out *ImageSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSpec. @@ -3524,6 +4734,31 @@ func (in *ImageStatus) DeepCopy() *ImageStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyEncryptionKeyInitParameters) DeepCopyInto(out *KeyEncryptionKeyInitParameters) { + *out = *in + if in.KeyURL != nil { + in, out := &in.KeyURL, &out.KeyURL + *out = new(string) + **out = **in + } + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyEncryptionKeyInitParameters. +func (in *KeyEncryptionKeyInitParameters) DeepCopy() *KeyEncryptionKeyInitParameters { + if in == nil { + return nil + } + out := new(KeyEncryptionKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KeyEncryptionKeyObservation) DeepCopyInto(out *KeyEncryptionKeyObservation) { *out = *in @@ -3574,6 +4809,31 @@ func (in *KeyEncryptionKeyParameters) DeepCopy() *KeyEncryptionKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxConfigurationAdminSSHKeyInitParameters) DeepCopyInto(out *LinuxConfigurationAdminSSHKeyInitParameters) { + *out = *in + if in.PublicKey != nil { + in, out := &in.PublicKey, &out.PublicKey + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxConfigurationAdminSSHKeyInitParameters. +func (in *LinuxConfigurationAdminSSHKeyInitParameters) DeepCopy() *LinuxConfigurationAdminSSHKeyInitParameters { + if in == nil { + return nil + } + out := new(LinuxConfigurationAdminSSHKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxConfigurationAdminSSHKeyObservation) DeepCopyInto(out *LinuxConfigurationAdminSSHKeyObservation) { *out = *in @@ -3624,6 +4884,65 @@ func (in *LinuxConfigurationAdminSSHKeyParameters) DeepCopy() *LinuxConfiguratio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxConfigurationInitParameters) DeepCopyInto(out *LinuxConfigurationInitParameters) { + *out = *in + if in.AdminSSHKey != nil { + in, out := &in.AdminSSHKey, &out.AdminSSHKey + *out = make([]LinuxConfigurationAdminSSHKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) + **out = **in + } + if in.ComputerNamePrefix != nil { + in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix + *out = new(string) + **out = **in + } + if in.DisablePasswordAuthentication != nil { + in, out := &in.DisablePasswordAuthentication, &out.DisablePasswordAuthentication + *out = new(bool) + **out = **in + } + if in.PatchAssessmentMode != nil { + in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + *out = new(string) + **out = **in + } + if in.PatchMode != nil { + in, out := &in.PatchMode, &out.PatchMode + *out = new(string) + **out = **in + } + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + *out = new(bool) + **out = **in + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]LinuxConfigurationSecretInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxConfigurationInitParameters. +func (in *LinuxConfigurationInitParameters) DeepCopy() *LinuxConfigurationInitParameters { + if in == nil { + return nil + } + out := new(LinuxConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxConfigurationObservation) DeepCopyInto(out *LinuxConfigurationObservation) { *out = *in @@ -3747,6 +5066,26 @@ func (in *LinuxConfigurationParameters) DeepCopy() *LinuxConfigurationParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxConfigurationSecretCertificateInitParameters) DeepCopyInto(out *LinuxConfigurationSecretCertificateInitParameters) { + *out = *in + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxConfigurationSecretCertificateInitParameters. +func (in *LinuxConfigurationSecretCertificateInitParameters) DeepCopy() *LinuxConfigurationSecretCertificateInitParameters { + if in == nil { + return nil + } + out := new(LinuxConfigurationSecretCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxConfigurationSecretCertificateObservation) DeepCopyInto(out *LinuxConfigurationSecretCertificateObservation) { *out = *in @@ -3787,6 +5126,33 @@ func (in *LinuxConfigurationSecretCertificateParameters) DeepCopy() *LinuxConfig return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxConfigurationSecretInitParameters) DeepCopyInto(out *LinuxConfigurationSecretInitParameters) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]LinuxConfigurationSecretCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxConfigurationSecretInitParameters. +func (in *LinuxConfigurationSecretInitParameters) DeepCopy() *LinuxConfigurationSecretInitParameters { + if in == nil { + return nil + } + out := new(LinuxConfigurationSecretInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxConfigurationSecretObservation) DeepCopyInto(out *LinuxConfigurationSecretObservation) { *out = *in @@ -3869,7 +5235,7 @@ func (in *LinuxVirtualMachine) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineGalleryApplicationObservation) DeepCopyInto(out *LinuxVirtualMachineGalleryApplicationObservation) { +func (in *LinuxVirtualMachineGalleryApplicationInitParameters) DeepCopyInto(out *LinuxVirtualMachineGalleryApplicationInitParameters) { *out = *in if in.ConfigurationBlobURI != nil { in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI @@ -3893,18 +5259,18 @@ func (in *LinuxVirtualMachineGalleryApplicationObservation) DeepCopyInto(out *Li } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineGalleryApplicationObservation. -func (in *LinuxVirtualMachineGalleryApplicationObservation) DeepCopy() *LinuxVirtualMachineGalleryApplicationObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineGalleryApplicationInitParameters. +func (in *LinuxVirtualMachineGalleryApplicationInitParameters) DeepCopy() *LinuxVirtualMachineGalleryApplicationInitParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineGalleryApplicationObservation) + out := new(LinuxVirtualMachineGalleryApplicationInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineGalleryApplicationParameters) DeepCopyInto(out *LinuxVirtualMachineGalleryApplicationParameters) { +func (in *LinuxVirtualMachineGalleryApplicationObservation) DeepCopyInto(out *LinuxVirtualMachineGalleryApplicationObservation) { *out = *in if in.ConfigurationBlobURI != nil { in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI @@ -3928,8 +5294,43 @@ func (in *LinuxVirtualMachineGalleryApplicationParameters) DeepCopyInto(out *Lin } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineGalleryApplicationParameters. -func (in *LinuxVirtualMachineGalleryApplicationParameters) DeepCopy() *LinuxVirtualMachineGalleryApplicationParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineGalleryApplicationObservation. +func (in *LinuxVirtualMachineGalleryApplicationObservation) DeepCopy() *LinuxVirtualMachineGalleryApplicationObservation { + if in == nil { + return nil + } + out := new(LinuxVirtualMachineGalleryApplicationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineGalleryApplicationParameters) DeepCopyInto(out *LinuxVirtualMachineGalleryApplicationParameters) { + *out = *in + if in.ConfigurationBlobURI != nil { + in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } + if in.VersionID != nil { + in, out := &in.VersionID, &out.VersionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineGalleryApplicationParameters. +func (in *LinuxVirtualMachineGalleryApplicationParameters) DeepCopy() *LinuxVirtualMachineGalleryApplicationParameters { if in == nil { return nil } @@ -3938,6 +5339,37 @@ func (in *LinuxVirtualMachineGalleryApplicationParameters) DeepCopy() *LinuxVirt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineIdentityInitParameters) DeepCopyInto(out *LinuxVirtualMachineIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineIdentityInitParameters. +func (in *LinuxVirtualMachineIdentityInitParameters) DeepCopy() *LinuxVirtualMachineIdentityInitParameters { + if in == nil { + return nil + } + out := new(LinuxVirtualMachineIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxVirtualMachineIdentityObservation) DeepCopyInto(out *LinuxVirtualMachineIdentityObservation) { *out = *in @@ -4011,50 +5443,18 @@ func (in *LinuxVirtualMachineIdentityParameters) DeepCopy() *LinuxVirtualMachine } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineList) DeepCopyInto(out *LinuxVirtualMachineList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]LinuxVirtualMachine, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineList. -func (in *LinuxVirtualMachineList) DeepCopy() *LinuxVirtualMachineList { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinuxVirtualMachineList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineObservation) { +func (in *LinuxVirtualMachineInitParameters) DeepCopyInto(out *LinuxVirtualMachineInitParameters) { *out = *in if in.AdditionalCapabilities != nil { in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities - *out = make([]AdditionalCapabilitiesObservation, len(*in)) + *out = make([]AdditionalCapabilitiesInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.AdminSSHKey != nil { in, out := &in.AdminSSHKey, &out.AdminSSHKey - *out = make([]AdminSSHKeyObservation, len(*in)) + *out = make([]AdminSSHKeyInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4076,7 +5476,7 @@ func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineO } if in.BootDiagnostics != nil { in, out := &in.BootDiagnostics, &out.BootDiagnostics - *out = make([]BootDiagnosticsObservation, len(*in)) + *out = make([]BootDiagnosticsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4128,19 +5528,14 @@ func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineO } if in.GalleryApplication != nil { in, out := &in.GalleryApplication, &out.GalleryApplication - *out = make([]LinuxVirtualMachineGalleryApplicationObservation, len(*in)) + *out = make([]LinuxVirtualMachineGalleryApplicationInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.Identity != nil { in, out := &in.Identity, &out.Identity - *out = make([]LinuxVirtualMachineIdentityObservation, len(*in)) + *out = make([]LinuxVirtualMachineIdentityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4160,20 +5555,9 @@ func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineO *out = new(float64) **out = **in } - if in.NetworkInterfaceIds != nil { - in, out := &in.NetworkInterfaceIds, &out.NetworkInterfaceIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } if in.OsDisk != nil { in, out := &in.OsDisk, &out.OsDisk - *out = make([]LinuxVirtualMachineOsDiskObservation, len(*in)) + *out = make([]LinuxVirtualMachineOsDiskInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4190,7 +5574,7 @@ func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineO } if in.Plan != nil { in, out := &in.Plan, &out.Plan - *out = make([]PlanObservation, len(*in)) + *out = make([]PlanInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4205,22 +5589,6 @@ func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineO *out = new(string) **out = **in } - if in.PrivateIPAddress != nil { - in, out := &in.PrivateIPAddress, &out.PrivateIPAddress - *out = new(string) - **out = **in - } - if in.PrivateIPAddresses != nil { - in, out := &in.PrivateIPAddresses, &out.PrivateIPAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } if in.ProvisionVMAgent != nil { in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent *out = new(bool) @@ -4231,30 +5599,9 @@ func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineO *out = new(string) **out = **in } - if in.PublicIPAddress != nil { - in, out := &in.PublicIPAddress, &out.PublicIPAddress - *out = new(string) - **out = **in - } - if in.PublicIPAddresses != nil { - in, out := &in.PublicIPAddresses, &out.PublicIPAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } if in.Secret != nil { in, out := &in.Secret, &out.Secret - *out = make([]SecretObservation, len(*in)) + *out = make([]SecretInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4276,7 +5623,7 @@ func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineO } if in.SourceImageReference != nil { in, out := &in.SourceImageReference, &out.SourceImageReference - *out = make([]SourceImageReferenceObservation, len(*in)) + *out = make([]SourceImageReferenceInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4298,7 +5645,7 @@ func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineO } if in.TerminationNotification != nil { in, out := &in.TerminationNotification, &out.TerminationNotification - *out = make([]TerminationNotificationObservation, len(*in)) + *out = make([]TerminationNotificationInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4308,11 +5655,6 @@ func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineO *out = new(string) **out = **in } - if in.VirtualMachineID != nil { - in, out := &in.VirtualMachineID, &out.VirtualMachineID - *out = new(string) - **out = **in - } if in.VirtualMachineScaleSetID != nil { in, out := &in.VirtualMachineScaleSetID, &out.VirtualMachineScaleSetID *out = new(string) @@ -4330,164 +5672,67 @@ func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineO } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineObservation. -func (in *LinuxVirtualMachineObservation) DeepCopy() *LinuxVirtualMachineObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineInitParameters. +func (in *LinuxVirtualMachineInitParameters) DeepCopy() *LinuxVirtualMachineInitParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineObservation) + out := new(LinuxVirtualMachineInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineOsDiskObservation) DeepCopyInto(out *LinuxVirtualMachineOsDiskObservation) { +func (in *LinuxVirtualMachineList) DeepCopyInto(out *LinuxVirtualMachineList) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching - *out = new(string) - **out = **in - } - if in.DiffDiskSettings != nil { - in, out := &in.DiffDiskSettings, &out.DiffDiskSettings - *out = make([]DiffDiskSettingsObservation, len(*in)) + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LinuxVirtualMachine, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID - *out = new(string) - **out = **in - } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb - *out = new(float64) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.SecureVMDiskEncryptionSetID != nil { - in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID - *out = new(string) - **out = **in - } - if in.SecurityEncryptionType != nil { - in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType - *out = new(string) - **out = **in - } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType - *out = new(string) - **out = **in - } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineOsDiskObservation. -func (in *LinuxVirtualMachineOsDiskObservation) DeepCopy() *LinuxVirtualMachineOsDiskObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineList. +func (in *LinuxVirtualMachineList) DeepCopy() *LinuxVirtualMachineList { if in == nil { return nil } - out := new(LinuxVirtualMachineOsDiskObservation) + out := new(LinuxVirtualMachineList) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinuxVirtualMachineList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineOsDiskParameters) DeepCopyInto(out *LinuxVirtualMachineOsDiskParameters) { +func (in *LinuxVirtualMachineObservation) DeepCopyInto(out *LinuxVirtualMachineObservation) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching - *out = new(string) - **out = **in + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]AdditionalCapabilitiesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.DiffDiskSettings != nil { - in, out := &in.DiffDiskSettings, &out.DiffDiskSettings - *out = make([]DiffDiskSettingsParameters, len(*in)) + if in.AdminSSHKey != nil { + in, out := &in.AdminSSHKey, &out.AdminSSHKey + *out = make([]AdminSSHKeyObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID - *out = new(string) - **out = **in - } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb - *out = new(float64) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.SecureVMDiskEncryptionSetID != nil { - in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID - *out = new(string) - **out = **in - } - if in.SecurityEncryptionType != nil { - in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType - *out = new(string) - **out = **in - } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType - *out = new(string) - **out = **in - } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineOsDiskParameters. -func (in *LinuxVirtualMachineOsDiskParameters) DeepCopy() *LinuxVirtualMachineOsDiskParameters { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineOsDiskParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachineParameters) { - *out = *in - if in.AdditionalCapabilities != nil { - in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities - *out = make([]AdditionalCapabilitiesParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AdminPasswordSecretRef != nil { - in, out := &in.AdminPasswordSecretRef, &out.AdminPasswordSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } - if in.AdminSSHKey != nil { - in, out := &in.AdminSSHKey, &out.AdminSSHKey - *out = make([]AdminSSHKeyParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AdminUsername != nil { - in, out := &in.AdminUsername, &out.AdminUsername + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername *out = new(string) **out = **in } @@ -4503,7 +5748,7 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa } if in.BootDiagnostics != nil { in, out := &in.BootDiagnostics, &out.BootDiagnostics - *out = make([]BootDiagnosticsParameters, len(*in)) + *out = make([]BootDiagnosticsObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4518,11 +5763,6 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa *out = new(string) **out = **in } - if in.CustomDataSecretRef != nil { - in, out := &in.CustomDataSecretRef, &out.CustomDataSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } if in.DedicatedHostGroupID != nil { in, out := &in.DedicatedHostGroupID, &out.DedicatedHostGroupID *out = new(string) @@ -4560,14 +5800,19 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa } if in.GalleryApplication != nil { in, out := &in.GalleryApplication, &out.GalleryApplication - *out = make([]LinuxVirtualMachineGalleryApplicationParameters, len(*in)) + *out = make([]LinuxVirtualMachineGalleryApplicationObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } if in.Identity != nil { in, out := &in.Identity, &out.Identity - *out = make([]LinuxVirtualMachineIdentityParameters, len(*in)) + *out = make([]LinuxVirtualMachineIdentityObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4598,21 +5843,9 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa } } } - if in.NetworkInterfaceIdsRefs != nil { - in, out := &in.NetworkInterfaceIdsRefs, &out.NetworkInterfaceIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.NetworkInterfaceIdsSelector != nil { - in, out := &in.NetworkInterfaceIdsSelector, &out.NetworkInterfaceIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } if in.OsDisk != nil { in, out := &in.OsDisk, &out.OsDisk - *out = make([]LinuxVirtualMachineOsDiskParameters, len(*in)) + *out = make([]LinuxVirtualMachineOsDiskObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4629,7 +5862,7 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa } if in.Plan != nil { in, out := &in.Plan, &out.Plan - *out = make([]PlanParameters, len(*in)) + *out = make([]PlanObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4644,6 +5877,22 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa *out = new(string) **out = **in } + if in.PrivateIPAddress != nil { + in, out := &in.PrivateIPAddress, &out.PrivateIPAddress + *out = new(string) + **out = **in + } + if in.PrivateIPAddresses != nil { + in, out := &in.PrivateIPAddresses, &out.PrivateIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } if in.ProvisionVMAgent != nil { in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent *out = new(bool) @@ -4654,24 +5903,30 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.PublicIPAddress != nil { + in, out := &in.PublicIPAddress, &out.PublicIPAddress *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.PublicIPAddresses != nil { + in, out := &in.PublicIPAddresses, &out.PublicIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in } if in.Secret != nil { in, out := &in.Secret, &out.Secret - *out = make([]SecretParameters, len(*in)) + *out = make([]SecretObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4693,7 +5948,7 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa } if in.SourceImageReference != nil { in, out := &in.SourceImageReference, &out.SourceImageReference - *out = make([]SourceImageReferenceParameters, len(*in)) + *out = make([]SourceImageReferenceObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4715,7 +5970,7 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa } if in.TerminationNotification != nil { in, out := &in.TerminationNotification, &out.TerminationNotification - *out = make([]TerminationNotificationParameters, len(*in)) + *out = make([]TerminationNotificationObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4725,6 +5980,11 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa *out = new(string) **out = **in } + if in.VirtualMachineID != nil { + in, out := &in.VirtualMachineID, &out.VirtualMachineID + *out = new(string) + **out = **in + } if in.VirtualMachineScaleSetID != nil { in, out := &in.VirtualMachineScaleSetID, &out.VirtualMachineScaleSetID *out = new(string) @@ -4742,185 +6002,92 @@ func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachinePa } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineParameters. -func (in *LinuxVirtualMachineParameters) DeepCopy() *LinuxVirtualMachineParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineObservation. +func (in *LinuxVirtualMachineObservation) DeepCopy() *LinuxVirtualMachineObservation { if in == nil { return nil } - out := new(LinuxVirtualMachineParameters) + out := new(LinuxVirtualMachineObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSet) DeepCopyInto(out *LinuxVirtualMachineScaleSet) { +func (in *LinuxVirtualMachineOsDiskInitParameters) DeepCopyInto(out *LinuxVirtualMachineOsDiskInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSet. -func (in *LinuxVirtualMachineScaleSet) DeepCopy() *LinuxVirtualMachineScaleSet { - if in == nil { - return nil + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in } - out := new(LinuxVirtualMachineScaleSet) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinuxVirtualMachineScaleSet) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]DiffDiskSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation) { - *out = *in - if in.UltraSsdEnabled != nil { - in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled - *out = new(bool) + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation. -func (in *LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopy() *LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation { - if in == nil { - return nil + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in } - out := new(LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters) { - *out = *in - if in.UltraSsdEnabled != nil { - in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.SecurityEncryptionType != nil { + in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters. -func (in *LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopy() *LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineOsDiskInitParameters. +func (in *LinuxVirtualMachineOsDiskInitParameters) DeepCopy() *LinuxVirtualMachineOsDiskInitParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters) + out := new(LinuxVirtualMachineOsDiskInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetAdminSSHKeyObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetAdminSSHKeyObservation) { +func (in *LinuxVirtualMachineOsDiskObservation) DeepCopyInto(out *LinuxVirtualMachineOsDiskObservation) { *out = *in - if in.PublicKey != nil { - in, out := &in.PublicKey, &out.PublicKey - *out = new(string) - **out = **in - } - if in.Username != nil { - in, out := &in.Username, &out.Username + if in.Caching != nil { + in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetAdminSSHKeyObservation. -func (in *LinuxVirtualMachineScaleSetAdminSSHKeyObservation) DeepCopy() *LinuxVirtualMachineScaleSetAdminSSHKeyObservation { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineScaleSetAdminSSHKeyObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetAdminSSHKeyParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetAdminSSHKeyParameters) { - *out = *in - if in.PublicKey != nil { - in, out := &in.PublicKey, &out.PublicKey - *out = new(string) - **out = **in - } - if in.Username != nil { - in, out := &in.Username, &out.Username - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetAdminSSHKeyParameters. -func (in *LinuxVirtualMachineScaleSetAdminSSHKeyParameters) DeepCopy() *LinuxVirtualMachineScaleSetAdminSSHKeyParameters { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineScaleSetAdminSSHKeyParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetBootDiagnosticsObservation) { - *out = *in - if in.StorageAccountURI != nil { - in, out := &in.StorageAccountURI, &out.StorageAccountURI - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetBootDiagnosticsObservation. -func (in *LinuxVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopy() *LinuxVirtualMachineScaleSetBootDiagnosticsObservation { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineScaleSetBootDiagnosticsObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetBootDiagnosticsParameters) { - *out = *in - if in.StorageAccountURI != nil { - in, out := &in.StorageAccountURI, &out.StorageAccountURI - *out = new(string) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetBootDiagnosticsParameters. -func (in *LinuxVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopy() *LinuxVirtualMachineScaleSetBootDiagnosticsParameters { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineScaleSetBootDiagnosticsParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetDataDiskObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetDataDiskObservation) { - *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching - *out = new(string) - **out = **in - } - if in.CreateOption != nil { - in, out := &in.CreateOption, &out.CreateOption - *out = new(string) - **out = **in + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]DiffDiskSettingsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } if in.DiskEncryptionSetID != nil { in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID @@ -4932,29 +6099,24 @@ func (in *LinuxVirtualMachineScaleSetDataDiskObservation) DeepCopyInto(out *Linu *out = new(float64) **out = **in } - if in.Lun != nil { - in, out := &in.Lun, &out.Lun - *out = new(float64) - **out = **in - } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID *out = new(string) **out = **in } - if in.UltraSsdDiskIopsReadWrite != nil { - in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite - *out = new(float64) + if in.SecurityEncryptionType != nil { + in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + *out = new(string) **out = **in } - if in.UltraSsdDiskMbpsReadWrite != nil { - in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite - *out = new(float64) + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) **out = **in } if in.WriteAcceleratorEnabled != nil { @@ -4964,28 +6126,30 @@ func (in *LinuxVirtualMachineScaleSetDataDiskObservation) DeepCopyInto(out *Linu } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetDataDiskObservation. -func (in *LinuxVirtualMachineScaleSetDataDiskObservation) DeepCopy() *LinuxVirtualMachineScaleSetDataDiskObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineOsDiskObservation. +func (in *LinuxVirtualMachineOsDiskObservation) DeepCopy() *LinuxVirtualMachineOsDiskObservation { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetDataDiskObservation) + out := new(LinuxVirtualMachineOsDiskObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetDataDiskParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetDataDiskParameters) { +func (in *LinuxVirtualMachineOsDiskParameters) DeepCopyInto(out *LinuxVirtualMachineOsDiskParameters) { *out = *in if in.Caching != nil { in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } - if in.CreateOption != nil { - in, out := &in.CreateOption, &out.CreateOption - *out = new(string) - **out = **in + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]DiffDiskSettingsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } if in.DiskEncryptionSetID != nil { in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID @@ -4997,29 +6161,24 @@ func (in *LinuxVirtualMachineScaleSetDataDiskParameters) DeepCopyInto(out *Linux *out = new(float64) **out = **in } - if in.Lun != nil { - in, out := &in.Lun, &out.Lun - *out = new(float64) - **out = **in - } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID *out = new(string) **out = **in } - if in.UltraSsdDiskIopsReadWrite != nil { - in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite - *out = new(float64) + if in.SecurityEncryptionType != nil { + in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + *out = new(string) **out = **in } - if in.UltraSsdDiskMbpsReadWrite != nil { - in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite - *out = new(float64) + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) **out = **in } if in.WriteAcceleratorEnabled != nil { @@ -5029,450 +6188,246 @@ func (in *LinuxVirtualMachineScaleSetDataDiskParameters) DeepCopyInto(out *Linux } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetDataDiskParameters. -func (in *LinuxVirtualMachineScaleSetDataDiskParameters) DeepCopy() *LinuxVirtualMachineScaleSetDataDiskParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineOsDiskParameters. +func (in *LinuxVirtualMachineOsDiskParameters) DeepCopy() *LinuxVirtualMachineOsDiskParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetDataDiskParameters) + out := new(LinuxVirtualMachineOsDiskParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetGalleryApplicationObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetGalleryApplicationObservation) { +func (in *LinuxVirtualMachineParameters) DeepCopyInto(out *LinuxVirtualMachineParameters) { *out = *in - if in.ConfigurationBlobURI != nil { - in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]AdditionalCapabilitiesParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdminPasswordSecretRef != nil { + in, out := &in.AdminPasswordSecretRef, &out.AdminPasswordSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.AdminSSHKey != nil { + in, out := &in.AdminSSHKey, &out.AdminSSHKey + *out = make([]AdminSSHKeyParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername *out = new(string) **out = **in } - if in.Order != nil { - in, out := &in.Order, &out.Order - *out = new(float64) + if in.AllowExtensionOperations != nil { + in, out := &in.AllowExtensionOperations, &out.AllowExtensionOperations + *out = new(bool) **out = **in } - if in.Tag != nil { - in, out := &in.Tag, &out.Tag + if in.AvailabilitySetID != nil { + in, out := &in.AvailabilitySetID, &out.AvailabilitySetID *out = new(string) **out = **in } - if in.VersionID != nil { - in, out := &in.VersionID, &out.VersionID + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]BootDiagnosticsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetGalleryApplicationObservation. -func (in *LinuxVirtualMachineScaleSetGalleryApplicationObservation) DeepCopy() *LinuxVirtualMachineScaleSetGalleryApplicationObservation { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineScaleSetGalleryApplicationObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetGalleryApplicationParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetGalleryApplicationParameters) { - *out = *in - if in.ConfigurationBlobURI != nil { - in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + if in.ComputerName != nil { + in, out := &in.ComputerName, &out.ComputerName *out = new(string) **out = **in } - if in.Order != nil { - in, out := &in.Order, &out.Order - *out = new(float64) + if in.CustomDataSecretRef != nil { + in, out := &in.CustomDataSecretRef, &out.CustomDataSecretRef + *out = new(v1.SecretKeySelector) **out = **in } - if in.Tag != nil { - in, out := &in.Tag, &out.Tag + if in.DedicatedHostGroupID != nil { + in, out := &in.DedicatedHostGroupID, &out.DedicatedHostGroupID *out = new(string) **out = **in } - if in.VersionID != nil { - in, out := &in.VersionID, &out.VersionID + if in.DedicatedHostID != nil { + in, out := &in.DedicatedHostID, &out.DedicatedHostID *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetGalleryApplicationParameters. -func (in *LinuxVirtualMachineScaleSetGalleryApplicationParameters) DeepCopy() *LinuxVirtualMachineScaleSetGalleryApplicationParameters { - if in == nil { - return nil + if in.DisablePasswordAuthentication != nil { + in, out := &in.DisablePasswordAuthentication, &out.DisablePasswordAuthentication + *out = new(bool) + **out = **in } - out := new(LinuxVirtualMachineScaleSetGalleryApplicationParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetIdentityObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetIdentityObservation) { - *out = *in - if in.IdentityIds != nil { - in, out := &in.IdentityIds, &out.IdentityIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.PrincipalID != nil { - in, out := &in.PrincipalID, &out.PrincipalID + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone *out = new(string) **out = **in } - if in.TenantID != nil { - in, out := &in.TenantID, &out.TenantID - *out = new(string) + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetIdentityObservation. -func (in *LinuxVirtualMachineScaleSetIdentityObservation) DeepCopy() *LinuxVirtualMachineScaleSetIdentityObservation { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineScaleSetIdentityObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetIdentityParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetIdentityParameters) { - *out = *in - if in.IdentityIds != nil { - in, out := &in.IdentityIds, &out.IdentityIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetIdentityParameters. -func (in *LinuxVirtualMachineScaleSetIdentityParameters) DeepCopy() *LinuxVirtualMachineScaleSetIdentityParameters { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineScaleSetIdentityParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetList) DeepCopyInto(out *LinuxVirtualMachineScaleSetList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]LinuxVirtualMachineScaleSet, len(*in)) + if in.GalleryApplication != nil { + in, out := &in.GalleryApplication, &out.GalleryApplication + *out = make([]LinuxVirtualMachineGalleryApplicationParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetList. -func (in *LinuxVirtualMachineScaleSetList) DeepCopy() *LinuxVirtualMachineScaleSetList { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineScaleSetList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinuxVirtualMachineScaleSetList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetObservation) { - *out = *in - if in.AdditionalCapabilities != nil { - in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities - *out = make([]LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation, len(*in)) + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]LinuxVirtualMachineIdentityParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.AdminSSHKey != nil { - in, out := &in.AdminSSHKey, &out.AdminSSHKey - *out = make([]LinuxVirtualMachineScaleSetAdminSSHKeyObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in } - if in.AdminUsername != nil { - in, out := &in.AdminUsername, &out.AdminUsername + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.AutomaticInstanceRepair != nil { - in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair - *out = make([]AutomaticInstanceRepairObservation, len(*in)) + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice + *out = new(float64) + **out = **in + } + if in.NetworkInterfaceIds != nil { + in, out := &in.NetworkInterfaceIds, &out.NetworkInterfaceIds + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.AutomaticOsUpgradePolicy != nil { - in, out := &in.AutomaticOsUpgradePolicy, &out.AutomaticOsUpgradePolicy - *out = make([]AutomaticOsUpgradePolicyObservation, len(*in)) + if in.NetworkInterfaceIdsRefs != nil { + in, out := &in.NetworkInterfaceIdsRefs, &out.NetworkInterfaceIdsRefs + *out = make([]v1.Reference, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.BootDiagnostics != nil { - in, out := &in.BootDiagnostics, &out.BootDiagnostics - *out = make([]LinuxVirtualMachineScaleSetBootDiagnosticsObservation, len(*in)) + if in.NetworkInterfaceIdsSelector != nil { + in, out := &in.NetworkInterfaceIdsSelector, &out.NetworkInterfaceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]LinuxVirtualMachineOsDiskParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.CapacityReservationGroupID != nil { - in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID + if in.PatchAssessmentMode != nil { + in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode *out = new(string) **out = **in } - if in.ComputerNamePrefix != nil { - in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix + if in.PatchMode != nil { + in, out := &in.PatchMode, &out.PatchMode *out = new(string) **out = **in } - if in.DataDisk != nil { - in, out := &in.DataDisk, &out.DataDisk - *out = make([]LinuxVirtualMachineScaleSetDataDiskObservation, len(*in)) + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]PlanParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DisablePasswordAuthentication != nil { - in, out := &in.DisablePasswordAuthentication, &out.DisablePasswordAuthentication - *out = new(bool) - **out = **in - } - if in.DoNotRunExtensionsOnOverprovisionedMachines != nil { - in, out := &in.DoNotRunExtensionsOnOverprovisionedMachines, &out.DoNotRunExtensionsOnOverprovisionedMachines - *out = new(bool) + if in.PlatformFaultDomain != nil { + in, out := &in.PlatformFaultDomain, &out.PlatformFaultDomain + *out = new(float64) **out = **in } - if in.EdgeZone != nil { - in, out := &in.EdgeZone, &out.EdgeZone + if in.Priority != nil { + in, out := &in.Priority, &out.Priority *out = new(string) **out = **in } - if in.EncryptionAtHostEnabled != nil { - in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent *out = new(bool) **out = **in } - if in.EvictionPolicy != nil { - in, out := &in.EvictionPolicy, &out.EvictionPolicy + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID *out = new(string) **out = **in } - if in.Extension != nil { - in, out := &in.Extension, &out.Extension - *out = make([]ExtensionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ExtensionOperationsEnabled != nil { - in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled - *out = new(bool) - **out = **in - } - if in.ExtensionsTimeBudget != nil { - in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName *out = new(string) **out = **in } - if in.GalleryApplication != nil { - in, out := &in.GalleryApplication, &out.GalleryApplication - *out = make([]LinuxVirtualMachineScaleSetGalleryApplicationObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) } - if in.GalleryApplications != nil { - in, out := &in.GalleryApplications, &out.GalleryApplications - *out = make([]GalleryApplicationsObservation, len(*in)) + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]SecretParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.HealthProbeID != nil { - in, out := &in.HealthProbeID, &out.HealthProbeID - *out = new(string) + if in.SecureBootEnabled != nil { + in, out := &in.SecureBootEnabled, &out.SecureBootEnabled + *out = new(bool) **out = **in } - if in.HostGroupID != nil { - in, out := &in.HostGroupID, &out.HostGroupID + if in.Size != nil { + in, out := &in.Size, &out.Size *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID *out = new(string) **out = **in } - if in.Identity != nil { - in, out := &in.Identity, &out.Identity - *out = make([]LinuxVirtualMachineScaleSetIdentityObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Instances != nil { - in, out := &in.Instances, &out.Instances - *out = new(float64) - **out = **in - } - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) - **out = **in - } - if in.MaxBidPrice != nil { - in, out := &in.MaxBidPrice, &out.MaxBidPrice - *out = new(float64) - **out = **in - } - if in.NetworkInterface != nil { - in, out := &in.NetworkInterface, &out.NetworkInterface - *out = make([]NetworkInterfaceObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.OsDisk != nil { - in, out := &in.OsDisk, &out.OsDisk - *out = make([]LinuxVirtualMachineScaleSetOsDiskObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Overprovision != nil { - in, out := &in.Overprovision, &out.Overprovision - *out = new(bool) - **out = **in - } - if in.Plan != nil { - in, out := &in.Plan, &out.Plan - *out = make([]LinuxVirtualMachineScaleSetPlanObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PlatformFaultDomainCount != nil { - in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount - *out = new(float64) - **out = **in - } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(string) - **out = **in - } - if in.ProvisionVMAgent != nil { - in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent - *out = new(bool) - **out = **in - } - if in.ProximityPlacementGroupID != nil { - in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID - *out = new(string) - **out = **in - } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } - if in.RollingUpgradePolicy != nil { - in, out := &in.RollingUpgradePolicy, &out.RollingUpgradePolicy - *out = make([]RollingUpgradePolicyObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ScaleIn != nil { - in, out := &in.ScaleIn, &out.ScaleIn - *out = make([]ScaleInObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ScaleInPolicy != nil { - in, out := &in.ScaleInPolicy, &out.ScaleInPolicy - *out = new(string) - **out = **in - } - if in.Secret != nil { - in, out := &in.Secret, &out.Secret - *out = make([]LinuxVirtualMachineScaleSetSecretObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SecureBootEnabled != nil { - in, out := &in.SecureBootEnabled, &out.SecureBootEnabled - *out = new(bool) - **out = **in - } - if in.SinglePlacementGroup != nil { - in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup - *out = new(bool) - **out = **in - } - if in.Sku != nil { - in, out := &in.Sku, &out.Sku - *out = new(string) - **out = **in - } - if in.SourceImageID != nil { - in, out := &in.SourceImageID, &out.SourceImageID - *out = new(string) - **out = **in - } - if in.SourceImageReference != nil { - in, out := &in.SourceImageReference, &out.SourceImageReference - *out = make([]LinuxVirtualMachineScaleSetSourceImageReferenceObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SpotRestore != nil { - in, out := &in.SpotRestore, &out.SpotRestore - *out = make([]SpotRestoreObservation, len(*in)) + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]SourceImageReferenceParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -5492,32 +6447,20 @@ func (in *LinuxVirtualMachineScaleSetObservation) DeepCopyInto(out *LinuxVirtual (*out)[key] = outVal } } - if in.TerminateNotification != nil { - in, out := &in.TerminateNotification, &out.TerminateNotification - *out = make([]TerminateNotificationObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } if in.TerminationNotification != nil { in, out := &in.TerminationNotification, &out.TerminationNotification - *out = make([]LinuxVirtualMachineScaleSetTerminationNotificationObservation, len(*in)) + *out = make([]TerminationNotificationParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.UniqueID != nil { - in, out := &in.UniqueID, &out.UniqueID - *out = new(string) - **out = **in - } - if in.UpgradeMode != nil { - in, out := &in.UpgradeMode, &out.UpgradeMode + if in.UserData != nil { + in, out := &in.UserData, &out.UserData *out = new(string) **out = **in } - if in.UserData != nil { - in, out := &in.UserData, &out.UserData + if in.VirtualMachineScaleSetID != nil { + in, out := &in.VirtualMachineScaleSetID, &out.VirtualMachineScaleSetID *out = new(string) **out = **in } @@ -5526,1059 +6469,896 @@ func (in *LinuxVirtualMachineScaleSetObservation) DeepCopyInto(out *LinuxVirtual *out = new(bool) **out = **in } - if in.ZoneBalance != nil { - in, out := &in.ZoneBalance, &out.ZoneBalance - *out = new(bool) + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) **out = **in } - if in.Zones != nil { - in, out := &in.Zones, &out.Zones - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetObservation. -func (in *LinuxVirtualMachineScaleSetObservation) DeepCopy() *LinuxVirtualMachineScaleSetObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineParameters. +func (in *LinuxVirtualMachineParameters) DeepCopy() *LinuxVirtualMachineParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetObservation) + out := new(LinuxVirtualMachineParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetOsDiskObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetOsDiskObservation) { +func (in *LinuxVirtualMachineScaleSet) DeepCopyInto(out *LinuxVirtualMachineScaleSet) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching - *out = new(string) - **out = **in - } - if in.DiffDiskSettings != nil { - in, out := &in.DiffDiskSettings, &out.DiffDiskSettings - *out = make([]OsDiskDiffDiskSettingsObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID - *out = new(string) - **out = **in - } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb - *out = new(float64) - **out = **in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSet. +func (in *LinuxVirtualMachineScaleSet) DeepCopy() *LinuxVirtualMachineScaleSet { + if in == nil { + return nil } - if in.SecureVMDiskEncryptionSetID != nil { - in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID - *out = new(string) - **out = **in + out := new(LinuxVirtualMachineScaleSet) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinuxVirtualMachineScaleSet) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c } - if in.SecurityEncryptionType != nil { - in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType - *out = new(string) + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) { + *out = *in + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters. +func (in *LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters { + if in == nil { + return nil } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + out := new(LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation) { + *out = *in + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetOsDiskObservation. -func (in *LinuxVirtualMachineScaleSetOsDiskObservation) DeepCopy() *LinuxVirtualMachineScaleSetOsDiskObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation. +func (in *LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopy() *LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetOsDiskObservation) + out := new(LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetOsDiskParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetOsDiskParameters) { +func (in *LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching - *out = new(string) + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) **out = **in } - if in.DiffDiskSettings != nil { - in, out := &in.DiffDiskSettings, &out.DiffDiskSettings - *out = make([]OsDiskDiffDiskSettingsParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters. +func (in *LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopy() *LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters { + if in == nil { + return nil } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + out := new(LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters) { + *out = *in + if in.PublicKey != nil { + in, out := &in.PublicKey, &out.PublicKey *out = new(string) **out = **in } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb - *out = new(float64) + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) **out = **in } - if in.SecureVMDiskEncryptionSetID != nil { - in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters. +func (in *LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters { + if in == nil { + return nil + } + out := new(LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetAdminSSHKeyObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetAdminSSHKeyObservation) { + *out = *in + if in.PublicKey != nil { + in, out := &in.PublicKey, &out.PublicKey *out = new(string) **out = **in } - if in.SecurityEncryptionType != nil { - in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + if in.Username != nil { + in, out := &in.Username, &out.Username *out = new(string) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetAdminSSHKeyObservation. +func (in *LinuxVirtualMachineScaleSetAdminSSHKeyObservation) DeepCopy() *LinuxVirtualMachineScaleSetAdminSSHKeyObservation { + if in == nil { + return nil + } + out := new(LinuxVirtualMachineScaleSetAdminSSHKeyObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetAdminSSHKeyParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetAdminSSHKeyParameters) { + *out = *in + if in.PublicKey != nil { + in, out := &in.PublicKey, &out.PublicKey *out = new(string) **out = **in } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetOsDiskParameters. -func (in *LinuxVirtualMachineScaleSetOsDiskParameters) DeepCopy() *LinuxVirtualMachineScaleSetOsDiskParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetAdminSSHKeyParameters. +func (in *LinuxVirtualMachineScaleSetAdminSSHKeyParameters) DeepCopy() *LinuxVirtualMachineScaleSetAdminSSHKeyParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetOsDiskParameters) + out := new(LinuxVirtualMachineScaleSetAdminSSHKeyParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetParameters) { +func (in *LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters) { *out = *in - if in.AdditionalCapabilities != nil { - in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities - *out = make([]LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AdminPasswordSecretRef != nil { - in, out := &in.AdminPasswordSecretRef, &out.AdminPasswordSecretRef - *out = new(v1.SecretKeySelector) + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI + *out = new(string) **out = **in } - if in.AdminSSHKey != nil { - in, out := &in.AdminSSHKey, &out.AdminSSHKey - *out = make([]LinuxVirtualMachineScaleSetAdminSSHKeyParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters. +func (in *LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters { + if in == nil { + return nil } - if in.AdminUsername != nil { - in, out := &in.AdminUsername, &out.AdminUsername + out := new(LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetBootDiagnosticsObservation) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI *out = new(string) **out = **in } - if in.AutomaticInstanceRepair != nil { - in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair - *out = make([]AutomaticInstanceRepairParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetBootDiagnosticsObservation. +func (in *LinuxVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopy() *LinuxVirtualMachineScaleSetBootDiagnosticsObservation { + if in == nil { + return nil } - if in.AutomaticOsUpgradePolicy != nil { - in, out := &in.AutomaticOsUpgradePolicy, &out.AutomaticOsUpgradePolicy - *out = make([]AutomaticOsUpgradePolicyParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + out := new(LinuxVirtualMachineScaleSetBootDiagnosticsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetBootDiagnosticsParameters) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI + *out = new(string) + **out = **in } - if in.BootDiagnostics != nil { - in, out := &in.BootDiagnostics, &out.BootDiagnostics - *out = make([]LinuxVirtualMachineScaleSetBootDiagnosticsParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetBootDiagnosticsParameters. +func (in *LinuxVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopy() *LinuxVirtualMachineScaleSetBootDiagnosticsParameters { + if in == nil { + return nil } - if in.CapacityReservationGroupID != nil { - in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID + out := new(LinuxVirtualMachineScaleSetBootDiagnosticsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetDataDiskInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetDataDiskInitParameters) { + *out = *in + if in.Caching != nil { + in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } - if in.ComputerNamePrefix != nil { - in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption *out = new(string) **out = **in } - if in.CustomDataSecretRef != nil { - in, out := &in.CustomDataSecretRef, &out.CustomDataSecretRef - *out = new(v1.SecretKeySelector) + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) **out = **in } - if in.DataDisk != nil { - in, out := &in.DataDisk, &out.DataDisk - *out = make([]LinuxVirtualMachineScaleSetDataDiskParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DisablePasswordAuthentication != nil { - in, out := &in.DisablePasswordAuthentication, &out.DisablePasswordAuthentication - *out = new(bool) + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) **out = **in } - if in.DoNotRunExtensionsOnOverprovisionedMachines != nil { - in, out := &in.DoNotRunExtensionsOnOverprovisionedMachines, &out.DoNotRunExtensionsOnOverprovisionedMachines - *out = new(bool) + if in.Lun != nil { + in, out := &in.Lun, &out.Lun + *out = new(float64) **out = **in } - if in.EdgeZone != nil { - in, out := &in.EdgeZone, &out.EdgeZone + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.EncryptionAtHostEnabled != nil { - in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled - *out = new(bool) + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) **out = **in } - if in.EvictionPolicy != nil { - in, out := &in.EvictionPolicy, &out.EvictionPolicy - *out = new(string) + if in.UltraSsdDiskIopsReadWrite != nil { + in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite + *out = new(float64) **out = **in } - if in.Extension != nil { - in, out := &in.Extension, &out.Extension - *out = make([]ExtensionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.UltraSsdDiskMbpsReadWrite != nil { + in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite + *out = new(float64) + **out = **in } - if in.ExtensionOperationsEnabled != nil { - in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled *out = new(bool) **out = **in } - if in.ExtensionsTimeBudget != nil { - in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetDataDiskInitParameters. +func (in *LinuxVirtualMachineScaleSetDataDiskInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetDataDiskInitParameters { + if in == nil { + return nil + } + out := new(LinuxVirtualMachineScaleSetDataDiskInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetDataDiskObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetDataDiskObservation) { + *out = *in + if in.Caching != nil { + in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } - if in.GalleryApplication != nil { - in, out := &in.GalleryApplication, &out.GalleryApplication - *out = make([]LinuxVirtualMachineScaleSetGalleryApplicationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption + *out = new(string) + **out = **in } - if in.GalleryApplications != nil { - in, out := &in.GalleryApplications, &out.GalleryApplications - *out = make([]GalleryApplicationsParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.HealthProbeID != nil { - in, out := &in.HealthProbeID, &out.HealthProbeID + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID *out = new(string) **out = **in } - if in.HostGroupID != nil { - in, out := &in.HostGroupID, &out.HostGroupID - *out = new(string) + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) **out = **in } - if in.Identity != nil { - in, out := &in.Identity, &out.Identity - *out = make([]LinuxVirtualMachineScaleSetIdentityParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Instances != nil { - in, out := &in.Instances, &out.Instances + if in.Lun != nil { + in, out := &in.Lun, &out.Lun *out = new(float64) **out = **in } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.MaxBidPrice != nil { - in, out := &in.MaxBidPrice, &out.MaxBidPrice - *out = new(float64) - **out = **in - } - if in.NetworkInterface != nil { - in, out := &in.NetworkInterface, &out.NetworkInterface - *out = make([]NetworkInterfaceParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.OsDisk != nil { - in, out := &in.OsDisk, &out.OsDisk - *out = make([]LinuxVirtualMachineScaleSetOsDiskParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Overprovision != nil { - in, out := &in.Overprovision, &out.Overprovision - *out = new(bool) + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) **out = **in } - if in.Plan != nil { - in, out := &in.Plan, &out.Plan - *out = make([]LinuxVirtualMachineScaleSetPlanParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PlatformFaultDomainCount != nil { - in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount + if in.UltraSsdDiskIopsReadWrite != nil { + in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite *out = new(float64) **out = **in } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(string) + if in.UltraSsdDiskMbpsReadWrite != nil { + in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite + *out = new(float64) **out = **in } - if in.ProvisionVMAgent != nil { - in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled *out = new(bool) **out = **in } - if in.ProximityPlacementGroupID != nil { - in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetDataDiskObservation. +func (in *LinuxVirtualMachineScaleSetDataDiskObservation) DeepCopy() *LinuxVirtualMachineScaleSetDataDiskObservation { + if in == nil { + return nil + } + out := new(LinuxVirtualMachineScaleSetDataDiskObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetDataDiskParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetDataDiskParameters) { + *out = *in + if in.Caching != nil { + in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.RollingUpgradePolicy != nil { - in, out := &in.RollingUpgradePolicy, &out.RollingUpgradePolicy - *out = make([]RollingUpgradePolicyParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ScaleIn != nil { - in, out := &in.ScaleIn, &out.ScaleIn - *out = make([]ScaleInParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Secret != nil { - in, out := &in.Secret, &out.Secret - *out = make([]LinuxVirtualMachineScaleSetSecretParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SecureBootEnabled != nil { - in, out := &in.SecureBootEnabled, &out.SecureBootEnabled - *out = new(bool) + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) **out = **in } - if in.SinglePlacementGroup != nil { - in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup - *out = new(bool) + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) **out = **in } - if in.Sku != nil { - in, out := &in.Sku, &out.Sku - *out = new(string) + if in.Lun != nil { + in, out := &in.Lun, &out.Lun + *out = new(float64) **out = **in } - if in.SourceImageID != nil { - in, out := &in.SourceImageID, &out.SourceImageID + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.SourceImageReference != nil { - in, out := &in.SourceImageReference, &out.SourceImageReference - *out = make([]LinuxVirtualMachineScaleSetSourceImageReferenceParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SpotRestore != nil { - in, out := &in.SpotRestore, &out.SpotRestore - *out = make([]SpotRestoreParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.TerminateNotification != nil { - in, out := &in.TerminateNotification, &out.TerminateNotification - *out = make([]TerminateNotificationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.TerminationNotification != nil { - in, out := &in.TerminationNotification, &out.TerminationNotification - *out = make([]LinuxVirtualMachineScaleSetTerminationNotificationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.UpgradeMode != nil { - in, out := &in.UpgradeMode, &out.UpgradeMode + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType *out = new(string) **out = **in } - if in.UserData != nil { - in, out := &in.UserData, &out.UserData - *out = new(string) + if in.UltraSsdDiskIopsReadWrite != nil { + in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite + *out = new(float64) **out = **in } - if in.VtpmEnabled != nil { - in, out := &in.VtpmEnabled, &out.VtpmEnabled - *out = new(bool) + if in.UltraSsdDiskMbpsReadWrite != nil { + in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite + *out = new(float64) **out = **in } - if in.ZoneBalance != nil { - in, out := &in.ZoneBalance, &out.ZoneBalance + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled *out = new(bool) **out = **in } - if in.Zones != nil { - in, out := &in.Zones, &out.Zones - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetParameters. -func (in *LinuxVirtualMachineScaleSetParameters) DeepCopy() *LinuxVirtualMachineScaleSetParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetDataDiskParameters. +func (in *LinuxVirtualMachineScaleSetDataDiskParameters) DeepCopy() *LinuxVirtualMachineScaleSetDataDiskParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetParameters) + out := new(LinuxVirtualMachineScaleSetDataDiskParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetPlanObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetPlanObservation) { +func (in *LinuxVirtualMachineScaleSetGalleryApplicationInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetGalleryApplicationInitParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.ConfigurationBlobURI != nil { + in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI *out = new(string) **out = **in } - if in.Product != nil { - in, out := &in.Product, &out.Product + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag *out = new(string) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.VersionID != nil { + in, out := &in.VersionID, &out.VersionID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetPlanObservation. -func (in *LinuxVirtualMachineScaleSetPlanObservation) DeepCopy() *LinuxVirtualMachineScaleSetPlanObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetGalleryApplicationInitParameters. +func (in *LinuxVirtualMachineScaleSetGalleryApplicationInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetGalleryApplicationInitParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetPlanObservation) + out := new(LinuxVirtualMachineScaleSetGalleryApplicationInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetPlanParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetPlanParameters) { +func (in *LinuxVirtualMachineScaleSetGalleryApplicationObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetGalleryApplicationObservation) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.ConfigurationBlobURI != nil { + in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + *out = new(string) **out = **in } - if in.Product != nil { - in, out := &in.Product, &out.Product + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag *out = new(string) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.VersionID != nil { + in, out := &in.VersionID, &out.VersionID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetPlanParameters. -func (in *LinuxVirtualMachineScaleSetPlanParameters) DeepCopy() *LinuxVirtualMachineScaleSetPlanParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetGalleryApplicationObservation. +func (in *LinuxVirtualMachineScaleSetGalleryApplicationObservation) DeepCopy() *LinuxVirtualMachineScaleSetGalleryApplicationObservation { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetPlanParameters) + out := new(LinuxVirtualMachineScaleSetGalleryApplicationObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetSecretObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetSecretObservation) { +func (in *LinuxVirtualMachineScaleSetGalleryApplicationParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetGalleryApplicationParameters) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = make([]SecretCertificateObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ConfigurationBlobURI != nil { + in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + *out = new(string) + **out = **in } - if in.KeyVaultID != nil { - in, out := &in.KeyVaultID, &out.KeyVaultID + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } + if in.VersionID != nil { + in, out := &in.VersionID, &out.VersionID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSecretObservation. -func (in *LinuxVirtualMachineScaleSetSecretObservation) DeepCopy() *LinuxVirtualMachineScaleSetSecretObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetGalleryApplicationParameters. +func (in *LinuxVirtualMachineScaleSetGalleryApplicationParameters) DeepCopy() *LinuxVirtualMachineScaleSetGalleryApplicationParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetSecretObservation) + out := new(LinuxVirtualMachineScaleSetGalleryApplicationParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetSecretParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetSecretParameters) { +func (in *LinuxVirtualMachineScaleSetIdentityInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetIdentityInitParameters) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = make([]SecretCertificateParameters, len(*in)) + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.KeyVaultID != nil { - in, out := &in.KeyVaultID, &out.KeyVaultID + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSecretParameters. -func (in *LinuxVirtualMachineScaleSetSecretParameters) DeepCopy() *LinuxVirtualMachineScaleSetSecretParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetIdentityInitParameters. +func (in *LinuxVirtualMachineScaleSetIdentityInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetIdentityInitParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetSecretParameters) + out := new(LinuxVirtualMachineScaleSetIdentityInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetSourceImageReferenceObservation) { +func (in *LinuxVirtualMachineScaleSetIdentityObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetIdentityObservation) { *out = *in - if in.Offer != nil { - in, out := &in.Offer, &out.Offer - *out = new(string) - **out = **in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID *out = new(string) **out = **in } - if in.Sku != nil { - in, out := &in.Sku, &out.Sku + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID *out = new(string) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSourceImageReferenceObservation. -func (in *LinuxVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopy() *LinuxVirtualMachineScaleSetSourceImageReferenceObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetIdentityObservation. +func (in *LinuxVirtualMachineScaleSetIdentityObservation) DeepCopy() *LinuxVirtualMachineScaleSetIdentityObservation { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetSourceImageReferenceObservation) + out := new(LinuxVirtualMachineScaleSetIdentityObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetSourceImageReferenceParameters) { +func (in *LinuxVirtualMachineScaleSetIdentityParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetIdentityParameters) { *out = *in - if in.Offer != nil { - in, out := &in.Offer, &out.Offer - *out = new(string) - **out = **in - } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher - *out = new(string) - **out = **in - } - if in.Sku != nil { - in, out := &in.Sku, &out.Sku - *out = new(string) - **out = **in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSourceImageReferenceParameters. -func (in *LinuxVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopy() *LinuxVirtualMachineScaleSetSourceImageReferenceParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetIdentityParameters. +func (in *LinuxVirtualMachineScaleSetIdentityParameters) DeepCopy() *LinuxVirtualMachineScaleSetIdentityParameters { if in == nil { return nil } - out := new(LinuxVirtualMachineScaleSetSourceImageReferenceParameters) + out := new(LinuxVirtualMachineScaleSetIdentityParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetSpec) DeepCopyInto(out *LinuxVirtualMachineScaleSetSpec) { +func (in *LinuxVirtualMachineScaleSetInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetInitParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSpec. -func (in *LinuxVirtualMachineScaleSetSpec) DeepCopy() *LinuxVirtualMachineScaleSetSpec { - if in == nil { - return nil + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(LinuxVirtualMachineScaleSetSpec) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetStatus) DeepCopyInto(out *LinuxVirtualMachineScaleSetStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetStatus. -func (in *LinuxVirtualMachineScaleSetStatus) DeepCopy() *LinuxVirtualMachineScaleSetStatus { - if in == nil { - return nil + if in.AdminSSHKey != nil { + in, out := &in.AdminSSHKey, &out.AdminSSHKey + *out = make([]LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(LinuxVirtualMachineScaleSetStatus) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetTerminationNotificationObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetTerminationNotificationObservation) { - *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) **out = **in } - if in.Timeout != nil { - in, out := &in.Timeout, &out.Timeout + if in.AutomaticInstanceRepair != nil { + in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair + *out = make([]AutomaticInstanceRepairInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutomaticOsUpgradePolicy != nil { + in, out := &in.AutomaticOsUpgradePolicy, &out.AutomaticOsUpgradePolicy + *out = make([]AutomaticOsUpgradePolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetTerminationNotificationObservation. -func (in *LinuxVirtualMachineScaleSetTerminationNotificationObservation) DeepCopy() *LinuxVirtualMachineScaleSetTerminationNotificationObservation { - if in == nil { - return nil + if in.ComputerNamePrefix != nil { + in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix + *out = new(string) + **out = **in } - out := new(LinuxVirtualMachineScaleSetTerminationNotificationObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineScaleSetTerminationNotificationParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetTerminationNotificationParameters) { - *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled + if in.DataDisk != nil { + in, out := &in.DataDisk, &out.DataDisk + *out = make([]LinuxVirtualMachineScaleSetDataDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DisablePasswordAuthentication != nil { + in, out := &in.DisablePasswordAuthentication, &out.DisablePasswordAuthentication *out = new(bool) **out = **in } - if in.Timeout != nil { - in, out := &in.Timeout, &out.Timeout + if in.DoNotRunExtensionsOnOverprovisionedMachines != nil { + in, out := &in.DoNotRunExtensionsOnOverprovisionedMachines, &out.DoNotRunExtensionsOnOverprovisionedMachines + *out = new(bool) + **out = **in + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetTerminationNotificationParameters. -func (in *LinuxVirtualMachineScaleSetTerminationNotificationParameters) DeepCopy() *LinuxVirtualMachineScaleSetTerminationNotificationParameters { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineScaleSetTerminationNotificationParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineSpec) DeepCopyInto(out *LinuxVirtualMachineSpec) { - *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineSpec. -func (in *LinuxVirtualMachineSpec) DeepCopy() *LinuxVirtualMachineSpec { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineSpec) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxVirtualMachineStatus) DeepCopyInto(out *LinuxVirtualMachineStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineStatus. -func (in *LinuxVirtualMachineStatus) DeepCopy() *LinuxVirtualMachineStatus { - if in == nil { - return nil - } - out := new(LinuxVirtualMachineStatus) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManageActionObservation) DeepCopyInto(out *ManageActionObservation) { - *out = *in - if in.Install != nil { - in, out := &in.Install, &out.Install - *out = new(string) - **out = **in - } - if in.Remove != nil { - in, out := &in.Remove, &out.Remove - *out = new(string) + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) **out = **in } - if in.Update != nil { - in, out := &in.Update, &out.Update + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManageActionObservation. -func (in *ManageActionObservation) DeepCopy() *ManageActionObservation { - if in == nil { - return nil - } - out := new(ManageActionObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManageActionParameters) DeepCopyInto(out *ManageActionParameters) { - *out = *in - if in.Install != nil { - in, out := &in.Install, &out.Install - *out = new(string) - **out = **in + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]ExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Remove != nil { - in, out := &in.Remove, &out.Remove - *out = new(string) + if in.ExtensionOperationsEnabled != nil { + in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled + *out = new(bool) **out = **in } - if in.Update != nil { - in, out := &in.Update, &out.Update + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManageActionParameters. -func (in *ManageActionParameters) DeepCopy() *ManageActionParameters { - if in == nil { - return nil - } - out := new(ManageActionParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDisk) DeepCopyInto(out *ManagedDisk) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDisk. -func (in *ManagedDisk) DeepCopy() *ManagedDisk { - if in == nil { - return nil - } - out := new(ManagedDisk) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ManagedDisk) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskList) DeepCopyInto(out *ManagedDiskList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ManagedDisk, len(*in)) + if in.GalleryApplication != nil { + in, out := &in.GalleryApplication, &out.GalleryApplication + *out = make([]LinuxVirtualMachineScaleSetGalleryApplicationInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskList. -func (in *ManagedDiskList) DeepCopy() *ManagedDiskList { - if in == nil { - return nil - } - out := new(ManagedDiskList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ManagedDiskList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c + if in.GalleryApplications != nil { + in, out := &in.GalleryApplications, &out.GalleryApplications + *out = make([]GalleryApplicationsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskObservation) DeepCopyInto(out *ManagedDiskObservation) { - *out = *in - if in.CreateOption != nil { - in, out := &in.CreateOption, &out.CreateOption + if in.HealthProbeID != nil { + in, out := &in.HealthProbeID, &out.HealthProbeID *out = new(string) **out = **in } - if in.DiskAccessID != nil { - in, out := &in.DiskAccessID, &out.DiskAccessID + if in.HostGroupID != nil { + in, out := &in.HostGroupID, &out.HostGroupID *out = new(string) **out = **in } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID - *out = new(string) - **out = **in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]LinuxVirtualMachineScaleSetIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.DiskIopsReadOnly != nil { - in, out := &in.DiskIopsReadOnly, &out.DiskIopsReadOnly + if in.Instances != nil { + in, out := &in.Instances, &out.Instances *out = new(float64) **out = **in } - if in.DiskIopsReadWrite != nil { - in, out := &in.DiskIopsReadWrite, &out.DiskIopsReadWrite - *out = new(float64) + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) **out = **in } - if in.DiskMbpsReadOnly != nil { - in, out := &in.DiskMbpsReadOnly, &out.DiskMbpsReadOnly + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice *out = new(float64) **out = **in } - if in.DiskMbpsReadWrite != nil { - in, out := &in.DiskMbpsReadWrite, &out.DiskMbpsReadWrite - *out = new(float64) - **out = **in + if in.NetworkInterface != nil { + in, out := &in.NetworkInterface, &out.NetworkInterface + *out = make([]NetworkInterfaceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb - *out = new(float64) - **out = **in + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]LinuxVirtualMachineScaleSetOsDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.EdgeZone != nil { - in, out := &in.EdgeZone, &out.EdgeZone - *out = new(string) + if in.Overprovision != nil { + in, out := &in.Overprovision, &out.Overprovision + *out = new(bool) **out = **in } - if in.EncryptionSettings != nil { - in, out := &in.EncryptionSettings, &out.EncryptionSettings - *out = make([]EncryptionSettingsObservation, len(*in)) + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]LinuxVirtualMachineScaleSetPlanInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.GalleryImageReferenceID != nil { - in, out := &in.GalleryImageReferenceID, &out.GalleryImageReferenceID - *out = new(string) - **out = **in - } - if in.HyperVGeneration != nil { - in, out := &in.HyperVGeneration, &out.HyperVGeneration - *out = new(string) + if in.PlatformFaultDomainCount != nil { + in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount + *out = new(float64) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.Priority != nil { + in, out := &in.Priority, &out.Priority *out = new(string) **out = **in } - if in.ImageReferenceID != nil { - in, out := &in.ImageReferenceID, &out.ImageReferenceID - *out = new(string) + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + *out = new(bool) **out = **in } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID *out = new(string) **out = **in } - if in.LogicalSectorSize != nil { - in, out := &in.LogicalSectorSize, &out.LogicalSectorSize - *out = new(float64) - **out = **in + if in.RollingUpgradePolicy != nil { + in, out := &in.RollingUpgradePolicy, &out.RollingUpgradePolicy + *out = make([]RollingUpgradePolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.MaxShares != nil { - in, out := &in.MaxShares, &out.MaxShares - *out = new(float64) - **out = **in + if in.ScaleIn != nil { + in, out := &in.ScaleIn, &out.ScaleIn + *out = make([]ScaleInInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.NetworkAccessPolicy != nil { - in, out := &in.NetworkAccessPolicy, &out.NetworkAccessPolicy - *out = new(string) - **out = **in + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]LinuxVirtualMachineScaleSetSecretInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.OnDemandBurstingEnabled != nil { - in, out := &in.OnDemandBurstingEnabled, &out.OnDemandBurstingEnabled + if in.SecureBootEnabled != nil { + in, out := &in.SecureBootEnabled, &out.SecureBootEnabled *out = new(bool) **out = **in } - if in.OsType != nil { - in, out := &in.OsType, &out.OsType - *out = new(string) - **out = **in - } - if in.PublicNetworkAccessEnabled != nil { - in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + if in.SinglePlacementGroup != nil { + in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup *out = new(bool) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } - if in.SecureVMDiskEncryptionSetID != nil { - in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID - *out = new(string) - **out = **in - } - if in.SecurityType != nil { - in, out := &in.SecurityType, &out.SecurityType - *out = new(string) - **out = **in - } - if in.SourceResourceID != nil { - in, out := &in.SourceResourceID, &out.SourceResourceID + if in.Sku != nil { + in, out := &in.Sku, &out.Sku *out = new(string) **out = **in } - if in.SourceURI != nil { - in, out := &in.SourceURI, &out.SourceURI + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID *out = new(string) **out = **in } - if in.StorageAccountID != nil { - in, out := &in.StorageAccountID, &out.StorageAccountID - *out = new(string) - **out = **in + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType - *out = new(string) - **out = **in + if in.SpotRestore != nil { + in, out := &in.SpotRestore, &out.SpotRestore + *out = make([]SpotRestoreInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } if in.Tags != nil { in, out := &in.Tags, &out.Tags @@ -6595,198 +7375,359 @@ func (in *ManagedDiskObservation) DeepCopyInto(out *ManagedDiskObservation) { (*out)[key] = outVal } } - if in.Tier != nil { - in, out := &in.Tier, &out.Tier + if in.TerminateNotification != nil { + in, out := &in.TerminateNotification, &out.TerminateNotification + *out = make([]TerminateNotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TerminationNotification != nil { + in, out := &in.TerminationNotification, &out.TerminationNotification + *out = make([]LinuxVirtualMachineScaleSetTerminationNotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UpgradeMode != nil { + in, out := &in.UpgradeMode, &out.UpgradeMode *out = new(string) **out = **in } - if in.TrustedLaunchEnabled != nil { - in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled - *out = new(bool) + if in.UserData != nil { + in, out := &in.UserData, &out.UserData + *out = new(string) **out = **in } - if in.UploadSizeBytes != nil { - in, out := &in.UploadSizeBytes, &out.UploadSizeBytes - *out = new(float64) + if in.VtpmEnabled != nil { + in, out := &in.VtpmEnabled, &out.VtpmEnabled + *out = new(bool) **out = **in } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone - *out = new(string) + if in.ZoneBalance != nil { + in, out := &in.ZoneBalance, &out.ZoneBalance + *out = new(bool) **out = **in } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskObservation. -func (in *ManagedDiskObservation) DeepCopy() *ManagedDiskObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetInitParameters. +func (in *LinuxVirtualMachineScaleSetInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetInitParameters { if in == nil { return nil } - out := new(ManagedDiskObservation) + out := new(LinuxVirtualMachineScaleSetInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskParameters) DeepCopyInto(out *ManagedDiskParameters) { +func (in *LinuxVirtualMachineScaleSetList) DeepCopyInto(out *LinuxVirtualMachineScaleSetList) { *out = *in - if in.CreateOption != nil { - in, out := &in.CreateOption, &out.CreateOption + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LinuxVirtualMachineScaleSet, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetList. +func (in *LinuxVirtualMachineScaleSetList) DeepCopy() *LinuxVirtualMachineScaleSetList { + if in == nil { + return nil + } + out := new(LinuxVirtualMachineScaleSetList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinuxVirtualMachineScaleSetList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetObservation) { + *out = *in + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdminSSHKey != nil { + in, out := &in.AdminSSHKey, &out.AdminSSHKey + *out = make([]LinuxVirtualMachineScaleSetAdminSSHKeyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername *out = new(string) **out = **in } - if in.DiskAccessID != nil { - in, out := &in.DiskAccessID, &out.DiskAccessID + if in.AutomaticInstanceRepair != nil { + in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair + *out = make([]AutomaticInstanceRepairObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutomaticOsUpgradePolicy != nil { + in, out := &in.AutomaticOsUpgradePolicy, &out.AutomaticOsUpgradePolicy + *out = make([]AutomaticOsUpgradePolicyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]LinuxVirtualMachineScaleSetBootDiagnosticsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID *out = new(string) **out = **in } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + if in.ComputerNamePrefix != nil { + in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix *out = new(string) **out = **in } - if in.DiskIopsReadOnly != nil { - in, out := &in.DiskIopsReadOnly, &out.DiskIopsReadOnly - *out = new(float64) - **out = **in + if in.DataDisk != nil { + in, out := &in.DataDisk, &out.DataDisk + *out = make([]LinuxVirtualMachineScaleSetDataDiskObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.DiskIopsReadWrite != nil { - in, out := &in.DiskIopsReadWrite, &out.DiskIopsReadWrite - *out = new(float64) + if in.DisablePasswordAuthentication != nil { + in, out := &in.DisablePasswordAuthentication, &out.DisablePasswordAuthentication + *out = new(bool) **out = **in } - if in.DiskMbpsReadOnly != nil { - in, out := &in.DiskMbpsReadOnly, &out.DiskMbpsReadOnly - *out = new(float64) + if in.DoNotRunExtensionsOnOverprovisionedMachines != nil { + in, out := &in.DoNotRunExtensionsOnOverprovisionedMachines, &out.DoNotRunExtensionsOnOverprovisionedMachines + *out = new(bool) **out = **in } - if in.DiskMbpsReadWrite != nil { - in, out := &in.DiskMbpsReadWrite, &out.DiskMbpsReadWrite - *out = new(float64) + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) **out = **in } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb - *out = new(float64) + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) **out = **in } - if in.EdgeZone != nil { - in, out := &in.EdgeZone, &out.EdgeZone + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy *out = new(string) **out = **in } - if in.EncryptionSettings != nil { - in, out := &in.EncryptionSettings, &out.EncryptionSettings - *out = make([]EncryptionSettingsParameters, len(*in)) + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]ExtensionObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.GalleryImageReferenceID != nil { - in, out := &in.GalleryImageReferenceID, &out.GalleryImageReferenceID - *out = new(string) + if in.ExtensionOperationsEnabled != nil { + in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled + *out = new(bool) **out = **in } - if in.HyperVGeneration != nil { - in, out := &in.HyperVGeneration, &out.HyperVGeneration + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget *out = new(string) **out = **in } - if in.ImageReferenceID != nil { - in, out := &in.ImageReferenceID, &out.ImageReferenceID + if in.GalleryApplication != nil { + in, out := &in.GalleryApplication, &out.GalleryApplication + *out = make([]LinuxVirtualMachineScaleSetGalleryApplicationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GalleryApplications != nil { + in, out := &in.GalleryApplications, &out.GalleryApplications + *out = make([]GalleryApplicationsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HealthProbeID != nil { + in, out := &in.HealthProbeID, &out.HealthProbeID *out = new(string) **out = **in } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.HostGroupID != nil { + in, out := &in.HostGroupID, &out.HostGroupID *out = new(string) **out = **in } - if in.LogicalSectorSize != nil { - in, out := &in.LogicalSectorSize, &out.LogicalSectorSize - *out = new(float64) + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) **out = **in } - if in.MaxShares != nil { - in, out := &in.MaxShares, &out.MaxShares + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]LinuxVirtualMachineScaleSetIdentityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Instances != nil { + in, out := &in.Instances, &out.Instances *out = new(float64) **out = **in } - if in.NetworkAccessPolicy != nil { - in, out := &in.NetworkAccessPolicy, &out.NetworkAccessPolicy + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.OnDemandBurstingEnabled != nil { - in, out := &in.OnDemandBurstingEnabled, &out.OnDemandBurstingEnabled + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice + *out = new(float64) + **out = **in + } + if in.NetworkInterface != nil { + in, out := &in.NetworkInterface, &out.NetworkInterface + *out = make([]NetworkInterfaceObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]LinuxVirtualMachineScaleSetOsDiskObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Overprovision != nil { + in, out := &in.Overprovision, &out.Overprovision *out = new(bool) **out = **in } - if in.OsType != nil { - in, out := &in.OsType, &out.OsType + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]LinuxVirtualMachineScaleSetPlanObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PlatformFaultDomainCount != nil { + in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount + *out = new(float64) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority *out = new(string) **out = **in } - if in.PublicNetworkAccessEnabled != nil { - in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent *out = new(bool) **out = **in } + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID + *out = new(string) + **out = **in + } if in.ResourceGroupName != nil { in, out := &in.ResourceGroupName, &out.ResourceGroupName *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.RollingUpgradePolicy != nil { + in, out := &in.RollingUpgradePolicy, &out.RollingUpgradePolicy + *out = make([]RollingUpgradePolicyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.ScaleIn != nil { + in, out := &in.ScaleIn, &out.ScaleIn + *out = make([]ScaleInObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.SecureVMDiskEncryptionSetID != nil { - in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID + if in.ScaleInPolicy != nil { + in, out := &in.ScaleInPolicy, &out.ScaleInPolicy *out = new(string) **out = **in } - if in.SecurityType != nil { - in, out := &in.SecurityType, &out.SecurityType - *out = new(string) - **out = **in + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]LinuxVirtualMachineScaleSetSecretObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.SourceResourceID != nil { - in, out := &in.SourceResourceID, &out.SourceResourceID - *out = new(string) + if in.SecureBootEnabled != nil { + in, out := &in.SecureBootEnabled, &out.SecureBootEnabled + *out = new(bool) **out = **in } - if in.SourceResourceIDRef != nil { - in, out := &in.SourceResourceIDRef, &out.SourceResourceIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.SourceResourceIDSelector != nil { - in, out := &in.SourceResourceIDSelector, &out.SourceResourceIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.SourceURI != nil { - in, out := &in.SourceURI, &out.SourceURI - *out = new(string) + if in.SinglePlacementGroup != nil { + in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup + *out = new(bool) **out = **in } - if in.StorageAccountID != nil { - in, out := &in.StorageAccountID, &out.StorageAccountID + if in.Sku != nil { + in, out := &in.Sku, &out.Sku *out = new(string) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID *out = new(string) **out = **in } + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]LinuxVirtualMachineScaleSetSourceImageReferenceObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SpotRestore != nil { + in, out := &in.SpotRestore, &out.SpotRestore + *out = make([]SpotRestoreObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -6802,557 +7743,564 @@ func (in *ManagedDiskParameters) DeepCopyInto(out *ManagedDiskParameters) { (*out)[key] = outVal } } - if in.Tier != nil { - in, out := &in.Tier, &out.Tier + if in.TerminateNotification != nil { + in, out := &in.TerminateNotification, &out.TerminateNotification + *out = make([]TerminateNotificationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TerminationNotification != nil { + in, out := &in.TerminationNotification, &out.TerminationNotification + *out = make([]LinuxVirtualMachineScaleSetTerminationNotificationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UniqueID != nil { + in, out := &in.UniqueID, &out.UniqueID *out = new(string) **out = **in } - if in.TrustedLaunchEnabled != nil { - in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled - *out = new(bool) + if in.UpgradeMode != nil { + in, out := &in.UpgradeMode, &out.UpgradeMode + *out = new(string) **out = **in } - if in.UploadSizeBytes != nil { - in, out := &in.UploadSizeBytes, &out.UploadSizeBytes - *out = new(float64) + if in.UserData != nil { + in, out := &in.UserData, &out.UserData + *out = new(string) **out = **in } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone - *out = new(string) + if in.VtpmEnabled != nil { + in, out := &in.VtpmEnabled, &out.VtpmEnabled + *out = new(bool) + **out = **in + } + if in.ZoneBalance != nil { + in, out := &in.ZoneBalance, &out.ZoneBalance + *out = new(bool) **out = **in } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskParameters. -func (in *ManagedDiskParameters) DeepCopy() *ManagedDiskParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetObservation. +func (in *LinuxVirtualMachineScaleSetObservation) DeepCopy() *LinuxVirtualMachineScaleSetObservation { if in == nil { return nil } - out := new(ManagedDiskParameters) + out := new(LinuxVirtualMachineScaleSetObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskSASToken) DeepCopyInto(out *ManagedDiskSASToken) { +func (in *LinuxVirtualMachineScaleSetOsDiskInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetOsDiskInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASToken. -func (in *ManagedDiskSASToken) DeepCopy() *ManagedDiskSASToken { - if in == nil { - return nil + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in } - out := new(ManagedDiskSASToken) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ManagedDiskSASToken) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskSASTokenList) DeepCopyInto(out *ManagedDiskSASTokenList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ManagedDiskSASToken, len(*in)) + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]OsDiskDiffDiskSettingsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenList. -func (in *ManagedDiskSASTokenList) DeepCopy() *ManagedDiskSASTokenList { - if in == nil { - return nil - } - out := new(ManagedDiskSASTokenList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ManagedDiskSASTokenList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskSASTokenObservation) DeepCopyInto(out *ManagedDiskSASTokenObservation) { - *out = *in - if in.AccessLevel != nil { - in, out := &in.AccessLevel, &out.AccessLevel + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID *out = new(string) **out = **in } - if in.DurationInSeconds != nil { - in, out := &in.DurationInSeconds, &out.DurationInSeconds + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb *out = new(float64) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID *out = new(string) **out = **in } - if in.ManagedDiskID != nil { - in, out := &in.ManagedDiskID, &out.ManagedDiskID + if in.SecurityEncryptionType != nil { + in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType *out = new(string) **out = **in } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenObservation. -func (in *ManagedDiskSASTokenObservation) DeepCopy() *ManagedDiskSASTokenObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetOsDiskInitParameters. +func (in *LinuxVirtualMachineScaleSetOsDiskInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetOsDiskInitParameters { if in == nil { return nil } - out := new(ManagedDiskSASTokenObservation) + out := new(LinuxVirtualMachineScaleSetOsDiskInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskSASTokenParameters) DeepCopyInto(out *ManagedDiskSASTokenParameters) { +func (in *LinuxVirtualMachineScaleSetOsDiskObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetOsDiskObservation) { *out = *in - if in.AccessLevel != nil { - in, out := &in.AccessLevel, &out.AccessLevel + if in.Caching != nil { + in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } - if in.DurationInSeconds != nil { - in, out := &in.DurationInSeconds, &out.DurationInSeconds + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]OsDiskDiffDiskSettingsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb *out = new(float64) **out = **in } - if in.ManagedDiskID != nil { - in, out := &in.ManagedDiskID, &out.ManagedDiskID + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID *out = new(string) **out = **in } - if in.ManagedDiskIDRef != nil { - in, out := &in.ManagedDiskIDRef, &out.ManagedDiskIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.SecurityEncryptionType != nil { + in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + *out = new(string) + **out = **in } - if in.ManagedDiskIDSelector != nil { - in, out := &in.ManagedDiskIDSelector, &out.ManagedDiskIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenParameters. -func (in *ManagedDiskSASTokenParameters) DeepCopy() *ManagedDiskSASTokenParameters { - if in == nil { - return nil + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in } - out := new(ManagedDiskSASTokenParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskSASTokenSpec) DeepCopyInto(out *ManagedDiskSASTokenSpec) { - *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenSpec. -func (in *ManagedDiskSASTokenSpec) DeepCopy() *ManagedDiskSASTokenSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetOsDiskObservation. +func (in *LinuxVirtualMachineScaleSetOsDiskObservation) DeepCopy() *LinuxVirtualMachineScaleSetOsDiskObservation { if in == nil { return nil } - out := new(ManagedDiskSASTokenSpec) + out := new(LinuxVirtualMachineScaleSetOsDiskObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskSASTokenStatus) DeepCopyInto(out *ManagedDiskSASTokenStatus) { +func (in *LinuxVirtualMachineScaleSetOsDiskParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetOsDiskParameters) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenStatus. -func (in *ManagedDiskSASTokenStatus) DeepCopy() *ManagedDiskSASTokenStatus { - if in == nil { - return nil + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in } - out := new(ManagedDiskSASTokenStatus) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskSpec) DeepCopyInto(out *ManagedDiskSpec) { - *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSpec. -func (in *ManagedDiskSpec) DeepCopy() *ManagedDiskSpec { - if in == nil { - return nil + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]OsDiskDiffDiskSettingsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.SecurityEncryptionType != nil { + in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in } - out := new(ManagedDiskSpec) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedDiskStatus) DeepCopyInto(out *ManagedDiskStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskStatus. -func (in *ManagedDiskStatus) DeepCopy() *ManagedDiskStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetOsDiskParameters. +func (in *LinuxVirtualMachineScaleSetOsDiskParameters) DeepCopy() *LinuxVirtualMachineScaleSetOsDiskParameters { if in == nil { return nil } - out := new(ManagedDiskStatus) + out := new(LinuxVirtualMachineScaleSetOsDiskParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NetworkInterfaceIPConfigurationObservation) DeepCopyInto(out *NetworkInterfaceIPConfigurationObservation) { +func (in *LinuxVirtualMachineScaleSetParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetParameters) { *out = *in - if in.ApplicationGatewayBackendAddressPoolIds != nil { - in, out := &in.ApplicationGatewayBackendAddressPoolIds, &out.ApplicationGatewayBackendAddressPoolIds - *out = make([]*string, len(*in)) + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ApplicationSecurityGroupIds != nil { - in, out := &in.ApplicationSecurityGroupIds, &out.ApplicationSecurityGroupIds - *out = make([]*string, len(*in)) + if in.AdminPasswordSecretRef != nil { + in, out := &in.AdminPasswordSecretRef, &out.AdminPasswordSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.AdminSSHKey != nil { + in, out := &in.AdminSSHKey, &out.AdminSSHKey + *out = make([]LinuxVirtualMachineScaleSetAdminSSHKeyParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.LoadBalancerBackendAddressPoolIds != nil { - in, out := &in.LoadBalancerBackendAddressPoolIds, &out.LoadBalancerBackendAddressPoolIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername *out = new(string) **out = **in } - if in.Primary != nil { - in, out := &in.Primary, &out.Primary - *out = new(bool) - **out = **in + if in.AutomaticInstanceRepair != nil { + in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair + *out = make([]AutomaticInstanceRepairParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PublicIPAddress != nil { - in, out := &in.PublicIPAddress, &out.PublicIPAddress - *out = make([]IPConfigurationPublicIPAddressObservation, len(*in)) + if in.AutomaticOsUpgradePolicy != nil { + in, out := &in.AutomaticOsUpgradePolicy, &out.AutomaticOsUpgradePolicy + *out = make([]AutomaticOsUpgradePolicyParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]LinuxVirtualMachineScaleSetBootDiagnosticsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID *out = new(string) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.ComputerNamePrefix != nil { + in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationObservation. -func (in *NetworkInterfaceIPConfigurationObservation) DeepCopy() *NetworkInterfaceIPConfigurationObservation { - if in == nil { - return nil + if in.CustomDataSecretRef != nil { + in, out := &in.CustomDataSecretRef, &out.CustomDataSecretRef + *out = new(v1.SecretKeySelector) + **out = **in } - out := new(NetworkInterfaceIPConfigurationObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NetworkInterfaceIPConfigurationParameters) DeepCopyInto(out *NetworkInterfaceIPConfigurationParameters) { - *out = *in - if in.ApplicationGatewayBackendAddressPoolIds != nil { - in, out := &in.ApplicationGatewayBackendAddressPoolIds, &out.ApplicationGatewayBackendAddressPoolIds - *out = make([]*string, len(*in)) + if in.DataDisk != nil { + in, out := &in.DataDisk, &out.DataDisk + *out = make([]LinuxVirtualMachineScaleSetDataDiskParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ApplicationSecurityGroupIds != nil { - in, out := &in.ApplicationSecurityGroupIds, &out.ApplicationSecurityGroupIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.DisablePasswordAuthentication != nil { + in, out := &in.DisablePasswordAuthentication, &out.DisablePasswordAuthentication + *out = new(bool) + **out = **in } - if in.LoadBalancerBackendAddressPoolIds != nil { - in, out := &in.LoadBalancerBackendAddressPoolIds, &out.LoadBalancerBackendAddressPoolIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.DoNotRunExtensionsOnOverprovisionedMachines != nil { + in, out := &in.DoNotRunExtensionsOnOverprovisionedMachines, &out.DoNotRunExtensionsOnOverprovisionedMachines + *out = new(bool) + **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone *out = new(string) **out = **in } - if in.Primary != nil { - in, out := &in.Primary, &out.Primary + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled *out = new(bool) **out = **in } - if in.PublicIPAddress != nil { - in, out := &in.PublicIPAddress, &out.PublicIPAddress - *out = make([]IPConfigurationPublicIPAddressParameters, len(*in)) + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy + *out = new(string) + **out = **in + } + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]ExtensionParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID + if in.ExtensionOperationsEnabled != nil { + in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled + *out = new(bool) + **out = **in + } + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget *out = new(string) **out = **in } - if in.SubnetIDRef != nil { - in, out := &in.SubnetIDRef, &out.SubnetIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.GalleryApplication != nil { + in, out := &in.GalleryApplication, &out.GalleryApplication + *out = make([]LinuxVirtualMachineScaleSetGalleryApplicationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.SubnetIDSelector != nil { - in, out := &in.SubnetIDSelector, &out.SubnetIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.GalleryApplications != nil { + in, out := &in.GalleryApplications, &out.GalleryApplications + *out = make([]GalleryApplicationsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.HealthProbeID != nil { + in, out := &in.HealthProbeID, &out.HealthProbeID *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationParameters. -func (in *NetworkInterfaceIPConfigurationParameters) DeepCopy() *NetworkInterfaceIPConfigurationParameters { - if in == nil { - return nil - } - out := new(NetworkInterfaceIPConfigurationParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NetworkInterfaceIPConfigurationPublicIPAddressObservation) DeepCopyInto(out *NetworkInterfaceIPConfigurationPublicIPAddressObservation) { - *out = *in - if in.DomainNameLabel != nil { - in, out := &in.DomainNameLabel, &out.DomainNameLabel + if in.HostGroupID != nil { + in, out := &in.HostGroupID, &out.HostGroupID *out = new(string) **out = **in } - if in.IPTag != nil { - in, out := &in.IPTag, &out.IPTag - *out = make([]IPConfigurationPublicIPAddressIPTagObservation, len(*in)) + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]LinuxVirtualMachineScaleSetIdentityParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.IdleTimeoutInMinutes != nil { - in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + if in.Instances != nil { + in, out := &in.Instances, &out.Instances *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.PublicIPPrefixID != nil { - in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID - *out = new(string) + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice + *out = new(float64) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version - *out = new(string) - **out = **in + if in.NetworkInterface != nil { + in, out := &in.NetworkInterface, &out.NetworkInterface + *out = make([]NetworkInterfaceParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationPublicIPAddressObservation. -func (in *NetworkInterfaceIPConfigurationPublicIPAddressObservation) DeepCopy() *NetworkInterfaceIPConfigurationPublicIPAddressObservation { - if in == nil { - return nil + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]LinuxVirtualMachineScaleSetOsDiskParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(NetworkInterfaceIPConfigurationPublicIPAddressObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NetworkInterfaceIPConfigurationPublicIPAddressParameters) DeepCopyInto(out *NetworkInterfaceIPConfigurationPublicIPAddressParameters) { - *out = *in - if in.DomainNameLabel != nil { - in, out := &in.DomainNameLabel, &out.DomainNameLabel - *out = new(string) + if in.Overprovision != nil { + in, out := &in.Overprovision, &out.Overprovision + *out = new(bool) **out = **in } - if in.IPTag != nil { - in, out := &in.IPTag, &out.IPTag - *out = make([]IPConfigurationPublicIPAddressIPTagParameters, len(*in)) + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]LinuxVirtualMachineScaleSetPlanParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.IdleTimeoutInMinutes != nil { - in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + if in.PlatformFaultDomainCount != nil { + in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Priority != nil { + in, out := &in.Priority, &out.Priority *out = new(string) **out = **in } - if in.PublicIPPrefixID != nil { - in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + *out = new(bool) + **out = **in + } + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID *out = new(string) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationPublicIPAddressParameters. -func (in *NetworkInterfaceIPConfigurationPublicIPAddressParameters) DeepCopy() *NetworkInterfaceIPConfigurationPublicIPAddressParameters { - if in == nil { - return nil + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) } - out := new(NetworkInterfaceIPConfigurationPublicIPAddressParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NetworkInterfaceObservation) DeepCopyInto(out *NetworkInterfaceObservation) { - *out = *in - if in.DNSServers != nil { - in, out := &in.DNSServers, &out.DNSServers - *out = make([]*string, len(*in)) + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.RollingUpgradePolicy != nil { + in, out := &in.RollingUpgradePolicy, &out.RollingUpgradePolicy + *out = make([]RollingUpgradePolicyParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.EnableAcceleratedNetworking != nil { - in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking + if in.ScaleIn != nil { + in, out := &in.ScaleIn, &out.ScaleIn + *out = make([]ScaleInParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]LinuxVirtualMachineScaleSetSecretParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecureBootEnabled != nil { + in, out := &in.SecureBootEnabled, &out.SecureBootEnabled *out = new(bool) **out = **in } - if in.EnableIPForwarding != nil { - in, out := &in.EnableIPForwarding, &out.EnableIPForwarding + if in.SinglePlacementGroup != nil { + in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup *out = new(bool) **out = **in } - if in.IPConfiguration != nil { - in, out := &in.IPConfiguration, &out.IPConfiguration - *out = make([]IPConfigurationObservation, len(*in)) + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID + *out = new(string) + **out = **in + } + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]LinuxVirtualMachineScaleSetSourceImageReferenceParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.SpotRestore != nil { + in, out := &in.SpotRestore, &out.SpotRestore + *out = make([]SpotRestoreParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TerminateNotification != nil { + in, out := &in.TerminateNotification, &out.TerminateNotification + *out = make([]TerminateNotificationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TerminationNotification != nil { + in, out := &in.TerminationNotification, &out.TerminationNotification + *out = make([]LinuxVirtualMachineScaleSetTerminationNotificationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UpgradeMode != nil { + in, out := &in.UpgradeMode, &out.UpgradeMode *out = new(string) **out = **in } - if in.NetworkSecurityGroupID != nil { - in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID + if in.UserData != nil { + in, out := &in.UserData, &out.UserData *out = new(string) **out = **in } - if in.Primary != nil { - in, out := &in.Primary, &out.Primary + if in.VtpmEnabled != nil { + in, out := &in.VtpmEnabled, &out.VtpmEnabled *out = new(bool) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceObservation. -func (in *NetworkInterfaceObservation) DeepCopy() *NetworkInterfaceObservation { - if in == nil { - return nil + if in.ZoneBalance != nil { + in, out := &in.ZoneBalance, &out.ZoneBalance + *out = new(bool) + **out = **in } - out := new(NetworkInterfaceObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NetworkInterfaceParameters) DeepCopyInto(out *NetworkInterfaceParameters) { - *out = *in - if in.DNSServers != nil { - in, out := &in.DNSServers, &out.DNSServers + if in.Zones != nil { + in, out := &in.Zones, &out.Zones *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -7362,566 +8310,550 @@ func (in *NetworkInterfaceParameters) DeepCopyInto(out *NetworkInterfaceParamete } } } - if in.EnableAcceleratedNetworking != nil { - in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking - *out = new(bool) - **out = **in - } - if in.EnableIPForwarding != nil { - in, out := &in.EnableIPForwarding, &out.EnableIPForwarding - *out = new(bool) - **out = **in - } - if in.IPConfiguration != nil { - in, out := &in.IPConfiguration, &out.IPConfiguration - *out = make([]IPConfigurationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetParameters. +func (in *LinuxVirtualMachineScaleSetParameters) DeepCopy() *LinuxVirtualMachineScaleSetParameters { + if in == nil { + return nil } + out := new(LinuxVirtualMachineScaleSetParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetPlanInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetPlanInitParameters) { + *out = *in if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.NetworkSecurityGroupID != nil { - in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID + if in.Product != nil { + in, out := &in.Product, &out.Product *out = new(string) **out = **in } - if in.Primary != nil { - in, out := &in.Primary, &out.Primary - *out = new(bool) + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceParameters. -func (in *NetworkInterfaceParameters) DeepCopy() *NetworkInterfaceParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetPlanInitParameters. +func (in *LinuxVirtualMachineScaleSetPlanInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetPlanInitParameters { if in == nil { return nil } - out := new(NetworkInterfaceParameters) + out := new(LinuxVirtualMachineScaleSetPlanInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSet) DeepCopyInto(out *OrchestratedVirtualMachineScaleSet) { +func (in *LinuxVirtualMachineScaleSetPlanObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetPlanObservation) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSet. -func (in *OrchestratedVirtualMachineScaleSet) DeepCopy() *OrchestratedVirtualMachineScaleSet { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetPlanObservation. +func (in *LinuxVirtualMachineScaleSetPlanObservation) DeepCopy() *LinuxVirtualMachineScaleSetPlanObservation { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSet) + out := new(LinuxVirtualMachineScaleSetPlanObservation) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *OrchestratedVirtualMachineScaleSet) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation) { +func (in *LinuxVirtualMachineScaleSetPlanParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetPlanParameters) { *out = *in - if in.UltraSsdEnabled != nil { - in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled - *out = new(bool) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation. -func (in *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetPlanParameters. +func (in *LinuxVirtualMachineScaleSetPlanParameters) DeepCopy() *LinuxVirtualMachineScaleSetPlanParameters { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation) + out := new(LinuxVirtualMachineScaleSetPlanParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters) { +func (in *LinuxVirtualMachineScaleSetSecretInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetSecretInitParameters) { *out = *in - if in.UltraSsdEnabled != nil { - in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled - *out = new(bool) + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]SecretCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters. -func (in *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSecretInitParameters. +func (in *LinuxVirtualMachineScaleSetSecretInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetSecretInitParameters { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters) + out := new(LinuxVirtualMachineScaleSetSecretInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation) { +func (in *LinuxVirtualMachineScaleSetSecretObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetSecretObservation) { *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) - **out = **in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]SecretCertificateObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.GracePeriod != nil { - in, out := &in.GracePeriod, &out.GracePeriod + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation. -func (in *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSecretObservation. +func (in *LinuxVirtualMachineScaleSetSecretObservation) DeepCopy() *LinuxVirtualMachineScaleSetSecretObservation { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation) + out := new(LinuxVirtualMachineScaleSetSecretObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters) { +func (in *LinuxVirtualMachineScaleSetSecretParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetSecretParameters) { *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) - **out = **in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]SecretCertificateParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.GracePeriod != nil { - in, out := &in.GracePeriod, &out.GracePeriod + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters. -func (in *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSecretParameters. +func (in *LinuxVirtualMachineScaleSetSecretParameters) DeepCopy() *LinuxVirtualMachineScaleSetSecretParameters { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters) + out := new(LinuxVirtualMachineScaleSetSecretParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation) { +func (in *LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters) { *out = *in - if in.StorageAccountURI != nil { - in, out := &in.StorageAccountURI, &out.StorageAccountURI + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation. -func (in *OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters. +func (in *LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation) + out := new(LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters) { +func (in *LinuxVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetSourceImageReferenceObservation) { *out = *in - if in.StorageAccountURI != nil { - in, out := &in.StorageAccountURI, &out.StorageAccountURI + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters. -func (in *OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSourceImageReferenceObservation. +func (in *LinuxVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopy() *LinuxVirtualMachineScaleSetSourceImageReferenceObservation { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters) + out := new(LinuxVirtualMachineScaleSetSourceImageReferenceObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetDataDiskObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetDataDiskObservation) { +func (in *LinuxVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetSourceImageReferenceParameters) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching + if in.Offer != nil { + in, out := &in.Offer, &out.Offer *out = new(string) **out = **in } - if in.CreateOption != nil { - in, out := &in.CreateOption, &out.CreateOption + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher *out = new(string) **out = **in } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + if in.Sku != nil { + in, out := &in.Sku, &out.Sku *out = new(string) **out = **in } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb - *out = new(float64) - **out = **in - } - if in.Lun != nil { - in, out := &in.Lun, &out.Lun - *out = new(float64) - **out = **in - } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } - if in.UltraSsdDiskIopsReadWrite != nil { - in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite - *out = new(float64) - **out = **in - } - if in.UltraSsdDiskMbpsReadWrite != nil { - in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite - *out = new(float64) - **out = **in - } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSourceImageReferenceParameters. +func (in *LinuxVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopy() *LinuxVirtualMachineScaleSetSourceImageReferenceParameters { + if in == nil { + return nil } + out := new(LinuxVirtualMachineScaleSetSourceImageReferenceParameters) + in.DeepCopyInto(out) + return out } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetDataDiskObservation. -func (in *OrchestratedVirtualMachineScaleSetDataDiskObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetDataDiskObservation { +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetSpec) DeepCopyInto(out *LinuxVirtualMachineScaleSetSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetSpec. +func (in *LinuxVirtualMachineScaleSetSpec) DeepCopy() *LinuxVirtualMachineScaleSetSpec { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetDataDiskObservation) + out := new(LinuxVirtualMachineScaleSetSpec) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetDataDiskParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetDataDiskParameters) { +func (in *LinuxVirtualMachineScaleSetStatus) DeepCopyInto(out *LinuxVirtualMachineScaleSetStatus) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching - *out = new(string) - **out = **in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetStatus. +func (in *LinuxVirtualMachineScaleSetStatus) DeepCopy() *LinuxVirtualMachineScaleSetStatus { + if in == nil { + return nil } - if in.CreateOption != nil { - in, out := &in.CreateOption, &out.CreateOption - *out = new(string) + out := new(LinuxVirtualMachineScaleSetStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetTerminationNotificationInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) **out = **in } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout *out = new(string) **out = **in } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb - *out = new(float64) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetTerminationNotificationInitParameters. +func (in *LinuxVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopy() *LinuxVirtualMachineScaleSetTerminationNotificationInitParameters { + if in == nil { + return nil } - if in.Lun != nil { - in, out := &in.Lun, &out.Lun - *out = new(float64) + out := new(LinuxVirtualMachineScaleSetTerminationNotificationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetTerminationNotificationObservation) DeepCopyInto(out *LinuxVirtualMachineScaleSetTerminationNotificationObservation) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout *out = new(string) **out = **in } - if in.UltraSsdDiskIopsReadWrite != nil { - in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite - *out = new(float64) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetTerminationNotificationObservation. +func (in *LinuxVirtualMachineScaleSetTerminationNotificationObservation) DeepCopy() *LinuxVirtualMachineScaleSetTerminationNotificationObservation { + if in == nil { + return nil } - if in.UltraSsdDiskMbpsReadWrite != nil { - in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite - *out = new(float64) + out := new(LinuxVirtualMachineScaleSetTerminationNotificationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineScaleSetTerminationNotificationParameters) DeepCopyInto(out *LinuxVirtualMachineScaleSetTerminationNotificationParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) **out = **in } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetDataDiskParameters. -func (in *OrchestratedVirtualMachineScaleSetDataDiskParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetDataDiskParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineScaleSetTerminationNotificationParameters. +func (in *LinuxVirtualMachineScaleSetTerminationNotificationParameters) DeepCopy() *LinuxVirtualMachineScaleSetTerminationNotificationParameters { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetDataDiskParameters) + out := new(LinuxVirtualMachineScaleSetTerminationNotificationParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetExtensionObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetExtensionObservation) { +func (in *LinuxVirtualMachineSpec) DeepCopyInto(out *LinuxVirtualMachineSpec) { *out = *in - if in.AutoUpgradeMinorVersionEnabled != nil { - in, out := &in.AutoUpgradeMinorVersionEnabled, &out.AutoUpgradeMinorVersionEnabled - *out = new(bool) - **out = **in - } - if in.ExtensionsToProvisionAfterVMCreation != nil { - in, out := &in.ExtensionsToProvisionAfterVMCreation, &out.ExtensionsToProvisionAfterVMCreation - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.FailureSuppressionEnabled != nil { - in, out := &in.FailureSuppressionEnabled, &out.FailureSuppressionEnabled - *out = new(bool) - **out = **in - } - if in.ForceExtensionExecutionOnChange != nil { - in, out := &in.ForceExtensionExecutionOnChange, &out.ForceExtensionExecutionOnChange - *out = new(string) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.ProtectedSettingsFromKeyVault != nil { - in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault - *out = make([]ExtensionProtectedSettingsFromKeyVaultObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher - *out = new(string) - **out = **in - } - if in.Settings != nil { - in, out := &in.Settings, &out.Settings - *out = new(string) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } - if in.TypeHandlerVersion != nil { - in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion - *out = new(string) - **out = **in - } + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetExtensionObservation. -func (in *OrchestratedVirtualMachineScaleSetExtensionObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetExtensionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineSpec. +func (in *LinuxVirtualMachineSpec) DeepCopy() *LinuxVirtualMachineSpec { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetExtensionObservation) + out := new(LinuxVirtualMachineSpec) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetExtensionParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetExtensionParameters) { +func (in *LinuxVirtualMachineStatus) DeepCopyInto(out *LinuxVirtualMachineStatus) { *out = *in - if in.AutoUpgradeMinorVersionEnabled != nil { - in, out := &in.AutoUpgradeMinorVersionEnabled, &out.AutoUpgradeMinorVersionEnabled - *out = new(bool) - **out = **in - } - if in.ExtensionsToProvisionAfterVMCreation != nil { - in, out := &in.ExtensionsToProvisionAfterVMCreation, &out.ExtensionsToProvisionAfterVMCreation - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.FailureSuppressionEnabled != nil { - in, out := &in.FailureSuppressionEnabled, &out.FailureSuppressionEnabled - *out = new(bool) - **out = **in - } - if in.ForceExtensionExecutionOnChange != nil { - in, out := &in.ForceExtensionExecutionOnChange, &out.ForceExtensionExecutionOnChange - *out = new(string) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.ProtectedSettingsFromKeyVault != nil { - in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault - *out = make([]ExtensionProtectedSettingsFromKeyVaultParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ProtectedSettingsSecretRef != nil { - in, out := &in.ProtectedSettingsSecretRef, &out.ProtectedSettingsSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher - *out = new(string) - **out = **in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineStatus. +func (in *LinuxVirtualMachineStatus) DeepCopy() *LinuxVirtualMachineStatus { + if in == nil { + return nil } - if in.Settings != nil { - in, out := &in.Settings, &out.Settings + out := new(LinuxVirtualMachineStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManageActionInitParameters) DeepCopyInto(out *ManageActionInitParameters) { + *out = *in + if in.Install != nil { + in, out := &in.Install, &out.Install *out = new(string) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.Remove != nil { + in, out := &in.Remove, &out.Remove *out = new(string) **out = **in } - if in.TypeHandlerVersion != nil { - in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion + if in.Update != nil { + in, out := &in.Update, &out.Update *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetExtensionParameters. -func (in *OrchestratedVirtualMachineScaleSetExtensionParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetExtensionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManageActionInitParameters. +func (in *ManageActionInitParameters) DeepCopy() *ManageActionInitParameters { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetExtensionParameters) + out := new(ManageActionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetIdentityObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetIdentityObservation) { +func (in *ManageActionObservation) DeepCopyInto(out *ManageActionObservation) { *out = *in - if in.IdentityIds != nil { - in, out := &in.IdentityIds, &out.IdentityIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.Install != nil { + in, out := &in.Install, &out.Install + *out = new(string) + **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.Remove != nil { + in, out := &in.Remove, &out.Remove + *out = new(string) + **out = **in + } + if in.Update != nil { + in, out := &in.Update, &out.Update *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetIdentityObservation. -func (in *OrchestratedVirtualMachineScaleSetIdentityObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetIdentityObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManageActionObservation. +func (in *ManageActionObservation) DeepCopy() *ManageActionObservation { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetIdentityObservation) + out := new(ManageActionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetIdentityParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetIdentityParameters) { +func (in *ManageActionParameters) DeepCopyInto(out *ManageActionParameters) { *out = *in - if in.IdentityIds != nil { - in, out := &in.IdentityIds, &out.IdentityIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.Install != nil { + in, out := &in.Install, &out.Install + *out = new(string) + **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.Remove != nil { + in, out := &in.Remove, &out.Remove + *out = new(string) + **out = **in + } + if in.Update != nil { + in, out := &in.Update, &out.Update *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetIdentityParameters. -func (in *OrchestratedVirtualMachineScaleSetIdentityParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetIdentityParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManageActionParameters. +func (in *ManageActionParameters) DeepCopy() *ManageActionParameters { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetIdentityParameters) + out := new(ManageActionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetList) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetList) { +func (in *ManagedDisk) DeepCopyInto(out *ManagedDisk) { *out = *in out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]OrchestratedVirtualMachineScaleSet, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetList. -func (in *OrchestratedVirtualMachineScaleSetList) DeepCopy() *OrchestratedVirtualMachineScaleSetList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDisk. +func (in *ManagedDisk) DeepCopy() *ManagedDisk { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetList) + out := new(ManagedDisk) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *OrchestratedVirtualMachineScaleSetList) DeepCopyObject() runtime.Object { +func (in *ManagedDisk) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -7929,293 +8861,135 @@ func (in *OrchestratedVirtualMachineScaleSetList) DeepCopyObject() runtime.Objec } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation) { +func (in *ManagedDiskInitParameters) DeepCopyInto(out *ManagedDiskInitParameters) { *out = *in - if in.DNSServers != nil { - in, out := &in.DNSServers, &out.DNSServers - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption + *out = new(string) + **out = **in } - if in.EnableAcceleratedNetworking != nil { - in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking - *out = new(bool) + if in.DiskAccessID != nil { + in, out := &in.DiskAccessID, &out.DiskAccessID + *out = new(string) **out = **in } - if in.EnableIPForwarding != nil { - in, out := &in.EnableIPForwarding, &out.EnableIPForwarding - *out = new(bool) + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) **out = **in } - if in.IPConfiguration != nil { - in, out := &in.IPConfiguration, &out.IPConfiguration - *out = make([]NetworkInterfaceIPConfigurationObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.NetworkSecurityGroupID != nil { - in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID - *out = new(string) + if in.DiskIopsReadOnly != nil { + in, out := &in.DiskIopsReadOnly, &out.DiskIopsReadOnly + *out = new(float64) **out = **in } - if in.Primary != nil { - in, out := &in.Primary, &out.Primary - *out = new(bool) + if in.DiskIopsReadWrite != nil { + in, out := &in.DiskIopsReadWrite, &out.DiskIopsReadWrite + *out = new(float64) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation. -func (in *OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation { - if in == nil { - return nil - } - out := new(OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters) { - *out = *in - if in.DNSServers != nil { - in, out := &in.DNSServers, &out.DNSServers - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.EnableAcceleratedNetworking != nil { - in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking - *out = new(bool) + if in.DiskMbpsReadOnly != nil { + in, out := &in.DiskMbpsReadOnly, &out.DiskMbpsReadOnly + *out = new(float64) **out = **in } - if in.EnableIPForwarding != nil { - in, out := &in.EnableIPForwarding, &out.EnableIPForwarding - *out = new(bool) + if in.DiskMbpsReadWrite != nil { + in, out := &in.DiskMbpsReadWrite, &out.DiskMbpsReadWrite + *out = new(float64) **out = **in } - if in.IPConfiguration != nil { - in, out := &in.IPConfiguration, &out.IPConfiguration - *out = make([]NetworkInterfaceIPConfigurationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) **out = **in } - if in.NetworkSecurityGroupID != nil { - in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone *out = new(string) **out = **in } - if in.Primary != nil { - in, out := &in.Primary, &out.Primary - *out = new(bool) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters. -func (in *OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters { - if in == nil { - return nil - } - out := new(OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetObservation) { - *out = *in - if in.AdditionalCapabilities != nil { - in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities - *out = make([]OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AutomaticInstanceRepair != nil { - in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair - *out = make([]OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.BootDiagnostics != nil { - in, out := &in.BootDiagnostics, &out.BootDiagnostics - *out = make([]OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation, len(*in)) + if in.EncryptionSettings != nil { + in, out := &in.EncryptionSettings, &out.EncryptionSettings + *out = make([]EncryptionSettingsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.CapacityReservationGroupID != nil { - in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID + if in.GalleryImageReferenceID != nil { + in, out := &in.GalleryImageReferenceID, &out.GalleryImageReferenceID *out = new(string) **out = **in } - if in.DataDisk != nil { - in, out := &in.DataDisk, &out.DataDisk - *out = make([]OrchestratedVirtualMachineScaleSetDataDiskObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.EncryptionAtHostEnabled != nil { - in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled - *out = new(bool) - **out = **in - } - if in.EvictionPolicy != nil { - in, out := &in.EvictionPolicy, &out.EvictionPolicy + if in.HyperVGeneration != nil { + in, out := &in.HyperVGeneration, &out.HyperVGeneration *out = new(string) **out = **in } - if in.Extension != nil { - in, out := &in.Extension, &out.Extension - *out = make([]OrchestratedVirtualMachineScaleSetExtensionObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ExtensionOperationsEnabled != nil { - in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled - *out = new(bool) - **out = **in - } - if in.ExtensionsTimeBudget != nil { - in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget + if in.ImageReferenceID != nil { + in, out := &in.ImageReferenceID, &out.ImageReferenceID *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.Identity != nil { - in, out := &in.Identity, &out.Identity - *out = make([]OrchestratedVirtualMachineScaleSetIdentityObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Instances != nil { - in, out := &in.Instances, &out.Instances + if in.LogicalSectorSize != nil { + in, out := &in.LogicalSectorSize, &out.LogicalSectorSize *out = new(float64) **out = **in } - if in.LicenseType != nil { - in, out := &in.LicenseType, &out.LicenseType - *out = new(string) + if in.MaxShares != nil { + in, out := &in.MaxShares, &out.MaxShares + *out = new(float64) **out = **in } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.NetworkAccessPolicy != nil { + in, out := &in.NetworkAccessPolicy, &out.NetworkAccessPolicy *out = new(string) **out = **in } - if in.MaxBidPrice != nil { - in, out := &in.MaxBidPrice, &out.MaxBidPrice - *out = new(float64) - **out = **in - } - if in.NetworkInterface != nil { - in, out := &in.NetworkInterface, &out.NetworkInterface - *out = make([]OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.OsDisk != nil { - in, out := &in.OsDisk, &out.OsDisk - *out = make([]OrchestratedVirtualMachineScaleSetOsDiskObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.OsProfile != nil { - in, out := &in.OsProfile, &out.OsProfile - *out = make([]OsProfileObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Plan != nil { - in, out := &in.Plan, &out.Plan - *out = make([]OrchestratedVirtualMachineScaleSetPlanObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PlatformFaultDomainCount != nil { - in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount - *out = new(float64) + if in.OnDemandBurstingEnabled != nil { + in, out := &in.OnDemandBurstingEnabled, &out.OnDemandBurstingEnabled + *out = new(bool) **out = **in } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority + if in.OsType != nil { + in, out := &in.OsType, &out.OsType *out = new(string) **out = **in } - if in.PriorityMix != nil { - in, out := &in.PriorityMix, &out.PriorityMix - *out = make([]PriorityMixObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in } - if in.ProximityPlacementGroupID != nil { - in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.SecurityType != nil { + in, out := &in.SecurityType, &out.SecurityType *out = new(string) **out = **in } - if in.SinglePlacementGroup != nil { - in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup - *out = new(bool) + if in.SourceURI != nil { + in, out := &in.SourceURI, &out.SourceURI + *out = new(string) **out = **in } - if in.SkuName != nil { - in, out := &in.SkuName, &out.SkuName + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID *out = new(string) **out = **in } - if in.SourceImageID != nil { - in, out := &in.SourceImageID, &out.SourceImageID + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType *out = new(string) **out = **in } - if in.SourceImageReference != nil { - in, out := &in.SourceImageReference, &out.SourceImageReference - *out = make([]OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -8231,367 +9005,215 @@ func (in *OrchestratedVirtualMachineScaleSetObservation) DeepCopyInto(out *Orche (*out)[key] = outVal } } - if in.TerminationNotification != nil { - in, out := &in.TerminationNotification, &out.TerminationNotification - *out = make([]OrchestratedVirtualMachineScaleSetTerminationNotificationObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.UniqueID != nil { - in, out := &in.UniqueID, &out.UniqueID + if in.Tier != nil { + in, out := &in.Tier, &out.Tier *out = new(string) **out = **in } - if in.ZoneBalance != nil { - in, out := &in.ZoneBalance, &out.ZoneBalance + if in.TrustedLaunchEnabled != nil { + in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled *out = new(bool) **out = **in } - if in.Zones != nil { - in, out := &in.Zones, &out.Zones - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetObservation. -func (in *OrchestratedVirtualMachineScaleSetObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetObservation { - if in == nil { - return nil - } - out := new(OrchestratedVirtualMachineScaleSetObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) { - *out = *in - if in.Option != nil { - in, out := &in.Option, &out.Option - *out = new(string) + if in.UploadSizeBytes != nil { + in, out := &in.UploadSizeBytes, &out.UploadSizeBytes + *out = new(float64) **out = **in } - if in.Placement != nil { - in, out := &in.Placement, &out.Placement + if in.Zone != nil { + in, out := &in.Zone, &out.Zone *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation. -func (in *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskInitParameters. +func (in *ManagedDiskInitParameters) DeepCopy() *ManagedDiskInitParameters { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) + out := new(ManagedDiskInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) { +func (in *ManagedDiskList) DeepCopyInto(out *ManagedDiskList) { *out = *in - if in.Option != nil { - in, out := &in.Option, &out.Option - *out = new(string) - **out = **in - } - if in.Placement != nil { - in, out := &in.Placement, &out.Placement - *out = new(string) - **out = **in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ManagedDisk, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters. -func (in *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskList. +func (in *ManagedDiskList) DeepCopy() *ManagedDiskList { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) + out := new(ManagedDiskList) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ManagedDiskList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetOsDiskObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetOsDiskObservation) { +func (in *ManagedDiskObservation) DeepCopyInto(out *ManagedDiskObservation) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption *out = new(string) **out = **in } - if in.DiffDiskSettings != nil { - in, out := &in.DiffDiskSettings, &out.DiffDiskSettings - *out = make([]OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.DiskAccessID != nil { + in, out := &in.DiskAccessID, &out.DiskAccessID + *out = new(string) + **out = **in } if in.DiskEncryptionSetID != nil { in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID *out = new(string) **out = **in } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb + if in.DiskIopsReadOnly != nil { + in, out := &in.DiskIopsReadOnly, &out.DiskIopsReadOnly *out = new(float64) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType - *out = new(string) + if in.DiskIopsReadWrite != nil { + in, out := &in.DiskIopsReadWrite, &out.DiskIopsReadWrite + *out = new(float64) **out = **in } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) + if in.DiskMbpsReadOnly != nil { + in, out := &in.DiskMbpsReadOnly, &out.DiskMbpsReadOnly + *out = new(float64) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskObservation. -func (in *OrchestratedVirtualMachineScaleSetOsDiskObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetOsDiskObservation { - if in == nil { - return nil + if in.DiskMbpsReadWrite != nil { + in, out := &in.DiskMbpsReadWrite, &out.DiskMbpsReadWrite + *out = new(float64) + **out = **in } - out := new(OrchestratedVirtualMachineScaleSetOsDiskObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetOsDiskParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetOsDiskParameters) { - *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone *out = new(string) **out = **in } - if in.DiffDiskSettings != nil { - in, out := &in.DiffDiskSettings, &out.DiffDiskSettings - *out = make([]OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters, len(*in)) + if in.EncryptionSettings != nil { + in, out := &in.EncryptionSettings, &out.EncryptionSettings + *out = make([]EncryptionSettingsObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + if in.GalleryImageReferenceID != nil { + in, out := &in.GalleryImageReferenceID, &out.GalleryImageReferenceID *out = new(string) **out = **in } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb - *out = new(float64) + if in.HyperVGeneration != nil { + in, out := &in.HyperVGeneration, &out.HyperVGeneration + *out = new(string) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType + if in.ID != nil { + in, out := &in.ID, &out.ID *out = new(string) **out = **in } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) + if in.ImageReferenceID != nil { + in, out := &in.ImageReferenceID, &out.ImageReferenceID + *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskParameters. -func (in *OrchestratedVirtualMachineScaleSetOsDiskParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetOsDiskParameters { - if in == nil { - return nil - } - out := new(OrchestratedVirtualMachineScaleSetOsDiskParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetParameters) { - *out = *in - if in.AdditionalCapabilities != nil { - in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities - *out = make([]OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in } - if in.AutomaticInstanceRepair != nil { - in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair - *out = make([]OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.LogicalSectorSize != nil { + in, out := &in.LogicalSectorSize, &out.LogicalSectorSize + *out = new(float64) + **out = **in } - if in.BootDiagnostics != nil { - in, out := &in.BootDiagnostics, &out.BootDiagnostics - *out = make([]OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.MaxShares != nil { + in, out := &in.MaxShares, &out.MaxShares + *out = new(float64) + **out = **in } - if in.CapacityReservationGroupID != nil { - in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID + if in.NetworkAccessPolicy != nil { + in, out := &in.NetworkAccessPolicy, &out.NetworkAccessPolicy *out = new(string) **out = **in } - if in.DataDisk != nil { - in, out := &in.DataDisk, &out.DataDisk - *out = make([]OrchestratedVirtualMachineScaleSetDataDiskParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.EncryptionAtHostEnabled != nil { - in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + if in.OnDemandBurstingEnabled != nil { + in, out := &in.OnDemandBurstingEnabled, &out.OnDemandBurstingEnabled *out = new(bool) **out = **in } - if in.EvictionPolicy != nil { - in, out := &in.EvictionPolicy, &out.EvictionPolicy + if in.OsType != nil { + in, out := &in.OsType, &out.OsType *out = new(string) **out = **in } - if in.Extension != nil { - in, out := &in.Extension, &out.Extension - *out = make([]OrchestratedVirtualMachineScaleSetExtensionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ExtensionOperationsEnabled != nil { - in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled *out = new(bool) **out = **in } - if in.ExtensionsTimeBudget != nil { - in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName *out = new(string) **out = **in } - if in.Identity != nil { - in, out := &in.Identity, &out.Identity - *out = make([]OrchestratedVirtualMachineScaleSetIdentityParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Instances != nil { - in, out := &in.Instances, &out.Instances - *out = new(float64) - **out = **in - } - if in.LicenseType != nil { - in, out := &in.LicenseType, &out.LicenseType - *out = new(string) - **out = **in - } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID *out = new(string) **out = **in } - if in.MaxBidPrice != nil { - in, out := &in.MaxBidPrice, &out.MaxBidPrice - *out = new(float64) - **out = **in - } - if in.NetworkInterface != nil { - in, out := &in.NetworkInterface, &out.NetworkInterface - *out = make([]OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.OsDisk != nil { - in, out := &in.OsDisk, &out.OsDisk - *out = make([]OrchestratedVirtualMachineScaleSetOsDiskParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.OsProfile != nil { - in, out := &in.OsProfile, &out.OsProfile - *out = make([]OsProfileParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Plan != nil { - in, out := &in.Plan, &out.Plan - *out = make([]OrchestratedVirtualMachineScaleSetPlanParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PlatformFaultDomainCount != nil { - in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount - *out = new(float64) - **out = **in - } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority + if in.SecurityType != nil { + in, out := &in.SecurityType, &out.SecurityType *out = new(string) **out = **in } - if in.PriorityMix != nil { - in, out := &in.PriorityMix, &out.PriorityMix - *out = make([]PriorityMixParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ProximityPlacementGroupID != nil { - in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID + if in.SourceResourceID != nil { + in, out := &in.SourceResourceID, &out.SourceResourceID *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.SourceURI != nil { + in, out := &in.SourceURI, &out.SourceURI *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.SinglePlacementGroup != nil { - in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup - *out = new(bool) - **out = **in - } - if in.SkuName != nil { - in, out := &in.SkuName, &out.SkuName + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID *out = new(string) **out = **in } - if in.SourceImageID != nil { - in, out := &in.SourceImageID, &out.SourceImageID + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType *out = new(string) **out = **in } - if in.SourceImageReference != nil { - in, out := &in.SourceImageReference, &out.SourceImageReference - *out = make([]OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -8607,321 +9229,375 @@ func (in *OrchestratedVirtualMachineScaleSetParameters) DeepCopyInto(out *Orches (*out)[key] = outVal } } - if in.TerminationNotification != nil { - in, out := &in.TerminationNotification, &out.TerminationNotification - *out = make([]OrchestratedVirtualMachineScaleSetTerminationNotificationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.UserDataBase64SecretRef != nil { - in, out := &in.UserDataBase64SecretRef, &out.UserDataBase64SecretRef - *out = new(v1.SecretKeySelector) + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) **out = **in } - if in.ZoneBalance != nil { - in, out := &in.ZoneBalance, &out.ZoneBalance + if in.TrustedLaunchEnabled != nil { + in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled *out = new(bool) **out = **in } - if in.Zones != nil { - in, out := &in.Zones, &out.Zones - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.UploadSizeBytes != nil { + in, out := &in.UploadSizeBytes, &out.UploadSizeBytes + *out = new(float64) + **out = **in + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetParameters. -func (in *OrchestratedVirtualMachineScaleSetParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskObservation. +func (in *ManagedDiskObservation) DeepCopy() *ManagedDiskObservation { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetParameters) + out := new(ManagedDiskObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetPlanObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetPlanObservation) { +func (in *ManagedDiskParameters) DeepCopyInto(out *ManagedDiskParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption *out = new(string) **out = **in } - if in.Product != nil { - in, out := &in.Product, &out.Product + if in.DiskAccessID != nil { + in, out := &in.DiskAccessID, &out.DiskAccessID *out = new(string) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetPlanObservation. -func (in *OrchestratedVirtualMachineScaleSetPlanObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetPlanObservation { - if in == nil { - return nil + if in.DiskIopsReadOnly != nil { + in, out := &in.DiskIopsReadOnly, &out.DiskIopsReadOnly + *out = new(float64) + **out = **in } - out := new(OrchestratedVirtualMachineScaleSetPlanObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetPlanParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetPlanParameters) { - *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.DiskIopsReadWrite != nil { + in, out := &in.DiskIopsReadWrite, &out.DiskIopsReadWrite + *out = new(float64) **out = **in } - if in.Product != nil { - in, out := &in.Product, &out.Product - *out = new(string) + if in.DiskMbpsReadOnly != nil { + in, out := &in.DiskMbpsReadOnly, &out.DiskMbpsReadOnly + *out = new(float64) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher - *out = new(string) + if in.DiskMbpsReadWrite != nil { + in, out := &in.DiskMbpsReadWrite, &out.DiskMbpsReadWrite + *out = new(float64) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetPlanParameters. -func (in *OrchestratedVirtualMachineScaleSetPlanParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetPlanParameters { - if in == nil { - return nil + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in } - out := new(OrchestratedVirtualMachineScaleSetPlanParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation) { - *out = *in - if in.Offer != nil { - in, out := &in.Offer, &out.Offer + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone *out = new(string) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.EncryptionSettings != nil { + in, out := &in.EncryptionSettings, &out.EncryptionSettings + *out = make([]EncryptionSettingsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GalleryImageReferenceID != nil { + in, out := &in.GalleryImageReferenceID, &out.GalleryImageReferenceID *out = new(string) **out = **in } - if in.Sku != nil { - in, out := &in.Sku, &out.Sku + if in.HyperVGeneration != nil { + in, out := &in.HyperVGeneration, &out.HyperVGeneration *out = new(string) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.ImageReferenceID != nil { + in, out := &in.ImageReferenceID, &out.ImageReferenceID *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation. -func (in *OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation { - if in == nil { - return nil - } - out := new(OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters) { - *out = *in - if in.Offer != nil { - in, out := &in.Offer, &out.Offer + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.LogicalSectorSize != nil { + in, out := &in.LogicalSectorSize, &out.LogicalSectorSize + *out = new(float64) + **out = **in + } + if in.MaxShares != nil { + in, out := &in.MaxShares, &out.MaxShares + *out = new(float64) + **out = **in + } + if in.NetworkAccessPolicy != nil { + in, out := &in.NetworkAccessPolicy, &out.NetworkAccessPolicy *out = new(string) **out = **in } - if in.Sku != nil { - in, out := &in.Sku, &out.Sku + if in.OnDemandBurstingEnabled != nil { + in, out := &in.OnDemandBurstingEnabled, &out.OnDemandBurstingEnabled + *out = new(bool) + **out = **in + } + if in.OsType != nil { + in, out := &in.OsType, &out.OsType *out = new(string) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.SecurityType != nil { + in, out := &in.SecurityType, &out.SecurityType + *out = new(string) + **out = **in + } + if in.SourceResourceID != nil { + in, out := &in.SourceResourceID, &out.SourceResourceID + *out = new(string) + **out = **in + } + if in.SourceResourceIDRef != nil { + in, out := &in.SourceResourceIDRef, &out.SourceResourceIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.SourceResourceIDSelector != nil { + in, out := &in.SourceResourceIDSelector, &out.SourceResourceIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.SourceURI != nil { + in, out := &in.SourceURI, &out.SourceURI + *out = new(string) + **out = **in + } + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } + if in.TrustedLaunchEnabled != nil { + in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled + *out = new(bool) + **out = **in + } + if in.UploadSizeBytes != nil { + in, out := &in.UploadSizeBytes, &out.UploadSizeBytes + *out = new(float64) + **out = **in + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters. -func (in *OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskParameters. +func (in *ManagedDiskParameters) DeepCopy() *ManagedDiskParameters { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters) + out := new(ManagedDiskParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetSpec) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetSpec) { +func (in *ManagedDiskSASToken) DeepCopyInto(out *ManagedDiskSASToken) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSpec. -func (in *OrchestratedVirtualMachineScaleSetSpec) DeepCopy() *OrchestratedVirtualMachineScaleSetSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASToken. +func (in *ManagedDiskSASToken) DeepCopy() *ManagedDiskSASToken { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetSpec) + out := new(ManagedDiskSASToken) in.DeepCopyInto(out) return out } -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetStatus) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetStatus. -func (in *OrchestratedVirtualMachineScaleSetStatus) DeepCopy() *OrchestratedVirtualMachineScaleSetStatus { - if in == nil { - return nil +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ManagedDiskSASToken) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c } - out := new(OrchestratedVirtualMachineScaleSetStatus) - in.DeepCopyInto(out) - return out + return nil } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetTerminationNotificationObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetTerminationNotificationObservation) { +func (in *ManagedDiskSASTokenInitParameters) DeepCopyInto(out *ManagedDiskSASTokenInitParameters) { *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) + if in.AccessLevel != nil { + in, out := &in.AccessLevel, &out.AccessLevel + *out = new(string) **out = **in } - if in.Timeout != nil { - in, out := &in.Timeout, &out.Timeout - *out = new(string) + if in.DurationInSeconds != nil { + in, out := &in.DurationInSeconds, &out.DurationInSeconds + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetTerminationNotificationObservation. -func (in *OrchestratedVirtualMachineScaleSetTerminationNotificationObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetTerminationNotificationObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenInitParameters. +func (in *ManagedDiskSASTokenInitParameters) DeepCopy() *ManagedDiskSASTokenInitParameters { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetTerminationNotificationObservation) + out := new(ManagedDiskSASTokenInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OrchestratedVirtualMachineScaleSetTerminationNotificationParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetTerminationNotificationParameters) { +func (in *ManagedDiskSASTokenList) DeepCopyInto(out *ManagedDiskSASTokenList) { *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) - **out = **in - } - if in.Timeout != nil { - in, out := &in.Timeout, &out.Timeout - *out = new(string) - **out = **in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ManagedDiskSASToken, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetTerminationNotificationParameters. -func (in *OrchestratedVirtualMachineScaleSetTerminationNotificationParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetTerminationNotificationParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenList. +func (in *ManagedDiskSASTokenList) DeepCopy() *ManagedDiskSASTokenList { if in == nil { return nil } - out := new(OrchestratedVirtualMachineScaleSetTerminationNotificationParameters) + out := new(ManagedDiskSASTokenList) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ManagedDiskSASTokenList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OsDiskDiffDiskSettingsObservation) DeepCopyInto(out *OsDiskDiffDiskSettingsObservation) { +func (in *ManagedDiskSASTokenObservation) DeepCopyInto(out *ManagedDiskSASTokenObservation) { *out = *in - if in.Option != nil { - in, out := &in.Option, &out.Option + if in.AccessLevel != nil { + in, out := &in.AccessLevel, &out.AccessLevel *out = new(string) **out = **in } - if in.Placement != nil { - in, out := &in.Placement, &out.Placement - *out = new(string) + if in.DurationInSeconds != nil { + in, out := &in.DurationInSeconds, &out.DurationInSeconds + *out = new(float64) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskDiffDiskSettingsObservation. -func (in *OsDiskDiffDiskSettingsObservation) DeepCopy() *OsDiskDiffDiskSettingsObservation { - if in == nil { - return nil - } - out := new(OsDiskDiffDiskSettingsObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OsDiskDiffDiskSettingsParameters) DeepCopyInto(out *OsDiskDiffDiskSettingsParameters) { - *out = *in - if in.Option != nil { - in, out := &in.Option, &out.Option + if in.ID != nil { + in, out := &in.ID, &out.ID *out = new(string) **out = **in } - if in.Placement != nil { - in, out := &in.Placement, &out.Placement + if in.ManagedDiskID != nil { + in, out := &in.ManagedDiskID, &out.ManagedDiskID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskDiffDiskSettingsParameters. -func (in *OsDiskDiffDiskSettingsParameters) DeepCopy() *OsDiskDiffDiskSettingsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenObservation. +func (in *ManagedDiskSASTokenObservation) DeepCopy() *ManagedDiskSASTokenObservation { if in == nil { return nil } - out := new(OsDiskDiffDiskSettingsParameters) + out := new(ManagedDiskSASTokenObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OsDiskObservation) DeepCopyInto(out *OsDiskObservation) { +func (in *ManagedDiskSASTokenParameters) DeepCopyInto(out *ManagedDiskSASTokenParameters) { *out = *in - if in.BlobURI != nil { - in, out := &in.BlobURI, &out.BlobURI + if in.AccessLevel != nil { + in, out := &in.AccessLevel, &out.AccessLevel *out = new(string) **out = **in } - if in.Caching != nil { - in, out := &in.Caching, &out.Caching - *out = new(string) + if in.DurationInSeconds != nil { + in, out := &in.DurationInSeconds, &out.DurationInSeconds + *out = new(float64) **out = **in } if in.ManagedDiskID != nil { @@ -8929,365 +9605,474 @@ func (in *OsDiskObservation) DeepCopyInto(out *OsDiskObservation) { *out = new(string) **out = **in } - if in.OsState != nil { - in, out := &in.OsState, &out.OsState - *out = new(string) - **out = **in - } - if in.OsType != nil { - in, out := &in.OsType, &out.OsType - *out = new(string) - **out = **in + if in.ManagedDiskIDRef != nil { + in, out := &in.ManagedDiskIDRef, &out.ManagedDiskIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) } - if in.SizeGb != nil { - in, out := &in.SizeGb, &out.SizeGb - *out = new(float64) - **out = **in + if in.ManagedDiskIDSelector != nil { + in, out := &in.ManagedDiskIDSelector, &out.ManagedDiskIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskObservation. -func (in *OsDiskObservation) DeepCopy() *OsDiskObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenParameters. +func (in *ManagedDiskSASTokenParameters) DeepCopy() *ManagedDiskSASTokenParameters { if in == nil { return nil } - out := new(OsDiskObservation) + out := new(ManagedDiskSASTokenParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OsDiskParameters) DeepCopyInto(out *OsDiskParameters) { +func (in *ManagedDiskSASTokenSpec) DeepCopyInto(out *ManagedDiskSASTokenSpec) { *out = *in - if in.BlobURI != nil { - in, out := &in.BlobURI, &out.BlobURI - *out = new(string) - **out = **in - } - if in.Caching != nil { - in, out := &in.Caching, &out.Caching - *out = new(string) - **out = **in - } - if in.ManagedDiskID != nil { - in, out := &in.ManagedDiskID, &out.ManagedDiskID - *out = new(string) - **out = **in - } - if in.OsState != nil { - in, out := &in.OsState, &out.OsState - *out = new(string) - **out = **in - } - if in.OsType != nil { - in, out := &in.OsType, &out.OsType - *out = new(string) - **out = **in - } - if in.SizeGb != nil { - in, out := &in.SizeGb, &out.SizeGb - *out = new(float64) - **out = **in - } + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskParameters. -func (in *OsDiskParameters) DeepCopy() *OsDiskParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenSpec. +func (in *ManagedDiskSASTokenSpec) DeepCopy() *ManagedDiskSASTokenSpec { if in == nil { return nil } - out := new(OsDiskParameters) + out := new(ManagedDiskSASTokenSpec) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OsProfileObservation) DeepCopyInto(out *OsProfileObservation) { +func (in *ManagedDiskSASTokenStatus) DeepCopyInto(out *ManagedDiskSASTokenStatus) { *out = *in - if in.LinuxConfiguration != nil { - in, out := &in.LinuxConfiguration, &out.LinuxConfiguration - *out = make([]LinuxConfigurationObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.WindowsConfiguration != nil { - in, out := &in.WindowsConfiguration, &out.WindowsConfiguration - *out = make([]WindowsConfigurationObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsProfileObservation. -func (in *OsProfileObservation) DeepCopy() *OsProfileObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenStatus. +func (in *ManagedDiskSASTokenStatus) DeepCopy() *ManagedDiskSASTokenStatus { if in == nil { return nil } - out := new(OsProfileObservation) + out := new(ManagedDiskSASTokenStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OsProfileParameters) DeepCopyInto(out *OsProfileParameters) { +func (in *ManagedDiskSpec) DeepCopyInto(out *ManagedDiskSpec) { *out = *in - if in.CustomDataSecretRef != nil { - in, out := &in.CustomDataSecretRef, &out.CustomDataSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } - if in.LinuxConfiguration != nil { - in, out := &in.LinuxConfiguration, &out.LinuxConfiguration - *out = make([]LinuxConfigurationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.WindowsConfiguration != nil { - in, out := &in.WindowsConfiguration, &out.WindowsConfiguration - *out = make([]WindowsConfigurationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSpec. +func (in *ManagedDiskSpec) DeepCopy() *ManagedDiskSpec { + if in == nil { + return nil } + out := new(ManagedDiskSpec) + in.DeepCopyInto(out) + return out } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsProfileParameters. -func (in *OsProfileParameters) DeepCopy() *OsProfileParameters { +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedDiskStatus) DeepCopyInto(out *ManagedDiskStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskStatus. +func (in *ManagedDiskStatus) DeepCopy() *ManagedDiskStatus { if in == nil { return nil } - out := new(OsProfileParameters) + out := new(ManagedDiskStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PlanObservation) DeepCopyInto(out *PlanObservation) { +func (in *NetworkInterfaceIPConfigurationInitParameters) DeepCopyInto(out *NetworkInterfaceIPConfigurationInitParameters) { *out = *in + if in.ApplicationGatewayBackendAddressPoolIds != nil { + in, out := &in.ApplicationGatewayBackendAddressPoolIds, &out.ApplicationGatewayBackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ApplicationSecurityGroupIds != nil { + in, out := &in.ApplicationSecurityGroupIds, &out.ApplicationSecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoadBalancerBackendAddressPoolIds != nil { + in, out := &in.LoadBalancerBackendAddressPoolIds, &out.LoadBalancerBackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Product != nil { - in, out := &in.Product, &out.Product - *out = new(string) + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.PublicIPAddress != nil { + in, out := &in.PublicIPAddress, &out.PublicIPAddress + *out = make([]IPConfigurationPublicIPAddressInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanObservation. -func (in *PlanObservation) DeepCopy() *PlanObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationInitParameters. +func (in *NetworkInterfaceIPConfigurationInitParameters) DeepCopy() *NetworkInterfaceIPConfigurationInitParameters { if in == nil { return nil } - out := new(PlanObservation) + out := new(NetworkInterfaceIPConfigurationInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PlanParameters) DeepCopyInto(out *PlanParameters) { +func (in *NetworkInterfaceIPConfigurationObservation) DeepCopyInto(out *NetworkInterfaceIPConfigurationObservation) { *out = *in + if in.ApplicationGatewayBackendAddressPoolIds != nil { + in, out := &in.ApplicationGatewayBackendAddressPoolIds, &out.ApplicationGatewayBackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ApplicationSecurityGroupIds != nil { + in, out := &in.ApplicationSecurityGroupIds, &out.ApplicationSecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoadBalancerBackendAddressPoolIds != nil { + in, out := &in.LoadBalancerBackendAddressPoolIds, &out.LoadBalancerBackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Product != nil { - in, out := &in.Product, &out.Product + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } + if in.PublicIPAddress != nil { + in, out := &in.PublicIPAddress, &out.PublicIPAddress + *out = make([]IPConfigurationPublicIPAddressObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID *out = new(string) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanParameters. -func (in *PlanParameters) DeepCopy() *PlanParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationObservation. +func (in *NetworkInterfaceIPConfigurationObservation) DeepCopy() *NetworkInterfaceIPConfigurationObservation { if in == nil { return nil } - out := new(PlanParameters) + out := new(NetworkInterfaceIPConfigurationObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PriorityMixObservation) DeepCopyInto(out *PriorityMixObservation) { +func (in *NetworkInterfaceIPConfigurationParameters) DeepCopyInto(out *NetworkInterfaceIPConfigurationParameters) { *out = *in - if in.BaseRegularCount != nil { - in, out := &in.BaseRegularCount, &out.BaseRegularCount - *out = new(float64) - **out = **in - } - if in.RegularPercentageAboveBase != nil { - in, out := &in.RegularPercentageAboveBase, &out.RegularPercentageAboveBase - *out = new(float64) + if in.ApplicationGatewayBackendAddressPoolIds != nil { + in, out := &in.ApplicationGatewayBackendAddressPoolIds, &out.ApplicationGatewayBackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ApplicationSecurityGroupIds != nil { + in, out := &in.ApplicationSecurityGroupIds, &out.ApplicationSecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoadBalancerBackendAddressPoolIds != nil { + in, out := &in.LoadBalancerBackendAddressPoolIds, &out.LoadBalancerBackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } + if in.PublicIPAddress != nil { + in, out := &in.PublicIPAddress, &out.PublicIPAddress + *out = make([]IPConfigurationPublicIPAddressParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID + *out = new(string) + **out = **in + } + if in.SubnetIDRef != nil { + in, out := &in.SubnetIDRef, &out.SubnetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.SubnetIDSelector != nil { + in, out := &in.SubnetIDSelector, &out.SubnetIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PriorityMixObservation. -func (in *PriorityMixObservation) DeepCopy() *PriorityMixObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationParameters. +func (in *NetworkInterfaceIPConfigurationParameters) DeepCopy() *NetworkInterfaceIPConfigurationParameters { if in == nil { return nil } - out := new(PriorityMixObservation) + out := new(NetworkInterfaceIPConfigurationParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PriorityMixParameters) DeepCopyInto(out *PriorityMixParameters) { +func (in *NetworkInterfaceIPConfigurationPublicIPAddressInitParameters) DeepCopyInto(out *NetworkInterfaceIPConfigurationPublicIPAddressInitParameters) { *out = *in - if in.BaseRegularCount != nil { - in, out := &in.BaseRegularCount, &out.BaseRegularCount - *out = new(float64) + if in.DomainNameLabel != nil { + in, out := &in.DomainNameLabel, &out.DomainNameLabel + *out = new(string) **out = **in } - if in.RegularPercentageAboveBase != nil { - in, out := &in.RegularPercentageAboveBase, &out.RegularPercentageAboveBase + if in.IPTag != nil { + in, out := &in.IPTag, &out.IPTag + *out = make([]IPConfigurationPublicIPAddressIPTagInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes *out = new(float64) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PriorityMixParameters. -func (in *PriorityMixParameters) DeepCopy() *PriorityMixParameters { - if in == nil { - return nil + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in } - out := new(PriorityMixParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProtectedSettingsFromKeyVaultObservation) DeepCopyInto(out *ProtectedSettingsFromKeyVaultObservation) { - *out = *in - if in.SecretURL != nil { - in, out := &in.SecretURL, &out.SecretURL + if in.PublicIPPrefixID != nil { + in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID *out = new(string) **out = **in } - if in.SourceVaultID != nil { - in, out := &in.SourceVaultID, &out.SourceVaultID + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectedSettingsFromKeyVaultObservation. -func (in *ProtectedSettingsFromKeyVaultObservation) DeepCopy() *ProtectedSettingsFromKeyVaultObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationPublicIPAddressInitParameters. +func (in *NetworkInterfaceIPConfigurationPublicIPAddressInitParameters) DeepCopy() *NetworkInterfaceIPConfigurationPublicIPAddressInitParameters { if in == nil { return nil } - out := new(ProtectedSettingsFromKeyVaultObservation) + out := new(NetworkInterfaceIPConfigurationPublicIPAddressInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProtectedSettingsFromKeyVaultParameters) DeepCopyInto(out *ProtectedSettingsFromKeyVaultParameters) { +func (in *NetworkInterfaceIPConfigurationPublicIPAddressObservation) DeepCopyInto(out *NetworkInterfaceIPConfigurationPublicIPAddressObservation) { *out = *in - if in.SecretURL != nil { - in, out := &in.SecretURL, &out.SecretURL + if in.DomainNameLabel != nil { + in, out := &in.DomainNameLabel, &out.DomainNameLabel *out = new(string) **out = **in } - if in.SourceVaultID != nil { - in, out := &in.SourceVaultID, &out.SourceVaultID + if in.IPTag != nil { + in, out := &in.IPTag, &out.IPTag + *out = make([]IPConfigurationPublicIPAddressIPTagObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectedSettingsFromKeyVaultParameters. -func (in *ProtectedSettingsFromKeyVaultParameters) DeepCopy() *ProtectedSettingsFromKeyVaultParameters { - if in == nil { - return nil + if in.PublicIPPrefixID != nil { + in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in } - out := new(ProtectedSettingsFromKeyVaultParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProximityPlacementGroup) DeepCopyInto(out *ProximityPlacementGroup) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroup. -func (in *ProximityPlacementGroup) DeepCopy() *ProximityPlacementGroup { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationPublicIPAddressObservation. +func (in *NetworkInterfaceIPConfigurationPublicIPAddressObservation) DeepCopy() *NetworkInterfaceIPConfigurationPublicIPAddressObservation { if in == nil { return nil } - out := new(ProximityPlacementGroup) + out := new(NetworkInterfaceIPConfigurationPublicIPAddressObservation) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ProximityPlacementGroup) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProximityPlacementGroupList) DeepCopyInto(out *ProximityPlacementGroupList) { +func (in *NetworkInterfaceIPConfigurationPublicIPAddressParameters) DeepCopyInto(out *NetworkInterfaceIPConfigurationPublicIPAddressParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ProximityPlacementGroup, len(*in)) + if in.DomainNameLabel != nil { + in, out := &in.DomainNameLabel, &out.DomainNameLabel + *out = new(string) + **out = **in + } + if in.IPTag != nil { + in, out := &in.IPTag, &out.IPTag + *out = make([]IPConfigurationPublicIPAddressIPTagParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublicIPPrefixID != nil { + in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupList. -func (in *ProximityPlacementGroupList) DeepCopy() *ProximityPlacementGroupList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationPublicIPAddressParameters. +func (in *NetworkInterfaceIPConfigurationPublicIPAddressParameters) DeepCopy() *NetworkInterfaceIPConfigurationPublicIPAddressParameters { if in == nil { return nil } - out := new(ProximityPlacementGroupList) + out := new(NetworkInterfaceIPConfigurationPublicIPAddressParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ProximityPlacementGroupList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProximityPlacementGroupObservation) DeepCopyInto(out *ProximityPlacementGroupObservation) { +func (in *NetworkInterfaceInitParameters) DeepCopyInto(out *NetworkInterfaceInitParameters) { *out = *in - if in.AllowedVMSizes != nil { - in, out := &in.AllowedVMSizes, &out.AllowedVMSizes + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -9297,58 +10082,55 @@ func (in *ProximityPlacementGroupObservation) DeepCopyInto(out *ProximityPlaceme } } } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) + if in.EnableAcceleratedNetworking != nil { + in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking + *out = new(bool) **out = **in } - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) + if in.EnableIPForwarding != nil { + in, out := &in.EnableIPForwarding, &out.EnableIPForwarding + *out = new(bool) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]IPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NetworkSecurityGroupID != nil { + in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID *out = new(string) **out = **in } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupObservation. -func (in *ProximityPlacementGroupObservation) DeepCopy() *ProximityPlacementGroupObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceInitParameters. +func (in *NetworkInterfaceInitParameters) DeepCopy() *NetworkInterfaceInitParameters { if in == nil { return nil } - out := new(ProximityPlacementGroupObservation) + out := new(NetworkInterfaceInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProximityPlacementGroupParameters) DeepCopyInto(out *ProximityPlacementGroupParameters) { +func (in *NetworkInterfaceObservation) DeepCopyInto(out *NetworkInterfaceObservation) { *out = *in - if in.AllowedVMSizes != nil { - in, out := &in.AllowedVMSizes, &out.AllowedVMSizes + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -9358,824 +10140,904 @@ func (in *ProximityPlacementGroupParameters) DeepCopyInto(out *ProximityPlacemen } } } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.EnableAcceleratedNetworking != nil { + in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking + *out = new(bool) + **out = **in + } + if in.EnableIPForwarding != nil { + in, out := &in.EnableIPForwarding, &out.EnableIPForwarding + *out = new(bool) + **out = **in + } + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]IPConfigurationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.NetworkSecurityGroupID != nil { + in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceObservation. +func (in *NetworkInterfaceObservation) DeepCopy() *NetworkInterfaceObservation { + if in == nil { + return nil } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal + out := new(NetworkInterfaceObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkInterfaceParameters) DeepCopyInto(out *NetworkInterfaceParameters) { + *out = *in + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] *out = new(string) **out = **in } - (*out)[key] = outVal } } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone + if in.EnableAcceleratedNetworking != nil { + in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking + *out = new(bool) + **out = **in + } + if in.EnableIPForwarding != nil { + in, out := &in.EnableIPForwarding, &out.EnableIPForwarding + *out = new(bool) + **out = **in + } + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]IPConfigurationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NetworkSecurityGroupID != nil { + in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID *out = new(string) **out = **in } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupParameters. -func (in *ProximityPlacementGroupParameters) DeepCopy() *ProximityPlacementGroupParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceParameters. +func (in *NetworkInterfaceParameters) DeepCopy() *NetworkInterfaceParameters { if in == nil { return nil } - out := new(ProximityPlacementGroupParameters) + out := new(NetworkInterfaceParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProximityPlacementGroupSpec) DeepCopyInto(out *ProximityPlacementGroupSpec) { +func (in *OrchestratedVirtualMachineScaleSet) DeepCopyInto(out *OrchestratedVirtualMachineScaleSet) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupSpec. -func (in *ProximityPlacementGroupSpec) DeepCopy() *ProximityPlacementGroupSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSet. +func (in *OrchestratedVirtualMachineScaleSet) DeepCopy() *OrchestratedVirtualMachineScaleSet { if in == nil { return nil } - out := new(ProximityPlacementGroupSpec) + out := new(OrchestratedVirtualMachineScaleSet) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *OrchestratedVirtualMachineScaleSet) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ProximityPlacementGroupStatus) DeepCopyInto(out *ProximityPlacementGroupStatus) { +func (in *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupStatus. -func (in *ProximityPlacementGroupStatus) DeepCopy() *ProximityPlacementGroupStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters. +func (in *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters { if in == nil { return nil } - out := new(ProximityPlacementGroupStatus) + out := new(OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PublicIPAddressIPTagObservation) DeepCopyInto(out *PublicIPAddressIPTagObservation) { +func (in *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation) { *out = *in - if in.Tag != nil { - in, out := &in.Tag, &out.Tag - *out = new(string) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressIPTagObservation. -func (in *PublicIPAddressIPTagObservation) DeepCopy() *PublicIPAddressIPTagObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation. +func (in *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation { if in == nil { return nil } - out := new(PublicIPAddressIPTagObservation) + out := new(OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PublicIPAddressIPTagParameters) DeepCopyInto(out *PublicIPAddressIPTagParameters) { +func (in *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters) { *out = *in - if in.Tag != nil { - in, out := &in.Tag, &out.Tag - *out = new(string) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressIPTagParameters. -func (in *PublicIPAddressIPTagParameters) DeepCopy() *PublicIPAddressIPTagParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters. +func (in *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters { if in == nil { return nil } - out := new(PublicIPAddressIPTagParameters) + out := new(OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PublicIPAddressObservation) DeepCopyInto(out *PublicIPAddressObservation) { +func (in *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) { *out = *in - if in.DomainNameLabel != nil { - in, out := &in.DomainNameLabel, &out.DomainNameLabel - *out = new(string) - **out = **in - } - if in.IPTag != nil { - in, out := &in.IPTag, &out.IPTag - *out = make([]IPTagObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.IdleTimeoutInMinutes != nil { - in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes - *out = new(float64) - **out = **in - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.PublicIPPrefixID != nil { - in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID - *out = new(string) + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) **out = **in } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.GracePeriod != nil { + in, out := &in.GracePeriod, &out.GracePeriod *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressObservation. -func (in *PublicIPAddressObservation) DeepCopy() *PublicIPAddressObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters. +func (in *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters { if in == nil { return nil } - out := new(PublicIPAddressObservation) + out := new(OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PublicIPAddressParameters) DeepCopyInto(out *PublicIPAddressParameters) { +func (in *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation) { *out = *in - if in.DomainNameLabel != nil { - in, out := &in.DomainNameLabel, &out.DomainNameLabel + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.GracePeriod != nil { + in, out := &in.GracePeriod, &out.GracePeriod *out = new(string) **out = **in } - if in.IPTag != nil { - in, out := &in.IPTag, &out.IPTag - *out = make([]IPTagParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation. +func (in *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation { + if in == nil { + return nil } - if in.IdleTimeoutInMinutes != nil { - in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes - *out = new(float64) + out := new(OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.GracePeriod != nil { + in, out := &in.GracePeriod, &out.GracePeriod *out = new(string) **out = **in } - if in.PublicIPPrefixID != nil { - in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters. +func (in *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters { + if in == nil { + return nil } - if in.Version != nil { - in, out := &in.Version, &out.Version + out := new(OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressParameters. -func (in *PublicIPAddressParameters) DeepCopy() *PublicIPAddressParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters. +func (in *OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters { if in == nil { return nil } - out := new(PublicIPAddressParameters) + out := new(OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PurchasePlanObservation) DeepCopyInto(out *PurchasePlanObservation) { +func (in *OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI *out = new(string) **out = **in } - if in.Product != nil { - in, out := &in.Product, &out.Product - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation. +func (in *OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation { + if in == nil { + return nil } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + out := new(OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PurchasePlanObservation. -func (in *PurchasePlanObservation) DeepCopy() *PurchasePlanObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters. +func (in *OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters { if in == nil { return nil } - out := new(PurchasePlanObservation) + out := new(OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PurchasePlanParameters) DeepCopyInto(out *PurchasePlanParameters) { +func (in *OrchestratedVirtualMachineScaleSetDataDiskInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetDataDiskInitParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Caching != nil { + in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } - if in.Product != nil { - in, out := &in.Product, &out.Product + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption *out = new(string) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.Lun != nil { + in, out := &in.Lun, &out.Lun + *out = new(float64) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType *out = new(string) **out = **in } + if in.UltraSsdDiskIopsReadWrite != nil { + in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite + *out = new(float64) + **out = **in + } + if in.UltraSsdDiskMbpsReadWrite != nil { + in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite + *out = new(float64) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PurchasePlanParameters. -func (in *PurchasePlanParameters) DeepCopy() *PurchasePlanParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetDataDiskInitParameters. +func (in *OrchestratedVirtualMachineScaleSetDataDiskInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetDataDiskInitParameters { if in == nil { return nil } - out := new(PurchasePlanParameters) + out := new(OrchestratedVirtualMachineScaleSetDataDiskInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RollingUpgradePolicyObservation) DeepCopyInto(out *RollingUpgradePolicyObservation) { +func (in *OrchestratedVirtualMachineScaleSetDataDiskObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetDataDiskObservation) { *out = *in - if in.CrossZoneUpgradesEnabled != nil { - in, out := &in.CrossZoneUpgradesEnabled, &out.CrossZoneUpgradesEnabled - *out = new(bool) + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) **out = **in } - if in.MaxBatchInstancePercent != nil { - in, out := &in.MaxBatchInstancePercent, &out.MaxBatchInstancePercent - *out = new(float64) + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption + *out = new(string) **out = **in } - if in.MaxUnhealthyInstancePercent != nil { - in, out := &in.MaxUnhealthyInstancePercent, &out.MaxUnhealthyInstancePercent + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb *out = new(float64) **out = **in } - if in.MaxUnhealthyUpgradedInstancePercent != nil { - in, out := &in.MaxUnhealthyUpgradedInstancePercent, &out.MaxUnhealthyUpgradedInstancePercent + if in.Lun != nil { + in, out := &in.Lun, &out.Lun *out = new(float64) **out = **in } - if in.PauseTimeBetweenBatches != nil { - in, out := &in.PauseTimeBetweenBatches, &out.PauseTimeBetweenBatches + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType *out = new(string) **out = **in } - if in.PrioritizeUnhealthyInstancesEnabled != nil { - in, out := &in.PrioritizeUnhealthyInstancesEnabled, &out.PrioritizeUnhealthyInstancesEnabled + if in.UltraSsdDiskIopsReadWrite != nil { + in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite + *out = new(float64) + **out = **in + } + if in.UltraSsdDiskMbpsReadWrite != nil { + in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite + *out = new(float64) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpgradePolicyObservation. -func (in *RollingUpgradePolicyObservation) DeepCopy() *RollingUpgradePolicyObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetDataDiskObservation. +func (in *OrchestratedVirtualMachineScaleSetDataDiskObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetDataDiskObservation { if in == nil { return nil } - out := new(RollingUpgradePolicyObservation) + out := new(OrchestratedVirtualMachineScaleSetDataDiskObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RollingUpgradePolicyParameters) DeepCopyInto(out *RollingUpgradePolicyParameters) { +func (in *OrchestratedVirtualMachineScaleSetDataDiskParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetDataDiskParameters) { *out = *in - if in.CrossZoneUpgradesEnabled != nil { - in, out := &in.CrossZoneUpgradesEnabled, &out.CrossZoneUpgradesEnabled - *out = new(bool) + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) **out = **in } - if in.MaxBatchInstancePercent != nil { - in, out := &in.MaxBatchInstancePercent, &out.MaxBatchInstancePercent - *out = new(float64) + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption + *out = new(string) **out = **in } - if in.MaxUnhealthyInstancePercent != nil { - in, out := &in.MaxUnhealthyInstancePercent, &out.MaxUnhealthyInstancePercent + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb *out = new(float64) **out = **in } - if in.MaxUnhealthyUpgradedInstancePercent != nil { - in, out := &in.MaxUnhealthyUpgradedInstancePercent, &out.MaxUnhealthyUpgradedInstancePercent + if in.Lun != nil { + in, out := &in.Lun, &out.Lun *out = new(float64) **out = **in } - if in.PauseTimeBetweenBatches != nil { - in, out := &in.PauseTimeBetweenBatches, &out.PauseTimeBetweenBatches + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType *out = new(string) **out = **in } - if in.PrioritizeUnhealthyInstancesEnabled != nil { - in, out := &in.PrioritizeUnhealthyInstancesEnabled, &out.PrioritizeUnhealthyInstancesEnabled + if in.UltraSsdDiskIopsReadWrite != nil { + in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite + *out = new(float64) + **out = **in + } + if in.UltraSsdDiskMbpsReadWrite != nil { + in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite + *out = new(float64) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpgradePolicyParameters. -func (in *RollingUpgradePolicyParameters) DeepCopy() *RollingUpgradePolicyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetDataDiskParameters. +func (in *OrchestratedVirtualMachineScaleSetDataDiskParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetDataDiskParameters { if in == nil { return nil } - out := new(RollingUpgradePolicyParameters) + out := new(OrchestratedVirtualMachineScaleSetDataDiskParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SSHPublicKey) DeepCopyInto(out *SSHPublicKey) { +func (in *OrchestratedVirtualMachineScaleSetExtensionInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetExtensionInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKey. -func (in *SSHPublicKey) DeepCopy() *SSHPublicKey { - if in == nil { - return nil - } - out := new(SSHPublicKey) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SSHPublicKey) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c + if in.AutoUpgradeMinorVersionEnabled != nil { + in, out := &in.AutoUpgradeMinorVersionEnabled, &out.AutoUpgradeMinorVersionEnabled + *out = new(bool) + **out = **in } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SSHPublicKeyList) DeepCopyInto(out *SSHPublicKeyList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]SSHPublicKey, len(*in)) + if in.ExtensionsToProvisionAfterVMCreation != nil { + in, out := &in.ExtensionsToProvisionAfterVMCreation, &out.ExtensionsToProvisionAfterVMCreation + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FailureSuppressionEnabled != nil { + in, out := &in.FailureSuppressionEnabled, &out.FailureSuppressionEnabled + *out = new(bool) + **out = **in + } + if in.ForceExtensionExecutionOnChange != nil { + in, out := &in.ForceExtensionExecutionOnChange, &out.ForceExtensionExecutionOnChange + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ProtectedSettingsFromKeyVault != nil { + in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault + *out = make([]ExtensionProtectedSettingsFromKeyVaultInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeHandlerVersion != nil { + in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyList. -func (in *SSHPublicKeyList) DeepCopy() *SSHPublicKeyList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetExtensionInitParameters. +func (in *OrchestratedVirtualMachineScaleSetExtensionInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetExtensionInitParameters { if in == nil { return nil } - out := new(SSHPublicKeyList) + out := new(OrchestratedVirtualMachineScaleSetExtensionInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SSHPublicKeyList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SSHPublicKeyObservation) DeepCopyInto(out *SSHPublicKeyObservation) { +func (in *OrchestratedVirtualMachineScaleSetExtensionObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetExtensionObservation) { *out = *in - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.AutoUpgradeMinorVersionEnabled != nil { + in, out := &in.AutoUpgradeMinorVersionEnabled, &out.AutoUpgradeMinorVersionEnabled + *out = new(bool) + **out = **in + } + if in.ExtensionsToProvisionAfterVMCreation != nil { + in, out := &in.ExtensionsToProvisionAfterVMCreation, &out.ExtensionsToProvisionAfterVMCreation + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FailureSuppressionEnabled != nil { + in, out := &in.FailureSuppressionEnabled, &out.FailureSuppressionEnabled + *out = new(bool) + **out = **in + } + if in.ForceExtensionExecutionOnChange != nil { + in, out := &in.ForceExtensionExecutionOnChange, &out.ForceExtensionExecutionOnChange *out = new(string) **out = **in } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.PublicKey != nil { - in, out := &in.PublicKey, &out.PublicKey + if in.ProtectedSettingsFromKeyVault != nil { + in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault + *out = make([]ExtensionProtectedSettingsFromKeyVaultObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.Settings != nil { + in, out := &in.Settings, &out.Settings *out = new(string) **out = **in } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeHandlerVersion != nil { + in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyObservation. -func (in *SSHPublicKeyObservation) DeepCopy() *SSHPublicKeyObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetExtensionObservation. +func (in *OrchestratedVirtualMachineScaleSetExtensionObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetExtensionObservation { if in == nil { return nil } - out := new(SSHPublicKeyObservation) + out := new(OrchestratedVirtualMachineScaleSetExtensionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SSHPublicKeyParameters) DeepCopyInto(out *SSHPublicKeyParameters) { +func (in *OrchestratedVirtualMachineScaleSetExtensionParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetExtensionParameters) { *out = *in - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.AutoUpgradeMinorVersionEnabled != nil { + in, out := &in.AutoUpgradeMinorVersionEnabled, &out.AutoUpgradeMinorVersionEnabled + *out = new(bool) + **out = **in + } + if in.ExtensionsToProvisionAfterVMCreation != nil { + in, out := &in.ExtensionsToProvisionAfterVMCreation, &out.ExtensionsToProvisionAfterVMCreation + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FailureSuppressionEnabled != nil { + in, out := &in.FailureSuppressionEnabled, &out.FailureSuppressionEnabled + *out = new(bool) + **out = **in + } + if in.ForceExtensionExecutionOnChange != nil { + in, out := &in.ForceExtensionExecutionOnChange, &out.ForceExtensionExecutionOnChange *out = new(string) **out = **in } - if in.PublicKey != nil { - in, out := &in.PublicKey, &out.PublicKey + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.ProtectedSettingsFromKeyVault != nil { + in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault + *out = make([]ExtensionProtectedSettingsFromKeyVaultParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ProtectedSettingsSecretRef != nil { + in, out := &in.ProtectedSettingsSecretRef, &out.ProtectedSettingsSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = new(string) + **out = **in } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } + if in.TypeHandlerVersion != nil { + in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyParameters. -func (in *SSHPublicKeyParameters) DeepCopy() *SSHPublicKeyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetExtensionParameters. +func (in *OrchestratedVirtualMachineScaleSetExtensionParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetExtensionParameters { if in == nil { return nil } - out := new(SSHPublicKeyParameters) + out := new(OrchestratedVirtualMachineScaleSetExtensionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SSHPublicKeySpec) DeepCopyInto(out *SSHPublicKeySpec) { +func (in *OrchestratedVirtualMachineScaleSetIdentityInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetIdentityInitParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeySpec. -func (in *SSHPublicKeySpec) DeepCopy() *SSHPublicKeySpec { - if in == nil { - return nil - } - out := new(SSHPublicKeySpec) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SSHPublicKeyStatus) DeepCopyInto(out *SSHPublicKeyStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyStatus. -func (in *SSHPublicKeyStatus) DeepCopy() *SSHPublicKeyStatus { - if in == nil { - return nil - } - out := new(SSHPublicKeyStatus) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ScaleInObservation) DeepCopyInto(out *ScaleInObservation) { - *out = *in - if in.ForceDeletionEnabled != nil { - in, out := &in.ForceDeletionEnabled, &out.ForceDeletionEnabled - *out = new(bool) - **out = **in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.Rule != nil { - in, out := &in.Rule, &out.Rule + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleInObservation. -func (in *ScaleInObservation) DeepCopy() *ScaleInObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetIdentityInitParameters. +func (in *OrchestratedVirtualMachineScaleSetIdentityInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetIdentityInitParameters { if in == nil { return nil } - out := new(ScaleInObservation) + out := new(OrchestratedVirtualMachineScaleSetIdentityInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ScaleInParameters) DeepCopyInto(out *ScaleInParameters) { +func (in *OrchestratedVirtualMachineScaleSetIdentityObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetIdentityObservation) { *out = *in - if in.ForceDeletionEnabled != nil { - in, out := &in.ForceDeletionEnabled, &out.ForceDeletionEnabled - *out = new(bool) - **out = **in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - if in.Rule != nil { - in, out := &in.Rule, &out.Rule + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleInParameters. -func (in *ScaleInParameters) DeepCopy() *ScaleInParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetIdentityObservation. +func (in *OrchestratedVirtualMachineScaleSetIdentityObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetIdentityObservation { if in == nil { return nil } - out := new(ScaleInParameters) + out := new(OrchestratedVirtualMachineScaleSetIdentityObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecretCertificateObservation) DeepCopyInto(out *SecretCertificateObservation) { +func (in *OrchestratedVirtualMachineScaleSetIdentityParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetIdentityParameters) { *out = *in - if in.URL != nil { - in, out := &in.URL, &out.URL + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretCertificateObservation. -func (in *SecretCertificateObservation) DeepCopy() *SecretCertificateObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetIdentityParameters. +func (in *OrchestratedVirtualMachineScaleSetIdentityParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetIdentityParameters { if in == nil { return nil } - out := new(SecretCertificateObservation) + out := new(OrchestratedVirtualMachineScaleSetIdentityParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecretCertificateParameters) DeepCopyInto(out *SecretCertificateParameters) { +func (in *OrchestratedVirtualMachineScaleSetInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetInitParameters) { *out = *in - if in.URL != nil { - in, out := &in.URL, &out.URL - *out = new(string) - **out = **in + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretCertificateParameters. -func (in *SecretCertificateParameters) DeepCopy() *SecretCertificateParameters { - if in == nil { - return nil + if in.AutomaticInstanceRepair != nil { + in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair + *out = make([]OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(SecretCertificateParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecretObservation) DeepCopyInto(out *SecretObservation) { - *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = make([]CertificateObservation, len(*in)) + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.KeyVaultID != nil { - in, out := &in.KeyVaultID, &out.KeyVaultID + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretObservation. -func (in *SecretObservation) DeepCopy() *SecretObservation { - if in == nil { - return nil - } - out := new(SecretObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecretParameters) DeepCopyInto(out *SecretParameters) { - *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = make([]CertificateParameters, len(*in)) + if in.DataDisk != nil { + in, out := &in.DataDisk, &out.DataDisk + *out = make([]OrchestratedVirtualMachineScaleSetDataDiskInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.KeyVaultID != nil { - in, out := &in.KeyVaultID, &out.KeyVaultID - *out = new(string) + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretParameters. -func (in *SecretParameters) DeepCopy() *SecretParameters { - if in == nil { - return nil - } - out := new(SecretParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImage) DeepCopyInto(out *SharedImage) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImage. -func (in *SharedImage) DeepCopy() *SharedImage { - if in == nil { - return nil + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy + *out = new(string) + **out = **in } - out := new(SharedImage) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SharedImage) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]OrchestratedVirtualMachineScaleSetExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageGallery) DeepCopyInto(out *SharedImageGallery) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGallery. -func (in *SharedImageGallery) DeepCopy() *SharedImageGallery { - if in == nil { - return nil + if in.ExtensionOperationsEnabled != nil { + in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled + *out = new(bool) + **out = **in } - out := new(SharedImageGallery) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SharedImageGallery) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget + *out = new(string) + **out = **in } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageGalleryList) DeepCopyInto(out *SharedImageGalleryList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]SharedImageGallery, len(*in)) + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]OrchestratedVirtualMachineScaleSetIdentityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryList. -func (in *SharedImageGalleryList) DeepCopy() *SharedImageGalleryList { - if in == nil { - return nil + if in.Instances != nil { + in, out := &in.Instances, &out.Instances + *out = new(float64) + **out = **in } - out := new(SharedImageGalleryList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SharedImageGalleryList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageGalleryObservation) DeepCopyInto(out *SharedImageGalleryObservation) { - *out = *in - if in.Description != nil { - in, out := &in.Description, &out.Description - *out = new(string) - **out = **in - } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType *out = new(string) **out = **in } @@ -10184,70 +11046,82 @@ func (in *SharedImageGalleryObservation) DeepCopyInto(out *SharedImageGalleryObs *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice + *out = new(float64) **out = **in } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal + if in.NetworkInterface != nil { + in, out := &in.NetworkInterface, &out.NetworkInterface + *out = make([]OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.UniqueName != nil { - in, out := &in.UniqueName, &out.UniqueName + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]OrchestratedVirtualMachineScaleSetOsDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OsProfile != nil { + in, out := &in.OsProfile, &out.OsProfile + *out = make([]OsProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]OrchestratedVirtualMachineScaleSetPlanInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PlatformFaultDomainCount != nil { + in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount + *out = new(float64) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryObservation. -func (in *SharedImageGalleryObservation) DeepCopy() *SharedImageGalleryObservation { - if in == nil { - return nil + if in.PriorityMix != nil { + in, out := &in.PriorityMix, &out.PriorityMix + *out = make([]PriorityMixInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(SharedImageGalleryObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageGalleryParameters) DeepCopyInto(out *SharedImageGalleryParameters) { - *out = *in - if in.Description != nil { - in, out := &in.Description, &out.Description + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID *out = new(string) **out = **in } - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) + if in.SinglePlacementGroup != nil { + in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup + *out = new(bool) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID + *out = new(string) + **out = **in } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } if in.Tags != nil { in, out := &in.Tags, &out.Tags @@ -10264,78 +11138,67 @@ func (in *SharedImageGalleryParameters) DeepCopyInto(out *SharedImageGalleryPara (*out)[key] = outVal } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryParameters. -func (in *SharedImageGalleryParameters) DeepCopy() *SharedImageGalleryParameters { - if in == nil { - return nil + if in.TerminationNotification != nil { + in, out := &in.TerminationNotification, &out.TerminationNotification + *out = make([]OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(SharedImageGalleryParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageGallerySpec) DeepCopyInto(out *SharedImageGallerySpec) { - *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGallerySpec. -func (in *SharedImageGallerySpec) DeepCopy() *SharedImageGallerySpec { - if in == nil { - return nil + if in.ZoneBalance != nil { + in, out := &in.ZoneBalance, &out.ZoneBalance + *out = new(bool) + **out = **in + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - out := new(SharedImageGallerySpec) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageGalleryStatus) DeepCopyInto(out *SharedImageGalleryStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryStatus. -func (in *SharedImageGalleryStatus) DeepCopy() *SharedImageGalleryStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetInitParameters. +func (in *OrchestratedVirtualMachineScaleSetInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetInitParameters { if in == nil { return nil } - out := new(SharedImageGalleryStatus) + out := new(OrchestratedVirtualMachineScaleSetInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageList) DeepCopyInto(out *SharedImageList) { +func (in *OrchestratedVirtualMachineScaleSetList) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetList) { *out = *in out.TypeMeta = in.TypeMeta in.ListMeta.DeepCopyInto(&out.ListMeta) if in.Items != nil { in, out := &in.Items, &out.Items - *out = make([]SharedImage, len(*in)) + *out = make([]OrchestratedVirtualMachineScaleSet, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageList. -func (in *SharedImageList) DeepCopy() *SharedImageList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetList. +func (in *OrchestratedVirtualMachineScaleSetList) DeepCopy() *OrchestratedVirtualMachineScaleSetList { if in == nil { return nil } - out := new(SharedImageList) + out := new(OrchestratedVirtualMachineScaleSetList) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SharedImageList) DeepCopyObject() runtime.Object { +func (in *OrchestratedVirtualMachineScaleSetList) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -10343,35 +11206,10 @@ func (in *SharedImageList) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageObservation) DeepCopyInto(out *SharedImageObservation) { +func (in *OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters) { *out = *in - if in.AcceleratedNetworkSupportEnabled != nil { - in, out := &in.AcceleratedNetworkSupportEnabled, &out.AcceleratedNetworkSupportEnabled - *out = new(bool) - **out = **in - } - if in.Architecture != nil { - in, out := &in.Architecture, &out.Architecture - *out = new(string) - **out = **in - } - if in.ConfidentialVMEnabled != nil { - in, out := &in.ConfidentialVMEnabled, &out.ConfidentialVMEnabled - *out = new(bool) - **out = **in - } - if in.ConfidentialVMSupported != nil { - in, out := &in.ConfidentialVMSupported, &out.ConfidentialVMSupported - *out = new(bool) - **out = **in - } - if in.Description != nil { - in, out := &in.Description, &out.Description - *out = new(string) - **out = **in - } - if in.DiskTypesNotAllowed != nil { - in, out := &in.DiskTypesNotAllowed, &out.DiskTypesNotAllowed + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -10381,247 +11219,308 @@ func (in *SharedImageObservation) DeepCopyInto(out *SharedImageObservation) { } } } - if in.EndOfLifeDate != nil { - in, out := &in.EndOfLifeDate, &out.EndOfLifeDate - *out = new(string) + if in.EnableAcceleratedNetworking != nil { + in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking + *out = new(bool) **out = **in } - if in.Eula != nil { - in, out := &in.Eula, &out.Eula - *out = new(string) + if in.EnableIPForwarding != nil { + in, out := &in.EnableIPForwarding, &out.EnableIPForwarding + *out = new(bool) **out = **in } - if in.GalleryName != nil { - in, out := &in.GalleryName, &out.GalleryName + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]NetworkInterfaceIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.HyperVGeneration != nil { - in, out := &in.HyperVGeneration, &out.HyperVGeneration + if in.NetworkSecurityGroupID != nil { + in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) **out = **in } - if in.Identifier != nil { - in, out := &in.Identifier, &out.Identifier - *out = make([]IdentifierObservation, len(*in)) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters. +func (in *OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters { + if in == nil { + return nil + } + out := new(OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation) { + *out = *in + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) + if in.EnableAcceleratedNetworking != nil { + in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking + *out = new(bool) **out = **in } - if in.MaxRecommendedMemoryInGb != nil { - in, out := &in.MaxRecommendedMemoryInGb, &out.MaxRecommendedMemoryInGb - *out = new(float64) + if in.EnableIPForwarding != nil { + in, out := &in.EnableIPForwarding, &out.EnableIPForwarding + *out = new(bool) **out = **in } - if in.MaxRecommendedVcpuCount != nil { - in, out := &in.MaxRecommendedVcpuCount, &out.MaxRecommendedVcpuCount - *out = new(float64) + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]NetworkInterfaceIPConfigurationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } - if in.MinRecommendedMemoryInGb != nil { - in, out := &in.MinRecommendedMemoryInGb, &out.MinRecommendedMemoryInGb - *out = new(float64) + if in.NetworkSecurityGroupID != nil { + in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID + *out = new(string) **out = **in } - if in.MinRecommendedVcpuCount != nil { - in, out := &in.MinRecommendedVcpuCount, &out.MinRecommendedVcpuCount - *out = new(float64) + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) **out = **in } - if in.OsType != nil { - in, out := &in.OsType, &out.OsType - *out = new(string) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation. +func (in *OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation { + if in == nil { + return nil + } + out := new(OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters) { + *out = *in + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EnableAcceleratedNetworking != nil { + in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking + *out = new(bool) **out = **in } - if in.PrivacyStatementURI != nil { - in, out := &in.PrivacyStatementURI, &out.PrivacyStatementURI - *out = new(string) + if in.EnableIPForwarding != nil { + in, out := &in.EnableIPForwarding, &out.EnableIPForwarding + *out = new(bool) **out = **in } - if in.PurchasePlan != nil { - in, out := &in.PurchasePlan, &out.PurchasePlan - *out = make([]PurchasePlanObservation, len(*in)) + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]NetworkInterfaceIPConfigurationParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ReleaseNoteURI != nil { - in, out := &in.ReleaseNoteURI, &out.ReleaseNoteURI + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.NetworkSecurityGroupID != nil { + in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID *out = new(string) **out = **in } - if in.Specialized != nil { - in, out := &in.Specialized, &out.Specialized - *out = new(bool) - **out = **in - } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.TrustedLaunchEnabled != nil { - in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled + if in.Primary != nil { + in, out := &in.Primary, &out.Primary *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageObservation. -func (in *SharedImageObservation) DeepCopy() *SharedImageObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters. +func (in *OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters { if in == nil { return nil } - out := new(SharedImageObservation) + out := new(OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageParameters) DeepCopyInto(out *SharedImageParameters) { +func (in *OrchestratedVirtualMachineScaleSetObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetObservation) { *out = *in - if in.AcceleratedNetworkSupportEnabled != nil { - in, out := &in.AcceleratedNetworkSupportEnabled, &out.AcceleratedNetworkSupportEnabled - *out = new(bool) - **out = **in + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Architecture != nil { - in, out := &in.Architecture, &out.Architecture + if in.AutomaticInstanceRepair != nil { + in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair + *out = make([]OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID *out = new(string) **out = **in } - if in.ConfidentialVMEnabled != nil { - in, out := &in.ConfidentialVMEnabled, &out.ConfidentialVMEnabled - *out = new(bool) - **out = **in + if in.DataDisk != nil { + in, out := &in.DataDisk, &out.DataDisk + *out = make([]OrchestratedVirtualMachineScaleSetDataDiskObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.ConfidentialVMSupported != nil { - in, out := &in.ConfidentialVMSupported, &out.ConfidentialVMSupported + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled *out = new(bool) **out = **in } - if in.Description != nil { - in, out := &in.Description, &out.Description + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy *out = new(string) **out = **in } - if in.DiskTypesNotAllowed != nil { - in, out := &in.DiskTypesNotAllowed, &out.DiskTypesNotAllowed - *out = make([]*string, len(*in)) + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]OrchestratedVirtualMachineScaleSetExtensionObservation, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.EndOfLifeDate != nil { - in, out := &in.EndOfLifeDate, &out.EndOfLifeDate - *out = new(string) + if in.ExtensionOperationsEnabled != nil { + in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled + *out = new(bool) **out = **in } - if in.Eula != nil { - in, out := &in.Eula, &out.Eula + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget *out = new(string) **out = **in } - if in.GalleryName != nil { - in, out := &in.GalleryName, &out.GalleryName + if in.ID != nil { + in, out := &in.ID, &out.ID *out = new(string) **out = **in } - if in.GalleryNameRef != nil { - in, out := &in.GalleryNameRef, &out.GalleryNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]OrchestratedVirtualMachineScaleSetIdentityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.GalleryNameSelector != nil { - in, out := &in.GalleryNameSelector, &out.GalleryNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.Instances != nil { + in, out := &in.Instances, &out.Instances + *out = new(float64) + **out = **in } - if in.HyperVGeneration != nil { - in, out := &in.HyperVGeneration, &out.HyperVGeneration + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType *out = new(string) **out = **in } - if in.Identifier != nil { - in, out := &in.Identifier, &out.Identifier - *out = make([]IdentifierParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } if in.Location != nil { in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.MaxRecommendedMemoryInGb != nil { - in, out := &in.MaxRecommendedMemoryInGb, &out.MaxRecommendedMemoryInGb - *out = new(float64) - **out = **in - } - if in.MaxRecommendedVcpuCount != nil { - in, out := &in.MaxRecommendedVcpuCount, &out.MaxRecommendedVcpuCount + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice *out = new(float64) **out = **in } - if in.MinRecommendedMemoryInGb != nil { - in, out := &in.MinRecommendedMemoryInGb, &out.MinRecommendedMemoryInGb - *out = new(float64) - **out = **in + if in.NetworkInterface != nil { + in, out := &in.NetworkInterface, &out.NetworkInterface + *out = make([]OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.MinRecommendedVcpuCount != nil { - in, out := &in.MinRecommendedVcpuCount, &out.MinRecommendedVcpuCount - *out = new(float64) - **out = **in + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]OrchestratedVirtualMachineScaleSetOsDiskObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.OsType != nil { - in, out := &in.OsType, &out.OsType - *out = new(string) + if in.OsProfile != nil { + in, out := &in.OsProfile, &out.OsProfile + *out = make([]OsProfileObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]OrchestratedVirtualMachineScaleSetPlanObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PlatformFaultDomainCount != nil { + in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount + *out = new(float64) **out = **in } - if in.PrivacyStatementURI != nil { - in, out := &in.PrivacyStatementURI, &out.PrivacyStatementURI + if in.Priority != nil { + in, out := &in.Priority, &out.Priority *out = new(string) **out = **in } - if in.PurchasePlan != nil { - in, out := &in.PurchasePlan, &out.PurchasePlan - *out = make([]PurchasePlanParameters, len(*in)) + if in.PriorityMix != nil { + in, out := &in.PriorityMix, &out.PriorityMix + *out = make([]PriorityMixObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ReleaseNoteURI != nil { - in, out := &in.ReleaseNoteURI, &out.ReleaseNoteURI + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID *out = new(string) **out = **in } @@ -10630,21 +11529,28 @@ func (in *SharedImageParameters) DeepCopyInto(out *SharedImageParameters) { *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.SinglePlacementGroup != nil { + in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup + *out = new(bool) + **out = **in } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in } - if in.Specialized != nil { - in, out := &in.Specialized, &out.Specialized - *out = new(bool) + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID + *out = new(string) **out = **in } + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -10660,348 +11566,399 @@ func (in *SharedImageParameters) DeepCopyInto(out *SharedImageParameters) { (*out)[key] = outVal } } - if in.TrustedLaunchEnabled != nil { - in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled + if in.TerminationNotification != nil { + in, out := &in.TerminationNotification, &out.TerminationNotification + *out = make([]OrchestratedVirtualMachineScaleSetTerminationNotificationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UniqueID != nil { + in, out := &in.UniqueID, &out.UniqueID + *out = new(string) + **out = **in + } + if in.ZoneBalance != nil { + in, out := &in.ZoneBalance, &out.ZoneBalance *out = new(bool) **out = **in } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageParameters. -func (in *SharedImageParameters) DeepCopy() *SharedImageParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetObservation. +func (in *OrchestratedVirtualMachineScaleSetObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetObservation { if in == nil { return nil } - out := new(SharedImageParameters) + out := new(OrchestratedVirtualMachineScaleSetObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageSpec) DeepCopyInto(out *SharedImageSpec) { +func (in *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + if in.Option != nil { + in, out := &in.Option, &out.Option + *out = new(string) + **out = **in + } + if in.Placement != nil { + in, out := &in.Placement, &out.Placement + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageSpec. -func (in *SharedImageSpec) DeepCopy() *SharedImageSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters. +func (in *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters { if in == nil { return nil } - out := new(SharedImageSpec) + out := new(OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SharedImageStatus) DeepCopyInto(out *SharedImageStatus) { +func (in *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.Option != nil { + in, out := &in.Option, &out.Option + *out = new(string) + **out = **in + } + if in.Placement != nil { + in, out := &in.Placement, &out.Placement + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageStatus. -func (in *SharedImageStatus) DeepCopy() *SharedImageStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation. +func (in *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation { if in == nil { return nil } - out := new(SharedImageStatus) + out := new(OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SkuObservation) DeepCopyInto(out *SkuObservation) { +func (in *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) { *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity - *out = new(float64) + if in.Option != nil { + in, out := &in.Option, &out.Option + *out = new(string) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Placement != nil { + in, out := &in.Placement, &out.Placement *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuObservation. -func (in *SkuObservation) DeepCopy() *SkuObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters. +func (in *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters { if in == nil { return nil } - out := new(SkuObservation) + out := new(OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SkuParameters) DeepCopyInto(out *SkuParameters) { +func (in *OrchestratedVirtualMachineScaleSetOsDiskInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetOsDiskInitParameters) { *out = *in - if in.Capacity != nil { - in, out := &in.Capacity, &out.Capacity + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in + } + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb *out = new(float64) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType *out = new(string) **out = **in } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuParameters. -func (in *SkuParameters) DeepCopy() *SkuParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskInitParameters. +func (in *OrchestratedVirtualMachineScaleSetOsDiskInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetOsDiskInitParameters { if in == nil { return nil } - out := new(SkuParameters) + out := new(OrchestratedVirtualMachineScaleSetOsDiskInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Snapshot) DeepCopyInto(out *Snapshot) { +func (in *OrchestratedVirtualMachineScaleSetOsDiskObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetOsDiskObservation) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in + } + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Snapshot. -func (in *Snapshot) DeepCopy() *Snapshot { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskObservation. +func (in *OrchestratedVirtualMachineScaleSetOsDiskObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetOsDiskObservation { if in == nil { return nil } - out := new(Snapshot) + out := new(OrchestratedVirtualMachineScaleSetOsDiskObservation) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *Snapshot) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SnapshotEncryptionSettingsObservation) DeepCopyInto(out *SnapshotEncryptionSettingsObservation) { +func (in *OrchestratedVirtualMachineScaleSetOsDiskParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetOsDiskParameters) { *out = *in - if in.DiskEncryptionKey != nil { - in, out := &in.DiskEncryptionKey, &out.DiskEncryptionKey - *out = make([]EncryptionSettingsDiskEncryptionKeyObservation, len(*in)) + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in + } + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) **out = **in } - if in.KeyEncryptionKey != nil { - in, out := &in.KeyEncryptionKey, &out.KeyEncryptionKey - *out = make([]EncryptionSettingsKeyEncryptionKeyObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotEncryptionSettingsObservation. -func (in *SnapshotEncryptionSettingsObservation) DeepCopy() *SnapshotEncryptionSettingsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskParameters. +func (in *OrchestratedVirtualMachineScaleSetOsDiskParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetOsDiskParameters { if in == nil { return nil } - out := new(SnapshotEncryptionSettingsObservation) + out := new(OrchestratedVirtualMachineScaleSetOsDiskParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SnapshotEncryptionSettingsParameters) DeepCopyInto(out *SnapshotEncryptionSettingsParameters) { +func (in *OrchestratedVirtualMachineScaleSetParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetParameters) { *out = *in - if in.DiskEncryptionKey != nil { - in, out := &in.DiskEncryptionKey, &out.DiskEncryptionKey - *out = make([]EncryptionSettingsDiskEncryptionKeyParameters, len(*in)) + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) - **out = **in - } - if in.KeyEncryptionKey != nil { - in, out := &in.KeyEncryptionKey, &out.KeyEncryptionKey - *out = make([]EncryptionSettingsKeyEncryptionKeyParameters, len(*in)) + if in.AutomaticInstanceRepair != nil { + in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair + *out = make([]OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotEncryptionSettingsParameters. -func (in *SnapshotEncryptionSettingsParameters) DeepCopy() *SnapshotEncryptionSettingsParameters { - if in == nil { - return nil - } - out := new(SnapshotEncryptionSettingsParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SnapshotList) DeepCopyInto(out *SnapshotList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Snapshot, len(*in)) + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotList. -func (in *SnapshotList) DeepCopy() *SnapshotList { - if in == nil { - return nil - } - out := new(SnapshotList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SnapshotList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SnapshotObservation) DeepCopyInto(out *SnapshotObservation) { - *out = *in - if in.CreateOption != nil { - in, out := &in.CreateOption, &out.CreateOption + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID *out = new(string) **out = **in } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb - *out = new(float64) - **out = **in - } - if in.EncryptionSettings != nil { - in, out := &in.EncryptionSettings, &out.EncryptionSettings - *out = make([]SnapshotEncryptionSettingsObservation, len(*in)) + if in.DataDisk != nil { + in, out := &in.DataDisk, &out.DataDisk + *out = make([]OrchestratedVirtualMachineScaleSetDataDiskParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) + **out = **in + } + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy *out = new(string) **out = **in } - if in.IncrementalEnabled != nil { - in, out := &in.IncrementalEnabled, &out.IncrementalEnabled + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]OrchestratedVirtualMachineScaleSetExtensionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExtensionOperationsEnabled != nil { + in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled *out = new(bool) **out = **in } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]OrchestratedVirtualMachineScaleSetIdentityParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Instances != nil { + in, out := &in.Instances, &out.Instances + *out = new(float64) **out = **in } - if in.SourceResourceID != nil { - in, out := &in.SourceResourceID, &out.SourceResourceID + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType *out = new(string) **out = **in } - if in.SourceURI != nil { - in, out := &in.SourceURI, &out.SourceURI + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.StorageAccountID != nil { - in, out := &in.StorageAccountID, &out.StorageAccountID - *out = new(string) + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice + *out = new(float64) **out = **in } - if in.Tags != nil { - in, out := &in.Tags, &out.Tags - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal + if in.NetworkInterface != nil { + in, out := &in.NetworkInterface, &out.NetworkInterface + *out = make([]OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.TrustedLaunchEnabled != nil { - in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled - *out = new(bool) - **out = **in + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]OrchestratedVirtualMachineScaleSetOsDiskParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotObservation. -func (in *SnapshotObservation) DeepCopy() *SnapshotObservation { - if in == nil { - return nil + if in.OsProfile != nil { + in, out := &in.OsProfile, &out.OsProfile + *out = make([]OsProfileParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(SnapshotObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SnapshotParameters) DeepCopyInto(out *SnapshotParameters) { - *out = *in - if in.CreateOption != nil { - in, out := &in.CreateOption, &out.CreateOption - *out = new(string) - **out = **in + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]OrchestratedVirtualMachineScaleSetPlanParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb + if in.PlatformFaultDomainCount != nil { + in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount *out = new(float64) **out = **in } - if in.EncryptionSettings != nil { - in, out := &in.EncryptionSettings, &out.EncryptionSettings - *out = make([]SnapshotEncryptionSettingsParameters, len(*in)) + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(string) + **out = **in + } + if in.PriorityMix != nil { + in, out := &in.PriorityMix, &out.PriorityMix + *out = make([]PriorityMixParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.IncrementalEnabled != nil { - in, out := &in.IncrementalEnabled, &out.IncrementalEnabled - *out = new(bool) - **out = **in - } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID *out = new(string) **out = **in } @@ -11020,31 +11977,28 @@ func (in *SnapshotParameters) DeepCopyInto(out *SnapshotParameters) { *out = new(v1.Selector) (*in).DeepCopyInto(*out) } - if in.SourceResourceID != nil { - in, out := &in.SourceResourceID, &out.SourceResourceID - *out = new(string) + if in.SinglePlacementGroup != nil { + in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup + *out = new(bool) **out = **in } - if in.SourceURI != nil { - in, out := &in.SourceURI, &out.SourceURI + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName *out = new(string) **out = **in } - if in.SourceURIRef != nil { - in, out := &in.SourceURIRef, &out.SourceURIRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.SourceURISelector != nil { - in, out := &in.SourceURISelector, &out.SourceURISelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.StorageAccountID != nil { - in, out := &in.StorageAccountID, &out.StorageAccountID + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID *out = new(string) **out = **in } + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -11060,54 +12014,138 @@ func (in *SnapshotParameters) DeepCopyInto(out *SnapshotParameters) { (*out)[key] = outVal } } + if in.TerminationNotification != nil { + in, out := &in.TerminationNotification, &out.TerminationNotification + *out = make([]OrchestratedVirtualMachineScaleSetTerminationNotificationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UserDataBase64SecretRef != nil { + in, out := &in.UserDataBase64SecretRef, &out.UserDataBase64SecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ZoneBalance != nil { + in, out := &in.ZoneBalance, &out.ZoneBalance + *out = new(bool) + **out = **in + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotParameters. -func (in *SnapshotParameters) DeepCopy() *SnapshotParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetParameters. +func (in *OrchestratedVirtualMachineScaleSetParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetParameters { if in == nil { return nil } - out := new(SnapshotParameters) + out := new(OrchestratedVirtualMachineScaleSetParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SnapshotSpec) DeepCopyInto(out *SnapshotSpec) { +func (in *OrchestratedVirtualMachineScaleSetPlanInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetPlanInitParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotSpec. -func (in *SnapshotSpec) DeepCopy() *SnapshotSpec { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetPlanInitParameters. +func (in *OrchestratedVirtualMachineScaleSetPlanInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetPlanInitParameters { if in == nil { return nil } - out := new(SnapshotSpec) + out := new(OrchestratedVirtualMachineScaleSetPlanInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SnapshotStatus) DeepCopyInto(out *SnapshotStatus) { +func (in *OrchestratedVirtualMachineScaleSetPlanObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetPlanObservation) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotStatus. -func (in *SnapshotStatus) DeepCopy() *SnapshotStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetPlanObservation. +func (in *OrchestratedVirtualMachineScaleSetPlanObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetPlanObservation { if in == nil { return nil } - out := new(SnapshotStatus) + out := new(OrchestratedVirtualMachineScaleSetPlanObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceImageReferenceObservation) DeepCopyInto(out *SourceImageReferenceObservation) { +func (in *OrchestratedVirtualMachineScaleSetPlanParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetPlanParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetPlanParameters. +func (in *OrchestratedVirtualMachineScaleSetPlanParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetPlanParameters { + if in == nil { + return nil + } + out := new(OrchestratedVirtualMachineScaleSetPlanParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters) { *out = *in if in.Offer != nil { in, out := &in.Offer, &out.Offer @@ -11131,18 +12169,18 @@ func (in *SourceImageReferenceObservation) DeepCopyInto(out *SourceImageReferenc } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceImageReferenceObservation. -func (in *SourceImageReferenceObservation) DeepCopy() *SourceImageReferenceObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters. +func (in *OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters { if in == nil { return nil } - out := new(SourceImageReferenceObservation) + out := new(OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceImageReferenceParameters) DeepCopyInto(out *SourceImageReferenceParameters) { +func (in *OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation) { *out = *in if in.Offer != nil { in, out := &in.Offer, &out.Offer @@ -11166,78 +12204,88 @@ func (in *SourceImageReferenceParameters) DeepCopyInto(out *SourceImageReference } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceImageReferenceParameters. -func (in *SourceImageReferenceParameters) DeepCopy() *SourceImageReferenceParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation. +func (in *OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation { if in == nil { return nil } - out := new(SourceImageReferenceParameters) + out := new(OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceObservation) DeepCopyInto(out *SourceObservation) { +func (in *OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters) { *out = *in - if in.DefaultConfigurationLink != nil { - in, out := &in.DefaultConfigurationLink, &out.DefaultConfigurationLink + if in.Offer != nil { + in, out := &in.Offer, &out.Offer *out = new(string) **out = **in } - if in.MediaLink != nil { - in, out := &in.MediaLink, &out.MediaLink + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceObservation. -func (in *SourceObservation) DeepCopy() *SourceObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters. +func (in *OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters { if in == nil { return nil } - out := new(SourceObservation) + out := new(OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceParameters) DeepCopyInto(out *SourceParameters) { +func (in *OrchestratedVirtualMachineScaleSetSpec) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetSpec) { *out = *in - if in.DefaultConfigurationLink != nil { - in, out := &in.DefaultConfigurationLink, &out.DefaultConfigurationLink - *out = new(string) - **out = **in - } - if in.MediaLink != nil { - in, out := &in.MediaLink, &out.MediaLink - *out = new(string) - **out = **in - } - if in.MediaLinkRef != nil { - in, out := &in.MediaLinkRef, &out.MediaLinkRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.MediaLinkSelector != nil { - in, out := &in.MediaLinkSelector, &out.MediaLinkSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSpec. +func (in *OrchestratedVirtualMachineScaleSetSpec) DeepCopy() *OrchestratedVirtualMachineScaleSetSpec { + if in == nil { + return nil } + out := new(OrchestratedVirtualMachineScaleSetSpec) + in.DeepCopyInto(out) + return out } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceParameters. -func (in *SourceParameters) DeepCopy() *SourceParameters { +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OrchestratedVirtualMachineScaleSetStatus) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetStatus. +func (in *OrchestratedVirtualMachineScaleSetStatus) DeepCopy() *OrchestratedVirtualMachineScaleSetStatus { if in == nil { return nil } - out := new(SourceParameters) + out := new(OrchestratedVirtualMachineScaleSetStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SpotRestoreObservation) DeepCopyInto(out *SpotRestoreObservation) { +func (in *OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters) { *out = *in if in.Enabled != nil { in, out := &in.Enabled, &out.Enabled @@ -11251,18 +12299,18 @@ func (in *SpotRestoreObservation) DeepCopyInto(out *SpotRestoreObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpotRestoreObservation. -func (in *SpotRestoreObservation) DeepCopy() *SpotRestoreObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters. +func (in *OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters { if in == nil { return nil } - out := new(SpotRestoreObservation) + out := new(OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SpotRestoreParameters) DeepCopyInto(out *SpotRestoreParameters) { +func (in *OrchestratedVirtualMachineScaleSetTerminationNotificationObservation) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetTerminationNotificationObservation) { *out = *in if in.Enabled != nil { in, out := &in.Enabled, &out.Enabled @@ -11276,652 +12324,615 @@ func (in *SpotRestoreParameters) DeepCopyInto(out *SpotRestoreParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpotRestoreParameters. -func (in *SpotRestoreParameters) DeepCopy() *SpotRestoreParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetTerminationNotificationObservation. +func (in *OrchestratedVirtualMachineScaleSetTerminationNotificationObservation) DeepCopy() *OrchestratedVirtualMachineScaleSetTerminationNotificationObservation { if in == nil { return nil } - out := new(SpotRestoreParameters) + out := new(OrchestratedVirtualMachineScaleSetTerminationNotificationObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TargetRegionObservation) DeepCopyInto(out *TargetRegionObservation) { +func (in *OrchestratedVirtualMachineScaleSetTerminationNotificationParameters) DeepCopyInto(out *OrchestratedVirtualMachineScaleSetTerminationNotificationParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } - if in.RegionalReplicaCount != nil { - in, out := &in.RegionalReplicaCount, &out.RegionalReplicaCount - *out = new(float64) + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetRegionObservation. -func (in *TargetRegionObservation) DeepCopy() *TargetRegionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetTerminationNotificationParameters. +func (in *OrchestratedVirtualMachineScaleSetTerminationNotificationParameters) DeepCopy() *OrchestratedVirtualMachineScaleSetTerminationNotificationParameters { if in == nil { return nil } - out := new(TargetRegionObservation) + out := new(OrchestratedVirtualMachineScaleSetTerminationNotificationParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TargetRegionParameters) DeepCopyInto(out *TargetRegionParameters) { +func (in *OsDiskDiffDiskSettingsInitParameters) DeepCopyInto(out *OsDiskDiffDiskSettingsInitParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Option != nil { + in, out := &in.Option, &out.Option *out = new(string) **out = **in } - if in.NameRef != nil { - in, out := &in.NameRef, &out.NameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.NameSelector != nil { - in, out := &in.NameSelector, &out.NameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.RegionalReplicaCount != nil { - in, out := &in.RegionalReplicaCount, &out.RegionalReplicaCount - *out = new(float64) - **out = **in - } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType + if in.Placement != nil { + in, out := &in.Placement, &out.Placement *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetRegionParameters. -func (in *TargetRegionParameters) DeepCopy() *TargetRegionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskDiffDiskSettingsInitParameters. +func (in *OsDiskDiffDiskSettingsInitParameters) DeepCopy() *OsDiskDiffDiskSettingsInitParameters { if in == nil { return nil } - out := new(TargetRegionParameters) + out := new(OsDiskDiffDiskSettingsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TerminateNotificationObservation) DeepCopyInto(out *TerminateNotificationObservation) { +func (in *OsDiskDiffDiskSettingsObservation) DeepCopyInto(out *OsDiskDiffDiskSettingsObservation) { *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) + if in.Option != nil { + in, out := &in.Option, &out.Option + *out = new(string) **out = **in } - if in.Timeout != nil { - in, out := &in.Timeout, &out.Timeout + if in.Placement != nil { + in, out := &in.Placement, &out.Placement *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminateNotificationObservation. -func (in *TerminateNotificationObservation) DeepCopy() *TerminateNotificationObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskDiffDiskSettingsObservation. +func (in *OsDiskDiffDiskSettingsObservation) DeepCopy() *OsDiskDiffDiskSettingsObservation { if in == nil { return nil } - out := new(TerminateNotificationObservation) + out := new(OsDiskDiffDiskSettingsObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TerminateNotificationParameters) DeepCopyInto(out *TerminateNotificationParameters) { +func (in *OsDiskDiffDiskSettingsParameters) DeepCopyInto(out *OsDiskDiffDiskSettingsParameters) { *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) + if in.Option != nil { + in, out := &in.Option, &out.Option + *out = new(string) **out = **in } - if in.Timeout != nil { - in, out := &in.Timeout, &out.Timeout + if in.Placement != nil { + in, out := &in.Placement, &out.Placement *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminateNotificationParameters. -func (in *TerminateNotificationParameters) DeepCopy() *TerminateNotificationParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskDiffDiskSettingsParameters. +func (in *OsDiskDiffDiskSettingsParameters) DeepCopy() *OsDiskDiffDiskSettingsParameters { if in == nil { return nil } - out := new(TerminateNotificationParameters) + out := new(OsDiskDiffDiskSettingsParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TerminationNotificationObservation) DeepCopyInto(out *TerminationNotificationObservation) { +func (in *OsDiskInitParameters) DeepCopyInto(out *OsDiskInitParameters) { *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) + if in.BlobURI != nil { + in, out := &in.BlobURI, &out.BlobURI + *out = new(string) **out = **in } - if in.Timeout != nil { - in, out := &in.Timeout, &out.Timeout + if in.Caching != nil { + in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminationNotificationObservation. -func (in *TerminationNotificationObservation) DeepCopy() *TerminationNotificationObservation { - if in == nil { - return nil + if in.ManagedDiskID != nil { + in, out := &in.ManagedDiskID, &out.ManagedDiskID + *out = new(string) + **out = **in } - out := new(TerminationNotificationObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TerminationNotificationParameters) DeepCopyInto(out *TerminationNotificationParameters) { - *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled - *out = new(bool) + if in.OsState != nil { + in, out := &in.OsState, &out.OsState + *out = new(string) **out = **in } - if in.Timeout != nil { - in, out := &in.Timeout, &out.Timeout + if in.OsType != nil { + in, out := &in.OsType, &out.OsType *out = new(string) **out = **in } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminationNotificationParameters. -func (in *TerminationNotificationParameters) DeepCopy() *TerminationNotificationParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskInitParameters. +func (in *OsDiskInitParameters) DeepCopy() *OsDiskInitParameters { if in == nil { return nil } - out := new(TerminationNotificationParameters) + out := new(OsDiskInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsConfigurationObservation) DeepCopyInto(out *WindowsConfigurationObservation) { +func (in *OsDiskObservation) DeepCopyInto(out *OsDiskObservation) { *out = *in - if in.AdminUsername != nil { - in, out := &in.AdminUsername, &out.AdminUsername + if in.BlobURI != nil { + in, out := &in.BlobURI, &out.BlobURI *out = new(string) **out = **in } - if in.ComputerNamePrefix != nil { - in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix + if in.Caching != nil { + in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } - if in.EnableAutomaticUpdates != nil { - in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates - *out = new(bool) - **out = **in - } - if in.HotpatchingEnabled != nil { - in, out := &in.HotpatchingEnabled, &out.HotpatchingEnabled - *out = new(bool) - **out = **in - } - if in.PatchAssessmentMode != nil { - in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + if in.ManagedDiskID != nil { + in, out := &in.ManagedDiskID, &out.ManagedDiskID *out = new(string) **out = **in } - if in.PatchMode != nil { - in, out := &in.PatchMode, &out.PatchMode + if in.OsState != nil { + in, out := &in.OsState, &out.OsState *out = new(string) **out = **in } - if in.ProvisionVMAgent != nil { - in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent - *out = new(bool) - **out = **in - } - if in.Secret != nil { - in, out := &in.Secret, &out.Secret - *out = make([]WindowsConfigurationSecretObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Timezone != nil { - in, out := &in.Timezone, &out.Timezone + if in.OsType != nil { + in, out := &in.OsType, &out.OsType *out = new(string) **out = **in } - if in.WinrmListener != nil { - in, out := &in.WinrmListener, &out.WinrmListener - *out = make([]WinrmListenerObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationObservation. -func (in *WindowsConfigurationObservation) DeepCopy() *WindowsConfigurationObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskObservation. +func (in *OsDiskObservation) DeepCopy() *OsDiskObservation { if in == nil { return nil } - out := new(WindowsConfigurationObservation) + out := new(OsDiskObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsConfigurationParameters) DeepCopyInto(out *WindowsConfigurationParameters) { +func (in *OsDiskParameters) DeepCopyInto(out *OsDiskParameters) { *out = *in - out.AdminPasswordSecretRef = in.AdminPasswordSecretRef - if in.AdminUsername != nil { - in, out := &in.AdminUsername, &out.AdminUsername + if in.BlobURI != nil { + in, out := &in.BlobURI, &out.BlobURI *out = new(string) **out = **in } - if in.ComputerNamePrefix != nil { - in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix + if in.Caching != nil { + in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } - if in.EnableAutomaticUpdates != nil { - in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates - *out = new(bool) - **out = **in - } - if in.HotpatchingEnabled != nil { - in, out := &in.HotpatchingEnabled, &out.HotpatchingEnabled - *out = new(bool) - **out = **in - } - if in.PatchAssessmentMode != nil { - in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + if in.ManagedDiskID != nil { + in, out := &in.ManagedDiskID, &out.ManagedDiskID *out = new(string) **out = **in } - if in.PatchMode != nil { - in, out := &in.PatchMode, &out.PatchMode + if in.OsState != nil { + in, out := &in.OsState, &out.OsState *out = new(string) **out = **in } - if in.ProvisionVMAgent != nil { - in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent - *out = new(bool) - **out = **in - } - if in.Secret != nil { - in, out := &in.Secret, &out.Secret - *out = make([]WindowsConfigurationSecretParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Timezone != nil { - in, out := &in.Timezone, &out.Timezone + if in.OsType != nil { + in, out := &in.OsType, &out.OsType *out = new(string) **out = **in } - if in.WinrmListener != nil { - in, out := &in.WinrmListener, &out.WinrmListener - *out = make([]WinrmListenerParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationParameters. -func (in *WindowsConfigurationParameters) DeepCopy() *WindowsConfigurationParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskParameters. +func (in *OsDiskParameters) DeepCopy() *OsDiskParameters { if in == nil { return nil } - out := new(WindowsConfigurationParameters) + out := new(OsDiskParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsConfigurationSecretCertificateObservation) DeepCopyInto(out *WindowsConfigurationSecretCertificateObservation) { +func (in *OsProfileInitParameters) DeepCopyInto(out *OsProfileInitParameters) { *out = *in - if in.Store != nil { - in, out := &in.Store, &out.Store - *out = new(string) - **out = **in + if in.LinuxConfiguration != nil { + in, out := &in.LinuxConfiguration, &out.LinuxConfiguration + *out = make([]LinuxConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.URL != nil { - in, out := &in.URL, &out.URL - *out = new(string) - **out = **in + if in.WindowsConfiguration != nil { + in, out := &in.WindowsConfiguration, &out.WindowsConfiguration + *out = make([]WindowsConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretCertificateObservation. -func (in *WindowsConfigurationSecretCertificateObservation) DeepCopy() *WindowsConfigurationSecretCertificateObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsProfileInitParameters. +func (in *OsProfileInitParameters) DeepCopy() *OsProfileInitParameters { if in == nil { return nil } - out := new(WindowsConfigurationSecretCertificateObservation) + out := new(OsProfileInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsConfigurationSecretCertificateParameters) DeepCopyInto(out *WindowsConfigurationSecretCertificateParameters) { +func (in *OsProfileObservation) DeepCopyInto(out *OsProfileObservation) { *out = *in - if in.Store != nil { - in, out := &in.Store, &out.Store - *out = new(string) - **out = **in + if in.LinuxConfiguration != nil { + in, out := &in.LinuxConfiguration, &out.LinuxConfiguration + *out = make([]LinuxConfigurationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.URL != nil { - in, out := &in.URL, &out.URL - *out = new(string) - **out = **in + if in.WindowsConfiguration != nil { + in, out := &in.WindowsConfiguration, &out.WindowsConfiguration + *out = make([]WindowsConfigurationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretCertificateParameters. -func (in *WindowsConfigurationSecretCertificateParameters) DeepCopy() *WindowsConfigurationSecretCertificateParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsProfileObservation. +func (in *OsProfileObservation) DeepCopy() *OsProfileObservation { if in == nil { return nil } - out := new(WindowsConfigurationSecretCertificateParameters) + out := new(OsProfileObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsConfigurationSecretObservation) DeepCopyInto(out *WindowsConfigurationSecretObservation) { +func (in *OsProfileParameters) DeepCopyInto(out *OsProfileParameters) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = make([]WindowsConfigurationSecretCertificateObservation, len(*in)) + if in.CustomDataSecretRef != nil { + in, out := &in.CustomDataSecretRef, &out.CustomDataSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.LinuxConfiguration != nil { + in, out := &in.LinuxConfiguration, &out.LinuxConfiguration + *out = make([]LinuxConfigurationParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.KeyVaultID != nil { - in, out := &in.KeyVaultID, &out.KeyVaultID - *out = new(string) - **out = **in + if in.WindowsConfiguration != nil { + in, out := &in.WindowsConfiguration, &out.WindowsConfiguration + *out = make([]WindowsConfigurationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretObservation. -func (in *WindowsConfigurationSecretObservation) DeepCopy() *WindowsConfigurationSecretObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsProfileParameters. +func (in *OsProfileParameters) DeepCopy() *OsProfileParameters { if in == nil { return nil } - out := new(WindowsConfigurationSecretObservation) + out := new(OsProfileParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsConfigurationSecretParameters) DeepCopyInto(out *WindowsConfigurationSecretParameters) { +func (in *PlanInitParameters) DeepCopyInto(out *PlanInitParameters) { *out = *in - if in.Certificate != nil { - in, out := &in.Certificate, &out.Certificate - *out = make([]WindowsConfigurationSecretCertificateParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in } - if in.KeyVaultID != nil { - in, out := &in.KeyVaultID, &out.KeyVaultID + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretParameters. -func (in *WindowsConfigurationSecretParameters) DeepCopy() *WindowsConfigurationSecretParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanInitParameters. +func (in *PlanInitParameters) DeepCopy() *PlanInitParameters { if in == nil { return nil } - out := new(WindowsConfigurationSecretParameters) + out := new(PlanInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachine) DeepCopyInto(out *WindowsVirtualMachine) { +func (in *PlanObservation) DeepCopyInto(out *PlanObservation) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachine. -func (in *WindowsVirtualMachine) DeepCopy() *WindowsVirtualMachine { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanObservation. +func (in *PlanObservation) DeepCopy() *PlanObservation { if in == nil { return nil } - out := new(WindowsVirtualMachine) + out := new(PlanObservation) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *WindowsVirtualMachine) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineAdditionalCapabilitiesObservation) DeepCopyInto(out *WindowsVirtualMachineAdditionalCapabilitiesObservation) { +func (in *PlanParameters) DeepCopyInto(out *PlanParameters) { *out = *in - if in.UltraSsdEnabled != nil { - in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled - *out = new(bool) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalCapabilitiesObservation. -func (in *WindowsVirtualMachineAdditionalCapabilitiesObservation) DeepCopy() *WindowsVirtualMachineAdditionalCapabilitiesObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanParameters. +func (in *PlanParameters) DeepCopy() *PlanParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineAdditionalCapabilitiesObservation) + out := new(PlanParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineAdditionalCapabilitiesParameters) DeepCopyInto(out *WindowsVirtualMachineAdditionalCapabilitiesParameters) { +func (in *PriorityMixInitParameters) DeepCopyInto(out *PriorityMixInitParameters) { *out = *in - if in.UltraSsdEnabled != nil { - in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled - *out = new(bool) + if in.BaseRegularCount != nil { + in, out := &in.BaseRegularCount, &out.BaseRegularCount + *out = new(float64) + **out = **in + } + if in.RegularPercentageAboveBase != nil { + in, out := &in.RegularPercentageAboveBase, &out.RegularPercentageAboveBase + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalCapabilitiesParameters. -func (in *WindowsVirtualMachineAdditionalCapabilitiesParameters) DeepCopy() *WindowsVirtualMachineAdditionalCapabilitiesParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PriorityMixInitParameters. +func (in *PriorityMixInitParameters) DeepCopy() *PriorityMixInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineAdditionalCapabilitiesParameters) + out := new(PriorityMixInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineBootDiagnosticsObservation) DeepCopyInto(out *WindowsVirtualMachineBootDiagnosticsObservation) { +func (in *PriorityMixObservation) DeepCopyInto(out *PriorityMixObservation) { *out = *in - if in.StorageAccountURI != nil { - in, out := &in.StorageAccountURI, &out.StorageAccountURI - *out = new(string) + if in.BaseRegularCount != nil { + in, out := &in.BaseRegularCount, &out.BaseRegularCount + *out = new(float64) + **out = **in + } + if in.RegularPercentageAboveBase != nil { + in, out := &in.RegularPercentageAboveBase, &out.RegularPercentageAboveBase + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineBootDiagnosticsObservation. -func (in *WindowsVirtualMachineBootDiagnosticsObservation) DeepCopy() *WindowsVirtualMachineBootDiagnosticsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PriorityMixObservation. +func (in *PriorityMixObservation) DeepCopy() *PriorityMixObservation { if in == nil { return nil } - out := new(WindowsVirtualMachineBootDiagnosticsObservation) + out := new(PriorityMixObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineBootDiagnosticsParameters) DeepCopyInto(out *WindowsVirtualMachineBootDiagnosticsParameters) { +func (in *PriorityMixParameters) DeepCopyInto(out *PriorityMixParameters) { *out = *in - if in.StorageAccountURI != nil { - in, out := &in.StorageAccountURI, &out.StorageAccountURI - *out = new(string) + if in.BaseRegularCount != nil { + in, out := &in.BaseRegularCount, &out.BaseRegularCount + *out = new(float64) + **out = **in + } + if in.RegularPercentageAboveBase != nil { + in, out := &in.RegularPercentageAboveBase, &out.RegularPercentageAboveBase + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineBootDiagnosticsParameters. -func (in *WindowsVirtualMachineBootDiagnosticsParameters) DeepCopy() *WindowsVirtualMachineBootDiagnosticsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PriorityMixParameters. +func (in *PriorityMixParameters) DeepCopy() *PriorityMixParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineBootDiagnosticsParameters) + out := new(PriorityMixParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineGalleryApplicationObservation) DeepCopyInto(out *WindowsVirtualMachineGalleryApplicationObservation) { +func (in *ProtectedSettingsFromKeyVaultInitParameters) DeepCopyInto(out *ProtectedSettingsFromKeyVaultInitParameters) { *out = *in - if in.ConfigurationBlobURI != nil { - in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI - *out = new(string) - **out = **in - } - if in.Order != nil { - in, out := &in.Order, &out.Order - *out = new(float64) - **out = **in - } - if in.Tag != nil { - in, out := &in.Tag, &out.Tag + if in.SecretURL != nil { + in, out := &in.SecretURL, &out.SecretURL *out = new(string) **out = **in } - if in.VersionID != nil { - in, out := &in.VersionID, &out.VersionID + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineGalleryApplicationObservation. -func (in *WindowsVirtualMachineGalleryApplicationObservation) DeepCopy() *WindowsVirtualMachineGalleryApplicationObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectedSettingsFromKeyVaultInitParameters. +func (in *ProtectedSettingsFromKeyVaultInitParameters) DeepCopy() *ProtectedSettingsFromKeyVaultInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineGalleryApplicationObservation) + out := new(ProtectedSettingsFromKeyVaultInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineGalleryApplicationParameters) DeepCopyInto(out *WindowsVirtualMachineGalleryApplicationParameters) { +func (in *ProtectedSettingsFromKeyVaultObservation) DeepCopyInto(out *ProtectedSettingsFromKeyVaultObservation) { *out = *in - if in.ConfigurationBlobURI != nil { - in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + if in.SecretURL != nil { + in, out := &in.SecretURL, &out.SecretURL *out = new(string) **out = **in } - if in.Order != nil { - in, out := &in.Order, &out.Order - *out = new(float64) + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID + *out = new(string) **out = **in } - if in.Tag != nil { - in, out := &in.Tag, &out.Tag +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectedSettingsFromKeyVaultObservation. +func (in *ProtectedSettingsFromKeyVaultObservation) DeepCopy() *ProtectedSettingsFromKeyVaultObservation { + if in == nil { + return nil + } + out := new(ProtectedSettingsFromKeyVaultObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProtectedSettingsFromKeyVaultParameters) DeepCopyInto(out *ProtectedSettingsFromKeyVaultParameters) { + *out = *in + if in.SecretURL != nil { + in, out := &in.SecretURL, &out.SecretURL *out = new(string) **out = **in } - if in.VersionID != nil { - in, out := &in.VersionID, &out.VersionID + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineGalleryApplicationParameters. -func (in *WindowsVirtualMachineGalleryApplicationParameters) DeepCopy() *WindowsVirtualMachineGalleryApplicationParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectedSettingsFromKeyVaultParameters. +func (in *ProtectedSettingsFromKeyVaultParameters) DeepCopy() *ProtectedSettingsFromKeyVaultParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineGalleryApplicationParameters) + out := new(ProtectedSettingsFromKeyVaultParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineIdentityObservation) DeepCopyInto(out *WindowsVirtualMachineIdentityObservation) { +func (in *ProximityPlacementGroup) DeepCopyInto(out *ProximityPlacementGroup) { *out = *in - if in.IdentityIds != nil { - in, out := &in.IdentityIds, &out.IdentityIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.PrincipalID != nil { - in, out := &in.PrincipalID, &out.PrincipalID - *out = new(string) - **out = **in - } - if in.TenantID != nil { - in, out := &in.TenantID, &out.TenantID - *out = new(string) - **out = **in - } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineIdentityObservation. -func (in *WindowsVirtualMachineIdentityObservation) DeepCopy() *WindowsVirtualMachineIdentityObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroup. +func (in *ProximityPlacementGroup) DeepCopy() *ProximityPlacementGroup { if in == nil { return nil } - out := new(WindowsVirtualMachineIdentityObservation) + out := new(ProximityPlacementGroup) in.DeepCopyInto(out) return out } +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ProximityPlacementGroup) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineIdentityParameters) DeepCopyInto(out *WindowsVirtualMachineIdentityParameters) { +func (in *ProximityPlacementGroupInitParameters) DeepCopyInto(out *ProximityPlacementGroupInitParameters) { *out = *in - if in.IdentityIds != nil { - in, out := &in.IdentityIds, &out.IdentityIds + if in.AllowedVMSizes != nil { + in, out := &in.AllowedVMSizes, &out.AllowedVMSizes *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -11931,49 +12942,69 @@ func (in *WindowsVirtualMachineIdentityParameters) DeepCopyInto(out *WindowsVirt } } } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineIdentityParameters. -func (in *WindowsVirtualMachineIdentityParameters) DeepCopy() *WindowsVirtualMachineIdentityParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupInitParameters. +func (in *ProximityPlacementGroupInitParameters) DeepCopy() *ProximityPlacementGroupInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineIdentityParameters) + out := new(ProximityPlacementGroupInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineList) DeepCopyInto(out *WindowsVirtualMachineList) { +func (in *ProximityPlacementGroupList) DeepCopyInto(out *ProximityPlacementGroupList) { *out = *in out.TypeMeta = in.TypeMeta in.ListMeta.DeepCopyInto(&out.ListMeta) if in.Items != nil { in, out := &in.Items, &out.Items - *out = make([]WindowsVirtualMachine, len(*in)) + *out = make([]ProximityPlacementGroup, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineList. -func (in *WindowsVirtualMachineList) DeepCopy() *WindowsVirtualMachineList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupList. +func (in *ProximityPlacementGroupList) DeepCopy() *ProximityPlacementGroupList { if in == nil { return nil } - out := new(WindowsVirtualMachineList) + out := new(ProximityPlacementGroupList) in.DeepCopyInto(out) return out } // DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *WindowsVirtualMachineList) DeepCopyObject() runtime.Object { +func (in *ProximityPlacementGroupList) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } @@ -11981,130 +13012,71 @@ func (in *WindowsVirtualMachineList) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineObservation) DeepCopyInto(out *WindowsVirtualMachineObservation) { +func (in *ProximityPlacementGroupObservation) DeepCopyInto(out *ProximityPlacementGroupObservation) { *out = *in - if in.AdditionalCapabilities != nil { - in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities - *out = make([]WindowsVirtualMachineAdditionalCapabilitiesObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AdditionalUnattendContent != nil { - in, out := &in.AdditionalUnattendContent, &out.AdditionalUnattendContent - *out = make([]AdditionalUnattendContentObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AdminUsername != nil { - in, out := &in.AdminUsername, &out.AdminUsername - *out = new(string) - **out = **in - } - if in.AllowExtensionOperations != nil { - in, out := &in.AllowExtensionOperations, &out.AllowExtensionOperations - *out = new(bool) - **out = **in - } - if in.AvailabilitySetID != nil { - in, out := &in.AvailabilitySetID, &out.AvailabilitySetID - *out = new(string) - **out = **in - } - if in.BootDiagnostics != nil { - in, out := &in.BootDiagnostics, &out.BootDiagnostics - *out = make([]WindowsVirtualMachineBootDiagnosticsObservation, len(*in)) + if in.AllowedVMSizes != nil { + in, out := &in.AllowedVMSizes, &out.AllowedVMSizes + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.CapacityReservationGroupID != nil { - in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID - *out = new(string) - **out = **in - } - if in.ComputerName != nil { - in, out := &in.ComputerName, &out.ComputerName - *out = new(string) - **out = **in - } - if in.DedicatedHostGroupID != nil { - in, out := &in.DedicatedHostGroupID, &out.DedicatedHostGroupID - *out = new(string) - **out = **in - } - if in.DedicatedHostID != nil { - in, out := &in.DedicatedHostID, &out.DedicatedHostID - *out = new(string) - **out = **in - } - if in.EdgeZone != nil { - in, out := &in.EdgeZone, &out.EdgeZone - *out = new(string) - **out = **in - } - if in.EnableAutomaticUpdates != nil { - in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates - *out = new(bool) - **out = **in - } - if in.EncryptionAtHostEnabled != nil { - in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled - *out = new(bool) - **out = **in - } - if in.EvictionPolicy != nil { - in, out := &in.EvictionPolicy, &out.EvictionPolicy + if in.ID != nil { + in, out := &in.ID, &out.ID *out = new(string) **out = **in } - if in.ExtensionsTimeBudget != nil { - in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.GalleryApplication != nil { - in, out := &in.GalleryApplication, &out.GalleryApplication - *out = make([]WindowsVirtualMachineGalleryApplicationObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.HotpatchingEnabled != nil { - in, out := &in.HotpatchingEnabled, &out.HotpatchingEnabled - *out = new(bool) - **out = **in - } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName *out = new(string) **out = **in } - if in.Identity != nil { - in, out := &in.Identity, &out.Identity - *out = make([]WindowsVirtualMachineIdentityObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal } } - if in.LicenseType != nil { - in, out := &in.LicenseType, &out.LicenseType - *out = new(string) - **out = **in - } - if in.Location != nil { - in, out := &in.Location, &out.Location + if in.Zone != nil { + in, out := &in.Zone, &out.Zone *out = new(string) **out = **in } - if in.MaxBidPrice != nil { - in, out := &in.MaxBidPrice, &out.MaxBidPrice - *out = new(float64) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupObservation. +func (in *ProximityPlacementGroupObservation) DeepCopy() *ProximityPlacementGroupObservation { + if in == nil { + return nil } - if in.NetworkInterfaceIds != nil { - in, out := &in.NetworkInterfaceIds, &out.NetworkInterfaceIds + out := new(ProximityPlacementGroupObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProximityPlacementGroupParameters) DeepCopyInto(out *ProximityPlacementGroupParameters) { + *out = *in + if in.AllowedVMSizes != nil { + in, out := &in.AllowedVMSizes, &out.AllowedVMSizes *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -12114,115 +13086,25 @@ func (in *WindowsVirtualMachineObservation) DeepCopyInto(out *WindowsVirtualMach } } } - if in.OsDisk != nil { - in, out := &in.OsDisk, &out.OsDisk - *out = make([]WindowsVirtualMachineOsDiskObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PatchAssessmentMode != nil { - in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.PatchMode != nil { - in, out := &in.PatchMode, &out.PatchMode + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName *out = new(string) **out = **in } - if in.Plan != nil { - in, out := &in.Plan, &out.Plan - *out = make([]WindowsVirtualMachinePlanObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PlatformFaultDomain != nil { - in, out := &in.PlatformFaultDomain, &out.PlatformFaultDomain - *out = new(float64) - **out = **in - } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority - *out = new(string) - **out = **in - } - if in.PrivateIPAddress != nil { - in, out := &in.PrivateIPAddress, &out.PrivateIPAddress - *out = new(string) - **out = **in - } - if in.PrivateIPAddresses != nil { - in, out := &in.PrivateIPAddresses, &out.PrivateIPAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ProvisionVMAgent != nil { - in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent - *out = new(bool) - **out = **in - } - if in.ProximityPlacementGroupID != nil { - in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID - *out = new(string) - **out = **in - } - if in.PublicIPAddress != nil { - in, out := &in.PublicIPAddress, &out.PublicIPAddress - *out = new(string) - **out = **in - } - if in.PublicIPAddresses != nil { - in, out := &in.PublicIPAddresses, &out.PublicIPAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } - if in.Secret != nil { - in, out := &in.Secret, &out.Secret - *out = make([]WindowsVirtualMachineSecretObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SecureBootEnabled != nil { - in, out := &in.SecureBootEnabled, &out.SecureBootEnabled - *out = new(bool) - **out = **in - } - if in.Size != nil { - in, out := &in.Size, &out.Size - *out = new(string) - **out = **in - } - if in.SourceImageID != nil { - in, out := &in.SourceImageID, &out.SourceImageID - *out = new(string) - **out = **in + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) } - if in.SourceImageReference != nil { - in, out := &in.SourceImageReference, &out.SourceImageReference - *out = make([]WindowsVirtualMachineSourceImageReferenceObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) } if in.Tags != nil { in, out := &in.Tags, &out.Tags @@ -12239,134 +13121,150 @@ func (in *WindowsVirtualMachineObservation) DeepCopyInto(out *WindowsVirtualMach (*out)[key] = outVal } } - if in.TerminationNotification != nil { - in, out := &in.TerminationNotification, &out.TerminationNotification - *out = make([]WindowsVirtualMachineTerminationNotificationObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Timezone != nil { - in, out := &in.Timezone, &out.Timezone + if in.Zone != nil { + in, out := &in.Zone, &out.Zone *out = new(string) **out = **in } - if in.UserData != nil { - in, out := &in.UserData, &out.UserData - *out = new(string) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupParameters. +func (in *ProximityPlacementGroupParameters) DeepCopy() *ProximityPlacementGroupParameters { + if in == nil { + return nil } - if in.VirtualMachineID != nil { - in, out := &in.VirtualMachineID, &out.VirtualMachineID - *out = new(string) - **out = **in + out := new(ProximityPlacementGroupParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProximityPlacementGroupSpec) DeepCopyInto(out *ProximityPlacementGroupSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupSpec. +func (in *ProximityPlacementGroupSpec) DeepCopy() *ProximityPlacementGroupSpec { + if in == nil { + return nil } - if in.VirtualMachineScaleSetID != nil { - in, out := &in.VirtualMachineScaleSetID, &out.VirtualMachineScaleSetID - *out = new(string) - **out = **in + out := new(ProximityPlacementGroupSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProximityPlacementGroupStatus) DeepCopyInto(out *ProximityPlacementGroupStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupStatus. +func (in *ProximityPlacementGroupStatus) DeepCopy() *ProximityPlacementGroupStatus { + if in == nil { + return nil } - if in.VtpmEnabled != nil { - in, out := &in.VtpmEnabled, &out.VtpmEnabled - *out = new(bool) + out := new(ProximityPlacementGroupStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PublicIPAddressIPTagInitParameters) DeepCopyInto(out *PublicIPAddressIPTagInitParameters) { + *out = *in + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) **out = **in } - if in.WinrmListener != nil { - in, out := &in.WinrmListener, &out.WinrmListener - *out = make([]WindowsVirtualMachineWinrmListenerObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineObservation. -func (in *WindowsVirtualMachineObservation) DeepCopy() *WindowsVirtualMachineObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressIPTagInitParameters. +func (in *PublicIPAddressIPTagInitParameters) DeepCopy() *PublicIPAddressIPTagInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineObservation) + out := new(PublicIPAddressIPTagInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineOsDiskDiffDiskSettingsObservation) DeepCopyInto(out *WindowsVirtualMachineOsDiskDiffDiskSettingsObservation) { +func (in *PublicIPAddressIPTagObservation) DeepCopyInto(out *PublicIPAddressIPTagObservation) { *out = *in - if in.Option != nil { - in, out := &in.Option, &out.Option + if in.Tag != nil { + in, out := &in.Tag, &out.Tag *out = new(string) **out = **in } - if in.Placement != nil { - in, out := &in.Placement, &out.Placement + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskDiffDiskSettingsObservation. -func (in *WindowsVirtualMachineOsDiskDiffDiskSettingsObservation) DeepCopy() *WindowsVirtualMachineOsDiskDiffDiskSettingsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressIPTagObservation. +func (in *PublicIPAddressIPTagObservation) DeepCopy() *PublicIPAddressIPTagObservation { if in == nil { return nil } - out := new(WindowsVirtualMachineOsDiskDiffDiskSettingsObservation) + out := new(PublicIPAddressIPTagObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineOsDiskDiffDiskSettingsParameters) DeepCopyInto(out *WindowsVirtualMachineOsDiskDiffDiskSettingsParameters) { +func (in *PublicIPAddressIPTagParameters) DeepCopyInto(out *PublicIPAddressIPTagParameters) { *out = *in - if in.Option != nil { - in, out := &in.Option, &out.Option + if in.Tag != nil { + in, out := &in.Tag, &out.Tag *out = new(string) **out = **in } - if in.Placement != nil { - in, out := &in.Placement, &out.Placement + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskDiffDiskSettingsParameters. -func (in *WindowsVirtualMachineOsDiskDiffDiskSettingsParameters) DeepCopy() *WindowsVirtualMachineOsDiskDiffDiskSettingsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressIPTagParameters. +func (in *PublicIPAddressIPTagParameters) DeepCopy() *PublicIPAddressIPTagParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineOsDiskDiffDiskSettingsParameters) + out := new(PublicIPAddressIPTagParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineOsDiskObservation) DeepCopyInto(out *WindowsVirtualMachineOsDiskObservation) { +func (in *PublicIPAddressInitParameters) DeepCopyInto(out *PublicIPAddressInitParameters) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching + if in.DomainNameLabel != nil { + in, out := &in.DomainNameLabel, &out.DomainNameLabel *out = new(string) **out = **in } - if in.DiffDiskSettings != nil { - in, out := &in.DiffDiskSettings, &out.DiffDiskSettings - *out = make([]WindowsVirtualMachineOsDiskDiffDiskSettingsObservation, len(*in)) + if in.IPTag != nil { + in, out := &in.IPTag, &out.IPTag + *out = make([]IPTagInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID - *out = new(string) - **out = **in - } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes *out = new(float64) **out = **in } @@ -12375,60 +13273,45 @@ func (in *WindowsVirtualMachineOsDiskObservation) DeepCopyInto(out *WindowsVirtu *out = new(string) **out = **in } - if in.SecureVMDiskEncryptionSetID != nil { - in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID - *out = new(string) - **out = **in - } - if in.SecurityEncryptionType != nil { - in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + if in.PublicIPPrefixID != nil { + in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID *out = new(string) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskObservation. -func (in *WindowsVirtualMachineOsDiskObservation) DeepCopy() *WindowsVirtualMachineOsDiskObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressInitParameters. +func (in *PublicIPAddressInitParameters) DeepCopy() *PublicIPAddressInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineOsDiskObservation) + out := new(PublicIPAddressInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineOsDiskParameters) DeepCopyInto(out *WindowsVirtualMachineOsDiskParameters) { +func (in *PublicIPAddressObservation) DeepCopyInto(out *PublicIPAddressObservation) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching + if in.DomainNameLabel != nil { + in, out := &in.DomainNameLabel, &out.DomainNameLabel *out = new(string) **out = **in } - if in.DiffDiskSettings != nil { - in, out := &in.DiffDiskSettings, &out.DiffDiskSettings - *out = make([]WindowsVirtualMachineOsDiskDiffDiskSettingsParameters, len(*in)) + if in.IPTag != nil { + in, out := &in.IPTag, &out.IPTag + *out = make([]IPTagObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID - *out = new(string) - **out = **in - } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes *out = new(float64) **out = **in } @@ -12437,272 +13320,421 @@ func (in *WindowsVirtualMachineOsDiskParameters) DeepCopyInto(out *WindowsVirtua *out = new(string) **out = **in } - if in.SecureVMDiskEncryptionSetID != nil { - in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID - *out = new(string) - **out = **in - } - if in.SecurityEncryptionType != nil { - in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + if in.PublicIPPrefixID != nil { + in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID *out = new(string) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskParameters. -func (in *WindowsVirtualMachineOsDiskParameters) DeepCopy() *WindowsVirtualMachineOsDiskParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressObservation. +func (in *PublicIPAddressObservation) DeepCopy() *PublicIPAddressObservation { if in == nil { return nil } - out := new(WindowsVirtualMachineOsDiskParameters) + out := new(PublicIPAddressObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineParameters) DeepCopyInto(out *WindowsVirtualMachineParameters) { +func (in *PublicIPAddressParameters) DeepCopyInto(out *PublicIPAddressParameters) { *out = *in - if in.AdditionalCapabilities != nil { - in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities - *out = make([]WindowsVirtualMachineAdditionalCapabilitiesParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.DomainNameLabel != nil { + in, out := &in.DomainNameLabel, &out.DomainNameLabel + *out = new(string) + **out = **in } - if in.AdditionalUnattendContent != nil { - in, out := &in.AdditionalUnattendContent, &out.AdditionalUnattendContent - *out = make([]AdditionalUnattendContentParameters, len(*in)) + if in.IPTag != nil { + in, out := &in.IPTag, &out.IPTag + *out = make([]IPTagParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - out.AdminPasswordSecretRef = in.AdminPasswordSecretRef - if in.AdminUsername != nil { - in, out := &in.AdminUsername, &out.AdminUsername + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.AllowExtensionOperations != nil { - in, out := &in.AllowExtensionOperations, &out.AllowExtensionOperations - *out = new(bool) + if in.PublicIPPrefixID != nil { + in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID + *out = new(string) **out = **in } - if in.AvailabilitySetID != nil { - in, out := &in.AvailabilitySetID, &out.AvailabilitySetID + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } - if in.BootDiagnostics != nil { - in, out := &in.BootDiagnostics, &out.BootDiagnostics - *out = make([]WindowsVirtualMachineBootDiagnosticsParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressParameters. +func (in *PublicIPAddressParameters) DeepCopy() *PublicIPAddressParameters { + if in == nil { + return nil } - if in.CapacityReservationGroupID != nil { - in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID + out := new(PublicIPAddressParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PurchasePlanInitParameters) DeepCopyInto(out *PurchasePlanInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.ComputerName != nil { - in, out := &in.ComputerName, &out.ComputerName + if in.Product != nil { + in, out := &in.Product, &out.Product *out = new(string) **out = **in } - if in.CustomDataSecretRef != nil { - in, out := &in.CustomDataSecretRef, &out.CustomDataSecretRef - *out = new(v1.SecretKeySelector) + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) **out = **in } - if in.DedicatedHostGroupID != nil { - in, out := &in.DedicatedHostGroupID, &out.DedicatedHostGroupID +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PurchasePlanInitParameters. +func (in *PurchasePlanInitParameters) DeepCopy() *PurchasePlanInitParameters { + if in == nil { + return nil + } + out := new(PurchasePlanInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PurchasePlanObservation) DeepCopyInto(out *PurchasePlanObservation) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.DedicatedHostID != nil { - in, out := &in.DedicatedHostID, &out.DedicatedHostID + if in.Product != nil { + in, out := &in.Product, &out.Product *out = new(string) **out = **in } - if in.EdgeZone != nil { - in, out := &in.EdgeZone, &out.EdgeZone + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher *out = new(string) **out = **in } - if in.EnableAutomaticUpdates != nil { - in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates - *out = new(bool) - **out = **in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PurchasePlanObservation. +func (in *PurchasePlanObservation) DeepCopy() *PurchasePlanObservation { + if in == nil { + return nil } - if in.EncryptionAtHostEnabled != nil { - in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled - *out = new(bool) + out := new(PurchasePlanObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PurchasePlanParameters) DeepCopyInto(out *PurchasePlanParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } - if in.EvictionPolicy != nil { - in, out := &in.EvictionPolicy, &out.EvictionPolicy + if in.Product != nil { + in, out := &in.Product, &out.Product *out = new(string) **out = **in } - if in.ExtensionsTimeBudget != nil { - in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher *out = new(string) **out = **in } - if in.GalleryApplication != nil { - in, out := &in.GalleryApplication, &out.GalleryApplication - *out = make([]WindowsVirtualMachineGalleryApplicationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PurchasePlanParameters. +func (in *PurchasePlanParameters) DeepCopy() *PurchasePlanParameters { + if in == nil { + return nil } - if in.HotpatchingEnabled != nil { - in, out := &in.HotpatchingEnabled, &out.HotpatchingEnabled + out := new(PurchasePlanParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RollingUpgradePolicyInitParameters) DeepCopyInto(out *RollingUpgradePolicyInitParameters) { + *out = *in + if in.CrossZoneUpgradesEnabled != nil { + in, out := &in.CrossZoneUpgradesEnabled, &out.CrossZoneUpgradesEnabled *out = new(bool) **out = **in } - if in.Identity != nil { - in, out := &in.Identity, &out.Identity - *out = make([]WindowsVirtualMachineIdentityParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.LicenseType != nil { - in, out := &in.LicenseType, &out.LicenseType - *out = new(string) + if in.MaxBatchInstancePercent != nil { + in, out := &in.MaxBatchInstancePercent, &out.MaxBatchInstancePercent + *out = new(float64) **out = **in } - if in.Location != nil { - in, out := &in.Location, &out.Location - *out = new(string) + if in.MaxUnhealthyInstancePercent != nil { + in, out := &in.MaxUnhealthyInstancePercent, &out.MaxUnhealthyInstancePercent + *out = new(float64) **out = **in } - if in.MaxBidPrice != nil { - in, out := &in.MaxBidPrice, &out.MaxBidPrice + if in.MaxUnhealthyUpgradedInstancePercent != nil { + in, out := &in.MaxUnhealthyUpgradedInstancePercent, &out.MaxUnhealthyUpgradedInstancePercent *out = new(float64) **out = **in } - if in.NetworkInterfaceIds != nil { - in, out := &in.NetworkInterfaceIds, &out.NetworkInterfaceIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.NetworkInterfaceIdsRefs != nil { - in, out := &in.NetworkInterfaceIdsRefs, &out.NetworkInterfaceIdsRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.NetworkInterfaceIdsSelector != nil { - in, out := &in.NetworkInterfaceIdsSelector, &out.NetworkInterfaceIdsSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.OsDisk != nil { - in, out := &in.OsDisk, &out.OsDisk - *out = make([]WindowsVirtualMachineOsDiskParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.PatchAssessmentMode != nil { - in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + if in.PauseTimeBetweenBatches != nil { + in, out := &in.PauseTimeBetweenBatches, &out.PauseTimeBetweenBatches *out = new(string) **out = **in } - if in.PatchMode != nil { - in, out := &in.PatchMode, &out.PatchMode - *out = new(string) - **out = **in + if in.PrioritizeUnhealthyInstancesEnabled != nil { + in, out := &in.PrioritizeUnhealthyInstancesEnabled, &out.PrioritizeUnhealthyInstancesEnabled + *out = new(bool) + **out = **in } - if in.Plan != nil { - in, out := &in.Plan, &out.Plan - *out = make([]WindowsVirtualMachinePlanParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpgradePolicyInitParameters. +func (in *RollingUpgradePolicyInitParameters) DeepCopy() *RollingUpgradePolicyInitParameters { + if in == nil { + return nil } - if in.PlatformFaultDomain != nil { - in, out := &in.PlatformFaultDomain, &out.PlatformFaultDomain + out := new(RollingUpgradePolicyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RollingUpgradePolicyObservation) DeepCopyInto(out *RollingUpgradePolicyObservation) { + *out = *in + if in.CrossZoneUpgradesEnabled != nil { + in, out := &in.CrossZoneUpgradesEnabled, &out.CrossZoneUpgradesEnabled + *out = new(bool) + **out = **in + } + if in.MaxBatchInstancePercent != nil { + in, out := &in.MaxBatchInstancePercent, &out.MaxBatchInstancePercent *out = new(float64) **out = **in } - if in.Priority != nil { - in, out := &in.Priority, &out.Priority + if in.MaxUnhealthyInstancePercent != nil { + in, out := &in.MaxUnhealthyInstancePercent, &out.MaxUnhealthyInstancePercent + *out = new(float64) + **out = **in + } + if in.MaxUnhealthyUpgradedInstancePercent != nil { + in, out := &in.MaxUnhealthyUpgradedInstancePercent, &out.MaxUnhealthyUpgradedInstancePercent + *out = new(float64) + **out = **in + } + if in.PauseTimeBetweenBatches != nil { + in, out := &in.PauseTimeBetweenBatches, &out.PauseTimeBetweenBatches *out = new(string) **out = **in } - if in.ProvisionVMAgent != nil { - in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + if in.PrioritizeUnhealthyInstancesEnabled != nil { + in, out := &in.PrioritizeUnhealthyInstancesEnabled, &out.PrioritizeUnhealthyInstancesEnabled *out = new(bool) **out = **in } - if in.ProximityPlacementGroupID != nil { - in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpgradePolicyObservation. +func (in *RollingUpgradePolicyObservation) DeepCopy() *RollingUpgradePolicyObservation { + if in == nil { + return nil + } + out := new(RollingUpgradePolicyObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RollingUpgradePolicyParameters) DeepCopyInto(out *RollingUpgradePolicyParameters) { + *out = *in + if in.CrossZoneUpgradesEnabled != nil { + in, out := &in.CrossZoneUpgradesEnabled, &out.CrossZoneUpgradesEnabled + *out = new(bool) + **out = **in + } + if in.MaxBatchInstancePercent != nil { + in, out := &in.MaxBatchInstancePercent, &out.MaxBatchInstancePercent + *out = new(float64) + **out = **in + } + if in.MaxUnhealthyInstancePercent != nil { + in, out := &in.MaxUnhealthyInstancePercent, &out.MaxUnhealthyInstancePercent + *out = new(float64) + **out = **in + } + if in.MaxUnhealthyUpgradedInstancePercent != nil { + in, out := &in.MaxUnhealthyUpgradedInstancePercent, &out.MaxUnhealthyUpgradedInstancePercent + *out = new(float64) + **out = **in + } + if in.PauseTimeBetweenBatches != nil { + in, out := &in.PauseTimeBetweenBatches, &out.PauseTimeBetweenBatches *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName + if in.PrioritizeUnhealthyInstancesEnabled != nil { + in, out := &in.PrioritizeUnhealthyInstancesEnabled, &out.PrioritizeUnhealthyInstancesEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpgradePolicyParameters. +func (in *RollingUpgradePolicyParameters) DeepCopy() *RollingUpgradePolicyParameters { + if in == nil { + return nil + } + out := new(RollingUpgradePolicyParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHPublicKey) DeepCopyInto(out *SSHPublicKey) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKey. +func (in *SSHPublicKey) DeepCopy() *SSHPublicKey { + if in == nil { + return nil + } + out := new(SSHPublicKey) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SSHPublicKey) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHPublicKeyInitParameters) DeepCopyInto(out *SSHPublicKeyInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.ResourceGroupNameRef != nil { - in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.PublicKey != nil { + in, out := &in.PublicKey, &out.PublicKey + *out = new(string) + **out = **in } - if in.ResourceGroupNameSelector != nil { - in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } } - if in.Secret != nil { - in, out := &in.Secret, &out.Secret - *out = make([]WindowsVirtualMachineSecretParameters, len(*in)) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyInitParameters. +func (in *SSHPublicKeyInitParameters) DeepCopy() *SSHPublicKeyInitParameters { + if in == nil { + return nil + } + out := new(SSHPublicKeyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHPublicKeyList) DeepCopyInto(out *SSHPublicKeyList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]SSHPublicKey, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SecureBootEnabled != nil { - in, out := &in.SecureBootEnabled, &out.SecureBootEnabled - *out = new(bool) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyList. +func (in *SSHPublicKeyList) DeepCopy() *SSHPublicKeyList { + if in == nil { + return nil + } + out := new(SSHPublicKeyList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SSHPublicKeyList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHPublicKeyObservation) DeepCopyInto(out *SSHPublicKeyObservation) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) **out = **in } - if in.Size != nil { - in, out := &in.Size, &out.Size + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.SourceImageID != nil { - in, out := &in.SourceImageID, &out.SourceImageID + if in.PublicKey != nil { + in, out := &in.PublicKey, &out.PublicKey *out = new(string) **out = **in } - if in.SourceImageReference != nil { - in, out := &in.SourceImageReference, &out.SourceImageReference - *out = make([]WindowsVirtualMachineSourceImageReferenceParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in } if in.Tags != nil { in, out := &in.Tags, &out.Tags @@ -12719,527 +13751,5242 @@ func (in *WindowsVirtualMachineParameters) DeepCopyInto(out *WindowsVirtualMachi (*out)[key] = outVal } } - if in.TerminationNotification != nil { - in, out := &in.TerminationNotification, &out.TerminationNotification - *out = make([]WindowsVirtualMachineTerminationNotificationParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyObservation. +func (in *SSHPublicKeyObservation) DeepCopy() *SSHPublicKeyObservation { + if in == nil { + return nil } - if in.Timezone != nil { - in, out := &in.Timezone, &out.Timezone + out := new(SSHPublicKeyObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHPublicKeyParameters) DeepCopyInto(out *SSHPublicKeyParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.UserData != nil { - in, out := &in.UserData, &out.UserData + if in.PublicKey != nil { + in, out := &in.PublicKey, &out.PublicKey + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyParameters. +func (in *SSHPublicKeyParameters) DeepCopy() *SSHPublicKeyParameters { + if in == nil { + return nil + } + out := new(SSHPublicKeyParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHPublicKeySpec) DeepCopyInto(out *SSHPublicKeySpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeySpec. +func (in *SSHPublicKeySpec) DeepCopy() *SSHPublicKeySpec { + if in == nil { + return nil + } + out := new(SSHPublicKeySpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHPublicKeyStatus) DeepCopyInto(out *SSHPublicKeyStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyStatus. +func (in *SSHPublicKeyStatus) DeepCopy() *SSHPublicKeyStatus { + if in == nil { + return nil + } + out := new(SSHPublicKeyStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScaleInInitParameters) DeepCopyInto(out *ScaleInInitParameters) { + *out = *in + if in.ForceDeletionEnabled != nil { + in, out := &in.ForceDeletionEnabled, &out.ForceDeletionEnabled + *out = new(bool) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleInInitParameters. +func (in *ScaleInInitParameters) DeepCopy() *ScaleInInitParameters { + if in == nil { + return nil + } + out := new(ScaleInInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScaleInObservation) DeepCopyInto(out *ScaleInObservation) { + *out = *in + if in.ForceDeletionEnabled != nil { + in, out := &in.ForceDeletionEnabled, &out.ForceDeletionEnabled + *out = new(bool) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleInObservation. +func (in *ScaleInObservation) DeepCopy() *ScaleInObservation { + if in == nil { + return nil + } + out := new(ScaleInObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScaleInParameters) DeepCopyInto(out *ScaleInParameters) { + *out = *in + if in.ForceDeletionEnabled != nil { + in, out := &in.ForceDeletionEnabled, &out.ForceDeletionEnabled + *out = new(bool) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleInParameters. +func (in *ScaleInParameters) DeepCopy() *ScaleInParameters { + if in == nil { + return nil + } + out := new(ScaleInParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretCertificateInitParameters) DeepCopyInto(out *SecretCertificateInitParameters) { + *out = *in + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretCertificateInitParameters. +func (in *SecretCertificateInitParameters) DeepCopy() *SecretCertificateInitParameters { + if in == nil { + return nil + } + out := new(SecretCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretCertificateObservation) DeepCopyInto(out *SecretCertificateObservation) { + *out = *in + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretCertificateObservation. +func (in *SecretCertificateObservation) DeepCopy() *SecretCertificateObservation { + if in == nil { + return nil + } + out := new(SecretCertificateObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretCertificateParameters) DeepCopyInto(out *SecretCertificateParameters) { + *out = *in + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretCertificateParameters. +func (in *SecretCertificateParameters) DeepCopy() *SecretCertificateParameters { + if in == nil { + return nil + } + out := new(SecretCertificateParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretInitParameters) DeepCopyInto(out *SecretInitParameters) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]CertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretInitParameters. +func (in *SecretInitParameters) DeepCopy() *SecretInitParameters { + if in == nil { + return nil + } + out := new(SecretInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretObservation) DeepCopyInto(out *SecretObservation) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]CertificateObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretObservation. +func (in *SecretObservation) DeepCopy() *SecretObservation { + if in == nil { + return nil + } + out := new(SecretObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretParameters) DeepCopyInto(out *SecretParameters) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]CertificateParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretParameters. +func (in *SecretParameters) DeepCopy() *SecretParameters { + if in == nil { + return nil + } + out := new(SecretParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImage) DeepCopyInto(out *SharedImage) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImage. +func (in *SharedImage) DeepCopy() *SharedImage { + if in == nil { + return nil + } + out := new(SharedImage) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SharedImage) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageGallery) DeepCopyInto(out *SharedImageGallery) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGallery. +func (in *SharedImageGallery) DeepCopy() *SharedImageGallery { + if in == nil { + return nil + } + out := new(SharedImageGallery) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SharedImageGallery) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageGalleryInitParameters) DeepCopyInto(out *SharedImageGalleryInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryInitParameters. +func (in *SharedImageGalleryInitParameters) DeepCopy() *SharedImageGalleryInitParameters { + if in == nil { + return nil + } + out := new(SharedImageGalleryInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageGalleryList) DeepCopyInto(out *SharedImageGalleryList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]SharedImageGallery, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryList. +func (in *SharedImageGalleryList) DeepCopy() *SharedImageGalleryList { + if in == nil { + return nil + } + out := new(SharedImageGalleryList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SharedImageGalleryList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageGalleryObservation) DeepCopyInto(out *SharedImageGalleryObservation) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.UniqueName != nil { + in, out := &in.UniqueName, &out.UniqueName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryObservation. +func (in *SharedImageGalleryObservation) DeepCopy() *SharedImageGalleryObservation { + if in == nil { + return nil + } + out := new(SharedImageGalleryObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageGalleryParameters) DeepCopyInto(out *SharedImageGalleryParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryParameters. +func (in *SharedImageGalleryParameters) DeepCopy() *SharedImageGalleryParameters { + if in == nil { + return nil + } + out := new(SharedImageGalleryParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageGallerySpec) DeepCopyInto(out *SharedImageGallerySpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGallerySpec. +func (in *SharedImageGallerySpec) DeepCopy() *SharedImageGallerySpec { + if in == nil { + return nil + } + out := new(SharedImageGallerySpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageGalleryStatus) DeepCopyInto(out *SharedImageGalleryStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryStatus. +func (in *SharedImageGalleryStatus) DeepCopy() *SharedImageGalleryStatus { + if in == nil { + return nil + } + out := new(SharedImageGalleryStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageInitParameters) DeepCopyInto(out *SharedImageInitParameters) { + *out = *in + if in.AcceleratedNetworkSupportEnabled != nil { + in, out := &in.AcceleratedNetworkSupportEnabled, &out.AcceleratedNetworkSupportEnabled + *out = new(bool) + **out = **in + } + if in.Architecture != nil { + in, out := &in.Architecture, &out.Architecture + *out = new(string) + **out = **in + } + if in.ConfidentialVMEnabled != nil { + in, out := &in.ConfidentialVMEnabled, &out.ConfidentialVMEnabled + *out = new(bool) + **out = **in + } + if in.ConfidentialVMSupported != nil { + in, out := &in.ConfidentialVMSupported, &out.ConfidentialVMSupported + *out = new(bool) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DiskTypesNotAllowed != nil { + in, out := &in.DiskTypesNotAllowed, &out.DiskTypesNotAllowed + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EndOfLifeDate != nil { + in, out := &in.EndOfLifeDate, &out.EndOfLifeDate + *out = new(string) + **out = **in + } + if in.Eula != nil { + in, out := &in.Eula, &out.Eula + *out = new(string) + **out = **in + } + if in.HyperVGeneration != nil { + in, out := &in.HyperVGeneration, &out.HyperVGeneration + *out = new(string) + **out = **in + } + if in.Identifier != nil { + in, out := &in.Identifier, &out.Identifier + *out = make([]IdentifierInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaxRecommendedMemoryInGb != nil { + in, out := &in.MaxRecommendedMemoryInGb, &out.MaxRecommendedMemoryInGb + *out = new(float64) + **out = **in + } + if in.MaxRecommendedVcpuCount != nil { + in, out := &in.MaxRecommendedVcpuCount, &out.MaxRecommendedVcpuCount + *out = new(float64) + **out = **in + } + if in.MinRecommendedMemoryInGb != nil { + in, out := &in.MinRecommendedMemoryInGb, &out.MinRecommendedMemoryInGb + *out = new(float64) + **out = **in + } + if in.MinRecommendedVcpuCount != nil { + in, out := &in.MinRecommendedVcpuCount, &out.MinRecommendedVcpuCount + *out = new(float64) + **out = **in + } + if in.OsType != nil { + in, out := &in.OsType, &out.OsType + *out = new(string) + **out = **in + } + if in.PrivacyStatementURI != nil { + in, out := &in.PrivacyStatementURI, &out.PrivacyStatementURI + *out = new(string) + **out = **in + } + if in.PurchasePlan != nil { + in, out := &in.PurchasePlan, &out.PurchasePlan + *out = make([]PurchasePlanInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ReleaseNoteURI != nil { + in, out := &in.ReleaseNoteURI, &out.ReleaseNoteURI + *out = new(string) + **out = **in + } + if in.Specialized != nil { + in, out := &in.Specialized, &out.Specialized + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TrustedLaunchEnabled != nil { + in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageInitParameters. +func (in *SharedImageInitParameters) DeepCopy() *SharedImageInitParameters { + if in == nil { + return nil + } + out := new(SharedImageInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageList) DeepCopyInto(out *SharedImageList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]SharedImage, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageList. +func (in *SharedImageList) DeepCopy() *SharedImageList { + if in == nil { + return nil + } + out := new(SharedImageList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SharedImageList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageObservation) DeepCopyInto(out *SharedImageObservation) { + *out = *in + if in.AcceleratedNetworkSupportEnabled != nil { + in, out := &in.AcceleratedNetworkSupportEnabled, &out.AcceleratedNetworkSupportEnabled + *out = new(bool) + **out = **in + } + if in.Architecture != nil { + in, out := &in.Architecture, &out.Architecture + *out = new(string) + **out = **in + } + if in.ConfidentialVMEnabled != nil { + in, out := &in.ConfidentialVMEnabled, &out.ConfidentialVMEnabled + *out = new(bool) + **out = **in + } + if in.ConfidentialVMSupported != nil { + in, out := &in.ConfidentialVMSupported, &out.ConfidentialVMSupported + *out = new(bool) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DiskTypesNotAllowed != nil { + in, out := &in.DiskTypesNotAllowed, &out.DiskTypesNotAllowed + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EndOfLifeDate != nil { + in, out := &in.EndOfLifeDate, &out.EndOfLifeDate + *out = new(string) + **out = **in + } + if in.Eula != nil { + in, out := &in.Eula, &out.Eula + *out = new(string) + **out = **in + } + if in.GalleryName != nil { + in, out := &in.GalleryName, &out.GalleryName + *out = new(string) + **out = **in + } + if in.HyperVGeneration != nil { + in, out := &in.HyperVGeneration, &out.HyperVGeneration + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Identifier != nil { + in, out := &in.Identifier, &out.Identifier + *out = make([]IdentifierObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaxRecommendedMemoryInGb != nil { + in, out := &in.MaxRecommendedMemoryInGb, &out.MaxRecommendedMemoryInGb + *out = new(float64) + **out = **in + } + if in.MaxRecommendedVcpuCount != nil { + in, out := &in.MaxRecommendedVcpuCount, &out.MaxRecommendedVcpuCount + *out = new(float64) + **out = **in + } + if in.MinRecommendedMemoryInGb != nil { + in, out := &in.MinRecommendedMemoryInGb, &out.MinRecommendedMemoryInGb + *out = new(float64) + **out = **in + } + if in.MinRecommendedVcpuCount != nil { + in, out := &in.MinRecommendedVcpuCount, &out.MinRecommendedVcpuCount + *out = new(float64) + **out = **in + } + if in.OsType != nil { + in, out := &in.OsType, &out.OsType + *out = new(string) + **out = **in + } + if in.PrivacyStatementURI != nil { + in, out := &in.PrivacyStatementURI, &out.PrivacyStatementURI + *out = new(string) + **out = **in + } + if in.PurchasePlan != nil { + in, out := &in.PurchasePlan, &out.PurchasePlan + *out = make([]PurchasePlanObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ReleaseNoteURI != nil { + in, out := &in.ReleaseNoteURI, &out.ReleaseNoteURI + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.Specialized != nil { + in, out := &in.Specialized, &out.Specialized + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TrustedLaunchEnabled != nil { + in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageObservation. +func (in *SharedImageObservation) DeepCopy() *SharedImageObservation { + if in == nil { + return nil + } + out := new(SharedImageObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageParameters) DeepCopyInto(out *SharedImageParameters) { + *out = *in + if in.AcceleratedNetworkSupportEnabled != nil { + in, out := &in.AcceleratedNetworkSupportEnabled, &out.AcceleratedNetworkSupportEnabled + *out = new(bool) + **out = **in + } + if in.Architecture != nil { + in, out := &in.Architecture, &out.Architecture + *out = new(string) + **out = **in + } + if in.ConfidentialVMEnabled != nil { + in, out := &in.ConfidentialVMEnabled, &out.ConfidentialVMEnabled + *out = new(bool) + **out = **in + } + if in.ConfidentialVMSupported != nil { + in, out := &in.ConfidentialVMSupported, &out.ConfidentialVMSupported + *out = new(bool) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DiskTypesNotAllowed != nil { + in, out := &in.DiskTypesNotAllowed, &out.DiskTypesNotAllowed + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EndOfLifeDate != nil { + in, out := &in.EndOfLifeDate, &out.EndOfLifeDate + *out = new(string) + **out = **in + } + if in.Eula != nil { + in, out := &in.Eula, &out.Eula + *out = new(string) + **out = **in + } + if in.GalleryName != nil { + in, out := &in.GalleryName, &out.GalleryName + *out = new(string) + **out = **in + } + if in.GalleryNameRef != nil { + in, out := &in.GalleryNameRef, &out.GalleryNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.GalleryNameSelector != nil { + in, out := &in.GalleryNameSelector, &out.GalleryNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.HyperVGeneration != nil { + in, out := &in.HyperVGeneration, &out.HyperVGeneration + *out = new(string) + **out = **in + } + if in.Identifier != nil { + in, out := &in.Identifier, &out.Identifier + *out = make([]IdentifierParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaxRecommendedMemoryInGb != nil { + in, out := &in.MaxRecommendedMemoryInGb, &out.MaxRecommendedMemoryInGb + *out = new(float64) + **out = **in + } + if in.MaxRecommendedVcpuCount != nil { + in, out := &in.MaxRecommendedVcpuCount, &out.MaxRecommendedVcpuCount + *out = new(float64) + **out = **in + } + if in.MinRecommendedMemoryInGb != nil { + in, out := &in.MinRecommendedMemoryInGb, &out.MinRecommendedMemoryInGb + *out = new(float64) + **out = **in + } + if in.MinRecommendedVcpuCount != nil { + in, out := &in.MinRecommendedVcpuCount, &out.MinRecommendedVcpuCount + *out = new(float64) + **out = **in + } + if in.OsType != nil { + in, out := &in.OsType, &out.OsType + *out = new(string) + **out = **in + } + if in.PrivacyStatementURI != nil { + in, out := &in.PrivacyStatementURI, &out.PrivacyStatementURI + *out = new(string) + **out = **in + } + if in.PurchasePlan != nil { + in, out := &in.PurchasePlan, &out.PurchasePlan + *out = make([]PurchasePlanParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ReleaseNoteURI != nil { + in, out := &in.ReleaseNoteURI, &out.ReleaseNoteURI + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Specialized != nil { + in, out := &in.Specialized, &out.Specialized + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TrustedLaunchEnabled != nil { + in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageParameters. +func (in *SharedImageParameters) DeepCopy() *SharedImageParameters { + if in == nil { + return nil + } + out := new(SharedImageParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageSpec) DeepCopyInto(out *SharedImageSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageSpec. +func (in *SharedImageSpec) DeepCopy() *SharedImageSpec { + if in == nil { + return nil + } + out := new(SharedImageSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedImageStatus) DeepCopyInto(out *SharedImageStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageStatus. +func (in *SharedImageStatus) DeepCopy() *SharedImageStatus { + if in == nil { + return nil + } + out := new(SharedImageStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuInitParameters) DeepCopyInto(out *SkuInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuInitParameters. +func (in *SkuInitParameters) DeepCopy() *SkuInitParameters { + if in == nil { + return nil + } + out := new(SkuInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuObservation) DeepCopyInto(out *SkuObservation) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuObservation. +func (in *SkuObservation) DeepCopy() *SkuObservation { + if in == nil { + return nil + } + out := new(SkuObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuParameters) DeepCopyInto(out *SkuParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuParameters. +func (in *SkuParameters) DeepCopy() *SkuParameters { + if in == nil { + return nil + } + out := new(SkuParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Snapshot) DeepCopyInto(out *Snapshot) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Snapshot. +func (in *Snapshot) DeepCopy() *Snapshot { + if in == nil { + return nil + } + out := new(Snapshot) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Snapshot) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotEncryptionSettingsInitParameters) DeepCopyInto(out *SnapshotEncryptionSettingsInitParameters) { + *out = *in + if in.DiskEncryptionKey != nil { + in, out := &in.DiskEncryptionKey, &out.DiskEncryptionKey + *out = make([]EncryptionSettingsDiskEncryptionKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.KeyEncryptionKey != nil { + in, out := &in.KeyEncryptionKey, &out.KeyEncryptionKey + *out = make([]EncryptionSettingsKeyEncryptionKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotEncryptionSettingsInitParameters. +func (in *SnapshotEncryptionSettingsInitParameters) DeepCopy() *SnapshotEncryptionSettingsInitParameters { + if in == nil { + return nil + } + out := new(SnapshotEncryptionSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotEncryptionSettingsObservation) DeepCopyInto(out *SnapshotEncryptionSettingsObservation) { + *out = *in + if in.DiskEncryptionKey != nil { + in, out := &in.DiskEncryptionKey, &out.DiskEncryptionKey + *out = make([]EncryptionSettingsDiskEncryptionKeyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.KeyEncryptionKey != nil { + in, out := &in.KeyEncryptionKey, &out.KeyEncryptionKey + *out = make([]EncryptionSettingsKeyEncryptionKeyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotEncryptionSettingsObservation. +func (in *SnapshotEncryptionSettingsObservation) DeepCopy() *SnapshotEncryptionSettingsObservation { + if in == nil { + return nil + } + out := new(SnapshotEncryptionSettingsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotEncryptionSettingsParameters) DeepCopyInto(out *SnapshotEncryptionSettingsParameters) { + *out = *in + if in.DiskEncryptionKey != nil { + in, out := &in.DiskEncryptionKey, &out.DiskEncryptionKey + *out = make([]EncryptionSettingsDiskEncryptionKeyParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.KeyEncryptionKey != nil { + in, out := &in.KeyEncryptionKey, &out.KeyEncryptionKey + *out = make([]EncryptionSettingsKeyEncryptionKeyParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotEncryptionSettingsParameters. +func (in *SnapshotEncryptionSettingsParameters) DeepCopy() *SnapshotEncryptionSettingsParameters { + if in == nil { + return nil + } + out := new(SnapshotEncryptionSettingsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotInitParameters) DeepCopyInto(out *SnapshotInitParameters) { + *out = *in + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.EncryptionSettings != nil { + in, out := &in.EncryptionSettings, &out.EncryptionSettings + *out = make([]SnapshotEncryptionSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IncrementalEnabled != nil { + in, out := &in.IncrementalEnabled, &out.IncrementalEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SourceResourceID != nil { + in, out := &in.SourceResourceID, &out.SourceResourceID + *out = new(string) + **out = **in + } + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotInitParameters. +func (in *SnapshotInitParameters) DeepCopy() *SnapshotInitParameters { + if in == nil { + return nil + } + out := new(SnapshotInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotList) DeepCopyInto(out *SnapshotList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Snapshot, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotList. +func (in *SnapshotList) DeepCopy() *SnapshotList { + if in == nil { + return nil + } + out := new(SnapshotList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SnapshotList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotObservation) DeepCopyInto(out *SnapshotObservation) { + *out = *in + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.EncryptionSettings != nil { + in, out := &in.EncryptionSettings, &out.EncryptionSettings + *out = make([]SnapshotEncryptionSettingsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.IncrementalEnabled != nil { + in, out := &in.IncrementalEnabled, &out.IncrementalEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.SourceResourceID != nil { + in, out := &in.SourceResourceID, &out.SourceResourceID + *out = new(string) + **out = **in + } + if in.SourceURI != nil { + in, out := &in.SourceURI, &out.SourceURI + *out = new(string) + **out = **in + } + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TrustedLaunchEnabled != nil { + in, out := &in.TrustedLaunchEnabled, &out.TrustedLaunchEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotObservation. +func (in *SnapshotObservation) DeepCopy() *SnapshotObservation { + if in == nil { + return nil + } + out := new(SnapshotObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotParameters) DeepCopyInto(out *SnapshotParameters) { + *out = *in + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.EncryptionSettings != nil { + in, out := &in.EncryptionSettings, &out.EncryptionSettings + *out = make([]SnapshotEncryptionSettingsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IncrementalEnabled != nil { + in, out := &in.IncrementalEnabled, &out.IncrementalEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.SourceResourceID != nil { + in, out := &in.SourceResourceID, &out.SourceResourceID + *out = new(string) + **out = **in + } + if in.SourceURI != nil { + in, out := &in.SourceURI, &out.SourceURI + *out = new(string) + **out = **in + } + if in.SourceURIRef != nil { + in, out := &in.SourceURIRef, &out.SourceURIRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.SourceURISelector != nil { + in, out := &in.SourceURISelector, &out.SourceURISelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotParameters. +func (in *SnapshotParameters) DeepCopy() *SnapshotParameters { + if in == nil { + return nil + } + out := new(SnapshotParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotSpec) DeepCopyInto(out *SnapshotSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotSpec. +func (in *SnapshotSpec) DeepCopy() *SnapshotSpec { + if in == nil { + return nil + } + out := new(SnapshotSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotStatus) DeepCopyInto(out *SnapshotStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotStatus. +func (in *SnapshotStatus) DeepCopy() *SnapshotStatus { + if in == nil { + return nil + } + out := new(SnapshotStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceImageReferenceInitParameters) DeepCopyInto(out *SourceImageReferenceInitParameters) { + *out = *in + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceImageReferenceInitParameters. +func (in *SourceImageReferenceInitParameters) DeepCopy() *SourceImageReferenceInitParameters { + if in == nil { + return nil + } + out := new(SourceImageReferenceInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceImageReferenceObservation) DeepCopyInto(out *SourceImageReferenceObservation) { + *out = *in + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceImageReferenceObservation. +func (in *SourceImageReferenceObservation) DeepCopy() *SourceImageReferenceObservation { + if in == nil { + return nil + } + out := new(SourceImageReferenceObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceImageReferenceParameters) DeepCopyInto(out *SourceImageReferenceParameters) { + *out = *in + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceImageReferenceParameters. +func (in *SourceImageReferenceParameters) DeepCopy() *SourceImageReferenceParameters { + if in == nil { + return nil + } + out := new(SourceImageReferenceParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceInitParameters) DeepCopyInto(out *SourceInitParameters) { + *out = *in + if in.DefaultConfigurationLink != nil { + in, out := &in.DefaultConfigurationLink, &out.DefaultConfigurationLink + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceInitParameters. +func (in *SourceInitParameters) DeepCopy() *SourceInitParameters { + if in == nil { + return nil + } + out := new(SourceInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceObservation) DeepCopyInto(out *SourceObservation) { + *out = *in + if in.DefaultConfigurationLink != nil { + in, out := &in.DefaultConfigurationLink, &out.DefaultConfigurationLink + *out = new(string) + **out = **in + } + if in.MediaLink != nil { + in, out := &in.MediaLink, &out.MediaLink + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceObservation. +func (in *SourceObservation) DeepCopy() *SourceObservation { + if in == nil { + return nil + } + out := new(SourceObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceParameters) DeepCopyInto(out *SourceParameters) { + *out = *in + if in.DefaultConfigurationLink != nil { + in, out := &in.DefaultConfigurationLink, &out.DefaultConfigurationLink + *out = new(string) + **out = **in + } + if in.MediaLink != nil { + in, out := &in.MediaLink, &out.MediaLink + *out = new(string) + **out = **in + } + if in.MediaLinkRef != nil { + in, out := &in.MediaLinkRef, &out.MediaLinkRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.MediaLinkSelector != nil { + in, out := &in.MediaLinkSelector, &out.MediaLinkSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceParameters. +func (in *SourceParameters) DeepCopy() *SourceParameters { + if in == nil { + return nil + } + out := new(SourceParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpotRestoreInitParameters) DeepCopyInto(out *SpotRestoreInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpotRestoreInitParameters. +func (in *SpotRestoreInitParameters) DeepCopy() *SpotRestoreInitParameters { + if in == nil { + return nil + } + out := new(SpotRestoreInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpotRestoreObservation) DeepCopyInto(out *SpotRestoreObservation) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpotRestoreObservation. +func (in *SpotRestoreObservation) DeepCopy() *SpotRestoreObservation { + if in == nil { + return nil + } + out := new(SpotRestoreObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpotRestoreParameters) DeepCopyInto(out *SpotRestoreParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpotRestoreParameters. +func (in *SpotRestoreParameters) DeepCopy() *SpotRestoreParameters { + if in == nil { + return nil + } + out := new(SpotRestoreParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TargetRegionInitParameters) DeepCopyInto(out *TargetRegionInitParameters) { + *out = *in + if in.RegionalReplicaCount != nil { + in, out := &in.RegionalReplicaCount, &out.RegionalReplicaCount + *out = new(float64) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetRegionInitParameters. +func (in *TargetRegionInitParameters) DeepCopy() *TargetRegionInitParameters { + if in == nil { + return nil + } + out := new(TargetRegionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TargetRegionObservation) DeepCopyInto(out *TargetRegionObservation) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RegionalReplicaCount != nil { + in, out := &in.RegionalReplicaCount, &out.RegionalReplicaCount + *out = new(float64) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetRegionObservation. +func (in *TargetRegionObservation) DeepCopy() *TargetRegionObservation { + if in == nil { + return nil + } + out := new(TargetRegionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TargetRegionParameters) DeepCopyInto(out *TargetRegionParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NameRef != nil { + in, out := &in.NameRef, &out.NameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.NameSelector != nil { + in, out := &in.NameSelector, &out.NameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.RegionalReplicaCount != nil { + in, out := &in.RegionalReplicaCount, &out.RegionalReplicaCount + *out = new(float64) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetRegionParameters. +func (in *TargetRegionParameters) DeepCopy() *TargetRegionParameters { + if in == nil { + return nil + } + out := new(TargetRegionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TerminateNotificationInitParameters) DeepCopyInto(out *TerminateNotificationInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminateNotificationInitParameters. +func (in *TerminateNotificationInitParameters) DeepCopy() *TerminateNotificationInitParameters { + if in == nil { + return nil + } + out := new(TerminateNotificationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TerminateNotificationObservation) DeepCopyInto(out *TerminateNotificationObservation) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminateNotificationObservation. +func (in *TerminateNotificationObservation) DeepCopy() *TerminateNotificationObservation { + if in == nil { + return nil + } + out := new(TerminateNotificationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TerminateNotificationParameters) DeepCopyInto(out *TerminateNotificationParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminateNotificationParameters. +func (in *TerminateNotificationParameters) DeepCopy() *TerminateNotificationParameters { + if in == nil { + return nil + } + out := new(TerminateNotificationParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TerminationNotificationInitParameters) DeepCopyInto(out *TerminationNotificationInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminationNotificationInitParameters. +func (in *TerminationNotificationInitParameters) DeepCopy() *TerminationNotificationInitParameters { + if in == nil { + return nil + } + out := new(TerminationNotificationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TerminationNotificationObservation) DeepCopyInto(out *TerminationNotificationObservation) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminationNotificationObservation. +func (in *TerminationNotificationObservation) DeepCopy() *TerminationNotificationObservation { + if in == nil { + return nil + } + out := new(TerminationNotificationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TerminationNotificationParameters) DeepCopyInto(out *TerminationNotificationParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminationNotificationParameters. +func (in *TerminationNotificationParameters) DeepCopy() *TerminationNotificationParameters { + if in == nil { + return nil + } + out := new(TerminationNotificationParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsConfigurationInitParameters) DeepCopyInto(out *WindowsConfigurationInitParameters) { + *out = *in + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) + **out = **in + } + if in.ComputerNamePrefix != nil { + in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix + *out = new(string) + **out = **in + } + if in.EnableAutomaticUpdates != nil { + in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates + *out = new(bool) + **out = **in + } + if in.HotpatchingEnabled != nil { + in, out := &in.HotpatchingEnabled, &out.HotpatchingEnabled + *out = new(bool) + **out = **in + } + if in.PatchAssessmentMode != nil { + in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + *out = new(string) + **out = **in + } + if in.PatchMode != nil { + in, out := &in.PatchMode, &out.PatchMode + *out = new(string) + **out = **in + } + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + *out = new(bool) + **out = **in + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]WindowsConfigurationSecretInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } + if in.WinrmListener != nil { + in, out := &in.WinrmListener, &out.WinrmListener + *out = make([]WinrmListenerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationInitParameters. +func (in *WindowsConfigurationInitParameters) DeepCopy() *WindowsConfigurationInitParameters { + if in == nil { + return nil + } + out := new(WindowsConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsConfigurationObservation) DeepCopyInto(out *WindowsConfigurationObservation) { + *out = *in + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) + **out = **in + } + if in.ComputerNamePrefix != nil { + in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix + *out = new(string) + **out = **in + } + if in.EnableAutomaticUpdates != nil { + in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates + *out = new(bool) + **out = **in + } + if in.HotpatchingEnabled != nil { + in, out := &in.HotpatchingEnabled, &out.HotpatchingEnabled + *out = new(bool) + **out = **in + } + if in.PatchAssessmentMode != nil { + in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + *out = new(string) + **out = **in + } + if in.PatchMode != nil { + in, out := &in.PatchMode, &out.PatchMode + *out = new(string) + **out = **in + } + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + *out = new(bool) + **out = **in + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]WindowsConfigurationSecretObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } + if in.WinrmListener != nil { + in, out := &in.WinrmListener, &out.WinrmListener + *out = make([]WinrmListenerObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationObservation. +func (in *WindowsConfigurationObservation) DeepCopy() *WindowsConfigurationObservation { + if in == nil { + return nil + } + out := new(WindowsConfigurationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsConfigurationParameters) DeepCopyInto(out *WindowsConfigurationParameters) { + *out = *in + out.AdminPasswordSecretRef = in.AdminPasswordSecretRef + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) + **out = **in + } + if in.ComputerNamePrefix != nil { + in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix + *out = new(string) + **out = **in + } + if in.EnableAutomaticUpdates != nil { + in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates + *out = new(bool) + **out = **in + } + if in.HotpatchingEnabled != nil { + in, out := &in.HotpatchingEnabled, &out.HotpatchingEnabled + *out = new(bool) + **out = **in + } + if in.PatchAssessmentMode != nil { + in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + *out = new(string) + **out = **in + } + if in.PatchMode != nil { + in, out := &in.PatchMode, &out.PatchMode + *out = new(string) + **out = **in + } + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + *out = new(bool) + **out = **in + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]WindowsConfigurationSecretParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } + if in.WinrmListener != nil { + in, out := &in.WinrmListener, &out.WinrmListener + *out = make([]WinrmListenerParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationParameters. +func (in *WindowsConfigurationParameters) DeepCopy() *WindowsConfigurationParameters { + if in == nil { + return nil + } + out := new(WindowsConfigurationParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsConfigurationSecretCertificateInitParameters) DeepCopyInto(out *WindowsConfigurationSecretCertificateInitParameters) { + *out = *in + if in.Store != nil { + in, out := &in.Store, &out.Store + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretCertificateInitParameters. +func (in *WindowsConfigurationSecretCertificateInitParameters) DeepCopy() *WindowsConfigurationSecretCertificateInitParameters { + if in == nil { + return nil + } + out := new(WindowsConfigurationSecretCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsConfigurationSecretCertificateObservation) DeepCopyInto(out *WindowsConfigurationSecretCertificateObservation) { + *out = *in + if in.Store != nil { + in, out := &in.Store, &out.Store + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretCertificateObservation. +func (in *WindowsConfigurationSecretCertificateObservation) DeepCopy() *WindowsConfigurationSecretCertificateObservation { + if in == nil { + return nil + } + out := new(WindowsConfigurationSecretCertificateObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsConfigurationSecretCertificateParameters) DeepCopyInto(out *WindowsConfigurationSecretCertificateParameters) { + *out = *in + if in.Store != nil { + in, out := &in.Store, &out.Store + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretCertificateParameters. +func (in *WindowsConfigurationSecretCertificateParameters) DeepCopy() *WindowsConfigurationSecretCertificateParameters { + if in == nil { + return nil + } + out := new(WindowsConfigurationSecretCertificateParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsConfigurationSecretInitParameters) DeepCopyInto(out *WindowsConfigurationSecretInitParameters) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]WindowsConfigurationSecretCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretInitParameters. +func (in *WindowsConfigurationSecretInitParameters) DeepCopy() *WindowsConfigurationSecretInitParameters { + if in == nil { + return nil + } + out := new(WindowsConfigurationSecretInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsConfigurationSecretObservation) DeepCopyInto(out *WindowsConfigurationSecretObservation) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]WindowsConfigurationSecretCertificateObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretObservation. +func (in *WindowsConfigurationSecretObservation) DeepCopy() *WindowsConfigurationSecretObservation { + if in == nil { + return nil + } + out := new(WindowsConfigurationSecretObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsConfigurationSecretParameters) DeepCopyInto(out *WindowsConfigurationSecretParameters) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]WindowsConfigurationSecretCertificateParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretParameters. +func (in *WindowsConfigurationSecretParameters) DeepCopy() *WindowsConfigurationSecretParameters { + if in == nil { + return nil + } + out := new(WindowsConfigurationSecretParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachine) DeepCopyInto(out *WindowsVirtualMachine) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachine. +func (in *WindowsVirtualMachine) DeepCopy() *WindowsVirtualMachine { + if in == nil { + return nil + } + out := new(WindowsVirtualMachine) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *WindowsVirtualMachine) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineAdditionalCapabilitiesInitParameters) DeepCopyInto(out *WindowsVirtualMachineAdditionalCapabilitiesInitParameters) { + *out = *in + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalCapabilitiesInitParameters. +func (in *WindowsVirtualMachineAdditionalCapabilitiesInitParameters) DeepCopy() *WindowsVirtualMachineAdditionalCapabilitiesInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineAdditionalCapabilitiesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineAdditionalCapabilitiesObservation) DeepCopyInto(out *WindowsVirtualMachineAdditionalCapabilitiesObservation) { + *out = *in + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalCapabilitiesObservation. +func (in *WindowsVirtualMachineAdditionalCapabilitiesObservation) DeepCopy() *WindowsVirtualMachineAdditionalCapabilitiesObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineAdditionalCapabilitiesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineAdditionalCapabilitiesParameters) DeepCopyInto(out *WindowsVirtualMachineAdditionalCapabilitiesParameters) { + *out = *in + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalCapabilitiesParameters. +func (in *WindowsVirtualMachineAdditionalCapabilitiesParameters) DeepCopy() *WindowsVirtualMachineAdditionalCapabilitiesParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineAdditionalCapabilitiesParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineBootDiagnosticsInitParameters) DeepCopyInto(out *WindowsVirtualMachineBootDiagnosticsInitParameters) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineBootDiagnosticsInitParameters. +func (in *WindowsVirtualMachineBootDiagnosticsInitParameters) DeepCopy() *WindowsVirtualMachineBootDiagnosticsInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineBootDiagnosticsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineBootDiagnosticsObservation) DeepCopyInto(out *WindowsVirtualMachineBootDiagnosticsObservation) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineBootDiagnosticsObservation. +func (in *WindowsVirtualMachineBootDiagnosticsObservation) DeepCopy() *WindowsVirtualMachineBootDiagnosticsObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineBootDiagnosticsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineBootDiagnosticsParameters) DeepCopyInto(out *WindowsVirtualMachineBootDiagnosticsParameters) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineBootDiagnosticsParameters. +func (in *WindowsVirtualMachineBootDiagnosticsParameters) DeepCopy() *WindowsVirtualMachineBootDiagnosticsParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineBootDiagnosticsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineGalleryApplicationInitParameters) DeepCopyInto(out *WindowsVirtualMachineGalleryApplicationInitParameters) { + *out = *in + if in.ConfigurationBlobURI != nil { + in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } + if in.VersionID != nil { + in, out := &in.VersionID, &out.VersionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineGalleryApplicationInitParameters. +func (in *WindowsVirtualMachineGalleryApplicationInitParameters) DeepCopy() *WindowsVirtualMachineGalleryApplicationInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineGalleryApplicationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineGalleryApplicationObservation) DeepCopyInto(out *WindowsVirtualMachineGalleryApplicationObservation) { + *out = *in + if in.ConfigurationBlobURI != nil { + in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } + if in.VersionID != nil { + in, out := &in.VersionID, &out.VersionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineGalleryApplicationObservation. +func (in *WindowsVirtualMachineGalleryApplicationObservation) DeepCopy() *WindowsVirtualMachineGalleryApplicationObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineGalleryApplicationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineGalleryApplicationParameters) DeepCopyInto(out *WindowsVirtualMachineGalleryApplicationParameters) { + *out = *in + if in.ConfigurationBlobURI != nil { + in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } + if in.VersionID != nil { + in, out := &in.VersionID, &out.VersionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineGalleryApplicationParameters. +func (in *WindowsVirtualMachineGalleryApplicationParameters) DeepCopy() *WindowsVirtualMachineGalleryApplicationParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineGalleryApplicationParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineIdentityInitParameters) DeepCopyInto(out *WindowsVirtualMachineIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineIdentityInitParameters. +func (in *WindowsVirtualMachineIdentityInitParameters) DeepCopy() *WindowsVirtualMachineIdentityInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineIdentityObservation) DeepCopyInto(out *WindowsVirtualMachineIdentityObservation) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineIdentityObservation. +func (in *WindowsVirtualMachineIdentityObservation) DeepCopy() *WindowsVirtualMachineIdentityObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineIdentityObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineIdentityParameters) DeepCopyInto(out *WindowsVirtualMachineIdentityParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineIdentityParameters. +func (in *WindowsVirtualMachineIdentityParameters) DeepCopy() *WindowsVirtualMachineIdentityParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineIdentityParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineInitParameters) DeepCopyInto(out *WindowsVirtualMachineInitParameters) { + *out = *in + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]WindowsVirtualMachineAdditionalCapabilitiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalUnattendContent != nil { + in, out := &in.AdditionalUnattendContent, &out.AdditionalUnattendContent + *out = make([]AdditionalUnattendContentInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) + **out = **in + } + if in.AllowExtensionOperations != nil { + in, out := &in.AllowExtensionOperations, &out.AllowExtensionOperations + *out = new(bool) + **out = **in + } + if in.AvailabilitySetID != nil { + in, out := &in.AvailabilitySetID, &out.AvailabilitySetID + *out = new(string) + **out = **in + } + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]WindowsVirtualMachineBootDiagnosticsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID + *out = new(string) + **out = **in + } + if in.ComputerName != nil { + in, out := &in.ComputerName, &out.ComputerName + *out = new(string) + **out = **in + } + if in.DedicatedHostGroupID != nil { + in, out := &in.DedicatedHostGroupID, &out.DedicatedHostGroupID + *out = new(string) + **out = **in + } + if in.DedicatedHostID != nil { + in, out := &in.DedicatedHostID, &out.DedicatedHostID + *out = new(string) + **out = **in + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) + **out = **in + } + if in.EnableAutomaticUpdates != nil { + in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates + *out = new(bool) + **out = **in + } + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) + **out = **in + } + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy + *out = new(string) + **out = **in + } + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget + *out = new(string) + **out = **in + } + if in.GalleryApplication != nil { + in, out := &in.GalleryApplication, &out.GalleryApplication + *out = make([]WindowsVirtualMachineGalleryApplicationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HotpatchingEnabled != nil { + in, out := &in.HotpatchingEnabled, &out.HotpatchingEnabled + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]WindowsVirtualMachineIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice + *out = new(float64) + **out = **in + } + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]WindowsVirtualMachineOsDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PatchAssessmentMode != nil { + in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + *out = new(string) + **out = **in + } + if in.PatchMode != nil { + in, out := &in.PatchMode, &out.PatchMode + *out = new(string) + **out = **in + } + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]WindowsVirtualMachinePlanInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PlatformFaultDomain != nil { + in, out := &in.PlatformFaultDomain, &out.PlatformFaultDomain + *out = new(float64) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(string) + **out = **in + } + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + *out = new(bool) + **out = **in + } + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID + *out = new(string) + **out = **in + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]WindowsVirtualMachineSecretInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecureBootEnabled != nil { + in, out := &in.SecureBootEnabled, &out.SecureBootEnabled + *out = new(bool) + **out = **in + } + if in.Size != nil { + in, out := &in.Size, &out.Size + *out = new(string) + **out = **in + } + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID + *out = new(string) + **out = **in + } + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]WindowsVirtualMachineSourceImageReferenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TerminationNotification != nil { + in, out := &in.TerminationNotification, &out.TerminationNotification + *out = make([]WindowsVirtualMachineTerminationNotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } + if in.UserData != nil { + in, out := &in.UserData, &out.UserData + *out = new(string) + **out = **in + } + if in.VirtualMachineScaleSetID != nil { + in, out := &in.VirtualMachineScaleSetID, &out.VirtualMachineScaleSetID + *out = new(string) + **out = **in + } + if in.VtpmEnabled != nil { + in, out := &in.VtpmEnabled, &out.VtpmEnabled + *out = new(bool) + **out = **in + } + if in.WinrmListener != nil { + in, out := &in.WinrmListener, &out.WinrmListener + *out = make([]WindowsVirtualMachineWinrmListenerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineInitParameters. +func (in *WindowsVirtualMachineInitParameters) DeepCopy() *WindowsVirtualMachineInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineList) DeepCopyInto(out *WindowsVirtualMachineList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]WindowsVirtualMachine, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineList. +func (in *WindowsVirtualMachineList) DeepCopy() *WindowsVirtualMachineList { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *WindowsVirtualMachineList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineObservation) DeepCopyInto(out *WindowsVirtualMachineObservation) { + *out = *in + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]WindowsVirtualMachineAdditionalCapabilitiesObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalUnattendContent != nil { + in, out := &in.AdditionalUnattendContent, &out.AdditionalUnattendContent + *out = make([]AdditionalUnattendContentObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) + **out = **in + } + if in.AllowExtensionOperations != nil { + in, out := &in.AllowExtensionOperations, &out.AllowExtensionOperations + *out = new(bool) + **out = **in + } + if in.AvailabilitySetID != nil { + in, out := &in.AvailabilitySetID, &out.AvailabilitySetID + *out = new(string) + **out = **in + } + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]WindowsVirtualMachineBootDiagnosticsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID + *out = new(string) + **out = **in + } + if in.ComputerName != nil { + in, out := &in.ComputerName, &out.ComputerName + *out = new(string) + **out = **in + } + if in.DedicatedHostGroupID != nil { + in, out := &in.DedicatedHostGroupID, &out.DedicatedHostGroupID + *out = new(string) + **out = **in + } + if in.DedicatedHostID != nil { + in, out := &in.DedicatedHostID, &out.DedicatedHostID + *out = new(string) + **out = **in + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) + **out = **in + } + if in.EnableAutomaticUpdates != nil { + in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates + *out = new(bool) + **out = **in + } + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) + **out = **in + } + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy + *out = new(string) + **out = **in + } + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget + *out = new(string) + **out = **in + } + if in.GalleryApplication != nil { + in, out := &in.GalleryApplication, &out.GalleryApplication + *out = make([]WindowsVirtualMachineGalleryApplicationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HotpatchingEnabled != nil { + in, out := &in.HotpatchingEnabled, &out.HotpatchingEnabled + *out = new(bool) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]WindowsVirtualMachineIdentityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice + *out = new(float64) + **out = **in + } + if in.NetworkInterfaceIds != nil { + in, out := &in.NetworkInterfaceIds, &out.NetworkInterfaceIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]WindowsVirtualMachineOsDiskObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PatchAssessmentMode != nil { + in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + *out = new(string) + **out = **in + } + if in.PatchMode != nil { + in, out := &in.PatchMode, &out.PatchMode + *out = new(string) + **out = **in + } + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]WindowsVirtualMachinePlanObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PlatformFaultDomain != nil { + in, out := &in.PlatformFaultDomain, &out.PlatformFaultDomain + *out = new(float64) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(string) + **out = **in + } + if in.PrivateIPAddress != nil { + in, out := &in.PrivateIPAddress, &out.PrivateIPAddress + *out = new(string) + **out = **in + } + if in.PrivateIPAddresses != nil { + in, out := &in.PrivateIPAddresses, &out.PrivateIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + *out = new(bool) + **out = **in + } + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID + *out = new(string) + **out = **in + } + if in.PublicIPAddress != nil { + in, out := &in.PublicIPAddress, &out.PublicIPAddress + *out = new(string) + **out = **in + } + if in.PublicIPAddresses != nil { + in, out := &in.PublicIPAddresses, &out.PublicIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]WindowsVirtualMachineSecretObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecureBootEnabled != nil { + in, out := &in.SecureBootEnabled, &out.SecureBootEnabled + *out = new(bool) + **out = **in + } + if in.Size != nil { + in, out := &in.Size, &out.Size + *out = new(string) + **out = **in + } + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID + *out = new(string) + **out = **in + } + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]WindowsVirtualMachineSourceImageReferenceObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TerminationNotification != nil { + in, out := &in.TerminationNotification, &out.TerminationNotification + *out = make([]WindowsVirtualMachineTerminationNotificationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } + if in.UserData != nil { + in, out := &in.UserData, &out.UserData + *out = new(string) + **out = **in + } + if in.VirtualMachineID != nil { + in, out := &in.VirtualMachineID, &out.VirtualMachineID + *out = new(string) + **out = **in + } + if in.VirtualMachineScaleSetID != nil { + in, out := &in.VirtualMachineScaleSetID, &out.VirtualMachineScaleSetID + *out = new(string) + **out = **in + } + if in.VtpmEnabled != nil { + in, out := &in.VtpmEnabled, &out.VtpmEnabled + *out = new(bool) + **out = **in + } + if in.WinrmListener != nil { + in, out := &in.WinrmListener, &out.WinrmListener + *out = make([]WindowsVirtualMachineWinrmListenerObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineObservation. +func (in *WindowsVirtualMachineObservation) DeepCopy() *WindowsVirtualMachineObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters) DeepCopyInto(out *WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters) { + *out = *in + if in.Option != nil { + in, out := &in.Option, &out.Option + *out = new(string) + **out = **in + } + if in.Placement != nil { + in, out := &in.Placement, &out.Placement + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters. +func (in *WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters) DeepCopy() *WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineOsDiskDiffDiskSettingsObservation) DeepCopyInto(out *WindowsVirtualMachineOsDiskDiffDiskSettingsObservation) { + *out = *in + if in.Option != nil { + in, out := &in.Option, &out.Option + *out = new(string) + **out = **in + } + if in.Placement != nil { + in, out := &in.Placement, &out.Placement + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskDiffDiskSettingsObservation. +func (in *WindowsVirtualMachineOsDiskDiffDiskSettingsObservation) DeepCopy() *WindowsVirtualMachineOsDiskDiffDiskSettingsObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineOsDiskDiffDiskSettingsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineOsDiskDiffDiskSettingsParameters) DeepCopyInto(out *WindowsVirtualMachineOsDiskDiffDiskSettingsParameters) { + *out = *in + if in.Option != nil { + in, out := &in.Option, &out.Option + *out = new(string) + **out = **in + } + if in.Placement != nil { + in, out := &in.Placement, &out.Placement + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskDiffDiskSettingsParameters. +func (in *WindowsVirtualMachineOsDiskDiffDiskSettingsParameters) DeepCopy() *WindowsVirtualMachineOsDiskDiffDiskSettingsParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineOsDiskDiffDiskSettingsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineOsDiskInitParameters) DeepCopyInto(out *WindowsVirtualMachineOsDiskInitParameters) { + *out = *in + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in + } + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.SecurityEncryptionType != nil { + in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskInitParameters. +func (in *WindowsVirtualMachineOsDiskInitParameters) DeepCopy() *WindowsVirtualMachineOsDiskInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineOsDiskInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineOsDiskObservation) DeepCopyInto(out *WindowsVirtualMachineOsDiskObservation) { + *out = *in + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in + } + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]WindowsVirtualMachineOsDiskDiffDiskSettingsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.SecurityEncryptionType != nil { + in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskObservation. +func (in *WindowsVirtualMachineOsDiskObservation) DeepCopy() *WindowsVirtualMachineOsDiskObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineOsDiskObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineOsDiskParameters) DeepCopyInto(out *WindowsVirtualMachineOsDiskParameters) { + *out = *in + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in + } + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]WindowsVirtualMachineOsDiskDiffDiskSettingsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.SecurityEncryptionType != nil { + in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskParameters. +func (in *WindowsVirtualMachineOsDiskParameters) DeepCopy() *WindowsVirtualMachineOsDiskParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineOsDiskParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineParameters) DeepCopyInto(out *WindowsVirtualMachineParameters) { + *out = *in + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]WindowsVirtualMachineAdditionalCapabilitiesParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalUnattendContent != nil { + in, out := &in.AdditionalUnattendContent, &out.AdditionalUnattendContent + *out = make([]AdditionalUnattendContentParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + out.AdminPasswordSecretRef = in.AdminPasswordSecretRef + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) + **out = **in + } + if in.AllowExtensionOperations != nil { + in, out := &in.AllowExtensionOperations, &out.AllowExtensionOperations + *out = new(bool) + **out = **in + } + if in.AvailabilitySetID != nil { + in, out := &in.AvailabilitySetID, &out.AvailabilitySetID + *out = new(string) + **out = **in + } + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]WindowsVirtualMachineBootDiagnosticsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID + *out = new(string) + **out = **in + } + if in.ComputerName != nil { + in, out := &in.ComputerName, &out.ComputerName + *out = new(string) + **out = **in + } + if in.CustomDataSecretRef != nil { + in, out := &in.CustomDataSecretRef, &out.CustomDataSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.DedicatedHostGroupID != nil { + in, out := &in.DedicatedHostGroupID, &out.DedicatedHostGroupID + *out = new(string) + **out = **in + } + if in.DedicatedHostID != nil { + in, out := &in.DedicatedHostID, &out.DedicatedHostID + *out = new(string) + **out = **in + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) + **out = **in + } + if in.EnableAutomaticUpdates != nil { + in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates + *out = new(bool) + **out = **in + } + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) + **out = **in + } + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy + *out = new(string) + **out = **in + } + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget + *out = new(string) + **out = **in + } + if in.GalleryApplication != nil { + in, out := &in.GalleryApplication, &out.GalleryApplication + *out = make([]WindowsVirtualMachineGalleryApplicationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HotpatchingEnabled != nil { + in, out := &in.HotpatchingEnabled, &out.HotpatchingEnabled + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]WindowsVirtualMachineIdentityParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice + *out = new(float64) + **out = **in + } + if in.NetworkInterfaceIds != nil { + in, out := &in.NetworkInterfaceIds, &out.NetworkInterfaceIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NetworkInterfaceIdsRefs != nil { + in, out := &in.NetworkInterfaceIdsRefs, &out.NetworkInterfaceIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NetworkInterfaceIdsSelector != nil { + in, out := &in.NetworkInterfaceIdsSelector, &out.NetworkInterfaceIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]WindowsVirtualMachineOsDiskParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PatchAssessmentMode != nil { + in, out := &in.PatchAssessmentMode, &out.PatchAssessmentMode + *out = new(string) + **out = **in + } + if in.PatchMode != nil { + in, out := &in.PatchMode, &out.PatchMode + *out = new(string) + **out = **in + } + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]WindowsVirtualMachinePlanParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PlatformFaultDomain != nil { + in, out := &in.PlatformFaultDomain, &out.PlatformFaultDomain + *out = new(float64) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(string) + **out = **in + } + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + *out = new(bool) + **out = **in + } + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]WindowsVirtualMachineSecretParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecureBootEnabled != nil { + in, out := &in.SecureBootEnabled, &out.SecureBootEnabled + *out = new(bool) + **out = **in + } + if in.Size != nil { + in, out := &in.Size, &out.Size + *out = new(string) + **out = **in + } + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID + *out = new(string) + **out = **in + } + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]WindowsVirtualMachineSourceImageReferenceParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TerminationNotification != nil { + in, out := &in.TerminationNotification, &out.TerminationNotification + *out = make([]WindowsVirtualMachineTerminationNotificationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } + if in.UserData != nil { + in, out := &in.UserData, &out.UserData + *out = new(string) + **out = **in + } + if in.VirtualMachineScaleSetID != nil { + in, out := &in.VirtualMachineScaleSetID, &out.VirtualMachineScaleSetID + *out = new(string) + **out = **in + } + if in.VtpmEnabled != nil { + in, out := &in.VtpmEnabled, &out.VtpmEnabled + *out = new(bool) + **out = **in + } + if in.WinrmListener != nil { + in, out := &in.WinrmListener, &out.WinrmListener + *out = make([]WindowsVirtualMachineWinrmListenerParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineParameters. +func (in *WindowsVirtualMachineParameters) DeepCopy() *WindowsVirtualMachineParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachinePlanInitParameters) DeepCopyInto(out *WindowsVirtualMachinePlanInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachinePlanInitParameters. +func (in *WindowsVirtualMachinePlanInitParameters) DeepCopy() *WindowsVirtualMachinePlanInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachinePlanInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachinePlanObservation) DeepCopyInto(out *WindowsVirtualMachinePlanObservation) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachinePlanObservation. +func (in *WindowsVirtualMachinePlanObservation) DeepCopy() *WindowsVirtualMachinePlanObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachinePlanObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachinePlanParameters) DeepCopyInto(out *WindowsVirtualMachinePlanParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachinePlanParameters. +func (in *WindowsVirtualMachinePlanParameters) DeepCopy() *WindowsVirtualMachinePlanParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachinePlanParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSet) DeepCopyInto(out *WindowsVirtualMachineScaleSet) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSet. +func (in *WindowsVirtualMachineScaleSet) DeepCopy() *WindowsVirtualMachineScaleSet { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSet) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *WindowsVirtualMachineScaleSet) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) { + *out = *in + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters. +func (in *WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation) { + *out = *in + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation. +func (in *WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopy() *WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters) { + *out = *in + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters. +func (in *WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopy() *WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters) { + *out = *in + if in.Setting != nil { + in, out := &in.Setting, &out.Setting + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters. +func (in *WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation) { + *out = *in + if in.Setting != nil { + in, out := &in.Setting, &out.Setting + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation. +func (in *WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation) DeepCopy() *WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters) { + *out = *in + out.ContentSecretRef = in.ContentSecretRef + if in.Setting != nil { + in, out := &in.Setting, &out.Setting + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters. +func (in *WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters) DeepCopy() *WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.GracePeriod != nil { + in, out := &in.GracePeriod, &out.GracePeriod + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters. +func (in *WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.GracePeriod != nil { + in, out := &in.GracePeriod, &out.GracePeriod + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation. +func (in *WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopy() *WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.GracePeriod != nil { + in, out := &in.GracePeriod, &out.GracePeriod + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters. +func (in *WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopy() *WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters) { + *out = *in + if in.DisableAutomaticRollback != nil { + in, out := &in.DisableAutomaticRollback, &out.DisableAutomaticRollback + *out = new(bool) + **out = **in + } + if in.EnableAutomaticOsUpgrade != nil { + in, out := &in.EnableAutomaticOsUpgrade, &out.EnableAutomaticOsUpgrade + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters. +func (in *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation) { + *out = *in + if in.DisableAutomaticRollback != nil { + in, out := &in.DisableAutomaticRollback, &out.DisableAutomaticRollback + *out = new(bool) + **out = **in + } + if in.EnableAutomaticOsUpgrade != nil { + in, out := &in.EnableAutomaticOsUpgrade, &out.EnableAutomaticOsUpgrade + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation. +func (in *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation) DeepCopy() *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters) { + *out = *in + if in.DisableAutomaticRollback != nil { + in, out := &in.DisableAutomaticRollback, &out.DisableAutomaticRollback + *out = new(bool) + **out = **in + } + if in.EnableAutomaticOsUpgrade != nil { + in, out := &in.EnableAutomaticOsUpgrade, &out.EnableAutomaticOsUpgrade + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters. +func (in *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters) DeepCopy() *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters. +func (in *WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetBootDiagnosticsObservation) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetBootDiagnosticsObservation. +func (in *WindowsVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopy() *WindowsVirtualMachineScaleSetBootDiagnosticsObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetBootDiagnosticsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetBootDiagnosticsParameters) { + *out = *in + if in.StorageAccountURI != nil { + in, out := &in.StorageAccountURI, &out.StorageAccountURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetBootDiagnosticsParameters. +func (in *WindowsVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopy() *WindowsVirtualMachineScaleSetBootDiagnosticsParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetBootDiagnosticsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetDataDiskInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetDataDiskInitParameters) { + *out = *in + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in + } + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption + *out = new(string) + **out = **in + } + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.Lun != nil { + in, out := &in.Lun, &out.Lun + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.VirtualMachineScaleSetID != nil { - in, out := &in.VirtualMachineScaleSetID, &out.VirtualMachineScaleSetID + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType *out = new(string) **out = **in } - if in.VtpmEnabled != nil { - in, out := &in.VtpmEnabled, &out.VtpmEnabled - *out = new(bool) + if in.UltraSsdDiskIopsReadWrite != nil { + in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite + *out = new(float64) **out = **in } - if in.WinrmListener != nil { - in, out := &in.WinrmListener, &out.WinrmListener - *out = make([]WindowsVirtualMachineWinrmListenerParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.UltraSsdDiskMbpsReadWrite != nil { + in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite + *out = new(float64) + **out = **in } - if in.Zone != nil { - in, out := &in.Zone, &out.Zone - *out = new(string) + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineParameters. -func (in *WindowsVirtualMachineParameters) DeepCopy() *WindowsVirtualMachineParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetDataDiskInitParameters. +func (in *WindowsVirtualMachineScaleSetDataDiskInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetDataDiskInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineParameters) + out := new(WindowsVirtualMachineScaleSetDataDiskInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachinePlanObservation) DeepCopyInto(out *WindowsVirtualMachinePlanObservation) { +func (in *WindowsVirtualMachineScaleSetDataDiskObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetDataDiskObservation) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Caching != nil { + in, out := &in.Caching, &out.Caching *out = new(string) **out = **in } - if in.Product != nil { - in, out := &in.Product, &out.Product + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption *out = new(string) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachinePlanObservation. -func (in *WindowsVirtualMachinePlanObservation) DeepCopy() *WindowsVirtualMachinePlanObservation { - if in == nil { - return nil + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.Lun != nil { + in, out := &in.Lun, &out.Lun + *out = new(float64) + **out = **in } - out := new(WindowsVirtualMachinePlanObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachinePlanParameters) DeepCopyInto(out *WindowsVirtualMachinePlanParameters) { - *out = *in if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Product != nil { - in, out := &in.Product, &out.Product + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType *out = new(string) **out = **in } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher - *out = new(string) + if in.UltraSsdDiskIopsReadWrite != nil { + in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite + *out = new(float64) + **out = **in + } + if in.UltraSsdDiskMbpsReadWrite != nil { + in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite + *out = new(float64) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachinePlanParameters. -func (in *WindowsVirtualMachinePlanParameters) DeepCopy() *WindowsVirtualMachinePlanParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetDataDiskObservation. +func (in *WindowsVirtualMachineScaleSetDataDiskObservation) DeepCopy() *WindowsVirtualMachineScaleSetDataDiskObservation { if in == nil { return nil } - out := new(WindowsVirtualMachinePlanParameters) + out := new(WindowsVirtualMachineScaleSetDataDiskObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSet) DeepCopyInto(out *WindowsVirtualMachineScaleSet) { +func (in *WindowsVirtualMachineScaleSetDataDiskParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetDataDiskParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSet. -func (in *WindowsVirtualMachineScaleSet) DeepCopy() *WindowsVirtualMachineScaleSet { - if in == nil { - return nil + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in } - out := new(WindowsVirtualMachineScaleSet) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *WindowsVirtualMachineScaleSet) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption + *out = new(string) + **out = **in } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation) { - *out = *in - if in.UltraSsdEnabled != nil { - in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.Lun != nil { + in, out := &in.Lun, &out.Lun + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.UltraSsdDiskIopsReadWrite != nil { + in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite + *out = new(float64) + **out = **in + } + if in.UltraSsdDiskMbpsReadWrite != nil { + in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite + *out = new(float64) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation. -func (in *WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopy() *WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetDataDiskParameters. +func (in *WindowsVirtualMachineScaleSetDataDiskParameters) DeepCopy() *WindowsVirtualMachineScaleSetDataDiskParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation) + out := new(WindowsVirtualMachineScaleSetDataDiskParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters) { +func (in *WindowsVirtualMachineScaleSetExtensionInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetExtensionInitParameters) { *out = *in - if in.UltraSsdEnabled != nil { - in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + if in.AutoUpgradeMinorVersion != nil { + in, out := &in.AutoUpgradeMinorVersion, &out.AutoUpgradeMinorVersion *out = new(bool) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters. -func (in *WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopy() *WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters { - if in == nil { - return nil + if in.AutomaticUpgradeEnabled != nil { + in, out := &in.AutomaticUpgradeEnabled, &out.AutomaticUpgradeEnabled + *out = new(bool) + **out = **in } - out := new(WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation) { - *out = *in - if in.Setting != nil { - in, out := &in.Setting, &out.Setting + if in.ForceUpdateTag != nil { + in, out := &in.ForceUpdateTag, &out.ForceUpdateTag *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation. -func (in *WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation) DeepCopy() *WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation { - if in == nil { - return nil + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in } - out := new(WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters) { - *out = *in - out.ContentSecretRef = in.ContentSecretRef - if in.Setting != nil { - in, out := &in.Setting, &out.Setting + if in.ProtectedSettingsFromKeyVault != nil { + in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault + *out = make([]WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ProvisionAfterExtensions != nil { + in, out := &in.ProvisionAfterExtensions, &out.ProvisionAfterExtensions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeHandlerVersion != nil { + in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters. -func (in *WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters) DeepCopy() *WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionInitParameters. +func (in *WindowsVirtualMachineScaleSetExtensionInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetExtensionInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters) + out := new(WindowsVirtualMachineScaleSetExtensionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation) { +func (in *WindowsVirtualMachineScaleSetExtensionObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetExtensionObservation) { *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled + if in.AutoUpgradeMinorVersion != nil { + in, out := &in.AutoUpgradeMinorVersion, &out.AutoUpgradeMinorVersion *out = new(bool) **out = **in } - if in.GracePeriod != nil { - in, out := &in.GracePeriod, &out.GracePeriod + if in.AutomaticUpgradeEnabled != nil { + in, out := &in.AutomaticUpgradeEnabled, &out.AutomaticUpgradeEnabled + *out = new(bool) + **out = **in + } + if in.ForceUpdateTag != nil { + in, out := &in.ForceUpdateTag, &out.ForceUpdateTag + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ProtectedSettingsFromKeyVault != nil { + in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault + *out = make([]WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ProvisionAfterExtensions != nil { + in, out := &in.ProvisionAfterExtensions, &out.ProvisionAfterExtensions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeHandlerVersion != nil { + in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation. -func (in *WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopy() *WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionObservation. +func (in *WindowsVirtualMachineScaleSetExtensionObservation) DeepCopy() *WindowsVirtualMachineScaleSetExtensionObservation { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation) + out := new(WindowsVirtualMachineScaleSetExtensionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters) { +func (in *WindowsVirtualMachineScaleSetExtensionParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetExtensionParameters) { *out = *in - if in.Enabled != nil { - in, out := &in.Enabled, &out.Enabled + if in.AutoUpgradeMinorVersion != nil { + in, out := &in.AutoUpgradeMinorVersion, &out.AutoUpgradeMinorVersion *out = new(bool) **out = **in } - if in.GracePeriod != nil { - in, out := &in.GracePeriod, &out.GracePeriod + if in.AutomaticUpgradeEnabled != nil { + in, out := &in.AutomaticUpgradeEnabled, &out.AutomaticUpgradeEnabled + *out = new(bool) + **out = **in + } + if in.ForceUpdateTag != nil { + in, out := &in.ForceUpdateTag, &out.ForceUpdateTag + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ProtectedSettingsFromKeyVault != nil { + in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault + *out = make([]WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ProtectedSettingsSecretRef != nil { + in, out := &in.ProtectedSettingsSecretRef, &out.ProtectedSettingsSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ProvisionAfterExtensions != nil { + in, out := &in.ProvisionAfterExtensions, &out.ProvisionAfterExtensions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypeHandlerVersion != nil { + in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters. -func (in *WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopy() *WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionParameters. +func (in *WindowsVirtualMachineScaleSetExtensionParameters) DeepCopy() *WindowsVirtualMachineScaleSetExtensionParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters) + out := new(WindowsVirtualMachineScaleSetExtensionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation) { +func (in *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters) { *out = *in - if in.DisableAutomaticRollback != nil { - in, out := &in.DisableAutomaticRollback, &out.DisableAutomaticRollback - *out = new(bool) + if in.SecretURL != nil { + in, out := &in.SecretURL, &out.SecretURL + *out = new(string) **out = **in } - if in.EnableAutomaticOsUpgrade != nil { - in, out := &in.EnableAutomaticOsUpgrade, &out.EnableAutomaticOsUpgrade - *out = new(bool) + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation. -func (in *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation) DeepCopy() *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters. +func (in *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation) + out := new(WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters) { +func (in *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation) { *out = *in - if in.DisableAutomaticRollback != nil { - in, out := &in.DisableAutomaticRollback, &out.DisableAutomaticRollback - *out = new(bool) + if in.SecretURL != nil { + in, out := &in.SecretURL, &out.SecretURL + *out = new(string) **out = **in } - if in.EnableAutomaticOsUpgrade != nil { - in, out := &in.EnableAutomaticOsUpgrade, &out.EnableAutomaticOsUpgrade - *out = new(bool) + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters. -func (in *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters) DeepCopy() *WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation. +func (in *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation) DeepCopy() *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters) + out := new(WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetBootDiagnosticsObservation) { +func (in *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters) { *out = *in - if in.StorageAccountURI != nil { - in, out := &in.StorageAccountURI, &out.StorageAccountURI + if in.SecretURL != nil { + in, out := &in.SecretURL, &out.SecretURL + *out = new(string) + **out = **in + } + if in.SourceVaultID != nil { + in, out := &in.SourceVaultID, &out.SourceVaultID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetBootDiagnosticsObservation. -func (in *WindowsVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopy() *WindowsVirtualMachineScaleSetBootDiagnosticsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters. +func (in *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters) DeepCopy() *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetBootDiagnosticsObservation) + out := new(WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetBootDiagnosticsParameters) { +func (in *WindowsVirtualMachineScaleSetGalleryApplicationInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetGalleryApplicationInitParameters) { *out = *in - if in.StorageAccountURI != nil { - in, out := &in.StorageAccountURI, &out.StorageAccountURI + if in.ConfigurationBlobURI != nil { + in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } + if in.VersionID != nil { + in, out := &in.VersionID, &out.VersionID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetBootDiagnosticsParameters. -func (in *WindowsVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopy() *WindowsVirtualMachineScaleSetBootDiagnosticsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationInitParameters. +func (in *WindowsVirtualMachineScaleSetGalleryApplicationInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetGalleryApplicationInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetBootDiagnosticsParameters) + out := new(WindowsVirtualMachineScaleSetGalleryApplicationInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetDataDiskObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetDataDiskObservation) { +func (in *WindowsVirtualMachineScaleSetGalleryApplicationObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetGalleryApplicationObservation) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching - *out = new(string) - **out = **in - } - if in.CreateOption != nil { - in, out := &in.CreateOption, &out.CreateOption - *out = new(string) - **out = **in - } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + if in.ConfigurationBlobURI != nil { + in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI *out = new(string) **out = **in } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb + if in.Order != nil { + in, out := &in.Order, &out.Order *out = new(float64) **out = **in } - if in.Lun != nil { - in, out := &in.Lun, &out.Lun - *out = new(float64) + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.VersionID != nil { + in, out := &in.VersionID, &out.VersionID *out = new(string) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationObservation. +func (in *WindowsVirtualMachineScaleSetGalleryApplicationObservation) DeepCopy() *WindowsVirtualMachineScaleSetGalleryApplicationObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetGalleryApplicationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetGalleryApplicationParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetGalleryApplicationParameters) { + *out = *in + if in.ConfigurationBlobURI != nil { + in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI *out = new(string) **out = **in } - if in.UltraSsdDiskIopsReadWrite != nil { - in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite + if in.Order != nil { + in, out := &in.Order, &out.Order *out = new(float64) **out = **in } - if in.UltraSsdDiskMbpsReadWrite != nil { - in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite - *out = new(float64) + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) **out = **in } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) + if in.VersionID != nil { + in, out := &in.VersionID, &out.VersionID + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetDataDiskObservation. -func (in *WindowsVirtualMachineScaleSetDataDiskObservation) DeepCopy() *WindowsVirtualMachineScaleSetDataDiskObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationParameters. +func (in *WindowsVirtualMachineScaleSetGalleryApplicationParameters) DeepCopy() *WindowsVirtualMachineScaleSetGalleryApplicationParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetDataDiskObservation) + out := new(WindowsVirtualMachineScaleSetGalleryApplicationParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetDataDiskParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetDataDiskParameters) { +func (in *WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters) { *out = *in - if in.Caching != nil { - in, out := &in.Caching, &out.Caching - *out = new(string) - **out = **in - } - if in.CreateOption != nil { - in, out := &in.CreateOption, &out.CreateOption - *out = new(string) - **out = **in - } - if in.DiskEncryptionSetID != nil { - in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + if in.ConfigurationReferenceBlobURI != nil { + in, out := &in.ConfigurationReferenceBlobURI, &out.ConfigurationReferenceBlobURI *out = new(string) **out = **in } - if in.DiskSizeGb != nil { - in, out := &in.DiskSizeGb, &out.DiskSizeGb + if in.Order != nil { + in, out := &in.Order, &out.Order *out = new(float64) **out = **in } - if in.Lun != nil { - in, out := &in.Lun, &out.Lun - *out = new(float64) + if in.PackageReferenceID != nil { + in, out := &in.PackageReferenceID, &out.PackageReferenceID + *out = new(string) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Tag != nil { + in, out := &in.Tag, &out.Tag *out = new(string) **out = **in } - if in.StorageAccountType != nil { - in, out := &in.StorageAccountType, &out.StorageAccountType +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters. +func (in *WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetGalleryApplicationsObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetGalleryApplicationsObservation) { + *out = *in + if in.ConfigurationReferenceBlobURI != nil { + in, out := &in.ConfigurationReferenceBlobURI, &out.ConfigurationReferenceBlobURI *out = new(string) **out = **in } - if in.UltraSsdDiskIopsReadWrite != nil { - in, out := &in.UltraSsdDiskIopsReadWrite, &out.UltraSsdDiskIopsReadWrite + if in.Order != nil { + in, out := &in.Order, &out.Order *out = new(float64) **out = **in } - if in.UltraSsdDiskMbpsReadWrite != nil { - in, out := &in.UltraSsdDiskMbpsReadWrite, &out.UltraSsdDiskMbpsReadWrite - *out = new(float64) + if in.PackageReferenceID != nil { + in, out := &in.PackageReferenceID, &out.PackageReferenceID + *out = new(string) **out = **in } - if in.WriteAcceleratorEnabled != nil { - in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled - *out = new(bool) + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetDataDiskParameters. -func (in *WindowsVirtualMachineScaleSetDataDiskParameters) DeepCopy() *WindowsVirtualMachineScaleSetDataDiskParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationsObservation. +func (in *WindowsVirtualMachineScaleSetGalleryApplicationsObservation) DeepCopy() *WindowsVirtualMachineScaleSetGalleryApplicationsObservation { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetDataDiskParameters) + out := new(WindowsVirtualMachineScaleSetGalleryApplicationsObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetExtensionObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetExtensionObservation) { +func (in *WindowsVirtualMachineScaleSetGalleryApplicationsParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetGalleryApplicationsParameters) { *out = *in - if in.AutoUpgradeMinorVersion != nil { - in, out := &in.AutoUpgradeMinorVersion, &out.AutoUpgradeMinorVersion - *out = new(bool) + if in.ConfigurationReferenceBlobURI != nil { + in, out := &in.ConfigurationReferenceBlobURI, &out.ConfigurationReferenceBlobURI + *out = new(string) **out = **in } - if in.AutomaticUpgradeEnabled != nil { - in, out := &in.AutomaticUpgradeEnabled, &out.AutomaticUpgradeEnabled - *out = new(bool) + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) **out = **in } - if in.ForceUpdateTag != nil { - in, out := &in.ForceUpdateTag, &out.ForceUpdateTag + if in.PackageReferenceID != nil { + in, out := &in.PackageReferenceID, &out.PackageReferenceID *out = new(string) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.Tag != nil { + in, out := &in.Tag, &out.Tag *out = new(string) **out = **in } - if in.ProtectedSettingsFromKeyVault != nil { - in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault - *out = make([]WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation, len(*in)) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationsParameters. +func (in *WindowsVirtualMachineScaleSetGalleryApplicationsParameters) DeepCopy() *WindowsVirtualMachineScaleSetGalleryApplicationsParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetGalleryApplicationsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetIdentityInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.ProvisionAfterExtensions != nil { - in, out := &in.ProvisionAfterExtensions, &out.ProvisionAfterExtensions + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetIdentityInitParameters. +func (in *WindowsVirtualMachineScaleSetIdentityInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetIdentityInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetIdentityObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetIdentityObservation) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -13249,13 +18996,13 @@ func (in *WindowsVirtualMachineScaleSetExtensionObservation) DeepCopyInto(out *W } } } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID *out = new(string) **out = **in } - if in.Settings != nil { - in, out := &in.Settings, &out.Settings + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID *out = new(string) **out = **in } @@ -13264,337 +19011,371 @@ func (in *WindowsVirtualMachineScaleSetExtensionObservation) DeepCopyInto(out *W *out = new(string) **out = **in } - if in.TypeHandlerVersion != nil { - in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetIdentityObservation. +func (in *WindowsVirtualMachineScaleSetIdentityObservation) DeepCopy() *WindowsVirtualMachineScaleSetIdentityObservation { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetIdentityObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetIdentityParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetIdentityParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionObservation. -func (in *WindowsVirtualMachineScaleSetExtensionObservation) DeepCopy() *WindowsVirtualMachineScaleSetExtensionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetIdentityParameters. +func (in *WindowsVirtualMachineScaleSetIdentityParameters) DeepCopy() *WindowsVirtualMachineScaleSetIdentityParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetExtensionObservation) + out := new(WindowsVirtualMachineScaleSetIdentityParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetExtensionParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetExtensionParameters) { +func (in *WindowsVirtualMachineScaleSetInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetInitParameters) { *out = *in - if in.AutoUpgradeMinorVersion != nil { - in, out := &in.AutoUpgradeMinorVersion, &out.AutoUpgradeMinorVersion - *out = new(bool) - **out = **in + if in.AdditionalCapabilities != nil { + in, out := &in.AdditionalCapabilities, &out.AdditionalCapabilities + *out = make([]WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.AutomaticUpgradeEnabled != nil { - in, out := &in.AutomaticUpgradeEnabled, &out.AutomaticUpgradeEnabled - *out = new(bool) + if in.AdditionalUnattendContent != nil { + in, out := &in.AdditionalUnattendContent, &out.AdditionalUnattendContent + *out = make([]WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) **out = **in } - if in.ForceUpdateTag != nil { - in, out := &in.ForceUpdateTag, &out.ForceUpdateTag + if in.AutomaticInstanceRepair != nil { + in, out := &in.AutomaticInstanceRepair, &out.AutomaticInstanceRepair + *out = make([]WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutomaticOsUpgradePolicy != nil { + in, out := &in.AutomaticOsUpgradePolicy, &out.AutomaticOsUpgradePolicy + *out = make([]WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BootDiagnostics != nil { + in, out := &in.BootDiagnostics, &out.BootDiagnostics + *out = make([]WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID *out = new(string) **out = **in } - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.ComputerNamePrefix != nil { + in, out := &in.ComputerNamePrefix, &out.ComputerNamePrefix *out = new(string) **out = **in } - if in.ProtectedSettingsFromKeyVault != nil { - in, out := &in.ProtectedSettingsFromKeyVault, &out.ProtectedSettingsFromKeyVault - *out = make([]WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters, len(*in)) + if in.DataDisk != nil { + in, out := &in.DataDisk, &out.DataDisk + *out = make([]WindowsVirtualMachineScaleSetDataDiskInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ProtectedSettingsSecretRef != nil { - in, out := &in.ProtectedSettingsSecretRef, &out.ProtectedSettingsSecretRef - *out = new(v1.SecretKeySelector) + if in.DoNotRunExtensionsOnOverprovisionedMachines != nil { + in, out := &in.DoNotRunExtensionsOnOverprovisionedMachines, &out.DoNotRunExtensionsOnOverprovisionedMachines + *out = new(bool) **out = **in } - if in.ProvisionAfterExtensions != nil { - in, out := &in.ProvisionAfterExtensions, &out.ProvisionAfterExtensions - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.Publisher != nil { - in, out := &in.Publisher, &out.Publisher + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone *out = new(string) **out = **in } - if in.Settings != nil { - in, out := &in.Settings, &out.Settings - *out = new(string) + if in.EnableAutomaticUpdates != nil { + in, out := &in.EnableAutomaticUpdates, &out.EnableAutomaticUpdates + *out = new(bool) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) **out = **in } - if in.TypeHandlerVersion != nil { - in, out := &in.TypeHandlerVersion, &out.TypeHandlerVersion + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionParameters. -func (in *WindowsVirtualMachineScaleSetExtensionParameters) DeepCopy() *WindowsVirtualMachineScaleSetExtensionParameters { - if in == nil { - return nil + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]WindowsVirtualMachineScaleSetExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(WindowsVirtualMachineScaleSetExtensionParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation) { - *out = *in - if in.SecretURL != nil { - in, out := &in.SecretURL, &out.SecretURL - *out = new(string) + if in.ExtensionOperationsEnabled != nil { + in, out := &in.ExtensionOperationsEnabled, &out.ExtensionOperationsEnabled + *out = new(bool) **out = **in } - if in.SourceVaultID != nil { - in, out := &in.SourceVaultID, &out.SourceVaultID + if in.ExtensionsTimeBudget != nil { + in, out := &in.ExtensionsTimeBudget, &out.ExtensionsTimeBudget *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation. -func (in *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation) DeepCopy() *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation { - if in == nil { - return nil + if in.GalleryApplication != nil { + in, out := &in.GalleryApplication, &out.GalleryApplication + *out = make([]WindowsVirtualMachineScaleSetGalleryApplicationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters) { - *out = *in - if in.SecretURL != nil { - in, out := &in.SecretURL, &out.SecretURL - *out = new(string) - **out = **in + if in.GalleryApplications != nil { + in, out := &in.GalleryApplications, &out.GalleryApplications + *out = make([]WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.SourceVaultID != nil { - in, out := &in.SourceVaultID, &out.SourceVaultID + if in.HealthProbeID != nil { + in, out := &in.HealthProbeID, &out.HealthProbeID *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters. -func (in *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters) DeepCopy() *WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters { - if in == nil { - return nil - } - out := new(WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetGalleryApplicationObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetGalleryApplicationObservation) { - *out = *in - if in.ConfigurationBlobURI != nil { - in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI + if in.HostGroupID != nil { + in, out := &in.HostGroupID, &out.HostGroupID *out = new(string) **out = **in } - if in.Order != nil { - in, out := &in.Order, &out.Order + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]WindowsVirtualMachineScaleSetIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Instances != nil { + in, out := &in.Instances, &out.Instances *out = new(float64) **out = **in } - if in.Tag != nil { - in, out := &in.Tag, &out.Tag + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType *out = new(string) **out = **in } - if in.VersionID != nil { - in, out := &in.VersionID, &out.VersionID + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationObservation. -func (in *WindowsVirtualMachineScaleSetGalleryApplicationObservation) DeepCopy() *WindowsVirtualMachineScaleSetGalleryApplicationObservation { - if in == nil { - return nil + if in.MaxBidPrice != nil { + in, out := &in.MaxBidPrice, &out.MaxBidPrice + *out = new(float64) + **out = **in } - out := new(WindowsVirtualMachineScaleSetGalleryApplicationObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetGalleryApplicationParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetGalleryApplicationParameters) { - *out = *in - if in.ConfigurationBlobURI != nil { - in, out := &in.ConfigurationBlobURI, &out.ConfigurationBlobURI - *out = new(string) + if in.NetworkInterface != nil { + in, out := &in.NetworkInterface, &out.NetworkInterface + *out = make([]WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OsDisk != nil { + in, out := &in.OsDisk, &out.OsDisk + *out = make([]WindowsVirtualMachineScaleSetOsDiskInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Overprovision != nil { + in, out := &in.Overprovision, &out.Overprovision + *out = new(bool) **out = **in } - if in.Order != nil { - in, out := &in.Order, &out.Order + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]WindowsVirtualMachineScaleSetPlanInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PlatformFaultDomainCount != nil { + in, out := &in.PlatformFaultDomainCount, &out.PlatformFaultDomainCount *out = new(float64) **out = **in } - if in.Tag != nil { - in, out := &in.Tag, &out.Tag + if in.Priority != nil { + in, out := &in.Priority, &out.Priority *out = new(string) **out = **in } - if in.VersionID != nil { - in, out := &in.VersionID, &out.VersionID - *out = new(string) + if in.ProvisionVMAgent != nil { + in, out := &in.ProvisionVMAgent, &out.ProvisionVMAgent + *out = new(bool) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationParameters. -func (in *WindowsVirtualMachineScaleSetGalleryApplicationParameters) DeepCopy() *WindowsVirtualMachineScaleSetGalleryApplicationParameters { - if in == nil { - return nil - } - out := new(WindowsVirtualMachineScaleSetGalleryApplicationParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetGalleryApplicationsObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetGalleryApplicationsObservation) { - *out = *in - if in.ConfigurationReferenceBlobURI != nil { - in, out := &in.ConfigurationReferenceBlobURI, &out.ConfigurationReferenceBlobURI + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID *out = new(string) **out = **in } - if in.Order != nil { - in, out := &in.Order, &out.Order - *out = new(float64) - **out = **in + if in.RollingUpgradePolicy != nil { + in, out := &in.RollingUpgradePolicy, &out.RollingUpgradePolicy + *out = make([]WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.PackageReferenceID != nil { - in, out := &in.PackageReferenceID, &out.PackageReferenceID - *out = new(string) - **out = **in + if in.ScaleIn != nil { + in, out := &in.ScaleIn, &out.ScaleIn + *out = make([]WindowsVirtualMachineScaleSetScaleInInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - if in.Tag != nil { - in, out := &in.Tag, &out.Tag + if in.ScaleInPolicy != nil { + in, out := &in.ScaleInPolicy, &out.ScaleInPolicy *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationsObservation. -func (in *WindowsVirtualMachineScaleSetGalleryApplicationsObservation) DeepCopy() *WindowsVirtualMachineScaleSetGalleryApplicationsObservation { - if in == nil { - return nil - } - out := new(WindowsVirtualMachineScaleSetGalleryApplicationsObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetGalleryApplicationsParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetGalleryApplicationsParameters) { - *out = *in - if in.ConfigurationReferenceBlobURI != nil { - in, out := &in.ConfigurationReferenceBlobURI, &out.ConfigurationReferenceBlobURI - *out = new(string) + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = make([]WindowsVirtualMachineScaleSetSecretInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecureBootEnabled != nil { + in, out := &in.SecureBootEnabled, &out.SecureBootEnabled + *out = new(bool) **out = **in } - if in.Order != nil { - in, out := &in.Order, &out.Order - *out = new(float64) + if in.SinglePlacementGroup != nil { + in, out := &in.SinglePlacementGroup, &out.SinglePlacementGroup + *out = new(bool) **out = **in } - if in.PackageReferenceID != nil { - in, out := &in.PackageReferenceID, &out.PackageReferenceID + if in.Sku != nil { + in, out := &in.Sku, &out.Sku *out = new(string) **out = **in } - if in.Tag != nil { - in, out := &in.Tag, &out.Tag + if in.SourceImageID != nil { + in, out := &in.SourceImageID, &out.SourceImageID *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationsParameters. -func (in *WindowsVirtualMachineScaleSetGalleryApplicationsParameters) DeepCopy() *WindowsVirtualMachineScaleSetGalleryApplicationsParameters { - if in == nil { - return nil + if in.SourceImageReference != nil { + in, out := &in.SourceImageReference, &out.SourceImageReference + *out = make([]WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } - out := new(WindowsVirtualMachineScaleSetGalleryApplicationsParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetIdentityObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetIdentityObservation) { - *out = *in - if in.IdentityIds != nil { - in, out := &in.IdentityIds, &out.IdentityIds - *out = make([]*string, len(*in)) + if in.SpotRestore != nil { + in, out := &in.SpotRestore, &out.SpotRestore + *out = make([]WindowsVirtualMachineScaleSetSpotRestoreInitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal *out = new(string) **out = **in } + (*out)[key] = outVal } } - if in.PrincipalID != nil { - in, out := &in.PrincipalID, &out.PrincipalID + if in.TerminateNotification != nil { + in, out := &in.TerminateNotification, &out.TerminateNotification + *out = make([]WindowsVirtualMachineScaleSetTerminateNotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TerminationNotification != nil { + in, out := &in.TerminationNotification, &out.TerminationNotification + *out = make([]WindowsVirtualMachineScaleSetTerminationNotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone *out = new(string) **out = **in } - if in.TenantID != nil { - in, out := &in.TenantID, &out.TenantID + if in.UpgradeMode != nil { + in, out := &in.UpgradeMode, &out.UpgradeMode *out = new(string) **out = **in } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.UserData != nil { + in, out := &in.UserData, &out.UserData *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetIdentityObservation. -func (in *WindowsVirtualMachineScaleSetIdentityObservation) DeepCopy() *WindowsVirtualMachineScaleSetIdentityObservation { - if in == nil { - return nil + if in.VtpmEnabled != nil { + in, out := &in.VtpmEnabled, &out.VtpmEnabled + *out = new(bool) + **out = **in } - out := new(WindowsVirtualMachineScaleSetIdentityObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsVirtualMachineScaleSetIdentityParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetIdentityParameters) { - *out = *in - if in.IdentityIds != nil { - in, out := &in.IdentityIds, &out.IdentityIds + if in.WinrmListener != nil { + in, out := &in.WinrmListener, &out.WinrmListener + *out = make([]WindowsVirtualMachineScaleSetWinrmListenerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ZoneBalance != nil { + in, out := &in.ZoneBalance, &out.ZoneBalance + *out = new(bool) + **out = **in + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -13604,19 +19385,14 @@ func (in *WindowsVirtualMachineScaleSetIdentityParameters) DeepCopyInto(out *Win } } } - if in.Type != nil { - in, out := &in.Type, &out.Type - *out = new(string) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetIdentityParameters. -func (in *WindowsVirtualMachineScaleSetIdentityParameters) DeepCopy() *WindowsVirtualMachineScaleSetIdentityParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetInitParameters. +func (in *WindowsVirtualMachineScaleSetInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetIdentityParameters) + out := new(WindowsVirtualMachineScaleSetInitParameters) in.DeepCopyInto(out) return out } @@ -13653,6 +19429,87 @@ func (in *WindowsVirtualMachineScaleSetList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters) { + *out = *in + if in.ApplicationGatewayBackendAddressPoolIds != nil { + in, out := &in.ApplicationGatewayBackendAddressPoolIds, &out.ApplicationGatewayBackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ApplicationSecurityGroupIds != nil { + in, out := &in.ApplicationSecurityGroupIds, &out.ApplicationSecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoadBalancerBackendAddressPoolIds != nil { + in, out := &in.LoadBalancerBackendAddressPoolIds, &out.LoadBalancerBackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoadBalancerInboundNATRulesIds != nil { + in, out := &in.LoadBalancerInboundNATRulesIds, &out.LoadBalancerInboundNATRulesIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } + if in.PublicIPAddress != nil { + in, out := &in.PublicIPAddress, &out.PublicIPAddress + *out = make([]NetworkInterfaceIPConfigurationPublicIPAddressInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters. +func (in *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationObservation) { *out = *in @@ -13786,51 +19643,109 @@ func (in *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters } } } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } + if in.PublicIPAddress != nil { + in, out := &in.PublicIPAddress, &out.PublicIPAddress + *out = make([]NetworkInterfaceIPConfigurationPublicIPAddressParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID + *out = new(string) + **out = **in + } + if in.SubnetIDRef != nil { + in, out := &in.SubnetIDRef, &out.SubnetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.SubnetIDSelector != nil { + in, out := &in.SubnetIDSelector, &out.SubnetIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters. +func (in *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters) DeepCopy() *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters) { + *out = *in + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EnableAcceleratedNetworking != nil { + in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking + *out = new(bool) **out = **in } - if in.Primary != nil { - in, out := &in.Primary, &out.Primary + if in.EnableIPForwarding != nil { + in, out := &in.EnableIPForwarding, &out.EnableIPForwarding *out = new(bool) **out = **in } - if in.PublicIPAddress != nil { - in, out := &in.PublicIPAddress, &out.PublicIPAddress - *out = make([]NetworkInterfaceIPConfigurationPublicIPAddressParameters, len(*in)) + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID + if in.Name != nil { + in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.SubnetIDRef != nil { - in, out := &in.SubnetIDRef, &out.SubnetIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.SubnetIDSelector != nil { - in, out := &in.SubnetIDSelector, &out.SubnetIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.Version != nil { - in, out := &in.Version, &out.Version + if in.NetworkSecurityGroupID != nil { + in, out := &in.NetworkSecurityGroupID, &out.NetworkSecurityGroupID *out = new(string) **out = **in } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters. -func (in *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters) DeepCopy() *WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters. +func (in *WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters) + out := new(WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters) in.DeepCopyInto(out) return out } @@ -14309,6 +20224,31 @@ func (in *WindowsVirtualMachineScaleSetObservation) DeepCopy() *WindowsVirtualMa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) { + *out = *in + if in.Option != nil { + in, out := &in.Option, &out.Option + *out = new(string) + **out = **in + } + if in.Placement != nil { + in, out := &in.Placement, &out.Placement + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters. +func (in *WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) { *out = *in @@ -14359,6 +20299,63 @@ func (in *WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) DeepCop return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetOsDiskInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetOsDiskInitParameters) { + *out = *in + if in.Caching != nil { + in, out := &in.Caching, &out.Caching + *out = new(string) + **out = **in + } + if in.DiffDiskSettings != nil { + in, out := &in.DiffDiskSettings, &out.DiffDiskSettings + *out = make([]WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.DiskSizeGb != nil { + in, out := &in.DiskSizeGb, &out.DiskSizeGb + *out = new(float64) + **out = **in + } + if in.SecureVMDiskEncryptionSetID != nil { + in, out := &in.SecureVMDiskEncryptionSetID, &out.SecureVMDiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.SecurityEncryptionType != nil { + in, out := &in.SecurityEncryptionType, &out.SecurityEncryptionType + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.WriteAcceleratorEnabled != nil { + in, out := &in.WriteAcceleratorEnabled, &out.WriteAcceleratorEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetOsDiskInitParameters. +func (in *WindowsVirtualMachineScaleSetOsDiskInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetOsDiskInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetOsDiskInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetOsDiskObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetOsDiskObservation) { *out = *in @@ -14837,6 +20834,36 @@ func (in *WindowsVirtualMachineScaleSetParameters) DeepCopy() *WindowsVirtualMac return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetPlanInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetPlanInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetPlanInitParameters. +func (in *WindowsVirtualMachineScaleSetPlanInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetPlanInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetPlanInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetPlanObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetPlanObservation) { *out = *in @@ -14897,6 +20924,51 @@ func (in *WindowsVirtualMachineScaleSetPlanParameters) DeepCopy() *WindowsVirtua return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters) { + *out = *in + if in.CrossZoneUpgradesEnabled != nil { + in, out := &in.CrossZoneUpgradesEnabled, &out.CrossZoneUpgradesEnabled + *out = new(bool) + **out = **in + } + if in.MaxBatchInstancePercent != nil { + in, out := &in.MaxBatchInstancePercent, &out.MaxBatchInstancePercent + *out = new(float64) + **out = **in + } + if in.MaxUnhealthyInstancePercent != nil { + in, out := &in.MaxUnhealthyInstancePercent, &out.MaxUnhealthyInstancePercent + *out = new(float64) + **out = **in + } + if in.MaxUnhealthyUpgradedInstancePercent != nil { + in, out := &in.MaxUnhealthyUpgradedInstancePercent, &out.MaxUnhealthyUpgradedInstancePercent + *out = new(float64) + **out = **in + } + if in.PauseTimeBetweenBatches != nil { + in, out := &in.PauseTimeBetweenBatches, &out.PauseTimeBetweenBatches + *out = new(string) + **out = **in + } + if in.PrioritizeUnhealthyInstancesEnabled != nil { + in, out := &in.PrioritizeUnhealthyInstancesEnabled, &out.PrioritizeUnhealthyInstancesEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters. +func (in *WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetRollingUpgradePolicyObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetRollingUpgradePolicyObservation) { *out = *in @@ -14987,6 +21059,31 @@ func (in *WindowsVirtualMachineScaleSetRollingUpgradePolicyParameters) DeepCopy( return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetScaleInInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetScaleInInitParameters) { + *out = *in + if in.ForceDeletionEnabled != nil { + in, out := &in.ForceDeletionEnabled, &out.ForceDeletionEnabled + *out = new(bool) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetScaleInInitParameters. +func (in *WindowsVirtualMachineScaleSetScaleInInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetScaleInInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetScaleInInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetScaleInObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetScaleInObservation) { *out = *in @@ -15037,6 +21134,31 @@ func (in *WindowsVirtualMachineScaleSetScaleInParameters) DeepCopy() *WindowsVir return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetSecretCertificateInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetSecretCertificateInitParameters) { + *out = *in + if in.Store != nil { + in, out := &in.Store, &out.Store + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSecretCertificateInitParameters. +func (in *WindowsVirtualMachineScaleSetSecretCertificateInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetSecretCertificateInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetSecretCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetSecretCertificateObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetSecretCertificateObservation) { *out = *in @@ -15077,12 +21199,39 @@ func (in *WindowsVirtualMachineScaleSetSecretCertificateParameters) DeepCopyInto } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSecretCertificateParameters. -func (in *WindowsVirtualMachineScaleSetSecretCertificateParameters) DeepCopy() *WindowsVirtualMachineScaleSetSecretCertificateParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSecretCertificateParameters. +func (in *WindowsVirtualMachineScaleSetSecretCertificateParameters) DeepCopy() *WindowsVirtualMachineScaleSetSecretCertificateParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetSecretCertificateParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetSecretInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetSecretInitParameters) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]WindowsVirtualMachineScaleSetSecretCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSecretInitParameters. +func (in *WindowsVirtualMachineScaleSetSecretInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetSecretInitParameters { if in == nil { return nil } - out := new(WindowsVirtualMachineScaleSetSecretCertificateParameters) + out := new(WindowsVirtualMachineScaleSetSecretInitParameters) in.DeepCopyInto(out) return out } @@ -15141,6 +21290,41 @@ func (in *WindowsVirtualMachineScaleSetSecretParameters) DeepCopy() *WindowsVirt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters) { + *out = *in + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters. +func (in *WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetSourceImageReferenceObservation) { *out = *in @@ -15216,6 +21400,7 @@ func (in *WindowsVirtualMachineScaleSetSpec) DeepCopyInto(out *WindowsVirtualMac *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSpec. @@ -15228,6 +21413,31 @@ func (in *WindowsVirtualMachineScaleSetSpec) DeepCopy() *WindowsVirtualMachineSc return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetSpotRestoreInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetSpotRestoreInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSpotRestoreInitParameters. +func (in *WindowsVirtualMachineScaleSetSpotRestoreInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetSpotRestoreInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetSpotRestoreInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetSpotRestoreObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetSpotRestoreObservation) { *out = *in @@ -15295,6 +21505,31 @@ func (in *WindowsVirtualMachineScaleSetStatus) DeepCopy() *WindowsVirtualMachine return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetTerminateNotificationInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetTerminateNotificationInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetTerminateNotificationInitParameters. +func (in *WindowsVirtualMachineScaleSetTerminateNotificationInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetTerminateNotificationInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetTerminateNotificationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetTerminateNotificationObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetTerminateNotificationObservation) { *out = *in @@ -15345,6 +21580,31 @@ func (in *WindowsVirtualMachineScaleSetTerminateNotificationParameters) DeepCopy return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetTerminationNotificationInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetTerminationNotificationInitParameters. +func (in *WindowsVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetTerminationNotificationInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetTerminationNotificationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetTerminationNotificationObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetTerminationNotificationObservation) { *out = *in @@ -15395,6 +21655,31 @@ func (in *WindowsVirtualMachineScaleSetTerminationNotificationParameters) DeepCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineScaleSetWinrmListenerInitParameters) DeepCopyInto(out *WindowsVirtualMachineScaleSetWinrmListenerInitParameters) { + *out = *in + if in.CertificateURL != nil { + in, out := &in.CertificateURL, &out.CertificateURL + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetWinrmListenerInitParameters. +func (in *WindowsVirtualMachineScaleSetWinrmListenerInitParameters) DeepCopy() *WindowsVirtualMachineScaleSetWinrmListenerInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineScaleSetWinrmListenerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineScaleSetWinrmListenerObservation) DeepCopyInto(out *WindowsVirtualMachineScaleSetWinrmListenerObservation) { *out = *in @@ -15445,6 +21730,31 @@ func (in *WindowsVirtualMachineScaleSetWinrmListenerParameters) DeepCopy() *Wind return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineSecretCertificateInitParameters) DeepCopyInto(out *WindowsVirtualMachineSecretCertificateInitParameters) { + *out = *in + if in.Store != nil { + in, out := &in.Store, &out.Store + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSecretCertificateInitParameters. +func (in *WindowsVirtualMachineSecretCertificateInitParameters) DeepCopy() *WindowsVirtualMachineSecretCertificateInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineSecretCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineSecretCertificateObservation) DeepCopyInto(out *WindowsVirtualMachineSecretCertificateObservation) { *out = *in @@ -15495,6 +21805,33 @@ func (in *WindowsVirtualMachineSecretCertificateParameters) DeepCopy() *WindowsV return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineSecretInitParameters) DeepCopyInto(out *WindowsVirtualMachineSecretInitParameters) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]WindowsVirtualMachineSecretCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSecretInitParameters. +func (in *WindowsVirtualMachineSecretInitParameters) DeepCopy() *WindowsVirtualMachineSecretInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineSecretInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineSecretObservation) DeepCopyInto(out *WindowsVirtualMachineSecretObservation) { *out = *in @@ -15549,6 +21886,41 @@ func (in *WindowsVirtualMachineSecretParameters) DeepCopy() *WindowsVirtualMachi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineSourceImageReferenceInitParameters) DeepCopyInto(out *WindowsVirtualMachineSourceImageReferenceInitParameters) { + *out = *in + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSourceImageReferenceInitParameters. +func (in *WindowsVirtualMachineSourceImageReferenceInitParameters) DeepCopy() *WindowsVirtualMachineSourceImageReferenceInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineSourceImageReferenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineSourceImageReferenceObservation) DeepCopyInto(out *WindowsVirtualMachineSourceImageReferenceObservation) { *out = *in @@ -15624,6 +21996,7 @@ func (in *WindowsVirtualMachineSpec) DeepCopyInto(out *WindowsVirtualMachineSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSpec. @@ -15653,6 +22026,31 @@ func (in *WindowsVirtualMachineStatus) DeepCopy() *WindowsVirtualMachineStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineTerminationNotificationInitParameters) DeepCopyInto(out *WindowsVirtualMachineTerminationNotificationInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineTerminationNotificationInitParameters. +func (in *WindowsVirtualMachineTerminationNotificationInitParameters) DeepCopy() *WindowsVirtualMachineTerminationNotificationInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineTerminationNotificationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineTerminationNotificationObservation) DeepCopyInto(out *WindowsVirtualMachineTerminationNotificationObservation) { *out = *in @@ -15703,6 +22101,31 @@ func (in *WindowsVirtualMachineTerminationNotificationParameters) DeepCopy() *Wi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineWinrmListenerInitParameters) DeepCopyInto(out *WindowsVirtualMachineWinrmListenerInitParameters) { + *out = *in + if in.CertificateURL != nil { + in, out := &in.CertificateURL, &out.CertificateURL + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineWinrmListenerInitParameters. +func (in *WindowsVirtualMachineWinrmListenerInitParameters) DeepCopy() *WindowsVirtualMachineWinrmListenerInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineWinrmListenerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineWinrmListenerObservation) DeepCopyInto(out *WindowsVirtualMachineWinrmListenerObservation) { *out = *in @@ -15753,6 +22176,31 @@ func (in *WindowsVirtualMachineWinrmListenerParameters) DeepCopy() *WindowsVirtu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WinrmListenerInitParameters) DeepCopyInto(out *WinrmListenerInitParameters) { + *out = *in + if in.CertificateURL != nil { + in, out := &in.CertificateURL, &out.CertificateURL + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WinrmListenerInitParameters. +func (in *WinrmListenerInitParameters) DeepCopy() *WinrmListenerInitParameters { + if in == nil { + return nil + } + out := new(WinrmListenerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WinrmListenerObservation) DeepCopyInto(out *WinrmListenerObservation) { *out = *in diff --git a/apis/compute/v1beta1/zz_generated.managed.go b/apis/compute/v1beta1/zz_generated.managed.go index 1417d89c0..73688525c 100644 --- a/apis/compute/v1beta1/zz_generated.managed.go +++ b/apis/compute/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AvailabilitySet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AvailabilitySet. -func (mg *AvailabilitySet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AvailabilitySet. +func (mg *AvailabilitySet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AvailabilitySet. @@ -55,9 +55,9 @@ func (mg *AvailabilitySet) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AvailabilitySet. -func (mg *AvailabilitySet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AvailabilitySet. +func (mg *AvailabilitySet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AvailabilitySet. @@ -93,9 +93,9 @@ func (mg *CapacityReservation) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CapacityReservation. -func (mg *CapacityReservation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CapacityReservation. +func (mg *CapacityReservation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CapacityReservation. @@ -131,9 +131,9 @@ func (mg *CapacityReservation) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CapacityReservation. -func (mg *CapacityReservation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CapacityReservation. +func (mg *CapacityReservation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CapacityReservation. @@ -169,9 +169,9 @@ func (mg *CapacityReservationGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CapacityReservationGroup. -func (mg *CapacityReservationGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CapacityReservationGroup. +func (mg *CapacityReservationGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CapacityReservationGroup. @@ -207,9 +207,9 @@ func (mg *CapacityReservationGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CapacityReservationGroup. -func (mg *CapacityReservationGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CapacityReservationGroup. +func (mg *CapacityReservationGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CapacityReservationGroup. @@ -245,9 +245,9 @@ func (mg *DedicatedHost) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DedicatedHost. -func (mg *DedicatedHost) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DedicatedHost. +func (mg *DedicatedHost) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DedicatedHost. @@ -283,9 +283,9 @@ func (mg *DedicatedHost) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DedicatedHost. -func (mg *DedicatedHost) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DedicatedHost. +func (mg *DedicatedHost) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DedicatedHost. @@ -321,9 +321,9 @@ func (mg *DiskAccess) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DiskAccess. -func (mg *DiskAccess) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DiskAccess. +func (mg *DiskAccess) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DiskAccess. @@ -359,9 +359,9 @@ func (mg *DiskAccess) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DiskAccess. -func (mg *DiskAccess) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DiskAccess. +func (mg *DiskAccess) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DiskAccess. @@ -397,9 +397,9 @@ func (mg *DiskEncryptionSet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DiskEncryptionSet. -func (mg *DiskEncryptionSet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DiskEncryptionSet. +func (mg *DiskEncryptionSet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DiskEncryptionSet. @@ -435,9 +435,9 @@ func (mg *DiskEncryptionSet) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DiskEncryptionSet. -func (mg *DiskEncryptionSet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DiskEncryptionSet. +func (mg *DiskEncryptionSet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DiskEncryptionSet. @@ -473,9 +473,9 @@ func (mg *GalleryApplication) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this GalleryApplication. -func (mg *GalleryApplication) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this GalleryApplication. +func (mg *GalleryApplication) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this GalleryApplication. @@ -511,9 +511,9 @@ func (mg *GalleryApplication) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this GalleryApplication. -func (mg *GalleryApplication) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this GalleryApplication. +func (mg *GalleryApplication) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this GalleryApplication. @@ -549,9 +549,9 @@ func (mg *GalleryApplicationVersion) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this GalleryApplicationVersion. -func (mg *GalleryApplicationVersion) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this GalleryApplicationVersion. +func (mg *GalleryApplicationVersion) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this GalleryApplicationVersion. @@ -587,9 +587,9 @@ func (mg *GalleryApplicationVersion) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this GalleryApplicationVersion. -func (mg *GalleryApplicationVersion) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this GalleryApplicationVersion. +func (mg *GalleryApplicationVersion) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this GalleryApplicationVersion. @@ -625,9 +625,9 @@ func (mg *Image) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Image. -func (mg *Image) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Image. +func (mg *Image) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Image. @@ -663,9 +663,9 @@ func (mg *Image) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Image. -func (mg *Image) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Image. +func (mg *Image) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Image. @@ -701,9 +701,9 @@ func (mg *LinuxVirtualMachine) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinuxVirtualMachine. -func (mg *LinuxVirtualMachine) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinuxVirtualMachine. +func (mg *LinuxVirtualMachine) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinuxVirtualMachine. @@ -739,9 +739,9 @@ func (mg *LinuxVirtualMachine) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinuxVirtualMachine. -func (mg *LinuxVirtualMachine) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinuxVirtualMachine. +func (mg *LinuxVirtualMachine) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinuxVirtualMachine. @@ -777,9 +777,9 @@ func (mg *LinuxVirtualMachineScaleSet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinuxVirtualMachineScaleSet. -func (mg *LinuxVirtualMachineScaleSet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinuxVirtualMachineScaleSet. +func (mg *LinuxVirtualMachineScaleSet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinuxVirtualMachineScaleSet. @@ -815,9 +815,9 @@ func (mg *LinuxVirtualMachineScaleSet) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinuxVirtualMachineScaleSet. -func (mg *LinuxVirtualMachineScaleSet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinuxVirtualMachineScaleSet. +func (mg *LinuxVirtualMachineScaleSet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinuxVirtualMachineScaleSet. @@ -853,9 +853,9 @@ func (mg *ManagedDisk) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagedDisk. -func (mg *ManagedDisk) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagedDisk. +func (mg *ManagedDisk) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagedDisk. @@ -891,9 +891,9 @@ func (mg *ManagedDisk) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagedDisk. -func (mg *ManagedDisk) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagedDisk. +func (mg *ManagedDisk) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagedDisk. @@ -929,9 +929,9 @@ func (mg *ManagedDiskSASToken) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagedDiskSASToken. -func (mg *ManagedDiskSASToken) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagedDiskSASToken. +func (mg *ManagedDiskSASToken) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagedDiskSASToken. @@ -967,9 +967,9 @@ func (mg *ManagedDiskSASToken) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagedDiskSASToken. -func (mg *ManagedDiskSASToken) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagedDiskSASToken. +func (mg *ManagedDiskSASToken) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagedDiskSASToken. @@ -1005,9 +1005,9 @@ func (mg *OrchestratedVirtualMachineScaleSet) GetDeletionPolicy() xpv1.DeletionP return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OrchestratedVirtualMachineScaleSet. -func (mg *OrchestratedVirtualMachineScaleSet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OrchestratedVirtualMachineScaleSet. +func (mg *OrchestratedVirtualMachineScaleSet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OrchestratedVirtualMachineScaleSet. @@ -1043,9 +1043,9 @@ func (mg *OrchestratedVirtualMachineScaleSet) SetDeletionPolicy(r xpv1.DeletionP mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OrchestratedVirtualMachineScaleSet. -func (mg *OrchestratedVirtualMachineScaleSet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OrchestratedVirtualMachineScaleSet. +func (mg *OrchestratedVirtualMachineScaleSet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OrchestratedVirtualMachineScaleSet. @@ -1081,9 +1081,9 @@ func (mg *ProximityPlacementGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ProximityPlacementGroup. -func (mg *ProximityPlacementGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ProximityPlacementGroup. +func (mg *ProximityPlacementGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ProximityPlacementGroup. @@ -1119,9 +1119,9 @@ func (mg *ProximityPlacementGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ProximityPlacementGroup. -func (mg *ProximityPlacementGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ProximityPlacementGroup. +func (mg *ProximityPlacementGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ProximityPlacementGroup. @@ -1157,9 +1157,9 @@ func (mg *SSHPublicKey) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SSHPublicKey. -func (mg *SSHPublicKey) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SSHPublicKey. +func (mg *SSHPublicKey) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SSHPublicKey. @@ -1195,9 +1195,9 @@ func (mg *SSHPublicKey) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SSHPublicKey. -func (mg *SSHPublicKey) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SSHPublicKey. +func (mg *SSHPublicKey) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SSHPublicKey. @@ -1233,9 +1233,9 @@ func (mg *SharedImage) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SharedImage. -func (mg *SharedImage) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SharedImage. +func (mg *SharedImage) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SharedImage. @@ -1271,9 +1271,9 @@ func (mg *SharedImage) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SharedImage. -func (mg *SharedImage) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SharedImage. +func (mg *SharedImage) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SharedImage. @@ -1309,9 +1309,9 @@ func (mg *SharedImageGallery) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SharedImageGallery. -func (mg *SharedImageGallery) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SharedImageGallery. +func (mg *SharedImageGallery) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SharedImageGallery. @@ -1347,9 +1347,9 @@ func (mg *SharedImageGallery) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SharedImageGallery. -func (mg *SharedImageGallery) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SharedImageGallery. +func (mg *SharedImageGallery) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SharedImageGallery. @@ -1385,9 +1385,9 @@ func (mg *Snapshot) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Snapshot. -func (mg *Snapshot) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Snapshot. +func (mg *Snapshot) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Snapshot. @@ -1423,9 +1423,9 @@ func (mg *Snapshot) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Snapshot. -func (mg *Snapshot) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Snapshot. +func (mg *Snapshot) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Snapshot. @@ -1461,9 +1461,9 @@ func (mg *WindowsVirtualMachine) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WindowsVirtualMachine. -func (mg *WindowsVirtualMachine) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WindowsVirtualMachine. +func (mg *WindowsVirtualMachine) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WindowsVirtualMachine. @@ -1499,9 +1499,9 @@ func (mg *WindowsVirtualMachine) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WindowsVirtualMachine. -func (mg *WindowsVirtualMachine) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WindowsVirtualMachine. +func (mg *WindowsVirtualMachine) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WindowsVirtualMachine. @@ -1537,9 +1537,9 @@ func (mg *WindowsVirtualMachineScaleSet) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WindowsVirtualMachineScaleSet. -func (mg *WindowsVirtualMachineScaleSet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WindowsVirtualMachineScaleSet. +func (mg *WindowsVirtualMachineScaleSet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WindowsVirtualMachineScaleSet. @@ -1575,9 +1575,9 @@ func (mg *WindowsVirtualMachineScaleSet) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WindowsVirtualMachineScaleSet. -func (mg *WindowsVirtualMachineScaleSet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WindowsVirtualMachineScaleSet. +func (mg *WindowsVirtualMachineScaleSet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WindowsVirtualMachineScaleSet. diff --git a/apis/compute/v1beta1/zz_generated_terraformed.go b/apis/compute/v1beta1/zz_generated_terraformed.go index a329f10f8..b01e2e5be 100755 --- a/apis/compute/v1beta1/zz_generated_terraformed.go +++ b/apis/compute/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *AvailabilitySet) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AvailabilitySet +func (tr *AvailabilitySet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AvailabilitySet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AvailabilitySet) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *CapacityReservation) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CapacityReservation +func (tr *CapacityReservation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CapacityReservation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CapacityReservation) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *CapacityReservationGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CapacityReservationGroup +func (tr *CapacityReservationGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CapacityReservationGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CapacityReservationGroup) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *DedicatedHost) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DedicatedHost +func (tr *DedicatedHost) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DedicatedHost using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DedicatedHost) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *DiskAccess) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DiskAccess +func (tr *DiskAccess) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DiskAccess using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DiskAccess) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *DiskEncryptionSet) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DiskEncryptionSet +func (tr *DiskEncryptionSet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DiskEncryptionSet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DiskEncryptionSet) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *GalleryApplication) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this GalleryApplication +func (tr *GalleryApplication) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this GalleryApplication using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *GalleryApplication) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *GalleryApplicationVersion) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this GalleryApplicationVersion +func (tr *GalleryApplicationVersion) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this GalleryApplicationVersion using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *GalleryApplicationVersion) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *Image) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Image +func (tr *Image) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Image using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Image) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *LinuxVirtualMachine) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinuxVirtualMachine +func (tr *LinuxVirtualMachine) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinuxVirtualMachine using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinuxVirtualMachine) LateInitialize(attrs []byte) (bool, error) { @@ -811,6 +911,16 @@ func (tr *LinuxVirtualMachineScaleSet) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinuxVirtualMachineScaleSet +func (tr *LinuxVirtualMachineScaleSet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinuxVirtualMachineScaleSet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinuxVirtualMachineScaleSet) LateInitialize(attrs []byte) (bool, error) { @@ -885,6 +995,16 @@ func (tr *ManagedDisk) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagedDisk +func (tr *ManagedDisk) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagedDisk using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagedDisk) LateInitialize(attrs []byte) (bool, error) { @@ -959,6 +1079,16 @@ func (tr *ManagedDiskSASToken) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagedDiskSASToken +func (tr *ManagedDiskSASToken) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagedDiskSASToken using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagedDiskSASToken) LateInitialize(attrs []byte) (bool, error) { @@ -1033,6 +1163,16 @@ func (tr *OrchestratedVirtualMachineScaleSet) SetParameters(params map[string]an return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OrchestratedVirtualMachineScaleSet +func (tr *OrchestratedVirtualMachineScaleSet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OrchestratedVirtualMachineScaleSet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OrchestratedVirtualMachineScaleSet) LateInitialize(attrs []byte) (bool, error) { @@ -1107,6 +1247,16 @@ func (tr *ProximityPlacementGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ProximityPlacementGroup +func (tr *ProximityPlacementGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ProximityPlacementGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ProximityPlacementGroup) LateInitialize(attrs []byte) (bool, error) { @@ -1181,6 +1331,16 @@ func (tr *SharedImage) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SharedImage +func (tr *SharedImage) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SharedImage using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SharedImage) LateInitialize(attrs []byte) (bool, error) { @@ -1255,6 +1415,16 @@ func (tr *SharedImageGallery) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SharedImageGallery +func (tr *SharedImageGallery) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SharedImageGallery using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SharedImageGallery) LateInitialize(attrs []byte) (bool, error) { @@ -1329,6 +1499,16 @@ func (tr *Snapshot) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Snapshot +func (tr *Snapshot) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Snapshot using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Snapshot) LateInitialize(attrs []byte) (bool, error) { @@ -1403,6 +1583,16 @@ func (tr *SSHPublicKey) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SSHPublicKey +func (tr *SSHPublicKey) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SSHPublicKey using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SSHPublicKey) LateInitialize(attrs []byte) (bool, error) { @@ -1477,6 +1667,16 @@ func (tr *WindowsVirtualMachine) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WindowsVirtualMachine +func (tr *WindowsVirtualMachine) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WindowsVirtualMachine using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WindowsVirtualMachine) LateInitialize(attrs []byte) (bool, error) { @@ -1553,6 +1753,16 @@ func (tr *WindowsVirtualMachineScaleSet) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WindowsVirtualMachineScaleSet +func (tr *WindowsVirtualMachineScaleSet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WindowsVirtualMachineScaleSet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WindowsVirtualMachineScaleSet) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/compute/v1beta1/zz_image_types.go b/apis/compute/v1beta1/zz_image_types.go index fe9b063db..18020b8ac 100755 --- a/apis/compute/v1beta1/zz_image_types.go +++ b/apis/compute/v1beta1/zz_image_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataDiskInitParameters struct { + + // Specifies the URI in Azure storage of the blob that you want to use to create the image. + BlobURI *string `json:"blobUri,omitempty" tf:"blob_uri,omitempty"` + + // Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None. + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` + + // Specifies the logical unit number of the data disk. + Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` + + // Specifies the ID of the managed disk resource that you want to use to create the image. Changing this forces a new resource to be created. + ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"` + + // Specifies the size of the image to be created. The target size can't be smaller than the source size. + SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` +} + type DataDiskObservation struct { // Specifies the URI in Azure storage of the blob that you want to use to create the image. @@ -54,6 +72,31 @@ type DataDiskParameters struct { SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` } +type ImageInitParameters struct { + + // One or more data_disk elements as defined below. + DataDisk []DataDiskInitParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"` + + // The HyperVGenerationType of the VirtualMachine created from the image as V1, V2. The default is V1. Changing this forces a new resource to be created. + HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"` + + // Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // One or more os_disk elements as defined below. Changing this forces a new resource to be created. + OsDisk []OsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` + + // The Virtual Machine ID from which to create the image. + SourceVirtualMachineID *string `json:"sourceVirtualMachineId,omitempty" tf:"source_virtual_machine_id,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created. + ZoneResilient *bool `json:"zoneResilient,omitempty" tf:"zone_resilient,omitempty"` +} + type ImageObservation struct { // One or more data_disk elements as defined below. @@ -132,6 +175,27 @@ type ImageParameters struct { ZoneResilient *bool `json:"zoneResilient,omitempty" tf:"zone_resilient,omitempty"` } +type OsDiskInitParameters struct { + + // Specifies the URI in Azure storage of the blob that you want to use to create the image. Changing this forces a new resource to be created. + BlobURI *string `json:"blobUri,omitempty" tf:"blob_uri,omitempty"` + + // Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None. + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` + + // Specifies the ID of the managed disk resource that you want to use to create the image. + ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"` + + // Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized. Possible values are Generalized and Specialized. + OsState *string `json:"osState,omitempty" tf:"os_state,omitempty"` + + // Specifies the type of operating system contained in the virtual machine image. Possible values are: Windows or Linux. + OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` + + // Specifies the size of the image to be created. The target size can't be smaller than the source size. + SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` +} + type OsDiskObservation struct { // Specifies the URI in Azure storage of the blob that you want to use to create the image. Changing this forces a new resource to be created. @@ -184,6 +248,18 @@ type OsDiskParameters struct { type ImageSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ImageParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ImageInitParameters `json:"initProvider,omitempty"` } // ImageStatus defines the observed state of Image. @@ -204,7 +280,7 @@ type ImageStatus struct { type Image struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ImageSpec `json:"spec"` Status ImageStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_linuxvirtualmachine_types.go b/apis/compute/v1beta1/zz_linuxvirtualmachine_types.go index c4d057d65..900786a3d 100755 --- a/apis/compute/v1beta1/zz_linuxvirtualmachine_types.go +++ b/apis/compute/v1beta1/zz_linuxvirtualmachine_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AdditionalCapabilitiesInitParameters struct { + + // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false. + UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` +} + type AdditionalCapabilitiesObservation struct { // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false. @@ -26,6 +32,15 @@ type AdditionalCapabilitiesParameters struct { UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } +type AdminSSHKeyInitParameters struct { + + // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. Changing this forces a new resource to be created. + PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` + + // The Username for which this Public SSH Key should be configured. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type AdminSSHKeyObservation struct { // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. Changing this forces a new resource to be created. @@ -38,12 +53,18 @@ type AdminSSHKeyObservation struct { type AdminSSHKeyParameters struct { // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - PublicKey *string `json:"publicKey" tf:"public_key,omitempty"` + // +kubebuilder:validation:Optional + PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` // The Username for which this Public SSH Key should be configured. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type BootDiagnosticsInitParameters struct { + + // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. + StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } type BootDiagnosticsObservation struct { @@ -59,6 +80,12 @@ type BootDiagnosticsParameters struct { StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } +type CertificateInitParameters struct { + + // The Secret URL of a Key Vault Certificate. + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type CertificateObservation struct { // The Secret URL of a Key Vault Certificate. @@ -68,8 +95,17 @@ type CertificateObservation struct { type CertificateParameters struct { // The Secret URL of a Key Vault Certificate. - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + +type DiffDiskSettingsInitParameters struct { + + // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. + Option *string `json:"option,omitempty" tf:"option,omitempty"` + + // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. + Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } type DiffDiskSettingsObservation struct { @@ -84,14 +120,29 @@ type DiffDiskSettingsObservation struct { type DiffDiskSettingsParameters struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Option *string `json:"option" tf:"option,omitempty"` + // +kubebuilder:validation:Optional + Option *string `json:"option,omitempty" tf:"option,omitempty"` // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } +type LinuxVirtualMachineGalleryApplicationInitParameters struct { + + // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. + ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"` + + // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // Specifies a passthrough value for more generic context. This field can be any valid string value. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` + + // Specifies the Gallery Application Version resource ID. + VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` +} + type LinuxVirtualMachineGalleryApplicationObservation struct { // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. @@ -122,8 +173,17 @@ type LinuxVirtualMachineGalleryApplicationParameters struct { Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // Specifies the Gallery Application Version resource ID. - // +kubebuilder:validation:Required - VersionID *string `json:"versionId" tf:"version_id,omitempty"` + // +kubebuilder:validation:Optional + VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` +} + +type LinuxVirtualMachineIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type LinuxVirtualMachineIdentityObservation struct { @@ -148,8 +208,128 @@ type LinuxVirtualMachineIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LinuxVirtualMachineInitParameters struct { + + // A additional_capabilities block as defined below. + AdditionalCapabilities []AdditionalCapabilitiesInitParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"` + + // One or more admin_ssh_key blocks as defined below. Changing this forces a new resource to be created. + AdminSSHKey []AdminSSHKeyInitParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"` + + // The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created. + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` + + // Should Extension Operations be allowed on this Virtual Machine? Defaults to true. + AllowExtensionOperations *bool `json:"allowExtensionOperations,omitempty" tf:"allow_extension_operations,omitempty"` + + // Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created. + AvailabilitySetID *string `json:"availabilitySetId,omitempty" tf:"availability_set_id,omitempty"` + + // A boot_diagnostics block as defined below. + BootDiagnostics []BootDiagnosticsInitParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"` + + // Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to. + CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` + + // Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name, then you must specify computer_name. Changing this forces a new resource to be created. + ComputerName *string `json:"computerName,omitempty" tf:"computer_name,omitempty"` + + // The ID of a Dedicated Host Group that this Linux Virtual Machine should be run within. Conflicts with dedicated_host_id. + DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"` + + // The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id. + DedicatedHostID *string `json:"dedicatedHostId,omitempty" tf:"dedicated_host_id,omitempty"` + + // Should Password Authentication be disabled on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created. + DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine should exist. Changing this forces a new Linux Virtual Machine to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host? + EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` + + // Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` + + // Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to 90 minutes (PT1H30M). + ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"` + + // One or more gallery_application blocks as defined below. + GalleryApplication []LinuxVirtualMachineGalleryApplicationInitParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"` + + // An identity block as defined below. + Identity []LinuxVirtualMachineIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the BYOL Type for this Virtual Machine. Possible values are RHEL_BYOS and SLES_BYOS. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the eviction_policy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons. + MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"` + + // A os_disk block as defined below. + OsDisk []LinuxVirtualMachineOsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` + + // Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault. + PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"` + + // Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are AutomaticByPlatform and ImageDefault. Defaults to ImageDefault. For more information on patch modes please see the product documentation. + PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"` + + // A plan block as defined below. Changing this forces a new resource to be created. + Plan []PlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"` + + // Specifies the Platform Fault Domain in which this Linux Virtual Machine should be created. Defaults to -1, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Linux Virtual Machine to be created. + PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"` + + // Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created. + Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` + + // Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created. + ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` + + // The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. + ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` + + // One or more secret blocks as defined below. + Secret []SecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"` + + // Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created. + SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"` + + // The SKU which should be used for this Virtual Machine, such as Standard_F2. + Size *string `json:"size,omitempty" tf:"size,omitempty"` + + // The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs. + SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"` + + // A source_image_reference block as defined below. Changing this forces a new resource to be created. + SourceImageReference []SourceImageReferenceInitParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"` + + // A mapping of tags which should be assigned to this Virtual Machine. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A termination_notification block as defined below. + TerminationNotification []TerminationNotificationInitParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"` + + // The Base64-Encoded User Data which should be used for this Virtual Machine. + UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"` + + // Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within. Changing this forces a new resource to be created. + VirtualMachineScaleSetID *string `json:"virtualMachineScaleSetId,omitempty" tf:"virtual_machine_scale_set_id,omitempty"` + + // Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created. + VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"` + + // Specifies the Availability Zones in which this Linux Virtual Machine should be located. Changing this forces a new Linux Virtual Machine to be created. + Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } type LinuxVirtualMachineObservation struct { @@ -296,6 +476,36 @@ type LinuxVirtualMachineObservation struct { Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } +type LinuxVirtualMachineOsDiskInitParameters struct { + + // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` + + // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. + DiffDiskSettings []DiffDiskSettingsInitParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"` + + // The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. + DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` + + // The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from. + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` + + // The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created. + SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"` + + // Encryption Type when the Virtual Machine is a Confidential VM. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created. + SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` + + // The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` +} + type LinuxVirtualMachineOsDiskObservation struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. @@ -329,8 +539,8 @@ type LinuxVirtualMachineOsDiskObservation struct { type LinuxVirtualMachineOsDiskParameters struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. - // +kubebuilder:validation:Required - Caching *string `json:"caching" tf:"caching,omitempty"` + // +kubebuilder:validation:Optional + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -357,8 +567,8 @@ type LinuxVirtualMachineOsDiskParameters struct { SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` // The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. // +kubebuilder:validation:Optional @@ -559,6 +769,18 @@ type LinuxVirtualMachineParameters struct { Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } +type PlanInitParameters struct { + + // Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + Product *string `json:"product,omitempty" tf:"product,omitempty"` + + // Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + type PlanObservation struct { // Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. @@ -574,16 +796,25 @@ type PlanObservation struct { type PlanParameters struct { // Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Product *string `json:"product" tf:"product,omitempty"` + // +kubebuilder:validation:Optional + Product *string `json:"product,omitempty" tf:"product,omitempty"` // Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + +type SecretInitParameters struct { + + // One or more certificate blocks as defined above. + Certificate []CertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` + + // The ID of the Key Vault from which all Secrets should be sourced. + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } type SecretObservation struct { @@ -598,12 +829,27 @@ type SecretObservation struct { type SecretParameters struct { // One or more certificate blocks as defined above. - // +kubebuilder:validation:Required - Certificate []CertificateParameters `json:"certificate" tf:"certificate,omitempty"` + // +kubebuilder:validation:Optional + Certificate []CertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. - // +kubebuilder:validation:Required - KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` +} + +type SourceImageReferenceInitParameters struct { + + // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` + + // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type SourceImageReferenceObservation struct { @@ -624,20 +870,29 @@ type SourceImageReferenceObservation struct { type SourceImageReferenceParameters struct { // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Offer *string `json:"offer" tf:"offer,omitempty"` + // +kubebuilder:validation:Optional + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Sku *string `json:"sku" tf:"sku,omitempty"` + // +kubebuilder:validation:Optional + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type TerminationNotificationInitParameters struct { + + // Should the termination notification be enabled on this Virtual Machine? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } type TerminationNotificationObservation struct { @@ -652,8 +907,8 @@ type TerminationNotificationObservation struct { type TerminationNotificationParameters struct { // Should the termination notification be enabled on this Virtual Machine? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. // +kubebuilder:validation:Optional @@ -664,6 +919,18 @@ type TerminationNotificationParameters struct { type LinuxVirtualMachineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinuxVirtualMachineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinuxVirtualMachineInitParameters `json:"initProvider,omitempty"` } // LinuxVirtualMachineStatus defines the observed state of LinuxVirtualMachine. @@ -684,10 +951,10 @@ type LinuxVirtualMachineStatus struct { type LinuxVirtualMachine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminUsername)",message="adminUsername is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osDisk)",message="osDisk is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.size)",message="size is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adminUsername) || has(self.initProvider.adminUsername)",message="adminUsername is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.osDisk) || has(self.initProvider.osDisk)",message="osDisk is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.size) || has(self.initProvider.size)",message="size is a required parameter" Spec LinuxVirtualMachineSpec `json:"spec"` Status LinuxVirtualMachineStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_linuxvirtualmachinescaleset_types.go b/apis/compute/v1beta1/zz_linuxvirtualmachinescaleset_types.go index 6e4974f08..a209674a7 100755 --- a/apis/compute/v1beta1/zz_linuxvirtualmachinescaleset_types.go +++ b/apis/compute/v1beta1/zz_linuxvirtualmachinescaleset_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AutomaticInstanceRepairInitParameters struct { + + // Should the automatic instance repair be enabled on this Virtual Machine Scale Set? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Amount of time (in minutes, between 30 and 90, defaults to 30 minutes) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M. + GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"` +} + type AutomaticInstanceRepairObservation struct { // Should the automatic instance repair be enabled on this Virtual Machine Scale Set? @@ -25,14 +34,23 @@ type AutomaticInstanceRepairObservation struct { type AutomaticInstanceRepairParameters struct { // Should the automatic instance repair be enabled on this Virtual Machine Scale Set? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Amount of time (in minutes, between 30 and 90, defaults to 30 minutes) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M. // +kubebuilder:validation:Optional GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"` } +type AutomaticOsUpgradePolicyInitParameters struct { + + // Should automatic rollbacks be disabled? + DisableAutomaticRollback *bool `json:"disableAutomaticRollback,omitempty" tf:"disable_automatic_rollback,omitempty"` + + // Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? + EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade,omitempty" tf:"enable_automatic_os_upgrade,omitempty"` +} + type AutomaticOsUpgradePolicyObservation struct { // Should automatic rollbacks be disabled? @@ -45,12 +63,45 @@ type AutomaticOsUpgradePolicyObservation struct { type AutomaticOsUpgradePolicyParameters struct { // Should automatic rollbacks be disabled? - // +kubebuilder:validation:Required - DisableAutomaticRollback *bool `json:"disableAutomaticRollback" tf:"disable_automatic_rollback,omitempty"` + // +kubebuilder:validation:Optional + DisableAutomaticRollback *bool `json:"disableAutomaticRollback,omitempty" tf:"disable_automatic_rollback,omitempty"` // Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? - // +kubebuilder:validation:Required - EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade" tf:"enable_automatic_os_upgrade,omitempty"` + // +kubebuilder:validation:Optional + EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade,omitempty" tf:"enable_automatic_os_upgrade,omitempty"` +} + +type ExtensionInitParameters struct { + + // Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true. + AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"` + + // Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension? + AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"` + + // A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed. + ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"` + + // The name for the Virtual Machine Scale Set Extension. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A protected_settings_from_key_vault block as defined below. + ProtectedSettingsFromKeyVault []ProtectedSettingsFromKeyVaultInitParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"` + + // An ordered list of Extension names which this should be provisioned after. + ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"` + + // Specifies the Publisher of the Extension. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // A JSON String which specifies Settings for the Extension. + Settings *string `json:"settings,omitempty" tf:"settings,omitempty"` + + // Specifies the Type of the Extension. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // Specifies the version of the extension to use, available versions can be found using the Azure CLI. + TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"` } type ExtensionObservation struct { @@ -101,8 +152,8 @@ type ExtensionParameters struct { ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"` // The name for the Virtual Machine Scale Set Extension. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A protected_settings_from_key_vault block as defined below. // +kubebuilder:validation:Optional @@ -117,20 +168,33 @@ type ExtensionParameters struct { ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"` // Specifies the Publisher of the Extension. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // A JSON String which specifies Settings for the Extension. // +kubebuilder:validation:Optional Settings *string `json:"settings,omitempty" tf:"settings,omitempty"` // Specifies the Type of the Extension. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // Specifies the version of the extension to use, available versions can be found using the Azure CLI. - // +kubebuilder:validation:Required - TypeHandlerVersion *string `json:"typeHandlerVersion" tf:"type_handler_version,omitempty"` + // +kubebuilder:validation:Optional + TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"` +} + +type GalleryApplicationsInitParameters struct { + ConfigurationReferenceBlobURI *string `json:"configurationReferenceBlobUri,omitempty" tf:"configuration_reference_blob_uri,omitempty"` + + // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // The ID of the Linux Virtual Machine Scale Set. + PackageReferenceID *string `json:"packageReferenceId,omitempty" tf:"package_reference_id,omitempty"` + + // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` } type GalleryApplicationsObservation struct { @@ -156,14 +220,41 @@ type GalleryApplicationsParameters struct { Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // The ID of the Linux Virtual Machine Scale Set. - // +kubebuilder:validation:Required - PackageReferenceID *string `json:"packageReferenceId" tf:"package_reference_id,omitempty"` + // +kubebuilder:validation:Optional + PackageReferenceID *string `json:"packageReferenceId,omitempty" tf:"package_reference_id,omitempty"` // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` } +type IPConfigurationInitParameters struct { + + // A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to. + ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"` + + // A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to. + ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"` + + // A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to. + LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"` + + // A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to. + LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"` + + // The Name of the Public IP Address Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this the Primary IP Configuration? + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` + + // A public_ip_address block as defined below. + PublicIPAddress []PublicIPAddressInitParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"` + + // Specifies the version of the image used to create the virtual machines. + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type IPConfigurationObservation struct { // A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to. @@ -213,8 +304,8 @@ type IPConfigurationParameters struct { LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"` // The Name of the Public IP Address Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this the Primary IP Configuration? // +kubebuilder:validation:Optional @@ -243,6 +334,15 @@ type IPConfigurationParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type IPTagInitParameters struct { + + // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` + + // The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IPTagObservation struct { // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. @@ -255,12 +355,18 @@ type IPTagObservation struct { type IPTagParameters struct { // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Tag *string `json:"tag" tf:"tag,omitempty"` + // +kubebuilder:validation:Optional + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters struct { + + // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created. + UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } type LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation struct { @@ -276,6 +382,15 @@ type LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters struct { UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } +type LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters struct { + + // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. + PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` + + // The Username for which this Public SSH Key should be configured. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type LinuxVirtualMachineScaleSetAdminSSHKeyObservation struct { // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. @@ -288,12 +403,18 @@ type LinuxVirtualMachineScaleSetAdminSSHKeyObservation struct { type LinuxVirtualMachineScaleSetAdminSSHKeyParameters struct { // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. - // +kubebuilder:validation:Required - PublicKey *string `json:"publicKey" tf:"public_key,omitempty"` + // +kubebuilder:validation:Optional + PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` // The Username for which this Public SSH Key should be configured. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters struct { + + // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. + StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } type LinuxVirtualMachineScaleSetBootDiagnosticsObservation struct { @@ -309,6 +430,39 @@ type LinuxVirtualMachineScaleSetBootDiagnosticsParameters struct { StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } +type LinuxVirtualMachineScaleSetDataDiskInitParameters struct { + + // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` + + // The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks). + CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` + + // The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created. + DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` + + // The size of the Data Disk which should be created. + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` + + // The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. + Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` + + // The name of the Data Disk. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + // Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS. + UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"` + + // Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS. + UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"` + + // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` +} + type LinuxVirtualMachineScaleSetDataDiskObservation struct { // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. @@ -345,8 +499,8 @@ type LinuxVirtualMachineScaleSetDataDiskObservation struct { type LinuxVirtualMachineScaleSetDataDiskParameters struct { // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. - // +kubebuilder:validation:Required - Caching *string `json:"caching" tf:"caching,omitempty"` + // +kubebuilder:validation:Optional + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks). // +kubebuilder:validation:Optional @@ -357,20 +511,20 @@ type LinuxVirtualMachineScaleSetDataDiskParameters struct { DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The size of the Data Disk which should be created. - // +kubebuilder:validation:Required - DiskSizeGb *float64 `json:"diskSizeGb" tf:"disk_size_gb,omitempty"` + // +kubebuilder:validation:Optional + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. - // +kubebuilder:validation:Required - Lun *float64 `json:"lun" tf:"lun,omitempty"` + // +kubebuilder:validation:Optional + Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` // The name of the Data Disk. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS. - // +kubebuilder:validation:Required - StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS. // +kubebuilder:validation:Optional @@ -385,6 +539,21 @@ type LinuxVirtualMachineScaleSetDataDiskParameters struct { WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } +type LinuxVirtualMachineScaleSetGalleryApplicationInitParameters struct { + + // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created. + ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"` + + // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` + + // Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created. + VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` +} + type LinuxVirtualMachineScaleSetGalleryApplicationObservation struct { // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created. @@ -410,39 +579,200 @@ type LinuxVirtualMachineScaleSetGalleryApplicationParameters struct { // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` - // Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created. - // +kubebuilder:validation:Optional - Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` + // Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` + + // Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional + VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` +} + +type LinuxVirtualMachineScaleSetIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LinuxVirtualMachineScaleSetIdentityObservation struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The Principal ID associated with this Managed Service Identity. + PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` + + // The Tenant ID associated with this Managed Service Identity. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LinuxVirtualMachineScaleSetIdentityParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set. + // +kubebuilder:validation:Optional + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LinuxVirtualMachineScaleSetInitParameters struct { + + // An additional_capabilities block as defined below. + AdditionalCapabilities []LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"` + + // One or more admin_ssh_key blocks as defined below. + AdminSSHKey []LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"` + + // The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created. + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` + + // An automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension. + AutomaticInstanceRepair []AutomaticInstanceRepairInitParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"` + + // An automatic_os_upgrade_policy block as defined below. This can only be specified when upgrade_mode is set to either Automatic or Rolling. + AutomaticOsUpgradePolicy []AutomaticOsUpgradePolicyInitParameters `json:"automaticOsUpgradePolicy,omitempty" tf:"automatic_os_upgrade_policy,omitempty"` + + // A boot_diagnostics block as defined below. + BootDiagnostics []LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"` + + // Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created. + CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` + + // The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created. + ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"` + + // One or more data_disk blocks as defined below. + DataDisk []LinuxVirtualMachineScaleSetDataDiskInitParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"` + + // Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true. + DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"` + + // Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false. + DoNotRunExtensionsOnOverprovisionedMachines *bool `json:"doNotRunExtensionsOnOverprovisionedMachines,omitempty" tf:"do_not_run_extensions_on_overprovisioned_machines,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine Scale Set should exist. Changing this forces a new Linux Virtual Machine Scale Set to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host? + EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` + + // Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` + + // One or more extension blocks as defined below + Extension []ExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"` + + // Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Linux Virtual Machine Scale Set to be created. + ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"` + + // Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to 90 minutes (PT1H30M). + ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"` + + // One or more gallery_application blocks as defined below. + GalleryApplication []LinuxVirtualMachineScaleSetGalleryApplicationInitParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"` + + GalleryApplications []GalleryApplicationsInitParameters `json:"galleryApplications,omitempty" tf:"gallery_applications,omitempty"` + + // The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. + HealthProbeID *string `json:"healthProbeId,omitempty" tf:"health_probe_id,omitempty"` + + // Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created. + HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"` + + // An identity block as defined below. + Identity []LinuxVirtualMachineScaleSetIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The number of Virtual Machines in the Scale Set. Defaults to 0. + Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"` + + // The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons. + MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"` + + // One or more network_interface blocks as defined below. + NetworkInterface []NetworkInterfaceInitParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"` + + // An os_disk block as defined below. + OsDisk []LinuxVirtualMachineScaleSetOsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` + + // Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to true. + Overprovision *bool `json:"overprovision,omitempty" tf:"overprovision,omitempty"` + + // A plan block as defined below. Changing this forces a new resource to be created. + Plan []LinuxVirtualMachineScaleSetPlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"` + + // Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created. + PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"` + + // The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource. + Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` + + // Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created. + ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` + + // The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created. + ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` + + // A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. Changing this forces a new resource to be created. + RollingUpgradePolicy []RollingUpgradePolicyInitParameters `json:"rollingUpgradePolicy,omitempty" tf:"rolling_upgrade_policy,omitempty"` + + // A scale_in block as defined below. + ScaleIn []ScaleInInitParameters `json:"scaleIn,omitempty" tf:"scale_in,omitempty"` + + // One or more secret blocks as defined below. + Secret []LinuxVirtualMachineScaleSetSecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"` + + // Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created. + SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"` + + // Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true. + SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"` + + // The Virtual Machine SKU for the Scale Set, such as Standard_F2. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs. + SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"` - // Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VersionID *string `json:"versionId" tf:"version_id,omitempty"` -} + // A source_image_reference block as defined below. + SourceImageReference []LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"` -type LinuxVirtualMachineScaleSetIdentityObservation struct { + // A spot_restore block as defined below. + SpotRestore []SpotRestoreInitParameters `json:"spotRestore,omitempty" tf:"spot_restore,omitempty"` - // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set. - IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + // A mapping of tags which should be assigned to this Virtual Machine Scale Set. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` - // The Principal ID associated with this Managed Service Identity. - PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` + // A terminate_notification block as defined below. + TerminateNotification []TerminateNotificationInitParameters `json:"terminateNotification,omitempty" tf:"terminate_notification,omitempty"` - // The Tenant ID associated with this Managed Service Identity. - TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` + // A termination_notification block as defined below. + TerminationNotification []LinuxVirtualMachineScaleSetTerminationNotificationInitParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"` - // Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - Type *string `json:"type,omitempty" tf:"type,omitempty"` -} + // Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual. Changing this forces a new resource to be created. + UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"` -type LinuxVirtualMachineScaleSetIdentityParameters struct { + // The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set. + UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"` - // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set. - // +kubebuilder:validation:Optional - IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + // Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created. + VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"` - // Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created. + ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"` + + // Specifies a list of Availability Zones in which this Linux Virtual Machine Scale Set should be located. Changing this forces a new Linux Virtual Machine Scale Set to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } type LinuxVirtualMachineScaleSetObservation struct { @@ -608,6 +938,33 @@ type LinuxVirtualMachineScaleSetObservation struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type LinuxVirtualMachineScaleSetOsDiskInitParameters struct { + + // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` + + // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. + DiffDiskSettings []OsDiskDiffDiskSettingsInitParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"` + + // The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created. + DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` + + // The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from. + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` + + // The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created. + SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"` + + // Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created. + SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` + + // The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` +} + type LinuxVirtualMachineScaleSetOsDiskObservation struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. @@ -638,8 +995,8 @@ type LinuxVirtualMachineScaleSetOsDiskObservation struct { type LinuxVirtualMachineScaleSetOsDiskParameters struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. - // +kubebuilder:validation:Required - Caching *string `json:"caching" tf:"caching,omitempty"` + // +kubebuilder:validation:Optional + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -662,8 +1019,8 @@ type LinuxVirtualMachineScaleSetOsDiskParameters struct { SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` // The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. // +kubebuilder:validation:Optional @@ -893,6 +1250,18 @@ type LinuxVirtualMachineScaleSetParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type LinuxVirtualMachineScaleSetPlanInitParameters struct { + + // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the product of the image from the marketplace. Changing this forces a new resource to be created. + Product *string `json:"product,omitempty" tf:"product,omitempty"` + + // Specifies the publisher of the image. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + type LinuxVirtualMachineScaleSetPlanObservation struct { // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. @@ -908,16 +1277,25 @@ type LinuxVirtualMachineScaleSetPlanObservation struct { type LinuxVirtualMachineScaleSetPlanParameters struct { // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the product of the image from the marketplace. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Product *string `json:"product" tf:"product,omitempty"` + // +kubebuilder:validation:Optional + Product *string `json:"product,omitempty" tf:"product,omitempty"` // Specifies the publisher of the image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + +type LinuxVirtualMachineScaleSetSecretInitParameters struct { + + // One or more certificate blocks as defined above. + Certificate []SecretCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` + + // The ID of the Key Vault from which all Secrets should be sourced. + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } type LinuxVirtualMachineScaleSetSecretObservation struct { @@ -932,12 +1310,27 @@ type LinuxVirtualMachineScaleSetSecretObservation struct { type LinuxVirtualMachineScaleSetSecretParameters struct { // One or more certificate blocks as defined above. - // +kubebuilder:validation:Required - Certificate []SecretCertificateParameters `json:"certificate" tf:"certificate,omitempty"` + // +kubebuilder:validation:Optional + Certificate []SecretCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. - // +kubebuilder:validation:Required - KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` +} + +type LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters struct { + + // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` + + // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // Specifies the SKU of the image used to create the virtual machines. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // Specifies the version of the image used to create the virtual machines. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type LinuxVirtualMachineScaleSetSourceImageReferenceObservation struct { @@ -958,20 +1351,29 @@ type LinuxVirtualMachineScaleSetSourceImageReferenceObservation struct { type LinuxVirtualMachineScaleSetSourceImageReferenceParameters struct { // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Offer *string `json:"offer" tf:"offer,omitempty"` + // +kubebuilder:validation:Optional + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // Specifies the SKU of the image used to create the virtual machines. - // +kubebuilder:validation:Required - Sku *string `json:"sku" tf:"sku,omitempty"` + // +kubebuilder:validation:Optional + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies the version of the image used to create the virtual machines. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type LinuxVirtualMachineScaleSetTerminationNotificationInitParameters struct { + + // Should the termination notification be enabled on this Virtual Machine Scale Set? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } type LinuxVirtualMachineScaleSetTerminationNotificationObservation struct { @@ -986,14 +1388,38 @@ type LinuxVirtualMachineScaleSetTerminationNotificationObservation struct { type LinuxVirtualMachineScaleSetTerminationNotificationParameters struct { // Should the termination notification be enabled on this Virtual Machine Scale Set? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } +type NetworkInterfaceInitParameters struct { + + // A list of IP Addresses of DNS Servers which should be assigned to the Network Interface. + DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` + + // Does this Network Interface support Accelerated Networking? Defaults to false. + EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"` + + // Does this Network Interface support IP Forwarding? Defaults to false. + EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` + + // One or more ip_configuration blocks as defined above. + IPConfiguration []IPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` + + // The Name which should be used for this Network Interface. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of a Network Security Group which should be assigned to this Network Interface. + NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"` + + // Is this the Primary IP Configuration? + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` +} + type NetworkInterfaceObservation struct { // A list of IP Addresses of DNS Servers which should be assigned to the Network Interface. @@ -1033,12 +1459,12 @@ type NetworkInterfaceParameters struct { EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` // One or more ip_configuration blocks as defined above. - // +kubebuilder:validation:Required - IPConfiguration []IPConfigurationParameters `json:"ipConfiguration" tf:"ip_configuration,omitempty"` + // +kubebuilder:validation:Optional + IPConfiguration []IPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The Name which should be used for this Network Interface. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of a Network Security Group which should be assigned to this Network Interface. // +kubebuilder:validation:Optional @@ -1049,6 +1475,15 @@ type NetworkInterfaceParameters struct { Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` } +type OsDiskDiffDiskSettingsInitParameters struct { + + // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. + Option *string `json:"option,omitempty" tf:"option,omitempty"` + + // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. + Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` +} + type OsDiskDiffDiskSettingsObservation struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. @@ -1061,14 +1496,23 @@ type OsDiskDiffDiskSettingsObservation struct { type OsDiskDiffDiskSettingsParameters struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Option *string `json:"option" tf:"option,omitempty"` + // +kubebuilder:validation:Optional + Option *string `json:"option,omitempty" tf:"option,omitempty"` // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } +type ProtectedSettingsFromKeyVaultInitParameters struct { + + // The URL to the Key Vault Secret which stores the protected settings. + SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` + + // The ID of the source Key Vault. + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + type ProtectedSettingsFromKeyVaultObservation struct { // The URL to the Key Vault Secret which stores the protected settings. @@ -1081,12 +1525,33 @@ type ProtectedSettingsFromKeyVaultObservation struct { type ProtectedSettingsFromKeyVaultParameters struct { // The URL to the Key Vault Secret which stores the protected settings. - // +kubebuilder:validation:Required - SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"` + // +kubebuilder:validation:Optional + SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` // The ID of the source Key Vault. - // +kubebuilder:validation:Required - SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"` + // +kubebuilder:validation:Optional + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + +type PublicIPAddressInitParameters struct { + + // The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. + DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"` + + // One or more ip_tag blocks as defined above. Changing this forces a new resource to be created. + IPTag []IPTagInitParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"` + + // The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // The Name of the Public IP Address Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created. + PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"` + + // Specifies the version of the image used to create the virtual machines. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type PublicIPAddressObservation struct { @@ -1125,8 +1590,8 @@ type PublicIPAddressParameters struct { IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // The Name of the Public IP Address Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -1137,6 +1602,27 @@ type PublicIPAddressParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type RollingUpgradePolicyInitParameters struct { + + // Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false. + CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"` + + // The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. + MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent,omitempty" tf:"max_batch_instance_percent,omitempty"` + + // The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. + MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent,omitempty" tf:"max_unhealthy_instance_percent,omitempty"` + + // The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. + MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent,omitempty" tf:"max_unhealthy_upgraded_instance_percent,omitempty"` + + // The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format. + PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches,omitempty" tf:"pause_time_between_batches,omitempty"` + + // Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false. + PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"` +} + type RollingUpgradePolicyObservation struct { // Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false. @@ -1165,26 +1651,35 @@ type RollingUpgradePolicyParameters struct { CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"` // The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. - // +kubebuilder:validation:Required - MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent" tf:"max_batch_instance_percent,omitempty"` + // +kubebuilder:validation:Optional + MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent,omitempty" tf:"max_batch_instance_percent,omitempty"` // The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. - // +kubebuilder:validation:Required - MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent" tf:"max_unhealthy_instance_percent,omitempty"` + // +kubebuilder:validation:Optional + MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent,omitempty" tf:"max_unhealthy_instance_percent,omitempty"` // The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. - // +kubebuilder:validation:Required - MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent" tf:"max_unhealthy_upgraded_instance_percent,omitempty"` + // +kubebuilder:validation:Optional + MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent,omitempty" tf:"max_unhealthy_upgraded_instance_percent,omitempty"` // The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format. - // +kubebuilder:validation:Required - PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches" tf:"pause_time_between_batches,omitempty"` + // +kubebuilder:validation:Optional + PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches,omitempty" tf:"pause_time_between_batches,omitempty"` // Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false. // +kubebuilder:validation:Optional PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"` } +type ScaleInInitParameters struct { + + // Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false. + ForceDeletionEnabled *bool `json:"forceDeletionEnabled,omitempty" tf:"force_deletion_enabled,omitempty"` + + // The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc. + Rule *string `json:"rule,omitempty" tf:"rule,omitempty"` +} + type ScaleInObservation struct { // Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false. @@ -1205,6 +1700,12 @@ type ScaleInParameters struct { Rule *string `json:"rule,omitempty" tf:"rule,omitempty"` } +type SecretCertificateInitParameters struct { + + // The Secret URL of a Key Vault Certificate. + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type SecretCertificateObservation struct { // The Secret URL of a Key Vault Certificate. @@ -1214,8 +1715,17 @@ type SecretCertificateObservation struct { type SecretCertificateParameters struct { // The Secret URL of a Key Vault Certificate. - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + +type SpotRestoreInitParameters struct { + + // Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are true or false. Defaults to false. Changing this forces a new resource to be created. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between 15 minutes and 120 minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to 90 minutes (e.g. PT1H30M). Changing this forces a new resource to be created. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } type SpotRestoreObservation struct { @@ -1238,6 +1748,15 @@ type SpotRestoreParameters struct { Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } +type TerminateNotificationInitParameters struct { + + // Should the terminate notification be enabled on this Virtual Machine Scale Set? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` +} + type TerminateNotificationObservation struct { // Should the terminate notification be enabled on this Virtual Machine Scale Set? @@ -1250,8 +1769,8 @@ type TerminateNotificationObservation struct { type TerminateNotificationParameters struct { // Should the terminate notification be enabled on this Virtual Machine Scale Set? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. // +kubebuilder:validation:Optional @@ -1262,6 +1781,18 @@ type TerminateNotificationParameters struct { type LinuxVirtualMachineScaleSetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinuxVirtualMachineScaleSetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinuxVirtualMachineScaleSetInitParameters `json:"initProvider,omitempty"` } // LinuxVirtualMachineScaleSetStatus defines the observed state of LinuxVirtualMachineScaleSet. @@ -1282,11 +1813,11 @@ type LinuxVirtualMachineScaleSetStatus struct { type LinuxVirtualMachineScaleSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminUsername)",message="adminUsername is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.networkInterface)",message="networkInterface is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osDisk)",message="osDisk is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adminUsername) || has(self.initProvider.adminUsername)",message="adminUsername is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.networkInterface) || has(self.initProvider.networkInterface)",message="networkInterface is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.osDisk) || has(self.initProvider.osDisk)",message="osDisk is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec LinuxVirtualMachineScaleSetSpec `json:"spec"` Status LinuxVirtualMachineScaleSetStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_manageddisk_types.go b/apis/compute/v1beta1/zz_manageddisk_types.go index 3e93193d2..6269068ed 100755 --- a/apis/compute/v1beta1/zz_manageddisk_types.go +++ b/apis/compute/v1beta1/zz_manageddisk_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DiskEncryptionKeyInitParameters struct { + + // The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource. + SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` + + // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + type DiskEncryptionKeyObservation struct { // The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource. @@ -25,12 +34,23 @@ type DiskEncryptionKeyObservation struct { type DiskEncryptionKeyParameters struct { // The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource. - // +kubebuilder:validation:Required - SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"` + // +kubebuilder:validation:Optional + SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. - // +kubebuilder:validation:Required - SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"` + // +kubebuilder:validation:Optional + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + +type EncryptionSettingsInitParameters struct { + + // A disk_encryption_key block as defined above. + DiskEncryptionKey []DiskEncryptionKeyInitParameters `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key,omitempty"` + + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A key_encryption_key block as defined below. + KeyEncryptionKey []KeyEncryptionKeyInitParameters `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"` } type EncryptionSettingsObservation struct { @@ -58,6 +78,15 @@ type EncryptionSettingsParameters struct { KeyEncryptionKey []KeyEncryptionKeyParameters `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"` } +type KeyEncryptionKeyInitParameters struct { + + // The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource. + KeyURL *string `json:"keyUrl,omitempty" tf:"key_url,omitempty"` + + // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + type KeyEncryptionKeyObservation struct { // The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource. @@ -70,12 +99,105 @@ type KeyEncryptionKeyObservation struct { type KeyEncryptionKeyParameters struct { // The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource. - // +kubebuilder:validation:Required - KeyURL *string `json:"keyUrl" tf:"key_url,omitempty"` + // +kubebuilder:validation:Optional + KeyURL *string `json:"keyUrl,omitempty" tf:"key_url,omitempty"` // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. - // +kubebuilder:validation:Required - SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"` + // +kubebuilder:validation:Optional + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + +type ManagedDiskInitParameters struct { + + // The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include: + CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` + + // The ID of the disk access resource for using private endpoints on disks. + DiskAccessID *string `json:"diskAccessId,omitempty" tf:"disk_access_id,omitempty"` + + // The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk. Conflicts with secure_vm_disk_encryption_set_id. + DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` + + // The number of IOPS allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. One operation can transfer between 4k and 256k bytes. + DiskIopsReadOnly *float64 `json:"diskIopsReadOnly,omitempty" tf:"disk_iops_read_only,omitempty"` + + // The number of IOPS allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. One operation can transfer between 4k and 256k bytes. + DiskIopsReadWrite *float64 `json:"diskIopsReadWrite,omitempty" tf:"disk_iops_read_write,omitempty"` + + // The bandwidth allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. MBps means millions of bytes per second. + DiskMbpsReadOnly *float64 `json:"diskMbpsReadOnly,omitempty" tf:"disk_mbps_read_only,omitempty"` + + // The bandwidth allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. MBps means millions of bytes per second. + DiskMbpsReadWrite *float64 `json:"diskMbpsReadWrite,omitempty" tf:"disk_mbps_read_write,omitempty"` + + // Specifies the size of the managed disk to create in gigabytes. If create_option is Copy or FromImage, then the value must be equal to or greater than the source's size. The size can only be increased. + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Managed Disk should exist. Changing this forces a new Managed Disk to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // A encryption_settings block as defined below. + EncryptionSettings []EncryptionSettingsInitParameters `json:"encryptionSettings,omitempty" tf:"encryption_settings,omitempty"` + + // ID of a Gallery Image Version to copy when create_option is FromImage. This field cannot be specified if image_reference_id is specified. Changing this forces a new resource to be created. + GalleryImageReferenceID *string `json:"galleryImageReferenceId,omitempty" tf:"gallery_image_reference_id,omitempty"` + + // The HyperV Generation of the Disk when the source of an Import or Copy operation targets a source that contains an operating system. Possible values are V1 and V2. For ImportSecure it must be set to V2. Changing this forces a new resource to be created. + HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"` + + // ID of an existing platform/marketplace disk image to copy when create_option is FromImage. This field cannot be specified if gallery_image_reference_id is specified. Changing this forces a new resource to be created. + ImageReferenceID *string `json:"imageReferenceId,omitempty" tf:"image_reference_id,omitempty"` + + // Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Logical Sector Size. Possible values are: 512 and 4096. Defaults to 4096. Changing this forces a new resource to be created. + LogicalSectorSize *float64 `json:"logicalSectorSize,omitempty" tf:"logical_sector_size,omitempty"` + + // The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time. + MaxShares *float64 `json:"maxShares,omitempty" tf:"max_shares,omitempty"` + + // Policy for accessing the disk via network. Allowed values are AllowAll, AllowPrivate, and DenyAll. + NetworkAccessPolicy *string `json:"networkAccessPolicy,omitempty" tf:"network_access_policy,omitempty"` + + // Specifies if On-Demand Bursting is enabled for the Managed Disk. + OnDemandBurstingEnabled *bool `json:"onDemandBurstingEnabled,omitempty" tf:"on_demand_bursting_enabled,omitempty"` + + // Specify a value when the source of an Import, ImportSecure or Copy operation targets a source that contains an operating system. Valid values are Linux or Windows. + OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` + + // Whether it is allowed to access the disk via public network. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created. + SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"` + + // Security Type of the Managed Disk when it is used for a Confidential VM. Possible values are ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey, ConfidentialVM_DiskEncryptedWithPlatformKey and ConfidentialVM_DiskEncryptedWithCustomerKey. Changing this forces a new resource to be created. + SecurityType *string `json:"securityType,omitempty" tf:"security_type,omitempty"` + + // URI to a valid VHD file to be used when create_option is Import or ImportSecure. Changing this forces a new resource to be created. + SourceURI *string `json:"sourceUri,omitempty" tf:"source_uri,omitempty"` + + // The ID of the Storage Account where the source_uri is located. Required when create_option is set to Import or ImportSecure. Changing this forces a new resource to be created. + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` + + // The type of storage to use for the managed disk. Possible values are Standard_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS, StandardSSD_LRS or UltraSSD_LRS. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The disk performance tier to use. Possible values are documented here. This feature is currently supported only for premium SSDs. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` + + // Specifies if Trusted Launch is enabled for the Managed Disk. Changing this forces a new resource to be created. + TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"` + + // Specifies the size of the managed disk to create in bytes. Required when create_option is Upload. The value must be equal to the source disk to be copied in bytes. Source disk size could be calculated with ls -l or wc -c. More information can be found at Copy a managed disk. Changing this forces a new resource to be created. + UploadSizeBytes *float64 `json:"uploadSizeBytes,omitempty" tf:"upload_size_bytes,omitempty"` + + // Specifies the Availability Zone in which this Managed Disk should be located. Changing this property forces a new resource to be created. + Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } type ManagedDiskObservation struct { @@ -334,6 +456,18 @@ type ManagedDiskParameters struct { type ManagedDiskSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagedDiskParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagedDiskInitParameters `json:"initProvider,omitempty"` } // ManagedDiskStatus defines the observed state of ManagedDisk. @@ -354,9 +488,9 @@ type ManagedDiskStatus struct { type ManagedDisk struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.createOption)",message="createOption is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountType)",message="storageAccountType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.createOption) || has(self.initProvider.createOption)",message="createOption is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageAccountType) || has(self.initProvider.storageAccountType)",message="storageAccountType is a required parameter" Spec ManagedDiskSpec `json:"spec"` Status ManagedDiskStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_manageddisksastoken_types.go b/apis/compute/v1beta1/zz_manageddisksastoken_types.go index 61c285bc8..aeb96d658 100755 --- a/apis/compute/v1beta1/zz_manageddisksastoken_types.go +++ b/apis/compute/v1beta1/zz_manageddisksastoken_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagedDiskSASTokenInitParameters struct { + + // The level of access required on the disk. Supported are Read, Write. Changing this forces a new resource to be created. + AccessLevel *string `json:"accessLevel,omitempty" tf:"access_level,omitempty"` + + // The duration for which the export should be allowed. Should be between 30 & 4294967295 seconds. Changing this forces a new resource to be created. + DurationInSeconds *float64 `json:"durationInSeconds,omitempty" tf:"duration_in_seconds,omitempty"` +} + type ManagedDiskSASTokenObservation struct { // The level of access required on the disk. Supported are Read, Write. Changing this forces a new resource to be created. @@ -57,6 +66,18 @@ type ManagedDiskSASTokenParameters struct { type ManagedDiskSASTokenSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagedDiskSASTokenParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagedDiskSASTokenInitParameters `json:"initProvider,omitempty"` } // ManagedDiskSASTokenStatus defines the observed state of ManagedDiskSASToken. @@ -77,8 +98,8 @@ type ManagedDiskSASTokenStatus struct { type ManagedDiskSASToken struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.accessLevel)",message="accessLevel is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.durationInSeconds)",message="durationInSeconds is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.accessLevel) || has(self.initProvider.accessLevel)",message="accessLevel is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.durationInSeconds) || has(self.initProvider.durationInSeconds)",message="durationInSeconds is a required parameter" Spec ManagedDiskSASTokenSpec `json:"spec"` Status ManagedDiskSASTokenStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_orchestratedvirtualmachinescaleset_types.go b/apis/compute/v1beta1/zz_orchestratedvirtualmachinescaleset_types.go index 9b6e17585..ee56deb8e 100755 --- a/apis/compute/v1beta1/zz_orchestratedvirtualmachinescaleset_types.go +++ b/apis/compute/v1beta1/zz_orchestratedvirtualmachinescaleset_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ExtensionProtectedSettingsFromKeyVaultInitParameters struct { + + // The URL to the Key Vault Secret which stores the protected settings. + SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` + + // The ID of the source Key Vault. + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + type ExtensionProtectedSettingsFromKeyVaultObservation struct { // The URL to the Key Vault Secret which stores the protected settings. @@ -25,12 +34,36 @@ type ExtensionProtectedSettingsFromKeyVaultObservation struct { type ExtensionProtectedSettingsFromKeyVaultParameters struct { // The URL to the Key Vault Secret which stores the protected settings. - // +kubebuilder:validation:Required - SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"` + // +kubebuilder:validation:Optional + SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` // The ID of the source Key Vault. - // +kubebuilder:validation:Required - SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"` + // +kubebuilder:validation:Optional + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + +type IPConfigurationPublicIPAddressInitParameters struct { + + // The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. Valid values must be between 1 and 26 characters long, start with a lower case letter, end with a lower case letter or number and contains only a-z, 0-9 and hyphens. + DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"` + + // One or more ip_tag blocks as defined above. Changing this forces a new resource to be created. + IPTag []PublicIPAddressIPTagInitParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"` + + // The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // The Name of the Public IP Address Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created. + PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"` + + // The name of the SKU to be used by this Orcestrated Virtual Machine Scale Set. Valid values include: any of the General purpose, Compute optimized, Memory optimized, Storage optimized, GPU optimized, FPGA optimized, High performance, or Previous generation virtual machine SKUs. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // Specifies the version of the image used to create the virtual machines. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type IPConfigurationPublicIPAddressObservation struct { @@ -72,8 +105,8 @@ type IPConfigurationPublicIPAddressParameters struct { IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // The Name of the Public IP Address Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -88,6 +121,15 @@ type IPConfigurationPublicIPAddressParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type LinuxConfigurationAdminSSHKeyInitParameters struct { + + // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. + PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` + + // The Username for which this Public SSH Key should be configured. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type LinuxConfigurationAdminSSHKeyObservation struct { // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. @@ -100,12 +142,39 @@ type LinuxConfigurationAdminSSHKeyObservation struct { type LinuxConfigurationAdminSSHKeyParameters struct { // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. - // +kubebuilder:validation:Required - PublicKey *string `json:"publicKey" tf:"public_key,omitempty"` + // +kubebuilder:validation:Optional + PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` // The Username for which this Public SSH Key should be configured. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type LinuxConfigurationInitParameters struct { + + // A admin_ssh_key block as documented below. + AdminSSHKey []LinuxConfigurationAdminSSHKeyInitParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"` + + // The username of the local administrator on each Orchestrated Virtual Machine Scale Set instance. Changing this forces a new resource to be created. + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` + + // The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created. + ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"` + + // When an admin_password is specified disable_password_authentication must be set to false. Defaults to true. + DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"` + + // Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Orchestrated Virtual Machine Scale Set. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault. + PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"` + + // Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation. + PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"` + + // Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created. + ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` + + // One or more secret blocks as defined below. + Secret []LinuxConfigurationSecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"` } type LinuxConfigurationObservation struct { @@ -146,8 +215,8 @@ type LinuxConfigurationParameters struct { AdminSSHKey []LinuxConfigurationAdminSSHKeyParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"` // The username of the local administrator on each Orchestrated Virtual Machine Scale Set instance. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - AdminUsername *string `json:"adminUsername" tf:"admin_username,omitempty"` + // +kubebuilder:validation:Optional + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -174,6 +243,12 @@ type LinuxConfigurationParameters struct { Secret []LinuxConfigurationSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"` } +type LinuxConfigurationSecretCertificateInitParameters struct { + + // The Secret URL of a Key Vault Certificate. + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type LinuxConfigurationSecretCertificateObservation struct { // The Secret URL of a Key Vault Certificate. @@ -183,8 +258,17 @@ type LinuxConfigurationSecretCertificateObservation struct { type LinuxConfigurationSecretCertificateParameters struct { // The Secret URL of a Key Vault Certificate. - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + +type LinuxConfigurationSecretInitParameters struct { + + // One or more certificate blocks as defined below. + Certificate []LinuxConfigurationSecretCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` + + // The ID of the Key Vault from which all Secrets should be sourced. + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } type LinuxConfigurationSecretObservation struct { @@ -199,12 +283,36 @@ type LinuxConfigurationSecretObservation struct { type LinuxConfigurationSecretParameters struct { // One or more certificate blocks as defined below. - // +kubebuilder:validation:Required - Certificate []LinuxConfigurationSecretCertificateParameters `json:"certificate" tf:"certificate,omitempty"` + // +kubebuilder:validation:Optional + Certificate []LinuxConfigurationSecretCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. - // +kubebuilder:validation:Required - KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` +} + +type NetworkInterfaceIPConfigurationInitParameters struct { + + // A list of Backend Address Pools IDs from a Application Gateway which this Orchestrated Virtual Machine Scale Set should be connected to. + ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"` + + // A list of Application Security Group IDs which this Orchestrated Virtual Machine Scale Set should be connected to. + ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"` + + // A list of Backend Address Pools IDs from a Load Balancer which this Orchestrated Virtual Machine Scale Set should be connected to. + LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"` + + // The Name of the Public IP Address Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this the Primary IP Configuration? Possible values are true and false. Defaults to false. + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` + + // A public_ip_address block as defined below. + PublicIPAddress []IPConfigurationPublicIPAddressInitParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"` + + // Specifies the version of the image used to create the virtual machines. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type NetworkInterfaceIPConfigurationObservation struct { @@ -249,8 +357,8 @@ type NetworkInterfaceIPConfigurationParameters struct { LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"` // The Name of the Public IP Address Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this the Primary IP Configuration? Possible values are true and false. Defaults to false. // +kubebuilder:validation:Optional @@ -279,6 +387,12 @@ type NetworkInterfaceIPConfigurationParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters struct { + + // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Orchestrated Virtual Machine Scale Set? Defaults to false. Changing this forces a new resource to be created. + UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` +} + type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation struct { // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Orchestrated Virtual Machine Scale Set? Defaults to false. Changing this forces a new resource to be created. @@ -292,6 +406,15 @@ type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters struct { UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } +type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters struct { + + // Should the automatic instance repair be enabled on this Orchestrated Virtual Machine Scale Set? Possible values are true and false. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Amount of time for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. Possible values are between 30 and 90 minutes. Defaults to 30 minutes. The time duration should be specified in ISO 8601 format (e.g. PT30M to PT90M). + GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"` +} + type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation struct { // Should the automatic instance repair be enabled on this Orchestrated Virtual Machine Scale Set? Possible values are true and false. @@ -304,14 +427,20 @@ type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation struct type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters struct { // Should the automatic instance repair be enabled on this Orchestrated Virtual Machine Scale Set? Possible values are true and false. - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Amount of time for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. Possible values are between 30 and 90 minutes. Defaults to 30 minutes. The time duration should be specified in ISO 8601 format (e.g. PT30M to PT90M). // +kubebuilder:validation:Optional GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"` } +type OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters struct { + + // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. By including a boot_diagnostics block without passing the storage_account_uri field will cause the API to utilize a Managed Storage Account to store the Boot Diagnostics output. + StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` +} + type OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation struct { // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. By including a boot_diagnostics block without passing the storage_account_uri field will cause the API to utilize a Managed Storage Account to store the Boot Diagnostics output. @@ -325,6 +454,34 @@ type OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters struct { StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } +type OrchestratedVirtualMachineScaleSetDataDiskInitParameters struct { + + // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` + + // The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks). + CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` + + // The ID of the Disk Encryption Set which should be used to encrypt the Data Disk. Changing this forces a new resource to be created. + DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` + + // The size of the Data Disk which should be created. + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` + + // The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. + Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` + + // The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"` + + UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"` + + // Specifies if Write Accelerator is enabled on the Data Disk. Defaults to false. + WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` +} + type OrchestratedVirtualMachineScaleSetDataDiskObservation struct { // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. @@ -356,8 +513,8 @@ type OrchestratedVirtualMachineScaleSetDataDiskObservation struct { type OrchestratedVirtualMachineScaleSetDataDiskParameters struct { // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. - // +kubebuilder:validation:Required - Caching *string `json:"caching" tf:"caching,omitempty"` + // +kubebuilder:validation:Optional + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks). // +kubebuilder:validation:Optional @@ -368,16 +525,16 @@ type OrchestratedVirtualMachineScaleSetDataDiskParameters struct { DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The size of the Data Disk which should be created. - // +kubebuilder:validation:Required - DiskSizeGb *float64 `json:"diskSizeGb" tf:"disk_size_gb,omitempty"` + // +kubebuilder:validation:Optional + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. - // +kubebuilder:validation:Required - Lun *float64 `json:"lun" tf:"lun,omitempty"` + // +kubebuilder:validation:Optional + Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` // The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS. - // +kubebuilder:validation:Required - StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // +kubebuilder:validation:Optional UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"` @@ -390,6 +547,39 @@ type OrchestratedVirtualMachineScaleSetDataDiskParameters struct { WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } +type OrchestratedVirtualMachineScaleSetExtensionInitParameters struct { + + // Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true. + AutoUpgradeMinorVersionEnabled *bool `json:"autoUpgradeMinorVersionEnabled,omitempty" tf:"auto_upgrade_minor_version_enabled,omitempty"` + + // An ordered list of Extension names which Orchestrated Virtual Machine Scale Set should provision after VM creation. + ExtensionsToProvisionAfterVMCreation []*string `json:"extensionsToProvisionAfterVmCreation,omitempty" tf:"extensions_to_provision_after_vm_creation,omitempty"` + + // Should failures from the extension be suppressed? Possible values are true or false. + FailureSuppressionEnabled *bool `json:"failureSuppressionEnabled,omitempty" tf:"failure_suppression_enabled,omitempty"` + + // A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed. + ForceExtensionExecutionOnChange *string `json:"forceExtensionExecutionOnChange,omitempty" tf:"force_extension_execution_on_change,omitempty"` + + // The name for the Virtual Machine Scale Set Extension. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A protected_settings_from_key_vault block as defined below. + ProtectedSettingsFromKeyVault []ExtensionProtectedSettingsFromKeyVaultInitParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"` + + // Specifies the Publisher of the Extension. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // A JSON String which specifies Settings for the Extension. + Settings *string `json:"settings,omitempty" tf:"settings,omitempty"` + + // Specifies the Type of the Extension. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // Specifies the version of the extension to use, available versions can be found using the Azure CLI. + TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"` +} + type OrchestratedVirtualMachineScaleSetExtensionObservation struct { // Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true. @@ -437,57 +627,186 @@ type OrchestratedVirtualMachineScaleSetExtensionParameters struct { // +kubebuilder:validation:Optional FailureSuppressionEnabled *bool `json:"failureSuppressionEnabled,omitempty" tf:"failure_suppression_enabled,omitempty"` - // A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed. - // +kubebuilder:validation:Optional - ForceExtensionExecutionOnChange *string `json:"forceExtensionExecutionOnChange,omitempty" tf:"force_extension_execution_on_change,omitempty"` + // A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed. + // +kubebuilder:validation:Optional + ForceExtensionExecutionOnChange *string `json:"forceExtensionExecutionOnChange,omitempty" tf:"force_extension_execution_on_change,omitempty"` + + // The name for the Virtual Machine Scale Set Extension. + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A protected_settings_from_key_vault block as defined below. + // +kubebuilder:validation:Optional + ProtectedSettingsFromKeyVault []ExtensionProtectedSettingsFromKeyVaultParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"` + + // A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension. + // +kubebuilder:validation:Optional + ProtectedSettingsSecretRef *v1.SecretKeySelector `json:"protectedSettingsSecretRef,omitempty" tf:"-"` + + // Specifies the Publisher of the Extension. + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // A JSON String which specifies Settings for the Extension. + // +kubebuilder:validation:Optional + Settings *string `json:"settings,omitempty" tf:"settings,omitempty"` + + // Specifies the Type of the Extension. + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // Specifies the version of the extension to use, available versions can be found using the Azure CLI. + // +kubebuilder:validation:Optional + TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"` +} + +type OrchestratedVirtualMachineScaleSetIdentityInitParameters struct { + + // Specifies a list of User Managed Identity IDs to be assigned to this Orchestrated Windows Virtual Machine Scale Set. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The type of Managed Identity that should be configured on this Orchestrated Windows Virtual Machine Scale Set. Only possible value is UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type OrchestratedVirtualMachineScaleSetIdentityObservation struct { + + // Specifies a list of User Managed Identity IDs to be assigned to this Orchestrated Windows Virtual Machine Scale Set. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The type of Managed Identity that should be configured on this Orchestrated Windows Virtual Machine Scale Set. Only possible value is UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type OrchestratedVirtualMachineScaleSetIdentityParameters struct { + + // Specifies a list of User Managed Identity IDs to be assigned to this Orchestrated Windows Virtual Machine Scale Set. + // +kubebuilder:validation:Optional + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The type of Managed Identity that should be configured on this Orchestrated Windows Virtual Machine Scale Set. Only possible value is UserAssigned. + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type OrchestratedVirtualMachineScaleSetInitParameters struct { + + // An additional_capabilities block as defined below. + AdditionalCapabilities []OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"` + + // An automatic_instance_repair block as defined below. + AutomaticInstanceRepair []OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"` + + // A boot_diagnostics block as defined below. + BootDiagnostics []OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"` + + // Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created. + CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` + + // One or more data_disk blocks as defined below. + DataDisk []OrchestratedVirtualMachineScaleSetDataDiskInitParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"` + + // Should disks attached to this Virtual Machine Scale Set be encrypted by enabling Encryption at Host? + EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` + + // The Policy which should be used Virtual Machines are Evicted from the Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` + + // One or more extension blocks as defined below + Extension []OrchestratedVirtualMachineScaleSetExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"` + + // Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Orchestrated Virtual Machine Scale Set to be created. + ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"` + + // Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). + ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"` + + // An identity block as defined below. + Identity []OrchestratedVirtualMachineScaleSetIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The number of Virtual Machines in the Orcestrated Virtual Machine Scale Set. + Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"` + + // Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Orchestrated Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // The Azure location where the Orchestrated Virtual Machine Scale Set should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The maximum price you're willing to pay for each Orchestrated Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in the Orchestrated Scale Set should not be evicted for price reasons. + MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"` + + // One or more network_interface blocks as defined below. + NetworkInterface []OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"` + + // An os_disk block as defined below. + OsDisk []OrchestratedVirtualMachineScaleSetOsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` + + // An os_profile block as defined below. + OsProfile []OsProfileInitParameters `json:"osProfile,omitempty" tf:"os_profile,omitempty"` + + // A plan block as documented below. Changing this forces a new resource to be created. + Plan []OrchestratedVirtualMachineScaleSetPlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"` + + // Specifies the number of fault domains that are used by this Orchestrated Virtual Machine Scale Set. Changing this forces a new resource to be created. + PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"` + + // The Priority of this Orchestrated Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource. + Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` + + // a priority_mix block as defined below + PriorityMix []PriorityMixInitParameters `json:"priorityMix,omitempty" tf:"priority_mix,omitempty"` + + // The ID of the Proximity Placement Group which the Orchestrated Virtual Machine should be assigned to. Changing this forces a new resource to be created. + ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` + + // Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Possible values are true or false. + SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"` - // The name for the Virtual Machine Scale Set Extension. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // The name of the SKU to be used by this Orcestrated Virtual Machine Scale Set. Valid values include: any of the General purpose, Compute optimized, Memory optimized, Storage optimized, GPU optimized, FPGA optimized, High performance, or Previous generation virtual machine SKUs. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` - // A protected_settings_from_key_vault block as defined below. - // +kubebuilder:validation:Optional - ProtectedSettingsFromKeyVault []ExtensionProtectedSettingsFromKeyVaultParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"` + // The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs. + SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"` - // A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension. - // +kubebuilder:validation:Optional - ProtectedSettingsSecretRef *v1.SecretKeySelector `json:"protectedSettingsSecretRef,omitempty" tf:"-"` + // A source_image_reference block as defined below. + SourceImageReference []OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"` - // Specifies the Publisher of the Extension. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // A mapping of tags which should be assigned to this Orchestrated Virtual Machine Scale Set. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` - // A JSON String which specifies Settings for the Extension. - // +kubebuilder:validation:Optional - Settings *string `json:"settings,omitempty" tf:"settings,omitempty"` + // A termination_notification block as defined below. + TerminationNotification []OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"` - // Specifies the Type of the Extension. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created. + ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"` - // Specifies the version of the extension to use, available versions can be found using the Azure CLI. - // +kubebuilder:validation:Required - TypeHandlerVersion *string `json:"typeHandlerVersion" tf:"type_handler_version,omitempty"` + // Specifies a list of Availability Zones in which this Orchestrated Virtual Machine should be located. Changing this forces a new Orchestrated Virtual Machine to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } -type OrchestratedVirtualMachineScaleSetIdentityObservation struct { +type OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters struct { - // Specifies a list of User Managed Identity IDs to be assigned to this Orchestrated Windows Virtual Machine Scale Set. - IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + // A list of IP Addresses of DNS Servers which should be assigned to the Network Interface. + DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` - // The type of Managed Identity that should be configured on this Orchestrated Windows Virtual Machine Scale Set. Only possible value is UserAssigned. - Type *string `json:"type,omitempty" tf:"type,omitempty"` -} + // Does this Network Interface support Accelerated Networking? Possible values are true and false. Defaults to false. + EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"` -type OrchestratedVirtualMachineScaleSetIdentityParameters struct { + // Does this Network Interface support IP Forwarding? Possible values are true and false. Defaults to false. + EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` - // Specifies a list of User Managed Identity IDs to be assigned to this Orchestrated Windows Virtual Machine Scale Set. - // +kubebuilder:validation:Required - IdentityIds []*string `json:"identityIds" tf:"identity_ids,omitempty"` + // One or more ip_configuration blocks as defined above. + IPConfiguration []NetworkInterfaceIPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` - // The type of Managed Identity that should be configured on this Orchestrated Windows Virtual Machine Scale Set. Only possible value is UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // The Name which should be used for this Network Interface. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of a Network Security Group which should be assigned to this Network Interface. + NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"` + + // Is this the Primary IP Configuration? Possible values are true and false. Defaults to false. + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` } type OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation struct { @@ -529,12 +848,12 @@ type OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters struct { EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` // One or more ip_configuration blocks as defined above. - // +kubebuilder:validation:Required - IPConfiguration []NetworkInterfaceIPConfigurationParameters `json:"ipConfiguration" tf:"ip_configuration,omitempty"` + // +kubebuilder:validation:Optional + IPConfiguration []NetworkInterfaceIPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The Name which should be used for this Network Interface. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of a Network Security Group which should be assigned to this Network Interface. // +kubebuilder:validation:Optional @@ -650,6 +969,15 @@ type OrchestratedVirtualMachineScaleSetObservation struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters struct { + + // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. + Option *string `json:"option,omitempty" tf:"option,omitempty"` + + // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. + Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` +} + type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. @@ -662,14 +990,35 @@ type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation struct type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Option *string `json:"option" tf:"option,omitempty"` + // +kubebuilder:validation:Optional + Option *string `json:"option,omitempty" tf:"option,omitempty"` // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } +type OrchestratedVirtualMachineScaleSetOsDiskInitParameters struct { + + // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` + + // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. + DiffDiskSettings []OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"` + + // The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Changing this forces a new resource to be created. + DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` + + // The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from. + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` + + // The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + // Specifies if Write Accelerator is enabled on the OS Disk. Defaults to false. + WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` +} + type OrchestratedVirtualMachineScaleSetOsDiskObservation struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. @@ -694,8 +1043,8 @@ type OrchestratedVirtualMachineScaleSetOsDiskObservation struct { type OrchestratedVirtualMachineScaleSetOsDiskParameters struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. - // +kubebuilder:validation:Required - Caching *string `json:"caching" tf:"caching,omitempty"` + // +kubebuilder:validation:Optional + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -710,8 +1059,8 @@ type OrchestratedVirtualMachineScaleSetOsDiskParameters struct { DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Specifies if Write Accelerator is enabled on the OS Disk. Defaults to false. // +kubebuilder:validation:Optional @@ -862,6 +1211,18 @@ type OrchestratedVirtualMachineScaleSetParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type OrchestratedVirtualMachineScaleSetPlanInitParameters struct { + + // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the product of the image from the marketplace. Changing this forces a new resource to be created. + Product *string `json:"product,omitempty" tf:"product,omitempty"` + + // Specifies the publisher of the image. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + type OrchestratedVirtualMachineScaleSetPlanObservation struct { // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. @@ -877,16 +1238,31 @@ type OrchestratedVirtualMachineScaleSetPlanObservation struct { type OrchestratedVirtualMachineScaleSetPlanParameters struct { // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the product of the image from the marketplace. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Product *string `json:"product" tf:"product,omitempty"` + // +kubebuilder:validation:Optional + Product *string `json:"product,omitempty" tf:"product,omitempty"` // Specifies the publisher of the image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + +type OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters struct { + + // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` + + // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // Specifies the SKU of the image used to create the virtual machines. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // Specifies the version of the image used to create the virtual machines. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation struct { @@ -907,20 +1283,29 @@ type OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation struct { type OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters struct { // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Offer *string `json:"offer" tf:"offer,omitempty"` + // +kubebuilder:validation:Optional + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // Specifies the SKU of the image used to create the virtual machines. - // +kubebuilder:validation:Required - Sku *string `json:"sku" tf:"sku,omitempty"` + // +kubebuilder:validation:Optional + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies the version of the image used to create the virtual machines. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters struct { + + // Should the termination notification be enabled on this Virtual Machine Scale Set? Possible values true or false + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } type OrchestratedVirtualMachineScaleSetTerminationNotificationObservation struct { @@ -935,14 +1320,23 @@ type OrchestratedVirtualMachineScaleSetTerminationNotificationObservation struct type OrchestratedVirtualMachineScaleSetTerminationNotificationParameters struct { // Should the termination notification be enabled on this Virtual Machine Scale Set? Possible values true or false - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } +type OsProfileInitParameters struct { + + // A linux_configuration block as documented below. + LinuxConfiguration []LinuxConfigurationInitParameters `json:"linuxConfiguration,omitempty" tf:"linux_configuration,omitempty"` + + // A windows_configuration block as documented below. + WindowsConfiguration []WindowsConfigurationInitParameters `json:"windowsConfiguration,omitempty" tf:"windows_configuration,omitempty"` +} + type OsProfileObservation struct { // A linux_configuration block as documented below. @@ -967,6 +1361,15 @@ type OsProfileParameters struct { WindowsConfiguration []WindowsConfigurationParameters `json:"windowsConfiguration,omitempty" tf:"windows_configuration,omitempty"` } +type PriorityMixInitParameters struct { + + // Specifies the base number of VMs of Regular priority that will be created before any VMs of priority Spot are created. Possible values are integers between 0 and 1000. Defaults to 0. + BaseRegularCount *float64 `json:"baseRegularCount,omitempty" tf:"base_regular_count,omitempty"` + + // Specifies the desired percentage of VM instances that are of Regular priority after the base count has been reached. Possible values are integers between 0 and 100. Defaults to 0. + RegularPercentageAboveBase *float64 `json:"regularPercentageAboveBase,omitempty" tf:"regular_percentage_above_base,omitempty"` +} + type PriorityMixObservation struct { // Specifies the base number of VMs of Regular priority that will be created before any VMs of priority Spot are created. Possible values are integers between 0 and 1000. Defaults to 0. @@ -987,6 +1390,15 @@ type PriorityMixParameters struct { RegularPercentageAboveBase *float64 `json:"regularPercentageAboveBase,omitempty" tf:"regular_percentage_above_base,omitempty"` } +type PublicIPAddressIPTagInitParameters struct { + + // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` + + // The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type PublicIPAddressIPTagObservation struct { // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. @@ -999,12 +1411,45 @@ type PublicIPAddressIPTagObservation struct { type PublicIPAddressIPTagParameters struct { // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Tag *string `json:"tag" tf:"tag,omitempty"` + // +kubebuilder:validation:Optional + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WindowsConfigurationInitParameters struct { + + // The username of the local administrator on each Orchestrated Virtual Machine Scale Set instance. Changing this forces a new resource to be created. + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` + + // The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created. + ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"` + + // Are automatic updates enabled for this Virtual Machine? Defaults to true. + EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"` + + // Should the VM be patched without requiring a reboot? Possible values are true or false. Defaults to false. For more information about hot patching please see the product documentation. + HotpatchingEnabled *bool `json:"hotpatchingEnabled,omitempty" tf:"hotpatching_enabled,omitempty"` + + // Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Orchestrated Virtual Machine Scale Set. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault. + PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"` + + // Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation. + PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"` + + // Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created. + ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` + + // One or more secret blocks as defined below. + Secret []WindowsConfigurationSecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"` + + // Specifies the time zone of the virtual machine, the possible values are defined here. + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` + + // One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created. + WinrmListener []WinrmListenerInitParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"` } type WindowsConfigurationObservation struct { @@ -1047,8 +1492,8 @@ type WindowsConfigurationParameters struct { AdminPasswordSecretRef v1.SecretKeySelector `json:"adminPasswordSecretRef" tf:"-"` // The username of the local administrator on each Orchestrated Virtual Machine Scale Set instance. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - AdminUsername *string `json:"adminUsername" tf:"admin_username,omitempty"` + // +kubebuilder:validation:Optional + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -1087,6 +1532,15 @@ type WindowsConfigurationParameters struct { WinrmListener []WinrmListenerParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"` } +type WindowsConfigurationSecretCertificateInitParameters struct { + + // The certificate store on the Virtual Machine where the certificate should be added. + Store *string `json:"store,omitempty" tf:"store,omitempty"` + + // The Secret URL of a Key Vault Certificate. + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type WindowsConfigurationSecretCertificateObservation struct { // The certificate store on the Virtual Machine where the certificate should be added. @@ -1099,12 +1553,21 @@ type WindowsConfigurationSecretCertificateObservation struct { type WindowsConfigurationSecretCertificateParameters struct { // The certificate store on the Virtual Machine where the certificate should be added. - // +kubebuilder:validation:Required - Store *string `json:"store" tf:"store,omitempty"` + // +kubebuilder:validation:Optional + Store *string `json:"store,omitempty" tf:"store,omitempty"` // The Secret URL of a Key Vault Certificate. - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + +type WindowsConfigurationSecretInitParameters struct { + + // One or more certificate blocks as defined below. + Certificate []WindowsConfigurationSecretCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` + + // The ID of the Key Vault from which all Secrets should be sourced. + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } type WindowsConfigurationSecretObservation struct { @@ -1119,12 +1582,21 @@ type WindowsConfigurationSecretObservation struct { type WindowsConfigurationSecretParameters struct { // One or more certificate blocks as defined below. - // +kubebuilder:validation:Required - Certificate []WindowsConfigurationSecretCertificateParameters `json:"certificate" tf:"certificate,omitempty"` + // +kubebuilder:validation:Optional + Certificate []WindowsConfigurationSecretCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. - // +kubebuilder:validation:Required - KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` +} + +type WinrmListenerInitParameters struct { + + // The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created. + CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"` + + // Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } type WinrmListenerObservation struct { @@ -1143,14 +1615,26 @@ type WinrmListenerParameters struct { CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"` // Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } // OrchestratedVirtualMachineScaleSetSpec defines the desired state of OrchestratedVirtualMachineScaleSet type OrchestratedVirtualMachineScaleSetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider OrchestratedVirtualMachineScaleSetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OrchestratedVirtualMachineScaleSetInitParameters `json:"initProvider,omitempty"` } // OrchestratedVirtualMachineScaleSetStatus defines the observed state of OrchestratedVirtualMachineScaleSet. @@ -1171,8 +1655,8 @@ type OrchestratedVirtualMachineScaleSetStatus struct { type OrchestratedVirtualMachineScaleSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.platformFaultDomainCount)",message="platformFaultDomainCount is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.platformFaultDomainCount) || has(self.initProvider.platformFaultDomainCount)",message="platformFaultDomainCount is a required parameter" Spec OrchestratedVirtualMachineScaleSetSpec `json:"spec"` Status OrchestratedVirtualMachineScaleSetStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_proximityplacementgroup_types.go b/apis/compute/v1beta1/zz_proximityplacementgroup_types.go index 4b7c53f9e..a741bd347 100755 --- a/apis/compute/v1beta1/zz_proximityplacementgroup_types.go +++ b/apis/compute/v1beta1/zz_proximityplacementgroup_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ProximityPlacementGroupInitParameters struct { + + // Specifies the supported sizes of Virtual Machines that can be created in the Proximity Placement Group. + AllowedVMSizes []*string `json:"allowedVmSizes,omitempty" tf:"allowed_vm_sizes,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the supported zone of the Proximity Placement Group. Changing this forces a new resource to be created. + Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` +} + type ProximityPlacementGroupObservation struct { // Specifies the supported sizes of Virtual Machines that can be created in the Proximity Placement Group. @@ -70,6 +85,18 @@ type ProximityPlacementGroupParameters struct { type ProximityPlacementGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ProximityPlacementGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ProximityPlacementGroupInitParameters `json:"initProvider,omitempty"` } // ProximityPlacementGroupStatus defines the observed state of ProximityPlacementGroup. @@ -90,7 +117,7 @@ type ProximityPlacementGroupStatus struct { type ProximityPlacementGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ProximityPlacementGroupSpec `json:"spec"` Status ProximityPlacementGroupStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_sharedimage_types.go b/apis/compute/v1beta1/zz_sharedimage_types.go index 70d053a70..c017b7a17 100755 --- a/apis/compute/v1beta1/zz_sharedimage_types.go +++ b/apis/compute/v1beta1/zz_sharedimage_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentifierInitParameters struct { + + // The Offer Name for this Shared Image. Changing this forces a new resource to be created. + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` + + // The Publisher Name for this Gallery Image. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` +} + type IdentifierObservation struct { // The Offer Name for this Shared Image. Changing this forces a new resource to be created. @@ -28,16 +40,28 @@ type IdentifierObservation struct { type IdentifierParameters struct { // The Offer Name for this Shared Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Offer *string `json:"offer" tf:"offer,omitempty"` + // +kubebuilder:validation:Optional + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // The Publisher Name for this Gallery Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Sku *string `json:"sku" tf:"sku,omitempty"` + // +kubebuilder:validation:Optional + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` +} + +type PurchasePlanInitParameters struct { + + // The Purchase Plan Name for this Shared Image. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Purchase Plan Product for this Gallery Image. Changing this forces a new resource to be created. + Product *string `json:"product,omitempty" tf:"product,omitempty"` + + // The Purchase Plan Publisher for this Gallery Image. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } type PurchasePlanObservation struct { @@ -55,8 +79,8 @@ type PurchasePlanObservation struct { type PurchasePlanParameters struct { // The Purchase Plan Name for this Shared Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Purchase Plan Product for this Gallery Image. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -67,6 +91,75 @@ type PurchasePlanParameters struct { Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } +type SharedImageInitParameters struct { + + // Specifies if the Shared Image supports Accelerated Network. Changing this forces a new resource to be created. + AcceleratedNetworkSupportEnabled *bool `json:"acceleratedNetworkSupportEnabled,omitempty" tf:"accelerated_network_support_enabled,omitempty"` + + // CPU architecture supported by an OS. Possible values are x64 and Arm64. Defaults to x64. Changing this forces a new resource to be created. + Architecture *string `json:"architecture,omitempty" tf:"architecture,omitempty"` + + // Specifies if Confidential Virtual Machines enabled. It will enable all the features of trusted, with higher confidentiality features for isolate machines or encrypted data. Available for Gen2 machines. Changing this forces a new resource to be created. + ConfidentialVMEnabled *bool `json:"confidentialVmEnabled,omitempty" tf:"confidential_vm_enabled,omitempty"` + + // Specifies if supports creation of both Confidential virtual machines and Gen2 virtual machines with standard security from a compatible Gen2 OS disk VHD or Gen2 Managed image. Changing this forces a new resource to be created. + ConfidentialVMSupported *bool `json:"confidentialVmSupported,omitempty" tf:"confidential_vm_supported,omitempty"` + + // A description of this Shared Image. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more Disk Types not allowed for the Image. Possible values include Standard_LRS and Premium_LRS. + DiskTypesNotAllowed []*string `json:"diskTypesNotAllowed,omitempty" tf:"disk_types_not_allowed,omitempty"` + + // The end of life date in RFC3339 format of the Image. + EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"` + + // The End User Licence Agreement for the Shared Image. Changing this forces a new resource to be created. + Eula *string `json:"eula,omitempty" tf:"eula,omitempty"` + + // The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are V1 and V2. Defaults to V1. Changing this forces a new resource to be created. + HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"` + + // An identifier block as defined below. + Identifier []IdentifierInitParameters `json:"identifier,omitempty" tf:"identifier,omitempty"` + + // Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Maximum memory in GB recommended for the Image. + MaxRecommendedMemoryInGb *float64 `json:"maxRecommendedMemoryInGb,omitempty" tf:"max_recommended_memory_in_gb,omitempty"` + + // Maximum count of vCPUs recommended for the Image. + MaxRecommendedVcpuCount *float64 `json:"maxRecommendedVcpuCount,omitempty" tf:"max_recommended_vcpu_count,omitempty"` + + // Minimum memory in GB recommended for the Image. + MinRecommendedMemoryInGb *float64 `json:"minRecommendedMemoryInGb,omitempty" tf:"min_recommended_memory_in_gb,omitempty"` + + // Minimum count of vCPUs recommended for the Image. + MinRecommendedVcpuCount *float64 `json:"minRecommendedVcpuCount,omitempty" tf:"min_recommended_vcpu_count,omitempty"` + + // The type of Operating System present in this Shared Image. Possible values are Linux and Windows. Changing this forces a new resource to be created. + OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` + + // The URI containing the Privacy Statement associated with this Shared Image. Changing this forces a new resource to be created. + PrivacyStatementURI *string `json:"privacyStatementUri,omitempty" tf:"privacy_statement_uri,omitempty"` + + // A purchase_plan block as defined below. + PurchasePlan []PurchasePlanInitParameters `json:"purchasePlan,omitempty" tf:"purchase_plan,omitempty"` + + // The URI containing the Release Notes associated with this Shared Image. + ReleaseNoteURI *string `json:"releaseNoteUri,omitempty" tf:"release_note_uri,omitempty"` + + // Specifies that the Operating System used inside this Image has not been Generalized (for example, sysprep on Windows has not been run). Changing this forces a new resource to be created. + Specialized *bool `json:"specialized,omitempty" tf:"specialized,omitempty"` + + // A mapping of tags to assign to the Shared Image. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies if Trusted Launch has to be enabled for the Virtual Machine created from the Shared Image. Changing this forces a new resource to be created. + TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"` +} + type SharedImageObservation struct { // Specifies if the Shared Image supports Accelerated Network. Changing this forces a new resource to be created. @@ -266,6 +359,18 @@ type SharedImageParameters struct { type SharedImageSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SharedImageParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SharedImageInitParameters `json:"initProvider,omitempty"` } // SharedImageStatus defines the observed state of SharedImage. @@ -286,9 +391,9 @@ type SharedImageStatus struct { type SharedImage struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.identifier)",message="identifier is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osType)",message="osType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.identifier) || has(self.initProvider.identifier)",message="identifier is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.osType) || has(self.initProvider.osType)",message="osType is a required parameter" Spec SharedImageSpec `json:"spec"` Status SharedImageStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_sharedimagegallery_types.go b/apis/compute/v1beta1/zz_sharedimagegallery_types.go index 63ee51718..623b9b99e 100755 --- a/apis/compute/v1beta1/zz_sharedimagegallery_types.go +++ b/apis/compute/v1beta1/zz_sharedimagegallery_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SharedImageGalleryInitParameters struct { + + // A description for this Shared Image Gallery. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the Shared Image Gallery. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type SharedImageGalleryObservation struct { // A description for this Shared Image Gallery. @@ -66,6 +78,18 @@ type SharedImageGalleryParameters struct { type SharedImageGallerySpec struct { v1.ResourceSpec `json:",inline"` ForProvider SharedImageGalleryParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SharedImageGalleryInitParameters `json:"initProvider,omitempty"` } // SharedImageGalleryStatus defines the observed state of SharedImageGallery. @@ -86,7 +110,7 @@ type SharedImageGalleryStatus struct { type SharedImageGallery struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SharedImageGallerySpec `json:"spec"` Status SharedImageGalleryStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_snapshot_types.go b/apis/compute/v1beta1/zz_snapshot_types.go index 8de8669b7..2b8198aec 100755 --- a/apis/compute/v1beta1/zz_snapshot_types.go +++ b/apis/compute/v1beta1/zz_snapshot_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EncryptionSettingsDiskEncryptionKeyInitParameters struct { + + // The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource. + SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` + + // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + type EncryptionSettingsDiskEncryptionKeyObservation struct { // The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource. @@ -25,12 +34,21 @@ type EncryptionSettingsDiskEncryptionKeyObservation struct { type EncryptionSettingsDiskEncryptionKeyParameters struct { // The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource. - // +kubebuilder:validation:Required - SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"` + // +kubebuilder:validation:Optional + SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. - // +kubebuilder:validation:Required - SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"` + // +kubebuilder:validation:Optional + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + +type EncryptionSettingsKeyEncryptionKeyInitParameters struct { + + // The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource. + KeyURL *string `json:"keyUrl,omitempty" tf:"key_url,omitempty"` + + // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` } type EncryptionSettingsKeyEncryptionKeyObservation struct { @@ -45,12 +63,23 @@ type EncryptionSettingsKeyEncryptionKeyObservation struct { type EncryptionSettingsKeyEncryptionKeyParameters struct { // The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource. - // +kubebuilder:validation:Required - KeyURL *string `json:"keyUrl" tf:"key_url,omitempty"` + // +kubebuilder:validation:Optional + KeyURL *string `json:"keyUrl,omitempty" tf:"key_url,omitempty"` // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. - // +kubebuilder:validation:Required - SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"` + // +kubebuilder:validation:Optional + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + +type SnapshotEncryptionSettingsInitParameters struct { + + // A disk_encryption_key block as defined below. + DiskEncryptionKey []EncryptionSettingsDiskEncryptionKeyInitParameters `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key,omitempty"` + + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A key_encryption_key block as defined below. + KeyEncryptionKey []EncryptionSettingsKeyEncryptionKeyInitParameters `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"` } type SnapshotEncryptionSettingsObservation struct { @@ -78,6 +107,33 @@ type SnapshotEncryptionSettingsParameters struct { KeyEncryptionKey []EncryptionSettingsKeyEncryptionKeyParameters `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"` } +type SnapshotInitParameters struct { + + // Indicates how the snapshot is to be created. Possible values are Copy or Import. + CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` + + // The size of the Snapshotted Disk in GB. + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` + + // A encryption_settings block as defined below. + EncryptionSettings []SnapshotEncryptionSettingsInitParameters `json:"encryptionSettings,omitempty" tf:"encryption_settings,omitempty"` + + // Specifies if the Snapshot is incremental. + IncrementalEnabled *bool `json:"incrementalEnabled,omitempty" tf:"incremental_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies a reference to an existing snapshot, when create_option is Copy. Changing this forces a new resource to be created. + SourceResourceID *string `json:"sourceResourceId,omitempty" tf:"source_resource_id,omitempty"` + + // Specifies the ID of an storage account. Used with source_uri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created. + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type SnapshotObservation struct { // Indicates how the snapshot is to be created. Possible values are Copy or Import. @@ -183,6 +239,18 @@ type SnapshotParameters struct { type SnapshotSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SnapshotParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SnapshotInitParameters `json:"initProvider,omitempty"` } // SnapshotStatus defines the observed state of Snapshot. @@ -203,8 +271,8 @@ type SnapshotStatus struct { type Snapshot struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.createOption)",message="createOption is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.createOption) || has(self.initProvider.createOption)",message="createOption is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SnapshotSpec `json:"spec"` Status SnapshotStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_sshpublickey_types.go b/apis/compute/v1beta1/zz_sshpublickey_types.go index ee7ac7760..290d85a57 100755 --- a/apis/compute/v1beta1/zz_sshpublickey_types.go +++ b/apis/compute/v1beta1/zz_sshpublickey_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SSHPublicKeyInitParameters struct { + + // The Azure Region where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // SSH public key used to authenticate to a virtual machine through ssh. the provided public key needs to be at least 2048-bit and in ssh-rsa format. + PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` + + // A mapping of tags which should be assigned to the SSH Public Key. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type SSHPublicKeyObservation struct { // The ID of the SSH Public Key. @@ -63,6 +75,18 @@ type SSHPublicKeyParameters struct { type SSHPublicKeySpec struct { v1.ResourceSpec `json:",inline"` ForProvider SSHPublicKeyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SSHPublicKeyInitParameters `json:"initProvider,omitempty"` } // SSHPublicKeyStatus defines the observed state of SSHPublicKey. @@ -83,8 +107,8 @@ type SSHPublicKeyStatus struct { type SSHPublicKey struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publicKey)",message="publicKey is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.publicKey) || has(self.initProvider.publicKey)",message="publicKey is a required parameter" Spec SSHPublicKeySpec `json:"spec"` Status SSHPublicKeyStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_windowsvirtualmachine_types.go b/apis/compute/v1beta1/zz_windowsvirtualmachine_types.go index 2f699eccc..127e4bde7 100755 --- a/apis/compute/v1beta1/zz_windowsvirtualmachine_types.go +++ b/apis/compute/v1beta1/zz_windowsvirtualmachine_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AdditionalUnattendContentInitParameters struct { + + // The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created. + Setting *string `json:"setting,omitempty" tf:"setting,omitempty"` +} + type AdditionalUnattendContentObservation struct { // The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created. @@ -26,8 +32,14 @@ type AdditionalUnattendContentParameters struct { ContentSecretRef v1.SecretKeySelector `json:"contentSecretRef" tf:"-"` // The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Setting *string `json:"setting" tf:"setting,omitempty"` + // +kubebuilder:validation:Optional + Setting *string `json:"setting,omitempty" tf:"setting,omitempty"` +} + +type WindowsVirtualMachineAdditionalCapabilitiesInitParameters struct { + + // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false. + UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } type WindowsVirtualMachineAdditionalCapabilitiesObservation struct { @@ -43,6 +55,12 @@ type WindowsVirtualMachineAdditionalCapabilitiesParameters struct { UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } +type WindowsVirtualMachineBootDiagnosticsInitParameters struct { + + // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. + StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` +} + type WindowsVirtualMachineBootDiagnosticsObservation struct { // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. @@ -56,6 +74,21 @@ type WindowsVirtualMachineBootDiagnosticsParameters struct { StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } +type WindowsVirtualMachineGalleryApplicationInitParameters struct { + + // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. + ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"` + + // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // Specifies a passthrough value for more generic context. This field can be any valid string value. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` + + // Specifies the Gallery Application Version resource ID. + VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` +} + type WindowsVirtualMachineGalleryApplicationObservation struct { // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. @@ -86,8 +119,17 @@ type WindowsVirtualMachineGalleryApplicationParameters struct { Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // Specifies the Gallery Application Version resource ID. - // +kubebuilder:validation:Required - VersionID *string `json:"versionId" tf:"version_id,omitempty"` + // +kubebuilder:validation:Optional + VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` +} + +type WindowsVirtualMachineIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type WindowsVirtualMachineIdentityObservation struct { @@ -112,8 +154,137 @@ type WindowsVirtualMachineIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WindowsVirtualMachineInitParameters struct { + + // A additional_capabilities block as defined below. + AdditionalCapabilities []WindowsVirtualMachineAdditionalCapabilitiesInitParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"` + + // One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created. + AdditionalUnattendContent []AdditionalUnattendContentInitParameters `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"` + + // The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created. + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` + + // Should Extension Operations be allowed on this Virtual Machine? Defaults to true. + AllowExtensionOperations *bool `json:"allowExtensionOperations,omitempty" tf:"allow_extension_operations,omitempty"` + + // Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created. + AvailabilitySetID *string `json:"availabilitySetId,omitempty" tf:"availability_set_id,omitempty"` + + // A boot_diagnostics block as defined below. + BootDiagnostics []WindowsVirtualMachineBootDiagnosticsInitParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"` + + // Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to. + CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` + + // Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name, then you must specify computer_name. Changing this forces a new resource to be created. + ComputerName *string `json:"computerName,omitempty" tf:"computer_name,omitempty"` + + // The ID of a Dedicated Host Group that this Windows Virtual Machine should be run within. Conflicts with dedicated_host_id. + DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"` + + // The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id. + DedicatedHostID *string `json:"dedicatedHostId,omitempty" tf:"dedicated_host_id,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine should exist. Changing this forces a new Windows Virtual Machine to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created. Defaults to true. + EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"` + + // Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host? + EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` + + // Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` + + // Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to 90 minutes (PT1H30M). + ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"` + + // One or more gallery_application blocks as defined below. + GalleryApplication []WindowsVirtualMachineGalleryApplicationInitParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"` + + // Should the VM be patched without requiring a reboot? Possible values are true or false. Defaults to false. For more information about hot patching please see the product documentation. + HotpatchingEnabled *bool `json:"hotpatchingEnabled,omitempty" tf:"hotpatching_enabled,omitempty"` + + // An identity block as defined below. + Identity []WindowsVirtualMachineIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine. Possible values are None, Windows_Client and Windows_Server. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the eviction_policy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons. + MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"` + + // A os_disk block as defined below. + OsDisk []WindowsVirtualMachineOsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` + + // Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault. + PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"` + + // Specifies the mode of in-guest patching to this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation. + PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"` + + // A plan block as defined below. Changing this forces a new resource to be created. + Plan []WindowsVirtualMachinePlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"` + + // Specifies the Platform Fault Domain in which this Windows Virtual Machine should be created. Defaults to -1, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Windows Virtual Machine to be created. + PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"` + + // Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created. + Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` + + // Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created. + ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` + + // The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. + ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` + + // One or more secret blocks as defined below. + Secret []WindowsVirtualMachineSecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"` + + // Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created. + SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"` + + // The SKU which should be used for this Virtual Machine, such as Standard_F2. + Size *string `json:"size,omitempty" tf:"size,omitempty"` + + // The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs. + SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"` + + // A source_image_reference block as defined below. Changing this forces a new resource to be created. + SourceImageReference []WindowsVirtualMachineSourceImageReferenceInitParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"` + + // A mapping of tags which should be assigned to this Virtual Machine. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A termination_notification block as defined below. + TerminationNotification []WindowsVirtualMachineTerminationNotificationInitParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"` + + // Specifies the Time Zone which should be used by the Virtual Machine, the possible values are defined here. Changing this forces a new resource to be created. + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` + + // The Base64-Encoded User Data which should be used for this Virtual Machine. + UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"` + + // Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within. Changing this forces a new resource to be created. + VirtualMachineScaleSetID *string `json:"virtualMachineScaleSetId,omitempty" tf:"virtual_machine_scale_set_id,omitempty"` + + // Specifies if vTPM (virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created. + VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"` + + // One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created. + WinrmListener []WindowsVirtualMachineWinrmListenerInitParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"` + + // * zones - Specifies the Availability Zone in which this Windows Virtual Machine should be located. Changing this forces a new Windows Virtual Machine to be created. + Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } type WindowsVirtualMachineObservation struct { @@ -269,6 +440,15 @@ type WindowsVirtualMachineObservation struct { Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } +type WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters struct { + + // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. + Option *string `json:"option,omitempty" tf:"option,omitempty"` + + // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. + Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` +} + type WindowsVirtualMachineOsDiskDiffDiskSettingsObservation struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. @@ -281,14 +461,44 @@ type WindowsVirtualMachineOsDiskDiffDiskSettingsObservation struct { type WindowsVirtualMachineOsDiskDiffDiskSettingsParameters struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Option *string `json:"option" tf:"option,omitempty"` + // +kubebuilder:validation:Optional + Option *string `json:"option,omitempty" tf:"option,omitempty"` // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } +type WindowsVirtualMachineOsDiskInitParameters struct { + + // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` + + // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. + DiffDiskSettings []WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"` + + // The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. + DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` + + // The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from. + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` + + // The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created. + SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"` + + // Encryption Type when the Virtual Machine is a Confidential VM. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created. + SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` + + // The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` +} + type WindowsVirtualMachineOsDiskObservation struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. @@ -322,8 +532,8 @@ type WindowsVirtualMachineOsDiskObservation struct { type WindowsVirtualMachineOsDiskParameters struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. - // +kubebuilder:validation:Required - Caching *string `json:"caching" tf:"caching,omitempty"` + // +kubebuilder:validation:Optional + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -350,8 +560,8 @@ type WindowsVirtualMachineOsDiskParameters struct { SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` // The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. // +kubebuilder:validation:Optional @@ -564,6 +774,18 @@ type WindowsVirtualMachineParameters struct { Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } +type WindowsVirtualMachinePlanInitParameters struct { + + // Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + Product *string `json:"product,omitempty" tf:"product,omitempty"` + + // Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + type WindowsVirtualMachinePlanObservation struct { // Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. @@ -579,16 +801,25 @@ type WindowsVirtualMachinePlanObservation struct { type WindowsVirtualMachinePlanParameters struct { // Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Product *string `json:"product" tf:"product,omitempty"` + // +kubebuilder:validation:Optional + Product *string `json:"product,omitempty" tf:"product,omitempty"` // Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + +type WindowsVirtualMachineSecretCertificateInitParameters struct { + + // The certificate store on the Virtual Machine where the certificate should be added. + Store *string `json:"store,omitempty" tf:"store,omitempty"` + + // The Secret URL of a Key Vault Certificate. + URL *string `json:"url,omitempty" tf:"url,omitempty"` } type WindowsVirtualMachineSecretCertificateObservation struct { @@ -603,12 +834,21 @@ type WindowsVirtualMachineSecretCertificateObservation struct { type WindowsVirtualMachineSecretCertificateParameters struct { // The certificate store on the Virtual Machine where the certificate should be added. - // +kubebuilder:validation:Required - Store *string `json:"store" tf:"store,omitempty"` + // +kubebuilder:validation:Optional + Store *string `json:"store,omitempty" tf:"store,omitempty"` // The Secret URL of a Key Vault Certificate. - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + +type WindowsVirtualMachineSecretInitParameters struct { + + // One or more certificate blocks as defined above. + Certificate []WindowsVirtualMachineSecretCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` + + // The ID of the Key Vault from which all Secrets should be sourced. + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } type WindowsVirtualMachineSecretObservation struct { @@ -623,12 +863,27 @@ type WindowsVirtualMachineSecretObservation struct { type WindowsVirtualMachineSecretParameters struct { // One or more certificate blocks as defined above. - // +kubebuilder:validation:Required - Certificate []WindowsVirtualMachineSecretCertificateParameters `json:"certificate" tf:"certificate,omitempty"` + // +kubebuilder:validation:Optional + Certificate []WindowsVirtualMachineSecretCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. - // +kubebuilder:validation:Required - KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` +} + +type WindowsVirtualMachineSourceImageReferenceInitParameters struct { + + // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` + + // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type WindowsVirtualMachineSourceImageReferenceObservation struct { @@ -649,20 +904,29 @@ type WindowsVirtualMachineSourceImageReferenceObservation struct { type WindowsVirtualMachineSourceImageReferenceParameters struct { // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Offer *string `json:"offer" tf:"offer,omitempty"` + // +kubebuilder:validation:Optional + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Sku *string `json:"sku" tf:"sku,omitempty"` + // +kubebuilder:validation:Optional + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type WindowsVirtualMachineTerminationNotificationInitParameters struct { + + // Should the termination notification be enabled on this Virtual Machine? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } type WindowsVirtualMachineTerminationNotificationObservation struct { @@ -677,14 +941,23 @@ type WindowsVirtualMachineTerminationNotificationObservation struct { type WindowsVirtualMachineTerminationNotificationParameters struct { // Should the termination notification be enabled on this Virtual Machine? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } +type WindowsVirtualMachineWinrmListenerInitParameters struct { + + // The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created. + CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"` + + // Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` +} + type WindowsVirtualMachineWinrmListenerObservation struct { // The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created. @@ -701,14 +974,26 @@ type WindowsVirtualMachineWinrmListenerParameters struct { CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"` // Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } // WindowsVirtualMachineSpec defines the desired state of WindowsVirtualMachine type WindowsVirtualMachineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WindowsVirtualMachineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WindowsVirtualMachineInitParameters `json:"initProvider,omitempty"` } // WindowsVirtualMachineStatus defines the observed state of WindowsVirtualMachine. @@ -729,11 +1014,11 @@ type WindowsVirtualMachineStatus struct { type WindowsVirtualMachine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminPasswordSecretRef)",message="adminPasswordSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminUsername)",message="adminUsername is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osDisk)",message="osDisk is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.size)",message="size is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adminPasswordSecretRef)",message="adminPasswordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adminUsername) || has(self.initProvider.adminUsername)",message="adminUsername is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.osDisk) || has(self.initProvider.osDisk)",message="osDisk is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.size) || has(self.initProvider.size)",message="size is a required parameter" Spec WindowsVirtualMachineSpec `json:"spec"` Status WindowsVirtualMachineStatus `json:"status,omitempty"` } diff --git a/apis/compute/v1beta1/zz_windowsvirtualmachinescaleset_types.go b/apis/compute/v1beta1/zz_windowsvirtualmachinescaleset_types.go index 240dffa71..712344a92 100755 --- a/apis/compute/v1beta1/zz_windowsvirtualmachinescaleset_types.go +++ b/apis/compute/v1beta1/zz_windowsvirtualmachinescaleset_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IPConfigurationPublicIPAddressIPTagInitParameters struct { + + // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` + + // The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IPConfigurationPublicIPAddressIPTagObservation struct { // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. @@ -25,12 +34,33 @@ type IPConfigurationPublicIPAddressIPTagObservation struct { type IPConfigurationPublicIPAddressIPTagParameters struct { // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Tag *string `json:"tag" tf:"tag,omitempty"` + // +kubebuilder:validation:Optional + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type NetworkInterfaceIPConfigurationPublicIPAddressInitParameters struct { + + // The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. + DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"` + + // One or more ip_tag blocks as defined above. Changing this forces a new resource to be created. + IPTag []IPConfigurationPublicIPAddressIPTagInitParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"` + + // The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // The Name of the Public IP Address Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created. + PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"` + + // Specifies the version of the image used to create the virtual machines. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type NetworkInterfaceIPConfigurationPublicIPAddressObservation struct { @@ -69,8 +99,8 @@ type NetworkInterfaceIPConfigurationPublicIPAddressParameters struct { IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // The Name of the Public IP Address Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -81,6 +111,12 @@ type NetworkInterfaceIPConfigurationPublicIPAddressParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters struct { + + // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created. + UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` +} + type WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation struct { // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created. @@ -94,6 +130,12 @@ type WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters struct { UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } +type WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters struct { + + // The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created. + Setting *string `json:"setting,omitempty" tf:"setting,omitempty"` +} + type WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation struct { // The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created. @@ -107,8 +149,17 @@ type WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters struct { ContentSecretRef v1.SecretKeySelector `json:"contentSecretRef" tf:"-"` // The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Setting *string `json:"setting" tf:"setting,omitempty"` + // +kubebuilder:validation:Optional + Setting *string `json:"setting,omitempty" tf:"setting,omitempty"` +} + +type WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters struct { + + // Should the automatic instance repair be enabled on this Virtual Machine Scale Set? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Amount of time (in minutes, between 30 and 90, defaults to 30 minutes) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M. + GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"` } type WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation struct { @@ -123,14 +174,23 @@ type WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation struct { type WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters struct { // Should the automatic instance repair be enabled on this Virtual Machine Scale Set? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Amount of time (in minutes, between 30 and 90, defaults to 30 minutes) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M. // +kubebuilder:validation:Optional GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"` } +type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters struct { + + // Should automatic rollbacks be disabled? + DisableAutomaticRollback *bool `json:"disableAutomaticRollback,omitempty" tf:"disable_automatic_rollback,omitempty"` + + // Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? + EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade,omitempty" tf:"enable_automatic_os_upgrade,omitempty"` +} + type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation struct { // Should automatic rollbacks be disabled? @@ -143,12 +203,18 @@ type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation struct { type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters struct { // Should automatic rollbacks be disabled? - // +kubebuilder:validation:Required - DisableAutomaticRollback *bool `json:"disableAutomaticRollback" tf:"disable_automatic_rollback,omitempty"` + // +kubebuilder:validation:Optional + DisableAutomaticRollback *bool `json:"disableAutomaticRollback,omitempty" tf:"disable_automatic_rollback,omitempty"` // Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? - // +kubebuilder:validation:Required - EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade" tf:"enable_automatic_os_upgrade,omitempty"` + // +kubebuilder:validation:Optional + EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade,omitempty" tf:"enable_automatic_os_upgrade,omitempty"` +} + +type WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters struct { + + // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. + StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } type WindowsVirtualMachineScaleSetBootDiagnosticsObservation struct { @@ -164,6 +230,39 @@ type WindowsVirtualMachineScaleSetBootDiagnosticsParameters struct { StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } +type WindowsVirtualMachineScaleSetDataDiskInitParameters struct { + + // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` + + // The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks). + CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` + + // The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created. + DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` + + // The size of the Data Disk which should be created. + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` + + // The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. + Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` + + // The name of the Data Disk. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + // Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS. + UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"` + + // Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS. + UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"` + + // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` +} + type WindowsVirtualMachineScaleSetDataDiskObservation struct { // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. @@ -200,8 +299,8 @@ type WindowsVirtualMachineScaleSetDataDiskObservation struct { type WindowsVirtualMachineScaleSetDataDiskParameters struct { // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. - // +kubebuilder:validation:Required - Caching *string `json:"caching" tf:"caching,omitempty"` + // +kubebuilder:validation:Optional + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks). // +kubebuilder:validation:Optional @@ -212,20 +311,20 @@ type WindowsVirtualMachineScaleSetDataDiskParameters struct { DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The size of the Data Disk which should be created. - // +kubebuilder:validation:Required - DiskSizeGb *float64 `json:"diskSizeGb" tf:"disk_size_gb,omitempty"` + // +kubebuilder:validation:Optional + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. - // +kubebuilder:validation:Required - Lun *float64 `json:"lun" tf:"lun,omitempty"` + // +kubebuilder:validation:Optional + Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` // The name of the Data Disk. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS. - // +kubebuilder:validation:Required - StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS. // +kubebuilder:validation:Optional @@ -240,6 +339,39 @@ type WindowsVirtualMachineScaleSetDataDiskParameters struct { WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } +type WindowsVirtualMachineScaleSetExtensionInitParameters struct { + + // Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true. + AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"` + + // Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension? + AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"` + + // A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed. + ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"` + + // The name for the Virtual Machine Scale Set Extension. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A protected_settings_from_key_vault block as defined below. + ProtectedSettingsFromKeyVault []WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"` + + // An ordered list of Extension names which this should be provisioned after. + ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"` + + // Specifies the Publisher of the Extension. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // A JSON String which specifies Settings for the Extension. + Settings *string `json:"settings,omitempty" tf:"settings,omitempty"` + + // Specifies the Type of the Extension. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // Specifies the version of the extension to use, available versions can be found using the Azure CLI. + TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"` +} + type WindowsVirtualMachineScaleSetExtensionObservation struct { // Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true. @@ -288,8 +420,8 @@ type WindowsVirtualMachineScaleSetExtensionParameters struct { ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"` // The name for the Virtual Machine Scale Set Extension. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A protected_settings_from_key_vault block as defined below. // +kubebuilder:validation:Optional @@ -304,20 +436,29 @@ type WindowsVirtualMachineScaleSetExtensionParameters struct { ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"` // Specifies the Publisher of the Extension. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // A JSON String which specifies Settings for the Extension. // +kubebuilder:validation:Optional Settings *string `json:"settings,omitempty" tf:"settings,omitempty"` // Specifies the Type of the Extension. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // Specifies the version of the extension to use, available versions can be found using the Azure CLI. - // +kubebuilder:validation:Required - TypeHandlerVersion *string `json:"typeHandlerVersion" tf:"type_handler_version,omitempty"` + // +kubebuilder:validation:Optional + TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"` +} + +type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters struct { + + // The URL to the Key Vault Secret which stores the protected settings. + SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` + + // The ID of the source Key Vault. + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` } type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation struct { @@ -332,12 +473,27 @@ type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservat type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters struct { // The URL to the Key Vault Secret which stores the protected settings. - // +kubebuilder:validation:Required - SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"` + // +kubebuilder:validation:Optional + SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` // The ID of the source Key Vault. - // +kubebuilder:validation:Required - SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"` + // +kubebuilder:validation:Optional + SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` +} + +type WindowsVirtualMachineScaleSetGalleryApplicationInitParameters struct { + + // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created. + ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"` + + // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` + + // Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created. + VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` } type WindowsVirtualMachineScaleSetGalleryApplicationObservation struct { @@ -370,8 +526,21 @@ type WindowsVirtualMachineScaleSetGalleryApplicationParameters struct { Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VersionID *string `json:"versionId" tf:"version_id,omitempty"` + // +kubebuilder:validation:Optional + VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` +} + +type WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters struct { + ConfigurationReferenceBlobURI *string `json:"configurationReferenceBlobUri,omitempty" tf:"configuration_reference_blob_uri,omitempty"` + + // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // The ID of the Windows Virtual Machine Scale Set. + PackageReferenceID *string `json:"packageReferenceId,omitempty" tf:"package_reference_id,omitempty"` + + // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` } type WindowsVirtualMachineScaleSetGalleryApplicationsObservation struct { @@ -397,38 +566,238 @@ type WindowsVirtualMachineScaleSetGalleryApplicationsParameters struct { Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // The ID of the Windows Virtual Machine Scale Set. - // +kubebuilder:validation:Required - PackageReferenceID *string `json:"packageReferenceId" tf:"package_reference_id,omitempty"` + // +kubebuilder:validation:Optional + PackageReferenceID *string `json:"packageReferenceId,omitempty" tf:"package_reference_id,omitempty"` // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` } -type WindowsVirtualMachineScaleSetIdentityObservation struct { +type WindowsVirtualMachineScaleSetIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WindowsVirtualMachineScaleSetIdentityObservation struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The Principal ID associated with this Managed Service Identity. + PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` + + // The Tenant ID associated with this Managed Service Identity. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WindowsVirtualMachineScaleSetIdentityParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set. + // +kubebuilder:validation:Optional + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WindowsVirtualMachineScaleSetInitParameters struct { + + // An additional_capabilities block as defined below. + AdditionalCapabilities []WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"` + + // One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created. + AdditionalUnattendContent []WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"` + + // The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created. + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` + + // An automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension. + AutomaticInstanceRepair []WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"` + + // An automatic_os_upgrade_policy block as defined below. This can only be specified when upgrade_mode is set to either Automatic or Rolling. + AutomaticOsUpgradePolicy []WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters `json:"automaticOsUpgradePolicy,omitempty" tf:"automatic_os_upgrade_policy,omitempty"` + + // A boot_diagnostics block as defined below. + BootDiagnostics []WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"` + + // Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created. + CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` + + // The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created. + ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"` + + // One or more data_disk blocks as defined below. + DataDisk []WindowsVirtualMachineScaleSetDataDiskInitParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"` + + // Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false. + DoNotRunExtensionsOnOverprovisionedMachines *bool `json:"doNotRunExtensionsOnOverprovisionedMachines,omitempty" tf:"do_not_run_extensions_on_overprovisioned_machines,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine Scale Set should exist. Changing this forces a new Windows Virtual Machine Scale Set to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // Are automatic updates enabled for this Virtual Machine? Defaults to true. + EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"` + + // Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host? + EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` + + // Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` + + // One or more extension blocks as defined below + Extension []WindowsVirtualMachineScaleSetExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"` + + // Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Windows Virtual Machine Scale Set to be created. + ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"` + + // Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to 90 minutes (PT1H30M). + ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"` + + // One or more gallery_application blocks as defined below. + GalleryApplication []WindowsVirtualMachineScaleSetGalleryApplicationInitParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"` + + GalleryApplications []WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters `json:"galleryApplications,omitempty" tf:"gallery_applications,omitempty"` + + // The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. + HealthProbeID *string `json:"healthProbeId,omitempty" tf:"health_probe_id,omitempty"` + + // Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created. + HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"` + + // An identity block as defined below. + Identity []WindowsVirtualMachineScaleSetIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The number of Virtual Machines in the Scale Set. + Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"` + + // Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons. + MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"` + + // One or more network_interface blocks as defined below. + NetworkInterface []WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"` + + // An os_disk block as defined below. + OsDisk []WindowsVirtualMachineScaleSetOsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` + + // Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to true. + Overprovision *bool `json:"overprovision,omitempty" tf:"overprovision,omitempty"` + + // A plan block as defined below. Changing this forces a new resource to be created. + Plan []WindowsVirtualMachineScaleSetPlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"` + + // Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created. + PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"` + + // The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource. + Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` + + // Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created. + ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` + + // The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created. + ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` + + // A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. Changing this forces a new resource to be created. + RollingUpgradePolicy []WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters `json:"rollingUpgradePolicy,omitempty" tf:"rolling_upgrade_policy,omitempty"` + + // A scale_in block as defined below. + ScaleIn []WindowsVirtualMachineScaleSetScaleInInitParameters `json:"scaleIn,omitempty" tf:"scale_in,omitempty"` + + // Deprecated: scaleInPolicy will be removed in favour of the scaleIn code block. + ScaleInPolicy *string `json:"scaleInPolicy,omitempty" tf:"scale_in_policy,omitempty"` + + // One or more secret blocks as defined below. + Secret []WindowsVirtualMachineScaleSetSecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"` + + // Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created. + SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"` + + // Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true. + SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"` + + // The Virtual Machine SKU for the Scale Set, such as Standard_F2. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs. + SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"` + + // A source_image_reference block as defined below. + SourceImageReference []WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"` + + // A spot_restore block as defined below. + SpotRestore []WindowsVirtualMachineScaleSetSpotRestoreInitParameters `json:"spotRestore,omitempty" tf:"spot_restore,omitempty"` + + // A mapping of tags which should be assigned to this Virtual Machine Scale Set. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A terminate_notification block as defined below. + TerminateNotification []WindowsVirtualMachineScaleSetTerminateNotificationInitParameters `json:"terminateNotification,omitempty" tf:"terminate_notification,omitempty"` + + // A termination_notification block as defined below. + TerminationNotification []WindowsVirtualMachineScaleSetTerminationNotificationInitParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"` + + // Specifies the time zone of the virtual machine, the possible values are defined here. + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` + + // Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual. Changing this forces a new resource to be created. + UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"` + + // The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set. + UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"` + + // Specifies if vTPM (Virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created. + VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"` + + // One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created. + WinrmListener []WindowsVirtualMachineScaleSetWinrmListenerInitParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"` + + // Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created. + ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"` + + // Specifies a list of Availability Zones in which this Windows Virtual Machine Scale Set should be located. Changing this forces a new Windows Virtual Machine Scale Set to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + +type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters struct { + + // A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to. + ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"` - // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set. - IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + // A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to. + ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"` - // The Principal ID associated with this Managed Service Identity. - PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` + // A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to. + LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"` - // The Tenant ID associated with this Managed Service Identity. - TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` + // A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to. + LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"` - // Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - Type *string `json:"type,omitempty" tf:"type,omitempty"` -} + // The Name of the Public IP Address Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` -type WindowsVirtualMachineScaleSetIdentityParameters struct { + // Is this the Primary IP Configuration? + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` - // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set. - // +kubebuilder:validation:Optional - IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + // A public_ip_address block as defined below. + PublicIPAddress []NetworkInterfaceIPConfigurationPublicIPAddressInitParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"` - // Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // Specifies the version of the image used to create the virtual machines. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationObservation struct { @@ -480,8 +849,8 @@ type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters stru LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"` // The Name of the Public IP Address Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this the Primary IP Configuration? // +kubebuilder:validation:Optional @@ -510,6 +879,30 @@ type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters stru Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters struct { + + // A list of IP Addresses of DNS Servers which should be assigned to the Network Interface. + DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` + + // Does this Network Interface support Accelerated Networking? Defaults to false. + EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"` + + // Does this Network Interface support IP Forwarding? Defaults to false. + EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` + + // One or more ip_configuration blocks as defined above. + IPConfiguration []WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` + + // The Name which should be used for this Network Interface. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of a Network Security Group which should be assigned to this Network Interface. + NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"` + + // Is this the Primary IP Configuration? + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` +} + type WindowsVirtualMachineScaleSetNetworkInterfaceObservation struct { // A list of IP Addresses of DNS Servers which should be assigned to the Network Interface. @@ -549,12 +942,12 @@ type WindowsVirtualMachineScaleSetNetworkInterfaceParameters struct { EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` // One or more ip_configuration blocks as defined above. - // +kubebuilder:validation:Required - IPConfiguration []WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters `json:"ipConfiguration" tf:"ip_configuration,omitempty"` + // +kubebuilder:validation:Optional + IPConfiguration []WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The Name which should be used for this Network Interface. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of a Network Security Group which should be assigned to this Network Interface. // +kubebuilder:validation:Optional @@ -738,6 +1131,15 @@ type WindowsVirtualMachineScaleSetObservation struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters struct { + + // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. + Option *string `json:"option,omitempty" tf:"option,omitempty"` + + // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. + Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` +} + type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. @@ -750,14 +1152,41 @@ type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation struct { type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Option *string `json:"option" tf:"option,omitempty"` + // +kubebuilder:validation:Optional + Option *string `json:"option,omitempty" tf:"option,omitempty"` // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } +type WindowsVirtualMachineScaleSetOsDiskInitParameters struct { + + // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` + + // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. + DiffDiskSettings []WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"` + + // The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created. + DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` + + // The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from. + DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` + + // The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created. + SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"` + + // Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created. + SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` + + // The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` +} + type WindowsVirtualMachineScaleSetOsDiskObservation struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. @@ -788,8 +1217,8 @@ type WindowsVirtualMachineScaleSetOsDiskObservation struct { type WindowsVirtualMachineScaleSetOsDiskParameters struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. - // +kubebuilder:validation:Required - Caching *string `json:"caching" tf:"caching,omitempty"` + // +kubebuilder:validation:Optional + Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -812,8 +1241,8 @@ type WindowsVirtualMachineScaleSetOsDiskParameters struct { SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` // The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. // +kubebuilder:validation:Optional @@ -1059,6 +1488,18 @@ type WindowsVirtualMachineScaleSetParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type WindowsVirtualMachineScaleSetPlanInitParameters struct { + + // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the product of the image from the marketplace. Changing this forces a new resource to be created. + Product *string `json:"product,omitempty" tf:"product,omitempty"` + + // Specifies the publisher of the image. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + type WindowsVirtualMachineScaleSetPlanObservation struct { // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. @@ -1074,16 +1515,37 @@ type WindowsVirtualMachineScaleSetPlanObservation struct { type WindowsVirtualMachineScaleSetPlanParameters struct { // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the product of the image from the marketplace. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Product *string `json:"product" tf:"product,omitempty"` + // +kubebuilder:validation:Optional + Product *string `json:"product,omitempty" tf:"product,omitempty"` // Specifies the publisher of the image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + +type WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters struct { + + // Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false. + CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"` + + // The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. + MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent,omitempty" tf:"max_batch_instance_percent,omitempty"` + + // The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. + MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent,omitempty" tf:"max_unhealthy_instance_percent,omitempty"` + + // The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. + MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent,omitempty" tf:"max_unhealthy_upgraded_instance_percent,omitempty"` + + // The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format. + PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches,omitempty" tf:"pause_time_between_batches,omitempty"` + + // Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false. + PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"` } type WindowsVirtualMachineScaleSetRollingUpgradePolicyObservation struct { @@ -1114,26 +1576,35 @@ type WindowsVirtualMachineScaleSetRollingUpgradePolicyParameters struct { CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"` // The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. - // +kubebuilder:validation:Required - MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent" tf:"max_batch_instance_percent,omitempty"` + // +kubebuilder:validation:Optional + MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent,omitempty" tf:"max_batch_instance_percent,omitempty"` // The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. - // +kubebuilder:validation:Required - MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent" tf:"max_unhealthy_instance_percent,omitempty"` + // +kubebuilder:validation:Optional + MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent,omitempty" tf:"max_unhealthy_instance_percent,omitempty"` // The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. - // +kubebuilder:validation:Required - MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent" tf:"max_unhealthy_upgraded_instance_percent,omitempty"` + // +kubebuilder:validation:Optional + MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent,omitempty" tf:"max_unhealthy_upgraded_instance_percent,omitempty"` // The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format. - // +kubebuilder:validation:Required - PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches" tf:"pause_time_between_batches,omitempty"` + // +kubebuilder:validation:Optional + PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches,omitempty" tf:"pause_time_between_batches,omitempty"` // Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false. // +kubebuilder:validation:Optional PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"` } +type WindowsVirtualMachineScaleSetScaleInInitParameters struct { + + // Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false. + ForceDeletionEnabled *bool `json:"forceDeletionEnabled,omitempty" tf:"force_deletion_enabled,omitempty"` + + // The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc. + Rule *string `json:"rule,omitempty" tf:"rule,omitempty"` +} + type WindowsVirtualMachineScaleSetScaleInObservation struct { // Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false. @@ -1154,6 +1625,15 @@ type WindowsVirtualMachineScaleSetScaleInParameters struct { Rule *string `json:"rule,omitempty" tf:"rule,omitempty"` } +type WindowsVirtualMachineScaleSetSecretCertificateInitParameters struct { + + // The certificate store on the Virtual Machine where the certificate should be added. + Store *string `json:"store,omitempty" tf:"store,omitempty"` + + // The Secret URL of a Key Vault Certificate. + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type WindowsVirtualMachineScaleSetSecretCertificateObservation struct { // The certificate store on the Virtual Machine where the certificate should be added. @@ -1166,12 +1646,21 @@ type WindowsVirtualMachineScaleSetSecretCertificateObservation struct { type WindowsVirtualMachineScaleSetSecretCertificateParameters struct { // The certificate store on the Virtual Machine where the certificate should be added. - // +kubebuilder:validation:Required - Store *string `json:"store" tf:"store,omitempty"` + // +kubebuilder:validation:Optional + Store *string `json:"store,omitempty" tf:"store,omitempty"` // The Secret URL of a Key Vault Certificate. - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + +type WindowsVirtualMachineScaleSetSecretInitParameters struct { + + // One or more certificate blocks as defined above. + Certificate []WindowsVirtualMachineScaleSetSecretCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` + + // The ID of the Key Vault from which all Secrets should be sourced. + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } type WindowsVirtualMachineScaleSetSecretObservation struct { @@ -1186,12 +1675,27 @@ type WindowsVirtualMachineScaleSetSecretObservation struct { type WindowsVirtualMachineScaleSetSecretParameters struct { // One or more certificate blocks as defined above. - // +kubebuilder:validation:Required - Certificate []WindowsVirtualMachineScaleSetSecretCertificateParameters `json:"certificate" tf:"certificate,omitempty"` + // +kubebuilder:validation:Optional + Certificate []WindowsVirtualMachineScaleSetSecretCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. - // +kubebuilder:validation:Required - KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` +} + +type WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters struct { + + // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` + + // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // Specifies the SKU of the image used to create the virtual machines. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // Specifies the version of the image used to create the virtual machines. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type WindowsVirtualMachineScaleSetSourceImageReferenceObservation struct { @@ -1212,20 +1716,29 @@ type WindowsVirtualMachineScaleSetSourceImageReferenceObservation struct { type WindowsVirtualMachineScaleSetSourceImageReferenceParameters struct { // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Offer *string `json:"offer" tf:"offer,omitempty"` + // +kubebuilder:validation:Optional + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // Specifies the SKU of the image used to create the virtual machines. - // +kubebuilder:validation:Required - Sku *string `json:"sku" tf:"sku,omitempty"` + // +kubebuilder:validation:Optional + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies the version of the image used to create the virtual machines. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type WindowsVirtualMachineScaleSetSpotRestoreInitParameters struct { + + // Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are true or false. Defaults to false. Changing this forces a new resource to be created. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between 15 minutes and 120 minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to 90 minutes (e.g. PT1H30M). Changing this forces a new resource to be created. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } type WindowsVirtualMachineScaleSetSpotRestoreObservation struct { @@ -1248,6 +1761,15 @@ type WindowsVirtualMachineScaleSetSpotRestoreParameters struct { Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } +type WindowsVirtualMachineScaleSetTerminateNotificationInitParameters struct { + + // Should the terminate notification be enabled on this Virtual Machine Scale Set? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` +} + type WindowsVirtualMachineScaleSetTerminateNotificationObservation struct { // Should the terminate notification be enabled on this Virtual Machine Scale Set? @@ -1260,14 +1782,23 @@ type WindowsVirtualMachineScaleSetTerminateNotificationObservation struct { type WindowsVirtualMachineScaleSetTerminateNotificationParameters struct { // Should the terminate notification be enabled on this Virtual Machine Scale Set? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } +type WindowsVirtualMachineScaleSetTerminationNotificationInitParameters struct { + + // Should the termination notification be enabled on this Virtual Machine Scale Set? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` +} + type WindowsVirtualMachineScaleSetTerminationNotificationObservation struct { // Should the termination notification be enabled on this Virtual Machine Scale Set? @@ -1280,14 +1811,23 @@ type WindowsVirtualMachineScaleSetTerminationNotificationObservation struct { type WindowsVirtualMachineScaleSetTerminationNotificationParameters struct { // Should the termination notification be enabled on this Virtual Machine Scale Set? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } +type WindowsVirtualMachineScaleSetWinrmListenerInitParameters struct { + + // The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created. + CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"` + + // The Protocol of the WinRM Listener. Possible values are Http and Https. Changing this forces a new resource to be created. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` +} + type WindowsVirtualMachineScaleSetWinrmListenerObservation struct { // The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created. @@ -1304,14 +1844,26 @@ type WindowsVirtualMachineScaleSetWinrmListenerParameters struct { CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"` // The Protocol of the WinRM Listener. Possible values are Http and Https. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } // WindowsVirtualMachineScaleSetSpec defines the desired state of WindowsVirtualMachineScaleSet type WindowsVirtualMachineScaleSetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WindowsVirtualMachineScaleSetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WindowsVirtualMachineScaleSetInitParameters `json:"initProvider,omitempty"` } // WindowsVirtualMachineScaleSetStatus defines the observed state of WindowsVirtualMachineScaleSet. @@ -1332,13 +1884,13 @@ type WindowsVirtualMachineScaleSetStatus struct { type WindowsVirtualMachineScaleSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminPasswordSecretRef)",message="adminPasswordSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminUsername)",message="adminUsername is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.instances)",message="instances is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.networkInterface)",message="networkInterface is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osDisk)",message="osDisk is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adminPasswordSecretRef)",message="adminPasswordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adminUsername) || has(self.initProvider.adminUsername)",message="adminUsername is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.instances) || has(self.initProvider.instances)",message="instances is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.networkInterface) || has(self.initProvider.networkInterface)",message="networkInterface is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.osDisk) || has(self.initProvider.osDisk)",message="osDisk is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec WindowsVirtualMachineScaleSetSpec `json:"spec"` Status WindowsVirtualMachineScaleSetStatus `json:"status,omitempty"` } diff --git a/apis/confidentialledger/v1beta1/zz_generated.deepcopy.go b/apis/confidentialledger/v1beta1/zz_generated.deepcopy.go index ff37cfc91..ed55180b6 100644 --- a/apis/confidentialledger/v1beta1/zz_generated.deepcopy.go +++ b/apis/confidentialledger/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,36 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureadBasedServicePrincipalInitParameters) DeepCopyInto(out *AzureadBasedServicePrincipalInitParameters) { + *out = *in + if in.LedgerRoleName != nil { + in, out := &in.LedgerRoleName, &out.LedgerRoleName + *out = new(string) + **out = **in + } + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureadBasedServicePrincipalInitParameters. +func (in *AzureadBasedServicePrincipalInitParameters) DeepCopy() *AzureadBasedServicePrincipalInitParameters { + if in == nil { + return nil + } + out := new(AzureadBasedServicePrincipalInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureadBasedServicePrincipalObservation) DeepCopyInto(out *AzureadBasedServicePrincipalObservation) { *out = *in @@ -74,6 +104,31 @@ func (in *AzureadBasedServicePrincipalParameters) DeepCopy() *AzureadBasedServic return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateBasedSecurityPrincipalInitParameters) DeepCopyInto(out *CertificateBasedSecurityPrincipalInitParameters) { + *out = *in + if in.LedgerRoleName != nil { + in, out := &in.LedgerRoleName, &out.LedgerRoleName + *out = new(string) + **out = **in + } + if in.PemPublicKey != nil { + in, out := &in.PemPublicKey, &out.PemPublicKey + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateBasedSecurityPrincipalInitParameters. +func (in *CertificateBasedSecurityPrincipalInitParameters) DeepCopy() *CertificateBasedSecurityPrincipalInitParameters { + if in == nil { + return nil + } + out := new(CertificateBasedSecurityPrincipalInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificateBasedSecurityPrincipalObservation) DeepCopyInto(out *CertificateBasedSecurityPrincipalObservation) { *out = *in @@ -151,6 +206,60 @@ func (in *Ledger) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LedgerInitParameters) DeepCopyInto(out *LedgerInitParameters) { + *out = *in + if in.AzureadBasedServicePrincipal != nil { + in, out := &in.AzureadBasedServicePrincipal, &out.AzureadBasedServicePrincipal + *out = make([]AzureadBasedServicePrincipalInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CertificateBasedSecurityPrincipal != nil { + in, out := &in.CertificateBasedSecurityPrincipal, &out.CertificateBasedSecurityPrincipal + *out = make([]CertificateBasedSecurityPrincipalInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LedgerType != nil { + in, out := &in.LedgerType, &out.LedgerType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LedgerInitParameters. +func (in *LedgerInitParameters) DeepCopy() *LedgerInitParameters { + if in == nil { + return nil + } + out := new(LedgerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LedgerList) DeepCopyInto(out *LedgerList) { *out = *in @@ -331,6 +440,7 @@ func (in *LedgerSpec) DeepCopyInto(out *LedgerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LedgerSpec. diff --git a/apis/confidentialledger/v1beta1/zz_generated.managed.go b/apis/confidentialledger/v1beta1/zz_generated.managed.go index 06137a624..a144f0183 100644 --- a/apis/confidentialledger/v1beta1/zz_generated.managed.go +++ b/apis/confidentialledger/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Ledger) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Ledger. -func (mg *Ledger) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Ledger. +func (mg *Ledger) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Ledger. @@ -55,9 +55,9 @@ func (mg *Ledger) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Ledger. -func (mg *Ledger) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Ledger. +func (mg *Ledger) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Ledger. diff --git a/apis/confidentialledger/v1beta1/zz_generated_terraformed.go b/apis/confidentialledger/v1beta1/zz_generated_terraformed.go index 7886c67c2..26c572c60 100755 --- a/apis/confidentialledger/v1beta1/zz_generated_terraformed.go +++ b/apis/confidentialledger/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Ledger) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Ledger +func (tr *Ledger) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Ledger using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Ledger) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/confidentialledger/v1beta1/zz_ledger_types.go b/apis/confidentialledger/v1beta1/zz_ledger_types.go index b78083724..ea666db2d 100755 --- a/apis/confidentialledger/v1beta1/zz_ledger_types.go +++ b/apis/confidentialledger/v1beta1/zz_ledger_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AzureadBasedServicePrincipalInitParameters struct { + + // Specifies the Ledger Role to grant this AzureAD Service Principal. Possible values are Administrator, Contributor and Reader. + LedgerRoleName *string `json:"ledgerRoleName,omitempty" tf:"ledger_role_name,omitempty"` + + // Specifies the Principal ID of the AzureAD Service Principal. + PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` + + // Specifies the Tenant ID for this AzureAD Service Principal. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type AzureadBasedServicePrincipalObservation struct { // Specifies the Ledger Role to grant this AzureAD Service Principal. Possible values are Administrator, Contributor and Reader. @@ -28,16 +40,25 @@ type AzureadBasedServicePrincipalObservation struct { type AzureadBasedServicePrincipalParameters struct { // Specifies the Ledger Role to grant this AzureAD Service Principal. Possible values are Administrator, Contributor and Reader. - // +kubebuilder:validation:Required - LedgerRoleName *string `json:"ledgerRoleName" tf:"ledger_role_name,omitempty"` + // +kubebuilder:validation:Optional + LedgerRoleName *string `json:"ledgerRoleName,omitempty" tf:"ledger_role_name,omitempty"` // Specifies the Principal ID of the AzureAD Service Principal. - // +kubebuilder:validation:Required - PrincipalID *string `json:"principalId" tf:"principal_id,omitempty"` + // +kubebuilder:validation:Optional + PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` // Specifies the Tenant ID for this AzureAD Service Principal. - // +kubebuilder:validation:Required - TenantID *string `json:"tenantId" tf:"tenant_id,omitempty"` + // +kubebuilder:validation:Optional + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + +type CertificateBasedSecurityPrincipalInitParameters struct { + + // Specifies the Ledger Role to grant this Certificate Security Principal. Possible values are Administrator, Contributor and Reader. + LedgerRoleName *string `json:"ledgerRoleName,omitempty" tf:"ledger_role_name,omitempty"` + + // The public key, in PEM format, of the certificate used by this identity to authenticate with the Confidential Ledger. + PemPublicKey *string `json:"pemPublicKey,omitempty" tf:"pem_public_key,omitempty"` } type CertificateBasedSecurityPrincipalObservation struct { @@ -52,12 +73,30 @@ type CertificateBasedSecurityPrincipalObservation struct { type CertificateBasedSecurityPrincipalParameters struct { // Specifies the Ledger Role to grant this Certificate Security Principal. Possible values are Administrator, Contributor and Reader. - // +kubebuilder:validation:Required - LedgerRoleName *string `json:"ledgerRoleName" tf:"ledger_role_name,omitempty"` + // +kubebuilder:validation:Optional + LedgerRoleName *string `json:"ledgerRoleName,omitempty" tf:"ledger_role_name,omitempty"` // The public key, in PEM format, of the certificate used by this identity to authenticate with the Confidential Ledger. - // +kubebuilder:validation:Required - PemPublicKey *string `json:"pemPublicKey" tf:"pem_public_key,omitempty"` + // +kubebuilder:validation:Optional + PemPublicKey *string `json:"pemPublicKey,omitempty" tf:"pem_public_key,omitempty"` +} + +type LedgerInitParameters struct { + + // A list of azuread_based_service_principal blocks as defined below. + AzureadBasedServicePrincipal []AzureadBasedServicePrincipalInitParameters `json:"azureadBasedServicePrincipal,omitempty" tf:"azuread_based_service_principal,omitempty"` + + // A list of certificate_based_security_principal blocks as defined below. + CertificateBasedSecurityPrincipal []CertificateBasedSecurityPrincipalInitParameters `json:"certificateBasedSecurityPrincipal,omitempty" tf:"certificate_based_security_principal,omitempty"` + + // Specifies the type of Confidential Ledger. Possible values are Private and Public. Changing this forces a new resource to be created. + LedgerType *string `json:"ledgerType,omitempty" tf:"ledger_type,omitempty"` + + // Specifies the supported Azure location where the Confidential Ledger exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the Confidential Ledger. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type LedgerObservation struct { @@ -130,6 +169,18 @@ type LedgerParameters struct { type LedgerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LedgerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LedgerInitParameters `json:"initProvider,omitempty"` } // LedgerStatus defines the observed state of Ledger. @@ -150,9 +201,9 @@ type LedgerStatus struct { type Ledger struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.azureadBasedServicePrincipal)",message="azureadBasedServicePrincipal is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ledgerType)",message="ledgerType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.azureadBasedServicePrincipal) || has(self.initProvider.azureadBasedServicePrincipal)",message="azureadBasedServicePrincipal is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ledgerType) || has(self.initProvider.ledgerType)",message="ledgerType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec LedgerSpec `json:"spec"` Status LedgerStatus `json:"status,omitempty"` } diff --git a/apis/consumption/v1beta1/zz_budgetmanagementgroup_types.go b/apis/consumption/v1beta1/zz_budgetmanagementgroup_types.go index e45a5c6ed..f1f55703e 100755 --- a/apis/consumption/v1beta1/zz_budgetmanagementgroup_types.go +++ b/apis/consumption/v1beta1/zz_budgetmanagementgroup_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BudgetManagementGroupInitParameters struct { + + // The total amount of cost to track with the budget. + Amount *float64 `json:"amount,omitempty" tf:"amount,omitempty"` + + // The ETag of the Management Group Consumption Budget. + Etag *string `json:"etag,omitempty" tf:"etag,omitempty"` + + // A filter block as defined below. + Filter []FilterInitParameters `json:"filter,omitempty" tf:"filter,omitempty"` + + // The name which should be used for this Management Group Consumption Budget. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more notification blocks as defined below. + Notification []NotificationInitParameters `json:"notification,omitempty" tf:"notification,omitempty"` + + // The time covered by a budget. Tracking of the amount will be reset based on the time grain. Must be one of BillingAnnual, BillingMonth, BillingQuarter, Annually, Monthly and Quarterly. Defaults to Monthly. Changing this forces a new resource to be created. + TimeGrain *string `json:"timeGrain,omitempty" tf:"time_grain,omitempty"` + + // A time_period block as defined below. + TimePeriod []TimePeriodInitParameters `json:"timePeriod,omitempty" tf:"time_period,omitempty"` +} + type BudgetManagementGroupObservation struct { // The total amount of cost to track with the budget. @@ -88,6 +112,18 @@ type BudgetManagementGroupParameters struct { TimePeriod []TimePeriodParameters `json:"timePeriod,omitempty" tf:"time_period,omitempty"` } +type DimensionInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type DimensionObservation struct { // The name of the tag to use for the filter. @@ -103,16 +139,28 @@ type DimensionObservation struct { type DimensionParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type FilterInitParameters struct { + + // One or more dimension blocks as defined below to filter the budget on. + Dimension []DimensionInitParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` + + // A not block as defined below to filter the budget on. This is deprecated as the API no longer supports it and will be removed in version 4.0 of the provider. + Not []NotInitParameters `json:"not,omitempty" tf:"not,omitempty"` + + // One or more tag blocks as defined below to filter the budget on. + Tag []FilterTagInitParameters `json:"tag,omitempty" tf:"tag,omitempty"` } type FilterObservation struct { @@ -142,6 +190,18 @@ type FilterParameters struct { Tag []FilterTagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } +type FilterTagInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type FilterTagObservation struct { // The name of the tag to use for the filter. @@ -157,16 +217,28 @@ type FilterTagObservation struct { type FilterTagParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type NotDimensionInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type NotDimensionObservation struct { @@ -184,16 +256,25 @@ type NotDimensionObservation struct { type NotDimensionParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type NotInitParameters struct { + + // One dimension block as defined below to filter the budget on. Conflicts with tag. + Dimension []NotDimensionInitParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` + + // One tag block as defined below to filter the budget on. Conflicts with dimension. + Tag []TagInitParameters `json:"tag,omitempty" tf:"tag,omitempty"` } type NotObservation struct { @@ -216,6 +297,24 @@ type NotParameters struct { Tag []TagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } +type NotificationInitParameters struct { + + // Specifies a list of email addresses to send the budget notification to when the threshold is exceeded. + ContactEmails []*string `json:"contactEmails,omitempty" tf:"contact_emails,omitempty"` + + // Should the notification be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The comparison operator for the notification. Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000. + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` + + // The type of threshold for the notification. This determines whether the notification is triggered by forecasted costs or actual costs. The allowed values are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. + ThresholdType *string `json:"thresholdType,omitempty" tf:"threshold_type,omitempty"` +} + type NotificationObservation struct { // Specifies a list of email addresses to send the budget notification to when the threshold is exceeded. @@ -237,26 +336,38 @@ type NotificationObservation struct { type NotificationParameters struct { // Specifies a list of email addresses to send the budget notification to when the threshold is exceeded. - // +kubebuilder:validation:Required - ContactEmails []*string `json:"contactEmails" tf:"contact_emails,omitempty"` + // +kubebuilder:validation:Optional + ContactEmails []*string `json:"contactEmails,omitempty" tf:"contact_emails,omitempty"` // Should the notification be enabled? Defaults to true. // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The comparison operator for the notification. Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000. - // +kubebuilder:validation:Required - Threshold *float64 `json:"threshold" tf:"threshold,omitempty"` + // +kubebuilder:validation:Optional + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` // The type of threshold for the notification. This determines whether the notification is triggered by forecasted costs or actual costs. The allowed values are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional ThresholdType *string `json:"thresholdType,omitempty" tf:"threshold_type,omitempty"` } +type TagInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type TagObservation struct { // The name of the tag to use for the filter. @@ -272,16 +383,25 @@ type TagObservation struct { type TagParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type TimePeriodInitParameters struct { + + // The end date for the budget. If not set this will be 10 years after the start date. + EndDate *string `json:"endDate,omitempty" tf:"end_date,omitempty"` + + // The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new resource to be created. + StartDate *string `json:"startDate,omitempty" tf:"start_date,omitempty"` } type TimePeriodObservation struct { @@ -300,14 +420,26 @@ type TimePeriodParameters struct { EndDate *string `json:"endDate,omitempty" tf:"end_date,omitempty"` // The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StartDate *string `json:"startDate" tf:"start_date,omitempty"` + // +kubebuilder:validation:Optional + StartDate *string `json:"startDate,omitempty" tf:"start_date,omitempty"` } // BudgetManagementGroupSpec defines the desired state of BudgetManagementGroup type BudgetManagementGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BudgetManagementGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BudgetManagementGroupInitParameters `json:"initProvider,omitempty"` } // BudgetManagementGroupStatus defines the observed state of BudgetManagementGroup. @@ -328,10 +460,10 @@ type BudgetManagementGroupStatus struct { type BudgetManagementGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.amount)",message="amount is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notification)",message="notification is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timePeriod)",message="timePeriod is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.amount) || has(self.initProvider.amount)",message="amount is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.notification) || has(self.initProvider.notification)",message="notification is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.timePeriod) || has(self.initProvider.timePeriod)",message="timePeriod is a required parameter" Spec BudgetManagementGroupSpec `json:"spec"` Status BudgetManagementGroupStatus `json:"status,omitempty"` } diff --git a/apis/consumption/v1beta1/zz_budgetresourcegroup_types.go b/apis/consumption/v1beta1/zz_budgetresourcegroup_types.go index 28e9ab050..f85e23b71 100755 --- a/apis/consumption/v1beta1/zz_budgetresourcegroup_types.go +++ b/apis/consumption/v1beta1/zz_budgetresourcegroup_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BudgetResourceGroupFilterInitParameters struct { + + // One or more dimension blocks as defined below to filter the budget on. + Dimension []FilterDimensionInitParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` + + // A not block as defined below to filter the budget on. This is deprecated as the API no longer supports it and will be removed in version 4.0 of the provider. + Not []FilterNotInitParameters `json:"not,omitempty" tf:"not,omitempty"` + + // One or more tag blocks as defined below to filter the budget on. + Tag []BudgetResourceGroupFilterTagInitParameters `json:"tag,omitempty" tf:"tag,omitempty"` +} + type BudgetResourceGroupFilterObservation struct { // One or more dimension blocks as defined below to filter the budget on. @@ -40,6 +52,18 @@ type BudgetResourceGroupFilterParameters struct { Tag []BudgetResourceGroupFilterTagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } +type BudgetResourceGroupFilterTagInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type BudgetResourceGroupFilterTagObservation struct { // The name of the tag to use for the filter. @@ -55,16 +79,64 @@ type BudgetResourceGroupFilterTagObservation struct { type BudgetResourceGroupFilterTagParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type BudgetResourceGroupInitParameters struct { + + // The total amount of cost to track with the budget. + Amount *float64 `json:"amount,omitempty" tf:"amount,omitempty"` + + // The ETag of the Resource Group Consumption Budget + Etag *string `json:"etag,omitempty" tf:"etag,omitempty"` + + // A filter block as defined below. + Filter []BudgetResourceGroupFilterInitParameters `json:"filter,omitempty" tf:"filter,omitempty"` + + // The name which should be used for this Resource Group Consumption Budget. Changing this forces a new Resource Group Consumption Budget to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more notification blocks as defined below. + Notification []BudgetResourceGroupNotificationInitParameters `json:"notification,omitempty" tf:"notification,omitempty"` + + // The time covered by a budget. Tracking of the amount will be reset based on the time grain. Must be one of BillingAnnual, BillingMonth, BillingQuarter, Annually, Monthly and Quarterly. Defaults to Monthly. Changing this forces a new resource to be created. + TimeGrain *string `json:"timeGrain,omitempty" tf:"time_grain,omitempty"` + + // A time_period block as defined below. + TimePeriod []BudgetResourceGroupTimePeriodInitParameters `json:"timePeriod,omitempty" tf:"time_period,omitempty"` +} + +type BudgetResourceGroupNotificationInitParameters struct { + + // Specifies a list of email addresses to send the budget notification to when the threshold is exceeded. + ContactEmails []*string `json:"contactEmails,omitempty" tf:"contact_emails,omitempty"` + + // Specifies a list of Action Group IDs to send the budget notification to when the threshold is exceeded. + ContactGroups []*string `json:"contactGroups,omitempty" tf:"contact_groups,omitempty"` + + // Specifies a list of contact roles to send the budget notification to when the threshold is exceeded. + ContactRoles []*string `json:"contactRoles,omitempty" tf:"contact_roles,omitempty"` + + // Should the notification be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The comparison operator for the notification. Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000. + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` + + // The type of threshold for the notification. This determines whether the notification is triggered by forecasted costs or actual costs. The allowed values are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. + ThresholdType *string `json:"thresholdType,omitempty" tf:"threshold_type,omitempty"` } type BudgetResourceGroupNotificationObservation struct { @@ -110,12 +182,12 @@ type BudgetResourceGroupNotificationParameters struct { Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The comparison operator for the notification. Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000. - // +kubebuilder:validation:Required - Threshold *float64 `json:"threshold" tf:"threshold,omitempty"` + // +kubebuilder:validation:Optional + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` // The type of threshold for the notification. This determines whether the notification is triggered by forecasted costs or actual costs. The allowed values are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -197,6 +269,15 @@ type BudgetResourceGroupParameters struct { TimePeriod []BudgetResourceGroupTimePeriodParameters `json:"timePeriod,omitempty" tf:"time_period,omitempty"` } +type BudgetResourceGroupTimePeriodInitParameters struct { + + // The end date for the budget. If not set this will be 10 years after the start date. + EndDate *string `json:"endDate,omitempty" tf:"end_date,omitempty"` + + // The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new Resource Group Consumption Budget to be created. + StartDate *string `json:"startDate,omitempty" tf:"start_date,omitempty"` +} + type BudgetResourceGroupTimePeriodObservation struct { // The end date for the budget. If not set this will be 10 years after the start date. @@ -213,8 +294,20 @@ type BudgetResourceGroupTimePeriodParameters struct { EndDate *string `json:"endDate,omitempty" tf:"end_date,omitempty"` // The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new Resource Group Consumption Budget to be created. - // +kubebuilder:validation:Required - StartDate *string `json:"startDate" tf:"start_date,omitempty"` + // +kubebuilder:validation:Optional + StartDate *string `json:"startDate,omitempty" tf:"start_date,omitempty"` +} + +type FilterDimensionInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type FilterDimensionObservation struct { @@ -232,16 +325,28 @@ type FilterDimensionObservation struct { type FilterDimensionParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type FilterNotDimensionInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type FilterNotDimensionObservation struct { @@ -259,16 +364,25 @@ type FilterNotDimensionObservation struct { type FilterNotDimensionParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type FilterNotInitParameters struct { + + // One dimension block as defined below to filter the budget on. Conflicts with tag. + Dimension []FilterNotDimensionInitParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` + + // One tag block as defined below to filter the budget on. Conflicts with dimension. + Tag []NotTagInitParameters `json:"tag,omitempty" tf:"tag,omitempty"` } type FilterNotObservation struct { @@ -291,6 +405,18 @@ type FilterNotParameters struct { Tag []NotTagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } +type NotTagInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type NotTagObservation struct { // The name of the tag to use for the filter. @@ -306,22 +432,34 @@ type NotTagObservation struct { type NotTagParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } // BudgetResourceGroupSpec defines the desired state of BudgetResourceGroup type BudgetResourceGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BudgetResourceGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BudgetResourceGroupInitParameters `json:"initProvider,omitempty"` } // BudgetResourceGroupStatus defines the observed state of BudgetResourceGroup. @@ -342,10 +480,10 @@ type BudgetResourceGroupStatus struct { type BudgetResourceGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.amount)",message="amount is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notification)",message="notification is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timePeriod)",message="timePeriod is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.amount) || has(self.initProvider.amount)",message="amount is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.notification) || has(self.initProvider.notification)",message="notification is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.timePeriod) || has(self.initProvider.timePeriod)",message="timePeriod is a required parameter" Spec BudgetResourceGroupSpec `json:"spec"` Status BudgetResourceGroupStatus `json:"status,omitempty"` } diff --git a/apis/consumption/v1beta1/zz_budgetsubscription_types.go b/apis/consumption/v1beta1/zz_budgetsubscription_types.go index 5f8db7044..a166c7b6a 100755 --- a/apis/consumption/v1beta1/zz_budgetsubscription_types.go +++ b/apis/consumption/v1beta1/zz_budgetsubscription_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BudgetSubscriptionFilterDimensionInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type BudgetSubscriptionFilterDimensionObservation struct { // The name of the tag to use for the filter. @@ -28,16 +40,40 @@ type BudgetSubscriptionFilterDimensionObservation struct { type BudgetSubscriptionFilterDimensionParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type BudgetSubscriptionFilterInitParameters struct { + + // One or more dimension blocks as defined below to filter the budget on. + Dimension []BudgetSubscriptionFilterDimensionInitParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` + + // A not block as defined below to filter the budget on. This is deprecated as the API no longer supports it and will be removed in version 4.0 of the provider. + Not []BudgetSubscriptionFilterNotInitParameters `json:"not,omitempty" tf:"not,omitempty"` + + // One or more tag blocks as defined below to filter the budget on. + Tag []BudgetSubscriptionFilterTagInitParameters `json:"tag,omitempty" tf:"tag,omitempty"` +} + +type BudgetSubscriptionFilterNotDimensionInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type BudgetSubscriptionFilterNotDimensionObservation struct { @@ -55,16 +91,25 @@ type BudgetSubscriptionFilterNotDimensionObservation struct { type BudgetSubscriptionFilterNotDimensionParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type BudgetSubscriptionFilterNotInitParameters struct { + + // One dimension block as defined below to filter the budget on. Conflicts with tag. + Dimension []BudgetSubscriptionFilterNotDimensionInitParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` + + // One tag block as defined below to filter the budget on. Conflicts with dimension. + Tag []FilterNotTagInitParameters `json:"tag,omitempty" tf:"tag,omitempty"` } type BudgetSubscriptionFilterNotObservation struct { @@ -114,6 +159,18 @@ type BudgetSubscriptionFilterParameters struct { Tag []BudgetSubscriptionFilterTagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } +type BudgetSubscriptionFilterTagInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type BudgetSubscriptionFilterTagObservation struct { // The name of the tag to use for the filter. @@ -129,16 +186,61 @@ type BudgetSubscriptionFilterTagObservation struct { type BudgetSubscriptionFilterTagParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type BudgetSubscriptionInitParameters struct { + + // The total amount of cost to track with the budget. + Amount *float64 `json:"amount,omitempty" tf:"amount,omitempty"` + + // The ETag of the Subscription Consumption Budget. + Etag *string `json:"etag,omitempty" tf:"etag,omitempty"` + + // A filter block as defined below. + Filter []BudgetSubscriptionFilterInitParameters `json:"filter,omitempty" tf:"filter,omitempty"` + + // One or more notification blocks as defined below. + Notification []BudgetSubscriptionNotificationInitParameters `json:"notification,omitempty" tf:"notification,omitempty"` + + // The ID of the Subscription for which to create a Consumption Budget. Changing this forces a new resource to be created. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` + + // The time covered by a budget. Tracking of the amount will be reset based on the time grain. Must be one of BillingAnnual, BillingMonth, BillingQuarter, Annually, Monthly and Quarterly. Defaults to Monthly. Changing this forces a new resource to be created. + TimeGrain *string `json:"timeGrain,omitempty" tf:"time_grain,omitempty"` + + // A time_period block as defined below. + TimePeriod []BudgetSubscriptionTimePeriodInitParameters `json:"timePeriod,omitempty" tf:"time_period,omitempty"` +} + +type BudgetSubscriptionNotificationInitParameters struct { + + // Specifies a list of email addresses to send the budget notification to when the threshold is exceeded. + ContactEmails []*string `json:"contactEmails,omitempty" tf:"contact_emails,omitempty"` + + // Specifies a list of contact roles to send the budget notification to when the threshold is exceeded. + ContactRoles []*string `json:"contactRoles,omitempty" tf:"contact_roles,omitempty"` + + // Should the notification be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The comparison operator for the notification. Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000. + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` + + // The type of threshold for the notification. This determines whether the notification is triggered by forecasted costs or actual costs. The allowed values are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. + ThresholdType *string `json:"thresholdType,omitempty" tf:"threshold_type,omitempty"` } type BudgetSubscriptionNotificationObservation struct { @@ -194,12 +296,12 @@ type BudgetSubscriptionNotificationParameters struct { Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The comparison operator for the notification. Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000. - // +kubebuilder:validation:Required - Threshold *float64 `json:"threshold" tf:"threshold,omitempty"` + // +kubebuilder:validation:Optional + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` // The type of threshold for the notification. This determines whether the notification is triggered by forecasted costs or actual costs. The allowed values are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -264,6 +366,15 @@ type BudgetSubscriptionParameters struct { TimePeriod []BudgetSubscriptionTimePeriodParameters `json:"timePeriod,omitempty" tf:"time_period,omitempty"` } +type BudgetSubscriptionTimePeriodInitParameters struct { + + // The end date for the budget. If not set this will be 10 years after the start date. + EndDate *string `json:"endDate,omitempty" tf:"end_date,omitempty"` + + // The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new Subscription Consumption Budget to be created. + StartDate *string `json:"startDate,omitempty" tf:"start_date,omitempty"` +} + type BudgetSubscriptionTimePeriodObservation struct { // The end date for the budget. If not set this will be 10 years after the start date. @@ -280,8 +391,20 @@ type BudgetSubscriptionTimePeriodParameters struct { EndDate *string `json:"endDate,omitempty" tf:"end_date,omitempty"` // The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new Subscription Consumption Budget to be created. - // +kubebuilder:validation:Required - StartDate *string `json:"startDate" tf:"start_date,omitempty"` + // +kubebuilder:validation:Optional + StartDate *string `json:"startDate,omitempty" tf:"start_date,omitempty"` +} + +type FilterNotTagInitParameters struct { + + // The name of the tag to use for the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The operator to use for comparison. The allowed values are In. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies a list of values for the tag. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type FilterNotTagObservation struct { @@ -299,22 +422,34 @@ type FilterNotTagObservation struct { type FilterNotTagParameters struct { // The name of the tag to use for the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } // BudgetSubscriptionSpec defines the desired state of BudgetSubscription type BudgetSubscriptionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BudgetSubscriptionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BudgetSubscriptionInitParameters `json:"initProvider,omitempty"` } // BudgetSubscriptionStatus defines the observed state of BudgetSubscription. @@ -335,10 +470,10 @@ type BudgetSubscriptionStatus struct { type BudgetSubscription struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.amount)",message="amount is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notification)",message="notification is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId)",message="subscriptionId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timePeriod)",message="timePeriod is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.amount) || has(self.initProvider.amount)",message="amount is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.notification) || has(self.initProvider.notification)",message="notification is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subscriptionId) || has(self.initProvider.subscriptionId)",message="subscriptionId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.timePeriod) || has(self.initProvider.timePeriod)",message="timePeriod is a required parameter" Spec BudgetSubscriptionSpec `json:"spec"` Status BudgetSubscriptionStatus `json:"status,omitempty"` } diff --git a/apis/consumption/v1beta1/zz_generated.deepcopy.go b/apis/consumption/v1beta1/zz_generated.deepcopy.go index cf0ab2deb..05ba9bf24 100644 --- a/apis/consumption/v1beta1/zz_generated.deepcopy.go +++ b/apis/consumption/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,62 @@ func (in *BudgetManagementGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetManagementGroupInitParameters) DeepCopyInto(out *BudgetManagementGroupInitParameters) { + *out = *in + if in.Amount != nil { + in, out := &in.Amount, &out.Amount + *out = new(float64) + **out = **in + } + if in.Etag != nil { + in, out := &in.Etag, &out.Etag + *out = new(string) + **out = **in + } + if in.Filter != nil { + in, out := &in.Filter, &out.Filter + *out = make([]FilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Notification != nil { + in, out := &in.Notification, &out.Notification + *out = make([]NotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TimeGrain != nil { + in, out := &in.TimeGrain, &out.TimeGrain + *out = new(string) + **out = **in + } + if in.TimePeriod != nil { + in, out := &in.TimePeriod, &out.TimePeriod + *out = make([]TimePeriodInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetManagementGroupInitParameters. +func (in *BudgetManagementGroupInitParameters) DeepCopy() *BudgetManagementGroupInitParameters { + if in == nil { + return nil + } + out := new(BudgetManagementGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetManagementGroupList) DeepCopyInto(out *BudgetManagementGroupList) { *out = *in @@ -215,6 +271,7 @@ func (in *BudgetManagementGroupSpec) DeepCopyInto(out *BudgetManagementGroupSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetManagementGroupSpec. @@ -271,6 +328,42 @@ func (in *BudgetResourceGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetResourceGroupFilterInitParameters) DeepCopyInto(out *BudgetResourceGroupFilterInitParameters) { + *out = *in + if in.Dimension != nil { + in, out := &in.Dimension, &out.Dimension + *out = make([]FilterDimensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Not != nil { + in, out := &in.Not, &out.Not + *out = make([]FilterNotInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = make([]BudgetResourceGroupFilterTagInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetResourceGroupFilterInitParameters. +func (in *BudgetResourceGroupFilterInitParameters) DeepCopy() *BudgetResourceGroupFilterInitParameters { + if in == nil { + return nil + } + out := new(BudgetResourceGroupFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetResourceGroupFilterObservation) DeepCopyInto(out *BudgetResourceGroupFilterObservation) { *out = *in @@ -343,6 +436,42 @@ func (in *BudgetResourceGroupFilterParameters) DeepCopy() *BudgetResourceGroupFi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetResourceGroupFilterTagInitParameters) DeepCopyInto(out *BudgetResourceGroupFilterTagInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetResourceGroupFilterTagInitParameters. +func (in *BudgetResourceGroupFilterTagInitParameters) DeepCopy() *BudgetResourceGroupFilterTagInitParameters { + if in == nil { + return nil + } + out := new(BudgetResourceGroupFilterTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetResourceGroupFilterTagObservation) DeepCopyInto(out *BudgetResourceGroupFilterTagObservation) { *out = *in @@ -415,6 +544,62 @@ func (in *BudgetResourceGroupFilterTagParameters) DeepCopy() *BudgetResourceGrou return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetResourceGroupInitParameters) DeepCopyInto(out *BudgetResourceGroupInitParameters) { + *out = *in + if in.Amount != nil { + in, out := &in.Amount, &out.Amount + *out = new(float64) + **out = **in + } + if in.Etag != nil { + in, out := &in.Etag, &out.Etag + *out = new(string) + **out = **in + } + if in.Filter != nil { + in, out := &in.Filter, &out.Filter + *out = make([]BudgetResourceGroupFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Notification != nil { + in, out := &in.Notification, &out.Notification + *out = make([]BudgetResourceGroupNotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TimeGrain != nil { + in, out := &in.TimeGrain, &out.TimeGrain + *out = new(string) + **out = **in + } + if in.TimePeriod != nil { + in, out := &in.TimePeriod, &out.TimePeriod + *out = make([]BudgetResourceGroupTimePeriodInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetResourceGroupInitParameters. +func (in *BudgetResourceGroupInitParameters) DeepCopy() *BudgetResourceGroupInitParameters { + if in == nil { + return nil + } + out := new(BudgetResourceGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetResourceGroupList) DeepCopyInto(out *BudgetResourceGroupList) { *out = *in @@ -447,6 +632,74 @@ func (in *BudgetResourceGroupList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetResourceGroupNotificationInitParameters) DeepCopyInto(out *BudgetResourceGroupNotificationInitParameters) { + *out = *in + if in.ContactEmails != nil { + in, out := &in.ContactEmails, &out.ContactEmails + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ContactGroups != nil { + in, out := &in.ContactGroups, &out.ContactGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ContactRoles != nil { + in, out := &in.ContactRoles, &out.ContactRoles + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Threshold != nil { + in, out := &in.Threshold, &out.Threshold + *out = new(float64) + **out = **in + } + if in.ThresholdType != nil { + in, out := &in.ThresholdType, &out.ThresholdType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetResourceGroupNotificationInitParameters. +func (in *BudgetResourceGroupNotificationInitParameters) DeepCopy() *BudgetResourceGroupNotificationInitParameters { + if in == nil { + return nil + } + out := new(BudgetResourceGroupNotificationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetResourceGroupNotificationObservation) DeepCopyInto(out *BudgetResourceGroupNotificationObservation) { *out = *in @@ -725,6 +978,7 @@ func (in *BudgetResourceGroupSpec) DeepCopyInto(out *BudgetResourceGroupSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetResourceGroupSpec. @@ -754,6 +1008,31 @@ func (in *BudgetResourceGroupStatus) DeepCopy() *BudgetResourceGroupStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetResourceGroupTimePeriodInitParameters) DeepCopyInto(out *BudgetResourceGroupTimePeriodInitParameters) { + *out = *in + if in.EndDate != nil { + in, out := &in.EndDate, &out.EndDate + *out = new(string) + **out = **in + } + if in.StartDate != nil { + in, out := &in.StartDate, &out.StartDate + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetResourceGroupTimePeriodInitParameters. +func (in *BudgetResourceGroupTimePeriodInitParameters) DeepCopy() *BudgetResourceGroupTimePeriodInitParameters { + if in == nil { + return nil + } + out := new(BudgetResourceGroupTimePeriodInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetResourceGroupTimePeriodObservation) DeepCopyInto(out *BudgetResourceGroupTimePeriodObservation) { *out = *in @@ -832,7 +1111,7 @@ func (in *BudgetSubscription) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BudgetSubscriptionFilterDimensionObservation) DeepCopyInto(out *BudgetSubscriptionFilterDimensionObservation) { +func (in *BudgetSubscriptionFilterDimensionInitParameters) DeepCopyInto(out *BudgetSubscriptionFilterDimensionInitParameters) { *out = *in if in.Name != nil { in, out := &in.Name, &out.Name @@ -857,18 +1136,18 @@ func (in *BudgetSubscriptionFilterDimensionObservation) DeepCopyInto(out *Budget } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionFilterDimensionObservation. -func (in *BudgetSubscriptionFilterDimensionObservation) DeepCopy() *BudgetSubscriptionFilterDimensionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionFilterDimensionInitParameters. +func (in *BudgetSubscriptionFilterDimensionInitParameters) DeepCopy() *BudgetSubscriptionFilterDimensionInitParameters { if in == nil { return nil } - out := new(BudgetSubscriptionFilterDimensionObservation) + out := new(BudgetSubscriptionFilterDimensionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BudgetSubscriptionFilterDimensionParameters) DeepCopyInto(out *BudgetSubscriptionFilterDimensionParameters) { +func (in *BudgetSubscriptionFilterDimensionObservation) DeepCopyInto(out *BudgetSubscriptionFilterDimensionObservation) { *out = *in if in.Name != nil { in, out := &in.Name, &out.Name @@ -893,12 +1172,120 @@ func (in *BudgetSubscriptionFilterDimensionParameters) DeepCopyInto(out *BudgetS } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionFilterDimensionParameters. -func (in *BudgetSubscriptionFilterDimensionParameters) DeepCopy() *BudgetSubscriptionFilterDimensionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionFilterDimensionObservation. +func (in *BudgetSubscriptionFilterDimensionObservation) DeepCopy() *BudgetSubscriptionFilterDimensionObservation { if in == nil { return nil } - out := new(BudgetSubscriptionFilterDimensionParameters) + out := new(BudgetSubscriptionFilterDimensionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetSubscriptionFilterDimensionParameters) DeepCopyInto(out *BudgetSubscriptionFilterDimensionParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionFilterDimensionParameters. +func (in *BudgetSubscriptionFilterDimensionParameters) DeepCopy() *BudgetSubscriptionFilterDimensionParameters { + if in == nil { + return nil + } + out := new(BudgetSubscriptionFilterDimensionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetSubscriptionFilterInitParameters) DeepCopyInto(out *BudgetSubscriptionFilterInitParameters) { + *out = *in + if in.Dimension != nil { + in, out := &in.Dimension, &out.Dimension + *out = make([]BudgetSubscriptionFilterDimensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Not != nil { + in, out := &in.Not, &out.Not + *out = make([]BudgetSubscriptionFilterNotInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = make([]BudgetSubscriptionFilterTagInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionFilterInitParameters. +func (in *BudgetSubscriptionFilterInitParameters) DeepCopy() *BudgetSubscriptionFilterInitParameters { + if in == nil { + return nil + } + out := new(BudgetSubscriptionFilterInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetSubscriptionFilterNotDimensionInitParameters) DeepCopyInto(out *BudgetSubscriptionFilterNotDimensionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionFilterNotDimensionInitParameters. +func (in *BudgetSubscriptionFilterNotDimensionInitParameters) DeepCopy() *BudgetSubscriptionFilterNotDimensionInitParameters { + if in == nil { + return nil + } + out := new(BudgetSubscriptionFilterNotDimensionInitParameters) in.DeepCopyInto(out) return out } @@ -975,6 +1362,35 @@ func (in *BudgetSubscriptionFilterNotDimensionParameters) DeepCopy() *BudgetSubs return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetSubscriptionFilterNotInitParameters) DeepCopyInto(out *BudgetSubscriptionFilterNotInitParameters) { + *out = *in + if in.Dimension != nil { + in, out := &in.Dimension, &out.Dimension + *out = make([]BudgetSubscriptionFilterNotDimensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = make([]FilterNotTagInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionFilterNotInitParameters. +func (in *BudgetSubscriptionFilterNotInitParameters) DeepCopy() *BudgetSubscriptionFilterNotInitParameters { + if in == nil { + return nil + } + out := new(BudgetSubscriptionFilterNotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetSubscriptionFilterNotObservation) DeepCopyInto(out *BudgetSubscriptionFilterNotObservation) { *out = *in @@ -1105,6 +1521,42 @@ func (in *BudgetSubscriptionFilterParameters) DeepCopy() *BudgetSubscriptionFilt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetSubscriptionFilterTagInitParameters) DeepCopyInto(out *BudgetSubscriptionFilterTagInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionFilterTagInitParameters. +func (in *BudgetSubscriptionFilterTagInitParameters) DeepCopy() *BudgetSubscriptionFilterTagInitParameters { + if in == nil { + return nil + } + out := new(BudgetSubscriptionFilterTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetSubscriptionFilterTagObservation) DeepCopyInto(out *BudgetSubscriptionFilterTagObservation) { *out = *in @@ -1177,6 +1629,62 @@ func (in *BudgetSubscriptionFilterTagParameters) DeepCopy() *BudgetSubscriptionF return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetSubscriptionInitParameters) DeepCopyInto(out *BudgetSubscriptionInitParameters) { + *out = *in + if in.Amount != nil { + in, out := &in.Amount, &out.Amount + *out = new(float64) + **out = **in + } + if in.Etag != nil { + in, out := &in.Etag, &out.Etag + *out = new(string) + **out = **in + } + if in.Filter != nil { + in, out := &in.Filter, &out.Filter + *out = make([]BudgetSubscriptionFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Notification != nil { + in, out := &in.Notification, &out.Notification + *out = make([]BudgetSubscriptionNotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } + if in.TimeGrain != nil { + in, out := &in.TimeGrain, &out.TimeGrain + *out = new(string) + **out = **in + } + if in.TimePeriod != nil { + in, out := &in.TimePeriod, &out.TimePeriod + *out = make([]BudgetSubscriptionTimePeriodInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionInitParameters. +func (in *BudgetSubscriptionInitParameters) DeepCopy() *BudgetSubscriptionInitParameters { + if in == nil { + return nil + } + out := new(BudgetSubscriptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetSubscriptionList) DeepCopyInto(out *BudgetSubscriptionList) { *out = *in @@ -1209,6 +1717,63 @@ func (in *BudgetSubscriptionList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetSubscriptionNotificationInitParameters) DeepCopyInto(out *BudgetSubscriptionNotificationInitParameters) { + *out = *in + if in.ContactEmails != nil { + in, out := &in.ContactEmails, &out.ContactEmails + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ContactRoles != nil { + in, out := &in.ContactRoles, &out.ContactRoles + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Threshold != nil { + in, out := &in.Threshold, &out.Threshold + *out = new(float64) + **out = **in + } + if in.ThresholdType != nil { + in, out := &in.ThresholdType, &out.ThresholdType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionNotificationInitParameters. +func (in *BudgetSubscriptionNotificationInitParameters) DeepCopy() *BudgetSubscriptionNotificationInitParameters { + if in == nil { + return nil + } + out := new(BudgetSubscriptionNotificationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetSubscriptionNotificationObservation) DeepCopyInto(out *BudgetSubscriptionNotificationObservation) { *out = *in @@ -1479,6 +2044,7 @@ func (in *BudgetSubscriptionSpec) DeepCopyInto(out *BudgetSubscriptionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionSpec. @@ -1508,6 +2074,31 @@ func (in *BudgetSubscriptionStatus) DeepCopy() *BudgetSubscriptionStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BudgetSubscriptionTimePeriodInitParameters) DeepCopyInto(out *BudgetSubscriptionTimePeriodInitParameters) { + *out = *in + if in.EndDate != nil { + in, out := &in.EndDate, &out.EndDate + *out = new(string) + **out = **in + } + if in.StartDate != nil { + in, out := &in.StartDate, &out.StartDate + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BudgetSubscriptionTimePeriodInitParameters. +func (in *BudgetSubscriptionTimePeriodInitParameters) DeepCopy() *BudgetSubscriptionTimePeriodInitParameters { + if in == nil { + return nil + } + out := new(BudgetSubscriptionTimePeriodInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BudgetSubscriptionTimePeriodObservation) DeepCopyInto(out *BudgetSubscriptionTimePeriodObservation) { *out = *in @@ -1558,6 +2149,42 @@ func (in *BudgetSubscriptionTimePeriodParameters) DeepCopy() *BudgetSubscription return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DimensionInitParameters) DeepCopyInto(out *DimensionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DimensionInitParameters. +func (in *DimensionInitParameters) DeepCopy() *DimensionInitParameters { + if in == nil { + return nil + } + out := new(DimensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DimensionObservation) DeepCopyInto(out *DimensionObservation) { *out = *in @@ -1630,6 +2257,42 @@ func (in *DimensionParameters) DeepCopy() *DimensionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilterDimensionInitParameters) DeepCopyInto(out *FilterDimensionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterDimensionInitParameters. +func (in *FilterDimensionInitParameters) DeepCopy() *FilterDimensionInitParameters { + if in == nil { + return nil + } + out := new(FilterDimensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FilterDimensionObservation) DeepCopyInto(out *FilterDimensionObservation) { *out = *in @@ -1702,6 +2365,78 @@ func (in *FilterDimensionParameters) DeepCopy() *FilterDimensionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilterInitParameters) DeepCopyInto(out *FilterInitParameters) { + *out = *in + if in.Dimension != nil { + in, out := &in.Dimension, &out.Dimension + *out = make([]DimensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Not != nil { + in, out := &in.Not, &out.Not + *out = make([]NotInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = make([]FilterTagInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterInitParameters. +func (in *FilterInitParameters) DeepCopy() *FilterInitParameters { + if in == nil { + return nil + } + out := new(FilterInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilterNotDimensionInitParameters) DeepCopyInto(out *FilterNotDimensionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterNotDimensionInitParameters. +func (in *FilterNotDimensionInitParameters) DeepCopy() *FilterNotDimensionInitParameters { + if in == nil { + return nil + } + out := new(FilterNotDimensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FilterNotDimensionObservation) DeepCopyInto(out *FilterNotDimensionObservation) { *out = *in @@ -1755,21 +2490,50 @@ func (in *FilterNotDimensionParameters) DeepCopyInto(out *FilterNotDimensionPara in, out := &in.Values, &out.Values *out = make([]*string, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterNotDimensionParameters. +func (in *FilterNotDimensionParameters) DeepCopy() *FilterNotDimensionParameters { + if in == nil { + return nil + } + out := new(FilterNotDimensionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilterNotInitParameters) DeepCopyInto(out *FilterNotInitParameters) { + *out = *in + if in.Dimension != nil { + in, out := &in.Dimension, &out.Dimension + *out = make([]FilterNotDimensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = make([]NotTagInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterNotDimensionParameters. -func (in *FilterNotDimensionParameters) DeepCopy() *FilterNotDimensionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterNotInitParameters. +func (in *FilterNotInitParameters) DeepCopy() *FilterNotInitParameters { if in == nil { return nil } - out := new(FilterNotDimensionParameters) + out := new(FilterNotInitParameters) in.DeepCopyInto(out) return out } @@ -1832,6 +2596,42 @@ func (in *FilterNotParameters) DeepCopy() *FilterNotParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilterNotTagInitParameters) DeepCopyInto(out *FilterNotTagInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterNotTagInitParameters. +func (in *FilterNotTagInitParameters) DeepCopy() *FilterNotTagInitParameters { + if in == nil { + return nil + } + out := new(FilterNotTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FilterNotTagObservation) DeepCopyInto(out *FilterNotTagObservation) { *out = *in @@ -1976,6 +2776,42 @@ func (in *FilterParameters) DeepCopy() *FilterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilterTagInitParameters) DeepCopyInto(out *FilterTagInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterTagInitParameters. +func (in *FilterTagInitParameters) DeepCopy() *FilterTagInitParameters { + if in == nil { + return nil + } + out := new(FilterTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FilterTagObservation) DeepCopyInto(out *FilterTagObservation) { *out = *in @@ -2048,6 +2884,42 @@ func (in *FilterTagParameters) DeepCopy() *FilterTagParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotDimensionInitParameters) DeepCopyInto(out *NotDimensionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotDimensionInitParameters. +func (in *NotDimensionInitParameters) DeepCopy() *NotDimensionInitParameters { + if in == nil { + return nil + } + out := new(NotDimensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotDimensionObservation) DeepCopyInto(out *NotDimensionObservation) { *out = *in @@ -2120,6 +2992,35 @@ func (in *NotDimensionParameters) DeepCopy() *NotDimensionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotInitParameters) DeepCopyInto(out *NotInitParameters) { + *out = *in + if in.Dimension != nil { + in, out := &in.Dimension, &out.Dimension + *out = make([]NotDimensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = make([]TagInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotInitParameters. +func (in *NotInitParameters) DeepCopy() *NotInitParameters { + if in == nil { + return nil + } + out := new(NotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotObservation) DeepCopyInto(out *NotObservation) { *out = *in @@ -2178,6 +3079,42 @@ func (in *NotParameters) DeepCopy() *NotParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotTagInitParameters) DeepCopyInto(out *NotTagInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotTagInitParameters. +func (in *NotTagInitParameters) DeepCopy() *NotTagInitParameters { + if in == nil { + return nil + } + out := new(NotTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotTagObservation) DeepCopyInto(out *NotTagObservation) { *out = *in @@ -2250,6 +3187,52 @@ func (in *NotTagParameters) DeepCopy() *NotTagParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotificationInitParameters) DeepCopyInto(out *NotificationInitParameters) { + *out = *in + if in.ContactEmails != nil { + in, out := &in.ContactEmails, &out.ContactEmails + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Threshold != nil { + in, out := &in.Threshold, &out.Threshold + *out = new(float64) + **out = **in + } + if in.ThresholdType != nil { + in, out := &in.ThresholdType, &out.ThresholdType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationInitParameters. +func (in *NotificationInitParameters) DeepCopy() *NotificationInitParameters { + if in == nil { + return nil + } + out := new(NotificationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotificationObservation) DeepCopyInto(out *NotificationObservation) { *out = *in @@ -2342,6 +3325,42 @@ func (in *NotificationParameters) DeepCopy() *NotificationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TagInitParameters) DeepCopyInto(out *TagInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TagInitParameters. +func (in *TagInitParameters) DeepCopy() *TagInitParameters { + if in == nil { + return nil + } + out := new(TagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TagObservation) DeepCopyInto(out *TagObservation) { *out = *in @@ -2414,6 +3433,31 @@ func (in *TagParameters) DeepCopy() *TagParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TimePeriodInitParameters) DeepCopyInto(out *TimePeriodInitParameters) { + *out = *in + if in.EndDate != nil { + in, out := &in.EndDate, &out.EndDate + *out = new(string) + **out = **in + } + if in.StartDate != nil { + in, out := &in.StartDate, &out.StartDate + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TimePeriodInitParameters. +func (in *TimePeriodInitParameters) DeepCopy() *TimePeriodInitParameters { + if in == nil { + return nil + } + out := new(TimePeriodInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TimePeriodObservation) DeepCopyInto(out *TimePeriodObservation) { *out = *in diff --git a/apis/consumption/v1beta1/zz_generated.managed.go b/apis/consumption/v1beta1/zz_generated.managed.go index 387b93388..12b39cfaa 100644 --- a/apis/consumption/v1beta1/zz_generated.managed.go +++ b/apis/consumption/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *BudgetManagementGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BudgetManagementGroup. -func (mg *BudgetManagementGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BudgetManagementGroup. +func (mg *BudgetManagementGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BudgetManagementGroup. @@ -55,9 +55,9 @@ func (mg *BudgetManagementGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BudgetManagementGroup. -func (mg *BudgetManagementGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BudgetManagementGroup. +func (mg *BudgetManagementGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BudgetManagementGroup. @@ -93,9 +93,9 @@ func (mg *BudgetResourceGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BudgetResourceGroup. -func (mg *BudgetResourceGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BudgetResourceGroup. +func (mg *BudgetResourceGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BudgetResourceGroup. @@ -131,9 +131,9 @@ func (mg *BudgetResourceGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BudgetResourceGroup. -func (mg *BudgetResourceGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BudgetResourceGroup. +func (mg *BudgetResourceGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BudgetResourceGroup. @@ -169,9 +169,9 @@ func (mg *BudgetSubscription) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BudgetSubscription. -func (mg *BudgetSubscription) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BudgetSubscription. +func (mg *BudgetSubscription) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BudgetSubscription. @@ -207,9 +207,9 @@ func (mg *BudgetSubscription) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BudgetSubscription. -func (mg *BudgetSubscription) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BudgetSubscription. +func (mg *BudgetSubscription) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BudgetSubscription. diff --git a/apis/consumption/v1beta1/zz_generated_terraformed.go b/apis/consumption/v1beta1/zz_generated_terraformed.go index 49e9165c0..074273881 100755 --- a/apis/consumption/v1beta1/zz_generated_terraformed.go +++ b/apis/consumption/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *BudgetManagementGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BudgetManagementGroup +func (tr *BudgetManagementGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BudgetManagementGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BudgetManagementGroup) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *BudgetResourceGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BudgetResourceGroup +func (tr *BudgetResourceGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BudgetResourceGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BudgetResourceGroup) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *BudgetSubscription) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BudgetSubscription +func (tr *BudgetSubscription) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BudgetSubscription using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BudgetSubscription) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/containerregistry/v1beta1/zz_agentpool_types.go b/apis/containerregistry/v1beta1/zz_agentpool_types.go index 13f9fabfa..d57790583 100755 --- a/apis/containerregistry/v1beta1/zz_agentpool_types.go +++ b/apis/containerregistry/v1beta1/zz_agentpool_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AgentPoolInitParameters struct { + + // VMSS instance count. Defaults to 1. + InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` + + // The Azure Region where the Azure Container Registry Agent Pool should exist. Changing this forces a new Azure Container Registry Agent Pool to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Azure Container Registry Agent Pool. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Sets the VM your agent pool will run on. Valid values are: S1 (2 vCPUs, 3 GiB RAM), S2 (4 vCPUs, 8 GiB RAM), S3 (8 vCPUs, 16 GiB RAM) or I6 (64 vCPUs, 216 GiB RAM, Isolated). Defaults to S1. Changing this forces a new Azure Container Registry Agent Pool to be created. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + type AgentPoolObservation struct { // Name of Azure Container Registry to create an Agent Pool for. Changing this forces a new Azure Container Registry Agent Pool to be created. @@ -103,6 +118,18 @@ type AgentPoolParameters struct { type AgentPoolSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AgentPoolParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AgentPoolInitParameters `json:"initProvider,omitempty"` } // AgentPoolStatus defines the observed state of AgentPool. @@ -123,7 +150,7 @@ type AgentPoolStatus struct { type AgentPool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec AgentPoolSpec `json:"spec"` Status AgentPoolStatus `json:"status,omitempty"` } diff --git a/apis/containerregistry/v1beta1/zz_containerconnectedregistry_types.go b/apis/containerregistry/v1beta1/zz_containerconnectedregistry_types.go index 0a0cb7dce..0fbdea0a9 100755 --- a/apis/containerregistry/v1beta1/zz_containerconnectedregistry_types.go +++ b/apis/containerregistry/v1beta1/zz_containerconnectedregistry_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ContainerConnectedRegistryInitParameters struct { + + // Should the log auditing be enabled? + AuditLogEnabled *bool `json:"auditLogEnabled,omitempty" tf:"audit_log_enabled,omitempty"` + + // Specifies a list of IDs of Container Registry Tokens, which are meant to be used by the clients to connect to the Connected Registry. + ClientTokenIds []*string `json:"clientTokenIds,omitempty" tf:"client_token_ids,omitempty"` + + // The verbosity of the logs. Possible values are None, Debug, Information, Warning and Error. + LogLevel *string `json:"logLevel,omitempty" tf:"log_level,omitempty"` + + // The mode of the Connected Registry. Possible values are Mirror, ReadOnly, ReadWrite and Registry. Changing this forces a new Container Connected Registry to be created. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // One or more notification blocks as defined below. + Notification []NotificationInitParameters `json:"notification,omitempty" tf:"notification,omitempty"` + + // The ID of the parent registry. This can be either a Container Registry ID or a Connected Registry ID. Changing this forces a new Container Connected Registry to be created. + ParentRegistryID *string `json:"parentRegistryId,omitempty" tf:"parent_registry_id,omitempty"` + + // The period of time (in form of ISO8601) for which a message is available to sync before it is expired. Allowed range is from P1D to P90D. + SyncMessageTTL *string `json:"syncMessageTtl,omitempty" tf:"sync_message_ttl,omitempty"` + + // The cron expression indicating the schedule that the Connected Registry will sync with its parent. Defaults to * * * * *. + SyncSchedule *string `json:"syncSchedule,omitempty" tf:"sync_schedule,omitempty"` + + // The time window (in form of ISO8601) during which sync is enabled for each schedule occurrence. Allowed range is from PT3H to P7D. + SyncWindow *string `json:"syncWindow,omitempty" tf:"sync_window,omitempty"` +} + type ContainerConnectedRegistryObservation struct { // Should the log auditing be enabled? @@ -119,6 +149,21 @@ type ContainerConnectedRegistryParameters struct { SyncWindow *string `json:"syncWindow,omitempty" tf:"sync_window,omitempty"` } +type NotificationInitParameters struct { + + // The action of the artifact that wants to be subscribed for the Connected Registry. Possible values are push, delete and * (i.e. any). + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The digest of the artifact that wants to be subscribed for the Connected Registry. + Digest *string `json:"digest,omitempty" tf:"digest,omitempty"` + + // The name of the artifact that wants to be subscribed for the Connected Registry. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The tag of the artifact that wants to be subscribed for the Connected Registry. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` +} + type NotificationObservation struct { // The action of the artifact that wants to be subscribed for the Connected Registry. Possible values are push, delete and * (i.e. any). @@ -137,16 +182,16 @@ type NotificationObservation struct { type NotificationParameters struct { // The action of the artifact that wants to be subscribed for the Connected Registry. Possible values are push, delete and * (i.e. any). - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The digest of the artifact that wants to be subscribed for the Connected Registry. // +kubebuilder:validation:Optional Digest *string `json:"digest,omitempty" tf:"digest,omitempty"` // The name of the artifact that wants to be subscribed for the Connected Registry. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The tag of the artifact that wants to be subscribed for the Connected Registry. // +kubebuilder:validation:Optional @@ -157,6 +202,18 @@ type NotificationParameters struct { type ContainerConnectedRegistrySpec struct { v1.ResourceSpec `json:",inline"` ForProvider ContainerConnectedRegistryParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ContainerConnectedRegistryInitParameters `json:"initProvider,omitempty"` } // ContainerConnectedRegistryStatus defines the observed state of ContainerConnectedRegistry. diff --git a/apis/containerregistry/v1beta1/zz_generated.deepcopy.go b/apis/containerregistry/v1beta1/zz_generated.deepcopy.go index ebe3339da..4daee2d65 100644 --- a/apis/containerregistry/v1beta1/zz_generated.deepcopy.go +++ b/apis/containerregistry/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,51 @@ func (in *AgentPool) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AgentPoolInitParameters) DeepCopyInto(out *AgentPoolInitParameters) { + *out = *in + if in.InstanceCount != nil { + in, out := &in.InstanceCount, &out.InstanceCount + *out = new(float64) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentPoolInitParameters. +func (in *AgentPoolInitParameters) DeepCopy() *AgentPoolInitParameters { + if in == nil { + return nil + } + out := new(AgentPoolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AgentPoolList) DeepCopyInto(out *AgentPoolList) { *out = *in @@ -233,6 +278,7 @@ func (in *AgentPoolSpec) DeepCopyInto(out *AgentPoolSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentPoolSpec. @@ -289,6 +335,74 @@ func (in *ContainerConnectedRegistry) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerConnectedRegistryInitParameters) DeepCopyInto(out *ContainerConnectedRegistryInitParameters) { + *out = *in + if in.AuditLogEnabled != nil { + in, out := &in.AuditLogEnabled, &out.AuditLogEnabled + *out = new(bool) + **out = **in + } + if in.ClientTokenIds != nil { + in, out := &in.ClientTokenIds, &out.ClientTokenIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LogLevel != nil { + in, out := &in.LogLevel, &out.LogLevel + *out = new(string) + **out = **in + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Notification != nil { + in, out := &in.Notification, &out.Notification + *out = make([]NotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ParentRegistryID != nil { + in, out := &in.ParentRegistryID, &out.ParentRegistryID + *out = new(string) + **out = **in + } + if in.SyncMessageTTL != nil { + in, out := &in.SyncMessageTTL, &out.SyncMessageTTL + *out = new(string) + **out = **in + } + if in.SyncSchedule != nil { + in, out := &in.SyncSchedule, &out.SyncSchedule + *out = new(string) + **out = **in + } + if in.SyncWindow != nil { + in, out := &in.SyncWindow, &out.SyncWindow + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerConnectedRegistryInitParameters. +func (in *ContainerConnectedRegistryInitParameters) DeepCopy() *ContainerConnectedRegistryInitParameters { + if in == nil { + return nil + } + out := new(ContainerConnectedRegistryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContainerConnectedRegistryList) DeepCopyInto(out *ContainerConnectedRegistryList) { *out = *in @@ -507,6 +621,7 @@ func (in *ContainerConnectedRegistrySpec) DeepCopyInto(out *ContainerConnectedRe *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerConnectedRegistrySpec. @@ -536,6 +651,31 @@ func (in *ContainerConnectedRegistryStatus) DeepCopy() *ContainerConnectedRegist return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncryptionInitParameters) DeepCopyInto(out *EncryptionInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionInitParameters. +func (in *EncryptionInitParameters) DeepCopy() *EncryptionInitParameters { + if in == nil { + return nil + } + out := new(EncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EncryptionObservation) DeepCopyInto(out *EncryptionObservation) { *out = *in @@ -606,6 +746,51 @@ func (in *EncryptionParameters) DeepCopy() *EncryptionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GeoreplicationsInitParameters) DeepCopyInto(out *GeoreplicationsInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.RegionalEndpointEnabled != nil { + in, out := &in.RegionalEndpointEnabled, &out.RegionalEndpointEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZoneRedundancyEnabled != nil { + in, out := &in.ZoneRedundancyEnabled, &out.ZoneRedundancyEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoreplicationsInitParameters. +func (in *GeoreplicationsInitParameters) DeepCopy() *GeoreplicationsInitParameters { + if in == nil { + return nil + } + out := new(GeoreplicationsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GeoreplicationsObservation) DeepCopyInto(out *GeoreplicationsObservation) { *out = *in @@ -696,6 +881,31 @@ func (in *GeoreplicationsParameters) DeepCopy() *GeoreplicationsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPRuleInitParameters) DeepCopyInto(out *IPRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.IPRange != nil { + in, out := &in.IPRange, &out.IPRange + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRuleInitParameters. +func (in *IPRuleInitParameters) DeepCopy() *IPRuleInitParameters { + if in == nil { + return nil + } + out := new(IPRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPRuleObservation) DeepCopyInto(out *IPRuleObservation) { *out = *in @@ -746,6 +956,37 @@ func (in *IPRuleParameters) DeepCopy() *IPRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -818,6 +1059,40 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkRuleSetInitParameters) DeepCopyInto(out *NetworkRuleSetInitParameters) { + *out = *in + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.IPRule != nil { + in, out := &in.IPRule, &out.IPRule + *out = make([]IPRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VirtualNetwork != nil { + in, out := &in.VirtualNetwork, &out.VirtualNetwork + *out = make([]VirtualNetworkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkRuleSetInitParameters. +func (in *NetworkRuleSetInitParameters) DeepCopy() *NetworkRuleSetInitParameters { + if in == nil { + return nil + } + out := new(NetworkRuleSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkRuleSetObservation) DeepCopyInto(out *NetworkRuleSetObservation) { *out = *in @@ -886,6 +1161,41 @@ func (in *NetworkRuleSetParameters) DeepCopy() *NetworkRuleSetParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotificationInitParameters) DeepCopyInto(out *NotificationInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Digest != nil { + in, out := &in.Digest, &out.Digest + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationInitParameters. +func (in *NotificationInitParameters) DeepCopy() *NotificationInitParameters { + if in == nil { + return nil + } + out := new(NotificationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotificationObservation) DeepCopyInto(out *NotificationObservation) { *out = *in @@ -956,6 +1266,26 @@ func (in *NotificationParameters) DeepCopy() *NotificationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Password1InitParameters) DeepCopyInto(out *Password1InitParameters) { + *out = *in + if in.Expiry != nil { + in, out := &in.Expiry, &out.Expiry + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Password1InitParameters. +func (in *Password1InitParameters) DeepCopy() *Password1InitParameters { + if in == nil { + return nil + } + out := new(Password1InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Password1Observation) DeepCopyInto(out *Password1Observation) { *out = *in @@ -996,6 +1326,26 @@ func (in *Password1Parameters) DeepCopy() *Password1Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Password2InitParameters) DeepCopyInto(out *Password2InitParameters) { + *out = *in + if in.Expiry != nil { + in, out := &in.Expiry, &out.Expiry + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Password2InitParameters. +func (in *Password2InitParameters) DeepCopy() *Password2InitParameters { + if in == nil { + return nil + } + out := new(Password2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Password2Observation) DeepCopyInto(out *Password2Observation) { *out = *in @@ -1024,45 +1374,167 @@ func (in *Password2Parameters) DeepCopyInto(out *Password2Parameters) { *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Password2Parameters. -func (in *Password2Parameters) DeepCopy() *Password2Parameters { - if in == nil { - return nil +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Password2Parameters. +func (in *Password2Parameters) DeepCopy() *Password2Parameters { + if in == nil { + return nil + } + out := new(Password2Parameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Registry) DeepCopyInto(out *Registry) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Registry. +func (in *Registry) DeepCopy() *Registry { + if in == nil { + return nil + } + out := new(Registry) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Registry) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RegistryInitParameters) DeepCopyInto(out *RegistryInitParameters) { + *out = *in + if in.AdminEnabled != nil { + in, out := &in.AdminEnabled, &out.AdminEnabled + *out = new(bool) + **out = **in + } + if in.AnonymousPullEnabled != nil { + in, out := &in.AnonymousPullEnabled, &out.AnonymousPullEnabled + *out = new(bool) + **out = **in + } + if in.DataEndpointEnabled != nil { + in, out := &in.DataEndpointEnabled, &out.DataEndpointEnabled + *out = new(bool) + **out = **in + } + if in.Encryption != nil { + in, out := &in.Encryption, &out.Encryption + *out = make([]EncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExportPolicyEnabled != nil { + in, out := &in.ExportPolicyEnabled, &out.ExportPolicyEnabled + *out = new(bool) + **out = **in + } + if in.Georeplications != nil { + in, out := &in.Georeplications, &out.Georeplications + *out = make([]GeoreplicationsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.NetworkRuleBypassOption != nil { + in, out := &in.NetworkRuleBypassOption, &out.NetworkRuleBypassOption + *out = new(string) + **out = **in + } + if in.NetworkRuleSet != nil { + in, out := &in.NetworkRuleSet, &out.NetworkRuleSet + *out = make([]NetworkRuleSetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.QuarantinePolicyEnabled != nil { + in, out := &in.QuarantinePolicyEnabled, &out.QuarantinePolicyEnabled + *out = new(bool) + **out = **in + } + if in.RetentionPolicy != nil { + in, out := &in.RetentionPolicy, &out.RetentionPolicy + *out = make([]RetentionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TrustPolicy != nil { + in, out := &in.TrustPolicy, &out.TrustPolicy + *out = make([]TrustPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ZoneRedundancyEnabled != nil { + in, out := &in.ZoneRedundancyEnabled, &out.ZoneRedundancyEnabled + *out = new(bool) + **out = **in } - out := new(Password2Parameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Registry) DeepCopyInto(out *Registry) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Registry. -func (in *Registry) DeepCopy() *Registry { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistryInitParameters. +func (in *RegistryInitParameters) DeepCopy() *RegistryInitParameters { if in == nil { return nil } - out := new(Registry) + out := new(RegistryInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *Registry) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RegistryList) DeepCopyInto(out *RegistryList) { *out = *in @@ -1379,6 +1851,7 @@ func (in *RegistrySpec) DeepCopyInto(out *RegistrySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegistrySpec. @@ -1408,6 +1881,31 @@ func (in *RegistryStatus) DeepCopy() *RegistryStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RetentionPolicyInitParameters) DeepCopyInto(out *RetentionPolicyInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = new(float64) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionPolicyInitParameters. +func (in *RetentionPolicyInitParameters) DeepCopy() *RetentionPolicyInitParameters { + if in == nil { + return nil + } + out := new(RetentionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RetentionPolicyObservation) DeepCopyInto(out *RetentionPolicyObservation) { *out = *in @@ -1485,6 +1983,37 @@ func (in *ScopeMap) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScopeMapInitParameters) DeepCopyInto(out *ScopeMapInitParameters) { + *out = *in + if in.Actions != nil { + in, out := &in.Actions, &out.Actions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScopeMapInitParameters. +func (in *ScopeMapInitParameters) DeepCopy() *ScopeMapInitParameters { + if in == nil { + return nil + } + out := new(ScopeMapInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScopeMapList) DeepCopyInto(out *ScopeMapList) { *out = *in @@ -1629,6 +2158,7 @@ func (in *ScopeMapSpec) DeepCopyInto(out *ScopeMapSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScopeMapSpec. @@ -1685,6 +2215,26 @@ func (in *Token) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TokenInitParameters) DeepCopyInto(out *TokenInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenInitParameters. +func (in *TokenInitParameters) DeepCopy() *TokenInitParameters { + if in == nil { + return nil + } + out := new(TokenInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TokenList) DeepCopyInto(out *TokenList) { *out = *in @@ -1849,6 +2399,35 @@ func (in *TokenPassword) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TokenPasswordInitParameters) DeepCopyInto(out *TokenPasswordInitParameters) { + *out = *in + if in.Password1 != nil { + in, out := &in.Password1, &out.Password1 + *out = make([]Password1InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Password2 != nil { + in, out := &in.Password2, &out.Password2 + *out = make([]Password2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenPasswordInitParameters. +func (in *TokenPasswordInitParameters) DeepCopy() *TokenPasswordInitParameters { + if in == nil { + return nil + } + out := new(TokenPasswordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TokenPasswordList) DeepCopyInto(out *TokenPasswordList) { *out = *in @@ -1969,6 +2548,7 @@ func (in *TokenPasswordSpec) DeepCopyInto(out *TokenPasswordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenPasswordSpec. @@ -2003,6 +2583,7 @@ func (in *TokenSpec) DeepCopyInto(out *TokenSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenSpec. @@ -2032,6 +2613,26 @@ func (in *TokenStatus) DeepCopy() *TokenStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrustPolicyInitParameters) DeepCopyInto(out *TrustPolicyInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrustPolicyInitParameters. +func (in *TrustPolicyInitParameters) DeepCopy() *TrustPolicyInitParameters { + if in == nil { + return nil + } + out := new(TrustPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrustPolicyObservation) DeepCopyInto(out *TrustPolicyObservation) { *out = *in @@ -2072,6 +2673,26 @@ func (in *TrustPolicyParameters) DeepCopy() *TrustPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkInitParameters) DeepCopyInto(out *VirtualNetworkInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkInitParameters. +func (in *VirtualNetworkInitParameters) DeepCopy() *VirtualNetworkInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkObservation) DeepCopyInto(out *VirtualNetworkObservation) { *out = *in @@ -2159,6 +2780,82 @@ func (in *Webhook) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebhookInitParameters) DeepCopyInto(out *WebhookInitParameters) { + *out = *in + if in.Actions != nil { + in, out := &in.Actions, &out.Actions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CustomHeaders != nil { + in, out := &in.CustomHeaders, &out.CustomHeaders + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.ServiceURI != nil { + in, out := &in.ServiceURI, &out.ServiceURI + *out = new(string) + **out = **in + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookInitParameters. +func (in *WebhookInitParameters) DeepCopy() *WebhookInitParameters { + if in == nil { + return nil + } + out := new(WebhookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebhookList) DeepCopyInto(out *WebhookList) { *out = *in @@ -2393,6 +3090,7 @@ func (in *WebhookSpec) DeepCopyInto(out *WebhookSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookSpec. diff --git a/apis/containerregistry/v1beta1/zz_generated.managed.go b/apis/containerregistry/v1beta1/zz_generated.managed.go index 5f3fac466..f9a592a23 100644 --- a/apis/containerregistry/v1beta1/zz_generated.managed.go +++ b/apis/containerregistry/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AgentPool) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AgentPool. -func (mg *AgentPool) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AgentPool. +func (mg *AgentPool) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AgentPool. @@ -55,9 +55,9 @@ func (mg *AgentPool) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AgentPool. -func (mg *AgentPool) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AgentPool. +func (mg *AgentPool) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AgentPool. @@ -93,9 +93,9 @@ func (mg *ContainerConnectedRegistry) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ContainerConnectedRegistry. -func (mg *ContainerConnectedRegistry) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ContainerConnectedRegistry. +func (mg *ContainerConnectedRegistry) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ContainerConnectedRegistry. @@ -131,9 +131,9 @@ func (mg *ContainerConnectedRegistry) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ContainerConnectedRegistry. -func (mg *ContainerConnectedRegistry) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ContainerConnectedRegistry. +func (mg *ContainerConnectedRegistry) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ContainerConnectedRegistry. @@ -169,9 +169,9 @@ func (mg *Registry) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Registry. -func (mg *Registry) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Registry. +func (mg *Registry) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Registry. @@ -207,9 +207,9 @@ func (mg *Registry) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Registry. -func (mg *Registry) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Registry. +func (mg *Registry) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Registry. @@ -245,9 +245,9 @@ func (mg *ScopeMap) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ScopeMap. -func (mg *ScopeMap) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ScopeMap. +func (mg *ScopeMap) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ScopeMap. @@ -283,9 +283,9 @@ func (mg *ScopeMap) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ScopeMap. -func (mg *ScopeMap) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ScopeMap. +func (mg *ScopeMap) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ScopeMap. @@ -321,9 +321,9 @@ func (mg *Token) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Token. -func (mg *Token) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Token. +func (mg *Token) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Token. @@ -359,9 +359,9 @@ func (mg *Token) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Token. -func (mg *Token) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Token. +func (mg *Token) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Token. @@ -397,9 +397,9 @@ func (mg *TokenPassword) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TokenPassword. -func (mg *TokenPassword) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TokenPassword. +func (mg *TokenPassword) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TokenPassword. @@ -435,9 +435,9 @@ func (mg *TokenPassword) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TokenPassword. -func (mg *TokenPassword) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TokenPassword. +func (mg *TokenPassword) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TokenPassword. @@ -473,9 +473,9 @@ func (mg *Webhook) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Webhook. -func (mg *Webhook) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Webhook. +func (mg *Webhook) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Webhook. @@ -511,9 +511,9 @@ func (mg *Webhook) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Webhook. -func (mg *Webhook) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Webhook. +func (mg *Webhook) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Webhook. diff --git a/apis/containerregistry/v1beta1/zz_generated_terraformed.go b/apis/containerregistry/v1beta1/zz_generated_terraformed.go index a0e0e66d2..ece79f5bb 100755 --- a/apis/containerregistry/v1beta1/zz_generated_terraformed.go +++ b/apis/containerregistry/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ContainerConnectedRegistry) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ContainerConnectedRegistry +func (tr *ContainerConnectedRegistry) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ContainerConnectedRegistry using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ContainerConnectedRegistry) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Registry) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Registry +func (tr *Registry) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Registry using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Registry) LateInitialize(attrs []byte) (bool, error) { @@ -218,6 +238,16 @@ func (tr *AgentPool) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AgentPool +func (tr *AgentPool) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AgentPool using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AgentPool) LateInitialize(attrs []byte) (bool, error) { @@ -292,6 +322,16 @@ func (tr *ScopeMap) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ScopeMap +func (tr *ScopeMap) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ScopeMap using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ScopeMap) LateInitialize(attrs []byte) (bool, error) { @@ -366,6 +406,16 @@ func (tr *Token) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Token +func (tr *Token) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Token using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Token) LateInitialize(attrs []byte) (bool, error) { @@ -440,6 +490,16 @@ func (tr *TokenPassword) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TokenPassword +func (tr *TokenPassword) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TokenPassword using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TokenPassword) LateInitialize(attrs []byte) (bool, error) { @@ -514,6 +574,16 @@ func (tr *Webhook) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Webhook +func (tr *Webhook) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Webhook using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Webhook) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/containerregistry/v1beta1/zz_registry_types.go b/apis/containerregistry/v1beta1/zz_registry_types.go index 04cfe4e30..4d8b8193d 100755 --- a/apis/containerregistry/v1beta1/zz_registry_types.go +++ b/apis/containerregistry/v1beta1/zz_registry_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EncryptionInitParameters struct { + + // Boolean value that indicates whether encryption is enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled"` + + // The ID of the Key Vault Key. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id"` +} + type EncryptionObservation struct { // Boolean value that indicates whether encryption is enabled. @@ -50,6 +59,21 @@ type EncryptionParameters struct { KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id"` } +type GeoreplicationsInitParameters struct { + + // A location where the container registry should be geo-replicated. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether regional endpoint is enabled for this Container Registry? + RegionalEndpointEnabled *bool `json:"regionalEndpointEnabled,omitempty" tf:"regional_endpoint_enabled,omitempty"` + + // A mapping of tags to assign to this replication location. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Whether zone redundancy is enabled for this Container Registry? Changing this forces a new resource to be created. Defaults to false. + ZoneRedundancyEnabled *bool `json:"zoneRedundancyEnabled,omitempty" tf:"zone_redundancy_enabled,omitempty"` +} + type GeoreplicationsObservation struct { // A location where the container registry should be geo-replicated. @@ -68,8 +92,8 @@ type GeoreplicationsObservation struct { type GeoreplicationsParameters struct { // A location where the container registry should be geo-replicated. - // +kubebuilder:validation:Required - Location *string `json:"location" tf:"location,omitempty"` + // +kubebuilder:validation:Optional + Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether regional endpoint is enabled for this Container Registry? // +kubebuilder:validation:Optional @@ -84,6 +108,15 @@ type GeoreplicationsParameters struct { ZoneRedundancyEnabled *bool `json:"zoneRedundancyEnabled,omitempty" tf:"zone_redundancy_enabled,omitempty"` } +type IPRuleInitParameters struct { + + // The behaviour for requests matching this rule. At this time the only supported value is Allow + Action *string `json:"action,omitempty" tf:"action"` + + // The CIDR block from which requests will match the rule. + IPRange *string `json:"ipRange,omitempty" tf:"ip_range"` +} + type IPRuleObservation struct { // The behaviour for requests matching this rule. At this time the only supported value is Allow @@ -104,6 +137,15 @@ type IPRuleParameters struct { IPRange *string `json:"ipRange,omitempty" tf:"ip_range"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Container Registry. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Container Registry. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Container Registry. @@ -126,8 +168,20 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Container Registry. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type NetworkRuleSetInitParameters struct { + + // The behaviour for requests matching no rules. Either Allow or Deny. Defaults to Allow + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action"` + + // One or more ip_rule blocks as defined below. + IPRule []IPRuleInitParameters `json:"ipRule,omitempty" tf:"ip_rule"` + + // One or more virtual_network blocks as defined below. + VirtualNetwork []VirtualNetworkInitParameters `json:"virtualNetwork,omitempty" tf:"virtual_network"` } type NetworkRuleSetObservation struct { @@ -157,6 +211,60 @@ type NetworkRuleSetParameters struct { VirtualNetwork []VirtualNetworkParameters `json:"virtualNetwork,omitempty" tf:"virtual_network"` } +type RegistryInitParameters struct { + + // Specifies whether the admin user is enabled. Defaults to false. + AdminEnabled *bool `json:"adminEnabled,omitempty" tf:"admin_enabled,omitempty"` + + // Whether allows anonymous (unauthenticated) pull access to this Container Registry? This is only supported on resources with the Standard or Premium SKU. + AnonymousPullEnabled *bool `json:"anonymousPullEnabled,omitempty" tf:"anonymous_pull_enabled,omitempty"` + + // Whether to enable dedicated data endpoints for this Container Registry? This is only supported on resources with the Premium SKU. + DataEndpointEnabled *bool `json:"dataEndpointEnabled,omitempty" tf:"data_endpoint_enabled,omitempty"` + + // An encryption block as documented below. + Encryption []EncryptionInitParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` + + // Boolean value that indicates whether export policy is enabled. Defaults to true. In order to set it to false, make sure the public_network_access_enabled is also set to false. + ExportPolicyEnabled *bool `json:"exportPolicyEnabled,omitempty" tf:"export_policy_enabled,omitempty"` + + // A georeplications block as documented below. + Georeplications []GeoreplicationsInitParameters `json:"georeplications,omitempty" tf:"georeplications,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether to allow trusted Azure services to access a network restricted Container Registry? Possible values are None and AzureServices. Defaults to AzureServices. + NetworkRuleBypassOption *string `json:"networkRuleBypassOption,omitempty" tf:"network_rule_bypass_option,omitempty"` + + // A network_rule_set block as documented below. + NetworkRuleSet []NetworkRuleSetInitParameters `json:"networkRuleSet,omitempty" tf:"network_rule_set,omitempty"` + + // Whether public network access is allowed for the container registry. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Boolean value that indicates whether quarantine policy is enabled. + QuarantinePolicyEnabled *bool `json:"quarantinePolicyEnabled,omitempty" tf:"quarantine_policy_enabled,omitempty"` + + // A retention_policy block as documented below. + RetentionPolicy []RetentionPolicyInitParameters `json:"retentionPolicy,omitempty" tf:"retention_policy,omitempty"` + + // The SKU name of the container registry. Possible values are Basic, Standard and Premium. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A trust_policy block as documented below. + TrustPolicy []TrustPolicyInitParameters `json:"trustPolicy,omitempty" tf:"trust_policy,omitempty"` + + // Whether zone redundancy is enabled for this Container Registry? Changing this forces a new resource to be created. Defaults to false. + ZoneRedundancyEnabled *bool `json:"zoneRedundancyEnabled,omitempty" tf:"zone_redundancy_enabled,omitempty"` +} + type RegistryObservation struct { // Specifies whether the admin user is enabled. Defaults to false. @@ -307,6 +415,15 @@ type RegistryParameters struct { ZoneRedundancyEnabled *bool `json:"zoneRedundancyEnabled,omitempty" tf:"zone_redundancy_enabled,omitempty"` } +type RetentionPolicyInitParameters struct { + + // The number of days to retain an untagged manifest after which it gets purged. Default is 7. + Days *float64 `json:"days,omitempty" tf:"days"` + + // Boolean value that indicates whether the policy is enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled"` +} + type RetentionPolicyObservation struct { // The number of days to retain an untagged manifest after which it gets purged. Default is 7. @@ -327,6 +444,12 @@ type RetentionPolicyParameters struct { Enabled *bool `json:"enabled,omitempty" tf:"enabled"` } +type TrustPolicyInitParameters struct { + + // Boolean value that indicates whether the policy is enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled"` +} + type TrustPolicyObservation struct { // Boolean value that indicates whether the policy is enabled. @@ -340,6 +463,12 @@ type TrustPolicyParameters struct { Enabled *bool `json:"enabled,omitempty" tf:"enabled"` } +type VirtualNetworkInitParameters struct { + + // The behaviour for requests matching this rule. At this time the only supported value is Allow + Action *string `json:"action,omitempty" tf:"action"` +} + type VirtualNetworkObservation struct { // The behaviour for requests matching this rule. At this time the only supported value is Allow @@ -374,6 +503,18 @@ type VirtualNetworkParameters struct { type RegistrySpec struct { v1.ResourceSpec `json:",inline"` ForProvider RegistryParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RegistryInitParameters `json:"initProvider,omitempty"` } // RegistryStatus defines the observed state of Registry. @@ -394,8 +535,8 @@ type RegistryStatus struct { type Registry struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec RegistrySpec `json:"spec"` Status RegistryStatus `json:"status,omitempty"` } diff --git a/apis/containerregistry/v1beta1/zz_scopemap_types.go b/apis/containerregistry/v1beta1/zz_scopemap_types.go index 4ee408522..687da3803 100755 --- a/apis/containerregistry/v1beta1/zz_scopemap_types.go +++ b/apis/containerregistry/v1beta1/zz_scopemap_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ScopeMapInitParameters struct { + + // A list of actions to attach to the scope map (e.g. repo/content/read, repo2/content/delete). + Actions []*string `json:"actions,omitempty" tf:"actions,omitempty"` + + // The description of the Container Registry. + Description *string `json:"description,omitempty" tf:"description,omitempty"` +} + type ScopeMapObservation struct { // A list of actions to attach to the scope map (e.g. repo/content/read, repo2/content/delete). @@ -72,6 +81,18 @@ type ScopeMapParameters struct { type ScopeMapSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ScopeMapParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ScopeMapInitParameters `json:"initProvider,omitempty"` } // ScopeMapStatus defines the observed state of ScopeMap. @@ -92,7 +113,7 @@ type ScopeMapStatus struct { type ScopeMap struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.actions)",message="actions is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.actions) || has(self.initProvider.actions)",message="actions is a required parameter" Spec ScopeMapSpec `json:"spec"` Status ScopeMapStatus `json:"status,omitempty"` } diff --git a/apis/containerregistry/v1beta1/zz_token_types.go b/apis/containerregistry/v1beta1/zz_token_types.go index 423547a07..278ccd4f6 100755 --- a/apis/containerregistry/v1beta1/zz_token_types.go +++ b/apis/containerregistry/v1beta1/zz_token_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TokenInitParameters struct { + + // Should the Container Registry token be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + type TokenObservation struct { // The name of the Container Registry. Changing this forces a new resource to be created. @@ -82,6 +88,18 @@ type TokenParameters struct { type TokenSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TokenParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TokenInitParameters `json:"initProvider,omitempty"` } // TokenStatus defines the observed state of Token. diff --git a/apis/containerregistry/v1beta1/zz_tokenpassword_types.go b/apis/containerregistry/v1beta1/zz_tokenpassword_types.go index 00768ec51..7c9caad89 100755 --- a/apis/containerregistry/v1beta1/zz_tokenpassword_types.go +++ b/apis/containerregistry/v1beta1/zz_tokenpassword_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type Password1InitParameters struct { + + // The expiration date of the password in RFC3339 format. Changing this forces a new resource to be created. + Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` +} + type Password1Observation struct { // The expiration date of the password in RFC3339 format. Changing this forces a new resource to be created. @@ -26,6 +32,12 @@ type Password1Parameters struct { Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` } +type Password2InitParameters struct { + + // The expiration date of the password in RFC3339 format. Changing this forces a new resource to be created. + Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` +} + type Password2Observation struct { // The expiration date of the password in RFC3339 format. Changing this forces a new resource to be created. @@ -39,6 +51,15 @@ type Password2Parameters struct { Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` } +type TokenPasswordInitParameters struct { + + // One password block as defined below. + Password1 []Password1InitParameters `json:"password1,omitempty" tf:"password1,omitempty"` + + // One password block as defined below. + Password2 []Password2InitParameters `json:"password2,omitempty" tf:"password2,omitempty"` +} + type TokenPasswordObservation struct { // The ID of the Container Registry Token that this Container Registry Token Password resides in. Changing this forces a new Container Registry Token Password to be created. @@ -83,6 +104,18 @@ type TokenPasswordParameters struct { type TokenPasswordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TokenPasswordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TokenPasswordInitParameters `json:"initProvider,omitempty"` } // TokenPasswordStatus defines the observed state of TokenPassword. @@ -103,7 +136,7 @@ type TokenPasswordStatus struct { type TokenPassword struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.password1)",message="password1 is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.password1) || has(self.initProvider.password1)",message="password1 is a required parameter" Spec TokenPasswordSpec `json:"spec"` Status TokenPasswordStatus `json:"status,omitempty"` } diff --git a/apis/containerregistry/v1beta1/zz_webhook_types.go b/apis/containerregistry/v1beta1/zz_webhook_types.go index 3af29daac..649019d72 100755 --- a/apis/containerregistry/v1beta1/zz_webhook_types.go +++ b/apis/containerregistry/v1beta1/zz_webhook_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WebhookInitParameters struct { + + // A list of actions that trigger the Webhook to post notifications. At least one action needs to be specified. Valid values are: push, delete, quarantine, chart_push, chart_delete + Actions []*string `json:"actions,omitempty" tf:"actions,omitempty"` + + // Custom headers that will be added to the webhook notifications request. + CustomHeaders map[string]*string `json:"customHeaders,omitempty" tf:"custom_headers,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the scope of repositories that can trigger an event. For example, foo:* means events for all tags under repository foo. foo:bar means events for 'foo:bar' only. foo is equivalent to foo:latest. Empty means all events. Defaults to "". + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + + // Specifies the service URI for the Webhook to post notifications. + ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` + + // Specifies if this Webhook triggers notifications or not. Valid values: enabled and disabled. Default is enabled. + Status *string `json:"status,omitempty" tf:"status,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type WebhookObservation struct { // A list of actions that trigger the Webhook to post notifications. At least one action needs to be specified. Valid values are: push, delete, quarantine, chart_push, chart_delete @@ -107,6 +131,18 @@ type WebhookParameters struct { type WebhookSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WebhookParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WebhookInitParameters `json:"initProvider,omitempty"` } // WebhookStatus defines the observed state of Webhook. @@ -127,9 +163,9 @@ type WebhookStatus struct { type Webhook struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.actions)",message="actions is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serviceUri)",message="serviceUri is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.actions) || has(self.initProvider.actions)",message="actions is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serviceUri) || has(self.initProvider.serviceUri)",message="serviceUri is a required parameter" Spec WebhookSpec `json:"spec"` Status WebhookStatus `json:"status,omitempty"` } diff --git a/apis/containerservice/v1beta1/zz_generated.deepcopy.go b/apis/containerservice/v1beta1/zz_generated.deepcopy.go index 226aeb458..1131076b4 100644 --- a/apis/containerservice/v1beta1/zz_generated.deepcopy.go +++ b/apis/containerservice/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,37 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APIServerAccessProfileInitParameters) DeepCopyInto(out *APIServerAccessProfileInitParameters) { + *out = *in + if in.AuthorizedIPRanges != nil { + in, out := &in.AuthorizedIPRanges, &out.AuthorizedIPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.VnetIntegrationEnabled != nil { + in, out := &in.VnetIntegrationEnabled, &out.VnetIntegrationEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerAccessProfileInitParameters. +func (in *APIServerAccessProfileInitParameters) DeepCopy() *APIServerAccessProfileInitParameters { + if in == nil { + return nil + } + out := new(APIServerAccessProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APIServerAccessProfileObservation) DeepCopyInto(out *APIServerAccessProfileObservation) { *out = *in @@ -96,6 +127,21 @@ func (in *APIServerAccessProfileParameters) DeepCopy() *APIServerAccessProfilePa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AciConnectorLinuxInitParameters) DeepCopyInto(out *AciConnectorLinuxInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AciConnectorLinuxInitParameters. +func (in *AciConnectorLinuxInitParameters) DeepCopy() *AciConnectorLinuxInitParameters { + if in == nil { + return nil + } + out := new(AciConnectorLinuxInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AciConnectorLinuxObservation) DeepCopyInto(out *AciConnectorLinuxObservation) { *out = *in @@ -153,6 +199,37 @@ func (in *AciConnectorLinuxParameters) DeepCopy() *AciConnectorLinuxParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AllowedInitParameters) DeepCopyInto(out *AllowedInitParameters) { + *out = *in + if in.Day != nil { + in, out := &in.Day, &out.Day + *out = new(string) + **out = **in + } + if in.Hours != nil { + in, out := &in.Hours, &out.Hours + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AllowedInitParameters. +func (in *AllowedInitParameters) DeepCopy() *AllowedInitParameters { + if in == nil { + return nil + } + out := new(AllowedInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AllowedObservation) DeepCopyInto(out *AllowedObservation) { *out = *in @@ -215,6 +292,106 @@ func (in *AllowedParameters) DeepCopy() *AllowedParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoScalerProfileInitParameters) DeepCopyInto(out *AutoScalerProfileInitParameters) { + *out = *in + if in.BalanceSimilarNodeGroups != nil { + in, out := &in.BalanceSimilarNodeGroups, &out.BalanceSimilarNodeGroups + *out = new(bool) + **out = **in + } + if in.EmptyBulkDeleteMax != nil { + in, out := &in.EmptyBulkDeleteMax, &out.EmptyBulkDeleteMax + *out = new(string) + **out = **in + } + if in.Expander != nil { + in, out := &in.Expander, &out.Expander + *out = new(string) + **out = **in + } + if in.MaxGracefulTerminationSec != nil { + in, out := &in.MaxGracefulTerminationSec, &out.MaxGracefulTerminationSec + *out = new(string) + **out = **in + } + if in.MaxNodeProvisioningTime != nil { + in, out := &in.MaxNodeProvisioningTime, &out.MaxNodeProvisioningTime + *out = new(string) + **out = **in + } + if in.MaxUnreadyNodes != nil { + in, out := &in.MaxUnreadyNodes, &out.MaxUnreadyNodes + *out = new(float64) + **out = **in + } + if in.MaxUnreadyPercentage != nil { + in, out := &in.MaxUnreadyPercentage, &out.MaxUnreadyPercentage + *out = new(float64) + **out = **in + } + if in.NewPodScaleUpDelay != nil { + in, out := &in.NewPodScaleUpDelay, &out.NewPodScaleUpDelay + *out = new(string) + **out = **in + } + if in.ScaleDownDelayAfterAdd != nil { + in, out := &in.ScaleDownDelayAfterAdd, &out.ScaleDownDelayAfterAdd + *out = new(string) + **out = **in + } + if in.ScaleDownDelayAfterDelete != nil { + in, out := &in.ScaleDownDelayAfterDelete, &out.ScaleDownDelayAfterDelete + *out = new(string) + **out = **in + } + if in.ScaleDownDelayAfterFailure != nil { + in, out := &in.ScaleDownDelayAfterFailure, &out.ScaleDownDelayAfterFailure + *out = new(string) + **out = **in + } + if in.ScaleDownUnneeded != nil { + in, out := &in.ScaleDownUnneeded, &out.ScaleDownUnneeded + *out = new(string) + **out = **in + } + if in.ScaleDownUnready != nil { + in, out := &in.ScaleDownUnready, &out.ScaleDownUnready + *out = new(string) + **out = **in + } + if in.ScaleDownUtilizationThreshold != nil { + in, out := &in.ScaleDownUtilizationThreshold, &out.ScaleDownUtilizationThreshold + *out = new(string) + **out = **in + } + if in.ScanInterval != nil { + in, out := &in.ScanInterval, &out.ScanInterval + *out = new(string) + **out = **in + } + if in.SkipNodesWithLocalStorage != nil { + in, out := &in.SkipNodesWithLocalStorage, &out.SkipNodesWithLocalStorage + *out = new(bool) + **out = **in + } + if in.SkipNodesWithSystemPods != nil { + in, out := &in.SkipNodesWithSystemPods, &out.SkipNodesWithSystemPods + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScalerProfileInitParameters. +func (in *AutoScalerProfileInitParameters) DeepCopy() *AutoScalerProfileInitParameters { + if in == nil { + return nil + } + out := new(AutoScalerProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoScalerProfileObservation) DeepCopyInto(out *AutoScalerProfileObservation) { *out = *in @@ -415,6 +592,57 @@ func (in *AutoScalerProfileParameters) DeepCopy() *AutoScalerProfileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureActiveDirectoryRoleBasedAccessControlInitParameters) DeepCopyInto(out *AzureActiveDirectoryRoleBasedAccessControlInitParameters) { + *out = *in + if in.AdminGroupObjectIds != nil { + in, out := &in.AdminGroupObjectIds, &out.AdminGroupObjectIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AzureRbacEnabled != nil { + in, out := &in.AzureRbacEnabled, &out.AzureRbacEnabled + *out = new(bool) + **out = **in + } + if in.ClientAppID != nil { + in, out := &in.ClientAppID, &out.ClientAppID + *out = new(string) + **out = **in + } + if in.Managed != nil { + in, out := &in.Managed, &out.Managed + *out = new(bool) + **out = **in + } + if in.ServerAppID != nil { + in, out := &in.ServerAppID, &out.ServerAppID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectoryRoleBasedAccessControlInitParameters. +func (in *AzureActiveDirectoryRoleBasedAccessControlInitParameters) DeepCopy() *AzureActiveDirectoryRoleBasedAccessControlInitParameters { + if in == nil { + return nil + } + out := new(AzureActiveDirectoryRoleBasedAccessControlInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureActiveDirectoryRoleBasedAccessControlObservation) DeepCopyInto(out *AzureActiveDirectoryRoleBasedAccessControlObservation) { *out = *in @@ -522,6 +750,26 @@ func (in *AzureActiveDirectoryRoleBasedAccessControlParameters) DeepCopy() *Azur return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfidentialComputingInitParameters) DeepCopyInto(out *ConfidentialComputingInitParameters) { + *out = *in + if in.SgxQuoteHelperEnabled != nil { + in, out := &in.SgxQuoteHelperEnabled, &out.SgxQuoteHelperEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfidentialComputingInitParameters. +func (in *ConfidentialComputingInitParameters) DeepCopy() *ConfidentialComputingInitParameters { + if in == nil { + return nil + } + out := new(ConfidentialComputingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfidentialComputingObservation) DeepCopyInto(out *ConfidentialComputingObservation) { *out = *in @@ -562,6 +810,21 @@ func (in *ConfidentialComputingParameters) DeepCopy() *ConfidentialComputingPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConnectorIdentityInitParameters) DeepCopyInto(out *ConnectorIdentityInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectorIdentityInitParameters. +func (in *ConnectorIdentityInitParameters) DeepCopy() *ConnectorIdentityInitParameters { + if in == nil { + return nil + } + out := new(ConnectorIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConnectorIdentityObservation) DeepCopyInto(out *ConnectorIdentityObservation) { *out = *in @@ -608,7 +871,7 @@ func (in *ConnectorIdentityParameters) DeepCopy() *ConnectorIdentityParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DefaultNodePoolObservation) DeepCopyInto(out *DefaultNodePoolObservation) { +func (in *DefaultNodePoolInitParameters) DeepCopyInto(out *DefaultNodePoolInitParameters) { *out = *in if in.CapacityReservationGroupID != nil { in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID @@ -647,7 +910,7 @@ func (in *DefaultNodePoolObservation) DeepCopyInto(out *DefaultNodePoolObservati } if in.KubeletConfig != nil { in, out := &in.KubeletConfig, &out.KubeletConfig - *out = make([]KubeletConfigObservation, len(*in)) + *out = make([]KubeletConfigInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -659,7 +922,7 @@ func (in *DefaultNodePoolObservation) DeepCopyInto(out *DefaultNodePoolObservati } if in.LinuxOsConfig != nil { in, out := &in.LinuxOsConfig, &out.LinuxOsConfig - *out = make([]LinuxOsConfigObservation, len(*in)) + *out = make([]LinuxOsConfigInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -711,7 +974,7 @@ func (in *DefaultNodePoolObservation) DeepCopyInto(out *DefaultNodePoolObservati } if in.NodeNetworkProfile != nil { in, out := &in.NodeNetworkProfile, &out.NodeNetworkProfile - *out = make([]NodeNetworkProfileObservation, len(*in)) + *out = make([]NodeNetworkProfileInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -757,11 +1020,6 @@ func (in *DefaultNodePoolObservation) DeepCopyInto(out *DefaultNodePoolObservati *out = new(string) **out = **in } - if in.PodSubnetID != nil { - in, out := &in.PodSubnetID, &out.PodSubnetID - *out = new(string) - **out = **in - } if in.ProximityPlacementGroupID != nil { in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID *out = new(string) @@ -804,7 +1062,7 @@ func (in *DefaultNodePoolObservation) DeepCopyInto(out *DefaultNodePoolObservati } if in.UpgradeSettings != nil { in, out := &in.UpgradeSettings, &out.UpgradeSettings - *out = make([]UpgradeSettingsObservation, len(*in)) + *out = make([]UpgradeSettingsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -814,11 +1072,6 @@ func (in *DefaultNodePoolObservation) DeepCopyInto(out *DefaultNodePoolObservati *out = new(string) **out = **in } - if in.VnetSubnetID != nil { - in, out := &in.VnetSubnetID, &out.VnetSubnetID - *out = new(string) - **out = **in - } if in.WorkloadRuntime != nil { in, out := &in.WorkloadRuntime, &out.WorkloadRuntime *out = new(string) @@ -837,18 +1090,18 @@ func (in *DefaultNodePoolObservation) DeepCopyInto(out *DefaultNodePoolObservati } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultNodePoolObservation. -func (in *DefaultNodePoolObservation) DeepCopy() *DefaultNodePoolObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultNodePoolInitParameters. +func (in *DefaultNodePoolInitParameters) DeepCopy() *DefaultNodePoolInitParameters { if in == nil { return nil } - out := new(DefaultNodePoolObservation) + out := new(DefaultNodePoolInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DefaultNodePoolParameters) DeepCopyInto(out *DefaultNodePoolParameters) { +func (in *DefaultNodePoolObservation) DeepCopyInto(out *DefaultNodePoolObservation) { *out = *in if in.CapacityReservationGroupID != nil { in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID @@ -887,7 +1140,247 @@ func (in *DefaultNodePoolParameters) DeepCopyInto(out *DefaultNodePoolParameters } if in.KubeletConfig != nil { in, out := &in.KubeletConfig, &out.KubeletConfig - *out = make([]KubeletConfigParameters, len(*in)) + *out = make([]KubeletConfigObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KubeletDiskType != nil { + in, out := &in.KubeletDiskType, &out.KubeletDiskType + *out = new(string) + **out = **in + } + if in.LinuxOsConfig != nil { + in, out := &in.LinuxOsConfig, &out.LinuxOsConfig + *out = make([]LinuxOsConfigObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MaxCount != nil { + in, out := &in.MaxCount, &out.MaxCount + *out = new(float64) + **out = **in + } + if in.MaxPods != nil { + in, out := &in.MaxPods, &out.MaxPods + *out = new(float64) + **out = **in + } + if in.MessageOfTheDay != nil { + in, out := &in.MessageOfTheDay, &out.MessageOfTheDay + *out = new(string) + **out = **in + } + if in.MinCount != nil { + in, out := &in.MinCount, &out.MinCount + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NodeCount != nil { + in, out := &in.NodeCount, &out.NodeCount + *out = new(float64) + **out = **in + } + if in.NodeLabels != nil { + in, out := &in.NodeLabels, &out.NodeLabels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.NodeNetworkProfile != nil { + in, out := &in.NodeNetworkProfile, &out.NodeNetworkProfile + *out = make([]NodeNetworkProfileObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NodePublicIPPrefixID != nil { + in, out := &in.NodePublicIPPrefixID, &out.NodePublicIPPrefixID + *out = new(string) + **out = **in + } + if in.NodeTaints != nil { + in, out := &in.NodeTaints, &out.NodeTaints + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.OnlyCriticalAddonsEnabled != nil { + in, out := &in.OnlyCriticalAddonsEnabled, &out.OnlyCriticalAddonsEnabled + *out = new(bool) + **out = **in + } + if in.OrchestratorVersion != nil { + in, out := &in.OrchestratorVersion, &out.OrchestratorVersion + *out = new(string) + **out = **in + } + if in.OsDiskSizeGb != nil { + in, out := &in.OsDiskSizeGb, &out.OsDiskSizeGb + *out = new(float64) + **out = **in + } + if in.OsDiskType != nil { + in, out := &in.OsDiskType, &out.OsDiskType + *out = new(string) + **out = **in + } + if in.OsSku != nil { + in, out := &in.OsSku, &out.OsSku + *out = new(string) + **out = **in + } + if in.PodSubnetID != nil { + in, out := &in.PodSubnetID, &out.PodSubnetID + *out = new(string) + **out = **in + } + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID + *out = new(string) + **out = **in + } + if in.ScaleDownMode != nil { + in, out := &in.ScaleDownMode, &out.ScaleDownMode + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TemporaryNameForRotation != nil { + in, out := &in.TemporaryNameForRotation, &out.TemporaryNameForRotation + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) + **out = **in + } + if in.UpgradeSettings != nil { + in, out := &in.UpgradeSettings, &out.UpgradeSettings + *out = make([]UpgradeSettingsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VnetSubnetID != nil { + in, out := &in.VnetSubnetID, &out.VnetSubnetID + *out = new(string) + **out = **in + } + if in.WorkloadRuntime != nil { + in, out := &in.WorkloadRuntime, &out.WorkloadRuntime + *out = new(string) + **out = **in + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultNodePoolObservation. +func (in *DefaultNodePoolObservation) DeepCopy() *DefaultNodePoolObservation { + if in == nil { + return nil + } + out := new(DefaultNodePoolObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DefaultNodePoolParameters) DeepCopyInto(out *DefaultNodePoolParameters) { + *out = *in + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID + *out = new(string) + **out = **in + } + if in.CustomCATrustEnabled != nil { + in, out := &in.CustomCATrustEnabled, &out.CustomCATrustEnabled + *out = new(bool) + **out = **in + } + if in.EnableAutoScaling != nil { + in, out := &in.EnableAutoScaling, &out.EnableAutoScaling + *out = new(bool) + **out = **in + } + if in.EnableHostEncryption != nil { + in, out := &in.EnableHostEncryption, &out.EnableHostEncryption + *out = new(bool) + **out = **in + } + if in.EnableNodePublicIP != nil { + in, out := &in.EnableNodePublicIP, &out.EnableNodePublicIP + *out = new(bool) + **out = **in + } + if in.FipsEnabled != nil { + in, out := &in.FipsEnabled, &out.FipsEnabled + *out = new(bool) + **out = **in + } + if in.HostGroupID != nil { + in, out := &in.HostGroupID, &out.HostGroupID + *out = new(string) + **out = **in + } + if in.KubeletConfig != nil { + in, out := &in.KubeletConfig, &out.KubeletConfig + *out = make([]KubeletConfigParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1108,7 +1601,7 @@ func (in *DefaultNodePoolParameters) DeepCopy() *DefaultNodePoolParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GmsaObservation) DeepCopyInto(out *GmsaObservation) { +func (in *GmsaInitParameters) DeepCopyInto(out *GmsaInitParameters) { *out = *in if in.DNSServer != nil { in, out := &in.DNSServer, &out.DNSServer @@ -1122,18 +1615,18 @@ func (in *GmsaObservation) DeepCopyInto(out *GmsaObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GmsaObservation. -func (in *GmsaObservation) DeepCopy() *GmsaObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GmsaInitParameters. +func (in *GmsaInitParameters) DeepCopy() *GmsaInitParameters { if in == nil { return nil } - out := new(GmsaObservation) + out := new(GmsaInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GmsaParameters) DeepCopyInto(out *GmsaParameters) { +func (in *GmsaObservation) DeepCopyInto(out *GmsaObservation) { *out = *in if in.DNSServer != nil { in, out := &in.DNSServer, &out.DNSServer @@ -1147,20 +1640,81 @@ func (in *GmsaParameters) DeepCopyInto(out *GmsaParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GmsaParameters. -func (in *GmsaParameters) DeepCopy() *GmsaParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GmsaObservation. +func (in *GmsaObservation) DeepCopy() *GmsaObservation { if in == nil { return nil } - out := new(GmsaParameters) + out := new(GmsaObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPProxyConfigObservation) DeepCopyInto(out *HTTPProxyConfigObservation) { +func (in *GmsaParameters) DeepCopyInto(out *GmsaParameters) { *out = *in - if in.HTTPProxy != nil { + if in.DNSServer != nil { + in, out := &in.DNSServer, &out.DNSServer + *out = new(string) + **out = **in + } + if in.RootDomain != nil { + in, out := &in.RootDomain, &out.RootDomain + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GmsaParameters. +func (in *GmsaParameters) DeepCopy() *GmsaParameters { + if in == nil { + return nil + } + out := new(GmsaParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPProxyConfigInitParameters) DeepCopyInto(out *HTTPProxyConfigInitParameters) { + *out = *in + if in.HTTPProxy != nil { + in, out := &in.HTTPProxy, &out.HTTPProxy + *out = new(string) + **out = **in + } + if in.HTTPSProxy != nil { + in, out := &in.HTTPSProxy, &out.HTTPSProxy + *out = new(string) + **out = **in + } + if in.NoProxy != nil { + in, out := &in.NoProxy, &out.NoProxy + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPProxyConfigInitParameters. +func (in *HTTPProxyConfigInitParameters) DeepCopy() *HTTPProxyConfigInitParameters { + if in == nil { + return nil + } + out := new(HTTPProxyConfigInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPProxyConfigObservation) DeepCopyInto(out *HTTPProxyConfigObservation) { + *out = *in + if in.HTTPProxy != nil { in, out := &in.HTTPProxy, &out.HTTPProxy *out = new(string) **out = **in @@ -1234,6 +1788,26 @@ func (in *HTTPProxyConfigParameters) DeepCopy() *HTTPProxyConfigParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HubProfileInitParameters) DeepCopyInto(out *HubProfileInitParameters) { + *out = *in + if in.DNSPrefix != nil { + in, out := &in.DNSPrefix, &out.DNSPrefix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HubProfileInitParameters. +func (in *HubProfileInitParameters) DeepCopy() *HubProfileInitParameters { + if in == nil { + return nil + } + out := new(HubProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HubProfileObservation) DeepCopyInto(out *HubProfileObservation) { *out = *in @@ -1284,6 +1858,37 @@ func (in *HubProfileParameters) DeepCopy() *HubProfileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -1356,6 +1961,21 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IngressApplicationGatewayIdentityInitParameters) DeepCopyInto(out *IngressApplicationGatewayIdentityInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressApplicationGatewayIdentityInitParameters. +func (in *IngressApplicationGatewayIdentityInitParameters) DeepCopy() *IngressApplicationGatewayIdentityInitParameters { + if in == nil { + return nil + } + out := new(IngressApplicationGatewayIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IngressApplicationGatewayIdentityObservation) DeepCopyInto(out *IngressApplicationGatewayIdentityObservation) { *out = *in @@ -1401,6 +2021,36 @@ func (in *IngressApplicationGatewayIdentityParameters) DeepCopy() *IngressApplic return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IngressApplicationGatewayInitParameters) DeepCopyInto(out *IngressApplicationGatewayInitParameters) { + *out = *in + if in.GatewayID != nil { + in, out := &in.GatewayID, &out.GatewayID + *out = new(string) + **out = **in + } + if in.GatewayName != nil { + in, out := &in.GatewayName, &out.GatewayName + *out = new(string) + **out = **in + } + if in.SubnetCidr != nil { + in, out := &in.SubnetCidr, &out.SubnetCidr + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressApplicationGatewayInitParameters. +func (in *IngressApplicationGatewayInitParameters) DeepCopy() *IngressApplicationGatewayInitParameters { + if in == nil { + return nil + } + out := new(IngressApplicationGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IngressApplicationGatewayObservation) DeepCopyInto(out *IngressApplicationGatewayObservation) { *out = *in @@ -1493,6 +2143,31 @@ func (in *IngressApplicationGatewayParameters) DeepCopy() *IngressApplicationGat return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyManagementServiceInitParameters) DeepCopyInto(out *KeyManagementServiceInitParameters) { + *out = *in + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.KeyVaultNetworkAccess != nil { + in, out := &in.KeyVaultNetworkAccess, &out.KeyVaultNetworkAccess + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyManagementServiceInitParameters. +func (in *KeyManagementServiceInitParameters) DeepCopy() *KeyManagementServiceInitParameters { + if in == nil { + return nil + } + out := new(KeyManagementServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KeyManagementServiceObservation) DeepCopyInto(out *KeyManagementServiceObservation) { *out = *in @@ -1543,6 +2218,31 @@ func (in *KeyManagementServiceParameters) DeepCopy() *KeyManagementServiceParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultSecretsProviderInitParameters) DeepCopyInto(out *KeyVaultSecretsProviderInitParameters) { + *out = *in + if in.SecretRotationEnabled != nil { + in, out := &in.SecretRotationEnabled, &out.SecretRotationEnabled + *out = new(bool) + **out = **in + } + if in.SecretRotationInterval != nil { + in, out := &in.SecretRotationInterval, &out.SecretRotationInterval + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultSecretsProviderInitParameters. +func (in *KeyVaultSecretsProviderInitParameters) DeepCopy() *KeyVaultSecretsProviderInitParameters { + if in == nil { + return nil + } + out := new(KeyVaultSecretsProviderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KeyVaultSecretsProviderObservation) DeepCopyInto(out *KeyVaultSecretsProviderObservation) { *out = *in @@ -1600,6 +2300,21 @@ func (in *KeyVaultSecretsProviderParameters) DeepCopy() *KeyVaultSecretsProvider return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubeAdminConfigInitParameters) DeepCopyInto(out *KubeAdminConfigInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeAdminConfigInitParameters. +func (in *KubeAdminConfigInitParameters) DeepCopy() *KubeAdminConfigInitParameters { + if in == nil { + return nil + } + out := new(KubeAdminConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KubeAdminConfigObservation) DeepCopyInto(out *KubeAdminConfigObservation) { *out = *in @@ -1640,6 +2355,21 @@ func (in *KubeAdminConfigParameters) DeepCopy() *KubeAdminConfigParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubeConfigInitParameters) DeepCopyInto(out *KubeConfigInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeConfigInitParameters. +func (in *KubeConfigInitParameters) DeepCopy() *KubeConfigInitParameters { + if in == nil { + return nil + } + out := new(KubeConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KubeConfigObservation) DeepCopyInto(out *KubeConfigObservation) { *out = *in @@ -1681,7 +2411,7 @@ func (in *KubeConfigParameters) DeepCopy() *KubeConfigParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KubeletConfigObservation) DeepCopyInto(out *KubeletConfigObservation) { +func (in *KubeletConfigInitParameters) DeepCopyInto(out *KubeletConfigInitParameters) { *out = *in if in.AllowedUnsafeSysctls != nil { in, out := &in.AllowedUnsafeSysctls, &out.AllowedUnsafeSysctls @@ -1741,18 +2471,18 @@ func (in *KubeletConfigObservation) DeepCopyInto(out *KubeletConfigObservation) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfigObservation. -func (in *KubeletConfigObservation) DeepCopy() *KubeletConfigObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfigInitParameters. +func (in *KubeletConfigInitParameters) DeepCopy() *KubeletConfigInitParameters { if in == nil { return nil } - out := new(KubeletConfigObservation) + out := new(KubeletConfigInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KubeletConfigParameters) DeepCopyInto(out *KubeletConfigParameters) { +func (in *KubeletConfigObservation) DeepCopyInto(out *KubeletConfigObservation) { *out = *in if in.AllowedUnsafeSysctls != nil { in, out := &in.AllowedUnsafeSysctls, &out.AllowedUnsafeSysctls @@ -1812,46 +2542,147 @@ func (in *KubeletConfigParameters) DeepCopyInto(out *KubeletConfigParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfigParameters. -func (in *KubeletConfigParameters) DeepCopy() *KubeletConfigParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfigObservation. +func (in *KubeletConfigObservation) DeepCopy() *KubeletConfigObservation { if in == nil { return nil } - out := new(KubeletConfigParameters) + out := new(KubeletConfigObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KubeletIdentityObservation) DeepCopyInto(out *KubeletIdentityObservation) { +func (in *KubeletConfigParameters) DeepCopyInto(out *KubeletConfigParameters) { *out = *in - if in.ClientID != nil { - in, out := &in.ClientID, &out.ClientID - *out = new(string) + if in.AllowedUnsafeSysctls != nil { + in, out := &in.AllowedUnsafeSysctls, &out.AllowedUnsafeSysctls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CPUCfsQuotaEnabled != nil { + in, out := &in.CPUCfsQuotaEnabled, &out.CPUCfsQuotaEnabled + *out = new(bool) **out = **in } - if in.ObjectID != nil { - in, out := &in.ObjectID, &out.ObjectID + if in.CPUCfsQuotaPeriod != nil { + in, out := &in.CPUCfsQuotaPeriod, &out.CPUCfsQuotaPeriod *out = new(string) **out = **in } - if in.UserAssignedIdentityID != nil { - in, out := &in.UserAssignedIdentityID, &out.UserAssignedIdentityID + if in.CPUManagerPolicy != nil { + in, out := &in.CPUManagerPolicy, &out.CPUManagerPolicy *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletIdentityObservation. -func (in *KubeletIdentityObservation) DeepCopy() *KubeletIdentityObservation { - if in == nil { - return nil + if in.ContainerLogMaxLine != nil { + in, out := &in.ContainerLogMaxLine, &out.ContainerLogMaxLine + *out = new(float64) + **out = **in } - out := new(KubeletIdentityObservation) - in.DeepCopyInto(out) - return out -} - + if in.ContainerLogMaxSizeMb != nil { + in, out := &in.ContainerLogMaxSizeMb, &out.ContainerLogMaxSizeMb + *out = new(float64) + **out = **in + } + if in.ImageGcHighThreshold != nil { + in, out := &in.ImageGcHighThreshold, &out.ImageGcHighThreshold + *out = new(float64) + **out = **in + } + if in.ImageGcLowThreshold != nil { + in, out := &in.ImageGcLowThreshold, &out.ImageGcLowThreshold + *out = new(float64) + **out = **in + } + if in.PodMaxPid != nil { + in, out := &in.PodMaxPid, &out.PodMaxPid + *out = new(float64) + **out = **in + } + if in.TopologyManagerPolicy != nil { + in, out := &in.TopologyManagerPolicy, &out.TopologyManagerPolicy + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfigParameters. +func (in *KubeletConfigParameters) DeepCopy() *KubeletConfigParameters { + if in == nil { + return nil + } + out := new(KubeletConfigParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubeletIdentityInitParameters) DeepCopyInto(out *KubeletIdentityInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.UserAssignedIdentityID != nil { + in, out := &in.UserAssignedIdentityID, &out.UserAssignedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletIdentityInitParameters. +func (in *KubeletIdentityInitParameters) DeepCopy() *KubeletIdentityInitParameters { + if in == nil { + return nil + } + out := new(KubeletIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubeletIdentityObservation) DeepCopyInto(out *KubeletIdentityObservation) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.UserAssignedIdentityID != nil { + in, out := &in.UserAssignedIdentityID, &out.UserAssignedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletIdentityObservation. +func (in *KubeletIdentityObservation) DeepCopy() *KubeletIdentityObservation { + if in == nil { + return nil + } + out := new(KubeletIdentityObservation) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KubeletIdentityParameters) DeepCopyInto(out *KubeletIdentityParameters) { *out = *in @@ -1906,68 +2737,708 @@ func (in *KubernetesCluster) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KubernetesClusterList) DeepCopyInto(out *KubernetesClusterList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KubernetesCluster, len(*in)) + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubernetesClusterInitParameters) DeepCopyInto(out *KubernetesClusterInitParameters) { + *out = *in + if in.APIServerAccessProfile != nil { + in, out := &in.APIServerAccessProfile, &out.APIServerAccessProfile + *out = make([]APIServerAccessProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.APIServerAuthorizedIPRanges != nil { + in, out := &in.APIServerAuthorizedIPRanges, &out.APIServerAuthorizedIPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AciConnectorLinux != nil { + in, out := &in.AciConnectorLinux, &out.AciConnectorLinux + *out = make([]AciConnectorLinuxInitParameters, len(*in)) + copy(*out, *in) + } + if in.AutoScalerProfile != nil { + in, out := &in.AutoScalerProfile, &out.AutoScalerProfile + *out = make([]AutoScalerProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutomaticChannelUpgrade != nil { + in, out := &in.AutomaticChannelUpgrade, &out.AutomaticChannelUpgrade + *out = new(string) + **out = **in + } + if in.AzureActiveDirectoryRoleBasedAccessControl != nil { + in, out := &in.AzureActiveDirectoryRoleBasedAccessControl, &out.AzureActiveDirectoryRoleBasedAccessControl + *out = make([]AzureActiveDirectoryRoleBasedAccessControlInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AzurePolicyEnabled != nil { + in, out := &in.AzurePolicyEnabled, &out.AzurePolicyEnabled + *out = new(bool) + **out = **in + } + if in.ConfidentialComputing != nil { + in, out := &in.ConfidentialComputing, &out.ConfidentialComputing + *out = make([]ConfidentialComputingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DNSPrefix != nil { + in, out := &in.DNSPrefix, &out.DNSPrefix + *out = new(string) + **out = **in + } + if in.DNSPrefixPrivateCluster != nil { + in, out := &in.DNSPrefixPrivateCluster, &out.DNSPrefixPrivateCluster + *out = new(string) + **out = **in + } + if in.DefaultNodePool != nil { + in, out := &in.DefaultNodePool, &out.DefaultNodePool + *out = make([]DefaultNodePoolInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryptionSetID != nil { + in, out := &in.DiskEncryptionSetID, &out.DiskEncryptionSetID + *out = new(string) + **out = **in + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) + **out = **in + } + if in.EnablePodSecurityPolicy != nil { + in, out := &in.EnablePodSecurityPolicy, &out.EnablePodSecurityPolicy + *out = new(bool) + **out = **in + } + if in.HTTPApplicationRoutingEnabled != nil { + in, out := &in.HTTPApplicationRoutingEnabled, &out.HTTPApplicationRoutingEnabled + *out = new(bool) + **out = **in + } + if in.HTTPProxyConfig != nil { + in, out := &in.HTTPProxyConfig, &out.HTTPProxyConfig + *out = make([]HTTPProxyConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ImageCleanerEnabled != nil { + in, out := &in.ImageCleanerEnabled, &out.ImageCleanerEnabled + *out = new(bool) + **out = **in + } + if in.ImageCleanerIntervalHours != nil { + in, out := &in.ImageCleanerIntervalHours, &out.ImageCleanerIntervalHours + *out = new(float64) + **out = **in + } + if in.IngressApplicationGateway != nil { + in, out := &in.IngressApplicationGateway, &out.IngressApplicationGateway + *out = make([]IngressApplicationGatewayInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyManagementService != nil { + in, out := &in.KeyManagementService, &out.KeyManagementService + *out = make([]KeyManagementServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultSecretsProvider != nil { + in, out := &in.KeyVaultSecretsProvider, &out.KeyVaultSecretsProvider + *out = make([]KeyVaultSecretsProviderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KubeletIdentity != nil { + in, out := &in.KubeletIdentity, &out.KubeletIdentity + *out = make([]KubeletIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KubernetesVersion != nil { + in, out := &in.KubernetesVersion, &out.KubernetesVersion + *out = new(string) + **out = **in + } + if in.LinuxProfile != nil { + in, out := &in.LinuxProfile, &out.LinuxProfile + *out = make([]LinuxProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAccountDisabled != nil { + in, out := &in.LocalAccountDisabled, &out.LocalAccountDisabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = make([]MaintenanceWindowInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MicrosoftDefender != nil { + in, out := &in.MicrosoftDefender, &out.MicrosoftDefender + *out = make([]MicrosoftDefenderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MonitorMetrics != nil { + in, out := &in.MonitorMetrics, &out.MonitorMetrics + *out = make([]MonitorMetricsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NetworkProfile != nil { + in, out := &in.NetworkProfile, &out.NetworkProfile + *out = make([]NetworkProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NodeResourceGroup != nil { + in, out := &in.NodeResourceGroup, &out.NodeResourceGroup + *out = new(string) + **out = **in + } + if in.OidcIssuerEnabled != nil { + in, out := &in.OidcIssuerEnabled, &out.OidcIssuerEnabled + *out = new(bool) + **out = **in + } + if in.OmsAgent != nil { + in, out := &in.OmsAgent, &out.OmsAgent + *out = make([]OmsAgentInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OpenServiceMeshEnabled != nil { + in, out := &in.OpenServiceMeshEnabled, &out.OpenServiceMeshEnabled + *out = new(bool) + **out = **in + } + if in.PrivateClusterEnabled != nil { + in, out := &in.PrivateClusterEnabled, &out.PrivateClusterEnabled + *out = new(bool) + **out = **in + } + if in.PrivateClusterPublicFqdnEnabled != nil { + in, out := &in.PrivateClusterPublicFqdnEnabled, &out.PrivateClusterPublicFqdnEnabled + *out = new(bool) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.RoleBasedAccessControlEnabled != nil { + in, out := &in.RoleBasedAccessControlEnabled, &out.RoleBasedAccessControlEnabled + *out = new(bool) + **out = **in + } + if in.RunCommandEnabled != nil { + in, out := &in.RunCommandEnabled, &out.RunCommandEnabled + *out = new(bool) + **out = **in + } + if in.ServiceMeshProfile != nil { + in, out := &in.ServiceMeshProfile, &out.ServiceMeshProfile + *out = make([]ServiceMeshProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ServicePrincipal != nil { + in, out := &in.ServicePrincipal, &out.ServicePrincipal + *out = make([]ServicePrincipalInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SkuTier != nil { + in, out := &in.SkuTier, &out.SkuTier + *out = new(string) + **out = **in + } + if in.StorageProfile != nil { + in, out := &in.StorageProfile, &out.StorageProfile + *out = make([]StorageProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.WebAppRouting != nil { + in, out := &in.WebAppRouting, &out.WebAppRouting + *out = make([]WebAppRoutingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WindowsProfile != nil { + in, out := &in.WindowsProfile, &out.WindowsProfile + *out = make([]WindowsProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkloadAutoscalerProfile != nil { + in, out := &in.WorkloadAutoscalerProfile, &out.WorkloadAutoscalerProfile + *out = make([]WorkloadAutoscalerProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkloadIdentityEnabled != nil { + in, out := &in.WorkloadIdentityEnabled, &out.WorkloadIdentityEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterInitParameters. +func (in *KubernetesClusterInitParameters) DeepCopy() *KubernetesClusterInitParameters { + if in == nil { + return nil + } + out := new(KubernetesClusterInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubernetesClusterList) DeepCopyInto(out *KubernetesClusterList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]KubernetesCluster, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterList. +func (in *KubernetesClusterList) DeepCopy() *KubernetesClusterList { + if in == nil { + return nil + } + out := new(KubernetesClusterList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *KubernetesClusterList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubernetesClusterNodePool) DeepCopyInto(out *KubernetesClusterNodePool) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterNodePool. +func (in *KubernetesClusterNodePool) DeepCopy() *KubernetesClusterNodePool { + if in == nil { + return nil + } + out := new(KubernetesClusterNodePool) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *KubernetesClusterNodePool) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubernetesClusterNodePoolInitParameters) DeepCopyInto(out *KubernetesClusterNodePoolInitParameters) { + *out = *in + if in.CapacityReservationGroupID != nil { + in, out := &in.CapacityReservationGroupID, &out.CapacityReservationGroupID + *out = new(string) + **out = **in + } + if in.CustomCATrustEnabled != nil { + in, out := &in.CustomCATrustEnabled, &out.CustomCATrustEnabled + *out = new(bool) + **out = **in + } + if in.EnableAutoScaling != nil { + in, out := &in.EnableAutoScaling, &out.EnableAutoScaling + *out = new(bool) + **out = **in + } + if in.EnableHostEncryption != nil { + in, out := &in.EnableHostEncryption, &out.EnableHostEncryption + *out = new(bool) + **out = **in + } + if in.EnableNodePublicIP != nil { + in, out := &in.EnableNodePublicIP, &out.EnableNodePublicIP + *out = new(bool) + **out = **in + } + if in.EvictionPolicy != nil { + in, out := &in.EvictionPolicy, &out.EvictionPolicy + *out = new(string) + **out = **in + } + if in.FipsEnabled != nil { + in, out := &in.FipsEnabled, &out.FipsEnabled + *out = new(bool) + **out = **in + } + if in.HostGroupID != nil { + in, out := &in.HostGroupID, &out.HostGroupID + *out = new(string) + **out = **in + } + if in.KubeletConfig != nil { + in, out := &in.KubeletConfig, &out.KubeletConfig + *out = make([]KubernetesClusterNodePoolKubeletConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KubeletDiskType != nil { + in, out := &in.KubeletDiskType, &out.KubeletDiskType + *out = new(string) + **out = **in + } + if in.LinuxOsConfig != nil { + in, out := &in.LinuxOsConfig, &out.LinuxOsConfig + *out = make([]KubernetesClusterNodePoolLinuxOsConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MaxCount != nil { + in, out := &in.MaxCount, &out.MaxCount + *out = new(float64) + **out = **in + } + if in.MaxPods != nil { + in, out := &in.MaxPods, &out.MaxPods + *out = new(float64) + **out = **in + } + if in.MessageOfTheDay != nil { + in, out := &in.MessageOfTheDay, &out.MessageOfTheDay + *out = new(string) + **out = **in + } + if in.MinCount != nil { + in, out := &in.MinCount, &out.MinCount + *out = new(float64) + **out = **in + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.NodeCount != nil { + in, out := &in.NodeCount, &out.NodeCount + *out = new(float64) + **out = **in + } + if in.NodeLabels != nil { + in, out := &in.NodeLabels, &out.NodeLabels + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.NodeNetworkProfile != nil { + in, out := &in.NodeNetworkProfile, &out.NodeNetworkProfile + *out = make([]KubernetesClusterNodePoolNodeNetworkProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NodePublicIPPrefixID != nil { + in, out := &in.NodePublicIPPrefixID, &out.NodePublicIPPrefixID + *out = new(string) + **out = **in + } + if in.NodeTaints != nil { + in, out := &in.NodeTaints, &out.NodeTaints + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.OrchestratorVersion != nil { + in, out := &in.OrchestratorVersion, &out.OrchestratorVersion + *out = new(string) + **out = **in + } + if in.OsDiskSizeGb != nil { + in, out := &in.OsDiskSizeGb, &out.OsDiskSizeGb + *out = new(float64) + **out = **in + } + if in.OsDiskType != nil { + in, out := &in.OsDiskType, &out.OsDiskType + *out = new(string) + **out = **in + } + if in.OsSku != nil { + in, out := &in.OsSku, &out.OsSku + *out = new(string) + **out = **in + } + if in.OsType != nil { + in, out := &in.OsType, &out.OsType + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(string) + **out = **in + } + if in.ProximityPlacementGroupID != nil { + in, out := &in.ProximityPlacementGroupID, &out.ProximityPlacementGroupID + *out = new(string) + **out = **in + } + if in.ScaleDownMode != nil { + in, out := &in.ScaleDownMode, &out.ScaleDownMode + *out = new(string) + **out = **in + } + if in.SnapshotID != nil { + in, out := &in.SnapshotID, &out.SnapshotID + *out = new(string) + **out = **in + } + if in.SpotMaxPrice != nil { + in, out := &in.SpotMaxPrice, &out.SpotMaxPrice + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.UltraSsdEnabled != nil { + in, out := &in.UltraSsdEnabled, &out.UltraSsdEnabled + *out = new(bool) + **out = **in + } + if in.UpgradeSettings != nil { + in, out := &in.UpgradeSettings, &out.UpgradeSettings + *out = make([]KubernetesClusterNodePoolUpgradeSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.WindowsProfile != nil { + in, out := &in.WindowsProfile, &out.WindowsProfile + *out = make([]KubernetesClusterNodePoolWindowsProfileInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.WorkloadRuntime != nil { + in, out := &in.WorkloadRuntime, &out.WorkloadRuntime + *out = new(string) + **out = **in + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterList. -func (in *KubernetesClusterList) DeepCopy() *KubernetesClusterList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterNodePoolInitParameters. +func (in *KubernetesClusterNodePoolInitParameters) DeepCopy() *KubernetesClusterNodePoolInitParameters { if in == nil { return nil } - out := new(KubernetesClusterList) + out := new(KubernetesClusterNodePoolInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *KubernetesClusterList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KubernetesClusterNodePool) DeepCopyInto(out *KubernetesClusterNodePool) { +func (in *KubernetesClusterNodePoolKubeletConfigInitParameters) DeepCopyInto(out *KubernetesClusterNodePoolKubeletConfigInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + if in.AllowedUnsafeSysctls != nil { + in, out := &in.AllowedUnsafeSysctls, &out.AllowedUnsafeSysctls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CPUCfsQuotaEnabled != nil { + in, out := &in.CPUCfsQuotaEnabled, &out.CPUCfsQuotaEnabled + *out = new(bool) + **out = **in + } + if in.CPUCfsQuotaPeriod != nil { + in, out := &in.CPUCfsQuotaPeriod, &out.CPUCfsQuotaPeriod + *out = new(string) + **out = **in + } + if in.CPUManagerPolicy != nil { + in, out := &in.CPUManagerPolicy, &out.CPUManagerPolicy + *out = new(string) + **out = **in + } + if in.ContainerLogMaxLine != nil { + in, out := &in.ContainerLogMaxLine, &out.ContainerLogMaxLine + *out = new(float64) + **out = **in + } + if in.ContainerLogMaxSizeMb != nil { + in, out := &in.ContainerLogMaxSizeMb, &out.ContainerLogMaxSizeMb + *out = new(float64) + **out = **in + } + if in.ImageGcHighThreshold != nil { + in, out := &in.ImageGcHighThreshold, &out.ImageGcHighThreshold + *out = new(float64) + **out = **in + } + if in.ImageGcLowThreshold != nil { + in, out := &in.ImageGcLowThreshold, &out.ImageGcLowThreshold + *out = new(float64) + **out = **in + } + if in.PodMaxPid != nil { + in, out := &in.PodMaxPid, &out.PodMaxPid + *out = new(float64) + **out = **in + } + if in.TopologyManagerPolicy != nil { + in, out := &in.TopologyManagerPolicy, &out.TopologyManagerPolicy + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterNodePool. -func (in *KubernetesClusterNodePool) DeepCopy() *KubernetesClusterNodePool { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterNodePoolKubeletConfigInitParameters. +func (in *KubernetesClusterNodePoolKubeletConfigInitParameters) DeepCopy() *KubernetesClusterNodePoolKubeletConfigInitParameters { if in == nil { return nil } - out := new(KubernetesClusterNodePool) + out := new(KubernetesClusterNodePoolKubeletConfigInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *KubernetesClusterNodePool) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KubernetesClusterNodePoolKubeletConfigObservation) DeepCopyInto(out *KubernetesClusterNodePoolKubeletConfigObservation) { *out = *in @@ -2110,6 +3581,43 @@ func (in *KubernetesClusterNodePoolKubeletConfigParameters) DeepCopy() *Kubernet return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubernetesClusterNodePoolLinuxOsConfigInitParameters) DeepCopyInto(out *KubernetesClusterNodePoolLinuxOsConfigInitParameters) { + *out = *in + if in.SwapFileSizeMb != nil { + in, out := &in.SwapFileSizeMb, &out.SwapFileSizeMb + *out = new(float64) + **out = **in + } + if in.SysctlConfig != nil { + in, out := &in.SysctlConfig, &out.SysctlConfig + *out = make([]LinuxOsConfigSysctlConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TransparentHugePageDefrag != nil { + in, out := &in.TransparentHugePageDefrag, &out.TransparentHugePageDefrag + *out = new(string) + **out = **in + } + if in.TransparentHugePageEnabled != nil { + in, out := &in.TransparentHugePageEnabled, &out.TransparentHugePageEnabled + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterNodePoolLinuxOsConfigInitParameters. +func (in *KubernetesClusterNodePoolLinuxOsConfigInitParameters) DeepCopy() *KubernetesClusterNodePoolLinuxOsConfigInitParameters { + if in == nil { + return nil + } + out := new(KubernetesClusterNodePoolLinuxOsConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KubernetesClusterNodePoolLinuxOsConfigObservation) DeepCopyInto(out *KubernetesClusterNodePoolLinuxOsConfigObservation) { *out = *in @@ -2216,6 +3724,36 @@ func (in *KubernetesClusterNodePoolList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubernetesClusterNodePoolNodeNetworkProfileInitParameters) DeepCopyInto(out *KubernetesClusterNodePoolNodeNetworkProfileInitParameters) { + *out = *in + if in.NodePublicIPTags != nil { + in, out := &in.NodePublicIPTags, &out.NodePublicIPTags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterNodePoolNodeNetworkProfileInitParameters. +func (in *KubernetesClusterNodePoolNodeNetworkProfileInitParameters) DeepCopy() *KubernetesClusterNodePoolNodeNetworkProfileInitParameters { + if in == nil { + return nil + } + out := new(KubernetesClusterNodePoolNodeNetworkProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KubernetesClusterNodePoolNodeNetworkProfileObservation) DeepCopyInto(out *KubernetesClusterNodePoolNodeNetworkProfileObservation) { *out = *in @@ -2840,6 +4378,7 @@ func (in *KubernetesClusterNodePoolSpec) DeepCopyInto(out *KubernetesClusterNode *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterNodePoolSpec. @@ -2869,6 +4408,26 @@ func (in *KubernetesClusterNodePoolStatus) DeepCopy() *KubernetesClusterNodePool return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubernetesClusterNodePoolUpgradeSettingsInitParameters) DeepCopyInto(out *KubernetesClusterNodePoolUpgradeSettingsInitParameters) { + *out = *in + if in.MaxSurge != nil { + in, out := &in.MaxSurge, &out.MaxSurge + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterNodePoolUpgradeSettingsInitParameters. +func (in *KubernetesClusterNodePoolUpgradeSettingsInitParameters) DeepCopy() *KubernetesClusterNodePoolUpgradeSettingsInitParameters { + if in == nil { + return nil + } + out := new(KubernetesClusterNodePoolUpgradeSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KubernetesClusterNodePoolUpgradeSettingsObservation) DeepCopyInto(out *KubernetesClusterNodePoolUpgradeSettingsObservation) { *out = *in @@ -2909,6 +4468,26 @@ func (in *KubernetesClusterNodePoolUpgradeSettingsParameters) DeepCopy() *Kubern return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubernetesClusterNodePoolWindowsProfileInitParameters) DeepCopyInto(out *KubernetesClusterNodePoolWindowsProfileInitParameters) { + *out = *in + if in.OutboundNATEnabled != nil { + in, out := &in.OutboundNATEnabled, &out.OutboundNATEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterNodePoolWindowsProfileInitParameters. +func (in *KubernetesClusterNodePoolWindowsProfileInitParameters) DeepCopy() *KubernetesClusterNodePoolWindowsProfileInitParameters { + if in == nil { + return nil + } + out := new(KubernetesClusterNodePoolWindowsProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KubernetesClusterNodePoolWindowsProfileObservation) DeepCopyInto(out *KubernetesClusterNodePoolWindowsProfileObservation) { *out = *in @@ -3677,6 +5256,7 @@ func (in *KubernetesClusterSpec) DeepCopyInto(out *KubernetesClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesClusterSpec. @@ -3733,6 +5313,48 @@ func (in *KubernetesFleetManager) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubernetesFleetManagerInitParameters) DeepCopyInto(out *KubernetesFleetManagerInitParameters) { + *out = *in + if in.HubProfile != nil { + in, out := &in.HubProfile, &out.HubProfile + *out = make([]HubProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesFleetManagerInitParameters. +func (in *KubernetesFleetManagerInitParameters) DeepCopy() *KubernetesFleetManagerInitParameters { + if in == nil { + return nil + } + out := new(KubernetesFleetManagerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KubernetesFleetManagerList) DeepCopyInto(out *KubernetesFleetManagerList) { *out = *in @@ -3879,6 +5501,7 @@ func (in *KubernetesFleetManagerSpec) DeepCopyInto(out *KubernetesFleetManagerSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesFleetManagerSpec. @@ -3886,24 +5509,61 @@ func (in *KubernetesFleetManagerSpec) DeepCopy() *KubernetesFleetManagerSpec { if in == nil { return nil } - out := new(KubernetesFleetManagerSpec) + out := new(KubernetesFleetManagerSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KubernetesFleetManagerStatus) DeepCopyInto(out *KubernetesFleetManagerStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesFleetManagerStatus. +func (in *KubernetesFleetManagerStatus) DeepCopy() *KubernetesFleetManagerStatus { + if in == nil { + return nil + } + out := new(KubernetesFleetManagerStatus) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KubernetesFleetManagerStatus) DeepCopyInto(out *KubernetesFleetManagerStatus) { +func (in *LinuxOsConfigInitParameters) DeepCopyInto(out *LinuxOsConfigInitParameters) { *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) + if in.SwapFileSizeMb != nil { + in, out := &in.SwapFileSizeMb, &out.SwapFileSizeMb + *out = new(float64) + **out = **in + } + if in.SysctlConfig != nil { + in, out := &in.SysctlConfig, &out.SysctlConfig + *out = make([]SysctlConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TransparentHugePageDefrag != nil { + in, out := &in.TransparentHugePageDefrag, &out.TransparentHugePageDefrag + *out = new(string) + **out = **in + } + if in.TransparentHugePageEnabled != nil { + in, out := &in.TransparentHugePageEnabled, &out.TransparentHugePageEnabled + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesFleetManagerStatus. -func (in *KubernetesFleetManagerStatus) DeepCopy() *KubernetesFleetManagerStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxOsConfigInitParameters. +func (in *LinuxOsConfigInitParameters) DeepCopy() *LinuxOsConfigInitParameters { if in == nil { return nil } - out := new(KubernetesFleetManagerStatus) + out := new(LinuxOsConfigInitParameters) in.DeepCopyInto(out) return out } @@ -3982,6 +5642,166 @@ func (in *LinuxOsConfigParameters) DeepCopy() *LinuxOsConfigParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxOsConfigSysctlConfigInitParameters) DeepCopyInto(out *LinuxOsConfigSysctlConfigInitParameters) { + *out = *in + if in.FsAioMaxNr != nil { + in, out := &in.FsAioMaxNr, &out.FsAioMaxNr + *out = new(float64) + **out = **in + } + if in.FsFileMax != nil { + in, out := &in.FsFileMax, &out.FsFileMax + *out = new(float64) + **out = **in + } + if in.FsInotifyMaxUserWatches != nil { + in, out := &in.FsInotifyMaxUserWatches, &out.FsInotifyMaxUserWatches + *out = new(float64) + **out = **in + } + if in.FsNrOpen != nil { + in, out := &in.FsNrOpen, &out.FsNrOpen + *out = new(float64) + **out = **in + } + if in.KernelThreadsMax != nil { + in, out := &in.KernelThreadsMax, &out.KernelThreadsMax + *out = new(float64) + **out = **in + } + if in.NetCoreNetdevMaxBacklog != nil { + in, out := &in.NetCoreNetdevMaxBacklog, &out.NetCoreNetdevMaxBacklog + *out = new(float64) + **out = **in + } + if in.NetCoreOptmemMax != nil { + in, out := &in.NetCoreOptmemMax, &out.NetCoreOptmemMax + *out = new(float64) + **out = **in + } + if in.NetCoreRmemDefault != nil { + in, out := &in.NetCoreRmemDefault, &out.NetCoreRmemDefault + *out = new(float64) + **out = **in + } + if in.NetCoreRmemMax != nil { + in, out := &in.NetCoreRmemMax, &out.NetCoreRmemMax + *out = new(float64) + **out = **in + } + if in.NetCoreSomaxconn != nil { + in, out := &in.NetCoreSomaxconn, &out.NetCoreSomaxconn + *out = new(float64) + **out = **in + } + if in.NetCoreWmemDefault != nil { + in, out := &in.NetCoreWmemDefault, &out.NetCoreWmemDefault + *out = new(float64) + **out = **in + } + if in.NetCoreWmemMax != nil { + in, out := &in.NetCoreWmemMax, &out.NetCoreWmemMax + *out = new(float64) + **out = **in + } + if in.NetIPv4IPLocalPortRangeMax != nil { + in, out := &in.NetIPv4IPLocalPortRangeMax, &out.NetIPv4IPLocalPortRangeMax + *out = new(float64) + **out = **in + } + if in.NetIPv4IPLocalPortRangeMin != nil { + in, out := &in.NetIPv4IPLocalPortRangeMin, &out.NetIPv4IPLocalPortRangeMin + *out = new(float64) + **out = **in + } + if in.NetIPv4NeighDefaultGcThresh1 != nil { + in, out := &in.NetIPv4NeighDefaultGcThresh1, &out.NetIPv4NeighDefaultGcThresh1 + *out = new(float64) + **out = **in + } + if in.NetIPv4NeighDefaultGcThresh2 != nil { + in, out := &in.NetIPv4NeighDefaultGcThresh2, &out.NetIPv4NeighDefaultGcThresh2 + *out = new(float64) + **out = **in + } + if in.NetIPv4NeighDefaultGcThresh3 != nil { + in, out := &in.NetIPv4NeighDefaultGcThresh3, &out.NetIPv4NeighDefaultGcThresh3 + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPFinTimeout != nil { + in, out := &in.NetIPv4TCPFinTimeout, &out.NetIPv4TCPFinTimeout + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPKeepaliveIntvl != nil { + in, out := &in.NetIPv4TCPKeepaliveIntvl, &out.NetIPv4TCPKeepaliveIntvl + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPKeepaliveProbes != nil { + in, out := &in.NetIPv4TCPKeepaliveProbes, &out.NetIPv4TCPKeepaliveProbes + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPKeepaliveTime != nil { + in, out := &in.NetIPv4TCPKeepaliveTime, &out.NetIPv4TCPKeepaliveTime + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPMaxSynBacklog != nil { + in, out := &in.NetIPv4TCPMaxSynBacklog, &out.NetIPv4TCPMaxSynBacklog + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPMaxTwBuckets != nil { + in, out := &in.NetIPv4TCPMaxTwBuckets, &out.NetIPv4TCPMaxTwBuckets + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPTwReuse != nil { + in, out := &in.NetIPv4TCPTwReuse, &out.NetIPv4TCPTwReuse + *out = new(bool) + **out = **in + } + if in.NetNetfilterNfConntrackBuckets != nil { + in, out := &in.NetNetfilterNfConntrackBuckets, &out.NetNetfilterNfConntrackBuckets + *out = new(float64) + **out = **in + } + if in.NetNetfilterNfConntrackMax != nil { + in, out := &in.NetNetfilterNfConntrackMax, &out.NetNetfilterNfConntrackMax + *out = new(float64) + **out = **in + } + if in.VMMaxMapCount != nil { + in, out := &in.VMMaxMapCount, &out.VMMaxMapCount + *out = new(float64) + **out = **in + } + if in.VMSwappiness != nil { + in, out := &in.VMSwappiness, &out.VMSwappiness + *out = new(float64) + **out = **in + } + if in.VMVfsCachePressure != nil { + in, out := &in.VMVfsCachePressure, &out.VMVfsCachePressure + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxOsConfigSysctlConfigInitParameters. +func (in *LinuxOsConfigSysctlConfigInitParameters) DeepCopy() *LinuxOsConfigSysctlConfigInitParameters { + if in == nil { + return nil + } + out := new(LinuxOsConfigSysctlConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxOsConfigSysctlConfigObservation) DeepCopyInto(out *LinuxOsConfigSysctlConfigObservation) { *out = *in @@ -4302,6 +6122,33 @@ func (in *LinuxOsConfigSysctlConfigParameters) DeepCopy() *LinuxOsConfigSysctlCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxProfileInitParameters) DeepCopyInto(out *LinuxProfileInitParameters) { + *out = *in + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) + **out = **in + } + if in.SSHKey != nil { + in, out := &in.SSHKey, &out.SSHKey + *out = make([]SSHKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxProfileInitParameters. +func (in *LinuxProfileInitParameters) DeepCopy() *LinuxProfileInitParameters { + if in == nil { + return nil + } + out := new(LinuxProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxProfileObservation) DeepCopyInto(out *LinuxProfileObservation) { *out = *in @@ -4346,12 +6193,69 @@ func (in *LinuxProfileParameters) DeepCopyInto(out *LinuxProfileParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxProfileParameters. -func (in *LinuxProfileParameters) DeepCopy() *LinuxProfileParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxProfileParameters. +func (in *LinuxProfileParameters) DeepCopy() *LinuxProfileParameters { + if in == nil { + return nil + } + out := new(LinuxProfileParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerProfileInitParameters) DeepCopyInto(out *LoadBalancerProfileInitParameters) { + *out = *in + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.ManagedOutboundIPCount != nil { + in, out := &in.ManagedOutboundIPCount, &out.ManagedOutboundIPCount + *out = new(float64) + **out = **in + } + if in.ManagedOutboundIPv6Count != nil { + in, out := &in.ManagedOutboundIPv6Count, &out.ManagedOutboundIPv6Count + *out = new(float64) + **out = **in + } + if in.OutboundIPAddressIds != nil { + in, out := &in.OutboundIPAddressIds, &out.OutboundIPAddressIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.OutboundIPPrefixIds != nil { + in, out := &in.OutboundIPPrefixIds, &out.OutboundIPPrefixIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.OutboundPortsAllocated != nil { + in, out := &in.OutboundPortsAllocated, &out.OutboundPortsAllocated + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerProfileInitParameters. +func (in *LoadBalancerProfileInitParameters) DeepCopy() *LoadBalancerProfileInitParameters { if in == nil { return nil } - out := new(LinuxProfileParameters) + out := new(LoadBalancerProfileInitParameters) in.DeepCopyInto(out) return out } @@ -4481,6 +6385,35 @@ func (in *LoadBalancerProfileParameters) DeepCopy() *LoadBalancerProfileParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MaintenanceWindowInitParameters) DeepCopyInto(out *MaintenanceWindowInitParameters) { + *out = *in + if in.Allowed != nil { + in, out := &in.Allowed, &out.Allowed + *out = make([]AllowedInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NotAllowed != nil { + in, out := &in.NotAllowed, &out.NotAllowed + *out = make([]NotAllowedInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindowInitParameters. +func (in *MaintenanceWindowInitParameters) DeepCopy() *MaintenanceWindowInitParameters { + if in == nil { + return nil + } + out := new(MaintenanceWindowInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MaintenanceWindowObservation) DeepCopyInto(out *MaintenanceWindowObservation) { *out = *in @@ -4539,6 +6472,26 @@ func (in *MaintenanceWindowParameters) DeepCopy() *MaintenanceWindowParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MicrosoftDefenderInitParameters) DeepCopyInto(out *MicrosoftDefenderInitParameters) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrosoftDefenderInitParameters. +func (in *MicrosoftDefenderInitParameters) DeepCopy() *MicrosoftDefenderInitParameters { + if in == nil { + return nil + } + out := new(MicrosoftDefenderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MicrosoftDefenderObservation) DeepCopyInto(out *MicrosoftDefenderObservation) { *out = *in @@ -4579,6 +6532,31 @@ func (in *MicrosoftDefenderParameters) DeepCopy() *MicrosoftDefenderParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorMetricsInitParameters) DeepCopyInto(out *MonitorMetricsInitParameters) { + *out = *in + if in.AnnotationsAllowed != nil { + in, out := &in.AnnotationsAllowed, &out.AnnotationsAllowed + *out = new(string) + **out = **in + } + if in.LabelsAllowed != nil { + in, out := &in.LabelsAllowed, &out.LabelsAllowed + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricsInitParameters. +func (in *MonitorMetricsInitParameters) DeepCopy() *MonitorMetricsInitParameters { + if in == nil { + return nil + } + out := new(MonitorMetricsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorMetricsObservation) DeepCopyInto(out *MonitorMetricsObservation) { *out = *in @@ -4587,53 +6565,214 @@ func (in *MonitorMetricsObservation) DeepCopyInto(out *MonitorMetricsObservation *out = new(string) **out = **in } - if in.LabelsAllowed != nil { - in, out := &in.LabelsAllowed, &out.LabelsAllowed + if in.LabelsAllowed != nil { + in, out := &in.LabelsAllowed, &out.LabelsAllowed + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricsObservation. +func (in *MonitorMetricsObservation) DeepCopy() *MonitorMetricsObservation { + if in == nil { + return nil + } + out := new(MonitorMetricsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorMetricsParameters) DeepCopyInto(out *MonitorMetricsParameters) { + *out = *in + if in.AnnotationsAllowed != nil { + in, out := &in.AnnotationsAllowed, &out.AnnotationsAllowed + *out = new(string) + **out = **in + } + if in.LabelsAllowed != nil { + in, out := &in.LabelsAllowed, &out.LabelsAllowed + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricsParameters. +func (in *MonitorMetricsParameters) DeepCopy() *MonitorMetricsParameters { + if in == nil { + return nil + } + out := new(MonitorMetricsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NATGatewayProfileInitParameters) DeepCopyInto(out *NATGatewayProfileInitParameters) { + *out = *in + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.ManagedOutboundIPCount != nil { + in, out := &in.ManagedOutboundIPCount, &out.ManagedOutboundIPCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewayProfileInitParameters. +func (in *NATGatewayProfileInitParameters) DeepCopy() *NATGatewayProfileInitParameters { + if in == nil { + return nil + } + out := new(NATGatewayProfileInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NATGatewayProfileObservation) DeepCopyInto(out *NATGatewayProfileObservation) { + *out = *in + if in.EffectiveOutboundIps != nil { + in, out := &in.EffectiveOutboundIps, &out.EffectiveOutboundIps + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.ManagedOutboundIPCount != nil { + in, out := &in.ManagedOutboundIPCount, &out.ManagedOutboundIPCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewayProfileObservation. +func (in *NATGatewayProfileObservation) DeepCopy() *NATGatewayProfileObservation { + if in == nil { + return nil + } + out := new(NATGatewayProfileObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NATGatewayProfileParameters) DeepCopyInto(out *NATGatewayProfileParameters) { + *out = *in + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.ManagedOutboundIPCount != nil { + in, out := &in.ManagedOutboundIPCount, &out.ManagedOutboundIPCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewayProfileParameters. +func (in *NATGatewayProfileParameters) DeepCopy() *NATGatewayProfileParameters { + if in == nil { + return nil + } + out := new(NATGatewayProfileParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkProfileInitParameters) DeepCopyInto(out *NetworkProfileInitParameters) { + *out = *in + if in.DNSServiceIP != nil { + in, out := &in.DNSServiceIP, &out.DNSServiceIP + *out = new(string) + **out = **in + } + if in.DockerBridgeCidr != nil { + in, out := &in.DockerBridgeCidr, &out.DockerBridgeCidr + *out = new(string) + **out = **in + } + if in.EbpfDataPlane != nil { + in, out := &in.EbpfDataPlane, &out.EbpfDataPlane + *out = new(string) + **out = **in + } + if in.IPVersions != nil { + in, out := &in.IPVersions, &out.IPVersions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoadBalancerProfile != nil { + in, out := &in.LoadBalancerProfile, &out.LoadBalancerProfile + *out = make([]LoadBalancerProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancerSku != nil { + in, out := &in.LoadBalancerSku, &out.LoadBalancerSku + *out = new(string) + **out = **in + } + if in.NATGatewayProfile != nil { + in, out := &in.NATGatewayProfile, &out.NATGatewayProfile + *out = make([]NATGatewayProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NetworkMode != nil { + in, out := &in.NetworkMode, &out.NetworkMode + *out = new(string) + **out = **in + } + if in.NetworkPlugin != nil { + in, out := &in.NetworkPlugin, &out.NetworkPlugin + *out = new(string) + **out = **in + } + if in.NetworkPluginMode != nil { + in, out := &in.NetworkPluginMode, &out.NetworkPluginMode + *out = new(string) + **out = **in + } + if in.NetworkPolicy != nil { + in, out := &in.NetworkPolicy, &out.NetworkPolicy *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricsObservation. -func (in *MonitorMetricsObservation) DeepCopy() *MonitorMetricsObservation { - if in == nil { - return nil - } - out := new(MonitorMetricsObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *MonitorMetricsParameters) DeepCopyInto(out *MonitorMetricsParameters) { - *out = *in - if in.AnnotationsAllowed != nil { - in, out := &in.AnnotationsAllowed, &out.AnnotationsAllowed + if in.OutboundType != nil { + in, out := &in.OutboundType, &out.OutboundType *out = new(string) **out = **in } - if in.LabelsAllowed != nil { - in, out := &in.LabelsAllowed, &out.LabelsAllowed + if in.PodCidr != nil { + in, out := &in.PodCidr, &out.PodCidr *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricsParameters. -func (in *MonitorMetricsParameters) DeepCopy() *MonitorMetricsParameters { - if in == nil { - return nil - } - out := new(MonitorMetricsParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NATGatewayProfileObservation) DeepCopyInto(out *NATGatewayProfileObservation) { - *out = *in - if in.EffectiveOutboundIps != nil { - in, out := &in.EffectiveOutboundIps, &out.EffectiveOutboundIps + if in.PodCidrs != nil { + in, out := &in.PodCidrs, &out.PodCidrs *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -4643,49 +6782,30 @@ func (in *NATGatewayProfileObservation) DeepCopyInto(out *NATGatewayProfileObser } } } - if in.IdleTimeoutInMinutes != nil { - in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes - *out = new(float64) - **out = **in - } - if in.ManagedOutboundIPCount != nil { - in, out := &in.ManagedOutboundIPCount, &out.ManagedOutboundIPCount - *out = new(float64) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewayProfileObservation. -func (in *NATGatewayProfileObservation) DeepCopy() *NATGatewayProfileObservation { - if in == nil { - return nil - } - out := new(NATGatewayProfileObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NATGatewayProfileParameters) DeepCopyInto(out *NATGatewayProfileParameters) { - *out = *in - if in.IdleTimeoutInMinutes != nil { - in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes - *out = new(float64) + if in.ServiceCidr != nil { + in, out := &in.ServiceCidr, &out.ServiceCidr + *out = new(string) **out = **in } - if in.ManagedOutboundIPCount != nil { - in, out := &in.ManagedOutboundIPCount, &out.ManagedOutboundIPCount - *out = new(float64) - **out = **in + if in.ServiceCidrs != nil { + in, out := &in.ServiceCidrs, &out.ServiceCidrs + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewayProfileParameters. -func (in *NATGatewayProfileParameters) DeepCopy() *NATGatewayProfileParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkProfileInitParameters. +func (in *NetworkProfileInitParameters) DeepCopy() *NetworkProfileInitParameters { if in == nil { return nil } - out := new(NATGatewayProfileParameters) + out := new(NetworkProfileInitParameters) in.DeepCopyInto(out) return out } @@ -4924,6 +7044,36 @@ func (in *NetworkProfileParameters) DeepCopy() *NetworkProfileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeNetworkProfileInitParameters) DeepCopyInto(out *NodeNetworkProfileInitParameters) { + *out = *in + if in.NodePublicIPTags != nil { + in, out := &in.NodePublicIPTags, &out.NodePublicIPTags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeNetworkProfileInitParameters. +func (in *NodeNetworkProfileInitParameters) DeepCopy() *NodeNetworkProfileInitParameters { + if in == nil { + return nil + } + out := new(NodeNetworkProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NodeNetworkProfileObservation) DeepCopyInto(out *NodeNetworkProfileObservation) { *out = *in @@ -4984,6 +7134,31 @@ func (in *NodeNetworkProfileParameters) DeepCopy() *NodeNetworkProfileParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotAllowedInitParameters) DeepCopyInto(out *NotAllowedInitParameters) { + *out = *in + if in.End != nil { + in, out := &in.End, &out.End + *out = new(string) + **out = **in + } + if in.Start != nil { + in, out := &in.Start, &out.Start + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotAllowedInitParameters. +func (in *NotAllowedInitParameters) DeepCopy() *NotAllowedInitParameters { + if in == nil { + return nil + } + out := new(NotAllowedInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotAllowedObservation) DeepCopyInto(out *NotAllowedObservation) { *out = *in @@ -5034,6 +7209,21 @@ func (in *NotAllowedParameters) DeepCopy() *NotAllowedParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OmsAgentIdentityInitParameters) DeepCopyInto(out *OmsAgentIdentityInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OmsAgentIdentityInitParameters. +func (in *OmsAgentIdentityInitParameters) DeepCopy() *OmsAgentIdentityInitParameters { + if in == nil { + return nil + } + out := new(OmsAgentIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OmsAgentIdentityObservation) DeepCopyInto(out *OmsAgentIdentityObservation) { *out = *in @@ -5079,6 +7269,31 @@ func (in *OmsAgentIdentityParameters) DeepCopy() *OmsAgentIdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OmsAgentInitParameters) DeepCopyInto(out *OmsAgentInitParameters) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } + if in.MsiAuthForMonitoringEnabled != nil { + in, out := &in.MsiAuthForMonitoringEnabled, &out.MsiAuthForMonitoringEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OmsAgentInitParameters. +func (in *OmsAgentInitParameters) DeepCopy() *OmsAgentInitParameters { + if in == nil { + return nil + } + out := new(OmsAgentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OmsAgentObservation) DeepCopyInto(out *OmsAgentObservation) { *out = *in @@ -5136,6 +7351,26 @@ func (in *OmsAgentParameters) DeepCopy() *OmsAgentParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHKeyInitParameters) DeepCopyInto(out *SSHKeyInitParameters) { + *out = *in + if in.KeyData != nil { + in, out := &in.KeyData, &out.KeyData + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHKeyInitParameters. +func (in *SSHKeyInitParameters) DeepCopy() *SSHKeyInitParameters { + if in == nil { + return nil + } + out := new(SSHKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SSHKeyObservation) DeepCopyInto(out *SSHKeyObservation) { *out = *in @@ -5176,6 +7411,21 @@ func (in *SSHKeyParameters) DeepCopy() *SSHKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretIdentityInitParameters) DeepCopyInto(out *SecretIdentityInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretIdentityInitParameters. +func (in *SecretIdentityInitParameters) DeepCopy() *SecretIdentityInitParameters { + if in == nil { + return nil + } + out := new(SecretIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecretIdentityObservation) DeepCopyInto(out *SecretIdentityObservation) { *out = *in @@ -5221,6 +7471,26 @@ func (in *SecretIdentityParameters) DeepCopy() *SecretIdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceMeshProfileInitParameters) DeepCopyInto(out *ServiceMeshProfileInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceMeshProfileInitParameters. +func (in *ServiceMeshProfileInitParameters) DeepCopy() *ServiceMeshProfileInitParameters { + if in == nil { + return nil + } + out := new(ServiceMeshProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServiceMeshProfileObservation) DeepCopyInto(out *ServiceMeshProfileObservation) { *out = *in @@ -5261,6 +7531,26 @@ func (in *ServiceMeshProfileParameters) DeepCopy() *ServiceMeshProfileParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicePrincipalInitParameters) DeepCopyInto(out *ServicePrincipalInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePrincipalInitParameters. +func (in *ServicePrincipalInitParameters) DeepCopy() *ServicePrincipalInitParameters { + if in == nil { + return nil + } + out := new(ServicePrincipalInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServicePrincipalObservation) DeepCopyInto(out *ServicePrincipalObservation) { *out = *in @@ -5289,15 +7579,55 @@ func (in *ServicePrincipalParameters) DeepCopyInto(out *ServicePrincipalParamete *out = new(string) **out = **in } - out.ClientSecretSecretRef = in.ClientSecretSecretRef + out.ClientSecretSecretRef = in.ClientSecretSecretRef +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePrincipalParameters. +func (in *ServicePrincipalParameters) DeepCopy() *ServicePrincipalParameters { + if in == nil { + return nil + } + out := new(ServicePrincipalParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageProfileInitParameters) DeepCopyInto(out *StorageProfileInitParameters) { + *out = *in + if in.BlobDriverEnabled != nil { + in, out := &in.BlobDriverEnabled, &out.BlobDriverEnabled + *out = new(bool) + **out = **in + } + if in.DiskDriverEnabled != nil { + in, out := &in.DiskDriverEnabled, &out.DiskDriverEnabled + *out = new(bool) + **out = **in + } + if in.DiskDriverVersion != nil { + in, out := &in.DiskDriverVersion, &out.DiskDriverVersion + *out = new(string) + **out = **in + } + if in.FileDriverEnabled != nil { + in, out := &in.FileDriverEnabled, &out.FileDriverEnabled + *out = new(bool) + **out = **in + } + if in.SnapshotControllerEnabled != nil { + in, out := &in.SnapshotControllerEnabled, &out.SnapshotControllerEnabled + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePrincipalParameters. -func (in *ServicePrincipalParameters) DeepCopy() *ServicePrincipalParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageProfileInitParameters. +func (in *StorageProfileInitParameters) DeepCopy() *StorageProfileInitParameters { if in == nil { return nil } - out := new(ServicePrincipalParameters) + out := new(StorageProfileInitParameters) in.DeepCopyInto(out) return out } @@ -5382,6 +7712,166 @@ func (in *StorageProfileParameters) DeepCopy() *StorageProfileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SysctlConfigInitParameters) DeepCopyInto(out *SysctlConfigInitParameters) { + *out = *in + if in.FsAioMaxNr != nil { + in, out := &in.FsAioMaxNr, &out.FsAioMaxNr + *out = new(float64) + **out = **in + } + if in.FsFileMax != nil { + in, out := &in.FsFileMax, &out.FsFileMax + *out = new(float64) + **out = **in + } + if in.FsInotifyMaxUserWatches != nil { + in, out := &in.FsInotifyMaxUserWatches, &out.FsInotifyMaxUserWatches + *out = new(float64) + **out = **in + } + if in.FsNrOpen != nil { + in, out := &in.FsNrOpen, &out.FsNrOpen + *out = new(float64) + **out = **in + } + if in.KernelThreadsMax != nil { + in, out := &in.KernelThreadsMax, &out.KernelThreadsMax + *out = new(float64) + **out = **in + } + if in.NetCoreNetdevMaxBacklog != nil { + in, out := &in.NetCoreNetdevMaxBacklog, &out.NetCoreNetdevMaxBacklog + *out = new(float64) + **out = **in + } + if in.NetCoreOptmemMax != nil { + in, out := &in.NetCoreOptmemMax, &out.NetCoreOptmemMax + *out = new(float64) + **out = **in + } + if in.NetCoreRmemDefault != nil { + in, out := &in.NetCoreRmemDefault, &out.NetCoreRmemDefault + *out = new(float64) + **out = **in + } + if in.NetCoreRmemMax != nil { + in, out := &in.NetCoreRmemMax, &out.NetCoreRmemMax + *out = new(float64) + **out = **in + } + if in.NetCoreSomaxconn != nil { + in, out := &in.NetCoreSomaxconn, &out.NetCoreSomaxconn + *out = new(float64) + **out = **in + } + if in.NetCoreWmemDefault != nil { + in, out := &in.NetCoreWmemDefault, &out.NetCoreWmemDefault + *out = new(float64) + **out = **in + } + if in.NetCoreWmemMax != nil { + in, out := &in.NetCoreWmemMax, &out.NetCoreWmemMax + *out = new(float64) + **out = **in + } + if in.NetIPv4IPLocalPortRangeMax != nil { + in, out := &in.NetIPv4IPLocalPortRangeMax, &out.NetIPv4IPLocalPortRangeMax + *out = new(float64) + **out = **in + } + if in.NetIPv4IPLocalPortRangeMin != nil { + in, out := &in.NetIPv4IPLocalPortRangeMin, &out.NetIPv4IPLocalPortRangeMin + *out = new(float64) + **out = **in + } + if in.NetIPv4NeighDefaultGcThresh1 != nil { + in, out := &in.NetIPv4NeighDefaultGcThresh1, &out.NetIPv4NeighDefaultGcThresh1 + *out = new(float64) + **out = **in + } + if in.NetIPv4NeighDefaultGcThresh2 != nil { + in, out := &in.NetIPv4NeighDefaultGcThresh2, &out.NetIPv4NeighDefaultGcThresh2 + *out = new(float64) + **out = **in + } + if in.NetIPv4NeighDefaultGcThresh3 != nil { + in, out := &in.NetIPv4NeighDefaultGcThresh3, &out.NetIPv4NeighDefaultGcThresh3 + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPFinTimeout != nil { + in, out := &in.NetIPv4TCPFinTimeout, &out.NetIPv4TCPFinTimeout + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPKeepaliveIntvl != nil { + in, out := &in.NetIPv4TCPKeepaliveIntvl, &out.NetIPv4TCPKeepaliveIntvl + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPKeepaliveProbes != nil { + in, out := &in.NetIPv4TCPKeepaliveProbes, &out.NetIPv4TCPKeepaliveProbes + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPKeepaliveTime != nil { + in, out := &in.NetIPv4TCPKeepaliveTime, &out.NetIPv4TCPKeepaliveTime + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPMaxSynBacklog != nil { + in, out := &in.NetIPv4TCPMaxSynBacklog, &out.NetIPv4TCPMaxSynBacklog + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPMaxTwBuckets != nil { + in, out := &in.NetIPv4TCPMaxTwBuckets, &out.NetIPv4TCPMaxTwBuckets + *out = new(float64) + **out = **in + } + if in.NetIPv4TCPTwReuse != nil { + in, out := &in.NetIPv4TCPTwReuse, &out.NetIPv4TCPTwReuse + *out = new(bool) + **out = **in + } + if in.NetNetfilterNfConntrackBuckets != nil { + in, out := &in.NetNetfilterNfConntrackBuckets, &out.NetNetfilterNfConntrackBuckets + *out = new(float64) + **out = **in + } + if in.NetNetfilterNfConntrackMax != nil { + in, out := &in.NetNetfilterNfConntrackMax, &out.NetNetfilterNfConntrackMax + *out = new(float64) + **out = **in + } + if in.VMMaxMapCount != nil { + in, out := &in.VMMaxMapCount, &out.VMMaxMapCount + *out = new(float64) + **out = **in + } + if in.VMSwappiness != nil { + in, out := &in.VMSwappiness, &out.VMSwappiness + *out = new(float64) + **out = **in + } + if in.VMVfsCachePressure != nil { + in, out := &in.VMVfsCachePressure, &out.VMVfsCachePressure + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SysctlConfigInitParameters. +func (in *SysctlConfigInitParameters) DeepCopy() *SysctlConfigInitParameters { + if in == nil { + return nil + } + out := new(SysctlConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SysctlConfigObservation) DeepCopyInto(out *SysctlConfigObservation) { *out = *in @@ -5702,6 +8192,26 @@ func (in *SysctlConfigParameters) DeepCopy() *SysctlConfigParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpgradeSettingsInitParameters) DeepCopyInto(out *UpgradeSettingsInitParameters) { + *out = *in + if in.MaxSurge != nil { + in, out := &in.MaxSurge, &out.MaxSurge + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradeSettingsInitParameters. +func (in *UpgradeSettingsInitParameters) DeepCopy() *UpgradeSettingsInitParameters { + if in == nil { + return nil + } + out := new(UpgradeSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *UpgradeSettingsObservation) DeepCopyInto(out *UpgradeSettingsObservation) { *out = *in @@ -5742,6 +8252,26 @@ func (in *UpgradeSettingsParameters) DeepCopy() *UpgradeSettingsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebAppRoutingInitParameters) DeepCopyInto(out *WebAppRoutingInitParameters) { + *out = *in + if in.DNSZoneID != nil { + in, out := &in.DNSZoneID, &out.DNSZoneID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebAppRoutingInitParameters. +func (in *WebAppRoutingInitParameters) DeepCopy() *WebAppRoutingInitParameters { + if in == nil { + return nil + } + out := new(WebAppRoutingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebAppRoutingObservation) DeepCopyInto(out *WebAppRoutingObservation) { *out = *in @@ -5782,6 +8312,38 @@ func (in *WebAppRoutingParameters) DeepCopy() *WebAppRoutingParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsProfileInitParameters) DeepCopyInto(out *WindowsProfileInitParameters) { + *out = *in + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) + **out = **in + } + if in.Gmsa != nil { + in, out := &in.Gmsa, &out.Gmsa + *out = make([]GmsaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.License != nil { + in, out := &in.License, &out.License + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsProfileInitParameters. +func (in *WindowsProfileInitParameters) DeepCopy() *WindowsProfileInitParameters { + if in == nil { + return nil + } + out := new(WindowsProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsProfileObservation) DeepCopyInto(out *WindowsProfileObservation) { *out = *in @@ -5851,6 +8413,31 @@ func (in *WindowsProfileParameters) DeepCopy() *WindowsProfileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkloadAutoscalerProfileInitParameters) DeepCopyInto(out *WorkloadAutoscalerProfileInitParameters) { + *out = *in + if in.KedaEnabled != nil { + in, out := &in.KedaEnabled, &out.KedaEnabled + *out = new(bool) + **out = **in + } + if in.VerticalPodAutoscalerEnabled != nil { + in, out := &in.VerticalPodAutoscalerEnabled, &out.VerticalPodAutoscalerEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadAutoscalerProfileInitParameters. +func (in *WorkloadAutoscalerProfileInitParameters) DeepCopy() *WorkloadAutoscalerProfileInitParameters { + if in == nil { + return nil + } + out := new(WorkloadAutoscalerProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkloadAutoscalerProfileObservation) DeepCopyInto(out *WorkloadAutoscalerProfileObservation) { *out = *in diff --git a/apis/containerservice/v1beta1/zz_generated.managed.go b/apis/containerservice/v1beta1/zz_generated.managed.go index a42ab3068..3825f9467 100644 --- a/apis/containerservice/v1beta1/zz_generated.managed.go +++ b/apis/containerservice/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *KubernetesCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this KubernetesCluster. -func (mg *KubernetesCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this KubernetesCluster. +func (mg *KubernetesCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this KubernetesCluster. @@ -55,9 +55,9 @@ func (mg *KubernetesCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this KubernetesCluster. -func (mg *KubernetesCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this KubernetesCluster. +func (mg *KubernetesCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this KubernetesCluster. @@ -93,9 +93,9 @@ func (mg *KubernetesClusterNodePool) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this KubernetesClusterNodePool. -func (mg *KubernetesClusterNodePool) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this KubernetesClusterNodePool. +func (mg *KubernetesClusterNodePool) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this KubernetesClusterNodePool. @@ -131,9 +131,9 @@ func (mg *KubernetesClusterNodePool) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this KubernetesClusterNodePool. -func (mg *KubernetesClusterNodePool) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this KubernetesClusterNodePool. +func (mg *KubernetesClusterNodePool) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this KubernetesClusterNodePool. @@ -169,9 +169,9 @@ func (mg *KubernetesFleetManager) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this KubernetesFleetManager. -func (mg *KubernetesFleetManager) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this KubernetesFleetManager. +func (mg *KubernetesFleetManager) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this KubernetesFleetManager. @@ -207,9 +207,9 @@ func (mg *KubernetesFleetManager) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this KubernetesFleetManager. -func (mg *KubernetesFleetManager) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this KubernetesFleetManager. +func (mg *KubernetesFleetManager) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this KubernetesFleetManager. diff --git a/apis/containerservice/v1beta1/zz_generated_terraformed.go b/apis/containerservice/v1beta1/zz_generated_terraformed.go index 57edc9cd7..08637aa0a 100755 --- a/apis/containerservice/v1beta1/zz_generated_terraformed.go +++ b/apis/containerservice/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *KubernetesCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this KubernetesCluster +func (tr *KubernetesCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this KubernetesCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *KubernetesCluster) LateInitialize(attrs []byte) (bool, error) { @@ -147,6 +157,16 @@ func (tr *KubernetesClusterNodePool) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this KubernetesClusterNodePool +func (tr *KubernetesClusterNodePool) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this KubernetesClusterNodePool using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *KubernetesClusterNodePool) LateInitialize(attrs []byte) (bool, error) { @@ -221,6 +241,16 @@ func (tr *KubernetesFleetManager) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this KubernetesFleetManager +func (tr *KubernetesFleetManager) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this KubernetesFleetManager using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *KubernetesFleetManager) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/containerservice/v1beta1/zz_kubernetescluster_types.go b/apis/containerservice/v1beta1/zz_kubernetescluster_types.go index 79e52c564..0a2884003 100755 --- a/apis/containerservice/v1beta1/zz_kubernetescluster_types.go +++ b/apis/containerservice/v1beta1/zz_kubernetescluster_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APIServerAccessProfileInitParameters struct { + + // Set of authorized IP ranges to allow access to API server, e.g. ["198.51.100.0/24"]. + AuthorizedIPRanges []*string `json:"authorizedIpRanges,omitempty" tf:"authorized_ip_ranges,omitempty"` + + // Should API Server VNet Integration be enabled? For more details please visit Use API Server VNet Integration. + VnetIntegrationEnabled *bool `json:"vnetIntegrationEnabled,omitempty" tf:"vnet_integration_enabled,omitempty"` +} + type APIServerAccessProfileObservation struct { // Set of authorized IP ranges to allow access to API server, e.g. ["198.51.100.0/24"]. @@ -50,6 +59,9 @@ type APIServerAccessProfileParameters struct { VnetIntegrationEnabled *bool `json:"vnetIntegrationEnabled,omitempty" tf:"vnet_integration_enabled,omitempty"` } +type AciConnectorLinuxInitParameters struct { +} + type AciConnectorLinuxObservation struct { // A connector_identity block is exported. The exported attributes are defined below. @@ -75,6 +87,15 @@ type AciConnectorLinuxParameters struct { SubnetNameSelector *v1.Selector `json:"subnetNameSelector,omitempty" tf:"-"` } +type AllowedInitParameters struct { + + // A day in a week. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. + Day *string `json:"day,omitempty" tf:"day,omitempty"` + + // An array of hour slots in a day. For example, specifying 1 will allow maintenance from 1:00am to 2:00am. Specifying 1, 2 will allow maintenance from 1:00am to 3:00m. Possible values are between 0 and 23. + Hours []*float64 `json:"hours,omitempty" tf:"hours,omitempty"` +} + type AllowedObservation struct { // A day in a week. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. @@ -87,12 +108,66 @@ type AllowedObservation struct { type AllowedParameters struct { // A day in a week. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. - // +kubebuilder:validation:Required - Day *string `json:"day" tf:"day,omitempty"` + // +kubebuilder:validation:Optional + Day *string `json:"day,omitempty" tf:"day,omitempty"` // An array of hour slots in a day. For example, specifying 1 will allow maintenance from 1:00am to 2:00am. Specifying 1, 2 will allow maintenance from 1:00am to 3:00m. Possible values are between 0 and 23. - // +kubebuilder:validation:Required - Hours []*float64 `json:"hours" tf:"hours,omitempty"` + // +kubebuilder:validation:Optional + Hours []*float64 `json:"hours,omitempty" tf:"hours,omitempty"` +} + +type AutoScalerProfileInitParameters struct { + + // Detect similar node groups and balance the number of nodes between them. Defaults to false. + BalanceSimilarNodeGroups *bool `json:"balanceSimilarNodeGroups,omitempty" tf:"balance_similar_node_groups,omitempty"` + + // Maximum number of empty nodes that can be deleted at the same time. Defaults to 10. + EmptyBulkDeleteMax *string `json:"emptyBulkDeleteMax,omitempty" tf:"empty_bulk_delete_max,omitempty"` + + // Expander to use. Possible values are least-waste, priority, most-pods and random. Defaults to random. + Expander *string `json:"expander,omitempty" tf:"expander,omitempty"` + + // Maximum number of seconds the cluster autoscaler waits for pod termination when trying to scale down a node. Defaults to 600. + MaxGracefulTerminationSec *string `json:"maxGracefulTerminationSec,omitempty" tf:"max_graceful_termination_sec,omitempty"` + + // Maximum time the autoscaler waits for a node to be provisioned. Defaults to 15m. + MaxNodeProvisioningTime *string `json:"maxNodeProvisioningTime,omitempty" tf:"max_node_provisioning_time,omitempty"` + + // Maximum Number of allowed unready nodes. Defaults to 3. + MaxUnreadyNodes *float64 `json:"maxUnreadyNodes,omitempty" tf:"max_unready_nodes,omitempty"` + + // Maximum percentage of unready nodes the cluster autoscaler will stop if the percentage is exceeded. Defaults to 45. + MaxUnreadyPercentage *float64 `json:"maxUnreadyPercentage,omitempty" tf:"max_unready_percentage,omitempty"` + + // For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. Defaults to 10s. + NewPodScaleUpDelay *string `json:"newPodScaleUpDelay,omitempty" tf:"new_pod_scale_up_delay,omitempty"` + + // How long after the scale up of AKS nodes the scale down evaluation resumes. Defaults to 10m. + ScaleDownDelayAfterAdd *string `json:"scaleDownDelayAfterAdd,omitempty" tf:"scale_down_delay_after_add,omitempty"` + + // How long after node deletion that scale down evaluation resumes. Defaults to the value used for scan_interval. + ScaleDownDelayAfterDelete *string `json:"scaleDownDelayAfterDelete,omitempty" tf:"scale_down_delay_after_delete,omitempty"` + + // How long after scale down failure that scale down evaluation resumes. Defaults to 3m. + ScaleDownDelayAfterFailure *string `json:"scaleDownDelayAfterFailure,omitempty" tf:"scale_down_delay_after_failure,omitempty"` + + // How long a node should be unneeded before it is eligible for scale down. Defaults to 10m. + ScaleDownUnneeded *string `json:"scaleDownUnneeded,omitempty" tf:"scale_down_unneeded,omitempty"` + + // How long an unready node should be unneeded before it is eligible for scale down. Defaults to 20m. + ScaleDownUnready *string `json:"scaleDownUnready,omitempty" tf:"scale_down_unready,omitempty"` + + // Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down. Defaults to 0.5. + ScaleDownUtilizationThreshold *string `json:"scaleDownUtilizationThreshold,omitempty" tf:"scale_down_utilization_threshold,omitempty"` + + // How often the AKS Cluster should be re-evaluated for scale up/down. Defaults to 10s. + ScanInterval *string `json:"scanInterval,omitempty" tf:"scan_interval,omitempty"` + + // If true cluster autoscaler will never delete nodes with pods with local storage, for example, EmptyDir or HostPath. Defaults to true. + SkipNodesWithLocalStorage *bool `json:"skipNodesWithLocalStorage,omitempty" tf:"skip_nodes_with_local_storage,omitempty"` + + // If true cluster autoscaler will never delete nodes with pods from kube-system (except for DaemonSet or mirror pods). Defaults to true. + SkipNodesWithSystemPods *bool `json:"skipNodesWithSystemPods,omitempty" tf:"skip_nodes_with_system_pods,omitempty"` } type AutoScalerProfileObservation struct { @@ -220,6 +295,27 @@ type AutoScalerProfileParameters struct { SkipNodesWithSystemPods *bool `json:"skipNodesWithSystemPods,omitempty" tf:"skip_nodes_with_system_pods,omitempty"` } +type AzureActiveDirectoryRoleBasedAccessControlInitParameters struct { + + // A list of Object IDs of Azure Active Directory Groups which should have Admin Role on the Cluster. + AdminGroupObjectIds []*string `json:"adminGroupObjectIds,omitempty" tf:"admin_group_object_ids,omitempty"` + + // Is Role Based Access Control based on Azure AD enabled? + AzureRbacEnabled *bool `json:"azureRbacEnabled,omitempty" tf:"azure_rbac_enabled,omitempty"` + + // The Client ID of an Azure Active Directory Application. + ClientAppID *string `json:"clientAppId,omitempty" tf:"client_app_id,omitempty"` + + // Is the Azure Active Directory integration Managed, meaning that Azure will create/manage the Service Principal used for integration. + Managed *bool `json:"managed,omitempty" tf:"managed,omitempty"` + + // The Server ID of an Azure Active Directory Application. + ServerAppID *string `json:"serverAppId,omitempty" tf:"server_app_id,omitempty"` + + // The Tenant ID used for Azure Active Directory Application. If this isn't specified the Tenant ID of the current Subscription is used. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type AzureActiveDirectoryRoleBasedAccessControlObservation struct { // A list of Object IDs of Azure Active Directory Groups which should have Admin Role on the Cluster. @@ -272,6 +368,12 @@ type AzureActiveDirectoryRoleBasedAccessControlParameters struct { TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } +type ConfidentialComputingInitParameters struct { + + // Should the SGX quote helper be enabled? + SgxQuoteHelperEnabled *bool `json:"sgxQuoteHelperEnabled,omitempty" tf:"sgx_quote_helper_enabled,omitempty"` +} + type ConfidentialComputingObservation struct { // Should the SGX quote helper be enabled? @@ -281,8 +383,11 @@ type ConfidentialComputingObservation struct { type ConfidentialComputingParameters struct { // Should the SGX quote helper be enabled? - // +kubebuilder:validation:Required - SgxQuoteHelperEnabled *bool `json:"sgxQuoteHelperEnabled" tf:"sgx_quote_helper_enabled,omitempty"` + // +kubebuilder:validation:Optional + SgxQuoteHelperEnabled *bool `json:"sgxQuoteHelperEnabled,omitempty" tf:"sgx_quote_helper_enabled,omitempty"` +} + +type ConnectorIdentityInitParameters struct { } type ConnectorIdentityObservation struct { @@ -300,6 +405,114 @@ type ConnectorIdentityObservation struct { type ConnectorIdentityParameters struct { } +type DefaultNodePoolInitParameters struct { + + // Specifies the ID of the Capacity Reservation Group within which this AKS Cluster should be created. Changing this forces a new resource to be created. + CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` + + // Specifies whether to trust a Custom CA. + CustomCATrustEnabled *bool `json:"customCaTrustEnabled,omitempty" tf:"custom_ca_trust_enabled,omitempty"` + + // Should the Kubernetes Auto Scaler be enabled for this Node Pool? + EnableAutoScaling *bool `json:"enableAutoScaling,omitempty" tf:"enable_auto_scaling,omitempty"` + + // Should the nodes in the Default Node Pool have host encryption enabled? Changing this forces a new resource to be created. + EnableHostEncryption *bool `json:"enableHostEncryption,omitempty" tf:"enable_host_encryption,omitempty"` + + // Should nodes in this Node Pool have a Public IP Address? Changing this forces a new resource to be created. + EnableNodePublicIP *bool `json:"enableNodePublicIp,omitempty" tf:"enable_node_public_ip,omitempty"` + + // Should the nodes in this Node Pool have Federal Information Processing Standard enabled? Changing this forces a new resource to be created. + FipsEnabled *bool `json:"fipsEnabled,omitempty" tf:"fips_enabled,omitempty"` + + // Specifies the ID of the Host Group within which this AKS Cluster should be created. Changing this forces a new resource to be created. + HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"` + + // A kubelet_config block as defined below. Changing this forces a new resource to be created. + KubeletConfig []KubeletConfigInitParameters `json:"kubeletConfig,omitempty" tf:"kubelet_config,omitempty"` + + // The type of disk used by kubelet. Possible values are OS and Temporary. + KubeletDiskType *string `json:"kubeletDiskType,omitempty" tf:"kubelet_disk_type,omitempty"` + + // A linux_os_config block as defined below. Changing this forces a new resource to be created. + LinuxOsConfig []LinuxOsConfigInitParameters `json:"linuxOsConfig,omitempty" tf:"linux_os_config,omitempty"` + + // The maximum number of nodes which should exist in this Node Pool. If specified this must be between 1 and 1000. + MaxCount *float64 `json:"maxCount,omitempty" tf:"max_count,omitempty"` + + // The maximum number of pods that can run on each agent. Changing this forces a new resource to be created. + MaxPods *float64 `json:"maxPods,omitempty" tf:"max_pods,omitempty"` + + // A base64-encoded string which will be written to /etc/motd after decoding. This allows customization of the message of the day for Linux nodes. It cannot be specified for Windows nodes and must be a static string (i.e. will be printed raw and not executed as a script). Changing this forces a new resource to be created. + MessageOfTheDay *string `json:"messageOfTheDay,omitempty" tf:"message_of_the_day,omitempty"` + + // The minimum number of nodes which should exist in this Node Pool. If specified this must be between 1 and 1000. + MinCount *float64 `json:"minCount,omitempty" tf:"min_count,omitempty"` + + // The name which should be used for the default Kubernetes Node Pool. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The initial number of nodes which should exist in this Node Pool. If specified this must be between 1 and 1000 and between min_count and max_count. + NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` + + // A map of Kubernetes labels which should be applied to nodes in the Default Node Pool. + NodeLabels map[string]*string `json:"nodeLabels,omitempty" tf:"node_labels,omitempty"` + + // A node_network_profile block as documented below. + NodeNetworkProfile []NodeNetworkProfileInitParameters `json:"nodeNetworkProfile,omitempty" tf:"node_network_profile,omitempty"` + + // Resource ID for the Public IP Addresses Prefix for the nodes in this Node Pool. enable_node_public_ip should be true. Changing this forces a new resource to be created. + NodePublicIPPrefixID *string `json:"nodePublicIpPrefixId,omitempty" tf:"node_public_ip_prefix_id,omitempty"` + + // A list of the taints added to new nodes during node pool create and scale. Changing this forces a new resource to be created. + NodeTaints []*string `json:"nodeTaints,omitempty" tf:"node_taints,omitempty"` + + // Enabling this option will taint default node pool with CriticalAddonsOnly=true:NoSchedule taint. Changing this forces a new resource to be created. + OnlyCriticalAddonsEnabled *bool `json:"onlyCriticalAddonsEnabled,omitempty" tf:"only_critical_addons_enabled,omitempty"` + + // Version of Kubernetes used for the Agents. If not specified, the default node pool will be created with the version specified by kubernetes_version. If both are unspecified, the latest recommended version will be used at provisioning time (but won't auto-upgrade). AKS does not require an exact patch version to be specified, minor version aliases such as 1.22 are also supported. - The minor version's latest GA patch is automatically chosen in that case. More details can be found in the documentation. + OrchestratorVersion *string `json:"orchestratorVersion,omitempty" tf:"orchestrator_version,omitempty"` + + // The size of the OS Disk which should be used for each agent in the Node Pool. Changing this forces a new resource to be created. + OsDiskSizeGb *float64 `json:"osDiskSizeGb,omitempty" tf:"os_disk_size_gb,omitempty"` + + // The type of disk which should be used for the Operating System. Possible values are Ephemeral and Managed. Defaults to Managed. Changing this forces a new resource to be created. + OsDiskType *string `json:"osDiskType,omitempty" tf:"os_disk_type,omitempty"` + + // Specifies the OS SKU used by the agent pool. Possible values include: Ubuntu, CBLMariner, Mariner, Windows2019, Windows2022. If not specified, the default is Ubuntu if OSType=Linux or Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is deprecated. Changing this forces a new resource to be created. + OsSku *string `json:"osSku,omitempty" tf:"os_sku,omitempty"` + + // The ID of the Proximity Placement Group. Changing this forces a new resource to be created. + ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` + + // Specifies the autoscaling behaviour of the Kubernetes Cluster. Allowed values are Delete and Deallocate. Defaults to Delete. + ScaleDownMode *string `json:"scaleDownMode,omitempty" tf:"scale_down_mode,omitempty"` + + // A mapping of tags to assign to the Node Pool. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the name of the temporary node pool used to cycle the default node pool for VM resizing. + TemporaryNameForRotation *string `json:"temporaryNameForRotation,omitempty" tf:"temporary_name_for_rotation,omitempty"` + + // The type of Node Pool which should be created. Possible values are AvailabilitySet and VirtualMachineScaleSets. Defaults to VirtualMachineScaleSets. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // Used to specify whether the UltraSSD is enabled in the Default Node Pool. Defaults to false. See the documentation for more information. Changing this forces a new resource to be created. + UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` + + // A upgrade_settings block as documented below. + UpgradeSettings []UpgradeSettingsInitParameters `json:"upgradeSettings,omitempty" tf:"upgrade_settings,omitempty"` + + // The size of the Virtual Machine, such as Standard_DS2_v2. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // Specifies the workload runtime used by the node pool. Possible values are OCIContainer and KataMshvVmIsolation. + WorkloadRuntime *string `json:"workloadRuntime,omitempty" tf:"workload_runtime,omitempty"` + + // Specifies a list of Availability Zones in which this Kubernetes Cluster should be located. Changing this forces a new Kubernetes Cluster to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type DefaultNodePoolObservation struct { // Specifies the ID of the Capacity Reservation Group within which this AKS Cluster should be created. Changing this forces a new resource to be created. @@ -473,8 +686,8 @@ type DefaultNodePoolParameters struct { MinCount *float64 `json:"minCount,omitempty" tf:"min_count,omitempty"` // The name which should be used for the default Kubernetes Node Pool. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The initial number of nodes which should exist in this Node Pool. If specified this must be between 1 and 1000 and between min_count and max_count. // +kubebuilder:validation:Optional @@ -559,8 +772,8 @@ type DefaultNodePoolParameters struct { UpgradeSettings []UpgradeSettingsParameters `json:"upgradeSettings,omitempty" tf:"upgrade_settings,omitempty"` // The size of the Virtual Machine, such as Standard_DS2_v2. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of a Subnet where the Kubernetes Node Pool should exist. Changing this forces a new resource to be created. // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet @@ -585,6 +798,15 @@ type DefaultNodePoolParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type GmsaInitParameters struct { + + // Specifies the DNS server for Windows gMSA. Set this to an empty string if you have configured the DNS server in the VNet which was used to create the managed cluster. + DNSServer *string `json:"dnsServer,omitempty" tf:"dns_server,omitempty"` + + // Specifies the root domain name for Windows gMSA. Set this to an empty string if you have configured the DNS server in the VNet which was used to create the managed cluster. + RootDomain *string `json:"rootDomain,omitempty" tf:"root_domain,omitempty"` +} + type GmsaObservation struct { // Specifies the DNS server for Windows gMSA. Set this to an empty string if you have configured the DNS server in the VNet which was used to create the managed cluster. @@ -597,12 +819,24 @@ type GmsaObservation struct { type GmsaParameters struct { // Specifies the DNS server for Windows gMSA. Set this to an empty string if you have configured the DNS server in the VNet which was used to create the managed cluster. - // +kubebuilder:validation:Required - DNSServer *string `json:"dnsServer" tf:"dns_server,omitempty"` + // +kubebuilder:validation:Optional + DNSServer *string `json:"dnsServer,omitempty" tf:"dns_server,omitempty"` // Specifies the root domain name for Windows gMSA. Set this to an empty string if you have configured the DNS server in the VNet which was used to create the managed cluster. - // +kubebuilder:validation:Required - RootDomain *string `json:"rootDomain" tf:"root_domain,omitempty"` + // +kubebuilder:validation:Optional + RootDomain *string `json:"rootDomain,omitempty" tf:"root_domain,omitempty"` +} + +type HTTPProxyConfigInitParameters struct { + + // The proxy address to be used when communicating over HTTP. Changing this forces a new resource to be created. + HTTPProxy *string `json:"httpProxy,omitempty" tf:"http_proxy,omitempty"` + + // The proxy address to be used when communicating over HTTPS. Changing this forces a new resource to be created. + HTTPSProxy *string `json:"httpsProxy,omitempty" tf:"https_proxy,omitempty"` + + // The list of domains that will not use the proxy for communication. + NoProxy []*string `json:"noProxy,omitempty" tf:"no_proxy,omitempty"` } type HTTPProxyConfigObservation struct { @@ -636,6 +870,15 @@ type HTTPProxyConfigParameters struct { TrustedCASecretRef *v1.SecretKeySelector `json:"trustedCaSecretRef,omitempty" tf:"-"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Kubernetes Cluster. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Kubernetes Cluster. Possible values are SystemAssigned or UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Kubernetes Cluster. @@ -658,8 +901,11 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Kubernetes Cluster. Possible values are SystemAssigned or UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type IngressApplicationGatewayIdentityInitParameters struct { } type IngressApplicationGatewayIdentityObservation struct { @@ -677,9 +923,21 @@ type IngressApplicationGatewayIdentityObservation struct { type IngressApplicationGatewayIdentityParameters struct { } -type IngressApplicationGatewayObservation struct { +type IngressApplicationGatewayInitParameters struct { - // The ID of the Application Gateway associated with the ingress controller deployed to this Kubernetes Cluster. + // The ID of the Application Gateway to integrate with the ingress controller of this Kubernetes Cluster. See this page for further details. + GatewayID *string `json:"gatewayId,omitempty" tf:"gateway_id,omitempty"` + + // The name of the Application Gateway to be used or created in the Nodepool Resource Group, which in turn will be integrated with the ingress controller of this Kubernetes Cluster. See this page for further details. + GatewayName *string `json:"gatewayName,omitempty" tf:"gateway_name,omitempty"` + + // The subnet CIDR to be used to create an Application Gateway, which in turn will be integrated with the ingress controller of this Kubernetes Cluster. See this page for further details. + SubnetCidr *string `json:"subnetCidr,omitempty" tf:"subnet_cidr,omitempty"` +} + +type IngressApplicationGatewayObservation struct { + + // The ID of the Application Gateway associated with the ingress controller deployed to this Kubernetes Cluster. EffectiveGatewayID *string `json:"effectiveGatewayId,omitempty" tf:"effective_gateway_id,omitempty"` // The ID of the Application Gateway to integrate with the ingress controller of this Kubernetes Cluster. See this page for further details. @@ -727,6 +985,15 @@ type IngressApplicationGatewayParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type KeyManagementServiceInitParameters struct { + + // Identifier of Azure Key Vault key. See key identifier format for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When enabled is false, leave the field empty. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // Network access of the key vault Network access of key vault. The possible values are Public and Private. Public means the key vault allows public access from all networks. Private means the key vault disables public access and enables private link. The default value is Public. + KeyVaultNetworkAccess *string `json:"keyVaultNetworkAccess,omitempty" tf:"key_vault_network_access,omitempty"` +} + type KeyManagementServiceObservation struct { // Identifier of Azure Key Vault key. See key identifier format for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When enabled is false, leave the field empty. @@ -739,14 +1006,23 @@ type KeyManagementServiceObservation struct { type KeyManagementServiceParameters struct { // Identifier of Azure Key Vault key. See key identifier format for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When enabled is false, leave the field empty. - // +kubebuilder:validation:Required - KeyVaultKeyID *string `json:"keyVaultKeyId" tf:"key_vault_key_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // Network access of the key vault Network access of key vault. The possible values are Public and Private. Public means the key vault allows public access from all networks. Private means the key vault disables public access and enables private link. The default value is Public. // +kubebuilder:validation:Optional KeyVaultNetworkAccess *string `json:"keyVaultNetworkAccess,omitempty" tf:"key_vault_network_access,omitempty"` } +type KeyVaultSecretsProviderInitParameters struct { + + // Should the secret store CSI driver on the AKS cluster be enabled? + SecretRotationEnabled *bool `json:"secretRotationEnabled,omitempty" tf:"secret_rotation_enabled,omitempty"` + + // The interval to poll for secret rotation. This attribute is only set when secret_rotation is true and defaults to 2m. + SecretRotationInterval *string `json:"secretRotationInterval,omitempty" tf:"secret_rotation_interval,omitempty"` +} + type KeyVaultSecretsProviderObservation struct { // An secret_identity block is exported. The exported attributes are defined below. @@ -770,6 +1046,9 @@ type KeyVaultSecretsProviderParameters struct { SecretRotationInterval *string `json:"secretRotationInterval,omitempty" tf:"secret_rotation_interval,omitempty"` } +type KubeAdminConfigInitParameters struct { +} + type KubeAdminConfigObservation struct { // The Kubernetes cluster server host. @@ -782,6 +1061,9 @@ type KubeAdminConfigObservation struct { type KubeAdminConfigParameters struct { } +type KubeConfigInitParameters struct { +} + type KubeConfigObservation struct { // The Kubernetes cluster server host. @@ -794,6 +1076,39 @@ type KubeConfigObservation struct { type KubeConfigParameters struct { } +type KubeletConfigInitParameters struct { + + // Specifies the allow list of unsafe sysctls command or patterns (ending in *). Changing this forces a new resource to be created. + AllowedUnsafeSysctls []*string `json:"allowedUnsafeSysctls,omitempty" tf:"allowed_unsafe_sysctls,omitempty"` + + // Is CPU CFS quota enforcement for containers enabled? Changing this forces a new resource to be created. + CPUCfsQuotaEnabled *bool `json:"cpuCfsQuotaEnabled,omitempty" tf:"cpu_cfs_quota_enabled,omitempty"` + + // Specifies the CPU CFS quota period value. Changing this forces a new resource to be created. + CPUCfsQuotaPeriod *string `json:"cpuCfsQuotaPeriod,omitempty" tf:"cpu_cfs_quota_period,omitempty"` + + // Specifies the CPU Manager policy to use. Possible values are none and static, Changing this forces a new resource to be created. + CPUManagerPolicy *string `json:"cpuManagerPolicy,omitempty" tf:"cpu_manager_policy,omitempty"` + + // Specifies the maximum number of container log files that can be present for a container. must be at least 2. Changing this forces a new resource to be created. + ContainerLogMaxLine *float64 `json:"containerLogMaxLine,omitempty" tf:"container_log_max_line,omitempty"` + + // Specifies the maximum size (e.g. 10MB) of container log file before it is rotated. Changing this forces a new resource to be created. + ContainerLogMaxSizeMb *float64 `json:"containerLogMaxSizeMb,omitempty" tf:"container_log_max_size_mb,omitempty"` + + // Specifies the percent of disk usage above which image garbage collection is always run. Must be between 0 and 100. Changing this forces a new resource to be created. + ImageGcHighThreshold *float64 `json:"imageGcHighThreshold,omitempty" tf:"image_gc_high_threshold,omitempty"` + + // Specifies the percent of disk usage lower than which image garbage collection is never run. Must be between 0 and 100. Changing this forces a new resource to be created. + ImageGcLowThreshold *float64 `json:"imageGcLowThreshold,omitempty" tf:"image_gc_low_threshold,omitempty"` + + // Specifies the maximum number of processes per pod. Changing this forces a new resource to be created. + PodMaxPid *float64 `json:"podMaxPid,omitempty" tf:"pod_max_pid,omitempty"` + + // Specifies the Topology Manager policy to use. Possible values are none, best-effort, restricted or single-numa-node. Changing this forces a new resource to be created. + TopologyManagerPolicy *string `json:"topologyManagerPolicy,omitempty" tf:"topology_manager_policy,omitempty"` +} + type KubeletConfigObservation struct { // Specifies the allow list of unsafe sysctls command or patterns (ending in *). Changing this forces a new resource to be created. @@ -870,6 +1185,18 @@ type KubeletConfigParameters struct { TopologyManagerPolicy *string `json:"topologyManagerPolicy,omitempty" tf:"topology_manager_policy,omitempty"` } +type KubeletIdentityInitParameters struct { + + // The Client ID of the user-defined Managed Identity to be assigned to the Kubelets. If not specified a Managed Identity is created automatically. Changing this forces a new resource to be created. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The Object ID of the user-defined Managed Identity assigned to the Kubelets.If not specified a Managed Identity is created automatically. Changing this forces a new resource to be created. + ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` + + // The ID of the User Assigned Identity assigned to the Kubelets. If not specified a Managed Identity is created automatically. Changing this forces a new resource to be created. + UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` +} + type KubeletIdentityObservation struct { // The Client ID of the user-defined Managed Identity to be assigned to the Kubelets. If not specified a Managed Identity is created automatically. Changing this forces a new resource to be created. @@ -897,6 +1224,155 @@ type KubeletIdentityParameters struct { UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` } +type KubernetesClusterInitParameters struct { + + // An api_server_access_profile block as defined below. + APIServerAccessProfile []APIServerAccessProfileInitParameters `json:"apiServerAccessProfile,omitempty" tf:"api_server_access_profile,omitempty"` + + // Deprecated in favor of `spec.forProvider.apiServerAccessProfile[0].authorizedIpRanges` + APIServerAuthorizedIPRanges []*string `json:"apiServerAuthorizedIpRanges,omitempty" tf:"api_server_authorized_ip_ranges,omitempty"` + + // A aci_connector_linux block as defined below. For more details, please visit Create and configure an AKS cluster to use virtual nodes. + AciConnectorLinux []AciConnectorLinuxInitParameters `json:"aciConnectorLinux,omitempty" tf:"aci_connector_linux,omitempty"` + + // A auto_scaler_profile block as defined below. + AutoScalerProfile []AutoScalerProfileInitParameters `json:"autoScalerProfile,omitempty" tf:"auto_scaler_profile,omitempty"` + + // The upgrade channel for this Kubernetes Cluster. Possible values are patch, rapid, node-image and stable. Omitting this field sets this value to none. + AutomaticChannelUpgrade *string `json:"automaticChannelUpgrade,omitempty" tf:"automatic_channel_upgrade,omitempty"` + + // A azure_active_directory_role_based_access_control block as defined below. + AzureActiveDirectoryRoleBasedAccessControl []AzureActiveDirectoryRoleBasedAccessControlInitParameters `json:"azureActiveDirectoryRoleBasedAccessControl,omitempty" tf:"azure_active_directory_role_based_access_control,omitempty"` + + // Should the Azure Policy Add-On be enabled? For more details please visit Understand Azure Policy for Azure Kubernetes Service + AzurePolicyEnabled *bool `json:"azurePolicyEnabled,omitempty" tf:"azure_policy_enabled,omitempty"` + + // A confidential_computing block as defined below. For more details please the documentation + ConfidentialComputing []ConfidentialComputingInitParameters `json:"confidentialComputing,omitempty" tf:"confidential_computing,omitempty"` + + // DNS prefix specified when creating the managed cluster. Possible values must begin and end with a letter or number, contain only letters, numbers, and hyphens and be between 1 and 54 characters in length. Changing this forces a new resource to be created. + DNSPrefix *string `json:"dnsPrefix,omitempty" tf:"dns_prefix,omitempty"` + + // Specifies the DNS prefix to use with private clusters. Changing this forces a new resource to be created. + DNSPrefixPrivateCluster *string `json:"dnsPrefixPrivateCluster,omitempty" tf:"dns_prefix_private_cluster,omitempty"` + + // A default_node_pool block as defined below. + DefaultNodePool []DefaultNodePoolInitParameters `json:"defaultNodePool,omitempty" tf:"default_node_pool,omitempty"` + + // The ID of the Disk Encryption Set which should be used for the Nodes and Volumes. More information can be found in the documentation. Changing this forces a new resource to be created. + DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Managed Kubernetes Cluster should exist. Changing this forces a new resource to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + EnablePodSecurityPolicy *bool `json:"enablePodSecurityPolicy,omitempty" tf:"enable_pod_security_policy,omitempty"` + + // Should HTTP Application Routing be enabled? + HTTPApplicationRoutingEnabled *bool `json:"httpApplicationRoutingEnabled,omitempty" tf:"http_application_routing_enabled,omitempty"` + + // A http_proxy_config block as defined below. + HTTPProxyConfig []HTTPProxyConfigInitParameters `json:"httpProxyConfig,omitempty" tf:"http_proxy_config,omitempty"` + + // An identity block as defined below. One of either identity or service_principal must be specified. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies whether Image Cleaner is enabled. + ImageCleanerEnabled *bool `json:"imageCleanerEnabled,omitempty" tf:"image_cleaner_enabled,omitempty"` + + // Specifies the interval in hours when images should be cleaned up. Defaults to 48. + ImageCleanerIntervalHours *float64 `json:"imageCleanerIntervalHours,omitempty" tf:"image_cleaner_interval_hours,omitempty"` + + // An ingress_application_gateway block as defined below. + IngressApplicationGateway []IngressApplicationGatewayInitParameters `json:"ingressApplicationGateway,omitempty" tf:"ingress_application_gateway,omitempty"` + + // A key_management_service block as defined below. For more details, please visit Key Management Service (KMS) etcd encryption to an AKS cluster. + KeyManagementService []KeyManagementServiceInitParameters `json:"keyManagementService,omitempty" tf:"key_management_service,omitempty"` + + // A key_vault_secrets_provider block as defined below. + KeyVaultSecretsProvider []KeyVaultSecretsProviderInitParameters `json:"keyVaultSecretsProvider,omitempty" tf:"key_vault_secrets_provider,omitempty"` + + // A kubelet_identity block as defined below. + KubeletIdentity []KubeletIdentityInitParameters `json:"kubeletIdentity,omitempty" tf:"kubelet_identity,omitempty"` + + // Version of Kubernetes specified when creating the AKS managed cluster. If not specified, the latest recommended version will be used at provisioning time (but won't auto-upgrade). AKS does not require an exact patch version to be specified, minor version aliases such as 1.22 are also supported. - The minor version's latest GA patch is automatically chosen in that case. More details can be found in the documentation. + KubernetesVersion *string `json:"kubernetesVersion,omitempty" tf:"kubernetes_version,omitempty"` + + // A linux_profile block as defined below. + LinuxProfile []LinuxProfileInitParameters `json:"linuxProfile,omitempty" tf:"linux_profile,omitempty"` + + // If true local accounts will be disabled. See the documentation for more information. + LocalAccountDisabled *bool `json:"localAccountDisabled,omitempty" tf:"local_account_disabled,omitempty"` + + // The location where the Managed Kubernetes Cluster should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A maintenance_window block as defined below. + MaintenanceWindow []MaintenanceWindowInitParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` + + // A microsoft_defender block as defined below. + MicrosoftDefender []MicrosoftDefenderInitParameters `json:"microsoftDefender,omitempty" tf:"microsoft_defender,omitempty"` + + // Specifies a Prometheus add-on profile for the Kubernetes Cluster. A monitor_metrics block as defined below. + MonitorMetrics []MonitorMetricsInitParameters `json:"monitorMetrics,omitempty" tf:"monitor_metrics,omitempty"` + + // A network_profile block as defined below. + NetworkProfile []NetworkProfileInitParameters `json:"networkProfile,omitempty" tf:"network_profile,omitempty"` + + // The auto-generated Resource Group which contains the resources for this Managed Kubernetes Cluster. + NodeResourceGroup *string `json:"nodeResourceGroup,omitempty" tf:"node_resource_group,omitempty"` + + // Enable or Disable the OIDC issuer URL + OidcIssuerEnabled *bool `json:"oidcIssuerEnabled,omitempty" tf:"oidc_issuer_enabled,omitempty"` + + // An oms_agent block as defined below. + OmsAgent []OmsAgentInitParameters `json:"omsAgent,omitempty" tf:"oms_agent,omitempty"` + + // Is Open Service Mesh enabled? For more details, please visit Open Service Mesh for AKS. + OpenServiceMeshEnabled *bool `json:"openServiceMeshEnabled,omitempty" tf:"open_service_mesh_enabled,omitempty"` + + // Should this Kubernetes Cluster have its API server only exposed on internal IP addresses? This provides a Private IP Address for the Kubernetes API on the Virtual Network where the Kubernetes Cluster is located. Defaults to false. Changing this forces a new resource to be created. + PrivateClusterEnabled *bool `json:"privateClusterEnabled,omitempty" tf:"private_cluster_enabled,omitempty"` + + // Specifies whether a Public FQDN for this Private Cluster should be added. Defaults to false. + PrivateClusterPublicFqdnEnabled *bool `json:"privateClusterPublicFqdnEnabled,omitempty" tf:"private_cluster_public_fqdn_enabled,omitempty"` + + // Whether public network access is allowed for this Kubernetes Cluster. Defaults to true. Changing this forces a new resource to be created. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Whether Role Based Access Control for the Kubernetes Cluster should be enabled. Defaults to true. Changing this forces a new resource to be created. + RoleBasedAccessControlEnabled *bool `json:"roleBasedAccessControlEnabled,omitempty" tf:"role_based_access_control_enabled,omitempty"` + + // Whether to enable run command for the cluster or not. Defaults to true. + RunCommandEnabled *bool `json:"runCommandEnabled,omitempty" tf:"run_command_enabled,omitempty"` + + // A service_mesh_profile block as defined below. + ServiceMeshProfile []ServiceMeshProfileInitParameters `json:"serviceMeshProfile,omitempty" tf:"service_mesh_profile,omitempty"` + + // A service_principal block as documented below. One of either identity or service_principal must be specified. + ServicePrincipal []ServicePrincipalInitParameters `json:"servicePrincipal,omitempty" tf:"service_principal,omitempty"` + + // The SKU Tier that should be used for this Kubernetes Cluster. Possible values are Free, and Standard (which includes the Uptime SLA). Defaults to Free. + SkuTier *string `json:"skuTier,omitempty" tf:"sku_tier,omitempty"` + + // A storage_profile block as defined below. + StorageProfile []StorageProfileInitParameters `json:"storageProfile,omitempty" tf:"storage_profile,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A web_app_routing block as defined below. + WebAppRouting []WebAppRoutingInitParameters `json:"webAppRouting,omitempty" tf:"web_app_routing,omitempty"` + + // A windows_profile block as defined below. + WindowsProfile []WindowsProfileInitParameters `json:"windowsProfile,omitempty" tf:"windows_profile,omitempty"` + + // A workload_autoscaler_profile block defined below. + WorkloadAutoscalerProfile []WorkloadAutoscalerProfileInitParameters `json:"workloadAutoscalerProfile,omitempty" tf:"workload_autoscaler_profile,omitempty"` + + // Specifies whether Azure AD Workload Identity should be enabled for the Cluster. Defaults to false. + WorkloadIdentityEnabled *bool `json:"workloadIdentityEnabled,omitempty" tf:"workload_identity_enabled,omitempty"` +} + type KubernetesClusterObservation struct { // An api_server_access_profile block as defined below. @@ -1298,6 +1774,21 @@ type KubernetesClusterParameters struct { WorkloadIdentityEnabled *bool `json:"workloadIdentityEnabled,omitempty" tf:"workload_identity_enabled,omitempty"` } +type LinuxOsConfigInitParameters struct { + + // Specifies the size of the swap file on each node in MB. Changing this forces a new resource to be created. + SwapFileSizeMb *float64 `json:"swapFileSizeMb,omitempty" tf:"swap_file_size_mb,omitempty"` + + // A sysctl_config block as defined below. Changing this forces a new resource to be created. + SysctlConfig []SysctlConfigInitParameters `json:"sysctlConfig,omitempty" tf:"sysctl_config,omitempty"` + + // specifies the defrag configuration for Transparent Huge Page. Possible values are always, defer, defer+madvise, madvise and never. Changing this forces a new resource to be created. + TransparentHugePageDefrag *string `json:"transparentHugePageDefrag,omitempty" tf:"transparent_huge_page_defrag,omitempty"` + + // Specifies the Transparent Huge Page enabled configuration. Possible values are always, madvise and never. Changing this forces a new resource to be created. + TransparentHugePageEnabled *string `json:"transparentHugePageEnabled,omitempty" tf:"transparent_huge_page_enabled,omitempty"` +} + type LinuxOsConfigObservation struct { // Specifies the size of the swap file on each node in MB. Changing this forces a new resource to be created. @@ -1332,6 +1823,15 @@ type LinuxOsConfigParameters struct { TransparentHugePageEnabled *string `json:"transparentHugePageEnabled,omitempty" tf:"transparent_huge_page_enabled,omitempty"` } +type LinuxProfileInitParameters struct { + + // The Admin Username for the Cluster. Changing this forces a new resource to be created. + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` + + // An ssh_key block. Only one is currently allowed. Changing this will update the key on all node pools. More information can be found in the documentation. + SSHKey []SSHKeyInitParameters `json:"sshKey,omitempty" tf:"ssh_key,omitempty"` +} + type LinuxProfileObservation struct { // The Admin Username for the Cluster. Changing this forces a new resource to be created. @@ -1344,12 +1844,33 @@ type LinuxProfileObservation struct { type LinuxProfileParameters struct { // The Admin Username for the Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - AdminUsername *string `json:"adminUsername" tf:"admin_username,omitempty"` + // +kubebuilder:validation:Optional + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // An ssh_key block. Only one is currently allowed. Changing this will update the key on all node pools. More information can be found in the documentation. - // +kubebuilder:validation:Required - SSHKey []SSHKeyParameters `json:"sshKey" tf:"ssh_key,omitempty"` + // +kubebuilder:validation:Optional + SSHKey []SSHKeyParameters `json:"sshKey,omitempty" tf:"ssh_key,omitempty"` +} + +type LoadBalancerProfileInitParameters struct { + + // Desired outbound flow idle timeout in minutes for the cluster load balancer. Must be between 4 and 120 inclusive. Defaults to 4. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // Count of desired managed outbound IPs for the cluster load balancer. Must be between 1 and 100 inclusive. + ManagedOutboundIPCount *float64 `json:"managedOutboundIpCount,omitempty" tf:"managed_outbound_ip_count,omitempty"` + + // The desired number of IPv6 outbound IPs created and managed by Azure for the cluster load balancer. Must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. + ManagedOutboundIPv6Count *float64 `json:"managedOutboundIpv6Count,omitempty" tf:"managed_outbound_ipv6_count,omitempty"` + + // The ID of the Public IP Addresses which should be used for outbound communication for the cluster load balancer. + OutboundIPAddressIds []*string `json:"outboundIpAddressIds,omitempty" tf:"outbound_ip_address_ids,omitempty"` + + // The ID of the outbound Public IP Address Prefixes which should be used for the cluster load balancer. + OutboundIPPrefixIds []*string `json:"outboundIpPrefixIds,omitempty" tf:"outbound_ip_prefix_ids,omitempty"` + + // Number of desired SNAT port for each VM in the clusters load balancer. Must be between 0 and 64000 inclusive. Defaults to 0. + OutboundPortsAllocated *float64 `json:"outboundPortsAllocated,omitempty" tf:"outbound_ports_allocated,omitempty"` } type LoadBalancerProfileObservation struct { @@ -1403,6 +1924,15 @@ type LoadBalancerProfileParameters struct { OutboundPortsAllocated *float64 `json:"outboundPortsAllocated,omitempty" tf:"outbound_ports_allocated,omitempty"` } +type MaintenanceWindowInitParameters struct { + + // One or more allowed blocks as defined below. + Allowed []AllowedInitParameters `json:"allowed,omitempty" tf:"allowed,omitempty"` + + // One or more not_allowed block as defined below. + NotAllowed []NotAllowedInitParameters `json:"notAllowed,omitempty" tf:"not_allowed,omitempty"` +} + type MaintenanceWindowObservation struct { // One or more allowed blocks as defined below. @@ -1423,17 +1953,32 @@ type MaintenanceWindowParameters struct { NotAllowed []NotAllowedParameters `json:"notAllowed,omitempty" tf:"not_allowed,omitempty"` } -type MicrosoftDefenderObservation struct { +type MicrosoftDefenderInitParameters struct { // Specifies the ID of the Log Analytics Workspace where the audit logs collected by Microsoft Defender should be sent to. LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` } -type MicrosoftDefenderParameters struct { +type MicrosoftDefenderObservation struct { // Specifies the ID of the Log Analytics Workspace where the audit logs collected by Microsoft Defender should be sent to. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + +type MicrosoftDefenderParameters struct { + + // Specifies the ID of the Log Analytics Workspace where the audit logs collected by Microsoft Defender should be sent to. + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + +type MonitorMetricsInitParameters struct { + + // Specifies a comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric. + AnnotationsAllowed *string `json:"annotationsAllowed,omitempty" tf:"annotations_allowed,omitempty"` + + // Specifies a Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric. + LabelsAllowed *string `json:"labelsAllowed,omitempty" tf:"labels_allowed,omitempty"` } type MonitorMetricsObservation struct { @@ -1456,6 +2001,15 @@ type MonitorMetricsParameters struct { LabelsAllowed *string `json:"labelsAllowed,omitempty" tf:"labels_allowed,omitempty"` } +type NATGatewayProfileInitParameters struct { + + // Desired outbound flow idle timeout in minutes for the cluster load balancer. Must be between 4 and 120 inclusive. Defaults to 4. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // Count of desired managed outbound IPs for the cluster load balancer. Must be between 1 and 100 inclusive. + ManagedOutboundIPCount *float64 `json:"managedOutboundIpCount,omitempty" tf:"managed_outbound_ip_count,omitempty"` +} + type NATGatewayProfileObservation struct { // The outcome (resource IDs) of the specified arguments. @@ -1479,6 +2033,57 @@ type NATGatewayProfileParameters struct { ManagedOutboundIPCount *float64 `json:"managedOutboundIpCount,omitempty" tf:"managed_outbound_ip_count,omitempty"` } +type NetworkProfileInitParameters struct { + + // IP address within the Kubernetes service address range that will be used by cluster service discovery (kube-dns). Changing this forces a new resource to be created. + DNSServiceIP *string `json:"dnsServiceIp,omitempty" tf:"dns_service_ip,omitempty"` + + // IP address (in CIDR notation) used as the Docker bridge IP address on nodes. Changing this forces a new resource to be created. + DockerBridgeCidr *string `json:"dockerBridgeCidr,omitempty" tf:"docker_bridge_cidr,omitempty"` + + // Specifies the eBPF data plane used for building the Kubernetes network. Possible value is cilium. Changing this forces a new resource to be created. + EbpfDataPlane *string `json:"ebpfDataPlane,omitempty" tf:"ebpf_data_plane,omitempty"` + + // Specifies a list of IP versions the Kubernetes Cluster will use to assign IP addresses to its nodes and pods. Possible values are IPv4 and/or IPv6. IPv4 must always be specified. Changing this forces a new resource to be created. + IPVersions []*string `json:"ipVersions,omitempty" tf:"ip_versions,omitempty"` + + // A load_balancer_profile block as defined below. This can only be specified when load_balancer_sku is set to standard. Changing this forces a new resource to be created. + LoadBalancerProfile []LoadBalancerProfileInitParameters `json:"loadBalancerProfile,omitempty" tf:"load_balancer_profile,omitempty"` + + // Specifies the SKU of the Load Balancer used for this Kubernetes Cluster. Possible values are basic and standard. Defaults to standard. Changing this forces a new resource to be created. + LoadBalancerSku *string `json:"loadBalancerSku,omitempty" tf:"load_balancer_sku,omitempty"` + + // A nat_gateway_profile block as defined below. + NATGatewayProfile []NATGatewayProfileInitParameters `json:"natGatewayProfile,omitempty" tf:"nat_gateway_profile,omitempty"` + + // Network mode to be used with Azure CNI. Possible values are bridge and transparent. Changing this forces a new resource to be created. + NetworkMode *string `json:"networkMode,omitempty" tf:"network_mode,omitempty"` + + // Network plugin to use for networking. Currently supported values are azure, kubenet and none. Changing this forces a new resource to be created. + NetworkPlugin *string `json:"networkPlugin,omitempty" tf:"network_plugin,omitempty"` + + // Specifies the network plugin mode used for building the Kubernetes network. Possible value is Overlay. Changing this forces a new resource to be created. + NetworkPluginMode *string `json:"networkPluginMode,omitempty" tf:"network_plugin_mode,omitempty"` + + // Sets up network policy to be used with Azure CNI. Network policy allows us to control the traffic flow between pods. Currently supported values are calico and azure. Changing this forces a new resource to be created. + NetworkPolicy *string `json:"networkPolicy,omitempty" tf:"network_policy,omitempty"` + + // The outbound (egress) routing method which should be used for this Kubernetes Cluster. Possible values are loadBalancer, userDefinedRouting, managedNATGateway and userAssignedNATGateway. Defaults to loadBalancer. Changing this forces a new resource to be created. + OutboundType *string `json:"outboundType,omitempty" tf:"outbound_type,omitempty"` + + // The CIDR to use for pod IP addresses. This field can only be set when network_plugin is set to kubenet. Changing this forces a new resource to be created. + PodCidr *string `json:"podCidr,omitempty" tf:"pod_cidr,omitempty"` + + // A list of CIDRs to use for pod IP addresses. For single-stack networking a single IPv4 CIDR is expected. For dual-stack networking an IPv4 and IPv6 CIDR are expected. Changing this forces a new resource to be created. + PodCidrs []*string `json:"podCidrs,omitempty" tf:"pod_cidrs,omitempty"` + + // The Network Range used by the Kubernetes service. Changing this forces a new resource to be created. + ServiceCidr *string `json:"serviceCidr,omitempty" tf:"service_cidr,omitempty"` + + // A list of CIDRs to use for Kubernetes services. For single-stack networking a single IPv4 CIDR is expected. For dual-stack networking an IPv4 and IPv6 CIDR are expected. Changing this forces a new resource to be created. + ServiceCidrs []*string `json:"serviceCidrs,omitempty" tf:"service_cidrs,omitempty"` +} + type NetworkProfileObservation struct { // IP address within the Kubernetes service address range that will be used by cluster service discovery (kube-dns). Changing this forces a new resource to be created. @@ -1565,8 +2170,8 @@ type NetworkProfileParameters struct { NetworkMode *string `json:"networkMode,omitempty" tf:"network_mode,omitempty"` // Network plugin to use for networking. Currently supported values are azure, kubenet and none. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - NetworkPlugin *string `json:"networkPlugin" tf:"network_plugin,omitempty"` + // +kubebuilder:validation:Optional + NetworkPlugin *string `json:"networkPlugin,omitempty" tf:"network_plugin,omitempty"` // Specifies the network plugin mode used for building the Kubernetes network. Possible value is Overlay. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -1597,6 +2202,12 @@ type NetworkProfileParameters struct { ServiceCidrs []*string `json:"serviceCidrs,omitempty" tf:"service_cidrs,omitempty"` } +type NodeNetworkProfileInitParameters struct { + + // Specifies a mapping of tags to the instance-level public IPs. Changing this forces a new resource to be created. + NodePublicIPTags map[string]*string `json:"nodePublicIpTags,omitempty" tf:"node_public_ip_tags,omitempty"` +} + type NodeNetworkProfileObservation struct { // Specifies a mapping of tags to the instance-level public IPs. Changing this forces a new resource to be created. @@ -1610,6 +2221,15 @@ type NodeNetworkProfileParameters struct { NodePublicIPTags map[string]*string `json:"nodePublicIpTags,omitempty" tf:"node_public_ip_tags,omitempty"` } +type NotAllowedInitParameters struct { + + // The end of a time span, formatted as an RFC3339 string. + End *string `json:"end,omitempty" tf:"end,omitempty"` + + // The start of a time span, formatted as an RFC3339 string. + Start *string `json:"start,omitempty" tf:"start,omitempty"` +} + type NotAllowedObservation struct { // The end of a time span, formatted as an RFC3339 string. @@ -1622,12 +2242,15 @@ type NotAllowedObservation struct { type NotAllowedParameters struct { // The end of a time span, formatted as an RFC3339 string. - // +kubebuilder:validation:Required - End *string `json:"end" tf:"end,omitempty"` + // +kubebuilder:validation:Optional + End *string `json:"end,omitempty" tf:"end,omitempty"` // The start of a time span, formatted as an RFC3339 string. - // +kubebuilder:validation:Required - Start *string `json:"start" tf:"start,omitempty"` + // +kubebuilder:validation:Optional + Start *string `json:"start,omitempty" tf:"start,omitempty"` +} + +type OmsAgentIdentityInitParameters struct { } type OmsAgentIdentityObservation struct { @@ -1645,6 +2268,15 @@ type OmsAgentIdentityObservation struct { type OmsAgentIdentityParameters struct { } +type OmsAgentInitParameters struct { + + // The ID of the Log Analytics Workspace which the OMS Agent should send data to. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` + + // Is managed identity authentication for monitoring enabled? + MsiAuthForMonitoringEnabled *bool `json:"msiAuthForMonitoringEnabled,omitempty" tf:"msi_auth_for_monitoring_enabled,omitempty"` +} + type OmsAgentObservation struct { // The ID of the Log Analytics Workspace which the OMS Agent should send data to. @@ -1660,14 +2292,20 @@ type OmsAgentObservation struct { type OmsAgentParameters struct { // The ID of the Log Analytics Workspace which the OMS Agent should send data to. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // Is managed identity authentication for monitoring enabled? // +kubebuilder:validation:Optional MsiAuthForMonitoringEnabled *bool `json:"msiAuthForMonitoringEnabled,omitempty" tf:"msi_auth_for_monitoring_enabled,omitempty"` } +type SSHKeyInitParameters struct { + + // The Public SSH Key used to access the cluster. + KeyData *string `json:"keyData,omitempty" tf:"key_data,omitempty"` +} + type SSHKeyObservation struct { // The Public SSH Key used to access the cluster. @@ -1677,8 +2315,11 @@ type SSHKeyObservation struct { type SSHKeyParameters struct { // The Public SSH Key used to access the cluster. - // +kubebuilder:validation:Required - KeyData *string `json:"keyData" tf:"key_data,omitempty"` + // +kubebuilder:validation:Optional + KeyData *string `json:"keyData,omitempty" tf:"key_data,omitempty"` +} + +type SecretIdentityInitParameters struct { } type SecretIdentityObservation struct { @@ -1696,6 +2337,12 @@ type SecretIdentityObservation struct { type SecretIdentityParameters struct { } +type ServiceMeshProfileInitParameters struct { + + // The mode of the service mesh. Possible value is Istio. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` +} + type ServiceMeshProfileObservation struct { // The mode of the service mesh. Possible value is Istio. @@ -1705,8 +2352,14 @@ type ServiceMeshProfileObservation struct { type ServiceMeshProfileParameters struct { // The mode of the service mesh. Possible value is Istio. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` +} + +type ServicePrincipalInitParameters struct { + + // The Client ID for the Service Principal. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } type ServicePrincipalObservation struct { @@ -1718,14 +2371,32 @@ type ServicePrincipalObservation struct { type ServicePrincipalParameters struct { // The Client ID for the Service Principal. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The Client Secret for the Service Principal. // +kubebuilder:validation:Required ClientSecretSecretRef v1.SecretKeySelector `json:"clientSecretSecretRef" tf:"-"` } +type StorageProfileInitParameters struct { + + // Is the Blob CSI driver enabled? Defaults to false. + BlobDriverEnabled *bool `json:"blobDriverEnabled,omitempty" tf:"blob_driver_enabled,omitempty"` + + // Is the Disk CSI driver enabled? Defaults to true. + DiskDriverEnabled *bool `json:"diskDriverEnabled,omitempty" tf:"disk_driver_enabled,omitempty"` + + // Disk CSI Driver version to be used. Possible values are v1 and v2. Defaults to v1. + DiskDriverVersion *string `json:"diskDriverVersion,omitempty" tf:"disk_driver_version,omitempty"` + + // Is the File CSI driver enabled? Defaults to true. + FileDriverEnabled *bool `json:"fileDriverEnabled,omitempty" tf:"file_driver_enabled,omitempty"` + + // Is the Snapshot Controller enabled? Defaults to true. + SnapshotControllerEnabled *bool `json:"snapshotControllerEnabled,omitempty" tf:"snapshot_controller_enabled,omitempty"` +} + type StorageProfileObservation struct { // Is the Blob CSI driver enabled? Defaults to false. @@ -1767,6 +2438,96 @@ type StorageProfileParameters struct { SnapshotControllerEnabled *bool `json:"snapshotControllerEnabled,omitempty" tf:"snapshot_controller_enabled,omitempty"` } +type SysctlConfigInitParameters struct { + + // The sysctl setting fs.aio-max-nr. Must be between 65536 and 6553500. Changing this forces a new resource to be created. + FsAioMaxNr *float64 `json:"fsAioMaxNr,omitempty" tf:"fs_aio_max_nr,omitempty"` + + // The sysctl setting fs.file-max. Must be between 8192 and 12000500. Changing this forces a new resource to be created. + FsFileMax *float64 `json:"fsFileMax,omitempty" tf:"fs_file_max,omitempty"` + + // The sysctl setting fs.inotify.max_user_watches. Must be between 781250 and 2097152. Changing this forces a new resource to be created. + FsInotifyMaxUserWatches *float64 `json:"fsInotifyMaxUserWatches,omitempty" tf:"fs_inotify_max_user_watches,omitempty"` + + // The sysctl setting fs.nr_open. Must be between 8192 and 20000500. Changing this forces a new resource to be created. + FsNrOpen *float64 `json:"fsNrOpen,omitempty" tf:"fs_nr_open,omitempty"` + + // The sysctl setting kernel.threads-max. Must be between 20 and 513785. Changing this forces a new resource to be created. + KernelThreadsMax *float64 `json:"kernelThreadsMax,omitempty" tf:"kernel_threads_max,omitempty"` + + // The sysctl setting net.core.netdev_max_backlog. Must be between 1000 and 3240000. Changing this forces a new resource to be created. + NetCoreNetdevMaxBacklog *float64 `json:"netCoreNetdevMaxBacklog,omitempty" tf:"net_core_netdev_max_backlog,omitempty"` + + // The sysctl setting net.core.optmem_max. Must be between 20480 and 4194304. Changing this forces a new resource to be created. + NetCoreOptmemMax *float64 `json:"netCoreOptmemMax,omitempty" tf:"net_core_optmem_max,omitempty"` + + // The sysctl setting net.core.rmem_default. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + NetCoreRmemDefault *float64 `json:"netCoreRmemDefault,omitempty" tf:"net_core_rmem_default,omitempty"` + + // The sysctl setting net.core.rmem_max. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + NetCoreRmemMax *float64 `json:"netCoreRmemMax,omitempty" tf:"net_core_rmem_max,omitempty"` + + // The sysctl setting net.core.somaxconn. Must be between 4096 and 3240000. Changing this forces a new resource to be created. + NetCoreSomaxconn *float64 `json:"netCoreSomaxconn,omitempty" tf:"net_core_somaxconn,omitempty"` + + // The sysctl setting net.core.wmem_default. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + NetCoreWmemDefault *float64 `json:"netCoreWmemDefault,omitempty" tf:"net_core_wmem_default,omitempty"` + + // The sysctl setting net.core.wmem_max. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + NetCoreWmemMax *float64 `json:"netCoreWmemMax,omitempty" tf:"net_core_wmem_max,omitempty"` + + // The sysctl setting net.ipv4.ip_local_port_range max value. Must be between 1024 and 60999. Changing this forces a new resource to be created. + NetIPv4IPLocalPortRangeMax *float64 `json:"netIpv4IpLocalPortRangeMax,omitempty" tf:"net_ipv4_ip_local_port_range_max,omitempty"` + + // The sysctl setting net.ipv4.ip_local_port_range min value. Must be between 1024 and 60999. Changing this forces a new resource to be created. + NetIPv4IPLocalPortRangeMin *float64 `json:"netIpv4IpLocalPortRangeMin,omitempty" tf:"net_ipv4_ip_local_port_range_min,omitempty"` + + // The sysctl setting net.ipv4.neigh.default.gc_thresh1. Must be between 128 and 80000. Changing this forces a new resource to be created. + NetIPv4NeighDefaultGcThresh1 *float64 `json:"netIpv4NeighDefaultGcThresh1,omitempty" tf:"net_ipv4_neigh_default_gc_thresh1,omitempty"` + + // The sysctl setting net.ipv4.neigh.default.gc_thresh2. Must be between 512 and 90000. Changing this forces a new resource to be created. + NetIPv4NeighDefaultGcThresh2 *float64 `json:"netIpv4NeighDefaultGcThresh2,omitempty" tf:"net_ipv4_neigh_default_gc_thresh2,omitempty"` + + // The sysctl setting net.ipv4.neigh.default.gc_thresh3. Must be between 1024 and 100000. Changing this forces a new resource to be created. + NetIPv4NeighDefaultGcThresh3 *float64 `json:"netIpv4NeighDefaultGcThresh3,omitempty" tf:"net_ipv4_neigh_default_gc_thresh3,omitempty"` + + // The sysctl setting net.ipv4.tcp_fin_timeout. Must be between 5 and 120. Changing this forces a new resource to be created. + NetIPv4TCPFinTimeout *float64 `json:"netIpv4TcpFinTimeout,omitempty" tf:"net_ipv4_tcp_fin_timeout,omitempty"` + + // The sysctl setting net.ipv4.tcp_keepalive_intvl. Must be between 10 and 75. Changing this forces a new resource to be created. + NetIPv4TCPKeepaliveIntvl *float64 `json:"netIpv4TcpKeepaliveIntvl,omitempty" tf:"net_ipv4_tcp_keepalive_intvl,omitempty"` + + // The sysctl setting net.ipv4.tcp_keepalive_probes. Must be between 1 and 15. Changing this forces a new resource to be created. + NetIPv4TCPKeepaliveProbes *float64 `json:"netIpv4TcpKeepaliveProbes,omitempty" tf:"net_ipv4_tcp_keepalive_probes,omitempty"` + + // The sysctl setting net.ipv4.tcp_keepalive_time. Must be between 30 and 432000. Changing this forces a new resource to be created. + NetIPv4TCPKeepaliveTime *float64 `json:"netIpv4TcpKeepaliveTime,omitempty" tf:"net_ipv4_tcp_keepalive_time,omitempty"` + + // The sysctl setting net.ipv4.tcp_max_syn_backlog. Must be between 128 and 3240000. Changing this forces a new resource to be created. + NetIPv4TCPMaxSynBacklog *float64 `json:"netIpv4TcpMaxSynBacklog,omitempty" tf:"net_ipv4_tcp_max_syn_backlog,omitempty"` + + // The sysctl setting net.ipv4.tcp_max_tw_buckets. Must be between 8000 and 1440000. Changing this forces a new resource to be created. + NetIPv4TCPMaxTwBuckets *float64 `json:"netIpv4TcpMaxTwBuckets,omitempty" tf:"net_ipv4_tcp_max_tw_buckets,omitempty"` + + // The sysctl setting net.ipv4.tcp_tw_reuse. Changing this forces a new resource to be created. + NetIPv4TCPTwReuse *bool `json:"netIpv4TcpTwReuse,omitempty" tf:"net_ipv4_tcp_tw_reuse,omitempty"` + + // The sysctl setting net.netfilter.nf_conntrack_buckets. Must be between 65536 and 147456. Changing this forces a new resource to be created. + NetNetfilterNfConntrackBuckets *float64 `json:"netNetfilterNfConntrackBuckets,omitempty" tf:"net_netfilter_nf_conntrack_buckets,omitempty"` + + // The sysctl setting net.netfilter.nf_conntrack_max. Must be between 131072 and 1048576. Changing this forces a new resource to be created. + NetNetfilterNfConntrackMax *float64 `json:"netNetfilterNfConntrackMax,omitempty" tf:"net_netfilter_nf_conntrack_max,omitempty"` + + // The sysctl setting vm.max_map_count. Must be between 65530 and 262144. Changing this forces a new resource to be created. + VMMaxMapCount *float64 `json:"vmMaxMapCount,omitempty" tf:"vm_max_map_count,omitempty"` + + // The sysctl setting vm.swappiness. Must be between 0 and 100. Changing this forces a new resource to be created. + VMSwappiness *float64 `json:"vmSwappiness,omitempty" tf:"vm_swappiness,omitempty"` + + // The sysctl setting vm.vfs_cache_pressure. Must be between 0 and 100. Changing this forces a new resource to be created. + VMVfsCachePressure *float64 `json:"vmVfsCachePressure,omitempty" tf:"vm_vfs_cache_pressure,omitempty"` +} + type SysctlConfigObservation struct { // The sysctl setting fs.aio-max-nr. Must be between 65536 and 6553500. Changing this forces a new resource to be created. @@ -1976,6 +2737,12 @@ type SysctlConfigParameters struct { VMVfsCachePressure *float64 `json:"vmVfsCachePressure,omitempty" tf:"vm_vfs_cache_pressure,omitempty"` } +type UpgradeSettingsInitParameters struct { + + // The maximum number or percentage of nodes which will be added to the Node Pool size during an upgrade. + MaxSurge *string `json:"maxSurge,omitempty" tf:"max_surge,omitempty"` +} + type UpgradeSettingsObservation struct { // The maximum number or percentage of nodes which will be added to the Node Pool size during an upgrade. @@ -1985,8 +2752,14 @@ type UpgradeSettingsObservation struct { type UpgradeSettingsParameters struct { // The maximum number or percentage of nodes which will be added to the Node Pool size during an upgrade. - // +kubebuilder:validation:Required - MaxSurge *string `json:"maxSurge" tf:"max_surge,omitempty"` + // +kubebuilder:validation:Optional + MaxSurge *string `json:"maxSurge,omitempty" tf:"max_surge,omitempty"` +} + +type WebAppRoutingInitParameters struct { + + // Specifies the ID of the DNS Zone in which DNS entries are created for applications deployed to the cluster when Web App Routing is enabled. For Bring-Your-Own DNS zones this property should be set to an empty string "". + DNSZoneID *string `json:"dnsZoneId,omitempty" tf:"dns_zone_id,omitempty"` } type WebAppRoutingObservation struct { @@ -1998,8 +2771,20 @@ type WebAppRoutingObservation struct { type WebAppRoutingParameters struct { // Specifies the ID of the DNS Zone in which DNS entries are created for applications deployed to the cluster when Web App Routing is enabled. For Bring-Your-Own DNS zones this property should be set to an empty string "". - // +kubebuilder:validation:Required - DNSZoneID *string `json:"dnsZoneId" tf:"dns_zone_id,omitempty"` + // +kubebuilder:validation:Optional + DNSZoneID *string `json:"dnsZoneId,omitempty" tf:"dns_zone_id,omitempty"` +} + +type WindowsProfileInitParameters struct { + + // The Admin Username for Windows VMs. Changing this forces a new resource to be created. + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` + + // A gmsa block as defined below. + Gmsa []GmsaInitParameters `json:"gmsa,omitempty" tf:"gmsa,omitempty"` + + // Specifies the type of on-premise license which should be used for Node Pool Windows Virtual Machine. At this time the only possible value is Windows_Server. + License *string `json:"license,omitempty" tf:"license,omitempty"` } type WindowsProfileObservation struct { @@ -2021,8 +2806,8 @@ type WindowsProfileParameters struct { AdminPasswordSecretRef *v1.SecretKeySelector `json:"adminPasswordSecretRef,omitempty" tf:"-"` // The Admin Username for Windows VMs. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - AdminUsername *string `json:"adminUsername" tf:"admin_username,omitempty"` + // +kubebuilder:validation:Optional + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // A gmsa block as defined below. // +kubebuilder:validation:Optional @@ -2033,6 +2818,15 @@ type WindowsProfileParameters struct { License *string `json:"license,omitempty" tf:"license,omitempty"` } +type WorkloadAutoscalerProfileInitParameters struct { + + // Specifies whether KEDA Autoscaler can be used for workloads. + KedaEnabled *bool `json:"kedaEnabled,omitempty" tf:"keda_enabled,omitempty"` + + // Specifies whether Vertical Pod Autoscaler should be enabled. + VerticalPodAutoscalerEnabled *bool `json:"verticalPodAutoscalerEnabled,omitempty" tf:"vertical_pod_autoscaler_enabled,omitempty"` +} + type WorkloadAutoscalerProfileObservation struct { // Specifies whether KEDA Autoscaler can be used for workloads. @@ -2063,6 +2857,18 @@ type WorkloadAutoscalerProfileParameters struct { type KubernetesClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider KubernetesClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider KubernetesClusterInitParameters `json:"initProvider,omitempty"` } // KubernetesClusterStatus defines the observed state of KubernetesCluster. @@ -2083,8 +2889,8 @@ type KubernetesClusterStatus struct { type KubernetesCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultNodePool)",message="defaultNodePool is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.defaultNodePool) || has(self.initProvider.defaultNodePool)",message="defaultNodePool is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec KubernetesClusterSpec `json:"spec"` Status KubernetesClusterStatus `json:"status,omitempty"` } diff --git a/apis/containerservice/v1beta1/zz_kubernetesclusternodepool_types.go b/apis/containerservice/v1beta1/zz_kubernetesclusternodepool_types.go index 362b8fa97..1710c8345 100755 --- a/apis/containerservice/v1beta1/zz_kubernetesclusternodepool_types.go +++ b/apis/containerservice/v1beta1/zz_kubernetesclusternodepool_types.go @@ -13,6 +13,156 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type KubernetesClusterNodePoolInitParameters struct { + + // Specifies the ID of the Capacity Reservation Group where this Node Pool should exist. Changing this forces a new resource to be created. + CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` + + // Specifies whether to trust a Custom CA. + CustomCATrustEnabled *bool `json:"customCaTrustEnabled,omitempty" tf:"custom_ca_trust_enabled,omitempty"` + + // Whether to enable auto-scaler. + EnableAutoScaling *bool `json:"enableAutoScaling,omitempty" tf:"enable_auto_scaling,omitempty"` + + // Should the nodes in this Node Pool have host encryption enabled? Changing this forces a new resource to be created. + EnableHostEncryption *bool `json:"enableHostEncryption,omitempty" tf:"enable_host_encryption,omitempty"` + + // Should each node have a Public IP Address? Changing this forces a new resource to be created. + EnableNodePublicIP *bool `json:"enableNodePublicIp,omitempty" tf:"enable_node_public_ip,omitempty"` + + // The Eviction Policy which should be used for Virtual Machines within the Virtual Machine Scale Set powering this Node Pool. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` + + // Should the nodes in this Node Pool have Federal Information Processing Standard enabled? Changing this forces a new resource to be created. + FipsEnabled *bool `json:"fipsEnabled,omitempty" tf:"fips_enabled,omitempty"` + + // The fully qualified resource ID of the Dedicated Host Group to provision virtual machines from. Changing this forces a new resource to be created. + HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"` + + // A kubelet_config block as defined below. Changing this forces a new resource to be created. + KubeletConfig []KubernetesClusterNodePoolKubeletConfigInitParameters `json:"kubeletConfig,omitempty" tf:"kubelet_config,omitempty"` + + // The type of disk used by kubelet. Possible values are OS and Temporary. + KubeletDiskType *string `json:"kubeletDiskType,omitempty" tf:"kubelet_disk_type,omitempty"` + + // A linux_os_config block as defined below. Changing this forces a new resource to be created. + LinuxOsConfig []KubernetesClusterNodePoolLinuxOsConfigInitParameters `json:"linuxOsConfig,omitempty" tf:"linux_os_config,omitempty"` + + // The maximum number of nodes which should exist within this Node Pool. Valid values are between 0 and 1000 and must be greater than or equal to min_count. + MaxCount *float64 `json:"maxCount,omitempty" tf:"max_count,omitempty"` + + // The maximum number of pods that can run on each agent. Changing this forces a new resource to be created. + MaxPods *float64 `json:"maxPods,omitempty" tf:"max_pods,omitempty"` + + // A base64-encoded string which will be written to /etc/motd after decoding. This allows customization of the message of the day for Linux nodes. It cannot be specified for Windows nodes and must be a static string (i.e. will be printed raw and not executed as a script). Changing this forces a new resource to be created. + MessageOfTheDay *string `json:"messageOfTheDay,omitempty" tf:"message_of_the_day,omitempty"` + + // The minimum number of nodes which should exist within this Node Pool. Valid values are between 0 and 1000 and must be less than or equal to max_count. + MinCount *float64 `json:"minCount,omitempty" tf:"min_count,omitempty"` + + // Should this Node Pool be used for System or User resources? Possible values are System and User. Defaults to User. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The initial number of nodes which should exist within this Node Pool. Valid values are between 0 and 1000 (inclusive) for user pools and between 1 and 1000 (inclusive) for system pools and must be a value in the range min_count - max_count. + NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` + + // A map of Kubernetes labels which should be applied to nodes in this Node Pool. + NodeLabels map[string]*string `json:"nodeLabels,omitempty" tf:"node_labels,omitempty"` + + // A node_network_profile block as documented below. + NodeNetworkProfile []KubernetesClusterNodePoolNodeNetworkProfileInitParameters `json:"nodeNetworkProfile,omitempty" tf:"node_network_profile,omitempty"` + + // Resource ID for the Public IP Addresses Prefix for the nodes in this Node Pool. enable_node_public_ip should be true. Changing this forces a new resource to be created. + NodePublicIPPrefixID *string `json:"nodePublicIpPrefixId,omitempty" tf:"node_public_ip_prefix_id,omitempty"` + + // A list of Kubernetes taints which should be applied to nodes in the agent pool (e.g key=value:NoSchedule). Changing this forces a new resource to be created. + NodeTaints []*string `json:"nodeTaints,omitempty" tf:"node_taints,omitempty"` + + // Version of Kubernetes used for the Agents. If not specified, the latest recommended version will be used at provisioning time (but won't auto-upgrade). AKS does not require an exact patch version to be specified, minor version aliases such as 1.22 are also supported. - The minor version's latest GA patch is automatically chosen in that case. More details can be found in the documentation. + OrchestratorVersion *string `json:"orchestratorVersion,omitempty" tf:"orchestrator_version,omitempty"` + + // The Agent Operating System disk size in GB. Changing this forces a new resource to be created. + OsDiskSizeGb *float64 `json:"osDiskSizeGb,omitempty" tf:"os_disk_size_gb,omitempty"` + + // The type of disk which should be used for the Operating System. Possible values are Ephemeral and Managed. Defaults to Managed. Changing this forces a new resource to be created. + OsDiskType *string `json:"osDiskType,omitempty" tf:"os_disk_type,omitempty"` + + // Specifies the OS SKU used by the agent pool. Possible values include: Ubuntu, CBLMariner, Mariner, Windows2019, Windows2022. If not specified, the default is Ubuntu if OSType=Linux or Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is deprecated. Changing this forces a new resource to be created. + OsSku *string `json:"osSku,omitempty" tf:"os_sku,omitempty"` + + // The Operating System which should be used for this Node Pool. Changing this forces a new resource to be created. Possible values are Linux and Windows. Defaults to Linux. + OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` + + // The Priority for Virtual Machines within the Virtual Machine Scale Set that powers this Node Pool. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created. + Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` + + // The ID of the Proximity Placement Group where the Virtual Machine Scale Set that powers this Node Pool will be placed. Changing this forces a new resource to be created. + ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` + + // Specifies how the node pool should deal with scaled-down nodes. Allowed values are Delete and Deallocate. Defaults to Delete. + ScaleDownMode *string `json:"scaleDownMode,omitempty" tf:"scale_down_mode,omitempty"` + + // The ID of the Snapshot which should be used to create this Node Pool. Changing this forces a new resource to be created. + SnapshotID *string `json:"snapshotId,omitempty" tf:"snapshot_id,omitempty"` + + // The maximum price you're willing to pay in USD per Virtual Machine. Valid values are -1 (the current on-demand price for a Virtual Machine) or a positive value with up to five decimal places. Changing this forces a new resource to be created. + SpotMaxPrice *float64 `json:"spotMaxPrice,omitempty" tf:"spot_max_price,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Used to specify whether the UltraSSD is enabled in the Node Pool. Defaults to false. See the documentation for more information. Changing this forces a new resource to be created. + UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` + + // A upgrade_settings block as documented below. + UpgradeSettings []KubernetesClusterNodePoolUpgradeSettingsInitParameters `json:"upgradeSettings,omitempty" tf:"upgrade_settings,omitempty"` + + // The SKU which should be used for the Virtual Machines used in this Node Pool. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // A windows_profile block as documented below. Changing this forces a new resource to be created. + WindowsProfile []KubernetesClusterNodePoolWindowsProfileInitParameters `json:"windowsProfile,omitempty" tf:"windows_profile,omitempty"` + + // Used to specify the workload runtime. Allowed values are OCIContainer, WasmWasi and KataMshvVmIsolation. + WorkloadRuntime *string `json:"workloadRuntime,omitempty" tf:"workload_runtime,omitempty"` + + // Specifies a list of Availability Zones in which this Kubernetes Cluster Node Pool should be located. Changing this forces a new Kubernetes Cluster Node Pool to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + +type KubernetesClusterNodePoolKubeletConfigInitParameters struct { + + // Specifies the allow list of unsafe sysctls command or patterns (ending in *). Changing this forces a new resource to be created. + AllowedUnsafeSysctls []*string `json:"allowedUnsafeSysctls,omitempty" tf:"allowed_unsafe_sysctls,omitempty"` + + // Is CPU CFS quota enforcement for containers enabled? Changing this forces a new resource to be created. + CPUCfsQuotaEnabled *bool `json:"cpuCfsQuotaEnabled,omitempty" tf:"cpu_cfs_quota_enabled,omitempty"` + + // Specifies the CPU CFS quota period value. Changing this forces a new resource to be created. + CPUCfsQuotaPeriod *string `json:"cpuCfsQuotaPeriod,omitempty" tf:"cpu_cfs_quota_period,omitempty"` + + // Specifies the CPU Manager policy to use. Possible values are none and static, Changing this forces a new resource to be created. + CPUManagerPolicy *string `json:"cpuManagerPolicy,omitempty" tf:"cpu_manager_policy,omitempty"` + + // Specifies the maximum number of container log files that can be present for a container. must be at least 2. Changing this forces a new resource to be created. + ContainerLogMaxLine *float64 `json:"containerLogMaxLine,omitempty" tf:"container_log_max_line,omitempty"` + + // Specifies the maximum size (e.g. 10MB) of container log file before it is rotated. Changing this forces a new resource to be created. + ContainerLogMaxSizeMb *float64 `json:"containerLogMaxSizeMb,omitempty" tf:"container_log_max_size_mb,omitempty"` + + // Specifies the percent of disk usage above which image garbage collection is always run. Must be between 0 and 100. Changing this forces a new resource to be created. + ImageGcHighThreshold *float64 `json:"imageGcHighThreshold,omitempty" tf:"image_gc_high_threshold,omitempty"` + + // Specifies the percent of disk usage lower than which image garbage collection is never run. Must be between 0 and 100. Changing this forces a new resource to be created. + ImageGcLowThreshold *float64 `json:"imageGcLowThreshold,omitempty" tf:"image_gc_low_threshold,omitempty"` + + // Specifies the maximum number of processes per pod. Changing this forces a new resource to be created. + PodMaxPid *float64 `json:"podMaxPid,omitempty" tf:"pod_max_pid,omitempty"` + + // Specifies the Topology Manager policy to use. Possible values are none, best-effort, restricted or single-numa-node. Changing this forces a new resource to be created. + TopologyManagerPolicy *string `json:"topologyManagerPolicy,omitempty" tf:"topology_manager_policy,omitempty"` +} + type KubernetesClusterNodePoolKubeletConfigObservation struct { // Specifies the allow list of unsafe sysctls command or patterns (ending in *). Changing this forces a new resource to be created. @@ -89,6 +239,21 @@ type KubernetesClusterNodePoolKubeletConfigParameters struct { TopologyManagerPolicy *string `json:"topologyManagerPolicy,omitempty" tf:"topology_manager_policy,omitempty"` } +type KubernetesClusterNodePoolLinuxOsConfigInitParameters struct { + + // Specifies the size of swap file on each node in MB. Changing this forces a new resource to be created. + SwapFileSizeMb *float64 `json:"swapFileSizeMb,omitempty" tf:"swap_file_size_mb,omitempty"` + + // A sysctl_config block as defined below. Changing this forces a new resource to be created. + SysctlConfig []LinuxOsConfigSysctlConfigInitParameters `json:"sysctlConfig,omitempty" tf:"sysctl_config,omitempty"` + + // specifies the defrag configuration for Transparent Huge Page. Possible values are always, defer, defer+madvise, madvise and never. Changing this forces a new resource to be created. + TransparentHugePageDefrag *string `json:"transparentHugePageDefrag,omitempty" tf:"transparent_huge_page_defrag,omitempty"` + + // Specifies the Transparent Huge Page enabled configuration. Possible values are always, madvise and never. Changing this forces a new resource to be created. + TransparentHugePageEnabled *string `json:"transparentHugePageEnabled,omitempty" tf:"transparent_huge_page_enabled,omitempty"` +} + type KubernetesClusterNodePoolLinuxOsConfigObservation struct { // Specifies the size of swap file on each node in MB. Changing this forces a new resource to be created. @@ -123,6 +288,12 @@ type KubernetesClusterNodePoolLinuxOsConfigParameters struct { TransparentHugePageEnabled *string `json:"transparentHugePageEnabled,omitempty" tf:"transparent_huge_page_enabled,omitempty"` } +type KubernetesClusterNodePoolNodeNetworkProfileInitParameters struct { + + // Specifies a mapping of tags to the instance-level public IPs. Changing this forces a new resource to be created. + NodePublicIPTags map[string]*string `json:"nodePublicIpTags,omitempty" tf:"node_public_ip_tags,omitempty"` +} + type KubernetesClusterNodePoolNodeNetworkProfileObservation struct { // Specifies a mapping of tags to the instance-level public IPs. Changing this forces a new resource to be created. @@ -462,6 +633,12 @@ type KubernetesClusterNodePoolParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type KubernetesClusterNodePoolUpgradeSettingsInitParameters struct { + + // The maximum number or percentage of nodes which will be added to the Node Pool size during an upgrade. + MaxSurge *string `json:"maxSurge,omitempty" tf:"max_surge,omitempty"` +} + type KubernetesClusterNodePoolUpgradeSettingsObservation struct { // The maximum number or percentage of nodes which will be added to the Node Pool size during an upgrade. @@ -471,8 +648,14 @@ type KubernetesClusterNodePoolUpgradeSettingsObservation struct { type KubernetesClusterNodePoolUpgradeSettingsParameters struct { // The maximum number or percentage of nodes which will be added to the Node Pool size during an upgrade. - // +kubebuilder:validation:Required - MaxSurge *string `json:"maxSurge" tf:"max_surge,omitempty"` + // +kubebuilder:validation:Optional + MaxSurge *string `json:"maxSurge,omitempty" tf:"max_surge,omitempty"` +} + +type KubernetesClusterNodePoolWindowsProfileInitParameters struct { + + // Should the Windows nodes in this Node Pool have outbound NAT enabled? Defaults to true. Changing this forces a new resource to be created. + OutboundNATEnabled *bool `json:"outboundNatEnabled,omitempty" tf:"outbound_nat_enabled,omitempty"` } type KubernetesClusterNodePoolWindowsProfileObservation struct { @@ -488,6 +671,96 @@ type KubernetesClusterNodePoolWindowsProfileParameters struct { OutboundNATEnabled *bool `json:"outboundNatEnabled,omitempty" tf:"outbound_nat_enabled,omitempty"` } +type LinuxOsConfigSysctlConfigInitParameters struct { + + // The sysctl setting fs.aio-max-nr. Must be between 65536 and 6553500. Changing this forces a new resource to be created. + FsAioMaxNr *float64 `json:"fsAioMaxNr,omitempty" tf:"fs_aio_max_nr,omitempty"` + + // The sysctl setting fs.file-max. Must be between 8192 and 12000500. Changing this forces a new resource to be created. + FsFileMax *float64 `json:"fsFileMax,omitempty" tf:"fs_file_max,omitempty"` + + // The sysctl setting fs.inotify.max_user_watches. Must be between 781250 and 2097152. Changing this forces a new resource to be created. + FsInotifyMaxUserWatches *float64 `json:"fsInotifyMaxUserWatches,omitempty" tf:"fs_inotify_max_user_watches,omitempty"` + + // The sysctl setting fs.nr_open. Must be between 8192 and 20000500. Changing this forces a new resource to be created. + FsNrOpen *float64 `json:"fsNrOpen,omitempty" tf:"fs_nr_open,omitempty"` + + // The sysctl setting kernel.threads-max. Must be between 20 and 513785. Changing this forces a new resource to be created. + KernelThreadsMax *float64 `json:"kernelThreadsMax,omitempty" tf:"kernel_threads_max,omitempty"` + + // The sysctl setting net.core.netdev_max_backlog. Must be between 1000 and 3240000. Changing this forces a new resource to be created. + NetCoreNetdevMaxBacklog *float64 `json:"netCoreNetdevMaxBacklog,omitempty" tf:"net_core_netdev_max_backlog,omitempty"` + + // The sysctl setting net.core.optmem_max. Must be between 20480 and 4194304. Changing this forces a new resource to be created. + NetCoreOptmemMax *float64 `json:"netCoreOptmemMax,omitempty" tf:"net_core_optmem_max,omitempty"` + + // The sysctl setting net.core.rmem_default. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + NetCoreRmemDefault *float64 `json:"netCoreRmemDefault,omitempty" tf:"net_core_rmem_default,omitempty"` + + // The sysctl setting net.core.rmem_max. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + NetCoreRmemMax *float64 `json:"netCoreRmemMax,omitempty" tf:"net_core_rmem_max,omitempty"` + + // The sysctl setting net.core.somaxconn. Must be between 4096 and 3240000. Changing this forces a new resource to be created. + NetCoreSomaxconn *float64 `json:"netCoreSomaxconn,omitempty" tf:"net_core_somaxconn,omitempty"` + + // The sysctl setting net.core.wmem_default. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + NetCoreWmemDefault *float64 `json:"netCoreWmemDefault,omitempty" tf:"net_core_wmem_default,omitempty"` + + // The sysctl setting net.core.wmem_max. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + NetCoreWmemMax *float64 `json:"netCoreWmemMax,omitempty" tf:"net_core_wmem_max,omitempty"` + + // The sysctl setting net.ipv4.ip_local_port_range max value. Must be between 1024 and 60999. Changing this forces a new resource to be created. + NetIPv4IPLocalPortRangeMax *float64 `json:"netIpv4IpLocalPortRangeMax,omitempty" tf:"net_ipv4_ip_local_port_range_max,omitempty"` + + // The sysctl setting net.ipv4.ip_local_port_range min value. Must be between 1024 and 60999. Changing this forces a new resource to be created. + NetIPv4IPLocalPortRangeMin *float64 `json:"netIpv4IpLocalPortRangeMin,omitempty" tf:"net_ipv4_ip_local_port_range_min,omitempty"` + + // The sysctl setting net.ipv4.neigh.default.gc_thresh1. Must be between 128 and 80000. Changing this forces a new resource to be created. + NetIPv4NeighDefaultGcThresh1 *float64 `json:"netIpv4NeighDefaultGcThresh1,omitempty" tf:"net_ipv4_neigh_default_gc_thresh1,omitempty"` + + // The sysctl setting net.ipv4.neigh.default.gc_thresh2. Must be between 512 and 90000. Changing this forces a new resource to be created. + NetIPv4NeighDefaultGcThresh2 *float64 `json:"netIpv4NeighDefaultGcThresh2,omitempty" tf:"net_ipv4_neigh_default_gc_thresh2,omitempty"` + + // The sysctl setting net.ipv4.neigh.default.gc_thresh3. Must be between 1024 and 100000. Changing this forces a new resource to be created. + NetIPv4NeighDefaultGcThresh3 *float64 `json:"netIpv4NeighDefaultGcThresh3,omitempty" tf:"net_ipv4_neigh_default_gc_thresh3,omitempty"` + + // The sysctl setting net.ipv4.tcp_fin_timeout. Must be between 5 and 120. Changing this forces a new resource to be created. + NetIPv4TCPFinTimeout *float64 `json:"netIpv4TcpFinTimeout,omitempty" tf:"net_ipv4_tcp_fin_timeout,omitempty"` + + // The sysctl setting net.ipv4.tcp_keepalive_intvl. Must be between 10 and 75. Changing this forces a new resource to be created. + NetIPv4TCPKeepaliveIntvl *float64 `json:"netIpv4TcpKeepaliveIntvl,omitempty" tf:"net_ipv4_tcp_keepalive_intvl,omitempty"` + + // The sysctl setting net.ipv4.tcp_keepalive_probes. Must be between 1 and 15. Changing this forces a new resource to be created. + NetIPv4TCPKeepaliveProbes *float64 `json:"netIpv4TcpKeepaliveProbes,omitempty" tf:"net_ipv4_tcp_keepalive_probes,omitempty"` + + // The sysctl setting net.ipv4.tcp_keepalive_time. Must be between 30 and 432000. Changing this forces a new resource to be created. + NetIPv4TCPKeepaliveTime *float64 `json:"netIpv4TcpKeepaliveTime,omitempty" tf:"net_ipv4_tcp_keepalive_time,omitempty"` + + // The sysctl setting net.ipv4.tcp_max_syn_backlog. Must be between 128 and 3240000. Changing this forces a new resource to be created. + NetIPv4TCPMaxSynBacklog *float64 `json:"netIpv4TcpMaxSynBacklog,omitempty" tf:"net_ipv4_tcp_max_syn_backlog,omitempty"` + + // The sysctl setting net.ipv4.tcp_max_tw_buckets. Must be between 8000 and 1440000. Changing this forces a new resource to be created. + NetIPv4TCPMaxTwBuckets *float64 `json:"netIpv4TcpMaxTwBuckets,omitempty" tf:"net_ipv4_tcp_max_tw_buckets,omitempty"` + + // Is sysctl setting net.ipv4.tcp_tw_reuse enabled? Changing this forces a new resource to be created. + NetIPv4TCPTwReuse *bool `json:"netIpv4TcpTwReuse,omitempty" tf:"net_ipv4_tcp_tw_reuse,omitempty"` + + // The sysctl setting net.netfilter.nf_conntrack_buckets. Must be between 65536 and 147456. Changing this forces a new resource to be created. + NetNetfilterNfConntrackBuckets *float64 `json:"netNetfilterNfConntrackBuckets,omitempty" tf:"net_netfilter_nf_conntrack_buckets,omitempty"` + + // The sysctl setting net.netfilter.nf_conntrack_max. Must be between 131072 and 1048576. Changing this forces a new resource to be created. + NetNetfilterNfConntrackMax *float64 `json:"netNetfilterNfConntrackMax,omitempty" tf:"net_netfilter_nf_conntrack_max,omitempty"` + + // The sysctl setting vm.max_map_count. Must be between 65530 and 262144. Changing this forces a new resource to be created. + VMMaxMapCount *float64 `json:"vmMaxMapCount,omitempty" tf:"vm_max_map_count,omitempty"` + + // The sysctl setting vm.swappiness. Must be between 0 and 100. Changing this forces a new resource to be created. + VMSwappiness *float64 `json:"vmSwappiness,omitempty" tf:"vm_swappiness,omitempty"` + + // The sysctl setting vm.vfs_cache_pressure. Must be between 0 and 100. Changing this forces a new resource to be created. + VMVfsCachePressure *float64 `json:"vmVfsCachePressure,omitempty" tf:"vm_vfs_cache_pressure,omitempty"` +} + type LinuxOsConfigSysctlConfigObservation struct { // The sysctl setting fs.aio-max-nr. Must be between 65536 and 6553500. Changing this forces a new resource to be created. @@ -701,6 +974,18 @@ type LinuxOsConfigSysctlConfigParameters struct { type KubernetesClusterNodePoolSpec struct { v1.ResourceSpec `json:",inline"` ForProvider KubernetesClusterNodePoolParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider KubernetesClusterNodePoolInitParameters `json:"initProvider,omitempty"` } // KubernetesClusterNodePoolStatus defines the observed state of KubernetesClusterNodePool. @@ -721,7 +1006,7 @@ type KubernetesClusterNodePoolStatus struct { type KubernetesClusterNodePool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vmSize)",message="vmSize is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.vmSize) || has(self.initProvider.vmSize)",message="vmSize is a required parameter" Spec KubernetesClusterNodePoolSpec `json:"spec"` Status KubernetesClusterNodePoolStatus `json:"status,omitempty"` } diff --git a/apis/containerservice/v1beta1/zz_kubernetesfleetmanager_types.go b/apis/containerservice/v1beta1/zz_kubernetesfleetmanager_types.go index e02e6b03e..7c9bf4c2e 100755 --- a/apis/containerservice/v1beta1/zz_kubernetesfleetmanager_types.go +++ b/apis/containerservice/v1beta1/zz_kubernetesfleetmanager_types.go @@ -13,6 +13,10 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HubProfileInitParameters struct { + DNSPrefix *string `json:"dnsPrefix,omitempty" tf:"dns_prefix,omitempty"` +} + type HubProfileObservation struct { DNSPrefix *string `json:"dnsPrefix,omitempty" tf:"dns_prefix,omitempty"` @@ -23,8 +27,20 @@ type HubProfileObservation struct { type HubProfileParameters struct { - // +kubebuilder:validation:Required - DNSPrefix *string `json:"dnsPrefix" tf:"dns_prefix,omitempty"` + // +kubebuilder:validation:Optional + DNSPrefix *string `json:"dnsPrefix,omitempty" tf:"dns_prefix,omitempty"` +} + +type KubernetesFleetManagerInitParameters struct { + + // A hub_profile block as defined below. The FleetHubProfile configures the Fleet's hub. Changing this forces a new Kubernetes Fleet Manager to be created. + HubProfile []HubProfileInitParameters `json:"hubProfile,omitempty" tf:"hub_profile,omitempty"` + + // The Azure Region where the Kubernetes Fleet Manager should exist. Changing this forces a new Kubernetes Fleet Manager to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Kubernetes Fleet Manager. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type KubernetesFleetManagerObservation struct { @@ -77,6 +93,18 @@ type KubernetesFleetManagerParameters struct { type KubernetesFleetManagerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider KubernetesFleetManagerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider KubernetesFleetManagerInitParameters `json:"initProvider,omitempty"` } // KubernetesFleetManagerStatus defines the observed state of KubernetesFleetManager. @@ -97,7 +125,7 @@ type KubernetesFleetManagerStatus struct { type KubernetesFleetManager struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec KubernetesFleetManagerSpec `json:"spec"` Status KubernetesFleetManagerStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_account_types.go b/apis/cosmosdb/v1beta1/zz_account_types.go index 774e0fef3..a69268621 100755 --- a/apis/cosmosdb/v1beta1/zz_account_types.go +++ b/apis/cosmosdb/v1beta1/zz_account_types.go @@ -13,6 +13,96 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccountInitParameters struct { + + // Is write operations on metadata resources (databases, containers, throughput) via account keys enabled? Defaults to true. + AccessKeyMetadataWritesEnabled *bool `json:"accessKeyMetadataWritesEnabled,omitempty" tf:"access_key_metadata_writes_enabled,omitempty"` + + // An analytical_storage block as defined below. + AnalyticalStorage []AnalyticalStorageInitParameters `json:"analyticalStorage,omitempty" tf:"analytical_storage,omitempty"` + + // Enable Analytical Storage option for this Cosmos DB account. Defaults to false. Enabling and then disabling analytical storage forces a new resource to be created. + AnalyticalStorageEnabled *bool `json:"analyticalStorageEnabled,omitempty" tf:"analytical_storage_enabled,omitempty"` + + // A backup block as defined below. + Backup []BackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // The capabilities which should be enabled for this Cosmos DB account. Value is a capabilities block as defined below. + Capabilities []CapabilitiesInitParameters `json:"capabilities,omitempty" tf:"capabilities,omitempty"` + + // A capacity block as defined below. + Capacity []CapacityInitParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // Specifies a consistency_policy resource, used to define the consistency policy for this CosmosDB account. + ConsistencyPolicy []ConsistencyPolicyInitParameters `json:"consistencyPolicy,omitempty" tf:"consistency_policy,omitempty"` + + // A cors_rule block as defined below. + CorsRule []CorsRuleInitParameters `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` + + // The creation mode for the CosmosDB Account. Possible values are Default and Restore. Changing this forces a new resource to be created. + CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` + + // The default identity for accessing Key Vault. Possible values are FirstPartyIdentity, SystemAssignedIdentity or UserAssignedIdentity. + DefaultIdentityType *string `json:"defaultIdentityType,omitempty" tf:"default_identity_type,omitempty"` + + // Enable automatic failover for this Cosmos DB account. + EnableAutomaticFailover *bool `json:"enableAutomaticFailover,omitempty" tf:"enable_automatic_failover,omitempty"` + + // Enable the Free Tier pricing option for this Cosmos DB account. Defaults to false. Changing this forces a new resource to be created. + EnableFreeTier *bool `json:"enableFreeTier,omitempty" tf:"enable_free_tier,omitempty"` + + // Enable multiple write locations for this Cosmos DB account. + EnableMultipleWriteLocations *bool `json:"enableMultipleWriteLocations,omitempty" tf:"enable_multiple_write_locations,omitempty"` + + // Specifies a geo_location resource, used to define where data should be replicated with the failover_priority 0 specifying the primary location. Value is a geo_location block as defined below. + GeoLocation []GeoLocationInitParameters `json:"geoLocation,omitempty" tf:"geo_location,omitempty"` + + // CosmosDB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces. + IPRangeFilter *string `json:"ipRangeFilter,omitempty" tf:"ip_range_filter,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Enables virtual network filtering for this Cosmos DB account. + IsVirtualNetworkFilterEnabled *bool `json:"isVirtualNetworkFilterEnabled,omitempty" tf:"is_virtual_network_filter_enabled,omitempty"` + + // A versionless Key Vault Key ID for CMK encryption. Changing this forces a new resource to be created. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // Specifies the Kind of CosmosDB to create - possible values are GlobalDocumentDB, MongoDB and Parse. Defaults to GlobalDocumentDB. Changing this forces a new resource to be created. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // Disable local authentication and ensure only MSI and AAD can be used exclusively for authentication. Defaults to false. Can be set only when using the SQL API. + LocalAuthenticationDisabled *bool `json:"localAuthenticationDisabled,omitempty" tf:"local_authentication_disabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The Server Version of a MongoDB account. Possible values are 4.2, 4.0, 3.6, and 3.2. + MongoServerVersion *string `json:"mongoServerVersion,omitempty" tf:"mongo_server_version,omitempty"` + + // If Azure services can bypass ACLs. Defaults to false. + NetworkACLBypassForAzureServices *bool `json:"networkAclBypassForAzureServices,omitempty" tf:"network_acl_bypass_for_azure_services,omitempty"` + + // The list of resource Ids for Network Acl Bypass for this Cosmos DB account. + NetworkACLBypassIds []*string `json:"networkAclBypassIds,omitempty" tf:"network_acl_bypass_ids,omitempty"` + + // Specifies the Offer Type to use for this CosmosDB Account; currently, this can only be set to Standard. + OfferType *string `json:"offerType,omitempty" tf:"offer_type,omitempty"` + + // Whether or not public network access is allowed for this CosmosDB account. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A restore block as defined below. + Restore []RestoreInitParameters `json:"restore,omitempty" tf:"restore,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies a virtual_network_rules resource, used to define which subnets are allowed to access this CosmosDB account. + VirtualNetworkRule []VirtualNetworkRuleInitParameters `json:"virtualNetworkRule,omitempty" tf:"virtual_network_rule,omitempty"` +} + type AccountObservation struct { // Is write operations on metadata resources (databases, containers, throughput) via account keys enabled? Defaults to true. @@ -250,6 +340,12 @@ type AccountParameters struct { VirtualNetworkRule []VirtualNetworkRuleParameters `json:"virtualNetworkRule,omitempty" tf:"virtual_network_rule,omitempty"` } +type AnalyticalStorageInitParameters struct { + + // The schema type of the Analytical Storage for this Cosmos DB account. Possible values are FullFidelity and WellDefined. + SchemaType *string `json:"schemaType,omitempty" tf:"schema_type,omitempty"` +} + type AnalyticalStorageObservation struct { // The schema type of the Analytical Storage for this Cosmos DB account. Possible values are FullFidelity and WellDefined. @@ -259,8 +355,23 @@ type AnalyticalStorageObservation struct { type AnalyticalStorageParameters struct { // The schema type of the Analytical Storage for this Cosmos DB account. Possible values are FullFidelity and WellDefined. - // +kubebuilder:validation:Required - SchemaType *string `json:"schemaType" tf:"schema_type,omitempty"` + // +kubebuilder:validation:Optional + SchemaType *string `json:"schemaType,omitempty" tf:"schema_type,omitempty"` +} + +type BackupInitParameters struct { + + // The interval in minutes between two backups. This is configurable only when type is Periodic. Possible values are between 60 and 1440. + IntervalInMinutes *float64 `json:"intervalInMinutes,omitempty" tf:"interval_in_minutes,omitempty"` + + // The time in hours that each backup is retained. This is configurable only when type is Periodic. Possible values are between 8 and 720. + RetentionInHours *float64 `json:"retentionInHours,omitempty" tf:"retention_in_hours,omitempty"` + + // The storage redundancy is used to indicate the type of backup residency. This is configurable only when type is Periodic. Possible values are Geo, Local and Zone. + StorageRedundancy *string `json:"storageRedundancy,omitempty" tf:"storage_redundancy,omitempty"` + + // The type of the backup. Possible values are Continuous and Periodic. Migration of Periodic to Continuous is one-way, changing Continuous to Periodic forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type BackupObservation struct { @@ -293,8 +404,14 @@ type BackupParameters struct { StorageRedundancy *string `json:"storageRedundancy,omitempty" tf:"storage_redundancy,omitempty"` // The type of the backup. Possible values are Continuous and Periodic. Migration of Periodic to Continuous is one-way, changing Continuous to Periodic forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type CapabilitiesInitParameters struct { + + // The capability to enable - Possible values are AllowSelfServeUpgradeToMongo36, DisableRateLimitingResponses, EnableAggregationPipeline, EnableCassandra, EnableGremlin, EnableMongo, EnableMongo16MBDocumentSupport, EnableMongoRetryableWrites, EnableMongoRoleBasedAccessControl, EnableServerless, EnableTable, EnableUniqueCompoundNestedDocs, MongoDBv3.4 and mongoEnableDocLevelTTL. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type CapabilitiesObservation struct { @@ -306,8 +423,14 @@ type CapabilitiesObservation struct { type CapabilitiesParameters struct { // The capability to enable - Possible values are AllowSelfServeUpgradeToMongo36, DisableRateLimitingResponses, EnableAggregationPipeline, EnableCassandra, EnableGremlin, EnableMongo, EnableMongo16MBDocumentSupport, EnableMongoRetryableWrites, EnableMongoRoleBasedAccessControl, EnableServerless, EnableTable, EnableUniqueCompoundNestedDocs, MongoDBv3.4 and mongoEnableDocLevelTTL. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type CapacityInitParameters struct { + + // The total throughput limit imposed on this Cosmos DB account (RU/s). Possible values are at least -1. -1 means no limit. + TotalThroughputLimit *float64 `json:"totalThroughputLimit,omitempty" tf:"total_throughput_limit,omitempty"` } type CapacityObservation struct { @@ -319,8 +442,20 @@ type CapacityObservation struct { type CapacityParameters struct { // The total throughput limit imposed on this Cosmos DB account (RU/s). Possible values are at least -1. -1 means no limit. - // +kubebuilder:validation:Required - TotalThroughputLimit *float64 `json:"totalThroughputLimit" tf:"total_throughput_limit,omitempty"` + // +kubebuilder:validation:Optional + TotalThroughputLimit *float64 `json:"totalThroughputLimit,omitempty" tf:"total_throughput_limit,omitempty"` +} + +type ConsistencyPolicyInitParameters struct { + + // The Consistency Level to use for this CosmosDB Account - can be either BoundedStaleness, Eventual, Session, Strong or ConsistentPrefix. + ConsistencyLevel *string `json:"consistencyLevel,omitempty" tf:"consistency_level,omitempty"` + + // When used with the Bounded Staleness consistency level, this value represents the time amount of staleness (in seconds) tolerated. The accepted range for this value is 5 - 86400 (1 day). Defaults to 5. Required when consistency_level is set to BoundedStaleness. + MaxIntervalInSeconds *float64 `json:"maxIntervalInSeconds,omitempty" tf:"max_interval_in_seconds,omitempty"` + + // When used with the Bounded Staleness consistency level, this value represents the number of stale requests tolerated. The accepted range for this value is 10 – 2147483647. Defaults to 100. Required when consistency_level is set to BoundedStaleness. + MaxStalenessPrefix *float64 `json:"maxStalenessPrefix,omitempty" tf:"max_staleness_prefix,omitempty"` } type ConsistencyPolicyObservation struct { @@ -338,8 +473,8 @@ type ConsistencyPolicyObservation struct { type ConsistencyPolicyParameters struct { // The Consistency Level to use for this CosmosDB Account - can be either BoundedStaleness, Eventual, Session, Strong or ConsistentPrefix. - // +kubebuilder:validation:Required - ConsistencyLevel *string `json:"consistencyLevel" tf:"consistency_level,omitempty"` + // +kubebuilder:validation:Optional + ConsistencyLevel *string `json:"consistencyLevel,omitempty" tf:"consistency_level,omitempty"` // When used with the Bounded Staleness consistency level, this value represents the time amount of staleness (in seconds) tolerated. The accepted range for this value is 5 - 86400 (1 day). Defaults to 5. Required when consistency_level is set to BoundedStaleness. // +kubebuilder:validation:Optional @@ -350,6 +485,24 @@ type ConsistencyPolicyParameters struct { MaxStalenessPrefix *float64 `json:"maxStalenessPrefix,omitempty" tf:"max_staleness_prefix,omitempty"` } +type CorsRuleInitParameters struct { + + // A list of headers that are allowed to be a part of the cross-origin request. + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` + + // A list of HTTP headers that are allowed to be executed by the origin. Valid options are DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` + + // A list of origin domains that will be allowed by CORS. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // A list of response headers that are exposed to CORS clients. + ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` + + // The number of seconds the client should cache a preflight response. + MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` +} + type CorsRuleObservation struct { // A list of headers that are allowed to be a part of the cross-origin request. @@ -371,24 +524,33 @@ type CorsRuleObservation struct { type CorsRuleParameters struct { // A list of headers that are allowed to be a part of the cross-origin request. - // +kubebuilder:validation:Required - AllowedHeaders []*string `json:"allowedHeaders" tf:"allowed_headers,omitempty"` + // +kubebuilder:validation:Optional + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // A list of HTTP headers that are allowed to be executed by the origin. Valid options are DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. - // +kubebuilder:validation:Required - AllowedMethods []*string `json:"allowedMethods" tf:"allowed_methods,omitempty"` + // +kubebuilder:validation:Optional + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A list of origin domains that will be allowed by CORS. - // +kubebuilder:validation:Required - AllowedOrigins []*string `json:"allowedOrigins" tf:"allowed_origins,omitempty"` + // +kubebuilder:validation:Optional + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // A list of response headers that are exposed to CORS clients. - // +kubebuilder:validation:Required - ExposedHeaders []*string `json:"exposedHeaders" tf:"exposed_headers,omitempty"` + // +kubebuilder:validation:Optional + ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` // The number of seconds the client should cache a preflight response. - // +kubebuilder:validation:Required - MaxAgeInSeconds *float64 `json:"maxAgeInSeconds" tf:"max_age_in_seconds,omitempty"` + // +kubebuilder:validation:Optional + MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` +} + +type DatabaseInitParameters struct { + + // A list of the collection names for the restore request. Changing this forces a new resource to be created. + CollectionNames []*string `json:"collectionNames,omitempty" tf:"collection_names,omitempty"` + + // Specifies the name of the CosmosDB Account. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type DatabaseObservation struct { @@ -407,8 +569,20 @@ type DatabaseParameters struct { CollectionNames []*string `json:"collectionNames,omitempty" tf:"collection_names,omitempty"` // Specifies the name of the CosmosDB Account. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type GeoLocationInitParameters struct { + + // The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists. Changing this causes the location to be re-provisioned and cannot be changed for the location with failover priority 0. + FailoverPriority *float64 `json:"failoverPriority,omitempty" tf:"failover_priority,omitempty"` + + // The name of the Azure region to host replicated data. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Should zone redundancy be enabled for this region? Defaults to false. + ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } type GeoLocationObservation struct { @@ -429,18 +603,27 @@ type GeoLocationObservation struct { type GeoLocationParameters struct { // The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists. Changing this causes the location to be re-provisioned and cannot be changed for the location with failover priority 0. - // +kubebuilder:validation:Required - FailoverPriority *float64 `json:"failoverPriority" tf:"failover_priority,omitempty"` + // +kubebuilder:validation:Optional + FailoverPriority *float64 `json:"failoverPriority,omitempty" tf:"failover_priority,omitempty"` // The name of the Azure region to host replicated data. - // +kubebuilder:validation:Required - Location *string `json:"location" tf:"location,omitempty"` + // +kubebuilder:validation:Optional + Location *string `json:"location,omitempty" tf:"location,omitempty"` // Should zone redundancy be enabled for this region? Defaults to false. // +kubebuilder:validation:Optional ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Cosmos Account. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The Type of Managed Identity assigned to this Cosmos account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Cosmos Account. @@ -463,8 +646,17 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The Type of Managed Identity assigned to this Cosmos account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type RestoreInitParameters struct { + + // A database block as defined below. Changing this forces a new resource to be created. + Database []DatabaseInitParameters `json:"database,omitempty" tf:"database,omitempty"` + + // The creation time of the database or the collection (Datetime Format RFC 3339). Changing this forces a new resource to be created. + RestoreTimestampInUtc *string `json:"restoreTimestampInUtc,omitempty" tf:"restore_timestamp_in_utc,omitempty"` } type RestoreObservation struct { @@ -486,8 +678,8 @@ type RestoreParameters struct { Database []DatabaseParameters `json:"database,omitempty" tf:"database,omitempty"` // The creation time of the database or the collection (Datetime Format RFC 3339). Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - RestoreTimestampInUtc *string `json:"restoreTimestampInUtc" tf:"restore_timestamp_in_utc,omitempty"` + // +kubebuilder:validation:Optional + RestoreTimestampInUtc *string `json:"restoreTimestampInUtc,omitempty" tf:"restore_timestamp_in_utc,omitempty"` // The resource ID of the restorable database account from which the restore has to be initiated. The example is /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName}. Changing this forces a new resource to be created. // +crossplane:generate:reference:type=Account @@ -504,6 +696,15 @@ type RestoreParameters struct { SourceCosmosDBAccountIDSelector *v1.Selector `json:"sourceCosmosdbAccountIdSelector,omitempty" tf:"-"` } +type VirtualNetworkRuleInitParameters struct { + + // The ID of the virtual network subnet. + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // If set to true, the specified subnet will be added as a virtual network rule even if its CosmosDB service endpoint is not active. Defaults to false. + IgnoreMissingVnetServiceEndpoint *bool `json:"ignoreMissingVnetServiceEndpoint,omitempty" tf:"ignore_missing_vnet_service_endpoint,omitempty"` +} + type VirtualNetworkRuleObservation struct { // The ID of the virtual network subnet. @@ -516,8 +717,8 @@ type VirtualNetworkRuleObservation struct { type VirtualNetworkRuleParameters struct { // The ID of the virtual network subnet. - // +kubebuilder:validation:Required - ID *string `json:"id" tf:"id,omitempty"` + // +kubebuilder:validation:Optional + ID *string `json:"id,omitempty" tf:"id,omitempty"` // If set to true, the specified subnet will be added as a virtual network rule even if its CosmosDB service endpoint is not active. Defaults to false. // +kubebuilder:validation:Optional @@ -528,6 +729,18 @@ type VirtualNetworkRuleParameters struct { type AccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccountInitParameters `json:"initProvider,omitempty"` } // AccountStatus defines the observed state of Account. @@ -548,10 +761,10 @@ type AccountStatus struct { type Account struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.consistencyPolicy)",message="consistencyPolicy is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.geoLocation)",message="geoLocation is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.offerType)",message="offerType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.consistencyPolicy) || has(self.initProvider.consistencyPolicy)",message="consistencyPolicy is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.geoLocation) || has(self.initProvider.geoLocation)",message="geoLocation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.offerType) || has(self.initProvider.offerType)",message="offerType is a required parameter" Spec AccountSpec `json:"spec"` Status AccountStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_cassandracluster_types.go b/apis/cosmosdb/v1beta1/zz_cassandracluster_types.go index 9c680e22d..18c0748f8 100755 --- a/apis/cosmosdb/v1beta1/zz_cassandracluster_types.go +++ b/apis/cosmosdb/v1beta1/zz_cassandracluster_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CassandraClusterIdentityInitParameters struct { + + // Specifies the type of Managed Service Identity that should be configured on this Cassandra Cluster. The only possible value is SystemAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type CassandraClusterIdentityObservation struct { // The ID of the Cassandra Cluster. @@ -28,8 +34,41 @@ type CassandraClusterIdentityObservation struct { type CassandraClusterIdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this Cassandra Cluster. The only possible value is SystemAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type CassandraClusterInitParameters struct { + + // The authentication method that is used to authenticate clients. Possible values are None and Cassandra. Defaults to Cassandra. + AuthenticationMethod *string `json:"authenticationMethod,omitempty" tf:"authentication_method,omitempty"` + + // A list of TLS certificates that is used to authorize client connecting to the Cassandra Cluster. + ClientCertificatePems []*string `json:"clientCertificatePems,omitempty" tf:"client_certificate_pems,omitempty"` + + // A list of TLS certificates that is used to authorize gossip from unmanaged Cassandra Data Center. + ExternalGossipCertificatePems []*string `json:"externalGossipCertificatePems,omitempty" tf:"external_gossip_certificate_pems,omitempty"` + + // A list of IP Addresses of the seed nodes in unmanaged the Cassandra Data Center which will be added to the seed node lists of all managed nodes. + ExternalSeedNodeIPAddresses []*string `json:"externalSeedNodeIpAddresses,omitempty" tf:"external_seed_node_ip_addresses,omitempty"` + + // The number of hours to wait between taking a backup of the Cassandra Cluster. Defaults to 24. + HoursBetweenBackups *float64 `json:"hoursBetweenBackups,omitempty" tf:"hours_between_backups,omitempty"` + + // An identity block as defined below. + Identity []CassandraClusterIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Cassandra Cluster should exist. Changing this forces a new Cassandra Cluster to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Is the automatic repair enabled on the Cassandra Cluster? Defaults to true. + RepairEnabled *bool `json:"repairEnabled,omitempty" tf:"repair_enabled,omitempty"` + + // A mapping of tags assigned to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The version of Cassandra what the Cluster converges to run. Possible values are 3.11 and 4.0. Defaults to 3.11. Changing this forces a new Cassandra Cluster to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type CassandraClusterObservation struct { @@ -152,6 +191,18 @@ type CassandraClusterParameters struct { type CassandraClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CassandraClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CassandraClusterInitParameters `json:"initProvider,omitempty"` } // CassandraClusterStatus defines the observed state of CassandraCluster. @@ -172,8 +223,8 @@ type CassandraClusterStatus struct { type CassandraCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultAdminPasswordSecretRef)",message="defaultAdminPasswordSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.defaultAdminPasswordSecretRef)",message="defaultAdminPasswordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec CassandraClusterSpec `json:"spec"` Status CassandraClusterStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_cassandradatacenter_types.go b/apis/cosmosdb/v1beta1/zz_cassandradatacenter_types.go index 6f7c46eb1..b89cf96f3 100755 --- a/apis/cosmosdb/v1beta1/zz_cassandradatacenter_types.go +++ b/apis/cosmosdb/v1beta1/zz_cassandradatacenter_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CassandraDatacenterInitParameters struct { + + // Determines whether availability zones are enabled. Defaults to true. + AvailabilityZonesEnabled *bool `json:"availabilityZonesEnabled,omitempty" tf:"availability_zones_enabled,omitempty"` + + // The key URI of the customer key to use for the encryption of the backup Storage Account. + BackupStorageCustomerKeyURI *string `json:"backupStorageCustomerKeyUri,omitempty" tf:"backup_storage_customer_key_uri,omitempty"` + + // The fragment of the cassandra.yaml configuration file to be included in the cassandra.yaml for all nodes in this Cassandra Datacenter. The fragment should be Base64 encoded and only a subset of keys is allowed. + Base64EncodedYamlFragment *string `json:"base64EncodedYamlFragment,omitempty" tf:"base64_encoded_yaml_fragment,omitempty"` + + // Determines the number of p30 disks that are attached to each node. + DiskCount *float64 `json:"diskCount,omitempty" tf:"disk_count,omitempty"` + + // The Disk SKU that is used for this Cassandra Datacenter. Defaults to P30. + DiskSku *string `json:"diskSku,omitempty" tf:"disk_sku,omitempty"` + + // The Azure Region where the Cassandra Datacenter should exist. Changing this forces a new Cassandra Datacenter to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The key URI of the customer key to use for the encryption of the Managed Disk. + ManagedDiskCustomerKeyURI *string `json:"managedDiskCustomerKeyUri,omitempty" tf:"managed_disk_customer_key_uri,omitempty"` + + // The number of nodes the Cassandra Datacenter should have. The number should be equal or greater than 3. Defaults to 3. + NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` + + // Determines the selected sku. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` +} + type CassandraDatacenterObservation struct { // Determines whether availability zones are enabled. Defaults to true. @@ -123,6 +153,18 @@ type CassandraDatacenterParameters struct { type CassandraDatacenterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CassandraDatacenterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CassandraDatacenterInitParameters `json:"initProvider,omitempty"` } // CassandraDatacenterStatus defines the observed state of CassandraDatacenter. @@ -143,7 +185,7 @@ type CassandraDatacenterStatus struct { type CassandraDatacenter struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec CassandraDatacenterSpec `json:"spec"` Status CassandraDatacenterStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_cassandrakeyspace_types.go b/apis/cosmosdb/v1beta1/zz_cassandrakeyspace_types.go index 1f3f5be31..5b497931a 100755 --- a/apis/cosmosdb/v1beta1/zz_cassandrakeyspace_types.go +++ b/apis/cosmosdb/v1beta1/zz_cassandrakeyspace_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AutoscaleSettingsInitParameters struct { + + // The maximum throughput of the Cassandra KeySpace (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` +} + type AutoscaleSettingsObservation struct { // The maximum throughput of the Cassandra KeySpace (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. @@ -26,6 +32,15 @@ type AutoscaleSettingsParameters struct { MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } +type CassandraKeySpaceInitParameters struct { + + // An autoscale_settings block as defined below. + AutoscaleSettings []AutoscaleSettingsInitParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` + + // The throughput of Cassandra KeySpace (RU/s). Must be set in increments of 100. The minimum value is 400. + Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` +} + type CassandraKeySpaceObservation struct { // The name of the Cosmos DB Cassandra KeySpace to create the table within. Changing this forces a new resource to be created. @@ -85,6 +100,18 @@ type CassandraKeySpaceParameters struct { type CassandraKeySpaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CassandraKeySpaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CassandraKeySpaceInitParameters `json:"initProvider,omitempty"` } // CassandraKeySpaceStatus defines the observed state of CassandraKeySpace. diff --git a/apis/cosmosdb/v1beta1/zz_cassandratable_types.go b/apis/cosmosdb/v1beta1/zz_cassandratable_types.go index b3277d31c..5e7c7defa 100755 --- a/apis/cosmosdb/v1beta1/zz_cassandratable_types.go +++ b/apis/cosmosdb/v1beta1/zz_cassandratable_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CassandraTableAutoscaleSettingsInitParameters struct { + + // The maximum throughput of the Cassandra Table (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` +} + type CassandraTableAutoscaleSettingsObservation struct { // The maximum throughput of the Cassandra Table (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. @@ -26,6 +32,24 @@ type CassandraTableAutoscaleSettingsParameters struct { MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } +type CassandraTableInitParameters struct { + + // Time to live of the Analytical Storage. Possible values are between -1 and 2147483647 except 0. -1 means the Analytical Storage never expires. Changing this forces a new resource to be created. + AnalyticalStorageTTL *float64 `json:"analyticalStorageTtl,omitempty" tf:"analytical_storage_ttl,omitempty"` + + // An autoscale_settings block as defined below. + AutoscaleSettings []CassandraTableAutoscaleSettingsInitParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` + + // Time to live of the Cosmos DB Cassandra table. Possible values are at least -1. -1 means the Cassandra table never expires. + DefaultTTL *float64 `json:"defaultTtl,omitempty" tf:"default_ttl,omitempty"` + + // A schema block as defined below. + Schema []SchemaInitParameters `json:"schema,omitempty" tf:"schema,omitempty"` + + // The throughput of Cassandra KeySpace (RU/s). Must be set in increments of 100. The minimum value is 400. + Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` +} + type CassandraTableObservation struct { // Time to live of the Analytical Storage. Possible values are between -1 and 2147483647 except 0. -1 means the Analytical Storage never expires. Changing this forces a new resource to be created. @@ -87,6 +111,15 @@ type CassandraTableParameters struct { Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` } +type ClusterKeyInitParameters struct { + + // Name of the column to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Order of the key. Currently supported values are Asc and Desc. + OrderBy *string `json:"orderBy,omitempty" tf:"order_by,omitempty"` +} + type ClusterKeyObservation struct { // Name of the column to be created. @@ -99,12 +132,21 @@ type ClusterKeyObservation struct { type ClusterKeyParameters struct { // Name of the column to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Order of the key. Currently supported values are Asc and Desc. - // +kubebuilder:validation:Required - OrderBy *string `json:"orderBy" tf:"order_by,omitempty"` + // +kubebuilder:validation:Optional + OrderBy *string `json:"orderBy,omitempty" tf:"order_by,omitempty"` +} + +type ColumnInitParameters struct { + + // Name of the column to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of the column to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type ColumnObservation struct { @@ -119,12 +161,18 @@ type ColumnObservation struct { type ColumnParameters struct { // Name of the column to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type PartitionKeyInitParameters struct { + + // Name of the column to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type PartitionKeyObservation struct { @@ -136,8 +184,20 @@ type PartitionKeyObservation struct { type PartitionKeyParameters struct { // Name of the column to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type SchemaInitParameters struct { + + // One or more cluster_key blocks as defined below. + ClusterKey []ClusterKeyInitParameters `json:"clusterKey,omitempty" tf:"cluster_key,omitempty"` + + // One or more column blocks as defined below. + Column []ColumnInitParameters `json:"column,omitempty" tf:"column,omitempty"` + + // One or more partition_key blocks as defined below. + PartitionKey []PartitionKeyInitParameters `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` } type SchemaObservation struct { @@ -159,18 +219,30 @@ type SchemaParameters struct { ClusterKey []ClusterKeyParameters `json:"clusterKey,omitempty" tf:"cluster_key,omitempty"` // One or more column blocks as defined below. - // +kubebuilder:validation:Required - Column []ColumnParameters `json:"column" tf:"column,omitempty"` + // +kubebuilder:validation:Optional + Column []ColumnParameters `json:"column,omitempty" tf:"column,omitempty"` // One or more partition_key blocks as defined below. - // +kubebuilder:validation:Required - PartitionKey []PartitionKeyParameters `json:"partitionKey" tf:"partition_key,omitempty"` + // +kubebuilder:validation:Optional + PartitionKey []PartitionKeyParameters `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` } // CassandraTableSpec defines the desired state of CassandraTable type CassandraTableSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CassandraTableParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CassandraTableInitParameters `json:"initProvider,omitempty"` } // CassandraTableStatus defines the observed state of CassandraTable. @@ -191,7 +263,7 @@ type CassandraTableStatus struct { type CassandraTable struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.schema)",message="schema is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.schema) || has(self.initProvider.schema)",message="schema is a required parameter" Spec CassandraTableSpec `json:"spec"` Status CassandraTableStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_generated.deepcopy.go b/apis/cosmosdb/v1beta1/zz_generated.deepcopy.go index f92ef155b..25454f761 100644 --- a/apis/cosmosdb/v1beta1/zz_generated.deepcopy.go +++ b/apis/cosmosdb/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,202 @@ func (in *Account) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountInitParameters) DeepCopyInto(out *AccountInitParameters) { + *out = *in + if in.AccessKeyMetadataWritesEnabled != nil { + in, out := &in.AccessKeyMetadataWritesEnabled, &out.AccessKeyMetadataWritesEnabled + *out = new(bool) + **out = **in + } + if in.AnalyticalStorage != nil { + in, out := &in.AnalyticalStorage, &out.AnalyticalStorage + *out = make([]AnalyticalStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AnalyticalStorageEnabled != nil { + in, out := &in.AnalyticalStorageEnabled, &out.AnalyticalStorageEnabled + *out = new(bool) + **out = **in + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]BackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Capabilities != nil { + in, out := &in.Capabilities, &out.Capabilities + *out = make([]CapabilitiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make([]CapacityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConsistencyPolicy != nil { + in, out := &in.ConsistencyPolicy, &out.ConsistencyPolicy + *out = make([]ConsistencyPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CorsRule != nil { + in, out := &in.CorsRule, &out.CorsRule + *out = make([]CorsRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(string) + **out = **in + } + if in.DefaultIdentityType != nil { + in, out := &in.DefaultIdentityType, &out.DefaultIdentityType + *out = new(string) + **out = **in + } + if in.EnableAutomaticFailover != nil { + in, out := &in.EnableAutomaticFailover, &out.EnableAutomaticFailover + *out = new(bool) + **out = **in + } + if in.EnableFreeTier != nil { + in, out := &in.EnableFreeTier, &out.EnableFreeTier + *out = new(bool) + **out = **in + } + if in.EnableMultipleWriteLocations != nil { + in, out := &in.EnableMultipleWriteLocations, &out.EnableMultipleWriteLocations + *out = new(bool) + **out = **in + } + if in.GeoLocation != nil { + in, out := &in.GeoLocation, &out.GeoLocation + *out = make([]GeoLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPRangeFilter != nil { + in, out := &in.IPRangeFilter, &out.IPRangeFilter + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IsVirtualNetworkFilterEnabled != nil { + in, out := &in.IsVirtualNetworkFilterEnabled, &out.IsVirtualNetworkFilterEnabled + *out = new(bool) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.LocalAuthenticationDisabled != nil { + in, out := &in.LocalAuthenticationDisabled, &out.LocalAuthenticationDisabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MongoServerVersion != nil { + in, out := &in.MongoServerVersion, &out.MongoServerVersion + *out = new(string) + **out = **in + } + if in.NetworkACLBypassForAzureServices != nil { + in, out := &in.NetworkACLBypassForAzureServices, &out.NetworkACLBypassForAzureServices + *out = new(bool) + **out = **in + } + if in.NetworkACLBypassIds != nil { + in, out := &in.NetworkACLBypassIds, &out.NetworkACLBypassIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.OfferType != nil { + in, out := &in.OfferType, &out.OfferType + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Restore != nil { + in, out := &in.Restore, &out.Restore + *out = make([]RestoreInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.VirtualNetworkRule != nil { + in, out := &in.VirtualNetworkRule, &out.VirtualNetworkRule + *out = make([]VirtualNetworkRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountInitParameters. +func (in *AccountInitParameters) DeepCopy() *AccountInitParameters { + if in == nil { + return nil + } + out := new(AccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountList) DeepCopyInto(out *AccountList) { *out = *in @@ -522,6 +718,7 @@ func (in *AccountSpec) DeepCopyInto(out *AccountSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountSpec. @@ -551,6 +748,26 @@ func (in *AccountStatus) DeepCopy() *AccountStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AnalyticalStorageInitParameters) DeepCopyInto(out *AnalyticalStorageInitParameters) { + *out = *in + if in.SchemaType != nil { + in, out := &in.SchemaType, &out.SchemaType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AnalyticalStorageInitParameters. +func (in *AnalyticalStorageInitParameters) DeepCopy() *AnalyticalStorageInitParameters { + if in == nil { + return nil + } + out := new(AnalyticalStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AnalyticalStorageObservation) DeepCopyInto(out *AnalyticalStorageObservation) { *out = *in @@ -591,6 +808,26 @@ func (in *AnalyticalStorageParameters) DeepCopy() *AnalyticalStorageParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoscaleSettingsInitParameters) DeepCopyInto(out *AutoscaleSettingsInitParameters) { + *out = *in + if in.MaxThroughput != nil { + in, out := &in.MaxThroughput, &out.MaxThroughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscaleSettingsInitParameters. +func (in *AutoscaleSettingsInitParameters) DeepCopy() *AutoscaleSettingsInitParameters { + if in == nil { + return nil + } + out := new(AutoscaleSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoscaleSettingsObservation) DeepCopyInto(out *AutoscaleSettingsObservation) { *out = *in @@ -631,6 +868,41 @@ func (in *AutoscaleSettingsParameters) DeepCopy() *AutoscaleSettingsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupInitParameters) DeepCopyInto(out *BackupInitParameters) { + *out = *in + if in.IntervalInMinutes != nil { + in, out := &in.IntervalInMinutes, &out.IntervalInMinutes + *out = new(float64) + **out = **in + } + if in.RetentionInHours != nil { + in, out := &in.RetentionInHours, &out.RetentionInHours + *out = new(float64) + **out = **in + } + if in.StorageRedundancy != nil { + in, out := &in.StorageRedundancy, &out.StorageRedundancy + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupInitParameters. +func (in *BackupInitParameters) DeepCopy() *BackupInitParameters { + if in == nil { + return nil + } + out := new(BackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupObservation) DeepCopyInto(out *BackupObservation) { *out = *in @@ -701,6 +973,26 @@ func (in *BackupParameters) DeepCopy() *BackupParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CapabilitiesInitParameters) DeepCopyInto(out *CapabilitiesInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapabilitiesInitParameters. +func (in *CapabilitiesInitParameters) DeepCopy() *CapabilitiesInitParameters { + if in == nil { + return nil + } + out := new(CapabilitiesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CapabilitiesObservation) DeepCopyInto(out *CapabilitiesObservation) { *out = *in @@ -741,6 +1033,26 @@ func (in *CapabilitiesParameters) DeepCopy() *CapabilitiesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CapacityInitParameters) DeepCopyInto(out *CapacityInitParameters) { + *out = *in + if in.TotalThroughputLimit != nil { + in, out := &in.TotalThroughputLimit, &out.TotalThroughputLimit + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapacityInitParameters. +func (in *CapacityInitParameters) DeepCopy() *CapacityInitParameters { + if in == nil { + return nil + } + out := new(CapacityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CapacityObservation) DeepCopyInto(out *CapacityObservation) { *out = *in @@ -808,6 +1120,26 @@ func (in *CassandraCluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CassandraClusterIdentityInitParameters) DeepCopyInto(out *CassandraClusterIdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraClusterIdentityInitParameters. +func (in *CassandraClusterIdentityInitParameters) DeepCopy() *CassandraClusterIdentityInitParameters { + if in == nil { + return nil + } + out := new(CassandraClusterIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CassandraClusterIdentityObservation) DeepCopyInto(out *CassandraClusterIdentityObservation) { *out = *in @@ -858,6 +1190,101 @@ func (in *CassandraClusterIdentityParameters) DeepCopy() *CassandraClusterIdenti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CassandraClusterInitParameters) DeepCopyInto(out *CassandraClusterInitParameters) { + *out = *in + if in.AuthenticationMethod != nil { + in, out := &in.AuthenticationMethod, &out.AuthenticationMethod + *out = new(string) + **out = **in + } + if in.ClientCertificatePems != nil { + in, out := &in.ClientCertificatePems, &out.ClientCertificatePems + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ExternalGossipCertificatePems != nil { + in, out := &in.ExternalGossipCertificatePems, &out.ExternalGossipCertificatePems + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ExternalSeedNodeIPAddresses != nil { + in, out := &in.ExternalSeedNodeIPAddresses, &out.ExternalSeedNodeIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.HoursBetweenBackups != nil { + in, out := &in.HoursBetweenBackups, &out.HoursBetweenBackups + *out = new(float64) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]CassandraClusterIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.RepairEnabled != nil { + in, out := &in.RepairEnabled, &out.RepairEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraClusterInitParameters. +func (in *CassandraClusterInitParameters) DeepCopy() *CassandraClusterInitParameters { + if in == nil { + return nil + } + out := new(CassandraClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CassandraClusterList) DeepCopyInto(out *CassandraClusterList) { *out = *in @@ -1131,6 +1558,7 @@ func (in *CassandraClusterSpec) DeepCopyInto(out *CassandraClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraClusterSpec. @@ -1187,6 +1615,66 @@ func (in *CassandraDatacenter) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CassandraDatacenterInitParameters) DeepCopyInto(out *CassandraDatacenterInitParameters) { + *out = *in + if in.AvailabilityZonesEnabled != nil { + in, out := &in.AvailabilityZonesEnabled, &out.AvailabilityZonesEnabled + *out = new(bool) + **out = **in + } + if in.BackupStorageCustomerKeyURI != nil { + in, out := &in.BackupStorageCustomerKeyURI, &out.BackupStorageCustomerKeyURI + *out = new(string) + **out = **in + } + if in.Base64EncodedYamlFragment != nil { + in, out := &in.Base64EncodedYamlFragment, &out.Base64EncodedYamlFragment + *out = new(string) + **out = **in + } + if in.DiskCount != nil { + in, out := &in.DiskCount, &out.DiskCount + *out = new(float64) + **out = **in + } + if in.DiskSku != nil { + in, out := &in.DiskSku, &out.DiskSku + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ManagedDiskCustomerKeyURI != nil { + in, out := &in.ManagedDiskCustomerKeyURI, &out.ManagedDiskCustomerKeyURI + *out = new(string) + **out = **in + } + if in.NodeCount != nil { + in, out := &in.NodeCount, &out.NodeCount + *out = new(float64) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraDatacenterInitParameters. +func (in *CassandraDatacenterInitParameters) DeepCopy() *CassandraDatacenterInitParameters { + if in == nil { + return nil + } + out := new(CassandraDatacenterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CassandraDatacenterList) DeepCopyInto(out *CassandraDatacenterList) { *out = *in @@ -1389,6 +1877,7 @@ func (in *CassandraDatacenterSpec) DeepCopyInto(out *CassandraDatacenterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraDatacenterSpec. @@ -1445,6 +1934,33 @@ func (in *CassandraKeySpace) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CassandraKeySpaceInitParameters) DeepCopyInto(out *CassandraKeySpaceInitParameters) { + *out = *in + if in.AutoscaleSettings != nil { + in, out := &in.AutoscaleSettings, &out.AutoscaleSettings + *out = make([]AutoscaleSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraKeySpaceInitParameters. +func (in *CassandraKeySpaceInitParameters) DeepCopy() *CassandraKeySpaceInitParameters { + if in == nil { + return nil + } + out := new(CassandraKeySpaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CassandraKeySpaceList) DeepCopyInto(out *CassandraKeySpaceList) { *out = *in @@ -1581,6 +2097,7 @@ func (in *CassandraKeySpaceSpec) DeepCopyInto(out *CassandraKeySpaceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraKeySpaceSpec. @@ -1637,6 +2154,26 @@ func (in *CassandraTable) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CassandraTableAutoscaleSettingsInitParameters) DeepCopyInto(out *CassandraTableAutoscaleSettingsInitParameters) { + *out = *in + if in.MaxThroughput != nil { + in, out := &in.MaxThroughput, &out.MaxThroughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraTableAutoscaleSettingsInitParameters. +func (in *CassandraTableAutoscaleSettingsInitParameters) DeepCopy() *CassandraTableAutoscaleSettingsInitParameters { + if in == nil { + return nil + } + out := new(CassandraTableAutoscaleSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CassandraTableAutoscaleSettingsObservation) DeepCopyInto(out *CassandraTableAutoscaleSettingsObservation) { *out = *in @@ -1667,12 +2204,56 @@ func (in *CassandraTableAutoscaleSettingsParameters) DeepCopyInto(out *Cassandra } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraTableAutoscaleSettingsParameters. -func (in *CassandraTableAutoscaleSettingsParameters) DeepCopy() *CassandraTableAutoscaleSettingsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraTableAutoscaleSettingsParameters. +func (in *CassandraTableAutoscaleSettingsParameters) DeepCopy() *CassandraTableAutoscaleSettingsParameters { + if in == nil { + return nil + } + out := new(CassandraTableAutoscaleSettingsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CassandraTableInitParameters) DeepCopyInto(out *CassandraTableInitParameters) { + *out = *in + if in.AnalyticalStorageTTL != nil { + in, out := &in.AnalyticalStorageTTL, &out.AnalyticalStorageTTL + *out = new(float64) + **out = **in + } + if in.AutoscaleSettings != nil { + in, out := &in.AutoscaleSettings, &out.AutoscaleSettings + *out = make([]CassandraTableAutoscaleSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultTTL != nil { + in, out := &in.DefaultTTL, &out.DefaultTTL + *out = new(float64) + **out = **in + } + if in.Schema != nil { + in, out := &in.Schema, &out.Schema + *out = make([]SchemaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraTableInitParameters. +func (in *CassandraTableInitParameters) DeepCopy() *CassandraTableInitParameters { if in == nil { return nil } - out := new(CassandraTableAutoscaleSettingsParameters) + out := new(CassandraTableInitParameters) in.DeepCopyInto(out) return out } @@ -1827,6 +2408,7 @@ func (in *CassandraTableSpec) DeepCopyInto(out *CassandraTableSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CassandraTableSpec. @@ -1856,6 +2438,31 @@ func (in *CassandraTableStatus) DeepCopy() *CassandraTableStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterKeyInitParameters) DeepCopyInto(out *ClusterKeyInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.OrderBy != nil { + in, out := &in.OrderBy, &out.OrderBy + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterKeyInitParameters. +func (in *ClusterKeyInitParameters) DeepCopy() *ClusterKeyInitParameters { + if in == nil { + return nil + } + out := new(ClusterKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClusterKeyObservation) DeepCopyInto(out *ClusterKeyObservation) { *out = *in @@ -1906,6 +2513,31 @@ func (in *ClusterKeyParameters) DeepCopy() *ClusterKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ColumnInitParameters) DeepCopyInto(out *ColumnInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ColumnInitParameters. +func (in *ColumnInitParameters) DeepCopy() *ColumnInitParameters { + if in == nil { + return nil + } + out := new(ColumnInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ColumnObservation) DeepCopyInto(out *ColumnObservation) { *out = *in @@ -1956,6 +2588,31 @@ func (in *ColumnParameters) DeepCopy() *ColumnParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CompositeIndexIndexInitParameters) DeepCopyInto(out *CompositeIndexIndexInitParameters) { + *out = *in + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositeIndexIndexInitParameters. +func (in *CompositeIndexIndexInitParameters) DeepCopy() *CompositeIndexIndexInitParameters { + if in == nil { + return nil + } + out := new(CompositeIndexIndexInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CompositeIndexIndexObservation) DeepCopyInto(out *CompositeIndexIndexObservation) { *out = *in @@ -2006,6 +2663,28 @@ func (in *CompositeIndexIndexParameters) DeepCopy() *CompositeIndexIndexParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CompositeIndexInitParameters) DeepCopyInto(out *CompositeIndexInitParameters) { + *out = *in + if in.Index != nil { + in, out := &in.Index, &out.Index + *out = make([]IndexInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompositeIndexInitParameters. +func (in *CompositeIndexInitParameters) DeepCopy() *CompositeIndexInitParameters { + if in == nil { + return nil + } + out := new(CompositeIndexInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CompositeIndexObservation) DeepCopyInto(out *CompositeIndexObservation) { *out = *in @@ -2050,6 +2729,36 @@ func (in *CompositeIndexParameters) DeepCopy() *CompositeIndexParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConflictResolutionPolicyInitParameters) DeepCopyInto(out *ConflictResolutionPolicyInitParameters) { + *out = *in + if in.ConflictResolutionPath != nil { + in, out := &in.ConflictResolutionPath, &out.ConflictResolutionPath + *out = new(string) + **out = **in + } + if in.ConflictResolutionProcedure != nil { + in, out := &in.ConflictResolutionProcedure, &out.ConflictResolutionProcedure + *out = new(string) + **out = **in + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConflictResolutionPolicyInitParameters. +func (in *ConflictResolutionPolicyInitParameters) DeepCopy() *ConflictResolutionPolicyInitParameters { + if in == nil { + return nil + } + out := new(ConflictResolutionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConflictResolutionPolicyObservation) DeepCopyInto(out *ConflictResolutionPolicyObservation) { *out = *in @@ -2110,6 +2819,36 @@ func (in *ConflictResolutionPolicyParameters) DeepCopy() *ConflictResolutionPoli return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConsistencyPolicyInitParameters) DeepCopyInto(out *ConsistencyPolicyInitParameters) { + *out = *in + if in.ConsistencyLevel != nil { + in, out := &in.ConsistencyLevel, &out.ConsistencyLevel + *out = new(string) + **out = **in + } + if in.MaxIntervalInSeconds != nil { + in, out := &in.MaxIntervalInSeconds, &out.MaxIntervalInSeconds + *out = new(float64) + **out = **in + } + if in.MaxStalenessPrefix != nil { + in, out := &in.MaxStalenessPrefix, &out.MaxStalenessPrefix + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConsistencyPolicyInitParameters. +func (in *ConsistencyPolicyInitParameters) DeepCopy() *ConsistencyPolicyInitParameters { + if in == nil { + return nil + } + out := new(ConsistencyPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConsistencyPolicyObservation) DeepCopyInto(out *ConsistencyPolicyObservation) { *out = *in @@ -2170,6 +2909,70 @@ func (in *ConsistencyPolicyParameters) DeepCopy() *ConsistencyPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CorsRuleInitParameters) DeepCopyInto(out *CorsRuleInitParameters) { + *out = *in + if in.AllowedHeaders != nil { + in, out := &in.AllowedHeaders, &out.AllowedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedMethods != nil { + in, out := &in.AllowedMethods, &out.AllowedMethods + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ExposedHeaders != nil { + in, out := &in.ExposedHeaders, &out.ExposedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAgeInSeconds != nil { + in, out := &in.MaxAgeInSeconds, &out.MaxAgeInSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorsRuleInitParameters. +func (in *CorsRuleInitParameters) DeepCopy() *CorsRuleInitParameters { + if in == nil { + return nil + } + out := new(CorsRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CorsRuleObservation) DeepCopyInto(out *CorsRuleObservation) { *out = *in @@ -2298,6 +3101,37 @@ func (in *CorsRuleParameters) DeepCopy() *CorsRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DatabaseInitParameters) DeepCopyInto(out *DatabaseInitParameters) { + *out = *in + if in.CollectionNames != nil { + in, out := &in.CollectionNames, &out.CollectionNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseInitParameters. +func (in *DatabaseInitParameters) DeepCopy() *DatabaseInitParameters { + if in == nil { + return nil + } + out := new(DatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DatabaseObservation) DeepCopyInto(out *DatabaseObservation) { *out = *in @@ -2360,6 +3194,26 @@ func (in *DatabaseParameters) DeepCopy() *DatabaseParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExcludedPathInitParameters) DeepCopyInto(out *ExcludedPathInitParameters) { + *out = *in + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExcludedPathInitParameters. +func (in *ExcludedPathInitParameters) DeepCopy() *ExcludedPathInitParameters { + if in == nil { + return nil + } + out := new(ExcludedPathInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExcludedPathObservation) DeepCopyInto(out *ExcludedPathObservation) { *out = *in @@ -2375,27 +3229,57 @@ func (in *ExcludedPathObservation) DeepCopy() *ExcludedPathObservation { if in == nil { return nil } - out := new(ExcludedPathObservation) + out := new(ExcludedPathObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExcludedPathParameters) DeepCopyInto(out *ExcludedPathParameters) { + *out = *in + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExcludedPathParameters. +func (in *ExcludedPathParameters) DeepCopy() *ExcludedPathParameters { + if in == nil { + return nil + } + out := new(ExcludedPathParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExcludedPathParameters) DeepCopyInto(out *ExcludedPathParameters) { +func (in *GeoLocationInitParameters) DeepCopyInto(out *GeoLocationInitParameters) { *out = *in - if in.Path != nil { - in, out := &in.Path, &out.Path + if in.FailoverPriority != nil { + in, out := &in.FailoverPriority, &out.FailoverPriority + *out = new(float64) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location *out = new(string) **out = **in } + if in.ZoneRedundant != nil { + in, out := &in.ZoneRedundant, &out.ZoneRedundant + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExcludedPathParameters. -func (in *ExcludedPathParameters) DeepCopy() *ExcludedPathParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoLocationInitParameters. +func (in *GeoLocationInitParameters) DeepCopy() *GeoLocationInitParameters { if in == nil { return nil } - out := new(ExcludedPathParameters) + out := new(GeoLocationInitParameters) in.DeepCopyInto(out) return out } @@ -2492,6 +3376,26 @@ func (in *GremlinDatabase) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GremlinDatabaseAutoscaleSettingsInitParameters) DeepCopyInto(out *GremlinDatabaseAutoscaleSettingsInitParameters) { + *out = *in + if in.MaxThroughput != nil { + in, out := &in.MaxThroughput, &out.MaxThroughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GremlinDatabaseAutoscaleSettingsInitParameters. +func (in *GremlinDatabaseAutoscaleSettingsInitParameters) DeepCopy() *GremlinDatabaseAutoscaleSettingsInitParameters { + if in == nil { + return nil + } + out := new(GremlinDatabaseAutoscaleSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GremlinDatabaseAutoscaleSettingsObservation) DeepCopyInto(out *GremlinDatabaseAutoscaleSettingsObservation) { *out = *in @@ -2532,6 +3436,33 @@ func (in *GremlinDatabaseAutoscaleSettingsParameters) DeepCopy() *GremlinDatabas return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GremlinDatabaseInitParameters) DeepCopyInto(out *GremlinDatabaseInitParameters) { + *out = *in + if in.AutoscaleSettings != nil { + in, out := &in.AutoscaleSettings, &out.AutoscaleSettings + *out = make([]GremlinDatabaseAutoscaleSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GremlinDatabaseInitParameters. +func (in *GremlinDatabaseInitParameters) DeepCopy() *GremlinDatabaseInitParameters { + if in == nil { + return nil + } + out := new(GremlinDatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GremlinDatabaseList) DeepCopyInto(out *GremlinDatabaseList) { *out = *in @@ -2668,6 +3599,7 @@ func (in *GremlinDatabaseSpec) DeepCopyInto(out *GremlinDatabaseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GremlinDatabaseSpec. @@ -2724,6 +3656,26 @@ func (in *GremlinGraph) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GremlinGraphAutoscaleSettingsInitParameters) DeepCopyInto(out *GremlinGraphAutoscaleSettingsInitParameters) { + *out = *in + if in.MaxThroughput != nil { + in, out := &in.MaxThroughput, &out.MaxThroughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GremlinGraphAutoscaleSettingsInitParameters. +func (in *GremlinGraphAutoscaleSettingsInitParameters) DeepCopy() *GremlinGraphAutoscaleSettingsInitParameters { + if in == nil { + return nil + } + out := new(GremlinGraphAutoscaleSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GremlinGraphAutoscaleSettingsObservation) DeepCopyInto(out *GremlinGraphAutoscaleSettingsObservation) { *out = *in @@ -2764,6 +3716,69 @@ func (in *GremlinGraphAutoscaleSettingsParameters) DeepCopy() *GremlinGraphAutos return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GremlinGraphInitParameters) DeepCopyInto(out *GremlinGraphInitParameters) { + *out = *in + if in.AutoscaleSettings != nil { + in, out := &in.AutoscaleSettings, &out.AutoscaleSettings + *out = make([]GremlinGraphAutoscaleSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConflictResolutionPolicy != nil { + in, out := &in.ConflictResolutionPolicy, &out.ConflictResolutionPolicy + *out = make([]ConflictResolutionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultTTL != nil { + in, out := &in.DefaultTTL, &out.DefaultTTL + *out = new(float64) + **out = **in + } + if in.IndexPolicy != nil { + in, out := &in.IndexPolicy, &out.IndexPolicy + *out = make([]IndexPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PartitionKeyPath != nil { + in, out := &in.PartitionKeyPath, &out.PartitionKeyPath + *out = new(string) + **out = **in + } + if in.PartitionKeyVersion != nil { + in, out := &in.PartitionKeyVersion, &out.PartitionKeyVersion + *out = new(float64) + **out = **in + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(float64) + **out = **in + } + if in.UniqueKey != nil { + in, out := &in.UniqueKey, &out.UniqueKey + *out = make([]UniqueKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GremlinGraphInitParameters. +func (in *GremlinGraphInitParameters) DeepCopy() *GremlinGraphInitParameters { + if in == nil { + return nil + } + out := new(GremlinGraphInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GremlinGraphList) DeepCopyInto(out *GremlinGraphList) { *out = *in @@ -2992,6 +4007,7 @@ func (in *GremlinGraphSpec) DeepCopyInto(out *GremlinGraphSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GremlinGraphSpec. @@ -3021,6 +4037,37 @@ func (in *GremlinGraphStatus) DeepCopy() *GremlinGraphStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -3093,6 +4140,26 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IncludedPathInitParameters) DeepCopyInto(out *IncludedPathInitParameters) { + *out = *in + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IncludedPathInitParameters. +func (in *IncludedPathInitParameters) DeepCopy() *IncludedPathInitParameters { + if in == nil { + return nil + } + out := new(IncludedPathInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IncludedPathObservation) DeepCopyInto(out *IncludedPathObservation) { *out = *in @@ -3133,6 +4200,31 @@ func (in *IncludedPathParameters) DeepCopy() *IncludedPathParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IndexInitParameters) DeepCopyInto(out *IndexInitParameters) { + *out = *in + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IndexInitParameters. +func (in *IndexInitParameters) DeepCopy() *IndexInitParameters { + if in == nil { + return nil + } + out := new(IndexInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IndexObservation) DeepCopyInto(out *IndexObservation) { *out = *in @@ -3146,39 +4238,100 @@ func (in *IndexObservation) DeepCopyInto(out *IndexObservation) { *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IndexObservation. -func (in *IndexObservation) DeepCopy() *IndexObservation { - if in == nil { - return nil +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IndexObservation. +func (in *IndexObservation) DeepCopy() *IndexObservation { + if in == nil { + return nil + } + out := new(IndexObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IndexParameters) DeepCopyInto(out *IndexParameters) { + *out = *in + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IndexParameters. +func (in *IndexParameters) DeepCopy() *IndexParameters { + if in == nil { + return nil + } + out := new(IndexParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IndexPolicyInitParameters) DeepCopyInto(out *IndexPolicyInitParameters) { + *out = *in + if in.Automatic != nil { + in, out := &in.Automatic, &out.Automatic + *out = new(bool) + **out = **in + } + if in.CompositeIndex != nil { + in, out := &in.CompositeIndex, &out.CompositeIndex + *out = make([]CompositeIndexInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExcludedPaths != nil { + in, out := &in.ExcludedPaths, &out.ExcludedPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IncludedPaths != nil { + in, out := &in.IncludedPaths, &out.IncludedPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } - out := new(IndexObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IndexParameters) DeepCopyInto(out *IndexParameters) { - *out = *in - if in.Order != nil { - in, out := &in.Order, &out.Order + if in.IndexingMode != nil { + in, out := &in.IndexingMode, &out.IndexingMode *out = new(string) **out = **in } - if in.Path != nil { - in, out := &in.Path, &out.Path - *out = new(string) - **out = **in + if in.SpatialIndex != nil { + in, out := &in.SpatialIndex, &out.SpatialIndex + *out = make([]SpatialIndexInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IndexParameters. -func (in *IndexParameters) DeepCopy() *IndexParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IndexPolicyInitParameters. +func (in *IndexPolicyInitParameters) DeepCopy() *IndexPolicyInitParameters { if in == nil { return nil } - out := new(IndexParameters) + out := new(IndexPolicyInitParameters) in.DeepCopyInto(out) return out } @@ -3305,6 +4458,28 @@ func (in *IndexPolicyParameters) DeepCopy() *IndexPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IndexingPolicyCompositeIndexInitParameters) DeepCopyInto(out *IndexingPolicyCompositeIndexInitParameters) { + *out = *in + if in.Index != nil { + in, out := &in.Index, &out.Index + *out = make([]CompositeIndexIndexInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IndexingPolicyCompositeIndexInitParameters. +func (in *IndexingPolicyCompositeIndexInitParameters) DeepCopy() *IndexingPolicyCompositeIndexInitParameters { + if in == nil { + return nil + } + out := new(IndexingPolicyCompositeIndexInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IndexingPolicyCompositeIndexObservation) DeepCopyInto(out *IndexingPolicyCompositeIndexObservation) { *out = *in @@ -3349,6 +4524,54 @@ func (in *IndexingPolicyCompositeIndexParameters) DeepCopy() *IndexingPolicyComp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IndexingPolicyInitParameters) DeepCopyInto(out *IndexingPolicyInitParameters) { + *out = *in + if in.CompositeIndex != nil { + in, out := &in.CompositeIndex, &out.CompositeIndex + *out = make([]IndexingPolicyCompositeIndexInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExcludedPath != nil { + in, out := &in.ExcludedPath, &out.ExcludedPath + *out = make([]ExcludedPathInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IncludedPath != nil { + in, out := &in.IncludedPath, &out.IncludedPath + *out = make([]IncludedPathInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IndexingMode != nil { + in, out := &in.IndexingMode, &out.IndexingMode + *out = new(string) + **out = **in + } + if in.SpatialIndex != nil { + in, out := &in.SpatialIndex, &out.SpatialIndex + *out = make([]IndexingPolicySpatialIndexInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IndexingPolicyInitParameters. +func (in *IndexingPolicyInitParameters) DeepCopy() *IndexingPolicyInitParameters { + if in == nil { + return nil + } + out := new(IndexingPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IndexingPolicyObservation) DeepCopyInto(out *IndexingPolicyObservation) { *out = *in @@ -3445,6 +4668,26 @@ func (in *IndexingPolicyParameters) DeepCopy() *IndexingPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IndexingPolicySpatialIndexInitParameters) DeepCopyInto(out *IndexingPolicySpatialIndexInitParameters) { + *out = *in + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IndexingPolicySpatialIndexInitParameters. +func (in *IndexingPolicySpatialIndexInitParameters) DeepCopy() *IndexingPolicySpatialIndexInitParameters { + if in == nil { + return nil + } + out := new(IndexingPolicySpatialIndexInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IndexingPolicySpatialIndexObservation) DeepCopyInto(out *IndexingPolicySpatialIndexObservation) { *out = *in @@ -3523,6 +4766,26 @@ func (in *MongoCollection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MongoCollectionAutoscaleSettingsInitParameters) DeepCopyInto(out *MongoCollectionAutoscaleSettingsInitParameters) { + *out = *in + if in.MaxThroughput != nil { + in, out := &in.MaxThroughput, &out.MaxThroughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MongoCollectionAutoscaleSettingsInitParameters. +func (in *MongoCollectionAutoscaleSettingsInitParameters) DeepCopy() *MongoCollectionAutoscaleSettingsInitParameters { + if in == nil { + return nil + } + out := new(MongoCollectionAutoscaleSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MongoCollectionAutoscaleSettingsObservation) DeepCopyInto(out *MongoCollectionAutoscaleSettingsObservation) { *out = *in @@ -3563,6 +4826,37 @@ func (in *MongoCollectionAutoscaleSettingsParameters) DeepCopy() *MongoCollectio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MongoCollectionIndexInitParameters) DeepCopyInto(out *MongoCollectionIndexInitParameters) { + *out = *in + if in.Keys != nil { + in, out := &in.Keys, &out.Keys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Unique != nil { + in, out := &in.Unique, &out.Unique + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MongoCollectionIndexInitParameters. +func (in *MongoCollectionIndexInitParameters) DeepCopy() *MongoCollectionIndexInitParameters { + if in == nil { + return nil + } + out := new(MongoCollectionIndexInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MongoCollectionIndexObservation) DeepCopyInto(out *MongoCollectionIndexObservation) { *out = *in @@ -3625,6 +4919,55 @@ func (in *MongoCollectionIndexParameters) DeepCopy() *MongoCollectionIndexParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MongoCollectionInitParameters) DeepCopyInto(out *MongoCollectionInitParameters) { + *out = *in + if in.AnalyticalStorageTTL != nil { + in, out := &in.AnalyticalStorageTTL, &out.AnalyticalStorageTTL + *out = new(float64) + **out = **in + } + if in.AutoscaleSettings != nil { + in, out := &in.AutoscaleSettings, &out.AutoscaleSettings + *out = make([]MongoCollectionAutoscaleSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultTTLSeconds != nil { + in, out := &in.DefaultTTLSeconds, &out.DefaultTTLSeconds + *out = new(float64) + **out = **in + } + if in.Index != nil { + in, out := &in.Index, &out.Index + *out = make([]MongoCollectionIndexInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ShardKey != nil { + in, out := &in.ShardKey, &out.ShardKey + *out = new(string) + **out = **in + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MongoCollectionInitParameters. +func (in *MongoCollectionInitParameters) DeepCopy() *MongoCollectionInitParameters { + if in == nil { + return nil + } + out := new(MongoCollectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MongoCollectionList) DeepCopyInto(out *MongoCollectionList) { *out = *in @@ -3832,6 +5175,7 @@ func (in *MongoCollectionSpec) DeepCopyInto(out *MongoCollectionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MongoCollectionSpec. @@ -3888,6 +5232,26 @@ func (in *MongoDatabase) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MongoDatabaseAutoscaleSettingsInitParameters) DeepCopyInto(out *MongoDatabaseAutoscaleSettingsInitParameters) { + *out = *in + if in.MaxThroughput != nil { + in, out := &in.MaxThroughput, &out.MaxThroughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MongoDatabaseAutoscaleSettingsInitParameters. +func (in *MongoDatabaseAutoscaleSettingsInitParameters) DeepCopy() *MongoDatabaseAutoscaleSettingsInitParameters { + if in == nil { + return nil + } + out := new(MongoDatabaseAutoscaleSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MongoDatabaseAutoscaleSettingsObservation) DeepCopyInto(out *MongoDatabaseAutoscaleSettingsObservation) { *out = *in @@ -3928,6 +5292,33 @@ func (in *MongoDatabaseAutoscaleSettingsParameters) DeepCopy() *MongoDatabaseAut return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MongoDatabaseInitParameters) DeepCopyInto(out *MongoDatabaseInitParameters) { + *out = *in + if in.AutoscaleSettings != nil { + in, out := &in.AutoscaleSettings, &out.AutoscaleSettings + *out = make([]MongoDatabaseAutoscaleSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MongoDatabaseInitParameters. +func (in *MongoDatabaseInitParameters) DeepCopy() *MongoDatabaseInitParameters { + if in == nil { + return nil + } + out := new(MongoDatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MongoDatabaseList) DeepCopyInto(out *MongoDatabaseList) { *out = *in @@ -4064,6 +5455,7 @@ func (in *MongoDatabaseSpec) DeepCopyInto(out *MongoDatabaseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MongoDatabaseSpec. @@ -4083,12 +5475,32 @@ func (in *MongoDatabaseStatus) DeepCopyInto(out *MongoDatabaseStatus) { in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MongoDatabaseStatus. -func (in *MongoDatabaseStatus) DeepCopy() *MongoDatabaseStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MongoDatabaseStatus. +func (in *MongoDatabaseStatus) DeepCopy() *MongoDatabaseStatus { + if in == nil { + return nil + } + out := new(MongoDatabaseStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PartitionKeyInitParameters) DeepCopyInto(out *PartitionKeyInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PartitionKeyInitParameters. +func (in *PartitionKeyInitParameters) DeepCopy() *PartitionKeyInitParameters { if in == nil { return nil } - out := new(MongoDatabaseStatus) + out := new(PartitionKeyInitParameters) in.DeepCopyInto(out) return out } @@ -4133,6 +5545,32 @@ func (in *PartitionKeyParameters) DeepCopy() *PartitionKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PermissionsInitParameters) DeepCopyInto(out *PermissionsInitParameters) { + *out = *in + if in.DataActions != nil { + in, out := &in.DataActions, &out.DataActions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionsInitParameters. +func (in *PermissionsInitParameters) DeepCopy() *PermissionsInitParameters { + if in == nil { + return nil + } + out := new(PermissionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PermissionsObservation) DeepCopyInto(out *PermissionsObservation) { *out = *in @@ -4185,6 +5623,33 @@ func (in *PermissionsParameters) DeepCopy() *PermissionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RestoreInitParameters) DeepCopyInto(out *RestoreInitParameters) { + *out = *in + if in.Database != nil { + in, out := &in.Database, &out.Database + *out = make([]DatabaseInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RestoreTimestampInUtc != nil { + in, out := &in.RestoreTimestampInUtc, &out.RestoreTimestampInUtc + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreInitParameters. +func (in *RestoreInitParameters) DeepCopy() *RestoreInitParameters { + if in == nil { + return nil + } + out := new(RestoreInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RestoreObservation) DeepCopyInto(out *RestoreObservation) { *out = *in @@ -4286,6 +5751,26 @@ func (in *SQLContainer) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLContainerAutoscaleSettingsInitParameters) DeepCopyInto(out *SQLContainerAutoscaleSettingsInitParameters) { + *out = *in + if in.MaxThroughput != nil { + in, out := &in.MaxThroughput, &out.MaxThroughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLContainerAutoscaleSettingsInitParameters. +func (in *SQLContainerAutoscaleSettingsInitParameters) DeepCopy() *SQLContainerAutoscaleSettingsInitParameters { + if in == nil { + return nil + } + out := new(SQLContainerAutoscaleSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLContainerAutoscaleSettingsObservation) DeepCopyInto(out *SQLContainerAutoscaleSettingsObservation) { *out = *in @@ -4326,6 +5811,36 @@ func (in *SQLContainerAutoscaleSettingsParameters) DeepCopy() *SQLContainerAutos return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLContainerConflictResolutionPolicyInitParameters) DeepCopyInto(out *SQLContainerConflictResolutionPolicyInitParameters) { + *out = *in + if in.ConflictResolutionPath != nil { + in, out := &in.ConflictResolutionPath, &out.ConflictResolutionPath + *out = new(string) + **out = **in + } + if in.ConflictResolutionProcedure != nil { + in, out := &in.ConflictResolutionProcedure, &out.ConflictResolutionProcedure + *out = new(string) + **out = **in + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLContainerConflictResolutionPolicyInitParameters. +func (in *SQLContainerConflictResolutionPolicyInitParameters) DeepCopy() *SQLContainerConflictResolutionPolicyInitParameters { + if in == nil { + return nil + } + out := new(SQLContainerConflictResolutionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLContainerConflictResolutionPolicyObservation) DeepCopyInto(out *SQLContainerConflictResolutionPolicyObservation) { *out = *in @@ -4386,6 +5901,74 @@ func (in *SQLContainerConflictResolutionPolicyParameters) DeepCopy() *SQLContain return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLContainerInitParameters) DeepCopyInto(out *SQLContainerInitParameters) { + *out = *in + if in.AnalyticalStorageTTL != nil { + in, out := &in.AnalyticalStorageTTL, &out.AnalyticalStorageTTL + *out = new(float64) + **out = **in + } + if in.AutoscaleSettings != nil { + in, out := &in.AutoscaleSettings, &out.AutoscaleSettings + *out = make([]SQLContainerAutoscaleSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConflictResolutionPolicy != nil { + in, out := &in.ConflictResolutionPolicy, &out.ConflictResolutionPolicy + *out = make([]SQLContainerConflictResolutionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultTTL != nil { + in, out := &in.DefaultTTL, &out.DefaultTTL + *out = new(float64) + **out = **in + } + if in.IndexingPolicy != nil { + in, out := &in.IndexingPolicy, &out.IndexingPolicy + *out = make([]IndexingPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PartitionKeyPath != nil { + in, out := &in.PartitionKeyPath, &out.PartitionKeyPath + *out = new(string) + **out = **in + } + if in.PartitionKeyVersion != nil { + in, out := &in.PartitionKeyVersion, &out.PartitionKeyVersion + *out = new(float64) + **out = **in + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(float64) + **out = **in + } + if in.UniqueKey != nil { + in, out := &in.UniqueKey, &out.UniqueKey + *out = make([]SQLContainerUniqueKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLContainerInitParameters. +func (in *SQLContainerInitParameters) DeepCopy() *SQLContainerInitParameters { + if in == nil { + return nil + } + out := new(SQLContainerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLContainerList) DeepCopyInto(out *SQLContainerList) { *out = *in @@ -4624,6 +6207,7 @@ func (in *SQLContainerSpec) DeepCopyInto(out *SQLContainerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLContainerSpec. @@ -4653,6 +6237,32 @@ func (in *SQLContainerStatus) DeepCopy() *SQLContainerStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLContainerUniqueKeyInitParameters) DeepCopyInto(out *SQLContainerUniqueKeyInitParameters) { + *out = *in + if in.Paths != nil { + in, out := &in.Paths, &out.Paths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLContainerUniqueKeyInitParameters. +func (in *SQLContainerUniqueKeyInitParameters) DeepCopy() *SQLContainerUniqueKeyInitParameters { + if in == nil { + return nil + } + out := new(SQLContainerUniqueKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLContainerUniqueKeyObservation) DeepCopyInto(out *SQLContainerUniqueKeyObservation) { *out = *in @@ -4732,6 +6342,26 @@ func (in *SQLDatabase) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLDatabaseAutoscaleSettingsInitParameters) DeepCopyInto(out *SQLDatabaseAutoscaleSettingsInitParameters) { + *out = *in + if in.MaxThroughput != nil { + in, out := &in.MaxThroughput, &out.MaxThroughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLDatabaseAutoscaleSettingsInitParameters. +func (in *SQLDatabaseAutoscaleSettingsInitParameters) DeepCopy() *SQLDatabaseAutoscaleSettingsInitParameters { + if in == nil { + return nil + } + out := new(SQLDatabaseAutoscaleSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLDatabaseAutoscaleSettingsObservation) DeepCopyInto(out *SQLDatabaseAutoscaleSettingsObservation) { *out = *in @@ -4772,6 +6402,33 @@ func (in *SQLDatabaseAutoscaleSettingsParameters) DeepCopy() *SQLDatabaseAutosca return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLDatabaseInitParameters) DeepCopyInto(out *SQLDatabaseInitParameters) { + *out = *in + if in.AutoscaleSettings != nil { + in, out := &in.AutoscaleSettings, &out.AutoscaleSettings + *out = make([]SQLDatabaseAutoscaleSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLDatabaseInitParameters. +func (in *SQLDatabaseInitParameters) DeepCopy() *SQLDatabaseInitParameters { + if in == nil { + return nil + } + out := new(SQLDatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLDatabaseList) DeepCopyInto(out *SQLDatabaseList) { *out = *in @@ -4908,6 +6565,7 @@ func (in *SQLDatabaseSpec) DeepCopyInto(out *SQLDatabaseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLDatabaseSpec. @@ -4964,6 +6622,31 @@ func (in *SQLDedicatedGateway) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLDedicatedGatewayInitParameters) DeepCopyInto(out *SQLDedicatedGatewayInitParameters) { + *out = *in + if in.InstanceCount != nil { + in, out := &in.InstanceCount, &out.InstanceCount + *out = new(float64) + **out = **in + } + if in.InstanceSize != nil { + in, out := &in.InstanceSize, &out.InstanceSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLDedicatedGatewayInitParameters. +func (in *SQLDedicatedGatewayInitParameters) DeepCopy() *SQLDedicatedGatewayInitParameters { + if in == nil { + return nil + } + out := new(SQLDedicatedGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLDedicatedGatewayList) DeepCopyInto(out *SQLDedicatedGatewayList) { *out = *in @@ -5076,6 +6759,7 @@ func (in *SQLDedicatedGatewaySpec) DeepCopyInto(out *SQLDedicatedGatewaySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLDedicatedGatewaySpec. @@ -5114,24 +6798,44 @@ func (in *SQLFunction) DeepCopyInto(out *SQLFunction) { in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLFunction. -func (in *SQLFunction) DeepCopy() *SQLFunction { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLFunction. +func (in *SQLFunction) DeepCopy() *SQLFunction { + if in == nil { + return nil + } + out := new(SQLFunction) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SQLFunction) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLFunctionInitParameters) DeepCopyInto(out *SQLFunctionInitParameters) { + *out = *in + if in.Body != nil { + in, out := &in.Body, &out.Body + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLFunctionInitParameters. +func (in *SQLFunctionInitParameters) DeepCopy() *SQLFunctionInitParameters { if in == nil { return nil } - out := new(SQLFunction) + out := new(SQLFunctionInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SQLFunction) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLFunctionList) DeepCopyInto(out *SQLFunctionList) { *out = *in @@ -5234,6 +6938,7 @@ func (in *SQLFunctionSpec) DeepCopyInto(out *SQLFunctionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLFunctionSpec. @@ -5290,6 +6995,31 @@ func (in *SQLRoleAssignment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLRoleAssignmentInitParameters) DeepCopyInto(out *SQLRoleAssignmentInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLRoleAssignmentInitParameters. +func (in *SQLRoleAssignmentInitParameters) DeepCopy() *SQLRoleAssignmentInitParameters { + if in == nil { + return nil + } + out := new(SQLRoleAssignmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLRoleAssignmentList) DeepCopyInto(out *SQLRoleAssignmentList) { *out = *in @@ -5462,6 +7192,7 @@ func (in *SQLRoleAssignmentSpec) DeepCopyInto(out *SQLRoleAssignmentSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLRoleAssignmentSpec. @@ -5518,6 +7249,54 @@ func (in *SQLRoleDefinition) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLRoleDefinitionInitParameters) DeepCopyInto(out *SQLRoleDefinitionInitParameters) { + *out = *in + if in.AssignableScopes != nil { + in, out := &in.AssignableScopes, &out.AssignableScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Permissions != nil { + in, out := &in.Permissions, &out.Permissions + *out = make([]PermissionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RoleDefinitionID != nil { + in, out := &in.RoleDefinitionID, &out.RoleDefinitionID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLRoleDefinitionInitParameters. +func (in *SQLRoleDefinitionInitParameters) DeepCopy() *SQLRoleDefinitionInitParameters { + if in == nil { + return nil + } + out := new(SQLRoleDefinitionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLRoleDefinitionList) DeepCopyInto(out *SQLRoleDefinitionList) { *out = *in @@ -5696,6 +7475,7 @@ func (in *SQLRoleDefinitionSpec) DeepCopyInto(out *SQLRoleDefinitionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLRoleDefinitionSpec. @@ -5752,6 +7532,26 @@ func (in *SQLStoredProcedure) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLStoredProcedureInitParameters) DeepCopyInto(out *SQLStoredProcedureInitParameters) { + *out = *in + if in.Body != nil { + in, out := &in.Body, &out.Body + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLStoredProcedureInitParameters. +func (in *SQLStoredProcedureInitParameters) DeepCopy() *SQLStoredProcedureInitParameters { + if in == nil { + return nil + } + out := new(SQLStoredProcedureInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLStoredProcedureList) DeepCopyInto(out *SQLStoredProcedureList) { *out = *in @@ -5914,6 +7714,7 @@ func (in *SQLStoredProcedureSpec) DeepCopyInto(out *SQLStoredProcedureSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLStoredProcedureSpec. @@ -5970,6 +7771,36 @@ func (in *SQLTrigger) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLTriggerInitParameters) DeepCopyInto(out *SQLTriggerInitParameters) { + *out = *in + if in.Body != nil { + in, out := &in.Body, &out.Body + *out = new(string) + **out = **in + } + if in.Operation != nil { + in, out := &in.Operation, &out.Operation + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLTriggerInitParameters. +func (in *SQLTriggerInitParameters) DeepCopy() *SQLTriggerInitParameters { + if in == nil { + return nil + } + out := new(SQLTriggerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLTriggerList) DeepCopyInto(out *SQLTriggerList) { *out = *in @@ -6092,6 +7923,7 @@ func (in *SQLTriggerSpec) DeepCopyInto(out *SQLTriggerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLTriggerSpec. @@ -6121,6 +7953,42 @@ func (in *SQLTriggerStatus) DeepCopy() *SQLTriggerStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SchemaInitParameters) DeepCopyInto(out *SchemaInitParameters) { + *out = *in + if in.ClusterKey != nil { + in, out := &in.ClusterKey, &out.ClusterKey + *out = make([]ClusterKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Column != nil { + in, out := &in.Column, &out.Column + *out = make([]ColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PartitionKey != nil { + in, out := &in.PartitionKey, &out.PartitionKey + *out = make([]PartitionKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchemaInitParameters. +func (in *SchemaInitParameters) DeepCopy() *SchemaInitParameters { + if in == nil { + return nil + } + out := new(SchemaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SchemaObservation) DeepCopyInto(out *SchemaObservation) { *out = *in @@ -6193,6 +8061,26 @@ func (in *SchemaParameters) DeepCopy() *SchemaParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpatialIndexInitParameters) DeepCopyInto(out *SpatialIndexInitParameters) { + *out = *in + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpatialIndexInitParameters. +func (in *SpatialIndexInitParameters) DeepCopy() *SpatialIndexInitParameters { + if in == nil { + return nil + } + out := new(SpatialIndexInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpatialIndexObservation) DeepCopyInto(out *SpatialIndexObservation) { *out = *in @@ -6244,6 +8132,21 @@ func (in *SpatialIndexParameters) DeepCopy() *SpatialIndexParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SystemIndexesInitParameters) DeepCopyInto(out *SystemIndexesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemIndexesInitParameters. +func (in *SystemIndexesInitParameters) DeepCopy() *SystemIndexesInitParameters { + if in == nil { + return nil + } + out := new(SystemIndexesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SystemIndexesObservation) DeepCopyInto(out *SystemIndexesObservation) { *out = *in @@ -6317,6 +8220,26 @@ func (in *Table) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TableAutoscaleSettingsInitParameters) DeepCopyInto(out *TableAutoscaleSettingsInitParameters) { + *out = *in + if in.MaxThroughput != nil { + in, out := &in.MaxThroughput, &out.MaxThroughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TableAutoscaleSettingsInitParameters. +func (in *TableAutoscaleSettingsInitParameters) DeepCopy() *TableAutoscaleSettingsInitParameters { + if in == nil { + return nil + } + out := new(TableAutoscaleSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TableAutoscaleSettingsObservation) DeepCopyInto(out *TableAutoscaleSettingsObservation) { *out = *in @@ -6357,6 +8280,33 @@ func (in *TableAutoscaleSettingsParameters) DeepCopy() *TableAutoscaleSettingsPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TableInitParameters) DeepCopyInto(out *TableInitParameters) { + *out = *in + if in.AutoscaleSettings != nil { + in, out := &in.AutoscaleSettings, &out.AutoscaleSettings + *out = make([]TableAutoscaleSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TableInitParameters. +func (in *TableInitParameters) DeepCopy() *TableInitParameters { + if in == nil { + return nil + } + out := new(TableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TableList) DeepCopyInto(out *TableList) { *out = *in @@ -6493,6 +8443,7 @@ func (in *TableSpec) DeepCopyInto(out *TableSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TableSpec. @@ -6522,6 +8473,32 @@ func (in *TableStatus) DeepCopy() *TableStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UniqueKeyInitParameters) DeepCopyInto(out *UniqueKeyInitParameters) { + *out = *in + if in.Paths != nil { + in, out := &in.Paths, &out.Paths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UniqueKeyInitParameters. +func (in *UniqueKeyInitParameters) DeepCopy() *UniqueKeyInitParameters { + if in == nil { + return nil + } + out := new(UniqueKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *UniqueKeyObservation) DeepCopyInto(out *UniqueKeyObservation) { *out = *in @@ -6574,6 +8551,31 @@ func (in *UniqueKeyParameters) DeepCopy() *UniqueKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkRuleInitParameters) DeepCopyInto(out *VirtualNetworkRuleInitParameters) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.IgnoreMissingVnetServiceEndpoint != nil { + in, out := &in.IgnoreMissingVnetServiceEndpoint, &out.IgnoreMissingVnetServiceEndpoint + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkRuleInitParameters. +func (in *VirtualNetworkRuleInitParameters) DeepCopy() *VirtualNetworkRuleInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkRuleObservation) DeepCopyInto(out *VirtualNetworkRuleObservation) { *out = *in diff --git a/apis/cosmosdb/v1beta1/zz_generated.managed.go b/apis/cosmosdb/v1beta1/zz_generated.managed.go index b58c3c1fa..e4563d0dc 100644 --- a/apis/cosmosdb/v1beta1/zz_generated.managed.go +++ b/apis/cosmosdb/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Account) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Account. -func (mg *Account) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Account. +func (mg *Account) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Account. @@ -55,9 +55,9 @@ func (mg *Account) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Account. -func (mg *Account) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Account. +func (mg *Account) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Account. @@ -93,9 +93,9 @@ func (mg *CassandraCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CassandraCluster. -func (mg *CassandraCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CassandraCluster. +func (mg *CassandraCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CassandraCluster. @@ -131,9 +131,9 @@ func (mg *CassandraCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CassandraCluster. -func (mg *CassandraCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CassandraCluster. +func (mg *CassandraCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CassandraCluster. @@ -169,9 +169,9 @@ func (mg *CassandraDatacenter) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CassandraDatacenter. -func (mg *CassandraDatacenter) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CassandraDatacenter. +func (mg *CassandraDatacenter) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CassandraDatacenter. @@ -207,9 +207,9 @@ func (mg *CassandraDatacenter) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CassandraDatacenter. -func (mg *CassandraDatacenter) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CassandraDatacenter. +func (mg *CassandraDatacenter) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CassandraDatacenter. @@ -245,9 +245,9 @@ func (mg *CassandraKeySpace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CassandraKeySpace. -func (mg *CassandraKeySpace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CassandraKeySpace. +func (mg *CassandraKeySpace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CassandraKeySpace. @@ -283,9 +283,9 @@ func (mg *CassandraKeySpace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CassandraKeySpace. -func (mg *CassandraKeySpace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CassandraKeySpace. +func (mg *CassandraKeySpace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CassandraKeySpace. @@ -321,9 +321,9 @@ func (mg *CassandraTable) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CassandraTable. -func (mg *CassandraTable) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CassandraTable. +func (mg *CassandraTable) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CassandraTable. @@ -359,9 +359,9 @@ func (mg *CassandraTable) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CassandraTable. -func (mg *CassandraTable) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CassandraTable. +func (mg *CassandraTable) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CassandraTable. @@ -397,9 +397,9 @@ func (mg *GremlinDatabase) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this GremlinDatabase. -func (mg *GremlinDatabase) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this GremlinDatabase. +func (mg *GremlinDatabase) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this GremlinDatabase. @@ -435,9 +435,9 @@ func (mg *GremlinDatabase) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this GremlinDatabase. -func (mg *GremlinDatabase) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this GremlinDatabase. +func (mg *GremlinDatabase) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this GremlinDatabase. @@ -473,9 +473,9 @@ func (mg *GremlinGraph) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this GremlinGraph. -func (mg *GremlinGraph) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this GremlinGraph. +func (mg *GremlinGraph) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this GremlinGraph. @@ -511,9 +511,9 @@ func (mg *GremlinGraph) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this GremlinGraph. -func (mg *GremlinGraph) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this GremlinGraph. +func (mg *GremlinGraph) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this GremlinGraph. @@ -549,9 +549,9 @@ func (mg *MongoCollection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MongoCollection. -func (mg *MongoCollection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MongoCollection. +func (mg *MongoCollection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MongoCollection. @@ -587,9 +587,9 @@ func (mg *MongoCollection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MongoCollection. -func (mg *MongoCollection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MongoCollection. +func (mg *MongoCollection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MongoCollection. @@ -625,9 +625,9 @@ func (mg *MongoDatabase) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MongoDatabase. -func (mg *MongoDatabase) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MongoDatabase. +func (mg *MongoDatabase) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MongoDatabase. @@ -663,9 +663,9 @@ func (mg *MongoDatabase) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MongoDatabase. -func (mg *MongoDatabase) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MongoDatabase. +func (mg *MongoDatabase) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MongoDatabase. @@ -701,9 +701,9 @@ func (mg *SQLContainer) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLContainer. -func (mg *SQLContainer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLContainer. +func (mg *SQLContainer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLContainer. @@ -739,9 +739,9 @@ func (mg *SQLContainer) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLContainer. -func (mg *SQLContainer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLContainer. +func (mg *SQLContainer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLContainer. @@ -777,9 +777,9 @@ func (mg *SQLDatabase) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLDatabase. -func (mg *SQLDatabase) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLDatabase. +func (mg *SQLDatabase) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLDatabase. @@ -815,9 +815,9 @@ func (mg *SQLDatabase) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLDatabase. -func (mg *SQLDatabase) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLDatabase. +func (mg *SQLDatabase) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLDatabase. @@ -853,9 +853,9 @@ func (mg *SQLDedicatedGateway) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLDedicatedGateway. -func (mg *SQLDedicatedGateway) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLDedicatedGateway. +func (mg *SQLDedicatedGateway) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLDedicatedGateway. @@ -891,9 +891,9 @@ func (mg *SQLDedicatedGateway) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLDedicatedGateway. -func (mg *SQLDedicatedGateway) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLDedicatedGateway. +func (mg *SQLDedicatedGateway) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLDedicatedGateway. @@ -929,9 +929,9 @@ func (mg *SQLFunction) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLFunction. -func (mg *SQLFunction) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLFunction. +func (mg *SQLFunction) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLFunction. @@ -967,9 +967,9 @@ func (mg *SQLFunction) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLFunction. -func (mg *SQLFunction) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLFunction. +func (mg *SQLFunction) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLFunction. @@ -1005,9 +1005,9 @@ func (mg *SQLRoleAssignment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLRoleAssignment. -func (mg *SQLRoleAssignment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLRoleAssignment. +func (mg *SQLRoleAssignment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLRoleAssignment. @@ -1043,9 +1043,9 @@ func (mg *SQLRoleAssignment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLRoleAssignment. -func (mg *SQLRoleAssignment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLRoleAssignment. +func (mg *SQLRoleAssignment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLRoleAssignment. @@ -1081,9 +1081,9 @@ func (mg *SQLRoleDefinition) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLRoleDefinition. -func (mg *SQLRoleDefinition) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLRoleDefinition. +func (mg *SQLRoleDefinition) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLRoleDefinition. @@ -1119,9 +1119,9 @@ func (mg *SQLRoleDefinition) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLRoleDefinition. -func (mg *SQLRoleDefinition) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLRoleDefinition. +func (mg *SQLRoleDefinition) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLRoleDefinition. @@ -1157,9 +1157,9 @@ func (mg *SQLStoredProcedure) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLStoredProcedure. -func (mg *SQLStoredProcedure) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLStoredProcedure. +func (mg *SQLStoredProcedure) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLStoredProcedure. @@ -1195,9 +1195,9 @@ func (mg *SQLStoredProcedure) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLStoredProcedure. -func (mg *SQLStoredProcedure) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLStoredProcedure. +func (mg *SQLStoredProcedure) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLStoredProcedure. @@ -1233,9 +1233,9 @@ func (mg *SQLTrigger) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLTrigger. -func (mg *SQLTrigger) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLTrigger. +func (mg *SQLTrigger) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLTrigger. @@ -1271,9 +1271,9 @@ func (mg *SQLTrigger) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLTrigger. -func (mg *SQLTrigger) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLTrigger. +func (mg *SQLTrigger) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLTrigger. @@ -1309,9 +1309,9 @@ func (mg *Table) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Table. -func (mg *Table) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Table. +func (mg *Table) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Table. @@ -1347,9 +1347,9 @@ func (mg *Table) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Table. -func (mg *Table) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Table. +func (mg *Table) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Table. diff --git a/apis/cosmosdb/v1beta1/zz_generated_terraformed.go b/apis/cosmosdb/v1beta1/zz_generated_terraformed.go index 34e40a5af..f77b1bac0 100755 --- a/apis/cosmosdb/v1beta1/zz_generated_terraformed.go +++ b/apis/cosmosdb/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Account) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Account +func (tr *Account) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Account using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Account) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *CassandraCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CassandraCluster +func (tr *CassandraCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CassandraCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CassandraCluster) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *CassandraDatacenter) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CassandraDatacenter +func (tr *CassandraDatacenter) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CassandraDatacenter using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CassandraDatacenter) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *CassandraKeySpace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CassandraKeySpace +func (tr *CassandraKeySpace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CassandraKeySpace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CassandraKeySpace) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *CassandraTable) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CassandraTable +func (tr *CassandraTable) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CassandraTable using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CassandraTable) LateInitialize(attrs []byte) (bool, error) { @@ -440,6 +490,16 @@ func (tr *GremlinDatabase) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this GremlinDatabase +func (tr *GremlinDatabase) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this GremlinDatabase using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *GremlinDatabase) LateInitialize(attrs []byte) (bool, error) { @@ -514,6 +574,16 @@ func (tr *GremlinGraph) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this GremlinGraph +func (tr *GremlinGraph) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this GremlinGraph using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *GremlinGraph) LateInitialize(attrs []byte) (bool, error) { @@ -588,6 +658,16 @@ func (tr *MongoCollection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MongoCollection +func (tr *MongoCollection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MongoCollection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MongoCollection) LateInitialize(attrs []byte) (bool, error) { @@ -662,6 +742,16 @@ func (tr *MongoDatabase) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MongoDatabase +func (tr *MongoDatabase) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MongoDatabase using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MongoDatabase) LateInitialize(attrs []byte) (bool, error) { @@ -736,6 +826,16 @@ func (tr *SQLContainer) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLContainer +func (tr *SQLContainer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLContainer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLContainer) LateInitialize(attrs []byte) (bool, error) { @@ -810,6 +910,16 @@ func (tr *SQLDatabase) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLDatabase +func (tr *SQLDatabase) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLDatabase using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLDatabase) LateInitialize(attrs []byte) (bool, error) { @@ -884,6 +994,16 @@ func (tr *SQLDedicatedGateway) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLDedicatedGateway +func (tr *SQLDedicatedGateway) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLDedicatedGateway using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLDedicatedGateway) LateInitialize(attrs []byte) (bool, error) { @@ -958,6 +1078,16 @@ func (tr *SQLFunction) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLFunction +func (tr *SQLFunction) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLFunction using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLFunction) LateInitialize(attrs []byte) (bool, error) { @@ -1032,6 +1162,16 @@ func (tr *SQLRoleAssignment) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLRoleAssignment +func (tr *SQLRoleAssignment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLRoleAssignment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLRoleAssignment) LateInitialize(attrs []byte) (bool, error) { @@ -1106,6 +1246,16 @@ func (tr *SQLRoleDefinition) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLRoleDefinition +func (tr *SQLRoleDefinition) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLRoleDefinition using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLRoleDefinition) LateInitialize(attrs []byte) (bool, error) { @@ -1180,6 +1330,16 @@ func (tr *SQLStoredProcedure) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLStoredProcedure +func (tr *SQLStoredProcedure) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLStoredProcedure using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLStoredProcedure) LateInitialize(attrs []byte) (bool, error) { @@ -1254,6 +1414,16 @@ func (tr *SQLTrigger) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLTrigger +func (tr *SQLTrigger) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLTrigger using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLTrigger) LateInitialize(attrs []byte) (bool, error) { @@ -1328,6 +1498,16 @@ func (tr *Table) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Table +func (tr *Table) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Table using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Table) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/cosmosdb/v1beta1/zz_gremlindatabase_types.go b/apis/cosmosdb/v1beta1/zz_gremlindatabase_types.go index f37221974..d615916f9 100755 --- a/apis/cosmosdb/v1beta1/zz_gremlindatabase_types.go +++ b/apis/cosmosdb/v1beta1/zz_gremlindatabase_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type GremlinDatabaseAutoscaleSettingsInitParameters struct { + + // The maximum throughput of the Gremlin database (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` +} + type GremlinDatabaseAutoscaleSettingsObservation struct { // The maximum throughput of the Gremlin database (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. @@ -26,6 +32,15 @@ type GremlinDatabaseAutoscaleSettingsParameters struct { MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } +type GremlinDatabaseInitParameters struct { + + // An autoscale_settings block as defined below. + AutoscaleSettings []GremlinDatabaseAutoscaleSettingsInitParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` + + // The throughput of the Gremlin database (RU/s). Must be set in increments of 100. The minimum value is 400. + Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` +} + type GremlinDatabaseObservation struct { // The name of the CosmosDB Account to create the Gremlin Database within. Changing this forces a new resource to be created. @@ -85,6 +100,18 @@ type GremlinDatabaseParameters struct { type GremlinDatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider GremlinDatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider GremlinDatabaseInitParameters `json:"initProvider,omitempty"` } // GremlinDatabaseStatus defines the observed state of GremlinDatabase. diff --git a/apis/cosmosdb/v1beta1/zz_gremlingraph_types.go b/apis/cosmosdb/v1beta1/zz_gremlingraph_types.go index 5e2315935..aabf69945 100755 --- a/apis/cosmosdb/v1beta1/zz_gremlingraph_types.go +++ b/apis/cosmosdb/v1beta1/zz_gremlingraph_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CompositeIndexInitParameters struct { + + // One or more index blocks as defined below. + Index []IndexInitParameters `json:"index,omitempty" tf:"index,omitempty"` +} + type CompositeIndexObservation struct { // One or more index blocks as defined below. @@ -22,8 +28,20 @@ type CompositeIndexObservation struct { type CompositeIndexParameters struct { // One or more index blocks as defined below. - // +kubebuilder:validation:Required - Index []IndexParameters `json:"index" tf:"index,omitempty"` + // +kubebuilder:validation:Optional + Index []IndexParameters `json:"index,omitempty" tf:"index,omitempty"` +} + +type ConflictResolutionPolicyInitParameters struct { + + // The conflict resolution path in the case of LastWriterWins mode. + ConflictResolutionPath *string `json:"conflictResolutionPath,omitempty" tf:"conflict_resolution_path,omitempty"` + + // The procedure to resolve conflicts in the case of custom mode. + ConflictResolutionProcedure *string `json:"conflictResolutionProcedure,omitempty" tf:"conflict_resolution_procedure,omitempty"` + + // Indicates the conflict resolution mode. Possible values include: LastWriterWins, Custom. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } type ConflictResolutionPolicyObservation struct { @@ -49,8 +67,14 @@ type ConflictResolutionPolicyParameters struct { ConflictResolutionProcedure *string `json:"conflictResolutionProcedure,omitempty" tf:"conflict_resolution_procedure,omitempty"` // Indicates the conflict resolution mode. Possible values include: LastWriterWins, Custom. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` +} + +type GremlinGraphAutoscaleSettingsInitParameters struct { + + // The maximum throughput of the Gremlin graph (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } type GremlinGraphAutoscaleSettingsObservation struct { @@ -66,6 +90,33 @@ type GremlinGraphAutoscaleSettingsParameters struct { MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } +type GremlinGraphInitParameters struct { + + // An autoscale_settings block as defined below. Requires partition_key_path to be set. + AutoscaleSettings []GremlinGraphAutoscaleSettingsInitParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` + + // A conflict_resolution_policy blocks as defined below. Changing this forces a new resource to be created. + ConflictResolutionPolicy []ConflictResolutionPolicyInitParameters `json:"conflictResolutionPolicy,omitempty" tf:"conflict_resolution_policy,omitempty"` + + // The default time to live (TTL) of the Gremlin graph. If the value is missing or set to "-1", items don’t expire. + DefaultTTL *float64 `json:"defaultTtl,omitempty" tf:"default_ttl,omitempty"` + + // The configuration of the indexing policy. One or more index_policy blocks as defined below. + IndexPolicy []IndexPolicyInitParameters `json:"indexPolicy,omitempty" tf:"index_policy,omitempty"` + + // Define a partition key. Changing this forces a new resource to be created. + PartitionKeyPath *string `json:"partitionKeyPath,omitempty" tf:"partition_key_path,omitempty"` + + // Define a partition key version. Changing this forces a new resource to be created. Possible values are 1and 2. This should be set to 2 in order to use large partition keys. + PartitionKeyVersion *float64 `json:"partitionKeyVersion,omitempty" tf:"partition_key_version,omitempty"` + + // The throughput of the Gremlin graph (RU/s). Must be set in increments of 100. The minimum value is 400. + Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` + + // One or more unique_key blocks as defined below. Changing this forces a new resource to be created. + UniqueKey []UniqueKeyInitParameters `json:"uniqueKey,omitempty" tf:"unique_key,omitempty"` +} + type GremlinGraphObservation struct { // The name of the CosmosDB Account to create the Gremlin Graph within. Changing this forces a new resource to be created. @@ -179,6 +230,15 @@ type GremlinGraphParameters struct { UniqueKey []UniqueKeyParameters `json:"uniqueKey,omitempty" tf:"unique_key,omitempty"` } +type IndexInitParameters struct { + + // Order of the index. Possible values are Ascending or Descending. + Order *string `json:"order,omitempty" tf:"order,omitempty"` + + // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + type IndexObservation struct { // Order of the index. Possible values are Ascending or Descending. @@ -191,12 +251,33 @@ type IndexObservation struct { type IndexParameters struct { // Order of the index. Possible values are Ascending or Descending. - // +kubebuilder:validation:Required - Order *string `json:"order" tf:"order,omitempty"` + // +kubebuilder:validation:Optional + Order *string `json:"order,omitempty" tf:"order,omitempty"` // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + +type IndexPolicyInitParameters struct { + + // Indicates if the indexing policy is automatic. Defaults to true. + Automatic *bool `json:"automatic,omitempty" tf:"automatic,omitempty"` + + // One or more composite_index blocks as defined below. + CompositeIndex []CompositeIndexInitParameters `json:"compositeIndex,omitempty" tf:"composite_index,omitempty"` + + // List of paths to exclude from indexing. Required if indexing_mode is Consistent or Lazy. + ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` + + // List of paths to include in the indexing. Required if indexing_mode is Consistent or Lazy. + IncludedPaths []*string `json:"includedPaths,omitempty" tf:"included_paths,omitempty"` + + // Indicates the indexing mode. Possible values include: Consistent, Lazy, None. + IndexingMode *string `json:"indexingMode,omitempty" tf:"indexing_mode,omitempty"` + + // One or more spatial_index blocks as defined below. + SpatialIndex []SpatialIndexInitParameters `json:"spatialIndex,omitempty" tf:"spatial_index,omitempty"` } type IndexPolicyObservation struct { @@ -239,14 +320,20 @@ type IndexPolicyParameters struct { IncludedPaths []*string `json:"includedPaths,omitempty" tf:"included_paths,omitempty"` // Indicates the indexing mode. Possible values include: Consistent, Lazy, None. - // +kubebuilder:validation:Required - IndexingMode *string `json:"indexingMode" tf:"indexing_mode,omitempty"` + // +kubebuilder:validation:Optional + IndexingMode *string `json:"indexingMode,omitempty" tf:"indexing_mode,omitempty"` // One or more spatial_index blocks as defined below. // +kubebuilder:validation:Optional SpatialIndex []SpatialIndexParameters `json:"spatialIndex,omitempty" tf:"spatial_index,omitempty"` } +type SpatialIndexInitParameters struct { + + // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + type SpatialIndexObservation struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. @@ -258,8 +345,14 @@ type SpatialIndexObservation struct { type SpatialIndexParameters struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + +type UniqueKeyInitParameters struct { + + // A list of paths to use for this unique key. Changing this forces a new resource to be created. + Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` } type UniqueKeyObservation struct { @@ -271,14 +364,26 @@ type UniqueKeyObservation struct { type UniqueKeyParameters struct { // A list of paths to use for this unique key. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Paths []*string `json:"paths" tf:"paths,omitempty"` + // +kubebuilder:validation:Optional + Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` } // GremlinGraphSpec defines the desired state of GremlinGraph type GremlinGraphSpec struct { v1.ResourceSpec `json:",inline"` ForProvider GremlinGraphParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider GremlinGraphInitParameters `json:"initProvider,omitempty"` } // GremlinGraphStatus defines the observed state of GremlinGraph. @@ -299,7 +404,7 @@ type GremlinGraphStatus struct { type GremlinGraph struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partitionKeyPath)",message="partitionKeyPath is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.partitionKeyPath) || has(self.initProvider.partitionKeyPath)",message="partitionKeyPath is a required parameter" Spec GremlinGraphSpec `json:"spec"` Status GremlinGraphStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_mongocollection_types.go b/apis/cosmosdb/v1beta1/zz_mongocollection_types.go index 48dda2c41..bc4543187 100755 --- a/apis/cosmosdb/v1beta1/zz_mongocollection_types.go +++ b/apis/cosmosdb/v1beta1/zz_mongocollection_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MongoCollectionAutoscaleSettingsInitParameters struct { + + // The maximum throughput of the MongoDB collection (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` +} + type MongoCollectionAutoscaleSettingsObservation struct { // The maximum throughput of the MongoDB collection (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. @@ -26,6 +32,15 @@ type MongoCollectionAutoscaleSettingsParameters struct { MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } +type MongoCollectionIndexInitParameters struct { + + // Specifies the list of user settable keys for each Cosmos DB Mongo Collection. + Keys []*string `json:"keys,omitempty" tf:"keys,omitempty"` + + // Is the index unique or not? Defaults to false. + Unique *bool `json:"unique,omitempty" tf:"unique,omitempty"` +} + type MongoCollectionIndexObservation struct { // Specifies the list of user settable keys for each Cosmos DB Mongo Collection. @@ -38,14 +53,35 @@ type MongoCollectionIndexObservation struct { type MongoCollectionIndexParameters struct { // Specifies the list of user settable keys for each Cosmos DB Mongo Collection. - // +kubebuilder:validation:Required - Keys []*string `json:"keys" tf:"keys,omitempty"` + // +kubebuilder:validation:Optional + Keys []*string `json:"keys,omitempty" tf:"keys,omitempty"` // Is the index unique or not? Defaults to false. // +kubebuilder:validation:Optional Unique *bool `json:"unique,omitempty" tf:"unique,omitempty"` } +type MongoCollectionInitParameters struct { + + // The default time to live of Analytical Storage for this Mongo Collection. If present and the value is set to -1, it is equal to infinity, and items don’t expire by default. If present and the value is set to some number n – items will expire n seconds after their last modified time. + AnalyticalStorageTTL *float64 `json:"analyticalStorageTtl,omitempty" tf:"analytical_storage_ttl,omitempty"` + + // An autoscale_settings block as defined below. + AutoscaleSettings []MongoCollectionAutoscaleSettingsInitParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` + + // The default Time To Live in seconds. If the value is -1, items are not automatically expired. + DefaultTTLSeconds *float64 `json:"defaultTtlSeconds,omitempty" tf:"default_ttl_seconds,omitempty"` + + // One or more index blocks as defined below. + Index []MongoCollectionIndexInitParameters `json:"index,omitempty" tf:"index,omitempty"` + + // The name of the key to partition on for sharding. There must not be any other unique index keys. Changing this forces a new resource to be created. + ShardKey *string `json:"shardKey,omitempty" tf:"shard_key,omitempty"` + + // The throughput of the MongoDB collection (RU/s). Must be set in increments of 100. The minimum value is 400. + Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` +} + type MongoCollectionObservation struct { // The name of the Cosmos DB Account in which the Cosmos DB Mongo Collection is created. Changing this forces a new resource to be created. @@ -148,6 +184,9 @@ type MongoCollectionParameters struct { Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` } +type SystemIndexesInitParameters struct { +} + type SystemIndexesObservation struct { // The list of system keys which are not settable for each Cosmos DB Mongo Collection. @@ -164,6 +203,18 @@ type SystemIndexesParameters struct { type MongoCollectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MongoCollectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MongoCollectionInitParameters `json:"initProvider,omitempty"` } // MongoCollectionStatus defines the observed state of MongoCollection. diff --git a/apis/cosmosdb/v1beta1/zz_mongodatabase_types.go b/apis/cosmosdb/v1beta1/zz_mongodatabase_types.go index 153452b67..710dcac09 100755 --- a/apis/cosmosdb/v1beta1/zz_mongodatabase_types.go +++ b/apis/cosmosdb/v1beta1/zz_mongodatabase_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MongoDatabaseAutoscaleSettingsInitParameters struct { + + // The maximum throughput of the MongoDB database (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` +} + type MongoDatabaseAutoscaleSettingsObservation struct { // The maximum throughput of the MongoDB database (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. @@ -26,6 +32,15 @@ type MongoDatabaseAutoscaleSettingsParameters struct { MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } +type MongoDatabaseInitParameters struct { + + // An autoscale_settings block as defined below. + AutoscaleSettings []MongoDatabaseAutoscaleSettingsInitParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` + + // The throughput of the MongoDB database (RU/s). Must be set in increments of 100. The minimum value is 400. + Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` +} + type MongoDatabaseObservation struct { // The name of the Cosmos DB Mongo Database to create the table within. Changing this forces a new resource to be created. @@ -85,6 +100,18 @@ type MongoDatabaseParameters struct { type MongoDatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MongoDatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MongoDatabaseInitParameters `json:"initProvider,omitempty"` } // MongoDatabaseStatus defines the observed state of MongoDatabase. diff --git a/apis/cosmosdb/v1beta1/zz_sqlcontainer_types.go b/apis/cosmosdb/v1beta1/zz_sqlcontainer_types.go index 6273dd5c5..5e6c685d0 100755 --- a/apis/cosmosdb/v1beta1/zz_sqlcontainer_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqlcontainer_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CompositeIndexIndexInitParameters struct { + + // Order of the index. Possible values are Ascending or Descending. + Order *string `json:"order,omitempty" tf:"order,omitempty"` + + // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + type CompositeIndexIndexObservation struct { // Order of the index. Possible values are Ascending or Descending. @@ -25,12 +34,18 @@ type CompositeIndexIndexObservation struct { type CompositeIndexIndexParameters struct { // Order of the index. Possible values are Ascending or Descending. - // +kubebuilder:validation:Required - Order *string `json:"order" tf:"order,omitempty"` + // +kubebuilder:validation:Optional + Order *string `json:"order,omitempty" tf:"order,omitempty"` + + // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + +type ExcludedPathInitParameters struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + Path *string `json:"path,omitempty" tf:"path,omitempty"` } type ExcludedPathObservation struct { @@ -42,8 +57,14 @@ type ExcludedPathObservation struct { type ExcludedPathParameters struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + +type IncludedPathInitParameters struct { + + // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + Path *string `json:"path,omitempty" tf:"path,omitempty"` } type IncludedPathObservation struct { @@ -55,8 +76,14 @@ type IncludedPathObservation struct { type IncludedPathParameters struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + +type IndexingPolicyCompositeIndexInitParameters struct { + + // One or more index blocks as defined below. + Index []CompositeIndexIndexInitParameters `json:"index,omitempty" tf:"index,omitempty"` } type IndexingPolicyCompositeIndexObservation struct { @@ -68,8 +95,26 @@ type IndexingPolicyCompositeIndexObservation struct { type IndexingPolicyCompositeIndexParameters struct { // One or more index blocks as defined below. - // +kubebuilder:validation:Required - Index []CompositeIndexIndexParameters `json:"index" tf:"index,omitempty"` + // +kubebuilder:validation:Optional + Index []CompositeIndexIndexParameters `json:"index,omitempty" tf:"index,omitempty"` +} + +type IndexingPolicyInitParameters struct { + + // One or more composite_index blocks as defined below. + CompositeIndex []IndexingPolicyCompositeIndexInitParameters `json:"compositeIndex,omitempty" tf:"composite_index,omitempty"` + + // One or more excluded_path blocks as defined below. Either included_path or excluded_path must contain the path /* + ExcludedPath []ExcludedPathInitParameters `json:"excludedPath,omitempty" tf:"excluded_path,omitempty"` + + // One or more included_path blocks as defined below. Either included_path or excluded_path must contain the path /* + IncludedPath []IncludedPathInitParameters `json:"includedPath,omitempty" tf:"included_path,omitempty"` + + // Indicates the indexing mode. Possible values include: consistent and none. Defaults to consistent. + IndexingMode *string `json:"indexingMode,omitempty" tf:"indexing_mode,omitempty"` + + // One or more spatial_index blocks as defined below. + SpatialIndex []IndexingPolicySpatialIndexInitParameters `json:"spatialIndex,omitempty" tf:"spatial_index,omitempty"` } type IndexingPolicyObservation struct { @@ -113,6 +158,12 @@ type IndexingPolicyParameters struct { SpatialIndex []IndexingPolicySpatialIndexParameters `json:"spatialIndex,omitempty" tf:"spatial_index,omitempty"` } +type IndexingPolicySpatialIndexInitParameters struct { + + // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + type IndexingPolicySpatialIndexObservation struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. @@ -125,8 +176,14 @@ type IndexingPolicySpatialIndexObservation struct { type IndexingPolicySpatialIndexParameters struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + +type SQLContainerAutoscaleSettingsInitParameters struct { + + // The maximum throughput of the SQL container (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } type SQLContainerAutoscaleSettingsObservation struct { @@ -142,6 +199,18 @@ type SQLContainerAutoscaleSettingsParameters struct { MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } +type SQLContainerConflictResolutionPolicyInitParameters struct { + + // The conflict resolution path in the case of LastWriterWins mode. + ConflictResolutionPath *string `json:"conflictResolutionPath,omitempty" tf:"conflict_resolution_path,omitempty"` + + // The procedure to resolve conflicts in the case of Custom mode. + ConflictResolutionProcedure *string `json:"conflictResolutionProcedure,omitempty" tf:"conflict_resolution_procedure,omitempty"` + + // Indicates the conflict resolution mode. Possible values include: LastWriterWins, Custom. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` +} + type SQLContainerConflictResolutionPolicyObservation struct { // The conflict resolution path in the case of LastWriterWins mode. @@ -165,8 +234,38 @@ type SQLContainerConflictResolutionPolicyParameters struct { ConflictResolutionProcedure *string `json:"conflictResolutionProcedure,omitempty" tf:"conflict_resolution_procedure,omitempty"` // Indicates the conflict resolution mode. Possible values include: LastWriterWins, Custom. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` +} + +type SQLContainerInitParameters struct { + + // The default time to live of Analytical Storage for this SQL container. If present and the value is set to -1, it is equal to infinity, and items don’t expire by default. If present and the value is set to some number n – items will expire n seconds after their last modified time. + AnalyticalStorageTTL *float64 `json:"analyticalStorageTtl,omitempty" tf:"analytical_storage_ttl,omitempty"` + + // An autoscale_settings block as defined below. Requires partition_key_path to be set. + AutoscaleSettings []SQLContainerAutoscaleSettingsInitParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` + + // A conflict_resolution_policy blocks as defined below. Changing this forces a new resource to be created. + ConflictResolutionPolicy []SQLContainerConflictResolutionPolicyInitParameters `json:"conflictResolutionPolicy,omitempty" tf:"conflict_resolution_policy,omitempty"` + + // The default time to live of SQL container. If missing, items are not expired automatically. If present and the value is set to -1, it is equal to infinity, and items don’t expire by default. If present and the value is set to some number n – items will expire n seconds after their last modified time. + DefaultTTL *float64 `json:"defaultTtl,omitempty" tf:"default_ttl,omitempty"` + + // An indexing_policy block as defined below. + IndexingPolicy []IndexingPolicyInitParameters `json:"indexingPolicy,omitempty" tf:"indexing_policy,omitempty"` + + // Define a partition key. Changing this forces a new resource to be created. + PartitionKeyPath *string `json:"partitionKeyPath,omitempty" tf:"partition_key_path,omitempty"` + + // Define a partition key version. Changing this forces a new resource to be created. Possible values are 1and 2. This should be set to 2 in order to use large partition keys. + PartitionKeyVersion *float64 `json:"partitionKeyVersion,omitempty" tf:"partition_key_version,omitempty"` + + // The throughput of SQL container (RU/s). Must be set in increments of 100. The minimum value is 400. + Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` + + // One or more unique_key blocks as defined below. Changing this forces a new resource to be created. + UniqueKey []SQLContainerUniqueKeyInitParameters `json:"uniqueKey,omitempty" tf:"unique_key,omitempty"` } type SQLContainerObservation struct { @@ -289,6 +388,12 @@ type SQLContainerParameters struct { UniqueKey []SQLContainerUniqueKeyParameters `json:"uniqueKey,omitempty" tf:"unique_key,omitempty"` } +type SQLContainerUniqueKeyInitParameters struct { + + // A list of paths to use for this unique key. Changing this forces a new resource to be created. + Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` +} + type SQLContainerUniqueKeyObservation struct { // A list of paths to use for this unique key. Changing this forces a new resource to be created. @@ -298,14 +403,26 @@ type SQLContainerUniqueKeyObservation struct { type SQLContainerUniqueKeyParameters struct { // A list of paths to use for this unique key. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Paths []*string `json:"paths" tf:"paths,omitempty"` + // +kubebuilder:validation:Optional + Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` } // SQLContainerSpec defines the desired state of SQLContainer type SQLContainerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLContainerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLContainerInitParameters `json:"initProvider,omitempty"` } // SQLContainerStatus defines the observed state of SQLContainer. @@ -326,7 +443,7 @@ type SQLContainerStatus struct { type SQLContainer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partitionKeyPath)",message="partitionKeyPath is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.partitionKeyPath) || has(self.initProvider.partitionKeyPath)",message="partitionKeyPath is a required parameter" Spec SQLContainerSpec `json:"spec"` Status SQLContainerStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqldatabase_types.go b/apis/cosmosdb/v1beta1/zz_sqldatabase_types.go index 839867fb5..2d804fb2d 100755 --- a/apis/cosmosdb/v1beta1/zz_sqldatabase_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqldatabase_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SQLDatabaseAutoscaleSettingsInitParameters struct { + + // The maximum throughput of the SQL database (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` +} + type SQLDatabaseAutoscaleSettingsObservation struct { // The maximum throughput of the SQL database (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. @@ -26,6 +32,15 @@ type SQLDatabaseAutoscaleSettingsParameters struct { MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } +type SQLDatabaseInitParameters struct { + + // An autoscale_settings block as defined below. + AutoscaleSettings []SQLDatabaseAutoscaleSettingsInitParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` + + // The throughput of SQL database (RU/s). Must be set in increments of 100. The minimum value is 400. Do not set when azurerm_cosmosdb_account is configured with EnableServerless capability. + Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` +} + type SQLDatabaseObservation struct { // The name of the Cosmos DB SQL Database to create the table within. Changing this forces a new resource to be created. @@ -85,6 +100,18 @@ type SQLDatabaseParameters struct { type SQLDatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLDatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLDatabaseInitParameters `json:"initProvider,omitempty"` } // SQLDatabaseStatus defines the observed state of SQLDatabase. diff --git a/apis/cosmosdb/v1beta1/zz_sqldedicatedgateway_types.go b/apis/cosmosdb/v1beta1/zz_sqldedicatedgateway_types.go index d7dacbe83..a45fc5915 100755 --- a/apis/cosmosdb/v1beta1/zz_sqldedicatedgateway_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqldedicatedgateway_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SQLDedicatedGatewayInitParameters struct { + + // The instance count for the CosmosDB SQL Dedicated Gateway. Possible value is between 1 and 5. + InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` + + // The instance size for the CosmosDB SQL Dedicated Gateway. Changing this forces a new resource to be created. Possible values are Cosmos.D4s, Cosmos.D8s and Cosmos.D16s. + InstanceSize *string `json:"instanceSize,omitempty" tf:"instance_size,omitempty"` +} + type SQLDedicatedGatewayObservation struct { // The resource ID of the CosmosDB Account. Changing this forces a new resource to be created. @@ -57,6 +66,18 @@ type SQLDedicatedGatewayParameters struct { type SQLDedicatedGatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLDedicatedGatewayParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLDedicatedGatewayInitParameters `json:"initProvider,omitempty"` } // SQLDedicatedGatewayStatus defines the observed state of SQLDedicatedGateway. @@ -77,8 +98,8 @@ type SQLDedicatedGatewayStatus struct { type SQLDedicatedGateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.instanceCount)",message="instanceCount is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.instanceSize)",message="instanceSize is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.instanceCount) || has(self.initProvider.instanceCount)",message="instanceCount is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.instanceSize) || has(self.initProvider.instanceSize)",message="instanceSize is a required parameter" Spec SQLDedicatedGatewaySpec `json:"spec"` Status SQLDedicatedGatewayStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqlfunction_types.go b/apis/cosmosdb/v1beta1/zz_sqlfunction_types.go index 995bb2930..7565654e9 100755 --- a/apis/cosmosdb/v1beta1/zz_sqlfunction_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqlfunction_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SQLFunctionInitParameters struct { + + // Body of the User Defined Function. + Body *string `json:"body,omitempty" tf:"body,omitempty"` +} + type SQLFunctionObservation struct { // Body of the User Defined Function. @@ -50,6 +56,18 @@ type SQLFunctionParameters struct { type SQLFunctionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLFunctionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLFunctionInitParameters `json:"initProvider,omitempty"` } // SQLFunctionStatus defines the observed state of SQLFunction. @@ -70,7 +88,7 @@ type SQLFunctionStatus struct { type SQLFunction struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body)",message="body is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.body) || has(self.initProvider.body)",message="body is a required parameter" Spec SQLFunctionSpec `json:"spec"` Status SQLFunctionStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqlroleassignment_types.go b/apis/cosmosdb/v1beta1/zz_sqlroleassignment_types.go index 36e3f8ef3..744449462 100755 --- a/apis/cosmosdb/v1beta1/zz_sqlroleassignment_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqlroleassignment_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SQLRoleAssignmentInitParameters struct { + + // The GUID as the name of the Cosmos DB SQL Role Assignment - one will be generated if not specified. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of the Principal (Client) in Azure Active Directory. Changing this forces a new resource to be created. + PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` +} + type SQLRoleAssignmentObservation struct { // The name of the Cosmos DB Account. Changing this forces a new resource to be created. @@ -106,6 +115,18 @@ type SQLRoleAssignmentParameters struct { type SQLRoleAssignmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLRoleAssignmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLRoleAssignmentInitParameters `json:"initProvider,omitempty"` } // SQLRoleAssignmentStatus defines the observed state of SQLRoleAssignment. @@ -126,7 +147,7 @@ type SQLRoleAssignmentStatus struct { type SQLRoleAssignment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalId)",message="principalId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.principalId) || has(self.initProvider.principalId)",message="principalId is a required parameter" Spec SQLRoleAssignmentSpec `json:"spec"` Status SQLRoleAssignmentStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqlroledefinition_types.go b/apis/cosmosdb/v1beta1/zz_sqlroledefinition_types.go index 850381f4a..d20cf3f31 100755 --- a/apis/cosmosdb/v1beta1/zz_sqlroledefinition_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqlroledefinition_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PermissionsInitParameters struct { + + // A list of data actions that are allowed for the Cosmos DB SQL Role Definition. + DataActions []*string `json:"dataActions,omitempty" tf:"data_actions,omitempty"` +} + type PermissionsObservation struct { // A list of data actions that are allowed for the Cosmos DB SQL Role Definition. @@ -22,8 +28,26 @@ type PermissionsObservation struct { type PermissionsParameters struct { // A list of data actions that are allowed for the Cosmos DB SQL Role Definition. - // +kubebuilder:validation:Required - DataActions []*string `json:"dataActions" tf:"data_actions,omitempty"` + // +kubebuilder:validation:Optional + DataActions []*string `json:"dataActions,omitempty" tf:"data_actions,omitempty"` +} + +type SQLRoleDefinitionInitParameters struct { + + // A list of fully qualified scopes at or below which Role Assignments may be created using this Cosmos DB SQL Role Definition. It will allow application of this Cosmos DB SQL Role Definition on the entire Database Account or any underlying Database/Collection. Scopes higher than Database Account are not enforceable as assignable scopes. + AssignableScopes []*string `json:"assignableScopes,omitempty" tf:"assignable_scopes,omitempty"` + + // An user-friendly name for the Cosmos DB SQL Role Definition which must be unique for the Database Account. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A permissions block as defined below. + Permissions []PermissionsInitParameters `json:"permissions,omitempty" tf:"permissions,omitempty"` + + // The GUID as the name of the Cosmos DB SQL Role Definition - one will be generated if not specified. Changing this forces a new resource to be created. + RoleDefinitionID *string `json:"roleDefinitionId,omitempty" tf:"role_definition_id,omitempty"` + + // The type of the Cosmos DB SQL Role Definition. Possible values are BuiltInRole and CustomRole. Defaults to CustomRole. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type SQLRoleDefinitionObservation struct { @@ -106,6 +130,18 @@ type SQLRoleDefinitionParameters struct { type SQLRoleDefinitionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLRoleDefinitionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLRoleDefinitionInitParameters `json:"initProvider,omitempty"` } // SQLRoleDefinitionStatus defines the observed state of SQLRoleDefinition. @@ -126,9 +162,9 @@ type SQLRoleDefinitionStatus struct { type SQLRoleDefinition struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.assignableScopes)",message="assignableScopes is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.permissions)",message="permissions is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.assignableScopes) || has(self.initProvider.assignableScopes)",message="assignableScopes is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.permissions) || has(self.initProvider.permissions)",message="permissions is a required parameter" Spec SQLRoleDefinitionSpec `json:"spec"` Status SQLRoleDefinitionStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqlstoredprocedure_types.go b/apis/cosmosdb/v1beta1/zz_sqlstoredprocedure_types.go index cb4667800..82f9c68c8 100755 --- a/apis/cosmosdb/v1beta1/zz_sqlstoredprocedure_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqlstoredprocedure_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SQLStoredProcedureInitParameters struct { + + // The body of the stored procedure. + Body *string `json:"body,omitempty" tf:"body,omitempty"` +} + type SQLStoredProcedureObservation struct { // The name of the Cosmos DB Account to create the stored procedure within. Changing this forces a new resource to be created. @@ -97,6 +103,18 @@ type SQLStoredProcedureParameters struct { type SQLStoredProcedureSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLStoredProcedureParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLStoredProcedureInitParameters `json:"initProvider,omitempty"` } // SQLStoredProcedureStatus defines the observed state of SQLStoredProcedure. @@ -117,7 +135,7 @@ type SQLStoredProcedureStatus struct { type SQLStoredProcedure struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body)",message="body is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.body) || has(self.initProvider.body)",message="body is a required parameter" Spec SQLStoredProcedureSpec `json:"spec"` Status SQLStoredProcedureStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqltrigger_types.go b/apis/cosmosdb/v1beta1/zz_sqltrigger_types.go index 662e3aab9..affd4a4f2 100755 --- a/apis/cosmosdb/v1beta1/zz_sqltrigger_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqltrigger_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SQLTriggerInitParameters struct { + + // Body of the Trigger. + Body *string `json:"body,omitempty" tf:"body,omitempty"` + + // The operation the trigger is associated with. Possible values are All, Create, Update, Delete and Replace. + Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` + + // Type of the Trigger. Possible values are Pre and Post. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type SQLTriggerObservation struct { // Body of the Trigger. @@ -64,6 +76,18 @@ type SQLTriggerParameters struct { type SQLTriggerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLTriggerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLTriggerInitParameters `json:"initProvider,omitempty"` } // SQLTriggerStatus defines the observed state of SQLTrigger. @@ -84,9 +108,9 @@ type SQLTriggerStatus struct { type SQLTrigger struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body)",message="body is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.operation)",message="operation is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.body) || has(self.initProvider.body)",message="body is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.operation) || has(self.initProvider.operation)",message="operation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" Spec SQLTriggerSpec `json:"spec"` Status SQLTriggerStatus `json:"status,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_table_types.go b/apis/cosmosdb/v1beta1/zz_table_types.go index ff7773e4f..423aa88ce 100755 --- a/apis/cosmosdb/v1beta1/zz_table_types.go +++ b/apis/cosmosdb/v1beta1/zz_table_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TableAutoscaleSettingsInitParameters struct { + + // The maximum throughput of the Table (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` +} + type TableAutoscaleSettingsObservation struct { // The maximum throughput of the Table (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. @@ -26,6 +32,15 @@ type TableAutoscaleSettingsParameters struct { MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } +type TableInitParameters struct { + + // An autoscale_settings block as defined below. + AutoscaleSettings []TableAutoscaleSettingsInitParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` + + // The throughput of Table (RU/s). Must be set in increments of 100. The minimum value is 400. + Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` +} + type TableObservation struct { // The name of the Cosmos DB Table to create the table within. Changing this forces a new resource to be created. @@ -85,6 +100,18 @@ type TableParameters struct { type TableSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TableParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TableInitParameters `json:"initProvider,omitempty"` } // TableStatus defines the observed state of Table. diff --git a/apis/costmanagement/v1beta1/zz_costanomalyalert_types.go b/apis/costmanagement/v1beta1/zz_costanomalyalert_types.go index 85e9e090d..82f0217ed 100755 --- a/apis/costmanagement/v1beta1/zz_costanomalyalert_types.go +++ b/apis/costmanagement/v1beta1/zz_costanomalyalert_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CostAnomalyAlertInitParameters struct { + + // The display name which should be used for this Cost Anomaly Alert. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Specifies a list of email addresses which the Anomaly Alerts are send to. + EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` + + // The email subject of the Cost Anomaly Alerts. Maximum length of the subject is 70. + EmailSubject *string `json:"emailSubject,omitempty" tf:"email_subject,omitempty"` + + // The message of the Cost Anomaly Alert. Maximum length of the message is 250. + Message *string `json:"message,omitempty" tf:"message,omitempty"` +} + type CostAnomalyAlertObservation struct { // The display name which should be used for this Cost Anomaly Alert. @@ -54,6 +69,18 @@ type CostAnomalyAlertParameters struct { type CostAnomalyAlertSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CostAnomalyAlertParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CostAnomalyAlertInitParameters `json:"initProvider,omitempty"` } // CostAnomalyAlertStatus defines the observed state of CostAnomalyAlert. @@ -74,9 +101,9 @@ type CostAnomalyAlertStatus struct { type CostAnomalyAlert struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.emailAddresses)",message="emailAddresses is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.emailSubject)",message="emailSubject is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.emailAddresses) || has(self.initProvider.emailAddresses)",message="emailAddresses is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.emailSubject) || has(self.initProvider.emailSubject)",message="emailSubject is a required parameter" Spec CostAnomalyAlertSpec `json:"spec"` Status CostAnomalyAlertStatus `json:"status,omitempty"` } diff --git a/apis/costmanagement/v1beta1/zz_generated.deepcopy.go b/apis/costmanagement/v1beta1/zz_generated.deepcopy.go index df3602448..de471551f 100644 --- a/apis/costmanagement/v1beta1/zz_generated.deepcopy.go +++ b/apis/costmanagement/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,47 @@ func (in *CostAnomalyAlert) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CostAnomalyAlertInitParameters) DeepCopyInto(out *CostAnomalyAlertInitParameters) { + *out = *in + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.EmailAddresses != nil { + in, out := &in.EmailAddresses, &out.EmailAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EmailSubject != nil { + in, out := &in.EmailSubject, &out.EmailSubject + *out = new(string) + **out = **in + } + if in.Message != nil { + in, out := &in.Message, &out.Message + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CostAnomalyAlertInitParameters. +func (in *CostAnomalyAlertInitParameters) DeepCopy() *CostAnomalyAlertInitParameters { + if in == nil { + return nil + } + out := new(CostAnomalyAlertInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CostAnomalyAlertList) DeepCopyInto(out *CostAnomalyAlertList) { *out = *in @@ -165,6 +206,7 @@ func (in *CostAnomalyAlertSpec) DeepCopyInto(out *CostAnomalyAlertSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CostAnomalyAlertSpec. @@ -194,6 +236,31 @@ func (in *CostAnomalyAlertStatus) DeepCopy() *CostAnomalyAlertStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExportDataOptionsInitParameters) DeepCopyInto(out *ExportDataOptionsInitParameters) { + *out = *in + if in.TimeFrame != nil { + in, out := &in.TimeFrame, &out.TimeFrame + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExportDataOptionsInitParameters. +func (in *ExportDataOptionsInitParameters) DeepCopy() *ExportDataOptionsInitParameters { + if in == nil { + return nil + } + out := new(ExportDataOptionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExportDataOptionsObservation) DeepCopyInto(out *ExportDataOptionsObservation) { *out = *in @@ -244,6 +311,26 @@ func (in *ExportDataOptionsParameters) DeepCopy() *ExportDataOptionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExportDataStorageLocationInitParameters) DeepCopyInto(out *ExportDataStorageLocationInitParameters) { + *out = *in + if in.RootFolderPath != nil { + in, out := &in.RootFolderPath, &out.RootFolderPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExportDataStorageLocationInitParameters. +func (in *ExportDataStorageLocationInitParameters) DeepCopy() *ExportDataStorageLocationInitParameters { + if in == nil { + return nil + } + out := new(ExportDataStorageLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExportDataStorageLocationObservation) DeepCopyInto(out *ExportDataStorageLocationObservation) { *out = *in @@ -331,6 +418,55 @@ func (in *ResourceGroupCostManagementExport) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceGroupCostManagementExportInitParameters) DeepCopyInto(out *ResourceGroupCostManagementExportInitParameters) { + *out = *in + if in.Active != nil { + in, out := &in.Active, &out.Active + *out = new(bool) + **out = **in + } + if in.ExportDataOptions != nil { + in, out := &in.ExportDataOptions, &out.ExportDataOptions + *out = make([]ExportDataOptionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExportDataStorageLocation != nil { + in, out := &in.ExportDataStorageLocation, &out.ExportDataStorageLocation + *out = make([]ExportDataStorageLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RecurrencePeriodEndDate != nil { + in, out := &in.RecurrencePeriodEndDate, &out.RecurrencePeriodEndDate + *out = new(string) + **out = **in + } + if in.RecurrencePeriodStartDate != nil { + in, out := &in.RecurrencePeriodStartDate, &out.RecurrencePeriodStartDate + *out = new(string) + **out = **in + } + if in.RecurrenceType != nil { + in, out := &in.RecurrenceType, &out.RecurrenceType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGroupCostManagementExportInitParameters. +func (in *ResourceGroupCostManagementExportInitParameters) DeepCopy() *ResourceGroupCostManagementExportInitParameters { + if in == nil { + return nil + } + out := new(ResourceGroupCostManagementExportInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceGroupCostManagementExportList) DeepCopyInto(out *ResourceGroupCostManagementExportList) { *out = *in @@ -491,6 +627,7 @@ func (in *ResourceGroupCostManagementExportSpec) DeepCopyInto(out *ResourceGroup *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGroupCostManagementExportSpec. @@ -547,6 +684,31 @@ func (in *SubscriptionCostManagementExport) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionCostManagementExportExportDataOptionsInitParameters) DeepCopyInto(out *SubscriptionCostManagementExportExportDataOptionsInitParameters) { + *out = *in + if in.TimeFrame != nil { + in, out := &in.TimeFrame, &out.TimeFrame + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionCostManagementExportExportDataOptionsInitParameters. +func (in *SubscriptionCostManagementExportExportDataOptionsInitParameters) DeepCopy() *SubscriptionCostManagementExportExportDataOptionsInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionCostManagementExportExportDataOptionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionCostManagementExportExportDataOptionsObservation) DeepCopyInto(out *SubscriptionCostManagementExportExportDataOptionsObservation) { *out = *in @@ -597,6 +759,26 @@ func (in *SubscriptionCostManagementExportExportDataOptionsParameters) DeepCopy( return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionCostManagementExportExportDataStorageLocationInitParameters) DeepCopyInto(out *SubscriptionCostManagementExportExportDataStorageLocationInitParameters) { + *out = *in + if in.RootFolderPath != nil { + in, out := &in.RootFolderPath, &out.RootFolderPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionCostManagementExportExportDataStorageLocationInitParameters. +func (in *SubscriptionCostManagementExportExportDataStorageLocationInitParameters) DeepCopy() *SubscriptionCostManagementExportExportDataStorageLocationInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionCostManagementExportExportDataStorageLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionCostManagementExportExportDataStorageLocationObservation) DeepCopyInto(out *SubscriptionCostManagementExportExportDataStorageLocationObservation) { *out = *in @@ -657,6 +839,60 @@ func (in *SubscriptionCostManagementExportExportDataStorageLocationParameters) D return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionCostManagementExportInitParameters) DeepCopyInto(out *SubscriptionCostManagementExportInitParameters) { + *out = *in + if in.Active != nil { + in, out := &in.Active, &out.Active + *out = new(bool) + **out = **in + } + if in.ExportDataOptions != nil { + in, out := &in.ExportDataOptions, &out.ExportDataOptions + *out = make([]SubscriptionCostManagementExportExportDataOptionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExportDataStorageLocation != nil { + in, out := &in.ExportDataStorageLocation, &out.ExportDataStorageLocation + *out = make([]SubscriptionCostManagementExportExportDataStorageLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RecurrencePeriodEndDate != nil { + in, out := &in.RecurrencePeriodEndDate, &out.RecurrencePeriodEndDate + *out = new(string) + **out = **in + } + if in.RecurrencePeriodStartDate != nil { + in, out := &in.RecurrencePeriodStartDate, &out.RecurrencePeriodStartDate + *out = new(string) + **out = **in + } + if in.RecurrenceType != nil { + in, out := &in.RecurrenceType, &out.RecurrenceType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionCostManagementExportInitParameters. +func (in *SubscriptionCostManagementExportInitParameters) DeepCopy() *SubscriptionCostManagementExportInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionCostManagementExportInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionCostManagementExportList) DeepCopyInto(out *SubscriptionCostManagementExportList) { *out = *in @@ -827,6 +1063,7 @@ func (in *SubscriptionCostManagementExportSpec) DeepCopyInto(out *SubscriptionCo *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionCostManagementExportSpec. diff --git a/apis/costmanagement/v1beta1/zz_generated.managed.go b/apis/costmanagement/v1beta1/zz_generated.managed.go index 7a236c5bd..00f4945ef 100644 --- a/apis/costmanagement/v1beta1/zz_generated.managed.go +++ b/apis/costmanagement/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *CostAnomalyAlert) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CostAnomalyAlert. -func (mg *CostAnomalyAlert) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CostAnomalyAlert. +func (mg *CostAnomalyAlert) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CostAnomalyAlert. @@ -55,9 +55,9 @@ func (mg *CostAnomalyAlert) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CostAnomalyAlert. -func (mg *CostAnomalyAlert) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CostAnomalyAlert. +func (mg *CostAnomalyAlert) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CostAnomalyAlert. @@ -93,9 +93,9 @@ func (mg *ResourceGroupCostManagementExport) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourceGroupCostManagementExport. -func (mg *ResourceGroupCostManagementExport) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourceGroupCostManagementExport. +func (mg *ResourceGroupCostManagementExport) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourceGroupCostManagementExport. @@ -131,9 +131,9 @@ func (mg *ResourceGroupCostManagementExport) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourceGroupCostManagementExport. -func (mg *ResourceGroupCostManagementExport) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourceGroupCostManagementExport. +func (mg *ResourceGroupCostManagementExport) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourceGroupCostManagementExport. @@ -169,9 +169,9 @@ func (mg *SubscriptionCostManagementExport) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubscriptionCostManagementExport. -func (mg *SubscriptionCostManagementExport) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubscriptionCostManagementExport. +func (mg *SubscriptionCostManagementExport) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubscriptionCostManagementExport. @@ -207,9 +207,9 @@ func (mg *SubscriptionCostManagementExport) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubscriptionCostManagementExport. -func (mg *SubscriptionCostManagementExport) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubscriptionCostManagementExport. +func (mg *SubscriptionCostManagementExport) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubscriptionCostManagementExport. diff --git a/apis/costmanagement/v1beta1/zz_generated_terraformed.go b/apis/costmanagement/v1beta1/zz_generated_terraformed.go index b7aa570ec..f7ff400ff 100755 --- a/apis/costmanagement/v1beta1/zz_generated_terraformed.go +++ b/apis/costmanagement/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *CostAnomalyAlert) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CostAnomalyAlert +func (tr *CostAnomalyAlert) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CostAnomalyAlert using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CostAnomalyAlert) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *ResourceGroupCostManagementExport) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourceGroupCostManagementExport +func (tr *ResourceGroupCostManagementExport) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourceGroupCostManagementExport using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourceGroupCostManagementExport) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *SubscriptionCostManagementExport) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubscriptionCostManagementExport +func (tr *SubscriptionCostManagementExport) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubscriptionCostManagementExport using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubscriptionCostManagementExport) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/costmanagement/v1beta1/zz_resourcegroupcostmanagementexport_types.go b/apis/costmanagement/v1beta1/zz_resourcegroupcostmanagementexport_types.go index 71498f168..f5a637dea 100755 --- a/apis/costmanagement/v1beta1/zz_resourcegroupcostmanagementexport_types.go +++ b/apis/costmanagement/v1beta1/zz_resourcegroupcostmanagementexport_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ExportDataOptionsInitParameters struct { + + // The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: WeekToDate, MonthToDate, BillingMonthToDate, TheLast7Days, TheLastMonth, TheLastBillingMonth, Custom. + TimeFrame *string `json:"timeFrame,omitempty" tf:"time_frame,omitempty"` + + // The type of the query. Possible values are ActualCost, AmortizedCost and Usage. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ExportDataOptionsObservation struct { // The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: WeekToDate, MonthToDate, BillingMonthToDate, TheLast7Days, TheLastMonth, TheLastBillingMonth, Custom. @@ -25,12 +34,18 @@ type ExportDataOptionsObservation struct { type ExportDataOptionsParameters struct { // The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: WeekToDate, MonthToDate, BillingMonthToDate, TheLast7Days, TheLastMonth, TheLastBillingMonth, Custom. - // +kubebuilder:validation:Required - TimeFrame *string `json:"timeFrame" tf:"time_frame,omitempty"` + // +kubebuilder:validation:Optional + TimeFrame *string `json:"timeFrame,omitempty" tf:"time_frame,omitempty"` // The type of the query. Possible values are ActualCost, AmortizedCost and Usage. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ExportDataStorageLocationInitParameters struct { + + // The path of the directory where exports will be uploaded. Changing this forces a new resource to be created. + RootFolderPath *string `json:"rootFolderPath,omitempty" tf:"root_folder_path,omitempty"` } type ExportDataStorageLocationObservation struct { @@ -59,8 +74,29 @@ type ExportDataStorageLocationParameters struct { ContainerIDSelector *v1.Selector `json:"containerIdSelector,omitempty" tf:"-"` // The path of the directory where exports will be uploaded. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - RootFolderPath *string `json:"rootFolderPath" tf:"root_folder_path,omitempty"` + // +kubebuilder:validation:Optional + RootFolderPath *string `json:"rootFolderPath,omitempty" tf:"root_folder_path,omitempty"` +} + +type ResourceGroupCostManagementExportInitParameters struct { + + // Is the cost management export active? Default is true. + Active *bool `json:"active,omitempty" tf:"active,omitempty"` + + // A export_data_options block as defined below. + ExportDataOptions []ExportDataOptionsInitParameters `json:"exportDataOptions,omitempty" tf:"export_data_options,omitempty"` + + // A export_data_storage_location block as defined below. + ExportDataStorageLocation []ExportDataStorageLocationInitParameters `json:"exportDataStorageLocation,omitempty" tf:"export_data_storage_location,omitempty"` + + // The date the export will stop capturing information. + RecurrencePeriodEndDate *string `json:"recurrencePeriodEndDate,omitempty" tf:"recurrence_period_end_date,omitempty"` + + // The date the export will start capturing information. + RecurrencePeriodStartDate *string `json:"recurrencePeriodStartDate,omitempty" tf:"recurrence_period_start_date,omitempty"` + + // How often the requested information will be exported. Valid values include Annually, Daily, Monthly, Weekly. + RecurrenceType *string `json:"recurrenceType,omitempty" tf:"recurrence_type,omitempty"` } type ResourceGroupCostManagementExportObservation struct { @@ -135,6 +171,18 @@ type ResourceGroupCostManagementExportParameters struct { type ResourceGroupCostManagementExportSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourceGroupCostManagementExportParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourceGroupCostManagementExportInitParameters `json:"initProvider,omitempty"` } // ResourceGroupCostManagementExportStatus defines the observed state of ResourceGroupCostManagementExport. @@ -155,11 +203,11 @@ type ResourceGroupCostManagementExportStatus struct { type ResourceGroupCostManagementExport struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exportDataOptions)",message="exportDataOptions is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exportDataStorageLocation)",message="exportDataStorageLocation is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrencePeriodEndDate)",message="recurrencePeriodEndDate is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrencePeriodStartDate)",message="recurrencePeriodStartDate is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrenceType)",message="recurrenceType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.exportDataOptions) || has(self.initProvider.exportDataOptions)",message="exportDataOptions is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.exportDataStorageLocation) || has(self.initProvider.exportDataStorageLocation)",message="exportDataStorageLocation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.recurrencePeriodEndDate) || has(self.initProvider.recurrencePeriodEndDate)",message="recurrencePeriodEndDate is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.recurrencePeriodStartDate) || has(self.initProvider.recurrencePeriodStartDate)",message="recurrencePeriodStartDate is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.recurrenceType) || has(self.initProvider.recurrenceType)",message="recurrenceType is a required parameter" Spec ResourceGroupCostManagementExportSpec `json:"spec"` Status ResourceGroupCostManagementExportStatus `json:"status,omitempty"` } diff --git a/apis/costmanagement/v1beta1/zz_subscriptioncostmanagementexport_types.go b/apis/costmanagement/v1beta1/zz_subscriptioncostmanagementexport_types.go index c15ade8c8..02073930c 100755 --- a/apis/costmanagement/v1beta1/zz_subscriptioncostmanagementexport_types.go +++ b/apis/costmanagement/v1beta1/zz_subscriptioncostmanagementexport_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubscriptionCostManagementExportExportDataOptionsInitParameters struct { + + // The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: WeekToDate, MonthToDate, BillingMonthToDate, TheLast7Days, TheLastMonth, TheLastBillingMonth, Custom. + TimeFrame *string `json:"timeFrame,omitempty" tf:"time_frame,omitempty"` + + // The type of the query. Possible values are ActualCost, AmortizedCost and Usage. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type SubscriptionCostManagementExportExportDataOptionsObservation struct { // The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: WeekToDate, MonthToDate, BillingMonthToDate, TheLast7Days, TheLastMonth, TheLastBillingMonth, Custom. @@ -25,12 +34,18 @@ type SubscriptionCostManagementExportExportDataOptionsObservation struct { type SubscriptionCostManagementExportExportDataOptionsParameters struct { // The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: WeekToDate, MonthToDate, BillingMonthToDate, TheLast7Days, TheLastMonth, TheLastBillingMonth, Custom. - // +kubebuilder:validation:Required - TimeFrame *string `json:"timeFrame" tf:"time_frame,omitempty"` + // +kubebuilder:validation:Optional + TimeFrame *string `json:"timeFrame,omitempty" tf:"time_frame,omitempty"` // The type of the query. Possible values are ActualCost, AmortizedCost and Usage. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type SubscriptionCostManagementExportExportDataStorageLocationInitParameters struct { + + // The path of the directory where exports will be uploaded. Changing this forces a new resource to be created. + RootFolderPath *string `json:"rootFolderPath,omitempty" tf:"root_folder_path,omitempty"` } type SubscriptionCostManagementExportExportDataStorageLocationObservation struct { @@ -59,8 +74,32 @@ type SubscriptionCostManagementExportExportDataStorageLocationParameters struct ContainerIDSelector *v1.Selector `json:"containerIdSelector,omitempty" tf:"-"` // The path of the directory where exports will be uploaded. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - RootFolderPath *string `json:"rootFolderPath" tf:"root_folder_path,omitempty"` + // +kubebuilder:validation:Optional + RootFolderPath *string `json:"rootFolderPath,omitempty" tf:"root_folder_path,omitempty"` +} + +type SubscriptionCostManagementExportInitParameters struct { + + // Is the cost management export active? Default is true. + Active *bool `json:"active,omitempty" tf:"active,omitempty"` + + // A export_data_options block as defined below. + ExportDataOptions []SubscriptionCostManagementExportExportDataOptionsInitParameters `json:"exportDataOptions,omitempty" tf:"export_data_options,omitempty"` + + // A export_data_storage_location block as defined below. + ExportDataStorageLocation []SubscriptionCostManagementExportExportDataStorageLocationInitParameters `json:"exportDataStorageLocation,omitempty" tf:"export_data_storage_location,omitempty"` + + // Specifies the name of the Cost Management Export. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The date the export will stop capturing information. + RecurrencePeriodEndDate *string `json:"recurrencePeriodEndDate,omitempty" tf:"recurrence_period_end_date,omitempty"` + + // The date the export will start capturing information. + RecurrencePeriodStartDate *string `json:"recurrencePeriodStartDate,omitempty" tf:"recurrence_period_start_date,omitempty"` + + // How often the requested information will be exported. Valid values include Annually, Daily, Monthly, Weekly. + RecurrenceType *string `json:"recurrenceType,omitempty" tf:"recurrence_type,omitempty"` } type SubscriptionCostManagementExportObservation struct { @@ -142,6 +181,18 @@ type SubscriptionCostManagementExportParameters struct { type SubscriptionCostManagementExportSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubscriptionCostManagementExportParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubscriptionCostManagementExportInitParameters `json:"initProvider,omitempty"` } // SubscriptionCostManagementExportStatus defines the observed state of SubscriptionCostManagementExport. @@ -162,12 +213,12 @@ type SubscriptionCostManagementExportStatus struct { type SubscriptionCostManagementExport struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exportDataOptions)",message="exportDataOptions is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exportDataStorageLocation)",message="exportDataStorageLocation is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrencePeriodEndDate)",message="recurrencePeriodEndDate is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrencePeriodStartDate)",message="recurrencePeriodStartDate is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrenceType)",message="recurrenceType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.exportDataOptions) || has(self.initProvider.exportDataOptions)",message="exportDataOptions is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.exportDataStorageLocation) || has(self.initProvider.exportDataStorageLocation)",message="exportDataStorageLocation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.recurrencePeriodEndDate) || has(self.initProvider.recurrencePeriodEndDate)",message="recurrencePeriodEndDate is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.recurrencePeriodStartDate) || has(self.initProvider.recurrencePeriodStartDate)",message="recurrencePeriodStartDate is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.recurrenceType) || has(self.initProvider.recurrenceType)",message="recurrenceType is a required parameter" Spec SubscriptionCostManagementExportSpec `json:"spec"` Status SubscriptionCostManagementExportStatus `json:"status,omitempty"` } diff --git a/apis/customproviders/v1beta1/zz_customprovider_types.go b/apis/customproviders/v1beta1/zz_customprovider_types.go index 995dc35e4..f39b260b6 100755 --- a/apis/customproviders/v1beta1/zz_customprovider_types.go +++ b/apis/customproviders/v1beta1/zz_customprovider_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActionInitParameters struct { + + // Specifies the endpoint of the action. + Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` + + // Specifies the name of the action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type ActionObservation struct { // Specifies the endpoint of the action. @@ -25,12 +34,30 @@ type ActionObservation struct { type ActionParameters struct { // Specifies the endpoint of the action. - // +kubebuilder:validation:Required - Endpoint *string `json:"endpoint" tf:"endpoint,omitempty"` + // +kubebuilder:validation:Optional + Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` // Specifies the name of the action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type CustomProviderInitParameters struct { + + // Any number of action block as defined below. One of resource_type or action must be specified. + Action []ActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Any number of resource_type block as defined below. One of resource_type or action must be specified. + ResourceType []ResourceTypeInitParameters `json:"resourceType,omitempty" tf:"resource_type,omitempty"` + + // A mapping of tags to assign to the resource. Changing this forces a new resource to be created. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Any number of validation block as defined below. + Validation []ValidationInitParameters `json:"validation,omitempty" tf:"validation,omitempty"` } type CustomProviderObservation struct { @@ -93,6 +120,18 @@ type CustomProviderParameters struct { Validation []ValidationParameters `json:"validation,omitempty" tf:"validation,omitempty"` } +type ResourceTypeInitParameters struct { + + // Specifies the endpoint of the route definition. + Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` + + // Specifies the name of the route definition. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The routing type that is supported for the resource request. Valid values are Proxy and Proxy,Cache. This value defaults to ResourceTypeRoutingProxy. + RoutingType *string `json:"routingType,omitempty" tf:"routing_type,omitempty"` +} + type ResourceTypeObservation struct { // Specifies the endpoint of the route definition. @@ -108,18 +147,24 @@ type ResourceTypeObservation struct { type ResourceTypeParameters struct { // Specifies the endpoint of the route definition. - // +kubebuilder:validation:Required - Endpoint *string `json:"endpoint" tf:"endpoint,omitempty"` + // +kubebuilder:validation:Optional + Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` // Specifies the name of the route definition. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The routing type that is supported for the resource request. Valid values are Proxy and Proxy,Cache. This value defaults to ResourceTypeRoutingProxy. // +kubebuilder:validation:Optional RoutingType *string `json:"routingType,omitempty" tf:"routing_type,omitempty"` } +type ValidationInitParameters struct { + + // The endpoint where the validation specification is located. + Specification *string `json:"specification,omitempty" tf:"specification,omitempty"` +} + type ValidationObservation struct { // The endpoint where the validation specification is located. @@ -129,14 +174,26 @@ type ValidationObservation struct { type ValidationParameters struct { // The endpoint where the validation specification is located. - // +kubebuilder:validation:Required - Specification *string `json:"specification" tf:"specification,omitempty"` + // +kubebuilder:validation:Optional + Specification *string `json:"specification,omitempty" tf:"specification,omitempty"` } // CustomProviderSpec defines the desired state of CustomProvider type CustomProviderSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CustomProviderParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CustomProviderInitParameters `json:"initProvider,omitempty"` } // CustomProviderStatus defines the observed state of CustomProvider. @@ -157,7 +214,7 @@ type CustomProviderStatus struct { type CustomProvider struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec CustomProviderSpec `json:"spec"` Status CustomProviderStatus `json:"status,omitempty"` } diff --git a/apis/customproviders/v1beta1/zz_generated.deepcopy.go b/apis/customproviders/v1beta1/zz_generated.deepcopy.go index eb047b8d9..e1fd07dd1 100644 --- a/apis/customproviders/v1beta1/zz_generated.deepcopy.go +++ b/apis/customproviders/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,31 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionInitParameters) DeepCopyInto(out *ActionInitParameters) { + *out = *in + if in.Endpoint != nil { + in, out := &in.Endpoint, &out.Endpoint + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionInitParameters. +func (in *ActionInitParameters) DeepCopy() *ActionInitParameters { + if in == nil { + return nil + } + out := new(ActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionObservation) DeepCopyInto(out *ActionObservation) { *out = *in @@ -91,6 +116,62 @@ func (in *CustomProvider) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomProviderInitParameters) DeepCopyInto(out *CustomProviderInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]ActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ResourceType != nil { + in, out := &in.ResourceType, &out.ResourceType + *out = make([]ResourceTypeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Validation != nil { + in, out := &in.Validation, &out.Validation + *out = make([]ValidationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomProviderInitParameters. +func (in *CustomProviderInitParameters) DeepCopy() *CustomProviderInitParameters { + if in == nil { + return nil + } + out := new(CustomProviderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomProviderList) DeepCopyInto(out *CustomProviderList) { *out = *in @@ -265,6 +346,7 @@ func (in *CustomProviderSpec) DeepCopyInto(out *CustomProviderSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomProviderSpec. @@ -294,6 +376,36 @@ func (in *CustomProviderStatus) DeepCopy() *CustomProviderStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceTypeInitParameters) DeepCopyInto(out *ResourceTypeInitParameters) { + *out = *in + if in.Endpoint != nil { + in, out := &in.Endpoint, &out.Endpoint + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RoutingType != nil { + in, out := &in.RoutingType, &out.RoutingType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceTypeInitParameters. +func (in *ResourceTypeInitParameters) DeepCopy() *ResourceTypeInitParameters { + if in == nil { + return nil + } + out := new(ResourceTypeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceTypeObservation) DeepCopyInto(out *ResourceTypeObservation) { *out = *in @@ -354,6 +466,26 @@ func (in *ResourceTypeParameters) DeepCopy() *ResourceTypeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ValidationInitParameters) DeepCopyInto(out *ValidationInitParameters) { + *out = *in + if in.Specification != nil { + in, out := &in.Specification, &out.Specification + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValidationInitParameters. +func (in *ValidationInitParameters) DeepCopy() *ValidationInitParameters { + if in == nil { + return nil + } + out := new(ValidationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ValidationObservation) DeepCopyInto(out *ValidationObservation) { *out = *in diff --git a/apis/customproviders/v1beta1/zz_generated.managed.go b/apis/customproviders/v1beta1/zz_generated.managed.go index 4cd4b6085..70bc1fb25 100644 --- a/apis/customproviders/v1beta1/zz_generated.managed.go +++ b/apis/customproviders/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *CustomProvider) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CustomProvider. -func (mg *CustomProvider) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CustomProvider. +func (mg *CustomProvider) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CustomProvider. @@ -55,9 +55,9 @@ func (mg *CustomProvider) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CustomProvider. -func (mg *CustomProvider) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CustomProvider. +func (mg *CustomProvider) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CustomProvider. diff --git a/apis/customproviders/v1beta1/zz_generated_terraformed.go b/apis/customproviders/v1beta1/zz_generated_terraformed.go index 319598748..075d9e4c2 100755 --- a/apis/customproviders/v1beta1/zz_generated_terraformed.go +++ b/apis/customproviders/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *CustomProvider) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CustomProvider +func (tr *CustomProvider) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CustomProvider using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CustomProvider) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/databoxedge/v1beta1/zz_device_types.go b/apis/databoxedge/v1beta1/zz_device_types.go index 869fb74e9..f70d0dace 100755 --- a/apis/databoxedge/v1beta1/zz_device_types.go +++ b/apis/databoxedge/v1beta1/zz_device_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DeviceInitParameters struct { + + // The Azure Region where the Databox Edge Device should exist. Changing this forces a new Databox Edge Device to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The sku_name is comprised of two segments separated by a hyphen (e.g. TEA_1Node_UPS_Heater-Standard). The first segment of the sku_name defines the name of the SKU, possible values are Gateway, EdgeMR_Mini, EdgeP_Base, EdgeP_High, EdgePR_Base, EdgePR_Base_UPS, GPU, RCA_Large, RCA_Small, RDC, TCA_Large, TCA_Small, TDC, TEA_1Node, TEA_1Node_UPS, TEA_1Node_Heater, TEA_1Node_UPS_Heater, TEA_4Node_Heater, TEA_4Node_UPS_Heater or TMA. The second segment defines the tier of the sku_name, possible values are Standard. For more information see the product documentation. Changing this forces a new Databox Edge Device to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags which should be assigned to the Databox Edge Device. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DeviceObservation struct { // A device_properties block as defined below. @@ -62,6 +74,9 @@ type DeviceParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type DevicePropertiesInitParameters struct { +} + type DevicePropertiesObservation struct { // The Data Box Edge/Gateway device local capacity in MB. @@ -105,6 +120,18 @@ type DevicePropertiesParameters struct { type DeviceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DeviceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DeviceInitParameters `json:"initProvider,omitempty"` } // DeviceStatus defines the observed state of Device. @@ -125,8 +152,8 @@ type DeviceStatus struct { type Device struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec DeviceSpec `json:"spec"` Status DeviceStatus `json:"status,omitempty"` } diff --git a/apis/databoxedge/v1beta1/zz_generated.deepcopy.go b/apis/databoxedge/v1beta1/zz_generated.deepcopy.go index 5d89a47ba..214e1b5eb 100644 --- a/apis/databoxedge/v1beta1/zz_generated.deepcopy.go +++ b/apis/databoxedge/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,46 @@ func (in *Device) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeviceInitParameters) DeepCopyInto(out *DeviceInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceInitParameters. +func (in *DeviceInitParameters) DeepCopy() *DeviceInitParameters { + if in == nil { + return nil + } + out := new(DeviceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DeviceList) DeepCopyInto(out *DeviceList) { *out = *in @@ -185,6 +225,21 @@ func (in *DeviceParameters) DeepCopy() *DeviceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DevicePropertiesInitParameters) DeepCopyInto(out *DevicePropertiesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevicePropertiesInitParameters. +func (in *DevicePropertiesInitParameters) DeepCopy() *DevicePropertiesInitParameters { + if in == nil { + return nil + } + out := new(DevicePropertiesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DevicePropertiesObservation) DeepCopyInto(out *DevicePropertiesObservation) { *out = *in @@ -281,6 +336,7 @@ func (in *DeviceSpec) DeepCopyInto(out *DeviceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceSpec. diff --git a/apis/databoxedge/v1beta1/zz_generated.managed.go b/apis/databoxedge/v1beta1/zz_generated.managed.go index bd988a26a..2de5916fa 100644 --- a/apis/databoxedge/v1beta1/zz_generated.managed.go +++ b/apis/databoxedge/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Device) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Device. -func (mg *Device) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Device. +func (mg *Device) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Device. @@ -55,9 +55,9 @@ func (mg *Device) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Device. -func (mg *Device) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Device. +func (mg *Device) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Device. diff --git a/apis/databoxedge/v1beta1/zz_generated_terraformed.go b/apis/databoxedge/v1beta1/zz_generated_terraformed.go index dbdcff294..a8f78f927 100755 --- a/apis/databoxedge/v1beta1/zz_generated_terraformed.go +++ b/apis/databoxedge/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Device) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Device +func (tr *Device) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Device using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Device) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/databricks/v1beta1/zz_accessconnector_types.go b/apis/databricks/v1beta1/zz_accessconnector_types.go index c27be19e4..e1c4b1203 100755 --- a/apis/databricks/v1beta1/zz_accessconnector_types.go +++ b/apis/databricks/v1beta1/zz_accessconnector_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccessConnectorInitParameters struct { + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type AccessConnectorObservation struct { // The ID of the Databricks Access Connector in the Azure management plane. @@ -59,6 +71,15 @@ type AccessConnectorParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to the Databricks Access Connector. Only one User Assigned Managed Identity ID is supported per Databricks Access Connector resource. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on the Databricks Access Connector. Possible values include SystemAssigned or UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to the Databricks Access Connector. Only one User Assigned Managed Identity ID is supported per Databricks Access Connector resource. @@ -81,14 +102,26 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on the Databricks Access Connector. Possible values include SystemAssigned or UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // AccessConnectorSpec defines the desired state of AccessConnector type AccessConnectorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccessConnectorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccessConnectorInitParameters `json:"initProvider,omitempty"` } // AccessConnectorStatus defines the observed state of AccessConnector. @@ -109,7 +142,7 @@ type AccessConnectorStatus struct { type AccessConnector struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec AccessConnectorSpec `json:"spec"` Status AccessConnectorStatus `json:"status,omitempty"` } diff --git a/apis/databricks/v1beta1/zz_generated.deepcopy.go b/apis/databricks/v1beta1/zz_generated.deepcopy.go index 89a34fd1b..5a55f2162 100644 --- a/apis/databricks/v1beta1/zz_generated.deepcopy.go +++ b/apis/databricks/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,48 @@ func (in *AccessConnector) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccessConnectorInitParameters) DeepCopyInto(out *AccessConnectorInitParameters) { + *out = *in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessConnectorInitParameters. +func (in *AccessConnectorInitParameters) DeepCopy() *AccessConnectorInitParameters { + if in == nil { + return nil + } + out := new(AccessConnectorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccessConnectorList) DeepCopyInto(out *AccessConnectorList) { *out = *in @@ -187,6 +229,7 @@ func (in *AccessConnectorSpec) DeepCopyInto(out *AccessConnectorSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessConnectorSpec. @@ -216,6 +259,71 @@ func (in *AccessConnectorStatus) DeepCopy() *AccessConnectorStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomParametersInitParameters) DeepCopyInto(out *CustomParametersInitParameters) { + *out = *in + if in.MachineLearningWorkspaceID != nil { + in, out := &in.MachineLearningWorkspaceID, &out.MachineLearningWorkspaceID + *out = new(string) + **out = **in + } + if in.NATGatewayName != nil { + in, out := &in.NATGatewayName, &out.NATGatewayName + *out = new(string) + **out = **in + } + if in.NoPublicIP != nil { + in, out := &in.NoPublicIP, &out.NoPublicIP + *out = new(bool) + **out = **in + } + if in.PrivateSubnetNetworkSecurityGroupAssociationID != nil { + in, out := &in.PrivateSubnetNetworkSecurityGroupAssociationID, &out.PrivateSubnetNetworkSecurityGroupAssociationID + *out = new(string) + **out = **in + } + if in.PublicIPName != nil { + in, out := &in.PublicIPName, &out.PublicIPName + *out = new(string) + **out = **in + } + if in.PublicSubnetNetworkSecurityGroupAssociationID != nil { + in, out := &in.PublicSubnetNetworkSecurityGroupAssociationID, &out.PublicSubnetNetworkSecurityGroupAssociationID + *out = new(string) + **out = **in + } + if in.StorageAccountName != nil { + in, out := &in.StorageAccountName, &out.StorageAccountName + *out = new(string) + **out = **in + } + if in.StorageAccountSkuName != nil { + in, out := &in.StorageAccountSkuName, &out.StorageAccountSkuName + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } + if in.VnetAddressPrefix != nil { + in, out := &in.VnetAddressPrefix, &out.VnetAddressPrefix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomParametersInitParameters. +func (in *CustomParametersInitParameters) DeepCopy() *CustomParametersInitParameters { + if in == nil { + return nil + } + out := new(CustomParametersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomParametersObservation) DeepCopyInto(out *CustomParametersObservation) { *out = *in @@ -386,6 +494,37 @@ func (in *CustomParametersParameters) DeepCopy() *CustomParametersParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -458,6 +597,21 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedDiskIdentityInitParameters) DeepCopyInto(out *ManagedDiskIdentityInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskIdentityInitParameters. +func (in *ManagedDiskIdentityInitParameters) DeepCopy() *ManagedDiskIdentityInitParameters { + if in == nil { + return nil + } + out := new(ManagedDiskIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedDiskIdentityObservation) DeepCopyInto(out *ManagedDiskIdentityObservation) { *out = *in @@ -503,6 +657,21 @@ func (in *ManagedDiskIdentityParameters) DeepCopy() *ManagedDiskIdentityParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageAccountIdentityInitParameters) DeepCopyInto(out *StorageAccountIdentityInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageAccountIdentityInitParameters. +func (in *StorageAccountIdentityInitParameters) DeepCopy() *StorageAccountIdentityInitParameters { + if in == nil { + return nil + } + out := new(StorageAccountIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageAccountIdentityObservation) DeepCopyInto(out *StorageAccountIdentityObservation) { *out = *in @@ -602,6 +771,21 @@ func (in *WorkspaceCustomerManagedKey) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceCustomerManagedKeyInitParameters) DeepCopyInto(out *WorkspaceCustomerManagedKeyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceCustomerManagedKeyInitParameters. +func (in *WorkspaceCustomerManagedKeyInitParameters) DeepCopy() *WorkspaceCustomerManagedKeyInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceCustomerManagedKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceCustomerManagedKeyList) DeepCopyInto(out *WorkspaceCustomerManagedKeyList) { *out = *in @@ -714,6 +898,7 @@ func (in *WorkspaceCustomerManagedKeySpec) DeepCopyInto(out *WorkspaceCustomerMa *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceCustomerManagedKeySpec. @@ -743,6 +928,93 @@ func (in *WorkspaceCustomerManagedKeyStatus) DeepCopy() *WorkspaceCustomerManage return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceInitParameters) DeepCopyInto(out *WorkspaceInitParameters) { + *out = *in + if in.CustomParameters != nil { + in, out := &in.CustomParameters, &out.CustomParameters + *out = make([]CustomParametersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomerManagedKeyEnabled != nil { + in, out := &in.CustomerManagedKeyEnabled, &out.CustomerManagedKeyEnabled + *out = new(bool) + **out = **in + } + if in.InfrastructureEncryptionEnabled != nil { + in, out := &in.InfrastructureEncryptionEnabled, &out.InfrastructureEncryptionEnabled + *out = new(bool) + **out = **in + } + if in.LoadBalancerBackendAddressPoolID != nil { + in, out := &in.LoadBalancerBackendAddressPoolID, &out.LoadBalancerBackendAddressPoolID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ManagedDiskCmkKeyVaultKeyID != nil { + in, out := &in.ManagedDiskCmkKeyVaultKeyID, &out.ManagedDiskCmkKeyVaultKeyID + *out = new(string) + **out = **in + } + if in.ManagedDiskCmkRotationToLatestVersionEnabled != nil { + in, out := &in.ManagedDiskCmkRotationToLatestVersionEnabled, &out.ManagedDiskCmkRotationToLatestVersionEnabled + *out = new(bool) + **out = **in + } + if in.ManagedServicesCmkKeyVaultKeyID != nil { + in, out := &in.ManagedServicesCmkKeyVaultKeyID, &out.ManagedServicesCmkKeyVaultKeyID + *out = new(string) + **out = **in + } + if in.NetworkSecurityGroupRulesRequired != nil { + in, out := &in.NetworkSecurityGroupRulesRequired, &out.NetworkSecurityGroupRulesRequired + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceInitParameters. +func (in *WorkspaceInitParameters) DeepCopy() *WorkspaceInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceList) DeepCopyInto(out *WorkspaceList) { *out = *in @@ -1033,6 +1305,7 @@ func (in *WorkspaceSpec) DeepCopyInto(out *WorkspaceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceSpec. diff --git a/apis/databricks/v1beta1/zz_generated.managed.go b/apis/databricks/v1beta1/zz_generated.managed.go index 92fa2c86d..a14357490 100644 --- a/apis/databricks/v1beta1/zz_generated.managed.go +++ b/apis/databricks/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AccessConnector) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AccessConnector. -func (mg *AccessConnector) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AccessConnector. +func (mg *AccessConnector) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AccessConnector. @@ -55,9 +55,9 @@ func (mg *AccessConnector) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AccessConnector. -func (mg *AccessConnector) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AccessConnector. +func (mg *AccessConnector) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AccessConnector. @@ -93,9 +93,9 @@ func (mg *Workspace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Workspace. -func (mg *Workspace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Workspace. +func (mg *Workspace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Workspace. @@ -131,9 +131,9 @@ func (mg *Workspace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Workspace. -func (mg *Workspace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Workspace. +func (mg *Workspace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Workspace. @@ -169,9 +169,9 @@ func (mg *WorkspaceCustomerManagedKey) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WorkspaceCustomerManagedKey. -func (mg *WorkspaceCustomerManagedKey) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WorkspaceCustomerManagedKey. +func (mg *WorkspaceCustomerManagedKey) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WorkspaceCustomerManagedKey. @@ -207,9 +207,9 @@ func (mg *WorkspaceCustomerManagedKey) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WorkspaceCustomerManagedKey. -func (mg *WorkspaceCustomerManagedKey) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WorkspaceCustomerManagedKey. +func (mg *WorkspaceCustomerManagedKey) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WorkspaceCustomerManagedKey. diff --git a/apis/databricks/v1beta1/zz_generated_terraformed.go b/apis/databricks/v1beta1/zz_generated_terraformed.go index f78f04b23..3cc9ebae9 100755 --- a/apis/databricks/v1beta1/zz_generated_terraformed.go +++ b/apis/databricks/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *AccessConnector) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AccessConnector +func (tr *AccessConnector) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AccessConnector using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AccessConnector) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Workspace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Workspace +func (tr *Workspace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Workspace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Workspace) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *WorkspaceCustomerManagedKey) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WorkspaceCustomerManagedKey +func (tr *WorkspaceCustomerManagedKey) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WorkspaceCustomerManagedKey using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WorkspaceCustomerManagedKey) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/databricks/v1beta1/zz_workspace_types.go b/apis/databricks/v1beta1/zz_workspace_types.go index 1145c99cb..2f3f98ed2 100755 --- a/apis/databricks/v1beta1/zz_workspace_types.go +++ b/apis/databricks/v1beta1/zz_workspace_types.go @@ -13,6 +13,39 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomParametersInitParameters struct { + + // The ID of a Azure Machine Learning workspace to link with Databricks workspace. Changing this forces a new resource to be created. + MachineLearningWorkspaceID *string `json:"machineLearningWorkspaceId,omitempty" tf:"machine_learning_workspace_id,omitempty"` + + // Name of the NAT gateway for Secure Cluster Connectivity (No Public IP) workspace subnets. Defaults to nat-gateway. Changing this forces a new resource to be created. + NATGatewayName *string `json:"natGatewayName,omitempty" tf:"nat_gateway_name,omitempty"` + + // Are public IP Addresses not allowed? Possible values are true or false. Defaults to false. + NoPublicIP *bool `json:"noPublicIp,omitempty" tf:"no_public_ip,omitempty"` + + // The resource ID of the azurerm_subnet_network_security_group_association resource which is referred to by the private_subnet_name field. This is the same as the ID of the subnet referred to by the private_subnet_name field. Required if virtual_network_id is set. + PrivateSubnetNetworkSecurityGroupAssociationID *string `json:"privateSubnetNetworkSecurityGroupAssociationId,omitempty" tf:"private_subnet_network_security_group_association_id,omitempty"` + + // Name of the Public IP for No Public IP workspace with managed vNet. Defaults to nat-gw-public-ip. Changing this forces a new resource to be created. + PublicIPName *string `json:"publicIpName,omitempty" tf:"public_ip_name,omitempty"` + + // The resource ID of the azurerm_subnet_network_security_group_association resource which is referred to by the public_subnet_name field. This is the same as the ID of the subnet referred to by the public_subnet_name field. Required if virtual_network_id is set. + PublicSubnetNetworkSecurityGroupAssociationID *string `json:"publicSubnetNetworkSecurityGroupAssociationId,omitempty" tf:"public_subnet_network_security_group_association_id,omitempty"` + + // Default Databricks File Storage account name. Defaults to a randomized name(e.g. dbstoragel6mfeghoe5kxu). Changing this forces a new resource to be created. + StorageAccountName *string `json:"storageAccountName,omitempty" tf:"storage_account_name,omitempty"` + + // Storage account SKU name. Possible values include Standard_LRS, Standard_GRS, Standard_RAGRS, Standard_GZRS, Standard_RAGZRS, Standard_ZRS, Premium_LRS or Premium_ZRS. Defaults to Standard_GRS. Changing this forces a new resource to be created. + StorageAccountSkuName *string `json:"storageAccountSkuName,omitempty" tf:"storage_account_sku_name,omitempty"` + + // The ID of a Virtual Network where this Databricks Cluster should be created. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` + + // Address prefix for Managed virtual network. Defaults to 10.139. Changing this forces a new resource to be created. + VnetAddressPrefix *string `json:"vnetAddressPrefix,omitempty" tf:"vnet_address_prefix,omitempty"` +} + type CustomParametersObservation struct { // The ID of a Azure Machine Learning workspace to link with Databricks workspace. Changing this forces a new resource to be created. @@ -121,6 +154,9 @@ type CustomParametersParameters struct { VnetAddressPrefix *string `json:"vnetAddressPrefix,omitempty" tf:"vnet_address_prefix,omitempty"` } +type ManagedDiskIdentityInitParameters struct { +} + type ManagedDiskIdentityObservation struct { // The principal UUID for the internal databricks disks identity needed to provide access to the workspace for enabling Customer Managed Keys. @@ -136,6 +172,9 @@ type ManagedDiskIdentityObservation struct { type ManagedDiskIdentityParameters struct { } +type StorageAccountIdentityInitParameters struct { +} + type StorageAccountIdentityObservation struct { // The principal UUID for the internal databricks storage account needed to provide access to the workspace for enabling Customer Managed Keys. @@ -151,6 +190,45 @@ type StorageAccountIdentityObservation struct { type StorageAccountIdentityParameters struct { } +type WorkspaceInitParameters struct { + + // A custom_parameters block as documented below. + CustomParameters []CustomParametersInitParameters `json:"customParameters,omitempty" tf:"custom_parameters,omitempty"` + + // Is the workspace enabled for customer managed key encryption? If true this enables the Managed Identity for the managed storage account. Possible values are true or false. Defaults to false. This field is only valid if the Databricks Workspace sku is set to premium. + CustomerManagedKeyEnabled *bool `json:"customerManagedKeyEnabled,omitempty" tf:"customer_managed_key_enabled,omitempty"` + + // Is the Databricks File System root file system enabled with a secondary layer of encryption with platform managed keys? Possible values are true or false. Defaults to false. This field is only valid if the Databricks Workspace sku is set to premium. Changing this forces a new resource to be created. + InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` + + // Resource ID of the Outbound Load balancer Backend Address Pool for Secure Cluster Connectivity (No Public IP) workspace. Changing this forces a new resource to be created. + LoadBalancerBackendAddressPoolID *string `json:"loadBalancerBackendAddressPoolId,omitempty" tf:"load_balancer_backend_address_pool_id,omitempty"` + + // Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Customer managed encryption properties for the Databricks Workspace managed disks. + ManagedDiskCmkKeyVaultKeyID *string `json:"managedDiskCmkKeyVaultKeyId,omitempty" tf:"managed_disk_cmk_key_vault_key_id,omitempty"` + + // Whether customer managed keys for disk encryption will automatically be rotated to the latest version. + ManagedDiskCmkRotationToLatestVersionEnabled *bool `json:"managedDiskCmkRotationToLatestVersionEnabled,omitempty" tf:"managed_disk_cmk_rotation_to_latest_version_enabled,omitempty"` + + // Customer managed encryption properties for the Databricks Workspace managed resources(e.g. Notebooks and Artifacts). + ManagedServicesCmkKeyVaultKeyID *string `json:"managedServicesCmkKeyVaultKeyId,omitempty" tf:"managed_services_cmk_key_vault_key_id,omitempty"` + + // Does the data plane (clusters) to control plane communication happen over private link endpoint only or publicly? Possible values AllRules, NoAzureDatabricksRules or NoAzureServiceRules. Required when public_network_access_enabled is set to false. + NetworkSecurityGroupRulesRequired *string `json:"networkSecurityGroupRulesRequired,omitempty" tf:"network_security_group_rules_required,omitempty"` + + // Allow public access for accessing workspace. Set value to false to access workspace only via private link endpoint. Possible values include true or false. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // The sku to use for the Databricks Workspace. Possible values are standard, premium, or trial. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type WorkspaceObservation struct { // A custom_parameters block as documented below. @@ -298,6 +376,18 @@ type WorkspaceParameters struct { type WorkspaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WorkspaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WorkspaceInitParameters `json:"initProvider,omitempty"` } // WorkspaceStatus defines the observed state of Workspace. @@ -318,8 +408,8 @@ type WorkspaceStatus struct { type Workspace struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec WorkspaceSpec `json:"spec"` Status WorkspaceStatus `json:"status,omitempty"` } diff --git a/apis/databricks/v1beta1/zz_workspacecustomermanagedkey_types.go b/apis/databricks/v1beta1/zz_workspacecustomermanagedkey_types.go index 495c2a4ac..875ba1e28 100755 --- a/apis/databricks/v1beta1/zz_workspacecustomermanagedkey_types.go +++ b/apis/databricks/v1beta1/zz_workspacecustomermanagedkey_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WorkspaceCustomerManagedKeyInitParameters struct { +} + type WorkspaceCustomerManagedKeyObservation struct { // The ID of the Databricks Workspace. @@ -60,6 +63,18 @@ type WorkspaceCustomerManagedKeyParameters struct { type WorkspaceCustomerManagedKeySpec struct { v1.ResourceSpec `json:",inline"` ForProvider WorkspaceCustomerManagedKeyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WorkspaceCustomerManagedKeyInitParameters `json:"initProvider,omitempty"` } // WorkspaceCustomerManagedKeyStatus defines the observed state of WorkspaceCustomerManagedKey. diff --git a/apis/datafactory/v1beta1/zz_customdataset_types.go b/apis/datafactory/v1beta1/zz_customdataset_types.go index 4003cacab..7db6f2a5d 100755 --- a/apis/datafactory/v1beta1/zz_customdataset_types.go +++ b/apis/datafactory/v1beta1/zz_customdataset_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomDataSetInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Dataset. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A linked_service block as defined below. + LinkedService []LinkedServiceInitParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A JSON object that contains the schema of the Data Factory Dataset. + SchemaJSON *string `json:"schemaJson,omitempty" tf:"schema_json,omitempty"` + + // The type of dataset that will be associated with Data Factory. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // A JSON object that contains the properties of the Data Factory Dataset. + TypePropertiesJSON *string `json:"typePropertiesJson,omitempty" tf:"type_properties_json,omitempty"` +} + type CustomDataSetObservation struct { // A map of additional properties to associate with the Data Factory Dataset. @@ -102,6 +132,12 @@ type CustomDataSetParameters struct { TypePropertiesJSON *string `json:"typePropertiesJson,omitempty" tf:"type_properties_json,omitempty"` } +type LinkedServiceInitParameters struct { + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type LinkedServiceObservation struct { // The name of the Data Factory Linked Service. @@ -135,6 +171,18 @@ type LinkedServiceParameters struct { type CustomDataSetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CustomDataSetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CustomDataSetInitParameters `json:"initProvider,omitempty"` } // CustomDataSetStatus defines the observed state of CustomDataSet. @@ -155,9 +203,9 @@ type CustomDataSetStatus struct { type CustomDataSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.linkedService)",message="linkedService is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.typePropertiesJson)",message="typePropertiesJson is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.linkedService) || has(self.initProvider.linkedService)",message="linkedService is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.typePropertiesJson) || has(self.initProvider.typePropertiesJson)",message="typePropertiesJson is a required parameter" Spec CustomDataSetSpec `json:"spec"` Status CustomDataSetStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_dataflow_types.go b/apis/datafactory/v1beta1/zz_dataflow_types.go index f0c4e5acd..90cef012f 100755 --- a/apis/datafactory/v1beta1/zz_dataflow_types.go +++ b/apis/datafactory/v1beta1/zz_dataflow_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataFlowInitParameters struct { + + // List of tags that can be used for describing the Data Factory Data Flow. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Data Flow. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Data Flow is in. If not specified, the Data Flow will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // The script for the Data Factory Data Flow. + Script *string `json:"script,omitempty" tf:"script,omitempty"` + + // The script lines for the Data Factory Data Flow. + ScriptLines []*string `json:"scriptLines,omitempty" tf:"script_lines,omitempty"` + + // One or more sink blocks as defined below. + Sink []SinkInitParameters `json:"sink,omitempty" tf:"sink,omitempty"` + + // One or more source blocks as defined below. + Source []SourceInitParameters `json:"source,omitempty" tf:"source,omitempty"` + + // One or more transformation blocks as defined below. + Transformation []TransformationInitParameters `json:"transformation,omitempty" tf:"transformation,omitempty"` +} + type DataFlowObservation struct { // List of tags that can be used for describing the Data Factory Data Flow. @@ -95,6 +122,12 @@ type DataFlowParameters struct { Transformation []TransformationParameters `json:"transformation,omitempty" tf:"transformation,omitempty"` } +type DataSetInitParameters struct { + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type DataSetObservation struct { // The name for the Data Flow transformation. @@ -124,6 +157,18 @@ type DataSetParameters struct { Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type FlowletInitParameters struct { + + // Specifies the reference data flow parameters from dataset. + DataSetParameters *string `json:"datasetParameters,omitempty" tf:"dataset_parameters,omitempty"` + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type FlowletObservation struct { // Specifies the reference data flow parameters from dataset. @@ -143,14 +188,23 @@ type FlowletParameters struct { DataSetParameters *string `json:"datasetParameters,omitempty" tf:"dataset_parameters,omitempty"` // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type RejectedLinkedServiceInitParameters struct { + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type RejectedLinkedServiceObservation struct { // The name for the Data Flow transformation. @@ -163,14 +217,23 @@ type RejectedLinkedServiceObservation struct { type RejectedLinkedServiceParameters struct { // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type SchemaLinkedServiceInitParameters struct { + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type SchemaLinkedServiceObservation struct { // The name for the Data Flow transformation. @@ -183,14 +246,47 @@ type SchemaLinkedServiceObservation struct { type SchemaLinkedServiceParameters struct { // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type SinkInitParameters struct { + + // A dataset block as defined below. + DataSet []DataSetInitParameters `json:"dataset,omitempty" tf:"dataset,omitempty"` + + // The description for the Data Flow Source. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A flowlet block as defined below. + Flowlet []FlowletInitParameters `json:"flowlet,omitempty" tf:"flowlet,omitempty"` + + // A linked_service block as defined below. + LinkedService []SinkLinkedServiceInitParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` + + // The name for the Data Flow Source. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A rejected_linked_service block as defined below. + RejectedLinkedService []RejectedLinkedServiceInitParameters `json:"rejectedLinkedService,omitempty" tf:"rejected_linked_service,omitempty"` + + // A schema_linked_service block as defined below. + SchemaLinkedService []SchemaLinkedServiceInitParameters `json:"schemaLinkedService,omitempty" tf:"schema_linked_service,omitempty"` +} + +type SinkLinkedServiceInitParameters struct { + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type SinkLinkedServiceObservation struct { // The name for the Data Flow transformation. @@ -203,8 +299,8 @@ type SinkLinkedServiceObservation struct { type SinkLinkedServiceParameters struct { // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional @@ -254,8 +350,8 @@ type SinkParameters struct { LinkedService []SinkLinkedServiceParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` // The name for the Data Flow Source. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A rejected_linked_service block as defined below. // +kubebuilder:validation:Optional @@ -266,6 +362,12 @@ type SinkParameters struct { SchemaLinkedService []SchemaLinkedServiceParameters `json:"schemaLinkedService,omitempty" tf:"schema_linked_service,omitempty"` } +type SourceDataSetInitParameters struct { + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type SourceDataSetObservation struct { // The name for the Data Flow transformation. @@ -295,6 +397,18 @@ type SourceDataSetParameters struct { Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type SourceFlowletInitParameters struct { + + // Specifies the reference data flow parameters from dataset. + DataSetParameters *string `json:"datasetParameters,omitempty" tf:"dataset_parameters,omitempty"` + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type SourceFlowletObservation struct { // Specifies the reference data flow parameters from dataset. @@ -314,14 +428,47 @@ type SourceFlowletParameters struct { DataSetParameters *string `json:"datasetParameters,omitempty" tf:"dataset_parameters,omitempty"` // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type SourceInitParameters struct { + + // A dataset block as defined below. + DataSet []SourceDataSetInitParameters `json:"dataset,omitempty" tf:"dataset,omitempty"` + + // The description for the Data Flow Source. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A flowlet block as defined below. + Flowlet []SourceFlowletInitParameters `json:"flowlet,omitempty" tf:"flowlet,omitempty"` + + // A linked_service block as defined below. + LinkedService []SourceLinkedServiceInitParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` + + // The name for the Data Flow Source. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A rejected_linked_service block as defined below. + RejectedLinkedService []SourceRejectedLinkedServiceInitParameters `json:"rejectedLinkedService,omitempty" tf:"rejected_linked_service,omitempty"` + + // A schema_linked_service block as defined below. + SchemaLinkedService []SourceSchemaLinkedServiceInitParameters `json:"schemaLinkedService,omitempty" tf:"schema_linked_service,omitempty"` +} + +type SourceLinkedServiceInitParameters struct { + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type SourceLinkedServiceObservation struct { // The name for the Data Flow transformation. @@ -334,8 +481,8 @@ type SourceLinkedServiceObservation struct { type SourceLinkedServiceParameters struct { // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional @@ -385,8 +532,8 @@ type SourceParameters struct { LinkedService []SourceLinkedServiceParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` // The name for the Data Flow Source. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A rejected_linked_service block as defined below. // +kubebuilder:validation:Optional @@ -397,6 +544,15 @@ type SourceParameters struct { SchemaLinkedService []SourceSchemaLinkedServiceParameters `json:"schemaLinkedService,omitempty" tf:"schema_linked_service,omitempty"` } +type SourceRejectedLinkedServiceInitParameters struct { + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type SourceRejectedLinkedServiceObservation struct { // The name for the Data Flow transformation. @@ -409,14 +565,23 @@ type SourceRejectedLinkedServiceObservation struct { type SourceRejectedLinkedServiceParameters struct { // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type SourceSchemaLinkedServiceInitParameters struct { + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type SourceSchemaLinkedServiceObservation struct { // The name for the Data Flow transformation. @@ -429,14 +594,23 @@ type SourceSchemaLinkedServiceObservation struct { type SourceSchemaLinkedServiceParameters struct { // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type TransformationDataSetInitParameters struct { + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type TransformationDataSetObservation struct { // The name for the Data Flow transformation. @@ -449,14 +623,26 @@ type TransformationDataSetObservation struct { type TransformationDataSetParameters struct { // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type TransformationFlowletInitParameters struct { + + // Specifies the reference data flow parameters from dataset. + DataSetParameters *string `json:"datasetParameters,omitempty" tf:"dataset_parameters,omitempty"` + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type TransformationFlowletObservation struct { // Specifies the reference data flow parameters from dataset. @@ -476,14 +662,41 @@ type TransformationFlowletParameters struct { DataSetParameters *string `json:"datasetParameters,omitempty" tf:"dataset_parameters,omitempty"` // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type TransformationInitParameters struct { + + // A dataset block as defined below. + DataSet []TransformationDataSetInitParameters `json:"dataset,omitempty" tf:"dataset,omitempty"` + + // The description for the Data Flow transformation. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A flowlet block as defined below. + Flowlet []TransformationFlowletInitParameters `json:"flowlet,omitempty" tf:"flowlet,omitempty"` + + // A linked_service block as defined below. + LinkedService []TransformationLinkedServiceInitParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type TransformationLinkedServiceInitParameters struct { + + // The name for the Data Flow transformation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type TransformationLinkedServiceObservation struct { // The name for the Data Flow transformation. @@ -496,8 +709,8 @@ type TransformationLinkedServiceObservation struct { type TransformationLinkedServiceParameters struct { // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. // +kubebuilder:validation:Optional @@ -541,14 +754,26 @@ type TransformationParameters struct { LinkedService []TransformationLinkedServiceParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` // The name for the Data Flow transformation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` } // DataFlowSpec defines the desired state of DataFlow type DataFlowSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataFlowParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataFlowInitParameters `json:"initProvider,omitempty"` } // DataFlowStatus defines the observed state of DataFlow. @@ -569,8 +794,8 @@ type DataFlowStatus struct { type DataFlow struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sink)",message="sink is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.source)",message="source is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sink) || has(self.initProvider.sink)",message="sink is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.source) || has(self.initProvider.source)",message="source is a required parameter" Spec DataFlowSpec `json:"spec"` Status DataFlowStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetazureblob_types.go b/apis/datafactory/v1beta1/zz_datasetazureblob_types.go index fb857b252..5903bd8c5 100755 --- a/apis/datafactory/v1beta1/zz_datasetazureblob_types.go +++ b/apis/datafactory/v1beta1/zz_datasetazureblob_types.go @@ -13,6 +13,39 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetAzureBlobInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Dataset. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Is the filename using dynamic expression, function or system variables? Defaults to false. + DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` + + // Is the path using dynamic expression, function or system variables? Defaults to false. + DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` + + // The filename of the Azure Blob. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The path of the Azure Blob. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // A schema_column block as defined below. + SchemaColumn []SchemaColumnInitParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` +} + type DataSetAzureBlobObservation struct { // A map of additional properties to associate with the Data Factory Dataset. @@ -125,6 +158,18 @@ type DataSetAzureBlobParameters struct { SchemaColumn []SchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } +type SchemaColumnInitParameters struct { + + // The description of the column. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the column. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type SchemaColumnObservation struct { // The description of the column. @@ -144,8 +189,8 @@ type SchemaColumnParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. // +kubebuilder:validation:Optional @@ -156,6 +201,18 @@ type SchemaColumnParameters struct { type DataSetAzureBlobSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetAzureBlobParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetAzureBlobInitParameters `json:"initProvider,omitempty"` } // DataSetAzureBlobStatus defines the observed state of DataSetAzureBlob. diff --git a/apis/datafactory/v1beta1/zz_datasetbinary_types.go b/apis/datafactory/v1beta1/zz_datasetbinary_types.go index 2e9991a76..869d0550a 100755 --- a/apis/datafactory/v1beta1/zz_datasetbinary_types.go +++ b/apis/datafactory/v1beta1/zz_datasetbinary_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AzureBlobStorageLocationInitParameters struct { + + // The container on the Azure Blob Storage Account hosting the file. + Container *string `json:"container,omitempty" tf:"container,omitempty"` + + // Is the container using dynamic expression, function or system variables? Defaults to false. + DynamicContainerEnabled *bool `json:"dynamicContainerEnabled,omitempty" tf:"dynamic_container_enabled,omitempty"` + + // Is the filename using dynamic expression, function or system variables? Defaults to false. + DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` + + // Is the path using dynamic expression, function or system variables? Defaults to false. + DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` + + // The filename of the file in the blob container. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder path to the file in the blob container. + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + type AzureBlobStorageLocationObservation struct { // The container on the Azure Blob Storage Account hosting the file. @@ -37,8 +58,8 @@ type AzureBlobStorageLocationObservation struct { type AzureBlobStorageLocationParameters struct { // The container on the Azure Blob Storage Account hosting the file. - // +kubebuilder:validation:Required - Container *string `json:"container" tf:"container,omitempty"` + // +kubebuilder:validation:Optional + Container *string `json:"container,omitempty" tf:"container,omitempty"` // Is the container using dynamic expression, function or system variables? Defaults to false. // +kubebuilder:validation:Optional @@ -61,6 +82,15 @@ type AzureBlobStorageLocationParameters struct { Path *string `json:"path,omitempty" tf:"path,omitempty"` } +type CompressionInitParameters struct { + + // The level of compression. Possible values are Fastest and Optimal. + Level *string `json:"level,omitempty" tf:"level,omitempty"` + + // The type of compression used during transport. Possible values are BZip2, Deflate, GZip, Tar, TarGZip and ZipDeflate. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type CompressionObservation struct { // The level of compression. Possible values are Fastest and Optimal. @@ -77,8 +107,38 @@ type CompressionParameters struct { Level *string `json:"level,omitempty" tf:"level,omitempty"` // The type of compression used during transport. Possible values are BZip2, Deflate, GZip, Tar, TarGZip and ZipDeflate. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type DataSetBinaryInitParameters struct { + + // A map of additional properties to associate with the Data Factory Binary Dataset. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Binary Dataset. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // A azure_blob_storage_location block as defined below. + AzureBlobStorageLocation []AzureBlobStorageLocationInitParameters `json:"azureBlobStorageLocation,omitempty" tf:"azure_blob_storage_location,omitempty"` + + // A compression block as defined below. + Compression []CompressionInitParameters `json:"compression,omitempty" tf:"compression,omitempty"` + + // The description for the Data Factory Dataset. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A http_server_location block as defined below. + HTTPServerLocation []HTTPServerLocationInitParameters `json:"httpServerLocation,omitempty" tf:"http_server_location,omitempty"` + + // Specifies a list of parameters to associate with the Data Factory Binary Dataset. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A sftp_server_location block as defined below. + SFTPServerLocation []SFTPServerLocationInitParameters `json:"sftpServerLocation,omitempty" tf:"sftp_server_location,omitempty"` } type DataSetBinaryObservation struct { @@ -186,6 +246,24 @@ type DataSetBinaryParameters struct { SFTPServerLocation []SFTPServerLocationParameters `json:"sftpServerLocation,omitempty" tf:"sftp_server_location,omitempty"` } +type HTTPServerLocationInitParameters struct { + + // Is the filename using dynamic expression, function or system variables? Defaults to false. + DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` + + // Is the path using dynamic expression, function or system variables? Defaults to false. + DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` + + // The filename of the file on the web server. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder path to the file on the web server. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The base URL to the web server hosting the file. + RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` +} + type HTTPServerLocationObservation struct { // Is the filename using dynamic expression, function or system variables? Defaults to false. @@ -215,16 +293,31 @@ type HTTPServerLocationParameters struct { DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. - // +kubebuilder:validation:Required - Filename *string `json:"filename" tf:"filename,omitempty"` + // +kubebuilder:validation:Optional + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` // The base URL to the web server hosting the file. - // +kubebuilder:validation:Required - RelativeURL *string `json:"relativeUrl" tf:"relative_url,omitempty"` + // +kubebuilder:validation:Optional + RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` +} + +type SFTPServerLocationInitParameters struct { + + // Is the filename using dynamic expression, function or system variables? Defaults to false. + DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` + + // Is the path using dynamic expression, function or system variables? Defaults to false. + DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` + + // The filename of the file on the SFTP server. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder path to the file on the SFTP server. + Path *string `json:"path,omitempty" tf:"path,omitempty"` } type SFTPServerLocationObservation struct { @@ -253,18 +346,30 @@ type SFTPServerLocationParameters struct { DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the SFTP server. - // +kubebuilder:validation:Required - Filename *string `json:"filename" tf:"filename,omitempty"` + // +kubebuilder:validation:Optional + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the SFTP server. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` } // DataSetBinarySpec defines the desired state of DataSetBinary type DataSetBinarySpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetBinaryParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetBinaryInitParameters `json:"initProvider,omitempty"` } // DataSetBinaryStatus defines the observed state of DataSetBinary. diff --git a/apis/datafactory/v1beta1/zz_datasetcosmosdbsqlapi_types.go b/apis/datafactory/v1beta1/zz_datasetcosmosdbsqlapi_types.go index 37419c7b4..5aea82101 100755 --- a/apis/datafactory/v1beta1/zz_datasetcosmosdbsqlapi_types.go +++ b/apis/datafactory/v1beta1/zz_datasetcosmosdbsqlapi_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetCosmosDBSQLAPIInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The collection name of the Data Factory Dataset Azure Cosmos DB SQL API. + CollectionName *string `json:"collectionName,omitempty" tf:"collection_name,omitempty"` + + // The description for the Data Factory Dataset. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A schema_column block as defined below. + SchemaColumn []DataSetCosmosDBSQLAPISchemaColumnInitParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` +} + type DataSetCosmosDBSQLAPIObservation struct { // A map of additional properties to associate with the Data Factory Dataset. @@ -104,6 +128,18 @@ type DataSetCosmosDBSQLAPIParameters struct { SchemaColumn []DataSetCosmosDBSQLAPISchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } +type DataSetCosmosDBSQLAPISchemaColumnInitParameters struct { + + // The description of the column. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the column. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DataSetCosmosDBSQLAPISchemaColumnObservation struct { // The description of the column. @@ -123,8 +159,8 @@ type DataSetCosmosDBSQLAPISchemaColumnParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. // +kubebuilder:validation:Optional @@ -135,6 +171,18 @@ type DataSetCosmosDBSQLAPISchemaColumnParameters struct { type DataSetCosmosDBSQLAPISpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetCosmosDBSQLAPIParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetCosmosDBSQLAPIInitParameters `json:"initProvider,omitempty"` } // DataSetCosmosDBSQLAPIStatus defines the observed state of DataSetCosmosDBSQLAPI. diff --git a/apis/datafactory/v1beta1/zz_datasetdelimitedtext_types.go b/apis/datafactory/v1beta1/zz_datasetdelimitedtext_types.go index b99a4a336..9c7813aa1 100755 --- a/apis/datafactory/v1beta1/zz_datasetdelimitedtext_types.go +++ b/apis/datafactory/v1beta1/zz_datasetdelimitedtext_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AzureBlobFsLocationInitParameters struct { + + // The storage data lake gen2 file system on the Azure Blob Storage Account hosting the file. + FileSystem *string `json:"fileSystem,omitempty" tf:"file_system,omitempty"` + + // The filename of the file. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder path to the file. + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + type AzureBlobFsLocationObservation struct { // The storage data lake gen2 file system on the Azure Blob Storage Account hosting the file. @@ -28,8 +40,8 @@ type AzureBlobFsLocationObservation struct { type AzureBlobFsLocationParameters struct { // The storage data lake gen2 file system on the Azure Blob Storage Account hosting the file. - // +kubebuilder:validation:Required - FileSystem *string `json:"fileSystem" tf:"file_system,omitempty"` + // +kubebuilder:validation:Optional + FileSystem *string `json:"fileSystem,omitempty" tf:"file_system,omitempty"` // The filename of the file. // +kubebuilder:validation:Optional @@ -40,6 +52,27 @@ type AzureBlobFsLocationParameters struct { Path *string `json:"path,omitempty" tf:"path,omitempty"` } +type DataSetDelimitedTextAzureBlobStorageLocationInitParameters struct { + + // The container on the Azure Blob Storage Account hosting the file. + Container *string `json:"container,omitempty" tf:"container,omitempty"` + + // Is the container using dynamic expression, function or system variables? Defaults to false. + DynamicContainerEnabled *bool `json:"dynamicContainerEnabled,omitempty" tf:"dynamic_container_enabled,omitempty"` + + // Is the filename using dynamic expression, function or system variables? Defaults to false. + DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` + + // Is the path using dynamic expression, function or system variables? Defaults to false. + DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` + + // The filename of the file. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder path to the file. This can be an empty string. + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + type DataSetDelimitedTextAzureBlobStorageLocationObservation struct { // The container on the Azure Blob Storage Account hosting the file. @@ -64,8 +97,8 @@ type DataSetDelimitedTextAzureBlobStorageLocationObservation struct { type DataSetDelimitedTextAzureBlobStorageLocationParameters struct { // The container on the Azure Blob Storage Account hosting the file. - // +kubebuilder:validation:Required - Container *string `json:"container" tf:"container,omitempty"` + // +kubebuilder:validation:Optional + Container *string `json:"container,omitempty" tf:"container,omitempty"` // Is the container using dynamic expression, function or system variables? Defaults to false. // +kubebuilder:validation:Optional @@ -88,6 +121,24 @@ type DataSetDelimitedTextAzureBlobStorageLocationParameters struct { Path *string `json:"path,omitempty" tf:"path,omitempty"` } +type DataSetDelimitedTextHTTPServerLocationInitParameters struct { + + // Is the filename using dynamic expression, function or system variables? Defaults to false. + DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` + + // Is the path using dynamic expression, function or system variables? Defaults to false. + DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` + + // The filename of the file on the web server. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder path to the file on the web server. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The base URL to the web server hosting the file. + RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` +} + type DataSetDelimitedTextHTTPServerLocationObservation struct { // Is the filename using dynamic expression, function or system variables? Defaults to false. @@ -117,16 +168,73 @@ type DataSetDelimitedTextHTTPServerLocationParameters struct { DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. - // +kubebuilder:validation:Required - Filename *string `json:"filename" tf:"filename,omitempty"` + // +kubebuilder:validation:Optional + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` // The base URL to the web server hosting the file. - // +kubebuilder:validation:Required - RelativeURL *string `json:"relativeUrl" tf:"relative_url,omitempty"` + // +kubebuilder:validation:Optional + RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` +} + +type DataSetDelimitedTextInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // An azure_blob_fs_location block as defined below. + AzureBlobFsLocation []AzureBlobFsLocationInitParameters `json:"azureBlobFsLocation,omitempty" tf:"azure_blob_fs_location,omitempty"` + + // An azure_blob_storage_location block as defined below. + AzureBlobStorageLocation []DataSetDelimitedTextAzureBlobStorageLocationInitParameters `json:"azureBlobStorageLocation,omitempty" tf:"azure_blob_storage_location,omitempty"` + + // The column delimiter. Defaults to ,. + ColumnDelimiter *string `json:"columnDelimiter,omitempty" tf:"column_delimiter,omitempty"` + + // The compression codec used to read/write text files. Valid values are None, bzip2, gzip, deflate, ZipDeflate, TarGzip, Tar, snappy and lz4. Please note these values are case sensitive. + CompressionCodec *string `json:"compressionCodec,omitempty" tf:"compression_codec,omitempty"` + + // The compression ratio for the Data Factory Dataset. Valid values are Fastest or Optimal. Please note these values are case sensitive. + CompressionLevel *string `json:"compressionLevel,omitempty" tf:"compression_level,omitempty"` + + // The description for the Data Factory Dataset. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The encoding format for the file. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // The escape character. Defaults to \. + EscapeCharacter *string `json:"escapeCharacter,omitempty" tf:"escape_character,omitempty"` + + // When used as input, treat the first row of data as headers. When used as output, write the headers into the output as the first row of data. Defaults to false. + FirstRowAsHeader *bool `json:"firstRowAsHeader,omitempty" tf:"first_row_as_header,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A http_server_location block as defined below. + HTTPServerLocation []DataSetDelimitedTextHTTPServerLocationInitParameters `json:"httpServerLocation,omitempty" tf:"http_server_location,omitempty"` + + // The null value string. Defaults to an empty string. Defaults to "". + NullValue *string `json:"nullValue,omitempty" tf:"null_value,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The quote character. Defaults to ". + QuoteCharacter *string `json:"quoteCharacter,omitempty" tf:"quote_character,omitempty"` + + // The row delimiter. Defaults to any of the following values on read: \r\n, \r, \n, and \n or \r\n on write by mapping data flow and Copy activity respectively. + RowDelimiter *string `json:"rowDelimiter,omitempty" tf:"row_delimiter,omitempty"` + + // A schema_column block as defined below. + SchemaColumn []DataSetDelimitedTextSchemaColumnInitParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } type DataSetDelimitedTextObservation struct { @@ -297,6 +405,18 @@ type DataSetDelimitedTextParameters struct { SchemaColumn []DataSetDelimitedTextSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } +type DataSetDelimitedTextSchemaColumnInitParameters struct { + + // The description of the column. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the column. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DataSetDelimitedTextSchemaColumnObservation struct { // The description of the column. @@ -316,8 +436,8 @@ type DataSetDelimitedTextSchemaColumnParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. // +kubebuilder:validation:Optional @@ -328,6 +448,18 @@ type DataSetDelimitedTextSchemaColumnParameters struct { type DataSetDelimitedTextSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetDelimitedTextParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetDelimitedTextInitParameters `json:"initProvider,omitempty"` } // DataSetDelimitedTextStatus defines the observed state of DataSetDelimitedText. diff --git a/apis/datafactory/v1beta1/zz_datasethttp_types.go b/apis/datafactory/v1beta1/zz_datasethttp_types.go index b76c4bd9c..2ef5881f0 100755 --- a/apis/datafactory/v1beta1/zz_datasethttp_types.go +++ b/apis/datafactory/v1beta1/zz_datasethttp_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetHTTPInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Dataset. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The relative URL based on the URL in the HTTP Linked Service. + RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` + + // The body for the HTTP request. + RequestBody *string `json:"requestBody,omitempty" tf:"request_body,omitempty"` + + // The HTTP method for the HTTP request. (e.g. GET, POST) + RequestMethod *string `json:"requestMethod,omitempty" tf:"request_method,omitempty"` + + // A schema_column block as defined below. + SchemaColumn []DataSetHTTPSchemaColumnInitParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` +} + type DataSetHTTPObservation struct { // A map of additional properties to associate with the Data Factory Dataset. @@ -118,6 +148,18 @@ type DataSetHTTPParameters struct { SchemaColumn []DataSetHTTPSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } +type DataSetHTTPSchemaColumnInitParameters struct { + + // The description of the column. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the column. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DataSetHTTPSchemaColumnObservation struct { // The description of the column. @@ -137,8 +179,8 @@ type DataSetHTTPSchemaColumnParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. // +kubebuilder:validation:Optional @@ -149,6 +191,18 @@ type DataSetHTTPSchemaColumnParameters struct { type DataSetHTTPSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetHTTPParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetHTTPInitParameters `json:"initProvider,omitempty"` } // DataSetHTTPStatus defines the observed state of DataSetHTTP. diff --git a/apis/datafactory/v1beta1/zz_datasetjson_types.go b/apis/datafactory/v1beta1/zz_datasetjson_types.go index 165ea9043..bb465bd42 100755 --- a/apis/datafactory/v1beta1/zz_datasetjson_types.go +++ b/apis/datafactory/v1beta1/zz_datasetjson_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetJSONAzureBlobStorageLocationInitParameters struct { + + // The container on the Azure Blob Storage Account hosting the file. + Container *string `json:"container,omitempty" tf:"container,omitempty"` + + // Is the container using dynamic expression, function or system variables? Defaults to false. + DynamicContainerEnabled *bool `json:"dynamicContainerEnabled,omitempty" tf:"dynamic_container_enabled,omitempty"` + + // Is the filename using dynamic expression, function or system variables? Defaults to false. + DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` + + // Is the path using dynamic expression, function or system variables? Defaults to false. + DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` + + // The filename of the file on the web server. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder path to the file on the web server. + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + type DataSetJSONAzureBlobStorageLocationObservation struct { // The container on the Azure Blob Storage Account hosting the file. @@ -37,8 +58,8 @@ type DataSetJSONAzureBlobStorageLocationObservation struct { type DataSetJSONAzureBlobStorageLocationParameters struct { // The container on the Azure Blob Storage Account hosting the file. - // +kubebuilder:validation:Required - Container *string `json:"container" tf:"container,omitempty"` + // +kubebuilder:validation:Optional + Container *string `json:"container,omitempty" tf:"container,omitempty"` // Is the container using dynamic expression, function or system variables? Defaults to false. // +kubebuilder:validation:Optional @@ -53,12 +74,30 @@ type DataSetJSONAzureBlobStorageLocationParameters struct { DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. - // +kubebuilder:validation:Required - Filename *string `json:"filename" tf:"filename,omitempty"` + // +kubebuilder:validation:Optional + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder path to the file on the web server. + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + +type DataSetJSONHTTPServerLocationInitParameters struct { + + // Is the filename using dynamic expression, function or system variables? Defaults to false. + DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` + + // Is the path using dynamic expression, function or system variables? Defaults to false. + DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` + + // The filename of the file on the web server. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The base URL to the web server hosting the file. + RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` } type DataSetJSONHTTPServerLocationObservation struct { @@ -90,16 +129,46 @@ type DataSetJSONHTTPServerLocationParameters struct { DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. - // +kubebuilder:validation:Required - Filename *string `json:"filename" tf:"filename,omitempty"` + // +kubebuilder:validation:Optional + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` // The base URL to the web server hosting the file. - // +kubebuilder:validation:Required - RelativeURL *string `json:"relativeUrl" tf:"relative_url,omitempty"` + // +kubebuilder:validation:Optional + RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` +} + +type DataSetJSONInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // A azure_blob_storage_location block as defined below. + AzureBlobStorageLocation []DataSetJSONAzureBlobStorageLocationInitParameters `json:"azureBlobStorageLocation,omitempty" tf:"azure_blob_storage_location,omitempty"` + + // The description for the Data Factory Dataset. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The encoding format for the file. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A http_server_location block as defined below. + HTTPServerLocation []DataSetJSONHTTPServerLocationInitParameters `json:"httpServerLocation,omitempty" tf:"http_server_location,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A schema_column block as defined below. + SchemaColumn []DataSetJSONSchemaColumnInitParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } type DataSetJSONObservation struct { @@ -207,6 +276,18 @@ type DataSetJSONParameters struct { SchemaColumn []DataSetJSONSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } +type DataSetJSONSchemaColumnInitParameters struct { + + // The description of the column. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the column. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DataSetJSONSchemaColumnObservation struct { // The description of the column. @@ -226,8 +307,8 @@ type DataSetJSONSchemaColumnParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. // +kubebuilder:validation:Optional @@ -238,6 +319,18 @@ type DataSetJSONSchemaColumnParameters struct { type DataSetJSONSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetJSONParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetJSONInitParameters `json:"initProvider,omitempty"` } // DataSetJSONStatus defines the observed state of DataSetJSON. diff --git a/apis/datafactory/v1beta1/zz_datasetmysql_types.go b/apis/datafactory/v1beta1/zz_datasetmysql_types.go index 01ba57126..64bbb206f 100755 --- a/apis/datafactory/v1beta1/zz_datasetmysql_types.go +++ b/apis/datafactory/v1beta1/zz_datasetmysql_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetMySQLInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset MySQL. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset MySQL. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Dataset MySQL. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset MySQL. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A schema_column block as defined below. + SchemaColumn []DataSetMySQLSchemaColumnInitParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` + + // The table name of the Data Factory Dataset MySQL. + TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` +} + type DataSetMySQLObservation struct { // A map of additional properties to associate with the Data Factory Dataset MySQL. @@ -104,6 +128,18 @@ type DataSetMySQLParameters struct { TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } +type DataSetMySQLSchemaColumnInitParameters struct { + + // The description of the column. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the column. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DataSetMySQLSchemaColumnObservation struct { // The description of the column. @@ -123,8 +159,8 @@ type DataSetMySQLSchemaColumnParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. // +kubebuilder:validation:Optional @@ -135,6 +171,18 @@ type DataSetMySQLSchemaColumnParameters struct { type DataSetMySQLSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetMySQLParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetMySQLInitParameters `json:"initProvider,omitempty"` } // DataSetMySQLStatus defines the observed state of DataSetMySQL. diff --git a/apis/datafactory/v1beta1/zz_datasetparquet_types.go b/apis/datafactory/v1beta1/zz_datasetparquet_types.go index aed4c02b6..73fcb75e7 100755 --- a/apis/datafactory/v1beta1/zz_datasetparquet_types.go +++ b/apis/datafactory/v1beta1/zz_datasetparquet_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetParquetAzureBlobStorageLocationInitParameters struct { + + // The container on the Azure Blob Storage Account hosting the file. + Container *string `json:"container,omitempty" tf:"container,omitempty"` + + // Is the container using dynamic expression, function or system variables? Defaults to false. + DynamicContainerEnabled *bool `json:"dynamicContainerEnabled,omitempty" tf:"dynamic_container_enabled,omitempty"` + + // Is the filename using dynamic expression, function or system variables? Defaults to false. + DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` + + // Is the path using dynamic expression, function or system variables? Defaults to false. + DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` + + // The filename of the file on the web server. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder path to the file on the web server. + Path *string `json:"path,omitempty" tf:"path,omitempty"` +} + type DataSetParquetAzureBlobStorageLocationObservation struct { // The container on the Azure Blob Storage Account hosting the file. @@ -37,8 +58,8 @@ type DataSetParquetAzureBlobStorageLocationObservation struct { type DataSetParquetAzureBlobStorageLocationParameters struct { // The container on the Azure Blob Storage Account hosting the file. - // +kubebuilder:validation:Required - Container *string `json:"container" tf:"container,omitempty"` + // +kubebuilder:validation:Optional + Container *string `json:"container,omitempty" tf:"container,omitempty"` // Is the container using dynamic expression, function or system variables? Defaults to false. // +kubebuilder:validation:Optional @@ -61,6 +82,24 @@ type DataSetParquetAzureBlobStorageLocationParameters struct { Path *string `json:"path,omitempty" tf:"path,omitempty"` } +type DataSetParquetHTTPServerLocationInitParameters struct { + + // Is the filename using dynamic expression, function or system variables? Defaults to false. + DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` + + // Is the path using dynamic expression, function or system variables? Defaults to false. + DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` + + // The filename of the file on the web server. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` + + // The folder path to the file on the web server. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The base URL to the web server hosting the file. + RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` +} + type DataSetParquetHTTPServerLocationObservation struct { // Is the filename using dynamic expression, function or system variables? Defaults to false. @@ -90,16 +129,49 @@ type DataSetParquetHTTPServerLocationParameters struct { DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. - // +kubebuilder:validation:Required - Filename *string `json:"filename" tf:"filename,omitempty"` + // +kubebuilder:validation:Optional + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The base URL to the web server hosting the file. - // +kubebuilder:validation:Required - RelativeURL *string `json:"relativeUrl" tf:"relative_url,omitempty"` + // +kubebuilder:validation:Optional + RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` +} + +type DataSetParquetInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // A azure_blob_storage_location block as defined below. + AzureBlobStorageLocation []DataSetParquetAzureBlobStorageLocationInitParameters `json:"azureBlobStorageLocation,omitempty" tf:"azure_blob_storage_location,omitempty"` + + // The compression codec used to read/write text files. Valid values are bzip2, gzip, deflate, ZipDeflate, TarGzip, Tar, snappy, or lz4. Please note these values are case-sensitive. + CompressionCodec *string `json:"compressionCodec,omitempty" tf:"compression_codec,omitempty"` + + // Specifies the compression level. Possible values are Optimal and Fastest, + CompressionLevel *string `json:"compressionLevel,omitempty" tf:"compression_level,omitempty"` + + // The description for the Data Factory Dataset. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A http_server_location block as defined below. + HTTPServerLocation []DataSetParquetHTTPServerLocationInitParameters `json:"httpServerLocation,omitempty" tf:"http_server_location,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A schema_column block as defined below. + SchemaColumn []DataSetParquetSchemaColumnInitParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } type DataSetParquetObservation struct { @@ -214,6 +286,18 @@ type DataSetParquetParameters struct { SchemaColumn []DataSetParquetSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } +type DataSetParquetSchemaColumnInitParameters struct { + + // The description of the column. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the column. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DataSetParquetSchemaColumnObservation struct { // The description of the column. @@ -233,8 +317,8 @@ type DataSetParquetSchemaColumnParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. // +kubebuilder:validation:Optional @@ -245,6 +329,18 @@ type DataSetParquetSchemaColumnParameters struct { type DataSetParquetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetParquetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetParquetInitParameters `json:"initProvider,omitempty"` } // DataSetParquetStatus defines the observed state of DataSetParquet. diff --git a/apis/datafactory/v1beta1/zz_datasetpostgresql_types.go b/apis/datafactory/v1beta1/zz_datasetpostgresql_types.go index 7cf814a4f..d4c2574de 100755 --- a/apis/datafactory/v1beta1/zz_datasetpostgresql_types.go +++ b/apis/datafactory/v1beta1/zz_datasetpostgresql_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetPostgreSQLInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset PostgreSQL. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset PostgreSQL. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Dataset PostgreSQL. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset PostgreSQL. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A schema_column block as defined below. + SchemaColumn []DataSetPostgreSQLSchemaColumnInitParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` + + // The table name of the Data Factory Dataset PostgreSQL. + TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` +} + type DataSetPostgreSQLObservation struct { // A map of additional properties to associate with the Data Factory Dataset PostgreSQL. @@ -104,6 +128,18 @@ type DataSetPostgreSQLParameters struct { TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } +type DataSetPostgreSQLSchemaColumnInitParameters struct { + + // The description of the column. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the column. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DataSetPostgreSQLSchemaColumnObservation struct { // The description of the column. @@ -123,8 +159,8 @@ type DataSetPostgreSQLSchemaColumnParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. // +kubebuilder:validation:Optional @@ -135,6 +171,18 @@ type DataSetPostgreSQLSchemaColumnParameters struct { type DataSetPostgreSQLSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetPostgreSQLParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetPostgreSQLInitParameters `json:"initProvider,omitempty"` } // DataSetPostgreSQLStatus defines the observed state of DataSetPostgreSQL. diff --git a/apis/datafactory/v1beta1/zz_datasetsnowflake_types.go b/apis/datafactory/v1beta1/zz_datasetsnowflake_types.go index d48cde17f..065a499fb 100755 --- a/apis/datafactory/v1beta1/zz_datasetsnowflake_types.go +++ b/apis/datafactory/v1beta1/zz_datasetsnowflake_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetSnowflakeInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset Snowflake. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset Snowflake. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Dataset Snowflake. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset Snowflake. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A schema_column block as defined below. + SchemaColumn []DataSetSnowflakeSchemaColumnInitParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` + + // The schema name of the Data Factory Dataset Snowflake. + SchemaName *string `json:"schemaName,omitempty" tf:"schema_name,omitempty"` + + // The table name of the Data Factory Dataset Snowflake. + TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` +} + type DataSetSnowflakeObservation struct { // A map of additional properties to associate with the Data Factory Dataset Snowflake. @@ -111,6 +138,21 @@ type DataSetSnowflakeParameters struct { TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } +type DataSetSnowflakeSchemaColumnInitParameters struct { + + // The name of the column. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The total number of digits allowed. + Precision *float64 `json:"precision,omitempty" tf:"precision,omitempty"` + + // The number of digits allowed to the right of the decimal point. + Scale *float64 `json:"scale,omitempty" tf:"scale,omitempty"` + + // Type of the column. Valid values are NUMBER, DECIMAL, NUMERIC, INT, INTEGER, BIGINT, SMALLINT, FLOAT“FLOAT4, FLOAT8, DOUBLE, DOUBLE PRECISION, REAL, VARCHAR, CHAR, CHARACTER, STRING, TEXT, BINARY, VARBINARY, BOOLEAN, DATE, DATETIME, TIME, TIMESTAMP, TIMESTAMP_LTZ, TIMESTAMP_NTZ, TIMESTAMP_TZ, VARIANT, OBJECT, ARRAY, GEOGRAPHY. Please note these values are case sensitive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DataSetSnowflakeSchemaColumnObservation struct { // The name of the column. @@ -129,8 +171,8 @@ type DataSetSnowflakeSchemaColumnObservation struct { type DataSetSnowflakeSchemaColumnParameters struct { // The name of the column. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The total number of digits allowed. // +kubebuilder:validation:Optional @@ -149,6 +191,18 @@ type DataSetSnowflakeSchemaColumnParameters struct { type DataSetSnowflakeSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetSnowflakeParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetSnowflakeInitParameters `json:"initProvider,omitempty"` } // DataSetSnowflakeStatus defines the observed state of DataSetSnowflake. diff --git a/apis/datafactory/v1beta1/zz_datasetsqlservertable_types.go b/apis/datafactory/v1beta1/zz_datasetsqlservertable_types.go index 1766d29a4..43ff8fd5e 100755 --- a/apis/datafactory/v1beta1/zz_datasetsqlservertable_types.go +++ b/apis/datafactory/v1beta1/zz_datasetsqlservertable_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetSQLServerTableInitParameters struct { + + // A map of additional properties to associate with the Data Factory Dataset SQL Server Table. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Dataset SQL Server Table. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Dataset SQL Server Table. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // A map of parameters to associate with the Data Factory Dataset SQL Server Table. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A schema_column block as defined below. + SchemaColumn []DataSetSQLServerTableSchemaColumnInitParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` + + // The table name of the Data Factory Dataset SQL Server Table. + TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` +} + type DataSetSQLServerTableObservation struct { // A map of additional properties to associate with the Data Factory Dataset SQL Server Table. @@ -104,6 +128,18 @@ type DataSetSQLServerTableParameters struct { TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } +type DataSetSQLServerTableSchemaColumnInitParameters struct { + + // The description of the column. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the column. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DataSetSQLServerTableSchemaColumnObservation struct { // The description of the column. @@ -123,8 +159,8 @@ type DataSetSQLServerTableSchemaColumnParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. // +kubebuilder:validation:Optional @@ -135,6 +171,18 @@ type DataSetSQLServerTableSchemaColumnParameters struct { type DataSetSQLServerTableSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetSQLServerTableParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetSQLServerTableInitParameters `json:"initProvider,omitempty"` } // DataSetSQLServerTableStatus defines the observed state of DataSetSQLServerTable. diff --git a/apis/datafactory/v1beta1/zz_factory_types.go b/apis/datafactory/v1beta1/zz_factory_types.go index 24a53bcd2..738fb6e6e 100755 --- a/apis/datafactory/v1beta1/zz_factory_types.go +++ b/apis/datafactory/v1beta1/zz_factory_types.go @@ -13,6 +13,42 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FactoryInitParameters struct { + + // Specifies the Azure Key Vault Key ID to be used as the Customer Managed Key (CMK) for double encryption. Required with user assigned identity. + CustomerManagedKeyID *string `json:"customerManagedKeyId,omitempty" tf:"customer_managed_key_id,omitempty"` + + // Specifies the ID of the user assigned identity associated with the Customer Managed Key. Must be supplied if customer_managed_key_id is set. + CustomerManagedKeyIdentityID *string `json:"customerManagedKeyIdentityId,omitempty" tf:"customer_managed_key_identity_id,omitempty"` + + // A github_configuration block as defined below. + GithubConfiguration []GithubConfigurationInitParameters `json:"githubConfiguration,omitempty" tf:"github_configuration,omitempty"` + + // A list of global_parameter blocks as defined above. + GlobalParameter []GlobalParameterInitParameters `json:"globalParameter,omitempty" tf:"global_parameter,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Is Managed Virtual Network enabled? + ManagedVirtualNetworkEnabled *bool `json:"managedVirtualNetworkEnabled,omitempty" tf:"managed_virtual_network_enabled,omitempty"` + + // Is the Data Factory visible to the public network? Defaults to true. + PublicNetworkEnabled *bool `json:"publicNetworkEnabled,omitempty" tf:"public_network_enabled,omitempty"` + + // Specifies the ID of the purview account resource associated with the Data Factory. + PurviewID *string `json:"purviewId,omitempty" tf:"purview_id,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A vsts_configuration block as defined below. + VstsConfiguration []VstsConfigurationInitParameters `json:"vstsConfiguration,omitempty" tf:"vsts_configuration,omitempty"` +} + type FactoryObservation struct { // Specifies the Azure Key Vault Key ID to be used as the Customer Managed Key (CMK) for double encryption. Required with user assigned identity. @@ -115,6 +151,24 @@ type FactoryParameters struct { VstsConfiguration []VstsConfigurationParameters `json:"vstsConfiguration,omitempty" tf:"vsts_configuration,omitempty"` } +type GithubConfigurationInitParameters struct { + + // Specifies the GitHub account name. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // Specifies the branch of the repository to get code from. + BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` + + // Specifies the GitHub Enterprise host name. For example: https://github.mydomain.com. Use https://github.com for open source repositories. + GitURL *string `json:"gitUrl,omitempty" tf:"git_url,omitempty"` + + // Specifies the name of the git repository. + RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` + + // Specifies the root folder within the repository. Set to / for the top level. + RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` +} + type GithubConfigurationObservation struct { // Specifies the GitHub account name. @@ -136,24 +190,36 @@ type GithubConfigurationObservation struct { type GithubConfigurationParameters struct { // Specifies the GitHub account name. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // Specifies the branch of the repository to get code from. - // +kubebuilder:validation:Required - BranchName *string `json:"branchName" tf:"branch_name,omitempty"` + // +kubebuilder:validation:Optional + BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` // Specifies the GitHub Enterprise host name. For example: https://github.mydomain.com. Use https://github.com for open source repositories. - // +kubebuilder:validation:Required - GitURL *string `json:"gitUrl" tf:"git_url,omitempty"` + // +kubebuilder:validation:Optional + GitURL *string `json:"gitUrl,omitempty" tf:"git_url,omitempty"` // Specifies the name of the git repository. - // +kubebuilder:validation:Required - RepositoryName *string `json:"repositoryName" tf:"repository_name,omitempty"` + // +kubebuilder:validation:Optional + RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` // Specifies the root folder within the repository. Set to / for the top level. - // +kubebuilder:validation:Required - RootFolder *string `json:"rootFolder" tf:"root_folder,omitempty"` + // +kubebuilder:validation:Optional + RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` +} + +type GlobalParameterInitParameters struct { + + // Specifies the global parameter name. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the global parameter type. Possible Values are Array, Bool, Float, Int, Object or String. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // Specifies the global parameter value. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type GlobalParameterObservation struct { @@ -171,16 +237,25 @@ type GlobalParameterObservation struct { type GlobalParameterParameters struct { // Specifies the global parameter name. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the global parameter type. Possible Values are Array, Bool, Float, Int, Object or String. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // Specifies the global parameter value. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Data Factory. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Data Factory. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type IdentityObservation struct { @@ -205,8 +280,29 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Data Factory. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type VstsConfigurationInitParameters struct { + + // Specifies the VSTS account name. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // Specifies the branch of the repository to get code from. + BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` + + // Specifies the name of the VSTS project. + ProjectName *string `json:"projectName,omitempty" tf:"project_name,omitempty"` + + // Specifies the name of the git repository. + RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` + + // Specifies the root folder within the repository. Set to / for the top level. + RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` + + // Specifies the Tenant ID associated with the VSTS account. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } type VstsConfigurationObservation struct { @@ -233,34 +329,46 @@ type VstsConfigurationObservation struct { type VstsConfigurationParameters struct { // Specifies the VSTS account name. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // Specifies the branch of the repository to get code from. - // +kubebuilder:validation:Required - BranchName *string `json:"branchName" tf:"branch_name,omitempty"` + // +kubebuilder:validation:Optional + BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` // Specifies the name of the VSTS project. - // +kubebuilder:validation:Required - ProjectName *string `json:"projectName" tf:"project_name,omitempty"` + // +kubebuilder:validation:Optional + ProjectName *string `json:"projectName,omitempty" tf:"project_name,omitempty"` // Specifies the name of the git repository. - // +kubebuilder:validation:Required - RepositoryName *string `json:"repositoryName" tf:"repository_name,omitempty"` + // +kubebuilder:validation:Optional + RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` // Specifies the root folder within the repository. Set to / for the top level. - // +kubebuilder:validation:Required - RootFolder *string `json:"rootFolder" tf:"root_folder,omitempty"` + // +kubebuilder:validation:Optional + RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` // Specifies the Tenant ID associated with the VSTS account. - // +kubebuilder:validation:Required - TenantID *string `json:"tenantId" tf:"tenant_id,omitempty"` + // +kubebuilder:validation:Optional + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } // FactorySpec defines the desired state of Factory type FactorySpec struct { v1.ResourceSpec `json:",inline"` ForProvider FactoryParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FactoryInitParameters `json:"initProvider,omitempty"` } // FactoryStatus defines the observed state of Factory. @@ -281,7 +389,7 @@ type FactoryStatus struct { type Factory struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec FactorySpec `json:"spec"` Status FactoryStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_generated.deepcopy.go b/apis/datafactory/v1beta1/zz_generated.deepcopy.go index 7f3734999..6ba7111d4 100644 --- a/apis/datafactory/v1beta1/zz_generated.deepcopy.go +++ b/apis/datafactory/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,36 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureBlobFsLocationInitParameters) DeepCopyInto(out *AzureBlobFsLocationInitParameters) { + *out = *in + if in.FileSystem != nil { + in, out := &in.FileSystem, &out.FileSystem + *out = new(string) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureBlobFsLocationInitParameters. +func (in *AzureBlobFsLocationInitParameters) DeepCopy() *AzureBlobFsLocationInitParameters { + if in == nil { + return nil + } + out := new(AzureBlobFsLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureBlobFsLocationObservation) DeepCopyInto(out *AzureBlobFsLocationObservation) { *out = *in @@ -74,6 +104,51 @@ func (in *AzureBlobFsLocationParameters) DeepCopy() *AzureBlobFsLocationParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureBlobStorageLocationInitParameters) DeepCopyInto(out *AzureBlobStorageLocationInitParameters) { + *out = *in + if in.Container != nil { + in, out := &in.Container, &out.Container + *out = new(string) + **out = **in + } + if in.DynamicContainerEnabled != nil { + in, out := &in.DynamicContainerEnabled, &out.DynamicContainerEnabled + *out = new(bool) + **out = **in + } + if in.DynamicFilenameEnabled != nil { + in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled + *out = new(bool) + **out = **in + } + if in.DynamicPathEnabled != nil { + in, out := &in.DynamicPathEnabled, &out.DynamicPathEnabled + *out = new(bool) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureBlobStorageLocationInitParameters. +func (in *AzureBlobStorageLocationInitParameters) DeepCopy() *AzureBlobStorageLocationInitParameters { + if in == nil { + return nil + } + out := new(AzureBlobStorageLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureBlobStorageLocationObservation) DeepCopyInto(out *AzureBlobStorageLocationObservation) { *out = *in @@ -164,6 +239,26 @@ func (in *AzureBlobStorageLocationParameters) DeepCopy() *AzureBlobStorageLocati return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BasicAuthenticationInitParameters) DeepCopyInto(out *BasicAuthenticationInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BasicAuthenticationInitParameters. +func (in *BasicAuthenticationInitParameters) DeepCopy() *BasicAuthenticationInitParameters { + if in == nil { + return nil + } + out := new(BasicAuthenticationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BasicAuthenticationObservation) DeepCopyInto(out *BasicAuthenticationObservation) { *out = *in @@ -205,6 +300,46 @@ func (in *BasicAuthenticationParameters) DeepCopy() *BasicAuthenticationParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CatalogInfoInitParameters) DeepCopyInto(out *CatalogInfoInitParameters) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.DualStandbyPairName != nil { + in, out := &in.DualStandbyPairName, &out.DualStandbyPairName + *out = new(string) + **out = **in + } + if in.ElasticPoolName != nil { + in, out := &in.ElasticPoolName, &out.ElasticPoolName + *out = new(string) + **out = **in + } + if in.PricingTier != nil { + in, out := &in.PricingTier, &out.PricingTier + *out = new(string) + **out = **in + } + if in.ServerEndpoint != nil { + in, out := &in.ServerEndpoint, &out.ServerEndpoint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogInfoInitParameters. +func (in *CatalogInfoInitParameters) DeepCopy() *CatalogInfoInitParameters { + if in == nil { + return nil + } + out := new(CatalogInfoInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CatalogInfoObservation) DeepCopyInto(out *CatalogInfoObservation) { *out = *in @@ -290,6 +425,38 @@ func (in *CatalogInfoParameters) DeepCopy() *CatalogInfoParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CommandKeyInitParameters) DeepCopyInto(out *CommandKeyInitParameters) { + *out = *in + if in.KeyVaultPassword != nil { + in, out := &in.KeyVaultPassword, &out.KeyVaultPassword + *out = make([]KeyVaultPasswordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetName != nil { + in, out := &in.TargetName, &out.TargetName + *out = new(string) + **out = **in + } + if in.UserName != nil { + in, out := &in.UserName, &out.UserName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommandKeyInitParameters. +func (in *CommandKeyInitParameters) DeepCopy() *CommandKeyInitParameters { + if in == nil { + return nil + } + out := new(CommandKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CommandKeyObservation) DeepCopyInto(out *CommandKeyObservation) { *out = *in @@ -359,6 +526,33 @@ func (in *CommandKeyParameters) DeepCopy() *CommandKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComponentInitParameters) DeepCopyInto(out *ComponentInitParameters) { + *out = *in + if in.KeyVaultLicense != nil { + in, out := &in.KeyVaultLicense, &out.KeyVaultLicense + *out = make([]KeyVaultLicenseInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentInitParameters. +func (in *ComponentInitParameters) DeepCopy() *ComponentInitParameters { + if in == nil { + return nil + } + out := new(ComponentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ComponentObservation) DeepCopyInto(out *ComponentObservation) { *out = *in @@ -418,6 +612,31 @@ func (in *ComponentParameters) DeepCopy() *ComponentParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CompressionInitParameters) DeepCopyInto(out *CompressionInitParameters) { + *out = *in + if in.Level != nil { + in, out := &in.Level, &out.Level + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompressionInitParameters. +func (in *CompressionInitParameters) DeepCopy() *CompressionInitParameters { + if in == nil { + return nil + } + out := new(CompressionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CompressionObservation) DeepCopyInto(out *CompressionObservation) { *out = *in @@ -496,39 +715,7 @@ func (in *CustomDataSet) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CustomDataSetList) DeepCopyInto(out *CustomDataSetList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]CustomDataSet, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDataSetList. -func (in *CustomDataSetList) DeepCopy() *CustomDataSetList { - if in == nil { - return nil - } - out := new(CustomDataSetList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *CustomDataSetList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CustomDataSetObservation) DeepCopyInto(out *CustomDataSetObservation) { +func (in *CustomDataSetInitParameters) DeepCopyInto(out *CustomDataSetInitParameters) { *out = *in if in.AdditionalProperties != nil { in, out := &in.AdditionalProperties, &out.AdditionalProperties @@ -556,11 +743,6 @@ func (in *CustomDataSetObservation) DeepCopyInto(out *CustomDataSetObservation) } } } - if in.DataFactoryID != nil { - in, out := &in.DataFactoryID, &out.DataFactoryID - *out = new(string) - **out = **in - } if in.Description != nil { in, out := &in.Description, &out.Description *out = new(string) @@ -571,14 +753,9 @@ func (in *CustomDataSetObservation) DeepCopyInto(out *CustomDataSetObservation) *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.LinkedService != nil { in, out := &in.LinkedService, &out.LinkedService - *out = make([]LinkedServiceObservation, len(*in)) + *out = make([]LinkedServiceInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -615,37 +792,167 @@ func (in *CustomDataSetObservation) DeepCopyInto(out *CustomDataSetObservation) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDataSetObservation. -func (in *CustomDataSetObservation) DeepCopy() *CustomDataSetObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDataSetInitParameters. +func (in *CustomDataSetInitParameters) DeepCopy() *CustomDataSetInitParameters { if in == nil { return nil } - out := new(CustomDataSetObservation) + out := new(CustomDataSetInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CustomDataSetParameters) DeepCopyInto(out *CustomDataSetParameters) { +func (in *CustomDataSetList) DeepCopyInto(out *CustomDataSetList) { *out = *in - if in.AdditionalProperties != nil { - in, out := &in.AdditionalProperties, &out.AdditionalProperties - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.Annotations != nil { - in, out := &in.Annotations, &out.Annotations - *out = make([]*string, len(*in)) + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]CustomDataSet, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDataSetList. +func (in *CustomDataSetList) DeepCopy() *CustomDataSetList { + if in == nil { + return nil + } + out := new(CustomDataSetList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *CustomDataSetList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomDataSetObservation) DeepCopyInto(out *CustomDataSetObservation) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DataFactoryID != nil { + in, out := &in.DataFactoryID, &out.DataFactoryID + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.LinkedService != nil { + in, out := &in.LinkedService, &out.LinkedService + *out = make([]LinkedServiceObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SchemaJSON != nil { + in, out := &in.SchemaJSON, &out.SchemaJSON + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypePropertiesJSON != nil { + in, out := &in.TypePropertiesJSON, &out.TypePropertiesJSON + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDataSetObservation. +func (in *CustomDataSetObservation) DeepCopy() *CustomDataSetObservation { + if in == nil { + return nil + } + out := new(CustomDataSetObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomDataSetParameters) DeepCopyInto(out *CustomDataSetParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { in, out := &(*in)[i], &(*out)[i] @@ -733,6 +1040,7 @@ func (in *CustomDataSetSpec) DeepCopyInto(out *CustomDataSetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDataSetSpec. @@ -762,6 +1070,26 @@ func (in *CustomDataSetStatus) DeepCopy() *CustomDataSetStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomSetupScriptInitParameters) DeepCopyInto(out *CustomSetupScriptInitParameters) { + *out = *in + if in.BlobContainerURI != nil { + in, out := &in.BlobContainerURI, &out.BlobContainerURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomSetupScriptInitParameters. +func (in *CustomSetupScriptInitParameters) DeepCopy() *CustomSetupScriptInitParameters { + if in == nil { + return nil + } + out := new(CustomSetupScriptInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomSetupScriptObservation) DeepCopyInto(out *CustomSetupScriptObservation) { *out = *in @@ -830,6 +1158,79 @@ func (in *DataFlow) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataFlowInitParameters) DeepCopyInto(out *DataFlowInitParameters) { + *out = *in + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.Script != nil { + in, out := &in.Script, &out.Script + *out = new(string) + **out = **in + } + if in.ScriptLines != nil { + in, out := &in.ScriptLines, &out.ScriptLines + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Sink != nil { + in, out := &in.Sink, &out.Sink + *out = make([]SinkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Source != nil { + in, out := &in.Source, &out.Source + *out = make([]SourceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Transformation != nil { + in, out := &in.Transformation, &out.Transformation + *out = make([]TransformationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataFlowInitParameters. +func (in *DataFlowInitParameters) DeepCopy() *DataFlowInitParameters { + if in == nil { + return nil + } + out := new(DataFlowInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataFlowList) DeepCopyInto(out *DataFlowList) { *out = *in @@ -1038,6 +1439,7 @@ func (in *DataFlowSpec) DeepCopyInto(out *DataFlowSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataFlowSpec. @@ -1095,22 +1497,115 @@ func (in *DataSetAzureBlob) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetAzureBlobList) DeepCopyInto(out *DataSetAzureBlobList) { +func (in *DataSetAzureBlobInitParameters) DeepCopyInto(out *DataSetAzureBlobInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]DataSetAzureBlob, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetAzureBlobList. -func (in *DataSetAzureBlobList) DeepCopy() *DataSetAzureBlobList { - if in == nil { + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DynamicFilenameEnabled != nil { + in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled + *out = new(bool) + **out = **in + } + if in.DynamicPathEnabled != nil { + in, out := &in.DynamicPathEnabled, &out.DynamicPathEnabled + *out = new(bool) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.SchemaColumn != nil { + in, out := &in.SchemaColumn, &out.SchemaColumn + *out = make([]SchemaColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetAzureBlobInitParameters. +func (in *DataSetAzureBlobInitParameters) DeepCopy() *DataSetAzureBlobInitParameters { + if in == nil { + return nil + } + out := new(DataSetAzureBlobInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetAzureBlobList) DeepCopyInto(out *DataSetAzureBlobList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]DataSetAzureBlob, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetAzureBlobList. +func (in *DataSetAzureBlobList) DeepCopy() *DataSetAzureBlobList { + if in == nil { return nil } out := new(DataSetAzureBlobList) @@ -1362,6 +1857,7 @@ func (in *DataSetAzureBlobSpec) DeepCopyInto(out *DataSetAzureBlobSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetAzureBlobSpec. @@ -1418,6 +1914,100 @@ func (in *DataSetBinary) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetBinaryInitParameters) DeepCopyInto(out *DataSetBinaryInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AzureBlobStorageLocation != nil { + in, out := &in.AzureBlobStorageLocation, &out.AzureBlobStorageLocation + *out = make([]AzureBlobStorageLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Compression != nil { + in, out := &in.Compression, &out.Compression + *out = make([]CompressionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.HTTPServerLocation != nil { + in, out := &in.HTTPServerLocation, &out.HTTPServerLocation + *out = make([]HTTPServerLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SFTPServerLocation != nil { + in, out := &in.SFTPServerLocation, &out.SFTPServerLocation + *out = make([]SFTPServerLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetBinaryInitParameters. +func (in *DataSetBinaryInitParameters) DeepCopy() *DataSetBinaryInitParameters { + if in == nil { + return nil + } + out := new(DataSetBinaryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetBinaryList) DeepCopyInto(out *DataSetBinaryList) { *out = *in @@ -1688,6 +2278,7 @@ func (in *DataSetBinarySpec) DeepCopyInto(out *DataSetBinarySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetBinarySpec. @@ -1744,6 +2335,84 @@ func (in *DataSetCosmosDBSQLAPI) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetCosmosDBSQLAPIInitParameters) DeepCopyInto(out *DataSetCosmosDBSQLAPIInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CollectionName != nil { + in, out := &in.CollectionName, &out.CollectionName + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SchemaColumn != nil { + in, out := &in.SchemaColumn, &out.SchemaColumn + *out = make([]DataSetCosmosDBSQLAPISchemaColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetCosmosDBSQLAPIInitParameters. +func (in *DataSetCosmosDBSQLAPIInitParameters) DeepCopy() *DataSetCosmosDBSQLAPIInitParameters { + if in == nil { + return nil + } + out := new(DataSetCosmosDBSQLAPIInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetCosmosDBSQLAPIList) DeepCopyInto(out *DataSetCosmosDBSQLAPIList) { *out = *in @@ -1978,7 +2647,7 @@ func (in *DataSetCosmosDBSQLAPIParameters) DeepCopy() *DataSetCosmosDBSQLAPIPara } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetCosmosDBSQLAPISchemaColumnObservation) DeepCopyInto(out *DataSetCosmosDBSQLAPISchemaColumnObservation) { +func (in *DataSetCosmosDBSQLAPISchemaColumnInitParameters) DeepCopyInto(out *DataSetCosmosDBSQLAPISchemaColumnInitParameters) { *out = *in if in.Description != nil { in, out := &in.Description, &out.Description @@ -1997,18 +2666,18 @@ func (in *DataSetCosmosDBSQLAPISchemaColumnObservation) DeepCopyInto(out *DataSe } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetCosmosDBSQLAPISchemaColumnObservation. -func (in *DataSetCosmosDBSQLAPISchemaColumnObservation) DeepCopy() *DataSetCosmosDBSQLAPISchemaColumnObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetCosmosDBSQLAPISchemaColumnInitParameters. +func (in *DataSetCosmosDBSQLAPISchemaColumnInitParameters) DeepCopy() *DataSetCosmosDBSQLAPISchemaColumnInitParameters { if in == nil { return nil } - out := new(DataSetCosmosDBSQLAPISchemaColumnObservation) + out := new(DataSetCosmosDBSQLAPISchemaColumnInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetCosmosDBSQLAPISchemaColumnParameters) DeepCopyInto(out *DataSetCosmosDBSQLAPISchemaColumnParameters) { +func (in *DataSetCosmosDBSQLAPISchemaColumnObservation) DeepCopyInto(out *DataSetCosmosDBSQLAPISchemaColumnObservation) { *out = *in if in.Description != nil { in, out := &in.Description, &out.Description @@ -2027,9 +2696,39 @@ func (in *DataSetCosmosDBSQLAPISchemaColumnParameters) DeepCopyInto(out *DataSet } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetCosmosDBSQLAPISchemaColumnParameters. -func (in *DataSetCosmosDBSQLAPISchemaColumnParameters) DeepCopy() *DataSetCosmosDBSQLAPISchemaColumnParameters { - if in == nil { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetCosmosDBSQLAPISchemaColumnObservation. +func (in *DataSetCosmosDBSQLAPISchemaColumnObservation) DeepCopy() *DataSetCosmosDBSQLAPISchemaColumnObservation { + if in == nil { + return nil + } + out := new(DataSetCosmosDBSQLAPISchemaColumnObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetCosmosDBSQLAPISchemaColumnParameters) DeepCopyInto(out *DataSetCosmosDBSQLAPISchemaColumnParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetCosmosDBSQLAPISchemaColumnParameters. +func (in *DataSetCosmosDBSQLAPISchemaColumnParameters) DeepCopy() *DataSetCosmosDBSQLAPISchemaColumnParameters { + if in == nil { return nil } out := new(DataSetCosmosDBSQLAPISchemaColumnParameters) @@ -2042,6 +2741,7 @@ func (in *DataSetCosmosDBSQLAPISpec) DeepCopyInto(out *DataSetCosmosDBSQLAPISpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetCosmosDBSQLAPISpec. @@ -2098,6 +2798,51 @@ func (in *DataSetDelimitedText) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetDelimitedTextAzureBlobStorageLocationInitParameters) DeepCopyInto(out *DataSetDelimitedTextAzureBlobStorageLocationInitParameters) { + *out = *in + if in.Container != nil { + in, out := &in.Container, &out.Container + *out = new(string) + **out = **in + } + if in.DynamicContainerEnabled != nil { + in, out := &in.DynamicContainerEnabled, &out.DynamicContainerEnabled + *out = new(bool) + **out = **in + } + if in.DynamicFilenameEnabled != nil { + in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled + *out = new(bool) + **out = **in + } + if in.DynamicPathEnabled != nil { + in, out := &in.DynamicPathEnabled, &out.DynamicPathEnabled + *out = new(bool) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDelimitedTextAzureBlobStorageLocationInitParameters. +func (in *DataSetDelimitedTextAzureBlobStorageLocationInitParameters) DeepCopy() *DataSetDelimitedTextAzureBlobStorageLocationInitParameters { + if in == nil { + return nil + } + out := new(DataSetDelimitedTextAzureBlobStorageLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetDelimitedTextAzureBlobStorageLocationObservation) DeepCopyInto(out *DataSetDelimitedTextAzureBlobStorageLocationObservation) { *out = *in @@ -2188,6 +2933,46 @@ func (in *DataSetDelimitedTextAzureBlobStorageLocationParameters) DeepCopy() *Da return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetDelimitedTextHTTPServerLocationInitParameters) DeepCopyInto(out *DataSetDelimitedTextHTTPServerLocationInitParameters) { + *out = *in + if in.DynamicFilenameEnabled != nil { + in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled + *out = new(bool) + **out = **in + } + if in.DynamicPathEnabled != nil { + in, out := &in.DynamicPathEnabled, &out.DynamicPathEnabled + *out = new(bool) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.RelativeURL != nil { + in, out := &in.RelativeURL, &out.RelativeURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDelimitedTextHTTPServerLocationInitParameters. +func (in *DataSetDelimitedTextHTTPServerLocationInitParameters) DeepCopy() *DataSetDelimitedTextHTTPServerLocationInitParameters { + if in == nil { + return nil + } + out := new(DataSetDelimitedTextHTTPServerLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetDelimitedTextHTTPServerLocationObservation) DeepCopyInto(out *DataSetDelimitedTextHTTPServerLocationObservation) { *out = *in @@ -2268,6 +3053,145 @@ func (in *DataSetDelimitedTextHTTPServerLocationParameters) DeepCopy() *DataSetD return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetDelimitedTextInitParameters) DeepCopyInto(out *DataSetDelimitedTextInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AzureBlobFsLocation != nil { + in, out := &in.AzureBlobFsLocation, &out.AzureBlobFsLocation + *out = make([]AzureBlobFsLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AzureBlobStorageLocation != nil { + in, out := &in.AzureBlobStorageLocation, &out.AzureBlobStorageLocation + *out = make([]DataSetDelimitedTextAzureBlobStorageLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ColumnDelimiter != nil { + in, out := &in.ColumnDelimiter, &out.ColumnDelimiter + *out = new(string) + **out = **in + } + if in.CompressionCodec != nil { + in, out := &in.CompressionCodec, &out.CompressionCodec + *out = new(string) + **out = **in + } + if in.CompressionLevel != nil { + in, out := &in.CompressionLevel, &out.CompressionLevel + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.EscapeCharacter != nil { + in, out := &in.EscapeCharacter, &out.EscapeCharacter + *out = new(string) + **out = **in + } + if in.FirstRowAsHeader != nil { + in, out := &in.FirstRowAsHeader, &out.FirstRowAsHeader + *out = new(bool) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.HTTPServerLocation != nil { + in, out := &in.HTTPServerLocation, &out.HTTPServerLocation + *out = make([]DataSetDelimitedTextHTTPServerLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NullValue != nil { + in, out := &in.NullValue, &out.NullValue + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.QuoteCharacter != nil { + in, out := &in.QuoteCharacter, &out.QuoteCharacter + *out = new(string) + **out = **in + } + if in.RowDelimiter != nil { + in, out := &in.RowDelimiter, &out.RowDelimiter + *out = new(string) + **out = **in + } + if in.SchemaColumn != nil { + in, out := &in.SchemaColumn, &out.SchemaColumn + *out = make([]DataSetDelimitedTextSchemaColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDelimitedTextInitParameters. +func (in *DataSetDelimitedTextInitParameters) DeepCopy() *DataSetDelimitedTextInitParameters { + if in == nil { + return nil + } + out := new(DataSetDelimitedTextInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetDelimitedTextList) DeepCopyInto(out *DataSetDelimitedTextList) { *out = *in @@ -2624,7 +3548,7 @@ func (in *DataSetDelimitedTextParameters) DeepCopy() *DataSetDelimitedTextParame } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetDelimitedTextSchemaColumnObservation) DeepCopyInto(out *DataSetDelimitedTextSchemaColumnObservation) { +func (in *DataSetDelimitedTextSchemaColumnInitParameters) DeepCopyInto(out *DataSetDelimitedTextSchemaColumnInitParameters) { *out = *in if in.Description != nil { in, out := &in.Description, &out.Description @@ -2643,18 +3567,18 @@ func (in *DataSetDelimitedTextSchemaColumnObservation) DeepCopyInto(out *DataSet } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDelimitedTextSchemaColumnObservation. -func (in *DataSetDelimitedTextSchemaColumnObservation) DeepCopy() *DataSetDelimitedTextSchemaColumnObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDelimitedTextSchemaColumnInitParameters. +func (in *DataSetDelimitedTextSchemaColumnInitParameters) DeepCopy() *DataSetDelimitedTextSchemaColumnInitParameters { if in == nil { return nil } - out := new(DataSetDelimitedTextSchemaColumnObservation) + out := new(DataSetDelimitedTextSchemaColumnInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetDelimitedTextSchemaColumnParameters) DeepCopyInto(out *DataSetDelimitedTextSchemaColumnParameters) { +func (in *DataSetDelimitedTextSchemaColumnObservation) DeepCopyInto(out *DataSetDelimitedTextSchemaColumnObservation) { *out = *in if in.Description != nil { in, out := &in.Description, &out.Description @@ -2673,21 +3597,52 @@ func (in *DataSetDelimitedTextSchemaColumnParameters) DeepCopyInto(out *DataSetD } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDelimitedTextSchemaColumnParameters. -func (in *DataSetDelimitedTextSchemaColumnParameters) DeepCopy() *DataSetDelimitedTextSchemaColumnParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDelimitedTextSchemaColumnObservation. +func (in *DataSetDelimitedTextSchemaColumnObservation) DeepCopy() *DataSetDelimitedTextSchemaColumnObservation { if in == nil { return nil } - out := new(DataSetDelimitedTextSchemaColumnParameters) + out := new(DataSetDelimitedTextSchemaColumnObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetDelimitedTextSpec) DeepCopyInto(out *DataSetDelimitedTextSpec) { +func (in *DataSetDelimitedTextSchemaColumnParameters) DeepCopyInto(out *DataSetDelimitedTextSchemaColumnParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDelimitedTextSchemaColumnParameters. +func (in *DataSetDelimitedTextSchemaColumnParameters) DeepCopy() *DataSetDelimitedTextSchemaColumnParameters { + if in == nil { + return nil + } + out := new(DataSetDelimitedTextSchemaColumnParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetDelimitedTextSpec) DeepCopyInto(out *DataSetDelimitedTextSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDelimitedTextSpec. @@ -2744,6 +3699,94 @@ func (in *DataSetHTTP) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetHTTPInitParameters) DeepCopyInto(out *DataSetHTTPInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.RelativeURL != nil { + in, out := &in.RelativeURL, &out.RelativeURL + *out = new(string) + **out = **in + } + if in.RequestBody != nil { + in, out := &in.RequestBody, &out.RequestBody + *out = new(string) + **out = **in + } + if in.RequestMethod != nil { + in, out := &in.RequestMethod, &out.RequestMethod + *out = new(string) + **out = **in + } + if in.SchemaColumn != nil { + in, out := &in.SchemaColumn, &out.SchemaColumn + *out = make([]DataSetHTTPSchemaColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetHTTPInitParameters. +func (in *DataSetHTTPInitParameters) DeepCopy() *DataSetHTTPInitParameters { + if in == nil { + return nil + } + out := new(DataSetHTTPInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetHTTPList) DeepCopyInto(out *DataSetHTTPList) { *out = *in @@ -2997,6 +4040,36 @@ func (in *DataSetHTTPParameters) DeepCopy() *DataSetHTTPParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetHTTPSchemaColumnInitParameters) DeepCopyInto(out *DataSetHTTPSchemaColumnInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetHTTPSchemaColumnInitParameters. +func (in *DataSetHTTPSchemaColumnInitParameters) DeepCopy() *DataSetHTTPSchemaColumnInitParameters { + if in == nil { + return nil + } + out := new(DataSetHTTPSchemaColumnInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetHTTPSchemaColumnObservation) DeepCopyInto(out *DataSetHTTPSchemaColumnObservation) { *out = *in @@ -3062,6 +4135,7 @@ func (in *DataSetHTTPSpec) DeepCopyInto(out *DataSetHTTPSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetHTTPSpec. @@ -3091,6 +4165,36 @@ func (in *DataSetHTTPStatus) DeepCopy() *DataSetHTTPStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetInitParameters) DeepCopyInto(out *DataSetInitParameters) { + *out = *in + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetInitParameters. +func (in *DataSetInitParameters) DeepCopy() *DataSetInitParameters { + if in == nil { + return nil + } + out := new(DataSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetJSON) DeepCopyInto(out *DataSetJSON) { *out = *in @@ -3118,6 +4222,51 @@ func (in *DataSetJSON) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetJSONAzureBlobStorageLocationInitParameters) DeepCopyInto(out *DataSetJSONAzureBlobStorageLocationInitParameters) { + *out = *in + if in.Container != nil { + in, out := &in.Container, &out.Container + *out = new(string) + **out = **in + } + if in.DynamicContainerEnabled != nil { + in, out := &in.DynamicContainerEnabled, &out.DynamicContainerEnabled + *out = new(bool) + **out = **in + } + if in.DynamicFilenameEnabled != nil { + in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled + *out = new(bool) + **out = **in + } + if in.DynamicPathEnabled != nil { + in, out := &in.DynamicPathEnabled, &out.DynamicPathEnabled + *out = new(bool) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetJSONAzureBlobStorageLocationInitParameters. +func (in *DataSetJSONAzureBlobStorageLocationInitParameters) DeepCopy() *DataSetJSONAzureBlobStorageLocationInitParameters { + if in == nil { + return nil + } + out := new(DataSetJSONAzureBlobStorageLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetJSONAzureBlobStorageLocationObservation) DeepCopyInto(out *DataSetJSONAzureBlobStorageLocationObservation) { *out = *in @@ -3208,6 +4357,46 @@ func (in *DataSetJSONAzureBlobStorageLocationParameters) DeepCopy() *DataSetJSON return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetJSONHTTPServerLocationInitParameters) DeepCopyInto(out *DataSetJSONHTTPServerLocationInitParameters) { + *out = *in + if in.DynamicFilenameEnabled != nil { + in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled + *out = new(bool) + **out = **in + } + if in.DynamicPathEnabled != nil { + in, out := &in.DynamicPathEnabled, &out.DynamicPathEnabled + *out = new(bool) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.RelativeURL != nil { + in, out := &in.RelativeURL, &out.RelativeURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetJSONHTTPServerLocationInitParameters. +func (in *DataSetJSONHTTPServerLocationInitParameters) DeepCopy() *DataSetJSONHTTPServerLocationInitParameters { + if in == nil { + return nil + } + out := new(DataSetJSONHTTPServerLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetJSONHTTPServerLocationObservation) DeepCopyInto(out *DataSetJSONHTTPServerLocationObservation) { *out = *in @@ -3289,20 +4478,112 @@ func (in *DataSetJSONHTTPServerLocationParameters) DeepCopy() *DataSetJSONHTTPSe } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetJSONList) DeepCopyInto(out *DataSetJSONList) { +func (in *DataSetJSONInitParameters) DeepCopyInto(out *DataSetJSONInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]DataSetJSON, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetJSONList. + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AzureBlobStorageLocation != nil { + in, out := &in.AzureBlobStorageLocation, &out.AzureBlobStorageLocation + *out = make([]DataSetJSONAzureBlobStorageLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.HTTPServerLocation != nil { + in, out := &in.HTTPServerLocation, &out.HTTPServerLocation + *out = make([]DataSetJSONHTTPServerLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SchemaColumn != nil { + in, out := &in.SchemaColumn, &out.SchemaColumn + *out = make([]DataSetJSONSchemaColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetJSONInitParameters. +func (in *DataSetJSONInitParameters) DeepCopy() *DataSetJSONInitParameters { + if in == nil { + return nil + } + out := new(DataSetJSONInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetJSONList) DeepCopyInto(out *DataSetJSONList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]DataSetJSON, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetJSONList. func (in *DataSetJSONList) DeepCopy() *DataSetJSONList { if in == nil { return nil @@ -3549,6 +4830,36 @@ func (in *DataSetJSONParameters) DeepCopy() *DataSetJSONParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetJSONSchemaColumnInitParameters) DeepCopyInto(out *DataSetJSONSchemaColumnInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetJSONSchemaColumnInitParameters. +func (in *DataSetJSONSchemaColumnInitParameters) DeepCopy() *DataSetJSONSchemaColumnInitParameters { + if in == nil { + return nil + } + out := new(DataSetJSONSchemaColumnInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetJSONSchemaColumnObservation) DeepCopyInto(out *DataSetJSONSchemaColumnObservation) { *out = *in @@ -3614,6 +4925,7 @@ func (in *DataSetJSONSpec) DeepCopyInto(out *DataSetJSONSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetJSONSpec. @@ -3670,6 +4982,84 @@ func (in *DataSetMySQL) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetMySQLInitParameters) DeepCopyInto(out *DataSetMySQLInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SchemaColumn != nil { + in, out := &in.SchemaColumn, &out.SchemaColumn + *out = make([]DataSetMySQLSchemaColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TableName != nil { + in, out := &in.TableName, &out.TableName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetMySQLInitParameters. +func (in *DataSetMySQLInitParameters) DeepCopy() *DataSetMySQLInitParameters { + if in == nil { + return nil + } + out := new(DataSetMySQLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetMySQLList) DeepCopyInto(out *DataSetMySQLList) { *out = *in @@ -3903,6 +5293,36 @@ func (in *DataSetMySQLParameters) DeepCopy() *DataSetMySQLParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetMySQLSchemaColumnInitParameters) DeepCopyInto(out *DataSetMySQLSchemaColumnInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetMySQLSchemaColumnInitParameters. +func (in *DataSetMySQLSchemaColumnInitParameters) DeepCopy() *DataSetMySQLSchemaColumnInitParameters { + if in == nil { + return nil + } + out := new(DataSetMySQLSchemaColumnInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetMySQLSchemaColumnObservation) DeepCopyInto(out *DataSetMySQLSchemaColumnObservation) { *out = *in @@ -3968,6 +5388,7 @@ func (in *DataSetMySQLSpec) DeepCopyInto(out *DataSetMySQLSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetMySQLSpec. @@ -4105,7 +5526,7 @@ func (in *DataSetParquet) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetParquetAzureBlobStorageLocationObservation) DeepCopyInto(out *DataSetParquetAzureBlobStorageLocationObservation) { +func (in *DataSetParquetAzureBlobStorageLocationInitParameters) DeepCopyInto(out *DataSetParquetAzureBlobStorageLocationInitParameters) { *out = *in if in.Container != nil { in, out := &in.Container, &out.Container @@ -4139,18 +5560,18 @@ func (in *DataSetParquetAzureBlobStorageLocationObservation) DeepCopyInto(out *D } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetAzureBlobStorageLocationObservation. -func (in *DataSetParquetAzureBlobStorageLocationObservation) DeepCopy() *DataSetParquetAzureBlobStorageLocationObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetAzureBlobStorageLocationInitParameters. +func (in *DataSetParquetAzureBlobStorageLocationInitParameters) DeepCopy() *DataSetParquetAzureBlobStorageLocationInitParameters { if in == nil { return nil } - out := new(DataSetParquetAzureBlobStorageLocationObservation) + out := new(DataSetParquetAzureBlobStorageLocationInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetParquetAzureBlobStorageLocationParameters) DeepCopyInto(out *DataSetParquetAzureBlobStorageLocationParameters) { +func (in *DataSetParquetAzureBlobStorageLocationObservation) DeepCopyInto(out *DataSetParquetAzureBlobStorageLocationObservation) { *out = *in if in.Container != nil { in, out := &in.Container, &out.Container @@ -4184,19 +5605,29 @@ func (in *DataSetParquetAzureBlobStorageLocationParameters) DeepCopyInto(out *Da } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetAzureBlobStorageLocationParameters. -func (in *DataSetParquetAzureBlobStorageLocationParameters) DeepCopy() *DataSetParquetAzureBlobStorageLocationParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetAzureBlobStorageLocationObservation. +func (in *DataSetParquetAzureBlobStorageLocationObservation) DeepCopy() *DataSetParquetAzureBlobStorageLocationObservation { if in == nil { return nil } - out := new(DataSetParquetAzureBlobStorageLocationParameters) + out := new(DataSetParquetAzureBlobStorageLocationObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetParquetHTTPServerLocationObservation) DeepCopyInto(out *DataSetParquetHTTPServerLocationObservation) { +func (in *DataSetParquetAzureBlobStorageLocationParameters) DeepCopyInto(out *DataSetParquetAzureBlobStorageLocationParameters) { *out = *in + if in.Container != nil { + in, out := &in.Container, &out.Container + *out = new(string) + **out = **in + } + if in.DynamicContainerEnabled != nil { + in, out := &in.DynamicContainerEnabled, &out.DynamicContainerEnabled + *out = new(bool) + **out = **in + } if in.DynamicFilenameEnabled != nil { in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled *out = new(bool) @@ -4217,15 +5648,90 @@ func (in *DataSetParquetHTTPServerLocationObservation) DeepCopyInto(out *DataSet *out = new(string) **out = **in } - if in.RelativeURL != nil { - in, out := &in.RelativeURL, &out.RelativeURL - *out = new(string) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetHTTPServerLocationObservation. -func (in *DataSetParquetHTTPServerLocationObservation) DeepCopy() *DataSetParquetHTTPServerLocationObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetAzureBlobStorageLocationParameters. +func (in *DataSetParquetAzureBlobStorageLocationParameters) DeepCopy() *DataSetParquetAzureBlobStorageLocationParameters { + if in == nil { + return nil + } + out := new(DataSetParquetAzureBlobStorageLocationParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetParquetHTTPServerLocationInitParameters) DeepCopyInto(out *DataSetParquetHTTPServerLocationInitParameters) { + *out = *in + if in.DynamicFilenameEnabled != nil { + in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled + *out = new(bool) + **out = **in + } + if in.DynamicPathEnabled != nil { + in, out := &in.DynamicPathEnabled, &out.DynamicPathEnabled + *out = new(bool) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.RelativeURL != nil { + in, out := &in.RelativeURL, &out.RelativeURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetHTTPServerLocationInitParameters. +func (in *DataSetParquetHTTPServerLocationInitParameters) DeepCopy() *DataSetParquetHTTPServerLocationInitParameters { + if in == nil { + return nil + } + out := new(DataSetParquetHTTPServerLocationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetParquetHTTPServerLocationObservation) DeepCopyInto(out *DataSetParquetHTTPServerLocationObservation) { + *out = *in + if in.DynamicFilenameEnabled != nil { + in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled + *out = new(bool) + **out = **in + } + if in.DynamicPathEnabled != nil { + in, out := &in.DynamicPathEnabled, &out.DynamicPathEnabled + *out = new(bool) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.RelativeURL != nil { + in, out := &in.RelativeURL, &out.RelativeURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetHTTPServerLocationObservation. +func (in *DataSetParquetHTTPServerLocationObservation) DeepCopy() *DataSetParquetHTTPServerLocationObservation { if in == nil { return nil } @@ -4274,6 +5780,103 @@ func (in *DataSetParquetHTTPServerLocationParameters) DeepCopy() *DataSetParquet return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetParquetInitParameters) DeepCopyInto(out *DataSetParquetInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AzureBlobStorageLocation != nil { + in, out := &in.AzureBlobStorageLocation, &out.AzureBlobStorageLocation + *out = make([]DataSetParquetAzureBlobStorageLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CompressionCodec != nil { + in, out := &in.CompressionCodec, &out.CompressionCodec + *out = new(string) + **out = **in + } + if in.CompressionLevel != nil { + in, out := &in.CompressionLevel, &out.CompressionLevel + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.HTTPServerLocation != nil { + in, out := &in.HTTPServerLocation, &out.HTTPServerLocation + *out = make([]DataSetParquetHTTPServerLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SchemaColumn != nil { + in, out := &in.SchemaColumn, &out.SchemaColumn + *out = make([]DataSetParquetSchemaColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetInitParameters. +func (in *DataSetParquetInitParameters) DeepCopy() *DataSetParquetInitParameters { + if in == nil { + return nil + } + out := new(DataSetParquetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetParquetList) DeepCopyInto(out *DataSetParquetList) { *out = *in @@ -4545,6 +6148,36 @@ func (in *DataSetParquetParameters) DeepCopy() *DataSetParquetParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetParquetSchemaColumnInitParameters) DeepCopyInto(out *DataSetParquetSchemaColumnInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetSchemaColumnInitParameters. +func (in *DataSetParquetSchemaColumnInitParameters) DeepCopy() *DataSetParquetSchemaColumnInitParameters { + if in == nil { + return nil + } + out := new(DataSetParquetSchemaColumnInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetParquetSchemaColumnObservation) DeepCopyInto(out *DataSetParquetSchemaColumnObservation) { *out = *in @@ -4610,6 +6243,7 @@ func (in *DataSetParquetSpec) DeepCopyInto(out *DataSetParquetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetParquetSpec. @@ -4667,39 +6301,7 @@ func (in *DataSetPostgreSQL) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetPostgreSQLList) DeepCopyInto(out *DataSetPostgreSQLList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]DataSetPostgreSQL, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetPostgreSQLList. -func (in *DataSetPostgreSQLList) DeepCopy() *DataSetPostgreSQLList { - if in == nil { - return nil - } - out := new(DataSetPostgreSQLList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *DataSetPostgreSQLList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetPostgreSQLObservation) DeepCopyInto(out *DataSetPostgreSQLObservation) { +func (in *DataSetPostgreSQLInitParameters) DeepCopyInto(out *DataSetPostgreSQLInitParameters) { *out = *in if in.AdditionalProperties != nil { in, out := &in.AdditionalProperties, &out.AdditionalProperties @@ -4727,11 +6329,6 @@ func (in *DataSetPostgreSQLObservation) DeepCopyInto(out *DataSetPostgreSQLObser } } } - if in.DataFactoryID != nil { - in, out := &in.DataFactoryID, &out.DataFactoryID - *out = new(string) - **out = **in - } if in.Description != nil { in, out := &in.Description, &out.Description *out = new(string) @@ -4742,16 +6339,6 @@ func (in *DataSetPostgreSQLObservation) DeepCopyInto(out *DataSetPostgreSQLObser *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } - if in.LinkedServiceName != nil { - in, out := &in.LinkedServiceName, &out.LinkedServiceName - *out = new(string) - **out = **in - } if in.Parameters != nil { in, out := &in.Parameters, &out.Parameters *out = make(map[string]*string, len(*in)) @@ -4769,7 +6356,7 @@ func (in *DataSetPostgreSQLObservation) DeepCopyInto(out *DataSetPostgreSQLObser } if in.SchemaColumn != nil { in, out := &in.SchemaColumn, &out.SchemaColumn - *out = make([]DataSetPostgreSQLSchemaColumnObservation, len(*in)) + *out = make([]DataSetPostgreSQLSchemaColumnInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -4781,29 +6368,154 @@ func (in *DataSetPostgreSQLObservation) DeepCopyInto(out *DataSetPostgreSQLObser } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetPostgreSQLObservation. -func (in *DataSetPostgreSQLObservation) DeepCopy() *DataSetPostgreSQLObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetPostgreSQLInitParameters. +func (in *DataSetPostgreSQLInitParameters) DeepCopy() *DataSetPostgreSQLInitParameters { if in == nil { return nil } - out := new(DataSetPostgreSQLObservation) + out := new(DataSetPostgreSQLInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetPostgreSQLParameters) DeepCopyInto(out *DataSetPostgreSQLParameters) { +func (in *DataSetPostgreSQLList) DeepCopyInto(out *DataSetPostgreSQLList) { *out = *in - if in.AdditionalProperties != nil { - in, out := &in.AdditionalProperties, &out.AdditionalProperties - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]DataSetPostgreSQL, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetPostgreSQLList. +func (in *DataSetPostgreSQLList) DeepCopy() *DataSetPostgreSQLList { + if in == nil { + return nil + } + out := new(DataSetPostgreSQLList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *DataSetPostgreSQLList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetPostgreSQLObservation) DeepCopyInto(out *DataSetPostgreSQLObservation) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DataFactoryID != nil { + in, out := &in.DataFactoryID, &out.DataFactoryID + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.LinkedServiceName != nil { + in, out := &in.LinkedServiceName, &out.LinkedServiceName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SchemaColumn != nil { + in, out := &in.SchemaColumn, &out.SchemaColumn + *out = make([]DataSetPostgreSQLSchemaColumnObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TableName != nil { + in, out := &in.TableName, &out.TableName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetPostgreSQLObservation. +func (in *DataSetPostgreSQLObservation) DeepCopy() *DataSetPostgreSQLObservation { + if in == nil { + return nil + } + out := new(DataSetPostgreSQLObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetPostgreSQLParameters) DeepCopyInto(out *DataSetPostgreSQLParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) **out = **in } (*out)[key] = outVal @@ -4899,6 +6611,36 @@ func (in *DataSetPostgreSQLParameters) DeepCopy() *DataSetPostgreSQLParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetPostgreSQLSchemaColumnInitParameters) DeepCopyInto(out *DataSetPostgreSQLSchemaColumnInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetPostgreSQLSchemaColumnInitParameters. +func (in *DataSetPostgreSQLSchemaColumnInitParameters) DeepCopy() *DataSetPostgreSQLSchemaColumnInitParameters { + if in == nil { + return nil + } + out := new(DataSetPostgreSQLSchemaColumnInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetPostgreSQLSchemaColumnObservation) DeepCopyInto(out *DataSetPostgreSQLSchemaColumnObservation) { *out = *in @@ -4964,6 +6706,7 @@ func (in *DataSetPostgreSQLSpec) DeepCopyInto(out *DataSetPostgreSQLSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetPostgreSQLSpec. @@ -5020,6 +6763,84 @@ func (in *DataSetSQLServerTable) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetSQLServerTableInitParameters) DeepCopyInto(out *DataSetSQLServerTableInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SchemaColumn != nil { + in, out := &in.SchemaColumn, &out.SchemaColumn + *out = make([]DataSetSQLServerTableSchemaColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TableName != nil { + in, out := &in.TableName, &out.TableName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSQLServerTableInitParameters. +func (in *DataSetSQLServerTableInitParameters) DeepCopy() *DataSetSQLServerTableInitParameters { + if in == nil { + return nil + } + out := new(DataSetSQLServerTableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetSQLServerTableList) DeepCopyInto(out *DataSetSQLServerTableList) { *out = *in @@ -5254,7 +7075,7 @@ func (in *DataSetSQLServerTableParameters) DeepCopy() *DataSetSQLServerTablePara } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetSQLServerTableSchemaColumnObservation) DeepCopyInto(out *DataSetSQLServerTableSchemaColumnObservation) { +func (in *DataSetSQLServerTableSchemaColumnInitParameters) DeepCopyInto(out *DataSetSQLServerTableSchemaColumnInitParameters) { *out = *in if in.Description != nil { in, out := &in.Description, &out.Description @@ -5273,18 +7094,18 @@ func (in *DataSetSQLServerTableSchemaColumnObservation) DeepCopyInto(out *DataSe } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSQLServerTableSchemaColumnObservation. -func (in *DataSetSQLServerTableSchemaColumnObservation) DeepCopy() *DataSetSQLServerTableSchemaColumnObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSQLServerTableSchemaColumnInitParameters. +func (in *DataSetSQLServerTableSchemaColumnInitParameters) DeepCopy() *DataSetSQLServerTableSchemaColumnInitParameters { if in == nil { return nil } - out := new(DataSetSQLServerTableSchemaColumnObservation) + out := new(DataSetSQLServerTableSchemaColumnInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetSQLServerTableSchemaColumnParameters) DeepCopyInto(out *DataSetSQLServerTableSchemaColumnParameters) { +func (in *DataSetSQLServerTableSchemaColumnObservation) DeepCopyInto(out *DataSetSQLServerTableSchemaColumnObservation) { *out = *in if in.Description != nil { in, out := &in.Description, &out.Description @@ -5303,27 +7124,58 @@ func (in *DataSetSQLServerTableSchemaColumnParameters) DeepCopyInto(out *DataSet } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSQLServerTableSchemaColumnParameters. -func (in *DataSetSQLServerTableSchemaColumnParameters) DeepCopy() *DataSetSQLServerTableSchemaColumnParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSQLServerTableSchemaColumnObservation. +func (in *DataSetSQLServerTableSchemaColumnObservation) DeepCopy() *DataSetSQLServerTableSchemaColumnObservation { if in == nil { return nil } - out := new(DataSetSQLServerTableSchemaColumnParameters) + out := new(DataSetSQLServerTableSchemaColumnObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DataSetSQLServerTableSpec) DeepCopyInto(out *DataSetSQLServerTableSpec) { +func (in *DataSetSQLServerTableSchemaColumnParameters) DeepCopyInto(out *DataSetSQLServerTableSchemaColumnParameters) { *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSQLServerTableSpec. -func (in *DataSetSQLServerTableSpec) DeepCopy() *DataSetSQLServerTableSpec { - if in == nil { - return nil + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSQLServerTableSchemaColumnParameters. +func (in *DataSetSQLServerTableSchemaColumnParameters) DeepCopy() *DataSetSQLServerTableSchemaColumnParameters { + if in == nil { + return nil + } + out := new(DataSetSQLServerTableSchemaColumnParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetSQLServerTableSpec) DeepCopyInto(out *DataSetSQLServerTableSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSQLServerTableSpec. +func (in *DataSetSQLServerTableSpec) DeepCopy() *DataSetSQLServerTableSpec { + if in == nil { + return nil } out := new(DataSetSQLServerTableSpec) in.DeepCopyInto(out) @@ -5374,6 +7226,89 @@ func (in *DataSetSnowflake) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetSnowflakeInitParameters) DeepCopyInto(out *DataSetSnowflakeInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SchemaColumn != nil { + in, out := &in.SchemaColumn, &out.SchemaColumn + *out = make([]DataSetSnowflakeSchemaColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SchemaName != nil { + in, out := &in.SchemaName, &out.SchemaName + *out = new(string) + **out = **in + } + if in.TableName != nil { + in, out := &in.TableName, &out.TableName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSnowflakeInitParameters. +func (in *DataSetSnowflakeInitParameters) DeepCopy() *DataSetSnowflakeInitParameters { + if in == nil { + return nil + } + out := new(DataSetSnowflakeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetSnowflakeList) DeepCopyInto(out *DataSetSnowflakeList) { *out = *in @@ -5617,6 +7552,41 @@ func (in *DataSetSnowflakeParameters) DeepCopy() *DataSetSnowflakeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetSnowflakeSchemaColumnInitParameters) DeepCopyInto(out *DataSetSnowflakeSchemaColumnInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Precision != nil { + in, out := &in.Precision, &out.Precision + *out = new(float64) + **out = **in + } + if in.Scale != nil { + in, out := &in.Scale, &out.Scale + *out = new(float64) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSnowflakeSchemaColumnInitParameters. +func (in *DataSetSnowflakeSchemaColumnInitParameters) DeepCopy() *DataSetSnowflakeSchemaColumnInitParameters { + if in == nil { + return nil + } + out := new(DataSetSnowflakeSchemaColumnInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetSnowflakeSchemaColumnObservation) DeepCopyInto(out *DataSetSnowflakeSchemaColumnObservation) { *out = *in @@ -5692,6 +7662,7 @@ func (in *DataSetSnowflakeSpec) DeepCopyInto(out *DataSetSnowflakeSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetSnowflakeSpec. @@ -5721,6 +7692,55 @@ func (in *DataSetSnowflakeStatus) DeepCopy() *DataSetSnowflakeStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressCustomSetupInitParameters) DeepCopyInto(out *ExpressCustomSetupInitParameters) { + *out = *in + if in.CommandKey != nil { + in, out := &in.CommandKey, &out.CommandKey + *out = make([]CommandKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Component != nil { + in, out := &in.Component, &out.Component + *out = make([]ComponentInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Environment != nil { + in, out := &in.Environment, &out.Environment + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.PowershellVersion != nil { + in, out := &in.PowershellVersion, &out.PowershellVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressCustomSetupInitParameters. +func (in *ExpressCustomSetupInitParameters) DeepCopy() *ExpressCustomSetupInitParameters { + if in == nil { + return nil + } + out := new(ExpressCustomSetupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressCustomSetupObservation) DeepCopyInto(out *ExpressCustomSetupObservation) { *out = *in @@ -5819,6 +7839,21 @@ func (in *ExpressCustomSetupParameters) DeepCopy() *ExpressCustomSetupParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressVnetIntegrationInitParameters) DeepCopyInto(out *ExpressVnetIntegrationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressVnetIntegrationInitParameters. +func (in *ExpressVnetIntegrationInitParameters) DeepCopy() *ExpressVnetIntegrationInitParameters { + if in == nil { + return nil + } + out := new(ExpressVnetIntegrationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressVnetIntegrationObservation) DeepCopyInto(out *ExpressVnetIntegrationObservation) { *out = *in @@ -5897,39 +7932,7 @@ func (in *Factory) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FactoryList) DeepCopyInto(out *FactoryList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Factory, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FactoryList. -func (in *FactoryList) DeepCopy() *FactoryList { - if in == nil { - return nil - } - out := new(FactoryList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FactoryList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FactoryObservation) DeepCopyInto(out *FactoryObservation) { +func (in *FactoryInitParameters) DeepCopyInto(out *FactoryInitParameters) { *out = *in if in.CustomerManagedKeyID != nil { in, out := &in.CustomerManagedKeyID, &out.CustomerManagedKeyID @@ -5943,26 +7946,21 @@ func (in *FactoryObservation) DeepCopyInto(out *FactoryObservation) { } if in.GithubConfiguration != nil { in, out := &in.GithubConfiguration, &out.GithubConfiguration - *out = make([]GithubConfigurationObservation, len(*in)) + *out = make([]GithubConfigurationInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.GlobalParameter != nil { in, out := &in.GlobalParameter, &out.GlobalParameter - *out = make([]GlobalParameterObservation, len(*in)) + *out = make([]GlobalParameterInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.Identity != nil { in, out := &in.Identity, &out.Identity - *out = make([]IdentityObservation, len(*in)) + *out = make([]IdentityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -5987,11 +7985,6 @@ func (in *FactoryObservation) DeepCopyInto(out *FactoryObservation) { *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -6009,29 +8002,159 @@ func (in *FactoryObservation) DeepCopyInto(out *FactoryObservation) { } if in.VstsConfiguration != nil { in, out := &in.VstsConfiguration, &out.VstsConfiguration - *out = make([]VstsConfigurationObservation, len(*in)) + *out = make([]VstsConfigurationInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FactoryObservation. -func (in *FactoryObservation) DeepCopy() *FactoryObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FactoryInitParameters. +func (in *FactoryInitParameters) DeepCopy() *FactoryInitParameters { if in == nil { return nil } - out := new(FactoryObservation) + out := new(FactoryInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FactoryParameters) DeepCopyInto(out *FactoryParameters) { +func (in *FactoryList) DeepCopyInto(out *FactoryList) { *out = *in - if in.CustomerManagedKeyID != nil { - in, out := &in.CustomerManagedKeyID, &out.CustomerManagedKeyID - *out = new(string) + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Factory, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FactoryList. +func (in *FactoryList) DeepCopy() *FactoryList { + if in == nil { + return nil + } + out := new(FactoryList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FactoryList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FactoryObservation) DeepCopyInto(out *FactoryObservation) { + *out = *in + if in.CustomerManagedKeyID != nil { + in, out := &in.CustomerManagedKeyID, &out.CustomerManagedKeyID + *out = new(string) + **out = **in + } + if in.CustomerManagedKeyIdentityID != nil { + in, out := &in.CustomerManagedKeyIdentityID, &out.CustomerManagedKeyIdentityID + *out = new(string) + **out = **in + } + if in.GithubConfiguration != nil { + in, out := &in.GithubConfiguration, &out.GithubConfiguration + *out = make([]GithubConfigurationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GlobalParameter != nil { + in, out := &in.GlobalParameter, &out.GlobalParameter + *out = make([]GlobalParameterObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ManagedVirtualNetworkEnabled != nil { + in, out := &in.ManagedVirtualNetworkEnabled, &out.ManagedVirtualNetworkEnabled + *out = new(bool) + **out = **in + } + if in.PublicNetworkEnabled != nil { + in, out := &in.PublicNetworkEnabled, &out.PublicNetworkEnabled + *out = new(bool) + **out = **in + } + if in.PurviewID != nil { + in, out := &in.PurviewID, &out.PurviewID + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.VstsConfiguration != nil { + in, out := &in.VstsConfiguration, &out.VstsConfiguration + *out = make([]VstsConfigurationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FactoryObservation. +func (in *FactoryObservation) DeepCopy() *FactoryObservation { + if in == nil { + return nil + } + out := new(FactoryObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FactoryParameters) DeepCopyInto(out *FactoryParameters) { + *out = *in + if in.CustomerManagedKeyID != nil { + in, out := &in.CustomerManagedKeyID, &out.CustomerManagedKeyID + *out = new(string) **out = **in } if in.CustomerManagedKeyIdentityID != nil { @@ -6134,6 +8257,7 @@ func (in *FactorySpec) DeepCopyInto(out *FactorySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FactorySpec. @@ -6163,6 +8287,46 @@ func (in *FactoryStatus) DeepCopy() *FactoryStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlowletInitParameters) DeepCopyInto(out *FlowletInitParameters) { + *out = *in + if in.DataSetParameters != nil { + in, out := &in.DataSetParameters, &out.DataSetParameters + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlowletInitParameters. +func (in *FlowletInitParameters) DeepCopy() *FlowletInitParameters { + if in == nil { + return nil + } + out := new(FlowletInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FlowletObservation) DeepCopyInto(out *FlowletObservation) { *out = *in @@ -6243,6 +8407,46 @@ func (in *FlowletParameters) DeepCopy() *FlowletParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GithubConfigurationInitParameters) DeepCopyInto(out *GithubConfigurationInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.BranchName != nil { + in, out := &in.BranchName, &out.BranchName + *out = new(string) + **out = **in + } + if in.GitURL != nil { + in, out := &in.GitURL, &out.GitURL + *out = new(string) + **out = **in + } + if in.RepositoryName != nil { + in, out := &in.RepositoryName, &out.RepositoryName + *out = new(string) + **out = **in + } + if in.RootFolder != nil { + in, out := &in.RootFolder, &out.RootFolder + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GithubConfigurationInitParameters. +func (in *GithubConfigurationInitParameters) DeepCopy() *GithubConfigurationInitParameters { + if in == nil { + return nil + } + out := new(GithubConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GithubConfigurationObservation) DeepCopyInto(out *GithubConfigurationObservation) { *out = *in @@ -6323,6 +8527,36 @@ func (in *GithubConfigurationParameters) DeepCopy() *GithubConfigurationParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalParameterInitParameters) DeepCopyInto(out *GlobalParameterInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalParameterInitParameters. +func (in *GlobalParameterInitParameters) DeepCopy() *GlobalParameterInitParameters { + if in == nil { + return nil + } + out := new(GlobalParameterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GlobalParameterObservation) DeepCopyInto(out *GlobalParameterObservation) { *out = *in @@ -6384,7 +8618,7 @@ func (in *GlobalParameterParameters) DeepCopy() *GlobalParameterParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPServerLocationObservation) DeepCopyInto(out *HTTPServerLocationObservation) { +func (in *HTTPServerLocationInitParameters) DeepCopyInto(out *HTTPServerLocationInitParameters) { *out = *in if in.DynamicFilenameEnabled != nil { in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled @@ -6413,18 +8647,18 @@ func (in *HTTPServerLocationObservation) DeepCopyInto(out *HTTPServerLocationObs } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPServerLocationObservation. -func (in *HTTPServerLocationObservation) DeepCopy() *HTTPServerLocationObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPServerLocationInitParameters. +func (in *HTTPServerLocationInitParameters) DeepCopy() *HTTPServerLocationInitParameters { if in == nil { return nil } - out := new(HTTPServerLocationObservation) + out := new(HTTPServerLocationInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HTTPServerLocationParameters) DeepCopyInto(out *HTTPServerLocationParameters) { +func (in *HTTPServerLocationObservation) DeepCopyInto(out *HTTPServerLocationObservation) { *out = *in if in.DynamicFilenameEnabled != nil { in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled @@ -6453,30 +8687,101 @@ func (in *HTTPServerLocationParameters) DeepCopyInto(out *HTTPServerLocationPara } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPServerLocationParameters. -func (in *HTTPServerLocationParameters) DeepCopy() *HTTPServerLocationParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPServerLocationObservation. +func (in *HTTPServerLocationObservation) DeepCopy() *HTTPServerLocationObservation { if in == nil { return nil } - out := new(HTTPServerLocationParameters) + out := new(HTTPServerLocationObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { +func (in *HTTPServerLocationParameters) DeepCopyInto(out *HTTPServerLocationParameters) { *out = *in - if in.IdentityIds != nil { - in, out := &in.IdentityIds, &out.IdentityIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } + if in.DynamicFilenameEnabled != nil { + in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled + *out = new(bool) + **out = **in + } + if in.DynamicPathEnabled != nil { + in, out := &in.DynamicPathEnabled, &out.DynamicPathEnabled + *out = new(bool) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.RelativeURL != nil { + in, out := &in.RelativeURL, &out.RelativeURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPServerLocationParameters. +func (in *HTTPServerLocationParameters) DeepCopy() *HTTPServerLocationParameters { + if in == nil { + return nil + } + out := new(HTTPServerLocationParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } if in.PrincipalID != nil { in, out := &in.PrincipalID, &out.PrincipalID *out = new(string) @@ -6535,6 +8840,41 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstancePoolInitParameters) DeepCopyInto(out *InstancePoolInitParameters) { + *out = *in + if in.ClusterVersion != nil { + in, out := &in.ClusterVersion, &out.ClusterVersion + *out = new(string) + **out = **in + } + if in.InstancePoolID != nil { + in, out := &in.InstancePoolID, &out.InstancePoolID + *out = new(string) + **out = **in + } + if in.MaxNumberOfWorkers != nil { + in, out := &in.MaxNumberOfWorkers, &out.MaxNumberOfWorkers + *out = new(float64) + **out = **in + } + if in.MinNumberOfWorkers != nil { + in, out := &in.MinNumberOfWorkers, &out.MinNumberOfWorkers + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstancePoolInitParameters. +func (in *InstancePoolInitParameters) DeepCopy() *InstancePoolInitParameters { + if in == nil { + return nil + } + out := new(InstancePoolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InstancePoolObservation) DeepCopyInto(out *InstancePoolObservation) { *out = *in @@ -6632,6 +8972,56 @@ func (in *IntegrationRuntimeAzure) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeAzureInitParameters) DeepCopyInto(out *IntegrationRuntimeAzureInitParameters) { + *out = *in + if in.CleanupEnabled != nil { + in, out := &in.CleanupEnabled, &out.CleanupEnabled + *out = new(bool) + **out = **in + } + if in.ComputeType != nil { + in, out := &in.ComputeType, &out.ComputeType + *out = new(string) + **out = **in + } + if in.CoreCount != nil { + in, out := &in.CoreCount, &out.CoreCount + *out = new(float64) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.TimeToLiveMin != nil { + in, out := &in.TimeToLiveMin, &out.TimeToLiveMin + *out = new(float64) + **out = **in + } + if in.VirtualNetworkEnabled != nil { + in, out := &in.VirtualNetworkEnabled, &out.VirtualNetworkEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeAzureInitParameters. +func (in *IntegrationRuntimeAzureInitParameters) DeepCopy() *IntegrationRuntimeAzureInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeAzureInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntegrationRuntimeAzureList) DeepCopyInto(out *IntegrationRuntimeAzureList) { *out = *in @@ -6816,6 +9206,103 @@ func (in *IntegrationRuntimeAzureSSIS) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeAzureSSISInitParameters) DeepCopyInto(out *IntegrationRuntimeAzureSSISInitParameters) { + *out = *in + if in.CatalogInfo != nil { + in, out := &in.CatalogInfo, &out.CatalogInfo + *out = make([]CatalogInfoInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomSetupScript != nil { + in, out := &in.CustomSetupScript, &out.CustomSetupScript + *out = make([]CustomSetupScriptInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Edition != nil { + in, out := &in.Edition, &out.Edition + *out = new(string) + **out = **in + } + if in.ExpressCustomSetup != nil { + in, out := &in.ExpressCustomSetup, &out.ExpressCustomSetup + *out = make([]ExpressCustomSetupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExpressVnetIntegration != nil { + in, out := &in.ExpressVnetIntegration, &out.ExpressVnetIntegration + *out = make([]ExpressVnetIntegrationInitParameters, len(*in)) + copy(*out, *in) + } + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaxParallelExecutionsPerNode != nil { + in, out := &in.MaxParallelExecutionsPerNode, &out.MaxParallelExecutionsPerNode + *out = new(float64) + **out = **in + } + if in.NodeSize != nil { + in, out := &in.NodeSize, &out.NodeSize + *out = new(string) + **out = **in + } + if in.NumberOfNodes != nil { + in, out := &in.NumberOfNodes, &out.NumberOfNodes + *out = new(float64) + **out = **in + } + if in.PackageStore != nil { + in, out := &in.PackageStore, &out.PackageStore + *out = make([]PackageStoreInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Proxy != nil { + in, out := &in.Proxy, &out.Proxy + *out = make([]ProxyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VnetIntegration != nil { + in, out := &in.VnetIntegration, &out.VnetIntegration + *out = make([]VnetIntegrationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeAzureSSISInitParameters. +func (in *IntegrationRuntimeAzureSSISInitParameters) DeepCopy() *IntegrationRuntimeAzureSSISInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeAzureSSISInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntegrationRuntimeAzureSSISList) DeepCopyInto(out *IntegrationRuntimeAzureSSISList) { *out = *in @@ -7076,6 +9563,7 @@ func (in *IntegrationRuntimeAzureSSISSpec) DeepCopyInto(out *IntegrationRuntimeA *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeAzureSSISSpec. @@ -7110,6 +9598,7 @@ func (in *IntegrationRuntimeAzureSpec) DeepCopyInto(out *IntegrationRuntimeAzure *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeAzureSpec. @@ -7140,20 +9629,55 @@ func (in *IntegrationRuntimeAzureStatus) DeepCopy() *IntegrationRuntimeAzureStat } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IntegrationRuntimeManaged) DeepCopyInto(out *IntegrationRuntimeManaged) { +func (in *IntegrationRuntimeInitParameters) DeepCopyInto(out *IntegrationRuntimeInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeManaged. -func (in *IntegrationRuntimeManaged) DeepCopy() *IntegrationRuntimeManaged { - if in == nil { - return nil + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in } - out := new(IntegrationRuntimeManaged) + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeInitParameters. +func (in *IntegrationRuntimeInitParameters) DeepCopy() *IntegrationRuntimeInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeManaged) DeepCopyInto(out *IntegrationRuntimeManaged) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeManaged. +func (in *IntegrationRuntimeManaged) DeepCopy() *IntegrationRuntimeManaged { + if in == nil { + return nil + } + out := new(IntegrationRuntimeManaged) in.DeepCopyInto(out) return out } @@ -7166,6 +9690,36 @@ func (in *IntegrationRuntimeManaged) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeManagedCatalogInfoInitParameters) DeepCopyInto(out *IntegrationRuntimeManagedCatalogInfoInitParameters) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.PricingTier != nil { + in, out := &in.PricingTier, &out.PricingTier + *out = new(string) + **out = **in + } + if in.ServerEndpoint != nil { + in, out := &in.ServerEndpoint, &out.ServerEndpoint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeManagedCatalogInfoInitParameters. +func (in *IntegrationRuntimeManagedCatalogInfoInitParameters) DeepCopy() *IntegrationRuntimeManagedCatalogInfoInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeManagedCatalogInfoInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntegrationRuntimeManagedCatalogInfoObservation) DeepCopyInto(out *IntegrationRuntimeManagedCatalogInfoObservation) { *out = *in @@ -7231,6 +9785,26 @@ func (in *IntegrationRuntimeManagedCatalogInfoParameters) DeepCopy() *Integratio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeManagedCustomSetupScriptInitParameters) DeepCopyInto(out *IntegrationRuntimeManagedCustomSetupScriptInitParameters) { + *out = *in + if in.BlobContainerURI != nil { + in, out := &in.BlobContainerURI, &out.BlobContainerURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeManagedCustomSetupScriptInitParameters. +func (in *IntegrationRuntimeManagedCustomSetupScriptInitParameters) DeepCopy() *IntegrationRuntimeManagedCustomSetupScriptInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeManagedCustomSetupScriptInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntegrationRuntimeManagedCustomSetupScriptObservation) DeepCopyInto(out *IntegrationRuntimeManagedCustomSetupScriptObservation) { *out = *in @@ -7272,6 +9846,77 @@ func (in *IntegrationRuntimeManagedCustomSetupScriptParameters) DeepCopy() *Inte return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeManagedInitParameters) DeepCopyInto(out *IntegrationRuntimeManagedInitParameters) { + *out = *in + if in.CatalogInfo != nil { + in, out := &in.CatalogInfo, &out.CatalogInfo + *out = make([]IntegrationRuntimeManagedCatalogInfoInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomSetupScript != nil { + in, out := &in.CustomSetupScript, &out.CustomSetupScript + *out = make([]IntegrationRuntimeManagedCustomSetupScriptInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Edition != nil { + in, out := &in.Edition, &out.Edition + *out = new(string) + **out = **in + } + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaxParallelExecutionsPerNode != nil { + in, out := &in.MaxParallelExecutionsPerNode, &out.MaxParallelExecutionsPerNode + *out = new(float64) + **out = **in + } + if in.NodeSize != nil { + in, out := &in.NodeSize, &out.NodeSize + *out = new(string) + **out = **in + } + if in.NumberOfNodes != nil { + in, out := &in.NumberOfNodes, &out.NumberOfNodes + *out = new(float64) + **out = **in + } + if in.VnetIntegration != nil { + in, out := &in.VnetIntegration, &out.VnetIntegration + *out = make([]IntegrationRuntimeManagedVnetIntegrationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeManagedInitParameters. +func (in *IntegrationRuntimeManagedInitParameters) DeepCopy() *IntegrationRuntimeManagedInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeManagedInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntegrationRuntimeManagedList) DeepCopyInto(out *IntegrationRuntimeManagedList) { *out = *in @@ -7476,6 +10121,7 @@ func (in *IntegrationRuntimeManagedSpec) DeepCopyInto(out *IntegrationRuntimeMan *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeManagedSpec. @@ -7505,6 +10151,26 @@ func (in *IntegrationRuntimeManagedStatus) DeepCopy() *IntegrationRuntimeManaged return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeManagedVnetIntegrationInitParameters) DeepCopyInto(out *IntegrationRuntimeManagedVnetIntegrationInitParameters) { + *out = *in + if in.VnetID != nil { + in, out := &in.VnetID, &out.VnetID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeManagedVnetIntegrationInitParameters. +func (in *IntegrationRuntimeManagedVnetIntegrationInitParameters) DeepCopy() *IntegrationRuntimeManagedVnetIntegrationInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeManagedVnetIntegrationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntegrationRuntimeManagedVnetIntegrationObservation) DeepCopyInto(out *IntegrationRuntimeManagedVnetIntegrationObservation) { *out = *in @@ -7662,6 +10328,33 @@ func (in *IntegrationRuntimeSelfHosted) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeSelfHostedInitParameters) DeepCopyInto(out *IntegrationRuntimeSelfHostedInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.RbacAuthorization != nil { + in, out := &in.RbacAuthorization, &out.RbacAuthorization + *out = make([]RbacAuthorizationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeSelfHostedInitParameters. +func (in *IntegrationRuntimeSelfHostedInitParameters) DeepCopy() *IntegrationRuntimeSelfHostedInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeSelfHostedInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntegrationRuntimeSelfHostedList) DeepCopyInto(out *IntegrationRuntimeSelfHostedList) { *out = *in @@ -7788,6 +10481,7 @@ func (in *IntegrationRuntimeSelfHostedSpec) DeepCopyInto(out *IntegrationRuntime *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeSelfHostedSpec. @@ -7817,6 +10511,31 @@ func (in *IntegrationRuntimeSelfHostedStatus) DeepCopy() *IntegrationRuntimeSelf return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultConnectionStringInitParameters) DeepCopyInto(out *KeyVaultConnectionStringInitParameters) { + *out = *in + if in.LinkedServiceName != nil { + in, out := &in.LinkedServiceName, &out.LinkedServiceName + *out = new(string) + **out = **in + } + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultConnectionStringInitParameters. +func (in *KeyVaultConnectionStringInitParameters) DeepCopy() *KeyVaultConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(KeyVaultConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KeyVaultConnectionStringObservation) DeepCopyInto(out *KeyVaultConnectionStringObservation) { *out = *in @@ -7867,6 +10586,31 @@ func (in *KeyVaultConnectionStringParameters) DeepCopy() *KeyVaultConnectionStri return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultKeyInitParameters) DeepCopyInto(out *KeyVaultKeyInitParameters) { + *out = *in + if in.LinkedServiceName != nil { + in, out := &in.LinkedServiceName, &out.LinkedServiceName + *out = new(string) + **out = **in + } + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultKeyInitParameters. +func (in *KeyVaultKeyInitParameters) DeepCopy() *KeyVaultKeyInitParameters { + if in == nil { + return nil + } + out := new(KeyVaultKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KeyVaultKeyObservation) DeepCopyInto(out *KeyVaultKeyObservation) { *out = *in @@ -7918,7 +10662,7 @@ func (in *KeyVaultKeyParameters) DeepCopy() *KeyVaultKeyParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KeyVaultLicenseObservation) DeepCopyInto(out *KeyVaultLicenseObservation) { +func (in *KeyVaultLicenseInitParameters) DeepCopyInto(out *KeyVaultLicenseInitParameters) { *out = *in if in.LinkedServiceName != nil { in, out := &in.LinkedServiceName, &out.LinkedServiceName @@ -7952,18 +10696,18 @@ func (in *KeyVaultLicenseObservation) DeepCopyInto(out *KeyVaultLicenseObservati } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultLicenseObservation. -func (in *KeyVaultLicenseObservation) DeepCopy() *KeyVaultLicenseObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultLicenseInitParameters. +func (in *KeyVaultLicenseInitParameters) DeepCopy() *KeyVaultLicenseInitParameters { if in == nil { return nil } - out := new(KeyVaultLicenseObservation) + out := new(KeyVaultLicenseInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KeyVaultLicenseParameters) DeepCopyInto(out *KeyVaultLicenseParameters) { +func (in *KeyVaultLicenseObservation) DeepCopyInto(out *KeyVaultLicenseObservation) { *out = *in if in.LinkedServiceName != nil { in, out := &in.LinkedServiceName, &out.LinkedServiceName @@ -7997,18 +10741,18 @@ func (in *KeyVaultLicenseParameters) DeepCopyInto(out *KeyVaultLicenseParameters } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultLicenseParameters. -func (in *KeyVaultLicenseParameters) DeepCopy() *KeyVaultLicenseParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultLicenseObservation. +func (in *KeyVaultLicenseObservation) DeepCopy() *KeyVaultLicenseObservation { if in == nil { return nil } - out := new(KeyVaultLicenseParameters) + out := new(KeyVaultLicenseObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KeyVaultPasswordObservation) DeepCopyInto(out *KeyVaultPasswordObservation) { +func (in *KeyVaultLicenseParameters) DeepCopyInto(out *KeyVaultLicenseParameters) { *out = *in if in.LinkedServiceName != nil { in, out := &in.LinkedServiceName, &out.LinkedServiceName @@ -8042,18 +10786,18 @@ func (in *KeyVaultPasswordObservation) DeepCopyInto(out *KeyVaultPasswordObserva } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultPasswordObservation. -func (in *KeyVaultPasswordObservation) DeepCopy() *KeyVaultPasswordObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultLicenseParameters. +func (in *KeyVaultLicenseParameters) DeepCopy() *KeyVaultLicenseParameters { if in == nil { return nil } - out := new(KeyVaultPasswordObservation) + out := new(KeyVaultLicenseParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KeyVaultPasswordParameters) DeepCopyInto(out *KeyVaultPasswordParameters) { +func (in *KeyVaultPasswordInitParameters) DeepCopyInto(out *KeyVaultPasswordInitParameters) { *out = *in if in.LinkedServiceName != nil { in, out := &in.LinkedServiceName, &out.LinkedServiceName @@ -8087,29 +10831,139 @@ func (in *KeyVaultPasswordParameters) DeepCopyInto(out *KeyVaultPasswordParamete } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultPasswordParameters. -func (in *KeyVaultPasswordParameters) DeepCopy() *KeyVaultPasswordParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultPasswordInitParameters. +func (in *KeyVaultPasswordInitParameters) DeepCopy() *KeyVaultPasswordInitParameters { if in == nil { return nil } - out := new(KeyVaultPasswordParameters) + out := new(KeyVaultPasswordInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KeyVaultSASTokenObservation) DeepCopyInto(out *KeyVaultSASTokenObservation) { +func (in *KeyVaultPasswordObservation) DeepCopyInto(out *KeyVaultPasswordObservation) { *out = *in if in.LinkedServiceName != nil { in, out := &in.LinkedServiceName, &out.LinkedServiceName *out = new(string) **out = **in } - if in.SecretName != nil { - in, out := &in.SecretName, &out.SecretName - *out = new(string) - **out = **in - } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } + if in.SecretVersion != nil { + in, out := &in.SecretVersion, &out.SecretVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultPasswordObservation. +func (in *KeyVaultPasswordObservation) DeepCopy() *KeyVaultPasswordObservation { + if in == nil { + return nil + } + out := new(KeyVaultPasswordObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultPasswordParameters) DeepCopyInto(out *KeyVaultPasswordParameters) { + *out = *in + if in.LinkedServiceName != nil { + in, out := &in.LinkedServiceName, &out.LinkedServiceName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } + if in.SecretVersion != nil { + in, out := &in.SecretVersion, &out.SecretVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultPasswordParameters. +func (in *KeyVaultPasswordParameters) DeepCopy() *KeyVaultPasswordParameters { + if in == nil { + return nil + } + out := new(KeyVaultPasswordParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultSASTokenInitParameters) DeepCopyInto(out *KeyVaultSASTokenInitParameters) { + *out = *in + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultSASTokenInitParameters. +func (in *KeyVaultSASTokenInitParameters) DeepCopy() *KeyVaultSASTokenInitParameters { + if in == nil { + return nil + } + out := new(KeyVaultSASTokenInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyVaultSASTokenObservation) DeepCopyInto(out *KeyVaultSASTokenObservation) { + *out = *in + if in.LinkedServiceName != nil { + in, out := &in.LinkedServiceName, &out.LinkedServiceName + *out = new(string) + **out = **in + } + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyVaultSASTokenObservation. @@ -8184,6 +11038,84 @@ func (in *LinkedCustomService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedCustomServiceInitParameters) DeepCopyInto(out *LinkedCustomServiceInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntime != nil { + in, out := &in.IntegrationRuntime, &out.IntegrationRuntime + *out = make([]IntegrationRuntimeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypePropertiesJSON != nil { + in, out := &in.TypePropertiesJSON, &out.TypePropertiesJSON + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedCustomServiceInitParameters. +func (in *LinkedCustomServiceInitParameters) DeepCopy() *LinkedCustomServiceInitParameters { + if in == nil { + return nil + } + out := new(LinkedCustomServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedCustomServiceList) DeepCopyInto(out *LinkedCustomServiceList) { *out = *in @@ -8402,6 +11334,7 @@ func (in *LinkedCustomServiceSpec) DeepCopyInto(out *LinkedCustomServiceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedCustomServiceSpec. @@ -8459,39 +11392,7 @@ func (in *LinkedServiceAzureBlobStorage) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServiceAzureBlobStorageList) DeepCopyInto(out *LinkedServiceAzureBlobStorageList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]LinkedServiceAzureBlobStorage, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureBlobStorageList. -func (in *LinkedServiceAzureBlobStorageList) DeepCopy() *LinkedServiceAzureBlobStorageList { - if in == nil { - return nil - } - out := new(LinkedServiceAzureBlobStorageList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinkedServiceAzureBlobStorageList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServiceAzureBlobStorageObservation) DeepCopyInto(out *LinkedServiceAzureBlobStorageObservation) { +func (in *LinkedServiceAzureBlobStorageInitParameters) DeepCopyInto(out *LinkedServiceAzureBlobStorageInitParameters) { *out = *in if in.AdditionalProperties != nil { in, out := &in.AdditionalProperties, &out.AdditionalProperties @@ -8524,21 +11425,11 @@ func (in *LinkedServiceAzureBlobStorageObservation) DeepCopyInto(out *LinkedServ *out = new(string) **out = **in } - if in.DataFactoryID != nil { - in, out := &in.DataFactoryID, &out.DataFactoryID - *out = new(string) - **out = **in - } if in.Description != nil { in, out := &in.Description, &out.Description *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.IntegrationRuntimeName != nil { in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName *out = new(string) @@ -8546,7 +11437,7 @@ func (in *LinkedServiceAzureBlobStorageObservation) DeepCopyInto(out *LinkedServ } if in.KeyVaultSASToken != nil { in, out := &in.KeyVaultSASToken, &out.KeyVaultSASToken - *out = make([]KeyVaultSASTokenObservation, len(*in)) + *out = make([]KeyVaultSASTokenInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -8578,7 +11469,7 @@ func (in *LinkedServiceAzureBlobStorageObservation) DeepCopyInto(out *LinkedServ } if in.ServicePrincipalLinkedKeyVaultKey != nil { in, out := &in.ServicePrincipalLinkedKeyVaultKey, &out.ServicePrincipalLinkedKeyVaultKey - *out = make([]ServicePrincipalLinkedKeyVaultKeyObservation, len(*in)) + *out = make([]ServicePrincipalLinkedKeyVaultKeyInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -8600,36 +11491,188 @@ func (in *LinkedServiceAzureBlobStorageObservation) DeepCopyInto(out *LinkedServ } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureBlobStorageObservation. -func (in *LinkedServiceAzureBlobStorageObservation) DeepCopy() *LinkedServiceAzureBlobStorageObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureBlobStorageInitParameters. +func (in *LinkedServiceAzureBlobStorageInitParameters) DeepCopy() *LinkedServiceAzureBlobStorageInitParameters { if in == nil { return nil } - out := new(LinkedServiceAzureBlobStorageObservation) + out := new(LinkedServiceAzureBlobStorageInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServiceAzureBlobStorageParameters) DeepCopyInto(out *LinkedServiceAzureBlobStorageParameters) { +func (in *LinkedServiceAzureBlobStorageList) DeepCopyInto(out *LinkedServiceAzureBlobStorageList) { *out = *in - if in.AdditionalProperties != nil { - in, out := &in.AdditionalProperties, &out.AdditionalProperties - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LinkedServiceAzureBlobStorage, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Annotations != nil { - in, out := &in.Annotations, &out.Annotations +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureBlobStorageList. +func (in *LinkedServiceAzureBlobStorageList) DeepCopy() *LinkedServiceAzureBlobStorageList { + if in == nil { + return nil + } + out := new(LinkedServiceAzureBlobStorageList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinkedServiceAzureBlobStorageList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureBlobStorageObservation) DeepCopyInto(out *LinkedServiceAzureBlobStorageObservation) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionStringInsecure != nil { + in, out := &in.ConnectionStringInsecure, &out.ConnectionStringInsecure + *out = new(string) + **out = **in + } + if in.DataFactoryID != nil { + in, out := &in.DataFactoryID, &out.DataFactoryID + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.KeyVaultSASToken != nil { + in, out := &in.KeyVaultSASToken, &out.KeyVaultSASToken + *out = make([]KeyVaultSASTokenObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ServicePrincipalID != nil { + in, out := &in.ServicePrincipalID, &out.ServicePrincipalID + *out = new(string) + **out = **in + } + if in.ServicePrincipalKey != nil { + in, out := &in.ServicePrincipalKey, &out.ServicePrincipalKey + *out = new(string) + **out = **in + } + if in.ServicePrincipalLinkedKeyVaultKey != nil { + in, out := &in.ServicePrincipalLinkedKeyVaultKey, &out.ServicePrincipalLinkedKeyVaultKey + *out = make([]ServicePrincipalLinkedKeyVaultKeyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageKind != nil { + in, out := &in.StorageKind, &out.StorageKind + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } + if in.UseManagedIdentity != nil { + in, out := &in.UseManagedIdentity, &out.UseManagedIdentity + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureBlobStorageObservation. +func (in *LinkedServiceAzureBlobStorageObservation) DeepCopy() *LinkedServiceAzureBlobStorageObservation { + if in == nil { + return nil + } + out := new(LinkedServiceAzureBlobStorageObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureBlobStorageParameters) DeepCopyInto(out *LinkedServiceAzureBlobStorageParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -8755,6 +11798,7 @@ func (in *LinkedServiceAzureBlobStorageSpec) DeepCopyInto(out *LinkedServiceAzur *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureBlobStorageSpec. @@ -8811,6 +11855,128 @@ func (in *LinkedServiceAzureDatabricks) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureDatabricksInitParameters) DeepCopyInto(out *LinkedServiceAzureDatabricksInitParameters) { + *out = *in + if in.AdbDomain != nil { + in, out := &in.AdbDomain, &out.AdbDomain + *out = new(string) + **out = **in + } + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.ExistingClusterID != nil { + in, out := &in.ExistingClusterID, &out.ExistingClusterID + *out = new(string) + **out = **in + } + if in.InstancePool != nil { + in, out := &in.InstancePool, &out.InstancePool + *out = make([]InstancePoolInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.KeyVaultPassword != nil { + in, out := &in.KeyVaultPassword, &out.KeyVaultPassword + *out = make([]LinkedServiceAzureDatabricksKeyVaultPasswordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NewClusterConfig != nil { + in, out := &in.NewClusterConfig, &out.NewClusterConfig + *out = make([]NewClusterConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureDatabricksInitParameters. +func (in *LinkedServiceAzureDatabricksInitParameters) DeepCopy() *LinkedServiceAzureDatabricksInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceAzureDatabricksInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureDatabricksKeyVaultPasswordInitParameters) DeepCopyInto(out *LinkedServiceAzureDatabricksKeyVaultPasswordInitParameters) { + *out = *in + if in.LinkedServiceName != nil { + in, out := &in.LinkedServiceName, &out.LinkedServiceName + *out = new(string) + **out = **in + } + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureDatabricksKeyVaultPasswordInitParameters. +func (in *LinkedServiceAzureDatabricksKeyVaultPasswordInitParameters) DeepCopy() *LinkedServiceAzureDatabricksKeyVaultPasswordInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceAzureDatabricksKeyVaultPasswordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceAzureDatabricksKeyVaultPasswordObservation) DeepCopyInto(out *LinkedServiceAzureDatabricksKeyVaultPasswordObservation) { *out = *in @@ -9142,6 +12308,7 @@ func (in *LinkedServiceAzureDatabricksSpec) DeepCopyInto(out *LinkedServiceAzure *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureDatabricksSpec. @@ -9198,6 +12365,119 @@ func (in *LinkedServiceAzureFileStorage) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureFileStorageInitParameters) DeepCopyInto(out *LinkedServiceAzureFileStorageInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.FileShare != nil { + in, out := &in.FileShare, &out.FileShare + *out = new(string) + **out = **in + } + if in.Host != nil { + in, out := &in.Host, &out.Host + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.KeyVaultPassword != nil { + in, out := &in.KeyVaultPassword, &out.KeyVaultPassword + *out = make([]LinkedServiceAzureFileStorageKeyVaultPasswordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.UserID != nil { + in, out := &in.UserID, &out.UserID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureFileStorageInitParameters. +func (in *LinkedServiceAzureFileStorageInitParameters) DeepCopy() *LinkedServiceAzureFileStorageInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceAzureFileStorageInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureFileStorageKeyVaultPasswordInitParameters) DeepCopyInto(out *LinkedServiceAzureFileStorageKeyVaultPasswordInitParameters) { + *out = *in + if in.LinkedServiceName != nil { + in, out := &in.LinkedServiceName, &out.LinkedServiceName + *out = new(string) + **out = **in + } + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureFileStorageKeyVaultPasswordInitParameters. +func (in *LinkedServiceAzureFileStorageKeyVaultPasswordInitParameters) DeepCopy() *LinkedServiceAzureFileStorageKeyVaultPasswordInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceAzureFileStorageKeyVaultPasswordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceAzureFileStorageKeyVaultPasswordObservation) DeepCopyInto(out *LinkedServiceAzureFileStorageKeyVaultPasswordObservation) { *out = *in @@ -9492,6 +12772,7 @@ func (in *LinkedServiceAzureFileStorageSpec) DeepCopyInto(out *LinkedServiceAzur *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureFileStorageSpec. @@ -9499,55 +12780,133 @@ func (in *LinkedServiceAzureFileStorageSpec) DeepCopy() *LinkedServiceAzureFileS if in == nil { return nil } - out := new(LinkedServiceAzureFileStorageSpec) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServiceAzureFileStorageStatus) DeepCopyInto(out *LinkedServiceAzureFileStorageStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureFileStorageStatus. -func (in *LinkedServiceAzureFileStorageStatus) DeepCopy() *LinkedServiceAzureFileStorageStatus { - if in == nil { - return nil + out := new(LinkedServiceAzureFileStorageSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureFileStorageStatus) DeepCopyInto(out *LinkedServiceAzureFileStorageStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureFileStorageStatus. +func (in *LinkedServiceAzureFileStorageStatus) DeepCopy() *LinkedServiceAzureFileStorageStatus { + if in == nil { + return nil + } + out := new(LinkedServiceAzureFileStorageStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureFunction) DeepCopyInto(out *LinkedServiceAzureFunction) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureFunction. +func (in *LinkedServiceAzureFunction) DeepCopy() *LinkedServiceAzureFunction { + if in == nil { + return nil + } + out := new(LinkedServiceAzureFunction) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinkedServiceAzureFunction) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureFunctionInitParameters) DeepCopyInto(out *LinkedServiceAzureFunctionInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.KeyVaultKey != nil { + in, out := &in.KeyVaultKey, &out.KeyVaultKey + *out = make([]KeyVaultKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in } - out := new(LinkedServiceAzureFileStorageStatus) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServiceAzureFunction) DeepCopyInto(out *LinkedServiceAzureFunction) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureFunction. -func (in *LinkedServiceAzureFunction) DeepCopy() *LinkedServiceAzureFunction { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureFunctionInitParameters. +func (in *LinkedServiceAzureFunctionInitParameters) DeepCopy() *LinkedServiceAzureFunctionInitParameters { if in == nil { return nil } - out := new(LinkedServiceAzureFunction) + out := new(LinkedServiceAzureFunctionInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinkedServiceAzureFunction) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceAzureFunctionList) DeepCopyInto(out *LinkedServiceAzureFunctionList) { *out = *in @@ -9771,6 +13130,7 @@ func (in *LinkedServiceAzureFunctionSpec) DeepCopyInto(out *LinkedServiceAzureFu *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureFunctionSpec. @@ -9827,6 +13187,136 @@ func (in *LinkedServiceAzureSQLDatabase) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureSQLDatabaseInitParameters) DeepCopyInto(out *LinkedServiceAzureSQLDatabaseInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.KeyVaultConnectionString != nil { + in, out := &in.KeyVaultConnectionString, &out.KeyVaultConnectionString + *out = make([]KeyVaultConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultPassword != nil { + in, out := &in.KeyVaultPassword, &out.KeyVaultPassword + *out = make([]LinkedServiceAzureSQLDatabaseKeyVaultPasswordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ServicePrincipalID != nil { + in, out := &in.ServicePrincipalID, &out.ServicePrincipalID + *out = new(string) + **out = **in + } + if in.ServicePrincipalKey != nil { + in, out := &in.ServicePrincipalKey, &out.ServicePrincipalKey + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } + if in.UseManagedIdentity != nil { + in, out := &in.UseManagedIdentity, &out.UseManagedIdentity + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureSQLDatabaseInitParameters. +func (in *LinkedServiceAzureSQLDatabaseInitParameters) DeepCopy() *LinkedServiceAzureSQLDatabaseInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceAzureSQLDatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureSQLDatabaseKeyVaultPasswordInitParameters) DeepCopyInto(out *LinkedServiceAzureSQLDatabaseKeyVaultPasswordInitParameters) { + *out = *in + if in.LinkedServiceName != nil { + in, out := &in.LinkedServiceName, &out.LinkedServiceName + *out = new(string) + **out = **in + } + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureSQLDatabaseKeyVaultPasswordInitParameters. +func (in *LinkedServiceAzureSQLDatabaseKeyVaultPasswordInitParameters) DeepCopy() *LinkedServiceAzureSQLDatabaseKeyVaultPasswordInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceAzureSQLDatabaseKeyVaultPasswordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceAzureSQLDatabaseKeyVaultPasswordObservation) DeepCopyInto(out *LinkedServiceAzureSQLDatabaseKeyVaultPasswordObservation) { *out = *in @@ -10149,6 +13639,7 @@ func (in *LinkedServiceAzureSQLDatabaseSpec) DeepCopyInto(out *LinkedServiceAzur *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureSQLDatabaseSpec. @@ -10173,38 +13664,109 @@ func (in *LinkedServiceAzureSQLDatabaseStatus) DeepCopy() *LinkedServiceAzureSQL if in == nil { return nil } - out := new(LinkedServiceAzureSQLDatabaseStatus) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServiceAzureSearch) DeepCopyInto(out *LinkedServiceAzureSearch) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + out := new(LinkedServiceAzureSQLDatabaseStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureSearch) DeepCopyInto(out *LinkedServiceAzureSearch) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureSearch. +func (in *LinkedServiceAzureSearch) DeepCopy() *LinkedServiceAzureSearch { + if in == nil { + return nil + } + out := new(LinkedServiceAzureSearch) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinkedServiceAzureSearch) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureSearchInitParameters) DeepCopyInto(out *LinkedServiceAzureSearchInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureSearch. -func (in *LinkedServiceAzureSearch) DeepCopy() *LinkedServiceAzureSearch { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureSearchInitParameters. +func (in *LinkedServiceAzureSearchInitParameters) DeepCopy() *LinkedServiceAzureSearchInitParameters { if in == nil { return nil } - out := new(LinkedServiceAzureSearch) + out := new(LinkedServiceAzureSearchInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinkedServiceAzureSearch) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceAzureSearchList) DeepCopyInto(out *LinkedServiceAzureSearchList) { *out = *in @@ -10434,6 +13996,7 @@ func (in *LinkedServiceAzureSearchSpec) DeepCopyInto(out *LinkedServiceAzureSear *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureSearchSpec. @@ -10490,6 +14053,72 @@ func (in *LinkedServiceAzureTableStorage) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceAzureTableStorageInitParameters) DeepCopyInto(out *LinkedServiceAzureTableStorageInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureTableStorageInitParameters. +func (in *LinkedServiceAzureTableStorageInitParameters) DeepCopy() *LinkedServiceAzureTableStorageInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceAzureTableStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceAzureTableStorageList) DeepCopyInto(out *LinkedServiceAzureTableStorageList) { *out = *in @@ -10685,6 +14314,7 @@ func (in *LinkedServiceAzureTableStorageSpec) DeepCopyInto(out *LinkedServiceAzu *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceAzureTableStorageSpec. @@ -10741,6 +14371,82 @@ func (in *LinkedServiceCosmosDB) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceCosmosDBInitParameters) DeepCopyInto(out *LinkedServiceCosmosDBInitParameters) { + *out = *in + if in.AccountEndpoint != nil { + in, out := &in.AccountEndpoint, &out.AccountEndpoint + *out = new(string) + **out = **in + } + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Database != nil { + in, out := &in.Database, &out.Database + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceCosmosDBInitParameters. +func (in *LinkedServiceCosmosDBInitParameters) DeepCopy() *LinkedServiceCosmosDBInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceCosmosDBInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceCosmosDBList) DeepCopyInto(out *LinkedServiceCosmosDBList) { *out = *in @@ -10753,53 +14459,129 @@ func (in *LinkedServiceCosmosDBList) DeepCopyInto(out *LinkedServiceCosmosDBList (*in)[i].DeepCopyInto(&(*out)[i]) } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceCosmosDBList. -func (in *LinkedServiceCosmosDBList) DeepCopy() *LinkedServiceCosmosDBList { - if in == nil { - return nil +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceCosmosDBList. +func (in *LinkedServiceCosmosDBList) DeepCopy() *LinkedServiceCosmosDBList { + if in == nil { + return nil + } + out := new(LinkedServiceCosmosDBList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinkedServiceCosmosDBList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceCosmosDBMongoapi) DeepCopyInto(out *LinkedServiceCosmosDBMongoapi) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceCosmosDBMongoapi. +func (in *LinkedServiceCosmosDBMongoapi) DeepCopy() *LinkedServiceCosmosDBMongoapi { + if in == nil { + return nil + } + out := new(LinkedServiceCosmosDBMongoapi) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinkedServiceCosmosDBMongoapi) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceCosmosDBMongoapiInitParameters) DeepCopyInto(out *LinkedServiceCosmosDBMongoapiInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Database != nil { + in, out := &in.Database, &out.Database + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } } - out := new(LinkedServiceCosmosDBList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinkedServiceCosmosDBList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c + if in.ServerVersionIs32OrHigher != nil { + in, out := &in.ServerVersionIs32OrHigher, &out.ServerVersionIs32OrHigher + *out = new(bool) + **out = **in } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServiceCosmosDBMongoapi) DeepCopyInto(out *LinkedServiceCosmosDBMongoapi) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceCosmosDBMongoapi. -func (in *LinkedServiceCosmosDBMongoapi) DeepCopy() *LinkedServiceCosmosDBMongoapi { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceCosmosDBMongoapiInitParameters. +func (in *LinkedServiceCosmosDBMongoapiInitParameters) DeepCopy() *LinkedServiceCosmosDBMongoapiInitParameters { if in == nil { return nil } - out := new(LinkedServiceCosmosDBMongoapi) + out := new(LinkedServiceCosmosDBMongoapiInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinkedServiceCosmosDBMongoapi) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceCosmosDBMongoapiList) DeepCopyInto(out *LinkedServiceCosmosDBMongoapiList) { *out = *in @@ -11019,6 +14801,7 @@ func (in *LinkedServiceCosmosDBMongoapiSpec) DeepCopyInto(out *LinkedServiceCosm *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceCosmosDBMongoapiSpec. @@ -11240,6 +15023,7 @@ func (in *LinkedServiceCosmosDBSpec) DeepCopyInto(out *LinkedServiceCosmosDBSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceCosmosDBSpec. @@ -11296,6 +15080,102 @@ func (in *LinkedServiceDataLakeStorageGen2) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceDataLakeStorageGen2InitParameters) DeepCopyInto(out *LinkedServiceDataLakeStorageGen2InitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ServicePrincipalID != nil { + in, out := &in.ServicePrincipalID, &out.ServicePrincipalID + *out = new(string) + **out = **in + } + if in.ServicePrincipalKey != nil { + in, out := &in.ServicePrincipalKey, &out.ServicePrincipalKey + *out = new(string) + **out = **in + } + if in.StorageAccountKey != nil { + in, out := &in.StorageAccountKey, &out.StorageAccountKey + *out = new(string) + **out = **in + } + if in.Tenant != nil { + in, out := &in.Tenant, &out.Tenant + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } + if in.UseManagedIdentity != nil { + in, out := &in.UseManagedIdentity, &out.UseManagedIdentity + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceDataLakeStorageGen2InitParameters. +func (in *LinkedServiceDataLakeStorageGen2InitParameters) DeepCopy() *LinkedServiceDataLakeStorageGen2InitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceDataLakeStorageGen2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceDataLakeStorageGen2List) DeepCopyInto(out *LinkedServiceDataLakeStorageGen2List) { *out = *in @@ -11550,6 +15430,7 @@ func (in *LinkedServiceDataLakeStorageGen2Spec) DeepCopyInto(out *LinkedServiceD *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceDataLakeStorageGen2Spec. @@ -11574,38 +15455,134 @@ func (in *LinkedServiceDataLakeStorageGen2Status) DeepCopy() *LinkedServiceDataL if in == nil { return nil } - out := new(LinkedServiceDataLakeStorageGen2Status) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServiceKeyVault) DeepCopyInto(out *LinkedServiceKeyVault) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + out := new(LinkedServiceDataLakeStorageGen2Status) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceInitParameters) DeepCopyInto(out *LinkedServiceInitParameters) { + *out = *in + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceInitParameters. +func (in *LinkedServiceInitParameters) DeepCopy() *LinkedServiceInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceKeyVault) DeepCopyInto(out *LinkedServiceKeyVault) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceKeyVault. +func (in *LinkedServiceKeyVault) DeepCopy() *LinkedServiceKeyVault { + if in == nil { + return nil + } + out := new(LinkedServiceKeyVault) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinkedServiceKeyVault) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceKeyVaultInitParameters) DeepCopyInto(out *LinkedServiceKeyVaultInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceKeyVault. -func (in *LinkedServiceKeyVault) DeepCopy() *LinkedServiceKeyVault { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceKeyVaultInitParameters. +func (in *LinkedServiceKeyVaultInitParameters) DeepCopy() *LinkedServiceKeyVaultInitParameters { if in == nil { return nil } - out := new(LinkedServiceKeyVault) + out := new(LinkedServiceKeyVaultInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinkedServiceKeyVault) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceKeyVaultList) DeepCopyInto(out *LinkedServiceKeyVaultList) { *out = *in @@ -11820,6 +15797,7 @@ func (in *LinkedServiceKeyVaultSpec) DeepCopyInto(out *LinkedServiceKeyVaultSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceKeyVaultSpec. @@ -11876,6 +15854,87 @@ func (in *LinkedServiceKusto) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceKustoInitParameters) DeepCopyInto(out *LinkedServiceKustoInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ServicePrincipalID != nil { + in, out := &in.ServicePrincipalID, &out.ServicePrincipalID + *out = new(string) + **out = **in + } + if in.Tenant != nil { + in, out := &in.Tenant, &out.Tenant + *out = new(string) + **out = **in + } + if in.UseManagedIdentity != nil { + in, out := &in.UseManagedIdentity, &out.UseManagedIdentity + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceKustoInitParameters. +func (in *LinkedServiceKustoInitParameters) DeepCopy() *LinkedServiceKustoInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceKustoInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceKustoList) DeepCopyInto(out *LinkedServiceKustoList) { *out = *in @@ -12145,6 +16204,7 @@ func (in *LinkedServiceKustoSpec) DeepCopyInto(out *LinkedServiceKustoSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceKustoSpec. @@ -12201,6 +16261,77 @@ func (in *LinkedServiceMySQL) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceMySQLInitParameters) DeepCopyInto(out *LinkedServiceMySQLInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceMySQLInitParameters. +func (in *LinkedServiceMySQLInitParameters) DeepCopy() *LinkedServiceMySQLInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceMySQLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceMySQLList) DeepCopyInto(out *LinkedServiceMySQLList) { *out = *in @@ -12405,6 +16536,7 @@ func (in *LinkedServiceMySQLSpec) DeepCopyInto(out *LinkedServiceMySQLSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceMySQLSpec. @@ -12412,55 +16544,133 @@ func (in *LinkedServiceMySQLSpec) DeepCopy() *LinkedServiceMySQLSpec { if in == nil { return nil } - out := new(LinkedServiceMySQLSpec) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServiceMySQLStatus) DeepCopyInto(out *LinkedServiceMySQLStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceMySQLStatus. -func (in *LinkedServiceMySQLStatus) DeepCopy() *LinkedServiceMySQLStatus { - if in == nil { - return nil + out := new(LinkedServiceMySQLSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceMySQLStatus) DeepCopyInto(out *LinkedServiceMySQLStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceMySQLStatus. +func (in *LinkedServiceMySQLStatus) DeepCopy() *LinkedServiceMySQLStatus { + if in == nil { + return nil + } + out := new(LinkedServiceMySQLStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceOData) DeepCopyInto(out *LinkedServiceOData) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceOData. +func (in *LinkedServiceOData) DeepCopy() *LinkedServiceOData { + if in == nil { + return nil + } + out := new(LinkedServiceOData) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinkedServiceOData) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceODataInitParameters) DeepCopyInto(out *LinkedServiceODataInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.BasicAuthentication != nil { + in, out := &in.BasicAuthentication, &out.BasicAuthentication + *out = make([]BasicAuthenticationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in } - out := new(LinkedServiceMySQLStatus) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServiceOData) DeepCopyInto(out *LinkedServiceOData) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceOData. -func (in *LinkedServiceOData) DeepCopy() *LinkedServiceOData { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceODataInitParameters. +func (in *LinkedServiceODataInitParameters) DeepCopy() *LinkedServiceODataInitParameters { if in == nil { return nil } - out := new(LinkedServiceOData) + out := new(LinkedServiceODataInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinkedServiceOData) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceODataList) DeepCopyInto(out *LinkedServiceODataList) { *out = *in @@ -12679,6 +16889,7 @@ func (in *LinkedServiceODataSpec) DeepCopyInto(out *LinkedServiceODataSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceODataSpec. @@ -12770,6 +16981,26 @@ func (in *LinkedServiceOdbc) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceOdbcBasicAuthenticationInitParameters) DeepCopyInto(out *LinkedServiceOdbcBasicAuthenticationInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceOdbcBasicAuthenticationInitParameters. +func (in *LinkedServiceOdbcBasicAuthenticationInitParameters) DeepCopy() *LinkedServiceOdbcBasicAuthenticationInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceOdbcBasicAuthenticationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceOdbcBasicAuthenticationObservation) DeepCopyInto(out *LinkedServiceOdbcBasicAuthenticationObservation) { *out = *in @@ -12811,6 +17042,84 @@ func (in *LinkedServiceOdbcBasicAuthenticationParameters) DeepCopy() *LinkedServ return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceOdbcInitParameters) DeepCopyInto(out *LinkedServiceOdbcInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.BasicAuthentication != nil { + in, out := &in.BasicAuthentication, &out.BasicAuthentication + *out = make([]LinkedServiceOdbcBasicAuthenticationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceOdbcInitParameters. +func (in *LinkedServiceOdbcInitParameters) DeepCopy() *LinkedServiceOdbcInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceOdbcInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceOdbcList) DeepCopyInto(out *LinkedServiceOdbcList) { *out = *in @@ -13029,6 +17338,7 @@ func (in *LinkedServiceOdbcSpec) DeepCopyInto(out *LinkedServiceOdbcSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceOdbcSpec. @@ -13066,15 +17376,113 @@ func (in *LinkedServiceParameters) DeepCopyInto(out *LinkedServiceParameters) { *out = new(string) **out = **in } - if in.NameRef != nil { - in, out := &in.NameRef, &out.NameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.NameSelector != nil { - in, out := &in.NameSelector, &out.NameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.NameRef != nil { + in, out := &in.NameRef, &out.NameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.NameSelector != nil { + in, out := &in.NameSelector, &out.NameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceParameters. +func (in *LinkedServiceParameters) DeepCopy() *LinkedServiceParameters { + if in == nil { + return nil + } + out := new(LinkedServiceParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServicePostgreSQL) DeepCopyInto(out *LinkedServicePostgreSQL) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServicePostgreSQL. +func (in *LinkedServicePostgreSQL) DeepCopy() *LinkedServicePostgreSQL { + if in == nil { + return nil + } + out := new(LinkedServicePostgreSQL) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LinkedServicePostgreSQL) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServicePostgreSQLInitParameters) DeepCopyInto(out *LinkedServicePostgreSQLInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in } if in.Parameters != nil { in, out := &in.Parameters, &out.Parameters @@ -13093,43 +17501,16 @@ func (in *LinkedServiceParameters) DeepCopyInto(out *LinkedServiceParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceParameters. -func (in *LinkedServiceParameters) DeepCopy() *LinkedServiceParameters { - if in == nil { - return nil - } - out := new(LinkedServiceParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinkedServicePostgreSQL) DeepCopyInto(out *LinkedServicePostgreSQL) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServicePostgreSQL. -func (in *LinkedServicePostgreSQL) DeepCopy() *LinkedServicePostgreSQL { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServicePostgreSQLInitParameters. +func (in *LinkedServicePostgreSQLInitParameters) DeepCopy() *LinkedServicePostgreSQLInitParameters { if in == nil { return nil } - out := new(LinkedServicePostgreSQL) + out := new(LinkedServicePostgreSQLInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LinkedServicePostgreSQL) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServicePostgreSQLList) DeepCopyInto(out *LinkedServicePostgreSQLList) { *out = *in @@ -13334,6 +17715,7 @@ func (in *LinkedServicePostgreSQLSpec) DeepCopyInto(out *LinkedServicePostgreSQL *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServicePostgreSQLSpec. @@ -13390,6 +17772,102 @@ func (in *LinkedServiceSFTP) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceSFTPInitParameters) DeepCopyInto(out *LinkedServiceSFTPInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AuthenticationType != nil { + in, out := &in.AuthenticationType, &out.AuthenticationType + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Host != nil { + in, out := &in.Host, &out.Host + *out = new(string) + **out = **in + } + if in.HostKeyFingerprint != nil { + in, out := &in.HostKeyFingerprint, &out.HostKeyFingerprint + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.SkipHostKeyValidation != nil { + in, out := &in.SkipHostKeyValidation, &out.SkipHostKeyValidation + *out = new(bool) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSFTPInitParameters. +func (in *LinkedServiceSFTPInitParameters) DeepCopy() *LinkedServiceSFTPInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceSFTPInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceSFTPList) DeepCopyInto(out *LinkedServiceSFTPList) { *out = *in @@ -13645,6 +18123,7 @@ func (in *LinkedServiceSFTPSpec) DeepCopyInto(out *LinkedServiceSFTPSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSFTPSpec. @@ -13701,6 +18180,121 @@ func (in *LinkedServiceSQLServer) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceSQLServerInitParameters) DeepCopyInto(out *LinkedServiceSQLServerInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.KeyVaultConnectionString != nil { + in, out := &in.KeyVaultConnectionString, &out.KeyVaultConnectionString + *out = make([]LinkedServiceSQLServerKeyVaultConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultPassword != nil { + in, out := &in.KeyVaultPassword, &out.KeyVaultPassword + *out = make([]LinkedServiceSQLServerKeyVaultPasswordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.UserName != nil { + in, out := &in.UserName, &out.UserName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSQLServerInitParameters. +func (in *LinkedServiceSQLServerInitParameters) DeepCopy() *LinkedServiceSQLServerInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceSQLServerInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceSQLServerKeyVaultConnectionStringInitParameters) DeepCopyInto(out *LinkedServiceSQLServerKeyVaultConnectionStringInitParameters) { + *out = *in + if in.LinkedServiceName != nil { + in, out := &in.LinkedServiceName, &out.LinkedServiceName + *out = new(string) + **out = **in + } + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSQLServerKeyVaultConnectionStringInitParameters. +func (in *LinkedServiceSQLServerKeyVaultConnectionStringInitParameters) DeepCopy() *LinkedServiceSQLServerKeyVaultConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceSQLServerKeyVaultConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceSQLServerKeyVaultConnectionStringObservation) DeepCopyInto(out *LinkedServiceSQLServerKeyVaultConnectionStringObservation) { *out = *in @@ -13746,7 +18340,27 @@ func (in *LinkedServiceSQLServerKeyVaultConnectionStringParameters) DeepCopy() * if in == nil { return nil } - out := new(LinkedServiceSQLServerKeyVaultConnectionStringParameters) + out := new(LinkedServiceSQLServerKeyVaultConnectionStringParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceSQLServerKeyVaultPasswordInitParameters) DeepCopyInto(out *LinkedServiceSQLServerKeyVaultPasswordInitParameters) { + *out = *in + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSQLServerKeyVaultPasswordInitParameters. +func (in *LinkedServiceSQLServerKeyVaultPasswordInitParameters) DeepCopy() *LinkedServiceSQLServerKeyVaultPasswordInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceSQLServerKeyVaultPasswordInitParameters) in.DeepCopyInto(out) return out } @@ -14053,6 +18667,7 @@ func (in *LinkedServiceSQLServerSpec) DeepCopyInto(out *LinkedServiceSQLServerSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSQLServerSpec. @@ -14109,6 +18724,104 @@ func (in *LinkedServiceSnowflake) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceSnowflakeInitParameters) DeepCopyInto(out *LinkedServiceSnowflakeInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.KeyVaultPassword != nil { + in, out := &in.KeyVaultPassword, &out.KeyVaultPassword + *out = make([]LinkedServiceSnowflakeKeyVaultPasswordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSnowflakeInitParameters. +func (in *LinkedServiceSnowflakeInitParameters) DeepCopy() *LinkedServiceSnowflakeInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceSnowflakeInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceSnowflakeKeyVaultPasswordInitParameters) DeepCopyInto(out *LinkedServiceSnowflakeKeyVaultPasswordInitParameters) { + *out = *in + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSnowflakeKeyVaultPasswordInitParameters. +func (in *LinkedServiceSnowflakeKeyVaultPasswordInitParameters) DeepCopy() *LinkedServiceSnowflakeKeyVaultPasswordInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceSnowflakeKeyVaultPasswordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceSnowflakeKeyVaultPasswordObservation) DeepCopyInto(out *LinkedServiceSnowflakeKeyVaultPasswordObservation) { *out = *in @@ -14387,6 +19100,7 @@ func (in *LinkedServiceSnowflakeSpec) DeepCopyInto(out *LinkedServiceSnowflakeSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSnowflakeSpec. @@ -14443,6 +19157,104 @@ func (in *LinkedServiceSynapse) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceSynapseInitParameters) DeepCopyInto(out *LinkedServiceSynapseInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.KeyVaultPassword != nil { + in, out := &in.KeyVaultPassword, &out.KeyVaultPassword + *out = make([]LinkedServiceSynapseKeyVaultPasswordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSynapseInitParameters. +func (in *LinkedServiceSynapseInitParameters) DeepCopy() *LinkedServiceSynapseInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceSynapseInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceSynapseKeyVaultPasswordInitParameters) DeepCopyInto(out *LinkedServiceSynapseKeyVaultPasswordInitParameters) { + *out = *in + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSynapseKeyVaultPasswordInitParameters. +func (in *LinkedServiceSynapseKeyVaultPasswordInitParameters) DeepCopy() *LinkedServiceSynapseKeyVaultPasswordInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceSynapseKeyVaultPasswordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceSynapseKeyVaultPasswordObservation) DeepCopyInto(out *LinkedServiceSynapseKeyVaultPasswordObservation) { *out = *in @@ -14721,6 +19533,7 @@ func (in *LinkedServiceSynapseSpec) DeepCopyInto(out *LinkedServiceSynapseSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSynapseSpec. @@ -14774,7 +19587,88 @@ func (in *LinkedServiceWeb) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } - return nil + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceWebInitParameters) DeepCopyInto(out *LinkedServiceWebInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AuthenticationType != nil { + in, out := &in.AuthenticationType, &out.AuthenticationType + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntimeName != nil { + in, out := &in.IntegrationRuntimeName, &out.IntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceWebInitParameters. +func (in *LinkedServiceWebInitParameters) DeepCopy() *LinkedServiceWebInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceWebInitParameters) + in.DeepCopyInto(out) + return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. @@ -15006,6 +19900,7 @@ func (in *LinkedServiceWebSpec) DeepCopyInto(out *LinkedServiceWebSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceWebSpec. @@ -15062,6 +19957,42 @@ func (in *ManagedPrivateEndpoint) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedPrivateEndpointInitParameters) DeepCopyInto(out *ManagedPrivateEndpointInitParameters) { + *out = *in + if in.Fqdns != nil { + in, out := &in.Fqdns, &out.Fqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubresourceName != nil { + in, out := &in.SubresourceName, &out.SubresourceName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedPrivateEndpointInitParameters. +func (in *ManagedPrivateEndpointInitParameters) DeepCopy() *ManagedPrivateEndpointInitParameters { + if in == nil { + return nil + } + out := new(ManagedPrivateEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedPrivateEndpointList) DeepCopyInto(out *ManagedPrivateEndpointList) { *out = *in @@ -15216,6 +20147,7 @@ func (in *ManagedPrivateEndpointSpec) DeepCopyInto(out *ManagedPrivateEndpointSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedPrivateEndpointSpec. @@ -15245,6 +20177,31 @@ func (in *ManagedPrivateEndpointStatus) DeepCopy() *ManagedPrivateEndpointStatus return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonthlyInitParameters) DeepCopyInto(out *MonthlyInitParameters) { + *out = *in + if in.Week != nil { + in, out := &in.Week, &out.Week + *out = new(float64) + **out = **in + } + if in.Weekday != nil { + in, out := &in.Weekday, &out.Weekday + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonthlyInitParameters. +func (in *MonthlyInitParameters) DeepCopy() *MonthlyInitParameters { + if in == nil { + return nil + } + out := new(MonthlyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonthlyObservation) DeepCopyInto(out *MonthlyObservation) { *out = *in @@ -15295,6 +20252,107 @@ func (in *MonthlyParameters) DeepCopy() *MonthlyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NewClusterConfigInitParameters) DeepCopyInto(out *NewClusterConfigInitParameters) { + *out = *in + if in.ClusterVersion != nil { + in, out := &in.ClusterVersion, &out.ClusterVersion + *out = new(string) + **out = **in + } + if in.CustomTags != nil { + in, out := &in.CustomTags, &out.CustomTags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.DriverNodeType != nil { + in, out := &in.DriverNodeType, &out.DriverNodeType + *out = new(string) + **out = **in + } + if in.InitScripts != nil { + in, out := &in.InitScripts, &out.InitScripts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LogDestination != nil { + in, out := &in.LogDestination, &out.LogDestination + *out = new(string) + **out = **in + } + if in.MaxNumberOfWorkers != nil { + in, out := &in.MaxNumberOfWorkers, &out.MaxNumberOfWorkers + *out = new(float64) + **out = **in + } + if in.MinNumberOfWorkers != nil { + in, out := &in.MinNumberOfWorkers, &out.MinNumberOfWorkers + *out = new(float64) + **out = **in + } + if in.NodeType != nil { + in, out := &in.NodeType, &out.NodeType + *out = new(string) + **out = **in + } + if in.SparkConfig != nil { + in, out := &in.SparkConfig, &out.SparkConfig + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.SparkEnvironmentVariables != nil { + in, out := &in.SparkEnvironmentVariables, &out.SparkEnvironmentVariables + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NewClusterConfigInitParameters. +func (in *NewClusterConfigInitParameters) DeepCopy() *NewClusterConfigInitParameters { + if in == nil { + return nil + } + out := new(NewClusterConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NewClusterConfigObservation) DeepCopyInto(out *NewClusterConfigObservation) { *out = *in @@ -15497,6 +20555,31 @@ func (in *NewClusterConfigParameters) DeepCopy() *NewClusterConfigParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PackageStoreInitParameters) DeepCopyInto(out *PackageStoreInitParameters) { + *out = *in + if in.LinkedServiceName != nil { + in, out := &in.LinkedServiceName, &out.LinkedServiceName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageStoreInitParameters. +func (in *PackageStoreInitParameters) DeepCopy() *PackageStoreInitParameters { + if in == nil { + return nil + } + out := new(PackageStoreInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PackageStoreObservation) DeepCopyInto(out *PackageStoreObservation) { *out = *in @@ -15542,38 +20625,119 @@ func (in *PackageStoreParameters) DeepCopy() *PackageStoreParameters { if in == nil { return nil } - out := new(PackageStoreParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Pipeline) DeepCopyInto(out *Pipeline) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + out := new(PackageStoreParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Pipeline) DeepCopyInto(out *Pipeline) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pipeline. +func (in *Pipeline) DeepCopy() *Pipeline { + if in == nil { + return nil + } + out := new(Pipeline) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Pipeline) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PipelineInitParameters) DeepCopyInto(out *PipelineInitParameters) { + *out = *in + if in.ActivitiesJSON != nil { + in, out := &in.ActivitiesJSON, &out.ActivitiesJSON + *out = new(string) + **out = **in + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Concurrency != nil { + in, out := &in.Concurrency, &out.Concurrency + *out = new(float64) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Folder != nil { + in, out := &in.Folder, &out.Folder + *out = new(string) + **out = **in + } + if in.MoniterMetricsAfterDuration != nil { + in, out := &in.MoniterMetricsAfterDuration, &out.MoniterMetricsAfterDuration + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Variables != nil { + in, out := &in.Variables, &out.Variables + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pipeline. -func (in *Pipeline) DeepCopy() *Pipeline { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineInitParameters. +func (in *PipelineInitParameters) DeepCopy() *PipelineInitParameters { if in == nil { return nil } - out := new(Pipeline) + out := new(PipelineInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *Pipeline) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PipelineList) DeepCopyInto(out *PipelineList) { *out = *in @@ -15798,6 +20962,7 @@ func (in *PipelineSpec) DeepCopyInto(out *PipelineSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PipelineSpec. @@ -15827,6 +20992,36 @@ func (in *PipelineStatus) DeepCopy() *PipelineStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProxyInitParameters) DeepCopyInto(out *ProxyInitParameters) { + *out = *in + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.SelfHostedIntegrationRuntimeName != nil { + in, out := &in.SelfHostedIntegrationRuntimeName, &out.SelfHostedIntegrationRuntimeName + *out = new(string) + **out = **in + } + if in.StagingStorageLinkedServiceName != nil { + in, out := &in.StagingStorageLinkedServiceName, &out.StagingStorageLinkedServiceName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyInitParameters. +func (in *ProxyInitParameters) DeepCopy() *ProxyInitParameters { + if in == nil { + return nil + } + out := new(ProxyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProxyObservation) DeepCopyInto(out *ProxyObservation) { *out = *in @@ -15887,6 +21082,26 @@ func (in *ProxyParameters) DeepCopy() *ProxyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RbacAuthorizationInitParameters) DeepCopyInto(out *RbacAuthorizationInitParameters) { + *out = *in + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RbacAuthorizationInitParameters. +func (in *RbacAuthorizationInitParameters) DeepCopy() *RbacAuthorizationInitParameters { + if in == nil { + return nil + } + out := new(RbacAuthorizationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RbacAuthorizationObservation) DeepCopyInto(out *RbacAuthorizationObservation) { *out = *in @@ -15927,6 +21142,41 @@ func (in *RbacAuthorizationParameters) DeepCopy() *RbacAuthorizationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RejectedLinkedServiceInitParameters) DeepCopyInto(out *RejectedLinkedServiceInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RejectedLinkedServiceInitParameters. +func (in *RejectedLinkedServiceInitParameters) DeepCopy() *RejectedLinkedServiceInitParameters { + if in == nil { + return nil + } + out := new(RejectedLinkedServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RejectedLinkedServiceObservation) DeepCopyInto(out *RejectedLinkedServiceObservation) { *out = *in @@ -15997,6 +21247,41 @@ func (in *RejectedLinkedServiceParameters) DeepCopy() *RejectedLinkedServicePara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SFTPServerLocationInitParameters) DeepCopyInto(out *SFTPServerLocationInitParameters) { + *out = *in + if in.DynamicFilenameEnabled != nil { + in, out := &in.DynamicFilenameEnabled, &out.DynamicFilenameEnabled + *out = new(bool) + **out = **in + } + if in.DynamicPathEnabled != nil { + in, out := &in.DynamicPathEnabled, &out.DynamicPathEnabled + *out = new(bool) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SFTPServerLocationInitParameters. +func (in *SFTPServerLocationInitParameters) DeepCopy() *SFTPServerLocationInitParameters { + if in == nil { + return nil + } + out := new(SFTPServerLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SFTPServerLocationObservation) DeepCopyInto(out *SFTPServerLocationObservation) { *out = *in @@ -16067,6 +21352,72 @@ func (in *SFTPServerLocationParameters) DeepCopy() *SFTPServerLocationParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScheduleInitParameters) DeepCopyInto(out *ScheduleInitParameters) { + *out = *in + if in.DaysOfMonth != nil { + in, out := &in.DaysOfMonth, &out.DaysOfMonth + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.DaysOfWeek != nil { + in, out := &in.DaysOfWeek, &out.DaysOfWeek + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Hours != nil { + in, out := &in.Hours, &out.Hours + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Minutes != nil { + in, out := &in.Minutes, &out.Minutes + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Monthly != nil { + in, out := &in.Monthly, &out.Monthly + *out = make([]MonthlyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleInitParameters. +func (in *ScheduleInitParameters) DeepCopy() *ScheduleInitParameters { + if in == nil { + return nil + } + out := new(ScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScheduleObservation) DeepCopyInto(out *ScheduleObservation) { *out = *in @@ -16199,6 +21550,36 @@ func (in *ScheduleParameters) DeepCopy() *ScheduleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SchemaColumnInitParameters) DeepCopyInto(out *SchemaColumnInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchemaColumnInitParameters. +func (in *SchemaColumnInitParameters) DeepCopy() *SchemaColumnInitParameters { + if in == nil { + return nil + } + out := new(SchemaColumnInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SchemaColumnObservation) DeepCopyInto(out *SchemaColumnObservation) { *out = *in @@ -16249,12 +21630,47 @@ func (in *SchemaColumnParameters) DeepCopyInto(out *SchemaColumnParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchemaColumnParameters. -func (in *SchemaColumnParameters) DeepCopy() *SchemaColumnParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchemaColumnParameters. +func (in *SchemaColumnParameters) DeepCopy() *SchemaColumnParameters { + if in == nil { + return nil + } + out := new(SchemaColumnParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SchemaLinkedServiceInitParameters) DeepCopyInto(out *SchemaLinkedServiceInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SchemaLinkedServiceInitParameters. +func (in *SchemaLinkedServiceInitParameters) DeepCopy() *SchemaLinkedServiceInitParameters { if in == nil { return nil } - out := new(SchemaColumnParameters) + out := new(SchemaLinkedServiceInitParameters) in.DeepCopyInto(out) return out } @@ -16329,6 +21745,26 @@ func (in *SchemaLinkedServiceParameters) DeepCopy() *SchemaLinkedServiceParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicePrincipalLinkedKeyVaultKeyInitParameters) DeepCopyInto(out *ServicePrincipalLinkedKeyVaultKeyInitParameters) { + *out = *in + if in.SecretName != nil { + in, out := &in.SecretName, &out.SecretName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePrincipalLinkedKeyVaultKeyInitParameters. +func (in *ServicePrincipalLinkedKeyVaultKeyInitParameters) DeepCopy() *ServicePrincipalLinkedKeyVaultKeyInitParameters { + if in == nil { + return nil + } + out := new(ServicePrincipalLinkedKeyVaultKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServicePrincipalLinkedKeyVaultKeyObservation) DeepCopyInto(out *ServicePrincipalLinkedKeyVaultKeyObservation) { *out = *in @@ -16389,6 +21825,101 @@ func (in *ServicePrincipalLinkedKeyVaultKeyParameters) DeepCopy() *ServicePrinci return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SinkInitParameters) DeepCopyInto(out *SinkInitParameters) { + *out = *in + if in.DataSet != nil { + in, out := &in.DataSet, &out.DataSet + *out = make([]DataSetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Flowlet != nil { + in, out := &in.Flowlet, &out.Flowlet + *out = make([]FlowletInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LinkedService != nil { + in, out := &in.LinkedService, &out.LinkedService + *out = make([]SinkLinkedServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RejectedLinkedService != nil { + in, out := &in.RejectedLinkedService, &out.RejectedLinkedService + *out = make([]RejectedLinkedServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SchemaLinkedService != nil { + in, out := &in.SchemaLinkedService, &out.SchemaLinkedService + *out = make([]SchemaLinkedServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SinkInitParameters. +func (in *SinkInitParameters) DeepCopy() *SinkInitParameters { + if in == nil { + return nil + } + out := new(SinkInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SinkLinkedServiceInitParameters) DeepCopyInto(out *SinkLinkedServiceInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SinkLinkedServiceInitParameters. +func (in *SinkLinkedServiceInitParameters) DeepCopy() *SinkLinkedServiceInitParameters { + if in == nil { + return nil + } + out := new(SinkLinkedServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SinkLinkedServiceObservation) DeepCopyInto(out *SinkLinkedServiceObservation) { *out = *in @@ -16579,6 +22110,36 @@ func (in *SinkParameters) DeepCopy() *SinkParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceDataSetInitParameters) DeepCopyInto(out *SourceDataSetInitParameters) { + *out = *in + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceDataSetInitParameters. +func (in *SourceDataSetInitParameters) DeepCopy() *SourceDataSetInitParameters { + if in == nil { + return nil + } + out := new(SourceDataSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SourceDataSetObservation) DeepCopyInto(out *SourceDataSetObservation) { *out = *in @@ -16659,6 +22220,46 @@ func (in *SourceDataSetParameters) DeepCopy() *SourceDataSetParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceFlowletInitParameters) DeepCopyInto(out *SourceFlowletInitParameters) { + *out = *in + if in.DataSetParameters != nil { + in, out := &in.DataSetParameters, &out.DataSetParameters + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceFlowletInitParameters. +func (in *SourceFlowletInitParameters) DeepCopy() *SourceFlowletInitParameters { + if in == nil { + return nil + } + out := new(SourceFlowletInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SourceFlowletObservation) DeepCopyInto(out *SourceFlowletObservation) { *out = *in @@ -16672,41 +22273,136 @@ func (in *SourceFlowletObservation) DeepCopyInto(out *SourceFlowletObservation) *out = new(string) **out = **in } - if in.Parameters != nil { - in, out := &in.Parameters, &out.Parameters - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceFlowletObservation. +func (in *SourceFlowletObservation) DeepCopy() *SourceFlowletObservation { + if in == nil { + return nil + } + out := new(SourceFlowletObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceFlowletParameters) DeepCopyInto(out *SourceFlowletParameters) { + *out = *in + if in.DataSetParameters != nil { + in, out := &in.DataSetParameters, &out.DataSetParameters + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceFlowletParameters. +func (in *SourceFlowletParameters) DeepCopy() *SourceFlowletParameters { + if in == nil { + return nil + } + out := new(SourceFlowletParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceInitParameters) DeepCopyInto(out *SourceInitParameters) { + *out = *in + if in.DataSet != nil { + in, out := &in.DataSet, &out.DataSet + *out = make([]SourceDataSetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Flowlet != nil { + in, out := &in.Flowlet, &out.Flowlet + *out = make([]SourceFlowletInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LinkedService != nil { + in, out := &in.LinkedService, &out.LinkedService + *out = make([]SourceLinkedServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RejectedLinkedService != nil { + in, out := &in.RejectedLinkedService, &out.RejectedLinkedService + *out = make([]SourceRejectedLinkedServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SchemaLinkedService != nil { + in, out := &in.SchemaLinkedService, &out.SchemaLinkedService + *out = make([]SourceSchemaLinkedServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceFlowletObservation. -func (in *SourceFlowletObservation) DeepCopy() *SourceFlowletObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceInitParameters. +func (in *SourceInitParameters) DeepCopy() *SourceInitParameters { if in == nil { return nil } - out := new(SourceFlowletObservation) + out := new(SourceInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SourceFlowletParameters) DeepCopyInto(out *SourceFlowletParameters) { +func (in *SourceLinkedServiceInitParameters) DeepCopyInto(out *SourceLinkedServiceInitParameters) { *out = *in - if in.DataSetParameters != nil { - in, out := &in.DataSetParameters, &out.DataSetParameters - *out = new(string) - **out = **in - } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -16729,12 +22425,12 @@ func (in *SourceFlowletParameters) DeepCopyInto(out *SourceFlowletParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceFlowletParameters. -func (in *SourceFlowletParameters) DeepCopy() *SourceFlowletParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceLinkedServiceInitParameters. +func (in *SourceLinkedServiceInitParameters) DeepCopy() *SourceLinkedServiceInitParameters { if in == nil { return nil } - out := new(SourceFlowletParameters) + out := new(SourceLinkedServiceInitParameters) in.DeepCopyInto(out) return out } @@ -16929,6 +22625,41 @@ func (in *SourceParameters) DeepCopy() *SourceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceRejectedLinkedServiceInitParameters) DeepCopyInto(out *SourceRejectedLinkedServiceInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceRejectedLinkedServiceInitParameters. +func (in *SourceRejectedLinkedServiceInitParameters) DeepCopy() *SourceRejectedLinkedServiceInitParameters { + if in == nil { + return nil + } + out := new(SourceRejectedLinkedServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SourceRejectedLinkedServiceObservation) DeepCopyInto(out *SourceRejectedLinkedServiceObservation) { *out = *in @@ -16999,6 +22730,41 @@ func (in *SourceRejectedLinkedServiceParameters) DeepCopy() *SourceRejectedLinke return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceSchemaLinkedServiceInitParameters) DeepCopyInto(out *SourceSchemaLinkedServiceInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceSchemaLinkedServiceInitParameters. +func (in *SourceSchemaLinkedServiceInitParameters) DeepCopy() *SourceSchemaLinkedServiceInitParameters { + if in == nil { + return nil + } + out := new(SourceSchemaLinkedServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SourceSchemaLinkedServiceObservation) DeepCopyInto(out *SourceSchemaLinkedServiceObservation) { *out = *in @@ -17069,6 +22835,41 @@ func (in *SourceSchemaLinkedServiceParameters) DeepCopy() *SourceSchemaLinkedSer return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TransformationDataSetInitParameters) DeepCopyInto(out *TransformationDataSetInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformationDataSetInitParameters. +func (in *TransformationDataSetInitParameters) DeepCopy() *TransformationDataSetInitParameters { + if in == nil { + return nil + } + out := new(TransformationDataSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TransformationDataSetObservation) DeepCopyInto(out *TransformationDataSetObservation) { *out = *in @@ -17139,6 +22940,46 @@ func (in *TransformationDataSetParameters) DeepCopy() *TransformationDataSetPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TransformationFlowletInitParameters) DeepCopyInto(out *TransformationFlowletInitParameters) { + *out = *in + if in.DataSetParameters != nil { + in, out := &in.DataSetParameters, &out.DataSetParameters + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformationFlowletInitParameters. +func (in *TransformationFlowletInitParameters) DeepCopy() *TransformationFlowletInitParameters { + if in == nil { + return nil + } + out := new(TransformationFlowletInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TransformationFlowletObservation) DeepCopyInto(out *TransformationFlowletObservation) { *out = *in @@ -17152,41 +22993,122 @@ func (in *TransformationFlowletObservation) DeepCopyInto(out *TransformationFlow *out = new(string) **out = **in } - if in.Parameters != nil { - in, out := &in.Parameters, &out.Parameters - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformationFlowletObservation. +func (in *TransformationFlowletObservation) DeepCopy() *TransformationFlowletObservation { + if in == nil { + return nil + } + out := new(TransformationFlowletObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TransformationFlowletParameters) DeepCopyInto(out *TransformationFlowletParameters) { + *out = *in + if in.DataSetParameters != nil { + in, out := &in.DataSetParameters, &out.DataSetParameters + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformationFlowletParameters. +func (in *TransformationFlowletParameters) DeepCopy() *TransformationFlowletParameters { + if in == nil { + return nil + } + out := new(TransformationFlowletParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TransformationInitParameters) DeepCopyInto(out *TransformationInitParameters) { + *out = *in + if in.DataSet != nil { + in, out := &in.DataSet, &out.DataSet + *out = make([]TransformationDataSetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Flowlet != nil { + in, out := &in.Flowlet, &out.Flowlet + *out = make([]TransformationFlowletInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LinkedService != nil { + in, out := &in.LinkedService, &out.LinkedService + *out = make([]TransformationLinkedServiceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformationFlowletObservation. -func (in *TransformationFlowletObservation) DeepCopy() *TransformationFlowletObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformationInitParameters. +func (in *TransformationInitParameters) DeepCopy() *TransformationInitParameters { if in == nil { return nil } - out := new(TransformationFlowletObservation) + out := new(TransformationInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TransformationFlowletParameters) DeepCopyInto(out *TransformationFlowletParameters) { +func (in *TransformationLinkedServiceInitParameters) DeepCopyInto(out *TransformationLinkedServiceInitParameters) { *out = *in - if in.DataSetParameters != nil { - in, out := &in.DataSetParameters, &out.DataSetParameters - *out = new(string) - **out = **in - } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) @@ -17209,12 +23131,12 @@ func (in *TransformationFlowletParameters) DeepCopyInto(out *TransformationFlowl } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformationFlowletParameters. -func (in *TransformationFlowletParameters) DeepCopy() *TransformationFlowletParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformationLinkedServiceInitParameters. +func (in *TransformationLinkedServiceInitParameters) DeepCopy() *TransformationLinkedServiceInitParameters { if in == nil { return nil } - out := new(TransformationFlowletParameters) + out := new(TransformationLinkedServiceInitParameters) in.DeepCopyInto(out) return out } @@ -17408,6 +23330,90 @@ func (in *TriggerBlobEvent) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerBlobEventInitParameters) DeepCopyInto(out *TriggerBlobEventInitParameters) { + *out = *in + if in.Activated != nil { + in, out := &in.Activated, &out.Activated + *out = new(bool) + **out = **in + } + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.BlobPathBeginsWith != nil { + in, out := &in.BlobPathBeginsWith, &out.BlobPathBeginsWith + *out = new(string) + **out = **in + } + if in.BlobPathEndsWith != nil { + in, out := &in.BlobPathEndsWith, &out.BlobPathEndsWith + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Events != nil { + in, out := &in.Events, &out.Events + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IgnoreEmptyBlobs != nil { + in, out := &in.IgnoreEmptyBlobs, &out.IgnoreEmptyBlobs + *out = new(bool) + **out = **in + } + if in.Pipeline != nil { + in, out := &in.Pipeline, &out.Pipeline + *out = make([]TriggerBlobEventPipelineInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerBlobEventInitParameters. +func (in *TriggerBlobEventInitParameters) DeepCopy() *TriggerBlobEventInitParameters { + if in == nil { + return nil + } + out := new(TriggerBlobEventInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerBlobEventList) DeepCopyInto(out *TriggerBlobEventList) { *out = *in @@ -17653,6 +23659,36 @@ func (in *TriggerBlobEventParameters) DeepCopy() *TriggerBlobEventParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerBlobEventPipelineInitParameters) DeepCopyInto(out *TriggerBlobEventPipelineInitParameters) { + *out = *in + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerBlobEventPipelineInitParameters. +func (in *TriggerBlobEventPipelineInitParameters) DeepCopy() *TriggerBlobEventPipelineInitParameters { + if in == nil { + return nil + } + out := new(TriggerBlobEventPipelineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerBlobEventPipelineObservation) DeepCopyInto(out *TriggerBlobEventPipelineObservation) { *out = *in @@ -17738,6 +23774,7 @@ func (in *TriggerBlobEventSpec) DeepCopyInto(out *TriggerBlobEventSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerBlobEventSpec. @@ -17745,55 +23782,134 @@ func (in *TriggerBlobEventSpec) DeepCopy() *TriggerBlobEventSpec { if in == nil { return nil } - out := new(TriggerBlobEventSpec) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TriggerBlobEventStatus) DeepCopyInto(out *TriggerBlobEventStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerBlobEventStatus. -func (in *TriggerBlobEventStatus) DeepCopy() *TriggerBlobEventStatus { - if in == nil { - return nil + out := new(TriggerBlobEventSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerBlobEventStatus) DeepCopyInto(out *TriggerBlobEventStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerBlobEventStatus. +func (in *TriggerBlobEventStatus) DeepCopy() *TriggerBlobEventStatus { + if in == nil { + return nil + } + out := new(TriggerBlobEventStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerCustomEvent) DeepCopyInto(out *TriggerCustomEvent) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerCustomEvent. +func (in *TriggerCustomEvent) DeepCopy() *TriggerCustomEvent { + if in == nil { + return nil + } + out := new(TriggerCustomEvent) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *TriggerCustomEvent) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerCustomEventInitParameters) DeepCopyInto(out *TriggerCustomEventInitParameters) { + *out = *in + if in.Activated != nil { + in, out := &in.Activated, &out.Activated + *out = new(bool) + **out = **in + } + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Events != nil { + in, out := &in.Events, &out.Events + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Pipeline != nil { + in, out := &in.Pipeline, &out.Pipeline + *out = make([]TriggerCustomEventPipelineInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubjectBeginsWith != nil { + in, out := &in.SubjectBeginsWith, &out.SubjectBeginsWith + *out = new(string) + **out = **in + } + if in.SubjectEndsWith != nil { + in, out := &in.SubjectEndsWith, &out.SubjectEndsWith + *out = new(string) + **out = **in } - out := new(TriggerBlobEventStatus) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *TriggerCustomEvent) DeepCopyInto(out *TriggerCustomEvent) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerCustomEvent. -func (in *TriggerCustomEvent) DeepCopy() *TriggerCustomEvent { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerCustomEventInitParameters. +func (in *TriggerCustomEventInitParameters) DeepCopy() *TriggerCustomEventInitParameters { if in == nil { return nil } - out := new(TriggerCustomEvent) + out := new(TriggerCustomEventInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *TriggerCustomEvent) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerCustomEventList) DeepCopyInto(out *TriggerCustomEventList) { *out = *in @@ -18029,6 +24145,36 @@ func (in *TriggerCustomEventParameters) DeepCopy() *TriggerCustomEventParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerCustomEventPipelineInitParameters) DeepCopyInto(out *TriggerCustomEventPipelineInitParameters) { + *out = *in + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerCustomEventPipelineInitParameters. +func (in *TriggerCustomEventPipelineInitParameters) DeepCopy() *TriggerCustomEventPipelineInitParameters { + if in == nil { + return nil + } + out := new(TriggerCustomEventPipelineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerCustomEventPipelineObservation) DeepCopyInto(out *TriggerCustomEventPipelineObservation) { *out = *in @@ -18114,6 +24260,7 @@ func (in *TriggerCustomEventSpec) DeepCopyInto(out *TriggerCustomEventSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerCustomEventSpec. @@ -18170,6 +24317,96 @@ func (in *TriggerSchedule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerScheduleInitParameters) DeepCopyInto(out *TriggerScheduleInitParameters) { + *out = *in + if in.Activated != nil { + in, out := &in.Activated, &out.Activated + *out = new(bool) + **out = **in + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.EndTime != nil { + in, out := &in.EndTime, &out.EndTime + *out = new(string) + **out = **in + } + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(string) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(float64) + **out = **in + } + if in.Pipeline != nil { + in, out := &in.Pipeline, &out.Pipeline + *out = make([]TriggerSchedulePipelineInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PipelineParameters != nil { + in, out := &in.PipelineParameters, &out.PipelineParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]ScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } + if in.TimeZone != nil { + in, out := &in.TimeZone, &out.TimeZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerScheduleInitParameters. +func (in *TriggerScheduleInitParameters) DeepCopy() *TriggerScheduleInitParameters { + if in == nil { + return nil + } + out := new(TriggerScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerScheduleList) DeepCopyInto(out *TriggerScheduleList) { *out = *in @@ -18427,6 +24664,41 @@ func (in *TriggerScheduleParameters) DeepCopy() *TriggerScheduleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerSchedulePipelineInitParameters) DeepCopyInto(out *TriggerSchedulePipelineInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerSchedulePipelineInitParameters. +func (in *TriggerSchedulePipelineInitParameters) DeepCopy() *TriggerSchedulePipelineInitParameters { + if in == nil { + return nil + } + out := new(TriggerSchedulePipelineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerSchedulePipelineObservation) DeepCopyInto(out *TriggerSchedulePipelineObservation) { *out = *in @@ -18502,6 +24774,7 @@ func (in *TriggerScheduleSpec) DeepCopyInto(out *TriggerScheduleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerScheduleSpec. @@ -18531,6 +24804,37 @@ func (in *TriggerScheduleStatus) DeepCopy() *TriggerScheduleStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VnetIntegrationInitParameters) DeepCopyInto(out *VnetIntegrationInitParameters) { + *out = *in + if in.PublicIps != nil { + in, out := &in.PublicIps, &out.PublicIps + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.VnetID != nil { + in, out := &in.VnetID, &out.VnetID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetIntegrationInitParameters. +func (in *VnetIntegrationInitParameters) DeepCopy() *VnetIntegrationInitParameters { + if in == nil { + return nil + } + out := new(VnetIntegrationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VnetIntegrationObservation) DeepCopyInto(out *VnetIntegrationObservation) { *out = *in @@ -18633,6 +24937,51 @@ func (in *VnetIntegrationParameters) DeepCopy() *VnetIntegrationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VstsConfigurationInitParameters) DeepCopyInto(out *VstsConfigurationInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.BranchName != nil { + in, out := &in.BranchName, &out.BranchName + *out = new(string) + **out = **in + } + if in.ProjectName != nil { + in, out := &in.ProjectName, &out.ProjectName + *out = new(string) + **out = **in + } + if in.RepositoryName != nil { + in, out := &in.RepositoryName, &out.RepositoryName + *out = new(string) + **out = **in + } + if in.RootFolder != nil { + in, out := &in.RootFolder, &out.RootFolder + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VstsConfigurationInitParameters. +func (in *VstsConfigurationInitParameters) DeepCopy() *VstsConfigurationInitParameters { + if in == nil { + return nil + } + out := new(VstsConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VstsConfigurationObservation) DeepCopyInto(out *VstsConfigurationObservation) { *out = *in diff --git a/apis/datafactory/v1beta1/zz_generated.managed.go b/apis/datafactory/v1beta1/zz_generated.managed.go index 382a23e2b..e99c6aa81 100644 --- a/apis/datafactory/v1beta1/zz_generated.managed.go +++ b/apis/datafactory/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *CustomDataSet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CustomDataSet. -func (mg *CustomDataSet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CustomDataSet. +func (mg *CustomDataSet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CustomDataSet. @@ -55,9 +55,9 @@ func (mg *CustomDataSet) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CustomDataSet. -func (mg *CustomDataSet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CustomDataSet. +func (mg *CustomDataSet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CustomDataSet. @@ -93,9 +93,9 @@ func (mg *DataFlow) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataFlow. -func (mg *DataFlow) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataFlow. +func (mg *DataFlow) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataFlow. @@ -131,9 +131,9 @@ func (mg *DataFlow) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataFlow. -func (mg *DataFlow) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataFlow. +func (mg *DataFlow) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataFlow. @@ -169,9 +169,9 @@ func (mg *DataSetAzureBlob) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetAzureBlob. -func (mg *DataSetAzureBlob) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetAzureBlob. +func (mg *DataSetAzureBlob) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetAzureBlob. @@ -207,9 +207,9 @@ func (mg *DataSetAzureBlob) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetAzureBlob. -func (mg *DataSetAzureBlob) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetAzureBlob. +func (mg *DataSetAzureBlob) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetAzureBlob. @@ -245,9 +245,9 @@ func (mg *DataSetBinary) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetBinary. -func (mg *DataSetBinary) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetBinary. +func (mg *DataSetBinary) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetBinary. @@ -283,9 +283,9 @@ func (mg *DataSetBinary) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetBinary. -func (mg *DataSetBinary) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetBinary. +func (mg *DataSetBinary) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetBinary. @@ -321,9 +321,9 @@ func (mg *DataSetCosmosDBSQLAPI) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetCosmosDBSQLAPI. -func (mg *DataSetCosmosDBSQLAPI) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetCosmosDBSQLAPI. +func (mg *DataSetCosmosDBSQLAPI) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetCosmosDBSQLAPI. @@ -359,9 +359,9 @@ func (mg *DataSetCosmosDBSQLAPI) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetCosmosDBSQLAPI. -func (mg *DataSetCosmosDBSQLAPI) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetCosmosDBSQLAPI. +func (mg *DataSetCosmosDBSQLAPI) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetCosmosDBSQLAPI. @@ -397,9 +397,9 @@ func (mg *DataSetDelimitedText) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetDelimitedText. -func (mg *DataSetDelimitedText) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetDelimitedText. +func (mg *DataSetDelimitedText) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetDelimitedText. @@ -435,9 +435,9 @@ func (mg *DataSetDelimitedText) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetDelimitedText. -func (mg *DataSetDelimitedText) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetDelimitedText. +func (mg *DataSetDelimitedText) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetDelimitedText. @@ -473,9 +473,9 @@ func (mg *DataSetHTTP) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetHTTP. -func (mg *DataSetHTTP) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetHTTP. +func (mg *DataSetHTTP) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetHTTP. @@ -511,9 +511,9 @@ func (mg *DataSetHTTP) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetHTTP. -func (mg *DataSetHTTP) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetHTTP. +func (mg *DataSetHTTP) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetHTTP. @@ -549,9 +549,9 @@ func (mg *DataSetJSON) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetJSON. -func (mg *DataSetJSON) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetJSON. +func (mg *DataSetJSON) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetJSON. @@ -587,9 +587,9 @@ func (mg *DataSetJSON) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetJSON. -func (mg *DataSetJSON) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetJSON. +func (mg *DataSetJSON) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetJSON. @@ -625,9 +625,9 @@ func (mg *DataSetMySQL) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetMySQL. -func (mg *DataSetMySQL) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetMySQL. +func (mg *DataSetMySQL) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetMySQL. @@ -663,9 +663,9 @@ func (mg *DataSetMySQL) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetMySQL. -func (mg *DataSetMySQL) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetMySQL. +func (mg *DataSetMySQL) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetMySQL. @@ -701,9 +701,9 @@ func (mg *DataSetParquet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetParquet. -func (mg *DataSetParquet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetParquet. +func (mg *DataSetParquet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetParquet. @@ -739,9 +739,9 @@ func (mg *DataSetParquet) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetParquet. -func (mg *DataSetParquet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetParquet. +func (mg *DataSetParquet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetParquet. @@ -777,9 +777,9 @@ func (mg *DataSetPostgreSQL) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetPostgreSQL. -func (mg *DataSetPostgreSQL) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetPostgreSQL. +func (mg *DataSetPostgreSQL) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetPostgreSQL. @@ -815,9 +815,9 @@ func (mg *DataSetPostgreSQL) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetPostgreSQL. -func (mg *DataSetPostgreSQL) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetPostgreSQL. +func (mg *DataSetPostgreSQL) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetPostgreSQL. @@ -853,9 +853,9 @@ func (mg *DataSetSQLServerTable) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetSQLServerTable. -func (mg *DataSetSQLServerTable) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetSQLServerTable. +func (mg *DataSetSQLServerTable) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetSQLServerTable. @@ -891,9 +891,9 @@ func (mg *DataSetSQLServerTable) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetSQLServerTable. -func (mg *DataSetSQLServerTable) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetSQLServerTable. +func (mg *DataSetSQLServerTable) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetSQLServerTable. @@ -929,9 +929,9 @@ func (mg *DataSetSnowflake) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetSnowflake. -func (mg *DataSetSnowflake) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetSnowflake. +func (mg *DataSetSnowflake) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetSnowflake. @@ -967,9 +967,9 @@ func (mg *DataSetSnowflake) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetSnowflake. -func (mg *DataSetSnowflake) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetSnowflake. +func (mg *DataSetSnowflake) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetSnowflake. @@ -1005,9 +1005,9 @@ func (mg *Factory) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Factory. -func (mg *Factory) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Factory. +func (mg *Factory) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Factory. @@ -1043,9 +1043,9 @@ func (mg *Factory) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Factory. -func (mg *Factory) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Factory. +func (mg *Factory) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Factory. @@ -1081,9 +1081,9 @@ func (mg *IntegrationRuntimeAzure) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IntegrationRuntimeAzure. -func (mg *IntegrationRuntimeAzure) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IntegrationRuntimeAzure. +func (mg *IntegrationRuntimeAzure) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IntegrationRuntimeAzure. @@ -1119,9 +1119,9 @@ func (mg *IntegrationRuntimeAzure) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IntegrationRuntimeAzure. -func (mg *IntegrationRuntimeAzure) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IntegrationRuntimeAzure. +func (mg *IntegrationRuntimeAzure) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IntegrationRuntimeAzure. @@ -1157,9 +1157,9 @@ func (mg *IntegrationRuntimeAzureSSIS) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IntegrationRuntimeAzureSSIS. -func (mg *IntegrationRuntimeAzureSSIS) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IntegrationRuntimeAzureSSIS. +func (mg *IntegrationRuntimeAzureSSIS) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IntegrationRuntimeAzureSSIS. @@ -1195,9 +1195,9 @@ func (mg *IntegrationRuntimeAzureSSIS) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IntegrationRuntimeAzureSSIS. -func (mg *IntegrationRuntimeAzureSSIS) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IntegrationRuntimeAzureSSIS. +func (mg *IntegrationRuntimeAzureSSIS) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IntegrationRuntimeAzureSSIS. @@ -1233,9 +1233,9 @@ func (mg *IntegrationRuntimeManaged) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IntegrationRuntimeManaged. -func (mg *IntegrationRuntimeManaged) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IntegrationRuntimeManaged. +func (mg *IntegrationRuntimeManaged) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IntegrationRuntimeManaged. @@ -1271,9 +1271,9 @@ func (mg *IntegrationRuntimeManaged) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IntegrationRuntimeManaged. -func (mg *IntegrationRuntimeManaged) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IntegrationRuntimeManaged. +func (mg *IntegrationRuntimeManaged) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IntegrationRuntimeManaged. @@ -1309,9 +1309,9 @@ func (mg *IntegrationRuntimeSelfHosted) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IntegrationRuntimeSelfHosted. -func (mg *IntegrationRuntimeSelfHosted) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IntegrationRuntimeSelfHosted. +func (mg *IntegrationRuntimeSelfHosted) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IntegrationRuntimeSelfHosted. @@ -1347,9 +1347,9 @@ func (mg *IntegrationRuntimeSelfHosted) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IntegrationRuntimeSelfHosted. -func (mg *IntegrationRuntimeSelfHosted) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IntegrationRuntimeSelfHosted. +func (mg *IntegrationRuntimeSelfHosted) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IntegrationRuntimeSelfHosted. @@ -1385,9 +1385,9 @@ func (mg *LinkedCustomService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedCustomService. -func (mg *LinkedCustomService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedCustomService. +func (mg *LinkedCustomService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedCustomService. @@ -1423,9 +1423,9 @@ func (mg *LinkedCustomService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedCustomService. -func (mg *LinkedCustomService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedCustomService. +func (mg *LinkedCustomService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedCustomService. @@ -1461,9 +1461,9 @@ func (mg *LinkedServiceAzureBlobStorage) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceAzureBlobStorage. -func (mg *LinkedServiceAzureBlobStorage) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceAzureBlobStorage. +func (mg *LinkedServiceAzureBlobStorage) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceAzureBlobStorage. @@ -1499,9 +1499,9 @@ func (mg *LinkedServiceAzureBlobStorage) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceAzureBlobStorage. -func (mg *LinkedServiceAzureBlobStorage) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceAzureBlobStorage. +func (mg *LinkedServiceAzureBlobStorage) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceAzureBlobStorage. @@ -1537,9 +1537,9 @@ func (mg *LinkedServiceAzureDatabricks) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceAzureDatabricks. -func (mg *LinkedServiceAzureDatabricks) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceAzureDatabricks. +func (mg *LinkedServiceAzureDatabricks) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceAzureDatabricks. @@ -1575,9 +1575,9 @@ func (mg *LinkedServiceAzureDatabricks) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceAzureDatabricks. -func (mg *LinkedServiceAzureDatabricks) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceAzureDatabricks. +func (mg *LinkedServiceAzureDatabricks) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceAzureDatabricks. @@ -1613,9 +1613,9 @@ func (mg *LinkedServiceAzureFileStorage) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceAzureFileStorage. -func (mg *LinkedServiceAzureFileStorage) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceAzureFileStorage. +func (mg *LinkedServiceAzureFileStorage) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceAzureFileStorage. @@ -1651,9 +1651,9 @@ func (mg *LinkedServiceAzureFileStorage) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceAzureFileStorage. -func (mg *LinkedServiceAzureFileStorage) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceAzureFileStorage. +func (mg *LinkedServiceAzureFileStorage) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceAzureFileStorage. @@ -1689,9 +1689,9 @@ func (mg *LinkedServiceAzureFunction) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceAzureFunction. -func (mg *LinkedServiceAzureFunction) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceAzureFunction. +func (mg *LinkedServiceAzureFunction) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceAzureFunction. @@ -1727,9 +1727,9 @@ func (mg *LinkedServiceAzureFunction) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceAzureFunction. -func (mg *LinkedServiceAzureFunction) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceAzureFunction. +func (mg *LinkedServiceAzureFunction) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceAzureFunction. @@ -1765,9 +1765,9 @@ func (mg *LinkedServiceAzureSQLDatabase) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceAzureSQLDatabase. -func (mg *LinkedServiceAzureSQLDatabase) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceAzureSQLDatabase. +func (mg *LinkedServiceAzureSQLDatabase) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceAzureSQLDatabase. @@ -1803,9 +1803,9 @@ func (mg *LinkedServiceAzureSQLDatabase) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceAzureSQLDatabase. -func (mg *LinkedServiceAzureSQLDatabase) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceAzureSQLDatabase. +func (mg *LinkedServiceAzureSQLDatabase) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceAzureSQLDatabase. @@ -1841,9 +1841,9 @@ func (mg *LinkedServiceAzureSearch) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceAzureSearch. -func (mg *LinkedServiceAzureSearch) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceAzureSearch. +func (mg *LinkedServiceAzureSearch) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceAzureSearch. @@ -1879,9 +1879,9 @@ func (mg *LinkedServiceAzureSearch) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceAzureSearch. -func (mg *LinkedServiceAzureSearch) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceAzureSearch. +func (mg *LinkedServiceAzureSearch) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceAzureSearch. @@ -1917,9 +1917,9 @@ func (mg *LinkedServiceAzureTableStorage) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceAzureTableStorage. -func (mg *LinkedServiceAzureTableStorage) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceAzureTableStorage. +func (mg *LinkedServiceAzureTableStorage) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceAzureTableStorage. @@ -1955,9 +1955,9 @@ func (mg *LinkedServiceAzureTableStorage) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceAzureTableStorage. -func (mg *LinkedServiceAzureTableStorage) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceAzureTableStorage. +func (mg *LinkedServiceAzureTableStorage) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceAzureTableStorage. @@ -1993,9 +1993,9 @@ func (mg *LinkedServiceCosmosDB) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceCosmosDB. -func (mg *LinkedServiceCosmosDB) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceCosmosDB. +func (mg *LinkedServiceCosmosDB) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceCosmosDB. @@ -2031,9 +2031,9 @@ func (mg *LinkedServiceCosmosDB) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceCosmosDB. -func (mg *LinkedServiceCosmosDB) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceCosmosDB. +func (mg *LinkedServiceCosmosDB) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceCosmosDB. @@ -2069,9 +2069,9 @@ func (mg *LinkedServiceCosmosDBMongoapi) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceCosmosDBMongoapi. -func (mg *LinkedServiceCosmosDBMongoapi) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceCosmosDBMongoapi. +func (mg *LinkedServiceCosmosDBMongoapi) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceCosmosDBMongoapi. @@ -2107,9 +2107,9 @@ func (mg *LinkedServiceCosmosDBMongoapi) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceCosmosDBMongoapi. -func (mg *LinkedServiceCosmosDBMongoapi) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceCosmosDBMongoapi. +func (mg *LinkedServiceCosmosDBMongoapi) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceCosmosDBMongoapi. @@ -2145,9 +2145,9 @@ func (mg *LinkedServiceDataLakeStorageGen2) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceDataLakeStorageGen2. -func (mg *LinkedServiceDataLakeStorageGen2) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceDataLakeStorageGen2. +func (mg *LinkedServiceDataLakeStorageGen2) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceDataLakeStorageGen2. @@ -2183,9 +2183,9 @@ func (mg *LinkedServiceDataLakeStorageGen2) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceDataLakeStorageGen2. -func (mg *LinkedServiceDataLakeStorageGen2) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceDataLakeStorageGen2. +func (mg *LinkedServiceDataLakeStorageGen2) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceDataLakeStorageGen2. @@ -2221,9 +2221,9 @@ func (mg *LinkedServiceKeyVault) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceKeyVault. -func (mg *LinkedServiceKeyVault) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceKeyVault. +func (mg *LinkedServiceKeyVault) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceKeyVault. @@ -2259,9 +2259,9 @@ func (mg *LinkedServiceKeyVault) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceKeyVault. -func (mg *LinkedServiceKeyVault) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceKeyVault. +func (mg *LinkedServiceKeyVault) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceKeyVault. @@ -2297,9 +2297,9 @@ func (mg *LinkedServiceKusto) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceKusto. -func (mg *LinkedServiceKusto) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceKusto. +func (mg *LinkedServiceKusto) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceKusto. @@ -2335,9 +2335,9 @@ func (mg *LinkedServiceKusto) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceKusto. -func (mg *LinkedServiceKusto) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceKusto. +func (mg *LinkedServiceKusto) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceKusto. @@ -2373,9 +2373,9 @@ func (mg *LinkedServiceMySQL) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceMySQL. -func (mg *LinkedServiceMySQL) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceMySQL. +func (mg *LinkedServiceMySQL) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceMySQL. @@ -2411,9 +2411,9 @@ func (mg *LinkedServiceMySQL) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceMySQL. -func (mg *LinkedServiceMySQL) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceMySQL. +func (mg *LinkedServiceMySQL) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceMySQL. @@ -2449,9 +2449,9 @@ func (mg *LinkedServiceOData) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceOData. -func (mg *LinkedServiceOData) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceOData. +func (mg *LinkedServiceOData) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceOData. @@ -2487,9 +2487,9 @@ func (mg *LinkedServiceOData) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceOData. -func (mg *LinkedServiceOData) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceOData. +func (mg *LinkedServiceOData) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceOData. @@ -2525,9 +2525,9 @@ func (mg *LinkedServiceOdbc) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceOdbc. -func (mg *LinkedServiceOdbc) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceOdbc. +func (mg *LinkedServiceOdbc) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceOdbc. @@ -2563,9 +2563,9 @@ func (mg *LinkedServiceOdbc) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceOdbc. -func (mg *LinkedServiceOdbc) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceOdbc. +func (mg *LinkedServiceOdbc) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceOdbc. @@ -2601,9 +2601,9 @@ func (mg *LinkedServicePostgreSQL) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServicePostgreSQL. -func (mg *LinkedServicePostgreSQL) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServicePostgreSQL. +func (mg *LinkedServicePostgreSQL) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServicePostgreSQL. @@ -2639,9 +2639,9 @@ func (mg *LinkedServicePostgreSQL) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServicePostgreSQL. -func (mg *LinkedServicePostgreSQL) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServicePostgreSQL. +func (mg *LinkedServicePostgreSQL) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServicePostgreSQL. @@ -2677,9 +2677,9 @@ func (mg *LinkedServiceSFTP) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceSFTP. -func (mg *LinkedServiceSFTP) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceSFTP. +func (mg *LinkedServiceSFTP) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceSFTP. @@ -2715,9 +2715,9 @@ func (mg *LinkedServiceSFTP) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceSFTP. -func (mg *LinkedServiceSFTP) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceSFTP. +func (mg *LinkedServiceSFTP) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceSFTP. @@ -2753,9 +2753,9 @@ func (mg *LinkedServiceSQLServer) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceSQLServer. -func (mg *LinkedServiceSQLServer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceSQLServer. +func (mg *LinkedServiceSQLServer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceSQLServer. @@ -2791,9 +2791,9 @@ func (mg *LinkedServiceSQLServer) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceSQLServer. -func (mg *LinkedServiceSQLServer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceSQLServer. +func (mg *LinkedServiceSQLServer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceSQLServer. @@ -2829,9 +2829,9 @@ func (mg *LinkedServiceSnowflake) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceSnowflake. -func (mg *LinkedServiceSnowflake) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceSnowflake. +func (mg *LinkedServiceSnowflake) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceSnowflake. @@ -2867,9 +2867,9 @@ func (mg *LinkedServiceSnowflake) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceSnowflake. -func (mg *LinkedServiceSnowflake) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceSnowflake. +func (mg *LinkedServiceSnowflake) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceSnowflake. @@ -2905,9 +2905,9 @@ func (mg *LinkedServiceSynapse) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceSynapse. -func (mg *LinkedServiceSynapse) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceSynapse. +func (mg *LinkedServiceSynapse) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceSynapse. @@ -2943,9 +2943,9 @@ func (mg *LinkedServiceSynapse) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceSynapse. -func (mg *LinkedServiceSynapse) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceSynapse. +func (mg *LinkedServiceSynapse) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceSynapse. @@ -2981,9 +2981,9 @@ func (mg *LinkedServiceWeb) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedServiceWeb. -func (mg *LinkedServiceWeb) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedServiceWeb. +func (mg *LinkedServiceWeb) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedServiceWeb. @@ -3019,9 +3019,9 @@ func (mg *LinkedServiceWeb) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedServiceWeb. -func (mg *LinkedServiceWeb) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedServiceWeb. +func (mg *LinkedServiceWeb) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedServiceWeb. @@ -3057,9 +3057,9 @@ func (mg *ManagedPrivateEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagedPrivateEndpoint. -func (mg *ManagedPrivateEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagedPrivateEndpoint. +func (mg *ManagedPrivateEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagedPrivateEndpoint. @@ -3095,9 +3095,9 @@ func (mg *ManagedPrivateEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagedPrivateEndpoint. -func (mg *ManagedPrivateEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagedPrivateEndpoint. +func (mg *ManagedPrivateEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagedPrivateEndpoint. @@ -3133,9 +3133,9 @@ func (mg *Pipeline) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Pipeline. -func (mg *Pipeline) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Pipeline. +func (mg *Pipeline) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Pipeline. @@ -3171,9 +3171,9 @@ func (mg *Pipeline) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Pipeline. -func (mg *Pipeline) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Pipeline. +func (mg *Pipeline) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Pipeline. @@ -3209,9 +3209,9 @@ func (mg *TriggerBlobEvent) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TriggerBlobEvent. -func (mg *TriggerBlobEvent) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TriggerBlobEvent. +func (mg *TriggerBlobEvent) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TriggerBlobEvent. @@ -3247,9 +3247,9 @@ func (mg *TriggerBlobEvent) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TriggerBlobEvent. -func (mg *TriggerBlobEvent) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TriggerBlobEvent. +func (mg *TriggerBlobEvent) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TriggerBlobEvent. @@ -3285,9 +3285,9 @@ func (mg *TriggerCustomEvent) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TriggerCustomEvent. -func (mg *TriggerCustomEvent) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TriggerCustomEvent. +func (mg *TriggerCustomEvent) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TriggerCustomEvent. @@ -3323,9 +3323,9 @@ func (mg *TriggerCustomEvent) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TriggerCustomEvent. -func (mg *TriggerCustomEvent) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TriggerCustomEvent. +func (mg *TriggerCustomEvent) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TriggerCustomEvent. @@ -3361,9 +3361,9 @@ func (mg *TriggerSchedule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TriggerSchedule. -func (mg *TriggerSchedule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TriggerSchedule. +func (mg *TriggerSchedule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TriggerSchedule. @@ -3399,9 +3399,9 @@ func (mg *TriggerSchedule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TriggerSchedule. -func (mg *TriggerSchedule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TriggerSchedule. +func (mg *TriggerSchedule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TriggerSchedule. diff --git a/apis/datafactory/v1beta1/zz_generated_terraformed.go b/apis/datafactory/v1beta1/zz_generated_terraformed.go index 6f3c57139..84100c5f0 100755 --- a/apis/datafactory/v1beta1/zz_generated_terraformed.go +++ b/apis/datafactory/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Factory) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Factory +func (tr *Factory) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Factory using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Factory) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *CustomDataSet) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CustomDataSet +func (tr *CustomDataSet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CustomDataSet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CustomDataSet) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *DataFlow) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataFlow +func (tr *DataFlow) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataFlow using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataFlow) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *DataSetAzureBlob) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetAzureBlob +func (tr *DataSetAzureBlob) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetAzureBlob using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetAzureBlob) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *DataSetBinary) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetBinary +func (tr *DataSetBinary) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetBinary using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetBinary) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *DataSetCosmosDBSQLAPI) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetCosmosDBSQLAPI +func (tr *DataSetCosmosDBSQLAPI) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetCosmosDBSQLAPI using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetCosmosDBSQLAPI) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *DataSetDelimitedText) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetDelimitedText +func (tr *DataSetDelimitedText) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetDelimitedText using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetDelimitedText) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *DataSetHTTP) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetHTTP +func (tr *DataSetHTTP) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetHTTP using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetHTTP) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *DataSetJSON) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetJSON +func (tr *DataSetJSON) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetJSON using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetJSON) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *DataSetMySQL) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetMySQL +func (tr *DataSetMySQL) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetMySQL using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetMySQL) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *DataSetParquet) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetParquet +func (tr *DataSetParquet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetParquet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetParquet) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *DataSetPostgreSQL) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetPostgreSQL +func (tr *DataSetPostgreSQL) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetPostgreSQL using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetPostgreSQL) LateInitialize(attrs []byte) (bool, error) { @@ -957,6 +1077,16 @@ func (tr *DataSetSnowflake) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetSnowflake +func (tr *DataSetSnowflake) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetSnowflake using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetSnowflake) LateInitialize(attrs []byte) (bool, error) { @@ -1031,6 +1161,16 @@ func (tr *DataSetSQLServerTable) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetSQLServerTable +func (tr *DataSetSQLServerTable) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetSQLServerTable using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetSQLServerTable) LateInitialize(attrs []byte) (bool, error) { @@ -1105,6 +1245,16 @@ func (tr *IntegrationRuntimeAzure) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IntegrationRuntimeAzure +func (tr *IntegrationRuntimeAzure) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IntegrationRuntimeAzure using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IntegrationRuntimeAzure) LateInitialize(attrs []byte) (bool, error) { @@ -1179,6 +1329,16 @@ func (tr *IntegrationRuntimeAzureSSIS) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IntegrationRuntimeAzureSSIS +func (tr *IntegrationRuntimeAzureSSIS) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IntegrationRuntimeAzureSSIS using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IntegrationRuntimeAzureSSIS) LateInitialize(attrs []byte) (bool, error) { @@ -1253,6 +1413,16 @@ func (tr *IntegrationRuntimeManaged) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IntegrationRuntimeManaged +func (tr *IntegrationRuntimeManaged) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IntegrationRuntimeManaged using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IntegrationRuntimeManaged) LateInitialize(attrs []byte) (bool, error) { @@ -1327,6 +1497,16 @@ func (tr *IntegrationRuntimeSelfHosted) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IntegrationRuntimeSelfHosted +func (tr *IntegrationRuntimeSelfHosted) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IntegrationRuntimeSelfHosted using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IntegrationRuntimeSelfHosted) LateInitialize(attrs []byte) (bool, error) { @@ -1401,6 +1581,16 @@ func (tr *LinkedCustomService) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedCustomService +func (tr *LinkedCustomService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedCustomService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedCustomService) LateInitialize(attrs []byte) (bool, error) { @@ -1475,6 +1665,16 @@ func (tr *LinkedServiceAzureBlobStorage) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceAzureBlobStorage +func (tr *LinkedServiceAzureBlobStorage) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceAzureBlobStorage using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceAzureBlobStorage) LateInitialize(attrs []byte) (bool, error) { @@ -1549,6 +1749,16 @@ func (tr *LinkedServiceAzureDatabricks) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceAzureDatabricks +func (tr *LinkedServiceAzureDatabricks) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceAzureDatabricks using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceAzureDatabricks) LateInitialize(attrs []byte) (bool, error) { @@ -1623,6 +1833,16 @@ func (tr *LinkedServiceAzureFileStorage) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceAzureFileStorage +func (tr *LinkedServiceAzureFileStorage) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceAzureFileStorage using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceAzureFileStorage) LateInitialize(attrs []byte) (bool, error) { @@ -1697,6 +1917,16 @@ func (tr *LinkedServiceAzureFunction) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceAzureFunction +func (tr *LinkedServiceAzureFunction) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceAzureFunction using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceAzureFunction) LateInitialize(attrs []byte) (bool, error) { @@ -1771,6 +2001,16 @@ func (tr *LinkedServiceAzureSearch) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceAzureSearch +func (tr *LinkedServiceAzureSearch) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceAzureSearch using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceAzureSearch) LateInitialize(attrs []byte) (bool, error) { @@ -1845,6 +2085,16 @@ func (tr *LinkedServiceAzureSQLDatabase) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceAzureSQLDatabase +func (tr *LinkedServiceAzureSQLDatabase) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceAzureSQLDatabase using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceAzureSQLDatabase) LateInitialize(attrs []byte) (bool, error) { @@ -1919,6 +2169,16 @@ func (tr *LinkedServiceAzureTableStorage) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceAzureTableStorage +func (tr *LinkedServiceAzureTableStorage) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceAzureTableStorage using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceAzureTableStorage) LateInitialize(attrs []byte) (bool, error) { @@ -1993,6 +2253,16 @@ func (tr *LinkedServiceCosmosDB) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceCosmosDB +func (tr *LinkedServiceCosmosDB) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceCosmosDB using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceCosmosDB) LateInitialize(attrs []byte) (bool, error) { @@ -2067,6 +2337,16 @@ func (tr *LinkedServiceCosmosDBMongoapi) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceCosmosDBMongoapi +func (tr *LinkedServiceCosmosDBMongoapi) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceCosmosDBMongoapi using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceCosmosDBMongoapi) LateInitialize(attrs []byte) (bool, error) { @@ -2141,6 +2421,16 @@ func (tr *LinkedServiceDataLakeStorageGen2) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceDataLakeStorageGen2 +func (tr *LinkedServiceDataLakeStorageGen2) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceDataLakeStorageGen2 using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceDataLakeStorageGen2) LateInitialize(attrs []byte) (bool, error) { @@ -2215,6 +2505,16 @@ func (tr *LinkedServiceKeyVault) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceKeyVault +func (tr *LinkedServiceKeyVault) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceKeyVault using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceKeyVault) LateInitialize(attrs []byte) (bool, error) { @@ -2289,6 +2589,16 @@ func (tr *LinkedServiceKusto) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceKusto +func (tr *LinkedServiceKusto) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceKusto using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceKusto) LateInitialize(attrs []byte) (bool, error) { @@ -2363,6 +2673,16 @@ func (tr *LinkedServiceMySQL) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceMySQL +func (tr *LinkedServiceMySQL) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceMySQL using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceMySQL) LateInitialize(attrs []byte) (bool, error) { @@ -2437,6 +2757,16 @@ func (tr *LinkedServiceOData) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceOData +func (tr *LinkedServiceOData) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceOData using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceOData) LateInitialize(attrs []byte) (bool, error) { @@ -2511,6 +2841,16 @@ func (tr *LinkedServiceOdbc) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceOdbc +func (tr *LinkedServiceOdbc) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceOdbc using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceOdbc) LateInitialize(attrs []byte) (bool, error) { @@ -2585,6 +2925,16 @@ func (tr *LinkedServicePostgreSQL) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServicePostgreSQL +func (tr *LinkedServicePostgreSQL) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServicePostgreSQL using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServicePostgreSQL) LateInitialize(attrs []byte) (bool, error) { @@ -2659,6 +3009,16 @@ func (tr *LinkedServiceSFTP) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceSFTP +func (tr *LinkedServiceSFTP) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceSFTP using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceSFTP) LateInitialize(attrs []byte) (bool, error) { @@ -2733,6 +3093,16 @@ func (tr *LinkedServiceSnowflake) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceSnowflake +func (tr *LinkedServiceSnowflake) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceSnowflake using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceSnowflake) LateInitialize(attrs []byte) (bool, error) { @@ -2807,6 +3177,16 @@ func (tr *LinkedServiceSQLServer) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceSQLServer +func (tr *LinkedServiceSQLServer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceSQLServer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceSQLServer) LateInitialize(attrs []byte) (bool, error) { @@ -2881,6 +3261,16 @@ func (tr *LinkedServiceSynapse) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceSynapse +func (tr *LinkedServiceSynapse) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceSynapse using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceSynapse) LateInitialize(attrs []byte) (bool, error) { @@ -2955,6 +3345,16 @@ func (tr *LinkedServiceWeb) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedServiceWeb +func (tr *LinkedServiceWeb) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedServiceWeb using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedServiceWeb) LateInitialize(attrs []byte) (bool, error) { @@ -3029,6 +3429,16 @@ func (tr *ManagedPrivateEndpoint) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagedPrivateEndpoint +func (tr *ManagedPrivateEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagedPrivateEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagedPrivateEndpoint) LateInitialize(attrs []byte) (bool, error) { @@ -3103,6 +3513,16 @@ func (tr *Pipeline) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Pipeline +func (tr *Pipeline) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Pipeline using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Pipeline) LateInitialize(attrs []byte) (bool, error) { @@ -3177,6 +3597,16 @@ func (tr *TriggerBlobEvent) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TriggerBlobEvent +func (tr *TriggerBlobEvent) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TriggerBlobEvent using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TriggerBlobEvent) LateInitialize(attrs []byte) (bool, error) { @@ -3251,6 +3681,16 @@ func (tr *TriggerCustomEvent) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TriggerCustomEvent +func (tr *TriggerCustomEvent) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TriggerCustomEvent using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TriggerCustomEvent) LateInitialize(attrs []byte) (bool, error) { @@ -3325,6 +3765,16 @@ func (tr *TriggerSchedule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TriggerSchedule +func (tr *TriggerSchedule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TriggerSchedule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TriggerSchedule) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/datafactory/v1beta1/zz_integrationruntimeazure_types.go b/apis/datafactory/v1beta1/zz_integrationruntimeazure_types.go index 8fa9b29e0..cd4eff7b6 100755 --- a/apis/datafactory/v1beta1/zz_integrationruntimeazure_types.go +++ b/apis/datafactory/v1beta1/zz_integrationruntimeazure_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IntegrationRuntimeAzureInitParameters struct { + + // Cluster will not be recycled and it will be used in next data flow activity run until TTL (time to live) is reached if this is set as false. Default is true. + CleanupEnabled *bool `json:"cleanupEnabled,omitempty" tf:"cleanup_enabled,omitempty"` + + // Compute type of the cluster which will execute data flow job. Valid values are General, ComputeOptimized and MemoryOptimized. Defaults to General. + ComputeType *string `json:"computeType,omitempty" tf:"compute_type,omitempty"` + + // Core count of the cluster which will execute data flow job. Valid values are 8, 16, 32, 48, 80, 144 and 272. Defaults to 8. + CoreCount *float64 `json:"coreCount,omitempty" tf:"core_count,omitempty"` + + // Integration runtime description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies the supported Azure location where the resource exists. Use AutoResolve to create an auto-resolve integration runtime. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Time to live (in minutes) setting of the cluster which will execute data flow job. Defaults to 0. + TimeToLiveMin *float64 `json:"timeToLiveMin,omitempty" tf:"time_to_live_min,omitempty"` + + // Is Integration Runtime compute provisioned within Managed Virtual Network? Changing this forces a new resource to be created. + VirtualNetworkEnabled *bool `json:"virtualNetworkEnabled,omitempty" tf:"virtual_network_enabled,omitempty"` +} + type IntegrationRuntimeAzureObservation struct { // Cluster will not be recycled and it will be used in next data flow activity run until TTL (time to live) is reached if this is set as false. Default is true. @@ -91,6 +115,18 @@ type IntegrationRuntimeAzureParameters struct { type IntegrationRuntimeAzureSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IntegrationRuntimeAzureParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IntegrationRuntimeAzureInitParameters `json:"initProvider,omitempty"` } // IntegrationRuntimeAzureStatus defines the observed state of IntegrationRuntimeAzure. @@ -111,7 +147,7 @@ type IntegrationRuntimeAzureStatus struct { type IntegrationRuntimeAzure struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec IntegrationRuntimeAzureSpec `json:"spec"` Status IntegrationRuntimeAzureStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_integrationruntimeazuressis_types.go b/apis/datafactory/v1beta1/zz_integrationruntimeazuressis_types.go index f18e98052..65a27e218 100755 --- a/apis/datafactory/v1beta1/zz_integrationruntimeazuressis_types.go +++ b/apis/datafactory/v1beta1/zz_integrationruntimeazuressis_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CatalogInfoInitParameters struct { + + // Administrator login name for the SQL Server. + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` + + // The dual standby Azure-SSIS Integration Runtime pair with SSISDB failover. + DualStandbyPairName *string `json:"dualStandbyPairName,omitempty" tf:"dual_standby_pair_name,omitempty"` + + // The name of SQL elastic pool where the database will be created for the SSIS catalog. Mutually exclusive with pricing_tier. + ElasticPoolName *string `json:"elasticPoolName,omitempty" tf:"elastic_pool_name,omitempty"` + + // Pricing tier for the database that will be created for the SSIS catalog. Valid values are: Basic, S0, S1, S2, S3, S4, S6, S7, S9, S12, P1, P2, P4, P6, P11, P15, GP_S_Gen5_1, GP_S_Gen5_2, GP_S_Gen5_4, GP_S_Gen5_6, GP_S_Gen5_8, GP_S_Gen5_10, GP_S_Gen5_12, GP_S_Gen5_14, GP_S_Gen5_16, GP_S_Gen5_18, GP_S_Gen5_20, GP_S_Gen5_24, GP_S_Gen5_32, GP_S_Gen5_40, GP_Gen5_2, GP_Gen5_4, GP_Gen5_6, GP_Gen5_8, GP_Gen5_10, GP_Gen5_12, GP_Gen5_14, GP_Gen5_16, GP_Gen5_18, GP_Gen5_20, GP_Gen5_24, GP_Gen5_32, GP_Gen5_40, GP_Gen5_80, BC_Gen5_2, BC_Gen5_4, BC_Gen5_6, BC_Gen5_8, BC_Gen5_10, BC_Gen5_12, BC_Gen5_14, BC_Gen5_16, BC_Gen5_18, BC_Gen5_20, BC_Gen5_24, BC_Gen5_32, BC_Gen5_40, BC_Gen5_80, HS_Gen5_2, HS_Gen5_4, HS_Gen5_6, HS_Gen5_8, HS_Gen5_10, HS_Gen5_12, HS_Gen5_14, HS_Gen5_16, HS_Gen5_18, HS_Gen5_20, HS_Gen5_24, HS_Gen5_32, HS_Gen5_40 and HS_Gen5_80. Mutually exclusive with elastic_pool_name. + PricingTier *string `json:"pricingTier,omitempty" tf:"pricing_tier,omitempty"` + + // The endpoint of an Azure SQL Server that will be used to host the SSIS catalog. + ServerEndpoint *string `json:"serverEndpoint,omitempty" tf:"server_endpoint,omitempty"` +} + type CatalogInfoObservation struct { // Administrator login name for the SQL Server. @@ -54,8 +72,20 @@ type CatalogInfoParameters struct { PricingTier *string `json:"pricingTier,omitempty" tf:"pricing_tier,omitempty"` // The endpoint of an Azure SQL Server that will be used to host the SSIS catalog. - // +kubebuilder:validation:Required - ServerEndpoint *string `json:"serverEndpoint" tf:"server_endpoint,omitempty"` + // +kubebuilder:validation:Optional + ServerEndpoint *string `json:"serverEndpoint,omitempty" tf:"server_endpoint,omitempty"` +} + +type CommandKeyInitParameters struct { + + // A key_vault_secret_reference block as defined below. + KeyVaultPassword []KeyVaultPasswordInitParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` + + // The target computer or domain name. + TargetName *string `json:"targetName,omitempty" tf:"target_name,omitempty"` + + // The username for the target device. + UserName *string `json:"userName,omitempty" tf:"user_name,omitempty"` } type CommandKeyObservation struct { @@ -81,12 +111,21 @@ type CommandKeyParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // The target computer or domain name. - // +kubebuilder:validation:Required - TargetName *string `json:"targetName" tf:"target_name,omitempty"` + // +kubebuilder:validation:Optional + TargetName *string `json:"targetName,omitempty" tf:"target_name,omitempty"` // The username for the target device. - // +kubebuilder:validation:Required - UserName *string `json:"userName" tf:"user_name,omitempty"` + // +kubebuilder:validation:Optional + UserName *string `json:"userName,omitempty" tf:"user_name,omitempty"` +} + +type ComponentInitParameters struct { + + // A key_vault_secret_reference block as defined below. + KeyVaultLicense []KeyVaultLicenseInitParameters `json:"keyVaultLicense,omitempty" tf:"key_vault_license,omitempty"` + + // Name of the package store. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type ComponentObservation struct { @@ -109,8 +148,14 @@ type ComponentParameters struct { LicenseSecretRef *v1.SecretKeySelector `json:"licenseSecretRef,omitempty" tf:"-"` // Name of the package store. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type CustomSetupScriptInitParameters struct { + + // The blob endpoint for the container which contains a custom setup script that will be run on every node on startup. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup for more information. + BlobContainerURI *string `json:"blobContainerUri,omitempty" tf:"blob_container_uri,omitempty"` } type CustomSetupScriptObservation struct { @@ -122,14 +167,29 @@ type CustomSetupScriptObservation struct { type CustomSetupScriptParameters struct { // The blob endpoint for the container which contains a custom setup script that will be run on every node on startup. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup for more information. - // +kubebuilder:validation:Required - BlobContainerURI *string `json:"blobContainerUri" tf:"blob_container_uri,omitempty"` + // +kubebuilder:validation:Optional + BlobContainerURI *string `json:"blobContainerUri,omitempty" tf:"blob_container_uri,omitempty"` // A container SAS token that gives access to the files. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup for more information. // +kubebuilder:validation:Required SASTokenSecretRef v1.SecretKeySelector `json:"sasTokenSecretRef" tf:"-"` } +type ExpressCustomSetupInitParameters struct { + + // One or more command_key blocks as defined below. + CommandKey []CommandKeyInitParameters `json:"commandKey,omitempty" tf:"command_key,omitempty"` + + // One or more component blocks as defined below. + Component []ComponentInitParameters `json:"component,omitempty" tf:"component,omitempty"` + + // The Environment Variables for the Azure-SSIS Integration Runtime. + Environment map[string]*string `json:"environment,omitempty" tf:"environment,omitempty"` + + // The version of Azure Powershell installed for the Azure-SSIS Integration Runtime. + PowershellVersion *string `json:"powershellVersion,omitempty" tf:"powershell_version,omitempty"` +} + type ExpressCustomSetupObservation struct { // One or more command_key blocks as defined below. @@ -164,6 +224,9 @@ type ExpressCustomSetupParameters struct { PowershellVersion *string `json:"powershellVersion,omitempty" tf:"powershell_version,omitempty"` } +type ExpressVnetIntegrationInitParameters struct { +} + type ExpressVnetIntegrationObservation struct { // id of the subnet to which the nodes of the Azure-SSIS Integration Runtime will be added. @@ -187,6 +250,51 @@ type ExpressVnetIntegrationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type IntegrationRuntimeAzureSSISInitParameters struct { + + // A catalog_info block as defined below. + CatalogInfo []CatalogInfoInitParameters `json:"catalogInfo,omitempty" tf:"catalog_info,omitempty"` + + // A custom_setup_script block as defined below. + CustomSetupScript []CustomSetupScriptInitParameters `json:"customSetupScript,omitempty" tf:"custom_setup_script,omitempty"` + + // Integration runtime description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Azure-SSIS Integration Runtime edition. Valid values are Standard and Enterprise. Defaults to Standard. + Edition *string `json:"edition,omitempty" tf:"edition,omitempty"` + + // An express_custom_setup block as defined below. + ExpressCustomSetup []ExpressCustomSetupInitParameters `json:"expressCustomSetup,omitempty" tf:"express_custom_setup,omitempty"` + + // A express_vnet_integration block as defined below. + ExpressVnetIntegration []ExpressVnetIntegrationInitParameters `json:"expressVnetIntegration,omitempty" tf:"express_vnet_integration,omitempty"` + + // The type of the license that is used. Valid values are LicenseIncluded and BasePrice. Defaults to LicenseIncluded. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Defines the maximum parallel executions per node. Defaults to 1. Max is 16. + MaxParallelExecutionsPerNode *float64 `json:"maxParallelExecutionsPerNode,omitempty" tf:"max_parallel_executions_per_node,omitempty"` + + // The size of the nodes on which the Azure-SSIS Integration Runtime runs. Valid values are: Standard_D2_v3, Standard_D4_v3, Standard_D8_v3, Standard_D16_v3, Standard_D32_v3, Standard_D64_v3, Standard_E2_v3, Standard_E4_v3, Standard_E8_v3, Standard_E16_v3, Standard_E32_v3, Standard_E64_v3, Standard_D1_v2, Standard_D2_v2, Standard_D3_v2, Standard_D4_v2, Standard_A4_v2 and Standard_A8_v2 + NodeSize *string `json:"nodeSize,omitempty" tf:"node_size,omitempty"` + + // Number of nodes for the Azure-SSIS Integration Runtime. Max is 10. Defaults to 1. + NumberOfNodes *float64 `json:"numberOfNodes,omitempty" tf:"number_of_nodes,omitempty"` + + // One or more package_store block as defined below. + PackageStore []PackageStoreInitParameters `json:"packageStore,omitempty" tf:"package_store,omitempty"` + + // A proxy block as defined below. + Proxy []ProxyInitParameters `json:"proxy,omitempty" tf:"proxy,omitempty"` + + // A vnet_integration block as defined below. + VnetIntegration []VnetIntegrationInitParameters `json:"vnetIntegration,omitempty" tf:"vnet_integration,omitempty"` +} + type IntegrationRuntimeAzureSSISObservation struct { // A catalog_info block as defined below. @@ -311,6 +419,21 @@ type IntegrationRuntimeAzureSSISParameters struct { VnetIntegration []VnetIntegrationParameters `json:"vnetIntegration,omitempty" tf:"vnet_integration,omitempty"` } +type KeyVaultLicenseInitParameters struct { + + // Name of the Linked Service to associate with the packages. + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` + + // A map of parameters to associate with the Key Vault Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // Specifies the secret name in Azure Key Vault. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` + + // Specifies the secret version in Azure Key Vault. + SecretVersion *string `json:"secretVersion,omitempty" tf:"secret_version,omitempty"` +} + type KeyVaultLicenseObservation struct { // Name of the Linked Service to associate with the packages. @@ -329,22 +452,37 @@ type KeyVaultLicenseObservation struct { type KeyVaultLicenseParameters struct { // Name of the Linked Service to associate with the packages. - // +kubebuilder:validation:Required - LinkedServiceName *string `json:"linkedServiceName" tf:"linked_service_name,omitempty"` + // +kubebuilder:validation:Optional + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // A map of parameters to associate with the Key Vault Data Factory Linked Service. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // Specifies the secret name in Azure Key Vault. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` // Specifies the secret version in Azure Key Vault. // +kubebuilder:validation:Optional SecretVersion *string `json:"secretVersion,omitempty" tf:"secret_version,omitempty"` } +type KeyVaultPasswordInitParameters struct { + + // Name of the Linked Service to associate with the packages. + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` + + // A map of parameters to associate with the Key Vault Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // Specifies the secret name in Azure Key Vault. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` + + // Specifies the secret version in Azure Key Vault. + SecretVersion *string `json:"secretVersion,omitempty" tf:"secret_version,omitempty"` +} + type KeyVaultPasswordObservation struct { // Name of the Linked Service to associate with the packages. @@ -363,22 +501,31 @@ type KeyVaultPasswordObservation struct { type KeyVaultPasswordParameters struct { // Name of the Linked Service to associate with the packages. - // +kubebuilder:validation:Required - LinkedServiceName *string `json:"linkedServiceName" tf:"linked_service_name,omitempty"` + // +kubebuilder:validation:Optional + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // A map of parameters to associate with the Key Vault Data Factory Linked Service. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // Specifies the secret name in Azure Key Vault. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` // Specifies the secret version in Azure Key Vault. // +kubebuilder:validation:Optional SecretVersion *string `json:"secretVersion,omitempty" tf:"secret_version,omitempty"` } +type PackageStoreInitParameters struct { + + // Name of the Linked Service to associate with the packages. + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` + + // Name of the package store. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type PackageStoreObservation struct { // Name of the Linked Service to associate with the packages. @@ -391,12 +538,24 @@ type PackageStoreObservation struct { type PackageStoreParameters struct { // Name of the Linked Service to associate with the packages. - // +kubebuilder:validation:Required - LinkedServiceName *string `json:"linkedServiceName" tf:"linked_service_name,omitempty"` + // +kubebuilder:validation:Optional + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Name of the package store. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type ProxyInitParameters struct { + + // The path in the data store to be used when moving data between Self-Hosted and Azure-SSIS Integration Runtimes. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // Name of Self Hosted Integration Runtime as a proxy. + SelfHostedIntegrationRuntimeName *string `json:"selfHostedIntegrationRuntimeName,omitempty" tf:"self_hosted_integration_runtime_name,omitempty"` + + // Name of Azure Blob Storage linked service to reference the staging data store to be used when moving data between self-hosted and Azure-SSIS integration runtimes. + StagingStorageLinkedServiceName *string `json:"stagingStorageLinkedServiceName,omitempty" tf:"staging_storage_linked_service_name,omitempty"` } type ProxyObservation struct { @@ -418,12 +577,21 @@ type ProxyParameters struct { Path *string `json:"path,omitempty" tf:"path,omitempty"` // Name of Self Hosted Integration Runtime as a proxy. - // +kubebuilder:validation:Required - SelfHostedIntegrationRuntimeName *string `json:"selfHostedIntegrationRuntimeName" tf:"self_hosted_integration_runtime_name,omitempty"` + // +kubebuilder:validation:Optional + SelfHostedIntegrationRuntimeName *string `json:"selfHostedIntegrationRuntimeName,omitempty" tf:"self_hosted_integration_runtime_name,omitempty"` // Name of Azure Blob Storage linked service to reference the staging data store to be used when moving data between self-hosted and Azure-SSIS integration runtimes. - // +kubebuilder:validation:Required - StagingStorageLinkedServiceName *string `json:"stagingStorageLinkedServiceName" tf:"staging_storage_linked_service_name,omitempty"` + // +kubebuilder:validation:Optional + StagingStorageLinkedServiceName *string `json:"stagingStorageLinkedServiceName,omitempty" tf:"staging_storage_linked_service_name,omitempty"` +} + +type VnetIntegrationInitParameters struct { + + // Static public IP addresses for the Azure-SSIS Integration Runtime. The size must be 2. + PublicIps []*string `json:"publicIps,omitempty" tf:"public_ips,omitempty"` + + // ID of the virtual network to which the nodes of the Azure-SSIS Integration Runtime will be added. + VnetID *string `json:"vnetId,omitempty" tf:"vnet_id,omitempty"` } type VnetIntegrationObservation struct { @@ -483,6 +651,18 @@ type VnetIntegrationParameters struct { type IntegrationRuntimeAzureSSISSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IntegrationRuntimeAzureSSISParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IntegrationRuntimeAzureSSISInitParameters `json:"initProvider,omitempty"` } // IntegrationRuntimeAzureSSISStatus defines the observed state of IntegrationRuntimeAzureSSIS. @@ -503,8 +683,8 @@ type IntegrationRuntimeAzureSSISStatus struct { type IntegrationRuntimeAzureSSIS struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nodeSize)",message="nodeSize is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.nodeSize) || has(self.initProvider.nodeSize)",message="nodeSize is a required parameter" Spec IntegrationRuntimeAzureSSISSpec `json:"spec"` Status IntegrationRuntimeAzureSSISStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_integrationruntimemanaged_types.go b/apis/datafactory/v1beta1/zz_integrationruntimemanaged_types.go index 70f0cb3da..11ee35b80 100755 --- a/apis/datafactory/v1beta1/zz_integrationruntimemanaged_types.go +++ b/apis/datafactory/v1beta1/zz_integrationruntimemanaged_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IntegrationRuntimeManagedCatalogInfoInitParameters struct { + + // Administrator login name for the SQL Server. + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` + + // Pricing tier for the database that will be created for the SSIS catalog. Valid values are: Basic, Standard, Premium and PremiumRS. + PricingTier *string `json:"pricingTier,omitempty" tf:"pricing_tier,omitempty"` + + // The endpoint of an Azure SQL Server that will be used to host the SSIS catalog. + ServerEndpoint *string `json:"serverEndpoint,omitempty" tf:"server_endpoint,omitempty"` +} + type IntegrationRuntimeManagedCatalogInfoObservation struct { // Administrator login name for the SQL Server. @@ -40,8 +52,14 @@ type IntegrationRuntimeManagedCatalogInfoParameters struct { PricingTier *string `json:"pricingTier,omitempty" tf:"pricing_tier,omitempty"` // The endpoint of an Azure SQL Server that will be used to host the SSIS catalog. - // +kubebuilder:validation:Required - ServerEndpoint *string `json:"serverEndpoint" tf:"server_endpoint,omitempty"` + // +kubebuilder:validation:Optional + ServerEndpoint *string `json:"serverEndpoint,omitempty" tf:"server_endpoint,omitempty"` +} + +type IntegrationRuntimeManagedCustomSetupScriptInitParameters struct { + + // The blob endpoint for the container which contains a custom setup script that will be run on every node on startup. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup for more information. + BlobContainerURI *string `json:"blobContainerUri,omitempty" tf:"blob_container_uri,omitempty"` } type IntegrationRuntimeManagedCustomSetupScriptObservation struct { @@ -53,14 +71,47 @@ type IntegrationRuntimeManagedCustomSetupScriptObservation struct { type IntegrationRuntimeManagedCustomSetupScriptParameters struct { // The blob endpoint for the container which contains a custom setup script that will be run on every node on startup. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup for more information. - // +kubebuilder:validation:Required - BlobContainerURI *string `json:"blobContainerUri" tf:"blob_container_uri,omitempty"` + // +kubebuilder:validation:Optional + BlobContainerURI *string `json:"blobContainerUri,omitempty" tf:"blob_container_uri,omitempty"` // A container SAS token that gives access to the files. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup for more information. // +kubebuilder:validation:Required SASTokenSecretRef v1.SecretKeySelector `json:"sasTokenSecretRef" tf:"-"` } +type IntegrationRuntimeManagedInitParameters struct { + + // A catalog_info block as defined below. + CatalogInfo []IntegrationRuntimeManagedCatalogInfoInitParameters `json:"catalogInfo,omitempty" tf:"catalog_info,omitempty"` + + // A custom_setup_script block as defined below. + CustomSetupScript []IntegrationRuntimeManagedCustomSetupScriptInitParameters `json:"customSetupScript,omitempty" tf:"custom_setup_script,omitempty"` + + // Integration runtime description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Managed Integration Runtime edition. Valid values are Standard and Enterprise. Defaults to Standard. + Edition *string `json:"edition,omitempty" tf:"edition,omitempty"` + + // The type of the license that is used. Valid values are LicenseIncluded and BasePrice. Defaults to LicenseIncluded. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Defines the maximum parallel executions per node. Defaults to 1. Max is 16. + MaxParallelExecutionsPerNode *float64 `json:"maxParallelExecutionsPerNode,omitempty" tf:"max_parallel_executions_per_node,omitempty"` + + // The size of the nodes on which the Managed Integration Runtime runs. Valid values are: Standard_D2_v3, Standard_D4_v3, Standard_D8_v3, Standard_D16_v3, Standard_D32_v3, Standard_D64_v3, Standard_E2_v3, Standard_E4_v3, Standard_E8_v3, Standard_E16_v3, Standard_E32_v3, Standard_E64_v3, Standard_D1_v2, Standard_D2_v2, Standard_D3_v2, Standard_D4_v2, Standard_A4_v2 and Standard_A8_v2 + NodeSize *string `json:"nodeSize,omitempty" tf:"node_size,omitempty"` + + // Number of nodes for the Managed Integration Runtime. Max is 10. Defaults to 1. + NumberOfNodes *float64 `json:"numberOfNodes,omitempty" tf:"number_of_nodes,omitempty"` + + // A vnet_integration block as defined below. + VnetIntegration []IntegrationRuntimeManagedVnetIntegrationInitParameters `json:"vnetIntegration,omitempty" tf:"vnet_integration,omitempty"` +} + type IntegrationRuntimeManagedObservation struct { // A catalog_info block as defined below. @@ -157,6 +208,12 @@ type IntegrationRuntimeManagedParameters struct { VnetIntegration []IntegrationRuntimeManagedVnetIntegrationParameters `json:"vnetIntegration,omitempty" tf:"vnet_integration,omitempty"` } +type IntegrationRuntimeManagedVnetIntegrationInitParameters struct { + + // ID of the virtual network to which the nodes of the Managed Integration Runtime will be added. + VnetID *string `json:"vnetId,omitempty" tf:"vnet_id,omitempty"` +} + type IntegrationRuntimeManagedVnetIntegrationObservation struct { // Name of the subnet to which the nodes of the Managed Integration Runtime will be added. @@ -182,14 +239,26 @@ type IntegrationRuntimeManagedVnetIntegrationParameters struct { SubnetNameSelector *v1.Selector `json:"subnetNameSelector,omitempty" tf:"-"` // ID of the virtual network to which the nodes of the Managed Integration Runtime will be added. - // +kubebuilder:validation:Required - VnetID *string `json:"vnetId" tf:"vnet_id,omitempty"` + // +kubebuilder:validation:Optional + VnetID *string `json:"vnetId,omitempty" tf:"vnet_id,omitempty"` } // IntegrationRuntimeManagedSpec defines the desired state of IntegrationRuntimeManaged type IntegrationRuntimeManagedSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IntegrationRuntimeManagedParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IntegrationRuntimeManagedInitParameters `json:"initProvider,omitempty"` } // IntegrationRuntimeManagedStatus defines the observed state of IntegrationRuntimeManaged. @@ -210,8 +279,8 @@ type IntegrationRuntimeManagedStatus struct { type IntegrationRuntimeManaged struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nodeSize)",message="nodeSize is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.nodeSize) || has(self.initProvider.nodeSize)",message="nodeSize is a required parameter" Spec IntegrationRuntimeManagedSpec `json:"spec"` Status IntegrationRuntimeManagedStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_integrationruntimeselfhosted_types.go b/apis/datafactory/v1beta1/zz_integrationruntimeselfhosted_types.go index 15d11f4dc..930b9d7e5 100755 --- a/apis/datafactory/v1beta1/zz_integrationruntimeselfhosted_types.go +++ b/apis/datafactory/v1beta1/zz_integrationruntimeselfhosted_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IntegrationRuntimeSelfHostedInitParameters struct { + + // Integration runtime description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A rbac_authorization block as defined below. Changing this forces a new resource to be created. + RbacAuthorization []RbacAuthorizationInitParameters `json:"rbacAuthorization,omitempty" tf:"rbac_authorization,omitempty"` +} + type IntegrationRuntimeSelfHostedObservation struct { // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -59,6 +68,12 @@ type IntegrationRuntimeSelfHostedParameters struct { RbacAuthorization []RbacAuthorizationParameters `json:"rbacAuthorization,omitempty" tf:"rbac_authorization,omitempty"` } +type RbacAuthorizationInitParameters struct { + + // The resource identifier of the integration runtime to be shared. + ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` +} + type RbacAuthorizationObservation struct { // The resource identifier of the integration runtime to be shared. @@ -68,14 +83,26 @@ type RbacAuthorizationObservation struct { type RbacAuthorizationParameters struct { // The resource identifier of the integration runtime to be shared. - // +kubebuilder:validation:Required - ResourceID *string `json:"resourceId" tf:"resource_id,omitempty"` + // +kubebuilder:validation:Optional + ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` } // IntegrationRuntimeSelfHostedSpec defines the desired state of IntegrationRuntimeSelfHosted type IntegrationRuntimeSelfHostedSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IntegrationRuntimeSelfHostedParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IntegrationRuntimeSelfHostedInitParameters `json:"initProvider,omitempty"` } // IntegrationRuntimeSelfHostedStatus defines the observed state of IntegrationRuntimeSelfHosted. diff --git a/apis/datafactory/v1beta1/zz_linkedcustomservice_types.go b/apis/datafactory/v1beta1/zz_linkedcustomservice_types.go index c015f9b88..008adade8 100755 --- a/apis/datafactory/v1beta1/zz_linkedcustomservice_types.go +++ b/apis/datafactory/v1beta1/zz_linkedcustomservice_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IntegrationRuntimeInitParameters struct { + + // The integration runtime reference to associate with the Data Factory Linked Service. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map of parameters to associate with the integration runtime. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type IntegrationRuntimeObservation struct { // The integration runtime reference to associate with the Data Factory Linked Service. @@ -25,14 +34,38 @@ type IntegrationRuntimeObservation struct { type IntegrationRuntimeParameters struct { // The integration runtime reference to associate with the Data Factory Linked Service. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the integration runtime. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type LinkedCustomServiceInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // An integration_runtime block as defined below. + IntegrationRuntime []IntegrationRuntimeInitParameters `json:"integrationRuntime,omitempty" tf:"integration_runtime,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The type of data stores that will be connected to Data Factory. For full list of supported data stores, please refer to Azure Data Factory connector. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // A JSON object that contains the properties of the Data Factory Linked Service. + TypePropertiesJSON *string `json:"typePropertiesJson,omitempty" tf:"type_properties_json,omitempty"` +} + type LinkedCustomServiceObservation struct { // A map of additional properties to associate with the Data Factory Linked Service. @@ -112,6 +145,18 @@ type LinkedCustomServiceParameters struct { type LinkedCustomServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedCustomServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedCustomServiceInitParameters `json:"initProvider,omitempty"` } // LinkedCustomServiceStatus defines the observed state of LinkedCustomService. @@ -132,8 +177,8 @@ type LinkedCustomServiceStatus struct { type LinkedCustomService struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.typePropertiesJson)",message="typePropertiesJson is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.typePropertiesJson) || has(self.initProvider.typePropertiesJson)",message="typePropertiesJson is a required parameter" Spec LinkedCustomServiceSpec `json:"spec"` Status LinkedCustomServiceStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazureblobstorage_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazureblobstorage_types.go index 2b6a3a63d..99982a41c 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazureblobstorage_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazureblobstorage_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type KeyVaultSASTokenInitParameters struct { + + // Specifies the secret name in Azure Key Vault that stores the SAS token. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + type KeyVaultSASTokenObservation struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. @@ -38,8 +44,50 @@ type KeyVaultSASTokenParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies the secret name in Azure Key Vault that stores the SAS token. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + +type LinkedServiceAzureBlobStorageInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The connection string sent insecurely. Conflicts with connection_string, sas_uri and service_endpoint. + ConnectionStringInsecure *string `json:"connectionStringInsecure,omitempty" tf:"connection_string_insecure,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A key_vault_sas_token block as defined below. Use this argument to store SAS Token in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. A sas_uri is required. + KeyVaultSASToken []KeyVaultSASTokenInitParameters `json:"keyVaultSasToken,omitempty" tf:"key_vault_sas_token,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The service principal id in which to authenticate against the Azure Blob Storage account. + ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` + + // The service principal key in which to authenticate against the AAzure Blob Storage account. + ServicePrincipalKey *string `json:"servicePrincipalKey,omitempty" tf:"service_principal_key,omitempty"` + + // A service_principal_linked_key_vault_key block as defined below. Use this argument to store Service Principal key in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + ServicePrincipalLinkedKeyVaultKey []ServicePrincipalLinkedKeyVaultKeyInitParameters `json:"servicePrincipalLinkedKeyVaultKey,omitempty" tf:"service_principal_linked_key_vault_key,omitempty"` + + // Specify the kind of the storage account. Allowed values are Storage, StorageV2, BlobStorage and BlockBlobStorage. + StorageKind *string `json:"storageKind,omitempty" tf:"storage_kind,omitempty"` + + // The tenant id or name in which to authenticate against the Azure Blob Storage account. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` + + // Whether to use the Data Factory's managed identity to authenticate against the Azure Blob Storage account. Incompatible with service_principal_id and service_principal_key. + UseManagedIdentity *bool `json:"useManagedIdentity,omitempty" tf:"use_managed_identity,omitempty"` } type LinkedServiceAzureBlobStorageObservation struct { @@ -171,6 +219,12 @@ type LinkedServiceAzureBlobStorageParameters struct { UseManagedIdentity *bool `json:"useManagedIdentity,omitempty" tf:"use_managed_identity,omitempty"` } +type ServicePrincipalLinkedKeyVaultKeyInitParameters struct { + + // Specifies the secret name in Azure Key Vault that stores the Service Principal key. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + type ServicePrincipalLinkedKeyVaultKeyObservation struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. @@ -196,14 +250,26 @@ type ServicePrincipalLinkedKeyVaultKeyParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies the secret name in Azure Key Vault that stores the Service Principal key. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } // LinkedServiceAzureBlobStorageSpec defines the desired state of LinkedServiceAzureBlobStorage type LinkedServiceAzureBlobStorageSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceAzureBlobStorageParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceAzureBlobStorageInitParameters `json:"initProvider,omitempty"` } // LinkedServiceAzureBlobStorageStatus defines the observed state of LinkedServiceAzureBlobStorage. diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazuredatabricks_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazuredatabricks_types.go index d5ea3ff7e..71e5a1935 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazuredatabricks_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazuredatabricks_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type InstancePoolInitParameters struct { + + // Spark version of a the cluster. + ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` + + // Identifier of the instance pool within the linked ADB instance. + InstancePoolID *string `json:"instancePoolId,omitempty" tf:"instance_pool_id,omitempty"` + + // The max number of worker nodes. Set this value if you want to enable autoscaling between the min_number_of_workers and this value. Omit this value to use a fixed number of workers defined in the min_number_of_workers property. + MaxNumberOfWorkers *float64 `json:"maxNumberOfWorkers,omitempty" tf:"max_number_of_workers,omitempty"` + + // The minimum number of worker nodes. Defaults to 1. + MinNumberOfWorkers *float64 `json:"minNumberOfWorkers,omitempty" tf:"min_number_of_workers,omitempty"` +} + type InstancePoolObservation struct { // Spark version of a the cluster. @@ -31,12 +46,12 @@ type InstancePoolObservation struct { type InstancePoolParameters struct { // Spark version of a the cluster. - // +kubebuilder:validation:Required - ClusterVersion *string `json:"clusterVersion" tf:"cluster_version,omitempty"` + // +kubebuilder:validation:Optional + ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` // Identifier of the instance pool within the linked ADB instance. - // +kubebuilder:validation:Required - InstancePoolID *string `json:"instancePoolId" tf:"instance_pool_id,omitempty"` + // +kubebuilder:validation:Optional + InstancePoolID *string `json:"instancePoolId,omitempty" tf:"instance_pool_id,omitempty"` // The max number of worker nodes. Set this value if you want to enable autoscaling between the min_number_of_workers and this value. Omit this value to use a fixed number of workers defined in the min_number_of_workers property. // +kubebuilder:validation:Optional @@ -47,6 +62,48 @@ type InstancePoolParameters struct { MinNumberOfWorkers *float64 `json:"minNumberOfWorkers,omitempty" tf:"min_number_of_workers,omitempty"` } +type LinkedServiceAzureDatabricksInitParameters struct { + + // The domain URL of the databricks instance. + AdbDomain *string `json:"adbDomain,omitempty" tf:"adb_domain,omitempty"` + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The cluster_id of an existing cluster within the linked ADB instance. + ExistingClusterID *string `json:"existingClusterId,omitempty" tf:"existing_cluster_id,omitempty"` + + // Leverages an instance pool within the linked ADB instance as defined by instance_pool block below. + InstancePool []InstancePoolInitParameters `json:"instancePool,omitempty" tf:"instance_pool,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // Authenticate to ADB via Azure Key Vault Linked Service as defined in the key_vault_password block below. + KeyVaultPassword []LinkedServiceAzureDatabricksKeyVaultPasswordInitParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` + + // Creates new clusters within the linked ADB instance as defined in the new_cluster_config block below. + NewClusterConfig []NewClusterConfigInitParameters `json:"newClusterConfig,omitempty" tf:"new_cluster_config,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + +type LinkedServiceAzureDatabricksKeyVaultPasswordInitParameters struct { + + // Specifies the name of an existing Key Vault Data Factory Linked Service. + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` + + // Specifies the secret name in Azure Key Vault that stores ADB access token. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + type LinkedServiceAzureDatabricksKeyVaultPasswordObservation struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. @@ -59,12 +116,12 @@ type LinkedServiceAzureDatabricksKeyVaultPasswordObservation struct { type LinkedServiceAzureDatabricksKeyVaultPasswordParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. - // +kubebuilder:validation:Required - LinkedServiceName *string `json:"linkedServiceName" tf:"linked_service_name,omitempty"` + // +kubebuilder:validation:Optional + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores ADB access token. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } type LinkedServiceAzureDatabricksObservation struct { @@ -184,6 +241,39 @@ type LinkedServiceAzureDatabricksParameters struct { Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type NewClusterConfigInitParameters struct { + + // Spark version of a the cluster. + ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` + + // Tags for the cluster resource. + CustomTags map[string]*string `json:"customTags,omitempty" tf:"custom_tags,omitempty"` + + // Driver node type for the cluster. + DriverNodeType *string `json:"driverNodeType,omitempty" tf:"driver_node_type,omitempty"` + + // User defined initialization scripts for the cluster. + InitScripts []*string `json:"initScripts,omitempty" tf:"init_scripts,omitempty"` + + // Location to deliver Spark driver, worker, and event logs. + LogDestination *string `json:"logDestination,omitempty" tf:"log_destination,omitempty"` + + // Specifies the maximum number of worker nodes. It should be between 1 and 25000. + MaxNumberOfWorkers *float64 `json:"maxNumberOfWorkers,omitempty" tf:"max_number_of_workers,omitempty"` + + // Specifies the minimum number of worker nodes. It should be between 1 and 25000. It defaults to 1. + MinNumberOfWorkers *float64 `json:"minNumberOfWorkers,omitempty" tf:"min_number_of_workers,omitempty"` + + // Node type for the new cluster. + NodeType *string `json:"nodeType,omitempty" tf:"node_type,omitempty"` + + // User-specified Spark configuration variables key-value pairs. + SparkConfig map[string]*string `json:"sparkConfig,omitempty" tf:"spark_config,omitempty"` + + // User-specified Spark environment variables key-value pairs. + SparkEnvironmentVariables map[string]*string `json:"sparkEnvironmentVariables,omitempty" tf:"spark_environment_variables,omitempty"` +} + type NewClusterConfigObservation struct { // Spark version of a the cluster. @@ -220,8 +310,8 @@ type NewClusterConfigObservation struct { type NewClusterConfigParameters struct { // Spark version of a the cluster. - // +kubebuilder:validation:Required - ClusterVersion *string `json:"clusterVersion" tf:"cluster_version,omitempty"` + // +kubebuilder:validation:Optional + ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` // Tags for the cluster resource. // +kubebuilder:validation:Optional @@ -248,8 +338,8 @@ type NewClusterConfigParameters struct { MinNumberOfWorkers *float64 `json:"minNumberOfWorkers,omitempty" tf:"min_number_of_workers,omitempty"` // Node type for the new cluster. - // +kubebuilder:validation:Required - NodeType *string `json:"nodeType" tf:"node_type,omitempty"` + // +kubebuilder:validation:Optional + NodeType *string `json:"nodeType,omitempty" tf:"node_type,omitempty"` // User-specified Spark configuration variables key-value pairs. // +kubebuilder:validation:Optional @@ -264,6 +354,18 @@ type NewClusterConfigParameters struct { type LinkedServiceAzureDatabricksSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceAzureDatabricksParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceAzureDatabricksInitParameters `json:"initProvider,omitempty"` } // LinkedServiceAzureDatabricksStatus defines the observed state of LinkedServiceAzureDatabricks. @@ -284,7 +386,7 @@ type LinkedServiceAzureDatabricksStatus struct { type LinkedServiceAzureDatabricks struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adbDomain)",message="adbDomain is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adbDomain) || has(self.initProvider.adbDomain)",message="adbDomain is a required parameter" Spec LinkedServiceAzureDatabricksSpec `json:"spec"` Status LinkedServiceAzureDatabricksStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazurefilestorage_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazurefilestorage_types.go index 7b043fbb7..8421e4adb 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazurefilestorage_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazurefilestorage_types.go @@ -13,6 +13,45 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceAzureFileStorageInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the file share. + FileShare *string `json:"fileShare,omitempty" tf:"file_share,omitempty"` + + // The Host name of the server. + Host *string `json:"host,omitempty" tf:"host,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A key_vault_password block as defined below. Use this argument to store Azure File Storage password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + KeyVaultPassword []LinkedServiceAzureFileStorageKeyVaultPasswordInitParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The user ID to log in the server. + UserID *string `json:"userId,omitempty" tf:"user_id,omitempty"` +} + +type LinkedServiceAzureFileStorageKeyVaultPasswordInitParameters struct { + + // Specifies the name of an existing Key Vault Data Factory Linked Service. + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` + + // Specifies the secret name in Azure Key Vault that stores Azure File Storage password. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + type LinkedServiceAzureFileStorageKeyVaultPasswordObservation struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. @@ -25,12 +64,12 @@ type LinkedServiceAzureFileStorageKeyVaultPasswordObservation struct { type LinkedServiceAzureFileStorageKeyVaultPasswordParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. - // +kubebuilder:validation:Required - LinkedServiceName *string `json:"linkedServiceName" tf:"linked_service_name,omitempty"` + // +kubebuilder:validation:Optional + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores Azure File Storage password. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } type LinkedServiceAzureFileStorageObservation struct { @@ -134,6 +173,18 @@ type LinkedServiceAzureFileStorageParameters struct { type LinkedServiceAzureFileStorageSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceAzureFileStorageParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceAzureFileStorageInitParameters `json:"initProvider,omitempty"` } // LinkedServiceAzureFileStorageStatus defines the observed state of LinkedServiceAzureFileStorage. @@ -154,7 +205,7 @@ type LinkedServiceAzureFileStorageStatus struct { type LinkedServiceAzureFileStorage struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionStringSecretRef)",message="connectionStringSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.connectionStringSecretRef)",message="connectionStringSecretRef is a required parameter" Spec LinkedServiceAzureFileStorageSpec `json:"spec"` Status LinkedServiceAzureFileStorageStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazurefunction_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazurefunction_types.go index 563d43f54..e64cb3b72 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazurefunction_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazurefunction_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type KeyVaultKeyInitParameters struct { + + // Specifies the name of an existing Key Vault Data Factory Linked Service. + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` + + // Specifies the secret name in Azure Key Vault that stores the system key of the Azure Function. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + type KeyVaultKeyObservation struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. @@ -25,12 +34,36 @@ type KeyVaultKeyObservation struct { type KeyVaultKeyParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. - // +kubebuilder:validation:Required - LinkedServiceName *string `json:"linkedServiceName" tf:"linked_service_name,omitempty"` + // +kubebuilder:validation:Optional + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores the system key of the Azure Function. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + +type LinkedServiceAzureFunctionInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A key_vault_key block as defined below. Use this Argument to store the system key of the Azure Function in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. Exactly one of either key or key_vault_key is required. + KeyVaultKey []KeyVaultKeyInitParameters `json:"keyVaultKey,omitempty" tf:"key_vault_key,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The url of the Azure Function. + URL *string `json:"url,omitempty" tf:"url,omitempty"` } type LinkedServiceAzureFunctionObservation struct { @@ -116,6 +149,18 @@ type LinkedServiceAzureFunctionParameters struct { type LinkedServiceAzureFunctionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceAzureFunctionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceAzureFunctionInitParameters `json:"initProvider,omitempty"` } // LinkedServiceAzureFunctionStatus defines the observed state of LinkedServiceAzureFunction. @@ -136,7 +181,7 @@ type LinkedServiceAzureFunctionStatus struct { type LinkedServiceAzureFunction struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url)",message="url is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || has(self.initProvider.url)",message="url is a required parameter" Spec LinkedServiceAzureFunctionSpec `json:"spec"` Status LinkedServiceAzureFunctionStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazuresearch_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazuresearch_types.go index 828c42e5a..0e54a09e4 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazuresearch_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazuresearch_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceAzureSearchInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URL of the Search Service endpoint (e.g. https://{searchServiceName}.search.windows.net). + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type LinkedServiceAzureSearchObservation struct { // A map of additional properties to associate with the Data Factory Linked Service. @@ -105,6 +126,18 @@ type LinkedServiceAzureSearchParameters struct { type LinkedServiceAzureSearchSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceAzureSearchParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceAzureSearchInitParameters `json:"initProvider,omitempty"` } // LinkedServiceAzureSearchStatus defines the observed state of LinkedServiceAzureSearch. @@ -125,7 +158,7 @@ type LinkedServiceAzureSearchStatus struct { type LinkedServiceAzureSearch struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url)",message="url is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || has(self.initProvider.url)",message="url is a required parameter" Spec LinkedServiceAzureSearchSpec `json:"spec"` Status LinkedServiceAzureSearchStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazuresqldatabase_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazuresqldatabase_types.go index 655d05006..6805c0fd0 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazuresqldatabase_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazuresqldatabase_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type KeyVaultConnectionStringInitParameters struct { + + // Specifies the name of an existing Key Vault Data Factory Linked Service. + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` + + // Specifies the secret name in Azure Key Vault that stores SQL Server connection string. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + type KeyVaultConnectionStringObservation struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. @@ -25,12 +34,60 @@ type KeyVaultConnectionStringObservation struct { type KeyVaultConnectionStringParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. - // +kubebuilder:validation:Required - LinkedServiceName *string `json:"linkedServiceName" tf:"linked_service_name,omitempty"` + // +kubebuilder:validation:Optional + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores SQL Server connection string. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + +type LinkedServiceAzureSQLDatabaseInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service Azure SQL Database. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service Azure SQL Database. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The connection string in which to authenticate with Azure SQL Database. Exactly one of either connection_string or key_vault_connection_string is required. + ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // The description for the Data Factory Linked Service Azure SQL Database. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service Azure SQL Database. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A key_vault_connection_string block as defined below. Use this argument to store Azure SQL Database connection string in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. Exactly one of either connection_string or key_vault_connection_string is required. + KeyVaultConnectionString []KeyVaultConnectionStringInitParameters `json:"keyVaultConnectionString,omitempty" tf:"key_vault_connection_string,omitempty"` + + // A key_vault_password block as defined below. Use this argument to store SQL Server password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + KeyVaultPassword []LinkedServiceAzureSQLDatabaseKeyVaultPasswordInitParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service Azure SQL Database. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The service principal id in which to authenticate against the Azure SQL Database. Required if service_principal_key is set. + ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` + + // The service principal key in which to authenticate against the Azure SQL Database. Required if service_principal_id is set. + ServicePrincipalKey *string `json:"servicePrincipalKey,omitempty" tf:"service_principal_key,omitempty"` + + // The tenant id or name in which to authenticate against the Azure SQL Database. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` + + // Whether to use the Data Factory's managed identity to authenticate against the Azure SQL Database. Incompatible with service_principal_id and service_principal_key + UseManagedIdentity *bool `json:"useManagedIdentity,omitempty" tf:"use_managed_identity,omitempty"` +} + +type LinkedServiceAzureSQLDatabaseKeyVaultPasswordInitParameters struct { + + // Specifies the name of an existing Key Vault Data Factory Linked Service. + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` + + // Specifies the secret name in Azure Key Vault that stores SQL Server password. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } type LinkedServiceAzureSQLDatabaseKeyVaultPasswordObservation struct { @@ -45,12 +102,12 @@ type LinkedServiceAzureSQLDatabaseKeyVaultPasswordObservation struct { type LinkedServiceAzureSQLDatabaseKeyVaultPasswordParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. - // +kubebuilder:validation:Required - LinkedServiceName *string `json:"linkedServiceName" tf:"linked_service_name,omitempty"` + // +kubebuilder:validation:Optional + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores SQL Server password. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } type LinkedServiceAzureSQLDatabaseObservation struct { @@ -167,6 +224,18 @@ type LinkedServiceAzureSQLDatabaseParameters struct { type LinkedServiceAzureSQLDatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceAzureSQLDatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceAzureSQLDatabaseInitParameters `json:"initProvider,omitempty"` } // LinkedServiceAzureSQLDatabaseStatus defines the observed state of LinkedServiceAzureSQLDatabase. diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazuretablestorage_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazuretablestorage_types.go index be0e9c3e9..6dc09d302 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazuretablestorage_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazuretablestorage_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceAzureTableStorageInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type LinkedServiceAzureTableStorageObservation struct { // A map of additional properties to associate with the Data Factory Linked Service. @@ -82,6 +100,18 @@ type LinkedServiceAzureTableStorageParameters struct { type LinkedServiceAzureTableStorageSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceAzureTableStorageParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceAzureTableStorageInitParameters `json:"initProvider,omitempty"` } // LinkedServiceAzureTableStorageStatus defines the observed state of LinkedServiceAzureTableStorage. @@ -102,7 +132,7 @@ type LinkedServiceAzureTableStorageStatus struct { type LinkedServiceAzureTableStorage struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionStringSecretRef)",message="connectionStringSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.connectionStringSecretRef)",message="connectionStringSecretRef is a required parameter" Spec LinkedServiceAzureTableStorageSpec `json:"spec"` Status LinkedServiceAzureTableStorageStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicecosmosdb_types.go b/apis/datafactory/v1beta1/zz_linkedservicecosmosdb_types.go index 6e873c68c..9e3d4ad7c 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicecosmosdb_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicecosmosdb_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceCosmosDBInitParameters struct { + + // The endpoint of the Azure CosmosDB account. Required if connection_string is unspecified. + AccountEndpoint *string `json:"accountEndpoint,omitempty" tf:"account_endpoint,omitempty"` + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The name of the database. Required if connection_string is unspecified. + Database *string `json:"database,omitempty" tf:"database,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type LinkedServiceCosmosDBObservation struct { // The endpoint of the Azure CosmosDB account. Required if connection_string is unspecified. @@ -100,6 +124,18 @@ type LinkedServiceCosmosDBParameters struct { type LinkedServiceCosmosDBSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceCosmosDBParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceCosmosDBInitParameters `json:"initProvider,omitempty"` } // LinkedServiceCosmosDBStatus defines the observed state of LinkedServiceCosmosDB. diff --git a/apis/datafactory/v1beta1/zz_linkedservicecosmosdbmongoapi_types.go b/apis/datafactory/v1beta1/zz_linkedservicecosmosdbmongoapi_types.go index 226c9e3ef..8b7bc1b1d 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicecosmosdbmongoapi_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicecosmosdbmongoapi_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceCosmosDBMongoapiInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The name of the database. + Database *string `json:"database,omitempty" tf:"database,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // Whether API server version is 3.2 or higher. Defaults to false. + ServerVersionIs32OrHigher *bool `json:"serverVersionIs32OrHigher,omitempty" tf:"server_version_is_32_or_higher,omitempty"` +} + type LinkedServiceCosmosDBMongoapiObservation struct { // A map of additional properties to associate with the Data Factory Linked Service. @@ -96,6 +120,18 @@ type LinkedServiceCosmosDBMongoapiParameters struct { type LinkedServiceCosmosDBMongoapiSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceCosmosDBMongoapiParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceCosmosDBMongoapiInitParameters `json:"initProvider,omitempty"` } // LinkedServiceCosmosDBMongoapiStatus defines the observed state of LinkedServiceCosmosDBMongoapi. diff --git a/apis/datafactory/v1beta1/zz_linkedservicedatalakestoragegen2_types.go b/apis/datafactory/v1beta1/zz_linkedservicedatalakestoragegen2_types.go index 1539e11f4..2fcac81de 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicedatalakestoragegen2_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicedatalakestoragegen2_types.go @@ -13,6 +13,42 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceDataLakeStorageGen2InitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The service principal id with which to authenticate against the Azure Data Lake Storage Gen2 account. Incompatible with storage_account_key and use_managed_identity. + ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` + + // The service principal key with which to authenticate against the Azure Data Lake Storage Gen2 account. + ServicePrincipalKey *string `json:"servicePrincipalKey,omitempty" tf:"service_principal_key,omitempty"` + + // The Storage Account Key with which to authenticate against the Azure Data Lake Storage Gen2 account. Incompatible with service_principal_id, service_principal_key, tenant and use_managed_identity. + StorageAccountKey *string `json:"storageAccountKey,omitempty" tf:"storage_account_key,omitempty"` + + // The tenant id or name in which the service principal exists to authenticate against the Azure Data Lake Storage Gen2 account. + Tenant *string `json:"tenant,omitempty" tf:"tenant,omitempty"` + + // The endpoint for the Azure Data Lake Storage Gen2 service. + URL *string `json:"url,omitempty" tf:"url,omitempty"` + + // Whether to use the Data Factory's managed identity to authenticate against the Azure Data Lake Storage Gen2 account. Incompatible with service_principal_id, service_principal_key, tenant and storage_account_key. + UseManagedIdentity *bool `json:"useManagedIdentity,omitempty" tf:"use_managed_identity,omitempty"` +} + type LinkedServiceDataLakeStorageGen2Observation struct { // A map of additional properties to associate with the Data Factory Linked Service. @@ -120,6 +156,18 @@ type LinkedServiceDataLakeStorageGen2Parameters struct { type LinkedServiceDataLakeStorageGen2Spec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceDataLakeStorageGen2Parameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceDataLakeStorageGen2InitParameters `json:"initProvider,omitempty"` } // LinkedServiceDataLakeStorageGen2Status defines the observed state of LinkedServiceDataLakeStorageGen2. @@ -140,7 +188,7 @@ type LinkedServiceDataLakeStorageGen2Status struct { type LinkedServiceDataLakeStorageGen2 struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url)",message="url is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || has(self.initProvider.url)",message="url is a required parameter" Spec LinkedServiceDataLakeStorageGen2Spec `json:"spec"` Status LinkedServiceDataLakeStorageGen2Status `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicekeyvault_types.go b/apis/datafactory/v1beta1/zz_linkedservicekeyvault_types.go index ab6f117cc..456b8df78 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicekeyvault_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicekeyvault_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceKeyVaultInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service Key Vault. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service Key Vault. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Linked Service Key Vault. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service Key Vault. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service Key Vault. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type LinkedServiceKeyVaultObservation struct { // A map of additional properties to associate with the Data Factory Linked Service Key Vault. @@ -95,6 +113,18 @@ type LinkedServiceKeyVaultParameters struct { type LinkedServiceKeyVaultSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceKeyVaultParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceKeyVaultInitParameters `json:"initProvider,omitempty"` } // LinkedServiceKeyVaultStatus defines the observed state of LinkedServiceKeyVault. diff --git a/apis/datafactory/v1beta1/zz_linkedservicekusto_types.go b/apis/datafactory/v1beta1/zz_linkedservicekusto_types.go index 80b8cd65a..37716e137 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicekusto_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicekusto_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceKustoInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The service principal id in which to authenticate against the Kusto Database. + ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` + + // The service principal tenant id or name in which to authenticate against the Kusto Database. + Tenant *string `json:"tenant,omitempty" tf:"tenant,omitempty"` + + // Whether to use the Data Factory's managed identity to authenticate against the Kusto Database. + UseManagedIdentity *bool `json:"useManagedIdentity,omitempty" tf:"use_managed_identity,omitempty"` +} + type LinkedServiceKustoObservation struct { // A map of additional properties to associate with the Data Factory Linked Service. @@ -136,6 +163,18 @@ type LinkedServiceKustoParameters struct { type LinkedServiceKustoSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceKustoParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceKustoInitParameters `json:"initProvider,omitempty"` } // LinkedServiceKustoStatus defines the observed state of LinkedServiceKusto. diff --git a/apis/datafactory/v1beta1/zz_linkedservicemysql_types.go b/apis/datafactory/v1beta1/zz_linkedservicemysql_types.go index 849b6a3b9..fa09d32a7 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicemysql_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicemysql_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceMySQLInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service MySQL. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service MySQL. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The connection string in which to authenticate with MySQL. + ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // The description for the Data Factory Linked Service MySQL. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service MySQL. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service MySQL. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type LinkedServiceMySQLObservation struct { // A map of additional properties to associate with the Data Factory Linked Service MySQL. @@ -85,6 +106,18 @@ type LinkedServiceMySQLParameters struct { type LinkedServiceMySQLSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceMySQLParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceMySQLInitParameters `json:"initProvider,omitempty"` } // LinkedServiceMySQLStatus defines the observed state of LinkedServiceMySQL. @@ -105,7 +138,7 @@ type LinkedServiceMySQLStatus struct { type LinkedServiceMySQL struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionString)",message="connectionString is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.connectionString) || has(self.initProvider.connectionString)",message="connectionString is a required parameter" Spec LinkedServiceMySQLSpec `json:"spec"` Status LinkedServiceMySQLStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceodata_types.go b/apis/datafactory/v1beta1/zz_linkedserviceodata_types.go index 93c62b95e..87845d1cc 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceodata_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceodata_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BasicAuthenticationInitParameters struct { + + // The username which can be used to authenticate to the OData endpoint. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type BasicAuthenticationObservation struct { // The username which can be used to authenticate to the OData endpoint. @@ -26,8 +32,32 @@ type BasicAuthenticationParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username which can be used to authenticate to the OData endpoint. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type LinkedServiceODataInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service OData. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service OData. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // A basic_authentication block as defined below. + BasicAuthentication []BasicAuthenticationInitParameters `json:"basicAuthentication,omitempty" tf:"basic_authentication,omitempty"` + + // The description for the Data Factory Linked Service OData. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service OData. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service OData. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URL of the OData service endpoint. + URL *string `json:"url,omitempty" tf:"url,omitempty"` } type LinkedServiceODataObservation struct { @@ -109,6 +139,18 @@ type LinkedServiceODataParameters struct { type LinkedServiceODataSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceODataParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceODataInitParameters `json:"initProvider,omitempty"` } // LinkedServiceODataStatus defines the observed state of LinkedServiceOData. @@ -129,7 +171,7 @@ type LinkedServiceODataStatus struct { type LinkedServiceOData struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url)",message="url is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || has(self.initProvider.url)",message="url is a required parameter" Spec LinkedServiceODataSpec `json:"spec"` Status LinkedServiceODataStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceodbc_types.go b/apis/datafactory/v1beta1/zz_linkedserviceodbc_types.go index fa556c044..735492161 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceodbc_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceodbc_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceOdbcBasicAuthenticationInitParameters struct { + + // The username which can be used to authenticate to the ODBC endpoint. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type LinkedServiceOdbcBasicAuthenticationObservation struct { // The username which can be used to authenticate to the ODBC endpoint. @@ -26,8 +32,32 @@ type LinkedServiceOdbcBasicAuthenticationParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username which can be used to authenticate to the ODBC endpoint. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type LinkedServiceOdbcInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service ODBC. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service ODBC. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // A basic_authentication block as defined below. + BasicAuthentication []LinkedServiceOdbcBasicAuthenticationInitParameters `json:"basicAuthentication,omitempty" tf:"basic_authentication,omitempty"` + + // The connection string in which to authenticate with ODBC. + ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // The description for the Data Factory Linked Service ODBC. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service ODBC. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service ODBC. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } type LinkedServiceOdbcObservation struct { @@ -109,6 +139,18 @@ type LinkedServiceOdbcParameters struct { type LinkedServiceOdbcSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceOdbcParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceOdbcInitParameters `json:"initProvider,omitempty"` } // LinkedServiceOdbcStatus defines the observed state of LinkedServiceOdbc. @@ -129,7 +171,7 @@ type LinkedServiceOdbcStatus struct { type LinkedServiceOdbc struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionString)",message="connectionString is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.connectionString) || has(self.initProvider.connectionString)",message="connectionString is a required parameter" Spec LinkedServiceOdbcSpec `json:"spec"` Status LinkedServiceOdbcStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicepostgresql_types.go b/apis/datafactory/v1beta1/zz_linkedservicepostgresql_types.go index ebb40f959..7afbf7c6f 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicepostgresql_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicepostgresql_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServicePostgreSQLInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service PostgreSQL. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service PostgreSQL. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The connection string in which to authenticate with PostgreSQL. + ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // The description for the Data Factory Linked Service PostgreSQL. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service PostgreSQL. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service PostgreSQL. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type LinkedServicePostgreSQLObservation struct { // A map of additional properties to associate with the Data Factory Linked Service PostgreSQL. @@ -85,6 +106,18 @@ type LinkedServicePostgreSQLParameters struct { type LinkedServicePostgreSQLSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServicePostgreSQLParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServicePostgreSQLInitParameters `json:"initProvider,omitempty"` } // LinkedServicePostgreSQLStatus defines the observed state of LinkedServicePostgreSQL. @@ -105,7 +138,7 @@ type LinkedServicePostgreSQLStatus struct { type LinkedServicePostgreSQL struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionString)",message="connectionString is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.connectionString) || has(self.initProvider.connectionString)",message="connectionString is a required parameter" Spec LinkedServicePostgreSQLSpec `json:"spec"` Status LinkedServicePostgreSQLStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicesftp_types.go b/apis/datafactory/v1beta1/zz_linkedservicesftp_types.go index 3a495c046..e06651518 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicesftp_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicesftp_types.go @@ -13,6 +13,42 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceSFTPInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The type of authentication used to connect to the web table source. Valid options are Anonymous, Basic and ClientCertificate. + AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The SFTP server hostname. + Host *string `json:"host,omitempty" tf:"host,omitempty"` + + // The host key fingerprint of the SFTP server. + HostKeyFingerprint *string `json:"hostKeyFingerprint,omitempty" tf:"host_key_fingerprint,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The TCP port number that the SFTP server uses to listen for client connection. Default value is 22. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // Whether to validate host key fingerprint while connecting. If set to false, host_key_fingerprint must also be set. + SkipHostKeyValidation *bool `json:"skipHostKeyValidation,omitempty" tf:"skip_host_key_validation,omitempty"` + + // The username used to log on to the SFTP server. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type LinkedServiceSFTPObservation struct { // A map of additional properties to associate with the Data Factory Linked Service. @@ -124,6 +160,18 @@ type LinkedServiceSFTPParameters struct { type LinkedServiceSFTPSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceSFTPParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceSFTPInitParameters `json:"initProvider,omitempty"` } // LinkedServiceSFTPStatus defines the observed state of LinkedServiceSFTP. @@ -144,11 +192,11 @@ type LinkedServiceSFTPStatus struct { type LinkedServiceSFTP struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authenticationType)",message="authenticationType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.host)",message="host is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.port)",message="port is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username)",message="username is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.authenticationType) || has(self.initProvider.authenticationType)",message="authenticationType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.host) || has(self.initProvider.host)",message="host is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.port) || has(self.initProvider.port)",message="port is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.username) || has(self.initProvider.username)",message="username is a required parameter" Spec LinkedServiceSFTPSpec `json:"spec"` Status LinkedServiceSFTPStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicesnowflake_types.go b/apis/datafactory/v1beta1/zz_linkedservicesnowflake_types.go index 292a955a0..d3496cad3 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicesnowflake_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicesnowflake_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceSnowflakeInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The connection string in which to authenticate with Snowflake. + ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A key_vault_password block as defined below. Use this argument to store Snowflake password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + KeyVaultPassword []LinkedServiceSnowflakeKeyVaultPasswordInitParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + +type LinkedServiceSnowflakeKeyVaultPasswordInitParameters struct { + + // Specifies the secret name in Azure Key Vault that stores Snowflake password. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + type LinkedServiceSnowflakeKeyVaultPasswordObservation struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. @@ -38,8 +68,8 @@ type LinkedServiceSnowflakeKeyVaultPasswordParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies the secret name in Azure Key Vault that stores Snowflake password. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } type LinkedServiceSnowflakeObservation struct { @@ -121,6 +151,18 @@ type LinkedServiceSnowflakeParameters struct { type LinkedServiceSnowflakeSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceSnowflakeParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceSnowflakeInitParameters `json:"initProvider,omitempty"` } // LinkedServiceSnowflakeStatus defines the observed state of LinkedServiceSnowflake. @@ -141,7 +183,7 @@ type LinkedServiceSnowflakeStatus struct { type LinkedServiceSnowflake struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionString)",message="connectionString is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.connectionString) || has(self.initProvider.connectionString)",message="connectionString is a required parameter" Spec LinkedServiceSnowflakeSpec `json:"spec"` Status LinkedServiceSnowflakeStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicesqlserver_types.go b/apis/datafactory/v1beta1/zz_linkedservicesqlserver_types.go index be06ce5aa..86a1994d1 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicesqlserver_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicesqlserver_types.go @@ -13,6 +13,45 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceSQLServerInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service SQL Server. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service SQL Server. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The connection string in which to authenticate with the SQL Server. Exactly one of either connection_string or key_vault_connection_string is required. + ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // The description for the Data Factory Linked Service SQL Server. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service SQL Server. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A key_vault_connection_string block as defined below. Use this argument to store SQL Server connection string in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. Exactly one of either connection_string or key_vault_connection_string is required. + KeyVaultConnectionString []LinkedServiceSQLServerKeyVaultConnectionStringInitParameters `json:"keyVaultConnectionString,omitempty" tf:"key_vault_connection_string,omitempty"` + + // A key_vault_password block as defined below. Use this argument to store SQL Server password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + KeyVaultPassword []LinkedServiceSQLServerKeyVaultPasswordInitParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service SQL Server. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The on-premises Windows authentication user name. + UserName *string `json:"userName,omitempty" tf:"user_name,omitempty"` +} + +type LinkedServiceSQLServerKeyVaultConnectionStringInitParameters struct { + + // Specifies the name of an existing Key Vault Data Factory Linked Service. + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` + + // Specifies the secret name in Azure Key Vault that stores SQL Server connection string. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + type LinkedServiceSQLServerKeyVaultConnectionStringObservation struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. @@ -25,12 +64,18 @@ type LinkedServiceSQLServerKeyVaultConnectionStringObservation struct { type LinkedServiceSQLServerKeyVaultConnectionStringParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. - // +kubebuilder:validation:Required - LinkedServiceName *string `json:"linkedServiceName" tf:"linked_service_name,omitempty"` + // +kubebuilder:validation:Optional + LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores SQL Server connection string. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + +type LinkedServiceSQLServerKeyVaultPasswordInitParameters struct { + + // Specifies the secret name in Azure Key Vault that stores SQL Server password. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } type LinkedServiceSQLServerKeyVaultPasswordObservation struct { @@ -58,8 +103,8 @@ type LinkedServiceSQLServerKeyVaultPasswordParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies the secret name in Azure Key Vault that stores SQL Server password. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } type LinkedServiceSQLServerObservation struct { @@ -155,6 +200,18 @@ type LinkedServiceSQLServerParameters struct { type LinkedServiceSQLServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceSQLServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceSQLServerInitParameters `json:"initProvider,omitempty"` } // LinkedServiceSQLServerStatus defines the observed state of LinkedServiceSQLServer. diff --git a/apis/datafactory/v1beta1/zz_linkedservicesynapse_types.go b/apis/datafactory/v1beta1/zz_linkedservicesynapse_types.go index a163c8d84..448b6812e 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicesynapse_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicesynapse_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceSynapseInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service Synapse. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service Synapse. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The connection string in which to authenticate with the Synapse. + ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // The description for the Data Factory Linked Service Synapse. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service Synapse. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A key_vault_password block as defined below. Use this argument to store Synapse password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + KeyVaultPassword []LinkedServiceSynapseKeyVaultPasswordInitParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service Synapse. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + +type LinkedServiceSynapseKeyVaultPasswordInitParameters struct { + + // Specifies the secret name in Azure Key Vault that stores Synapse password. + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` +} + type LinkedServiceSynapseKeyVaultPasswordObservation struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. @@ -38,8 +68,8 @@ type LinkedServiceSynapseKeyVaultPasswordParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies the secret name in Azure Key Vault that stores Synapse password. - // +kubebuilder:validation:Required - SecretName *string `json:"secretName" tf:"secret_name,omitempty"` + // +kubebuilder:validation:Optional + SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } type LinkedServiceSynapseObservation struct { @@ -121,6 +151,18 @@ type LinkedServiceSynapseParameters struct { type LinkedServiceSynapseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceSynapseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceSynapseInitParameters `json:"initProvider,omitempty"` } // LinkedServiceSynapseStatus defines the observed state of LinkedServiceSynapse. @@ -141,7 +183,7 @@ type LinkedServiceSynapseStatus struct { type LinkedServiceSynapse struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionString)",message="connectionString is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.connectionString) || has(self.initProvider.connectionString)",message="connectionString is a required parameter" Spec LinkedServiceSynapseSpec `json:"spec"` Status LinkedServiceSynapseStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceweb_types.go b/apis/datafactory/v1beta1/zz_linkedserviceweb_types.go index cde8bc8fe..f5efa065f 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceweb_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceweb_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LinkedServiceWebInitParameters struct { + + // A map of additional properties to associate with the Data Factory Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The type of authentication used to connect to the web table source. Valid options are Anonymous, Basic and ClientCertificate. + AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` + + // The description for the Data Factory Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The integration runtime reference to associate with the Data Factory Linked Service. + IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` + + // A map of parameters to associate with the Data Factory Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URL of the web service endpoint (e.g. https://www.microsoft.com). + URL *string `json:"url,omitempty" tf:"url,omitempty"` + + // The username for Basic authentication. Required if authentication_type sets to Basic. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type LinkedServiceWebObservation struct { // A map of additional properties to associate with the Data Factory Linked Service. @@ -103,6 +130,18 @@ type LinkedServiceWebParameters struct { type LinkedServiceWebSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceWebParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceWebInitParameters `json:"initProvider,omitempty"` } // LinkedServiceWebStatus defines the observed state of LinkedServiceWeb. @@ -123,8 +162,8 @@ type LinkedServiceWebStatus struct { type LinkedServiceWeb struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authenticationType)",message="authenticationType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url)",message="url is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.authenticationType) || has(self.initProvider.authenticationType)",message="authenticationType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || has(self.initProvider.url)",message="url is a required parameter" Spec LinkedServiceWebSpec `json:"spec"` Status LinkedServiceWebStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_managedprivateendpoint_types.go b/apis/datafactory/v1beta1/zz_managedprivateendpoint_types.go index 92b53f285..8f9be7b3f 100755 --- a/apis/datafactory/v1beta1/zz_managedprivateendpoint_types.go +++ b/apis/datafactory/v1beta1/zz_managedprivateendpoint_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagedPrivateEndpointInitParameters struct { + + // Fully qualified domain names. Changing this forces a new resource to be created. + Fqdns []*string `json:"fqdns,omitempty" tf:"fqdns,omitempty"` + + // Specifies the name which should be used for this Managed Private Endpoint. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the sub resource name which the Data Factory Private Endpoint is able to connect to. Changing this forces a new resource to be created. + SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` +} + type ManagedPrivateEndpointObservation struct { // The ID of the Data Factory on which to create the Managed Private Endpoint. Changing this forces a new resource to be created. @@ -81,6 +93,18 @@ type ManagedPrivateEndpointParameters struct { type ManagedPrivateEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagedPrivateEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagedPrivateEndpointInitParameters `json:"initProvider,omitempty"` } // ManagedPrivateEndpointStatus defines the observed state of ManagedPrivateEndpoint. @@ -101,7 +125,7 @@ type ManagedPrivateEndpointStatus struct { type ManagedPrivateEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ManagedPrivateEndpointSpec `json:"spec"` Status ManagedPrivateEndpointStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_pipeline_types.go b/apis/datafactory/v1beta1/zz_pipeline_types.go index 49d82c2fa..fb8b21b1e 100755 --- a/apis/datafactory/v1beta1/zz_pipeline_types.go +++ b/apis/datafactory/v1beta1/zz_pipeline_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PipelineInitParameters struct { + + // A JSON object that contains the activities that will be associated with the Data Factory Pipeline. + ActivitiesJSON *string `json:"activitiesJson,omitempty" tf:"activities_json,omitempty"` + + // List of tags that can be used for describing the Data Factory Pipeline. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The max number of concurrent runs for the Data Factory Pipeline. Must be between 1 and 50. + Concurrency *float64 `json:"concurrency,omitempty" tf:"concurrency,omitempty"` + + // The description for the Data Factory Pipeline. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The folder that this Pipeline is in. If not specified, the Pipeline will appear at the root level. + Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` + + // The TimeSpan value after which an Azure Monitoring Metric is fired. + MoniterMetricsAfterDuration *string `json:"moniterMetricsAfterDuration,omitempty" tf:"moniter_metrics_after_duration,omitempty"` + + // A map of parameters to associate with the Data Factory Pipeline. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A map of variables to associate with the Data Factory Pipeline. + Variables map[string]*string `json:"variables,omitempty" tf:"variables,omitempty"` +} + type PipelineObservation struct { // A JSON object that contains the activities that will be associated with the Data Factory Pipeline. @@ -99,6 +126,18 @@ type PipelineParameters struct { type PipelineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PipelineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PipelineInitParameters `json:"initProvider,omitempty"` } // PipelineStatus defines the observed state of Pipeline. diff --git a/apis/datafactory/v1beta1/zz_triggerblobevent_types.go b/apis/datafactory/v1beta1/zz_triggerblobevent_types.go index 7185e1905..1e862de7d 100755 --- a/apis/datafactory/v1beta1/zz_triggerblobevent_types.go +++ b/apis/datafactory/v1beta1/zz_triggerblobevent_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TriggerBlobEventInitParameters struct { + + // Specifies if the Data Factory Blob Event Trigger is activated. Defaults to true. + Activated *bool `json:"activated,omitempty" tf:"activated,omitempty"` + + // A map of additional properties to associate with the Data Factory Blob Event Trigger. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Blob Event Trigger. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The pattern that blob path starts with for trigger to fire. + BlobPathBeginsWith *string `json:"blobPathBeginsWith,omitempty" tf:"blob_path_begins_with,omitempty"` + + // The pattern that blob path ends with for trigger to fire. + BlobPathEndsWith *string `json:"blobPathEndsWith,omitempty" tf:"blob_path_ends_with,omitempty"` + + // The description for the Data Factory Blob Event Trigger. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // List of events that will fire this trigger. Possible values are Microsoft.Storage.BlobCreated and Microsoft.Storage.BlobDeleted. + Events []*string `json:"events,omitempty" tf:"events,omitempty"` + + // are blobs with zero bytes ignored? + IgnoreEmptyBlobs *bool `json:"ignoreEmptyBlobs,omitempty" tf:"ignore_empty_blobs,omitempty"` + + // One or more pipeline blocks as defined below. + Pipeline []TriggerBlobEventPipelineInitParameters `json:"pipeline,omitempty" tf:"pipeline,omitempty"` +} + type TriggerBlobEventObservation struct { // Specifies if the Data Factory Blob Event Trigger is activated. Defaults to true. @@ -119,6 +149,12 @@ type TriggerBlobEventParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` } +type TriggerBlobEventPipelineInitParameters struct { + + // The Data Factory Pipeline parameters that the trigger will act on. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type TriggerBlobEventPipelineObservation struct { // The Data Factory Pipeline name that the trigger will act on. @@ -152,6 +188,18 @@ type TriggerBlobEventPipelineParameters struct { type TriggerBlobEventSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TriggerBlobEventParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TriggerBlobEventInitParameters `json:"initProvider,omitempty"` } // TriggerBlobEventStatus defines the observed state of TriggerBlobEvent. @@ -172,8 +220,8 @@ type TriggerBlobEventStatus struct { type TriggerBlobEvent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.events)",message="events is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.pipeline)",message="pipeline is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.events) || has(self.initProvider.events)",message="events is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.pipeline) || has(self.initProvider.pipeline)",message="pipeline is a required parameter" Spec TriggerBlobEventSpec `json:"spec"` Status TriggerBlobEventStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_triggercustomevent_types.go b/apis/datafactory/v1beta1/zz_triggercustomevent_types.go index cb33761e1..056c09661 100755 --- a/apis/datafactory/v1beta1/zz_triggercustomevent_types.go +++ b/apis/datafactory/v1beta1/zz_triggercustomevent_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TriggerCustomEventInitParameters struct { + + // Specifies if the Data Factory Custom Event Trigger is activated. Defaults to true. + Activated *bool `json:"activated,omitempty" tf:"activated,omitempty"` + + // A map of additional properties to associate with the Data Factory Custom Event Trigger. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Data Factory Custom Event Trigger. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Data Factory Custom Event Trigger. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // List of events that will fire this trigger. At least one event must be specified. + Events []*string `json:"events,omitempty" tf:"events,omitempty"` + + // One or more pipeline blocks as defined below. + Pipeline []TriggerCustomEventPipelineInitParameters `json:"pipeline,omitempty" tf:"pipeline,omitempty"` + + // The pattern that event subject starts with for trigger to fire. + SubjectBeginsWith *string `json:"subjectBeginsWith,omitempty" tf:"subject_begins_with,omitempty"` + + // The pattern that event subject ends with for trigger to fire. + SubjectEndsWith *string `json:"subjectEndsWith,omitempty" tf:"subject_ends_with,omitempty"` +} + type TriggerCustomEventObservation struct { // Specifies if the Data Factory Custom Event Trigger is activated. Defaults to true. @@ -112,6 +139,12 @@ type TriggerCustomEventParameters struct { SubjectEndsWith *string `json:"subjectEndsWith,omitempty" tf:"subject_ends_with,omitempty"` } +type TriggerCustomEventPipelineInitParameters struct { + + // The Data Factory Pipeline parameters that the trigger will act on. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type TriggerCustomEventPipelineObservation struct { // The Data Factory Pipeline name that the trigger will act on. @@ -145,6 +178,18 @@ type TriggerCustomEventPipelineParameters struct { type TriggerCustomEventSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TriggerCustomEventParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TriggerCustomEventInitParameters `json:"initProvider,omitempty"` } // TriggerCustomEventStatus defines the observed state of TriggerCustomEvent. @@ -165,8 +210,8 @@ type TriggerCustomEventStatus struct { type TriggerCustomEvent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.events)",message="events is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.pipeline)",message="pipeline is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.events) || has(self.initProvider.events)",message="events is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.pipeline) || has(self.initProvider.pipeline)",message="pipeline is a required parameter" Spec TriggerCustomEventSpec `json:"spec"` Status TriggerCustomEventStatus `json:"status,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_triggerschedule_types.go b/apis/datafactory/v1beta1/zz_triggerschedule_types.go index 5320dae91..48d669aff 100755 --- a/apis/datafactory/v1beta1/zz_triggerschedule_types.go +++ b/apis/datafactory/v1beta1/zz_triggerschedule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MonthlyInitParameters struct { + + // The occurrence of the specified day during the month. For example, a monthly property with weekday and week values of Sunday, -1 means the last Sunday of the month. + Week *float64 `json:"week,omitempty" tf:"week,omitempty"` + + // The day of the week on which the trigger runs. For example, a monthly property with a weekday value of Sunday means every Sunday of the month. + Weekday *string `json:"weekday,omitempty" tf:"weekday,omitempty"` +} + type MonthlyObservation struct { // The occurrence of the specified day during the month. For example, a monthly property with weekday and week values of Sunday, -1 means the last Sunday of the month. @@ -29,8 +38,26 @@ type MonthlyParameters struct { Week *float64 `json:"week,omitempty" tf:"week,omitempty"` // The day of the week on which the trigger runs. For example, a monthly property with a weekday value of Sunday means every Sunday of the month. - // +kubebuilder:validation:Required - Weekday *string `json:"weekday" tf:"weekday,omitempty"` + // +kubebuilder:validation:Optional + Weekday *string `json:"weekday,omitempty" tf:"weekday,omitempty"` +} + +type ScheduleInitParameters struct { + + // Day(s) of the month on which the trigger is scheduled. This value can be specified with a monthly frequency only. + DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` + + // Days of the week on which the trigger is scheduled. This value can be specified only with a weekly frequency. + DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` + + // Hours of the day on which the trigger is scheduled. + Hours []*float64 `json:"hours,omitempty" tf:"hours,omitempty"` + + // Minutes of the hour on which the trigger is scheduled. + Minutes []*float64 `json:"minutes,omitempty" tf:"minutes,omitempty"` + + // A monthly block as documented below, which specifies the days of the month on which the trigger is scheduled. The value can be specified only with a monthly frequency. + Monthly []MonthlyInitParameters `json:"monthly,omitempty" tf:"monthly,omitempty"` } type ScheduleObservation struct { @@ -74,6 +101,42 @@ type ScheduleParameters struct { Monthly []MonthlyParameters `json:"monthly,omitempty" tf:"monthly,omitempty"` } +type TriggerScheduleInitParameters struct { + + // Specifies if the Data Factory Schedule Trigger is activated. Defaults to true. + Activated *bool `json:"activated,omitempty" tf:"activated,omitempty"` + + // List of tags that can be used for describing the Data Factory Schedule Trigger. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The Schedule Trigger's description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The time the Schedule Trigger should end. The time will be represented in UTC. + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` + + // The trigger frequency. Valid values include Minute, Hour, Day, Week, Month. Defaults to Minute. + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // The interval for how often the trigger occurs. This defaults to 1. + Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` + + // block as defined below. + Pipeline []TriggerSchedulePipelineInitParameters `json:"pipeline,omitempty" tf:"pipeline,omitempty"` + + // The pipeline parameters that the trigger will act upon. + PipelineParameters map[string]*string `json:"pipelineParameters,omitempty" tf:"pipeline_parameters,omitempty"` + + // A schedule block as defined below, which further specifies the recurrence schedule for the trigger. A schedule is capable of limiting or increasing the number of trigger executions specified by the frequency and interval properties. + Schedule []ScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` + + // The time the Schedule Trigger will start. This defaults to the current time. The time will be represented in UTC. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` + + // The timezone of the start/end time. + TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` +} + type TriggerScheduleObservation struct { // Specifies if the Data Factory Schedule Trigger is activated. Defaults to true. @@ -193,6 +256,15 @@ type TriggerScheduleParameters struct { TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } +type TriggerSchedulePipelineInitParameters struct { + + // Reference pipeline name. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The pipeline parameters that the trigger will act upon. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type TriggerSchedulePipelineObservation struct { // Reference pipeline name. @@ -205,8 +277,8 @@ type TriggerSchedulePipelineObservation struct { type TriggerSchedulePipelineParameters struct { // Reference pipeline name. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The pipeline parameters that the trigger will act upon. // +kubebuilder:validation:Optional @@ -217,6 +289,18 @@ type TriggerSchedulePipelineParameters struct { type TriggerScheduleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TriggerScheduleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TriggerScheduleInitParameters `json:"initProvider,omitempty"` } // TriggerScheduleStatus defines the observed state of TriggerSchedule. diff --git a/apis/datamigration/v1beta1/zz_databasemigrationproject_types.go b/apis/datamigration/v1beta1/zz_databasemigrationproject_types.go index b87a70146..0fa094f30 100755 --- a/apis/datamigration/v1beta1/zz_databasemigrationproject_types.go +++ b/apis/datamigration/v1beta1/zz_databasemigrationproject_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DatabaseMigrationProjectInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specify the name of the database migration project. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The platform type of the migration source. Currently only support: SQL(on-premises SQL Server). Changing this forces a new resource to be created. + SourcePlatform *string `json:"sourcePlatform,omitempty" tf:"source_platform,omitempty"` + + // A mapping of tags to assigned to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The platform type of the migration target. Currently only support: SQLDB(Azure SQL Database). Changing this forces a new resource to be created. + TargetPlatform *string `json:"targetPlatform,omitempty" tf:"target_platform,omitempty"` +} + type DatabaseMigrationProjectObservation struct { // The ID of Database Migration Project. @@ -94,6 +112,18 @@ type DatabaseMigrationProjectParameters struct { type DatabaseMigrationProjectSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DatabaseMigrationProjectParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DatabaseMigrationProjectInitParameters `json:"initProvider,omitempty"` } // DatabaseMigrationProjectStatus defines the observed state of DatabaseMigrationProject. @@ -114,10 +144,10 @@ type DatabaseMigrationProjectStatus struct { type DatabaseMigrationProject struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sourcePlatform)",message="sourcePlatform is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetPlatform)",message="targetPlatform is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sourcePlatform) || has(self.initProvider.sourcePlatform)",message="sourcePlatform is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.targetPlatform) || has(self.initProvider.targetPlatform)",message="targetPlatform is a required parameter" Spec DatabaseMigrationProjectSpec `json:"spec"` Status DatabaseMigrationProjectStatus `json:"status,omitempty"` } diff --git a/apis/datamigration/v1beta1/zz_databasemigrationservice_types.go b/apis/datamigration/v1beta1/zz_databasemigrationservice_types.go index 21fc58c7e..c3045484a 100755 --- a/apis/datamigration/v1beta1/zz_databasemigrationservice_types.go +++ b/apis/datamigration/v1beta1/zz_databasemigrationservice_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DatabaseMigrationServiceInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specify the name of the database migration service. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The SKU name of the database migration service. Possible values are Premium_4vCores, Standard_1vCores, Standard_2vCores and Standard_4vCores. Changing this forces a new resource to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assigned to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DatabaseMigrationServiceObservation struct { // The ID of Database Migration Service. @@ -87,6 +102,18 @@ type DatabaseMigrationServiceParameters struct { type DatabaseMigrationServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DatabaseMigrationServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DatabaseMigrationServiceInitParameters `json:"initProvider,omitempty"` } // DatabaseMigrationServiceStatus defines the observed state of DatabaseMigrationService. @@ -107,9 +134,9 @@ type DatabaseMigrationServiceStatus struct { type DatabaseMigrationService struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec DatabaseMigrationServiceSpec `json:"spec"` Status DatabaseMigrationServiceStatus `json:"status,omitempty"` } diff --git a/apis/datamigration/v1beta1/zz_generated.deepcopy.go b/apis/datamigration/v1beta1/zz_generated.deepcopy.go index 747997abe..f297e7602 100644 --- a/apis/datamigration/v1beta1/zz_generated.deepcopy.go +++ b/apis/datamigration/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,56 @@ func (in *DatabaseMigrationProject) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DatabaseMigrationProjectInitParameters) DeepCopyInto(out *DatabaseMigrationProjectInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SourcePlatform != nil { + in, out := &in.SourcePlatform, &out.SourcePlatform + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TargetPlatform != nil { + in, out := &in.TargetPlatform, &out.TargetPlatform + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseMigrationProjectInitParameters. +func (in *DatabaseMigrationProjectInitParameters) DeepCopy() *DatabaseMigrationProjectInitParameters { + if in == nil { + return nil + } + out := new(DatabaseMigrationProjectInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DatabaseMigrationProjectList) DeepCopyInto(out *DatabaseMigrationProjectList) { *out = *in @@ -223,6 +273,7 @@ func (in *DatabaseMigrationProjectSpec) DeepCopyInto(out *DatabaseMigrationProje *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseMigrationProjectSpec. @@ -279,6 +330,51 @@ func (in *DatabaseMigrationService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DatabaseMigrationServiceInitParameters) DeepCopyInto(out *DatabaseMigrationServiceInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseMigrationServiceInitParameters. +func (in *DatabaseMigrationServiceInitParameters) DeepCopy() *DatabaseMigrationServiceInitParameters { + if in == nil { + return nil + } + out := new(DatabaseMigrationServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DatabaseMigrationServiceList) DeepCopyInto(out *DatabaseMigrationServiceList) { *out = *in @@ -451,6 +547,7 @@ func (in *DatabaseMigrationServiceSpec) DeepCopyInto(out *DatabaseMigrationServi *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseMigrationServiceSpec. diff --git a/apis/datamigration/v1beta1/zz_generated.managed.go b/apis/datamigration/v1beta1/zz_generated.managed.go index 3dfdc979a..a7fa4c626 100644 --- a/apis/datamigration/v1beta1/zz_generated.managed.go +++ b/apis/datamigration/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *DatabaseMigrationProject) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DatabaseMigrationProject. -func (mg *DatabaseMigrationProject) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DatabaseMigrationProject. +func (mg *DatabaseMigrationProject) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DatabaseMigrationProject. @@ -55,9 +55,9 @@ func (mg *DatabaseMigrationProject) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DatabaseMigrationProject. -func (mg *DatabaseMigrationProject) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DatabaseMigrationProject. +func (mg *DatabaseMigrationProject) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DatabaseMigrationProject. @@ -93,9 +93,9 @@ func (mg *DatabaseMigrationService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DatabaseMigrationService. -func (mg *DatabaseMigrationService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DatabaseMigrationService. +func (mg *DatabaseMigrationService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DatabaseMigrationService. @@ -131,9 +131,9 @@ func (mg *DatabaseMigrationService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DatabaseMigrationService. -func (mg *DatabaseMigrationService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DatabaseMigrationService. +func (mg *DatabaseMigrationService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DatabaseMigrationService. diff --git a/apis/datamigration/v1beta1/zz_generated_terraformed.go b/apis/datamigration/v1beta1/zz_generated_terraformed.go index d679fef1e..09236c5b5 100755 --- a/apis/datamigration/v1beta1/zz_generated_terraformed.go +++ b/apis/datamigration/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *DatabaseMigrationProject) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DatabaseMigrationProject +func (tr *DatabaseMigrationProject) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DatabaseMigrationProject using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DatabaseMigrationProject) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *DatabaseMigrationService) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DatabaseMigrationService +func (tr *DatabaseMigrationService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DatabaseMigrationService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DatabaseMigrationService) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/dataprotection/v1beta1/zz_backupinstanceblobstorage_types.go b/apis/dataprotection/v1beta1/zz_backupinstanceblobstorage_types.go index cb221af76..187fec4fc 100755 --- a/apis/dataprotection/v1beta1/zz_backupinstanceblobstorage_types.go +++ b/apis/dataprotection/v1beta1/zz_backupinstanceblobstorage_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupInstanceBlobStorageInitParameters struct { + + // The location of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type BackupInstanceBlobStorageObservation struct { // The ID of the Backup Policy. @@ -84,6 +90,18 @@ type BackupInstanceBlobStorageParameters struct { type BackupInstanceBlobStorageSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupInstanceBlobStorageParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupInstanceBlobStorageInitParameters `json:"initProvider,omitempty"` } // BackupInstanceBlobStorageStatus defines the observed state of BackupInstanceBlobStorage. @@ -104,7 +122,7 @@ type BackupInstanceBlobStorageStatus struct { type BackupInstanceBlobStorage struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec BackupInstanceBlobStorageSpec `json:"spec"` Status BackupInstanceBlobStorageStatus `json:"status,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_backupinstancedisk_types.go b/apis/dataprotection/v1beta1/zz_backupinstancedisk_types.go index ba49090dd..4cd61d8c5 100755 --- a/apis/dataprotection/v1beta1/zz_backupinstancedisk_types.go +++ b/apis/dataprotection/v1beta1/zz_backupinstancedisk_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupInstanceDiskInitParameters struct { + + // The Azure Region where the Backup Instance Disk should exist. Changing this forces a new Backup Instance Disk to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type BackupInstanceDiskObservation struct { // The ID of the Backup Policy. @@ -100,6 +106,18 @@ type BackupInstanceDiskParameters struct { type BackupInstanceDiskSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupInstanceDiskParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupInstanceDiskInitParameters `json:"initProvider,omitempty"` } // BackupInstanceDiskStatus defines the observed state of BackupInstanceDisk. @@ -120,7 +138,7 @@ type BackupInstanceDiskStatus struct { type BackupInstanceDisk struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec BackupInstanceDiskSpec `json:"spec"` Status BackupInstanceDiskStatus `json:"status,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_backupinstancepostgresql_types.go b/apis/dataprotection/v1beta1/zz_backupinstancepostgresql_types.go index cd90c3da8..74fbbaa76 100755 --- a/apis/dataprotection/v1beta1/zz_backupinstancepostgresql_types.go +++ b/apis/dataprotection/v1beta1/zz_backupinstancepostgresql_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupInstancePostgreSQLInitParameters struct { + + // The location of the source database. Changing this forces a new Backup Instance PostgreSQL to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type BackupInstancePostgreSQLObservation struct { // The ID of the Backup Policy. @@ -101,6 +107,18 @@ type BackupInstancePostgreSQLParameters struct { type BackupInstancePostgreSQLSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupInstancePostgreSQLParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupInstancePostgreSQLInitParameters `json:"initProvider,omitempty"` } // BackupInstancePostgreSQLStatus defines the observed state of BackupInstancePostgreSQL. @@ -121,7 +139,7 @@ type BackupInstancePostgreSQLStatus struct { type BackupInstancePostgreSQL struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec BackupInstancePostgreSQLSpec `json:"spec"` Status BackupInstancePostgreSQLStatus `json:"status,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_backuppolicyblobstorage_types.go b/apis/dataprotection/v1beta1/zz_backuppolicyblobstorage_types.go index 1242a7fae..3b9c0b0d1 100755 --- a/apis/dataprotection/v1beta1/zz_backuppolicyblobstorage_types.go +++ b/apis/dataprotection/v1beta1/zz_backuppolicyblobstorage_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupPolicyBlobStorageInitParameters struct { + + // Duration of deletion after given timespan. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy Blob Storage to be created. + RetentionDuration *string `json:"retentionDuration,omitempty" tf:"retention_duration,omitempty"` +} + type BackupPolicyBlobStorageObservation struct { // The ID of the Backup Policy Blob Storage. @@ -50,6 +56,18 @@ type BackupPolicyBlobStorageParameters struct { type BackupPolicyBlobStorageSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupPolicyBlobStorageParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupPolicyBlobStorageInitParameters `json:"initProvider,omitempty"` } // BackupPolicyBlobStorageStatus defines the observed state of BackupPolicyBlobStorage. @@ -70,7 +88,7 @@ type BackupPolicyBlobStorageStatus struct { type BackupPolicyBlobStorage struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.retentionDuration)",message="retentionDuration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.retentionDuration) || has(self.initProvider.retentionDuration)",message="retentionDuration is a required parameter" Spec BackupPolicyBlobStorageSpec `json:"spec"` Status BackupPolicyBlobStorageStatus `json:"status,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_backuppolicydisk_types.go b/apis/dataprotection/v1beta1/zz_backuppolicydisk_types.go index b5d41d166..f1a18a9e1 100755 --- a/apis/dataprotection/v1beta1/zz_backuppolicydisk_types.go +++ b/apis/dataprotection/v1beta1/zz_backuppolicydisk_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupPolicyDiskInitParameters struct { + + // Specifies a list of repeating time interval. It should follow ISO 8601 repeating time interval . Changing this forces a new Backup Policy Disk to be created. + BackupRepeatingTimeIntervals []*string `json:"backupRepeatingTimeIntervals,omitempty" tf:"backup_repeating_time_intervals,omitempty"` + + // The duration of default retention rule. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy Disk to be created. + DefaultRetentionDuration *string `json:"defaultRetentionDuration,omitempty" tf:"default_retention_duration,omitempty"` + + // One or more retention_rule blocks as defined below. Changing this forces a new Backup Policy Disk to be created. + RetentionRule []RetentionRuleInitParameters `json:"retentionRule,omitempty" tf:"retention_rule,omitempty"` +} + type BackupPolicyDiskObservation struct { // Specifies a list of repeating time interval. It should follow ISO 8601 repeating time interval . Changing this forces a new Backup Policy Disk to be created. @@ -60,6 +72,12 @@ type BackupPolicyDiskParameters struct { VaultIDSelector *v1.Selector `json:"vaultIdSelector,omitempty" tf:"-"` } +type CriteriaInitParameters struct { + + // Possible values are FirstOfDay and FirstOfWeek. Changing this forces a new Backup Policy Disk to be created. + AbsoluteCriteria *string `json:"absoluteCriteria,omitempty" tf:"absolute_criteria,omitempty"` +} + type CriteriaObservation struct { // Possible values are FirstOfDay and FirstOfWeek. Changing this forces a new Backup Policy Disk to be created. @@ -73,6 +91,21 @@ type CriteriaParameters struct { AbsoluteCriteria *string `json:"absoluteCriteria,omitempty" tf:"absolute_criteria,omitempty"` } +type RetentionRuleInitParameters struct { + + // A criteria block as defined below. Changing this forces a new Backup Policy Disk to be created. + Criteria []CriteriaInitParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` + + // Duration of deletion after given timespan. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy Disk to be created. + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` + + // The name which should be used for this retention rule. Changing this forces a new Backup Policy Disk to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Retention Tag priority. Changing this forces a new Backup Policy Disk to be created. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` +} + type RetentionRuleObservation struct { // A criteria block as defined below. Changing this forces a new Backup Policy Disk to be created. @@ -91,26 +124,38 @@ type RetentionRuleObservation struct { type RetentionRuleParameters struct { // A criteria block as defined below. Changing this forces a new Backup Policy Disk to be created. - // +kubebuilder:validation:Required - Criteria []CriteriaParameters `json:"criteria" tf:"criteria,omitempty"` + // +kubebuilder:validation:Optional + Criteria []CriteriaParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` // Duration of deletion after given timespan. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy Disk to be created. - // +kubebuilder:validation:Required - Duration *string `json:"duration" tf:"duration,omitempty"` + // +kubebuilder:validation:Optional + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // The name which should be used for this retention rule. Changing this forces a new Backup Policy Disk to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Retention Tag priority. Changing this forces a new Backup Policy Disk to be created. - // +kubebuilder:validation:Required - Priority *float64 `json:"priority" tf:"priority,omitempty"` + // +kubebuilder:validation:Optional + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` } // BackupPolicyDiskSpec defines the desired state of BackupPolicyDisk type BackupPolicyDiskSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupPolicyDiskParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupPolicyDiskInitParameters `json:"initProvider,omitempty"` } // BackupPolicyDiskStatus defines the observed state of BackupPolicyDisk. @@ -131,8 +176,8 @@ type BackupPolicyDiskStatus struct { type BackupPolicyDisk struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backupRepeatingTimeIntervals)",message="backupRepeatingTimeIntervals is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultRetentionDuration)",message="defaultRetentionDuration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backupRepeatingTimeIntervals) || has(self.initProvider.backupRepeatingTimeIntervals)",message="backupRepeatingTimeIntervals is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.defaultRetentionDuration) || has(self.initProvider.defaultRetentionDuration)",message="defaultRetentionDuration is a required parameter" Spec BackupPolicyDiskSpec `json:"spec"` Status BackupPolicyDiskStatus `json:"status,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_backuppolicypostgresql_types.go b/apis/dataprotection/v1beta1/zz_backuppolicypostgresql_types.go index bcb556dcf..a9d44ef23 100755 --- a/apis/dataprotection/v1beta1/zz_backuppolicypostgresql_types.go +++ b/apis/dataprotection/v1beta1/zz_backuppolicypostgresql_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupPolicyPostgreSQLInitParameters struct { + + // Specifies a list of repeating time interval. It supports weekly back. It should follow ISO 8601 repeating time interval. Changing this forces a new Backup Policy PostgreSQL to be created. + BackupRepeatingTimeIntervals []*string `json:"backupRepeatingTimeIntervals,omitempty" tf:"backup_repeating_time_intervals,omitempty"` + + // The duration of default retention rule. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy PostgreSQL to be created. + DefaultRetentionDuration *string `json:"defaultRetentionDuration,omitempty" tf:"default_retention_duration,omitempty"` + + // One or more retention_rule blocks as defined below. Changing this forces a new Backup Policy PostgreSQL to be created. + RetentionRule []BackupPolicyPostgreSQLRetentionRuleInitParameters `json:"retentionRule,omitempty" tf:"retention_rule,omitempty"` +} + type BackupPolicyPostgreSQLObservation struct { // Specifies a list of repeating time interval. It supports weekly back. It should follow ISO 8601 repeating time interval. Changing this forces a new Backup Policy PostgreSQL to be created. @@ -75,6 +87,21 @@ type BackupPolicyPostgreSQLParameters struct { VaultNameSelector *v1.Selector `json:"vaultNameSelector,omitempty" tf:"-"` } +type BackupPolicyPostgreSQLRetentionRuleInitParameters struct { + + // A criteria block as defined below. Changing this forces a new Backup Policy PostgreSQL to be created. + Criteria []RetentionRuleCriteriaInitParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` + + // Duration after which the backup is deleted. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy PostgreSQL to be created. + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` + + // The name which should be used for this retention rule. Changing this forces a new Backup Policy PostgreSQL to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the priority of the rule. The priority number must be unique for each rule. The lower the priority number, the higher the priority of the rule. Changing this forces a new Backup Policy PostgreSQL to be created. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` +} + type BackupPolicyPostgreSQLRetentionRuleObservation struct { // A criteria block as defined below. Changing this forces a new Backup Policy PostgreSQL to be created. @@ -93,20 +120,38 @@ type BackupPolicyPostgreSQLRetentionRuleObservation struct { type BackupPolicyPostgreSQLRetentionRuleParameters struct { // A criteria block as defined below. Changing this forces a new Backup Policy PostgreSQL to be created. - // +kubebuilder:validation:Required - Criteria []RetentionRuleCriteriaParameters `json:"criteria" tf:"criteria,omitempty"` + // +kubebuilder:validation:Optional + Criteria []RetentionRuleCriteriaParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` // Duration after which the backup is deleted. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy PostgreSQL to be created. - // +kubebuilder:validation:Required - Duration *string `json:"duration" tf:"duration,omitempty"` + // +kubebuilder:validation:Optional + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // The name which should be used for this retention rule. Changing this forces a new Backup Policy PostgreSQL to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the priority of the rule. The priority number must be unique for each rule. The lower the priority number, the higher the priority of the rule. Changing this forces a new Backup Policy PostgreSQL to be created. - // +kubebuilder:validation:Required - Priority *float64 `json:"priority" tf:"priority,omitempty"` + // +kubebuilder:validation:Optional + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` +} + +type RetentionRuleCriteriaInitParameters struct { + + // Possible values are AllBackup, FirstOfDay, FirstOfWeek, FirstOfMonth and FirstOfYear. These values mean the first successful backup of the day/week/month/year. Changing this forces a new Backup Policy PostgreSQL to be created. + AbsoluteCriteria *string `json:"absoluteCriteria,omitempty" tf:"absolute_criteria,omitempty"` + + // Possible values are Monday, Tuesday, Thursday, Friday, Saturday and Sunday. Changing this forces a new Backup Policy PostgreSQL to be created. + DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` + + // Possible values are January, February, March, April, May, June, July, August, September, October, November and December. Changing this forces a new Backup Policy PostgreSQL to be created. + MonthsOfYear []*string `json:"monthsOfYear,omitempty" tf:"months_of_year,omitempty"` + + // Specifies a list of backup times for backup in the RFC3339 format. Changing this forces a new Backup Policy PostgreSQL to be created. + ScheduledBackupTimes []*string `json:"scheduledBackupTimes,omitempty" tf:"scheduled_backup_times,omitempty"` + + // Possible values are First, Second, Third, Fourth and Last. Changing this forces a new Backup Policy PostgreSQL to be created. + WeeksOfMonth []*string `json:"weeksOfMonth,omitempty" tf:"weeks_of_month,omitempty"` } type RetentionRuleCriteriaObservation struct { @@ -154,6 +199,18 @@ type RetentionRuleCriteriaParameters struct { type BackupPolicyPostgreSQLSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupPolicyPostgreSQLParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupPolicyPostgreSQLInitParameters `json:"initProvider,omitempty"` } // BackupPolicyPostgreSQLStatus defines the observed state of BackupPolicyPostgreSQL. @@ -174,8 +231,8 @@ type BackupPolicyPostgreSQLStatus struct { type BackupPolicyPostgreSQL struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backupRepeatingTimeIntervals)",message="backupRepeatingTimeIntervals is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultRetentionDuration)",message="defaultRetentionDuration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backupRepeatingTimeIntervals) || has(self.initProvider.backupRepeatingTimeIntervals)",message="backupRepeatingTimeIntervals is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.defaultRetentionDuration) || has(self.initProvider.defaultRetentionDuration)",message="defaultRetentionDuration is a required parameter" Spec BackupPolicyPostgreSQLSpec `json:"spec"` Status BackupPolicyPostgreSQLStatus `json:"status,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_backupvault_types.go b/apis/dataprotection/v1beta1/zz_backupvault_types.go index 6ed3de5ab..b91c88b73 100755 --- a/apis/dataprotection/v1beta1/zz_backupvault_types.go +++ b/apis/dataprotection/v1beta1/zz_backupvault_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupVaultInitParameters struct { + + // Specifies the type of the data store. Possible values are ArchiveStore, SnapshotStore and VaultStore. Changing this forces a new resource to be created. + DatastoreType *string `json:"datastoreType,omitempty" tf:"datastore_type,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Backup Vault should exist. Changing this forces a new Backup Vault to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the backup storage redundancy. Possible values are GeoRedundant and LocallyRedundant. Changing this forces a new Backup Vault to be created. + Redundancy *string `json:"redundancy,omitempty" tf:"redundancy,omitempty"` + + // A mapping of tags which should be assigned to the Backup Vault. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type BackupVaultObservation struct { // Specifies the type of the data store. Possible values are ArchiveStore, SnapshotStore and VaultStore. Changing this forces a new resource to be created. @@ -73,6 +91,12 @@ type BackupVaultParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IdentityInitParameters struct { + + // Specifies the type of Managed Service Identity that should be configured on this Backup Vault. The only possible value is SystemAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // The Principal ID for the Service Principal associated with the Identity of this Backup Vault. @@ -88,14 +112,26 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this Backup Vault. The only possible value is SystemAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // BackupVaultSpec defines the desired state of BackupVault type BackupVaultSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupVaultParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupVaultInitParameters `json:"initProvider,omitempty"` } // BackupVaultStatus defines the observed state of BackupVault. @@ -116,9 +152,9 @@ type BackupVaultStatus struct { type BackupVault struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.datastoreType)",message="datastoreType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.redundancy)",message="redundancy is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.datastoreType) || has(self.initProvider.datastoreType)",message="datastoreType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.redundancy) || has(self.initProvider.redundancy)",message="redundancy is a required parameter" Spec BackupVaultSpec `json:"spec"` Status BackupVaultStatus `json:"status,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_generated.deepcopy.go b/apis/dataprotection/v1beta1/zz_generated.deepcopy.go index e5c5eee14..5d45531e2 100644 --- a/apis/dataprotection/v1beta1/zz_generated.deepcopy.go +++ b/apis/dataprotection/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,26 @@ func (in *BackupInstanceBlobStorage) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupInstanceBlobStorageInitParameters) DeepCopyInto(out *BackupInstanceBlobStorageInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupInstanceBlobStorageInitParameters. +func (in *BackupInstanceBlobStorageInitParameters) DeepCopy() *BackupInstanceBlobStorageInitParameters { + if in == nil { + return nil + } + out := new(BackupInstanceBlobStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupInstanceBlobStorageList) DeepCopyInto(out *BackupInstanceBlobStorageList) { *out = *in @@ -183,6 +203,7 @@ func (in *BackupInstanceBlobStorageSpec) DeepCopyInto(out *BackupInstanceBlobSto *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupInstanceBlobStorageSpec. @@ -239,6 +260,26 @@ func (in *BackupInstanceDisk) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupInstanceDiskInitParameters) DeepCopyInto(out *BackupInstanceDiskInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupInstanceDiskInitParameters. +func (in *BackupInstanceDiskInitParameters) DeepCopy() *BackupInstanceDiskInitParameters { + if in == nil { + return nil + } + out := new(BackupInstanceDiskInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupInstanceDiskList) DeepCopyInto(out *BackupInstanceDiskList) { *out = *in @@ -401,6 +442,7 @@ func (in *BackupInstanceDiskSpec) DeepCopyInto(out *BackupInstanceDiskSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupInstanceDiskSpec. @@ -457,6 +499,26 @@ func (in *BackupInstancePostgreSQL) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupInstancePostgreSQLInitParameters) DeepCopyInto(out *BackupInstancePostgreSQLInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupInstancePostgreSQLInitParameters. +func (in *BackupInstancePostgreSQLInitParameters) DeepCopy() *BackupInstancePostgreSQLInitParameters { + if in == nil { + return nil + } + out := new(BackupInstancePostgreSQLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupInstancePostgreSQLList) DeepCopyInto(out *BackupInstancePostgreSQLList) { *out = *in @@ -619,6 +681,7 @@ func (in *BackupInstancePostgreSQLSpec) DeepCopyInto(out *BackupInstancePostgreS *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupInstancePostgreSQLSpec. @@ -675,6 +738,26 @@ func (in *BackupPolicyBlobStorage) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyBlobStorageInitParameters) DeepCopyInto(out *BackupPolicyBlobStorageInitParameters) { + *out = *in + if in.RetentionDuration != nil { + in, out := &in.RetentionDuration, &out.RetentionDuration + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyBlobStorageInitParameters. +func (in *BackupPolicyBlobStorageInitParameters) DeepCopy() *BackupPolicyBlobStorageInitParameters { + if in == nil { + return nil + } + out := new(BackupPolicyBlobStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupPolicyBlobStorageList) DeepCopyInto(out *BackupPolicyBlobStorageList) { *out = *in @@ -777,6 +860,7 @@ func (in *BackupPolicyBlobStorageSpec) DeepCopyInto(out *BackupPolicyBlobStorage *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyBlobStorageSpec. @@ -833,6 +917,44 @@ func (in *BackupPolicyDisk) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyDiskInitParameters) DeepCopyInto(out *BackupPolicyDiskInitParameters) { + *out = *in + if in.BackupRepeatingTimeIntervals != nil { + in, out := &in.BackupRepeatingTimeIntervals, &out.BackupRepeatingTimeIntervals + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultRetentionDuration != nil { + in, out := &in.DefaultRetentionDuration, &out.DefaultRetentionDuration + *out = new(string) + **out = **in + } + if in.RetentionRule != nil { + in, out := &in.RetentionRule, &out.RetentionRule + *out = make([]RetentionRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyDiskInitParameters. +func (in *BackupPolicyDiskInitParameters) DeepCopy() *BackupPolicyDiskInitParameters { + if in == nil { + return nil + } + out := new(BackupPolicyDiskInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupPolicyDiskList) DeepCopyInto(out *BackupPolicyDiskList) { *out = *in @@ -971,6 +1093,7 @@ func (in *BackupPolicyDiskSpec) DeepCopyInto(out *BackupPolicyDiskSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyDiskSpec. @@ -1027,6 +1150,44 @@ func (in *BackupPolicyPostgreSQL) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyPostgreSQLInitParameters) DeepCopyInto(out *BackupPolicyPostgreSQLInitParameters) { + *out = *in + if in.BackupRepeatingTimeIntervals != nil { + in, out := &in.BackupRepeatingTimeIntervals, &out.BackupRepeatingTimeIntervals + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultRetentionDuration != nil { + in, out := &in.DefaultRetentionDuration, &out.DefaultRetentionDuration + *out = new(string) + **out = **in + } + if in.RetentionRule != nil { + in, out := &in.RetentionRule, &out.RetentionRule + *out = make([]BackupPolicyPostgreSQLRetentionRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyPostgreSQLInitParameters. +func (in *BackupPolicyPostgreSQLInitParameters) DeepCopy() *BackupPolicyPostgreSQLInitParameters { + if in == nil { + return nil + } + out := new(BackupPolicyPostgreSQLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupPolicyPostgreSQLList) DeepCopyInto(out *BackupPolicyPostgreSQLList) { *out = *in @@ -1180,6 +1341,43 @@ func (in *BackupPolicyPostgreSQLParameters) DeepCopy() *BackupPolicyPostgreSQLPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyPostgreSQLRetentionRuleInitParameters) DeepCopyInto(out *BackupPolicyPostgreSQLRetentionRuleInitParameters) { + *out = *in + if in.Criteria != nil { + in, out := &in.Criteria, &out.Criteria + *out = make([]RetentionRuleCriteriaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Duration != nil { + in, out := &in.Duration, &out.Duration + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyPostgreSQLRetentionRuleInitParameters. +func (in *BackupPolicyPostgreSQLRetentionRuleInitParameters) DeepCopy() *BackupPolicyPostgreSQLRetentionRuleInitParameters { + if in == nil { + return nil + } + out := new(BackupPolicyPostgreSQLRetentionRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupPolicyPostgreSQLRetentionRuleObservation) DeepCopyInto(out *BackupPolicyPostgreSQLRetentionRuleObservation) { *out = *in @@ -1259,6 +1457,7 @@ func (in *BackupPolicyPostgreSQLSpec) DeepCopyInto(out *BackupPolicyPostgreSQLSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyPostgreSQLSpec. @@ -1315,6 +1514,58 @@ func (in *BackupVault) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupVaultInitParameters) DeepCopyInto(out *BackupVaultInitParameters) { + *out = *in + if in.DatastoreType != nil { + in, out := &in.DatastoreType, &out.DatastoreType + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Redundancy != nil { + in, out := &in.Redundancy, &out.Redundancy + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupVaultInitParameters. +func (in *BackupVaultInitParameters) DeepCopy() *BackupVaultInitParameters { + if in == nil { + return nil + } + out := new(BackupVaultInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupVaultList) DeepCopyInto(out *BackupVaultList) { *out = *in @@ -1481,6 +1732,7 @@ func (in *BackupVaultSpec) DeepCopyInto(out *BackupVaultSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupVaultSpec. @@ -1510,6 +1762,26 @@ func (in *BackupVaultStatus) DeepCopy() *BackupVaultStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CriteriaInitParameters) DeepCopyInto(out *CriteriaInitParameters) { + *out = *in + if in.AbsoluteCriteria != nil { + in, out := &in.AbsoluteCriteria, &out.AbsoluteCriteria + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CriteriaInitParameters. +func (in *CriteriaInitParameters) DeepCopy() *CriteriaInitParameters { + if in == nil { + return nil + } + out := new(CriteriaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CriteriaObservation) DeepCopyInto(out *CriteriaObservation) { *out = *in @@ -1550,6 +1822,26 @@ func (in *CriteriaParameters) DeepCopy() *CriteriaParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -1627,6 +1919,52 @@ func (in *ResourceGuard) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceGuardInitParameters) DeepCopyInto(out *ResourceGuardInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.VaultCriticalOperationExclusionList != nil { + in, out := &in.VaultCriticalOperationExclusionList, &out.VaultCriticalOperationExclusionList + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGuardInitParameters. +func (in *ResourceGuardInitParameters) DeepCopy() *ResourceGuardInitParameters { + if in == nil { + return nil + } + out := new(ResourceGuardInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceGuardList) DeepCopyInto(out *ResourceGuardList) { *out = *in @@ -1781,6 +2119,7 @@ func (in *ResourceGuardSpec) DeepCopyInto(out *ResourceGuardSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGuardSpec. @@ -1810,6 +2149,70 @@ func (in *ResourceGuardStatus) DeepCopy() *ResourceGuardStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RetentionRuleCriteriaInitParameters) DeepCopyInto(out *RetentionRuleCriteriaInitParameters) { + *out = *in + if in.AbsoluteCriteria != nil { + in, out := &in.AbsoluteCriteria, &out.AbsoluteCriteria + *out = new(string) + **out = **in + } + if in.DaysOfWeek != nil { + in, out := &in.DaysOfWeek, &out.DaysOfWeek + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MonthsOfYear != nil { + in, out := &in.MonthsOfYear, &out.MonthsOfYear + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScheduledBackupTimes != nil { + in, out := &in.ScheduledBackupTimes, &out.ScheduledBackupTimes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.WeeksOfMonth != nil { + in, out := &in.WeeksOfMonth, &out.WeeksOfMonth + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionRuleCriteriaInitParameters. +func (in *RetentionRuleCriteriaInitParameters) DeepCopy() *RetentionRuleCriteriaInitParameters { + if in == nil { + return nil + } + out := new(RetentionRuleCriteriaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RetentionRuleCriteriaObservation) DeepCopyInto(out *RetentionRuleCriteriaObservation) { *out = *in @@ -1938,6 +2341,43 @@ func (in *RetentionRuleCriteriaParameters) DeepCopy() *RetentionRuleCriteriaPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RetentionRuleInitParameters) DeepCopyInto(out *RetentionRuleInitParameters) { + *out = *in + if in.Criteria != nil { + in, out := &in.Criteria, &out.Criteria + *out = make([]CriteriaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Duration != nil { + in, out := &in.Duration, &out.Duration + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionRuleInitParameters. +func (in *RetentionRuleInitParameters) DeepCopy() *RetentionRuleInitParameters { + if in == nil { + return nil + } + out := new(RetentionRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RetentionRuleObservation) DeepCopyInto(out *RetentionRuleObservation) { *out = *in diff --git a/apis/dataprotection/v1beta1/zz_generated.managed.go b/apis/dataprotection/v1beta1/zz_generated.managed.go index 89aabf068..b45dc42a0 100644 --- a/apis/dataprotection/v1beta1/zz_generated.managed.go +++ b/apis/dataprotection/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *BackupInstanceBlobStorage) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupInstanceBlobStorage. -func (mg *BackupInstanceBlobStorage) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupInstanceBlobStorage. +func (mg *BackupInstanceBlobStorage) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupInstanceBlobStorage. @@ -55,9 +55,9 @@ func (mg *BackupInstanceBlobStorage) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupInstanceBlobStorage. -func (mg *BackupInstanceBlobStorage) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupInstanceBlobStorage. +func (mg *BackupInstanceBlobStorage) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupInstanceBlobStorage. @@ -93,9 +93,9 @@ func (mg *BackupInstanceDisk) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupInstanceDisk. -func (mg *BackupInstanceDisk) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupInstanceDisk. +func (mg *BackupInstanceDisk) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupInstanceDisk. @@ -131,9 +131,9 @@ func (mg *BackupInstanceDisk) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupInstanceDisk. -func (mg *BackupInstanceDisk) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupInstanceDisk. +func (mg *BackupInstanceDisk) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupInstanceDisk. @@ -169,9 +169,9 @@ func (mg *BackupInstancePostgreSQL) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupInstancePostgreSQL. -func (mg *BackupInstancePostgreSQL) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupInstancePostgreSQL. +func (mg *BackupInstancePostgreSQL) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupInstancePostgreSQL. @@ -207,9 +207,9 @@ func (mg *BackupInstancePostgreSQL) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupInstancePostgreSQL. -func (mg *BackupInstancePostgreSQL) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupInstancePostgreSQL. +func (mg *BackupInstancePostgreSQL) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupInstancePostgreSQL. @@ -245,9 +245,9 @@ func (mg *BackupPolicyBlobStorage) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupPolicyBlobStorage. -func (mg *BackupPolicyBlobStorage) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupPolicyBlobStorage. +func (mg *BackupPolicyBlobStorage) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupPolicyBlobStorage. @@ -283,9 +283,9 @@ func (mg *BackupPolicyBlobStorage) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupPolicyBlobStorage. -func (mg *BackupPolicyBlobStorage) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupPolicyBlobStorage. +func (mg *BackupPolicyBlobStorage) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupPolicyBlobStorage. @@ -321,9 +321,9 @@ func (mg *BackupPolicyDisk) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupPolicyDisk. -func (mg *BackupPolicyDisk) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupPolicyDisk. +func (mg *BackupPolicyDisk) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupPolicyDisk. @@ -359,9 +359,9 @@ func (mg *BackupPolicyDisk) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupPolicyDisk. -func (mg *BackupPolicyDisk) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupPolicyDisk. +func (mg *BackupPolicyDisk) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupPolicyDisk. @@ -397,9 +397,9 @@ func (mg *BackupPolicyPostgreSQL) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupPolicyPostgreSQL. -func (mg *BackupPolicyPostgreSQL) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupPolicyPostgreSQL. +func (mg *BackupPolicyPostgreSQL) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupPolicyPostgreSQL. @@ -435,9 +435,9 @@ func (mg *BackupPolicyPostgreSQL) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupPolicyPostgreSQL. -func (mg *BackupPolicyPostgreSQL) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupPolicyPostgreSQL. +func (mg *BackupPolicyPostgreSQL) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupPolicyPostgreSQL. @@ -473,9 +473,9 @@ func (mg *BackupVault) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupVault. -func (mg *BackupVault) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupVault. +func (mg *BackupVault) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupVault. @@ -511,9 +511,9 @@ func (mg *BackupVault) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupVault. -func (mg *BackupVault) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupVault. +func (mg *BackupVault) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupVault. @@ -549,9 +549,9 @@ func (mg *ResourceGuard) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourceGuard. -func (mg *ResourceGuard) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourceGuard. +func (mg *ResourceGuard) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourceGuard. @@ -587,9 +587,9 @@ func (mg *ResourceGuard) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourceGuard. -func (mg *ResourceGuard) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourceGuard. +func (mg *ResourceGuard) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourceGuard. diff --git a/apis/dataprotection/v1beta1/zz_generated_terraformed.go b/apis/dataprotection/v1beta1/zz_generated_terraformed.go index 844740110..9954cac4d 100755 --- a/apis/dataprotection/v1beta1/zz_generated_terraformed.go +++ b/apis/dataprotection/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *BackupInstanceBlobStorage) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupInstanceBlobStorage +func (tr *BackupInstanceBlobStorage) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupInstanceBlobStorage using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupInstanceBlobStorage) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *BackupInstanceDisk) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupInstanceDisk +func (tr *BackupInstanceDisk) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupInstanceDisk using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupInstanceDisk) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *BackupInstancePostgreSQL) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupInstancePostgreSQL +func (tr *BackupInstancePostgreSQL) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupInstancePostgreSQL using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupInstancePostgreSQL) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *BackupPolicyBlobStorage) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupPolicyBlobStorage +func (tr *BackupPolicyBlobStorage) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupPolicyBlobStorage using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupPolicyBlobStorage) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *BackupPolicyDisk) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupPolicyDisk +func (tr *BackupPolicyDisk) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupPolicyDisk using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupPolicyDisk) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *BackupPolicyPostgreSQL) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupPolicyPostgreSQL +func (tr *BackupPolicyPostgreSQL) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupPolicyPostgreSQL using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupPolicyPostgreSQL) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *BackupVault) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupVault +func (tr *BackupVault) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupVault using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupVault) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *ResourceGuard) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourceGuard +func (tr *ResourceGuard) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourceGuard using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourceGuard) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/dataprotection/v1beta1/zz_resourceguard_types.go b/apis/dataprotection/v1beta1/zz_resourceguard_types.go index 0bdb294f9..4e8579cf4 100755 --- a/apis/dataprotection/v1beta1/zz_resourceguard_types.go +++ b/apis/dataprotection/v1beta1/zz_resourceguard_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ResourceGuardInitParameters struct { + + // The Azure Region where the Resource Guard should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Resource Guard. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A list of the critical operations which are not protected by this Resource Guard. + VaultCriticalOperationExclusionList []*string `json:"vaultCriticalOperationExclusionList,omitempty" tf:"vault_critical_operation_exclusion_list,omitempty"` +} + type ResourceGuardObservation struct { // The ID of the Resource Guard. @@ -63,6 +75,18 @@ type ResourceGuardParameters struct { type ResourceGuardSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourceGuardParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourceGuardInitParameters `json:"initProvider,omitempty"` } // ResourceGuardStatus defines the observed state of ResourceGuard. @@ -83,7 +107,7 @@ type ResourceGuardStatus struct { type ResourceGuard struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ResourceGuardSpec `json:"spec"` Status ResourceGuardStatus `json:"status,omitempty"` } diff --git a/apis/datashare/v1beta1/zz_account_types.go b/apis/datashare/v1beta1/zz_account_types.go index cb63fd090..ea0b1812b 100755 --- a/apis/datashare/v1beta1/zz_account_types.go +++ b/apis/datashare/v1beta1/zz_account_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccountInitParameters struct { + + // An identity block as defined below. Changing this forces a new resource to be created. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Data Share Account should exist. Changing this forces a new Data Share Account to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Data Share Account. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type AccountObservation struct { // The ID of the Data Share Account. @@ -59,6 +71,12 @@ type AccountParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IdentityInitParameters struct { + + // Specifies the type of Managed Service Identity that should be configured on this Data Share Account. The only possible value is SystemAssigned. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // The Principal ID for the Service Principal associated with the Identity of this Data Share Account. @@ -74,14 +92,26 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this Data Share Account. The only possible value is SystemAssigned. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // AccountSpec defines the desired state of Account type AccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccountInitParameters `json:"initProvider,omitempty"` } // AccountStatus defines the observed state of Account. @@ -102,8 +132,8 @@ type AccountStatus struct { type Account struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.identity)",message="identity is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.identity) || has(self.initProvider.identity)",message="identity is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec AccountSpec `json:"spec"` Status AccountStatus `json:"status,omitempty"` } diff --git a/apis/datashare/v1beta1/zz_datasetblobstorage_types.go b/apis/datashare/v1beta1/zz_datasetblobstorage_types.go index 38d08b056..99f1cc371 100755 --- a/apis/datashare/v1beta1/zz_datasetblobstorage_types.go +++ b/apis/datashare/v1beta1/zz_datasetblobstorage_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetBlobStorageInitParameters struct { + + // The path of the file in the storage container to be shared with the receiver. Changing this forces a new Data Share Blob Storage Dataset to be created. + FilePath *string `json:"filePath,omitempty" tf:"file_path,omitempty"` + + // The path of the folder in the storage container to be shared with the receiver. Changing this forces a new Data Share Blob Storage Dataset to be created. + FolderPath *string `json:"folderPath,omitempty" tf:"folder_path,omitempty"` + + // A storage_account block as defined below. Changing this forces a new resource to be created. + StorageAccount []StorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` +} + type DataSetBlobStorageObservation struct { // The name of the storage account container to be shared with the receiver. Changing this forces a new Data Share Blob Storage Dataset to be created. @@ -79,6 +91,12 @@ type DataSetBlobStorageParameters struct { StorageAccount []StorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` } +type StorageAccountInitParameters struct { + + // The subscription id of the storage account to be shared with the receiver. Changing this forces a new Data Share Blob Storage Dataset to be created. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` +} + type StorageAccountObservation struct { // The name of the storage account to be shared with the receiver. Changing this forces a new Data Share Blob Storage Dataset to be created. @@ -120,14 +138,26 @@ type StorageAccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The subscription id of the storage account to be shared with the receiver. Changing this forces a new Data Share Blob Storage Dataset to be created. - // +kubebuilder:validation:Required - SubscriptionID *string `json:"subscriptionId" tf:"subscription_id,omitempty"` + // +kubebuilder:validation:Optional + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` } // DataSetBlobStorageSpec defines the desired state of DataSetBlobStorage type DataSetBlobStorageSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetBlobStorageParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetBlobStorageInitParameters `json:"initProvider,omitempty"` } // DataSetBlobStorageStatus defines the observed state of DataSetBlobStorage. @@ -148,7 +178,7 @@ type DataSetBlobStorageStatus struct { type DataSetBlobStorage struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccount)",message="storageAccount is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageAccount) || has(self.initProvider.storageAccount)",message="storageAccount is a required parameter" Spec DataSetBlobStorageSpec `json:"spec"` Status DataSetBlobStorageStatus `json:"status,omitempty"` } diff --git a/apis/datashare/v1beta1/zz_datasetdatalakegen2_types.go b/apis/datashare/v1beta1/zz_datasetdatalakegen2_types.go index ff18703b2..2debed7a2 100755 --- a/apis/datashare/v1beta1/zz_datasetdatalakegen2_types.go +++ b/apis/datashare/v1beta1/zz_datasetdatalakegen2_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetDataLakeGen2InitParameters struct { + + // The path of the file in the data lake file system to be shared with the receiver. Conflicts with folder_path Changing this forces a new Data Share Data Lake Gen2 Dataset to be created. + FilePath *string `json:"filePath,omitempty" tf:"file_path,omitempty"` + + // The folder path in the data lake file system to be shared with the receiver. Conflicts with file_path Changing this forces a new Data Share Data Lake Gen2 Dataset to be created. + FolderPath *string `json:"folderPath,omitempty" tf:"folder_path,omitempty"` +} + type DataSetDataLakeGen2Observation struct { // The name of the Data Share Dataset. @@ -93,6 +102,18 @@ type DataSetDataLakeGen2Parameters struct { type DataSetDataLakeGen2Spec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetDataLakeGen2Parameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetDataLakeGen2InitParameters `json:"initProvider,omitempty"` } // DataSetDataLakeGen2Status defines the observed state of DataSetDataLakeGen2. diff --git a/apis/datashare/v1beta1/zz_datasetkustocluster_types.go b/apis/datashare/v1beta1/zz_datasetkustocluster_types.go index 0026c36cd..329a17cb9 100755 --- a/apis/datashare/v1beta1/zz_datasetkustocluster_types.go +++ b/apis/datashare/v1beta1/zz_datasetkustocluster_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetKustoClusterInitParameters struct { +} + type DataSetKustoClusterObservation struct { // The name of the Data Share Dataset. @@ -66,6 +69,18 @@ type DataSetKustoClusterParameters struct { type DataSetKustoClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetKustoClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetKustoClusterInitParameters `json:"initProvider,omitempty"` } // DataSetKustoClusterStatus defines the observed state of DataSetKustoCluster. diff --git a/apis/datashare/v1beta1/zz_datasetkustodatabase_types.go b/apis/datashare/v1beta1/zz_datasetkustodatabase_types.go index b6bc7e7fb..353a92318 100755 --- a/apis/datashare/v1beta1/zz_datasetkustodatabase_types.go +++ b/apis/datashare/v1beta1/zz_datasetkustodatabase_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataSetKustoDatabaseInitParameters struct { +} + type DataSetKustoDatabaseObservation struct { // The name of the Data Share Dataset. @@ -66,6 +69,18 @@ type DataSetKustoDatabaseParameters struct { type DataSetKustoDatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataSetKustoDatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataSetKustoDatabaseInitParameters `json:"initProvider,omitempty"` } // DataSetKustoDatabaseStatus defines the observed state of DataSetKustoDatabase. diff --git a/apis/datashare/v1beta1/zz_datashare_types.go b/apis/datashare/v1beta1/zz_datashare_types.go index 79c71df33..92d52df04 100755 --- a/apis/datashare/v1beta1/zz_datashare_types.go +++ b/apis/datashare/v1beta1/zz_datashare_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataShareInitParameters struct { + + // The Data Share's description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The kind of the Data Share. Possible values are CopyBased and InPlace. Changing this forces a new Data Share to be created. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // A snapshot_schedule block as defined below. + SnapshotSchedule []SnapshotScheduleInitParameters `json:"snapshotSchedule,omitempty" tf:"snapshot_schedule,omitempty"` + + // The terms of the Data Share. + Terms *string `json:"terms,omitempty" tf:"terms,omitempty"` +} + type DataShareObservation struct { // The ID of the Data Share account in which the Data Share is created. Changing this forces a new Data Share to be created. @@ -67,6 +82,18 @@ type DataShareParameters struct { Terms *string `json:"terms,omitempty" tf:"terms,omitempty"` } +type SnapshotScheduleInitParameters struct { + + // The name of the snapshot schedule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The interval of the synchronization with the source data. Possible values are Hour and Day. + Recurrence *string `json:"recurrence,omitempty" tf:"recurrence,omitempty"` + + // The synchronization with the source data's start time. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type SnapshotScheduleObservation struct { // The name of the snapshot schedule. @@ -82,22 +109,34 @@ type SnapshotScheduleObservation struct { type SnapshotScheduleParameters struct { // The name of the snapshot schedule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The interval of the synchronization with the source data. Possible values are Hour and Day. - // +kubebuilder:validation:Required - Recurrence *string `json:"recurrence" tf:"recurrence,omitempty"` + // +kubebuilder:validation:Optional + Recurrence *string `json:"recurrence,omitempty" tf:"recurrence,omitempty"` // The synchronization with the source data's start time. - // +kubebuilder:validation:Required - StartTime *string `json:"startTime" tf:"start_time,omitempty"` + // +kubebuilder:validation:Optional + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } // DataShareSpec defines the desired state of DataShare type DataShareSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataShareParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataShareInitParameters `json:"initProvider,omitempty"` } // DataShareStatus defines the observed state of DataShare. @@ -118,7 +157,7 @@ type DataShareStatus struct { type DataShare struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.kind)",message="kind is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.kind) || has(self.initProvider.kind)",message="kind is a required parameter" Spec DataShareSpec `json:"spec"` Status DataShareStatus `json:"status,omitempty"` } diff --git a/apis/datashare/v1beta1/zz_generated.deepcopy.go b/apis/datashare/v1beta1/zz_generated.deepcopy.go index ec6d8a02e..d7f2f9e37 100644 --- a/apis/datashare/v1beta1/zz_generated.deepcopy.go +++ b/apis/datashare/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,48 @@ func (in *Account) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountInitParameters) DeepCopyInto(out *AccountInitParameters) { + *out = *in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountInitParameters. +func (in *AccountInitParameters) DeepCopy() *AccountInitParameters { + if in == nil { + return nil + } + out := new(AccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountList) DeepCopyInto(out *AccountList) { *out = *in @@ -187,6 +229,7 @@ func (in *AccountSpec) DeepCopyInto(out *AccountSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountSpec. @@ -243,6 +286,38 @@ func (in *DataSetBlobStorage) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetBlobStorageInitParameters) DeepCopyInto(out *DataSetBlobStorageInitParameters) { + *out = *in + if in.FilePath != nil { + in, out := &in.FilePath, &out.FilePath + *out = new(string) + **out = **in + } + if in.FolderPath != nil { + in, out := &in.FolderPath, &out.FolderPath + *out = new(string) + **out = **in + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]StorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetBlobStorageInitParameters. +func (in *DataSetBlobStorageInitParameters) DeepCopy() *DataSetBlobStorageInitParameters { + if in == nil { + return nil + } + out := new(DataSetBlobStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetBlobStorageList) DeepCopyInto(out *DataSetBlobStorageList) { *out = *in @@ -394,6 +469,7 @@ func (in *DataSetBlobStorageSpec) DeepCopyInto(out *DataSetBlobStorageSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetBlobStorageSpec. @@ -450,6 +526,31 @@ func (in *DataSetDataLakeGen2) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetDataLakeGen2InitParameters) DeepCopyInto(out *DataSetDataLakeGen2InitParameters) { + *out = *in + if in.FilePath != nil { + in, out := &in.FilePath, &out.FilePath + *out = new(string) + **out = **in + } + if in.FolderPath != nil { + in, out := &in.FolderPath, &out.FolderPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDataLakeGen2InitParameters. +func (in *DataSetDataLakeGen2InitParameters) DeepCopy() *DataSetDataLakeGen2InitParameters { + if in == nil { + return nil + } + out := new(DataSetDataLakeGen2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetDataLakeGen2List) DeepCopyInto(out *DataSetDataLakeGen2List) { *out = *in @@ -607,6 +708,7 @@ func (in *DataSetDataLakeGen2Spec) DeepCopyInto(out *DataSetDataLakeGen2Spec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetDataLakeGen2Spec. @@ -663,6 +765,21 @@ func (in *DataSetKustoCluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetKustoClusterInitParameters) DeepCopyInto(out *DataSetKustoClusterInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetKustoClusterInitParameters. +func (in *DataSetKustoClusterInitParameters) DeepCopy() *DataSetKustoClusterInitParameters { + if in == nil { + return nil + } + out := new(DataSetKustoClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetKustoClusterList) DeepCopyInto(out *DataSetKustoClusterList) { *out = *in @@ -785,6 +902,7 @@ func (in *DataSetKustoClusterSpec) DeepCopyInto(out *DataSetKustoClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetKustoClusterSpec. @@ -841,6 +959,21 @@ func (in *DataSetKustoDatabase) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSetKustoDatabaseInitParameters) DeepCopyInto(out *DataSetKustoDatabaseInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetKustoDatabaseInitParameters. +func (in *DataSetKustoDatabaseInitParameters) DeepCopy() *DataSetKustoDatabaseInitParameters { + if in == nil { + return nil + } + out := new(DataSetKustoDatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSetKustoDatabaseList) DeepCopyInto(out *DataSetKustoDatabaseList) { *out = *in @@ -963,6 +1096,7 @@ func (in *DataSetKustoDatabaseSpec) DeepCopyInto(out *DataSetKustoDatabaseSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSetKustoDatabaseSpec. @@ -1019,6 +1153,43 @@ func (in *DataShare) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataShareInitParameters) DeepCopyInto(out *DataShareInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.SnapshotSchedule != nil { + in, out := &in.SnapshotSchedule, &out.SnapshotSchedule + *out = make([]SnapshotScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Terms != nil { + in, out := &in.Terms, &out.Terms + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataShareInitParameters. +func (in *DataShareInitParameters) DeepCopy() *DataShareInitParameters { + if in == nil { + return nil + } + out := new(DataShareInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataShareList) DeepCopyInto(out *DataShareList) { *out = *in @@ -1155,6 +1326,7 @@ func (in *DataShareSpec) DeepCopyInto(out *DataShareSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataShareSpec. @@ -1184,6 +1356,26 @@ func (in *DataShareStatus) DeepCopy() *DataShareStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -1234,6 +1426,36 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotScheduleInitParameters) DeepCopyInto(out *SnapshotScheduleInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Recurrence != nil { + in, out := &in.Recurrence, &out.Recurrence + *out = new(string) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotScheduleInitParameters. +func (in *SnapshotScheduleInitParameters) DeepCopy() *SnapshotScheduleInitParameters { + if in == nil { + return nil + } + out := new(SnapshotScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SnapshotScheduleObservation) DeepCopyInto(out *SnapshotScheduleObservation) { *out = *in @@ -1294,6 +1516,26 @@ func (in *SnapshotScheduleParameters) DeepCopy() *SnapshotScheduleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageAccountInitParameters) DeepCopyInto(out *StorageAccountInitParameters) { + *out = *in + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageAccountInitParameters. +func (in *StorageAccountInitParameters) DeepCopy() *StorageAccountInitParameters { + if in == nil { + return nil + } + out := new(StorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageAccountObservation) DeepCopyInto(out *StorageAccountObservation) { *out = *in diff --git a/apis/datashare/v1beta1/zz_generated.managed.go b/apis/datashare/v1beta1/zz_generated.managed.go index 8f1cd1f82..b90a93712 100644 --- a/apis/datashare/v1beta1/zz_generated.managed.go +++ b/apis/datashare/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Account) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Account. -func (mg *Account) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Account. +func (mg *Account) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Account. @@ -55,9 +55,9 @@ func (mg *Account) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Account. -func (mg *Account) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Account. +func (mg *Account) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Account. @@ -93,9 +93,9 @@ func (mg *DataSetBlobStorage) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetBlobStorage. -func (mg *DataSetBlobStorage) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetBlobStorage. +func (mg *DataSetBlobStorage) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetBlobStorage. @@ -131,9 +131,9 @@ func (mg *DataSetBlobStorage) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetBlobStorage. -func (mg *DataSetBlobStorage) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetBlobStorage. +func (mg *DataSetBlobStorage) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetBlobStorage. @@ -169,9 +169,9 @@ func (mg *DataSetDataLakeGen2) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetDataLakeGen2. -func (mg *DataSetDataLakeGen2) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetDataLakeGen2. +func (mg *DataSetDataLakeGen2) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetDataLakeGen2. @@ -207,9 +207,9 @@ func (mg *DataSetDataLakeGen2) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetDataLakeGen2. -func (mg *DataSetDataLakeGen2) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetDataLakeGen2. +func (mg *DataSetDataLakeGen2) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetDataLakeGen2. @@ -245,9 +245,9 @@ func (mg *DataSetKustoCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetKustoCluster. -func (mg *DataSetKustoCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetKustoCluster. +func (mg *DataSetKustoCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetKustoCluster. @@ -283,9 +283,9 @@ func (mg *DataSetKustoCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetKustoCluster. -func (mg *DataSetKustoCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetKustoCluster. +func (mg *DataSetKustoCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetKustoCluster. @@ -321,9 +321,9 @@ func (mg *DataSetKustoDatabase) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataSetKustoDatabase. -func (mg *DataSetKustoDatabase) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataSetKustoDatabase. +func (mg *DataSetKustoDatabase) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataSetKustoDatabase. @@ -359,9 +359,9 @@ func (mg *DataSetKustoDatabase) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataSetKustoDatabase. -func (mg *DataSetKustoDatabase) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataSetKustoDatabase. +func (mg *DataSetKustoDatabase) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataSetKustoDatabase. @@ -397,9 +397,9 @@ func (mg *DataShare) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataShare. -func (mg *DataShare) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataShare. +func (mg *DataShare) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataShare. @@ -435,9 +435,9 @@ func (mg *DataShare) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataShare. -func (mg *DataShare) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataShare. +func (mg *DataShare) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataShare. diff --git a/apis/datashare/v1beta1/zz_generated_terraformed.go b/apis/datashare/v1beta1/zz_generated_terraformed.go index ef924a97c..d012979aa 100755 --- a/apis/datashare/v1beta1/zz_generated_terraformed.go +++ b/apis/datashare/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *DataShare) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataShare +func (tr *DataShare) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataShare using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataShare) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Account) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Account +func (tr *Account) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Account using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Account) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *DataSetBlobStorage) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetBlobStorage +func (tr *DataSetBlobStorage) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetBlobStorage using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetBlobStorage) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *DataSetDataLakeGen2) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetDataLakeGen2 +func (tr *DataSetDataLakeGen2) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetDataLakeGen2 using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetDataLakeGen2) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *DataSetKustoCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetKustoCluster +func (tr *DataSetKustoCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetKustoCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetKustoCluster) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *DataSetKustoDatabase) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataSetKustoDatabase +func (tr *DataSetKustoDatabase) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataSetKustoDatabase using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataSetKustoDatabase) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/dbformariadb/v1beta1/zz_configuration_types.go b/apis/dbformariadb/v1beta1/zz_configuration_types.go index 9bcb9c24f..2623566d0 100755 --- a/apis/dbformariadb/v1beta1/zz_configuration_types.go +++ b/apis/dbformariadb/v1beta1/zz_configuration_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConfigurationInitParameters struct { + + // Specifies the name of the MariaDB Configuration, which needs to be a valid MariaDB configuration name. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the value of the MariaDB Configuration. See the MariaDB documentation for valid values. Changing this forces a new resource to be created. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ConfigurationObservation struct { // The ID of the MariaDB Configuration. @@ -72,6 +81,18 @@ type ConfigurationParameters struct { type ConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ConfigurationInitParameters `json:"initProvider,omitempty"` } // ConfigurationStatus defines the observed state of Configuration. @@ -92,8 +113,8 @@ type ConfigurationStatus struct { type Configuration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value)",message="value is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.value) || has(self.initProvider.value)",message="value is a required parameter" Spec ConfigurationSpec `json:"spec"` Status ConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/dbformariadb/v1beta1/zz_database_types.go b/apis/dbformariadb/v1beta1/zz_database_types.go index 02679a87c..0e4ff7cc8 100755 --- a/apis/dbformariadb/v1beta1/zz_database_types.go +++ b/apis/dbformariadb/v1beta1/zz_database_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DatabaseInitParameters struct { + + // Specifies the Charset for the MariaDB Database, which needs to be a valid MariaDB Charset. Changing this forces a new resource to be created. + Charset *string `json:"charset,omitempty" tf:"charset,omitempty"` + + // Specifies the Collation for the MariaDB Database, which needs to be a valid MariaDB Collation. Changing this forces a new resource to be created. + Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` +} + type DatabaseObservation struct { // Specifies the Charset for the MariaDB Database, which needs to be a valid MariaDB Charset. Changing this forces a new resource to be created. @@ -72,6 +81,18 @@ type DatabaseParameters struct { type DatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DatabaseInitParameters `json:"initProvider,omitempty"` } // DatabaseStatus defines the observed state of Database. @@ -92,8 +113,8 @@ type DatabaseStatus struct { type Database struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.charset)",message="charset is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.collation)",message="collation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.charset) || has(self.initProvider.charset)",message="charset is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.collation) || has(self.initProvider.collation)",message="collation is a required parameter" Spec DatabaseSpec `json:"spec"` Status DatabaseStatus `json:"status,omitempty"` } diff --git a/apis/dbformariadb/v1beta1/zz_firewallrule_types.go b/apis/dbformariadb/v1beta1/zz_firewallrule_types.go index 2781576cb..bc7e31c12 100755 --- a/apis/dbformariadb/v1beta1/zz_firewallrule_types.go +++ b/apis/dbformariadb/v1beta1/zz_firewallrule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FirewallRuleInitParameters struct { + + // Specifies the End IP Address associated with this Firewall Rule. + EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` + + // Specifies the Start IP Address associated with this Firewall Rule. + StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` +} + type FirewallRuleObservation struct { // Specifies the End IP Address associated with this Firewall Rule. @@ -72,6 +81,18 @@ type FirewallRuleParameters struct { type FirewallRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FirewallRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FirewallRuleInitParameters `json:"initProvider,omitempty"` } // FirewallRuleStatus defines the observed state of FirewallRule. @@ -92,8 +113,8 @@ type FirewallRuleStatus struct { type FirewallRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress)",message="endIpAddress is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress)",message="startIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endIpAddress) || has(self.initProvider.endIpAddress)",message="endIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.startIpAddress) || has(self.initProvider.startIpAddress)",message="startIpAddress is a required parameter" Spec FirewallRuleSpec `json:"spec"` Status FirewallRuleStatus `json:"status,omitempty"` } diff --git a/apis/dbformariadb/v1beta1/zz_generated.deepcopy.go b/apis/dbformariadb/v1beta1/zz_generated.deepcopy.go index 1b0cd8baf..13b8bb2d3 100644 --- a/apis/dbformariadb/v1beta1/zz_generated.deepcopy.go +++ b/apis/dbformariadb/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,31 @@ func (in *Configuration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigurationInitParameters) DeepCopyInto(out *ConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigurationInitParameters. +func (in *ConfigurationInitParameters) DeepCopy() *ConfigurationInitParameters { + if in == nil { + return nil + } + out := new(ConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfigurationList) DeepCopyInto(out *ConfigurationList) { *out = *in @@ -173,6 +198,7 @@ func (in *ConfigurationSpec) DeepCopyInto(out *ConfigurationSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigurationSpec. @@ -229,6 +255,31 @@ func (in *Database) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DatabaseInitParameters) DeepCopyInto(out *DatabaseInitParameters) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseInitParameters. +func (in *DatabaseInitParameters) DeepCopy() *DatabaseInitParameters { + if in == nil { + return nil + } + out := new(DatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DatabaseList) DeepCopyInto(out *DatabaseList) { *out = *in @@ -361,6 +412,7 @@ func (in *DatabaseSpec) DeepCopyInto(out *DatabaseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseSpec. @@ -417,6 +469,31 @@ func (in *FirewallRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallRuleInitParameters) DeepCopyInto(out *FirewallRuleInitParameters) { + *out = *in + if in.EndIPAddress != nil { + in, out := &in.EndIPAddress, &out.EndIPAddress + *out = new(string) + **out = **in + } + if in.StartIPAddress != nil { + in, out := &in.StartIPAddress, &out.StartIPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallRuleInitParameters. +func (in *FirewallRuleInitParameters) DeepCopy() *FirewallRuleInitParameters { + if in == nil { + return nil + } + out := new(FirewallRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallRuleList) DeepCopyInto(out *FirewallRuleList) { *out = *in @@ -549,6 +626,7 @@ func (in *FirewallRuleSpec) DeepCopyInto(out *FirewallRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallRuleSpec. @@ -605,6 +683,101 @@ func (in *Server) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerInitParameters) DeepCopyInto(out *ServerInitParameters) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AutoGrowEnabled != nil { + in, out := &in.AutoGrowEnabled, &out.AutoGrowEnabled + *out = new(bool) + **out = **in + } + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(float64) + **out = **in + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(string) + **out = **in + } + if in.GeoRedundantBackupEnabled != nil { + in, out := &in.GeoRedundantBackupEnabled, &out.GeoRedundantBackupEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.RestorePointInTime != nil { + in, out := &in.RestorePointInTime, &out.RestorePointInTime + *out = new(string) + **out = **in + } + if in.SSLEnforcementEnabled != nil { + in, out := &in.SSLEnforcementEnabled, &out.SSLEnforcementEnabled + *out = new(bool) + **out = **in + } + if in.SSLMinimalTLSVersionEnforced != nil { + in, out := &in.SSLMinimalTLSVersionEnforced, &out.SSLMinimalTLSVersionEnforced + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.StorageMb != nil { + in, out := &in.StorageMb, &out.StorageMb + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerInitParameters. +func (in *ServerInitParameters) DeepCopy() *ServerInitParameters { + if in == nil { + return nil + } + out := new(ServerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerList) DeepCopyInto(out *ServerList) { *out = *in @@ -887,6 +1060,7 @@ func (in *ServerSpec) DeepCopyInto(out *ServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSpec. @@ -943,6 +1117,21 @@ func (in *VirtualNetworkRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkRuleInitParameters) DeepCopyInto(out *VirtualNetworkRuleInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkRuleInitParameters. +func (in *VirtualNetworkRuleInitParameters) DeepCopy() *VirtualNetworkRuleInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkRuleList) DeepCopyInto(out *VirtualNetworkRuleList) { *out = *in @@ -1075,6 +1264,7 @@ func (in *VirtualNetworkRuleSpec) DeepCopyInto(out *VirtualNetworkRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkRuleSpec. diff --git a/apis/dbformariadb/v1beta1/zz_generated.managed.go b/apis/dbformariadb/v1beta1/zz_generated.managed.go index 9166106ba..07cfe5ddc 100644 --- a/apis/dbformariadb/v1beta1/zz_generated.managed.go +++ b/apis/dbformariadb/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Configuration) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Configuration. -func (mg *Configuration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Configuration. +func (mg *Configuration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Configuration. @@ -55,9 +55,9 @@ func (mg *Configuration) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Configuration. -func (mg *Configuration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Configuration. +func (mg *Configuration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Configuration. @@ -93,9 +93,9 @@ func (mg *Database) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Database. -func (mg *Database) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Database. +func (mg *Database) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Database. @@ -131,9 +131,9 @@ func (mg *Database) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Database. -func (mg *Database) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Database. +func (mg *Database) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Database. @@ -169,9 +169,9 @@ func (mg *FirewallRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FirewallRule. -func (mg *FirewallRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FirewallRule. +func (mg *FirewallRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FirewallRule. @@ -207,9 +207,9 @@ func (mg *FirewallRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FirewallRule. -func (mg *FirewallRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FirewallRule. +func (mg *FirewallRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FirewallRule. @@ -245,9 +245,9 @@ func (mg *Server) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Server. -func (mg *Server) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Server. +func (mg *Server) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Server. @@ -283,9 +283,9 @@ func (mg *Server) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Server. -func (mg *Server) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Server. +func (mg *Server) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Server. @@ -321,9 +321,9 @@ func (mg *VirtualNetworkRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualNetworkRule. -func (mg *VirtualNetworkRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualNetworkRule. +func (mg *VirtualNetworkRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualNetworkRule. @@ -359,9 +359,9 @@ func (mg *VirtualNetworkRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualNetworkRule. -func (mg *VirtualNetworkRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualNetworkRule. +func (mg *VirtualNetworkRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualNetworkRule. diff --git a/apis/dbformariadb/v1beta1/zz_generated_terraformed.go b/apis/dbformariadb/v1beta1/zz_generated_terraformed.go index 98a86ada5..d61f24852 100755 --- a/apis/dbformariadb/v1beta1/zz_generated_terraformed.go +++ b/apis/dbformariadb/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Configuration) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Configuration +func (tr *Configuration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Configuration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Configuration) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Database) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Database +func (tr *Database) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Database using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Database) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *FirewallRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FirewallRule +func (tr *FirewallRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FirewallRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FirewallRule) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *Server) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Server +func (tr *Server) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Server using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Server) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *VirtualNetworkRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualNetworkRule +func (tr *VirtualNetworkRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualNetworkRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualNetworkRule) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/dbformariadb/v1beta1/zz_server_types.go b/apis/dbformariadb/v1beta1/zz_server_types.go index 212531f98..1f530c378 100755 --- a/apis/dbformariadb/v1beta1/zz_server_types.go +++ b/apis/dbformariadb/v1beta1/zz_server_types.go @@ -13,6 +13,51 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ServerInitParameters struct { + + // The Administrator login for the MariaDB Server. Changing this forces a new resource to be created. + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` + + // Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. The default value if not explicitly specified is true. + AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"` + + // Backup retention days for the server, supported values are between 7 and 35 days. + BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"` + + // The creation mode. Can be used to restore or replicate existing servers. Possible values are Default, Replica, GeoRestore, and PointInTimeRestore. Defaults to Default. + CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` + + // Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not supported for the Basic tier. + GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether or not public network access is allowed for this server. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // When create_mode is PointInTimeRestore, specifies the point in time to restore from creation_source_server_id. It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z. + RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"` + + // Specifies if SSL should be enforced on connections. Possible values are true and false. + SSLEnforcementEnabled *bool `json:"sslEnforcementEnabled,omitempty" tf:"ssl_enforcement_enabled,omitempty"` + + // The minimum TLS version to support on the sever. Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2. + SSLMinimalTLSVersionEnforced *string `json:"sslMinimalTlsVersionEnforced,omitempty" tf:"ssl_minimal_tls_version_enforced,omitempty"` + + // Specifies the SKU Name for this MariaDB Server. The name of the SKU, follows the tier + family + cores pattern (e.g. B_Gen4_1, GP_Gen5_8). For more information see the product documentation. Possible values are B_Gen5_1, B_Gen5_2, GP_Gen5_2, GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, MO_Gen5_2, MO_Gen5_4, MO_Gen5_8 and MO_Gen5_16. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // Max storage allowed for a server. Possible values are between 5120 MB (5GB) and 1024000MB (1TB) for the Basic SKU and between 5120 MB (5GB) and 4096000 MB (4TB) for General Purpose/Memory Optimized SKUs. For more information see the product documentation. + StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the version of MariaDB to use. Possible values are 10.2 and 10.3. Changing this forces a new resource to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type ServerObservation struct { // The Administrator login for the MariaDB Server. Changing this forces a new resource to be created. @@ -164,6 +209,18 @@ type ServerParameters struct { type ServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServerInitParameters `json:"initProvider,omitempty"` } // ServerStatus defines the observed state of Server. @@ -184,10 +241,10 @@ type ServerStatus struct { type Server struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sslEnforcementEnabled)",message="sslEnforcementEnabled is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version)",message="version is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sslEnforcementEnabled) || has(self.initProvider.sslEnforcementEnabled)",message="sslEnforcementEnabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.version) || has(self.initProvider.version)",message="version is a required parameter" Spec ServerSpec `json:"spec"` Status ServerStatus `json:"status,omitempty"` } diff --git a/apis/dbformariadb/v1beta1/zz_virtualnetworkrule_types.go b/apis/dbformariadb/v1beta1/zz_virtualnetworkrule_types.go index a92010e85..44db6c4cd 100755 --- a/apis/dbformariadb/v1beta1/zz_virtualnetworkrule_types.go +++ b/apis/dbformariadb/v1beta1/zz_virtualnetworkrule_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VirtualNetworkRuleInitParameters struct { +} + type VirtualNetworkRuleObservation struct { // The ID of the MariaDB Virtual Network Rule. @@ -75,6 +78,18 @@ type VirtualNetworkRuleParameters struct { type VirtualNetworkRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualNetworkRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualNetworkRuleInitParameters `json:"initProvider,omitempty"` } // VirtualNetworkRuleStatus defines the observed state of VirtualNetworkRule. diff --git a/apis/dbformysql/v1beta1/zz_activedirectoryadministrator_types.go b/apis/dbformysql/v1beta1/zz_activedirectoryadministrator_types.go index 35a25e3d2..4b747f56a 100755 --- a/apis/dbformysql/v1beta1/zz_activedirectoryadministrator_types.go +++ b/apis/dbformysql/v1beta1/zz_activedirectoryadministrator_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActiveDirectoryAdministratorInitParameters struct { + + // The login name of the principal to set as the server administrator + Login *string `json:"login,omitempty" tf:"login,omitempty"` + + // The ID of the principal to set as the server administrator. For a managed identity this should be the Client ID of the identity. + ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` + + // The Azure Tenant ID + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type ActiveDirectoryAdministratorObservation struct { // The ID of the MySQL Active Directory Administrator. @@ -79,6 +91,18 @@ type ActiveDirectoryAdministratorParameters struct { type ActiveDirectoryAdministratorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ActiveDirectoryAdministratorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ActiveDirectoryAdministratorInitParameters `json:"initProvider,omitempty"` } // ActiveDirectoryAdministratorStatus defines the observed state of ActiveDirectoryAdministrator. @@ -99,9 +123,9 @@ type ActiveDirectoryAdministratorStatus struct { type ActiveDirectoryAdministrator struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.login)",message="login is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId)",message="objectId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId)",message="tenantId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.login) || has(self.initProvider.login)",message="login is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.objectId) || has(self.initProvider.objectId)",message="objectId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantId) || has(self.initProvider.tenantId)",message="tenantId is a required parameter" Spec ActiveDirectoryAdministratorSpec `json:"spec"` Status ActiveDirectoryAdministratorStatus `json:"status,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_configuration_types.go b/apis/dbformysql/v1beta1/zz_configuration_types.go index af3c4db20..1575a38ee 100755 --- a/apis/dbformysql/v1beta1/zz_configuration_types.go +++ b/apis/dbformysql/v1beta1/zz_configuration_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConfigurationInitParameters struct { + + // Specifies the name of the MySQL Configuration, which needs to be a valid MySQL configuration name. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the value of the MySQL Configuration. See the MySQL documentation for valid values. Changing this forces a new resource to be created. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ConfigurationObservation struct { // The ID of the MySQL Configuration. @@ -72,6 +81,18 @@ type ConfigurationParameters struct { type ConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ConfigurationInitParameters `json:"initProvider,omitempty"` } // ConfigurationStatus defines the observed state of Configuration. @@ -92,8 +113,8 @@ type ConfigurationStatus struct { type Configuration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value)",message="value is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.value) || has(self.initProvider.value)",message="value is a required parameter" Spec ConfigurationSpec `json:"spec"` Status ConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_database_types.go b/apis/dbformysql/v1beta1/zz_database_types.go index 6828433e1..0599063f3 100755 --- a/apis/dbformysql/v1beta1/zz_database_types.go +++ b/apis/dbformysql/v1beta1/zz_database_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DatabaseInitParameters struct { + + // Specifies the Charset for the MySQL Database, which needs to be a valid MySQL Charset. Changing this forces a new resource to be created. + Charset *string `json:"charset,omitempty" tf:"charset,omitempty"` + + // Specifies the Collation for the MySQL Database, which needs to be a valid MySQL Collation. Changing this forces a new resource to be created. + Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` +} + type DatabaseObservation struct { // Specifies the Charset for the MySQL Database, which needs to be a valid MySQL Charset. Changing this forces a new resource to be created. @@ -72,6 +81,18 @@ type DatabaseParameters struct { type DatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DatabaseInitParameters `json:"initProvider,omitempty"` } // DatabaseStatus defines the observed state of Database. @@ -92,8 +113,8 @@ type DatabaseStatus struct { type Database struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.charset)",message="charset is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.collation)",message="collation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.charset) || has(self.initProvider.charset)",message="charset is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.collation) || has(self.initProvider.collation)",message="collation is a required parameter" Spec DatabaseSpec `json:"spec"` Status DatabaseStatus `json:"status,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_firewallrule_types.go b/apis/dbformysql/v1beta1/zz_firewallrule_types.go index eb333771e..2ea956f1e 100755 --- a/apis/dbformysql/v1beta1/zz_firewallrule_types.go +++ b/apis/dbformysql/v1beta1/zz_firewallrule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FirewallRuleInitParameters struct { + + // Specifies the End IP Address associated with this Firewall Rule. + EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` + + // Specifies the Start IP Address associated with this Firewall Rule. + StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` +} + type FirewallRuleObservation struct { // Specifies the End IP Address associated with this Firewall Rule. @@ -72,6 +81,18 @@ type FirewallRuleParameters struct { type FirewallRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FirewallRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FirewallRuleInitParameters `json:"initProvider,omitempty"` } // FirewallRuleStatus defines the observed state of FirewallRule. @@ -92,8 +113,8 @@ type FirewallRuleStatus struct { type FirewallRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress)",message="endIpAddress is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress)",message="startIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endIpAddress) || has(self.initProvider.endIpAddress)",message="endIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.startIpAddress) || has(self.initProvider.startIpAddress)",message="startIpAddress is a required parameter" Spec FirewallRuleSpec `json:"spec"` Status FirewallRuleStatus `json:"status,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_flexibledatabase_types.go b/apis/dbformysql/v1beta1/zz_flexibledatabase_types.go index 9df0341c6..dbf8cf99e 100755 --- a/apis/dbformysql/v1beta1/zz_flexibledatabase_types.go +++ b/apis/dbformysql/v1beta1/zz_flexibledatabase_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FlexibleDatabaseInitParameters struct { + + // Specifies the Charset for the MySQL Database, which needs to be a valid MySQL Charset. Changing this forces a new resource to be created. + Charset *string `json:"charset,omitempty" tf:"charset,omitempty"` + + // Specifies the Collation for the MySQL Database, which needs to be a valid MySQL Collation. Changing this forces a new resource to be created. + Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` +} + type FlexibleDatabaseObservation struct { // Specifies the Charset for the MySQL Database, which needs to be a valid MySQL Charset. Changing this forces a new resource to be created. @@ -72,6 +81,18 @@ type FlexibleDatabaseParameters struct { type FlexibleDatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FlexibleDatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FlexibleDatabaseInitParameters `json:"initProvider,omitempty"` } // FlexibleDatabaseStatus defines the observed state of FlexibleDatabase. @@ -92,8 +113,8 @@ type FlexibleDatabaseStatus struct { type FlexibleDatabase struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.charset)",message="charset is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.collation)",message="collation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.charset) || has(self.initProvider.charset)",message="charset is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.collation) || has(self.initProvider.collation)",message="collation is a required parameter" Spec FlexibleDatabaseSpec `json:"spec"` Status FlexibleDatabaseStatus `json:"status,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_flexibleserver_types.go b/apis/dbformysql/v1beta1/zz_flexibleserver_types.go index cb74ebb88..52f5f9271 100755 --- a/apis/dbformysql/v1beta1/zz_flexibleserver_types.go +++ b/apis/dbformysql/v1beta1/zz_flexibleserver_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomerManagedKeyInitParameters struct { + + // The ID of the geo backup Key Vault Key. It can't cross region and need Customer Managed Key in same region as geo backup. + GeoBackupKeyVaultKeyID *string `json:"geoBackupKeyVaultKeyId,omitempty" tf:"geo_backup_key_vault_key_id,omitempty"` + + // The geo backup user managed identity id for a Customer Managed Key. Should be added with identity_ids. It can't cross region and need identity in same region as geo backup. + GeoBackupUserAssignedIdentityID *string `json:"geoBackupUserAssignedIdentityId,omitempty" tf:"geo_backup_user_assigned_identity_id,omitempty"` + + // The ID of the Key Vault Key. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // Specifies the primary user managed identity id for a Customer Managed Key. Should be added with identity_ids. + PrimaryUserAssignedIdentityID *string `json:"primaryUserAssignedIdentityId,omitempty" tf:"primary_user_assigned_identity_id,omitempty"` +} + type CustomerManagedKeyObservation struct { // The ID of the geo backup Key Vault Key. It can't cross region and need Customer Managed Key in same region as geo backup. @@ -47,6 +62,60 @@ type CustomerManagedKeyParameters struct { PrimaryUserAssignedIdentityID *string `json:"primaryUserAssignedIdentityId,omitempty" tf:"primary_user_assigned_identity_id,omitempty"` } +type FlexibleServerInitParameters struct { + + // The Administrator login for the MySQL Flexible Server. Required when create_mode is Default. Changing this forces a new MySQL Flexible Server to be created. + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` + + // The backup retention days for the MySQL Flexible Server. Possible values are between 1 and 35 days. Defaults to 7. + BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"` + + // The creation mode which can be used to restore or replicate existing servers. Possible values are Default, PointInTimeRestore, GeoRestore, and Replica. Changing this forces a new MySQL Flexible Server to be created. + CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` + + // A customer_managed_key block as defined below. + CustomerManagedKey []CustomerManagedKeyInitParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` + + // Should geo redundant backup enabled? Defaults to false. Changing this forces a new MySQL Flexible Server to be created. + GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"` + + // A high_availability block as defined below. + HighAvailability []HighAvailabilityInitParameters `json:"highAvailability,omitempty" tf:"high_availability,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the MySQL Flexible Server should exist. Changing this forces a new MySQL Flexible Server to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A maintenance_window block as defined below. + MaintenanceWindow []MaintenanceWindowInitParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` + + // The point in time to restore from creation_source_server_id when create_mode is PointInTimeRestore. Changing this forces a new MySQL Flexible Server to be created. + PointInTimeRestoreTimeInUtc *string `json:"pointInTimeRestoreTimeInUtc,omitempty" tf:"point_in_time_restore_time_in_utc,omitempty"` + + // The replication role. Possible value is None. + ReplicationRole *string `json:"replicationRole,omitempty" tf:"replication_role,omitempty"` + + // The SKU Name for the MySQL Flexible Server. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // The resource ID of the source MySQL Flexible Server to be restored. Required when create_mode is PointInTimeRestore, GeoRestore, and Replica. Changing this forces a new MySQL Flexible Server to be created. + SourceServerID *string `json:"sourceServerId,omitempty" tf:"source_server_id,omitempty"` + + // A storage block as defined below. + Storage []StorageInitParameters `json:"storage,omitempty" tf:"storage,omitempty"` + + // A mapping of tags which should be assigned to the MySQL Flexible Server. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The version of the MySQL Flexible Server to use. Possible values are 5.7, and 8.0.21. Changing this forces a new MySQL Flexible Server to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` + + // Specifies the Availability Zone in which this MySQL Flexible Server should be located. Possible values are 1, 2 and 3. + Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` +} + type FlexibleServerObservation struct { // The Administrator login for the MySQL Flexible Server. Required when create_mode is Default. Changing this forces a new MySQL Flexible Server to be created. @@ -238,6 +307,15 @@ type FlexibleServerParameters struct { Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } +type HighAvailabilityInitParameters struct { + + // The high availability mode for the MySQL Flexible Server. Possibles values are SameZone and ZoneRedundant. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Specifies the Availability Zone in which the standby Flexible Server should be located. Possible values are 1, 2 and 3. + StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty" tf:"standby_availability_zone,omitempty"` +} + type HighAvailabilityObservation struct { // The high availability mode for the MySQL Flexible Server. Possibles values are SameZone and ZoneRedundant. @@ -250,14 +328,23 @@ type HighAvailabilityObservation struct { type HighAvailabilityParameters struct { // The high availability mode for the MySQL Flexible Server. Possibles values are SameZone and ZoneRedundant. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // Specifies the Availability Zone in which the standby Flexible Server should be located. Possible values are 1, 2 and 3. // +kubebuilder:validation:Optional StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty" tf:"standby_availability_zone,omitempty"` } +type IdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this MySQL Flexible Server. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this MySQL Flexible Server. The only possible value is UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this MySQL Flexible Server. @@ -270,12 +357,24 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this MySQL Flexible Server. - // +kubebuilder:validation:Required - IdentityIds []*string `json:"identityIds" tf:"identity_ids,omitempty"` + // +kubebuilder:validation:Optional + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this MySQL Flexible Server. The only possible value is UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type MaintenanceWindowInitParameters struct { + + // The day of week for maintenance window. Defaults to 0. + DayOfWeek *float64 `json:"dayOfWeek,omitempty" tf:"day_of_week,omitempty"` + + // The start hour for maintenance window. Defaults to 0. + StartHour *float64 `json:"startHour,omitempty" tf:"start_hour,omitempty"` + + // The start minute for maintenance window. Defaults to 0. + StartMinute *float64 `json:"startMinute,omitempty" tf:"start_minute,omitempty"` } type MaintenanceWindowObservation struct { @@ -305,6 +404,18 @@ type MaintenanceWindowParameters struct { StartMinute *float64 `json:"startMinute,omitempty" tf:"start_minute,omitempty"` } +type StorageInitParameters struct { + + // Should Storage Auto Grow be enabled? Defaults to true. + AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"` + + // The storage IOPS for the MySQL Flexible Server. Possible values are between 360 and 20000. + Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"` + + // The max storage allowed for the MySQL Flexible Server. Possible values are between 20 and 16384. + SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` +} + type StorageObservation struct { // Should Storage Auto Grow be enabled? Defaults to true. @@ -336,6 +447,18 @@ type StorageParameters struct { type FlexibleServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FlexibleServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FlexibleServerInitParameters `json:"initProvider,omitempty"` } // FlexibleServerStatus defines the observed state of FlexibleServer. @@ -356,7 +479,7 @@ type FlexibleServerStatus struct { type FlexibleServer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec FlexibleServerSpec `json:"spec"` Status FlexibleServerStatus `json:"status,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_flexibleserverconfiguration_types.go b/apis/dbformysql/v1beta1/zz_flexibleserverconfiguration_types.go index 27f112d76..3e71a8a54 100755 --- a/apis/dbformysql/v1beta1/zz_flexibleserverconfiguration_types.go +++ b/apis/dbformysql/v1beta1/zz_flexibleserverconfiguration_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FlexibleServerConfigurationInitParameters struct { + + // Specifies the value of the MySQL Flexible Server Configuration. See the MySQL documentation for valid values. Changing this forces a new resource to be created. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type FlexibleServerConfigurationObservation struct { // The ID of the MySQL Flexible Server Configuration. @@ -65,6 +71,18 @@ type FlexibleServerConfigurationParameters struct { type FlexibleServerConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FlexibleServerConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FlexibleServerConfigurationInitParameters `json:"initProvider,omitempty"` } // FlexibleServerConfigurationStatus defines the observed state of FlexibleServerConfiguration. @@ -85,7 +103,7 @@ type FlexibleServerConfigurationStatus struct { type FlexibleServerConfiguration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value)",message="value is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.value) || has(self.initProvider.value)",message="value is a required parameter" Spec FlexibleServerConfigurationSpec `json:"spec"` Status FlexibleServerConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_flexibleserverfirewallrule_types.go b/apis/dbformysql/v1beta1/zz_flexibleserverfirewallrule_types.go index b2019d288..8a3e86b2f 100755 --- a/apis/dbformysql/v1beta1/zz_flexibleserverfirewallrule_types.go +++ b/apis/dbformysql/v1beta1/zz_flexibleserverfirewallrule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FlexibleServerFirewallRuleInitParameters struct { + + // Specifies the End IP Address associated with this Firewall Rule. + EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` + + // Specifies the Start IP Address associated with this Firewall Rule. + StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` +} + type FlexibleServerFirewallRuleObservation struct { // Specifies the End IP Address associated with this Firewall Rule. @@ -72,6 +81,18 @@ type FlexibleServerFirewallRuleParameters struct { type FlexibleServerFirewallRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FlexibleServerFirewallRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FlexibleServerFirewallRuleInitParameters `json:"initProvider,omitempty"` } // FlexibleServerFirewallRuleStatus defines the observed state of FlexibleServerFirewallRule. @@ -92,8 +113,8 @@ type FlexibleServerFirewallRuleStatus struct { type FlexibleServerFirewallRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress)",message="endIpAddress is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress)",message="startIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endIpAddress) || has(self.initProvider.endIpAddress)",message="endIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.startIpAddress) || has(self.initProvider.startIpAddress)",message="startIpAddress is a required parameter" Spec FlexibleServerFirewallRuleSpec `json:"spec"` Status FlexibleServerFirewallRuleStatus `json:"status,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_generated.deepcopy.go b/apis/dbformysql/v1beta1/zz_generated.deepcopy.go index d76e6d546..1672cb9f9 100644 --- a/apis/dbformysql/v1beta1/zz_generated.deepcopy.go +++ b/apis/dbformysql/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,36 @@ func (in *ActiveDirectoryAdministrator) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActiveDirectoryAdministratorInitParameters) DeepCopyInto(out *ActiveDirectoryAdministratorInitParameters) { + *out = *in + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = new(string) + **out = **in + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryAdministratorInitParameters. +func (in *ActiveDirectoryAdministratorInitParameters) DeepCopy() *ActiveDirectoryAdministratorInitParameters { + if in == nil { + return nil + } + out := new(ActiveDirectoryAdministratorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActiveDirectoryAdministratorList) DeepCopyInto(out *ActiveDirectoryAdministratorList) { *out = *in @@ -183,6 +213,7 @@ func (in *ActiveDirectoryAdministratorSpec) DeepCopyInto(out *ActiveDirectoryAdm *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryAdministratorSpec. @@ -239,6 +270,31 @@ func (in *Configuration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigurationInitParameters) DeepCopyInto(out *ConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigurationInitParameters. +func (in *ConfigurationInitParameters) DeepCopy() *ConfigurationInitParameters { + if in == nil { + return nil + } + out := new(ConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfigurationList) DeepCopyInto(out *ConfigurationList) { *out = *in @@ -371,6 +427,7 @@ func (in *ConfigurationSpec) DeepCopyInto(out *ConfigurationSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigurationSpec. @@ -400,6 +457,41 @@ func (in *ConfigurationStatus) DeepCopy() *ConfigurationStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomerManagedKeyInitParameters) DeepCopyInto(out *CustomerManagedKeyInitParameters) { + *out = *in + if in.GeoBackupKeyVaultKeyID != nil { + in, out := &in.GeoBackupKeyVaultKeyID, &out.GeoBackupKeyVaultKeyID + *out = new(string) + **out = **in + } + if in.GeoBackupUserAssignedIdentityID != nil { + in, out := &in.GeoBackupUserAssignedIdentityID, &out.GeoBackupUserAssignedIdentityID + *out = new(string) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.PrimaryUserAssignedIdentityID != nil { + in, out := &in.PrimaryUserAssignedIdentityID, &out.PrimaryUserAssignedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomerManagedKeyInitParameters. +func (in *CustomerManagedKeyInitParameters) DeepCopy() *CustomerManagedKeyInitParameters { + if in == nil { + return nil + } + out := new(CustomerManagedKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomerManagedKeyObservation) DeepCopyInto(out *CustomerManagedKeyObservation) { *out = *in @@ -497,6 +589,31 @@ func (in *Database) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DatabaseInitParameters) DeepCopyInto(out *DatabaseInitParameters) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseInitParameters. +func (in *DatabaseInitParameters) DeepCopy() *DatabaseInitParameters { + if in == nil { + return nil + } + out := new(DatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DatabaseList) DeepCopyInto(out *DatabaseList) { *out = *in @@ -629,6 +746,7 @@ func (in *DatabaseSpec) DeepCopyInto(out *DatabaseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseSpec. @@ -685,6 +803,31 @@ func (in *FirewallRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallRuleInitParameters) DeepCopyInto(out *FirewallRuleInitParameters) { + *out = *in + if in.EndIPAddress != nil { + in, out := &in.EndIPAddress, &out.EndIPAddress + *out = new(string) + **out = **in + } + if in.StartIPAddress != nil { + in, out := &in.StartIPAddress, &out.StartIPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallRuleInitParameters. +func (in *FirewallRuleInitParameters) DeepCopy() *FirewallRuleInitParameters { + if in == nil { + return nil + } + out := new(FirewallRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallRuleList) DeepCopyInto(out *FirewallRuleList) { *out = *in @@ -817,6 +960,7 @@ func (in *FirewallRuleSpec) DeepCopyInto(out *FirewallRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallRuleSpec. @@ -873,6 +1017,31 @@ func (in *FlexibleDatabase) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleDatabaseInitParameters) DeepCopyInto(out *FlexibleDatabaseInitParameters) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleDatabaseInitParameters. +func (in *FlexibleDatabaseInitParameters) DeepCopy() *FlexibleDatabaseInitParameters { + if in == nil { + return nil + } + out := new(FlexibleDatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FlexibleDatabaseList) DeepCopyInto(out *FlexibleDatabaseList) { *out = *in @@ -1005,6 +1174,7 @@ func (in *FlexibleDatabaseSpec) DeepCopyInto(out *FlexibleDatabaseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleDatabaseSpec. @@ -1088,6 +1258,26 @@ func (in *FlexibleServerConfiguration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerConfigurationInitParameters) DeepCopyInto(out *FlexibleServerConfigurationInitParameters) { + *out = *in + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerConfigurationInitParameters. +func (in *FlexibleServerConfigurationInitParameters) DeepCopy() *FlexibleServerConfigurationInitParameters { + if in == nil { + return nil + } + out := new(FlexibleServerConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FlexibleServerConfigurationList) DeepCopyInto(out *FlexibleServerConfigurationList) { *out = *in @@ -1210,6 +1400,7 @@ func (in *FlexibleServerConfigurationSpec) DeepCopyInto(out *FlexibleServerConfi *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerConfigurationSpec. @@ -1266,6 +1457,31 @@ func (in *FlexibleServerFirewallRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerFirewallRuleInitParameters) DeepCopyInto(out *FlexibleServerFirewallRuleInitParameters) { + *out = *in + if in.EndIPAddress != nil { + in, out := &in.EndIPAddress, &out.EndIPAddress + *out = new(string) + **out = **in + } + if in.StartIPAddress != nil { + in, out := &in.StartIPAddress, &out.StartIPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerFirewallRuleInitParameters. +func (in *FlexibleServerFirewallRuleInitParameters) DeepCopy() *FlexibleServerFirewallRuleInitParameters { + if in == nil { + return nil + } + out := new(FlexibleServerFirewallRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FlexibleServerFirewallRuleList) DeepCopyInto(out *FlexibleServerFirewallRuleList) { *out = *in @@ -1398,6 +1614,7 @@ func (in *FlexibleServerFirewallRuleSpec) DeepCopyInto(out *FlexibleServerFirewa *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerFirewallRuleSpec. @@ -1428,39 +1645,7 @@ func (in *FlexibleServerFirewallRuleStatus) DeepCopy() *FlexibleServerFirewallRu } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FlexibleServerList) DeepCopyInto(out *FlexibleServerList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]FlexibleServer, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerList. -func (in *FlexibleServerList) DeepCopy() *FlexibleServerList { - if in == nil { - return nil - } - out := new(FlexibleServerList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FlexibleServerList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation) { +func (in *FlexibleServerInitParameters) DeepCopyInto(out *FlexibleServerInitParameters) { *out = *in if in.AdministratorLogin != nil { in, out := &in.AdministratorLogin, &out.AdministratorLogin @@ -1479,21 +1664,11 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation } if in.CustomerManagedKey != nil { in, out := &in.CustomerManagedKey, &out.CustomerManagedKey - *out = make([]CustomerManagedKeyObservation, len(*in)) + *out = make([]CustomerManagedKeyInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DelegatedSubnetID != nil { - in, out := &in.DelegatedSubnetID, &out.DelegatedSubnetID - *out = new(string) - **out = **in - } - if in.Fqdn != nil { - in, out := &in.Fqdn, &out.Fqdn - *out = new(string) - **out = **in - } if in.GeoRedundantBackupEnabled != nil { in, out := &in.GeoRedundantBackupEnabled, &out.GeoRedundantBackupEnabled *out = new(bool) @@ -1501,19 +1676,14 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation } if in.HighAvailability != nil { in, out := &in.HighAvailability, &out.HighAvailability - *out = make([]HighAvailabilityObservation, len(*in)) + *out = make([]HighAvailabilityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.Identity != nil { in, out := &in.Identity, &out.Identity - *out = make([]IdentityObservation, len(*in)) + *out = make([]IdentityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1525,7 +1695,7 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation } if in.MaintenanceWindow != nil { in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]MaintenanceWindowObservation, len(*in)) + *out = make([]MaintenanceWindowInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1535,31 +1705,11 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation *out = new(string) **out = **in } - if in.PrivateDNSZoneID != nil { - in, out := &in.PrivateDNSZoneID, &out.PrivateDNSZoneID - *out = new(string) - **out = **in - } - if in.PublicNetworkAccessEnabled != nil { - in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled - *out = new(bool) - **out = **in - } - if in.ReplicaCapacity != nil { - in, out := &in.ReplicaCapacity, &out.ReplicaCapacity - *out = new(float64) - **out = **in - } if in.ReplicationRole != nil { in, out := &in.ReplicationRole, &out.ReplicationRole *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } if in.SkuName != nil { in, out := &in.SkuName, &out.SkuName *out = new(string) @@ -1572,7 +1722,7 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation } if in.Storage != nil { in, out := &in.Storage, &out.Storage - *out = make([]StorageObservation, len(*in)) + *out = make([]StorageInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1604,18 +1754,205 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerObservation. -func (in *FlexibleServerObservation) DeepCopy() *FlexibleServerObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerInitParameters. +func (in *FlexibleServerInitParameters) DeepCopy() *FlexibleServerInitParameters { if in == nil { return nil } - out := new(FlexibleServerObservation) + out := new(FlexibleServerInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FlexibleServerParameters) DeepCopyInto(out *FlexibleServerParameters) { +func (in *FlexibleServerList) DeepCopyInto(out *FlexibleServerList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FlexibleServer, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerList. +func (in *FlexibleServerList) DeepCopy() *FlexibleServerList { + if in == nil { + return nil + } + out := new(FlexibleServerList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServerList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(float64) + **out = **in + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(string) + **out = **in + } + if in.CustomerManagedKey != nil { + in, out := &in.CustomerManagedKey, &out.CustomerManagedKey + *out = make([]CustomerManagedKeyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DelegatedSubnetID != nil { + in, out := &in.DelegatedSubnetID, &out.DelegatedSubnetID + *out = new(string) + **out = **in + } + if in.Fqdn != nil { + in, out := &in.Fqdn, &out.Fqdn + *out = new(string) + **out = **in + } + if in.GeoRedundantBackupEnabled != nil { + in, out := &in.GeoRedundantBackupEnabled, &out.GeoRedundantBackupEnabled + *out = new(bool) + **out = **in + } + if in.HighAvailability != nil { + in, out := &in.HighAvailability, &out.HighAvailability + *out = make([]HighAvailabilityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = make([]MaintenanceWindowObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PointInTimeRestoreTimeInUtc != nil { + in, out := &in.PointInTimeRestoreTimeInUtc, &out.PointInTimeRestoreTimeInUtc + *out = new(string) + **out = **in + } + if in.PrivateDNSZoneID != nil { + in, out := &in.PrivateDNSZoneID, &out.PrivateDNSZoneID + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.ReplicaCapacity != nil { + in, out := &in.ReplicaCapacity, &out.ReplicaCapacity + *out = new(float64) + **out = **in + } + if in.ReplicationRole != nil { + in, out := &in.ReplicationRole, &out.ReplicationRole + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.SourceServerID != nil { + in, out := &in.SourceServerID, &out.SourceServerID + *out = new(string) + **out = **in + } + if in.Storage != nil { + in, out := &in.Storage, &out.Storage + *out = make([]StorageObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerObservation. +func (in *FlexibleServerObservation) DeepCopy() *FlexibleServerObservation { + if in == nil { + return nil + } + out := new(FlexibleServerObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerParameters) DeepCopyInto(out *FlexibleServerParameters) { *out = *in if in.AdministratorLogin != nil { in, out := &in.AdministratorLogin, &out.AdministratorLogin @@ -1789,6 +2126,7 @@ func (in *FlexibleServerSpec) DeepCopyInto(out *FlexibleServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerSpec. @@ -1818,6 +2156,31 @@ func (in *FlexibleServerStatus) DeepCopy() *FlexibleServerStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HighAvailabilityInitParameters) DeepCopyInto(out *HighAvailabilityInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.StandbyAvailabilityZone != nil { + in, out := &in.StandbyAvailabilityZone, &out.StandbyAvailabilityZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HighAvailabilityInitParameters. +func (in *HighAvailabilityInitParameters) DeepCopy() *HighAvailabilityInitParameters { + if in == nil { + return nil + } + out := new(HighAvailabilityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HighAvailabilityObservation) DeepCopyInto(out *HighAvailabilityObservation) { *out = *in @@ -1868,6 +2231,37 @@ func (in *HighAvailabilityParameters) DeepCopy() *HighAvailabilityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -1930,6 +2324,36 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MaintenanceWindowInitParameters) DeepCopyInto(out *MaintenanceWindowInitParameters) { + *out = *in + if in.DayOfWeek != nil { + in, out := &in.DayOfWeek, &out.DayOfWeek + *out = new(float64) + **out = **in + } + if in.StartHour != nil { + in, out := &in.StartHour, &out.StartHour + *out = new(float64) + **out = **in + } + if in.StartMinute != nil { + in, out := &in.StartMinute, &out.StartMinute + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindowInitParameters. +func (in *MaintenanceWindowInitParameters) DeepCopy() *MaintenanceWindowInitParameters { + if in == nil { + return nil + } + out := new(MaintenanceWindowInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MaintenanceWindowObservation) DeepCopyInto(out *MaintenanceWindowObservation) { *out = *in @@ -2017,6 +2441,26 @@ func (in *Server) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerIdentityInitParameters) DeepCopyInto(out *ServerIdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerIdentityInitParameters. +func (in *ServerIdentityInitParameters) DeepCopy() *ServerIdentityInitParameters { + if in == nil { + return nil + } + out := new(ServerIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerIdentityObservation) DeepCopyInto(out *ServerIdentityObservation) { *out = *in @@ -2067,6 +2511,125 @@ func (in *ServerIdentityParameters) DeepCopy() *ServerIdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerInitParameters) DeepCopyInto(out *ServerInitParameters) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AutoGrowEnabled != nil { + in, out := &in.AutoGrowEnabled, &out.AutoGrowEnabled + *out = new(bool) + **out = **in + } + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(float64) + **out = **in + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(string) + **out = **in + } + if in.CreationSourceServerID != nil { + in, out := &in.CreationSourceServerID, &out.CreationSourceServerID + *out = new(string) + **out = **in + } + if in.GeoRedundantBackupEnabled != nil { + in, out := &in.GeoRedundantBackupEnabled, &out.GeoRedundantBackupEnabled + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]ServerIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InfrastructureEncryptionEnabled != nil { + in, out := &in.InfrastructureEncryptionEnabled, &out.InfrastructureEncryptionEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.RestorePointInTime != nil { + in, out := &in.RestorePointInTime, &out.RestorePointInTime + *out = new(string) + **out = **in + } + if in.SSLEnforcementEnabled != nil { + in, out := &in.SSLEnforcementEnabled, &out.SSLEnforcementEnabled + *out = new(bool) + **out = **in + } + if in.SSLMinimalTLSVersionEnforced != nil { + in, out := &in.SSLMinimalTLSVersionEnforced, &out.SSLMinimalTLSVersionEnforced + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.StorageMb != nil { + in, out := &in.StorageMb, &out.StorageMb + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ThreatDetectionPolicy != nil { + in, out := &in.ThreatDetectionPolicy, &out.ThreatDetectionPolicy + *out = make([]ThreatDetectionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerInitParameters. +func (in *ServerInitParameters) DeepCopy() *ServerInitParameters { + if in == nil { + return nil + } + out := new(ServerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerList) DeepCopyInto(out *ServerList) { *out = *in @@ -2377,6 +2940,7 @@ func (in *ServerSpec) DeepCopyInto(out *ServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSpec. @@ -2406,6 +2970,36 @@ func (in *ServerStatus) DeepCopy() *ServerStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageInitParameters) DeepCopyInto(out *StorageInitParameters) { + *out = *in + if in.AutoGrowEnabled != nil { + in, out := &in.AutoGrowEnabled, &out.AutoGrowEnabled + *out = new(bool) + **out = **in + } + if in.Iops != nil { + in, out := &in.Iops, &out.Iops + *out = new(float64) + **out = **in + } + if in.SizeGb != nil { + in, out := &in.SizeGb, &out.SizeGb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageInitParameters. +func (in *StorageInitParameters) DeepCopy() *StorageInitParameters { + if in == nil { + return nil + } + out := new(StorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageObservation) DeepCopyInto(out *StorageObservation) { *out = *in @@ -2466,6 +3060,63 @@ func (in *StorageParameters) DeepCopy() *StorageParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ThreatDetectionPolicyInitParameters) DeepCopyInto(out *ThreatDetectionPolicyInitParameters) { + *out = *in + if in.DisabledAlerts != nil { + in, out := &in.DisabledAlerts, &out.DisabledAlerts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EmailAccountAdmins != nil { + in, out := &in.EmailAccountAdmins, &out.EmailAccountAdmins + *out = new(bool) + **out = **in + } + if in.EmailAddresses != nil { + in, out := &in.EmailAddresses, &out.EmailAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.RetentionDays != nil { + in, out := &in.RetentionDays, &out.RetentionDays + *out = new(float64) + **out = **in + } + if in.StorageEndpoint != nil { + in, out := &in.StorageEndpoint, &out.StorageEndpoint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThreatDetectionPolicyInitParameters. +func (in *ThreatDetectionPolicyInitParameters) DeepCopy() *ThreatDetectionPolicyInitParameters { + if in == nil { + return nil + } + out := new(ThreatDetectionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ThreatDetectionPolicyObservation) DeepCopyInto(out *ThreatDetectionPolicyObservation) { *out = *in @@ -2612,6 +3263,21 @@ func (in *VirtualNetworkRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkRuleInitParameters) DeepCopyInto(out *VirtualNetworkRuleInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkRuleInitParameters. +func (in *VirtualNetworkRuleInitParameters) DeepCopy() *VirtualNetworkRuleInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkRuleList) DeepCopyInto(out *VirtualNetworkRuleList) { *out = *in @@ -2744,6 +3410,7 @@ func (in *VirtualNetworkRuleSpec) DeepCopyInto(out *VirtualNetworkRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkRuleSpec. diff --git a/apis/dbformysql/v1beta1/zz_generated.managed.go b/apis/dbformysql/v1beta1/zz_generated.managed.go index 10cf2b43b..dd5850089 100644 --- a/apis/dbformysql/v1beta1/zz_generated.managed.go +++ b/apis/dbformysql/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ActiveDirectoryAdministrator) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ActiveDirectoryAdministrator. -func (mg *ActiveDirectoryAdministrator) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ActiveDirectoryAdministrator. +func (mg *ActiveDirectoryAdministrator) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ActiveDirectoryAdministrator. @@ -55,9 +55,9 @@ func (mg *ActiveDirectoryAdministrator) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ActiveDirectoryAdministrator. -func (mg *ActiveDirectoryAdministrator) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ActiveDirectoryAdministrator. +func (mg *ActiveDirectoryAdministrator) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ActiveDirectoryAdministrator. @@ -93,9 +93,9 @@ func (mg *Configuration) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Configuration. -func (mg *Configuration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Configuration. +func (mg *Configuration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Configuration. @@ -131,9 +131,9 @@ func (mg *Configuration) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Configuration. -func (mg *Configuration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Configuration. +func (mg *Configuration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Configuration. @@ -169,9 +169,9 @@ func (mg *Database) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Database. -func (mg *Database) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Database. +func (mg *Database) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Database. @@ -207,9 +207,9 @@ func (mg *Database) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Database. -func (mg *Database) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Database. +func (mg *Database) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Database. @@ -245,9 +245,9 @@ func (mg *FirewallRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FirewallRule. -func (mg *FirewallRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FirewallRule. +func (mg *FirewallRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FirewallRule. @@ -283,9 +283,9 @@ func (mg *FirewallRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FirewallRule. -func (mg *FirewallRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FirewallRule. +func (mg *FirewallRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FirewallRule. @@ -321,9 +321,9 @@ func (mg *FlexibleDatabase) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FlexibleDatabase. -func (mg *FlexibleDatabase) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FlexibleDatabase. +func (mg *FlexibleDatabase) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FlexibleDatabase. @@ -359,9 +359,9 @@ func (mg *FlexibleDatabase) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FlexibleDatabase. -func (mg *FlexibleDatabase) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FlexibleDatabase. +func (mg *FlexibleDatabase) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FlexibleDatabase. @@ -397,9 +397,9 @@ func (mg *FlexibleServer) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FlexibleServer. -func (mg *FlexibleServer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FlexibleServer. +func (mg *FlexibleServer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FlexibleServer. @@ -435,9 +435,9 @@ func (mg *FlexibleServer) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FlexibleServer. -func (mg *FlexibleServer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FlexibleServer. +func (mg *FlexibleServer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FlexibleServer. @@ -473,9 +473,9 @@ func (mg *FlexibleServerConfiguration) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FlexibleServerConfiguration. -func (mg *FlexibleServerConfiguration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FlexibleServerConfiguration. +func (mg *FlexibleServerConfiguration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FlexibleServerConfiguration. @@ -511,9 +511,9 @@ func (mg *FlexibleServerConfiguration) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FlexibleServerConfiguration. -func (mg *FlexibleServerConfiguration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FlexibleServerConfiguration. +func (mg *FlexibleServerConfiguration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FlexibleServerConfiguration. @@ -549,9 +549,9 @@ func (mg *FlexibleServerFirewallRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FlexibleServerFirewallRule. -func (mg *FlexibleServerFirewallRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FlexibleServerFirewallRule. +func (mg *FlexibleServerFirewallRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FlexibleServerFirewallRule. @@ -587,9 +587,9 @@ func (mg *FlexibleServerFirewallRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FlexibleServerFirewallRule. -func (mg *FlexibleServerFirewallRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FlexibleServerFirewallRule. +func (mg *FlexibleServerFirewallRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FlexibleServerFirewallRule. @@ -625,9 +625,9 @@ func (mg *Server) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Server. -func (mg *Server) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Server. +func (mg *Server) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Server. @@ -663,9 +663,9 @@ func (mg *Server) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Server. -func (mg *Server) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Server. +func (mg *Server) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Server. @@ -701,9 +701,9 @@ func (mg *VirtualNetworkRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualNetworkRule. -func (mg *VirtualNetworkRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualNetworkRule. +func (mg *VirtualNetworkRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualNetworkRule. @@ -739,9 +739,9 @@ func (mg *VirtualNetworkRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualNetworkRule. -func (mg *VirtualNetworkRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualNetworkRule. +func (mg *VirtualNetworkRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualNetworkRule. diff --git a/apis/dbformysql/v1beta1/zz_generated_terraformed.go b/apis/dbformysql/v1beta1/zz_generated_terraformed.go index 2a8fbe5f6..6d0c73f83 100755 --- a/apis/dbformysql/v1beta1/zz_generated_terraformed.go +++ b/apis/dbformysql/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ActiveDirectoryAdministrator) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ActiveDirectoryAdministrator +func (tr *ActiveDirectoryAdministrator) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ActiveDirectoryAdministrator using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ActiveDirectoryAdministrator) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Configuration) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Configuration +func (tr *Configuration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Configuration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Configuration) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *Database) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Database +func (tr *Database) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Database using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Database) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *FirewallRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FirewallRule +func (tr *FirewallRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FirewallRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FirewallRule) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *FlexibleDatabase) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FlexibleDatabase +func (tr *FlexibleDatabase) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FlexibleDatabase using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FlexibleDatabase) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *FlexibleServer) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FlexibleServer +func (tr *FlexibleServer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FlexibleServer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FlexibleServer) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *FlexibleServerConfiguration) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FlexibleServerConfiguration +func (tr *FlexibleServerConfiguration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FlexibleServerConfiguration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FlexibleServerConfiguration) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *FlexibleServerFirewallRule) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FlexibleServerFirewallRule +func (tr *FlexibleServerFirewallRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FlexibleServerFirewallRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FlexibleServerFirewallRule) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *Server) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Server +func (tr *Server) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Server using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Server) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *VirtualNetworkRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualNetworkRule +func (tr *VirtualNetworkRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualNetworkRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualNetworkRule) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/dbformysql/v1beta1/zz_server_types.go b/apis/dbformysql/v1beta1/zz_server_types.go index bb1066a01..4ec72de34 100755 --- a/apis/dbformysql/v1beta1/zz_server_types.go +++ b/apis/dbformysql/v1beta1/zz_server_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ServerIdentityInitParameters struct { + + // Specifies the type of Managed Service Identity that should be configured on this MySQL Server. The only possible value is SystemAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ServerIdentityObservation struct { // The Principal ID associated with this Managed Service Identity. @@ -28,8 +34,65 @@ type ServerIdentityObservation struct { type ServerIdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this MySQL Server. The only possible value is SystemAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ServerInitParameters struct { + + // The Administrator login for the MySQL Server. Required when create_mode is Default. Changing this forces a new resource to be created. + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` + + // Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. The default value if not explicitly specified is true. + AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"` + + // Backup retention days for the server, supported values are between 7 and 35 days. + BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"` + + // The creation mode. Can be used to restore or replicate existing servers. Possible values are Default, Replica, GeoRestore, and PointInTimeRestore. Defaults to Default. + CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` + + // For creation modes other than Default, the source server ID to use. + CreationSourceServerID *string `json:"creationSourceServerId,omitempty" tf:"creation_source_server_id,omitempty"` + + // Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not supported for the Basic tier. + GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"` + + // An identity block as defined below. + Identity []ServerIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Whether or not infrastructure is encrypted for this server. Changing this forces a new resource to be created. + InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether or not public network access is allowed for this server. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // When create_mode is PointInTimeRestore, specifies the point in time to restore from creation_source_server_id. It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z. + RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"` + + // Specifies if SSL should be enforced on connections. Possible values are true and false. + SSLEnforcementEnabled *bool `json:"sslEnforcementEnabled,omitempty" tf:"ssl_enforcement_enabled,omitempty"` + + // The minimum TLS version to support on the sever. Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2. + SSLMinimalTLSVersionEnforced *string `json:"sslMinimalTlsVersionEnforced,omitempty" tf:"ssl_minimal_tls_version_enforced,omitempty"` + + // Specifies the SKU Name for this MySQL Server. The name of the SKU, follows the tier + family + cores pattern (e.g. B_Gen4_1, GP_Gen5_8). For more information see the product documentation. Possible values are B_Gen4_1, B_Gen4_2, B_Gen5_1, B_Gen5_2, GP_Gen4_2, GP_Gen4_4, GP_Gen4_8, GP_Gen4_16, GP_Gen4_32, GP_Gen5_2, GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, GP_Gen5_64, MO_Gen5_2, MO_Gen5_4, MO_Gen5_8, MO_Gen5_16 and MO_Gen5_32. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // Max storage allowed for a server. Possible values are between 5120 MB(5GB) and 1048576 MB(1TB) for the Basic SKU and between 5120 MB(5GB) and 16777216 MB(16TB) for General Purpose/Memory Optimized SKUs. For more information see the product documentation. + StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Threat detection policy configuration, known in the API as Server Security Alerts Policy. The threat_detection_policy block supports fields documented below. + ThreatDetectionPolicy []ThreatDetectionPolicyInitParameters `json:"threatDetectionPolicy,omitempty" tf:"threat_detection_policy,omitempty"` + + // Specifies the version of MySQL to use. Valid values are 5.7, or 8.0. Changing this forces a new resource to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type ServerObservation struct { @@ -190,6 +253,27 @@ type ServerParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type ThreatDetectionPolicyInitParameters struct { + + // Specifies a list of alerts which should be disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration and Unsafe_Action. + DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` + + // Should the account administrators be emailed when this alert is triggered? + EmailAccountAdmins *bool `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"` + + // A list of email addresses which alerts should be sent to. + EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` + + // Is the policy enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Specifies the number of days to keep in the Threat Detection audit logs. + RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` + + // Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs. + StorageEndpoint *string `json:"storageEndpoint,omitempty" tf:"storage_endpoint,omitempty"` +} + type ThreatDetectionPolicyObservation struct { // Specifies a list of alerts which should be disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration and Unsafe_Action. @@ -246,6 +330,18 @@ type ThreatDetectionPolicyParameters struct { type ServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServerInitParameters `json:"initProvider,omitempty"` } // ServerStatus defines the observed state of Server. @@ -266,10 +362,10 @@ type ServerStatus struct { type Server struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sslEnforcementEnabled)",message="sslEnforcementEnabled is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version)",message="version is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sslEnforcementEnabled) || has(self.initProvider.sslEnforcementEnabled)",message="sslEnforcementEnabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.version) || has(self.initProvider.version)",message="version is a required parameter" Spec ServerSpec `json:"spec"` Status ServerStatus `json:"status,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_virtualnetworkrule_types.go b/apis/dbformysql/v1beta1/zz_virtualnetworkrule_types.go index 434766c08..76c78a415 100755 --- a/apis/dbformysql/v1beta1/zz_virtualnetworkrule_types.go +++ b/apis/dbformysql/v1beta1/zz_virtualnetworkrule_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VirtualNetworkRuleInitParameters struct { +} + type VirtualNetworkRuleObservation struct { // The ID of the MySQL Virtual Network Rule. @@ -75,6 +78,18 @@ type VirtualNetworkRuleParameters struct { type VirtualNetworkRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualNetworkRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualNetworkRuleInitParameters `json:"initProvider,omitempty"` } // VirtualNetworkRuleStatus defines the observed state of VirtualNetworkRule. diff --git a/apis/dbforpostgresql/v1beta1/zz_activedirectoryadministrator_types.go b/apis/dbforpostgresql/v1beta1/zz_activedirectoryadministrator_types.go index 45e204623..02b62e984 100755 --- a/apis/dbforpostgresql/v1beta1/zz_activedirectoryadministrator_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_activedirectoryadministrator_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActiveDirectoryAdministratorInitParameters struct { + + // The login name of the principal to set as the server administrator + Login *string `json:"login,omitempty" tf:"login,omitempty"` + + // The ID of the principal to set as the server administrator. For a managed identity this should be the Client ID of the identity. + ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` + + // The Azure Tenant ID + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type ActiveDirectoryAdministratorObservation struct { // The ID of the PostgreSQL Active Directory Administrator. @@ -79,6 +91,18 @@ type ActiveDirectoryAdministratorParameters struct { type ActiveDirectoryAdministratorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ActiveDirectoryAdministratorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ActiveDirectoryAdministratorInitParameters `json:"initProvider,omitempty"` } // ActiveDirectoryAdministratorStatus defines the observed state of ActiveDirectoryAdministrator. @@ -99,9 +123,9 @@ type ActiveDirectoryAdministratorStatus struct { type ActiveDirectoryAdministrator struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.login)",message="login is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId)",message="objectId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId)",message="tenantId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.login) || has(self.initProvider.login)",message="login is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.objectId) || has(self.initProvider.objectId)",message="objectId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantId) || has(self.initProvider.tenantId)",message="tenantId is a required parameter" Spec ActiveDirectoryAdministratorSpec `json:"spec"` Status ActiveDirectoryAdministratorStatus `json:"status,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_configuration_types.go b/apis/dbforpostgresql/v1beta1/zz_configuration_types.go index e5f8843df..936261d41 100755 --- a/apis/dbforpostgresql/v1beta1/zz_configuration_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_configuration_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConfigurationInitParameters struct { + + // Specifies the name of the PostgreSQL Configuration, which needs to be a valid PostgreSQL configuration name. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the value of the PostgreSQL Configuration. See the PostgreSQL documentation for valid values. Changing this forces a new resource to be created. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ConfigurationObservation struct { // The ID of the PostgreSQL Configuration. @@ -72,6 +81,18 @@ type ConfigurationParameters struct { type ConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ConfigurationInitParameters `json:"initProvider,omitempty"` } // ConfigurationStatus defines the observed state of Configuration. @@ -92,8 +113,8 @@ type ConfigurationStatus struct { type Configuration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value)",message="value is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.value) || has(self.initProvider.value)",message="value is a required parameter" Spec ConfigurationSpec `json:"spec"` Status ConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_database_types.go b/apis/dbforpostgresql/v1beta1/zz_database_types.go index 02eb616dc..7356463d2 100755 --- a/apis/dbforpostgresql/v1beta1/zz_database_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_database_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DatabaseInitParameters struct { + + // Specifies the Charset for the PostgreSQL Database, which needs to be a valid PostgreSQL Charset. Changing this forces a new resource to be created. + Charset *string `json:"charset,omitempty" tf:"charset,omitempty"` + + // Specifies the Collation for the PostgreSQL Database, which needs to be a valid PostgreSQL Collation. Note that Microsoft uses different notation - en-US instead of en_US. Changing this forces a new resource to be created. + Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` +} + type DatabaseObservation struct { // Specifies the Charset for the PostgreSQL Database, which needs to be a valid PostgreSQL Charset. Changing this forces a new resource to be created. @@ -72,6 +81,18 @@ type DatabaseParameters struct { type DatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DatabaseInitParameters `json:"initProvider,omitempty"` } // DatabaseStatus defines the observed state of Database. @@ -92,8 +113,8 @@ type DatabaseStatus struct { type Database struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.charset)",message="charset is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.collation)",message="collation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.charset) || has(self.initProvider.charset)",message="charset is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.collation) || has(self.initProvider.collation)",message="collation is a required parameter" Spec DatabaseSpec `json:"spec"` Status DatabaseStatus `json:"status,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_firewallrule_types.go b/apis/dbforpostgresql/v1beta1/zz_firewallrule_types.go index f147334cb..d17b96fba 100755 --- a/apis/dbforpostgresql/v1beta1/zz_firewallrule_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_firewallrule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FirewallRuleInitParameters struct { + + // Specifies the End IP Address associated with this Firewall Rule. Changing this forces a new resource to be created. + EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` + + // Specifies the Start IP Address associated with this Firewall Rule. Changing this forces a new resource to be created. + StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` +} + type FirewallRuleObservation struct { // Specifies the End IP Address associated with this Firewall Rule. Changing this forces a new resource to be created. @@ -72,6 +81,18 @@ type FirewallRuleParameters struct { type FirewallRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FirewallRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FirewallRuleInitParameters `json:"initProvider,omitempty"` } // FirewallRuleStatus defines the observed state of FirewallRule. @@ -92,8 +113,8 @@ type FirewallRuleStatus struct { type FirewallRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress)",message="endIpAddress is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress)",message="startIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endIpAddress) || has(self.initProvider.endIpAddress)",message="endIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.startIpAddress) || has(self.initProvider.startIpAddress)",message="startIpAddress is a required parameter" Spec FirewallRuleSpec `json:"spec"` Status FirewallRuleStatus `json:"status,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_flexibleserver_types.go b/apis/dbforpostgresql/v1beta1/zz_flexibleserver_types.go index 2534470e8..8e2c27e81 100755 --- a/apis/dbforpostgresql/v1beta1/zz_flexibleserver_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_flexibleserver_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthenticationInitParameters struct { + + // Whether or not Active Directory authentication is allowed to access the PostgreSQL Flexible Server. Defaults to false. + ActiveDirectoryAuthEnabled *bool `json:"activeDirectoryAuthEnabled,omitempty" tf:"active_directory_auth_enabled,omitempty"` + + // Whether or not password authentication is allowed to access the PostgreSQL Flexible Server. Defaults to true. + PasswordAuthEnabled *bool `json:"passwordAuthEnabled,omitempty" tf:"password_auth_enabled,omitempty"` + + // The Tenant ID of the Azure Active Directory which is used by the Active Directory authentication. active_directory_auth_enabled must be set to true. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type AuthenticationObservation struct { // Whether or not Active Directory authentication is allowed to access the PostgreSQL Flexible Server. Defaults to false. @@ -40,6 +52,15 @@ type AuthenticationParameters struct { TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } +type CustomerManagedKeyInitParameters struct { + + // The ID of the Key Vault Key. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // Specifies the primary user managed identity id for a Customer Managed Key. Should be added with identity_ids. + PrimaryUserAssignedIdentityID *string `json:"primaryUserAssignedIdentityId,omitempty" tf:"primary_user_assigned_identity_id,omitempty"` +} + type CustomerManagedKeyObservation struct { // The ID of the Key Vault Key. @@ -60,6 +81,63 @@ type CustomerManagedKeyParameters struct { PrimaryUserAssignedIdentityID *string `json:"primaryUserAssignedIdentityId,omitempty" tf:"primary_user_assigned_identity_id,omitempty"` } +type FlexibleServerInitParameters struct { + + // The Administrator login for the PostgreSQL Flexible Server. Required when create_mode is Default and authentication.password_auth_enabled is true. + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` + + // An authentication block as defined below. + Authentication []AuthenticationInitParameters `json:"authentication,omitempty" tf:"authentication,omitempty"` + + // The backup retention days for the PostgreSQL Flexible Server. Possible values are between 7 and 35 days. + BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"` + + // The creation mode which can be used to restore or replicate existing servers. Possible values are Default, PointInTimeRestore, Replica and Update. Changing this forces a new PostgreSQL Flexible Server to be created. + CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` + + // A customer_managed_key block as defined below. Changing this forces a new resource to be created. + CustomerManagedKey []CustomerManagedKeyInitParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` + + // Is Geo-Redundant backup enabled on the PostgreSQL Flexible Server. Defaults to false. Changing this forces a new PostgreSQL Flexible Server to be created. + GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"` + + // A high_availability block as defined below. + HighAvailability []HighAvailabilityInitParameters `json:"highAvailability,omitempty" tf:"high_availability,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the PostgreSQL Flexible Server should exist. Changing this forces a new PostgreSQL Flexible Server to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A maintenance_window block as defined below. + MaintenanceWindow []MaintenanceWindowInitParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` + + // The point in time to restore from source_server_id when create_mode is PointInTimeRestore. Changing this forces a new PostgreSQL Flexible Server to be created. + PointInTimeRestoreTimeInUtc *string `json:"pointInTimeRestoreTimeInUtc,omitempty" tf:"point_in_time_restore_time_in_utc,omitempty"` + + // The replication role for the PostgreSQL Flexible Server. Possible value is None. + ReplicationRole *string `json:"replicationRole,omitempty" tf:"replication_role,omitempty"` + + // The SKU Name for the PostgreSQL Flexible Server. The name of the SKU, follows the tier + name pattern (e.g. B_Standard_B1ms, GP_Standard_D2s_v3, MO_Standard_E4s_v3). + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // The resource ID of the source PostgreSQL Flexible Server to be restored. Required when create_mode is PointInTimeRestore or Replica. Changing this forces a new PostgreSQL Flexible Server to be created. + SourceServerID *string `json:"sourceServerId,omitempty" tf:"source_server_id,omitempty"` + + // The max storage allowed for the PostgreSQL Flexible Server. Possible values are 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4194304, 8388608, and 16777216. + StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"` + + // A mapping of tags which should be assigned to the PostgreSQL Flexible Server. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The version of PostgreSQL Flexible Server to use. Possible values are 11,12, 13 and 14. Required when create_mode is Default. Changing this forces a new PostgreSQL Flexible Server to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` + + // Specifies the Availability Zone in which the PostgreSQL Flexible Server should be located. + Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` +} + type FlexibleServerObservation struct { // The Administrator login for the PostgreSQL Flexible Server. Required when create_mode is Default and authentication.password_auth_enabled is true. @@ -255,6 +333,15 @@ type FlexibleServerParameters struct { Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } +type HighAvailabilityInitParameters struct { + + // The high availability mode for the PostgreSQL Flexible Server. Possible value are SameZone or ZoneRedundant. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Specifies the Availability Zone in which the standby Flexible Server should be located. + StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty" tf:"standby_availability_zone,omitempty"` +} + type HighAvailabilityObservation struct { // The high availability mode for the PostgreSQL Flexible Server. Possible value are SameZone or ZoneRedundant. @@ -267,14 +354,23 @@ type HighAvailabilityObservation struct { type HighAvailabilityParameters struct { // The high availability mode for the PostgreSQL Flexible Server. Possible value are SameZone or ZoneRedundant. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // Specifies the Availability Zone in which the standby Flexible Server should be located. // +kubebuilder:validation:Optional StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty" tf:"standby_availability_zone,omitempty"` } +type IdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this PostgreSQL Flexible Server. Required if used together with customer_managed_key block. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Flexible Server. Should be set to UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this PostgreSQL Flexible Server. Required if used together with customer_managed_key block. @@ -297,8 +393,20 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Flexible Server. Should be set to UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type MaintenanceWindowInitParameters struct { + + // The day of week for maintenance window, where the week starts on a Sunday, i.e. Sunday = 0, Monday = 1. Defaults to 0. + DayOfWeek *float64 `json:"dayOfWeek,omitempty" tf:"day_of_week,omitempty"` + + // The start hour for maintenance window. Defaults to 0. + StartHour *float64 `json:"startHour,omitempty" tf:"start_hour,omitempty"` + + // The start minute for maintenance window. Defaults to 0. + StartMinute *float64 `json:"startMinute,omitempty" tf:"start_minute,omitempty"` } type MaintenanceWindowObservation struct { @@ -332,6 +440,18 @@ type MaintenanceWindowParameters struct { type FlexibleServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FlexibleServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FlexibleServerInitParameters `json:"initProvider,omitempty"` } // FlexibleServerStatus defines the observed state of FlexibleServer. @@ -352,7 +472,7 @@ type FlexibleServerStatus struct { type FlexibleServer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec FlexibleServerSpec `json:"spec"` Status FlexibleServerStatus `json:"status,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_flexibleserverconfiguration_types.go b/apis/dbforpostgresql/v1beta1/zz_flexibleserverconfiguration_types.go index 87e98504b..acc1f9789 100755 --- a/apis/dbforpostgresql/v1beta1/zz_flexibleserverconfiguration_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_flexibleserverconfiguration_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FlexibleServerConfigurationInitParameters struct { + + // Specifies the name of the PostgreSQL Configuration, which needs to be a valid PostgreSQL configuration name. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the value of the PostgreSQL Configuration. See the PostgreSQL documentation for valid values. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type FlexibleServerConfigurationObservation struct { // The ID of the PostgreSQL Configuration. @@ -57,6 +66,18 @@ type FlexibleServerConfigurationParameters struct { type FlexibleServerConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FlexibleServerConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FlexibleServerConfigurationInitParameters `json:"initProvider,omitempty"` } // FlexibleServerConfigurationStatus defines the observed state of FlexibleServerConfiguration. @@ -77,8 +98,8 @@ type FlexibleServerConfigurationStatus struct { type FlexibleServerConfiguration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value)",message="value is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.value) || has(self.initProvider.value)",message="value is a required parameter" Spec FlexibleServerConfigurationSpec `json:"spec"` Status FlexibleServerConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_flexibleserverdatabase_types.go b/apis/dbforpostgresql/v1beta1/zz_flexibleserverdatabase_types.go index e30b4d8fb..a894415ef 100755 --- a/apis/dbforpostgresql/v1beta1/zz_flexibleserverdatabase_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_flexibleserverdatabase_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FlexibleServerDatabaseInitParameters struct { + + // Specifies the Charset for the Azure PostgreSQL Flexible Server Database, which needs to be a valid PostgreSQL Charset. Defaults to UTF8. Changing this forces a new Azure PostgreSQL Flexible Server Database to be created. + Charset *string `json:"charset,omitempty" tf:"charset,omitempty"` + + // Specifies the Collation for the Azure PostgreSQL Flexible Server Database, which needs to be a valid PostgreSQL Collation. Defaults to en_US.utf8. Changing this forces a new Azure PostgreSQL Flexible Server Database to be created. + Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` +} + type FlexibleServerDatabaseObservation struct { // Specifies the Charset for the Azure PostgreSQL Flexible Server Database, which needs to be a valid PostgreSQL Charset. Defaults to UTF8. Changing this forces a new Azure PostgreSQL Flexible Server Database to be created. @@ -57,6 +66,18 @@ type FlexibleServerDatabaseParameters struct { type FlexibleServerDatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FlexibleServerDatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FlexibleServerDatabaseInitParameters `json:"initProvider,omitempty"` } // FlexibleServerDatabaseStatus defines the observed state of FlexibleServerDatabase. diff --git a/apis/dbforpostgresql/v1beta1/zz_flexibleserverfirewallrule_types.go b/apis/dbforpostgresql/v1beta1/zz_flexibleserverfirewallrule_types.go index d774e2429..273f88d53 100755 --- a/apis/dbforpostgresql/v1beta1/zz_flexibleserverfirewallrule_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_flexibleserverfirewallrule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FlexibleServerFirewallRuleInitParameters struct { + + // The End IP Address associated with this PostgreSQL Flexible Server Firewall Rule. + EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` + + // The Start IP Address associated with this PostgreSQL Flexible Server Firewall Rule. + StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` +} + type FlexibleServerFirewallRuleObservation struct { // The End IP Address associated with this PostgreSQL Flexible Server Firewall Rule. @@ -57,6 +66,18 @@ type FlexibleServerFirewallRuleParameters struct { type FlexibleServerFirewallRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FlexibleServerFirewallRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FlexibleServerFirewallRuleInitParameters `json:"initProvider,omitempty"` } // FlexibleServerFirewallRuleStatus defines the observed state of FlexibleServerFirewallRule. @@ -77,8 +98,8 @@ type FlexibleServerFirewallRuleStatus struct { type FlexibleServerFirewallRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress)",message="endIpAddress is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress)",message="startIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endIpAddress) || has(self.initProvider.endIpAddress)",message="endIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.startIpAddress) || has(self.initProvider.startIpAddress)",message="startIpAddress is a required parameter" Spec FlexibleServerFirewallRuleSpec `json:"spec"` Status FlexibleServerFirewallRuleStatus `json:"status,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_generated.deepcopy.go b/apis/dbforpostgresql/v1beta1/zz_generated.deepcopy.go index aa9916d99..a9bcf8457 100644 --- a/apis/dbforpostgresql/v1beta1/zz_generated.deepcopy.go +++ b/apis/dbforpostgresql/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,36 @@ func (in *ActiveDirectoryAdministrator) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActiveDirectoryAdministratorInitParameters) DeepCopyInto(out *ActiveDirectoryAdministratorInitParameters) { + *out = *in + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = new(string) + **out = **in + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryAdministratorInitParameters. +func (in *ActiveDirectoryAdministratorInitParameters) DeepCopy() *ActiveDirectoryAdministratorInitParameters { + if in == nil { + return nil + } + out := new(ActiveDirectoryAdministratorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActiveDirectoryAdministratorList) DeepCopyInto(out *ActiveDirectoryAdministratorList) { *out = *in @@ -183,6 +213,7 @@ func (in *ActiveDirectoryAdministratorSpec) DeepCopyInto(out *ActiveDirectoryAdm *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryAdministratorSpec. @@ -212,6 +243,36 @@ func (in *ActiveDirectoryAdministratorStatus) DeepCopy() *ActiveDirectoryAdminis return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthenticationInitParameters) DeepCopyInto(out *AuthenticationInitParameters) { + *out = *in + if in.ActiveDirectoryAuthEnabled != nil { + in, out := &in.ActiveDirectoryAuthEnabled, &out.ActiveDirectoryAuthEnabled + *out = new(bool) + **out = **in + } + if in.PasswordAuthEnabled != nil { + in, out := &in.PasswordAuthEnabled, &out.PasswordAuthEnabled + *out = new(bool) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationInitParameters. +func (in *AuthenticationInitParameters) DeepCopy() *AuthenticationInitParameters { + if in == nil { + return nil + } + out := new(AuthenticationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthenticationObservation) DeepCopyInto(out *AuthenticationObservation) { *out = *in @@ -299,6 +360,31 @@ func (in *Configuration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigurationInitParameters) DeepCopyInto(out *ConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigurationInitParameters. +func (in *ConfigurationInitParameters) DeepCopy() *ConfigurationInitParameters { + if in == nil { + return nil + } + out := new(ConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfigurationList) DeepCopyInto(out *ConfigurationList) { *out = *in @@ -431,6 +517,7 @@ func (in *ConfigurationSpec) DeepCopyInto(out *ConfigurationSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigurationSpec. @@ -460,6 +547,31 @@ func (in *ConfigurationStatus) DeepCopy() *ConfigurationStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomerManagedKeyInitParameters) DeepCopyInto(out *CustomerManagedKeyInitParameters) { + *out = *in + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.PrimaryUserAssignedIdentityID != nil { + in, out := &in.PrimaryUserAssignedIdentityID, &out.PrimaryUserAssignedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomerManagedKeyInitParameters. +func (in *CustomerManagedKeyInitParameters) DeepCopy() *CustomerManagedKeyInitParameters { + if in == nil { + return nil + } + out := new(CustomerManagedKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomerManagedKeyObservation) DeepCopyInto(out *CustomerManagedKeyObservation) { *out = *in @@ -537,6 +649,31 @@ func (in *Database) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DatabaseInitParameters) DeepCopyInto(out *DatabaseInitParameters) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseInitParameters. +func (in *DatabaseInitParameters) DeepCopy() *DatabaseInitParameters { + if in == nil { + return nil + } + out := new(DatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DatabaseList) DeepCopyInto(out *DatabaseList) { *out = *in @@ -669,6 +806,7 @@ func (in *DatabaseSpec) DeepCopyInto(out *DatabaseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseSpec. @@ -725,6 +863,31 @@ func (in *FirewallRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallRuleInitParameters) DeepCopyInto(out *FirewallRuleInitParameters) { + *out = *in + if in.EndIPAddress != nil { + in, out := &in.EndIPAddress, &out.EndIPAddress + *out = new(string) + **out = **in + } + if in.StartIPAddress != nil { + in, out := &in.StartIPAddress, &out.StartIPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallRuleInitParameters. +func (in *FirewallRuleInitParameters) DeepCopy() *FirewallRuleInitParameters { + if in == nil { + return nil + } + out := new(FirewallRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallRuleList) DeepCopyInto(out *FirewallRuleList) { *out = *in @@ -857,6 +1020,7 @@ func (in *FirewallRuleSpec) DeepCopyInto(out *FirewallRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallRuleSpec. @@ -940,6 +1104,31 @@ func (in *FlexibleServerConfiguration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerConfigurationInitParameters) DeepCopyInto(out *FlexibleServerConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerConfigurationInitParameters. +func (in *FlexibleServerConfigurationInitParameters) DeepCopy() *FlexibleServerConfigurationInitParameters { + if in == nil { + return nil + } + out := new(FlexibleServerConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FlexibleServerConfigurationList) DeepCopyInto(out *FlexibleServerConfigurationList) { *out = *in @@ -1052,6 +1241,7 @@ func (in *FlexibleServerConfigurationSpec) DeepCopyInto(out *FlexibleServerConfi *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerConfigurationSpec. @@ -1108,6 +1298,31 @@ func (in *FlexibleServerDatabase) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerDatabaseInitParameters) DeepCopyInto(out *FlexibleServerDatabaseInitParameters) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerDatabaseInitParameters. +func (in *FlexibleServerDatabaseInitParameters) DeepCopy() *FlexibleServerDatabaseInitParameters { + if in == nil { + return nil + } + out := new(FlexibleServerDatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FlexibleServerDatabaseList) DeepCopyInto(out *FlexibleServerDatabaseList) { *out = *in @@ -1220,6 +1435,7 @@ func (in *FlexibleServerDatabaseSpec) DeepCopyInto(out *FlexibleServerDatabaseSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerDatabaseSpec. @@ -1276,6 +1492,31 @@ func (in *FlexibleServerFirewallRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerFirewallRuleInitParameters) DeepCopyInto(out *FlexibleServerFirewallRuleInitParameters) { + *out = *in + if in.EndIPAddress != nil { + in, out := &in.EndIPAddress, &out.EndIPAddress + *out = new(string) + **out = **in + } + if in.StartIPAddress != nil { + in, out := &in.StartIPAddress, &out.StartIPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerFirewallRuleInitParameters. +func (in *FlexibleServerFirewallRuleInitParameters) DeepCopy() *FlexibleServerFirewallRuleInitParameters { + if in == nil { + return nil + } + out := new(FlexibleServerFirewallRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FlexibleServerFirewallRuleList) DeepCopyInto(out *FlexibleServerFirewallRuleList) { *out = *in @@ -1388,6 +1629,7 @@ func (in *FlexibleServerFirewallRuleSpec) DeepCopyInto(out *FlexibleServerFirewa *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerFirewallRuleSpec. @@ -1418,39 +1660,7 @@ func (in *FlexibleServerFirewallRuleStatus) DeepCopy() *FlexibleServerFirewallRu } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FlexibleServerList) DeepCopyInto(out *FlexibleServerList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]FlexibleServer, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerList. -func (in *FlexibleServerList) DeepCopy() *FlexibleServerList { - if in == nil { - return nil - } - out := new(FlexibleServerList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *FlexibleServerList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation) { +func (in *FlexibleServerInitParameters) DeepCopyInto(out *FlexibleServerInitParameters) { *out = *in if in.AdministratorLogin != nil { in, out := &in.AdministratorLogin, &out.AdministratorLogin @@ -1459,7 +1669,7 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation } if in.Authentication != nil { in, out := &in.Authentication, &out.Authentication - *out = make([]AuthenticationObservation, len(*in)) + *out = make([]AuthenticationInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1476,21 +1686,11 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation } if in.CustomerManagedKey != nil { in, out := &in.CustomerManagedKey, &out.CustomerManagedKey - *out = make([]CustomerManagedKeyObservation, len(*in)) + *out = make([]CustomerManagedKeyInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.DelegatedSubnetID != nil { - in, out := &in.DelegatedSubnetID, &out.DelegatedSubnetID - *out = new(string) - **out = **in - } - if in.Fqdn != nil { - in, out := &in.Fqdn, &out.Fqdn - *out = new(string) - **out = **in - } if in.GeoRedundantBackupEnabled != nil { in, out := &in.GeoRedundantBackupEnabled, &out.GeoRedundantBackupEnabled *out = new(bool) @@ -1498,19 +1698,14 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation } if in.HighAvailability != nil { in, out := &in.HighAvailability, &out.HighAvailability - *out = make([]HighAvailabilityObservation, len(*in)) + *out = make([]HighAvailabilityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.Identity != nil { in, out := &in.Identity, &out.Identity - *out = make([]IdentityObservation, len(*in)) + *out = make([]IdentityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1522,7 +1717,7 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation } if in.MaintenanceWindow != nil { in, out := &in.MaintenanceWindow, &out.MaintenanceWindow - *out = make([]MaintenanceWindowObservation, len(*in)) + *out = make([]MaintenanceWindowInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1532,8 +1727,180 @@ func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation *out = new(string) **out = **in } - if in.PrivateDNSZoneID != nil { - in, out := &in.PrivateDNSZoneID, &out.PrivateDNSZoneID + if in.ReplicationRole != nil { + in, out := &in.ReplicationRole, &out.ReplicationRole + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.SourceServerID != nil { + in, out := &in.SourceServerID, &out.SourceServerID + *out = new(string) + **out = **in + } + if in.StorageMb != nil { + in, out := &in.StorageMb, &out.StorageMb + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerInitParameters. +func (in *FlexibleServerInitParameters) DeepCopy() *FlexibleServerInitParameters { + if in == nil { + return nil + } + out := new(FlexibleServerInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerList) DeepCopyInto(out *FlexibleServerList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FlexibleServer, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerList. +func (in *FlexibleServerList) DeepCopy() *FlexibleServerList { + if in == nil { + return nil + } + out := new(FlexibleServerList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServerList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerObservation) DeepCopyInto(out *FlexibleServerObservation) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.Authentication != nil { + in, out := &in.Authentication, &out.Authentication + *out = make([]AuthenticationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(float64) + **out = **in + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(string) + **out = **in + } + if in.CustomerManagedKey != nil { + in, out := &in.CustomerManagedKey, &out.CustomerManagedKey + *out = make([]CustomerManagedKeyObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DelegatedSubnetID != nil { + in, out := &in.DelegatedSubnetID, &out.DelegatedSubnetID + *out = new(string) + **out = **in + } + if in.Fqdn != nil { + in, out := &in.Fqdn, &out.Fqdn + *out = new(string) + **out = **in + } + if in.GeoRedundantBackupEnabled != nil { + in, out := &in.GeoRedundantBackupEnabled, &out.GeoRedundantBackupEnabled + *out = new(bool) + **out = **in + } + if in.HighAvailability != nil { + in, out := &in.HighAvailability, &out.HighAvailability + *out = make([]HighAvailabilityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = make([]MaintenanceWindowObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PointInTimeRestoreTimeInUtc != nil { + in, out := &in.PointInTimeRestoreTimeInUtc, &out.PointInTimeRestoreTimeInUtc + *out = new(string) + **out = **in + } + if in.PrivateDNSZoneID != nil { + in, out := &in.PrivateDNSZoneID, &out.PrivateDNSZoneID *out = new(string) **out = **in } @@ -1784,6 +2151,7 @@ func (in *FlexibleServerSpec) DeepCopyInto(out *FlexibleServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerSpec. @@ -1813,6 +2181,31 @@ func (in *FlexibleServerStatus) DeepCopy() *FlexibleServerStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HighAvailabilityInitParameters) DeepCopyInto(out *HighAvailabilityInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.StandbyAvailabilityZone != nil { + in, out := &in.StandbyAvailabilityZone, &out.StandbyAvailabilityZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HighAvailabilityInitParameters. +func (in *HighAvailabilityInitParameters) DeepCopy() *HighAvailabilityInitParameters { + if in == nil { + return nil + } + out := new(HighAvailabilityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HighAvailabilityObservation) DeepCopyInto(out *HighAvailabilityObservation) { *out = *in @@ -1863,6 +2256,37 @@ func (in *HighAvailabilityParameters) DeepCopy() *HighAvailabilityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -1935,6 +2359,36 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MaintenanceWindowInitParameters) DeepCopyInto(out *MaintenanceWindowInitParameters) { + *out = *in + if in.DayOfWeek != nil { + in, out := &in.DayOfWeek, &out.DayOfWeek + *out = new(float64) + **out = **in + } + if in.StartHour != nil { + in, out := &in.StartHour, &out.StartHour + *out = new(float64) + **out = **in + } + if in.StartMinute != nil { + in, out := &in.StartMinute, &out.StartMinute + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindowInitParameters. +func (in *MaintenanceWindowInitParameters) DeepCopy() *MaintenanceWindowInitParameters { + if in == nil { + return nil + } + out := new(MaintenanceWindowInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MaintenanceWindowObservation) DeepCopyInto(out *MaintenanceWindowObservation) { *out = *in @@ -2022,6 +2476,26 @@ func (in *Server) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerIdentityInitParameters) DeepCopyInto(out *ServerIdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerIdentityInitParameters. +func (in *ServerIdentityInitParameters) DeepCopy() *ServerIdentityInitParameters { + if in == nil { + return nil + } + out := new(ServerIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerIdentityObservation) DeepCopyInto(out *ServerIdentityObservation) { *out = *in @@ -2072,6 +2546,125 @@ func (in *ServerIdentityParameters) DeepCopy() *ServerIdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerInitParameters) DeepCopyInto(out *ServerInitParameters) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AutoGrowEnabled != nil { + in, out := &in.AutoGrowEnabled, &out.AutoGrowEnabled + *out = new(bool) + **out = **in + } + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(float64) + **out = **in + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(string) + **out = **in + } + if in.CreationSourceServerID != nil { + in, out := &in.CreationSourceServerID, &out.CreationSourceServerID + *out = new(string) + **out = **in + } + if in.GeoRedundantBackupEnabled != nil { + in, out := &in.GeoRedundantBackupEnabled, &out.GeoRedundantBackupEnabled + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]ServerIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InfrastructureEncryptionEnabled != nil { + in, out := &in.InfrastructureEncryptionEnabled, &out.InfrastructureEncryptionEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.RestorePointInTime != nil { + in, out := &in.RestorePointInTime, &out.RestorePointInTime + *out = new(string) + **out = **in + } + if in.SSLEnforcementEnabled != nil { + in, out := &in.SSLEnforcementEnabled, &out.SSLEnforcementEnabled + *out = new(bool) + **out = **in + } + if in.SSLMinimalTLSVersionEnforced != nil { + in, out := &in.SSLMinimalTLSVersionEnforced, &out.SSLMinimalTLSVersionEnforced + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.StorageMb != nil { + in, out := &in.StorageMb, &out.StorageMb + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ThreatDetectionPolicy != nil { + in, out := &in.ThreatDetectionPolicy, &out.ThreatDetectionPolicy + *out = make([]ThreatDetectionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerInitParameters. +func (in *ServerInitParameters) DeepCopy() *ServerInitParameters { + if in == nil { + return nil + } + out := new(ServerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerKey) DeepCopyInto(out *ServerKey) { *out = *in @@ -2099,6 +2692,21 @@ func (in *ServerKey) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerKeyInitParameters) DeepCopyInto(out *ServerKeyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerKeyInitParameters. +func (in *ServerKeyInitParameters) DeepCopy() *ServerKeyInitParameters { + if in == nil { + return nil + } + out := new(ServerKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerKeyList) DeepCopyInto(out *ServerKeyList) { *out = *in @@ -2211,6 +2819,7 @@ func (in *ServerKeySpec) DeepCopyInto(out *ServerKeySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerKeySpec. @@ -2550,6 +3159,7 @@ func (in *ServerSpec) DeepCopyInto(out *ServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSpec. @@ -2579,6 +3189,63 @@ func (in *ServerStatus) DeepCopy() *ServerStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ThreatDetectionPolicyInitParameters) DeepCopyInto(out *ThreatDetectionPolicyInitParameters) { + *out = *in + if in.DisabledAlerts != nil { + in, out := &in.DisabledAlerts, &out.DisabledAlerts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EmailAccountAdmins != nil { + in, out := &in.EmailAccountAdmins, &out.EmailAccountAdmins + *out = new(bool) + **out = **in + } + if in.EmailAddresses != nil { + in, out := &in.EmailAddresses, &out.EmailAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.RetentionDays != nil { + in, out := &in.RetentionDays, &out.RetentionDays + *out = new(float64) + **out = **in + } + if in.StorageEndpoint != nil { + in, out := &in.StorageEndpoint, &out.StorageEndpoint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThreatDetectionPolicyInitParameters. +func (in *ThreatDetectionPolicyInitParameters) DeepCopy() *ThreatDetectionPolicyInitParameters { + if in == nil { + return nil + } + out := new(ThreatDetectionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ThreatDetectionPolicyObservation) DeepCopyInto(out *ThreatDetectionPolicyObservation) { *out = *in @@ -2725,6 +3392,26 @@ func (in *VirtualNetworkRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkRuleInitParameters) DeepCopyInto(out *VirtualNetworkRuleInitParameters) { + *out = *in + if in.IgnoreMissingVnetServiceEndpoint != nil { + in, out := &in.IgnoreMissingVnetServiceEndpoint, &out.IgnoreMissingVnetServiceEndpoint + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkRuleInitParameters. +func (in *VirtualNetworkRuleInitParameters) DeepCopy() *VirtualNetworkRuleInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkRuleList) DeepCopyInto(out *VirtualNetworkRuleList) { *out = *in @@ -2867,6 +3554,7 @@ func (in *VirtualNetworkRuleSpec) DeepCopyInto(out *VirtualNetworkRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkRuleSpec. diff --git a/apis/dbforpostgresql/v1beta1/zz_generated.managed.go b/apis/dbforpostgresql/v1beta1/zz_generated.managed.go index e20e45212..936ef2f57 100644 --- a/apis/dbforpostgresql/v1beta1/zz_generated.managed.go +++ b/apis/dbforpostgresql/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ActiveDirectoryAdministrator) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ActiveDirectoryAdministrator. -func (mg *ActiveDirectoryAdministrator) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ActiveDirectoryAdministrator. +func (mg *ActiveDirectoryAdministrator) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ActiveDirectoryAdministrator. @@ -55,9 +55,9 @@ func (mg *ActiveDirectoryAdministrator) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ActiveDirectoryAdministrator. -func (mg *ActiveDirectoryAdministrator) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ActiveDirectoryAdministrator. +func (mg *ActiveDirectoryAdministrator) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ActiveDirectoryAdministrator. @@ -93,9 +93,9 @@ func (mg *Configuration) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Configuration. -func (mg *Configuration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Configuration. +func (mg *Configuration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Configuration. @@ -131,9 +131,9 @@ func (mg *Configuration) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Configuration. -func (mg *Configuration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Configuration. +func (mg *Configuration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Configuration. @@ -169,9 +169,9 @@ func (mg *Database) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Database. -func (mg *Database) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Database. +func (mg *Database) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Database. @@ -207,9 +207,9 @@ func (mg *Database) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Database. -func (mg *Database) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Database. +func (mg *Database) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Database. @@ -245,9 +245,9 @@ func (mg *FirewallRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FirewallRule. -func (mg *FirewallRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FirewallRule. +func (mg *FirewallRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FirewallRule. @@ -283,9 +283,9 @@ func (mg *FirewallRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FirewallRule. -func (mg *FirewallRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FirewallRule. +func (mg *FirewallRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FirewallRule. @@ -321,9 +321,9 @@ func (mg *FlexibleServer) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FlexibleServer. -func (mg *FlexibleServer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FlexibleServer. +func (mg *FlexibleServer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FlexibleServer. @@ -359,9 +359,9 @@ func (mg *FlexibleServer) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FlexibleServer. -func (mg *FlexibleServer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FlexibleServer. +func (mg *FlexibleServer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FlexibleServer. @@ -397,9 +397,9 @@ func (mg *FlexibleServerConfiguration) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FlexibleServerConfiguration. -func (mg *FlexibleServerConfiguration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FlexibleServerConfiguration. +func (mg *FlexibleServerConfiguration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FlexibleServerConfiguration. @@ -435,9 +435,9 @@ func (mg *FlexibleServerConfiguration) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FlexibleServerConfiguration. -func (mg *FlexibleServerConfiguration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FlexibleServerConfiguration. +func (mg *FlexibleServerConfiguration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FlexibleServerConfiguration. @@ -473,9 +473,9 @@ func (mg *FlexibleServerDatabase) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FlexibleServerDatabase. -func (mg *FlexibleServerDatabase) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FlexibleServerDatabase. +func (mg *FlexibleServerDatabase) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FlexibleServerDatabase. @@ -511,9 +511,9 @@ func (mg *FlexibleServerDatabase) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FlexibleServerDatabase. -func (mg *FlexibleServerDatabase) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FlexibleServerDatabase. +func (mg *FlexibleServerDatabase) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FlexibleServerDatabase. @@ -549,9 +549,9 @@ func (mg *FlexibleServerFirewallRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FlexibleServerFirewallRule. -func (mg *FlexibleServerFirewallRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FlexibleServerFirewallRule. +func (mg *FlexibleServerFirewallRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FlexibleServerFirewallRule. @@ -587,9 +587,9 @@ func (mg *FlexibleServerFirewallRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FlexibleServerFirewallRule. -func (mg *FlexibleServerFirewallRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FlexibleServerFirewallRule. +func (mg *FlexibleServerFirewallRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FlexibleServerFirewallRule. @@ -625,9 +625,9 @@ func (mg *Server) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Server. -func (mg *Server) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Server. +func (mg *Server) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Server. @@ -663,9 +663,9 @@ func (mg *Server) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Server. -func (mg *Server) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Server. +func (mg *Server) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Server. @@ -701,9 +701,9 @@ func (mg *ServerKey) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ServerKey. -func (mg *ServerKey) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ServerKey. +func (mg *ServerKey) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ServerKey. @@ -739,9 +739,9 @@ func (mg *ServerKey) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ServerKey. -func (mg *ServerKey) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ServerKey. +func (mg *ServerKey) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ServerKey. @@ -777,9 +777,9 @@ func (mg *VirtualNetworkRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualNetworkRule. -func (mg *VirtualNetworkRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualNetworkRule. +func (mg *VirtualNetworkRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualNetworkRule. @@ -815,9 +815,9 @@ func (mg *VirtualNetworkRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualNetworkRule. -func (mg *VirtualNetworkRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualNetworkRule. +func (mg *VirtualNetworkRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualNetworkRule. diff --git a/apis/dbforpostgresql/v1beta1/zz_generated_terraformed.go b/apis/dbforpostgresql/v1beta1/zz_generated_terraformed.go index 1adec7c5a..06d0f7872 100755 --- a/apis/dbforpostgresql/v1beta1/zz_generated_terraformed.go +++ b/apis/dbforpostgresql/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ActiveDirectoryAdministrator) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ActiveDirectoryAdministrator +func (tr *ActiveDirectoryAdministrator) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ActiveDirectoryAdministrator using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ActiveDirectoryAdministrator) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Configuration) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Configuration +func (tr *Configuration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Configuration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Configuration) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *Database) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Database +func (tr *Database) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Database using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Database) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *FirewallRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FirewallRule +func (tr *FirewallRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FirewallRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FirewallRule) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *FlexibleServer) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FlexibleServer +func (tr *FlexibleServer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FlexibleServer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FlexibleServer) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *FlexibleServerConfiguration) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FlexibleServerConfiguration +func (tr *FlexibleServerConfiguration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FlexibleServerConfiguration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FlexibleServerConfiguration) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *FlexibleServerDatabase) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FlexibleServerDatabase +func (tr *FlexibleServerDatabase) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FlexibleServerDatabase using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FlexibleServerDatabase) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *FlexibleServerFirewallRule) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FlexibleServerFirewallRule +func (tr *FlexibleServerFirewallRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FlexibleServerFirewallRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FlexibleServerFirewallRule) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *Server) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Server +func (tr *Server) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Server using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Server) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *ServerKey) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ServerKey +func (tr *ServerKey) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ServerKey using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ServerKey) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *VirtualNetworkRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualNetworkRule +func (tr *VirtualNetworkRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualNetworkRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualNetworkRule) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/dbforpostgresql/v1beta1/zz_server_types.go b/apis/dbforpostgresql/v1beta1/zz_server_types.go index 3e5534515..0bf469948 100755 --- a/apis/dbforpostgresql/v1beta1/zz_server_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_server_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ServerIdentityInitParameters struct { + + // Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Server. The only possible value is SystemAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ServerIdentityObservation struct { // The Principal ID associated with this Managed Service Identity. @@ -28,8 +34,65 @@ type ServerIdentityObservation struct { type ServerIdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Server. The only possible value is SystemAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ServerInitParameters struct { + + // The Administrator login for the PostgreSQL Server. Required when create_mode is Default. Changing this forces a new resource to be created. + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` + + // Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. The default value if not explicitly specified is true. + AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"` + + // Backup retention days for the server, supported values are between 7 and 35 days. + BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"` + + // The creation mode. Can be used to restore or replicate existing servers. Possible values are Default, Replica, GeoRestore, and PointInTimeRestore. Defaults to Default. + CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` + + // For creation modes other than Default, the source server ID to use. + CreationSourceServerID *string `json:"creationSourceServerId,omitempty" tf:"creation_source_server_id,omitempty"` + + // Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not support for the Basic tier. Changing this forces a new resource to be created. + GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"` + + // An identity block as defined below. + Identity []ServerIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Whether or not infrastructure is encrypted for this server. Changing this forces a new resource to be created. + InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether or not public network access is allowed for this server. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // When create_mode is PointInTimeRestore the point in time to restore from creation_source_server_id. It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z. + RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"` + + // Specifies if SSL should be enforced on connections. Possible values are true and false. + SSLEnforcementEnabled *bool `json:"sslEnforcementEnabled,omitempty" tf:"ssl_enforcement_enabled,omitempty"` + + // The minimum TLS version to support on the sever. Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2. + SSLMinimalTLSVersionEnforced *string `json:"sslMinimalTlsVersionEnforced,omitempty" tf:"ssl_minimal_tls_version_enforced,omitempty"` + + // Specifies the SKU Name for this PostgreSQL Server. The name of the SKU, follows the tier + family + cores pattern (e.g. B_Gen4_1, GP_Gen5_8). For more information see the product documentation. Possible values are B_Gen4_1, B_Gen4_2, B_Gen5_1, B_Gen5_2, GP_Gen4_2, GP_Gen4_4, GP_Gen4_8, GP_Gen4_16, GP_Gen4_32, GP_Gen5_2, GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, GP_Gen5_64, MO_Gen5_2, MO_Gen5_4, MO_Gen5_8, MO_Gen5_16 and MO_Gen5_32. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // Max storage allowed for a server. Possible values are between 5120 MB(5GB) and 1048576 MB(1TB) for the Basic SKU and between 5120 MB(5GB) and 16777216 MB(16TB) for General Purpose/Memory Optimized SKUs. For more information see the product documentation. + StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Threat detection policy configuration, known in the API as Server Security Alerts Policy. The threat_detection_policy block supports fields documented below. + ThreatDetectionPolicy []ThreatDetectionPolicyInitParameters `json:"threatDetectionPolicy,omitempty" tf:"threat_detection_policy,omitempty"` + + // Specifies the version of PostgreSQL to use. Valid values are 9.5, 9.6, 10, 10.0, 10.2 and 11. Changing this forces a new resource to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type ServerObservation struct { @@ -190,6 +253,27 @@ type ServerParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type ThreatDetectionPolicyInitParameters struct { + + // Specifies a list of alerts which should be disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration and Unsafe_Action. + DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` + + // Should the account administrators be emailed when this alert is triggered? + EmailAccountAdmins *bool `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"` + + // A list of email addresses which alerts should be sent to. + EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` + + // Is the policy enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Specifies the number of days to keep in the Threat Detection audit logs. + RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` + + // Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs. + StorageEndpoint *string `json:"storageEndpoint,omitempty" tf:"storage_endpoint,omitempty"` +} + type ThreatDetectionPolicyObservation struct { // Specifies a list of alerts which should be disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration and Unsafe_Action. @@ -246,6 +330,18 @@ type ThreatDetectionPolicyParameters struct { type ServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServerInitParameters `json:"initProvider,omitempty"` } // ServerStatus defines the observed state of Server. @@ -266,10 +362,10 @@ type ServerStatus struct { type Server struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sslEnforcementEnabled)",message="sslEnforcementEnabled is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version)",message="version is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sslEnforcementEnabled) || has(self.initProvider.sslEnforcementEnabled)",message="sslEnforcementEnabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.version) || has(self.initProvider.version)",message="version is a required parameter" Spec ServerSpec `json:"spec"` Status ServerStatus `json:"status,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_serverkey_types.go b/apis/dbforpostgresql/v1beta1/zz_serverkey_types.go index f5ffa68f0..f957d2f09 100755 --- a/apis/dbforpostgresql/v1beta1/zz_serverkey_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_serverkey_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ServerKeyInitParameters struct { +} + type ServerKeyObservation struct { // The ID of the PostgreSQL Server Key. @@ -60,6 +63,18 @@ type ServerKeyParameters struct { type ServerKeySpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServerKeyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServerKeyInitParameters `json:"initProvider,omitempty"` } // ServerKeyStatus defines the observed state of ServerKey. diff --git a/apis/dbforpostgresql/v1beta1/zz_virtualnetworkrule_types.go b/apis/dbforpostgresql/v1beta1/zz_virtualnetworkrule_types.go index 07b020243..7fbfeacdd 100755 --- a/apis/dbforpostgresql/v1beta1/zz_virtualnetworkrule_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_virtualnetworkrule_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VirtualNetworkRuleInitParameters struct { + + // Should the Virtual Network Rule be created before the Subnet has the Virtual Network Service Endpoint enabled? + IgnoreMissingVnetServiceEndpoint *bool `json:"ignoreMissingVnetServiceEndpoint,omitempty" tf:"ignore_missing_vnet_service_endpoint,omitempty"` +} + type VirtualNetworkRuleObservation struct { // The ID of the PostgreSQL Virtual Network Rule. @@ -82,6 +88,18 @@ type VirtualNetworkRuleParameters struct { type VirtualNetworkRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualNetworkRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualNetworkRuleInitParameters `json:"initProvider,omitempty"` } // VirtualNetworkRuleStatus defines the observed state of VirtualNetworkRule. diff --git a/apis/devices/v1beta1/zz_generated.deepcopy.go b/apis/devices/v1beta1/zz_generated.deepcopy.go index 184309ad6..b472fcb5c 100644 --- a/apis/devices/v1beta1/zz_generated.deepcopy.go +++ b/apis/devices/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,38 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CloudToDeviceInitParameters) DeepCopyInto(out *CloudToDeviceInitParameters) { + *out = *in + if in.DefaultTTL != nil { + in, out := &in.DefaultTTL, &out.DefaultTTL + *out = new(string) + **out = **in + } + if in.Feedback != nil { + in, out := &in.Feedback, &out.Feedback + *out = make([]FeedbackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MaxDeliveryCount != nil { + in, out := &in.MaxDeliveryCount, &out.MaxDeliveryCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudToDeviceInitParameters. +func (in *CloudToDeviceInitParameters) DeepCopy() *CloudToDeviceInitParameters { + if in == nil { + return nil + } + out := new(CloudToDeviceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CloudToDeviceObservation) DeepCopyInto(out *CloudToDeviceObservation) { *out = *in @@ -78,6 +110,21 @@ func (in *CloudToDeviceParameters) DeepCopy() *CloudToDeviceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointInitParameters) DeepCopyInto(out *EndpointInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointInitParameters. +func (in *EndpointInitParameters) DeepCopy() *EndpointInitParameters { + if in == nil { + return nil + } + out := new(EndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EndpointObservation) DeepCopyInto(out *EndpointObservation) { *out = *in @@ -168,6 +215,21 @@ func (in *EndpointParameters) DeepCopy() *EndpointParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnrichmentInitParameters) DeepCopyInto(out *EnrichmentInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnrichmentInitParameters. +func (in *EnrichmentInitParameters) DeepCopy() *EnrichmentInitParameters { + if in == nil { + return nil + } + out := new(EnrichmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EnrichmentObservation) DeepCopyInto(out *EnrichmentObservation) { *out = *in @@ -219,6 +281,21 @@ func (in *EnrichmentParameters) DeepCopy() *EnrichmentParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FallbackRouteInitParameters) DeepCopyInto(out *FallbackRouteInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FallbackRouteInitParameters. +func (in *FallbackRouteInitParameters) DeepCopy() *FallbackRouteInitParameters { + if in == nil { + return nil + } + out := new(FallbackRouteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FallbackRouteObservation) DeepCopyInto(out *FallbackRouteObservation) { *out = *in @@ -275,6 +352,36 @@ func (in *FallbackRouteParameters) DeepCopy() *FallbackRouteParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FeedbackInitParameters) DeepCopyInto(out *FeedbackInitParameters) { + *out = *in + if in.LockDuration != nil { + in, out := &in.LockDuration, &out.LockDuration + *out = new(string) + **out = **in + } + if in.MaxDeliveryCount != nil { + in, out := &in.MaxDeliveryCount, &out.MaxDeliveryCount + *out = new(float64) + **out = **in + } + if in.TimeToLive != nil { + in, out := &in.TimeToLive, &out.TimeToLive + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeedbackInitParameters. +func (in *FeedbackInitParameters) DeepCopy() *FeedbackInitParameters { + if in == nil { + return nil + } + out := new(FeedbackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FeedbackObservation) DeepCopyInto(out *FeedbackObservation) { *out = *in @@ -335,6 +442,61 @@ func (in *FeedbackParameters) DeepCopy() *FeedbackParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FileUploadInitParameters) DeepCopyInto(out *FileUploadInitParameters) { + *out = *in + if in.AuthenticationType != nil { + in, out := &in.AuthenticationType, &out.AuthenticationType + *out = new(string) + **out = **in + } + if in.ContainerName != nil { + in, out := &in.ContainerName, &out.ContainerName + *out = new(string) + **out = **in + } + if in.DefaultTTL != nil { + in, out := &in.DefaultTTL, &out.DefaultTTL + *out = new(string) + **out = **in + } + if in.IdentityID != nil { + in, out := &in.IdentityID, &out.IdentityID + *out = new(string) + **out = **in + } + if in.LockDuration != nil { + in, out := &in.LockDuration, &out.LockDuration + *out = new(string) + **out = **in + } + if in.MaxDeliveryCount != nil { + in, out := &in.MaxDeliveryCount, &out.MaxDeliveryCount + *out = new(float64) + **out = **in + } + if in.Notifications != nil { + in, out := &in.Notifications, &out.Notifications + *out = new(bool) + **out = **in + } + if in.SASTTL != nil { + in, out := &in.SASTTL, &out.SASTTL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FileUploadInitParameters. +func (in *FileUploadInitParameters) DeepCopy() *FileUploadInitParameters { + if in == nil { + return nil + } + out := new(FileUploadInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FileUploadObservation) DeepCopyInto(out *FileUploadObservation) { *out = *in @@ -500,6 +662,26 @@ func (in *IOTHubCertificate) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubCertificateInitParameters) DeepCopyInto(out *IOTHubCertificateInitParameters) { + *out = *in + if in.IsVerified != nil { + in, out := &in.IsVerified, &out.IsVerified + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubCertificateInitParameters. +func (in *IOTHubCertificateInitParameters) DeepCopy() *IOTHubCertificateInitParameters { + if in == nil { + return nil + } + out := new(IOTHubCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubCertificateList) DeepCopyInto(out *IOTHubCertificateList) { *out = *in @@ -623,6 +805,7 @@ func (in *IOTHubCertificateSpec) DeepCopyInto(out *IOTHubCertificateSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubCertificateSpec. @@ -679,6 +862,21 @@ func (in *IOTHubConsumerGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubConsumerGroupInitParameters) DeepCopyInto(out *IOTHubConsumerGroupInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubConsumerGroupInitParameters. +func (in *IOTHubConsumerGroupInitParameters) DeepCopy() *IOTHubConsumerGroupInitParameters { + if in == nil { + return nil + } + out := new(IOTHubConsumerGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubConsumerGroupList) DeepCopyInto(out *IOTHubConsumerGroupList) { *out = *in @@ -801,6 +999,7 @@ func (in *IOTHubConsumerGroupSpec) DeepCopyInto(out *IOTHubConsumerGroupSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubConsumerGroupSpec. @@ -884,6 +1083,26 @@ func (in *IOTHubDPSCertificate) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubDPSCertificateInitParameters) DeepCopyInto(out *IOTHubDPSCertificateInitParameters) { + *out = *in + if in.IsVerified != nil { + in, out := &in.IsVerified, &out.IsVerified + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDPSCertificateInitParameters. +func (in *IOTHubDPSCertificateInitParameters) DeepCopy() *IOTHubDPSCertificateInitParameters { + if in == nil { + return nil + } + out := new(IOTHubDPSCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubDPSCertificateList) DeepCopyInto(out *IOTHubDPSCertificateList) { *out = *in @@ -1007,6 +1226,7 @@ func (in *IOTHubDPSCertificateSpec) DeepCopyInto(out *IOTHubDPSCertificateSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDPSCertificateSpec. @@ -1036,6 +1256,77 @@ func (in *IOTHubDPSCertificateStatus) DeepCopy() *IOTHubDPSCertificateStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubDPSInitParameters) DeepCopyInto(out *IOTHubDPSInitParameters) { + *out = *in + if in.AllocationPolicy != nil { + in, out := &in.AllocationPolicy, &out.AllocationPolicy + *out = new(string) + **out = **in + } + if in.DataResidencyEnabled != nil { + in, out := &in.DataResidencyEnabled, &out.DataResidencyEnabled + *out = new(bool) + **out = **in + } + if in.IPFilterRule != nil { + in, out := &in.IPFilterRule, &out.IPFilterRule + *out = make([]IPFilterRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LinkedHub != nil { + in, out := &in.LinkedHub, &out.LinkedHub + *out = make([]LinkedHubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = make([]IOTHubDPSSkuInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDPSInitParameters. +func (in *IOTHubDPSInitParameters) DeepCopy() *IOTHubDPSInitParameters { + if in == nil { + return nil + } + out := new(IOTHubDPSInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubDPSList) DeepCopyInto(out *IOTHubDPSList) { *out = *in @@ -1278,19 +1569,59 @@ func (in *IOTHubDPSSharedAccessPolicy) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IOTHubDPSSharedAccessPolicyList) DeepCopyInto(out *IOTHubDPSSharedAccessPolicyList) { +func (in *IOTHubDPSSharedAccessPolicyInitParameters) DeepCopyInto(out *IOTHubDPSSharedAccessPolicyInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]IOTHubDPSSharedAccessPolicy, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - + if in.EnrollmentRead != nil { + in, out := &in.EnrollmentRead, &out.EnrollmentRead + *out = new(bool) + **out = **in + } + if in.EnrollmentWrite != nil { + in, out := &in.EnrollmentWrite, &out.EnrollmentWrite + *out = new(bool) + **out = **in + } + if in.RegistrationRead != nil { + in, out := &in.RegistrationRead, &out.RegistrationRead + *out = new(bool) + **out = **in + } + if in.RegistrationWrite != nil { + in, out := &in.RegistrationWrite, &out.RegistrationWrite + *out = new(bool) + **out = **in + } + if in.ServiceConfig != nil { + in, out := &in.ServiceConfig, &out.ServiceConfig + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDPSSharedAccessPolicyInitParameters. +func (in *IOTHubDPSSharedAccessPolicyInitParameters) DeepCopy() *IOTHubDPSSharedAccessPolicyInitParameters { + if in == nil { + return nil + } + out := new(IOTHubDPSSharedAccessPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubDPSSharedAccessPolicyList) DeepCopyInto(out *IOTHubDPSSharedAccessPolicyList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]IOTHubDPSSharedAccessPolicy, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDPSSharedAccessPolicyList. func (in *IOTHubDPSSharedAccessPolicyList) DeepCopy() *IOTHubDPSSharedAccessPolicyList { if in == nil { @@ -1439,6 +1770,7 @@ func (in *IOTHubDPSSharedAccessPolicySpec) DeepCopyInto(out *IOTHubDPSSharedAcce *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDPSSharedAccessPolicySpec. @@ -1468,6 +1800,31 @@ func (in *IOTHubDPSSharedAccessPolicyStatus) DeepCopy() *IOTHubDPSSharedAccessPo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubDPSSkuInitParameters) DeepCopyInto(out *IOTHubDPSSkuInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDPSSkuInitParameters. +func (in *IOTHubDPSSkuInitParameters) DeepCopy() *IOTHubDPSSkuInitParameters { + if in == nil { + return nil + } + out := new(IOTHubDPSSkuInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubDPSSkuObservation) DeepCopyInto(out *IOTHubDPSSkuObservation) { *out = *in @@ -1523,6 +1880,7 @@ func (in *IOTHubDPSSpec) DeepCopyInto(out *IOTHubDPSSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDPSSpec. @@ -1579,6 +1937,41 @@ func (in *IOTHubEndpointEventHub) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubEndpointEventHubInitParameters) DeepCopyInto(out *IOTHubEndpointEventHubInitParameters) { + *out = *in + if in.AuthenticationType != nil { + in, out := &in.AuthenticationType, &out.AuthenticationType + *out = new(string) + **out = **in + } + if in.EndpointURI != nil { + in, out := &in.EndpointURI, &out.EndpointURI + *out = new(string) + **out = **in + } + if in.EntityPath != nil { + in, out := &in.EntityPath, &out.EntityPath + *out = new(string) + **out = **in + } + if in.IdentityID != nil { + in, out := &in.IdentityID, &out.IdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubEndpointEventHubInitParameters. +func (in *IOTHubEndpointEventHubInitParameters) DeepCopy() *IOTHubEndpointEventHubInitParameters { + if in == nil { + return nil + } + out := new(IOTHubEndpointEventHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubEndpointEventHubList) DeepCopyInto(out *IOTHubEndpointEventHubList) { *out = *in @@ -1736,6 +2129,7 @@ func (in *IOTHubEndpointEventHubSpec) DeepCopyInto(out *IOTHubEndpointEventHubSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubEndpointEventHubSpec. @@ -1792,6 +2186,41 @@ func (in *IOTHubEndpointServiceBusQueue) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubEndpointServiceBusQueueInitParameters) DeepCopyInto(out *IOTHubEndpointServiceBusQueueInitParameters) { + *out = *in + if in.AuthenticationType != nil { + in, out := &in.AuthenticationType, &out.AuthenticationType + *out = new(string) + **out = **in + } + if in.EndpointURI != nil { + in, out := &in.EndpointURI, &out.EndpointURI + *out = new(string) + **out = **in + } + if in.EntityPath != nil { + in, out := &in.EntityPath, &out.EntityPath + *out = new(string) + **out = **in + } + if in.IdentityID != nil { + in, out := &in.IdentityID, &out.IdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubEndpointServiceBusQueueInitParameters. +func (in *IOTHubEndpointServiceBusQueueInitParameters) DeepCopy() *IOTHubEndpointServiceBusQueueInitParameters { + if in == nil { + return nil + } + out := new(IOTHubEndpointServiceBusQueueInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubEndpointServiceBusQueueList) DeepCopyInto(out *IOTHubEndpointServiceBusQueueList) { *out = *in @@ -1949,6 +2378,7 @@ func (in *IOTHubEndpointServiceBusQueueSpec) DeepCopyInto(out *IOTHubEndpointSer *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubEndpointServiceBusQueueSpec. @@ -2005,6 +2435,41 @@ func (in *IOTHubEndpointServiceBusTopic) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubEndpointServiceBusTopicInitParameters) DeepCopyInto(out *IOTHubEndpointServiceBusTopicInitParameters) { + *out = *in + if in.AuthenticationType != nil { + in, out := &in.AuthenticationType, &out.AuthenticationType + *out = new(string) + **out = **in + } + if in.EndpointURI != nil { + in, out := &in.EndpointURI, &out.EndpointURI + *out = new(string) + **out = **in + } + if in.EntityPath != nil { + in, out := &in.EntityPath, &out.EntityPath + *out = new(string) + **out = **in + } + if in.IdentityID != nil { + in, out := &in.IdentityID, &out.IdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubEndpointServiceBusTopicInitParameters. +func (in *IOTHubEndpointServiceBusTopicInitParameters) DeepCopy() *IOTHubEndpointServiceBusTopicInitParameters { + if in == nil { + return nil + } + out := new(IOTHubEndpointServiceBusTopicInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubEndpointServiceBusTopicList) DeepCopyInto(out *IOTHubEndpointServiceBusTopicList) { *out = *in @@ -2162,6 +2627,7 @@ func (in *IOTHubEndpointServiceBusTopicSpec) DeepCopyInto(out *IOTHubEndpointSer *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubEndpointServiceBusTopicSpec. @@ -2218,6 +2684,56 @@ func (in *IOTHubEndpointStorageContainer) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubEndpointStorageContainerInitParameters) DeepCopyInto(out *IOTHubEndpointStorageContainerInitParameters) { + *out = *in + if in.AuthenticationType != nil { + in, out := &in.AuthenticationType, &out.AuthenticationType + *out = new(string) + **out = **in + } + if in.BatchFrequencyInSeconds != nil { + in, out := &in.BatchFrequencyInSeconds, &out.BatchFrequencyInSeconds + *out = new(float64) + **out = **in + } + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.EndpointURI != nil { + in, out := &in.EndpointURI, &out.EndpointURI + *out = new(string) + **out = **in + } + if in.FileNameFormat != nil { + in, out := &in.FileNameFormat, &out.FileNameFormat + *out = new(string) + **out = **in + } + if in.IdentityID != nil { + in, out := &in.IdentityID, &out.IdentityID + *out = new(string) + **out = **in + } + if in.MaxChunkSizeInBytes != nil { + in, out := &in.MaxChunkSizeInBytes, &out.MaxChunkSizeInBytes + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubEndpointStorageContainerInitParameters. +func (in *IOTHubEndpointStorageContainerInitParameters) DeepCopy() *IOTHubEndpointStorageContainerInitParameters { + if in == nil { + return nil + } + out := new(IOTHubEndpointStorageContainerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubEndpointStorageContainerList) DeepCopyInto(out *IOTHubEndpointStorageContainerList) { *out = *in @@ -2425,6 +2941,7 @@ func (in *IOTHubEndpointStorageContainerSpec) DeepCopyInto(out *IOTHubEndpointSt *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubEndpointStorageContainerSpec. @@ -2481,6 +2998,42 @@ func (in *IOTHubEnrichment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubEnrichmentInitParameters) DeepCopyInto(out *IOTHubEnrichmentInitParameters) { + *out = *in + if in.EndpointNames != nil { + in, out := &in.EndpointNames, &out.EndpointNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubEnrichmentInitParameters. +func (in *IOTHubEnrichmentInitParameters) DeepCopy() *IOTHubEnrichmentInitParameters { + if in == nil { + return nil + } + out := new(IOTHubEnrichmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubEnrichmentList) DeepCopyInto(out *IOTHubEnrichmentList) { *out = *in @@ -2635,6 +3188,7 @@ func (in *IOTHubEnrichmentSpec) DeepCopyInto(out *IOTHubEnrichmentSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubEnrichmentSpec. @@ -2692,20 +3246,50 @@ func (in *IOTHubFallbackRoute) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IOTHubFallbackRouteList) DeepCopyInto(out *IOTHubFallbackRouteList) { +func (in *IOTHubFallbackRouteInitParameters) DeepCopyInto(out *IOTHubFallbackRouteInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]IOTHubFallbackRoute, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = new(string) + **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubFallbackRouteList. + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Source != nil { + in, out := &in.Source, &out.Source + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubFallbackRouteInitParameters. +func (in *IOTHubFallbackRouteInitParameters) DeepCopy() *IOTHubFallbackRouteInitParameters { + if in == nil { + return nil + } + out := new(IOTHubFallbackRouteInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubFallbackRouteList) DeepCopyInto(out *IOTHubFallbackRouteList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]IOTHubFallbackRoute, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubFallbackRouteList. func (in *IOTHubFallbackRouteList) DeepCopy() *IOTHubFallbackRouteList { if in == nil { return nil @@ -2867,6 +3451,7 @@ func (in *IOTHubFallbackRouteSpec) DeepCopyInto(out *IOTHubFallbackRouteSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubFallbackRouteSpec. @@ -2896,6 +3481,96 @@ func (in *IOTHubFallbackRouteStatus) DeepCopy() *IOTHubFallbackRouteStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubInitParameters) DeepCopyInto(out *IOTHubInitParameters) { + *out = *in + if in.CloudToDevice != nil { + in, out := &in.CloudToDevice, &out.CloudToDevice + *out = make([]CloudToDeviceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EventHubPartitionCount != nil { + in, out := &in.EventHubPartitionCount, &out.EventHubPartitionCount + *out = new(float64) + **out = **in + } + if in.EventHubRetentionInDays != nil { + in, out := &in.EventHubRetentionInDays, &out.EventHubRetentionInDays + *out = new(float64) + **out = **in + } + if in.FileUpload != nil { + in, out := &in.FileUpload, &out.FileUpload + *out = make([]FileUploadInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MinTLSVersion != nil { + in, out := &in.MinTLSVersion, &out.MinTLSVersion + *out = new(string) + **out = **in + } + if in.NetworkRuleSet != nil { + in, out := &in.NetworkRuleSet, &out.NetworkRuleSet + *out = make([]NetworkRuleSetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = make([]SkuInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubInitParameters. +func (in *IOTHubInitParameters) DeepCopy() *IOTHubInitParameters { + if in == nil { + return nil + } + out := new(IOTHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubList) DeepCopyInto(out *IOTHubList) { *out = *in @@ -3230,6 +3905,47 @@ func (in *IOTHubRoute) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubRouteInitParameters) DeepCopyInto(out *IOTHubRouteInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.EndpointNames != nil { + in, out := &in.EndpointNames, &out.EndpointNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Source != nil { + in, out := &in.Source, &out.Source + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubRouteInitParameters. +func (in *IOTHubRouteInitParameters) DeepCopy() *IOTHubRouteInitParameters { + if in == nil { + return nil + } + out := new(IOTHubRouteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubRouteList) DeepCopyInto(out *IOTHubRouteList) { *out = *in @@ -3394,6 +4110,7 @@ func (in *IOTHubRouteSpec) DeepCopyInto(out *IOTHubRouteSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubRouteSpec. @@ -3450,6 +4167,41 @@ func (in *IOTHubSharedAccessPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubSharedAccessPolicyInitParameters) DeepCopyInto(out *IOTHubSharedAccessPolicyInitParameters) { + *out = *in + if in.DeviceConnect != nil { + in, out := &in.DeviceConnect, &out.DeviceConnect + *out = new(bool) + **out = **in + } + if in.RegistryRead != nil { + in, out := &in.RegistryRead, &out.RegistryRead + *out = new(bool) + **out = **in + } + if in.RegistryWrite != nil { + in, out := &in.RegistryWrite, &out.RegistryWrite + *out = new(bool) + **out = **in + } + if in.ServiceConnect != nil { + in, out := &in.ServiceConnect, &out.ServiceConnect + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubSharedAccessPolicyInitParameters. +func (in *IOTHubSharedAccessPolicyInitParameters) DeepCopy() *IOTHubSharedAccessPolicyInitParameters { + if in == nil { + return nil + } + out := new(IOTHubSharedAccessPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubSharedAccessPolicyList) DeepCopyInto(out *IOTHubSharedAccessPolicyList) { *out = *in @@ -3602,6 +4354,7 @@ func (in *IOTHubSharedAccessPolicySpec) DeepCopyInto(out *IOTHubSharedAccessPoli *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubSharedAccessPolicySpec. @@ -3636,6 +4389,7 @@ func (in *IOTHubSpec) DeepCopyInto(out *IOTHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubSpec. @@ -3665,6 +4419,41 @@ func (in *IOTHubStatus) DeepCopy() *IOTHubStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPFilterRuleInitParameters) DeepCopyInto(out *IPFilterRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.IPMask != nil { + in, out := &in.IPMask, &out.IPMask + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Target != nil { + in, out := &in.Target, &out.Target + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPFilterRuleInitParameters. +func (in *IPFilterRuleInitParameters) DeepCopy() *IPFilterRuleInitParameters { + if in == nil { + return nil + } + out := new(IPFilterRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPFilterRuleObservation) DeepCopyInto(out *IPFilterRuleObservation) { *out = *in @@ -3735,6 +4524,36 @@ func (in *IPFilterRuleParameters) DeepCopy() *IPFilterRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPRuleInitParameters) DeepCopyInto(out *IPRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.IPMask != nil { + in, out := &in.IPMask, &out.IPMask + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRuleInitParameters. +func (in *IPRuleInitParameters) DeepCopy() *IPRuleInitParameters { + if in == nil { + return nil + } + out := new(IPRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPRuleObservation) DeepCopyInto(out *IPRuleObservation) { *out = *in @@ -3795,6 +4614,37 @@ func (in *IPRuleParameters) DeepCopy() *IPRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -3867,6 +4717,36 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedHubInitParameters) DeepCopyInto(out *LinkedHubInitParameters) { + *out = *in + if in.AllocationWeight != nil { + in, out := &in.AllocationWeight, &out.AllocationWeight + *out = new(float64) + **out = **in + } + if in.ApplyAllocationPolicy != nil { + in, out := &in.ApplyAllocationPolicy, &out.ApplyAllocationPolicy + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedHubInitParameters. +func (in *LinkedHubInitParameters) DeepCopy() *LinkedHubInitParameters { + if in == nil { + return nil + } + out := new(LinkedHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedHubObservation) DeepCopyInto(out *LinkedHubObservation) { *out = *in @@ -3933,6 +4813,38 @@ func (in *LinkedHubParameters) DeepCopy() *LinkedHubParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkRuleSetInitParameters) DeepCopyInto(out *NetworkRuleSetInitParameters) { + *out = *in + if in.ApplyToBuiltinEventHubEndpoint != nil { + in, out := &in.ApplyToBuiltinEventHubEndpoint, &out.ApplyToBuiltinEventHubEndpoint + *out = new(bool) + **out = **in + } + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.IPRule != nil { + in, out := &in.IPRule, &out.IPRule + *out = make([]IPRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkRuleSetInitParameters. +func (in *NetworkRuleSetInitParameters) DeepCopy() *NetworkRuleSetInitParameters { + if in == nil { + return nil + } + out := new(NetworkRuleSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkRuleSetObservation) DeepCopyInto(out *NetworkRuleSetObservation) { *out = *in @@ -3997,6 +4909,21 @@ func (in *NetworkRuleSetParameters) DeepCopy() *NetworkRuleSetParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteInitParameters) DeepCopyInto(out *RouteInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteInitParameters. +func (in *RouteInitParameters) DeepCopy() *RouteInitParameters { + if in == nil { + return nil + } + out := new(RouteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteObservation) DeepCopyInto(out *RouteObservation) { *out = *in @@ -4058,6 +4985,21 @@ func (in *RouteParameters) DeepCopy() *RouteParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedAccessPolicyInitParameters) DeepCopyInto(out *SharedAccessPolicyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedAccessPolicyInitParameters. +func (in *SharedAccessPolicyInitParameters) DeepCopy() *SharedAccessPolicyInitParameters { + if in == nil { + return nil + } + out := new(SharedAccessPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SharedAccessPolicyObservation) DeepCopyInto(out *SharedAccessPolicyObservation) { *out = *in @@ -4098,6 +5040,31 @@ func (in *SharedAccessPolicyParameters) DeepCopy() *SharedAccessPolicyParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuInitParameters) DeepCopyInto(out *SkuInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuInitParameters. +func (in *SkuInitParameters) DeepCopy() *SkuInitParameters { + if in == nil { + return nil + } + out := new(SkuInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SkuObservation) DeepCopyInto(out *SkuObservation) { *out = *in diff --git a/apis/devices/v1beta1/zz_generated.managed.go b/apis/devices/v1beta1/zz_generated.managed.go index 7269a99ed..422aea9ae 100644 --- a/apis/devices/v1beta1/zz_generated.managed.go +++ b/apis/devices/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *IOTHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHub. -func (mg *IOTHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHub. +func (mg *IOTHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHub. @@ -55,9 +55,9 @@ func (mg *IOTHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHub. -func (mg *IOTHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHub. +func (mg *IOTHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHub. @@ -93,9 +93,9 @@ func (mg *IOTHubCertificate) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubCertificate. -func (mg *IOTHubCertificate) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubCertificate. +func (mg *IOTHubCertificate) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubCertificate. @@ -131,9 +131,9 @@ func (mg *IOTHubCertificate) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubCertificate. -func (mg *IOTHubCertificate) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubCertificate. +func (mg *IOTHubCertificate) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubCertificate. @@ -169,9 +169,9 @@ func (mg *IOTHubConsumerGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubConsumerGroup. -func (mg *IOTHubConsumerGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubConsumerGroup. +func (mg *IOTHubConsumerGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubConsumerGroup. @@ -207,9 +207,9 @@ func (mg *IOTHubConsumerGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubConsumerGroup. -func (mg *IOTHubConsumerGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubConsumerGroup. +func (mg *IOTHubConsumerGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubConsumerGroup. @@ -245,9 +245,9 @@ func (mg *IOTHubDPS) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubDPS. -func (mg *IOTHubDPS) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubDPS. +func (mg *IOTHubDPS) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubDPS. @@ -283,9 +283,9 @@ func (mg *IOTHubDPS) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubDPS. -func (mg *IOTHubDPS) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubDPS. +func (mg *IOTHubDPS) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubDPS. @@ -321,9 +321,9 @@ func (mg *IOTHubDPSCertificate) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubDPSCertificate. -func (mg *IOTHubDPSCertificate) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubDPSCertificate. +func (mg *IOTHubDPSCertificate) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubDPSCertificate. @@ -359,9 +359,9 @@ func (mg *IOTHubDPSCertificate) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubDPSCertificate. -func (mg *IOTHubDPSCertificate) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubDPSCertificate. +func (mg *IOTHubDPSCertificate) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubDPSCertificate. @@ -397,9 +397,9 @@ func (mg *IOTHubDPSSharedAccessPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubDPSSharedAccessPolicy. -func (mg *IOTHubDPSSharedAccessPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubDPSSharedAccessPolicy. +func (mg *IOTHubDPSSharedAccessPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubDPSSharedAccessPolicy. @@ -435,9 +435,9 @@ func (mg *IOTHubDPSSharedAccessPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubDPSSharedAccessPolicy. -func (mg *IOTHubDPSSharedAccessPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubDPSSharedAccessPolicy. +func (mg *IOTHubDPSSharedAccessPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubDPSSharedAccessPolicy. @@ -473,9 +473,9 @@ func (mg *IOTHubEndpointEventHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubEndpointEventHub. -func (mg *IOTHubEndpointEventHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubEndpointEventHub. +func (mg *IOTHubEndpointEventHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubEndpointEventHub. @@ -511,9 +511,9 @@ func (mg *IOTHubEndpointEventHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubEndpointEventHub. -func (mg *IOTHubEndpointEventHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubEndpointEventHub. +func (mg *IOTHubEndpointEventHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubEndpointEventHub. @@ -549,9 +549,9 @@ func (mg *IOTHubEndpointServiceBusQueue) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubEndpointServiceBusQueue. -func (mg *IOTHubEndpointServiceBusQueue) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubEndpointServiceBusQueue. +func (mg *IOTHubEndpointServiceBusQueue) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubEndpointServiceBusQueue. @@ -587,9 +587,9 @@ func (mg *IOTHubEndpointServiceBusQueue) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubEndpointServiceBusQueue. -func (mg *IOTHubEndpointServiceBusQueue) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubEndpointServiceBusQueue. +func (mg *IOTHubEndpointServiceBusQueue) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubEndpointServiceBusQueue. @@ -625,9 +625,9 @@ func (mg *IOTHubEndpointServiceBusTopic) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubEndpointServiceBusTopic. -func (mg *IOTHubEndpointServiceBusTopic) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubEndpointServiceBusTopic. +func (mg *IOTHubEndpointServiceBusTopic) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubEndpointServiceBusTopic. @@ -663,9 +663,9 @@ func (mg *IOTHubEndpointServiceBusTopic) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubEndpointServiceBusTopic. -func (mg *IOTHubEndpointServiceBusTopic) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubEndpointServiceBusTopic. +func (mg *IOTHubEndpointServiceBusTopic) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubEndpointServiceBusTopic. @@ -701,9 +701,9 @@ func (mg *IOTHubEndpointStorageContainer) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubEndpointStorageContainer. -func (mg *IOTHubEndpointStorageContainer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubEndpointStorageContainer. +func (mg *IOTHubEndpointStorageContainer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubEndpointStorageContainer. @@ -739,9 +739,9 @@ func (mg *IOTHubEndpointStorageContainer) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubEndpointStorageContainer. -func (mg *IOTHubEndpointStorageContainer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubEndpointStorageContainer. +func (mg *IOTHubEndpointStorageContainer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubEndpointStorageContainer. @@ -777,9 +777,9 @@ func (mg *IOTHubEnrichment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubEnrichment. -func (mg *IOTHubEnrichment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubEnrichment. +func (mg *IOTHubEnrichment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubEnrichment. @@ -815,9 +815,9 @@ func (mg *IOTHubEnrichment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubEnrichment. -func (mg *IOTHubEnrichment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubEnrichment. +func (mg *IOTHubEnrichment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubEnrichment. @@ -853,9 +853,9 @@ func (mg *IOTHubFallbackRoute) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubFallbackRoute. -func (mg *IOTHubFallbackRoute) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubFallbackRoute. +func (mg *IOTHubFallbackRoute) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubFallbackRoute. @@ -891,9 +891,9 @@ func (mg *IOTHubFallbackRoute) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubFallbackRoute. -func (mg *IOTHubFallbackRoute) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubFallbackRoute. +func (mg *IOTHubFallbackRoute) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubFallbackRoute. @@ -929,9 +929,9 @@ func (mg *IOTHubRoute) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubRoute. -func (mg *IOTHubRoute) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubRoute. +func (mg *IOTHubRoute) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubRoute. @@ -967,9 +967,9 @@ func (mg *IOTHubRoute) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubRoute. -func (mg *IOTHubRoute) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubRoute. +func (mg *IOTHubRoute) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubRoute. @@ -1005,9 +1005,9 @@ func (mg *IOTHubSharedAccessPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubSharedAccessPolicy. -func (mg *IOTHubSharedAccessPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubSharedAccessPolicy. +func (mg *IOTHubSharedAccessPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubSharedAccessPolicy. @@ -1043,9 +1043,9 @@ func (mg *IOTHubSharedAccessPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubSharedAccessPolicy. -func (mg *IOTHubSharedAccessPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubSharedAccessPolicy. +func (mg *IOTHubSharedAccessPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubSharedAccessPolicy. diff --git a/apis/devices/v1beta1/zz_generated_terraformed.go b/apis/devices/v1beta1/zz_generated_terraformed.go index 65128f4d3..33259aac3 100755 --- a/apis/devices/v1beta1/zz_generated_terraformed.go +++ b/apis/devices/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *IOTHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHub +func (tr *IOTHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHub) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *IOTHubCertificate) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubCertificate +func (tr *IOTHubCertificate) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubCertificate using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubCertificate) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *IOTHubConsumerGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubConsumerGroup +func (tr *IOTHubConsumerGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubConsumerGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubConsumerGroup) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *IOTHubDPS) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubDPS +func (tr *IOTHubDPS) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubDPS using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubDPS) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *IOTHubDPSCertificate) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubDPSCertificate +func (tr *IOTHubDPSCertificate) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubDPSCertificate using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubDPSCertificate) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *IOTHubDPSSharedAccessPolicy) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubDPSSharedAccessPolicy +func (tr *IOTHubDPSSharedAccessPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubDPSSharedAccessPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubDPSSharedAccessPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *IOTHubEndpointEventHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubEndpointEventHub +func (tr *IOTHubEndpointEventHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubEndpointEventHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubEndpointEventHub) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *IOTHubEndpointServiceBusQueue) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubEndpointServiceBusQueue +func (tr *IOTHubEndpointServiceBusQueue) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubEndpointServiceBusQueue using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubEndpointServiceBusQueue) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *IOTHubEndpointServiceBusTopic) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubEndpointServiceBusTopic +func (tr *IOTHubEndpointServiceBusTopic) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubEndpointServiceBusTopic using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubEndpointServiceBusTopic) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *IOTHubEndpointStorageContainer) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubEndpointStorageContainer +func (tr *IOTHubEndpointStorageContainer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubEndpointStorageContainer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubEndpointStorageContainer) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *IOTHubEnrichment) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubEnrichment +func (tr *IOTHubEnrichment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubEnrichment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubEnrichment) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *IOTHubFallbackRoute) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubFallbackRoute +func (tr *IOTHubFallbackRoute) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubFallbackRoute using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubFallbackRoute) LateInitialize(attrs []byte) (bool, error) { @@ -957,6 +1077,16 @@ func (tr *IOTHubRoute) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubRoute +func (tr *IOTHubRoute) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubRoute using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubRoute) LateInitialize(attrs []byte) (bool, error) { @@ -1031,6 +1161,16 @@ func (tr *IOTHubSharedAccessPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubSharedAccessPolicy +func (tr *IOTHubSharedAccessPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubSharedAccessPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubSharedAccessPolicy) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/devices/v1beta1/zz_iothub_types.go b/apis/devices/v1beta1/zz_iothub_types.go index 2fdb663b3..d08ef79ea 100755 --- a/apis/devices/v1beta1/zz_iothub_types.go +++ b/apis/devices/v1beta1/zz_iothub_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CloudToDeviceInitParameters struct { + + // The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H. + DefaultTTL *string `json:"defaultTtl,omitempty" tf:"default_ttl,omitempty"` + + // A feedback block as defined below. + Feedback []FeedbackInitParameters `json:"feedback,omitempty" tf:"feedback,omitempty"` + + // The maximum delivery count for cloud-to-device per-device queues. This value must be between 1 and 100. Defaults to 10. + MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` +} + type CloudToDeviceObservation struct { // The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H. @@ -40,6 +52,9 @@ type CloudToDeviceParameters struct { MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` } +type EndpointInitParameters struct { +} + type EndpointObservation struct { // The type used to authenticate against the endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. @@ -82,6 +97,9 @@ type EndpointObservation struct { type EndpointParameters struct { } +type EnrichmentInitParameters struct { +} + type EnrichmentObservation struct { // The list of endpoints which will be enriched. @@ -97,6 +115,9 @@ type EnrichmentObservation struct { type EnrichmentParameters struct { } +type FallbackRouteInitParameters struct { +} + type FallbackRouteObservation struct { // The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language. @@ -115,6 +136,18 @@ type FallbackRouteObservation struct { type FallbackRouteParameters struct { } +type FeedbackInitParameters struct { + + // The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M. + LockDuration *string `json:"lockDuration,omitempty" tf:"lock_duration,omitempty"` + + // The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10. + MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` + + // The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H. + TimeToLive *string `json:"timeToLive,omitempty" tf:"time_to_live,omitempty"` +} + type FeedbackObservation struct { // The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M. @@ -142,6 +175,33 @@ type FeedbackParameters struct { TimeToLive *string `json:"timeToLive,omitempty" tf:"time_to_live,omitempty"` } +type FileUploadInitParameters struct { + + // The type used to authenticate against the storage account. Possible values are keyBased and identityBased. Defaults to keyBased. + AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` + + // The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified. + ContainerName *string `json:"containerName,omitempty" tf:"container_name,omitempty"` + + // The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H. + DefaultTTL *string `json:"defaultTtl,omitempty" tf:"default_ttl,omitempty"` + + // The ID of the User Managed Identity used to authenticate against the storage account. + IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` + + // The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M. + LockDuration *string `json:"lockDuration,omitempty" tf:"lock_duration,omitempty"` + + // The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10. + MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` + + // Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false. + Notifications *bool `json:"notifications,omitempty" tf:"notifications,omitempty"` + + // The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H. + SASTTL *string `json:"sasTtl,omitempty" tf:"sas_ttl,omitempty"` +} + type FileUploadObservation struct { // The type used to authenticate against the storage account. Possible values are keyBased and identityBased. Defaults to keyBased. @@ -180,8 +240,8 @@ type FileUploadParameters struct { ConnectionStringSecretRef v1.SecretKeySelector `json:"connectionStringSecretRef" tf:"-"` // The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified. - // +kubebuilder:validation:Required - ContainerName *string `json:"containerName" tf:"container_name,omitempty"` + // +kubebuilder:validation:Optional + ContainerName *string `json:"containerName,omitempty" tf:"container_name,omitempty"` // The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H. // +kubebuilder:validation:Optional @@ -208,6 +268,42 @@ type FileUploadParameters struct { SASTTL *string `json:"sasTtl,omitempty" tf:"sas_ttl,omitempty"` } +type IOTHubInitParameters struct { + + // A cloud_to_device block as defined below. + CloudToDevice []CloudToDeviceInitParameters `json:"cloudToDevice,omitempty" tf:"cloud_to_device,omitempty"` + + // The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128. + EventHubPartitionCount *float64 `json:"eventHubPartitionCount,omitempty" tf:"event_hub_partition_count,omitempty"` + + // The event hub retention to use in days. Must be between 1 and 7. + EventHubRetentionInDays *float64 `json:"eventHubRetentionInDays,omitempty" tf:"event_hub_retention_in_days,omitempty"` + + // A file_upload block as defined below. + FileUpload []FileUploadInitParameters `json:"fileUpload,omitempty" tf:"file_upload,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created. + MinTLSVersion *string `json:"minTlsVersion,omitempty" tf:"min_tls_version,omitempty"` + + // A network_rule_set block as defined below. + NetworkRuleSet []NetworkRuleSetInitParameters `json:"networkRuleSet,omitempty" tf:"network_rule_set,omitempty"` + + // Is the IotHub resource accessible from a public network? + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A sku block as defined below. + Sku []SkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type IOTHubObservation struct { // A cloud_to_device block as defined below. @@ -346,6 +442,18 @@ type IOTHubParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IPRuleInitParameters struct { + + // The desired action for requests captured by this rule. Possible values are Allow. Defaults to Allow. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The IP address range in CIDR notation for the IP rule. + IPMask *string `json:"ipMask,omitempty" tf:"ip_mask,omitempty"` + + // The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type IPRuleObservation struct { // The desired action for requests captured by this rule. Possible values are Allow. Defaults to Allow. @@ -365,12 +473,21 @@ type IPRuleParameters struct { Action *string `json:"action,omitempty" tf:"action,omitempty"` // The IP address range in CIDR notation for the IP rule. - // +kubebuilder:validation:Required - IPMask *string `json:"ipMask" tf:"ip_mask,omitempty"` + // +kubebuilder:validation:Optional + IPMask *string `json:"ipMask,omitempty" tf:"ip_mask,omitempty"` // The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type IdentityObservation struct { @@ -395,8 +512,20 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type NetworkRuleSetInitParameters struct { + + // Determines if Network Rule Set is also applied to the BuiltIn EventHub EndPoint of the IotHub. Defaults to false. + ApplyToBuiltinEventHubEndpoint *bool `json:"applyToBuiltinEventhubEndpoint,omitempty" tf:"apply_to_builtin_eventhub_endpoint,omitempty"` + + // Default Action for Network Rule Set. Possible values are Deny, Allow. Defaults to Deny. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + + // One or more ip_rule blocks as defined below. + IPRule []IPRuleInitParameters `json:"ipRule,omitempty" tf:"ip_rule,omitempty"` } type NetworkRuleSetObservation struct { @@ -426,6 +555,9 @@ type NetworkRuleSetParameters struct { IPRule []IPRuleParameters `json:"ipRule,omitempty" tf:"ip_rule,omitempty"` } +type RouteInitParameters struct { +} + type RouteObservation struct { // The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language. @@ -447,6 +579,9 @@ type RouteObservation struct { type RouteParameters struct { } +type SharedAccessPolicyInitParameters struct { +} + type SharedAccessPolicyObservation struct { // The name of the shared access policy. @@ -459,6 +594,15 @@ type SharedAccessPolicyObservation struct { type SharedAccessPolicyParameters struct { } +type SkuInitParameters struct { + + // The number of provisioned IoT Hub units. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type SkuObservation struct { // The number of provisioned IoT Hub units. @@ -471,18 +615,30 @@ type SkuObservation struct { type SkuParameters struct { // The number of provisioned IoT Hub units. - // +kubebuilder:validation:Required - Capacity *float64 `json:"capacity" tf:"capacity,omitempty"` + // +kubebuilder:validation:Optional + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` } // IOTHubSpec defines the desired state of IOTHub type IOTHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubInitParameters `json:"initProvider,omitempty"` } // IOTHubStatus defines the observed state of IOTHub. @@ -503,8 +659,8 @@ type IOTHubStatus struct { type IOTHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec IOTHubSpec `json:"spec"` Status IOTHubStatus `json:"status,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubcertificate_types.go b/apis/devices/v1beta1/zz_iothubcertificate_types.go index 2caa77dbf..f6c198679 100755 --- a/apis/devices/v1beta1/zz_iothubcertificate_types.go +++ b/apis/devices/v1beta1/zz_iothubcertificate_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubCertificateInitParameters struct { + + // Is the certificate verified? Defaults to false. + IsVerified *bool `json:"isVerified,omitempty" tf:"is_verified,omitempty"` +} + type IOTHubCertificateObservation struct { // The ID of the IoTHub Certificate. @@ -69,6 +75,18 @@ type IOTHubCertificateParameters struct { type IOTHubCertificateSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubCertificateParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubCertificateInitParameters `json:"initProvider,omitempty"` } // IOTHubCertificateStatus defines the observed state of IOTHubCertificate. @@ -89,7 +107,7 @@ type IOTHubCertificateStatus struct { type IOTHubCertificate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.certificateContentSecretRef)",message="certificateContentSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.certificateContentSecretRef)",message="certificateContentSecretRef is a required parameter" Spec IOTHubCertificateSpec `json:"spec"` Status IOTHubCertificateStatus `json:"status,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubconsumergroup_types.go b/apis/devices/v1beta1/zz_iothubconsumergroup_types.go index adef0372a..97cd2d6b8 100755 --- a/apis/devices/v1beta1/zz_iothubconsumergroup_types.go +++ b/apis/devices/v1beta1/zz_iothubconsumergroup_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubConsumerGroupInitParameters struct { +} + type IOTHubConsumerGroupObservation struct { // The name of the Event Hub-compatible endpoint in the IoT hub. Changing this forces a new resource to be created. @@ -65,6 +68,18 @@ type IOTHubConsumerGroupParameters struct { type IOTHubConsumerGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubConsumerGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubConsumerGroupInitParameters `json:"initProvider,omitempty"` } // IOTHubConsumerGroupStatus defines the observed state of IOTHubConsumerGroup. diff --git a/apis/devices/v1beta1/zz_iothubdps_types.go b/apis/devices/v1beta1/zz_iothubdps_types.go index 3798b4b98..adcada6b2 100755 --- a/apis/devices/v1beta1/zz_iothubdps_types.go +++ b/apis/devices/v1beta1/zz_iothubdps_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubDPSInitParameters struct { + + // The allocation policy of the IoT Device Provisioning Service (Hashed, GeoLatency or Static). Defaults to Hashed. + AllocationPolicy *string `json:"allocationPolicy,omitempty" tf:"allocation_policy,omitempty"` + + // Specifies if the IoT Device Provisioning Service has data residency and disaster recovery enabled. Defaults to false. Changing this forces a new resource to be created. + DataResidencyEnabled *bool `json:"dataResidencyEnabled,omitempty" tf:"data_residency_enabled,omitempty"` + + // An ip_filter_rule block as defined below. + IPFilterRule []IPFilterRuleInitParameters `json:"ipFilterRule,omitempty" tf:"ip_filter_rule,omitempty"` + + // A linked_hub block as defined below. + LinkedHub []LinkedHubInitParameters `json:"linkedHub,omitempty" tf:"linked_hub,omitempty"` + + // Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether requests from Public Network are allowed. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A sku block as defined below. + Sku []IOTHubDPSSkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type IOTHubDPSObservation struct { // The allocation policy of the IoT Device Provisioning Service (Hashed, GeoLatency or Static). Defaults to Hashed. @@ -103,6 +130,15 @@ type IOTHubDPSParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IOTHubDPSSkuInitParameters struct { + + // The number of provisioned IoT Device Provisioning Service units. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // The name of the sku. Currently can only be set to S1. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type IOTHubDPSSkuObservation struct { // The number of provisioned IoT Device Provisioning Service units. @@ -115,12 +151,27 @@ type IOTHubDPSSkuObservation struct { type IOTHubDPSSkuParameters struct { // The number of provisioned IoT Device Provisioning Service units. - // +kubebuilder:validation:Required - Capacity *float64 `json:"capacity" tf:"capacity,omitempty"` + // +kubebuilder:validation:Optional + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The name of the sku. Currently can only be set to S1. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type IPFilterRuleInitParameters struct { + + // The desired action for requests captured by this rule. Possible values are Accept, Reject + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The IP address range in CIDR notation for the rule. + IPMask *string `json:"ipMask,omitempty" tf:"ip_mask,omitempty"` + + // The name of the filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Target for requests captured by this rule. Possible values are All, DeviceApi and ServiceApi. + Target *string `json:"target,omitempty" tf:"target,omitempty"` } type IPFilterRuleObservation struct { @@ -141,22 +192,34 @@ type IPFilterRuleObservation struct { type IPFilterRuleParameters struct { // The desired action for requests captured by this rule. Possible values are Accept, Reject - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The IP address range in CIDR notation for the rule. - // +kubebuilder:validation:Required - IPMask *string `json:"ipMask" tf:"ip_mask,omitempty"` + // +kubebuilder:validation:Optional + IPMask *string `json:"ipMask,omitempty" tf:"ip_mask,omitempty"` // The name of the filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Target for requests captured by this rule. Possible values are All, DeviceApi and ServiceApi. // +kubebuilder:validation:Optional Target *string `json:"target,omitempty" tf:"target,omitempty"` } +type LinkedHubInitParameters struct { + + // The weight applied to the IoT Hub. Defaults to 1. + AllocationWeight *float64 `json:"allocationWeight,omitempty" tf:"allocation_weight,omitempty"` + + // Determines whether to apply allocation policies to the IoT Hub. Defaults to true. + ApplyAllocationPolicy *bool `json:"applyAllocationPolicy,omitempty" tf:"apply_allocation_policy,omitempty"` + + // The location of the IoT hub. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type LinkedHubObservation struct { // The weight applied to the IoT Hub. Defaults to 1. @@ -187,14 +250,26 @@ type LinkedHubParameters struct { ConnectionStringSecretRef v1.SecretKeySelector `json:"connectionStringSecretRef" tf:"-"` // The location of the IoT hub. - // +kubebuilder:validation:Required - Location *string `json:"location" tf:"location,omitempty"` + // +kubebuilder:validation:Optional + Location *string `json:"location,omitempty" tf:"location,omitempty"` } // IOTHubDPSSpec defines the desired state of IOTHubDPS type IOTHubDPSSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubDPSParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubDPSInitParameters `json:"initProvider,omitempty"` } // IOTHubDPSStatus defines the observed state of IOTHubDPS. @@ -215,8 +290,8 @@ type IOTHubDPSStatus struct { type IOTHubDPS struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec IOTHubDPSSpec `json:"spec"` Status IOTHubDPSStatus `json:"status,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubdpscertificate_types.go b/apis/devices/v1beta1/zz_iothubdpscertificate_types.go index 81df48d96..0575ca783 100755 --- a/apis/devices/v1beta1/zz_iothubdpscertificate_types.go +++ b/apis/devices/v1beta1/zz_iothubdpscertificate_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubDPSCertificateInitParameters struct { + + // Specifies if the certificate is created in verified state. Defaults to false. Changing this forces a new resource to be created. + IsVerified *bool `json:"isVerified,omitempty" tf:"is_verified,omitempty"` +} + type IOTHubDPSCertificateObservation struct { // The ID of the IoTHub Device Provisioning Service Certificate. @@ -69,6 +75,18 @@ type IOTHubDPSCertificateParameters struct { type IOTHubDPSCertificateSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubDPSCertificateParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubDPSCertificateInitParameters `json:"initProvider,omitempty"` } // IOTHubDPSCertificateStatus defines the observed state of IOTHubDPSCertificate. @@ -89,7 +107,7 @@ type IOTHubDPSCertificateStatus struct { type IOTHubDPSCertificate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.certificateContentSecretRef)",message="certificateContentSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.certificateContentSecretRef)",message="certificateContentSecretRef is a required parameter" Spec IOTHubDPSCertificateSpec `json:"spec"` Status IOTHubDPSCertificateStatus `json:"status,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubdpssharedaccesspolicy_types.go b/apis/devices/v1beta1/zz_iothubdpssharedaccesspolicy_types.go index 4010316e2..11164057e 100755 --- a/apis/devices/v1beta1/zz_iothubdpssharedaccesspolicy_types.go +++ b/apis/devices/v1beta1/zz_iothubdpssharedaccesspolicy_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubDPSSharedAccessPolicyInitParameters struct { + + // Adds EnrollmentRead permission to this Shared Access Account. It allows read access to enrollment data. + EnrollmentRead *bool `json:"enrollmentRead,omitempty" tf:"enrollment_read,omitempty"` + + // Adds EnrollmentWrite permission to this Shared Access Account. It allows write access to enrollment data. + EnrollmentWrite *bool `json:"enrollmentWrite,omitempty" tf:"enrollment_write,omitempty"` + + // Adds RegistrationStatusRead permission to this Shared Access Account. It allows read access to device registrations. + RegistrationRead *bool `json:"registrationRead,omitempty" tf:"registration_read,omitempty"` + + // Adds RegistrationStatusWrite permission to this Shared Access Account. It allows write access to device registrations. + RegistrationWrite *bool `json:"registrationWrite,omitempty" tf:"registration_write,omitempty"` + + // Adds ServiceConfig permission to this Shared Access Account. It allows configuration of the Device Provisioning Service. + ServiceConfig *bool `json:"serviceConfig,omitempty" tf:"service_config,omitempty"` +} + type IOTHubDPSSharedAccessPolicyObservation struct { // Adds EnrollmentRead permission to this Shared Access Account. It allows read access to enrollment data. @@ -93,6 +111,18 @@ type IOTHubDPSSharedAccessPolicyParameters struct { type IOTHubDPSSharedAccessPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubDPSSharedAccessPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubDPSSharedAccessPolicyInitParameters `json:"initProvider,omitempty"` } // IOTHubDPSSharedAccessPolicyStatus defines the observed state of IOTHubDPSSharedAccessPolicy. diff --git a/apis/devices/v1beta1/zz_iothubendpointeventhub_types.go b/apis/devices/v1beta1/zz_iothubendpointeventhub_types.go index 8b26ef3ce..9cb99e4a3 100755 --- a/apis/devices/v1beta1/zz_iothubendpointeventhub_types.go +++ b/apis/devices/v1beta1/zz_iothubendpointeventhub_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubEndpointEventHubInitParameters struct { + + // Type used to authenticate against the Event Hub endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. + AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` + + // URI of the Event Hubs Namespace endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased. + EndpointURI *string `json:"endpointUri,omitempty" tf:"endpoint_uri,omitempty"` + + // Name of the Event Hub. This attribute can only be specified and is mandatory when authentication_type is identityBased. + EntityPath *string `json:"entityPath,omitempty" tf:"entity_path,omitempty"` + + // ID of the User Managed Identity used to authenticate against the Event Hub endpoint. + IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` +} + type IOTHubEndpointEventHubObservation struct { // Type used to authenticate against the Event Hub endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. @@ -91,6 +106,18 @@ type IOTHubEndpointEventHubParameters struct { type IOTHubEndpointEventHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubEndpointEventHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubEndpointEventHubInitParameters `json:"initProvider,omitempty"` } // IOTHubEndpointEventHubStatus defines the observed state of IOTHubEndpointEventHub. diff --git a/apis/devices/v1beta1/zz_iothubendpointservicebusqueue_types.go b/apis/devices/v1beta1/zz_iothubendpointservicebusqueue_types.go index 1410b76bf..e9c7c9c95 100755 --- a/apis/devices/v1beta1/zz_iothubendpointservicebusqueue_types.go +++ b/apis/devices/v1beta1/zz_iothubendpointservicebusqueue_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubEndpointServiceBusQueueInitParameters struct { + + // Type used to authenticate against the Service Bus Queue endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. + AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` + + // URI of the Service Bus endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased. + EndpointURI *string `json:"endpointUri,omitempty" tf:"endpoint_uri,omitempty"` + + // Name of the Service Bus Queue. This attribute can only be specified and is mandatory when authentication_type is identityBased. + EntityPath *string `json:"entityPath,omitempty" tf:"entity_path,omitempty"` + + // ID of the User Managed Identity used to authenticate against the Service Bus Queue endpoint. + IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` +} + type IOTHubEndpointServiceBusQueueObservation struct { // Type used to authenticate against the Service Bus Queue endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. @@ -91,6 +106,18 @@ type IOTHubEndpointServiceBusQueueParameters struct { type IOTHubEndpointServiceBusQueueSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubEndpointServiceBusQueueParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubEndpointServiceBusQueueInitParameters `json:"initProvider,omitempty"` } // IOTHubEndpointServiceBusQueueStatus defines the observed state of IOTHubEndpointServiceBusQueue. diff --git a/apis/devices/v1beta1/zz_iothubendpointservicebustopic_types.go b/apis/devices/v1beta1/zz_iothubendpointservicebustopic_types.go index d45914382..e3cb119d1 100755 --- a/apis/devices/v1beta1/zz_iothubendpointservicebustopic_types.go +++ b/apis/devices/v1beta1/zz_iothubendpointservicebustopic_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubEndpointServiceBusTopicInitParameters struct { + + // Type used to authenticate against the Service Bus Topic endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. + AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` + + // URI of the Service Bus endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased. + EndpointURI *string `json:"endpointUri,omitempty" tf:"endpoint_uri,omitempty"` + + // Name of the Service Bus Topic. This attribute can only be specified and is mandatory when authentication_type is identityBased. + EntityPath *string `json:"entityPath,omitempty" tf:"entity_path,omitempty"` + + // ID of the User Managed Identity used to authenticate against the Service Bus Topic endpoint. + IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` +} + type IOTHubEndpointServiceBusTopicObservation struct { // Type used to authenticate against the Service Bus Topic endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. @@ -91,6 +106,18 @@ type IOTHubEndpointServiceBusTopicParameters struct { type IOTHubEndpointServiceBusTopicSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubEndpointServiceBusTopicParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubEndpointServiceBusTopicInitParameters `json:"initProvider,omitempty"` } // IOTHubEndpointServiceBusTopicStatus defines the observed state of IOTHubEndpointServiceBusTopic. diff --git a/apis/devices/v1beta1/zz_iothubendpointstoragecontainer_types.go b/apis/devices/v1beta1/zz_iothubendpointstoragecontainer_types.go index a9f53c331..f4084f6e0 100755 --- a/apis/devices/v1beta1/zz_iothubendpointstoragecontainer_types.go +++ b/apis/devices/v1beta1/zz_iothubendpointstoragecontainer_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubEndpointStorageContainerInitParameters struct { + + // Type used to authenticate against the storage endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. + AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` + + // Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds. + BatchFrequencyInSeconds *float64 `json:"batchFrequencyInSeconds,omitempty" tf:"batch_frequency_in_seconds,omitempty"` + + // Encoding that is used to serialize messages to blobs. Supported values are Avro, AvroDeflate and JSON. Default value is Avro. Changing this forces a new resource to be created. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // URI of the Storage Container endpoint. This corresponds to the primary_blob_endpoint of the parent storage account. This attribute can only be specified and is mandatory when authentication_type is identityBased. + EndpointURI *string `json:"endpointUri,omitempty" tf:"endpoint_uri,omitempty"` + + // File name format for the blob. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered. + FileNameFormat *string `json:"fileNameFormat,omitempty" tf:"file_name_format,omitempty"` + + // ID of the User Managed Identity used to authenticate against the storage endpoint. + IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` + + // Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB). + MaxChunkSizeInBytes *float64 `json:"maxChunkSizeInBytes,omitempty" tf:"max_chunk_size_in_bytes,omitempty"` +} + type IOTHubEndpointStorageContainerObservation struct { // Type used to authenticate against the storage endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. @@ -128,6 +152,18 @@ type IOTHubEndpointStorageContainerParameters struct { type IOTHubEndpointStorageContainerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubEndpointStorageContainerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubEndpointStorageContainerInitParameters `json:"initProvider,omitempty"` } // IOTHubEndpointStorageContainerStatus defines the observed state of IOTHubEndpointStorageContainer. diff --git a/apis/devices/v1beta1/zz_iothubenrichment_types.go b/apis/devices/v1beta1/zz_iothubenrichment_types.go index 05ed6927c..e9310fdc6 100755 --- a/apis/devices/v1beta1/zz_iothubenrichment_types.go +++ b/apis/devices/v1beta1/zz_iothubenrichment_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubEnrichmentInitParameters struct { + + // The list of endpoints which will be enriched. + EndpointNames []*string `json:"endpointNames,omitempty" tf:"endpoint_names,omitempty"` + + // The key of the enrichment. Changing this forces a new resource to be created. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // The value of the enrichment. Value can be any static string, the name of the IoT hub sending the message (use $iothubname) or information from the device twin (ex: $twin.tags.latitude) + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type IOTHubEnrichmentObservation struct { // The list of endpoints which will be enriched. @@ -79,6 +91,18 @@ type IOTHubEnrichmentParameters struct { type IOTHubEnrichmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubEnrichmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubEnrichmentInitParameters `json:"initProvider,omitempty"` } // IOTHubEnrichmentStatus defines the observed state of IOTHubEnrichment. @@ -99,9 +123,9 @@ type IOTHubEnrichmentStatus struct { type IOTHubEnrichment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endpointNames)",message="endpointNames is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.key)",message="key is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value)",message="value is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endpointNames) || has(self.initProvider.endpointNames)",message="endpointNames is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.key) || has(self.initProvider.key)",message="key is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.value) || has(self.initProvider.value)",message="value is a required parameter" Spec IOTHubEnrichmentSpec `json:"spec"` Status IOTHubEnrichmentStatus `json:"status,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubfallbackroute_types.go b/apis/devices/v1beta1/zz_iothubfallbackroute_types.go index 46c625762..53d06d568 100755 --- a/apis/devices/v1beta1/zz_iothubfallbackroute_types.go +++ b/apis/devices/v1beta1/zz_iothubfallbackroute_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubFallbackRouteInitParameters struct { + + // The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language. + Condition *string `json:"condition,omitempty" tf:"condition,omitempty"` + + // Used to specify whether the fallback route is enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The source that the routing rule is to be applied to. Possible values include: DeviceConnectionStateEvents, DeviceJobLifecycleEvents, DeviceLifecycleEvents, DeviceMessages, DigitalTwinChangeEvents, Invalid, TwinChangeEvents. + Source *string `json:"source,omitempty" tf:"source,omitempty"` +} + type IOTHubFallbackRouteObservation struct { // The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language. @@ -95,6 +107,18 @@ type IOTHubFallbackRouteParameters struct { type IOTHubFallbackRouteSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubFallbackRouteParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubFallbackRouteInitParameters `json:"initProvider,omitempty"` } // IOTHubFallbackRouteStatus defines the observed state of IOTHubFallbackRoute. @@ -115,7 +139,7 @@ type IOTHubFallbackRouteStatus struct { type IOTHubFallbackRoute struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled)",message="enabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.enabled) || has(self.initProvider.enabled)",message="enabled is a required parameter" Spec IOTHubFallbackRouteSpec `json:"spec"` Status IOTHubFallbackRouteStatus `json:"status,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubroute_types.go b/apis/devices/v1beta1/zz_iothubroute_types.go index d0a05b98d..e8e3ebd93 100755 --- a/apis/devices/v1beta1/zz_iothubroute_types.go +++ b/apis/devices/v1beta1/zz_iothubroute_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubRouteInitParameters struct { + + // The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language. + Condition *string `json:"condition,omitempty" tf:"condition,omitempty"` + + // Specifies whether a route is enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The list of endpoints to which messages that satisfy the condition are routed. Currently only one endpoint is allowed. + EndpointNames []*string `json:"endpointNames,omitempty" tf:"endpoint_names,omitempty"` + + // The source that the routing rule is to be applied to. Possible values include: DeviceConnectionStateEvents, DeviceJobLifecycleEvents, DeviceLifecycleEvents, DeviceMessages, DigitalTwinChangeEvents, Invalid, TwinChangeEvents. + Source *string `json:"source,omitempty" tf:"source,omitempty"` +} + type IOTHubRouteObservation struct { // The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language. @@ -86,6 +101,18 @@ type IOTHubRouteParameters struct { type IOTHubRouteSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubRouteParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubRouteInitParameters `json:"initProvider,omitempty"` } // IOTHubRouteStatus defines the observed state of IOTHubRoute. @@ -106,9 +133,9 @@ type IOTHubRouteStatus struct { type IOTHubRoute struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled)",message="enabled is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endpointNames)",message="endpointNames is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.source)",message="source is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.enabled) || has(self.initProvider.enabled)",message="enabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endpointNames) || has(self.initProvider.endpointNames)",message="endpointNames is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.source) || has(self.initProvider.source)",message="source is a required parameter" Spec IOTHubRouteSpec `json:"spec"` Status IOTHubRouteStatus `json:"status,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubsharedaccesspolicy_types.go b/apis/devices/v1beta1/zz_iothubsharedaccesspolicy_types.go index 37ba4802d..88b2ea7e3 100755 --- a/apis/devices/v1beta1/zz_iothubsharedaccesspolicy_types.go +++ b/apis/devices/v1beta1/zz_iothubsharedaccesspolicy_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubSharedAccessPolicyInitParameters struct { + + // Adds DeviceConnect permission to this Shared Access Account. It allows sending and receiving on the device-side endpoints. + DeviceConnect *bool `json:"deviceConnect,omitempty" tf:"device_connect,omitempty"` + + // Adds RegistryRead permission to this Shared Access Account. It allows read access to the identity registry. + RegistryRead *bool `json:"registryRead,omitempty" tf:"registry_read,omitempty"` + + // Adds RegistryWrite permission to this Shared Access Account. It allows write access to the identity registry. + RegistryWrite *bool `json:"registryWrite,omitempty" tf:"registry_write,omitempty"` + + // Adds ServiceConnect permission to this Shared Access Account. It allows sending and receiving on the cloud-side endpoints. + ServiceConnect *bool `json:"serviceConnect,omitempty" tf:"service_connect,omitempty"` +} + type IOTHubSharedAccessPolicyObservation struct { // Adds DeviceConnect permission to this Shared Access Account. It allows sending and receiving on the device-side endpoints. @@ -86,6 +101,18 @@ type IOTHubSharedAccessPolicyParameters struct { type IOTHubSharedAccessPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubSharedAccessPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubSharedAccessPolicyInitParameters `json:"initProvider,omitempty"` } // IOTHubSharedAccessPolicyStatus defines the observed state of IOTHubSharedAccessPolicy. diff --git a/apis/deviceupdate/v1beta1/zz_generated.deepcopy.go b/apis/deviceupdate/v1beta1/zz_generated.deepcopy.go index 54b25b9b0..30dce1d9b 100644 --- a/apis/deviceupdate/v1beta1/zz_generated.deepcopy.go +++ b/apis/deviceupdate/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,21 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticStorageAccountInitParameters) DeepCopyInto(out *DiagnosticStorageAccountInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticStorageAccountInitParameters. +func (in *DiagnosticStorageAccountInitParameters) DeepCopy() *DiagnosticStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticStorageAccountObservation) DeepCopyInto(out *DiagnosticStorageAccountObservation) { *out = *in @@ -92,6 +107,58 @@ func (in *IOTHubDeviceUpdateAccount) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubDeviceUpdateAccountInitParameters) DeepCopyInto(out *IOTHubDeviceUpdateAccountInitParameters) { + *out = *in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDeviceUpdateAccountInitParameters. +func (in *IOTHubDeviceUpdateAccountInitParameters) DeepCopy() *IOTHubDeviceUpdateAccountInitParameters { + if in == nil { + return nil + } + out := new(IOTHubDeviceUpdateAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubDeviceUpdateAccountList) DeepCopyInto(out *IOTHubDeviceUpdateAccountList) { *out = *in @@ -263,6 +330,7 @@ func (in *IOTHubDeviceUpdateAccountSpec) DeepCopyInto(out *IOTHubDeviceUpdateAcc *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDeviceUpdateAccountSpec. @@ -319,6 +387,46 @@ func (in *IOTHubDeviceUpdateInstance) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubDeviceUpdateInstanceInitParameters) DeepCopyInto(out *IOTHubDeviceUpdateInstanceInitParameters) { + *out = *in + if in.DiagnosticEnabled != nil { + in, out := &in.DiagnosticEnabled, &out.DiagnosticEnabled + *out = new(bool) + **out = **in + } + if in.DiagnosticStorageAccount != nil { + in, out := &in.DiagnosticStorageAccount, &out.DiagnosticStorageAccount + *out = make([]DiagnosticStorageAccountInitParameters, len(*in)) + copy(*out, *in) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDeviceUpdateInstanceInitParameters. +func (in *IOTHubDeviceUpdateInstanceInitParameters) DeepCopy() *IOTHubDeviceUpdateInstanceInitParameters { + if in == nil { + return nil + } + out := new(IOTHubDeviceUpdateInstanceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubDeviceUpdateInstanceList) DeepCopyInto(out *IOTHubDeviceUpdateInstanceList) { *out = *in @@ -485,6 +593,7 @@ func (in *IOTHubDeviceUpdateInstanceSpec) DeepCopyInto(out *IOTHubDeviceUpdateIn *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDeviceUpdateInstanceSpec. @@ -514,6 +623,37 @@ func (in *IOTHubDeviceUpdateInstanceStatus) DeepCopy() *IOTHubDeviceUpdateInstan return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in diff --git a/apis/deviceupdate/v1beta1/zz_generated.managed.go b/apis/deviceupdate/v1beta1/zz_generated.managed.go index 920e0e935..6bcae7813 100644 --- a/apis/deviceupdate/v1beta1/zz_generated.managed.go +++ b/apis/deviceupdate/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *IOTHubDeviceUpdateAccount) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubDeviceUpdateAccount. -func (mg *IOTHubDeviceUpdateAccount) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubDeviceUpdateAccount. +func (mg *IOTHubDeviceUpdateAccount) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubDeviceUpdateAccount. @@ -55,9 +55,9 @@ func (mg *IOTHubDeviceUpdateAccount) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubDeviceUpdateAccount. -func (mg *IOTHubDeviceUpdateAccount) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubDeviceUpdateAccount. +func (mg *IOTHubDeviceUpdateAccount) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubDeviceUpdateAccount. @@ -93,9 +93,9 @@ func (mg *IOTHubDeviceUpdateInstance) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubDeviceUpdateInstance. -func (mg *IOTHubDeviceUpdateInstance) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubDeviceUpdateInstance. +func (mg *IOTHubDeviceUpdateInstance) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubDeviceUpdateInstance. @@ -131,9 +131,9 @@ func (mg *IOTHubDeviceUpdateInstance) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubDeviceUpdateInstance. -func (mg *IOTHubDeviceUpdateInstance) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubDeviceUpdateInstance. +func (mg *IOTHubDeviceUpdateInstance) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubDeviceUpdateInstance. diff --git a/apis/deviceupdate/v1beta1/zz_generated_terraformed.go b/apis/deviceupdate/v1beta1/zz_generated_terraformed.go index 77f5fb905..6a570db0f 100755 --- a/apis/deviceupdate/v1beta1/zz_generated_terraformed.go +++ b/apis/deviceupdate/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *IOTHubDeviceUpdateAccount) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubDeviceUpdateAccount +func (tr *IOTHubDeviceUpdateAccount) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubDeviceUpdateAccount using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubDeviceUpdateAccount) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *IOTHubDeviceUpdateInstance) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubDeviceUpdateInstance +func (tr *IOTHubDeviceUpdateInstance) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubDeviceUpdateInstance using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubDeviceUpdateInstance) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateaccount_types.go b/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateaccount_types.go index 1bfa8d524..c1f890ea9 100755 --- a/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateaccount_types.go +++ b/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateaccount_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubDeviceUpdateAccountInitParameters struct { + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the Azure Region where the IoT Hub Device Update Account should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies whether the public network access is enabled for the IoT Hub Device Update Account. Possible values are true and false. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Sku of the IoT Hub Device Update Account. Possible values are Free and Standard. Defaults to Standard. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags which should be assigned to the IoT Hub Device Update Account. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type IOTHubDeviceUpdateAccountObservation struct { // The API host name of the IoT Hub Device Update Account. @@ -76,6 +94,15 @@ type IOTHubDeviceUpdateAccountParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this IoT Hub Device Update Account. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this IoT Hub Device Update Account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this IoT Hub Device Update Account. @@ -98,14 +125,26 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this IoT Hub Device Update Account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // IOTHubDeviceUpdateAccountSpec defines the desired state of IOTHubDeviceUpdateAccount type IOTHubDeviceUpdateAccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubDeviceUpdateAccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubDeviceUpdateAccountInitParameters `json:"initProvider,omitempty"` } // IOTHubDeviceUpdateAccountStatus defines the observed state of IOTHubDeviceUpdateAccount. @@ -126,7 +165,7 @@ type IOTHubDeviceUpdateAccountStatus struct { type IOTHubDeviceUpdateAccount struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec IOTHubDeviceUpdateAccountSpec `json:"spec"` Status IOTHubDeviceUpdateAccountStatus `json:"status,omitempty"` } diff --git a/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateinstance_types.go b/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateinstance_types.go index 5ab922700..d0dcbf358 100755 --- a/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateinstance_types.go +++ b/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateinstance_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DiagnosticStorageAccountInitParameters struct { +} + type DiagnosticStorageAccountObservation struct { // Resource ID of the Diagnostic Storage Account. @@ -40,6 +43,18 @@ type DiagnosticStorageAccountParameters struct { IDSelector *v1.Selector `json:"idSelector,omitempty" tf:"-"` } +type IOTHubDeviceUpdateInstanceInitParameters struct { + + // Whether the diagnostic log collection is enabled. Possible values are true and false. Defaults to false. + DiagnosticEnabled *bool `json:"diagnosticEnabled,omitempty" tf:"diagnostic_enabled,omitempty"` + + // A diagnostic_storage_account block as defined below. + DiagnosticStorageAccount []DiagnosticStorageAccountInitParameters `json:"diagnosticStorageAccount,omitempty" tf:"diagnostic_storage_account,omitempty"` + + // A mapping of tags which should be assigned to the IoT Hub Device Update Instance. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type IOTHubDeviceUpdateInstanceObservation struct { // Specifies the ID of the IoT Hub Device Update Account where the IoT Hub Device Update Instance exists. Changing this forces a new resource to be created. @@ -108,6 +123,18 @@ type IOTHubDeviceUpdateInstanceParameters struct { type IOTHubDeviceUpdateInstanceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubDeviceUpdateInstanceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubDeviceUpdateInstanceInitParameters `json:"initProvider,omitempty"` } // IOTHubDeviceUpdateInstanceStatus defines the observed state of IOTHubDeviceUpdateInstance. diff --git a/apis/devtestlab/v1beta1/zz_generated.deepcopy.go b/apis/devtestlab/v1beta1/zz_generated.deepcopy.go index 94bd07a99..97fb21dfa 100644 --- a/apis/devtestlab/v1beta1/zz_generated.deepcopy.go +++ b/apis/devtestlab/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,26 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DailyRecurrenceInitParameters) DeepCopyInto(out *DailyRecurrenceInitParameters) { + *out = *in + if in.Time != nil { + in, out := &in.Time, &out.Time + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DailyRecurrenceInitParameters. +func (in *DailyRecurrenceInitParameters) DeepCopy() *DailyRecurrenceInitParameters { + if in == nil { + return nil + } + out := new(DailyRecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DailyRecurrenceObservation) DeepCopyInto(out *DailyRecurrenceObservation) { *out = *in @@ -54,6 +74,41 @@ func (in *DailyRecurrenceParameters) DeepCopy() *DailyRecurrenceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GalleryImageReferenceInitParameters) DeepCopyInto(out *GalleryImageReferenceInitParameters) { + *out = *in + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GalleryImageReferenceInitParameters. +func (in *GalleryImageReferenceInitParameters) DeepCopy() *GalleryImageReferenceInitParameters { + if in == nil { + return nil + } + out := new(GalleryImageReferenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GalleryImageReferenceObservation) DeepCopyInto(out *GalleryImageReferenceObservation) { *out = *in @@ -151,6 +206,63 @@ func (in *GlobalVMShutdownSchedule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalVMShutdownScheduleInitParameters) DeepCopyInto(out *GlobalVMShutdownScheduleInitParameters) { + *out = *in + if in.DailyRecurrenceTime != nil { + in, out := &in.DailyRecurrenceTime, &out.DailyRecurrenceTime + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.NotificationSettings != nil { + in, out := &in.NotificationSettings, &out.NotificationSettings + *out = make([]NotificationSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalVMShutdownScheduleInitParameters. +func (in *GlobalVMShutdownScheduleInitParameters) DeepCopy() *GlobalVMShutdownScheduleInitParameters { + if in == nil { + return nil + } + out := new(GlobalVMShutdownScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GlobalVMShutdownScheduleList) DeepCopyInto(out *GlobalVMShutdownScheduleList) { *out = *in @@ -327,6 +439,7 @@ func (in *GlobalVMShutdownScheduleSpec) DeepCopyInto(out *GlobalVMShutdownSchedu *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalVMShutdownScheduleSpec. @@ -356,6 +469,26 @@ func (in *GlobalVMShutdownScheduleStatus) DeepCopy() *GlobalVMShutdownScheduleSt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HourlyRecurrenceInitParameters) DeepCopyInto(out *HourlyRecurrenceInitParameters) { + *out = *in + if in.Minute != nil { + in, out := &in.Minute, &out.Minute + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HourlyRecurrenceInitParameters. +func (in *HourlyRecurrenceInitParameters) DeepCopy() *HourlyRecurrenceInitParameters { + if in == nil { + return nil + } + out := new(HourlyRecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HourlyRecurrenceObservation) DeepCopyInto(out *HourlyRecurrenceObservation) { *out = *in @@ -396,6 +529,31 @@ func (in *HourlyRecurrenceParameters) DeepCopy() *HourlyRecurrenceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InboundNATRuleInitParameters) DeepCopyInto(out *InboundNATRuleInitParameters) { + *out = *in + if in.BackendPort != nil { + in, out := &in.BackendPort, &out.BackendPort + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InboundNATRuleInitParameters. +func (in *InboundNATRuleInitParameters) DeepCopy() *InboundNATRuleInitParameters { + if in == nil { + return nil + } + out := new(InboundNATRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InboundNATRuleObservation) DeepCopyInto(out *InboundNATRuleObservation) { *out = *in @@ -478,6 +636,46 @@ func (in *Lab) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LabInitParameters) DeepCopyInto(out *LabInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.StorageType != nil { + in, out := &in.StorageType, &out.StorageType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabInitParameters. +func (in *LabInitParameters) DeepCopy() *LabInitParameters { + if in == nil { + return nil + } + out := new(LabInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LabList) DeepCopyInto(out *LabList) { *out = *in @@ -650,6 +848,7 @@ func (in *LabSpec) DeepCopyInto(out *LabSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabSpec. @@ -706,6 +905,95 @@ func (in *LinuxVirtualMachine) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxVirtualMachineInitParameters) DeepCopyInto(out *LinuxVirtualMachineInitParameters) { + *out = *in + if in.AllowClaim != nil { + in, out := &in.AllowClaim, &out.AllowClaim + *out = new(bool) + **out = **in + } + if in.DisallowPublicIPAddress != nil { + in, out := &in.DisallowPublicIPAddress, &out.DisallowPublicIPAddress + *out = new(bool) + **out = **in + } + if in.GalleryImageReference != nil { + in, out := &in.GalleryImageReference, &out.GalleryImageReference + *out = make([]GalleryImageReferenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InboundNATRule != nil { + in, out := &in.InboundNATRule, &out.InboundNATRule + *out = make([]InboundNATRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Notes != nil { + in, out := &in.Notes, &out.Notes + *out = new(string) + **out = **in + } + if in.SSHKey != nil { + in, out := &in.SSHKey, &out.SSHKey + *out = new(string) + **out = **in + } + if in.Size != nil { + in, out := &in.Size, &out.Size + *out = new(string) + **out = **in + } + if in.StorageType != nil { + in, out := &in.StorageType, &out.StorageType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineInitParameters. +func (in *LinuxVirtualMachineInitParameters) DeepCopy() *LinuxVirtualMachineInitParameters { + if in == nil { + return nil + } + out := new(LinuxVirtualMachineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxVirtualMachineList) DeepCopyInto(out *LinuxVirtualMachineList) { *out = *in @@ -1021,6 +1309,7 @@ func (in *LinuxVirtualMachineSpec) DeepCopyInto(out *LinuxVirtualMachineSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxVirtualMachineSpec. @@ -1051,7 +1340,42 @@ func (in *LinuxVirtualMachineStatus) DeepCopy() *LinuxVirtualMachineStatus { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *NotificationSettingsObservation) DeepCopyInto(out *NotificationSettingsObservation) { +func (in *NotificationSettingsInitParameters) DeepCopyInto(out *NotificationSettingsInitParameters) { + *out = *in + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.TimeInMinutes != nil { + in, out := &in.TimeInMinutes, &out.TimeInMinutes + *out = new(float64) + **out = **in + } + if in.WebhookURL != nil { + in, out := &in.WebhookURL, &out.WebhookURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationSettingsInitParameters. +func (in *NotificationSettingsInitParameters) DeepCopy() *NotificationSettingsInitParameters { + if in == nil { + return nil + } + out := new(NotificationSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotificationSettingsObservation) DeepCopyInto(out *NotificationSettingsObservation) { *out = *in if in.Email != nil { in, out := &in.Email, &out.Email @@ -1147,6 +1471,66 @@ func (in *Policy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyInitParameters) DeepCopyInto(out *PolicyInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.EvaluatorType != nil { + in, out := &in.EvaluatorType, &out.EvaluatorType + *out = new(string) + **out = **in + } + if in.FactData != nil { + in, out := &in.FactData, &out.FactData + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PolicySetName != nil { + in, out := &in.PolicySetName, &out.PolicySetName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Threshold != nil { + in, out := &in.Threshold, &out.Threshold + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyInitParameters. +func (in *PolicyInitParameters) DeepCopy() *PolicyInitParameters { + if in == nil { + return nil + } + out := new(PolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PolicyList) DeepCopyInto(out *PolicyList) { *out = *in @@ -1349,6 +1733,7 @@ func (in *PolicySpec) DeepCopyInto(out *PolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicySpec. @@ -1405,6 +1790,84 @@ func (in *Schedule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScheduleInitParameters) DeepCopyInto(out *ScheduleInitParameters) { + *out = *in + if in.DailyRecurrence != nil { + in, out := &in.DailyRecurrence, &out.DailyRecurrence + *out = make([]DailyRecurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HourlyRecurrence != nil { + in, out := &in.HourlyRecurrence, &out.HourlyRecurrence + *out = make([]HourlyRecurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.NotificationSettings != nil { + in, out := &in.NotificationSettings, &out.NotificationSettings + *out = make([]ScheduleNotificationSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TaskType != nil { + in, out := &in.TaskType, &out.TaskType + *out = new(string) + **out = **in + } + if in.TimeZoneID != nil { + in, out := &in.TimeZoneID, &out.TimeZoneID + *out = new(string) + **out = **in + } + if in.WeeklyRecurrence != nil { + in, out := &in.WeeklyRecurrence, &out.WeeklyRecurrence + *out = make([]WeeklyRecurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleInitParameters. +func (in *ScheduleInitParameters) DeepCopy() *ScheduleInitParameters { + if in == nil { + return nil + } + out := new(ScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScheduleList) DeepCopyInto(out *ScheduleList) { *out = *in @@ -1437,6 +1900,36 @@ func (in *ScheduleList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScheduleNotificationSettingsInitParameters) DeepCopyInto(out *ScheduleNotificationSettingsInitParameters) { + *out = *in + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } + if in.TimeInMinutes != nil { + in, out := &in.TimeInMinutes, &out.TimeInMinutes + *out = new(float64) + **out = **in + } + if in.WebhookURL != nil { + in, out := &in.WebhookURL, &out.WebhookURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleNotificationSettingsInitParameters. +func (in *ScheduleNotificationSettingsInitParameters) DeepCopy() *ScheduleNotificationSettingsInitParameters { + if in == nil { + return nil + } + out := new(ScheduleNotificationSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScheduleNotificationSettingsObservation) DeepCopyInto(out *ScheduleNotificationSettingsObservation) { *out = *in @@ -1703,6 +2196,7 @@ func (in *ScheduleSpec) DeepCopyInto(out *ScheduleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleSpec. @@ -1732,6 +2226,31 @@ func (in *ScheduleStatus) DeepCopy() *ScheduleStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubnetInitParameters) DeepCopyInto(out *SubnetInitParameters) { + *out = *in + if in.UseInVirtualMachineCreation != nil { + in, out := &in.UseInVirtualMachineCreation, &out.UseInVirtualMachineCreation + *out = new(string) + **out = **in + } + if in.UsePublicIPAddress != nil { + in, out := &in.UsePublicIPAddress, &out.UsePublicIPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetInitParameters. +func (in *SubnetInitParameters) DeepCopy() *SubnetInitParameters { + if in == nil { + return nil + } + out := new(SubnetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubnetObservation) DeepCopyInto(out *SubnetObservation) { *out = *in @@ -1814,6 +2333,53 @@ func (in *VirtualNetwork) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkInitParameters) DeepCopyInto(out *VirtualNetworkInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Subnet != nil { + in, out := &in.Subnet, &out.Subnet + *out = make([]SubnetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkInitParameters. +func (in *VirtualNetworkInitParameters) DeepCopy() *VirtualNetworkInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkList) DeepCopyInto(out *VirtualNetworkList) { *out = *in @@ -1995,6 +2561,7 @@ func (in *VirtualNetworkSpec) DeepCopyInto(out *VirtualNetworkSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkSpec. @@ -2024,6 +2591,37 @@ func (in *VirtualNetworkStatus) DeepCopy() *VirtualNetworkStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WeeklyRecurrenceInitParameters) DeepCopyInto(out *WeeklyRecurrenceInitParameters) { + *out = *in + if in.Time != nil { + in, out := &in.Time, &out.Time + *out = new(string) + **out = **in + } + if in.WeekDays != nil { + in, out := &in.WeekDays, &out.WeekDays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WeeklyRecurrenceInitParameters. +func (in *WeeklyRecurrenceInitParameters) DeepCopy() *WeeklyRecurrenceInitParameters { + if in == nil { + return nil + } + out := new(WeeklyRecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WeeklyRecurrenceObservation) DeepCopyInto(out *WeeklyRecurrenceObservation) { *out = *in @@ -2113,6 +2711,41 @@ func (in *WindowsVirtualMachine) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineGalleryImageReferenceInitParameters) DeepCopyInto(out *WindowsVirtualMachineGalleryImageReferenceInitParameters) { + *out = *in + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineGalleryImageReferenceInitParameters. +func (in *WindowsVirtualMachineGalleryImageReferenceInitParameters) DeepCopy() *WindowsVirtualMachineGalleryImageReferenceInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineGalleryImageReferenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineGalleryImageReferenceObservation) DeepCopyInto(out *WindowsVirtualMachineGalleryImageReferenceObservation) { *out = *in @@ -2183,6 +2816,31 @@ func (in *WindowsVirtualMachineGalleryImageReferenceParameters) DeepCopy() *Wind return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineInboundNATRuleInitParameters) DeepCopyInto(out *WindowsVirtualMachineInboundNATRuleInitParameters) { + *out = *in + if in.BackendPort != nil { + in, out := &in.BackendPort, &out.BackendPort + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineInboundNATRuleInitParameters. +func (in *WindowsVirtualMachineInboundNATRuleInitParameters) DeepCopy() *WindowsVirtualMachineInboundNATRuleInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineInboundNATRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineInboundNATRuleObservation) DeepCopyInto(out *WindowsVirtualMachineInboundNATRuleObservation) { *out = *in @@ -2238,6 +2896,90 @@ func (in *WindowsVirtualMachineInboundNATRuleParameters) DeepCopy() *WindowsVirt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsVirtualMachineInitParameters) DeepCopyInto(out *WindowsVirtualMachineInitParameters) { + *out = *in + if in.AllowClaim != nil { + in, out := &in.AllowClaim, &out.AllowClaim + *out = new(bool) + **out = **in + } + if in.DisallowPublicIPAddress != nil { + in, out := &in.DisallowPublicIPAddress, &out.DisallowPublicIPAddress + *out = new(bool) + **out = **in + } + if in.GalleryImageReference != nil { + in, out := &in.GalleryImageReference, &out.GalleryImageReference + *out = make([]WindowsVirtualMachineGalleryImageReferenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InboundNATRule != nil { + in, out := &in.InboundNATRule, &out.InboundNATRule + *out = make([]WindowsVirtualMachineInboundNATRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Notes != nil { + in, out := &in.Notes, &out.Notes + *out = new(string) + **out = **in + } + if in.Size != nil { + in, out := &in.Size, &out.Size + *out = new(string) + **out = **in + } + if in.StorageType != nil { + in, out := &in.StorageType, &out.StorageType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineInitParameters. +func (in *WindowsVirtualMachineInitParameters) DeepCopy() *WindowsVirtualMachineInitParameters { + if in == nil { + return nil + } + out := new(WindowsVirtualMachineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsVirtualMachineList) DeepCopyInto(out *WindowsVirtualMachineList) { *out = *in @@ -2539,6 +3281,7 @@ func (in *WindowsVirtualMachineSpec) DeepCopyInto(out *WindowsVirtualMachineSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSpec. diff --git a/apis/devtestlab/v1beta1/zz_generated.managed.go b/apis/devtestlab/v1beta1/zz_generated.managed.go index fc0530737..7cea30016 100644 --- a/apis/devtestlab/v1beta1/zz_generated.managed.go +++ b/apis/devtestlab/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *GlobalVMShutdownSchedule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this GlobalVMShutdownSchedule. -func (mg *GlobalVMShutdownSchedule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this GlobalVMShutdownSchedule. +func (mg *GlobalVMShutdownSchedule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this GlobalVMShutdownSchedule. @@ -55,9 +55,9 @@ func (mg *GlobalVMShutdownSchedule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this GlobalVMShutdownSchedule. -func (mg *GlobalVMShutdownSchedule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this GlobalVMShutdownSchedule. +func (mg *GlobalVMShutdownSchedule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this GlobalVMShutdownSchedule. @@ -93,9 +93,9 @@ func (mg *Lab) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Lab. -func (mg *Lab) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Lab. +func (mg *Lab) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Lab. @@ -131,9 +131,9 @@ func (mg *Lab) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Lab. -func (mg *Lab) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Lab. +func (mg *Lab) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Lab. @@ -169,9 +169,9 @@ func (mg *LinuxVirtualMachine) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinuxVirtualMachine. -func (mg *LinuxVirtualMachine) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinuxVirtualMachine. +func (mg *LinuxVirtualMachine) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinuxVirtualMachine. @@ -207,9 +207,9 @@ func (mg *LinuxVirtualMachine) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinuxVirtualMachine. -func (mg *LinuxVirtualMachine) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinuxVirtualMachine. +func (mg *LinuxVirtualMachine) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinuxVirtualMachine. @@ -245,9 +245,9 @@ func (mg *Policy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Policy. -func (mg *Policy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Policy. +func (mg *Policy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Policy. @@ -283,9 +283,9 @@ func (mg *Policy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Policy. -func (mg *Policy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Policy. +func (mg *Policy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Policy. @@ -321,9 +321,9 @@ func (mg *Schedule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Schedule. -func (mg *Schedule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Schedule. +func (mg *Schedule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Schedule. @@ -359,9 +359,9 @@ func (mg *Schedule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Schedule. -func (mg *Schedule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Schedule. +func (mg *Schedule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Schedule. @@ -397,9 +397,9 @@ func (mg *VirtualNetwork) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualNetwork. -func (mg *VirtualNetwork) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualNetwork. +func (mg *VirtualNetwork) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualNetwork. @@ -435,9 +435,9 @@ func (mg *VirtualNetwork) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualNetwork. -func (mg *VirtualNetwork) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualNetwork. +func (mg *VirtualNetwork) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualNetwork. @@ -473,9 +473,9 @@ func (mg *WindowsVirtualMachine) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WindowsVirtualMachine. -func (mg *WindowsVirtualMachine) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WindowsVirtualMachine. +func (mg *WindowsVirtualMachine) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WindowsVirtualMachine. @@ -511,9 +511,9 @@ func (mg *WindowsVirtualMachine) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WindowsVirtualMachine. -func (mg *WindowsVirtualMachine) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WindowsVirtualMachine. +func (mg *WindowsVirtualMachine) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WindowsVirtualMachine. diff --git a/apis/devtestlab/v1beta1/zz_generated_terraformed.go b/apis/devtestlab/v1beta1/zz_generated_terraformed.go index ac9d779c3..eeb3fb9a7 100755 --- a/apis/devtestlab/v1beta1/zz_generated_terraformed.go +++ b/apis/devtestlab/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *GlobalVMShutdownSchedule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this GlobalVMShutdownSchedule +func (tr *GlobalVMShutdownSchedule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this GlobalVMShutdownSchedule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *GlobalVMShutdownSchedule) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Lab) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Lab +func (tr *Lab) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Lab using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Lab) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *LinuxVirtualMachine) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinuxVirtualMachine +func (tr *LinuxVirtualMachine) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinuxVirtualMachine using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinuxVirtualMachine) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *Policy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Policy +func (tr *Policy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Policy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Policy) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *Schedule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Schedule +func (tr *Schedule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Schedule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Schedule) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *VirtualNetwork) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualNetwork +func (tr *VirtualNetwork) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualNetwork using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualNetwork) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *WindowsVirtualMachine) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WindowsVirtualMachine +func (tr *WindowsVirtualMachine) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WindowsVirtualMachine using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WindowsVirtualMachine) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/devtestlab/v1beta1/zz_globalvmshutdownschedule_types.go b/apis/devtestlab/v1beta1/zz_globalvmshutdownschedule_types.go index 95d43a511..ef275660f 100755 --- a/apis/devtestlab/v1beta1/zz_globalvmshutdownschedule_types.go +++ b/apis/devtestlab/v1beta1/zz_globalvmshutdownschedule_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type GlobalVMShutdownScheduleInitParameters struct { + + // The time each day when the schedule takes effect. Must match the format HHmm where HH is 00-23 and mm is 00-59 (e.g. 0930, 2300, etc.) + DailyRecurrenceTime *string `json:"dailyRecurrenceTime,omitempty" tf:"daily_recurrence_time,omitempty"` + + // Whether to enable the schedule. Possible values are true and false. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The location where the schedule is created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The notification setting of a schedule. A notification_settings as defined below. + NotificationSettings []NotificationSettingsInitParameters `json:"notificationSettings,omitempty" tf:"notification_settings,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The time zone ID (e.g. Pacific Standard time). Refer to this guide for a full list of accepted time zone names. + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` +} + type GlobalVMShutdownScheduleObservation struct { // The time each day when the schedule takes effect. Must match the format HHmm where HH is 00-23 and mm is 00-59 (e.g. 0930, 2300, etc.) @@ -81,6 +102,21 @@ type GlobalVMShutdownScheduleParameters struct { VirtualMachineIDSelector *v1.Selector `json:"virtualMachineIdSelector,omitempty" tf:"-"` } +type NotificationSettingsInitParameters struct { + + // E-mail address to which the notification will be sent. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // Whether to enable pre-shutdown notifications. Possible values are true and false. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Time in minutes between 15 and 120 before a shutdown event at which a notification will be sent. Defaults to 30. + TimeInMinutes *float64 `json:"timeInMinutes,omitempty" tf:"time_in_minutes,omitempty"` + + // The webhook URL to which the notification will be sent. + WebhookURL *string `json:"webhookUrl,omitempty" tf:"webhook_url,omitempty"` +} + type NotificationSettingsObservation struct { // E-mail address to which the notification will be sent. @@ -103,8 +139,8 @@ type NotificationSettingsParameters struct { Email *string `json:"email,omitempty" tf:"email,omitempty"` // Whether to enable pre-shutdown notifications. Possible values are true and false. - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Time in minutes between 15 and 120 before a shutdown event at which a notification will be sent. Defaults to 30. // +kubebuilder:validation:Optional @@ -119,6 +155,18 @@ type NotificationSettingsParameters struct { type GlobalVMShutdownScheduleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider GlobalVMShutdownScheduleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider GlobalVMShutdownScheduleInitParameters `json:"initProvider,omitempty"` } // GlobalVMShutdownScheduleStatus defines the observed state of GlobalVMShutdownSchedule. @@ -139,10 +187,10 @@ type GlobalVMShutdownScheduleStatus struct { type GlobalVMShutdownSchedule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dailyRecurrenceTime)",message="dailyRecurrenceTime is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notificationSettings)",message="notificationSettings is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timezone)",message="timezone is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dailyRecurrenceTime) || has(self.initProvider.dailyRecurrenceTime)",message="dailyRecurrenceTime is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.notificationSettings) || has(self.initProvider.notificationSettings)",message="notificationSettings is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.timezone) || has(self.initProvider.timezone)",message="timezone is a required parameter" Spec GlobalVMShutdownScheduleSpec `json:"spec"` Status GlobalVMShutdownScheduleStatus `json:"status,omitempty"` } diff --git a/apis/devtestlab/v1beta1/zz_lab_types.go b/apis/devtestlab/v1beta1/zz_lab_types.go index 0942e1816..fc88ff863 100755 --- a/apis/devtestlab/v1beta1/zz_lab_types.go +++ b/apis/devtestlab/v1beta1/zz_lab_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LabInitParameters struct { + + // Specifies the supported Azure location where the Dev Test Lab should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The type of storage used by the Dev Test Lab. Possible values are Standard and Premium. Defaults to Premium. + StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type LabObservation struct { // The ID of the Storage Account used for Artifact Storage. @@ -81,6 +93,18 @@ type LabParameters struct { type LabSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LabParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LabInitParameters `json:"initProvider,omitempty"` } // LabStatus defines the observed state of Lab. @@ -101,7 +125,7 @@ type LabStatus struct { type Lab struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec LabSpec `json:"spec"` Status LabStatus `json:"status,omitempty"` } diff --git a/apis/devtestlab/v1beta1/zz_linuxvirtualmachine_types.go b/apis/devtestlab/v1beta1/zz_linuxvirtualmachine_types.go index 43b447aca..fcee577fe 100755 --- a/apis/devtestlab/v1beta1/zz_linuxvirtualmachine_types.go +++ b/apis/devtestlab/v1beta1/zz_linuxvirtualmachine_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type GalleryImageReferenceInitParameters struct { + + // The Offer of the Gallery Image. Changing this forces a new resource to be created. + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` + + // The Publisher of the Gallery Image. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // The SKU of the Gallery Image. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // The Version of the Gallery Image. Changing this forces a new resource to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type GalleryImageReferenceObservation struct { // The Offer of the Gallery Image. Changing this forces a new resource to be created. @@ -31,20 +46,29 @@ type GalleryImageReferenceObservation struct { type GalleryImageReferenceParameters struct { // The Offer of the Gallery Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Offer *string `json:"offer" tf:"offer,omitempty"` + // +kubebuilder:validation:Optional + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // The Publisher of the Gallery Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // The SKU of the Gallery Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Sku *string `json:"sku" tf:"sku,omitempty"` + // +kubebuilder:validation:Optional + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // The Version of the Gallery Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type InboundNATRuleInitParameters struct { + + // The Backend Port associated with this NAT Rule. Changing this forces a new resource to be created. + BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` + + // The Protocol used for this NAT Rule. Possible values are Tcp and Udp. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } type InboundNATRuleObservation struct { @@ -62,12 +86,51 @@ type InboundNATRuleObservation struct { type InboundNATRuleParameters struct { // The Backend Port associated with this NAT Rule. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - BackendPort *float64 `json:"backendPort" tf:"backend_port,omitempty"` + // +kubebuilder:validation:Optional + BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` // The Protocol used for this NAT Rule. Possible values are Tcp and Udp. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` +} + +type LinuxVirtualMachineInitParameters struct { + + // Can this Virtual Machine be claimed by users? Defaults to true. + AllowClaim *bool `json:"allowClaim,omitempty" tf:"allow_claim,omitempty"` + + // Should the Virtual Machine be created without a Public IP Address? Changing this forces a new resource to be created. + DisallowPublicIPAddress *bool `json:"disallowPublicIpAddress,omitempty" tf:"disallow_public_ip_address,omitempty"` + + // A gallery_image_reference block as defined below. + GalleryImageReference []GalleryImageReferenceInitParameters `json:"galleryImageReference,omitempty" tf:"gallery_image_reference,omitempty"` + + // One or more inbound_nat_rule blocks as defined below. Changing this forces a new resource to be created. + InboundNATRule []InboundNATRuleInitParameters `json:"inboundNatRule,omitempty" tf:"inbound_nat_rule,omitempty"` + + // Specifies the supported Azure location where the Dev Test Lab exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name of the Dev Test Machine. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Any notes about the Virtual Machine. + Notes *string `json:"notes,omitempty" tf:"notes,omitempty"` + + // The SSH Key associated with the username used to login to this Virtual Machine. Changing this forces a new resource to be created. + SSHKey *string `json:"sshKey,omitempty" tf:"ssh_key,omitempty"` + + // The Machine Size to use for this Virtual Machine, such as Standard_F2. Changing this forces a new resource to be created. + Size *string `json:"size,omitempty" tf:"size,omitempty"` + + // The type of Storage to use on this Virtual Machine. Possible values are Standard and Premium. + StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The Username associated with the local administrator on this Virtual Machine. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type LinuxVirtualMachineObservation struct { @@ -242,6 +305,18 @@ type LinuxVirtualMachineParameters struct { type LinuxVirtualMachineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinuxVirtualMachineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinuxVirtualMachineInitParameters `json:"initProvider,omitempty"` } // LinuxVirtualMachineStatus defines the observed state of LinuxVirtualMachine. @@ -262,12 +337,12 @@ type LinuxVirtualMachineStatus struct { type LinuxVirtualMachine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.galleryImageReference)",message="galleryImageReference is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.size)",message="size is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageType)",message="storageType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username)",message="username is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.galleryImageReference) || has(self.initProvider.galleryImageReference)",message="galleryImageReference is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.size) || has(self.initProvider.size)",message="size is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageType) || has(self.initProvider.storageType)",message="storageType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.username) || has(self.initProvider.username)",message="username is a required parameter" Spec LinuxVirtualMachineSpec `json:"spec"` Status LinuxVirtualMachineStatus `json:"status,omitempty"` } diff --git a/apis/devtestlab/v1beta1/zz_policy_types.go b/apis/devtestlab/v1beta1/zz_policy_types.go index 62409462c..340977b8f 100755 --- a/apis/devtestlab/v1beta1/zz_policy_types.go +++ b/apis/devtestlab/v1beta1/zz_policy_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PolicyInitParameters struct { + + // A description for the Policy. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Evaluation Type used for this Policy. Possible values include: 'AllowedValuesPolicy', 'MaxValuePolicy'. Changing this forces a new resource to be created. + EvaluatorType *string `json:"evaluatorType,omitempty" tf:"evaluator_type,omitempty"` + + // The Fact Data for this Policy. + FactData *string `json:"factData,omitempty" tf:"fact_data,omitempty"` + + // Specifies the name of the Dev Test Policy. Possible values are GalleryImage, LabPremiumVmCount, LabTargetCost, LabVmCount, LabVmSize, UserOwnedLabPremiumVmCount, UserOwnedLabVmCount and UserOwnedLabVmCountInSubnet. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the name of the Policy Set within the Dev Test Lab where this policy should be created. Changing this forces a new resource to be created. + PolicySetName *string `json:"policySetName,omitempty" tf:"policy_set_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The Threshold for this Policy. + Threshold *string `json:"threshold,omitempty" tf:"threshold,omitempty"` +} + type PolicyObservation struct { // A description for the Policy. @@ -107,6 +131,18 @@ type PolicyParameters struct { type PolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider PolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PolicyInitParameters `json:"initProvider,omitempty"` } // PolicyStatus defines the observed state of Policy. @@ -127,10 +163,10 @@ type PolicyStatus struct { type Policy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.evaluatorType)",message="evaluatorType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policySetName)",message="policySetName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.threshold)",message="threshold is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.evaluatorType) || has(self.initProvider.evaluatorType)",message="evaluatorType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.policySetName) || has(self.initProvider.policySetName)",message="policySetName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.threshold) || has(self.initProvider.threshold)",message="threshold is a required parameter" Spec PolicySpec `json:"spec"` Status PolicyStatus `json:"status,omitempty"` } diff --git a/apis/devtestlab/v1beta1/zz_schedule_types.go b/apis/devtestlab/v1beta1/zz_schedule_types.go index 8ab6526bf..199af69ec 100755 --- a/apis/devtestlab/v1beta1/zz_schedule_types.go +++ b/apis/devtestlab/v1beta1/zz_schedule_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DailyRecurrenceInitParameters struct { + + // The time each day when the schedule takes effect. + Time *string `json:"time,omitempty" tf:"time,omitempty"` +} + type DailyRecurrenceObservation struct { // The time each day when the schedule takes effect. @@ -22,8 +28,14 @@ type DailyRecurrenceObservation struct { type DailyRecurrenceParameters struct { // The time each day when the schedule takes effect. - // +kubebuilder:validation:Required - Time *string `json:"time" tf:"time,omitempty"` + // +kubebuilder:validation:Optional + Time *string `json:"time,omitempty" tf:"time,omitempty"` +} + +type HourlyRecurrenceInitParameters struct { + + // Minutes of the hour the schedule will run. + Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` } type HourlyRecurrenceObservation struct { @@ -35,8 +47,50 @@ type HourlyRecurrenceObservation struct { type HourlyRecurrenceParameters struct { // Minutes of the hour the schedule will run. - // +kubebuilder:validation:Required - Minute *float64 `json:"minute" tf:"minute,omitempty"` + // +kubebuilder:validation:Optional + Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` +} + +type ScheduleInitParameters struct { + + // The properties of a daily schedule. If the schedule occurs once each day of the week, specify the daily recurrence. A daily_recurrence block as defined below. + DailyRecurrence []DailyRecurrenceInitParameters `json:"dailyRecurrence,omitempty" tf:"daily_recurrence,omitempty"` + + // The properties of an hourly schedule. If the schedule occurs multiple times a day, specify the hourly recurrence. A hourly_recurrence block as defined below. + HourlyRecurrence []HourlyRecurrenceInitParameters `json:"hourlyRecurrence,omitempty" tf:"hourly_recurrence,omitempty"` + + // The location where the schedule is created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The notification setting of a schedule. A notification_settings as defined below. + NotificationSettings []ScheduleNotificationSettingsInitParameters `json:"notificationSettings,omitempty" tf:"notification_settings,omitempty"` + + // The status of this schedule. Possible values are Enabled and Disabled. Defaults to Disabled. + Status *string `json:"status,omitempty" tf:"status,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The task type of the schedule. Possible values include LabVmsShutdownTask and LabVmAutoStart. + TaskType *string `json:"taskType,omitempty" tf:"task_type,omitempty"` + + // The time zone ID (e.g. Pacific Standard time). + TimeZoneID *string `json:"timeZoneId,omitempty" tf:"time_zone_id,omitempty"` + + // The properties of a weekly schedule. If the schedule occurs only some days of the week, specify the weekly recurrence. A weekly_recurrence block as defined below. + WeeklyRecurrence []WeeklyRecurrenceInitParameters `json:"weeklyRecurrence,omitempty" tf:"weekly_recurrence,omitempty"` +} + +type ScheduleNotificationSettingsInitParameters struct { + + // The status of the notification. Possible values are Enabled and Disabled. Defaults to Disabled + Status *string `json:"status,omitempty" tf:"status,omitempty"` + + // Time in minutes before event at which notification will be sent. + TimeInMinutes *float64 `json:"timeInMinutes,omitempty" tf:"time_in_minutes,omitempty"` + + // The webhook URL to which the notification will be sent. + WebhookURL *string `json:"webhookUrl,omitempty" tf:"webhook_url,omitempty"` } type ScheduleNotificationSettingsObservation struct { @@ -170,6 +224,15 @@ type ScheduleParameters struct { WeeklyRecurrence []WeeklyRecurrenceParameters `json:"weeklyRecurrence,omitempty" tf:"weekly_recurrence,omitempty"` } +type WeeklyRecurrenceInitParameters struct { + + // The time when the schedule takes effect. + Time *string `json:"time,omitempty" tf:"time,omitempty"` + + // A list of days that this schedule takes effect . Possible values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + WeekDays []*string `json:"weekDays,omitempty" tf:"week_days,omitempty"` +} + type WeeklyRecurrenceObservation struct { // The time when the schedule takes effect. @@ -182,8 +245,8 @@ type WeeklyRecurrenceObservation struct { type WeeklyRecurrenceParameters struct { // The time when the schedule takes effect. - // +kubebuilder:validation:Required - Time *string `json:"time" tf:"time,omitempty"` + // +kubebuilder:validation:Optional + Time *string `json:"time,omitempty" tf:"time,omitempty"` // A list of days that this schedule takes effect . Possible values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. // +kubebuilder:validation:Optional @@ -194,6 +257,18 @@ type WeeklyRecurrenceParameters struct { type ScheduleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ScheduleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ScheduleInitParameters `json:"initProvider,omitempty"` } // ScheduleStatus defines the observed state of Schedule. @@ -214,10 +289,10 @@ type ScheduleStatus struct { type Schedule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notificationSettings)",message="notificationSettings is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.taskType)",message="taskType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timeZoneId)",message="timeZoneId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.notificationSettings) || has(self.initProvider.notificationSettings)",message="notificationSettings is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.taskType) || has(self.initProvider.taskType)",message="taskType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.timeZoneId) || has(self.initProvider.timeZoneId)",message="timeZoneId is a required parameter" Spec ScheduleSpec `json:"spec"` Status ScheduleStatus `json:"status,omitempty"` } diff --git a/apis/devtestlab/v1beta1/zz_virtualnetwork_types.go b/apis/devtestlab/v1beta1/zz_virtualnetwork_types.go index c040a17ed..363d0b160 100755 --- a/apis/devtestlab/v1beta1/zz_virtualnetwork_types.go +++ b/apis/devtestlab/v1beta1/zz_virtualnetwork_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubnetInitParameters struct { + + // Can this subnet be used for creating Virtual Machines? Possible values are Allow, Default and Deny. + UseInVirtualMachineCreation *string `json:"useInVirtualMachineCreation,omitempty" tf:"use_in_virtual_machine_creation,omitempty"` + + // Can Virtual Machines in this Subnet use Public IP Addresses? Possible values are Allow, Default and Deny. + UsePublicIPAddress *string `json:"usePublicIpAddress,omitempty" tf:"use_public_ip_address,omitempty"` +} + type SubnetObservation struct { // The name of the Subnet for this Virtual Network. @@ -36,6 +45,21 @@ type SubnetParameters struct { UsePublicIPAddress *string `json:"usePublicIpAddress,omitempty" tf:"use_public_ip_address,omitempty"` } +type VirtualNetworkInitParameters struct { + + // A description for the Virtual Network. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies the name of the Dev Test Virtual Network. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A subnet block as defined below. + Subnet []SubnetInitParameters `json:"subnet,omitempty" tf:"subnet,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type VirtualNetworkObservation struct { // A description for the Virtual Network. @@ -112,6 +136,18 @@ type VirtualNetworkParameters struct { type VirtualNetworkSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualNetworkParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualNetworkInitParameters `json:"initProvider,omitempty"` } // VirtualNetworkStatus defines the observed state of VirtualNetwork. @@ -132,7 +168,7 @@ type VirtualNetworkStatus struct { type VirtualNetwork struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec VirtualNetworkSpec `json:"spec"` Status VirtualNetworkStatus `json:"status,omitempty"` } diff --git a/apis/devtestlab/v1beta1/zz_windowsvirtualmachine_types.go b/apis/devtestlab/v1beta1/zz_windowsvirtualmachine_types.go index 010092acc..d3a494ce4 100755 --- a/apis/devtestlab/v1beta1/zz_windowsvirtualmachine_types.go +++ b/apis/devtestlab/v1beta1/zz_windowsvirtualmachine_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WindowsVirtualMachineGalleryImageReferenceInitParameters struct { + + // The Offer of the Gallery Image. Changing this forces a new resource to be created. + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` + + // The Publisher of the Gallery Image. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // The SKU of the Gallery Image. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // The Version of the Gallery Image. Changing this forces a new resource to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type WindowsVirtualMachineGalleryImageReferenceObservation struct { // The Offer of the Gallery Image. Changing this forces a new resource to be created. @@ -31,20 +46,29 @@ type WindowsVirtualMachineGalleryImageReferenceObservation struct { type WindowsVirtualMachineGalleryImageReferenceParameters struct { // The Offer of the Gallery Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Offer *string `json:"offer" tf:"offer,omitempty"` + // +kubebuilder:validation:Optional + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // The Publisher of the Gallery Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // The SKU of the Gallery Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Sku *string `json:"sku" tf:"sku,omitempty"` + // +kubebuilder:validation:Optional + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // The Version of the Gallery Image. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type WindowsVirtualMachineInboundNATRuleInitParameters struct { + + // The Backend Port associated with this NAT Rule. Changing this forces a new resource to be created. + BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` + + // The Protocol used for this NAT Rule. Possible values are Tcp and Udp. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } type WindowsVirtualMachineInboundNATRuleObservation struct { @@ -62,12 +86,48 @@ type WindowsVirtualMachineInboundNATRuleObservation struct { type WindowsVirtualMachineInboundNATRuleParameters struct { // The Backend Port associated with this NAT Rule. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - BackendPort *float64 `json:"backendPort" tf:"backend_port,omitempty"` + // +kubebuilder:validation:Optional + BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` // The Protocol used for this NAT Rule. Possible values are Tcp and Udp. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` +} + +type WindowsVirtualMachineInitParameters struct { + + // Can this Virtual Machine be claimed by users? Defaults to true. + AllowClaim *bool `json:"allowClaim,omitempty" tf:"allow_claim,omitempty"` + + // Should the Virtual Machine be created without a Public IP Address? Changing this forces a new resource to be created. + DisallowPublicIPAddress *bool `json:"disallowPublicIpAddress,omitempty" tf:"disallow_public_ip_address,omitempty"` + + // A gallery_image_reference block as defined below. + GalleryImageReference []WindowsVirtualMachineGalleryImageReferenceInitParameters `json:"galleryImageReference,omitempty" tf:"gallery_image_reference,omitempty"` + + // One or more inbound_nat_rule blocks as defined below. Changing this forces a new resource to be created. + InboundNATRule []WindowsVirtualMachineInboundNATRuleInitParameters `json:"inboundNatRule,omitempty" tf:"inbound_nat_rule,omitempty"` + + // Specifies the supported Azure location where the Dev Test Lab exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name of the Dev Test Machine. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Any notes about the Virtual Machine. + Notes *string `json:"notes,omitempty" tf:"notes,omitempty"` + + // The Machine Size to use for this Virtual Machine, such as Standard_F2. Changing this forces a new resource to be created. + Size *string `json:"size,omitempty" tf:"size,omitempty"` + + // The type of Storage to use on this Virtual Machine. Possible values are Standard and Premium. + StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The Username associated with the local administrator on this Virtual Machine. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type WindowsVirtualMachineObservation struct { @@ -235,6 +295,18 @@ type WindowsVirtualMachineParameters struct { type WindowsVirtualMachineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WindowsVirtualMachineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WindowsVirtualMachineInitParameters `json:"initProvider,omitempty"` } // WindowsVirtualMachineStatus defines the observed state of WindowsVirtualMachine. @@ -255,13 +327,13 @@ type WindowsVirtualMachineStatus struct { type WindowsVirtualMachine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.galleryImageReference)",message="galleryImageReference is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.size)",message="size is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageType)",message="storageType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username)",message="username is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.galleryImageReference) || has(self.initProvider.galleryImageReference)",message="galleryImageReference is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.size) || has(self.initProvider.size)",message="size is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageType) || has(self.initProvider.storageType)",message="storageType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.username) || has(self.initProvider.username)",message="username is a required parameter" Spec WindowsVirtualMachineSpec `json:"spec"` Status WindowsVirtualMachineStatus `json:"status,omitempty"` } diff --git a/apis/digitaltwins/v1beta1/zz_generated.deepcopy.go b/apis/digitaltwins/v1beta1/zz_generated.deepcopy.go index 8e93e02e4..7e60e2142 100644 --- a/apis/digitaltwins/v1beta1/zz_generated.deepcopy.go +++ b/apis/digitaltwins/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,26 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -91,6 +111,48 @@ func (in *Instance) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstanceInitParameters) DeepCopyInto(out *InstanceInitParameters) { + *out = *in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceInitParameters. +func (in *InstanceInitParameters) DeepCopy() *InstanceInitParameters { + if in == nil { + return nil + } + out := new(InstanceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InstanceList) DeepCopyInto(out *InstanceList) { *out = *in @@ -242,6 +304,7 @@ func (in *InstanceSpec) DeepCopyInto(out *InstanceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpec. diff --git a/apis/digitaltwins/v1beta1/zz_generated.managed.go b/apis/digitaltwins/v1beta1/zz_generated.managed.go index ecc18536a..ac0f27201 100644 --- a/apis/digitaltwins/v1beta1/zz_generated.managed.go +++ b/apis/digitaltwins/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Instance) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Instance. -func (mg *Instance) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Instance. +func (mg *Instance) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Instance. @@ -55,9 +55,9 @@ func (mg *Instance) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Instance. -func (mg *Instance) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Instance. +func (mg *Instance) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Instance. diff --git a/apis/digitaltwins/v1beta1/zz_generated_terraformed.go b/apis/digitaltwins/v1beta1/zz_generated_terraformed.go index 1bbd75185..d19819b32 100755 --- a/apis/digitaltwins/v1beta1/zz_generated_terraformed.go +++ b/apis/digitaltwins/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Instance) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Instance +func (tr *Instance) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Instance using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Instance) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/digitaltwins/v1beta1/zz_instance_types.go b/apis/digitaltwins/v1beta1/zz_instance_types.go index e2f214cdf..acc528ee6 100755 --- a/apis/digitaltwins/v1beta1/zz_instance_types.go +++ b/apis/digitaltwins/v1beta1/zz_instance_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityInitParameters struct { + + // The type of Managed Service Identity that is configured on this Digital Twins instance. The only possible value is SystemAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // The ID of the Digital Twins instance. @@ -28,8 +34,20 @@ type IdentityObservation struct { type IdentityParameters struct { // The type of Managed Service Identity that is configured on this Digital Twins instance. The only possible value is SystemAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type InstanceInitParameters struct { + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Digital Twins instance should exist. Changing this forces a new Digital Twins instance to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Digital Twins instance. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type InstanceObservation struct { @@ -85,6 +103,18 @@ type InstanceParameters struct { type InstanceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider InstanceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider InstanceInitParameters `json:"initProvider,omitempty"` } // InstanceStatus defines the observed state of Instance. @@ -105,7 +135,7 @@ type InstanceStatus struct { type Instance struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec InstanceSpec `json:"spec"` Status InstanceStatus `json:"status,omitempty"` } diff --git a/apis/elastic/v1beta1/zz_cloudelasticsearch_types.go b/apis/elastic/v1beta1/zz_cloudelasticsearch_types.go index 00b0f546d..dc187edbf 100755 --- a/apis/elastic/v1beta1/zz_cloudelasticsearch_types.go +++ b/apis/elastic/v1beta1/zz_cloudelasticsearch_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CloudElasticsearchInitParameters struct { + + // Specifies the Email Address which should be associated with this Elasticsearch account. Changing this forces a new Elasticsearch to be created. + ElasticCloudEmailAddress *string `json:"elasticCloudEmailAddress,omitempty" tf:"elastic_cloud_email_address,omitempty"` + + // The Azure Region where the Elasticsearch resource should exist. Changing this forces a new Elasticsearch to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A logs block as defined below. + Logs []LogsInitParameters `json:"logs,omitempty" tf:"logs,omitempty"` + + // Specifies if the Elasticsearch should have monitoring configured? Defaults to true. Changing this forces a new Elasticsearch to be created. + MonitoringEnabled *bool `json:"monitoringEnabled,omitempty" tf:"monitoring_enabled,omitempty"` + + // Specifies the name of the SKU for this Elasticsearch. Changing this forces a new Elasticsearch to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags which should be assigned to the Elasticsearch resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type CloudElasticsearchObservation struct { // The ID of the Deployment within Elastic Cloud. @@ -98,6 +119,18 @@ type CloudElasticsearchParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type FilteringTagInitParameters struct { + + // Specifies the type of action which should be taken when the Tag matches the name and value. Possible values are Exclude and Include. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The name which should be used for this Elasticsearch resource. Changing this forces a new Elasticsearch to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the value of the Tag which should be filtered. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type FilteringTagObservation struct { // Specifies the type of action which should be taken when the Tag matches the name and value. Possible values are Exclude and Include. @@ -113,16 +146,31 @@ type FilteringTagObservation struct { type FilteringTagParameters struct { // Specifies the type of action which should be taken when the Tag matches the name and value. Possible values are Exclude and Include. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name which should be used for this Elasticsearch resource. Changing this forces a new Elasticsearch to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the value of the Tag which should be filtered. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type LogsInitParameters struct { + + // A list of filtering_tag blocks as defined above. + FilteringTag []FilteringTagInitParameters `json:"filteringTag,omitempty" tf:"filtering_tag,omitempty"` + + // Specifies if the Azure Activity Logs should be sent to the Elasticsearch cluster. Defaults to false. + SendActivityLogs *bool `json:"sendActivityLogs,omitempty" tf:"send_activity_logs,omitempty"` + + // Specifies if the AzureAD Logs should be sent to the Elasticsearch cluster. Defaults to false. + SendAzureadLogs *bool `json:"sendAzureadLogs,omitempty" tf:"send_azuread_logs,omitempty"` + + // Specifies if the Azure Subscription Logs should be sent to the Elasticsearch cluster. Defaults to false. + SendSubscriptionLogs *bool `json:"sendSubscriptionLogs,omitempty" tf:"send_subscription_logs,omitempty"` } type LogsObservation struct { @@ -163,6 +211,18 @@ type LogsParameters struct { type CloudElasticsearchSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CloudElasticsearchParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CloudElasticsearchInitParameters `json:"initProvider,omitempty"` } // CloudElasticsearchStatus defines the observed state of CloudElasticsearch. @@ -183,9 +243,9 @@ type CloudElasticsearchStatus struct { type CloudElasticsearch struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.elasticCloudEmailAddress)",message="elasticCloudEmailAddress is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.elasticCloudEmailAddress) || has(self.initProvider.elasticCloudEmailAddress)",message="elasticCloudEmailAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec CloudElasticsearchSpec `json:"spec"` Status CloudElasticsearchStatus `json:"status,omitempty"` } diff --git a/apis/elastic/v1beta1/zz_generated.deepcopy.go b/apis/elastic/v1beta1/zz_generated.deepcopy.go index c772eb93d..43ddb9723 100644 --- a/apis/elastic/v1beta1/zz_generated.deepcopy.go +++ b/apis/elastic/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,63 @@ func (in *CloudElasticsearch) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CloudElasticsearchInitParameters) DeepCopyInto(out *CloudElasticsearchInitParameters) { + *out = *in + if in.ElasticCloudEmailAddress != nil { + in, out := &in.ElasticCloudEmailAddress, &out.ElasticCloudEmailAddress + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Logs != nil { + in, out := &in.Logs, &out.Logs + *out = make([]LogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MonitoringEnabled != nil { + in, out := &in.MonitoringEnabled, &out.MonitoringEnabled + *out = new(bool) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudElasticsearchInitParameters. +func (in *CloudElasticsearchInitParameters) DeepCopy() *CloudElasticsearchInitParameters { + if in == nil { + return nil + } + out := new(CloudElasticsearchInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CloudElasticsearchList) DeepCopyInto(out *CloudElasticsearchList) { *out = *in @@ -247,6 +304,7 @@ func (in *CloudElasticsearchSpec) DeepCopyInto(out *CloudElasticsearchSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudElasticsearchSpec. @@ -276,6 +334,36 @@ func (in *CloudElasticsearchStatus) DeepCopy() *CloudElasticsearchStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilteringTagInitParameters) DeepCopyInto(out *FilteringTagInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilteringTagInitParameters. +func (in *FilteringTagInitParameters) DeepCopy() *FilteringTagInitParameters { + if in == nil { + return nil + } + out := new(FilteringTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FilteringTagObservation) DeepCopyInto(out *FilteringTagObservation) { *out = *in @@ -336,6 +424,43 @@ func (in *FilteringTagParameters) DeepCopy() *FilteringTagParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogsInitParameters) DeepCopyInto(out *LogsInitParameters) { + *out = *in + if in.FilteringTag != nil { + in, out := &in.FilteringTag, &out.FilteringTag + *out = make([]FilteringTagInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SendActivityLogs != nil { + in, out := &in.SendActivityLogs, &out.SendActivityLogs + *out = new(bool) + **out = **in + } + if in.SendAzureadLogs != nil { + in, out := &in.SendAzureadLogs, &out.SendAzureadLogs + *out = new(bool) + **out = **in + } + if in.SendSubscriptionLogs != nil { + in, out := &in.SendSubscriptionLogs, &out.SendSubscriptionLogs + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogsInitParameters. +func (in *LogsInitParameters) DeepCopy() *LogsInitParameters { + if in == nil { + return nil + } + out := new(LogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogsObservation) DeepCopyInto(out *LogsObservation) { *out = *in diff --git a/apis/elastic/v1beta1/zz_generated.managed.go b/apis/elastic/v1beta1/zz_generated.managed.go index 90f801e03..03d2699d1 100644 --- a/apis/elastic/v1beta1/zz_generated.managed.go +++ b/apis/elastic/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *CloudElasticsearch) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CloudElasticsearch. -func (mg *CloudElasticsearch) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CloudElasticsearch. +func (mg *CloudElasticsearch) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CloudElasticsearch. @@ -55,9 +55,9 @@ func (mg *CloudElasticsearch) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CloudElasticsearch. -func (mg *CloudElasticsearch) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CloudElasticsearch. +func (mg *CloudElasticsearch) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CloudElasticsearch. diff --git a/apis/elastic/v1beta1/zz_generated_terraformed.go b/apis/elastic/v1beta1/zz_generated_terraformed.go index 0664657e9..81c1c0cfd 100755 --- a/apis/elastic/v1beta1/zz_generated_terraformed.go +++ b/apis/elastic/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *CloudElasticsearch) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CloudElasticsearch +func (tr *CloudElasticsearch) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CloudElasticsearch using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CloudElasticsearch) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/eventgrid/v1beta1/zz_domain_types.go b/apis/eventgrid/v1beta1/zz_domain_types.go index c8fd75d6d..033ccc0a4 100755 --- a/apis/eventgrid/v1beta1/zz_domain_types.go +++ b/apis/eventgrid/v1beta1/zz_domain_types.go @@ -13,6 +13,42 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DomainInitParameters struct { + + // Whether to create the domain topic when the first event subscription at the scope of the domain topic is created. Defaults to true. + AutoCreateTopicWithFirstSubscription *bool `json:"autoCreateTopicWithFirstSubscription,omitempty" tf:"auto_create_topic_with_first_subscription,omitempty"` + + // Whether to delete the domain topic when the last event subscription at the scope of the domain topic is deleted. Defaults to true. + AutoDeleteTopicWithLastSubscription *bool `json:"autoDeleteTopicWithLastSubscription,omitempty" tf:"auto_delete_topic_with_last_subscription,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // One or more inbound_ip_rule blocks as defined below. + InboundIPRule []InboundIPRuleInitParameters `json:"inboundIpRule,omitempty" tf:"inbound_ip_rule,omitempty"` + + // A input_mapping_default_values block as defined below. Changing this forces a new resource to be created. + InputMappingDefaultValues []InputMappingDefaultValuesInitParameters `json:"inputMappingDefaultValues,omitempty" tf:"input_mapping_default_values,omitempty"` + + // A input_mapping_fields block as defined below. Changing this forces a new resource to be created. + InputMappingFields []InputMappingFieldsInitParameters `json:"inputMappingFields,omitempty" tf:"input_mapping_fields,omitempty"` + + // Specifies the schema in which incoming events will be published to this domain. Allowed values are CloudEventSchemaV1_0, CustomEventSchema, or EventGridSchema. Defaults to eventgridschema. Changing this forces a new resource to be created. + InputSchema *string `json:"inputSchema,omitempty" tf:"input_schema,omitempty"` + + // Whether local authentication methods is enabled for the EventGrid Domain. Defaults to true. + LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether or not public network access is allowed for this server. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DomainObservation struct { // Whether to create the domain topic when the first event subscription at the scope of the domain topic is created. Defaults to true. @@ -118,6 +154,15 @@ type DomainParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Event Grid Domain. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Event Grid Domain. Possible values are SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Event Grid Domain. @@ -140,8 +185,17 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Event Grid Domain. Possible values are SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type InboundIPRuleInitParameters struct { + + // The action to take when the rule is matched. Possible values are Allow. + Action *string `json:"action,omitempty" tf:"action"` + + // The IP mask (CIDR) to match on. + IPMask *string `json:"ipMask,omitempty" tf:"ip_mask"` } type InboundIPRuleObservation struct { @@ -164,6 +218,18 @@ type InboundIPRuleParameters struct { IPMask *string `json:"ipMask,omitempty" tf:"ip_mask"` } +type InputMappingDefaultValuesInitParameters struct { + + // Specifies the default data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + DataVersion *string `json:"dataVersion,omitempty" tf:"data_version,omitempty"` + + // Specifies the default event type of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + EventType *string `json:"eventType,omitempty" tf:"event_type,omitempty"` + + // Specifies the default subject of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` +} + type InputMappingDefaultValuesObservation struct { // Specifies the default data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. @@ -191,6 +257,27 @@ type InputMappingDefaultValuesParameters struct { Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` } +type InputMappingFieldsInitParameters struct { + + // Specifies the data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + DataVersion *string `json:"dataVersion,omitempty" tf:"data_version,omitempty"` + + // Specifies the event time of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + EventTime *string `json:"eventTime,omitempty" tf:"event_time,omitempty"` + + // Specifies the event type of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + EventType *string `json:"eventType,omitempty" tf:"event_type,omitempty"` + + // Specifies the id of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // Specifies the subject of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` + + // Specifies the topic of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + Topic *string `json:"topic,omitempty" tf:"topic,omitempty"` +} + type InputMappingFieldsObservation struct { // Specifies the data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. @@ -243,6 +330,18 @@ type InputMappingFieldsParameters struct { type DomainSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DomainParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DomainInitParameters `json:"initProvider,omitempty"` } // DomainStatus defines the observed state of Domain. @@ -263,7 +362,7 @@ type DomainStatus struct { type Domain struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec DomainSpec `json:"spec"` Status DomainStatus `json:"status,omitempty"` } diff --git a/apis/eventgrid/v1beta1/zz_domaintopic_types.go b/apis/eventgrid/v1beta1/zz_domaintopic_types.go index 60cc7daea..01cf229e3 100755 --- a/apis/eventgrid/v1beta1/zz_domaintopic_types.go +++ b/apis/eventgrid/v1beta1/zz_domaintopic_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DomainTopicInitParameters struct { +} + type DomainTopicObservation struct { // Specifies the name of the EventGrid Domain. Changing this forces a new resource to be created. @@ -58,6 +61,18 @@ type DomainTopicParameters struct { type DomainTopicSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DomainTopicParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DomainTopicInitParameters `json:"initProvider,omitempty"` } // DomainTopicStatus defines the observed state of DomainTopic. diff --git a/apis/eventgrid/v1beta1/zz_eventsubscription_types.go b/apis/eventgrid/v1beta1/zz_eventsubscription_types.go index 723d3a62c..93dfc2a48 100755 --- a/apis/eventgrid/v1beta1/zz_eventsubscription_types.go +++ b/apis/eventgrid/v1beta1/zz_eventsubscription_types.go @@ -13,6 +13,66 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AdvancedFilterInitParameters struct { + + // Compares a value of an event using a single boolean value. + BoolEquals []BoolEqualsInitParameters `json:"boolEquals,omitempty" tf:"bool_equals,omitempty"` + + // Evaluates if a value of an event isn't NULL or undefined. + IsNotNull []IsNotNullInitParameters `json:"isNotNull,omitempty" tf:"is_not_null,omitempty"` + + // Evaluates if a value of an event is NULL or undefined. + IsNullOrUndefined []IsNullOrUndefinedInitParameters `json:"isNullOrUndefined,omitempty" tf:"is_null_or_undefined,omitempty"` + + // Compares a value of an event using a single floating point number. + NumberGreaterThan []NumberGreaterThanInitParameters `json:"numberGreaterThan,omitempty" tf:"number_greater_than,omitempty"` + + // Compares a value of an event using a single floating point number. + NumberGreaterThanOrEquals []NumberGreaterThanOrEqualsInitParameters `json:"numberGreaterThanOrEquals,omitempty" tf:"number_greater_than_or_equals,omitempty"` + + // Compares a value of an event using multiple floating point numbers. + NumberIn []NumberInInitParameters `json:"numberIn,omitempty" tf:"number_in,omitempty"` + + // Compares a value of an event using multiple floating point number ranges. + NumberInRange []NumberInRangeInitParameters `json:"numberInRange,omitempty" tf:"number_in_range,omitempty"` + + // Compares a value of an event using a single floating point number. + NumberLessThan []NumberLessThanInitParameters `json:"numberLessThan,omitempty" tf:"number_less_than,omitempty"` + + // Compares a value of an event using a single floating point number. + NumberLessThanOrEquals []NumberLessThanOrEqualsInitParameters `json:"numberLessThanOrEquals,omitempty" tf:"number_less_than_or_equals,omitempty"` + + // Compares a value of an event using multiple floating point numbers. + NumberNotIn []NumberNotInInitParameters `json:"numberNotIn,omitempty" tf:"number_not_in,omitempty"` + + // Compares a value of an event using multiple floating point number ranges. + NumberNotInRange []NumberNotInRangeInitParameters `json:"numberNotInRange,omitempty" tf:"number_not_in_range,omitempty"` + + // Compares a value of an event using multiple string values. + StringBeginsWith []StringBeginsWithInitParameters `json:"stringBeginsWith,omitempty" tf:"string_begins_with,omitempty"` + + // Compares a value of an event using multiple string values. + StringContains []StringContainsInitParameters `json:"stringContains,omitempty" tf:"string_contains,omitempty"` + + // Compares a value of an event using multiple string values. + StringEndsWith []StringEndsWithInitParameters `json:"stringEndsWith,omitempty" tf:"string_ends_with,omitempty"` + + // Compares a value of an event using multiple string values. + StringIn []StringInInitParameters `json:"stringIn,omitempty" tf:"string_in,omitempty"` + + // Compares a value of an event using multiple string values. + StringNotBeginsWith []StringNotBeginsWithInitParameters `json:"stringNotBeginsWith,omitempty" tf:"string_not_begins_with,omitempty"` + + // Compares a value of an event using multiple string values. + StringNotContains []StringNotContainsInitParameters `json:"stringNotContains,omitempty" tf:"string_not_contains,omitempty"` + + // Compares a value of an event using multiple string values. + StringNotEndsWith []StringNotEndsWithInitParameters `json:"stringNotEndsWith,omitempty" tf:"string_not_ends_with,omitempty"` + + // Compares a value of an event using multiple string values. + StringNotIn []StringNotInInitParameters `json:"stringNotIn,omitempty" tf:"string_not_in,omitempty"` +} + type AdvancedFilterObservation struct { // Compares a value of an event using a single boolean value. @@ -152,6 +212,18 @@ type AdvancedFilterParameters struct { StringNotIn []StringNotInParameters `json:"stringNotIn,omitempty" tf:"string_not_in,omitempty"` } +type AzureFunctionEndpointInitParameters struct { + + // Specifies the ID of the Function where the Event Subscription will receive events. This must be the functions ID in format {function_app.id}/functions/{name}. + FunctionID *string `json:"functionId,omitempty" tf:"function_id,omitempty"` + + // Maximum number of events per batch. + MaxEventsPerBatch *float64 `json:"maxEventsPerBatch,omitempty" tf:"max_events_per_batch,omitempty"` + + // Preferred batch size in Kilobytes. + PreferredBatchSizeInKilobytes *float64 `json:"preferredBatchSizeInKilobytes,omitempty" tf:"preferred_batch_size_in_kilobytes,omitempty"` +} + type AzureFunctionEndpointObservation struct { // Specifies the ID of the Function where the Event Subscription will receive events. This must be the functions ID in format {function_app.id}/functions/{name}. @@ -167,8 +239,8 @@ type AzureFunctionEndpointObservation struct { type AzureFunctionEndpointParameters struct { // Specifies the ID of the Function where the Event Subscription will receive events. This must be the functions ID in format {function_app.id}/functions/{name}. - // +kubebuilder:validation:Required - FunctionID *string `json:"functionId" tf:"function_id,omitempty"` + // +kubebuilder:validation:Optional + FunctionID *string `json:"functionId,omitempty" tf:"function_id,omitempty"` // Maximum number of events per batch. // +kubebuilder:validation:Optional @@ -179,6 +251,15 @@ type AzureFunctionEndpointParameters struct { PreferredBatchSizeInKilobytes *float64 `json:"preferredBatchSizeInKilobytes,omitempty" tf:"preferred_batch_size_in_kilobytes,omitempty"` } +type BoolEqualsInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies a single value to compare to when using a single value operator. + Value *bool `json:"value,omitempty" tf:"value,omitempty"` +} + type BoolEqualsObservation struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. @@ -191,12 +272,21 @@ type BoolEqualsObservation struct { type BoolEqualsParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies a single value to compare to when using a single value operator. - // +kubebuilder:validation:Required - Value *bool `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *bool `json:"value,omitempty" tf:"value,omitempty"` +} + +type DeadLetterIdentityInitParameters struct { + + // Specifies the type of Managed Service Identity that is used for dead lettering. Allowed value is SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The user identity associated with the resource. + UserAssignedIdentity *string `json:"userAssignedIdentity,omitempty" tf:"user_assigned_identity,omitempty"` } type DeadLetterIdentityObservation struct { @@ -211,14 +301,23 @@ type DeadLetterIdentityObservation struct { type DeadLetterIdentityParameters struct { // Specifies the type of Managed Service Identity that is used for dead lettering. Allowed value is SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The user identity associated with the resource. // +kubebuilder:validation:Optional UserAssignedIdentity *string `json:"userAssignedIdentity,omitempty" tf:"user_assigned_identity,omitempty"` } +type DeliveryIdentityInitParameters struct { + + // Specifies the type of Managed Service Identity that is used for event delivery. Allowed value is SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The user identity associated with the resource. + UserAssignedIdentity *string `json:"userAssignedIdentity,omitempty" tf:"user_assigned_identity,omitempty"` +} + type DeliveryIdentityObservation struct { // Specifies the type of Managed Service Identity that is used for event delivery. Allowed value is SystemAssigned, UserAssigned. @@ -231,14 +330,29 @@ type DeliveryIdentityObservation struct { type DeliveryIdentityParameters struct { // Specifies the type of Managed Service Identity that is used for event delivery. Allowed value is SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The user identity associated with the resource. // +kubebuilder:validation:Optional UserAssignedIdentity *string `json:"userAssignedIdentity,omitempty" tf:"user_assigned_identity,omitempty"` } +type DeliveryPropertyInitParameters struct { + + // The name of the header to send on to the destination + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + + // True if the value is a secret and should be protected, otherwise false. If True, then this value won't be returned from Azure API calls + Secret *bool `json:"secret,omitempty" tf:"secret,omitempty"` + + // If the type is Dynamic, then provide the payload field to be used as the value. Valid source fields differ by subscription type. + SourceField *string `json:"sourceField,omitempty" tf:"source_field,omitempty"` + + // Either Static or Dynamic + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DeliveryPropertyObservation struct { // The name of the header to send on to the destination @@ -257,8 +371,8 @@ type DeliveryPropertyObservation struct { type DeliveryPropertyParameters struct { // The name of the header to send on to the destination - // +kubebuilder:validation:Required - HeaderName *string `json:"headerName" tf:"header_name,omitempty"` + // +kubebuilder:validation:Optional + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // True if the value is a secret and should be protected, otherwise false. If True, then this value won't be returned from Azure API calls // +kubebuilder:validation:Optional @@ -269,14 +383,77 @@ type DeliveryPropertyParameters struct { SourceField *string `json:"sourceField,omitempty" tf:"source_field,omitempty"` // Either Static or Dynamic - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // If the type is Static, then provide the value to use // +kubebuilder:validation:Optional ValueSecretRef *v1.SecretKeySelector `json:"valueSecretRef,omitempty" tf:"-"` } +type EventSubscriptionInitParameters struct { + + // A advanced_filter block as defined below. + AdvancedFilter []AdvancedFilterInitParameters `json:"advancedFilter,omitempty" tf:"advanced_filter,omitempty"` + + // Specifies whether advanced filters should be evaluated against an array of values instead of expecting a singular value. Defaults to false. + AdvancedFilteringOnArraysEnabled *bool `json:"advancedFilteringOnArraysEnabled,omitempty" tf:"advanced_filtering_on_arrays_enabled,omitempty"` + + // An azure_function_endpoint block as defined below. + AzureFunctionEndpoint []AzureFunctionEndpointInitParameters `json:"azureFunctionEndpoint,omitempty" tf:"azure_function_endpoint,omitempty"` + + // A dead_letter_identity block as defined below. + DeadLetterIdentity []DeadLetterIdentityInitParameters `json:"deadLetterIdentity,omitempty" tf:"dead_letter_identity,omitempty"` + + // A delivery_identity block as defined below. + DeliveryIdentity []DeliveryIdentityInitParameters `json:"deliveryIdentity,omitempty" tf:"delivery_identity,omitempty"` + + // One or more delivery_property blocks as defined below. + DeliveryProperty []DeliveryPropertyInitParameters `json:"deliveryProperty,omitempty" tf:"delivery_property,omitempty"` + + // Specifies the event delivery schema for the event subscription. Possible values include: EventGridSchema, CloudEventSchemaV1_0, CustomInputSchema. Defaults to EventGridSchema. Changing this forces a new resource to be created. + EventDeliverySchema *string `json:"eventDeliverySchema,omitempty" tf:"event_delivery_schema,omitempty"` + + // Specifies the id where the Event Hub is located. + EventHubEndpointID *string `json:"eventhubEndpointId,omitempty" tf:"eventhub_endpoint_id,omitempty"` + + // Specifies the expiration time of the event subscription (Datetime Format RFC 3339). + ExpirationTimeUtc *string `json:"expirationTimeUtc,omitempty" tf:"expiration_time_utc,omitempty"` + + // Specifies the id where the Hybrid Connection is located. + HybridConnectionEndpointID *string `json:"hybridConnectionEndpointId,omitempty" tf:"hybrid_connection_endpoint_id,omitempty"` + + // A list of applicable event types that need to be part of the event subscription. + IncludedEventTypes []*string `json:"includedEventTypes,omitempty" tf:"included_event_types,omitempty"` + + // A list of labels to assign to the event subscription. + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` + + // Specifies the name of the EventGrid Event Subscription resource. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A retry_policy block as defined below. + RetryPolicy []RetryPolicyInitParameters `json:"retryPolicy,omitempty" tf:"retry_policy,omitempty"` + + // Specifies the id where the Service Bus Queue is located. + ServiceBusQueueEndpointID *string `json:"serviceBusQueueEndpointId,omitempty" tf:"service_bus_queue_endpoint_id,omitempty"` + + // Specifies the id where the Service Bus Topic is located. + ServiceBusTopicEndpointID *string `json:"serviceBusTopicEndpointId,omitempty" tf:"service_bus_topic_endpoint_id,omitempty"` + + // A storage_blob_dead_letter_destination block as defined below. + StorageBlobDeadLetterDestination []StorageBlobDeadLetterDestinationInitParameters `json:"storageBlobDeadLetterDestination,omitempty" tf:"storage_blob_dead_letter_destination,omitempty"` + + // A storage_queue_endpoint block as defined below. + StorageQueueEndpoint []StorageQueueEndpointInitParameters `json:"storageQueueEndpoint,omitempty" tf:"storage_queue_endpoint,omitempty"` + + // A subject_filter block as defined below. + SubjectFilter []SubjectFilterInitParameters `json:"subjectFilter,omitempty" tf:"subject_filter,omitempty"` + + // A webhook_endpoint block as defined below. + WebhookEndpoint []WebhookEndpointInitParameters `json:"webhookEndpoint,omitempty" tf:"webhook_endpoint,omitempty"` +} + type EventSubscriptionObservation struct { // A advanced_filter block as defined below. @@ -443,6 +620,12 @@ type EventSubscriptionParameters struct { WebhookEndpoint []WebhookEndpointParameters `json:"webhookEndpoint,omitempty" tf:"webhook_endpoint,omitempty"` } +type IsNotNullInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` +} + type IsNotNullObservation struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. @@ -452,8 +635,14 @@ type IsNotNullObservation struct { type IsNotNullParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` +} + +type IsNullOrUndefinedInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` } type IsNullOrUndefinedObservation struct { @@ -465,8 +654,17 @@ type IsNullOrUndefinedObservation struct { type IsNullOrUndefinedParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` +} + +type NumberGreaterThanInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies a single value to compare to when using a single value operator. + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } type NumberGreaterThanObservation struct { @@ -478,6 +676,15 @@ type NumberGreaterThanObservation struct { Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } +type NumberGreaterThanOrEqualsInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies a single value to compare to when using a single value operator. + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` +} + type NumberGreaterThanOrEqualsObservation struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. @@ -490,23 +697,32 @@ type NumberGreaterThanOrEqualsObservation struct { type NumberGreaterThanOrEqualsParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies a single value to compare to when using a single value operator. - // +kubebuilder:validation:Required - Value *float64 `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } type NumberGreaterThanParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies a single value to compare to when using a single value operator. - // +kubebuilder:validation:Required - Value *float64 `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` +} + +type NumberInInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + Values []*float64 `json:"values,omitempty" tf:"values,omitempty"` } type NumberInObservation struct { @@ -521,12 +737,21 @@ type NumberInObservation struct { type NumberInParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional + Values []*float64 `json:"values,omitempty" tf:"values,omitempty"` +} + +type NumberInRangeInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values []*float64 `json:"values" tf:"values,omitempty"` + Values [][]*float64 `json:"values,omitempty" tf:"values,omitempty"` } type NumberInRangeObservation struct { @@ -541,12 +766,21 @@ type NumberInRangeObservation struct { type NumberInRangeParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values [][]*float64 `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values [][]*float64 `json:"values,omitempty" tf:"values,omitempty"` +} + +type NumberLessThanInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies a single value to compare to when using a single value operator. + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } type NumberLessThanObservation struct { @@ -558,6 +792,15 @@ type NumberLessThanObservation struct { Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } +type NumberLessThanOrEqualsInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies a single value to compare to when using a single value operator. + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` +} + type NumberLessThanOrEqualsObservation struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. @@ -570,23 +813,32 @@ type NumberLessThanOrEqualsObservation struct { type NumberLessThanOrEqualsParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies a single value to compare to when using a single value operator. - // +kubebuilder:validation:Required - Value *float64 `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } type NumberLessThanParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies a single value to compare to when using a single value operator. - // +kubebuilder:validation:Required - Value *float64 `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` +} + +type NumberNotInInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + Values []*float64 `json:"values,omitempty" tf:"values,omitempty"` } type NumberNotInObservation struct { @@ -601,12 +853,21 @@ type NumberNotInObservation struct { type NumberNotInParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional + Values []*float64 `json:"values,omitempty" tf:"values,omitempty"` +} + +type NumberNotInRangeInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values []*float64 `json:"values" tf:"values,omitempty"` + Values [][]*float64 `json:"values,omitempty" tf:"values,omitempty"` } type NumberNotInRangeObservation struct { @@ -621,12 +882,21 @@ type NumberNotInRangeObservation struct { type NumberNotInRangeParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values [][]*float64 `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values [][]*float64 `json:"values,omitempty" tf:"values,omitempty"` +} + +type RetryPolicyInitParameters struct { + + // Specifies the time to live (in minutes) for events. Supported range is 1 to 1440. See official documentation for more details. + EventTimeToLive *float64 `json:"eventTimeToLive,omitempty" tf:"event_time_to_live,omitempty"` + + // Specifies the maximum number of delivery retry attempts for events. + MaxDeliveryAttempts *float64 `json:"maxDeliveryAttempts,omitempty" tf:"max_delivery_attempts,omitempty"` } type RetryPolicyObservation struct { @@ -641,12 +911,21 @@ type RetryPolicyObservation struct { type RetryPolicyParameters struct { // Specifies the time to live (in minutes) for events. Supported range is 1 to 1440. See official documentation for more details. - // +kubebuilder:validation:Required - EventTimeToLive *float64 `json:"eventTimeToLive" tf:"event_time_to_live,omitempty"` + // +kubebuilder:validation:Optional + EventTimeToLive *float64 `json:"eventTimeToLive,omitempty" tf:"event_time_to_live,omitempty"` // Specifies the maximum number of delivery retry attempts for events. - // +kubebuilder:validation:Required - MaxDeliveryAttempts *float64 `json:"maxDeliveryAttempts" tf:"max_delivery_attempts,omitempty"` + // +kubebuilder:validation:Optional + MaxDeliveryAttempts *float64 `json:"maxDeliveryAttempts,omitempty" tf:"max_delivery_attempts,omitempty"` +} + +type StorageBlobDeadLetterDestinationInitParameters struct { + + // Specifies the id of the storage account id where the storage blob is located. + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` + + // Specifies the name of the Storage blob container that is the destination of the deadletter events. + StorageBlobContainerName *string `json:"storageBlobContainerName,omitempty" tf:"storage_blob_container_name,omitempty"` } type StorageBlobDeadLetterDestinationObservation struct { @@ -661,12 +940,18 @@ type StorageBlobDeadLetterDestinationObservation struct { type StorageBlobDeadLetterDestinationParameters struct { // Specifies the id of the storage account id where the storage blob is located. - // +kubebuilder:validation:Required - StorageAccountID *string `json:"storageAccountId" tf:"storage_account_id,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` // Specifies the name of the Storage blob container that is the destination of the deadletter events. - // +kubebuilder:validation:Required - StorageBlobContainerName *string `json:"storageBlobContainerName" tf:"storage_blob_container_name,omitempty"` + // +kubebuilder:validation:Optional + StorageBlobContainerName *string `json:"storageBlobContainerName,omitempty" tf:"storage_blob_container_name,omitempty"` +} + +type StorageQueueEndpointInitParameters struct { + + // Storage queue message time to live in seconds. + QueueMessageTimeToLiveInSeconds *float64 `json:"queueMessageTimeToLiveInSeconds,omitempty" tf:"queue_message_time_to_live_in_seconds,omitempty"` } type StorageQueueEndpointObservation struct { @@ -715,6 +1000,15 @@ type StorageQueueEndpointParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` } +type StringBeginsWithInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type StringBeginsWithObservation struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. @@ -727,12 +1021,21 @@ type StringBeginsWithObservation struct { type StringBeginsWithParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type StringContainsInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type StringContainsObservation struct { @@ -747,12 +1050,21 @@ type StringContainsObservation struct { type StringContainsParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type StringEndsWithInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type StringEndsWithObservation struct { @@ -767,12 +1079,21 @@ type StringEndsWithObservation struct { type StringEndsWithParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type StringInInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type StringInObservation struct { @@ -787,12 +1108,21 @@ type StringInObservation struct { type StringInParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type StringNotBeginsWithInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type StringNotBeginsWithObservation struct { @@ -807,12 +1137,21 @@ type StringNotBeginsWithObservation struct { type StringNotBeginsWithParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type StringNotContainsInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type StringNotContainsObservation struct { @@ -827,12 +1166,21 @@ type StringNotContainsObservation struct { type StringNotContainsParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type StringNotEndsWithInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type StringNotEndsWithObservation struct { @@ -847,12 +1195,21 @@ type StringNotEndsWithObservation struct { type StringNotEndsWithParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` + + // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type StringNotInInitParameters struct { + + // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type StringNotInObservation struct { @@ -867,12 +1224,24 @@ type StringNotInObservation struct { type StringNotInParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type SubjectFilterInitParameters struct { + + // Specifies if subject_begins_with and subject_ends_with case sensitive. This value + CaseSensitive *bool `json:"caseSensitive,omitempty" tf:"case_sensitive,omitempty"` + + // A string to filter events for an event subscription based on a resource path prefix. + SubjectBeginsWith *string `json:"subjectBeginsWith,omitempty" tf:"subject_begins_with,omitempty"` + + // A string to filter events for an event subscription based on a resource path suffix. + SubjectEndsWith *string `json:"subjectEndsWith,omitempty" tf:"subject_ends_with,omitempty"` } type SubjectFilterObservation struct { @@ -902,6 +1271,24 @@ type SubjectFilterParameters struct { SubjectEndsWith *string `json:"subjectEndsWith,omitempty" tf:"subject_ends_with,omitempty"` } +type WebhookEndpointInitParameters struct { + + // The Azure Active Directory Application ID or URI to get the access token that will be included as the bearer token in delivery requests. + ActiveDirectoryAppIDOrURI *string `json:"activeDirectoryAppIdOrUri,omitempty" tf:"active_directory_app_id_or_uri,omitempty"` + + // The Azure Active Directory Tenant ID to get the access token that will be included as the bearer token in delivery requests. + ActiveDirectoryTenantID *string `json:"activeDirectoryTenantId,omitempty" tf:"active_directory_tenant_id,omitempty"` + + // Maximum number of events per batch. + MaxEventsPerBatch *float64 `json:"maxEventsPerBatch,omitempty" tf:"max_events_per_batch,omitempty"` + + // Preferred batch size in Kilobytes. + PreferredBatchSizeInKilobytes *float64 `json:"preferredBatchSizeInKilobytes,omitempty" tf:"preferred_batch_size_in_kilobytes,omitempty"` + + // Specifies the url of the webhook where the Event Subscription will receive events. + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type WebhookEndpointObservation struct { // The Azure Active Directory Application ID or URI to get the access token that will be included as the bearer token in delivery requests. @@ -942,14 +1329,26 @@ type WebhookEndpointParameters struct { PreferredBatchSizeInKilobytes *float64 `json:"preferredBatchSizeInKilobytes,omitempty" tf:"preferred_batch_size_in_kilobytes,omitempty"` // Specifies the url of the webhook where the Event Subscription will receive events. - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` } // EventSubscriptionSpec defines the desired state of EventSubscription type EventSubscriptionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EventSubscriptionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EventSubscriptionInitParameters `json:"initProvider,omitempty"` } // EventSubscriptionStatus defines the observed state of EventSubscription. @@ -970,7 +1369,7 @@ type EventSubscriptionStatus struct { type EventSubscription struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec EventSubscriptionSpec `json:"spec"` Status EventSubscriptionStatus `json:"status,omitempty"` } diff --git a/apis/eventgrid/v1beta1/zz_generated.deepcopy.go b/apis/eventgrid/v1beta1/zz_generated.deepcopy.go index ffe18caeb..920fcaf53 100644 --- a/apis/eventgrid/v1beta1/zz_generated.deepcopy.go +++ b/apis/eventgrid/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,154 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AdvancedFilterInitParameters) DeepCopyInto(out *AdvancedFilterInitParameters) { + *out = *in + if in.BoolEquals != nil { + in, out := &in.BoolEquals, &out.BoolEquals + *out = make([]BoolEqualsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IsNotNull != nil { + in, out := &in.IsNotNull, &out.IsNotNull + *out = make([]IsNotNullInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IsNullOrUndefined != nil { + in, out := &in.IsNullOrUndefined, &out.IsNullOrUndefined + *out = make([]IsNullOrUndefinedInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NumberGreaterThan != nil { + in, out := &in.NumberGreaterThan, &out.NumberGreaterThan + *out = make([]NumberGreaterThanInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NumberGreaterThanOrEquals != nil { + in, out := &in.NumberGreaterThanOrEquals, &out.NumberGreaterThanOrEquals + *out = make([]NumberGreaterThanOrEqualsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NumberIn != nil { + in, out := &in.NumberIn, &out.NumberIn + *out = make([]NumberInInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NumberInRange != nil { + in, out := &in.NumberInRange, &out.NumberInRange + *out = make([]NumberInRangeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NumberLessThan != nil { + in, out := &in.NumberLessThan, &out.NumberLessThan + *out = make([]NumberLessThanInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NumberLessThanOrEquals != nil { + in, out := &in.NumberLessThanOrEquals, &out.NumberLessThanOrEquals + *out = make([]NumberLessThanOrEqualsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NumberNotIn != nil { + in, out := &in.NumberNotIn, &out.NumberNotIn + *out = make([]NumberNotInInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NumberNotInRange != nil { + in, out := &in.NumberNotInRange, &out.NumberNotInRange + *out = make([]NumberNotInRangeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StringBeginsWith != nil { + in, out := &in.StringBeginsWith, &out.StringBeginsWith + *out = make([]StringBeginsWithInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StringContains != nil { + in, out := &in.StringContains, &out.StringContains + *out = make([]StringContainsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StringEndsWith != nil { + in, out := &in.StringEndsWith, &out.StringEndsWith + *out = make([]StringEndsWithInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StringIn != nil { + in, out := &in.StringIn, &out.StringIn + *out = make([]StringInInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StringNotBeginsWith != nil { + in, out := &in.StringNotBeginsWith, &out.StringNotBeginsWith + *out = make([]StringNotBeginsWithInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StringNotContains != nil { + in, out := &in.StringNotContains, &out.StringNotContains + *out = make([]StringNotContainsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StringNotEndsWith != nil { + in, out := &in.StringNotEndsWith, &out.StringNotEndsWith + *out = make([]StringNotEndsWithInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StringNotIn != nil { + in, out := &in.StringNotIn, &out.StringNotIn + *out = make([]StringNotInInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvancedFilterInitParameters. +func (in *AdvancedFilterInitParameters) DeepCopy() *AdvancedFilterInitParameters { + if in == nil { + return nil + } + out := new(AdvancedFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AdvancedFilterObservation) DeepCopyInto(out *AdvancedFilterObservation) { *out = *in @@ -310,6 +458,36 @@ func (in *AdvancedFilterParameters) DeepCopy() *AdvancedFilterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureFunctionEndpointInitParameters) DeepCopyInto(out *AzureFunctionEndpointInitParameters) { + *out = *in + if in.FunctionID != nil { + in, out := &in.FunctionID, &out.FunctionID + *out = new(string) + **out = **in + } + if in.MaxEventsPerBatch != nil { + in, out := &in.MaxEventsPerBatch, &out.MaxEventsPerBatch + *out = new(float64) + **out = **in + } + if in.PreferredBatchSizeInKilobytes != nil { + in, out := &in.PreferredBatchSizeInKilobytes, &out.PreferredBatchSizeInKilobytes + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureFunctionEndpointInitParameters. +func (in *AzureFunctionEndpointInitParameters) DeepCopy() *AzureFunctionEndpointInitParameters { + if in == nil { + return nil + } + out := new(AzureFunctionEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureFunctionEndpointObservation) DeepCopyInto(out *AzureFunctionEndpointObservation) { *out = *in @@ -370,6 +548,31 @@ func (in *AzureFunctionEndpointParameters) DeepCopy() *AzureFunctionEndpointPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BoolEqualsInitParameters) DeepCopyInto(out *BoolEqualsInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BoolEqualsInitParameters. +func (in *BoolEqualsInitParameters) DeepCopy() *BoolEqualsInitParameters { + if in == nil { + return nil + } + out := new(BoolEqualsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BoolEqualsObservation) DeepCopyInto(out *BoolEqualsObservation) { *out = *in @@ -420,6 +623,31 @@ func (in *BoolEqualsParameters) DeepCopy() *BoolEqualsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeadLetterIdentityInitParameters) DeepCopyInto(out *DeadLetterIdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.UserAssignedIdentity != nil { + in, out := &in.UserAssignedIdentity, &out.UserAssignedIdentity + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeadLetterIdentityInitParameters. +func (in *DeadLetterIdentityInitParameters) DeepCopy() *DeadLetterIdentityInitParameters { + if in == nil { + return nil + } + out := new(DeadLetterIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DeadLetterIdentityObservation) DeepCopyInto(out *DeadLetterIdentityObservation) { *out = *in @@ -470,6 +698,31 @@ func (in *DeadLetterIdentityParameters) DeepCopy() *DeadLetterIdentityParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeliveryIdentityInitParameters) DeepCopyInto(out *DeliveryIdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.UserAssignedIdentity != nil { + in, out := &in.UserAssignedIdentity, &out.UserAssignedIdentity + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryIdentityInitParameters. +func (in *DeliveryIdentityInitParameters) DeepCopy() *DeliveryIdentityInitParameters { + if in == nil { + return nil + } + out := new(DeliveryIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DeliveryIdentityObservation) DeepCopyInto(out *DeliveryIdentityObservation) { *out = *in @@ -520,6 +773,41 @@ func (in *DeliveryIdentityParameters) DeepCopy() *DeliveryIdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeliveryPropertyInitParameters) DeepCopyInto(out *DeliveryPropertyInitParameters) { + *out = *in + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName + *out = new(string) + **out = **in + } + if in.Secret != nil { + in, out := &in.Secret, &out.Secret + *out = new(bool) + **out = **in + } + if in.SourceField != nil { + in, out := &in.SourceField, &out.SourceField + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeliveryPropertyInitParameters. +func (in *DeliveryPropertyInitParameters) DeepCopy() *DeliveryPropertyInitParameters { + if in == nil { + return nil + } + out := new(DeliveryPropertyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DeliveryPropertyObservation) DeepCopyInto(out *DeliveryPropertyObservation) { *out = *in @@ -623,18 +911,106 @@ func (in *Domain) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DomainList) DeepCopyInto(out *DomainList) { +func (in *DomainInitParameters) DeepCopyInto(out *DomainInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Domain, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} + if in.AutoCreateTopicWithFirstSubscription != nil { + in, out := &in.AutoCreateTopicWithFirstSubscription, &out.AutoCreateTopicWithFirstSubscription + *out = new(bool) + **out = **in + } + if in.AutoDeleteTopicWithLastSubscription != nil { + in, out := &in.AutoDeleteTopicWithLastSubscription, &out.AutoDeleteTopicWithLastSubscription + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InboundIPRule != nil { + in, out := &in.InboundIPRule, &out.InboundIPRule + *out = make([]InboundIPRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InputMappingDefaultValues != nil { + in, out := &in.InputMappingDefaultValues, &out.InputMappingDefaultValues + *out = make([]InputMappingDefaultValuesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InputMappingFields != nil { + in, out := &in.InputMappingFields, &out.InputMappingFields + *out = make([]InputMappingFieldsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InputSchema != nil { + in, out := &in.InputSchema, &out.InputSchema + *out = new(string) + **out = **in + } + if in.LocalAuthEnabled != nil { + in, out := &in.LocalAuthEnabled, &out.LocalAuthEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainInitParameters. +func (in *DomainInitParameters) DeepCopy() *DomainInitParameters { + if in == nil { + return nil + } + out := new(DomainInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DomainList) DeepCopyInto(out *DomainList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Domain, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainList. func (in *DomainList) DeepCopy() *DomainList { @@ -865,6 +1241,7 @@ func (in *DomainSpec) DeepCopyInto(out *DomainSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainSpec. @@ -921,6 +1298,21 @@ func (in *DomainTopic) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DomainTopicInitParameters) DeepCopyInto(out *DomainTopicInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainTopicInitParameters. +func (in *DomainTopicInitParameters) DeepCopy() *DomainTopicInitParameters { + if in == nil { + return nil + } + out := new(DomainTopicInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DomainTopicList) DeepCopyInto(out *DomainTopicList) { *out = *in @@ -1033,6 +1425,7 @@ func (in *DomainTopicSpec) DeepCopyInto(out *DomainTopicSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DomainTopicSpec. @@ -1089,6 +1482,153 @@ func (in *EventSubscription) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventSubscriptionInitParameters) DeepCopyInto(out *EventSubscriptionInitParameters) { + *out = *in + if in.AdvancedFilter != nil { + in, out := &in.AdvancedFilter, &out.AdvancedFilter + *out = make([]AdvancedFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdvancedFilteringOnArraysEnabled != nil { + in, out := &in.AdvancedFilteringOnArraysEnabled, &out.AdvancedFilteringOnArraysEnabled + *out = new(bool) + **out = **in + } + if in.AzureFunctionEndpoint != nil { + in, out := &in.AzureFunctionEndpoint, &out.AzureFunctionEndpoint + *out = make([]AzureFunctionEndpointInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DeadLetterIdentity != nil { + in, out := &in.DeadLetterIdentity, &out.DeadLetterIdentity + *out = make([]DeadLetterIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DeliveryIdentity != nil { + in, out := &in.DeliveryIdentity, &out.DeliveryIdentity + *out = make([]DeliveryIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DeliveryProperty != nil { + in, out := &in.DeliveryProperty, &out.DeliveryProperty + *out = make([]DeliveryPropertyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EventDeliverySchema != nil { + in, out := &in.EventDeliverySchema, &out.EventDeliverySchema + *out = new(string) + **out = **in + } + if in.EventHubEndpointID != nil { + in, out := &in.EventHubEndpointID, &out.EventHubEndpointID + *out = new(string) + **out = **in + } + if in.ExpirationTimeUtc != nil { + in, out := &in.ExpirationTimeUtc, &out.ExpirationTimeUtc + *out = new(string) + **out = **in + } + if in.HybridConnectionEndpointID != nil { + in, out := &in.HybridConnectionEndpointID, &out.HybridConnectionEndpointID + *out = new(string) + **out = **in + } + if in.IncludedEventTypes != nil { + in, out := &in.IncludedEventTypes, &out.IncludedEventTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RetryPolicy != nil { + in, out := &in.RetryPolicy, &out.RetryPolicy + *out = make([]RetryPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ServiceBusQueueEndpointID != nil { + in, out := &in.ServiceBusQueueEndpointID, &out.ServiceBusQueueEndpointID + *out = new(string) + **out = **in + } + if in.ServiceBusTopicEndpointID != nil { + in, out := &in.ServiceBusTopicEndpointID, &out.ServiceBusTopicEndpointID + *out = new(string) + **out = **in + } + if in.StorageBlobDeadLetterDestination != nil { + in, out := &in.StorageBlobDeadLetterDestination, &out.StorageBlobDeadLetterDestination + *out = make([]StorageBlobDeadLetterDestinationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageQueueEndpoint != nil { + in, out := &in.StorageQueueEndpoint, &out.StorageQueueEndpoint + *out = make([]StorageQueueEndpointInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubjectFilter != nil { + in, out := &in.SubjectFilter, &out.SubjectFilter + *out = make([]SubjectFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WebhookEndpoint != nil { + in, out := &in.WebhookEndpoint, &out.WebhookEndpoint + *out = make([]WebhookEndpointInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventSubscriptionInitParameters. +func (in *EventSubscriptionInitParameters) DeepCopy() *EventSubscriptionInitParameters { + if in == nil { + return nil + } + out := new(EventSubscriptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventSubscriptionList) DeepCopyInto(out *EventSubscriptionList) { *out = *in @@ -1445,6 +1985,7 @@ func (in *EventSubscriptionSpec) DeepCopyInto(out *EventSubscriptionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventSubscriptionSpec. @@ -1475,7 +2016,7 @@ func (in *EventSubscriptionStatus) DeepCopy() *EventSubscriptionStatus { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { *out = *in if in.IdentityIds != nil { in, out := &in.IdentityIds, &out.IdentityIds @@ -1488,16 +2029,6 @@ func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { } } } - if in.PrincipalID != nil { - in, out := &in.PrincipalID, &out.PrincipalID - *out = new(string) - **out = **in - } - if in.TenantID != nil { - in, out := &in.TenantID, &out.TenantID - *out = new(string) - **out = **in - } if in.Type != nil { in, out := &in.Type, &out.Type *out = new(string) @@ -1505,18 +2036,18 @@ func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityObservation. -func (in *IdentityObservation) DeepCopy() *IdentityObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { if in == nil { return nil } - out := new(IdentityObservation) + out := new(IdentityInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IdentityParameters) DeepCopyInto(out *IdentityParameters) { +func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in if in.IdentityIds != nil { in, out := &in.IdentityIds, &out.IdentityIds @@ -1529,12 +2060,53 @@ func (in *IdentityParameters) DeepCopyInto(out *IdentityParameters) { } } } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID *out = new(string) **out = **in } -} + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityObservation. +func (in *IdentityObservation) DeepCopy() *IdentityObservation { + if in == nil { + return nil + } + out := new(IdentityObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityParameters) DeepCopyInto(out *IdentityParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityParameters. func (in *IdentityParameters) DeepCopy() *IdentityParameters { @@ -1546,6 +2118,31 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InboundIPRuleInitParameters) DeepCopyInto(out *InboundIPRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.IPMask != nil { + in, out := &in.IPMask, &out.IPMask + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InboundIPRuleInitParameters. +func (in *InboundIPRuleInitParameters) DeepCopy() *InboundIPRuleInitParameters { + if in == nil { + return nil + } + out := new(InboundIPRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InboundIPRuleObservation) DeepCopyInto(out *InboundIPRuleObservation) { *out = *in @@ -1596,6 +2193,36 @@ func (in *InboundIPRuleParameters) DeepCopy() *InboundIPRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InputMappingDefaultValuesInitParameters) DeepCopyInto(out *InputMappingDefaultValuesInitParameters) { + *out = *in + if in.DataVersion != nil { + in, out := &in.DataVersion, &out.DataVersion + *out = new(string) + **out = **in + } + if in.EventType != nil { + in, out := &in.EventType, &out.EventType + *out = new(string) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InputMappingDefaultValuesInitParameters. +func (in *InputMappingDefaultValuesInitParameters) DeepCopy() *InputMappingDefaultValuesInitParameters { + if in == nil { + return nil + } + out := new(InputMappingDefaultValuesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InputMappingDefaultValuesObservation) DeepCopyInto(out *InputMappingDefaultValuesObservation) { *out = *in @@ -1656,6 +2283,51 @@ func (in *InputMappingDefaultValuesParameters) DeepCopy() *InputMappingDefaultVa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InputMappingFieldsInitParameters) DeepCopyInto(out *InputMappingFieldsInitParameters) { + *out = *in + if in.DataVersion != nil { + in, out := &in.DataVersion, &out.DataVersion + *out = new(string) + **out = **in + } + if in.EventTime != nil { + in, out := &in.EventTime, &out.EventTime + *out = new(string) + **out = **in + } + if in.EventType != nil { + in, out := &in.EventType, &out.EventType + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } + if in.Topic != nil { + in, out := &in.Topic, &out.Topic + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InputMappingFieldsInitParameters. +func (in *InputMappingFieldsInitParameters) DeepCopy() *InputMappingFieldsInitParameters { + if in == nil { + return nil + } + out := new(InputMappingFieldsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InputMappingFieldsObservation) DeepCopyInto(out *InputMappingFieldsObservation) { *out = *in @@ -1746,6 +2418,26 @@ func (in *InputMappingFieldsParameters) DeepCopy() *InputMappingFieldsParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IsNotNullInitParameters) DeepCopyInto(out *IsNotNullInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IsNotNullInitParameters. +func (in *IsNotNullInitParameters) DeepCopy() *IsNotNullInitParameters { + if in == nil { + return nil + } + out := new(IsNotNullInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IsNotNullObservation) DeepCopyInto(out *IsNotNullObservation) { *out = *in @@ -1786,6 +2478,26 @@ func (in *IsNotNullParameters) DeepCopy() *IsNotNullParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IsNullOrUndefinedInitParameters) DeepCopyInto(out *IsNullOrUndefinedInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IsNullOrUndefinedInitParameters. +func (in *IsNullOrUndefinedInitParameters) DeepCopy() *IsNullOrUndefinedInitParameters { + if in == nil { + return nil + } + out := new(IsNullOrUndefinedInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IsNullOrUndefinedObservation) DeepCopyInto(out *IsNullOrUndefinedObservation) { *out = *in @@ -1826,6 +2538,31 @@ func (in *IsNullOrUndefinedParameters) DeepCopy() *IsNullOrUndefinedParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NumberGreaterThanInitParameters) DeepCopyInto(out *NumberGreaterThanInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NumberGreaterThanInitParameters. +func (in *NumberGreaterThanInitParameters) DeepCopy() *NumberGreaterThanInitParameters { + if in == nil { + return nil + } + out := new(NumberGreaterThanInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NumberGreaterThanObservation) DeepCopyInto(out *NumberGreaterThanObservation) { *out = *in @@ -1851,6 +2588,31 @@ func (in *NumberGreaterThanObservation) DeepCopy() *NumberGreaterThanObservation return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NumberGreaterThanOrEqualsInitParameters) DeepCopyInto(out *NumberGreaterThanOrEqualsInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NumberGreaterThanOrEqualsInitParameters. +func (in *NumberGreaterThanOrEqualsInitParameters) DeepCopy() *NumberGreaterThanOrEqualsInitParameters { + if in == nil { + return nil + } + out := new(NumberGreaterThanOrEqualsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NumberGreaterThanOrEqualsObservation) DeepCopyInto(out *NumberGreaterThanOrEqualsObservation) { *out = *in @@ -1926,6 +2688,37 @@ func (in *NumberGreaterThanParameters) DeepCopy() *NumberGreaterThanParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NumberInInitParameters) DeepCopyInto(out *NumberInInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NumberInInitParameters. +func (in *NumberInInitParameters) DeepCopy() *NumberInInitParameters { + if in == nil { + return nil + } + out := new(NumberInInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NumberInObservation) DeepCopyInto(out *NumberInObservation) { *out = *in @@ -1988,6 +2781,43 @@ func (in *NumberInParameters) DeepCopy() *NumberInParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NumberInRangeInitParameters) DeepCopyInto(out *NumberInRangeInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([][]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NumberInRangeInitParameters. +func (in *NumberInRangeInitParameters) DeepCopy() *NumberInRangeInitParameters { + if in == nil { + return nil + } + out := new(NumberInRangeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NumberInRangeObservation) DeepCopyInto(out *NumberInRangeObservation) { *out = *in @@ -2062,6 +2892,31 @@ func (in *NumberInRangeParameters) DeepCopy() *NumberInRangeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NumberLessThanInitParameters) DeepCopyInto(out *NumberLessThanInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NumberLessThanInitParameters. +func (in *NumberLessThanInitParameters) DeepCopy() *NumberLessThanInitParameters { + if in == nil { + return nil + } + out := new(NumberLessThanInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NumberLessThanObservation) DeepCopyInto(out *NumberLessThanObservation) { *out = *in @@ -2087,6 +2942,31 @@ func (in *NumberLessThanObservation) DeepCopy() *NumberLessThanObservation { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NumberLessThanOrEqualsInitParameters) DeepCopyInto(out *NumberLessThanOrEqualsInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NumberLessThanOrEqualsInitParameters. +func (in *NumberLessThanOrEqualsInitParameters) DeepCopy() *NumberLessThanOrEqualsInitParameters { + if in == nil { + return nil + } + out := new(NumberLessThanOrEqualsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NumberLessThanOrEqualsObservation) DeepCopyInto(out *NumberLessThanOrEqualsObservation) { *out = *in @@ -2162,6 +3042,37 @@ func (in *NumberLessThanParameters) DeepCopy() *NumberLessThanParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NumberNotInInitParameters) DeepCopyInto(out *NumberNotInInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NumberNotInInitParameters. +func (in *NumberNotInInitParameters) DeepCopy() *NumberNotInInitParameters { + if in == nil { + return nil + } + out := new(NumberNotInInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NumberNotInObservation) DeepCopyInto(out *NumberNotInObservation) { *out = *in @@ -2224,6 +3135,43 @@ func (in *NumberNotInParameters) DeepCopy() *NumberNotInParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NumberNotInRangeInitParameters) DeepCopyInto(out *NumberNotInRangeInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([][]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NumberNotInRangeInitParameters. +func (in *NumberNotInRangeInitParameters) DeepCopy() *NumberNotInRangeInitParameters { + if in == nil { + return nil + } + out := new(NumberNotInRangeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NumberNotInRangeObservation) DeepCopyInto(out *NumberNotInRangeObservation) { *out = *in @@ -2298,6 +3246,31 @@ func (in *NumberNotInRangeParameters) DeepCopy() *NumberNotInRangeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RetryPolicyInitParameters) DeepCopyInto(out *RetryPolicyInitParameters) { + *out = *in + if in.EventTimeToLive != nil { + in, out := &in.EventTimeToLive, &out.EventTimeToLive + *out = new(float64) + **out = **in + } + if in.MaxDeliveryAttempts != nil { + in, out := &in.MaxDeliveryAttempts, &out.MaxDeliveryAttempts + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetryPolicyInitParameters. +func (in *RetryPolicyInitParameters) DeepCopy() *RetryPolicyInitParameters { + if in == nil { + return nil + } + out := new(RetryPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RetryPolicyObservation) DeepCopyInto(out *RetryPolicyObservation) { *out = *in @@ -2348,6 +3321,31 @@ func (in *RetryPolicyParameters) DeepCopy() *RetryPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageBlobDeadLetterDestinationInitParameters) DeepCopyInto(out *StorageBlobDeadLetterDestinationInitParameters) { + *out = *in + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID + *out = new(string) + **out = **in + } + if in.StorageBlobContainerName != nil { + in, out := &in.StorageBlobContainerName, &out.StorageBlobContainerName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageBlobDeadLetterDestinationInitParameters. +func (in *StorageBlobDeadLetterDestinationInitParameters) DeepCopy() *StorageBlobDeadLetterDestinationInitParameters { + if in == nil { + return nil + } + out := new(StorageBlobDeadLetterDestinationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageBlobDeadLetterDestinationObservation) DeepCopyInto(out *StorageBlobDeadLetterDestinationObservation) { *out = *in @@ -2398,6 +3396,26 @@ func (in *StorageBlobDeadLetterDestinationParameters) DeepCopy() *StorageBlobDea return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageQueueEndpointInitParameters) DeepCopyInto(out *StorageQueueEndpointInitParameters) { + *out = *in + if in.QueueMessageTimeToLiveInSeconds != nil { + in, out := &in.QueueMessageTimeToLiveInSeconds, &out.QueueMessageTimeToLiveInSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageQueueEndpointInitParameters. +func (in *StorageQueueEndpointInitParameters) DeepCopy() *StorageQueueEndpointInitParameters { + if in == nil { + return nil + } + out := new(StorageQueueEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageQueueEndpointObservation) DeepCopyInto(out *StorageQueueEndpointObservation) { *out = *in @@ -2468,18 +3486,111 @@ func (in *StorageQueueEndpointParameters) DeepCopyInto(out *StorageQueueEndpoint } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageQueueEndpointParameters. -func (in *StorageQueueEndpointParameters) DeepCopy() *StorageQueueEndpointParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageQueueEndpointParameters. +func (in *StorageQueueEndpointParameters) DeepCopy() *StorageQueueEndpointParameters { + if in == nil { + return nil + } + out := new(StorageQueueEndpointParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StringBeginsWithInitParameters) DeepCopyInto(out *StringBeginsWithInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringBeginsWithInitParameters. +func (in *StringBeginsWithInitParameters) DeepCopy() *StringBeginsWithInitParameters { + if in == nil { + return nil + } + out := new(StringBeginsWithInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StringBeginsWithObservation) DeepCopyInto(out *StringBeginsWithObservation) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringBeginsWithObservation. +func (in *StringBeginsWithObservation) DeepCopy() *StringBeginsWithObservation { + if in == nil { + return nil + } + out := new(StringBeginsWithObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StringBeginsWithParameters) DeepCopyInto(out *StringBeginsWithParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringBeginsWithParameters. +func (in *StringBeginsWithParameters) DeepCopy() *StringBeginsWithParameters { if in == nil { return nil } - out := new(StorageQueueEndpointParameters) + out := new(StringBeginsWithParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *StringBeginsWithObservation) DeepCopyInto(out *StringBeginsWithObservation) { +func (in *StringContainsInitParameters) DeepCopyInto(out *StringContainsInitParameters) { *out = *in if in.Key != nil { in, out := &in.Key, &out.Key @@ -2499,18 +3610,18 @@ func (in *StringBeginsWithObservation) DeepCopyInto(out *StringBeginsWithObserva } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringBeginsWithObservation. -func (in *StringBeginsWithObservation) DeepCopy() *StringBeginsWithObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringContainsInitParameters. +func (in *StringContainsInitParameters) DeepCopy() *StringContainsInitParameters { if in == nil { return nil } - out := new(StringBeginsWithObservation) + out := new(StringContainsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *StringBeginsWithParameters) DeepCopyInto(out *StringBeginsWithParameters) { +func (in *StringContainsObservation) DeepCopyInto(out *StringContainsObservation) { *out = *in if in.Key != nil { in, out := &in.Key, &out.Key @@ -2530,18 +3641,18 @@ func (in *StringBeginsWithParameters) DeepCopyInto(out *StringBeginsWithParamete } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringBeginsWithParameters. -func (in *StringBeginsWithParameters) DeepCopy() *StringBeginsWithParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringContainsObservation. +func (in *StringContainsObservation) DeepCopy() *StringContainsObservation { if in == nil { return nil } - out := new(StringBeginsWithParameters) + out := new(StringContainsObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *StringContainsObservation) DeepCopyInto(out *StringContainsObservation) { +func (in *StringContainsParameters) DeepCopyInto(out *StringContainsParameters) { *out = *in if in.Key != nil { in, out := &in.Key, &out.Key @@ -2561,18 +3672,18 @@ func (in *StringContainsObservation) DeepCopyInto(out *StringContainsObservation } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringContainsObservation. -func (in *StringContainsObservation) DeepCopy() *StringContainsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringContainsParameters. +func (in *StringContainsParameters) DeepCopy() *StringContainsParameters { if in == nil { return nil } - out := new(StringContainsObservation) + out := new(StringContainsParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *StringContainsParameters) DeepCopyInto(out *StringContainsParameters) { +func (in *StringEndsWithInitParameters) DeepCopyInto(out *StringEndsWithInitParameters) { *out = *in if in.Key != nil { in, out := &in.Key, &out.Key @@ -2592,12 +3703,12 @@ func (in *StringContainsParameters) DeepCopyInto(out *StringContainsParameters) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringContainsParameters. -func (in *StringContainsParameters) DeepCopy() *StringContainsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringEndsWithInitParameters. +func (in *StringEndsWithInitParameters) DeepCopy() *StringEndsWithInitParameters { if in == nil { return nil } - out := new(StringContainsParameters) + out := new(StringEndsWithInitParameters) in.DeepCopyInto(out) return out } @@ -2664,6 +3775,37 @@ func (in *StringEndsWithParameters) DeepCopy() *StringEndsWithParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StringInInitParameters) DeepCopyInto(out *StringInInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringInInitParameters. +func (in *StringInInitParameters) DeepCopy() *StringInInitParameters { + if in == nil { + return nil + } + out := new(StringInInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StringInObservation) DeepCopyInto(out *StringInObservation) { *out = *in @@ -2726,6 +3868,37 @@ func (in *StringInParameters) DeepCopy() *StringInParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StringNotBeginsWithInitParameters) DeepCopyInto(out *StringNotBeginsWithInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringNotBeginsWithInitParameters. +func (in *StringNotBeginsWithInitParameters) DeepCopy() *StringNotBeginsWithInitParameters { + if in == nil { + return nil + } + out := new(StringNotBeginsWithInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StringNotBeginsWithObservation) DeepCopyInto(out *StringNotBeginsWithObservation) { *out = *in @@ -2788,6 +3961,37 @@ func (in *StringNotBeginsWithParameters) DeepCopy() *StringNotBeginsWithParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StringNotContainsInitParameters) DeepCopyInto(out *StringNotContainsInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringNotContainsInitParameters. +func (in *StringNotContainsInitParameters) DeepCopy() *StringNotContainsInitParameters { + if in == nil { + return nil + } + out := new(StringNotContainsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StringNotContainsObservation) DeepCopyInto(out *StringNotContainsObservation) { *out = *in @@ -2850,6 +4054,37 @@ func (in *StringNotContainsParameters) DeepCopy() *StringNotContainsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StringNotEndsWithInitParameters) DeepCopyInto(out *StringNotEndsWithInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringNotEndsWithInitParameters. +func (in *StringNotEndsWithInitParameters) DeepCopy() *StringNotEndsWithInitParameters { + if in == nil { + return nil + } + out := new(StringNotEndsWithInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StringNotEndsWithObservation) DeepCopyInto(out *StringNotEndsWithObservation) { *out = *in @@ -2912,6 +4147,37 @@ func (in *StringNotEndsWithParameters) DeepCopy() *StringNotEndsWithParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StringNotInInitParameters) DeepCopyInto(out *StringNotInInitParameters) { + *out = *in + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringNotInInitParameters. +func (in *StringNotInInitParameters) DeepCopy() *StringNotInInitParameters { + if in == nil { + return nil + } + out := new(StringNotInInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StringNotInObservation) DeepCopyInto(out *StringNotInObservation) { *out = *in @@ -2974,6 +4240,36 @@ func (in *StringNotInParameters) DeepCopy() *StringNotInParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubjectFilterInitParameters) DeepCopyInto(out *SubjectFilterInitParameters) { + *out = *in + if in.CaseSensitive != nil { + in, out := &in.CaseSensitive, &out.CaseSensitive + *out = new(bool) + **out = **in + } + if in.SubjectBeginsWith != nil { + in, out := &in.SubjectBeginsWith, &out.SubjectBeginsWith + *out = new(string) + **out = **in + } + if in.SubjectEndsWith != nil { + in, out := &in.SubjectEndsWith, &out.SubjectEndsWith + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubjectFilterInitParameters. +func (in *SubjectFilterInitParameters) DeepCopy() *SubjectFilterInitParameters { + if in == nil { + return nil + } + out := new(SubjectFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubjectFilterObservation) DeepCopyInto(out *SubjectFilterObservation) { *out = *in @@ -3061,6 +4357,37 @@ func (in *SystemTopic) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SystemTopicIdentityInitParameters) DeepCopyInto(out *SystemTopicIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemTopicIdentityInitParameters. +func (in *SystemTopicIdentityInitParameters) DeepCopy() *SystemTopicIdentityInitParameters { + if in == nil { + return nil + } + out := new(SystemTopicIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SystemTopicIdentityObservation) DeepCopyInto(out *SystemTopicIdentityObservation) { *out = *in @@ -3097,38 +4424,85 @@ func (in *SystemTopicIdentityObservation) DeepCopy() *SystemTopicIdentityObserva if in == nil { return nil } - out := new(SystemTopicIdentityObservation) + out := new(SystemTopicIdentityObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SystemTopicIdentityParameters) DeepCopyInto(out *SystemTopicIdentityParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemTopicIdentityParameters. +func (in *SystemTopicIdentityParameters) DeepCopy() *SystemTopicIdentityParameters { + if in == nil { + return nil + } + out := new(SystemTopicIdentityParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SystemTopicIdentityParameters) DeepCopyInto(out *SystemTopicIdentityParameters) { +func (in *SystemTopicInitParameters) DeepCopyInto(out *SystemTopicInitParameters) { *out = *in - if in.IdentityIds != nil { - in, out := &in.IdentityIds, &out.IdentityIds - *out = make([]*string, len(*in)) + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]SystemTopicIdentityInitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal *out = new(string) **out = **in } + (*out)[key] = outVal } } - if in.Type != nil { - in, out := &in.Type, &out.Type + if in.TopicType != nil { + in, out := &in.TopicType, &out.TopicType *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemTopicIdentityParameters. -func (in *SystemTopicIdentityParameters) DeepCopy() *SystemTopicIdentityParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemTopicInitParameters. +func (in *SystemTopicInitParameters) DeepCopy() *SystemTopicInitParameters { if in == nil { return nil } - out := new(SystemTopicIdentityParameters) + out := new(SystemTopicInitParameters) in.DeepCopyInto(out) return out } @@ -3314,6 +4688,7 @@ func (in *SystemTopicSpec) DeepCopyInto(out *SystemTopicSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemTopicSpec. @@ -3370,6 +4745,37 @@ func (in *Topic) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TopicIdentityInitParameters) DeepCopyInto(out *TopicIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicIdentityInitParameters. +func (in *TopicIdentityInitParameters) DeepCopy() *TopicIdentityInitParameters { + if in == nil { + return nil + } + out := new(TopicIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TopicIdentityObservation) DeepCopyInto(out *TopicIdentityObservation) { *out = *in @@ -3442,6 +4848,31 @@ func (in *TopicIdentityParameters) DeepCopy() *TopicIdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TopicInboundIPRuleInitParameters) DeepCopyInto(out *TopicInboundIPRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.IPMask != nil { + in, out := &in.IPMask, &out.IPMask + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicInboundIPRuleInitParameters. +func (in *TopicInboundIPRuleInitParameters) DeepCopy() *TopicInboundIPRuleInitParameters { + if in == nil { + return nil + } + out := new(TopicInboundIPRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TopicInboundIPRuleObservation) DeepCopyInto(out *TopicInboundIPRuleObservation) { *out = *in @@ -3492,6 +4923,114 @@ func (in *TopicInboundIPRuleParameters) DeepCopy() *TopicInboundIPRuleParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TopicInitParameters) DeepCopyInto(out *TopicInitParameters) { + *out = *in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]TopicIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InboundIPRule != nil { + in, out := &in.InboundIPRule, &out.InboundIPRule + *out = make([]TopicInboundIPRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InputMappingDefaultValues != nil { + in, out := &in.InputMappingDefaultValues, &out.InputMappingDefaultValues + *out = make([]TopicInputMappingDefaultValuesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InputMappingFields != nil { + in, out := &in.InputMappingFields, &out.InputMappingFields + *out = make([]TopicInputMappingFieldsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InputSchema != nil { + in, out := &in.InputSchema, &out.InputSchema + *out = new(string) + **out = **in + } + if in.LocalAuthEnabled != nil { + in, out := &in.LocalAuthEnabled, &out.LocalAuthEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicInitParameters. +func (in *TopicInitParameters) DeepCopy() *TopicInitParameters { + if in == nil { + return nil + } + out := new(TopicInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TopicInputMappingDefaultValuesInitParameters) DeepCopyInto(out *TopicInputMappingDefaultValuesInitParameters) { + *out = *in + if in.DataVersion != nil { + in, out := &in.DataVersion, &out.DataVersion + *out = new(string) + **out = **in + } + if in.EventType != nil { + in, out := &in.EventType, &out.EventType + *out = new(string) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicInputMappingDefaultValuesInitParameters. +func (in *TopicInputMappingDefaultValuesInitParameters) DeepCopy() *TopicInputMappingDefaultValuesInitParameters { + if in == nil { + return nil + } + out := new(TopicInputMappingDefaultValuesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TopicInputMappingDefaultValuesObservation) DeepCopyInto(out *TopicInputMappingDefaultValuesObservation) { *out = *in @@ -3552,6 +5091,51 @@ func (in *TopicInputMappingDefaultValuesParameters) DeepCopy() *TopicInputMappin return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TopicInputMappingFieldsInitParameters) DeepCopyInto(out *TopicInputMappingFieldsInitParameters) { + *out = *in + if in.DataVersion != nil { + in, out := &in.DataVersion, &out.DataVersion + *out = new(string) + **out = **in + } + if in.EventTime != nil { + in, out := &in.EventTime, &out.EventTime + *out = new(string) + **out = **in + } + if in.EventType != nil { + in, out := &in.EventType, &out.EventType + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } + if in.Topic != nil { + in, out := &in.Topic, &out.Topic + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicInputMappingFieldsInitParameters. +func (in *TopicInputMappingFieldsInitParameters) DeepCopy() *TopicInputMappingFieldsInitParameters { + if in == nil { + return nil + } + out := new(TopicInputMappingFieldsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TopicInputMappingFieldsObservation) DeepCopyInto(out *TopicInputMappingFieldsObservation) { *out = *in @@ -3865,6 +5449,7 @@ func (in *TopicSpec) DeepCopyInto(out *TopicSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicSpec. @@ -3894,6 +5479,46 @@ func (in *TopicStatus) DeepCopy() *TopicStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebhookEndpointInitParameters) DeepCopyInto(out *WebhookEndpointInitParameters) { + *out = *in + if in.ActiveDirectoryAppIDOrURI != nil { + in, out := &in.ActiveDirectoryAppIDOrURI, &out.ActiveDirectoryAppIDOrURI + *out = new(string) + **out = **in + } + if in.ActiveDirectoryTenantID != nil { + in, out := &in.ActiveDirectoryTenantID, &out.ActiveDirectoryTenantID + *out = new(string) + **out = **in + } + if in.MaxEventsPerBatch != nil { + in, out := &in.MaxEventsPerBatch, &out.MaxEventsPerBatch + *out = new(float64) + **out = **in + } + if in.PreferredBatchSizeInKilobytes != nil { + in, out := &in.PreferredBatchSizeInKilobytes, &out.PreferredBatchSizeInKilobytes + *out = new(float64) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookEndpointInitParameters. +func (in *WebhookEndpointInitParameters) DeepCopy() *WebhookEndpointInitParameters { + if in == nil { + return nil + } + out := new(WebhookEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebhookEndpointObservation) DeepCopyInto(out *WebhookEndpointObservation) { *out = *in diff --git a/apis/eventgrid/v1beta1/zz_generated.managed.go b/apis/eventgrid/v1beta1/zz_generated.managed.go index a47545ea3..a516803d4 100644 --- a/apis/eventgrid/v1beta1/zz_generated.managed.go +++ b/apis/eventgrid/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Domain) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Domain. -func (mg *Domain) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Domain. +func (mg *Domain) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Domain. @@ -55,9 +55,9 @@ func (mg *Domain) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Domain. -func (mg *Domain) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Domain. +func (mg *Domain) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Domain. @@ -93,9 +93,9 @@ func (mg *DomainTopic) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DomainTopic. -func (mg *DomainTopic) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DomainTopic. +func (mg *DomainTopic) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DomainTopic. @@ -131,9 +131,9 @@ func (mg *DomainTopic) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DomainTopic. -func (mg *DomainTopic) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DomainTopic. +func (mg *DomainTopic) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DomainTopic. @@ -169,9 +169,9 @@ func (mg *EventSubscription) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this EventSubscription. -func (mg *EventSubscription) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this EventSubscription. +func (mg *EventSubscription) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this EventSubscription. @@ -207,9 +207,9 @@ func (mg *EventSubscription) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this EventSubscription. -func (mg *EventSubscription) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this EventSubscription. +func (mg *EventSubscription) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this EventSubscription. @@ -245,9 +245,9 @@ func (mg *SystemTopic) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SystemTopic. -func (mg *SystemTopic) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SystemTopic. +func (mg *SystemTopic) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SystemTopic. @@ -283,9 +283,9 @@ func (mg *SystemTopic) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SystemTopic. -func (mg *SystemTopic) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SystemTopic. +func (mg *SystemTopic) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SystemTopic. @@ -321,9 +321,9 @@ func (mg *Topic) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Topic. -func (mg *Topic) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Topic. +func (mg *Topic) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Topic. @@ -359,9 +359,9 @@ func (mg *Topic) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Topic. -func (mg *Topic) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Topic. +func (mg *Topic) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Topic. diff --git a/apis/eventgrid/v1beta1/zz_generated_terraformed.go b/apis/eventgrid/v1beta1/zz_generated_terraformed.go index 7bee9fc32..8afea8a44 100755 --- a/apis/eventgrid/v1beta1/zz_generated_terraformed.go +++ b/apis/eventgrid/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Domain) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Domain +func (tr *Domain) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Domain using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Domain) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *DomainTopic) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DomainTopic +func (tr *DomainTopic) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DomainTopic using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DomainTopic) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *EventSubscription) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this EventSubscription +func (tr *EventSubscription) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this EventSubscription using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *EventSubscription) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *SystemTopic) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SystemTopic +func (tr *SystemTopic) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SystemTopic using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SystemTopic) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *Topic) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Topic +func (tr *Topic) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Topic using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Topic) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/eventgrid/v1beta1/zz_systemtopic_types.go b/apis/eventgrid/v1beta1/zz_systemtopic_types.go index 2b5614602..e4cc1fa65 100755 --- a/apis/eventgrid/v1beta1/zz_systemtopic_types.go +++ b/apis/eventgrid/v1beta1/zz_systemtopic_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SystemTopicIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Event Grid System Topic. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Event Grid System Topic. Possible values are SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type SystemTopicIdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Event Grid System Topic. @@ -35,8 +44,23 @@ type SystemTopicIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Event Grid System Topic. Possible values are SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type SystemTopicInitParameters struct { + + // An identity block as defined below. + Identity []SystemTopicIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Event Grid System Topic should exist. Changing this forces a new Event Grid System Topic to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Event Grid System Topic. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The Topic Type of the Event Grid System Topic. The topic type is validated by Azure and there may be additional topic types beyond the following: Microsoft.AppConfiguration.ConfigurationStores, Microsoft.Communication.CommunicationServices, Microsoft.ContainerRegistry.Registries, Microsoft.Devices.IoTHubs, Microsoft.EventGrid.Domains, Microsoft.EventGrid.Topics, Microsoft.Eventhub.Namespaces, Microsoft.KeyVault.vaults, Microsoft.MachineLearningServices.Workspaces, Microsoft.Maps.Accounts, Microsoft.Media.MediaServices, Microsoft.Resources.ResourceGroups, Microsoft.Resources.Subscriptions, Microsoft.ServiceBus.Namespaces, Microsoft.SignalRService.SignalR, Microsoft.Storage.StorageAccounts, Microsoft.Web.ServerFarms and Microsoft.Web.Sites. Changing this forces a new Event Grid System Topic to be created. + TopicType *string `json:"topicType,omitempty" tf:"topic_type,omitempty"` } type SystemTopicObservation struct { @@ -116,6 +140,18 @@ type SystemTopicParameters struct { type SystemTopicSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SystemTopicParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SystemTopicInitParameters `json:"initProvider,omitempty"` } // SystemTopicStatus defines the observed state of SystemTopic. @@ -136,8 +172,8 @@ type SystemTopicStatus struct { type SystemTopic struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.topicType)",message="topicType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.topicType) || has(self.initProvider.topicType)",message="topicType is a required parameter" Spec SystemTopicSpec `json:"spec"` Status SystemTopicStatus `json:"status,omitempty"` } diff --git a/apis/eventgrid/v1beta1/zz_topic_types.go b/apis/eventgrid/v1beta1/zz_topic_types.go index 2efcac1e0..5206c33ad 100755 --- a/apis/eventgrid/v1beta1/zz_topic_types.go +++ b/apis/eventgrid/v1beta1/zz_topic_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TopicIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Event Grid Topic. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Event Grid Topic. Possible values are SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type TopicIdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Event Grid Topic. @@ -35,8 +44,17 @@ type TopicIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Event Grid Topic. Possible values are SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type TopicInboundIPRuleInitParameters struct { + + // The action to take when the rule is matched. Possible values are Allow. + Action *string `json:"action,omitempty" tf:"action"` + + // The IP mask (CIDR) to match on. + IPMask *string `json:"ipMask,omitempty" tf:"ip_mask"` } type TopicInboundIPRuleObservation struct { @@ -59,6 +77,48 @@ type TopicInboundIPRuleParameters struct { IPMask *string `json:"ipMask,omitempty" tf:"ip_mask"` } +type TopicInitParameters struct { + + // An identity block as defined below. + Identity []TopicIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // One or more inbound_ip_rule blocks as defined below. + InboundIPRule []TopicInboundIPRuleInitParameters `json:"inboundIpRule,omitempty" tf:"inbound_ip_rule,omitempty"` + + // A input_mapping_default_values block as defined below. Changing this forces a new resource to be created. + InputMappingDefaultValues []TopicInputMappingDefaultValuesInitParameters `json:"inputMappingDefaultValues,omitempty" tf:"input_mapping_default_values,omitempty"` + + // A input_mapping_fields block as defined below. Changing this forces a new resource to be created. + InputMappingFields []TopicInputMappingFieldsInitParameters `json:"inputMappingFields,omitempty" tf:"input_mapping_fields,omitempty"` + + // Specifies the schema in which incoming events will be published to this domain. Allowed values are CloudEventSchemaV1_0, CustomEventSchema, or EventGridSchema. Defaults to EventGridSchema. Changing this forces a new resource to be created. + InputSchema *string `json:"inputSchema,omitempty" tf:"input_schema,omitempty"` + + // Whether local authentication methods is enabled for the EventGrid Topic. Defaults to true. + LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether or not public network access is allowed for this server. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + +type TopicInputMappingDefaultValuesInitParameters struct { + + // Specifies the default data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + DataVersion *string `json:"dataVersion,omitempty" tf:"data_version,omitempty"` + + // Specifies the default event type of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + EventType *string `json:"eventType,omitempty" tf:"event_type,omitempty"` + + // Specifies the default subject of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` +} + type TopicInputMappingDefaultValuesObservation struct { // Specifies the default data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. @@ -86,6 +146,27 @@ type TopicInputMappingDefaultValuesParameters struct { Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` } +type TopicInputMappingFieldsInitParameters struct { + + // Specifies the data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + DataVersion *string `json:"dataVersion,omitempty" tf:"data_version,omitempty"` + + // Specifies the event time of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + EventTime *string `json:"eventTime,omitempty" tf:"event_time,omitempty"` + + // Specifies the event type of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + EventType *string `json:"eventType,omitempty" tf:"event_type,omitempty"` + + // Specifies the id of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // Specifies the subject of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` + + // Specifies the topic of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + Topic *string `json:"topic,omitempty" tf:"topic,omitempty"` +} + type TopicInputMappingFieldsObservation struct { // Specifies the data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. @@ -229,6 +310,18 @@ type TopicParameters struct { type TopicSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TopicParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TopicInitParameters `json:"initProvider,omitempty"` } // TopicStatus defines the observed state of Topic. @@ -249,7 +342,7 @@ type TopicStatus struct { type Topic struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec TopicSpec `json:"spec"` Status TopicStatus `json:"status,omitempty"` } diff --git a/apis/eventhub/v1beta1/zz_authorizationrule_types.go b/apis/eventhub/v1beta1/zz_authorizationrule_types.go index 2c2d49143..1d39ceaf8 100755 --- a/apis/eventhub/v1beta1/zz_authorizationrule_types.go +++ b/apis/eventhub/v1beta1/zz_authorizationrule_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthorizationRuleInitParameters struct { + + // Does this Authorization Rule have permissions to Listen to the Event Hub? Defaults to false. + Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` + + // Does this Authorization Rule have permissions to Manage to the Event Hub? When this property is true - both listen and send must be too. Defaults to false. + Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` + + // Does this Authorization Rule have permissions to Send to the Event Hub? Defaults to false. + Send *bool `json:"send,omitempty" tf:"send,omitempty"` +} + type AuthorizationRuleObservation struct { // Specifies the name of the EventHub. Changing this forces a new resource to be created. @@ -95,6 +107,18 @@ type AuthorizationRuleParameters struct { type AuthorizationRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AuthorizationRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AuthorizationRuleInitParameters `json:"initProvider,omitempty"` } // AuthorizationRuleStatus defines the observed state of AuthorizationRule. diff --git a/apis/eventhub/v1beta1/zz_consumergroup_types.go b/apis/eventhub/v1beta1/zz_consumergroup_types.go index 4ef12147d..ec46e56ec 100755 --- a/apis/eventhub/v1beta1/zz_consumergroup_types.go +++ b/apis/eventhub/v1beta1/zz_consumergroup_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConsumerGroupInitParameters struct { + + // Specifies the user metadata. + UserMetadata *string `json:"userMetadata,omitempty" tf:"user_metadata,omitempty"` +} + type ConsumerGroupObservation struct { // Specifies the name of the EventHub. Changing this forces a new resource to be created. @@ -81,6 +87,18 @@ type ConsumerGroupParameters struct { type ConsumerGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ConsumerGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ConsumerGroupInitParameters `json:"initProvider,omitempty"` } // ConsumerGroupStatus defines the observed state of ConsumerGroup. diff --git a/apis/eventhub/v1beta1/zz_eventhub_types.go b/apis/eventhub/v1beta1/zz_eventhub_types.go index 7e0df6daa..f82147456 100755 --- a/apis/eventhub/v1beta1/zz_eventhub_types.go +++ b/apis/eventhub/v1beta1/zz_eventhub_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CaptureDescriptionInitParameters struct { + + // A destination block as defined below. + Destination []DestinationInitParameters `json:"destination,omitempty" tf:"destination,omitempty"` + + // Specifies if the Capture Description is Enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Specifies the Encoding used for the Capture Description. Possible values are Avro and AvroDeflate. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // Specifies the time interval in seconds at which the capture will happen. Values can be between 60 and 900 seconds. Defaults to 300 seconds. + IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` + + // Specifies the amount of data built up in your EventHub before a Capture Operation occurs. Value should be between 10485760 and 524288000 bytes. Defaults to 314572800 bytes. + SizeLimitInBytes *float64 `json:"sizeLimitInBytes,omitempty" tf:"size_limit_in_bytes,omitempty"` + + // Specifies if empty files should not be emitted if no events occur during the Capture time window. Defaults to false. + SkipEmptyArchives *bool `json:"skipEmptyArchives,omitempty" tf:"skip_empty_archives,omitempty"` +} + type CaptureDescriptionObservation struct { // A destination block as defined below. @@ -37,16 +58,16 @@ type CaptureDescriptionObservation struct { type CaptureDescriptionParameters struct { // A destination block as defined below. - // +kubebuilder:validation:Required - Destination []DestinationParameters `json:"destination" tf:"destination,omitempty"` + // +kubebuilder:validation:Optional + Destination []DestinationParameters `json:"destination,omitempty" tf:"destination,omitempty"` // Specifies if the Capture Description is Enabled. - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the Encoding used for the Capture Description. Possible values are Avro and AvroDeflate. - // +kubebuilder:validation:Required - Encoding *string `json:"encoding" tf:"encoding,omitempty"` + // +kubebuilder:validation:Optional + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // Specifies the time interval in seconds at which the capture will happen. Values can be between 60 and 900 seconds. Defaults to 300 seconds. // +kubebuilder:validation:Optional @@ -61,6 +82,21 @@ type CaptureDescriptionParameters struct { SkipEmptyArchives *bool `json:"skipEmptyArchives,omitempty" tf:"skip_empty_archives,omitempty"` } +type DestinationInitParameters struct { + + // The Blob naming convention for archiving. e.g. {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order + ArchiveNameFormat *string `json:"archiveNameFormat,omitempty" tf:"archive_name_format,omitempty"` + + // The name of the Container within the Blob Storage Account where messages should be archived. + BlobContainerName *string `json:"blobContainerName,omitempty" tf:"blob_container_name,omitempty"` + + // Specifies the name of the EventHub resource. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of the Blob Storage Account where messages should be archived. + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` +} + type DestinationObservation struct { // The Blob naming convention for archiving. e.g. {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order @@ -79,20 +115,35 @@ type DestinationObservation struct { type DestinationParameters struct { // The Blob naming convention for archiving. e.g. {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order - // +kubebuilder:validation:Required - ArchiveNameFormat *string `json:"archiveNameFormat" tf:"archive_name_format,omitempty"` + // +kubebuilder:validation:Optional + ArchiveNameFormat *string `json:"archiveNameFormat,omitempty" tf:"archive_name_format,omitempty"` // The name of the Container within the Blob Storage Account where messages should be archived. - // +kubebuilder:validation:Required - BlobContainerName *string `json:"blobContainerName" tf:"blob_container_name,omitempty"` + // +kubebuilder:validation:Optional + BlobContainerName *string `json:"blobContainerName,omitempty" tf:"blob_container_name,omitempty"` // Specifies the name of the EventHub resource. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Blob Storage Account where messages should be archived. - // +kubebuilder:validation:Required - StorageAccountID *string `json:"storageAccountId" tf:"storage_account_id,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` +} + +type EventHubInitParameters struct { + + // A capture_description block as defined below. + CaptureDescription []CaptureDescriptionInitParameters `json:"captureDescription,omitempty" tf:"capture_description,omitempty"` + + // Specifies the number of days to retain the events for this Event Hub. + MessageRetention *float64 `json:"messageRetention,omitempty" tf:"message_retention,omitempty"` + + // Specifies the current number of shards on the Event Hub. Changing this will force-recreate the resource. + PartitionCount *float64 `json:"partitionCount,omitempty" tf:"partition_count,omitempty"` + + // Specifies the status of the Event Hub resource. Possible values are Active, Disabled and SendDisabled. Defaults to Active. + Status *string `json:"status,omitempty" tf:"status,omitempty"` } type EventHubObservation struct { @@ -171,6 +222,18 @@ type EventHubParameters struct { type EventHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EventHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EventHubInitParameters `json:"initProvider,omitempty"` } // EventHubStatus defines the observed state of EventHub. @@ -191,8 +254,8 @@ type EventHubStatus struct { type EventHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.messageRetention)",message="messageRetention is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partitionCount)",message="partitionCount is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.messageRetention) || has(self.initProvider.messageRetention)",message="messageRetention is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.partitionCount) || has(self.initProvider.partitionCount)",message="partitionCount is a required parameter" Spec EventHubSpec `json:"spec"` Status EventHubStatus `json:"status,omitempty"` } diff --git a/apis/eventhub/v1beta1/zz_eventhubnamespace_types.go b/apis/eventhub/v1beta1/zz_eventhubnamespace_types.go index 5c34d6d14..753778c9b 100755 --- a/apis/eventhub/v1beta1/zz_eventhubnamespace_types.go +++ b/apis/eventhub/v1beta1/zz_eventhubnamespace_types.go @@ -13,6 +13,48 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EventHubNamespaceInitParameters struct { + + // Is Auto Inflate enabled for the EventHub Namespace? + AutoInflateEnabled *bool `json:"autoInflateEnabled,omitempty" tf:"auto_inflate_enabled,omitempty"` + + // Specifies the Capacity / Throughput Units for a Standard SKU namespace. Default capacity has a maximum of 2, but can be increased in blocks of 2 on a committed purchase basis. Defaults to 1. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // Specifies the ID of the EventHub Dedicated Cluster where this Namespace should created. Changing this forces a new resource to be created. + DedicatedClusterID *string `json:"dedicatedClusterId,omitempty" tf:"dedicated_cluster_id,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Is SAS authentication enabled for the EventHub Namespace? Defaults to true. + LocalAuthenticationEnabled *bool `json:"localAuthenticationEnabled,omitempty" tf:"local_authentication_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the maximum number of throughput units when Auto Inflate is Enabled. Valid values range from 1 - 20. + MaximumThroughputUnits *float64 `json:"maximumThroughputUnits,omitempty" tf:"maximum_throughput_units,omitempty"` + + // The minimum supported TLS version for this EventHub Namespace. Valid values are: 1.0, 1.1 and 1.2. The current default minimum TLS version is 1.2. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // A network_rulesets block as defined below. + NetworkRulesets []NetworkRulesetsInitParameters `json:"networkRulesets,omitempty" tf:"network_rulesets,omitempty"` + + // Is public network access enabled for the EventHub Namespace? Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Defines which tier to use. Valid options are Basic, Standard, and Premium. Please note that setting this field to Premium will force the creation of a new resource. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies if the EventHub Namespace should be Zone Redundant (created across Availability Zones). Changing this forces a new resource to be created. Defaults to false. + ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` +} + type EventHubNamespaceObservation struct { // Is Auto Inflate enabled for the EventHub Namespace? @@ -129,6 +171,15 @@ type EventHubNamespaceParameters struct { ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } +type IPRuleInitParameters struct { + + // The action to take when the rule is matched. Possible values are Allow. + Action *string `json:"action,omitempty" tf:"action"` + + // The IP mask to match on. + IPMask *string `json:"ipMask,omitempty" tf:"ip_mask"` +} + type IPRuleObservation struct { // The action to take when the rule is matched. Possible values are Allow. @@ -149,6 +200,15 @@ type IPRuleParameters struct { IPMask *string `json:"ipMask,omitempty" tf:"ip_mask"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this EventHub namespace. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Event Hub Namespace. Possible values are SystemAssigned or UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this EventHub namespace. @@ -171,8 +231,26 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Event Hub Namespace. Possible values are SystemAssigned or UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type NetworkRulesetsInitParameters struct { + + // The default action to take when a rule is not matched. Possible values are Allow and Deny. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action"` + + // One or more ip_rule blocks as defined below. + IPRule []IPRuleInitParameters `json:"ipRule,omitempty" tf:"ip_rule"` + + // Is public network access enabled for the EventHub Namespace? Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled"` + + // Whether Trusted Microsoft Services are allowed to bypass firewall. + TrustedServiceAccessEnabled *bool `json:"trustedServiceAccessEnabled,omitempty" tf:"trusted_service_access_enabled"` + + // One or more virtual_network_rule blocks as defined below. + VirtualNetworkRule []VirtualNetworkRuleInitParameters `json:"virtualNetworkRule,omitempty" tf:"virtual_network_rule"` } type NetworkRulesetsObservation struct { @@ -216,6 +294,12 @@ type NetworkRulesetsParameters struct { VirtualNetworkRule []VirtualNetworkRuleParameters `json:"virtualNetworkRule,omitempty" tf:"virtual_network_rule"` } +type VirtualNetworkRuleInitParameters struct { + + // Are missing virtual network service endpoints ignored? + IgnoreMissingVirtualNetworkServiceEndpoint *bool `json:"ignoreMissingVirtualNetworkServiceEndpoint,omitempty" tf:"ignore_missing_virtual_network_service_endpoint"` +} + type VirtualNetworkRuleObservation struct { // Are missing virtual network service endpoints ignored? @@ -250,6 +334,18 @@ type VirtualNetworkRuleParameters struct { type EventHubNamespaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EventHubNamespaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EventHubNamespaceInitParameters `json:"initProvider,omitempty"` } // EventHubNamespaceStatus defines the observed state of EventHubNamespace. @@ -270,8 +366,8 @@ type EventHubNamespaceStatus struct { type EventHubNamespace struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec EventHubNamespaceSpec `json:"spec"` Status EventHubNamespaceStatus `json:"status,omitempty"` } diff --git a/apis/eventhub/v1beta1/zz_generated.deepcopy.go b/apis/eventhub/v1beta1/zz_generated.deepcopy.go index 7797b4bb6..7bcf5a042 100644 --- a/apis/eventhub/v1beta1/zz_generated.deepcopy.go +++ b/apis/eventhub/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,36 @@ func (in *AuthorizationRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthorizationRuleInitParameters) DeepCopyInto(out *AuthorizationRuleInitParameters) { + *out = *in + if in.Listen != nil { + in, out := &in.Listen, &out.Listen + *out = new(bool) + **out = **in + } + if in.Manage != nil { + in, out := &in.Manage, &out.Manage + *out = new(bool) + **out = **in + } + if in.Send != nil { + in, out := &in.Send, &out.Send + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthorizationRuleInitParameters. +func (in *AuthorizationRuleInitParameters) DeepCopy() *AuthorizationRuleInitParameters { + if in == nil { + return nil + } + out := new(AuthorizationRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthorizationRuleList) DeepCopyInto(out *AuthorizationRuleList) { *out = *in @@ -203,6 +233,7 @@ func (in *AuthorizationRuleSpec) DeepCopyInto(out *AuthorizationRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthorizationRuleSpec. @@ -232,6 +263,53 @@ func (in *AuthorizationRuleStatus) DeepCopy() *AuthorizationRuleStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CaptureDescriptionInitParameters) DeepCopyInto(out *CaptureDescriptionInitParameters) { + *out = *in + if in.Destination != nil { + in, out := &in.Destination, &out.Destination + *out = make([]DestinationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.IntervalInSeconds != nil { + in, out := &in.IntervalInSeconds, &out.IntervalInSeconds + *out = new(float64) + **out = **in + } + if in.SizeLimitInBytes != nil { + in, out := &in.SizeLimitInBytes, &out.SizeLimitInBytes + *out = new(float64) + **out = **in + } + if in.SkipEmptyArchives != nil { + in, out := &in.SkipEmptyArchives, &out.SkipEmptyArchives + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CaptureDescriptionInitParameters. +func (in *CaptureDescriptionInitParameters) DeepCopy() *CaptureDescriptionInitParameters { + if in == nil { + return nil + } + out := new(CaptureDescriptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CaptureDescriptionObservation) DeepCopyInto(out *CaptureDescriptionObservation) { *out = *in @@ -353,6 +431,26 @@ func (in *ConsumerGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConsumerGroupInitParameters) DeepCopyInto(out *ConsumerGroupInitParameters) { + *out = *in + if in.UserMetadata != nil { + in, out := &in.UserMetadata, &out.UserMetadata + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConsumerGroupInitParameters. +func (in *ConsumerGroupInitParameters) DeepCopy() *ConsumerGroupInitParameters { + if in == nil { + return nil + } + out := new(ConsumerGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConsumerGroupList) DeepCopyInto(out *ConsumerGroupList) { *out = *in @@ -495,6 +593,7 @@ func (in *ConsumerGroupSpec) DeepCopyInto(out *ConsumerGroupSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConsumerGroupSpec. @@ -524,6 +623,41 @@ func (in *ConsumerGroupStatus) DeepCopy() *ConsumerGroupStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DestinationInitParameters) DeepCopyInto(out *DestinationInitParameters) { + *out = *in + if in.ArchiveNameFormat != nil { + in, out := &in.ArchiveNameFormat, &out.ArchiveNameFormat + *out = new(string) + **out = **in + } + if in.BlobContainerName != nil { + in, out := &in.BlobContainerName, &out.BlobContainerName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DestinationInitParameters. +func (in *DestinationInitParameters) DeepCopy() *DestinationInitParameters { + if in == nil { + return nil + } + out := new(DestinationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DestinationObservation) DeepCopyInto(out *DestinationObservation) { *out = *in @@ -621,6 +755,43 @@ func (in *EventHub) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventHubInitParameters) DeepCopyInto(out *EventHubInitParameters) { + *out = *in + if in.CaptureDescription != nil { + in, out := &in.CaptureDescription, &out.CaptureDescription + *out = make([]CaptureDescriptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MessageRetention != nil { + in, out := &in.MessageRetention, &out.MessageRetention + *out = new(float64) + **out = **in + } + if in.PartitionCount != nil { + in, out := &in.PartitionCount, &out.PartitionCount + *out = new(float64) + **out = **in + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubInitParameters. +func (in *EventHubInitParameters) DeepCopy() *EventHubInitParameters { + if in == nil { + return nil + } + out := new(EventHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventHubList) DeepCopyInto(out *EventHubList) { *out = *in @@ -680,6 +851,100 @@ func (in *EventHubNamespace) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventHubNamespaceInitParameters) DeepCopyInto(out *EventHubNamespaceInitParameters) { + *out = *in + if in.AutoInflateEnabled != nil { + in, out := &in.AutoInflateEnabled, &out.AutoInflateEnabled + *out = new(bool) + **out = **in + } + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.DedicatedClusterID != nil { + in, out := &in.DedicatedClusterID, &out.DedicatedClusterID + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAuthenticationEnabled != nil { + in, out := &in.LocalAuthenticationEnabled, &out.LocalAuthenticationEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaximumThroughputUnits != nil { + in, out := &in.MaximumThroughputUnits, &out.MaximumThroughputUnits + *out = new(float64) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.NetworkRulesets != nil { + in, out := &in.NetworkRulesets, &out.NetworkRulesets + *out = make([]NetworkRulesetsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZoneRedundant != nil { + in, out := &in.ZoneRedundant, &out.ZoneRedundant + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubNamespaceInitParameters. +func (in *EventHubNamespaceInitParameters) DeepCopy() *EventHubNamespaceInitParameters { + if in == nil { + return nil + } + out := new(EventHubNamespaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventHubNamespaceList) DeepCopyInto(out *EventHubNamespaceList) { *out = *in @@ -930,6 +1195,7 @@ func (in *EventHubNamespaceSpec) DeepCopyInto(out *EventHubNamespaceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubNamespaceSpec. @@ -1094,6 +1360,7 @@ func (in *EventHubSpec) DeepCopyInto(out *EventHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubSpec. @@ -1123,6 +1390,31 @@ func (in *EventHubStatus) DeepCopy() *EventHubStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPRuleInitParameters) DeepCopyInto(out *IPRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.IPMask != nil { + in, out := &in.IPMask, &out.IPMask + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRuleInitParameters. +func (in *IPRuleInitParameters) DeepCopy() *IPRuleInitParameters { + if in == nil { + return nil + } + out := new(IPRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPRuleObservation) DeepCopyInto(out *IPRuleObservation) { *out = *in @@ -1173,6 +1465,37 @@ func (in *IPRuleParameters) DeepCopy() *IPRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -1272,6 +1595,36 @@ func (in *NamespaceAuthorizationRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceAuthorizationRuleInitParameters) DeepCopyInto(out *NamespaceAuthorizationRuleInitParameters) { + *out = *in + if in.Listen != nil { + in, out := &in.Listen, &out.Listen + *out = new(bool) + **out = **in + } + if in.Manage != nil { + in, out := &in.Manage, &out.Manage + *out = new(bool) + **out = **in + } + if in.Send != nil { + in, out := &in.Send, &out.Send + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceAuthorizationRuleInitParameters. +func (in *NamespaceAuthorizationRuleInitParameters) DeepCopy() *NamespaceAuthorizationRuleInitParameters { + if in == nil { + return nil + } + out := new(NamespaceAuthorizationRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NamespaceAuthorizationRuleList) DeepCopyInto(out *NamespaceAuthorizationRuleList) { *out = *in @@ -1414,6 +1767,7 @@ func (in *NamespaceAuthorizationRuleSpec) DeepCopyInto(out *NamespaceAuthorizati *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceAuthorizationRuleSpec. @@ -1470,6 +1824,21 @@ func (in *NamespaceDisasterRecoveryConfig) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceDisasterRecoveryConfigInitParameters) DeepCopyInto(out *NamespaceDisasterRecoveryConfigInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceDisasterRecoveryConfigInitParameters. +func (in *NamespaceDisasterRecoveryConfigInitParameters) DeepCopy() *NamespaceDisasterRecoveryConfigInitParameters { + if in == nil { + return nil + } + out := new(NamespaceDisasterRecoveryConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NamespaceDisasterRecoveryConfigList) DeepCopyInto(out *NamespaceDisasterRecoveryConfigList) { *out = *in @@ -1602,6 +1971,7 @@ func (in *NamespaceDisasterRecoveryConfigSpec) DeepCopyInto(out *NamespaceDisast *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceDisasterRecoveryConfigSpec. @@ -1658,6 +2028,31 @@ func (in *NamespaceSchemaGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceSchemaGroupInitParameters) DeepCopyInto(out *NamespaceSchemaGroupInitParameters) { + *out = *in + if in.SchemaCompatibility != nil { + in, out := &in.SchemaCompatibility, &out.SchemaCompatibility + *out = new(string) + **out = **in + } + if in.SchemaType != nil { + in, out := &in.SchemaType, &out.SchemaType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceSchemaGroupInitParameters. +func (in *NamespaceSchemaGroupInitParameters) DeepCopy() *NamespaceSchemaGroupInitParameters { + if in == nil { + return nil + } + out := new(NamespaceSchemaGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NamespaceSchemaGroupList) DeepCopyInto(out *NamespaceSchemaGroupList) { *out = *in @@ -1770,6 +2165,7 @@ func (in *NamespaceSchemaGroupSpec) DeepCopyInto(out *NamespaceSchemaGroupSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceSchemaGroupSpec. @@ -1799,6 +2195,50 @@ func (in *NamespaceSchemaGroupStatus) DeepCopy() *NamespaceSchemaGroupStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkRulesetsInitParameters) DeepCopyInto(out *NetworkRulesetsInitParameters) { + *out = *in + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.IPRule != nil { + in, out := &in.IPRule, &out.IPRule + *out = make([]IPRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.TrustedServiceAccessEnabled != nil { + in, out := &in.TrustedServiceAccessEnabled, &out.TrustedServiceAccessEnabled + *out = new(bool) + **out = **in + } + if in.VirtualNetworkRule != nil { + in, out := &in.VirtualNetworkRule, &out.VirtualNetworkRule + *out = make([]VirtualNetworkRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkRulesetsInitParameters. +func (in *NetworkRulesetsInitParameters) DeepCopy() *NetworkRulesetsInitParameters { + if in == nil { + return nil + } + out := new(NetworkRulesetsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkRulesetsObservation) DeepCopyInto(out *NetworkRulesetsObservation) { *out = *in @@ -1887,6 +2327,26 @@ func (in *NetworkRulesetsParameters) DeepCopy() *NetworkRulesetsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkRuleInitParameters) DeepCopyInto(out *VirtualNetworkRuleInitParameters) { + *out = *in + if in.IgnoreMissingVirtualNetworkServiceEndpoint != nil { + in, out := &in.IgnoreMissingVirtualNetworkServiceEndpoint, &out.IgnoreMissingVirtualNetworkServiceEndpoint + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkRuleInitParameters. +func (in *VirtualNetworkRuleInitParameters) DeepCopy() *VirtualNetworkRuleInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkRuleObservation) DeepCopyInto(out *VirtualNetworkRuleObservation) { *out = *in diff --git a/apis/eventhub/v1beta1/zz_generated.managed.go b/apis/eventhub/v1beta1/zz_generated.managed.go index ef8e9349b..264eb3343 100644 --- a/apis/eventhub/v1beta1/zz_generated.managed.go +++ b/apis/eventhub/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AuthorizationRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AuthorizationRule. -func (mg *AuthorizationRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AuthorizationRule. +func (mg *AuthorizationRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AuthorizationRule. @@ -55,9 +55,9 @@ func (mg *AuthorizationRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AuthorizationRule. -func (mg *AuthorizationRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AuthorizationRule. +func (mg *AuthorizationRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AuthorizationRule. @@ -93,9 +93,9 @@ func (mg *ConsumerGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ConsumerGroup. -func (mg *ConsumerGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ConsumerGroup. +func (mg *ConsumerGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ConsumerGroup. @@ -131,9 +131,9 @@ func (mg *ConsumerGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ConsumerGroup. -func (mg *ConsumerGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ConsumerGroup. +func (mg *ConsumerGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ConsumerGroup. @@ -169,9 +169,9 @@ func (mg *EventHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this EventHub. -func (mg *EventHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this EventHub. +func (mg *EventHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this EventHub. @@ -207,9 +207,9 @@ func (mg *EventHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this EventHub. -func (mg *EventHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this EventHub. +func (mg *EventHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this EventHub. @@ -245,9 +245,9 @@ func (mg *EventHubNamespace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this EventHubNamespace. -func (mg *EventHubNamespace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this EventHubNamespace. +func (mg *EventHubNamespace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this EventHubNamespace. @@ -283,9 +283,9 @@ func (mg *EventHubNamespace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this EventHubNamespace. -func (mg *EventHubNamespace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this EventHubNamespace. +func (mg *EventHubNamespace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this EventHubNamespace. @@ -321,9 +321,9 @@ func (mg *NamespaceAuthorizationRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NamespaceAuthorizationRule. -func (mg *NamespaceAuthorizationRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NamespaceAuthorizationRule. +func (mg *NamespaceAuthorizationRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NamespaceAuthorizationRule. @@ -359,9 +359,9 @@ func (mg *NamespaceAuthorizationRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NamespaceAuthorizationRule. -func (mg *NamespaceAuthorizationRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NamespaceAuthorizationRule. +func (mg *NamespaceAuthorizationRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NamespaceAuthorizationRule. @@ -397,9 +397,9 @@ func (mg *NamespaceDisasterRecoveryConfig) GetDeletionPolicy() xpv1.DeletionPoli return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NamespaceDisasterRecoveryConfig. -func (mg *NamespaceDisasterRecoveryConfig) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NamespaceDisasterRecoveryConfig. +func (mg *NamespaceDisasterRecoveryConfig) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NamespaceDisasterRecoveryConfig. @@ -435,9 +435,9 @@ func (mg *NamespaceDisasterRecoveryConfig) SetDeletionPolicy(r xpv1.DeletionPoli mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NamespaceDisasterRecoveryConfig. -func (mg *NamespaceDisasterRecoveryConfig) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NamespaceDisasterRecoveryConfig. +func (mg *NamespaceDisasterRecoveryConfig) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NamespaceDisasterRecoveryConfig. @@ -473,9 +473,9 @@ func (mg *NamespaceSchemaGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NamespaceSchemaGroup. -func (mg *NamespaceSchemaGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NamespaceSchemaGroup. +func (mg *NamespaceSchemaGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NamespaceSchemaGroup. @@ -511,9 +511,9 @@ func (mg *NamespaceSchemaGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NamespaceSchemaGroup. -func (mg *NamespaceSchemaGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NamespaceSchemaGroup. +func (mg *NamespaceSchemaGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NamespaceSchemaGroup. diff --git a/apis/eventhub/v1beta1/zz_generated_terraformed.go b/apis/eventhub/v1beta1/zz_generated_terraformed.go index 736973673..6f42bd688 100755 --- a/apis/eventhub/v1beta1/zz_generated_terraformed.go +++ b/apis/eventhub/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *EventHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this EventHub +func (tr *EventHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this EventHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *EventHub) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *AuthorizationRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AuthorizationRule +func (tr *AuthorizationRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AuthorizationRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AuthorizationRule) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *ConsumerGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ConsumerGroup +func (tr *ConsumerGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ConsumerGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ConsumerGroup) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *EventHubNamespace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this EventHubNamespace +func (tr *EventHubNamespace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this EventHubNamespace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *EventHubNamespace) LateInitialize(attrs []byte) (bool, error) { @@ -366,6 +406,16 @@ func (tr *NamespaceAuthorizationRule) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NamespaceAuthorizationRule +func (tr *NamespaceAuthorizationRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NamespaceAuthorizationRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NamespaceAuthorizationRule) LateInitialize(attrs []byte) (bool, error) { @@ -440,6 +490,16 @@ func (tr *NamespaceDisasterRecoveryConfig) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NamespaceDisasterRecoveryConfig +func (tr *NamespaceDisasterRecoveryConfig) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NamespaceDisasterRecoveryConfig using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NamespaceDisasterRecoveryConfig) LateInitialize(attrs []byte) (bool, error) { @@ -514,6 +574,16 @@ func (tr *NamespaceSchemaGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NamespaceSchemaGroup +func (tr *NamespaceSchemaGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NamespaceSchemaGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NamespaceSchemaGroup) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/eventhub/v1beta1/zz_namespaceauthorizationrule_types.go b/apis/eventhub/v1beta1/zz_namespaceauthorizationrule_types.go index ba9bfb399..f17de1412 100755 --- a/apis/eventhub/v1beta1/zz_namespaceauthorizationrule_types.go +++ b/apis/eventhub/v1beta1/zz_namespaceauthorizationrule_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NamespaceAuthorizationRuleInitParameters struct { + + // Grants listen access to this this Authorization Rule. Defaults to false. + Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` + + // Grants manage access to this this Authorization Rule. When this property is true - both listen and send must be too. Defaults to false. + Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` + + // Grants send access to this this Authorization Rule. Defaults to false. + Send *bool `json:"send,omitempty" tf:"send,omitempty"` +} + type NamespaceAuthorizationRuleObservation struct { // The EventHub Namespace Authorization Rule ID. @@ -79,6 +91,18 @@ type NamespaceAuthorizationRuleParameters struct { type NamespaceAuthorizationRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NamespaceAuthorizationRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NamespaceAuthorizationRuleInitParameters `json:"initProvider,omitempty"` } // NamespaceAuthorizationRuleStatus defines the observed state of NamespaceAuthorizationRule. diff --git a/apis/eventhub/v1beta1/zz_namespacedisasterrecoveryconfig_types.go b/apis/eventhub/v1beta1/zz_namespacedisasterrecoveryconfig_types.go index 62a8da110..48bb6543d 100755 --- a/apis/eventhub/v1beta1/zz_namespacedisasterrecoveryconfig_types.go +++ b/apis/eventhub/v1beta1/zz_namespacedisasterrecoveryconfig_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NamespaceDisasterRecoveryConfigInitParameters struct { +} + type NamespaceDisasterRecoveryConfigObservation struct { // The EventHub Namespace Disaster Recovery Config ID. @@ -75,6 +78,18 @@ type NamespaceDisasterRecoveryConfigParameters struct { type NamespaceDisasterRecoveryConfigSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NamespaceDisasterRecoveryConfigParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NamespaceDisasterRecoveryConfigInitParameters `json:"initProvider,omitempty"` } // NamespaceDisasterRecoveryConfigStatus defines the observed state of NamespaceDisasterRecoveryConfig. diff --git a/apis/eventhub/v1beta1/zz_namespaceschemagroup_types.go b/apis/eventhub/v1beta1/zz_namespaceschemagroup_types.go index 0814808cd..cace75312 100755 --- a/apis/eventhub/v1beta1/zz_namespaceschemagroup_types.go +++ b/apis/eventhub/v1beta1/zz_namespaceschemagroup_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NamespaceSchemaGroupInitParameters struct { + + // Specifies the compatibility of this schema group. Possible values are None, Backward, Forward. Changing this forces a new resource to be created. + SchemaCompatibility *string `json:"schemaCompatibility,omitempty" tf:"schema_compatibility,omitempty"` + + // Specifies the Type of this schema group. Possible values are Avro, Unknown. Changing this forces a new resource to be created. + SchemaType *string `json:"schemaType,omitempty" tf:"schema_type,omitempty"` +} + type NamespaceSchemaGroupObservation struct { // The ID of the EventHub Namespace Schema Group. @@ -57,6 +66,18 @@ type NamespaceSchemaGroupParameters struct { type NamespaceSchemaGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NamespaceSchemaGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NamespaceSchemaGroupInitParameters `json:"initProvider,omitempty"` } // NamespaceSchemaGroupStatus defines the observed state of NamespaceSchemaGroup. @@ -77,8 +98,8 @@ type NamespaceSchemaGroupStatus struct { type NamespaceSchemaGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.schemaCompatibility)",message="schemaCompatibility is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.schemaType)",message="schemaType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.schemaCompatibility) || has(self.initProvider.schemaCompatibility)",message="schemaCompatibility is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.schemaType) || has(self.initProvider.schemaType)",message="schemaType is a required parameter" Spec NamespaceSchemaGroupSpec `json:"spec"` Status NamespaceSchemaGroupStatus `json:"status,omitempty"` } diff --git a/apis/fluidrelay/v1beta1/zz_generated.deepcopy.go b/apis/fluidrelay/v1beta1/zz_generated.deepcopy.go index d0da72764..5f055aaad 100644 --- a/apis/fluidrelay/v1beta1/zz_generated.deepcopy.go +++ b/apis/fluidrelay/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,37 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -113,6 +144,58 @@ func (in *Server) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerInitParameters) DeepCopyInto(out *ServerInitParameters) { + *out = *in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.StorageSku != nil { + in, out := &in.StorageSku, &out.StorageSku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerInitParameters. +func (in *ServerInitParameters) DeepCopy() *ServerInitParameters { + if in == nil { + return nil + } + out := new(ServerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerList) DeepCopyInto(out *ServerList) { *out = *in @@ -317,6 +400,7 @@ func (in *ServerSpec) DeepCopyInto(out *ServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerSpec. diff --git a/apis/fluidrelay/v1beta1/zz_generated.managed.go b/apis/fluidrelay/v1beta1/zz_generated.managed.go index 9b19ce64c..5f6b52d98 100644 --- a/apis/fluidrelay/v1beta1/zz_generated.managed.go +++ b/apis/fluidrelay/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Server) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Server. -func (mg *Server) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Server. +func (mg *Server) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Server. @@ -55,9 +55,9 @@ func (mg *Server) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Server. -func (mg *Server) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Server. +func (mg *Server) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Server. diff --git a/apis/fluidrelay/v1beta1/zz_generated_terraformed.go b/apis/fluidrelay/v1beta1/zz_generated_terraformed.go index a70e0e430..818c16569 100755 --- a/apis/fluidrelay/v1beta1/zz_generated_terraformed.go +++ b/apis/fluidrelay/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Server) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Server +func (tr *Server) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Server using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Server) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/fluidrelay/v1beta1/zz_server_types.go b/apis/fluidrelay/v1beta1/zz_server_types.go index ba1ab35f3..88fadb19d 100755 --- a/apis/fluidrelay/v1beta1/zz_server_types.go +++ b/apis/fluidrelay/v1beta1/zz_server_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Fluid Relay Service. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Fluid Relay Service. Possible values are SystemAssigned,UserAssigned and SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Fluid Relay Service. @@ -35,8 +44,26 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Fluid Relay Service. Possible values are SystemAssigned,UserAssigned and SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ServerInitParameters struct { + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Fluid Relay Server should exist. Changing this forces a new Fluid Relay Server to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name which should be used for this Fluid Relay Server. Changing this forces a new Fluid Relay Server to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Sku of the storage associated with the resource, Possible values are standard and basic. Changing this forces a new Fluid Relay Server to be created. + StorageSku *string `json:"storageSku,omitempty" tf:"storage_sku,omitempty"` + + // A mapping of tags which should be assigned to the Fluid Relay Server. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type ServerObservation struct { @@ -115,6 +142,18 @@ type ServerParameters struct { type ServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServerInitParameters `json:"initProvider,omitempty"` } // ServerStatus defines the observed state of Server. @@ -135,8 +174,8 @@ type ServerStatus struct { type Server struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ServerSpec `json:"spec"` Status ServerStatus `json:"status,omitempty"` } diff --git a/apis/guestconfiguration/v1beta1/zz_generated.deepcopy.go b/apis/guestconfiguration/v1beta1/zz_generated.deepcopy.go index c2a9175c6..02910259f 100644 --- a/apis/guestconfiguration/v1beta1/zz_generated.deepcopy.go +++ b/apis/guestconfiguration/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,48 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigurationInitParameters) DeepCopyInto(out *ConfigurationInitParameters) { + *out = *in + if in.AssignmentType != nil { + in, out := &in.AssignmentType, &out.AssignmentType + *out = new(string) + **out = **in + } + if in.ContentHash != nil { + in, out := &in.ContentHash, &out.ContentHash + *out = new(string) + **out = **in + } + if in.ContentURI != nil { + in, out := &in.ContentURI, &out.ContentURI + *out = new(string) + **out = **in + } + if in.Parameter != nil { + in, out := &in.Parameter, &out.Parameter + *out = make([]ParameterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigurationInitParameters. +func (in *ConfigurationInitParameters) DeepCopy() *ConfigurationInitParameters { + if in == nil { + return nil + } + out := new(ConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConfigurationObservation) DeepCopyInto(out *ConfigurationObservation) { *out = *in @@ -98,6 +140,31 @@ func (in *ConfigurationParameters) DeepCopy() *ConfigurationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ParameterInitParameters) DeepCopyInto(out *ParameterInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParameterInitParameters. +func (in *ParameterInitParameters) DeepCopy() *ParameterInitParameters { + if in == nil { + return nil + } + out := new(ParameterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ParameterObservation) DeepCopyInto(out *ParameterObservation) { *out = *in @@ -175,6 +242,33 @@ func (in *PolicyVirtualMachineConfigurationAssignment) DeepCopyObject() runtime. return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyVirtualMachineConfigurationAssignmentInitParameters) DeepCopyInto(out *PolicyVirtualMachineConfigurationAssignmentInitParameters) { + *out = *in + if in.Configuration != nil { + in, out := &in.Configuration, &out.Configuration + *out = make([]ConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyVirtualMachineConfigurationAssignmentInitParameters. +func (in *PolicyVirtualMachineConfigurationAssignmentInitParameters) DeepCopy() *PolicyVirtualMachineConfigurationAssignmentInitParameters { + if in == nil { + return nil + } + out := new(PolicyVirtualMachineConfigurationAssignmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PolicyVirtualMachineConfigurationAssignmentList) DeepCopyInto(out *PolicyVirtualMachineConfigurationAssignmentList) { *out = *in @@ -291,6 +385,7 @@ func (in *PolicyVirtualMachineConfigurationAssignmentSpec) DeepCopyInto(out *Pol *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyVirtualMachineConfigurationAssignmentSpec. diff --git a/apis/guestconfiguration/v1beta1/zz_generated.managed.go b/apis/guestconfiguration/v1beta1/zz_generated.managed.go index da9728e00..8385e1bb3 100644 --- a/apis/guestconfiguration/v1beta1/zz_generated.managed.go +++ b/apis/guestconfiguration/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *PolicyVirtualMachineConfigurationAssignment) GetDeletionPolicy() xpv1. return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PolicyVirtualMachineConfigurationAssignment. -func (mg *PolicyVirtualMachineConfigurationAssignment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PolicyVirtualMachineConfigurationAssignment. +func (mg *PolicyVirtualMachineConfigurationAssignment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PolicyVirtualMachineConfigurationAssignment. @@ -55,9 +55,9 @@ func (mg *PolicyVirtualMachineConfigurationAssignment) SetDeletionPolicy(r xpv1. mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PolicyVirtualMachineConfigurationAssignment. -func (mg *PolicyVirtualMachineConfigurationAssignment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PolicyVirtualMachineConfigurationAssignment. +func (mg *PolicyVirtualMachineConfigurationAssignment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PolicyVirtualMachineConfigurationAssignment. diff --git a/apis/guestconfiguration/v1beta1/zz_generated_terraformed.go b/apis/guestconfiguration/v1beta1/zz_generated_terraformed.go index c55532155..de8b317cb 100755 --- a/apis/guestconfiguration/v1beta1/zz_generated_terraformed.go +++ b/apis/guestconfiguration/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *PolicyVirtualMachineConfigurationAssignment) SetParameters(params map[ return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PolicyVirtualMachineConfigurationAssignment +func (tr *PolicyVirtualMachineConfigurationAssignment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PolicyVirtualMachineConfigurationAssignment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PolicyVirtualMachineConfigurationAssignment) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/guestconfiguration/v1beta1/zz_policyvirtualmachineconfigurationassignment_types.go b/apis/guestconfiguration/v1beta1/zz_policyvirtualmachineconfigurationassignment_types.go index 5b85c774b..b9e1c6a47 100755 --- a/apis/guestconfiguration/v1beta1/zz_policyvirtualmachineconfigurationassignment_types.go +++ b/apis/guestconfiguration/v1beta1/zz_policyvirtualmachineconfigurationassignment_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConfigurationInitParameters struct { + + // The assignment type for the Guest Configuration Assignment. Possible values are Audit, ApplyAndAutoCorrect, ApplyAndMonitor and DeployAndAutoCorrect. + AssignmentType *string `json:"assignmentType,omitempty" tf:"assignment_type,omitempty"` + + // The content hash for the Guest Configuration package. + ContentHash *string `json:"contentHash,omitempty" tf:"content_hash,omitempty"` + + // The content URI where the Guest Configuration package is stored. + ContentURI *string `json:"contentUri,omitempty" tf:"content_uri,omitempty"` + + // One or more parameter blocks as defined below which define what configuration parameters and values against. + Parameter []ParameterInitParameters `json:"parameter,omitempty" tf:"parameter,omitempty"` + + // The version of the Guest Configuration that will be assigned in this Guest Configuration Assignment. + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type ConfigurationObservation struct { // The assignment type for the Guest Configuration Assignment. Possible values are Audit, ApplyAndAutoCorrect, ApplyAndMonitor and DeployAndAutoCorrect. @@ -54,6 +72,15 @@ type ConfigurationParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type ParameterInitParameters struct { + + // The name of the configuration parameter to check. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value to check the configuration parameter with. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ParameterObservation struct { // The name of the configuration parameter to check. @@ -66,12 +93,21 @@ type ParameterObservation struct { type ParameterParameters struct { // The name of the configuration parameter to check. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value to check the configuration parameter with. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type PolicyVirtualMachineConfigurationAssignmentInitParameters struct { + + // A configuration block as defined below. + Configuration []ConfigurationInitParameters `json:"configuration,omitempty" tf:"configuration,omitempty"` + + // The Azure location where the Policy Virtual Machine Configuration Assignment should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` } type PolicyVirtualMachineConfigurationAssignmentObservation struct { @@ -118,6 +154,18 @@ type PolicyVirtualMachineConfigurationAssignmentParameters struct { type PolicyVirtualMachineConfigurationAssignmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PolicyVirtualMachineConfigurationAssignmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PolicyVirtualMachineConfigurationAssignmentInitParameters `json:"initProvider,omitempty"` } // PolicyVirtualMachineConfigurationAssignmentStatus defines the observed state of PolicyVirtualMachineConfigurationAssignment. @@ -138,8 +186,8 @@ type PolicyVirtualMachineConfigurationAssignmentStatus struct { type PolicyVirtualMachineConfigurationAssignment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.configuration)",message="configuration is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.configuration) || has(self.initProvider.configuration)",message="configuration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec PolicyVirtualMachineConfigurationAssignmentSpec `json:"spec"` Status PolicyVirtualMachineConfigurationAssignmentStatus `json:"status,omitempty"` } diff --git a/apis/hdinsight/v1beta1/zz_generated.deepcopy.go b/apis/hdinsight/v1beta1/zz_generated.deepcopy.go index 8497d77d5..097ff1afc 100644 --- a/apis/hdinsight/v1beta1/zz_generated.deepcopy.go +++ b/apis/hdinsight/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,36 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AmbariInitParameters) DeepCopyInto(out *AmbariInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AmbariInitParameters. +func (in *AmbariInitParameters) DeepCopy() *AmbariInitParameters { + if in == nil { + return nil + } + out := new(AmbariInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AmbariObservation) DeepCopyInto(out *AmbariObservation) { *out = *in @@ -75,6 +105,31 @@ func (in *AmbariParameters) DeepCopy() *AmbariParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoscaleCapacityInitParameters) DeepCopyInto(out *AutoscaleCapacityInitParameters) { + *out = *in + if in.MaxInstanceCount != nil { + in, out := &in.MaxInstanceCount, &out.MaxInstanceCount + *out = new(float64) + **out = **in + } + if in.MinInstanceCount != nil { + in, out := &in.MinInstanceCount, &out.MinInstanceCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscaleCapacityInitParameters. +func (in *AutoscaleCapacityInitParameters) DeepCopy() *AutoscaleCapacityInitParameters { + if in == nil { + return nil + } + out := new(AutoscaleCapacityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoscaleCapacityObservation) DeepCopyInto(out *AutoscaleCapacityObservation) { *out = *in @@ -125,6 +180,35 @@ func (in *AutoscaleCapacityParameters) DeepCopy() *AutoscaleCapacityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoscaleInitParameters) DeepCopyInto(out *AutoscaleInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make([]CapacityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Recurrence != nil { + in, out := &in.Recurrence, &out.Recurrence + *out = make([]RecurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscaleInitParameters. +func (in *AutoscaleInitParameters) DeepCopy() *AutoscaleInitParameters { + if in == nil { + return nil + } + out := new(AutoscaleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoscaleObservation) DeepCopyInto(out *AutoscaleObservation) { *out = *in @@ -183,6 +267,33 @@ func (in *AutoscaleParameters) DeepCopy() *AutoscaleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoscaleRecurrenceInitParameters) DeepCopyInto(out *AutoscaleRecurrenceInitParameters) { + *out = *in + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]RecurrenceScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscaleRecurrenceInitParameters. +func (in *AutoscaleRecurrenceInitParameters) DeepCopy() *AutoscaleRecurrenceInitParameters { + if in == nil { + return nil + } + out := new(AutoscaleRecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoscaleRecurrenceObservation) DeepCopyInto(out *AutoscaleRecurrenceObservation) { *out = *in @@ -237,6 +348,42 @@ func (in *AutoscaleRecurrenceParameters) DeepCopy() *AutoscaleRecurrenceParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoscaleRecurrenceScheduleInitParameters) DeepCopyInto(out *AutoscaleRecurrenceScheduleInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TargetInstanceCount != nil { + in, out := &in.TargetInstanceCount, &out.TargetInstanceCount + *out = new(float64) + **out = **in + } + if in.Time != nil { + in, out := &in.Time, &out.Time + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscaleRecurrenceScheduleInitParameters. +func (in *AutoscaleRecurrenceScheduleInitParameters) DeepCopy() *AutoscaleRecurrenceScheduleInitParameters { + if in == nil { + return nil + } + out := new(AutoscaleRecurrenceScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoscaleRecurrenceScheduleObservation) DeepCopyInto(out *AutoscaleRecurrenceScheduleObservation) { *out = *in @@ -309,6 +456,31 @@ func (in *AutoscaleRecurrenceScheduleParameters) DeepCopy() *AutoscaleRecurrence return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CapacityInitParameters) DeepCopyInto(out *CapacityInitParameters) { + *out = *in + if in.MaxInstanceCount != nil { + in, out := &in.MaxInstanceCount, &out.MaxInstanceCount + *out = new(float64) + **out = **in + } + if in.MinInstanceCount != nil { + in, out := &in.MinInstanceCount, &out.MinInstanceCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapacityInitParameters. +func (in *CapacityInitParameters) DeepCopy() *CapacityInitParameters { + if in == nil { + return nil + } + out := new(CapacityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CapacityObservation) DeepCopyInto(out *CapacityObservation) { *out = *in @@ -359,6 +531,26 @@ func (in *CapacityParameters) DeepCopy() *CapacityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComponentVersionInitParameters) DeepCopyInto(out *ComponentVersionInitParameters) { + *out = *in + if in.Hadoop != nil { + in, out := &in.Hadoop, &out.Hadoop + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentVersionInitParameters. +func (in *ComponentVersionInitParameters) DeepCopy() *ComponentVersionInitParameters { + if in == nil { + return nil + } + out := new(ComponentVersionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ComponentVersionObservation) DeepCopyInto(out *ComponentVersionObservation) { *out = *in @@ -399,6 +591,31 @@ func (in *ComponentVersionParameters) DeepCopy() *ComponentVersionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComputeIsolationInitParameters) DeepCopyInto(out *ComputeIsolationInitParameters) { + *out = *in + if in.ComputeIsolationEnabled != nil { + in, out := &in.ComputeIsolationEnabled, &out.ComputeIsolationEnabled + *out = new(bool) + **out = **in + } + if in.HostSku != nil { + in, out := &in.HostSku, &out.HostSku + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeIsolationInitParameters. +func (in *ComputeIsolationInitParameters) DeepCopy() *ComputeIsolationInitParameters { + if in == nil { + return nil + } + out := new(ComputeIsolationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ComputeIsolationObservation) DeepCopyInto(out *ComputeIsolationObservation) { *out = *in @@ -449,6 +666,41 @@ func (in *ComputeIsolationParameters) DeepCopy() *ComputeIsolationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiskEncryptionInitParameters) DeepCopyInto(out *DiskEncryptionInitParameters) { + *out = *in + if in.EncryptionAlgorithm != nil { + in, out := &in.EncryptionAlgorithm, &out.EncryptionAlgorithm + *out = new(string) + **out = **in + } + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.KeyVaultManagedIdentityID != nil { + in, out := &in.KeyVaultManagedIdentityID, &out.KeyVaultManagedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskEncryptionInitParameters. +func (in *DiskEncryptionInitParameters) DeepCopy() *DiskEncryptionInitParameters { + if in == nil { + return nil + } + out := new(DiskEncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiskEncryptionObservation) DeepCopyInto(out *DiskEncryptionObservation) { *out = *in @@ -519,6 +771,52 @@ func (in *DiskEncryptionParameters) DeepCopy() *DiskEncryptionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EdgeNodeInitParameters) DeepCopyInto(out *EdgeNodeInitParameters) { + *out = *in + if in.HTTPSEndpoints != nil { + in, out := &in.HTTPSEndpoints, &out.HTTPSEndpoints + *out = make([]HTTPSEndpointsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InstallScriptAction != nil { + in, out := &in.InstallScriptAction, &out.InstallScriptAction + *out = make([]InstallScriptActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetInstanceCount != nil { + in, out := &in.TargetInstanceCount, &out.TargetInstanceCount + *out = new(float64) + **out = **in + } + if in.UninstallScriptActions != nil { + in, out := &in.UninstallScriptActions, &out.UninstallScriptActions + *out = make([]UninstallScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EdgeNodeInitParameters. +func (in *EdgeNodeInitParameters) DeepCopy() *EdgeNodeInitParameters { + if in == nil { + return nil + } + out := new(EdgeNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EdgeNodeObservation) DeepCopyInto(out *EdgeNodeObservation) { *out = *in @@ -612,7 +910,7 @@ func (in *EdgeNodeParameters) DeepCopy() *EdgeNodeParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ExtensionObservation) DeepCopyInto(out *ExtensionObservation) { +func (in *ExtensionInitParameters) DeepCopyInto(out *ExtensionInitParameters) { *out = *in if in.LogAnalyticsWorkspaceID != nil { in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID @@ -621,12 +919,32 @@ func (in *ExtensionObservation) DeepCopyInto(out *ExtensionObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionObservation. -func (in *ExtensionObservation) DeepCopy() *ExtensionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionInitParameters. +func (in *ExtensionInitParameters) DeepCopy() *ExtensionInitParameters { if in == nil { return nil } - out := new(ExtensionObservation) + out := new(ExtensionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExtensionObservation) DeepCopyInto(out *ExtensionObservation) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionObservation. +func (in *ExtensionObservation) DeepCopy() *ExtensionObservation { + if in == nil { + return nil + } + out := new(ExtensionObservation) in.DeepCopyInto(out) return out } @@ -652,6 +970,26 @@ func (in *ExtensionParameters) DeepCopy() *ExtensionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GatewayInitParameters) DeepCopyInto(out *GatewayInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayInitParameters. +func (in *GatewayInitParameters) DeepCopy() *GatewayInitParameters { + if in == nil { + return nil + } + out := new(GatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GatewayObservation) DeepCopyInto(out *GatewayObservation) { *out = *in @@ -720,6 +1058,26 @@ func (in *HBaseCluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterComponentVersionInitParameters) DeepCopyInto(out *HBaseClusterComponentVersionInitParameters) { + *out = *in + if in.HBase != nil { + in, out := &in.HBase, &out.HBase + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterComponentVersionInitParameters. +func (in *HBaseClusterComponentVersionInitParameters) DeepCopy() *HBaseClusterComponentVersionInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterComponentVersionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterComponentVersionObservation) DeepCopyInto(out *HBaseClusterComponentVersionObservation) { *out = *in @@ -760,6 +1118,31 @@ func (in *HBaseClusterComponentVersionParameters) DeepCopy() *HBaseClusterCompon return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterComputeIsolationInitParameters) DeepCopyInto(out *HBaseClusterComputeIsolationInitParameters) { + *out = *in + if in.ComputeIsolationEnabled != nil { + in, out := &in.ComputeIsolationEnabled, &out.ComputeIsolationEnabled + *out = new(bool) + **out = **in + } + if in.HostSku != nil { + in, out := &in.HostSku, &out.HostSku + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterComputeIsolationInitParameters. +func (in *HBaseClusterComputeIsolationInitParameters) DeepCopy() *HBaseClusterComputeIsolationInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterComputeIsolationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterComputeIsolationObservation) DeepCopyInto(out *HBaseClusterComputeIsolationObservation) { *out = *in @@ -810,6 +1193,41 @@ func (in *HBaseClusterComputeIsolationParameters) DeepCopy() *HBaseClusterComput return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterDiskEncryptionInitParameters) DeepCopyInto(out *HBaseClusterDiskEncryptionInitParameters) { + *out = *in + if in.EncryptionAlgorithm != nil { + in, out := &in.EncryptionAlgorithm, &out.EncryptionAlgorithm + *out = new(string) + **out = **in + } + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.KeyVaultManagedIdentityID != nil { + in, out := &in.KeyVaultManagedIdentityID, &out.KeyVaultManagedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterDiskEncryptionInitParameters. +func (in *HBaseClusterDiskEncryptionInitParameters) DeepCopy() *HBaseClusterDiskEncryptionInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterDiskEncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterDiskEncryptionObservation) DeepCopyInto(out *HBaseClusterDiskEncryptionObservation) { *out = *in @@ -880,6 +1298,26 @@ func (in *HBaseClusterDiskEncryptionParameters) DeepCopy() *HBaseClusterDiskEncr return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterExtensionInitParameters) DeepCopyInto(out *HBaseClusterExtensionInitParameters) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterExtensionInitParameters. +func (in *HBaseClusterExtensionInitParameters) DeepCopy() *HBaseClusterExtensionInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterExtensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterExtensionObservation) DeepCopyInto(out *HBaseClusterExtensionObservation) { *out = *in @@ -921,6 +1359,26 @@ func (in *HBaseClusterExtensionParameters) DeepCopy() *HBaseClusterExtensionPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterGatewayInitParameters) DeepCopyInto(out *HBaseClusterGatewayInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterGatewayInitParameters. +func (in *HBaseClusterGatewayInitParameters) DeepCopy() *HBaseClusterGatewayInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterGatewayObservation) DeepCopyInto(out *HBaseClusterGatewayObservation) { *out = *in @@ -962,6 +1420,140 @@ func (in *HBaseClusterGatewayParameters) DeepCopy() *HBaseClusterGatewayParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterInitParameters) DeepCopyInto(out *HBaseClusterInitParameters) { + *out = *in + if in.ClusterVersion != nil { + in, out := &in.ClusterVersion, &out.ClusterVersion + *out = new(string) + **out = **in + } + if in.ComponentVersion != nil { + in, out := &in.ComponentVersion, &out.ComponentVersion + *out = make([]HBaseClusterComponentVersionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ComputeIsolation != nil { + in, out := &in.ComputeIsolation, &out.ComputeIsolation + *out = make([]HBaseClusterComputeIsolationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryption != nil { + in, out := &in.DiskEncryption, &out.DiskEncryption + *out = make([]HBaseClusterDiskEncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]HBaseClusterExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Gateway != nil { + in, out := &in.Gateway, &out.Gateway + *out = make([]HBaseClusterGatewayInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Metastores != nil { + in, out := &in.Metastores, &out.Metastores + *out = make([]HBaseClusterMetastoresInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Monitor != nil { + in, out := &in.Monitor, &out.Monitor + *out = make([]HBaseClusterMonitorInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = make([]HBaseClusterNetworkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Roles != nil { + in, out := &in.Roles, &out.Roles + *out = make([]HBaseClusterRolesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityProfile != nil { + in, out := &in.SecurityProfile, &out.SecurityProfile + *out = make([]HBaseClusterSecurityProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]HBaseClusterStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccountGen2 != nil { + in, out := &in.StorageAccountGen2, &out.StorageAccountGen2 + *out = make([]HBaseClusterStorageAccountGen2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TLSMinVersion != nil { + in, out := &in.TLSMinVersion, &out.TLSMinVersion + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterInitParameters. +func (in *HBaseClusterInitParameters) DeepCopy() *HBaseClusterInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterList) DeepCopyInto(out *HBaseClusterList) { *out = *in @@ -995,11 +1587,47 @@ func (in *HBaseClusterList) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HBaseClusterMetastoresObservation) DeepCopyInto(out *HBaseClusterMetastoresObservation) { +func (in *HBaseClusterMetastoresInitParameters) DeepCopyInto(out *HBaseClusterMetastoresInitParameters) { *out = *in if in.Ambari != nil { in, out := &in.Ambari, &out.Ambari - *out = make([]MetastoresAmbariObservation, len(*in)) + *out = make([]MetastoresAmbariInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Hive != nil { + in, out := &in.Hive, &out.Hive + *out = make([]MetastoresHiveInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Oozie != nil { + in, out := &in.Oozie, &out.Oozie + *out = make([]MetastoresOozieInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterMetastoresInitParameters. +func (in *HBaseClusterMetastoresInitParameters) DeepCopy() *HBaseClusterMetastoresInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterMetastoresInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterMetastoresObservation) DeepCopyInto(out *HBaseClusterMetastoresObservation) { + *out = *in + if in.Ambari != nil { + in, out := &in.Ambari, &out.Ambari + *out = make([]MetastoresAmbariObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1066,6 +1694,26 @@ func (in *HBaseClusterMetastoresParameters) DeepCopy() *HBaseClusterMetastoresPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterMonitorInitParameters) DeepCopyInto(out *HBaseClusterMonitorInitParameters) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterMonitorInitParameters. +func (in *HBaseClusterMonitorInitParameters) DeepCopy() *HBaseClusterMonitorInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterMonitorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterMonitorObservation) DeepCopyInto(out *HBaseClusterMonitorObservation) { *out = *in @@ -1107,6 +1755,31 @@ func (in *HBaseClusterMonitorParameters) DeepCopy() *HBaseClusterMonitorParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterNetworkInitParameters) DeepCopyInto(out *HBaseClusterNetworkInitParameters) { + *out = *in + if in.ConnectionDirection != nil { + in, out := &in.ConnectionDirection, &out.ConnectionDirection + *out = new(string) + **out = **in + } + if in.PrivateLinkEnabled != nil { + in, out := &in.PrivateLinkEnabled, &out.PrivateLinkEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterNetworkInitParameters. +func (in *HBaseClusterNetworkInitParameters) DeepCopy() *HBaseClusterNetworkInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterNetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterNetworkObservation) DeepCopyInto(out *HBaseClusterNetworkObservation) { *out = *in @@ -1460,6 +2133,42 @@ func (in *HBaseClusterParameters) DeepCopy() *HBaseClusterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterRolesInitParameters) DeepCopyInto(out *HBaseClusterRolesInitParameters) { + *out = *in + if in.HeadNode != nil { + in, out := &in.HeadNode, &out.HeadNode + *out = make([]RolesHeadNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkerNode != nil { + in, out := &in.WorkerNode, &out.WorkerNode + *out = make([]RolesWorkerNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ZookeeperNode != nil { + in, out := &in.ZookeeperNode, &out.ZookeeperNode + *out = make([]RolesZookeeperNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterRolesInitParameters. +func (in *HBaseClusterRolesInitParameters) DeepCopy() *HBaseClusterRolesInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterRolesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterRolesObservation) DeepCopyInto(out *HBaseClusterRolesObservation) { *out = *in @@ -1532,6 +2241,63 @@ func (in *HBaseClusterRolesParameters) DeepCopy() *HBaseClusterRolesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterSecurityProfileInitParameters) DeepCopyInto(out *HBaseClusterSecurityProfileInitParameters) { + *out = *in + if in.AaddsResourceID != nil { + in, out := &in.AaddsResourceID, &out.AaddsResourceID + *out = new(string) + **out = **in + } + if in.ClusterUsersGroupDNS != nil { + in, out := &in.ClusterUsersGroupDNS, &out.ClusterUsersGroupDNS + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DomainName != nil { + in, out := &in.DomainName, &out.DomainName + *out = new(string) + **out = **in + } + if in.DomainUsername != nil { + in, out := &in.DomainUsername, &out.DomainUsername + *out = new(string) + **out = **in + } + if in.LdapsUrls != nil { + in, out := &in.LdapsUrls, &out.LdapsUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MsiResourceID != nil { + in, out := &in.MsiResourceID, &out.MsiResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterSecurityProfileInitParameters. +func (in *HBaseClusterSecurityProfileInitParameters) DeepCopy() *HBaseClusterSecurityProfileInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterSecurityProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterSecurityProfileObservation) DeepCopyInto(out *HBaseClusterSecurityProfileObservation) { *out = *in @@ -1652,6 +2418,7 @@ func (in *HBaseClusterSpec) DeepCopyInto(out *HBaseClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterSpec. @@ -1681,6 +2448,41 @@ func (in *HBaseClusterStatus) DeepCopy() *HBaseClusterStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterStorageAccountGen2InitParameters) DeepCopyInto(out *HBaseClusterStorageAccountGen2InitParameters) { + *out = *in + if in.FileSystemID != nil { + in, out := &in.FileSystemID, &out.FileSystemID + *out = new(string) + **out = **in + } + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + if in.ManagedIdentityResourceID != nil { + in, out := &in.ManagedIdentityResourceID, &out.ManagedIdentityResourceID + *out = new(string) + **out = **in + } + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterStorageAccountGen2InitParameters. +func (in *HBaseClusterStorageAccountGen2InitParameters) DeepCopy() *HBaseClusterStorageAccountGen2InitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterStorageAccountGen2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterStorageAccountGen2Observation) DeepCopyInto(out *HBaseClusterStorageAccountGen2Observation) { *out = *in @@ -1751,6 +2553,31 @@ func (in *HBaseClusterStorageAccountGen2Parameters) DeepCopy() *HBaseClusterStor return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HBaseClusterStorageAccountInitParameters) DeepCopyInto(out *HBaseClusterStorageAccountInitParameters) { + *out = *in + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HBaseClusterStorageAccountInitParameters. +func (in *HBaseClusterStorageAccountInitParameters) DeepCopy() *HBaseClusterStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(HBaseClusterStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HBaseClusterStorageAccountObservation) DeepCopyInto(out *HBaseClusterStorageAccountObservation) { *out = *in @@ -1822,6 +2649,52 @@ func (in *HBaseClusterStorageAccountParameters) DeepCopy() *HBaseClusterStorageA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPSEndpointsInitParameters) DeepCopyInto(out *HTTPSEndpointsInitParameters) { + *out = *in + if in.AccessModes != nil { + in, out := &in.AccessModes, &out.AccessModes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationPort != nil { + in, out := &in.DestinationPort, &out.DestinationPort + *out = new(float64) + **out = **in + } + if in.DisableGatewayAuth != nil { + in, out := &in.DisableGatewayAuth, &out.DisableGatewayAuth + *out = new(bool) + **out = **in + } + if in.PrivateIPAddress != nil { + in, out := &in.PrivateIPAddress, &out.PrivateIPAddress + *out = new(string) + **out = **in + } + if in.SubDomainSuffix != nil { + in, out := &in.SubDomainSuffix, &out.SubDomainSuffix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPSEndpointsInitParameters. +func (in *HTTPSEndpointsInitParameters) DeepCopy() *HTTPSEndpointsInitParameters { + if in == nil { + return nil + } + out := new(HTTPSEndpointsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HTTPSEndpointsObservation) DeepCopyInto(out *HTTPSEndpointsObservation) { *out = *in @@ -1942,19 +2815,153 @@ func (in *HadoopCluster) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HadoopClusterList) DeepCopyInto(out *HadoopClusterList) { +func (in *HadoopClusterInitParameters) DeepCopyInto(out *HadoopClusterInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]HadoopCluster, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - + if in.ClusterVersion != nil { + in, out := &in.ClusterVersion, &out.ClusterVersion + *out = new(string) + **out = **in + } + if in.ComponentVersion != nil { + in, out := &in.ComponentVersion, &out.ComponentVersion + *out = make([]ComponentVersionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ComputeIsolation != nil { + in, out := &in.ComputeIsolation, &out.ComputeIsolation + *out = make([]ComputeIsolationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryption != nil { + in, out := &in.DiskEncryption, &out.DiskEncryption + *out = make([]DiskEncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]ExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Gateway != nil { + in, out := &in.Gateway, &out.Gateway + *out = make([]GatewayInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Metastores != nil { + in, out := &in.Metastores, &out.Metastores + *out = make([]MetastoresInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Monitor != nil { + in, out := &in.Monitor, &out.Monitor + *out = make([]MonitorInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = make([]NetworkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Roles != nil { + in, out := &in.Roles, &out.Roles + *out = make([]RolesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityProfile != nil { + in, out := &in.SecurityProfile, &out.SecurityProfile + *out = make([]SecurityProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]StorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccountGen2 != nil { + in, out := &in.StorageAccountGen2, &out.StorageAccountGen2 + *out = make([]StorageAccountGen2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TLSMinVersion != nil { + in, out := &in.TLSMinVersion, &out.TLSMinVersion + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HadoopClusterInitParameters. +func (in *HadoopClusterInitParameters) DeepCopy() *HadoopClusterInitParameters { + if in == nil { + return nil + } + out := new(HadoopClusterInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HadoopClusterList) DeepCopyInto(out *HadoopClusterList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]HadoopCluster, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HadoopClusterList. func (in *HadoopClusterList) DeepCopy() *HadoopClusterList { if in == nil { @@ -2281,6 +3288,7 @@ func (in *HadoopClusterSpec) DeepCopyInto(out *HadoopClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HadoopClusterSpec. @@ -2310,6 +3318,54 @@ func (in *HadoopClusterStatus) DeepCopy() *HadoopClusterStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HeadNodeInitParameters) DeepCopyInto(out *HeadNodeInitParameters) { + *out = *in + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]ScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadNodeInitParameters. +func (in *HeadNodeInitParameters) DeepCopy() *HeadNodeInitParameters { + if in == nil { + return nil + } + out := new(HeadNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HeadNodeObservation) DeepCopyInto(out *HeadNodeObservation) { *out = *in @@ -2431,6 +3487,36 @@ func (in *HeadNodeParameters) DeepCopy() *HeadNodeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HeadNodeScriptActionsInitParameters) DeepCopyInto(out *HeadNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadNodeScriptActionsInitParameters. +func (in *HeadNodeScriptActionsInitParameters) DeepCopy() *HeadNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(HeadNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HeadNodeScriptActionsObservation) DeepCopyInto(out *HeadNodeScriptActionsObservation) { *out = *in @@ -2491,6 +3577,36 @@ func (in *HeadNodeScriptActionsParameters) DeepCopy() *HeadNodeScriptActionsPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HiveInitParameters) DeepCopyInto(out *HiveInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HiveInitParameters. +func (in *HiveInitParameters) DeepCopy() *HiveInitParameters { + if in == nil { + return nil + } + out := new(HiveInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HiveObservation) DeepCopyInto(out *HiveObservation) { *out = *in @@ -2552,6 +3668,36 @@ func (in *HiveParameters) DeepCopy() *HiveParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstallScriptActionInitParameters) DeepCopyInto(out *InstallScriptActionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallScriptActionInitParameters. +func (in *InstallScriptActionInitParameters) DeepCopy() *InstallScriptActionInitParameters { + if in == nil { + return nil + } + out := new(InstallScriptActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InstallScriptActionObservation) DeepCopyInto(out *InstallScriptActionObservation) { *out = *in @@ -2640,7 +3786,7 @@ func (in *InteractiveQueryCluster) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterComponentVersionObservation) DeepCopyInto(out *InteractiveQueryClusterComponentVersionObservation) { +func (in *InteractiveQueryClusterComponentVersionInitParameters) DeepCopyInto(out *InteractiveQueryClusterComponentVersionInitParameters) { *out = *in if in.InteractiveHive != nil { in, out := &in.InteractiveHive, &out.InteractiveHive @@ -2649,18 +3795,38 @@ func (in *InteractiveQueryClusterComponentVersionObservation) DeepCopyInto(out * } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterComponentVersionObservation. -func (in *InteractiveQueryClusterComponentVersionObservation) DeepCopy() *InteractiveQueryClusterComponentVersionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterComponentVersionInitParameters. +func (in *InteractiveQueryClusterComponentVersionInitParameters) DeepCopy() *InteractiveQueryClusterComponentVersionInitParameters { if in == nil { return nil } - out := new(InteractiveQueryClusterComponentVersionObservation) + out := new(InteractiveQueryClusterComponentVersionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterComponentVersionParameters) DeepCopyInto(out *InteractiveQueryClusterComponentVersionParameters) { +func (in *InteractiveQueryClusterComponentVersionObservation) DeepCopyInto(out *InteractiveQueryClusterComponentVersionObservation) { + *out = *in + if in.InteractiveHive != nil { + in, out := &in.InteractiveHive, &out.InteractiveHive + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterComponentVersionObservation. +func (in *InteractiveQueryClusterComponentVersionObservation) DeepCopy() *InteractiveQueryClusterComponentVersionObservation { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterComponentVersionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterComponentVersionParameters) DeepCopyInto(out *InteractiveQueryClusterComponentVersionParameters) { *out = *in if in.InteractiveHive != nil { in, out := &in.InteractiveHive, &out.InteractiveHive @@ -2679,6 +3845,31 @@ func (in *InteractiveQueryClusterComponentVersionParameters) DeepCopy() *Interac return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterComputeIsolationInitParameters) DeepCopyInto(out *InteractiveQueryClusterComputeIsolationInitParameters) { + *out = *in + if in.ComputeIsolationEnabled != nil { + in, out := &in.ComputeIsolationEnabled, &out.ComputeIsolationEnabled + *out = new(bool) + **out = **in + } + if in.HostSku != nil { + in, out := &in.HostSku, &out.HostSku + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterComputeIsolationInitParameters. +func (in *InteractiveQueryClusterComputeIsolationInitParameters) DeepCopy() *InteractiveQueryClusterComputeIsolationInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterComputeIsolationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterComputeIsolationObservation) DeepCopyInto(out *InteractiveQueryClusterComputeIsolationObservation) { *out = *in @@ -2729,6 +3920,41 @@ func (in *InteractiveQueryClusterComputeIsolationParameters) DeepCopy() *Interac return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterDiskEncryptionInitParameters) DeepCopyInto(out *InteractiveQueryClusterDiskEncryptionInitParameters) { + *out = *in + if in.EncryptionAlgorithm != nil { + in, out := &in.EncryptionAlgorithm, &out.EncryptionAlgorithm + *out = new(string) + **out = **in + } + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.KeyVaultManagedIdentityID != nil { + in, out := &in.KeyVaultManagedIdentityID, &out.KeyVaultManagedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterDiskEncryptionInitParameters. +func (in *InteractiveQueryClusterDiskEncryptionInitParameters) DeepCopy() *InteractiveQueryClusterDiskEncryptionInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterDiskEncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterDiskEncryptionObservation) DeepCopyInto(out *InteractiveQueryClusterDiskEncryptionObservation) { *out = *in @@ -2799,6 +4025,26 @@ func (in *InteractiveQueryClusterDiskEncryptionParameters) DeepCopy() *Interacti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterExtensionInitParameters) DeepCopyInto(out *InteractiveQueryClusterExtensionInitParameters) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterExtensionInitParameters. +func (in *InteractiveQueryClusterExtensionInitParameters) DeepCopy() *InteractiveQueryClusterExtensionInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterExtensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterExtensionObservation) DeepCopyInto(out *InteractiveQueryClusterExtensionObservation) { *out = *in @@ -2840,6 +4086,26 @@ func (in *InteractiveQueryClusterExtensionParameters) DeepCopy() *InteractiveQue return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterGatewayInitParameters) DeepCopyInto(out *InteractiveQueryClusterGatewayInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterGatewayInitParameters. +func (in *InteractiveQueryClusterGatewayInitParameters) DeepCopy() *InteractiveQueryClusterGatewayInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterGatewayObservation) DeepCopyInto(out *InteractiveQueryClusterGatewayObservation) { *out = *in @@ -2881,6 +4147,145 @@ func (in *InteractiveQueryClusterGatewayParameters) DeepCopy() *InteractiveQuery return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterInitParameters) DeepCopyInto(out *InteractiveQueryClusterInitParameters) { + *out = *in + if in.ClusterVersion != nil { + in, out := &in.ClusterVersion, &out.ClusterVersion + *out = new(string) + **out = **in + } + if in.ComponentVersion != nil { + in, out := &in.ComponentVersion, &out.ComponentVersion + *out = make([]InteractiveQueryClusterComponentVersionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ComputeIsolation != nil { + in, out := &in.ComputeIsolation, &out.ComputeIsolation + *out = make([]InteractiveQueryClusterComputeIsolationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryption != nil { + in, out := &in.DiskEncryption, &out.DiskEncryption + *out = make([]InteractiveQueryClusterDiskEncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EncryptionInTransitEnabled != nil { + in, out := &in.EncryptionInTransitEnabled, &out.EncryptionInTransitEnabled + *out = new(bool) + **out = **in + } + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]InteractiveQueryClusterExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Gateway != nil { + in, out := &in.Gateway, &out.Gateway + *out = make([]InteractiveQueryClusterGatewayInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Metastores != nil { + in, out := &in.Metastores, &out.Metastores + *out = make([]InteractiveQueryClusterMetastoresInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Monitor != nil { + in, out := &in.Monitor, &out.Monitor + *out = make([]InteractiveQueryClusterMonitorInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = make([]InteractiveQueryClusterNetworkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Roles != nil { + in, out := &in.Roles, &out.Roles + *out = make([]InteractiveQueryClusterRolesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityProfile != nil { + in, out := &in.SecurityProfile, &out.SecurityProfile + *out = make([]InteractiveQueryClusterSecurityProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]InteractiveQueryClusterStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccountGen2 != nil { + in, out := &in.StorageAccountGen2, &out.StorageAccountGen2 + *out = make([]InteractiveQueryClusterStorageAccountGen2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TLSMinVersion != nil { + in, out := &in.TLSMinVersion, &out.TLSMinVersion + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterInitParameters. +func (in *InteractiveQueryClusterInitParameters) DeepCopy() *InteractiveQueryClusterInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterList) DeepCopyInto(out *InteractiveQueryClusterList) { *out = *in @@ -2914,7 +4319,7 @@ func (in *InteractiveQueryClusterList) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterMetastoresAmbariObservation) DeepCopyInto(out *InteractiveQueryClusterMetastoresAmbariObservation) { +func (in *InteractiveQueryClusterMetastoresAmbariInitParameters) DeepCopyInto(out *InteractiveQueryClusterMetastoresAmbariInitParameters) { *out = *in if in.DatabaseName != nil { in, out := &in.DatabaseName, &out.DatabaseName @@ -2933,25 +4338,24 @@ func (in *InteractiveQueryClusterMetastoresAmbariObservation) DeepCopyInto(out * } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresAmbariObservation. -func (in *InteractiveQueryClusterMetastoresAmbariObservation) DeepCopy() *InteractiveQueryClusterMetastoresAmbariObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresAmbariInitParameters. +func (in *InteractiveQueryClusterMetastoresAmbariInitParameters) DeepCopy() *InteractiveQueryClusterMetastoresAmbariInitParameters { if in == nil { return nil } - out := new(InteractiveQueryClusterMetastoresAmbariObservation) + out := new(InteractiveQueryClusterMetastoresAmbariInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterMetastoresAmbariParameters) DeepCopyInto(out *InteractiveQueryClusterMetastoresAmbariParameters) { +func (in *InteractiveQueryClusterMetastoresAmbariObservation) DeepCopyInto(out *InteractiveQueryClusterMetastoresAmbariObservation) { *out = *in if in.DatabaseName != nil { in, out := &in.DatabaseName, &out.DatabaseName *out = new(string) **out = **in } - out.PasswordSecretRef = in.PasswordSecretRef if in.Server != nil { in, out := &in.Server, &out.Server *out = new(string) @@ -2964,24 +4368,25 @@ func (in *InteractiveQueryClusterMetastoresAmbariParameters) DeepCopyInto(out *I } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresAmbariParameters. -func (in *InteractiveQueryClusterMetastoresAmbariParameters) DeepCopy() *InteractiveQueryClusterMetastoresAmbariParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresAmbariObservation. +func (in *InteractiveQueryClusterMetastoresAmbariObservation) DeepCopy() *InteractiveQueryClusterMetastoresAmbariObservation { if in == nil { return nil } - out := new(InteractiveQueryClusterMetastoresAmbariParameters) + out := new(InteractiveQueryClusterMetastoresAmbariObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterMetastoresHiveObservation) DeepCopyInto(out *InteractiveQueryClusterMetastoresHiveObservation) { +func (in *InteractiveQueryClusterMetastoresAmbariParameters) DeepCopyInto(out *InteractiveQueryClusterMetastoresAmbariParameters) { *out = *in if in.DatabaseName != nil { in, out := &in.DatabaseName, &out.DatabaseName *out = new(string) **out = **in } + out.PasswordSecretRef = in.PasswordSecretRef if in.Server != nil { in, out := &in.Server, &out.Server *out = new(string) @@ -2994,25 +4399,24 @@ func (in *InteractiveQueryClusterMetastoresHiveObservation) DeepCopyInto(out *In } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresHiveObservation. -func (in *InteractiveQueryClusterMetastoresHiveObservation) DeepCopy() *InteractiveQueryClusterMetastoresHiveObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresAmbariParameters. +func (in *InteractiveQueryClusterMetastoresAmbariParameters) DeepCopy() *InteractiveQueryClusterMetastoresAmbariParameters { if in == nil { return nil } - out := new(InteractiveQueryClusterMetastoresHiveObservation) + out := new(InteractiveQueryClusterMetastoresAmbariParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterMetastoresHiveParameters) DeepCopyInto(out *InteractiveQueryClusterMetastoresHiveParameters) { +func (in *InteractiveQueryClusterMetastoresHiveInitParameters) DeepCopyInto(out *InteractiveQueryClusterMetastoresHiveInitParameters) { *out = *in if in.DatabaseName != nil { in, out := &in.DatabaseName, &out.DatabaseName *out = new(string) **out = **in } - out.PasswordSecretRef = in.PasswordSecretRef if in.Server != nil { in, out := &in.Server, &out.Server *out = new(string) @@ -3025,18 +4429,115 @@ func (in *InteractiveQueryClusterMetastoresHiveParameters) DeepCopyInto(out *Int } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresHiveParameters. -func (in *InteractiveQueryClusterMetastoresHiveParameters) DeepCopy() *InteractiveQueryClusterMetastoresHiveParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresHiveInitParameters. +func (in *InteractiveQueryClusterMetastoresHiveInitParameters) DeepCopy() *InteractiveQueryClusterMetastoresHiveInitParameters { if in == nil { return nil } - out := new(InteractiveQueryClusterMetastoresHiveParameters) + out := new(InteractiveQueryClusterMetastoresHiveInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterMetastoresObservation) DeepCopyInto(out *InteractiveQueryClusterMetastoresObservation) { +func (in *InteractiveQueryClusterMetastoresHiveObservation) DeepCopyInto(out *InteractiveQueryClusterMetastoresHiveObservation) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresHiveObservation. +func (in *InteractiveQueryClusterMetastoresHiveObservation) DeepCopy() *InteractiveQueryClusterMetastoresHiveObservation { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterMetastoresHiveObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterMetastoresHiveParameters) DeepCopyInto(out *InteractiveQueryClusterMetastoresHiveParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + out.PasswordSecretRef = in.PasswordSecretRef + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresHiveParameters. +func (in *InteractiveQueryClusterMetastoresHiveParameters) DeepCopy() *InteractiveQueryClusterMetastoresHiveParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterMetastoresHiveParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterMetastoresInitParameters) DeepCopyInto(out *InteractiveQueryClusterMetastoresInitParameters) { + *out = *in + if in.Ambari != nil { + in, out := &in.Ambari, &out.Ambari + *out = make([]InteractiveQueryClusterMetastoresAmbariInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Hive != nil { + in, out := &in.Hive, &out.Hive + *out = make([]InteractiveQueryClusterMetastoresHiveInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Oozie != nil { + in, out := &in.Oozie, &out.Oozie + *out = make([]InteractiveQueryClusterMetastoresOozieInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresInitParameters. +func (in *InteractiveQueryClusterMetastoresInitParameters) DeepCopy() *InteractiveQueryClusterMetastoresInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterMetastoresInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterMetastoresObservation) DeepCopyInto(out *InteractiveQueryClusterMetastoresObservation) { *out = *in if in.Ambari != nil { in, out := &in.Ambari, &out.Ambari @@ -3071,6 +4572,36 @@ func (in *InteractiveQueryClusterMetastoresObservation) DeepCopy() *InteractiveQ return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterMetastoresOozieInitParameters) DeepCopyInto(out *InteractiveQueryClusterMetastoresOozieInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMetastoresOozieInitParameters. +func (in *InteractiveQueryClusterMetastoresOozieInitParameters) DeepCopy() *InteractiveQueryClusterMetastoresOozieInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterMetastoresOozieInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterMetastoresOozieObservation) DeepCopyInto(out *InteractiveQueryClusterMetastoresOozieObservation) { *out = *in @@ -3168,6 +4699,26 @@ func (in *InteractiveQueryClusterMetastoresParameters) DeepCopy() *InteractiveQu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterMonitorInitParameters) DeepCopyInto(out *InteractiveQueryClusterMonitorInitParameters) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterMonitorInitParameters. +func (in *InteractiveQueryClusterMonitorInitParameters) DeepCopy() *InteractiveQueryClusterMonitorInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterMonitorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterMonitorObservation) DeepCopyInto(out *InteractiveQueryClusterMonitorObservation) { *out = *in @@ -3209,6 +4760,31 @@ func (in *InteractiveQueryClusterMonitorParameters) DeepCopy() *InteractiveQuery return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterNetworkInitParameters) DeepCopyInto(out *InteractiveQueryClusterNetworkInitParameters) { + *out = *in + if in.ConnectionDirection != nil { + in, out := &in.ConnectionDirection, &out.ConnectionDirection + *out = new(string) + **out = **in + } + if in.PrivateLinkEnabled != nil { + in, out := &in.PrivateLinkEnabled, &out.PrivateLinkEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterNetworkInitParameters. +func (in *InteractiveQueryClusterNetworkInitParameters) DeepCopy() *InteractiveQueryClusterNetworkInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterNetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterNetworkObservation) DeepCopyInto(out *InteractiveQueryClusterNetworkObservation) { *out = *in @@ -3572,6 +5148,54 @@ func (in *InteractiveQueryClusterParameters) DeepCopy() *InteractiveQueryCluster return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterRolesHeadNodeInitParameters) DeepCopyInto(out *InteractiveQueryClusterRolesHeadNodeInitParameters) { + *out = *in + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]RolesHeadNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterRolesHeadNodeInitParameters. +func (in *InteractiveQueryClusterRolesHeadNodeInitParameters) DeepCopy() *InteractiveQueryClusterRolesHeadNodeInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterRolesHeadNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterRolesHeadNodeObservation) DeepCopyInto(out *InteractiveQueryClusterRolesHeadNodeObservation) { *out = *in @@ -3693,6 +5317,42 @@ func (in *InteractiveQueryClusterRolesHeadNodeParameters) DeepCopy() *Interactiv return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterRolesInitParameters) DeepCopyInto(out *InteractiveQueryClusterRolesInitParameters) { + *out = *in + if in.HeadNode != nil { + in, out := &in.HeadNode, &out.HeadNode + *out = make([]InteractiveQueryClusterRolesHeadNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkerNode != nil { + in, out := &in.WorkerNode, &out.WorkerNode + *out = make([]InteractiveQueryClusterRolesWorkerNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ZookeeperNode != nil { + in, out := &in.ZookeeperNode, &out.ZookeeperNode + *out = make([]InteractiveQueryClusterRolesZookeeperNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterRolesInitParameters. +func (in *InteractiveQueryClusterRolesInitParameters) DeepCopy() *InteractiveQueryClusterRolesInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterRolesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterRolesObservation) DeepCopyInto(out *InteractiveQueryClusterRolesObservation) { *out = *in @@ -3766,11 +5426,11 @@ func (in *InteractiveQueryClusterRolesParameters) DeepCopy() *InteractiveQueryCl } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterRolesWorkerNodeObservation) DeepCopyInto(out *InteractiveQueryClusterRolesWorkerNodeObservation) { +func (in *InteractiveQueryClusterRolesWorkerNodeInitParameters) DeepCopyInto(out *InteractiveQueryClusterRolesWorkerNodeInitParameters) { *out = *in if in.Autoscale != nil { in, out := &in.Autoscale, &out.Autoscale - *out = make([]RolesWorkerNodeAutoscaleObservation, len(*in)) + *out = make([]RolesWorkerNodeAutoscaleInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -3788,16 +5448,11 @@ func (in *InteractiveQueryClusterRolesWorkerNodeObservation) DeepCopyInto(out *I } if in.ScriptActions != nil { in, out := &in.ScriptActions, &out.ScriptActions - *out = make([]InteractiveQueryClusterRolesWorkerNodeScriptActionsObservation, len(*in)) + *out = make([]InteractiveQueryClusterRolesWorkerNodeScriptActionsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.SubnetID != nil { - in, out := &in.SubnetID, &out.SubnetID - *out = new(string) - **out = **in - } if in.TargetInstanceCount != nil { in, out := &in.TargetInstanceCount, &out.TargetInstanceCount *out = new(float64) @@ -3820,31 +5475,26 @@ func (in *InteractiveQueryClusterRolesWorkerNodeObservation) DeepCopyInto(out *I } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterRolesWorkerNodeObservation. -func (in *InteractiveQueryClusterRolesWorkerNodeObservation) DeepCopy() *InteractiveQueryClusterRolesWorkerNodeObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterRolesWorkerNodeInitParameters. +func (in *InteractiveQueryClusterRolesWorkerNodeInitParameters) DeepCopy() *InteractiveQueryClusterRolesWorkerNodeInitParameters { if in == nil { return nil } - out := new(InteractiveQueryClusterRolesWorkerNodeObservation) + out := new(InteractiveQueryClusterRolesWorkerNodeInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterRolesWorkerNodeParameters) DeepCopyInto(out *InteractiveQueryClusterRolesWorkerNodeParameters) { +func (in *InteractiveQueryClusterRolesWorkerNodeObservation) DeepCopyInto(out *InteractiveQueryClusterRolesWorkerNodeObservation) { *out = *in if in.Autoscale != nil { in, out := &in.Autoscale, &out.Autoscale - *out = make([]RolesWorkerNodeAutoscaleParameters, len(*in)) + *out = make([]RolesWorkerNodeAutoscaleObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.PasswordSecretRef != nil { - in, out := &in.PasswordSecretRef, &out.PasswordSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } if in.SSHKeys != nil { in, out := &in.SSHKeys, &out.SSHKeys *out = make([]*string, len(*in)) @@ -3858,7 +5508,7 @@ func (in *InteractiveQueryClusterRolesWorkerNodeParameters) DeepCopyInto(out *In } if in.ScriptActions != nil { in, out := &in.ScriptActions, &out.ScriptActions - *out = make([]InteractiveQueryClusterRolesWorkerNodeScriptActionsParameters, len(*in)) + *out = make([]InteractiveQueryClusterRolesWorkerNodeScriptActionsObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -3868,10 +5518,80 @@ func (in *InteractiveQueryClusterRolesWorkerNodeParameters) DeepCopyInto(out *In *out = new(string) **out = **in } - if in.SubnetIDRef != nil { - in, out := &in.SubnetIDRef, &out.SubnetIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.TargetInstanceCount != nil { + in, out := &in.TargetInstanceCount, &out.TargetInstanceCount + *out = new(float64) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterRolesWorkerNodeObservation. +func (in *InteractiveQueryClusterRolesWorkerNodeObservation) DeepCopy() *InteractiveQueryClusterRolesWorkerNodeObservation { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterRolesWorkerNodeObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterRolesWorkerNodeParameters) DeepCopyInto(out *InteractiveQueryClusterRolesWorkerNodeParameters) { + *out = *in + if in.Autoscale != nil { + in, out := &in.Autoscale, &out.Autoscale + *out = make([]RolesWorkerNodeAutoscaleParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PasswordSecretRef != nil { + in, out := &in.PasswordSecretRef, &out.PasswordSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]InteractiveQueryClusterRolesWorkerNodeScriptActionsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SubnetID != nil { + in, out := &in.SubnetID, &out.SubnetID + *out = new(string) + **out = **in + } + if in.SubnetIDRef != nil { + in, out := &in.SubnetIDRef, &out.SubnetIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) } if in.SubnetIDSelector != nil { in, out := &in.SubnetIDSelector, &out.SubnetIDSelector @@ -3910,6 +5630,36 @@ func (in *InteractiveQueryClusterRolesWorkerNodeParameters) DeepCopy() *Interact return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterRolesWorkerNodeScriptActionsInitParameters) DeepCopyInto(out *InteractiveQueryClusterRolesWorkerNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterRolesWorkerNodeScriptActionsInitParameters. +func (in *InteractiveQueryClusterRolesWorkerNodeScriptActionsInitParameters) DeepCopy() *InteractiveQueryClusterRolesWorkerNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterRolesWorkerNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterRolesWorkerNodeScriptActionsObservation) DeepCopyInto(out *InteractiveQueryClusterRolesWorkerNodeScriptActionsObservation) { *out = *in @@ -3970,6 +5720,54 @@ func (in *InteractiveQueryClusterRolesWorkerNodeScriptActionsParameters) DeepCop return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterRolesZookeeperNodeInitParameters) DeepCopyInto(out *InteractiveQueryClusterRolesZookeeperNodeInitParameters) { + *out = *in + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]InteractiveQueryClusterRolesZookeeperNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterRolesZookeeperNodeInitParameters. +func (in *InteractiveQueryClusterRolesZookeeperNodeInitParameters) DeepCopy() *InteractiveQueryClusterRolesZookeeperNodeInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterRolesZookeeperNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterRolesZookeeperNodeObservation) DeepCopyInto(out *InteractiveQueryClusterRolesZookeeperNodeObservation) { *out = *in @@ -4091,6 +5889,36 @@ func (in *InteractiveQueryClusterRolesZookeeperNodeParameters) DeepCopy() *Inter return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterRolesZookeeperNodeScriptActionsInitParameters) DeepCopyInto(out *InteractiveQueryClusterRolesZookeeperNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterRolesZookeeperNodeScriptActionsInitParameters. +func (in *InteractiveQueryClusterRolesZookeeperNodeScriptActionsInitParameters) DeepCopy() *InteractiveQueryClusterRolesZookeeperNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterRolesZookeeperNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterRolesZookeeperNodeScriptActionsObservation) DeepCopyInto(out *InteractiveQueryClusterRolesZookeeperNodeScriptActionsObservation) { *out = *in @@ -4151,6 +5979,63 @@ func (in *InteractiveQueryClusterRolesZookeeperNodeScriptActionsParameters) Deep return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterSecurityProfileInitParameters) DeepCopyInto(out *InteractiveQueryClusterSecurityProfileInitParameters) { + *out = *in + if in.AaddsResourceID != nil { + in, out := &in.AaddsResourceID, &out.AaddsResourceID + *out = new(string) + **out = **in + } + if in.ClusterUsersGroupDNS != nil { + in, out := &in.ClusterUsersGroupDNS, &out.ClusterUsersGroupDNS + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DomainName != nil { + in, out := &in.DomainName, &out.DomainName + *out = new(string) + **out = **in + } + if in.DomainUsername != nil { + in, out := &in.DomainUsername, &out.DomainUsername + *out = new(string) + **out = **in + } + if in.LdapsUrls != nil { + in, out := &in.LdapsUrls, &out.LdapsUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MsiResourceID != nil { + in, out := &in.MsiResourceID, &out.MsiResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterSecurityProfileInitParameters. +func (in *InteractiveQueryClusterSecurityProfileInitParameters) DeepCopy() *InteractiveQueryClusterSecurityProfileInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterSecurityProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InteractiveQueryClusterSecurityProfileObservation) DeepCopyInto(out *InteractiveQueryClusterSecurityProfileObservation) { *out = *in @@ -4271,6 +6156,7 @@ func (in *InteractiveQueryClusterSpec) DeepCopyInto(out *InteractiveQueryCluster *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterSpec. @@ -4301,7 +6187,7 @@ func (in *InteractiveQueryClusterStatus) DeepCopy() *InteractiveQueryClusterStat } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterStorageAccountGen2Observation) DeepCopyInto(out *InteractiveQueryClusterStorageAccountGen2Observation) { +func (in *InteractiveQueryClusterStorageAccountGen2InitParameters) DeepCopyInto(out *InteractiveQueryClusterStorageAccountGen2InitParameters) { *out = *in if in.FileSystemID != nil { in, out := &in.FileSystemID, &out.FileSystemID @@ -4325,18 +6211,18 @@ func (in *InteractiveQueryClusterStorageAccountGen2Observation) DeepCopyInto(out } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterStorageAccountGen2Observation. -func (in *InteractiveQueryClusterStorageAccountGen2Observation) DeepCopy() *InteractiveQueryClusterStorageAccountGen2Observation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterStorageAccountGen2InitParameters. +func (in *InteractiveQueryClusterStorageAccountGen2InitParameters) DeepCopy() *InteractiveQueryClusterStorageAccountGen2InitParameters { if in == nil { return nil } - out := new(InteractiveQueryClusterStorageAccountGen2Observation) + out := new(InteractiveQueryClusterStorageAccountGen2InitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterStorageAccountGen2Parameters) DeepCopyInto(out *InteractiveQueryClusterStorageAccountGen2Parameters) { +func (in *InteractiveQueryClusterStorageAccountGen2Observation) DeepCopyInto(out *InteractiveQueryClusterStorageAccountGen2Observation) { *out = *in if in.FileSystemID != nil { in, out := &in.FileSystemID, &out.FileSystemID @@ -4360,26 +6246,31 @@ func (in *InteractiveQueryClusterStorageAccountGen2Parameters) DeepCopyInto(out } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterStorageAccountGen2Parameters. -func (in *InteractiveQueryClusterStorageAccountGen2Parameters) DeepCopy() *InteractiveQueryClusterStorageAccountGen2Parameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterStorageAccountGen2Observation. +func (in *InteractiveQueryClusterStorageAccountGen2Observation) DeepCopy() *InteractiveQueryClusterStorageAccountGen2Observation { if in == nil { return nil } - out := new(InteractiveQueryClusterStorageAccountGen2Parameters) + out := new(InteractiveQueryClusterStorageAccountGen2Observation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterStorageAccountObservation) DeepCopyInto(out *InteractiveQueryClusterStorageAccountObservation) { +func (in *InteractiveQueryClusterStorageAccountGen2Parameters) DeepCopyInto(out *InteractiveQueryClusterStorageAccountGen2Parameters) { *out = *in + if in.FileSystemID != nil { + in, out := &in.FileSystemID, &out.FileSystemID + *out = new(string) + **out = **in + } if in.IsDefault != nil { in, out := &in.IsDefault, &out.IsDefault *out = new(bool) **out = **in } - if in.StorageContainerID != nil { - in, out := &in.StorageContainerID, &out.StorageContainerID + if in.ManagedIdentityResourceID != nil { + in, out := &in.ManagedIdentityResourceID, &out.ManagedIdentityResourceID *out = new(string) **out = **in } @@ -4390,33 +6281,88 @@ func (in *InteractiveQueryClusterStorageAccountObservation) DeepCopyInto(out *In } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterStorageAccountObservation. -func (in *InteractiveQueryClusterStorageAccountObservation) DeepCopy() *InteractiveQueryClusterStorageAccountObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterStorageAccountGen2Parameters. +func (in *InteractiveQueryClusterStorageAccountGen2Parameters) DeepCopy() *InteractiveQueryClusterStorageAccountGen2Parameters { if in == nil { return nil } - out := new(InteractiveQueryClusterStorageAccountObservation) + out := new(InteractiveQueryClusterStorageAccountGen2Parameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InteractiveQueryClusterStorageAccountParameters) DeepCopyInto(out *InteractiveQueryClusterStorageAccountParameters) { +func (in *InteractiveQueryClusterStorageAccountInitParameters) DeepCopyInto(out *InteractiveQueryClusterStorageAccountInitParameters) { *out = *in if in.IsDefault != nil { in, out := &in.IsDefault, &out.IsDefault *out = new(bool) **out = **in } - out.StorageAccountKeySecretRef = in.StorageAccountKeySecretRef - if in.StorageContainerID != nil { - in, out := &in.StorageContainerID, &out.StorageContainerID + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID *out = new(string) **out = **in } - if in.StorageContainerIDRef != nil { - in, out := &in.StorageContainerIDRef, &out.StorageContainerIDRef - *out = new(v1.Reference) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterStorageAccountInitParameters. +func (in *InteractiveQueryClusterStorageAccountInitParameters) DeepCopy() *InteractiveQueryClusterStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterStorageAccountObservation) DeepCopyInto(out *InteractiveQueryClusterStorageAccountObservation) { + *out = *in + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + if in.StorageContainerID != nil { + in, out := &in.StorageContainerID, &out.StorageContainerID + *out = new(string) + **out = **in + } + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InteractiveQueryClusterStorageAccountObservation. +func (in *InteractiveQueryClusterStorageAccountObservation) DeepCopy() *InteractiveQueryClusterStorageAccountObservation { + if in == nil { + return nil + } + out := new(InteractiveQueryClusterStorageAccountObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InteractiveQueryClusterStorageAccountParameters) DeepCopyInto(out *InteractiveQueryClusterStorageAccountParameters) { + *out = *in + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + out.StorageAccountKeySecretRef = in.StorageAccountKeySecretRef + if in.StorageContainerID != nil { + in, out := &in.StorageContainerID, &out.StorageContainerID + *out = new(string) + **out = **in + } + if in.StorageContainerIDRef != nil { + in, out := &in.StorageContainerIDRef, &out.StorageContainerIDRef + *out = new(v1.Reference) (*in).DeepCopyInto(*out) } if in.StorageContainerIDSelector != nil { @@ -4468,6 +6414,26 @@ func (in *KafkaCluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterComponentVersionInitParameters) DeepCopyInto(out *KafkaClusterComponentVersionInitParameters) { + *out = *in + if in.Kafka != nil { + in, out := &in.Kafka, &out.Kafka + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterComponentVersionInitParameters. +func (in *KafkaClusterComponentVersionInitParameters) DeepCopy() *KafkaClusterComponentVersionInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterComponentVersionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterComponentVersionObservation) DeepCopyInto(out *KafkaClusterComponentVersionObservation) { *out = *in @@ -4508,6 +6474,31 @@ func (in *KafkaClusterComponentVersionParameters) DeepCopy() *KafkaClusterCompon return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterComputeIsolationInitParameters) DeepCopyInto(out *KafkaClusterComputeIsolationInitParameters) { + *out = *in + if in.ComputeIsolationEnabled != nil { + in, out := &in.ComputeIsolationEnabled, &out.ComputeIsolationEnabled + *out = new(bool) + **out = **in + } + if in.HostSku != nil { + in, out := &in.HostSku, &out.HostSku + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterComputeIsolationInitParameters. +func (in *KafkaClusterComputeIsolationInitParameters) DeepCopy() *KafkaClusterComputeIsolationInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterComputeIsolationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterComputeIsolationObservation) DeepCopyInto(out *KafkaClusterComputeIsolationObservation) { *out = *in @@ -4559,7 +6550,7 @@ func (in *KafkaClusterComputeIsolationParameters) DeepCopy() *KafkaClusterComput } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterDiskEncryptionObservation) DeepCopyInto(out *KafkaClusterDiskEncryptionObservation) { +func (in *KafkaClusterDiskEncryptionInitParameters) DeepCopyInto(out *KafkaClusterDiskEncryptionInitParameters) { *out = *in if in.EncryptionAlgorithm != nil { in, out := &in.EncryptionAlgorithm, &out.EncryptionAlgorithm @@ -4583,18 +6574,18 @@ func (in *KafkaClusterDiskEncryptionObservation) DeepCopyInto(out *KafkaClusterD } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterDiskEncryptionObservation. -func (in *KafkaClusterDiskEncryptionObservation) DeepCopy() *KafkaClusterDiskEncryptionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterDiskEncryptionInitParameters. +func (in *KafkaClusterDiskEncryptionInitParameters) DeepCopy() *KafkaClusterDiskEncryptionInitParameters { if in == nil { return nil } - out := new(KafkaClusterDiskEncryptionObservation) + out := new(KafkaClusterDiskEncryptionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterDiskEncryptionParameters) DeepCopyInto(out *KafkaClusterDiskEncryptionParameters) { +func (in *KafkaClusterDiskEncryptionObservation) DeepCopyInto(out *KafkaClusterDiskEncryptionObservation) { *out = *in if in.EncryptionAlgorithm != nil { in, out := &in.EncryptionAlgorithm, &out.EncryptionAlgorithm @@ -4618,143 +6609,115 @@ func (in *KafkaClusterDiskEncryptionParameters) DeepCopyInto(out *KafkaClusterDi } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterDiskEncryptionParameters. -func (in *KafkaClusterDiskEncryptionParameters) DeepCopy() *KafkaClusterDiskEncryptionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterDiskEncryptionObservation. +func (in *KafkaClusterDiskEncryptionObservation) DeepCopy() *KafkaClusterDiskEncryptionObservation { if in == nil { return nil } - out := new(KafkaClusterDiskEncryptionParameters) + out := new(KafkaClusterDiskEncryptionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterExtensionObservation) DeepCopyInto(out *KafkaClusterExtensionObservation) { +func (in *KafkaClusterDiskEncryptionParameters) DeepCopyInto(out *KafkaClusterDiskEncryptionParameters) { *out = *in - if in.LogAnalyticsWorkspaceID != nil { - in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + if in.EncryptionAlgorithm != nil { + in, out := &in.EncryptionAlgorithm, &out.EncryptionAlgorithm *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterExtensionObservation. -func (in *KafkaClusterExtensionObservation) DeepCopy() *KafkaClusterExtensionObservation { - if in == nil { - return nil + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) + **out = **in } - out := new(KafkaClusterExtensionObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterExtensionParameters) DeepCopyInto(out *KafkaClusterExtensionParameters) { - *out = *in - if in.LogAnalyticsWorkspaceID != nil { - in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.KeyVaultManagedIdentityID != nil { + in, out := &in.KeyVaultManagedIdentityID, &out.KeyVaultManagedIdentityID *out = new(string) **out = **in } - out.PrimaryKeySecretRef = in.PrimaryKeySecretRef } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterExtensionParameters. -func (in *KafkaClusterExtensionParameters) DeepCopy() *KafkaClusterExtensionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterDiskEncryptionParameters. +func (in *KafkaClusterDiskEncryptionParameters) DeepCopy() *KafkaClusterDiskEncryptionParameters { if in == nil { return nil } - out := new(KafkaClusterExtensionParameters) + out := new(KafkaClusterDiskEncryptionParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterGatewayObservation) DeepCopyInto(out *KafkaClusterGatewayObservation) { +func (in *KafkaClusterExtensionInitParameters) DeepCopyInto(out *KafkaClusterExtensionInitParameters) { *out = *in - if in.Username != nil { - in, out := &in.Username, &out.Username + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterGatewayObservation. -func (in *KafkaClusterGatewayObservation) DeepCopy() *KafkaClusterGatewayObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterExtensionInitParameters. +func (in *KafkaClusterExtensionInitParameters) DeepCopy() *KafkaClusterExtensionInitParameters { if in == nil { return nil } - out := new(KafkaClusterGatewayObservation) + out := new(KafkaClusterExtensionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterGatewayParameters) DeepCopyInto(out *KafkaClusterGatewayParameters) { +func (in *KafkaClusterExtensionObservation) DeepCopyInto(out *KafkaClusterExtensionObservation) { *out = *in - out.PasswordSecretRef = in.PasswordSecretRef - if in.Username != nil { - in, out := &in.Username, &out.Username + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterGatewayParameters. -func (in *KafkaClusterGatewayParameters) DeepCopy() *KafkaClusterGatewayParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterExtensionObservation. +func (in *KafkaClusterExtensionObservation) DeepCopy() *KafkaClusterExtensionObservation { if in == nil { return nil } - out := new(KafkaClusterGatewayParameters) + out := new(KafkaClusterExtensionObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterList) DeepCopyInto(out *KafkaClusterList) { +func (in *KafkaClusterExtensionParameters) DeepCopyInto(out *KafkaClusterExtensionParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]KafkaCluster, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in } + out.PrimaryKeySecretRef = in.PrimaryKeySecretRef } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterList. -func (in *KafkaClusterList) DeepCopy() *KafkaClusterList { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterExtensionParameters. +func (in *KafkaClusterExtensionParameters) DeepCopy() *KafkaClusterExtensionParameters { if in == nil { return nil } - out := new(KafkaClusterList) + out := new(KafkaClusterExtensionParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *KafkaClusterList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterMetastoresAmbariObservation) DeepCopyInto(out *KafkaClusterMetastoresAmbariObservation) { +func (in *KafkaClusterGatewayInitParameters) DeepCopyInto(out *KafkaClusterGatewayInitParameters) { *out = *in - if in.DatabaseName != nil { - in, out := &in.DatabaseName, &out.DatabaseName - *out = new(string) - **out = **in - } - if in.Server != nil { - in, out := &in.Server, &out.Server - *out = new(string) - **out = **in - } if in.Username != nil { in, out := &in.Username, &out.Username *out = new(string) @@ -4762,30 +6725,19 @@ func (in *KafkaClusterMetastoresAmbariObservation) DeepCopyInto(out *KafkaCluste } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresAmbariObservation. -func (in *KafkaClusterMetastoresAmbariObservation) DeepCopy() *KafkaClusterMetastoresAmbariObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterGatewayInitParameters. +func (in *KafkaClusterGatewayInitParameters) DeepCopy() *KafkaClusterGatewayInitParameters { if in == nil { return nil } - out := new(KafkaClusterMetastoresAmbariObservation) + out := new(KafkaClusterGatewayInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterMetastoresAmbariParameters) DeepCopyInto(out *KafkaClusterMetastoresAmbariParameters) { +func (in *KafkaClusterGatewayObservation) DeepCopyInto(out *KafkaClusterGatewayObservation) { *out = *in - if in.DatabaseName != nil { - in, out := &in.DatabaseName, &out.DatabaseName - *out = new(string) - **out = **in - } - out.PasswordSecretRef = in.PasswordSecretRef - if in.Server != nil { - in, out := &in.Server, &out.Server - *out = new(string) - **out = **in - } if in.Username != nil { in, out := &in.Username, &out.Username *out = new(string) @@ -4793,29 +6745,20 @@ func (in *KafkaClusterMetastoresAmbariParameters) DeepCopyInto(out *KafkaCluster } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresAmbariParameters. -func (in *KafkaClusterMetastoresAmbariParameters) DeepCopy() *KafkaClusterMetastoresAmbariParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterGatewayObservation. +func (in *KafkaClusterGatewayObservation) DeepCopy() *KafkaClusterGatewayObservation { if in == nil { return nil } - out := new(KafkaClusterMetastoresAmbariParameters) + out := new(KafkaClusterGatewayObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterMetastoresHiveObservation) DeepCopyInto(out *KafkaClusterMetastoresHiveObservation) { +func (in *KafkaClusterGatewayParameters) DeepCopyInto(out *KafkaClusterGatewayParameters) { *out = *in - if in.DatabaseName != nil { - in, out := &in.DatabaseName, &out.DatabaseName - *out = new(string) - **out = **in - } - if in.Server != nil { - in, out := &in.Server, &out.Server - *out = new(string) - **out = **in - } + out.PasswordSecretRef = in.PasswordSecretRef if in.Username != nil { in, out := &in.Username, &out.Username *out = new(string) @@ -4823,28 +6766,296 @@ func (in *KafkaClusterMetastoresHiveObservation) DeepCopyInto(out *KafkaClusterM } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresHiveObservation. -func (in *KafkaClusterMetastoresHiveObservation) DeepCopy() *KafkaClusterMetastoresHiveObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterGatewayParameters. +func (in *KafkaClusterGatewayParameters) DeepCopy() *KafkaClusterGatewayParameters { if in == nil { return nil } - out := new(KafkaClusterMetastoresHiveObservation) + out := new(KafkaClusterGatewayParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *KafkaClusterMetastoresHiveParameters) DeepCopyInto(out *KafkaClusterMetastoresHiveParameters) { +func (in *KafkaClusterInitParameters) DeepCopyInto(out *KafkaClusterInitParameters) { *out = *in - if in.DatabaseName != nil { - in, out := &in.DatabaseName, &out.DatabaseName + if in.ClusterVersion != nil { + in, out := &in.ClusterVersion, &out.ClusterVersion *out = new(string) **out = **in } - out.PasswordSecretRef = in.PasswordSecretRef - if in.Server != nil { - in, out := &in.Server, &out.Server - *out = new(string) + if in.ComponentVersion != nil { + in, out := &in.ComponentVersion, &out.ComponentVersion + *out = make([]KafkaClusterComponentVersionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ComputeIsolation != nil { + in, out := &in.ComputeIsolation, &out.ComputeIsolation + *out = make([]KafkaClusterComputeIsolationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryption != nil { + in, out := &in.DiskEncryption, &out.DiskEncryption + *out = make([]KafkaClusterDiskEncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EncryptionInTransitEnabled != nil { + in, out := &in.EncryptionInTransitEnabled, &out.EncryptionInTransitEnabled + *out = new(bool) + **out = **in + } + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]KafkaClusterExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Gateway != nil { + in, out := &in.Gateway, &out.Gateway + *out = make([]KafkaClusterGatewayInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Metastores != nil { + in, out := &in.Metastores, &out.Metastores + *out = make([]KafkaClusterMetastoresInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Monitor != nil { + in, out := &in.Monitor, &out.Monitor + *out = make([]KafkaClusterMonitorInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = make([]KafkaClusterNetworkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RestProxy != nil { + in, out := &in.RestProxy, &out.RestProxy + *out = make([]RestProxyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Roles != nil { + in, out := &in.Roles, &out.Roles + *out = make([]KafkaClusterRolesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityProfile != nil { + in, out := &in.SecurityProfile, &out.SecurityProfile + *out = make([]KafkaClusterSecurityProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]KafkaClusterStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccountGen2 != nil { + in, out := &in.StorageAccountGen2, &out.StorageAccountGen2 + *out = make([]KafkaClusterStorageAccountGen2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TLSMinVersion != nil { + in, out := &in.TLSMinVersion, &out.TLSMinVersion + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterInitParameters. +func (in *KafkaClusterInitParameters) DeepCopy() *KafkaClusterInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterList) DeepCopyInto(out *KafkaClusterList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]KafkaCluster, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterList. +func (in *KafkaClusterList) DeepCopy() *KafkaClusterList { + if in == nil { + return nil + } + out := new(KafkaClusterList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *KafkaClusterList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterMetastoresAmbariInitParameters) DeepCopyInto(out *KafkaClusterMetastoresAmbariInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresAmbariInitParameters. +func (in *KafkaClusterMetastoresAmbariInitParameters) DeepCopy() *KafkaClusterMetastoresAmbariInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterMetastoresAmbariInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterMetastoresAmbariObservation) DeepCopyInto(out *KafkaClusterMetastoresAmbariObservation) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresAmbariObservation. +func (in *KafkaClusterMetastoresAmbariObservation) DeepCopy() *KafkaClusterMetastoresAmbariObservation { + if in == nil { + return nil + } + out := new(KafkaClusterMetastoresAmbariObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterMetastoresAmbariParameters) DeepCopyInto(out *KafkaClusterMetastoresAmbariParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + out.PasswordSecretRef = in.PasswordSecretRef + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresAmbariParameters. +func (in *KafkaClusterMetastoresAmbariParameters) DeepCopy() *KafkaClusterMetastoresAmbariParameters { + if in == nil { + return nil + } + out := new(KafkaClusterMetastoresAmbariParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterMetastoresHiveInitParameters) DeepCopyInto(out *KafkaClusterMetastoresHiveInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) **out = **in } if in.Username != nil { @@ -4854,12 +7065,109 @@ func (in *KafkaClusterMetastoresHiveParameters) DeepCopyInto(out *KafkaClusterMe } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresHiveParameters. -func (in *KafkaClusterMetastoresHiveParameters) DeepCopy() *KafkaClusterMetastoresHiveParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresHiveInitParameters. +func (in *KafkaClusterMetastoresHiveInitParameters) DeepCopy() *KafkaClusterMetastoresHiveInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterMetastoresHiveInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterMetastoresHiveObservation) DeepCopyInto(out *KafkaClusterMetastoresHiveObservation) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresHiveObservation. +func (in *KafkaClusterMetastoresHiveObservation) DeepCopy() *KafkaClusterMetastoresHiveObservation { + if in == nil { + return nil + } + out := new(KafkaClusterMetastoresHiveObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterMetastoresHiveParameters) DeepCopyInto(out *KafkaClusterMetastoresHiveParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + out.PasswordSecretRef = in.PasswordSecretRef + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresHiveParameters. +func (in *KafkaClusterMetastoresHiveParameters) DeepCopy() *KafkaClusterMetastoresHiveParameters { + if in == nil { + return nil + } + out := new(KafkaClusterMetastoresHiveParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterMetastoresInitParameters) DeepCopyInto(out *KafkaClusterMetastoresInitParameters) { + *out = *in + if in.Ambari != nil { + in, out := &in.Ambari, &out.Ambari + *out = make([]KafkaClusterMetastoresAmbariInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Hive != nil { + in, out := &in.Hive, &out.Hive + *out = make([]KafkaClusterMetastoresHiveInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Oozie != nil { + in, out := &in.Oozie, &out.Oozie + *out = make([]KafkaClusterMetastoresOozieInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresInitParameters. +func (in *KafkaClusterMetastoresInitParameters) DeepCopy() *KafkaClusterMetastoresInitParameters { if in == nil { return nil } - out := new(KafkaClusterMetastoresHiveParameters) + out := new(KafkaClusterMetastoresInitParameters) in.DeepCopyInto(out) return out } @@ -4900,6 +7208,36 @@ func (in *KafkaClusterMetastoresObservation) DeepCopy() *KafkaClusterMetastoresO return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterMetastoresOozieInitParameters) DeepCopyInto(out *KafkaClusterMetastoresOozieInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMetastoresOozieInitParameters. +func (in *KafkaClusterMetastoresOozieInitParameters) DeepCopy() *KafkaClusterMetastoresOozieInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterMetastoresOozieInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterMetastoresOozieObservation) DeepCopyInto(out *KafkaClusterMetastoresOozieObservation) { *out = *in @@ -4997,6 +7335,26 @@ func (in *KafkaClusterMetastoresParameters) DeepCopy() *KafkaClusterMetastoresPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterMonitorInitParameters) DeepCopyInto(out *KafkaClusterMonitorInitParameters) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterMonitorInitParameters. +func (in *KafkaClusterMonitorInitParameters) DeepCopy() *KafkaClusterMonitorInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterMonitorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterMonitorObservation) DeepCopyInto(out *KafkaClusterMonitorObservation) { *out = *in @@ -5038,6 +7396,31 @@ func (in *KafkaClusterMonitorParameters) DeepCopy() *KafkaClusterMonitorParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterNetworkInitParameters) DeepCopyInto(out *KafkaClusterNetworkInitParameters) { + *out = *in + if in.ConnectionDirection != nil { + in, out := &in.ConnectionDirection, &out.ConnectionDirection + *out = new(string) + **out = **in + } + if in.PrivateLinkEnabled != nil { + in, out := &in.PrivateLinkEnabled, &out.PrivateLinkEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterNetworkInitParameters. +func (in *KafkaClusterNetworkInitParameters) DeepCopy() *KafkaClusterNetworkInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterNetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterNetworkObservation) DeepCopyInto(out *KafkaClusterNetworkObservation) { *out = *in @@ -5420,6 +7803,54 @@ func (in *KafkaClusterParameters) DeepCopy() *KafkaClusterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterRolesHeadNodeInitParameters) DeepCopyInto(out *KafkaClusterRolesHeadNodeInitParameters) { + *out = *in + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]KafkaClusterRolesHeadNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterRolesHeadNodeInitParameters. +func (in *KafkaClusterRolesHeadNodeInitParameters) DeepCopy() *KafkaClusterRolesHeadNodeInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterRolesHeadNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterRolesHeadNodeObservation) DeepCopyInto(out *KafkaClusterRolesHeadNodeObservation) { *out = *in @@ -5541,6 +7972,36 @@ func (in *KafkaClusterRolesHeadNodeParameters) DeepCopy() *KafkaClusterRolesHead return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterRolesHeadNodeScriptActionsInitParameters) DeepCopyInto(out *KafkaClusterRolesHeadNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterRolesHeadNodeScriptActionsInitParameters. +func (in *KafkaClusterRolesHeadNodeScriptActionsInitParameters) DeepCopy() *KafkaClusterRolesHeadNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterRolesHeadNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterRolesHeadNodeScriptActionsObservation) DeepCopyInto(out *KafkaClusterRolesHeadNodeScriptActionsObservation) { *out = *in @@ -5601,6 +8062,49 @@ func (in *KafkaClusterRolesHeadNodeScriptActionsParameters) DeepCopy() *KafkaClu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterRolesInitParameters) DeepCopyInto(out *KafkaClusterRolesInitParameters) { + *out = *in + if in.HeadNode != nil { + in, out := &in.HeadNode, &out.HeadNode + *out = make([]KafkaClusterRolesHeadNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KafkaManagementNode != nil { + in, out := &in.KafkaManagementNode, &out.KafkaManagementNode + *out = make([]KafkaManagementNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkerNode != nil { + in, out := &in.WorkerNode, &out.WorkerNode + *out = make([]KafkaClusterRolesWorkerNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ZookeeperNode != nil { + in, out := &in.ZookeeperNode, &out.ZookeeperNode + *out = make([]KafkaClusterRolesZookeeperNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterRolesInitParameters. +func (in *KafkaClusterRolesInitParameters) DeepCopy() *KafkaClusterRolesInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterRolesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterRolesObservation) DeepCopyInto(out *KafkaClusterRolesObservation) { *out = *in @@ -5687,6 +8191,64 @@ func (in *KafkaClusterRolesParameters) DeepCopy() *KafkaClusterRolesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterRolesWorkerNodeInitParameters) DeepCopyInto(out *KafkaClusterRolesWorkerNodeInitParameters) { + *out = *in + if in.NumberOfDisksPerNode != nil { + in, out := &in.NumberOfDisksPerNode, &out.NumberOfDisksPerNode + *out = new(float64) + **out = **in + } + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]KafkaClusterRolesWorkerNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetInstanceCount != nil { + in, out := &in.TargetInstanceCount, &out.TargetInstanceCount + *out = new(float64) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterRolesWorkerNodeInitParameters. +func (in *KafkaClusterRolesWorkerNodeInitParameters) DeepCopy() *KafkaClusterRolesWorkerNodeInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterRolesWorkerNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterRolesWorkerNodeObservation) DeepCopyInto(out *KafkaClusterRolesWorkerNodeObservation) { *out = *in @@ -5811,19 +8373,49 @@ func (in *KafkaClusterRolesWorkerNodeParameters) DeepCopyInto(out *KafkaClusterR *out = new(string) **out = **in } - if in.VirtualNetworkID != nil { - in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterRolesWorkerNodeParameters. +func (in *KafkaClusterRolesWorkerNodeParameters) DeepCopy() *KafkaClusterRolesWorkerNodeParameters { + if in == nil { + return nil + } + out := new(KafkaClusterRolesWorkerNodeParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterRolesWorkerNodeScriptActionsInitParameters) DeepCopyInto(out *KafkaClusterRolesWorkerNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterRolesWorkerNodeParameters. -func (in *KafkaClusterRolesWorkerNodeParameters) DeepCopy() *KafkaClusterRolesWorkerNodeParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterRolesWorkerNodeScriptActionsInitParameters. +func (in *KafkaClusterRolesWorkerNodeScriptActionsInitParameters) DeepCopy() *KafkaClusterRolesWorkerNodeScriptActionsInitParameters { if in == nil { return nil } - out := new(KafkaClusterRolesWorkerNodeParameters) + out := new(KafkaClusterRolesWorkerNodeScriptActionsInitParameters) in.DeepCopyInto(out) return out } @@ -5888,6 +8480,54 @@ func (in *KafkaClusterRolesWorkerNodeScriptActionsParameters) DeepCopy() *KafkaC return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterRolesZookeeperNodeInitParameters) DeepCopyInto(out *KafkaClusterRolesZookeeperNodeInitParameters) { + *out = *in + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]KafkaClusterRolesZookeeperNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterRolesZookeeperNodeInitParameters. +func (in *KafkaClusterRolesZookeeperNodeInitParameters) DeepCopy() *KafkaClusterRolesZookeeperNodeInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterRolesZookeeperNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterRolesZookeeperNodeObservation) DeepCopyInto(out *KafkaClusterRolesZookeeperNodeObservation) { *out = *in @@ -6009,6 +8649,36 @@ func (in *KafkaClusterRolesZookeeperNodeParameters) DeepCopy() *KafkaClusterRole return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterRolesZookeeperNodeScriptActionsInitParameters) DeepCopyInto(out *KafkaClusterRolesZookeeperNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterRolesZookeeperNodeScriptActionsInitParameters. +func (in *KafkaClusterRolesZookeeperNodeScriptActionsInitParameters) DeepCopy() *KafkaClusterRolesZookeeperNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterRolesZookeeperNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterRolesZookeeperNodeScriptActionsObservation) DeepCopyInto(out *KafkaClusterRolesZookeeperNodeScriptActionsObservation) { *out = *in @@ -6069,6 +8739,63 @@ func (in *KafkaClusterRolesZookeeperNodeScriptActionsParameters) DeepCopy() *Kaf return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterSecurityProfileInitParameters) DeepCopyInto(out *KafkaClusterSecurityProfileInitParameters) { + *out = *in + if in.AaddsResourceID != nil { + in, out := &in.AaddsResourceID, &out.AaddsResourceID + *out = new(string) + **out = **in + } + if in.ClusterUsersGroupDNS != nil { + in, out := &in.ClusterUsersGroupDNS, &out.ClusterUsersGroupDNS + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DomainName != nil { + in, out := &in.DomainName, &out.DomainName + *out = new(string) + **out = **in + } + if in.DomainUsername != nil { + in, out := &in.DomainUsername, &out.DomainUsername + *out = new(string) + **out = **in + } + if in.LdapsUrls != nil { + in, out := &in.LdapsUrls, &out.LdapsUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MsiResourceID != nil { + in, out := &in.MsiResourceID, &out.MsiResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterSecurityProfileInitParameters. +func (in *KafkaClusterSecurityProfileInitParameters) DeepCopy() *KafkaClusterSecurityProfileInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterSecurityProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterSecurityProfileObservation) DeepCopyInto(out *KafkaClusterSecurityProfileObservation) { *out = *in @@ -6189,6 +8916,7 @@ func (in *KafkaClusterSpec) DeepCopyInto(out *KafkaClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterSpec. @@ -6218,6 +8946,41 @@ func (in *KafkaClusterStatus) DeepCopy() *KafkaClusterStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterStorageAccountGen2InitParameters) DeepCopyInto(out *KafkaClusterStorageAccountGen2InitParameters) { + *out = *in + if in.FileSystemID != nil { + in, out := &in.FileSystemID, &out.FileSystemID + *out = new(string) + **out = **in + } + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + if in.ManagedIdentityResourceID != nil { + in, out := &in.ManagedIdentityResourceID, &out.ManagedIdentityResourceID + *out = new(string) + **out = **in + } + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterStorageAccountGen2InitParameters. +func (in *KafkaClusterStorageAccountGen2InitParameters) DeepCopy() *KafkaClusterStorageAccountGen2InitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterStorageAccountGen2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterStorageAccountGen2Observation) DeepCopyInto(out *KafkaClusterStorageAccountGen2Observation) { *out = *in @@ -6288,6 +9051,31 @@ func (in *KafkaClusterStorageAccountGen2Parameters) DeepCopy() *KafkaClusterStor return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaClusterStorageAccountInitParameters) DeepCopyInto(out *KafkaClusterStorageAccountInitParameters) { + *out = *in + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterStorageAccountInitParameters. +func (in *KafkaClusterStorageAccountInitParameters) DeepCopy() *KafkaClusterStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(KafkaClusterStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaClusterStorageAccountObservation) DeepCopyInto(out *KafkaClusterStorageAccountObservation) { *out = *in @@ -6359,6 +9147,54 @@ func (in *KafkaClusterStorageAccountParameters) DeepCopy() *KafkaClusterStorageA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaManagementNodeInitParameters) DeepCopyInto(out *KafkaManagementNodeInitParameters) { + *out = *in + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]KafkaManagementNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaManagementNodeInitParameters. +func (in *KafkaManagementNodeInitParameters) DeepCopy() *KafkaManagementNodeInitParameters { + if in == nil { + return nil + } + out := new(KafkaManagementNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KafkaManagementNodeObservation) DeepCopyInto(out *KafkaManagementNodeObservation) { *out = *in @@ -6458,24 +9294,54 @@ func (in *KafkaManagementNodeParameters) DeepCopyInto(out *KafkaManagementNodePa *out = new(string) **out = **in } - if in.VMSize != nil { - in, out := &in.VMSize, &out.VMSize + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaManagementNodeParameters. +func (in *KafkaManagementNodeParameters) DeepCopy() *KafkaManagementNodeParameters { + if in == nil { + return nil + } + out := new(KafkaManagementNodeParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KafkaManagementNodeScriptActionsInitParameters) DeepCopyInto(out *KafkaManagementNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters *out = new(string) **out = **in } - if in.VirtualNetworkID != nil { - in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + if in.URI != nil { + in, out := &in.URI, &out.URI *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaManagementNodeParameters. -func (in *KafkaManagementNodeParameters) DeepCopy() *KafkaManagementNodeParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaManagementNodeScriptActionsInitParameters. +func (in *KafkaManagementNodeScriptActionsInitParameters) DeepCopy() *KafkaManagementNodeScriptActionsInitParameters { if in == nil { return nil } - out := new(KafkaManagementNodeParameters) + out := new(KafkaManagementNodeScriptActionsInitParameters) in.DeepCopyInto(out) return out } @@ -6540,6 +9406,36 @@ func (in *KafkaManagementNodeScriptActionsParameters) DeepCopy() *KafkaManagemen return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MetastoresAmbariInitParameters) DeepCopyInto(out *MetastoresAmbariInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetastoresAmbariInitParameters. +func (in *MetastoresAmbariInitParameters) DeepCopy() *MetastoresAmbariInitParameters { + if in == nil { + return nil + } + out := new(MetastoresAmbariInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MetastoresAmbariObservation) DeepCopyInto(out *MetastoresAmbariObservation) { *out = *in @@ -6601,6 +9497,36 @@ func (in *MetastoresAmbariParameters) DeepCopy() *MetastoresAmbariParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MetastoresHiveInitParameters) DeepCopyInto(out *MetastoresHiveInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetastoresHiveInitParameters. +func (in *MetastoresHiveInitParameters) DeepCopy() *MetastoresHiveInitParameters { + if in == nil { + return nil + } + out := new(MetastoresHiveInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MetastoresHiveObservation) DeepCopyInto(out *MetastoresHiveObservation) { *out = *in @@ -6662,6 +9588,42 @@ func (in *MetastoresHiveParameters) DeepCopy() *MetastoresHiveParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MetastoresInitParameters) DeepCopyInto(out *MetastoresInitParameters) { + *out = *in + if in.Ambari != nil { + in, out := &in.Ambari, &out.Ambari + *out = make([]AmbariInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Hive != nil { + in, out := &in.Hive, &out.Hive + *out = make([]HiveInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Oozie != nil { + in, out := &in.Oozie, &out.Oozie + *out = make([]OozieInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetastoresInitParameters. +func (in *MetastoresInitParameters) DeepCopy() *MetastoresInitParameters { + if in == nil { + return nil + } + out := new(MetastoresInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MetastoresObservation) DeepCopyInto(out *MetastoresObservation) { *out = *in @@ -6698,6 +9660,36 @@ func (in *MetastoresObservation) DeepCopy() *MetastoresObservation { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MetastoresOozieInitParameters) DeepCopyInto(out *MetastoresOozieInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetastoresOozieInitParameters. +func (in *MetastoresOozieInitParameters) DeepCopy() *MetastoresOozieInitParameters { + if in == nil { + return nil + } + out := new(MetastoresOozieInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MetastoresOozieObservation) DeepCopyInto(out *MetastoresOozieObservation) { *out = *in @@ -6795,6 +9787,26 @@ func (in *MetastoresParameters) DeepCopy() *MetastoresParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorInitParameters) DeepCopyInto(out *MonitorInitParameters) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorInitParameters. +func (in *MonitorInitParameters) DeepCopy() *MonitorInitParameters { + if in == nil { + return nil + } + out := new(MonitorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorObservation) DeepCopyInto(out *MonitorObservation) { *out = *in @@ -6836,6 +9848,31 @@ func (in *MonitorParameters) DeepCopy() *MonitorParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkInitParameters) DeepCopyInto(out *NetworkInitParameters) { + *out = *in + if in.ConnectionDirection != nil { + in, out := &in.ConnectionDirection, &out.ConnectionDirection + *out = new(string) + **out = **in + } + if in.PrivateLinkEnabled != nil { + in, out := &in.PrivateLinkEnabled, &out.PrivateLinkEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInitParameters. +func (in *NetworkInitParameters) DeepCopy() *NetworkInitParameters { + if in == nil { + return nil + } + out := new(NetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkObservation) DeepCopyInto(out *NetworkObservation) { *out = *in @@ -6886,6 +9923,36 @@ func (in *NetworkParameters) DeepCopy() *NetworkParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OozieInitParameters) DeepCopyInto(out *OozieInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OozieInitParameters. +func (in *OozieInitParameters) DeepCopy() *OozieInitParameters { + if in == nil { + return nil + } + out := new(OozieInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OozieObservation) DeepCopyInto(out *OozieObservation) { *out = *in @@ -6947,6 +10014,33 @@ func (in *OozieParameters) DeepCopy() *OozieParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecurrenceInitParameters) DeepCopyInto(out *RecurrenceInitParameters) { + *out = *in + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]ScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceInitParameters. +func (in *RecurrenceInitParameters) DeepCopy() *RecurrenceInitParameters { + if in == nil { + return nil + } + out := new(RecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecurrenceObservation) DeepCopyInto(out *RecurrenceObservation) { *out = *in @@ -7001,6 +10095,42 @@ func (in *RecurrenceParameters) DeepCopy() *RecurrenceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecurrenceScheduleInitParameters) DeepCopyInto(out *RecurrenceScheduleInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TargetInstanceCount != nil { + in, out := &in.TargetInstanceCount, &out.TargetInstanceCount + *out = new(float64) + **out = **in + } + if in.Time != nil { + in, out := &in.Time, &out.Time + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceScheduleInitParameters. +func (in *RecurrenceScheduleInitParameters) DeepCopy() *RecurrenceScheduleInitParameters { + if in == nil { + return nil + } + out := new(RecurrenceScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecurrenceScheduleObservation) DeepCopyInto(out *RecurrenceScheduleObservation) { *out = *in @@ -7073,6 +10203,31 @@ func (in *RecurrenceScheduleParameters) DeepCopy() *RecurrenceScheduleParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RestProxyInitParameters) DeepCopyInto(out *RestProxyInitParameters) { + *out = *in + if in.SecurityGroupID != nil { + in, out := &in.SecurityGroupID, &out.SecurityGroupID + *out = new(string) + **out = **in + } + if in.SecurityGroupName != nil { + in, out := &in.SecurityGroupName, &out.SecurityGroupName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestProxyInitParameters. +func (in *RestProxyInitParameters) DeepCopy() *RestProxyInitParameters { + if in == nil { + return nil + } + out := new(RestProxyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RestProxyObservation) DeepCopyInto(out *RestProxyObservation) { *out = *in @@ -7123,6 +10278,54 @@ func (in *RestProxyParameters) DeepCopy() *RestProxyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RolesHeadNodeInitParameters) DeepCopyInto(out *RolesHeadNodeInitParameters) { + *out = *in + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]HeadNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesHeadNodeInitParameters. +func (in *RolesHeadNodeInitParameters) DeepCopy() *RolesHeadNodeInitParameters { + if in == nil { + return nil + } + out := new(RolesHeadNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RolesHeadNodeObservation) DeepCopyInto(out *RolesHeadNodeObservation) { *out = *in @@ -7244,6 +10447,36 @@ func (in *RolesHeadNodeParameters) DeepCopy() *RolesHeadNodeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RolesHeadNodeScriptActionsInitParameters) DeepCopyInto(out *RolesHeadNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesHeadNodeScriptActionsInitParameters. +func (in *RolesHeadNodeScriptActionsInitParameters) DeepCopy() *RolesHeadNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(RolesHeadNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RolesHeadNodeScriptActionsObservation) DeepCopyInto(out *RolesHeadNodeScriptActionsObservation) { *out = *in @@ -7304,6 +10537,49 @@ func (in *RolesHeadNodeScriptActionsParameters) DeepCopy() *RolesHeadNodeScriptA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RolesInitParameters) DeepCopyInto(out *RolesInitParameters) { + *out = *in + if in.EdgeNode != nil { + in, out := &in.EdgeNode, &out.EdgeNode + *out = make([]EdgeNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HeadNode != nil { + in, out := &in.HeadNode, &out.HeadNode + *out = make([]HeadNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkerNode != nil { + in, out := &in.WorkerNode, &out.WorkerNode + *out = make([]WorkerNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ZookeeperNode != nil { + in, out := &in.ZookeeperNode, &out.ZookeeperNode + *out = make([]ZookeeperNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesInitParameters. +func (in *RolesInitParameters) DeepCopy() *RolesInitParameters { + if in == nil { + return nil + } + out := new(RolesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RolesObservation) DeepCopyInto(out *RolesObservation) { *out = *in @@ -7390,6 +10666,35 @@ func (in *RolesParameters) DeepCopy() *RolesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RolesWorkerNodeAutoscaleInitParameters) DeepCopyInto(out *RolesWorkerNodeAutoscaleInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make([]AutoscaleCapacityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Recurrence != nil { + in, out := &in.Recurrence, &out.Recurrence + *out = make([]WorkerNodeAutoscaleRecurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesWorkerNodeAutoscaleInitParameters. +func (in *RolesWorkerNodeAutoscaleInitParameters) DeepCopy() *RolesWorkerNodeAutoscaleInitParameters { + if in == nil { + return nil + } + out := new(RolesWorkerNodeAutoscaleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RolesWorkerNodeAutoscaleObservation) DeepCopyInto(out *RolesWorkerNodeAutoscaleObservation) { *out = *in @@ -7448,6 +10753,33 @@ func (in *RolesWorkerNodeAutoscaleParameters) DeepCopy() *RolesWorkerNodeAutosca return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RolesWorkerNodeAutoscaleRecurrenceInitParameters) DeepCopyInto(out *RolesWorkerNodeAutoscaleRecurrenceInitParameters) { + *out = *in + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]WorkerNodeAutoscaleRecurrenceScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesWorkerNodeAutoscaleRecurrenceInitParameters. +func (in *RolesWorkerNodeAutoscaleRecurrenceInitParameters) DeepCopy() *RolesWorkerNodeAutoscaleRecurrenceInitParameters { + if in == nil { + return nil + } + out := new(RolesWorkerNodeAutoscaleRecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RolesWorkerNodeAutoscaleRecurrenceObservation) DeepCopyInto(out *RolesWorkerNodeAutoscaleRecurrenceObservation) { *out = *in @@ -7502,6 +10834,66 @@ func (in *RolesWorkerNodeAutoscaleRecurrenceParameters) DeepCopy() *RolesWorkerN return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RolesWorkerNodeInitParameters) DeepCopyInto(out *RolesWorkerNodeInitParameters) { + *out = *in + if in.Autoscale != nil { + in, out := &in.Autoscale, &out.Autoscale + *out = make([]WorkerNodeAutoscaleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]RolesWorkerNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetInstanceCount != nil { + in, out := &in.TargetInstanceCount, &out.TargetInstanceCount + *out = new(float64) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesWorkerNodeInitParameters. +func (in *RolesWorkerNodeInitParameters) DeepCopy() *RolesWorkerNodeInitParameters { + if in == nil { + return nil + } + out := new(RolesWorkerNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RolesWorkerNodeObservation) DeepCopyInto(out *RolesWorkerNodeObservation) { *out = *in @@ -7647,6 +11039,36 @@ func (in *RolesWorkerNodeParameters) DeepCopy() *RolesWorkerNodeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RolesWorkerNodeScriptActionsInitParameters) DeepCopyInto(out *RolesWorkerNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesWorkerNodeScriptActionsInitParameters. +func (in *RolesWorkerNodeScriptActionsInitParameters) DeepCopy() *RolesWorkerNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(RolesWorkerNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RolesWorkerNodeScriptActionsObservation) DeepCopyInto(out *RolesWorkerNodeScriptActionsObservation) { *out = *in @@ -7672,37 +11094,85 @@ func (in *RolesWorkerNodeScriptActionsObservation) DeepCopy() *RolesWorkerNodeSc if in == nil { return nil } - out := new(RolesWorkerNodeScriptActionsObservation) + out := new(RolesWorkerNodeScriptActionsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RolesWorkerNodeScriptActionsParameters) DeepCopyInto(out *RolesWorkerNodeScriptActionsParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesWorkerNodeScriptActionsParameters. +func (in *RolesWorkerNodeScriptActionsParameters) DeepCopy() *RolesWorkerNodeScriptActionsParameters { + if in == nil { + return nil + } + out := new(RolesWorkerNodeScriptActionsParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RolesWorkerNodeScriptActionsParameters) DeepCopyInto(out *RolesWorkerNodeScriptActionsParameters) { +func (in *RolesZookeeperNodeInitParameters) DeepCopyInto(out *RolesZookeeperNodeInitParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]RolesZookeeperNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username *out = new(string) **out = **in } - if in.Parameters != nil { - in, out := &in.Parameters, &out.Parameters + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize *out = new(string) **out = **in } - if in.URI != nil { - in, out := &in.URI, &out.URI + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesWorkerNodeScriptActionsParameters. -func (in *RolesWorkerNodeScriptActionsParameters) DeepCopy() *RolesWorkerNodeScriptActionsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesZookeeperNodeInitParameters. +func (in *RolesZookeeperNodeInitParameters) DeepCopy() *RolesZookeeperNodeInitParameters { if in == nil { return nil } - out := new(RolesWorkerNodeScriptActionsParameters) + out := new(RolesZookeeperNodeInitParameters) in.DeepCopyInto(out) return out } @@ -7828,6 +11298,36 @@ func (in *RolesZookeeperNodeParameters) DeepCopy() *RolesZookeeperNodeParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RolesZookeeperNodeScriptActionsInitParameters) DeepCopyInto(out *RolesZookeeperNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolesZookeeperNodeScriptActionsInitParameters. +func (in *RolesZookeeperNodeScriptActionsInitParameters) DeepCopy() *RolesZookeeperNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(RolesZookeeperNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RolesZookeeperNodeScriptActionsObservation) DeepCopyInto(out *RolesZookeeperNodeScriptActionsObservation) { *out = *in @@ -7888,6 +11388,42 @@ func (in *RolesZookeeperNodeScriptActionsParameters) DeepCopy() *RolesZookeeperN return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScheduleInitParameters) DeepCopyInto(out *ScheduleInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TargetInstanceCount != nil { + in, out := &in.TargetInstanceCount, &out.TargetInstanceCount + *out = new(float64) + **out = **in + } + if in.Time != nil { + in, out := &in.Time, &out.Time + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleInitParameters. +func (in *ScheduleInitParameters) DeepCopy() *ScheduleInitParameters { + if in == nil { + return nil + } + out := new(ScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScheduleObservation) DeepCopyInto(out *ScheduleObservation) { *out = *in @@ -7960,6 +11496,36 @@ func (in *ScheduleParameters) DeepCopy() *ScheduleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScriptActionsInitParameters) DeepCopyInto(out *ScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScriptActionsInitParameters. +func (in *ScriptActionsInitParameters) DeepCopy() *ScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(ScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScriptActionsObservation) DeepCopyInto(out *ScriptActionsObservation) { *out = *in @@ -8020,6 +11586,63 @@ func (in *ScriptActionsParameters) DeepCopy() *ScriptActionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityProfileInitParameters) DeepCopyInto(out *SecurityProfileInitParameters) { + *out = *in + if in.AaddsResourceID != nil { + in, out := &in.AaddsResourceID, &out.AaddsResourceID + *out = new(string) + **out = **in + } + if in.ClusterUsersGroupDNS != nil { + in, out := &in.ClusterUsersGroupDNS, &out.ClusterUsersGroupDNS + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DomainName != nil { + in, out := &in.DomainName, &out.DomainName + *out = new(string) + **out = **in + } + if in.DomainUsername != nil { + in, out := &in.DomainUsername, &out.DomainUsername + *out = new(string) + **out = **in + } + if in.LdapsUrls != nil { + in, out := &in.LdapsUrls, &out.LdapsUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MsiResourceID != nil { + in, out := &in.MsiResourceID, &out.MsiResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfileInitParameters. +func (in *SecurityProfileInitParameters) DeepCopy() *SecurityProfileInitParameters { + if in == nil { + return nil + } + out := new(SecurityProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityProfileObservation) DeepCopyInto(out *SecurityProfileObservation) { *out = *in @@ -8162,6 +11785,26 @@ func (in *SparkCluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterComponentVersionInitParameters) DeepCopyInto(out *SparkClusterComponentVersionInitParameters) { + *out = *in + if in.Spark != nil { + in, out := &in.Spark, &out.Spark + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterComponentVersionInitParameters. +func (in *SparkClusterComponentVersionInitParameters) DeepCopy() *SparkClusterComponentVersionInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterComponentVersionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterComponentVersionObservation) DeepCopyInto(out *SparkClusterComponentVersionObservation) { *out = *in @@ -8202,6 +11845,31 @@ func (in *SparkClusterComponentVersionParameters) DeepCopy() *SparkClusterCompon return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterComputeIsolationInitParameters) DeepCopyInto(out *SparkClusterComputeIsolationInitParameters) { + *out = *in + if in.ComputeIsolationEnabled != nil { + in, out := &in.ComputeIsolationEnabled, &out.ComputeIsolationEnabled + *out = new(bool) + **out = **in + } + if in.HostSku != nil { + in, out := &in.HostSku, &out.HostSku + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterComputeIsolationInitParameters. +func (in *SparkClusterComputeIsolationInitParameters) DeepCopy() *SparkClusterComputeIsolationInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterComputeIsolationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterComputeIsolationObservation) DeepCopyInto(out *SparkClusterComputeIsolationObservation) { *out = *in @@ -8252,6 +11920,41 @@ func (in *SparkClusterComputeIsolationParameters) DeepCopy() *SparkClusterComput return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterDiskEncryptionInitParameters) DeepCopyInto(out *SparkClusterDiskEncryptionInitParameters) { + *out = *in + if in.EncryptionAlgorithm != nil { + in, out := &in.EncryptionAlgorithm, &out.EncryptionAlgorithm + *out = new(string) + **out = **in + } + if in.EncryptionAtHostEnabled != nil { + in, out := &in.EncryptionAtHostEnabled, &out.EncryptionAtHostEnabled + *out = new(bool) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.KeyVaultManagedIdentityID != nil { + in, out := &in.KeyVaultManagedIdentityID, &out.KeyVaultManagedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterDiskEncryptionInitParameters. +func (in *SparkClusterDiskEncryptionInitParameters) DeepCopy() *SparkClusterDiskEncryptionInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterDiskEncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterDiskEncryptionObservation) DeepCopyInto(out *SparkClusterDiskEncryptionObservation) { *out = *in @@ -8312,12 +12015,32 @@ func (in *SparkClusterDiskEncryptionParameters) DeepCopyInto(out *SparkClusterDi } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterDiskEncryptionParameters. -func (in *SparkClusterDiskEncryptionParameters) DeepCopy() *SparkClusterDiskEncryptionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterDiskEncryptionParameters. +func (in *SparkClusterDiskEncryptionParameters) DeepCopy() *SparkClusterDiskEncryptionParameters { + if in == nil { + return nil + } + out := new(SparkClusterDiskEncryptionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterExtensionInitParameters) DeepCopyInto(out *SparkClusterExtensionInitParameters) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterExtensionInitParameters. +func (in *SparkClusterExtensionInitParameters) DeepCopy() *SparkClusterExtensionInitParameters { if in == nil { return nil } - out := new(SparkClusterDiskEncryptionParameters) + out := new(SparkClusterExtensionInitParameters) in.DeepCopyInto(out) return out } @@ -8363,6 +12086,26 @@ func (in *SparkClusterExtensionParameters) DeepCopy() *SparkClusterExtensionPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterGatewayInitParameters) DeepCopyInto(out *SparkClusterGatewayInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterGatewayInitParameters. +func (in *SparkClusterGatewayInitParameters) DeepCopy() *SparkClusterGatewayInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterGatewayObservation) DeepCopyInto(out *SparkClusterGatewayObservation) { *out = *in @@ -8404,6 +12147,145 @@ func (in *SparkClusterGatewayParameters) DeepCopy() *SparkClusterGatewayParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterInitParameters) DeepCopyInto(out *SparkClusterInitParameters) { + *out = *in + if in.ClusterVersion != nil { + in, out := &in.ClusterVersion, &out.ClusterVersion + *out = new(string) + **out = **in + } + if in.ComponentVersion != nil { + in, out := &in.ComponentVersion, &out.ComponentVersion + *out = make([]SparkClusterComponentVersionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ComputeIsolation != nil { + in, out := &in.ComputeIsolation, &out.ComputeIsolation + *out = make([]SparkClusterComputeIsolationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DiskEncryption != nil { + in, out := &in.DiskEncryption, &out.DiskEncryption + *out = make([]SparkClusterDiskEncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EncryptionInTransitEnabled != nil { + in, out := &in.EncryptionInTransitEnabled, &out.EncryptionInTransitEnabled + *out = new(bool) + **out = **in + } + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]SparkClusterExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Gateway != nil { + in, out := &in.Gateway, &out.Gateway + *out = make([]SparkClusterGatewayInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Metastores != nil { + in, out := &in.Metastores, &out.Metastores + *out = make([]SparkClusterMetastoresInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Monitor != nil { + in, out := &in.Monitor, &out.Monitor + *out = make([]SparkClusterMonitorInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = make([]SparkClusterNetworkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Roles != nil { + in, out := &in.Roles, &out.Roles + *out = make([]SparkClusterRolesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecurityProfile != nil { + in, out := &in.SecurityProfile, &out.SecurityProfile + *out = make([]SparkClusterSecurityProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]SparkClusterStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccountGen2 != nil { + in, out := &in.StorageAccountGen2, &out.StorageAccountGen2 + *out = make([]SparkClusterStorageAccountGen2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TLSMinVersion != nil { + in, out := &in.TLSMinVersion, &out.TLSMinVersion + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterInitParameters. +func (in *SparkClusterInitParameters) DeepCopy() *SparkClusterInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterList) DeepCopyInto(out *SparkClusterList) { *out = *in @@ -8436,6 +12318,36 @@ func (in *SparkClusterList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterMetastoresAmbariInitParameters) DeepCopyInto(out *SparkClusterMetastoresAmbariInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterMetastoresAmbariInitParameters. +func (in *SparkClusterMetastoresAmbariInitParameters) DeepCopy() *SparkClusterMetastoresAmbariInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterMetastoresAmbariInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterMetastoresAmbariObservation) DeepCopyInto(out *SparkClusterMetastoresAmbariObservation) { *out = *in @@ -8497,6 +12409,36 @@ func (in *SparkClusterMetastoresAmbariParameters) DeepCopy() *SparkClusterMetast return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterMetastoresHiveInitParameters) DeepCopyInto(out *SparkClusterMetastoresHiveInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterMetastoresHiveInitParameters. +func (in *SparkClusterMetastoresHiveInitParameters) DeepCopy() *SparkClusterMetastoresHiveInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterMetastoresHiveInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterMetastoresHiveObservation) DeepCopyInto(out *SparkClusterMetastoresHiveObservation) { *out = *in @@ -8558,6 +12500,42 @@ func (in *SparkClusterMetastoresHiveParameters) DeepCopy() *SparkClusterMetastor return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterMetastoresInitParameters) DeepCopyInto(out *SparkClusterMetastoresInitParameters) { + *out = *in + if in.Ambari != nil { + in, out := &in.Ambari, &out.Ambari + *out = make([]SparkClusterMetastoresAmbariInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Hive != nil { + in, out := &in.Hive, &out.Hive + *out = make([]SparkClusterMetastoresHiveInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Oozie != nil { + in, out := &in.Oozie, &out.Oozie + *out = make([]SparkClusterMetastoresOozieInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterMetastoresInitParameters. +func (in *SparkClusterMetastoresInitParameters) DeepCopy() *SparkClusterMetastoresInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterMetastoresInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterMetastoresObservation) DeepCopyInto(out *SparkClusterMetastoresObservation) { *out = *in @@ -8575,21 +12553,51 @@ func (in *SparkClusterMetastoresObservation) DeepCopyInto(out *SparkClusterMetas (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Oozie != nil { - in, out := &in.Oozie, &out.Oozie - *out = make([]SparkClusterMetastoresOozieObservation, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.Oozie != nil { + in, out := &in.Oozie, &out.Oozie + *out = make([]SparkClusterMetastoresOozieObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterMetastoresObservation. +func (in *SparkClusterMetastoresObservation) DeepCopy() *SparkClusterMetastoresObservation { + if in == nil { + return nil + } + out := new(SparkClusterMetastoresObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterMetastoresOozieInitParameters) DeepCopyInto(out *SparkClusterMetastoresOozieInitParameters) { + *out = *in + if in.DatabaseName != nil { + in, out := &in.DatabaseName, &out.DatabaseName + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterMetastoresObservation. -func (in *SparkClusterMetastoresObservation) DeepCopy() *SparkClusterMetastoresObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterMetastoresOozieInitParameters. +func (in *SparkClusterMetastoresOozieInitParameters) DeepCopy() *SparkClusterMetastoresOozieInitParameters { if in == nil { return nil } - out := new(SparkClusterMetastoresObservation) + out := new(SparkClusterMetastoresOozieInitParameters) in.DeepCopyInto(out) return out } @@ -8691,6 +12699,26 @@ func (in *SparkClusterMetastoresParameters) DeepCopy() *SparkClusterMetastoresPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterMonitorInitParameters) DeepCopyInto(out *SparkClusterMonitorInitParameters) { + *out = *in + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterMonitorInitParameters. +func (in *SparkClusterMonitorInitParameters) DeepCopy() *SparkClusterMonitorInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterMonitorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterMonitorObservation) DeepCopyInto(out *SparkClusterMonitorObservation) { *out = *in @@ -8732,6 +12760,31 @@ func (in *SparkClusterMonitorParameters) DeepCopy() *SparkClusterMonitorParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterNetworkInitParameters) DeepCopyInto(out *SparkClusterNetworkInitParameters) { + *out = *in + if in.ConnectionDirection != nil { + in, out := &in.ConnectionDirection, &out.ConnectionDirection + *out = new(string) + **out = **in + } + if in.PrivateLinkEnabled != nil { + in, out := &in.PrivateLinkEnabled, &out.PrivateLinkEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterNetworkInitParameters. +func (in *SparkClusterNetworkInitParameters) DeepCopy() *SparkClusterNetworkInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterNetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterNetworkObservation) DeepCopyInto(out *SparkClusterNetworkObservation) { *out = *in @@ -9095,6 +13148,54 @@ func (in *SparkClusterParameters) DeepCopy() *SparkClusterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterRolesHeadNodeInitParameters) DeepCopyInto(out *SparkClusterRolesHeadNodeInitParameters) { + *out = *in + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]SparkClusterRolesHeadNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterRolesHeadNodeInitParameters. +func (in *SparkClusterRolesHeadNodeInitParameters) DeepCopy() *SparkClusterRolesHeadNodeInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterRolesHeadNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterRolesHeadNodeObservation) DeepCopyInto(out *SparkClusterRolesHeadNodeObservation) { *out = *in @@ -9216,6 +13317,36 @@ func (in *SparkClusterRolesHeadNodeParameters) DeepCopy() *SparkClusterRolesHead return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterRolesHeadNodeScriptActionsInitParameters) DeepCopyInto(out *SparkClusterRolesHeadNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterRolesHeadNodeScriptActionsInitParameters. +func (in *SparkClusterRolesHeadNodeScriptActionsInitParameters) DeepCopy() *SparkClusterRolesHeadNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterRolesHeadNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterRolesHeadNodeScriptActionsObservation) DeepCopyInto(out *SparkClusterRolesHeadNodeScriptActionsObservation) { *out = *in @@ -9276,6 +13407,42 @@ func (in *SparkClusterRolesHeadNodeScriptActionsParameters) DeepCopy() *SparkClu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterRolesInitParameters) DeepCopyInto(out *SparkClusterRolesInitParameters) { + *out = *in + if in.HeadNode != nil { + in, out := &in.HeadNode, &out.HeadNode + *out = make([]SparkClusterRolesHeadNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkerNode != nil { + in, out := &in.WorkerNode, &out.WorkerNode + *out = make([]SparkClusterRolesWorkerNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ZookeeperNode != nil { + in, out := &in.ZookeeperNode, &out.ZookeeperNode + *out = make([]SparkClusterRolesZookeeperNodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterRolesInitParameters. +func (in *SparkClusterRolesInitParameters) DeepCopy() *SparkClusterRolesInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterRolesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterRolesObservation) DeepCopyInto(out *SparkClusterRolesObservation) { *out = *in @@ -9348,6 +13515,35 @@ func (in *SparkClusterRolesParameters) DeepCopy() *SparkClusterRolesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterRolesWorkerNodeAutoscaleInitParameters) DeepCopyInto(out *SparkClusterRolesWorkerNodeAutoscaleInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make([]WorkerNodeAutoscaleCapacityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Recurrence != nil { + in, out := &in.Recurrence, &out.Recurrence + *out = make([]RolesWorkerNodeAutoscaleRecurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterRolesWorkerNodeAutoscaleInitParameters. +func (in *SparkClusterRolesWorkerNodeAutoscaleInitParameters) DeepCopy() *SparkClusterRolesWorkerNodeAutoscaleInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterRolesWorkerNodeAutoscaleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterRolesWorkerNodeAutoscaleObservation) DeepCopyInto(out *SparkClusterRolesWorkerNodeAutoscaleObservation) { *out = *in @@ -9406,6 +13602,66 @@ func (in *SparkClusterRolesWorkerNodeAutoscaleParameters) DeepCopy() *SparkClust return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterRolesWorkerNodeInitParameters) DeepCopyInto(out *SparkClusterRolesWorkerNodeInitParameters) { + *out = *in + if in.Autoscale != nil { + in, out := &in.Autoscale, &out.Autoscale + *out = make([]SparkClusterRolesWorkerNodeAutoscaleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]SparkClusterRolesWorkerNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetInstanceCount != nil { + in, out := &in.TargetInstanceCount, &out.TargetInstanceCount + *out = new(float64) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterRolesWorkerNodeInitParameters. +func (in *SparkClusterRolesWorkerNodeInitParameters) DeepCopy() *SparkClusterRolesWorkerNodeInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterRolesWorkerNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterRolesWorkerNodeObservation) DeepCopyInto(out *SparkClusterRolesWorkerNodeObservation) { *out = *in @@ -9546,7 +13802,37 @@ func (in *SparkClusterRolesWorkerNodeParameters) DeepCopy() *SparkClusterRolesWo if in == nil { return nil } - out := new(SparkClusterRolesWorkerNodeParameters) + out := new(SparkClusterRolesWorkerNodeParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterRolesWorkerNodeScriptActionsInitParameters) DeepCopyInto(out *SparkClusterRolesWorkerNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterRolesWorkerNodeScriptActionsInitParameters. +func (in *SparkClusterRolesWorkerNodeScriptActionsInitParameters) DeepCopy() *SparkClusterRolesWorkerNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterRolesWorkerNodeScriptActionsInitParameters) in.DeepCopyInto(out) return out } @@ -9611,6 +13897,54 @@ func (in *SparkClusterRolesWorkerNodeScriptActionsParameters) DeepCopy() *SparkC return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterRolesZookeeperNodeInitParameters) DeepCopyInto(out *SparkClusterRolesZookeeperNodeInitParameters) { + *out = *in + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]SparkClusterRolesZookeeperNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterRolesZookeeperNodeInitParameters. +func (in *SparkClusterRolesZookeeperNodeInitParameters) DeepCopy() *SparkClusterRolesZookeeperNodeInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterRolesZookeeperNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterRolesZookeeperNodeObservation) DeepCopyInto(out *SparkClusterRolesZookeeperNodeObservation) { *out = *in @@ -9732,6 +14066,36 @@ func (in *SparkClusterRolesZookeeperNodeParameters) DeepCopy() *SparkClusterRole return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterRolesZookeeperNodeScriptActionsInitParameters) DeepCopyInto(out *SparkClusterRolesZookeeperNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterRolesZookeeperNodeScriptActionsInitParameters. +func (in *SparkClusterRolesZookeeperNodeScriptActionsInitParameters) DeepCopy() *SparkClusterRolesZookeeperNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterRolesZookeeperNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterRolesZookeeperNodeScriptActionsObservation) DeepCopyInto(out *SparkClusterRolesZookeeperNodeScriptActionsObservation) { *out = *in @@ -9792,6 +14156,63 @@ func (in *SparkClusterRolesZookeeperNodeScriptActionsParameters) DeepCopy() *Spa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterSecurityProfileInitParameters) DeepCopyInto(out *SparkClusterSecurityProfileInitParameters) { + *out = *in + if in.AaddsResourceID != nil { + in, out := &in.AaddsResourceID, &out.AaddsResourceID + *out = new(string) + **out = **in + } + if in.ClusterUsersGroupDNS != nil { + in, out := &in.ClusterUsersGroupDNS, &out.ClusterUsersGroupDNS + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DomainName != nil { + in, out := &in.DomainName, &out.DomainName + *out = new(string) + **out = **in + } + if in.DomainUsername != nil { + in, out := &in.DomainUsername, &out.DomainUsername + *out = new(string) + **out = **in + } + if in.LdapsUrls != nil { + in, out := &in.LdapsUrls, &out.LdapsUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MsiResourceID != nil { + in, out := &in.MsiResourceID, &out.MsiResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterSecurityProfileInitParameters. +func (in *SparkClusterSecurityProfileInitParameters) DeepCopy() *SparkClusterSecurityProfileInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterSecurityProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterSecurityProfileObservation) DeepCopyInto(out *SparkClusterSecurityProfileObservation) { *out = *in @@ -9912,6 +14333,7 @@ func (in *SparkClusterSpec) DeepCopyInto(out *SparkClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterSpec. @@ -9941,6 +14363,41 @@ func (in *SparkClusterStatus) DeepCopy() *SparkClusterStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterStorageAccountGen2InitParameters) DeepCopyInto(out *SparkClusterStorageAccountGen2InitParameters) { + *out = *in + if in.FileSystemID != nil { + in, out := &in.FileSystemID, &out.FileSystemID + *out = new(string) + **out = **in + } + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + if in.ManagedIdentityResourceID != nil { + in, out := &in.ManagedIdentityResourceID, &out.ManagedIdentityResourceID + *out = new(string) + **out = **in + } + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterStorageAccountGen2InitParameters. +func (in *SparkClusterStorageAccountGen2InitParameters) DeepCopy() *SparkClusterStorageAccountGen2InitParameters { + if in == nil { + return nil + } + out := new(SparkClusterStorageAccountGen2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterStorageAccountGen2Observation) DeepCopyInto(out *SparkClusterStorageAccountGen2Observation) { *out = *in @@ -10011,6 +14468,31 @@ func (in *SparkClusterStorageAccountGen2Parameters) DeepCopy() *SparkClusterStor return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkClusterStorageAccountInitParameters) DeepCopyInto(out *SparkClusterStorageAccountInitParameters) { + *out = *in + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkClusterStorageAccountInitParameters. +func (in *SparkClusterStorageAccountInitParameters) DeepCopy() *SparkClusterStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(SparkClusterStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkClusterStorageAccountObservation) DeepCopyInto(out *SparkClusterStorageAccountObservation) { *out = *in @@ -10082,6 +14564,41 @@ func (in *SparkClusterStorageAccountParameters) DeepCopy() *SparkClusterStorageA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageAccountGen2InitParameters) DeepCopyInto(out *StorageAccountGen2InitParameters) { + *out = *in + if in.FileSystemID != nil { + in, out := &in.FileSystemID, &out.FileSystemID + *out = new(string) + **out = **in + } + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + if in.ManagedIdentityResourceID != nil { + in, out := &in.ManagedIdentityResourceID, &out.ManagedIdentityResourceID + *out = new(string) + **out = **in + } + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageAccountGen2InitParameters. +func (in *StorageAccountGen2InitParameters) DeepCopy() *StorageAccountGen2InitParameters { + if in == nil { + return nil + } + out := new(StorageAccountGen2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageAccountGen2Observation) DeepCopyInto(out *StorageAccountGen2Observation) { *out = *in @@ -10152,6 +14669,31 @@ func (in *StorageAccountGen2Parameters) DeepCopy() *StorageAccountGen2Parameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageAccountInitParameters) DeepCopyInto(out *StorageAccountInitParameters) { + *out = *in + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageAccountInitParameters. +func (in *StorageAccountInitParameters) DeepCopy() *StorageAccountInitParameters { + if in == nil { + return nil + } + out := new(StorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageAccountObservation) DeepCopyInto(out *StorageAccountObservation) { *out = *in @@ -10201,24 +14743,54 @@ func (in *StorageAccountParameters) DeepCopyInto(out *StorageAccountParameters) *out = new(v1.Reference) (*in).DeepCopyInto(*out) } - if in.StorageContainerIDSelector != nil { - in, out := &in.StorageContainerIDSelector, &out.StorageContainerIDSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.StorageContainerIDSelector != nil { + in, out := &in.StorageContainerIDSelector, &out.StorageContainerIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.StorageResourceID != nil { + in, out := &in.StorageResourceID, &out.StorageResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageAccountParameters. +func (in *StorageAccountParameters) DeepCopy() *StorageAccountParameters { + if in == nil { + return nil + } + out := new(StorageAccountParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UninstallScriptActionsInitParameters) DeepCopyInto(out *UninstallScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in } - if in.StorageResourceID != nil { - in, out := &in.StorageResourceID, &out.StorageResourceID + if in.URI != nil { + in, out := &in.URI, &out.URI *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageAccountParameters. -func (in *StorageAccountParameters) DeepCopy() *StorageAccountParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UninstallScriptActionsInitParameters. +func (in *UninstallScriptActionsInitParameters) DeepCopy() *UninstallScriptActionsInitParameters { if in == nil { return nil } - out := new(StorageAccountParameters) + out := new(UninstallScriptActionsInitParameters) in.DeepCopyInto(out) return out } @@ -10283,6 +14855,31 @@ func (in *UninstallScriptActionsParameters) DeepCopy() *UninstallScriptActionsPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkerNodeAutoscaleCapacityInitParameters) DeepCopyInto(out *WorkerNodeAutoscaleCapacityInitParameters) { + *out = *in + if in.MaxInstanceCount != nil { + in, out := &in.MaxInstanceCount, &out.MaxInstanceCount + *out = new(float64) + **out = **in + } + if in.MinInstanceCount != nil { + in, out := &in.MinInstanceCount, &out.MinInstanceCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerNodeAutoscaleCapacityInitParameters. +func (in *WorkerNodeAutoscaleCapacityInitParameters) DeepCopy() *WorkerNodeAutoscaleCapacityInitParameters { + if in == nil { + return nil + } + out := new(WorkerNodeAutoscaleCapacityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkerNodeAutoscaleCapacityObservation) DeepCopyInto(out *WorkerNodeAutoscaleCapacityObservation) { *out = *in @@ -10333,6 +14930,28 @@ func (in *WorkerNodeAutoscaleCapacityParameters) DeepCopy() *WorkerNodeAutoscale return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkerNodeAutoscaleInitParameters) DeepCopyInto(out *WorkerNodeAutoscaleInitParameters) { + *out = *in + if in.Recurrence != nil { + in, out := &in.Recurrence, &out.Recurrence + *out = make([]AutoscaleRecurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerNodeAutoscaleInitParameters. +func (in *WorkerNodeAutoscaleInitParameters) DeepCopy() *WorkerNodeAutoscaleInitParameters { + if in == nil { + return nil + } + out := new(WorkerNodeAutoscaleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkerNodeAutoscaleObservation) DeepCopyInto(out *WorkerNodeAutoscaleObservation) { *out = *in @@ -10377,6 +14996,33 @@ func (in *WorkerNodeAutoscaleParameters) DeepCopy() *WorkerNodeAutoscaleParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkerNodeAutoscaleRecurrenceInitParameters) DeepCopyInto(out *WorkerNodeAutoscaleRecurrenceInitParameters) { + *out = *in + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]AutoscaleRecurrenceScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerNodeAutoscaleRecurrenceInitParameters. +func (in *WorkerNodeAutoscaleRecurrenceInitParameters) DeepCopy() *WorkerNodeAutoscaleRecurrenceInitParameters { + if in == nil { + return nil + } + out := new(WorkerNodeAutoscaleRecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkerNodeAutoscaleRecurrenceObservation) DeepCopyInto(out *WorkerNodeAutoscaleRecurrenceObservation) { *out = *in @@ -10431,6 +15077,42 @@ func (in *WorkerNodeAutoscaleRecurrenceParameters) DeepCopy() *WorkerNodeAutosca return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkerNodeAutoscaleRecurrenceScheduleInitParameters) DeepCopyInto(out *WorkerNodeAutoscaleRecurrenceScheduleInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TargetInstanceCount != nil { + in, out := &in.TargetInstanceCount, &out.TargetInstanceCount + *out = new(float64) + **out = **in + } + if in.Time != nil { + in, out := &in.Time, &out.Time + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerNodeAutoscaleRecurrenceScheduleInitParameters. +func (in *WorkerNodeAutoscaleRecurrenceScheduleInitParameters) DeepCopy() *WorkerNodeAutoscaleRecurrenceScheduleInitParameters { + if in == nil { + return nil + } + out := new(WorkerNodeAutoscaleRecurrenceScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkerNodeAutoscaleRecurrenceScheduleObservation) DeepCopyInto(out *WorkerNodeAutoscaleRecurrenceScheduleObservation) { *out = *in @@ -10503,6 +15185,66 @@ func (in *WorkerNodeAutoscaleRecurrenceScheduleParameters) DeepCopy() *WorkerNod return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkerNodeInitParameters) DeepCopyInto(out *WorkerNodeInitParameters) { + *out = *in + if in.Autoscale != nil { + in, out := &in.Autoscale, &out.Autoscale + *out = make([]AutoscaleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]WorkerNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetInstanceCount != nil { + in, out := &in.TargetInstanceCount, &out.TargetInstanceCount + *out = new(float64) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerNodeInitParameters. +func (in *WorkerNodeInitParameters) DeepCopy() *WorkerNodeInitParameters { + if in == nil { + return nil + } + out := new(WorkerNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkerNodeObservation) DeepCopyInto(out *WorkerNodeObservation) { *out = *in @@ -10648,6 +15390,36 @@ func (in *WorkerNodeParameters) DeepCopy() *WorkerNodeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkerNodeScriptActionsInitParameters) DeepCopyInto(out *WorkerNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerNodeScriptActionsInitParameters. +func (in *WorkerNodeScriptActionsInitParameters) DeepCopy() *WorkerNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(WorkerNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkerNodeScriptActionsObservation) DeepCopyInto(out *WorkerNodeScriptActionsObservation) { *out = *in @@ -10708,6 +15480,54 @@ func (in *WorkerNodeScriptActionsParameters) DeepCopy() *WorkerNodeScriptActions return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ZookeeperNodeInitParameters) DeepCopyInto(out *ZookeeperNodeInitParameters) { + *out = *in + if in.SSHKeys != nil { + in, out := &in.SSHKeys, &out.SSHKeys + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ScriptActions != nil { + in, out := &in.ScriptActions, &out.ScriptActions + *out = make([]ZookeeperNodeScriptActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZookeeperNodeInitParameters. +func (in *ZookeeperNodeInitParameters) DeepCopy() *ZookeeperNodeInitParameters { + if in == nil { + return nil + } + out := new(ZookeeperNodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ZookeeperNodeObservation) DeepCopyInto(out *ZookeeperNodeObservation) { *out = *in @@ -10829,6 +15649,36 @@ func (in *ZookeeperNodeParameters) DeepCopy() *ZookeeperNodeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ZookeeperNodeScriptActionsInitParameters) DeepCopyInto(out *ZookeeperNodeScriptActionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZookeeperNodeScriptActionsInitParameters. +func (in *ZookeeperNodeScriptActionsInitParameters) DeepCopy() *ZookeeperNodeScriptActionsInitParameters { + if in == nil { + return nil + } + out := new(ZookeeperNodeScriptActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ZookeeperNodeScriptActionsObservation) DeepCopyInto(out *ZookeeperNodeScriptActionsObservation) { *out = *in diff --git a/apis/hdinsight/v1beta1/zz_generated.managed.go b/apis/hdinsight/v1beta1/zz_generated.managed.go index 309ee94ce..d3a5830bd 100644 --- a/apis/hdinsight/v1beta1/zz_generated.managed.go +++ b/apis/hdinsight/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *HBaseCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HBaseCluster. -func (mg *HBaseCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HBaseCluster. +func (mg *HBaseCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HBaseCluster. @@ -55,9 +55,9 @@ func (mg *HBaseCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HBaseCluster. -func (mg *HBaseCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HBaseCluster. +func (mg *HBaseCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HBaseCluster. @@ -93,9 +93,9 @@ func (mg *HadoopCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HadoopCluster. -func (mg *HadoopCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HadoopCluster. +func (mg *HadoopCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HadoopCluster. @@ -131,9 +131,9 @@ func (mg *HadoopCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HadoopCluster. -func (mg *HadoopCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HadoopCluster. +func (mg *HadoopCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HadoopCluster. @@ -169,9 +169,9 @@ func (mg *InteractiveQueryCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this InteractiveQueryCluster. -func (mg *InteractiveQueryCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this InteractiveQueryCluster. +func (mg *InteractiveQueryCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this InteractiveQueryCluster. @@ -207,9 +207,9 @@ func (mg *InteractiveQueryCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this InteractiveQueryCluster. -func (mg *InteractiveQueryCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this InteractiveQueryCluster. +func (mg *InteractiveQueryCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this InteractiveQueryCluster. @@ -245,9 +245,9 @@ func (mg *KafkaCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this KafkaCluster. -func (mg *KafkaCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this KafkaCluster. +func (mg *KafkaCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this KafkaCluster. @@ -283,9 +283,9 @@ func (mg *KafkaCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this KafkaCluster. -func (mg *KafkaCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this KafkaCluster. +func (mg *KafkaCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this KafkaCluster. @@ -321,9 +321,9 @@ func (mg *SparkCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SparkCluster. -func (mg *SparkCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SparkCluster. +func (mg *SparkCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SparkCluster. @@ -359,9 +359,9 @@ func (mg *SparkCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SparkCluster. -func (mg *SparkCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SparkCluster. +func (mg *SparkCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SparkCluster. diff --git a/apis/hdinsight/v1beta1/zz_generated_terraformed.go b/apis/hdinsight/v1beta1/zz_generated_terraformed.go index 615bd6efe..a0b0aaad4 100755 --- a/apis/hdinsight/v1beta1/zz_generated_terraformed.go +++ b/apis/hdinsight/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *HadoopCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HadoopCluster +func (tr *HadoopCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HadoopCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HadoopCluster) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *HBaseCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HBaseCluster +func (tr *HBaseCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HBaseCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HBaseCluster) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *InteractiveQueryCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this InteractiveQueryCluster +func (tr *InteractiveQueryCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this InteractiveQueryCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *InteractiveQueryCluster) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *KafkaCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this KafkaCluster +func (tr *KafkaCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this KafkaCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *KafkaCluster) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *SparkCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SparkCluster +func (tr *SparkCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SparkCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SparkCluster) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/hdinsight/v1beta1/zz_hadoopcluster_types.go b/apis/hdinsight/v1beta1/zz_hadoopcluster_types.go index c8acd023e..7142b134d 100755 --- a/apis/hdinsight/v1beta1/zz_hadoopcluster_types.go +++ b/apis/hdinsight/v1beta1/zz_hadoopcluster_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AmbariInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type AmbariObservation struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. @@ -28,20 +40,29 @@ type AmbariObservation struct { type AmbariParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type AutoscaleInitParameters struct { + + // A capacity block as defined below. + Capacity []CapacityInitParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // A recurrence block as defined below. + Recurrence []RecurrenceInitParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } type AutoscaleObservation struct { @@ -64,6 +85,15 @@ type AutoscaleParameters struct { Recurrence []RecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } +type CapacityInitParameters struct { + + // The maximum number of worker nodes to autoscale to based on the cluster's activity. + MaxInstanceCount *float64 `json:"maxInstanceCount,omitempty" tf:"max_instance_count,omitempty"` + + // The minimum number of worker nodes to autoscale to based on the cluster's activity. + MinInstanceCount *float64 `json:"minInstanceCount,omitempty" tf:"min_instance_count,omitempty"` +} + type CapacityObservation struct { // The maximum number of worker nodes to autoscale to based on the cluster's activity. @@ -76,12 +106,18 @@ type CapacityObservation struct { type CapacityParameters struct { // The maximum number of worker nodes to autoscale to based on the cluster's activity. - // +kubebuilder:validation:Required - MaxInstanceCount *float64 `json:"maxInstanceCount" tf:"max_instance_count,omitempty"` + // +kubebuilder:validation:Optional + MaxInstanceCount *float64 `json:"maxInstanceCount,omitempty" tf:"max_instance_count,omitempty"` // The minimum number of worker nodes to autoscale to based on the cluster's activity. - // +kubebuilder:validation:Required - MinInstanceCount *float64 `json:"minInstanceCount" tf:"min_instance_count,omitempty"` + // +kubebuilder:validation:Optional + MinInstanceCount *float64 `json:"minInstanceCount,omitempty" tf:"min_instance_count,omitempty"` +} + +type ComponentVersionInitParameters struct { + + // The version of Hadoop which should be used for this HDInsight Hadoop Cluster. Changing this forces a new resource to be created. + Hadoop *string `json:"hadoop,omitempty" tf:"hadoop,omitempty"` } type ComponentVersionObservation struct { @@ -93,8 +129,17 @@ type ComponentVersionObservation struct { type ComponentVersionParameters struct { // The version of Hadoop which should be used for this HDInsight Hadoop Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Hadoop *string `json:"hadoop" tf:"hadoop,omitempty"` + // +kubebuilder:validation:Optional + Hadoop *string `json:"hadoop,omitempty" tf:"hadoop,omitempty"` +} + +type ComputeIsolationInitParameters struct { + + // This field indicates whether enable compute isolation or not. Possible values are true or false. + ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` + + // The name of the host SKU. + HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } type ComputeIsolationObservation struct { @@ -117,6 +162,21 @@ type ComputeIsolationParameters struct { HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } +type DiskEncryptionInitParameters struct { + + // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` + + // This is indicator to show whether resource disk encryption is enabled. + EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` + + // The ID of the key vault key. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // This is the resource ID of Managed Identity used to access the key vault. + KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` +} + type DiskEncryptionObservation struct { // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. @@ -151,6 +211,24 @@ type DiskEncryptionParameters struct { KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` } +type EdgeNodeInitParameters struct { + + // The HTTPS Connectivity Endpoint for this HDInsight Hadoop Cluster. + HTTPSEndpoints []HTTPSEndpointsInitParameters `json:"httpsEndpoints,omitempty" tf:"https_endpoints,omitempty"` + + // A install_script_action block as defined below. + InstallScriptAction []InstallScriptActionInitParameters `json:"installScriptAction,omitempty" tf:"install_script_action,omitempty"` + + // The number of instances which should be run for the Worker Nodes. + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + + // A uninstall_script_actions block as defined below. Changing this forces a new resource to be created. + UninstallScriptActions []UninstallScriptActionsInitParameters `json:"uninstallScriptActions,omitempty" tf:"uninstall_script_actions,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` +} + type EdgeNodeObservation struct { // The HTTPS Connectivity Endpoint for this HDInsight Hadoop Cluster. @@ -176,20 +254,26 @@ type EdgeNodeParameters struct { HTTPSEndpoints []HTTPSEndpointsParameters `json:"httpsEndpoints,omitempty" tf:"https_endpoints,omitempty"` // A install_script_action block as defined below. - // +kubebuilder:validation:Required - InstallScriptAction []InstallScriptActionParameters `json:"installScriptAction" tf:"install_script_action,omitempty"` + // +kubebuilder:validation:Optional + InstallScriptAction []InstallScriptActionParameters `json:"installScriptAction,omitempty" tf:"install_script_action,omitempty"` // The number of instances which should be run for the Worker Nodes. - // +kubebuilder:validation:Required - TargetInstanceCount *float64 `json:"targetInstanceCount" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // A uninstall_script_actions block as defined below. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional UninstallScriptActions []UninstallScriptActionsParameters `json:"uninstallScriptActions,omitempty" tf:"uninstall_script_actions,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` +} + +type ExtensionInitParameters struct { + + // The workspace ID of the log analytics extension. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` } type ExtensionObservation struct { @@ -201,14 +285,20 @@ type ExtensionObservation struct { type ExtensionParameters struct { // The workspace ID of the log analytics extension. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The workspace key of the log analytics extension. // +kubebuilder:validation:Required PrimaryKeySecretRef v1.SecretKeySelector `json:"primaryKeySecretRef" tf:"-"` } +type GatewayInitParameters struct { + + // The username used for the Ambari Portal. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type GatewayObservation struct { // The username used for the Ambari Portal. Changing this forces a new resource to be created. @@ -222,8 +312,26 @@ type GatewayParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username used for the Ambari Portal. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type HTTPSEndpointsInitParameters struct { + + // A list of access modes for the application. + AccessModes []*string `json:"accessModes,omitempty" tf:"access_modes,omitempty"` + + // The destination port to connect to. + DestinationPort *float64 `json:"destinationPort,omitempty" tf:"destination_port,omitempty"` + + // The value indicates whether the gateway authentication is enabled or not. + DisableGatewayAuth *bool `json:"disableGatewayAuth,omitempty" tf:"disable_gateway_auth,omitempty"` + + // The private ip address of the endpoint. + PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` + + // The application's subdomain suffix. + SubDomainSuffix *string `json:"subDomainSuffix,omitempty" tf:"sub_domain_suffix,omitempty"` } type HTTPSEndpointsObservation struct { @@ -267,6 +375,60 @@ type HTTPSEndpointsParameters struct { SubDomainSuffix *string `json:"subDomainSuffix,omitempty" tf:"sub_domain_suffix,omitempty"` } +type HadoopClusterInitParameters struct { + + // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. + ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` + + // A component_version block as defined below. + ComponentVersion []ComponentVersionInitParameters `json:"componentVersion,omitempty" tf:"component_version,omitempty"` + + // A compute_isolation block as defined below. + ComputeIsolation []ComputeIsolationInitParameters `json:"computeIsolation,omitempty" tf:"compute_isolation,omitempty"` + + // One or more disk_encryption block as defined below. + DiskEncryption []DiskEncryptionInitParameters `json:"diskEncryption,omitempty" tf:"disk_encryption,omitempty"` + + // An extension block as defined below. + Extension []ExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"` + + // A gateway block as defined below. + Gateway []GatewayInitParameters `json:"gateway,omitempty" tf:"gateway,omitempty"` + + // Specifies the Azure Region which this HDInsight Hadoop Cluster should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A metastores block as defined below. + Metastores []MetastoresInitParameters `json:"metastores,omitempty" tf:"metastores,omitempty"` + + // A monitor block as defined below. + Monitor []MonitorInitParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` + + // A network block as defined below. + Network []NetworkInitParameters `json:"network,omitempty" tf:"network,omitempty"` + + // A roles block as defined below. + Roles []RolesInitParameters `json:"roles,omitempty" tf:"roles,omitempty"` + + // A security_profile block as defined below. Changing this forces a new resource to be created. + SecurityProfile []SecurityProfileInitParameters `json:"securityProfile,omitempty" tf:"security_profile,omitempty"` + + // One or more storage_account block as defined below. + StorageAccount []StorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // A storage_account_gen2 block as defined below. + StorageAccountGen2 []StorageAccountGen2InitParameters `json:"storageAccountGen2,omitempty" tf:"storage_account_gen2,omitempty"` + + // The minimal supported TLS version. Possible values are 1.0, 1.1 or 1.2. Changing this forces a new resource to be created. + TLSMinVersion *string `json:"tlsMinVersion,omitempty" tf:"tls_min_version,omitempty"` + + // A map of Tags which should be assigned to this HDInsight Hadoop Cluster. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the Tier which should be used for this HDInsight Hadoop Cluster. Possible values are Standard or Premium. Changing this forces a new resource to be created. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + type HadoopClusterObservation struct { // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. @@ -417,6 +579,24 @@ type HadoopClusterParameters struct { Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } +type HeadNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []ScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` +} + type HeadNodeObservation struct { // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -467,18 +647,30 @@ type HeadNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type HiveInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type HiveObservation struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. @@ -494,20 +686,32 @@ type HiveObservation struct { type HiveParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type InstallScriptActionInitParameters struct { + + // The name of the uninstall script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI pointing to the script to run during the installation of the edge node. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } type InstallScriptActionObservation struct { @@ -525,16 +729,28 @@ type InstallScriptActionObservation struct { type InstallScriptActionParameters struct { // The name of the uninstall script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI pointing to the script to run during the installation of the edge node. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type MetastoresInitParameters struct { + + // An ambari block as defined below. + Ambari []AmbariInitParameters `json:"ambari,omitempty" tf:"ambari,omitempty"` + + // A hive block as defined below. + Hive []HiveInitParameters `json:"hive,omitempty" tf:"hive,omitempty"` + + // An oozie block as defined below. + Oozie []OozieInitParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } type MetastoresObservation struct { @@ -564,6 +780,12 @@ type MetastoresParameters struct { Oozie []OozieParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } +type MonitorInitParameters struct { + + // The Operations Management Suite (OMS) workspace ID. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + type MonitorObservation struct { // The Operations Management Suite (OMS) workspace ID. @@ -573,14 +795,23 @@ type MonitorObservation struct { type MonitorParameters struct { // The Operations Management Suite (OMS) workspace ID. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The Operations Management Suite (OMS) workspace key. // +kubebuilder:validation:Required PrimaryKeySecretRef v1.SecretKeySelector `json:"primaryKeySecretRef" tf:"-"` } +type NetworkInitParameters struct { + + // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. + ConnectionDirection *string `json:"connectionDirection,omitempty" tf:"connection_direction,omitempty"` + + // Is the private link enabled? Possible values include True or False. Defaults to False. Changing this forces a new resource to be created. + PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` +} + type NetworkObservation struct { // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. @@ -601,6 +832,18 @@ type NetworkParameters struct { PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` } +type OozieInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type OozieObservation struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. @@ -616,20 +859,29 @@ type OozieObservation struct { type OozieParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type RecurrenceInitParameters struct { + + // A list of schedule blocks as defined below. + Schedule []ScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` + + // The time zone for the autoscale schedule times. + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } type RecurrenceObservation struct { @@ -644,12 +896,27 @@ type RecurrenceObservation struct { type RecurrenceParameters struct { // A list of schedule blocks as defined below. - // +kubebuilder:validation:Required - Schedule []ScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []ScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The time zone for the autoscale schedule times. - // +kubebuilder:validation:Required - Timezone *string `json:"timezone" tf:"timezone,omitempty"` + // +kubebuilder:validation:Optional + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` +} + +type RolesInitParameters struct { + + // A edge_node block as defined below. + EdgeNode []EdgeNodeInitParameters `json:"edgeNode,omitempty" tf:"edge_node,omitempty"` + + // A head_node block as defined above. + HeadNode []HeadNodeInitParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` + + // A worker_node block as defined below. + WorkerNode []WorkerNodeInitParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` + + // A zookeeper_node block as defined below. + ZookeeperNode []ZookeeperNodeInitParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` } type RolesObservation struct { @@ -674,16 +941,28 @@ type RolesParameters struct { EdgeNode []EdgeNodeParameters `json:"edgeNode,omitempty" tf:"edge_node,omitempty"` // A head_node block as defined above. - // +kubebuilder:validation:Required - HeadNode []HeadNodeParameters `json:"headNode" tf:"head_node,omitempty"` + // +kubebuilder:validation:Optional + HeadNode []HeadNodeParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` // A worker_node block as defined below. - // +kubebuilder:validation:Required - WorkerNode []WorkerNodeParameters `json:"workerNode" tf:"worker_node,omitempty"` + // +kubebuilder:validation:Optional + WorkerNode []WorkerNodeParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` // A zookeeper_node block as defined below. - // +kubebuilder:validation:Required - ZookeeperNode []ZookeeperNodeParameters `json:"zookeeperNode" tf:"zookeeper_node,omitempty"` + // +kubebuilder:validation:Optional + ZookeeperNode []ZookeeperNodeParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` +} + +type ScheduleInitParameters struct { + + // The days of the week to perform autoscale. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + Days []*string `json:"days,omitempty" tf:"days,omitempty"` + + // The number of instances which should be run for the Worker Nodes. + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + + // The time of day to perform the autoscale in 24hour format. + Time *string `json:"time,omitempty" tf:"time,omitempty"` } type ScheduleObservation struct { @@ -701,16 +980,28 @@ type ScheduleObservation struct { type ScheduleParameters struct { // The days of the week to perform autoscale. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. - // +kubebuilder:validation:Required - Days []*string `json:"days" tf:"days,omitempty"` + // +kubebuilder:validation:Optional + Days []*string `json:"days,omitempty" tf:"days,omitempty"` // The number of instances which should be run for the Worker Nodes. - // +kubebuilder:validation:Required - TargetInstanceCount *float64 `json:"targetInstanceCount" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The time of day to perform the autoscale in 24hour format. - // +kubebuilder:validation:Required - Time *string `json:"time" tf:"time,omitempty"` + // +kubebuilder:validation:Optional + Time *string `json:"time,omitempty" tf:"time,omitempty"` +} + +type ScriptActionsInitParameters struct { + + // The name of the uninstall script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI pointing to the script to run during the installation of the edge node. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } type ScriptActionsObservation struct { @@ -728,16 +1019,37 @@ type ScriptActionsObservation struct { type ScriptActionsParameters struct { // The name of the uninstall script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI pointing to the script to run during the installation of the edge node. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type SecurityProfileInitParameters struct { + + // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. + AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` + + // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. + ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` + + // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` + + // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. + DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` + + // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. + LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` + + // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. + MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` } type SecurityProfileObservation struct { @@ -764,32 +1076,47 @@ type SecurityProfileObservation struct { type SecurityProfileParameters struct { // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - AaddsResourceID *string `json:"aaddsResourceId" tf:"aadds_resource_id,omitempty"` + // +kubebuilder:validation:Optional + AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DomainName *string `json:"domainName" tf:"domain_name,omitempty"` + // +kubebuilder:validation:Optional + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The user password of the Azure Active Directory Domain. Changing this forces a new resource to be created. // +kubebuilder:validation:Required DomainUserPasswordSecretRef v1.SecretKeySelector `json:"domainUserPasswordSecretRef" tf:"-"` // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DomainUsername *string `json:"domainUsername" tf:"domain_username,omitempty"` + // +kubebuilder:validation:Optional + DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - LdapsUrls []*string `json:"ldapsUrls" tf:"ldaps_urls,omitempty"` + // +kubebuilder:validation:Optional + LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - MsiResourceID *string `json:"msiResourceId" tf:"msi_resource_id,omitempty"` + // +kubebuilder:validation:Optional + MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` +} + +type StorageAccountGen2InitParameters struct { + + // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. + FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` + + // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` + + // The ID of the Storage Account. Changing this forces a new resource to be created. + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } type StorageAccountGen2Observation struct { @@ -810,20 +1137,29 @@ type StorageAccountGen2Observation struct { type StorageAccountGen2Parameters struct { // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - FileSystemID *string `json:"filesystemId" tf:"filesystem_id,omitempty"` + // +kubebuilder:validation:Optional + FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsDefault *bool `json:"isDefault" tf:"is_default,omitempty"` + // +kubebuilder:validation:Optional + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - ManagedIdentityResourceID *string `json:"managedIdentityResourceId" tf:"managed_identity_resource_id,omitempty"` + // +kubebuilder:validation:Optional + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // The ID of the Storage Account. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StorageResourceID *string `json:"storageResourceId" tf:"storage_resource_id,omitempty"` + // +kubebuilder:validation:Optional + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` +} + +type StorageAccountInitParameters struct { + + // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // The ID of the Storage Account. Changing this forces a new resource to be created. + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } type StorageAccountObservation struct { @@ -841,8 +1177,8 @@ type StorageAccountObservation struct { type StorageAccountParameters struct { // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsDefault *bool `json:"isDefault" tf:"is_default,omitempty"` + // +kubebuilder:validation:Optional + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The Access Key which should be used to connect to the Storage Account. Changing this forces a new resource to be created. // +kubebuilder:validation:Required @@ -867,6 +1203,18 @@ type StorageAccountParameters struct { StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } +type UninstallScriptActionsInitParameters struct { + + // The name of the uninstall script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI pointing to the script to run during the installation of the edge node. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type UninstallScriptActionsObservation struct { // The name of the uninstall script action. @@ -882,16 +1230,40 @@ type UninstallScriptActionsObservation struct { type UninstallScriptActionsParameters struct { // The name of the uninstall script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI pointing to the script to run during the installation of the edge node. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type WorkerNodeInitParameters struct { + + // A autoscale block as defined below. + Autoscale []AutoscaleInitParameters `json:"autoscale,omitempty" tf:"autoscale,omitempty"` + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []WorkerNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The number of instances which should be run for the Worker Nodes. + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } type WorkerNodeObservation struct { @@ -954,22 +1326,34 @@ type WorkerNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The number of instances which should be run for the Worker Nodes. - // +kubebuilder:validation:Required - TargetInstanceCount *float64 `json:"targetInstanceCount" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type WorkerNodeScriptActionsInitParameters struct { + + // The name of the uninstall script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI pointing to the script to run during the installation of the edge node. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type WorkerNodeScriptActionsObservation struct { // The name of the uninstall script action. @@ -985,16 +1369,34 @@ type WorkerNodeScriptActionsObservation struct { type WorkerNodeScriptActionsParameters struct { // The name of the uninstall script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI pointing to the script to run during the installation of the edge node. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type ZookeeperNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []ZookeeperNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } type ZookeeperNodeObservation struct { @@ -1047,18 +1449,30 @@ type ZookeeperNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type ZookeeperNodeScriptActionsInitParameters struct { + + // The name of the uninstall script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI pointing to the script to run during the installation of the edge node. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type ZookeeperNodeScriptActionsObservation struct { // The name of the uninstall script action. @@ -1074,22 +1488,34 @@ type ZookeeperNodeScriptActionsObservation struct { type ZookeeperNodeScriptActionsParameters struct { // The name of the uninstall script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI pointing to the script to run during the installation of the edge node. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } // HadoopClusterSpec defines the desired state of HadoopCluster type HadoopClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HadoopClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HadoopClusterInitParameters `json:"initProvider,omitempty"` } // HadoopClusterStatus defines the observed state of HadoopCluster. @@ -1110,12 +1536,12 @@ type HadoopClusterStatus struct { type HadoopCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clusterVersion)",message="clusterVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.componentVersion)",message="componentVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gateway)",message="gateway is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roles)",message="roles is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier)",message="tier is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clusterVersion) || has(self.initProvider.clusterVersion)",message="clusterVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.componentVersion) || has(self.initProvider.componentVersion)",message="componentVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.gateway) || has(self.initProvider.gateway)",message="gateway is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.roles) || has(self.initProvider.roles)",message="roles is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tier) || has(self.initProvider.tier)",message="tier is a required parameter" Spec HadoopClusterSpec `json:"spec"` Status HadoopClusterStatus `json:"status,omitempty"` } diff --git a/apis/hdinsight/v1beta1/zz_hbasecluster_types.go b/apis/hdinsight/v1beta1/zz_hbasecluster_types.go index af0e22dad..44c611358 100755 --- a/apis/hdinsight/v1beta1/zz_hbasecluster_types.go +++ b/apis/hdinsight/v1beta1/zz_hbasecluster_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AutoscaleRecurrenceInitParameters struct { + Schedule []RecurrenceScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` + + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` +} + type AutoscaleRecurrenceObservation struct { Schedule []RecurrenceScheduleObservation `json:"schedule,omitempty" tf:"schedule,omitempty"` @@ -21,11 +27,17 @@ type AutoscaleRecurrenceObservation struct { type AutoscaleRecurrenceParameters struct { - // +kubebuilder:validation:Required - Schedule []RecurrenceScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []RecurrenceScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` - // +kubebuilder:validation:Required - Timezone *string `json:"timezone" tf:"timezone,omitempty"` + // +kubebuilder:validation:Optional + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` +} + +type HBaseClusterComponentVersionInitParameters struct { + + // The version of HBase which should be used for this HDInsight HBase Cluster. Changing this forces a new resource to be created. + HBase *string `json:"hbase,omitempty" tf:"hbase,omitempty"` } type HBaseClusterComponentVersionObservation struct { @@ -37,8 +49,17 @@ type HBaseClusterComponentVersionObservation struct { type HBaseClusterComponentVersionParameters struct { // The version of HBase which should be used for this HDInsight HBase Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - HBase *string `json:"hbase" tf:"hbase,omitempty"` + // +kubebuilder:validation:Optional + HBase *string `json:"hbase,omitempty" tf:"hbase,omitempty"` +} + +type HBaseClusterComputeIsolationInitParameters struct { + + // This field indicates whether enable compute isolation or not. Possible values are true or false. + ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` + + // The name of the host SKU. + HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } type HBaseClusterComputeIsolationObservation struct { @@ -61,6 +82,21 @@ type HBaseClusterComputeIsolationParameters struct { HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } +type HBaseClusterDiskEncryptionInitParameters struct { + + // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` + + // This is indicator to show whether resource disk encryption is enabled. + EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` + + // The ID of the key vault key. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // This is the resource ID of Managed Identity used to access the key vault. + KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` +} + type HBaseClusterDiskEncryptionObservation struct { // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. @@ -95,6 +131,12 @@ type HBaseClusterDiskEncryptionParameters struct { KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` } +type HBaseClusterExtensionInitParameters struct { + + // The workspace ID of the log analytics extension. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + type HBaseClusterExtensionObservation struct { // The workspace ID of the log analytics extension. @@ -104,14 +146,20 @@ type HBaseClusterExtensionObservation struct { type HBaseClusterExtensionParameters struct { // The workspace ID of the log analytics extension. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The workspace key of the log analytics extension. // +kubebuilder:validation:Required PrimaryKeySecretRef v1.SecretKeySelector `json:"primaryKeySecretRef" tf:"-"` } +type HBaseClusterGatewayInitParameters struct { + + // The username used for the Ambari Portal. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type HBaseClusterGatewayObservation struct { // The username used for the Ambari Portal. Changing this forces a new resource to be created. @@ -125,8 +173,74 @@ type HBaseClusterGatewayParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username used for the Ambari Portal. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type HBaseClusterInitParameters struct { + + // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. + ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` + + // A component_version block as defined below. + ComponentVersion []HBaseClusterComponentVersionInitParameters `json:"componentVersion,omitempty" tf:"component_version,omitempty"` + + // A compute_isolation block as defined below. + ComputeIsolation []HBaseClusterComputeIsolationInitParameters `json:"computeIsolation,omitempty" tf:"compute_isolation,omitempty"` + + // One or more disk_encryption block as defined below. + DiskEncryption []HBaseClusterDiskEncryptionInitParameters `json:"diskEncryption,omitempty" tf:"disk_encryption,omitempty"` + + // An extension block as defined below. + Extension []HBaseClusterExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"` + + // A gateway block as defined below. + Gateway []HBaseClusterGatewayInitParameters `json:"gateway,omitempty" tf:"gateway,omitempty"` + + // Specifies the Azure Region which this HDInsight HBase Cluster should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A metastores block as defined below. + Metastores []HBaseClusterMetastoresInitParameters `json:"metastores,omitempty" tf:"metastores,omitempty"` + + // A monitor block as defined below. + Monitor []HBaseClusterMonitorInitParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` + + // A network block as defined below. + Network []HBaseClusterNetworkInitParameters `json:"network,omitempty" tf:"network,omitempty"` + + // A roles block as defined below. + Roles []HBaseClusterRolesInitParameters `json:"roles,omitempty" tf:"roles,omitempty"` + + // A security_profile block as defined below. Changing this forces a new resource to be created. + SecurityProfile []HBaseClusterSecurityProfileInitParameters `json:"securityProfile,omitempty" tf:"security_profile,omitempty"` + + // One or more storage_account block as defined below. + StorageAccount []HBaseClusterStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // A storage_account_gen2 block as defined below. + StorageAccountGen2 []HBaseClusterStorageAccountGen2InitParameters `json:"storageAccountGen2,omitempty" tf:"storage_account_gen2,omitempty"` + + // The minimal supported TLS version. Possible values are 1.0, 1.1 or 1.2. Changing this forces a new resource to be created. + TLSMinVersion *string `json:"tlsMinVersion,omitempty" tf:"tls_min_version,omitempty"` + + // A map of Tags which should be assigned to this HDInsight HBase Cluster. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the Tier which should be used for this HDInsight HBase Cluster. Possible values are Standard or Premium. Changing this forces a new resource to be created. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + +type HBaseClusterMetastoresInitParameters struct { + + // An ambari block as defined below. + Ambari []MetastoresAmbariInitParameters `json:"ambari,omitempty" tf:"ambari,omitempty"` + + // A hive block as defined below. + Hive []MetastoresHiveInitParameters `json:"hive,omitempty" tf:"hive,omitempty"` + + // An oozie block as defined below. + Oozie []MetastoresOozieInitParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } type HBaseClusterMetastoresObservation struct { @@ -156,6 +270,12 @@ type HBaseClusterMetastoresParameters struct { Oozie []MetastoresOozieParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } +type HBaseClusterMonitorInitParameters struct { + + // The Operations Management Suite (OMS) workspace ID. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + type HBaseClusterMonitorObservation struct { // The Operations Management Suite (OMS) workspace ID. @@ -165,14 +285,23 @@ type HBaseClusterMonitorObservation struct { type HBaseClusterMonitorParameters struct { // The Operations Management Suite (OMS) workspace ID. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The Operations Management Suite (OMS) workspace key. // +kubebuilder:validation:Required PrimaryKeySecretRef v1.SecretKeySelector `json:"primaryKeySecretRef" tf:"-"` } +type HBaseClusterNetworkInitParameters struct { + + // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. + ConnectionDirection *string `json:"connectionDirection,omitempty" tf:"connection_direction,omitempty"` + + // Is the private link enabled? Possible values include True or False. Defaults to False. Changing this forces a new resource to be created. + PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` +} + type HBaseClusterNetworkObservation struct { // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. @@ -343,6 +472,18 @@ type HBaseClusterParameters struct { Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } +type HBaseClusterRolesInitParameters struct { + + // A head_node block as defined above. + HeadNode []RolesHeadNodeInitParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` + + // A worker_node block as defined below. + WorkerNode []RolesWorkerNodeInitParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` + + // A zookeeper_node block as defined below. + ZookeeperNode []RolesZookeeperNodeInitParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` +} + type HBaseClusterRolesObservation struct { // A head_node block as defined above. @@ -358,16 +499,37 @@ type HBaseClusterRolesObservation struct { type HBaseClusterRolesParameters struct { // A head_node block as defined above. - // +kubebuilder:validation:Required - HeadNode []RolesHeadNodeParameters `json:"headNode" tf:"head_node,omitempty"` + // +kubebuilder:validation:Optional + HeadNode []RolesHeadNodeParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` // A worker_node block as defined below. - // +kubebuilder:validation:Required - WorkerNode []RolesWorkerNodeParameters `json:"workerNode" tf:"worker_node,omitempty"` + // +kubebuilder:validation:Optional + WorkerNode []RolesWorkerNodeParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` // A zookeeper_node block as defined below. - // +kubebuilder:validation:Required - ZookeeperNode []RolesZookeeperNodeParameters `json:"zookeeperNode" tf:"zookeeper_node,omitempty"` + // +kubebuilder:validation:Optional + ZookeeperNode []RolesZookeeperNodeParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` +} + +type HBaseClusterSecurityProfileInitParameters struct { + + // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. + AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` + + // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. + ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` + + // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` + + // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. + DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` + + // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. + LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` + + // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. + MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` } type HBaseClusterSecurityProfileObservation struct { @@ -394,32 +556,47 @@ type HBaseClusterSecurityProfileObservation struct { type HBaseClusterSecurityProfileParameters struct { // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - AaddsResourceID *string `json:"aaddsResourceId" tf:"aadds_resource_id,omitempty"` + // +kubebuilder:validation:Optional + AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DomainName *string `json:"domainName" tf:"domain_name,omitempty"` + // +kubebuilder:validation:Optional + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The user password of the Azure Active Directory Domain. Changing this forces a new resource to be created. // +kubebuilder:validation:Required DomainUserPasswordSecretRef v1.SecretKeySelector `json:"domainUserPasswordSecretRef" tf:"-"` // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DomainUsername *string `json:"domainUsername" tf:"domain_username,omitempty"` + // +kubebuilder:validation:Optional + DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - LdapsUrls []*string `json:"ldapsUrls" tf:"ldaps_urls,omitempty"` + // +kubebuilder:validation:Optional + LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - MsiResourceID *string `json:"msiResourceId" tf:"msi_resource_id,omitempty"` + // +kubebuilder:validation:Optional + MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` +} + +type HBaseClusterStorageAccountGen2InitParameters struct { + + // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. + FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` + + // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` + + // The ID of the Storage Account. Changing this forces a new resource to be created. + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } type HBaseClusterStorageAccountGen2Observation struct { @@ -440,20 +617,29 @@ type HBaseClusterStorageAccountGen2Observation struct { type HBaseClusterStorageAccountGen2Parameters struct { // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - FileSystemID *string `json:"filesystemId" tf:"filesystem_id,omitempty"` + // +kubebuilder:validation:Optional + FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsDefault *bool `json:"isDefault" tf:"is_default,omitempty"` + // +kubebuilder:validation:Optional + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - ManagedIdentityResourceID *string `json:"managedIdentityResourceId" tf:"managed_identity_resource_id,omitempty"` + // +kubebuilder:validation:Optional + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // The ID of the Storage Account. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StorageResourceID *string `json:"storageResourceId" tf:"storage_resource_id,omitempty"` + // +kubebuilder:validation:Optional + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` +} + +type HBaseClusterStorageAccountInitParameters struct { + + // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // The ID of the Storage Account. Changing this forces a new resource to be created. + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } type HBaseClusterStorageAccountObservation struct { @@ -471,8 +657,8 @@ type HBaseClusterStorageAccountObservation struct { type HBaseClusterStorageAccountParameters struct { // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsDefault *bool `json:"isDefault" tf:"is_default,omitempty"` + // +kubebuilder:validation:Optional + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The Access Key which should be used to connect to the Storage Account. Changing this forces a new resource to be created. // +kubebuilder:validation:Required @@ -497,6 +683,18 @@ type HBaseClusterStorageAccountParameters struct { StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } +type HeadNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type HeadNodeScriptActionsObservation struct { // The name of the script action. @@ -512,16 +710,28 @@ type HeadNodeScriptActionsObservation struct { type HeadNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type MetastoresAmbariInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type MetastoresAmbariObservation struct { @@ -539,20 +749,32 @@ type MetastoresAmbariObservation struct { type MetastoresAmbariParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type MetastoresHiveInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type MetastoresHiveObservation struct { @@ -570,20 +792,32 @@ type MetastoresHiveObservation struct { type MetastoresHiveParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type MetastoresOozieInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type MetastoresOozieObservation struct { @@ -601,20 +835,29 @@ type MetastoresOozieObservation struct { type MetastoresOozieParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type RecurrenceScheduleInitParameters struct { + Days []*string `json:"days,omitempty" tf:"days,omitempty"` + + // The number of instances which should be run for the Worker Nodes. + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + + Time *string `json:"time,omitempty" tf:"time,omitempty"` } type RecurrenceScheduleObservation struct { @@ -628,15 +871,33 @@ type RecurrenceScheduleObservation struct { type RecurrenceScheduleParameters struct { - // +kubebuilder:validation:Required - Days []*string `json:"days" tf:"days,omitempty"` + // +kubebuilder:validation:Optional + Days []*string `json:"days,omitempty" tf:"days,omitempty"` // The number of instances which should be run for the Worker Nodes. - // +kubebuilder:validation:Required - TargetInstanceCount *float64 `json:"targetInstanceCount" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` - // +kubebuilder:validation:Required - Time *string `json:"time" tf:"time,omitempty"` + // +kubebuilder:validation:Optional + Time *string `json:"time,omitempty" tf:"time,omitempty"` +} + +type RolesHeadNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []HeadNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } type RolesHeadNodeObservation struct { @@ -689,18 +950,40 @@ type RolesHeadNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type RolesWorkerNodeInitParameters struct { + Autoscale []WorkerNodeAutoscaleInitParameters `json:"autoscale,omitempty" tf:"autoscale,omitempty"` + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []RolesWorkerNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The number of instances which should be run for the Worker Nodes. + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` +} + type RolesWorkerNodeObservation struct { Autoscale []WorkerNodeAutoscaleObservation `json:"autoscale,omitempty" tf:"autoscale,omitempty"` @@ -758,22 +1041,34 @@ type RolesWorkerNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The number of instances which should be run for the Worker Nodes. - // +kubebuilder:validation:Required - TargetInstanceCount *float64 `json:"targetInstanceCount" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type RolesWorkerNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type RolesWorkerNodeScriptActionsObservation struct { // The name of the script action. @@ -789,16 +1084,34 @@ type RolesWorkerNodeScriptActionsObservation struct { type RolesWorkerNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type RolesZookeeperNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []RolesZookeeperNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } type RolesZookeeperNodeObservation struct { @@ -851,18 +1164,30 @@ type RolesZookeeperNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type RolesZookeeperNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type RolesZookeeperNodeScriptActionsObservation struct { // The name of the script action. @@ -878,16 +1203,20 @@ type RolesZookeeperNodeScriptActionsObservation struct { type RolesZookeeperNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type WorkerNodeAutoscaleInitParameters struct { + Recurrence []AutoscaleRecurrenceInitParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } type WorkerNodeAutoscaleObservation struct { @@ -904,6 +1233,18 @@ type WorkerNodeAutoscaleParameters struct { type HBaseClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HBaseClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HBaseClusterInitParameters `json:"initProvider,omitempty"` } // HBaseClusterStatus defines the observed state of HBaseCluster. @@ -924,12 +1265,12 @@ type HBaseClusterStatus struct { type HBaseCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clusterVersion)",message="clusterVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.componentVersion)",message="componentVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gateway)",message="gateway is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roles)",message="roles is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier)",message="tier is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clusterVersion) || has(self.initProvider.clusterVersion)",message="clusterVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.componentVersion) || has(self.initProvider.componentVersion)",message="componentVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.gateway) || has(self.initProvider.gateway)",message="gateway is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.roles) || has(self.initProvider.roles)",message="roles is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tier) || has(self.initProvider.tier)",message="tier is a required parameter" Spec HBaseClusterSpec `json:"spec"` Status HBaseClusterStatus `json:"status,omitempty"` } diff --git a/apis/hdinsight/v1beta1/zz_interactivequerycluster_types.go b/apis/hdinsight/v1beta1/zz_interactivequerycluster_types.go index 77c75bab2..8d8c836a2 100755 --- a/apis/hdinsight/v1beta1/zz_interactivequerycluster_types.go +++ b/apis/hdinsight/v1beta1/zz_interactivequerycluster_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AutoscaleCapacityInitParameters struct { + + // The maximum number of worker nodes to autoscale to based on the cluster's activity. + MaxInstanceCount *float64 `json:"maxInstanceCount,omitempty" tf:"max_instance_count,omitempty"` + + // The minimum number of worker nodes to autoscale to based on the cluster's activity. + MinInstanceCount *float64 `json:"minInstanceCount,omitempty" tf:"min_instance_count,omitempty"` +} + type AutoscaleCapacityObservation struct { // The maximum number of worker nodes to autoscale to based on the cluster's activity. @@ -25,12 +34,24 @@ type AutoscaleCapacityObservation struct { type AutoscaleCapacityParameters struct { // The maximum number of worker nodes to autoscale to based on the cluster's activity. - // +kubebuilder:validation:Required - MaxInstanceCount *float64 `json:"maxInstanceCount" tf:"max_instance_count,omitempty"` + // +kubebuilder:validation:Optional + MaxInstanceCount *float64 `json:"maxInstanceCount,omitempty" tf:"max_instance_count,omitempty"` // The minimum number of worker nodes to autoscale to based on the cluster's activity. - // +kubebuilder:validation:Required - MinInstanceCount *float64 `json:"minInstanceCount" tf:"min_instance_count,omitempty"` + // +kubebuilder:validation:Optional + MinInstanceCount *float64 `json:"minInstanceCount,omitempty" tf:"min_instance_count,omitempty"` +} + +type AutoscaleRecurrenceScheduleInitParameters struct { + + // The days of the week to perform autoscale. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + Days []*string `json:"days,omitempty" tf:"days,omitempty"` + + // The number of instances which should be run for the Worker Nodes. + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + + // The time of day to perform the autoscale in 24hour format. + Time *string `json:"time,omitempty" tf:"time,omitempty"` } type AutoscaleRecurrenceScheduleObservation struct { @@ -48,16 +69,22 @@ type AutoscaleRecurrenceScheduleObservation struct { type AutoscaleRecurrenceScheduleParameters struct { // The days of the week to perform autoscale. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. - // +kubebuilder:validation:Required - Days []*string `json:"days" tf:"days,omitempty"` + // +kubebuilder:validation:Optional + Days []*string `json:"days,omitempty" tf:"days,omitempty"` // The number of instances which should be run for the Worker Nodes. - // +kubebuilder:validation:Required - TargetInstanceCount *float64 `json:"targetInstanceCount" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The time of day to perform the autoscale in 24hour format. - // +kubebuilder:validation:Required - Time *string `json:"time" tf:"time,omitempty"` + // +kubebuilder:validation:Optional + Time *string `json:"time,omitempty" tf:"time,omitempty"` +} + +type InteractiveQueryClusterComponentVersionInitParameters struct { + + // The version of Interactive Query which should be used for this HDInsight Interactive Query Cluster. Changing this forces a new resource to be created. + InteractiveHive *string `json:"interactiveHive,omitempty" tf:"interactive_hive,omitempty"` } type InteractiveQueryClusterComponentVersionObservation struct { @@ -69,8 +96,17 @@ type InteractiveQueryClusterComponentVersionObservation struct { type InteractiveQueryClusterComponentVersionParameters struct { // The version of Interactive Query which should be used for this HDInsight Interactive Query Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - InteractiveHive *string `json:"interactiveHive" tf:"interactive_hive,omitempty"` + // +kubebuilder:validation:Optional + InteractiveHive *string `json:"interactiveHive,omitempty" tf:"interactive_hive,omitempty"` +} + +type InteractiveQueryClusterComputeIsolationInitParameters struct { + + // This field indicates whether enable compute isolation or not. Possible values are true or false. + ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` + + // The name of the host SKU. + HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } type InteractiveQueryClusterComputeIsolationObservation struct { @@ -93,6 +129,21 @@ type InteractiveQueryClusterComputeIsolationParameters struct { HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } +type InteractiveQueryClusterDiskEncryptionInitParameters struct { + + // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` + + // This is indicator to show whether resource disk encryption is enabled. + EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` + + // The ID of the key vault key. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // This is the resource ID of Managed Identity used to access the key vault. + KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` +} + type InteractiveQueryClusterDiskEncryptionObservation struct { // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. @@ -127,6 +178,12 @@ type InteractiveQueryClusterDiskEncryptionParameters struct { KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` } +type InteractiveQueryClusterExtensionInitParameters struct { + + // The workspace ID of the log analytics extension. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + type InteractiveQueryClusterExtensionObservation struct { // The workspace ID of the log analytics extension. @@ -136,14 +193,20 @@ type InteractiveQueryClusterExtensionObservation struct { type InteractiveQueryClusterExtensionParameters struct { // The workspace ID of the log analytics extension. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The workspace key of the log analytics extension. // +kubebuilder:validation:Required PrimaryKeySecretRef v1.SecretKeySelector `json:"primaryKeySecretRef" tf:"-"` } +type InteractiveQueryClusterGatewayInitParameters struct { + + // The username used for the Ambari Portal. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type InteractiveQueryClusterGatewayObservation struct { // The username used for the Ambari Portal. Changing this forces a new resource to be created. @@ -157,8 +220,77 @@ type InteractiveQueryClusterGatewayParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username used for the Ambari Portal. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type InteractiveQueryClusterInitParameters struct { + + // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. + ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` + + // A component_version block as defined below. + ComponentVersion []InteractiveQueryClusterComponentVersionInitParameters `json:"componentVersion,omitempty" tf:"component_version,omitempty"` + + // A compute_isolation block as defined below. + ComputeIsolation []InteractiveQueryClusterComputeIsolationInitParameters `json:"computeIsolation,omitempty" tf:"compute_isolation,omitempty"` + + // A disk_encryption block as defined below. + DiskEncryption []InteractiveQueryClusterDiskEncryptionInitParameters `json:"diskEncryption,omitempty" tf:"disk_encryption,omitempty"` + + // Whether encryption in transit is enabled for this Cluster. Changing this forces a new resource to be created. + EncryptionInTransitEnabled *bool `json:"encryptionInTransitEnabled,omitempty" tf:"encryption_in_transit_enabled,omitempty"` + + // An extension block as defined below. + Extension []InteractiveQueryClusterExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"` + + // A gateway block as defined below. + Gateway []InteractiveQueryClusterGatewayInitParameters `json:"gateway,omitempty" tf:"gateway,omitempty"` + + // Specifies the Azure Region which this HDInsight Interactive Query Cluster should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A metastores block as defined below. + Metastores []InteractiveQueryClusterMetastoresInitParameters `json:"metastores,omitempty" tf:"metastores,omitempty"` + + // A monitor block as defined below. + Monitor []InteractiveQueryClusterMonitorInitParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` + + // A network block as defined below. + Network []InteractiveQueryClusterNetworkInitParameters `json:"network,omitempty" tf:"network,omitempty"` + + // A roles block as defined below. + Roles []InteractiveQueryClusterRolesInitParameters `json:"roles,omitempty" tf:"roles,omitempty"` + + // A security_profile block as defined below. Changing this forces a new resource to be created. + SecurityProfile []InteractiveQueryClusterSecurityProfileInitParameters `json:"securityProfile,omitempty" tf:"security_profile,omitempty"` + + // One or more storage_account block as defined below. + StorageAccount []InteractiveQueryClusterStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // A storage_account_gen2 block as defined below. + StorageAccountGen2 []InteractiveQueryClusterStorageAccountGen2InitParameters `json:"storageAccountGen2,omitempty" tf:"storage_account_gen2,omitempty"` + + // The minimal supported TLS version. Possible values are 1.0, 1.1 or 1.2. Changing this forces a new resource to be created. + TLSMinVersion *string `json:"tlsMinVersion,omitempty" tf:"tls_min_version,omitempty"` + + // A map of Tags which should be assigned to this HDInsight Interactive Query Cluster. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the Tier which should be used for this HDInsight Interactive Query Cluster. Possible values are Standard or Premium. Changing this forces a new resource to be created. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + +type InteractiveQueryClusterMetastoresAmbariInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type InteractiveQueryClusterMetastoresAmbariObservation struct { @@ -176,20 +308,32 @@ type InteractiveQueryClusterMetastoresAmbariObservation struct { type InteractiveQueryClusterMetastoresAmbariParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type InteractiveQueryClusterMetastoresHiveInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type InteractiveQueryClusterMetastoresHiveObservation struct { @@ -207,20 +351,32 @@ type InteractiveQueryClusterMetastoresHiveObservation struct { type InteractiveQueryClusterMetastoresHiveParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type InteractiveQueryClusterMetastoresInitParameters struct { + + // An ambari block as defined below. + Ambari []InteractiveQueryClusterMetastoresAmbariInitParameters `json:"ambari,omitempty" tf:"ambari,omitempty"` + + // A hive block as defined below. + Hive []InteractiveQueryClusterMetastoresHiveInitParameters `json:"hive,omitempty" tf:"hive,omitempty"` + + // An oozie block as defined below. + Oozie []InteractiveQueryClusterMetastoresOozieInitParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } type InteractiveQueryClusterMetastoresObservation struct { @@ -235,6 +391,18 @@ type InteractiveQueryClusterMetastoresObservation struct { Oozie []InteractiveQueryClusterMetastoresOozieObservation `json:"oozie,omitempty" tf:"oozie,omitempty"` } +type InteractiveQueryClusterMetastoresOozieInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type InteractiveQueryClusterMetastoresOozieObservation struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. @@ -250,20 +418,20 @@ type InteractiveQueryClusterMetastoresOozieObservation struct { type InteractiveQueryClusterMetastoresOozieParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type InteractiveQueryClusterMetastoresParameters struct { @@ -281,6 +449,12 @@ type InteractiveQueryClusterMetastoresParameters struct { Oozie []InteractiveQueryClusterMetastoresOozieParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } +type InteractiveQueryClusterMonitorInitParameters struct { + + // The Operations Management Suite (OMS) workspace ID. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + type InteractiveQueryClusterMonitorObservation struct { // The Operations Management Suite (OMS) workspace ID. @@ -290,14 +464,23 @@ type InteractiveQueryClusterMonitorObservation struct { type InteractiveQueryClusterMonitorParameters struct { // The Operations Management Suite (OMS) workspace ID. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The Operations Management Suite (OMS) workspace key. // +kubebuilder:validation:Required PrimaryKeySecretRef v1.SecretKeySelector `json:"primaryKeySecretRef" tf:"-"` } +type InteractiveQueryClusterNetworkInitParameters struct { + + // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. + ConnectionDirection *string `json:"connectionDirection,omitempty" tf:"connection_direction,omitempty"` + + // Is the private link enabled? Possible values include True or False. Defaults to False. Changing this forces a new resource to be created. + PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` +} + type InteractiveQueryClusterNetworkObservation struct { // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. @@ -475,6 +658,24 @@ type InteractiveQueryClusterParameters struct { Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } +type InteractiveQueryClusterRolesHeadNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []RolesHeadNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` +} + type InteractiveQueryClusterRolesHeadNodeObservation struct { // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -525,18 +726,30 @@ type InteractiveQueryClusterRolesHeadNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type InteractiveQueryClusterRolesInitParameters struct { + + // A head_node block as defined above. + HeadNode []InteractiveQueryClusterRolesHeadNodeInitParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` + + // A worker_node block as defined below. + WorkerNode []InteractiveQueryClusterRolesWorkerNodeInitParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` + + // A zookeeper_node block as defined below. + ZookeeperNode []InteractiveQueryClusterRolesZookeeperNodeInitParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` +} + type InteractiveQueryClusterRolesObservation struct { // A head_node block as defined above. @@ -552,16 +765,40 @@ type InteractiveQueryClusterRolesObservation struct { type InteractiveQueryClusterRolesParameters struct { // A head_node block as defined above. - // +kubebuilder:validation:Required - HeadNode []InteractiveQueryClusterRolesHeadNodeParameters `json:"headNode" tf:"head_node,omitempty"` + // +kubebuilder:validation:Optional + HeadNode []InteractiveQueryClusterRolesHeadNodeParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` // A worker_node block as defined below. - // +kubebuilder:validation:Required - WorkerNode []InteractiveQueryClusterRolesWorkerNodeParameters `json:"workerNode" tf:"worker_node,omitempty"` + // +kubebuilder:validation:Optional + WorkerNode []InteractiveQueryClusterRolesWorkerNodeParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` // A zookeeper_node block as defined below. - // +kubebuilder:validation:Required - ZookeeperNode []InteractiveQueryClusterRolesZookeeperNodeParameters `json:"zookeeperNode" tf:"zookeeper_node,omitempty"` + // +kubebuilder:validation:Optional + ZookeeperNode []InteractiveQueryClusterRolesZookeeperNodeParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` +} + +type InteractiveQueryClusterRolesWorkerNodeInitParameters struct { + + // A autoscale block as defined below. + Autoscale []RolesWorkerNodeAutoscaleInitParameters `json:"autoscale,omitempty" tf:"autoscale,omitempty"` + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []InteractiveQueryClusterRolesWorkerNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The number of instances which should be run for the Worker Nodes. + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } type InteractiveQueryClusterRolesWorkerNodeObservation struct { @@ -624,22 +861,34 @@ type InteractiveQueryClusterRolesWorkerNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The number of instances which should be run for the Worker Nodes. - // +kubebuilder:validation:Required - TargetInstanceCount *float64 `json:"targetInstanceCount" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type InteractiveQueryClusterRolesWorkerNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type InteractiveQueryClusterRolesWorkerNodeScriptActionsObservation struct { // The name of the script action. @@ -655,16 +904,34 @@ type InteractiveQueryClusterRolesWorkerNodeScriptActionsObservation struct { type InteractiveQueryClusterRolesWorkerNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type InteractiveQueryClusterRolesZookeeperNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []InteractiveQueryClusterRolesZookeeperNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } type InteractiveQueryClusterRolesZookeeperNodeObservation struct { @@ -717,18 +984,30 @@ type InteractiveQueryClusterRolesZookeeperNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type InteractiveQueryClusterRolesZookeeperNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type InteractiveQueryClusterRolesZookeeperNodeScriptActionsObservation struct { // The name of the script action. @@ -744,16 +1023,37 @@ type InteractiveQueryClusterRolesZookeeperNodeScriptActionsObservation struct { type InteractiveQueryClusterRolesZookeeperNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type InteractiveQueryClusterSecurityProfileInitParameters struct { + + // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. + AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` + + // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. + ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` + + // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` + + // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. + DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` + + // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. + LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` + + // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. + MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` } type InteractiveQueryClusterSecurityProfileObservation struct { @@ -780,32 +1080,47 @@ type InteractiveQueryClusterSecurityProfileObservation struct { type InteractiveQueryClusterSecurityProfileParameters struct { // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - AaddsResourceID *string `json:"aaddsResourceId" tf:"aadds_resource_id,omitempty"` + // +kubebuilder:validation:Optional + AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DomainName *string `json:"domainName" tf:"domain_name,omitempty"` + // +kubebuilder:validation:Optional + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The user password of the Azure Active Directory Domain. Changing this forces a new resource to be created. // +kubebuilder:validation:Required DomainUserPasswordSecretRef v1.SecretKeySelector `json:"domainUserPasswordSecretRef" tf:"-"` // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DomainUsername *string `json:"domainUsername" tf:"domain_username,omitempty"` + // +kubebuilder:validation:Optional + DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - LdapsUrls []*string `json:"ldapsUrls" tf:"ldaps_urls,omitempty"` + // +kubebuilder:validation:Optional + LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - MsiResourceID *string `json:"msiResourceId" tf:"msi_resource_id,omitempty"` + // +kubebuilder:validation:Optional + MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` +} + +type InteractiveQueryClusterStorageAccountGen2InitParameters struct { + + // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. + FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` + + // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` + + // The ID of the Storage Account. Changing this forces a new resource to be created. + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } type InteractiveQueryClusterStorageAccountGen2Observation struct { @@ -826,20 +1141,29 @@ type InteractiveQueryClusterStorageAccountGen2Observation struct { type InteractiveQueryClusterStorageAccountGen2Parameters struct { // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - FileSystemID *string `json:"filesystemId" tf:"filesystem_id,omitempty"` + // +kubebuilder:validation:Optional + FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsDefault *bool `json:"isDefault" tf:"is_default,omitempty"` + // +kubebuilder:validation:Optional + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - ManagedIdentityResourceID *string `json:"managedIdentityResourceId" tf:"managed_identity_resource_id,omitempty"` + // +kubebuilder:validation:Optional + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // The ID of the Storage Account. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StorageResourceID *string `json:"storageResourceId" tf:"storage_resource_id,omitempty"` + // +kubebuilder:validation:Optional + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` +} + +type InteractiveQueryClusterStorageAccountInitParameters struct { + + // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // The ID of the Storage Account. Changing this forces a new resource to be created. + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } type InteractiveQueryClusterStorageAccountObservation struct { @@ -857,8 +1181,8 @@ type InteractiveQueryClusterStorageAccountObservation struct { type InteractiveQueryClusterStorageAccountParameters struct { // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsDefault *bool `json:"isDefault" tf:"is_default,omitempty"` + // +kubebuilder:validation:Optional + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The Access Key which should be used to connect to the Storage Account. Changing this forces a new resource to be created. // +kubebuilder:validation:Required @@ -883,6 +1207,18 @@ type InteractiveQueryClusterStorageAccountParameters struct { StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } +type RolesHeadNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type RolesHeadNodeScriptActionsObservation struct { // The name of the script action. @@ -898,16 +1234,25 @@ type RolesHeadNodeScriptActionsObservation struct { type RolesHeadNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type RolesWorkerNodeAutoscaleInitParameters struct { + + // A capacity block as defined below. + Capacity []AutoscaleCapacityInitParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // A recurrence block as defined below. + Recurrence []WorkerNodeAutoscaleRecurrenceInitParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } type RolesWorkerNodeAutoscaleObservation struct { @@ -930,6 +1275,15 @@ type RolesWorkerNodeAutoscaleParameters struct { Recurrence []WorkerNodeAutoscaleRecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } +type WorkerNodeAutoscaleRecurrenceInitParameters struct { + + // A list of schedule blocks as defined below. + Schedule []AutoscaleRecurrenceScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` + + // The time zone for the autoscale schedule times. + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` +} + type WorkerNodeAutoscaleRecurrenceObservation struct { // A list of schedule blocks as defined below. @@ -942,18 +1296,30 @@ type WorkerNodeAutoscaleRecurrenceObservation struct { type WorkerNodeAutoscaleRecurrenceParameters struct { // A list of schedule blocks as defined below. - // +kubebuilder:validation:Required - Schedule []AutoscaleRecurrenceScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []AutoscaleRecurrenceScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The time zone for the autoscale schedule times. - // +kubebuilder:validation:Required - Timezone *string `json:"timezone" tf:"timezone,omitempty"` + // +kubebuilder:validation:Optional + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } // InteractiveQueryClusterSpec defines the desired state of InteractiveQueryCluster type InteractiveQueryClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider InteractiveQueryClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider InteractiveQueryClusterInitParameters `json:"initProvider,omitempty"` } // InteractiveQueryClusterStatus defines the observed state of InteractiveQueryCluster. @@ -974,12 +1340,12 @@ type InteractiveQueryClusterStatus struct { type InteractiveQueryCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clusterVersion)",message="clusterVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.componentVersion)",message="componentVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gateway)",message="gateway is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roles)",message="roles is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier)",message="tier is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clusterVersion) || has(self.initProvider.clusterVersion)",message="clusterVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.componentVersion) || has(self.initProvider.componentVersion)",message="componentVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.gateway) || has(self.initProvider.gateway)",message="gateway is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.roles) || has(self.initProvider.roles)",message="roles is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tier) || has(self.initProvider.tier)",message="tier is a required parameter" Spec InteractiveQueryClusterSpec `json:"spec"` Status InteractiveQueryClusterStatus `json:"status,omitempty"` } diff --git a/apis/hdinsight/v1beta1/zz_kafkacluster_types.go b/apis/hdinsight/v1beta1/zz_kafkacluster_types.go index 81178a957..0f7b968c9 100755 --- a/apis/hdinsight/v1beta1/zz_kafkacluster_types.go +++ b/apis/hdinsight/v1beta1/zz_kafkacluster_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type KafkaClusterComponentVersionInitParameters struct { + + // The version of Kafka which should be used for this HDInsight Kafka Cluster. Changing this forces a new resource to be created. + Kafka *string `json:"kafka,omitempty" tf:"kafka,omitempty"` +} + type KafkaClusterComponentVersionObservation struct { // The version of Kafka which should be used for this HDInsight Kafka Cluster. Changing this forces a new resource to be created. @@ -22,8 +28,17 @@ type KafkaClusterComponentVersionObservation struct { type KafkaClusterComponentVersionParameters struct { // The version of Kafka which should be used for this HDInsight Kafka Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Kafka *string `json:"kafka" tf:"kafka,omitempty"` + // +kubebuilder:validation:Optional + Kafka *string `json:"kafka,omitempty" tf:"kafka,omitempty"` +} + +type KafkaClusterComputeIsolationInitParameters struct { + + // This field indicates whether enable compute isolation or not. Possible values are true or false. + ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` + + // The name of the host SKU. + HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } type KafkaClusterComputeIsolationObservation struct { @@ -46,6 +61,21 @@ type KafkaClusterComputeIsolationParameters struct { HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } +type KafkaClusterDiskEncryptionInitParameters struct { + + // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` + + // This is indicator to show whether resource disk encryption is enabled. + EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` + + // The ID of the key vault key. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // This is the resource ID of Managed Identity used to access the key vault. + KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` +} + type KafkaClusterDiskEncryptionObservation struct { // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. @@ -80,6 +110,12 @@ type KafkaClusterDiskEncryptionParameters struct { KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` } +type KafkaClusterExtensionInitParameters struct { + + // The workspace ID of the log analytics extension. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + type KafkaClusterExtensionObservation struct { // The workspace ID of the log analytics extension. @@ -89,14 +125,20 @@ type KafkaClusterExtensionObservation struct { type KafkaClusterExtensionParameters struct { // The workspace ID of the log analytics extension. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The workspace key of the log analytics extension. // +kubebuilder:validation:Required PrimaryKeySecretRef v1.SecretKeySelector `json:"primaryKeySecretRef" tf:"-"` } +type KafkaClusterGatewayInitParameters struct { + + // The username used for the Ambari Portal. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type KafkaClusterGatewayObservation struct { // The username used for the Ambari Portal. Changing this forces a new resource to be created. @@ -110,8 +152,80 @@ type KafkaClusterGatewayParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username used for the Ambari Portal. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type KafkaClusterInitParameters struct { + + // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. + ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` + + // A component_version block as defined below. + ComponentVersion []KafkaClusterComponentVersionInitParameters `json:"componentVersion,omitempty" tf:"component_version,omitempty"` + + // A compute_isolation block as defined below. + ComputeIsolation []KafkaClusterComputeIsolationInitParameters `json:"computeIsolation,omitempty" tf:"compute_isolation,omitempty"` + + // One or more disk_encryption block as defined below. + DiskEncryption []KafkaClusterDiskEncryptionInitParameters `json:"diskEncryption,omitempty" tf:"disk_encryption,omitempty"` + + // Whether encryption in transit is enabled for this HDInsight Kafka Cluster. Changing this forces a new resource to be created. + EncryptionInTransitEnabled *bool `json:"encryptionInTransitEnabled,omitempty" tf:"encryption_in_transit_enabled,omitempty"` + + // An extension block as defined below. + Extension []KafkaClusterExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"` + + // A gateway block as defined below. + Gateway []KafkaClusterGatewayInitParameters `json:"gateway,omitempty" tf:"gateway,omitempty"` + + // Specifies the Azure Region which this HDInsight Kafka Cluster should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A metastores block as defined below. + Metastores []KafkaClusterMetastoresInitParameters `json:"metastores,omitempty" tf:"metastores,omitempty"` + + // A monitor block as defined below. + Monitor []KafkaClusterMonitorInitParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` + + // A network block as defined below. + Network []KafkaClusterNetworkInitParameters `json:"network,omitempty" tf:"network,omitempty"` + + // A rest_proxy block as defined below. + RestProxy []RestProxyInitParameters `json:"restProxy,omitempty" tf:"rest_proxy,omitempty"` + + // A roles block as defined below. + Roles []KafkaClusterRolesInitParameters `json:"roles,omitempty" tf:"roles,omitempty"` + + // A security_profile block as defined below. Changing this forces a new resource to be created. + SecurityProfile []KafkaClusterSecurityProfileInitParameters `json:"securityProfile,omitempty" tf:"security_profile,omitempty"` + + // One or more storage_account block as defined below. + StorageAccount []KafkaClusterStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // A storage_account_gen2 block as defined below. + StorageAccountGen2 []KafkaClusterStorageAccountGen2InitParameters `json:"storageAccountGen2,omitempty" tf:"storage_account_gen2,omitempty"` + + // The minimal supported TLS version. Possible values are 1.0, 1.1 or 1.2. Changing this forces a new resource to be created. + TLSMinVersion *string `json:"tlsMinVersion,omitempty" tf:"tls_min_version,omitempty"` + + // A map of Tags which should be assigned to this HDInsight Kafka Cluster. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the Tier which should be used for this HDInsight Kafka Cluster. Possible values are Standard or Premium. Changing this forces a new resource to be created. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + +type KafkaClusterMetastoresAmbariInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type KafkaClusterMetastoresAmbariObservation struct { @@ -129,20 +243,32 @@ type KafkaClusterMetastoresAmbariObservation struct { type KafkaClusterMetastoresAmbariParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type KafkaClusterMetastoresHiveInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type KafkaClusterMetastoresHiveObservation struct { @@ -160,20 +286,32 @@ type KafkaClusterMetastoresHiveObservation struct { type KafkaClusterMetastoresHiveParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type KafkaClusterMetastoresInitParameters struct { + + // An ambari block as defined below. + Ambari []KafkaClusterMetastoresAmbariInitParameters `json:"ambari,omitempty" tf:"ambari,omitempty"` + + // A hive block as defined below. + Hive []KafkaClusterMetastoresHiveInitParameters `json:"hive,omitempty" tf:"hive,omitempty"` + + // An oozie block as defined below. + Oozie []KafkaClusterMetastoresOozieInitParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } type KafkaClusterMetastoresObservation struct { @@ -188,6 +326,18 @@ type KafkaClusterMetastoresObservation struct { Oozie []KafkaClusterMetastoresOozieObservation `json:"oozie,omitempty" tf:"oozie,omitempty"` } +type KafkaClusterMetastoresOozieInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type KafkaClusterMetastoresOozieObservation struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. @@ -203,20 +353,20 @@ type KafkaClusterMetastoresOozieObservation struct { type KafkaClusterMetastoresOozieParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type KafkaClusterMetastoresParameters struct { @@ -234,6 +384,12 @@ type KafkaClusterMetastoresParameters struct { Oozie []KafkaClusterMetastoresOozieParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } +type KafkaClusterMonitorInitParameters struct { + + // The Operations Management Suite (OMS) workspace ID. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + type KafkaClusterMonitorObservation struct { // The Operations Management Suite (OMS) workspace ID. @@ -243,14 +399,23 @@ type KafkaClusterMonitorObservation struct { type KafkaClusterMonitorParameters struct { // The Operations Management Suite (OMS) workspace ID. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The Operations Management Suite (OMS) workspace key. // +kubebuilder:validation:Required PrimaryKeySecretRef v1.SecretKeySelector `json:"primaryKeySecretRef" tf:"-"` } +type KafkaClusterNetworkInitParameters struct { + + // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. + ConnectionDirection *string `json:"connectionDirection,omitempty" tf:"connection_direction,omitempty"` + + // Is the private link enabled? Possible values include True or False. Defaults to False. Changing this forces a new resource to be created. + PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` +} + type KafkaClusterNetworkObservation struct { // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. @@ -438,6 +603,24 @@ type KafkaClusterParameters struct { Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } +type KafkaClusterRolesHeadNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []KafkaClusterRolesHeadNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` +} + type KafkaClusterRolesHeadNodeObservation struct { // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -488,18 +671,30 @@ type KafkaClusterRolesHeadNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type KafkaClusterRolesHeadNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type KafkaClusterRolesHeadNodeScriptActionsObservation struct { // The name of the script action. @@ -515,16 +710,31 @@ type KafkaClusterRolesHeadNodeScriptActionsObservation struct { type KafkaClusterRolesHeadNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type KafkaClusterRolesInitParameters struct { + + // A head_node block as defined above. + HeadNode []KafkaClusterRolesHeadNodeInitParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` + + // A kafka_management_node block as defined below. + KafkaManagementNode []KafkaManagementNodeInitParameters `json:"kafkaManagementNode,omitempty" tf:"kafka_management_node,omitempty"` + + // A worker_node block as defined below. + WorkerNode []KafkaClusterRolesWorkerNodeInitParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` + + // A zookeeper_node block as defined below. + ZookeeperNode []KafkaClusterRolesZookeeperNodeInitParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` } type KafkaClusterRolesObservation struct { @@ -545,20 +755,44 @@ type KafkaClusterRolesObservation struct { type KafkaClusterRolesParameters struct { // A head_node block as defined above. - // +kubebuilder:validation:Required - HeadNode []KafkaClusterRolesHeadNodeParameters `json:"headNode" tf:"head_node,omitempty"` + // +kubebuilder:validation:Optional + HeadNode []KafkaClusterRolesHeadNodeParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` // A kafka_management_node block as defined below. // +kubebuilder:validation:Optional KafkaManagementNode []KafkaManagementNodeParameters `json:"kafkaManagementNode,omitempty" tf:"kafka_management_node,omitempty"` // A worker_node block as defined below. - // +kubebuilder:validation:Required - WorkerNode []KafkaClusterRolesWorkerNodeParameters `json:"workerNode" tf:"worker_node,omitempty"` + // +kubebuilder:validation:Optional + WorkerNode []KafkaClusterRolesWorkerNodeParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` // A zookeeper_node block as defined below. - // +kubebuilder:validation:Required - ZookeeperNode []KafkaClusterRolesZookeeperNodeParameters `json:"zookeeperNode" tf:"zookeeper_node,omitempty"` + // +kubebuilder:validation:Optional + ZookeeperNode []KafkaClusterRolesZookeeperNodeParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` +} + +type KafkaClusterRolesWorkerNodeInitParameters struct { + + // The number of Data Disks which should be assigned to each Worker Node, which can be between 1 and 8. Changing this forces a new resource to be created. + NumberOfDisksPerNode *float64 `json:"numberOfDisksPerNode,omitempty" tf:"number_of_disks_per_node,omitempty"` + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []KafkaClusterRolesWorkerNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The number of instances which should be run for the Worker Nodes. + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } type KafkaClusterRolesWorkerNodeObservation struct { @@ -591,8 +825,8 @@ type KafkaClusterRolesWorkerNodeObservation struct { type KafkaClusterRolesWorkerNodeParameters struct { // The number of Data Disks which should be assigned to each Worker Node, which can be between 1 and 8. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - NumberOfDisksPerNode *float64 `json:"numberOfDisksPerNode" tf:"number_of_disks_per_node,omitempty"` + // +kubebuilder:validation:Optional + NumberOfDisksPerNode *float64 `json:"numberOfDisksPerNode,omitempty" tf:"number_of_disks_per_node,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -621,22 +855,34 @@ type KafkaClusterRolesWorkerNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The number of instances which should be run for the Worker Nodes. - // +kubebuilder:validation:Required - TargetInstanceCount *float64 `json:"targetInstanceCount" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type KafkaClusterRolesWorkerNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type KafkaClusterRolesWorkerNodeScriptActionsObservation struct { // The name of the script action. @@ -652,16 +898,34 @@ type KafkaClusterRolesWorkerNodeScriptActionsObservation struct { type KafkaClusterRolesWorkerNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type KafkaClusterRolesZookeeperNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []KafkaClusterRolesZookeeperNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } type KafkaClusterRolesZookeeperNodeObservation struct { @@ -714,18 +978,30 @@ type KafkaClusterRolesZookeeperNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type KafkaClusterRolesZookeeperNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type KafkaClusterRolesZookeeperNodeScriptActionsObservation struct { // The name of the script action. @@ -741,16 +1017,37 @@ type KafkaClusterRolesZookeeperNodeScriptActionsObservation struct { type KafkaClusterRolesZookeeperNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type KafkaClusterSecurityProfileInitParameters struct { + + // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. + AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` + + // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. + ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` + + // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` + + // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. + DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` + + // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. + LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` + + // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. + MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` } type KafkaClusterSecurityProfileObservation struct { @@ -777,32 +1074,47 @@ type KafkaClusterSecurityProfileObservation struct { type KafkaClusterSecurityProfileParameters struct { // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - AaddsResourceID *string `json:"aaddsResourceId" tf:"aadds_resource_id,omitempty"` + // +kubebuilder:validation:Optional + AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DomainName *string `json:"domainName" tf:"domain_name,omitempty"` + // +kubebuilder:validation:Optional + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The user password of the Azure Active Directory Domain. Changing this forces a new resource to be created. // +kubebuilder:validation:Required DomainUserPasswordSecretRef v1.SecretKeySelector `json:"domainUserPasswordSecretRef" tf:"-"` // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DomainUsername *string `json:"domainUsername" tf:"domain_username,omitempty"` + // +kubebuilder:validation:Optional + DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - LdapsUrls []*string `json:"ldapsUrls" tf:"ldaps_urls,omitempty"` + // +kubebuilder:validation:Optional + LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - MsiResourceID *string `json:"msiResourceId" tf:"msi_resource_id,omitempty"` + // +kubebuilder:validation:Optional + MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` +} + +type KafkaClusterStorageAccountGen2InitParameters struct { + + // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. + FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` + + // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` + + // The ID of the Storage Account. Changing this forces a new resource to be created. + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } type KafkaClusterStorageAccountGen2Observation struct { @@ -823,20 +1135,29 @@ type KafkaClusterStorageAccountGen2Observation struct { type KafkaClusterStorageAccountGen2Parameters struct { // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - FileSystemID *string `json:"filesystemId" tf:"filesystem_id,omitempty"` + // +kubebuilder:validation:Optional + FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsDefault *bool `json:"isDefault" tf:"is_default,omitempty"` + // +kubebuilder:validation:Optional + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - ManagedIdentityResourceID *string `json:"managedIdentityResourceId" tf:"managed_identity_resource_id,omitempty"` + // +kubebuilder:validation:Optional + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // The ID of the Storage Account. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StorageResourceID *string `json:"storageResourceId" tf:"storage_resource_id,omitempty"` + // +kubebuilder:validation:Optional + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` +} + +type KafkaClusterStorageAccountInitParameters struct { + + // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // The ID of the Storage Account. Changing this forces a new resource to be created. + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } type KafkaClusterStorageAccountObservation struct { @@ -854,8 +1175,8 @@ type KafkaClusterStorageAccountObservation struct { type KafkaClusterStorageAccountParameters struct { // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsDefault *bool `json:"isDefault" tf:"is_default,omitempty"` + // +kubebuilder:validation:Optional + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The Access Key which should be used to connect to the Storage Account. Changing this forces a new resource to be created. // +kubebuilder:validation:Required @@ -880,6 +1201,24 @@ type KafkaClusterStorageAccountParameters struct { StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } +type KafkaManagementNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []KafkaManagementNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` +} + type KafkaManagementNodeObservation struct { // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -930,18 +1269,30 @@ type KafkaManagementNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type KafkaManagementNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type KafkaManagementNodeScriptActionsObservation struct { // The name of the script action. @@ -957,16 +1308,25 @@ type KafkaManagementNodeScriptActionsObservation struct { type KafkaManagementNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type RestProxyInitParameters struct { + + // The Azure Active Directory Security Group ID. Changing this forces a new resource to be created. + SecurityGroupID *string `json:"securityGroupId,omitempty" tf:"security_group_id,omitempty"` + + // The Azure Active Directory Security Group name. Changing this forces a new resource to be created. + SecurityGroupName *string `json:"securityGroupName,omitempty" tf:"security_group_name,omitempty"` } type RestProxyObservation struct { @@ -981,18 +1341,30 @@ type RestProxyObservation struct { type RestProxyParameters struct { // The Azure Active Directory Security Group ID. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - SecurityGroupID *string `json:"securityGroupId" tf:"security_group_id,omitempty"` + // +kubebuilder:validation:Optional + SecurityGroupID *string `json:"securityGroupId,omitempty" tf:"security_group_id,omitempty"` // The Azure Active Directory Security Group name. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - SecurityGroupName *string `json:"securityGroupName" tf:"security_group_name,omitempty"` + // +kubebuilder:validation:Optional + SecurityGroupName *string `json:"securityGroupName,omitempty" tf:"security_group_name,omitempty"` } // KafkaClusterSpec defines the desired state of KafkaCluster type KafkaClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider KafkaClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider KafkaClusterInitParameters `json:"initProvider,omitempty"` } // KafkaClusterStatus defines the observed state of KafkaCluster. @@ -1013,12 +1385,12 @@ type KafkaClusterStatus struct { type KafkaCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clusterVersion)",message="clusterVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.componentVersion)",message="componentVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gateway)",message="gateway is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roles)",message="roles is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier)",message="tier is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clusterVersion) || has(self.initProvider.clusterVersion)",message="clusterVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.componentVersion) || has(self.initProvider.componentVersion)",message="componentVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.gateway) || has(self.initProvider.gateway)",message="gateway is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.roles) || has(self.initProvider.roles)",message="roles is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tier) || has(self.initProvider.tier)",message="tier is a required parameter" Spec KafkaClusterSpec `json:"spec"` Status KafkaClusterStatus `json:"status,omitempty"` } diff --git a/apis/hdinsight/v1beta1/zz_sparkcluster_types.go b/apis/hdinsight/v1beta1/zz_sparkcluster_types.go index 17a382929..016c8cc88 100755 --- a/apis/hdinsight/v1beta1/zz_sparkcluster_types.go +++ b/apis/hdinsight/v1beta1/zz_sparkcluster_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RolesWorkerNodeAutoscaleRecurrenceInitParameters struct { + + // A list of schedule blocks as defined below. + Schedule []WorkerNodeAutoscaleRecurrenceScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` + + // The time zone for the autoscale schedule times. + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` +} + type RolesWorkerNodeAutoscaleRecurrenceObservation struct { // A list of schedule blocks as defined below. @@ -25,12 +34,18 @@ type RolesWorkerNodeAutoscaleRecurrenceObservation struct { type RolesWorkerNodeAutoscaleRecurrenceParameters struct { // A list of schedule blocks as defined below. - // +kubebuilder:validation:Required - Schedule []WorkerNodeAutoscaleRecurrenceScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []WorkerNodeAutoscaleRecurrenceScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The time zone for the autoscale schedule times. - // +kubebuilder:validation:Required - Timezone *string `json:"timezone" tf:"timezone,omitempty"` + // +kubebuilder:validation:Optional + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` +} + +type SparkClusterComponentVersionInitParameters struct { + + // The version of Spark which should be used for this HDInsight Spark Cluster. Changing this forces a new resource to be created. + Spark *string `json:"spark,omitempty" tf:"spark,omitempty"` } type SparkClusterComponentVersionObservation struct { @@ -42,8 +57,17 @@ type SparkClusterComponentVersionObservation struct { type SparkClusterComponentVersionParameters struct { // The version of Spark which should be used for this HDInsight Spark Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Spark *string `json:"spark" tf:"spark,omitempty"` + // +kubebuilder:validation:Optional + Spark *string `json:"spark,omitempty" tf:"spark,omitempty"` +} + +type SparkClusterComputeIsolationInitParameters struct { + + // This field indicates whether enable compute isolation or not. Possible values are true or false. + ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` + + // The name of the host SKU. + HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } type SparkClusterComputeIsolationObservation struct { @@ -66,6 +90,21 @@ type SparkClusterComputeIsolationParameters struct { HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } +type SparkClusterDiskEncryptionInitParameters struct { + + // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` + + // This is indicator to show whether resource disk encryption is enabled. + EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` + + // The ID of the key vault key. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // This is the resource ID of Managed Identity used to access the key vault. + KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` +} + type SparkClusterDiskEncryptionObservation struct { // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. @@ -100,6 +139,12 @@ type SparkClusterDiskEncryptionParameters struct { KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` } +type SparkClusterExtensionInitParameters struct { + + // The workspace ID of the log analytics extension. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + type SparkClusterExtensionObservation struct { // The workspace ID of the log analytics extension. @@ -109,14 +154,20 @@ type SparkClusterExtensionObservation struct { type SparkClusterExtensionParameters struct { // The workspace ID of the log analytics extension. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The workspace key of the log analytics extension. // +kubebuilder:validation:Required PrimaryKeySecretRef v1.SecretKeySelector `json:"primaryKeySecretRef" tf:"-"` } +type SparkClusterGatewayInitParameters struct { + + // The username used for the Ambari Portal. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type SparkClusterGatewayObservation struct { // The username used for the Ambari Portal. Changing this forces a new resource to be created. @@ -130,8 +181,77 @@ type SparkClusterGatewayParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username used for the Ambari Portal. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type SparkClusterInitParameters struct { + + // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. + ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` + + // A component_version block as defined below. + ComponentVersion []SparkClusterComponentVersionInitParameters `json:"componentVersion,omitempty" tf:"component_version,omitempty"` + + // A compute_isolation block as defined below. + ComputeIsolation []SparkClusterComputeIsolationInitParameters `json:"computeIsolation,omitempty" tf:"compute_isolation,omitempty"` + + // One or more disk_encryption block as defined below. + DiskEncryption []SparkClusterDiskEncryptionInitParameters `json:"diskEncryption,omitempty" tf:"disk_encryption,omitempty"` + + // Whether encryption in transit is enabled for this Cluster. Changing this forces a new resource to be created. + EncryptionInTransitEnabled *bool `json:"encryptionInTransitEnabled,omitempty" tf:"encryption_in_transit_enabled,omitempty"` + + // An extension block as defined below. + Extension []SparkClusterExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"` + + // A gateway block as defined below. + Gateway []SparkClusterGatewayInitParameters `json:"gateway,omitempty" tf:"gateway,omitempty"` + + // Specifies the Azure Region which this HDInsight Spark Cluster should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A metastores block as defined below. + Metastores []SparkClusterMetastoresInitParameters `json:"metastores,omitempty" tf:"metastores,omitempty"` + + // A monitor block as defined below. + Monitor []SparkClusterMonitorInitParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` + + // A network block as defined below. + Network []SparkClusterNetworkInitParameters `json:"network,omitempty" tf:"network,omitempty"` + + // A roles block as defined below. + Roles []SparkClusterRolesInitParameters `json:"roles,omitempty" tf:"roles,omitempty"` + + // A security_profile block as defined below. Changing this forces a new resource to be created. + SecurityProfile []SparkClusterSecurityProfileInitParameters `json:"securityProfile,omitempty" tf:"security_profile,omitempty"` + + // One or more storage_account block as defined below. + StorageAccount []SparkClusterStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // A storage_account_gen2 block as defined below. + StorageAccountGen2 []SparkClusterStorageAccountGen2InitParameters `json:"storageAccountGen2,omitempty" tf:"storage_account_gen2,omitempty"` + + // The minimal supported TLS version. Possible values are 1.0, 1.1 or 1.2. Changing this forces a new resource to be created. + TLSMinVersion *string `json:"tlsMinVersion,omitempty" tf:"tls_min_version,omitempty"` + + // A map of Tags which should be assigned to this HDInsight Spark Cluster. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the Tier which should be used for this HDInsight Spark Cluster. Possible values are Standard or Premium. Changing this forces a new resource to be created. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + +type SparkClusterMetastoresAmbariInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type SparkClusterMetastoresAmbariObservation struct { @@ -149,20 +269,32 @@ type SparkClusterMetastoresAmbariObservation struct { type SparkClusterMetastoresAmbariParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type SparkClusterMetastoresHiveInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type SparkClusterMetastoresHiveObservation struct { @@ -180,20 +312,32 @@ type SparkClusterMetastoresHiveObservation struct { type SparkClusterMetastoresHiveParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type SparkClusterMetastoresInitParameters struct { + + // An ambari block as defined below. + Ambari []SparkClusterMetastoresAmbariInitParameters `json:"ambari,omitempty" tf:"ambari,omitempty"` + + // A hive block as defined below. + Hive []SparkClusterMetastoresHiveInitParameters `json:"hive,omitempty" tf:"hive,omitempty"` + + // An oozie block as defined below. + Oozie []SparkClusterMetastoresOozieInitParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } type SparkClusterMetastoresObservation struct { @@ -208,6 +352,18 @@ type SparkClusterMetastoresObservation struct { Oozie []SparkClusterMetastoresOozieObservation `json:"oozie,omitempty" tf:"oozie,omitempty"` } +type SparkClusterMetastoresOozieInitParameters struct { + + // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` + + // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type SparkClusterMetastoresOozieObservation struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. @@ -223,20 +379,20 @@ type SparkClusterMetastoresOozieObservation struct { type SparkClusterMetastoresOozieParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DatabaseName *string `json:"databaseName" tf:"database_name,omitempty"` + // +kubebuilder:validation:Optional + DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type SparkClusterMetastoresParameters struct { @@ -254,6 +410,12 @@ type SparkClusterMetastoresParameters struct { Oozie []SparkClusterMetastoresOozieParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } +type SparkClusterMonitorInitParameters struct { + + // The Operations Management Suite (OMS) workspace ID. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` +} + type SparkClusterMonitorObservation struct { // The Operations Management Suite (OMS) workspace ID. @@ -263,14 +425,23 @@ type SparkClusterMonitorObservation struct { type SparkClusterMonitorParameters struct { // The Operations Management Suite (OMS) workspace ID. - // +kubebuilder:validation:Required - LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId" tf:"log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The Operations Management Suite (OMS) workspace key. // +kubebuilder:validation:Required PrimaryKeySecretRef v1.SecretKeySelector `json:"primaryKeySecretRef" tf:"-"` } +type SparkClusterNetworkInitParameters struct { + + // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. + ConnectionDirection *string `json:"connectionDirection,omitempty" tf:"connection_direction,omitempty"` + + // Is the private link enabled? Possible values include True or False. Defaults to False. Changing this forces a new resource to be created. + PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` +} + type SparkClusterNetworkObservation struct { // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. @@ -448,6 +619,24 @@ type SparkClusterParameters struct { Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } +type SparkClusterRolesHeadNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []SparkClusterRolesHeadNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` +} + type SparkClusterRolesHeadNodeObservation struct { // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -498,18 +687,30 @@ type SparkClusterRolesHeadNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type SparkClusterRolesHeadNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type SparkClusterRolesHeadNodeScriptActionsObservation struct { // The name of the script action. @@ -525,16 +726,28 @@ type SparkClusterRolesHeadNodeScriptActionsObservation struct { type SparkClusterRolesHeadNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type SparkClusterRolesInitParameters struct { + + // A head_node block as defined above. + HeadNode []SparkClusterRolesHeadNodeInitParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` + + // A worker_node block as defined below. + WorkerNode []SparkClusterRolesWorkerNodeInitParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` + + // A zookeeper_node block as defined below. + ZookeeperNode []SparkClusterRolesZookeeperNodeInitParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` } type SparkClusterRolesObservation struct { @@ -552,16 +765,25 @@ type SparkClusterRolesObservation struct { type SparkClusterRolesParameters struct { // A head_node block as defined above. - // +kubebuilder:validation:Required - HeadNode []SparkClusterRolesHeadNodeParameters `json:"headNode" tf:"head_node,omitempty"` + // +kubebuilder:validation:Optional + HeadNode []SparkClusterRolesHeadNodeParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` // A worker_node block as defined below. - // +kubebuilder:validation:Required - WorkerNode []SparkClusterRolesWorkerNodeParameters `json:"workerNode" tf:"worker_node,omitempty"` + // +kubebuilder:validation:Optional + WorkerNode []SparkClusterRolesWorkerNodeParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` // A zookeeper_node block as defined below. - // +kubebuilder:validation:Required - ZookeeperNode []SparkClusterRolesZookeeperNodeParameters `json:"zookeeperNode" tf:"zookeeper_node,omitempty"` + // +kubebuilder:validation:Optional + ZookeeperNode []SparkClusterRolesZookeeperNodeParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` +} + +type SparkClusterRolesWorkerNodeAutoscaleInitParameters struct { + + // A capacity block as defined below. + Capacity []WorkerNodeAutoscaleCapacityInitParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // A recurrence block as defined below. + Recurrence []RolesWorkerNodeAutoscaleRecurrenceInitParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } type SparkClusterRolesWorkerNodeAutoscaleObservation struct { @@ -584,6 +806,30 @@ type SparkClusterRolesWorkerNodeAutoscaleParameters struct { Recurrence []RolesWorkerNodeAutoscaleRecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } +type SparkClusterRolesWorkerNodeInitParameters struct { + + // A autoscale block as defined below. + Autoscale []SparkClusterRolesWorkerNodeAutoscaleInitParameters `json:"autoscale,omitempty" tf:"autoscale,omitempty"` + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []SparkClusterRolesWorkerNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The number of instances which should be run for the Worker Nodes. + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` +} + type SparkClusterRolesWorkerNodeObservation struct { // A autoscale block as defined below. @@ -644,22 +890,34 @@ type SparkClusterRolesWorkerNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The number of instances which should be run for the Worker Nodes. - // +kubebuilder:validation:Required - TargetInstanceCount *float64 `json:"targetInstanceCount" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type SparkClusterRolesWorkerNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type SparkClusterRolesWorkerNodeScriptActionsObservation struct { // The name of the script action. @@ -675,16 +933,34 @@ type SparkClusterRolesWorkerNodeScriptActionsObservation struct { type SparkClusterRolesWorkerNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type SparkClusterRolesZookeeperNodeInitParameters struct { + + // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` + + // The script action which will run on the cluster. Changing this forces a new resource to be created. + ScriptActions []SparkClusterRolesZookeeperNodeScriptActionsInitParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` + + // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + Username *string `json:"username,omitempty" tf:"username,omitempty"` + + // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` + + // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } type SparkClusterRolesZookeeperNodeObservation struct { @@ -737,18 +1013,30 @@ type SparkClusterRolesZookeeperNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type SparkClusterRolesZookeeperNodeScriptActionsInitParameters struct { + + // The name of the script action. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The parameters for the script provided. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The URI to the script. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type SparkClusterRolesZookeeperNodeScriptActionsObservation struct { // The name of the script action. @@ -764,16 +1052,37 @@ type SparkClusterRolesZookeeperNodeScriptActionsObservation struct { type SparkClusterRolesZookeeperNodeScriptActionsParameters struct { // The name of the script action. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. - // +kubebuilder:validation:Required - URI *string `json:"uri" tf:"uri,omitempty"` + // +kubebuilder:validation:Optional + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + +type SparkClusterSecurityProfileInitParameters struct { + + // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. + AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` + + // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. + ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` + + // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` + + // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. + DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` + + // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. + LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` + + // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. + MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` } type SparkClusterSecurityProfileObservation struct { @@ -800,32 +1109,47 @@ type SparkClusterSecurityProfileObservation struct { type SparkClusterSecurityProfileParameters struct { // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - AaddsResourceID *string `json:"aaddsResourceId" tf:"aadds_resource_id,omitempty"` + // +kubebuilder:validation:Optional + AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DomainName *string `json:"domainName" tf:"domain_name,omitempty"` + // +kubebuilder:validation:Optional + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The user password of the Azure Active Directory Domain. Changing this forces a new resource to be created. // +kubebuilder:validation:Required DomainUserPasswordSecretRef v1.SecretKeySelector `json:"domainUserPasswordSecretRef" tf:"-"` // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - DomainUsername *string `json:"domainUsername" tf:"domain_username,omitempty"` + // +kubebuilder:validation:Optional + DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - LdapsUrls []*string `json:"ldapsUrls" tf:"ldaps_urls,omitempty"` + // +kubebuilder:validation:Optional + LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - MsiResourceID *string `json:"msiResourceId" tf:"msi_resource_id,omitempty"` + // +kubebuilder:validation:Optional + MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` +} + +type SparkClusterStorageAccountGen2InitParameters struct { + + // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. + FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` + + // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` + + // The ID of the Storage Account. Changing this forces a new resource to be created. + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } type SparkClusterStorageAccountGen2Observation struct { @@ -846,20 +1170,29 @@ type SparkClusterStorageAccountGen2Observation struct { type SparkClusterStorageAccountGen2Parameters struct { // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - FileSystemID *string `json:"filesystemId" tf:"filesystem_id,omitempty"` + // +kubebuilder:validation:Optional + FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsDefault *bool `json:"isDefault" tf:"is_default,omitempty"` + // +kubebuilder:validation:Optional + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - ManagedIdentityResourceID *string `json:"managedIdentityResourceId" tf:"managed_identity_resource_id,omitempty"` + // +kubebuilder:validation:Optional + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // The ID of the Storage Account. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - StorageResourceID *string `json:"storageResourceId" tf:"storage_resource_id,omitempty"` + // +kubebuilder:validation:Optional + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` +} + +type SparkClusterStorageAccountInitParameters struct { + + // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // The ID of the Storage Account. Changing this forces a new resource to be created. + StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } type SparkClusterStorageAccountObservation struct { @@ -877,8 +1210,8 @@ type SparkClusterStorageAccountObservation struct { type SparkClusterStorageAccountParameters struct { // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsDefault *bool `json:"isDefault" tf:"is_default,omitempty"` + // +kubebuilder:validation:Optional + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The Access Key which should be used to connect to the Storage Account. Changing this forces a new resource to be created. // +kubebuilder:validation:Required @@ -903,6 +1236,15 @@ type SparkClusterStorageAccountParameters struct { StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } +type WorkerNodeAutoscaleCapacityInitParameters struct { + + // The maximum number of worker nodes to autoscale to based on the cluster's activity. + MaxInstanceCount *float64 `json:"maxInstanceCount,omitempty" tf:"max_instance_count,omitempty"` + + // The minimum number of worker nodes to autoscale to based on the cluster's activity. + MinInstanceCount *float64 `json:"minInstanceCount,omitempty" tf:"min_instance_count,omitempty"` +} + type WorkerNodeAutoscaleCapacityObservation struct { // The maximum number of worker nodes to autoscale to based on the cluster's activity. @@ -915,12 +1257,24 @@ type WorkerNodeAutoscaleCapacityObservation struct { type WorkerNodeAutoscaleCapacityParameters struct { // The maximum number of worker nodes to autoscale to based on the cluster's activity. - // +kubebuilder:validation:Required - MaxInstanceCount *float64 `json:"maxInstanceCount" tf:"max_instance_count,omitempty"` + // +kubebuilder:validation:Optional + MaxInstanceCount *float64 `json:"maxInstanceCount,omitempty" tf:"max_instance_count,omitempty"` // The minimum number of worker nodes to autoscale to based on the cluster's activity. - // +kubebuilder:validation:Required - MinInstanceCount *float64 `json:"minInstanceCount" tf:"min_instance_count,omitempty"` + // +kubebuilder:validation:Optional + MinInstanceCount *float64 `json:"minInstanceCount,omitempty" tf:"min_instance_count,omitempty"` +} + +type WorkerNodeAutoscaleRecurrenceScheduleInitParameters struct { + + // The days of the week to perform autoscale. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + Days []*string `json:"days,omitempty" tf:"days,omitempty"` + + // The number of instances which should be run for the Worker Nodes. + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + + // The time of day to perform the autoscale in 24hour format. + Time *string `json:"time,omitempty" tf:"time,omitempty"` } type WorkerNodeAutoscaleRecurrenceScheduleObservation struct { @@ -938,22 +1292,34 @@ type WorkerNodeAutoscaleRecurrenceScheduleObservation struct { type WorkerNodeAutoscaleRecurrenceScheduleParameters struct { // The days of the week to perform autoscale. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. - // +kubebuilder:validation:Required - Days []*string `json:"days" tf:"days,omitempty"` + // +kubebuilder:validation:Optional + Days []*string `json:"days,omitempty" tf:"days,omitempty"` // The number of instances which should be run for the Worker Nodes. - // +kubebuilder:validation:Required - TargetInstanceCount *float64 `json:"targetInstanceCount" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional + TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The time of day to perform the autoscale in 24hour format. - // +kubebuilder:validation:Required - Time *string `json:"time" tf:"time,omitempty"` + // +kubebuilder:validation:Optional + Time *string `json:"time,omitempty" tf:"time,omitempty"` } // SparkClusterSpec defines the desired state of SparkCluster type SparkClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SparkClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SparkClusterInitParameters `json:"initProvider,omitempty"` } // SparkClusterStatus defines the observed state of SparkCluster. @@ -974,12 +1340,12 @@ type SparkClusterStatus struct { type SparkCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clusterVersion)",message="clusterVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.componentVersion)",message="componentVersion is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gateway)",message="gateway is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roles)",message="roles is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier)",message="tier is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clusterVersion) || has(self.initProvider.clusterVersion)",message="clusterVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.componentVersion) || has(self.initProvider.componentVersion)",message="componentVersion is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.gateway) || has(self.initProvider.gateway)",message="gateway is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.roles) || has(self.initProvider.roles)",message="roles is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tier) || has(self.initProvider.tier)",message="tier is a required parameter" Spec SparkClusterSpec `json:"spec"` Status SparkClusterStatus `json:"status,omitempty"` } diff --git a/apis/healthbot/v1beta1/zz_generated.deepcopy.go b/apis/healthbot/v1beta1/zz_generated.deepcopy.go index fca78642e..b1bc0db03 100644 --- a/apis/healthbot/v1beta1/zz_generated.deepcopy.go +++ b/apis/healthbot/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,46 @@ func (in *HealthBot) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthBotInitParameters) DeepCopyInto(out *HealthBotInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthBotInitParameters. +func (in *HealthBotInitParameters) DeepCopy() *HealthBotInitParameters { + if in == nil { + return nil + } + out := new(HealthBotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthBotList) DeepCopyInto(out *HealthBotList) { *out = *in @@ -188,6 +228,7 @@ func (in *HealthBotSpec) DeepCopyInto(out *HealthBotSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthBotSpec. diff --git a/apis/healthbot/v1beta1/zz_generated.managed.go b/apis/healthbot/v1beta1/zz_generated.managed.go index 1918ef09d..8548b167a 100644 --- a/apis/healthbot/v1beta1/zz_generated.managed.go +++ b/apis/healthbot/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *HealthBot) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HealthBot. -func (mg *HealthBot) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HealthBot. +func (mg *HealthBot) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HealthBot. @@ -55,9 +55,9 @@ func (mg *HealthBot) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HealthBot. -func (mg *HealthBot) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HealthBot. +func (mg *HealthBot) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HealthBot. diff --git a/apis/healthbot/v1beta1/zz_generated_terraformed.go b/apis/healthbot/v1beta1/zz_generated_terraformed.go index 10d5ff508..ea498b82a 100755 --- a/apis/healthbot/v1beta1/zz_generated_terraformed.go +++ b/apis/healthbot/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *HealthBot) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HealthBot +func (tr *HealthBot) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HealthBot using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HealthBot) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/healthbot/v1beta1/zz_healthbot_types.go b/apis/healthbot/v1beta1/zz_healthbot_types.go index 68a54f401..dc0f9a36a 100755 --- a/apis/healthbot/v1beta1/zz_healthbot_types.go +++ b/apis/healthbot/v1beta1/zz_healthbot_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HealthBotInitParameters struct { + + // Specifies The Azure Region where the resource exists. Changing this force a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name which should be used for the SKU of the service. Possible values are C0, F0 and S1. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags which should be assigned to the service. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type HealthBotObservation struct { // The management portal url. @@ -66,6 +78,18 @@ type HealthBotParameters struct { type HealthBotSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HealthBotParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HealthBotInitParameters `json:"initProvider,omitempty"` } // HealthBotStatus defines the observed state of HealthBot. @@ -86,8 +110,8 @@ type HealthBotStatus struct { type HealthBot struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec HealthBotSpec `json:"spec"` Status HealthBotStatus `json:"status,omitempty"` } diff --git a/apis/healthcareapis/v1beta1/zz_generated.deepcopy.go b/apis/healthcareapis/v1beta1/zz_generated.deepcopy.go index 50096d2dc..eeb1a5f13 100644 --- a/apis/healthcareapis/v1beta1/zz_generated.deepcopy.go +++ b/apis/healthcareapis/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,36 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthenticationConfigurationInitParameters) DeepCopyInto(out *AuthenticationConfigurationInitParameters) { + *out = *in + if in.Audience != nil { + in, out := &in.Audience, &out.Audience + *out = new(string) + **out = **in + } + if in.Authority != nil { + in, out := &in.Authority, &out.Authority + *out = new(string) + **out = **in + } + if in.SmartProxyEnabled != nil { + in, out := &in.SmartProxyEnabled, &out.SmartProxyEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationConfigurationInitParameters. +func (in *AuthenticationConfigurationInitParameters) DeepCopy() *AuthenticationConfigurationInitParameters { + if in == nil { + return nil + } + out := new(AuthenticationConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthenticationConfigurationObservation) DeepCopyInto(out *AuthenticationConfigurationObservation) { *out = *in @@ -74,6 +104,21 @@ func (in *AuthenticationConfigurationParameters) DeepCopy() *AuthenticationConfi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthenticationInitParameters) DeepCopyInto(out *AuthenticationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationInitParameters. +func (in *AuthenticationInitParameters) DeepCopy() *AuthenticationInitParameters { + if in == nil { + return nil + } + out := new(AuthenticationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthenticationObservation) DeepCopyInto(out *AuthenticationObservation) { *out = *in @@ -120,6 +165,64 @@ func (in *AuthenticationParameters) DeepCopy() *AuthenticationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CorsConfigurationInitParameters) DeepCopyInto(out *CorsConfigurationInitParameters) { + *out = *in + if in.AllowCredentials != nil { + in, out := &in.AllowCredentials, &out.AllowCredentials + *out = new(bool) + **out = **in + } + if in.AllowedHeaders != nil { + in, out := &in.AllowedHeaders, &out.AllowedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedMethods != nil { + in, out := &in.AllowedMethods, &out.AllowedMethods + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAgeInSeconds != nil { + in, out := &in.MaxAgeInSeconds, &out.MaxAgeInSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorsConfigurationInitParameters. +func (in *CorsConfigurationInitParameters) DeepCopy() *CorsConfigurationInitParameters { + if in == nil { + return nil + } + out := new(CorsConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CorsConfigurationObservation) DeepCopyInto(out *CorsConfigurationObservation) { *out = *in @@ -236,6 +339,64 @@ func (in *CorsConfigurationParameters) DeepCopy() *CorsConfigurationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CorsInitParameters) DeepCopyInto(out *CorsInitParameters) { + *out = *in + if in.AllowedHeaders != nil { + in, out := &in.AllowedHeaders, &out.AllowedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedMethods != nil { + in, out := &in.AllowedMethods, &out.AllowedMethods + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CredentialsAllowed != nil { + in, out := &in.CredentialsAllowed, &out.CredentialsAllowed + *out = new(bool) + **out = **in + } + if in.MaxAgeInSeconds != nil { + in, out := &in.MaxAgeInSeconds, &out.MaxAgeInSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorsInitParameters. +func (in *CorsInitParameters) DeepCopy() *CorsInitParameters { + if in == nil { + return nil + } + out := new(CorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CorsObservation) DeepCopyInto(out *CorsObservation) { *out = *in @@ -379,6 +540,53 @@ func (in *HealthcareDICOMService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthcareDICOMServiceInitParameters) DeepCopyInto(out *HealthcareDICOMServiceInitParameters) { + *out = *in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareDICOMServiceInitParameters. +func (in *HealthcareDICOMServiceInitParameters) DeepCopy() *HealthcareDICOMServiceInitParameters { + if in == nil { + return nil + } + out := new(HealthcareDICOMServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthcareDICOMServiceList) DeepCopyInto(out *HealthcareDICOMServiceList) { *out = *in @@ -554,6 +762,7 @@ func (in *HealthcareDICOMServiceSpec) DeepCopyInto(out *HealthcareDICOMServiceSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareDICOMServiceSpec. @@ -610,6 +819,36 @@ func (in *HealthcareFHIRService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthcareFHIRServiceAuthenticationInitParameters) DeepCopyInto(out *HealthcareFHIRServiceAuthenticationInitParameters) { + *out = *in + if in.Audience != nil { + in, out := &in.Audience, &out.Audience + *out = new(string) + **out = **in + } + if in.Authority != nil { + in, out := &in.Authority, &out.Authority + *out = new(string) + **out = **in + } + if in.SmartProxyEnabled != nil { + in, out := &in.SmartProxyEnabled, &out.SmartProxyEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareFHIRServiceAuthenticationInitParameters. +func (in *HealthcareFHIRServiceAuthenticationInitParameters) DeepCopy() *HealthcareFHIRServiceAuthenticationInitParameters { + if in == nil { + return nil + } + out := new(HealthcareFHIRServiceAuthenticationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthcareFHIRServiceAuthenticationObservation) DeepCopyInto(out *HealthcareFHIRServiceAuthenticationObservation) { *out = *in @@ -670,6 +909,37 @@ func (in *HealthcareFHIRServiceAuthenticationParameters) DeepCopy() *HealthcareF return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthcareFHIRServiceIdentityInitParameters) DeepCopyInto(out *HealthcareFHIRServiceIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareFHIRServiceIdentityInitParameters. +func (in *HealthcareFHIRServiceIdentityInitParameters) DeepCopy() *HealthcareFHIRServiceIdentityInitParameters { + if in == nil { + return nil + } + out := new(HealthcareFHIRServiceIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthcareFHIRServiceIdentityObservation) DeepCopyInto(out *HealthcareFHIRServiceIdentityObservation) { *out = *in @@ -742,6 +1012,101 @@ func (in *HealthcareFHIRServiceIdentityParameters) DeepCopy() *HealthcareFHIRSer return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthcareFHIRServiceInitParameters) DeepCopyInto(out *HealthcareFHIRServiceInitParameters) { + *out = *in + if in.AccessPolicyObjectIds != nil { + in, out := &in.AccessPolicyObjectIds, &out.AccessPolicyObjectIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Authentication != nil { + in, out := &in.Authentication, &out.Authentication + *out = make([]HealthcareFHIRServiceAuthenticationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConfigurationExportStorageAccountName != nil { + in, out := &in.ConfigurationExportStorageAccountName, &out.ConfigurationExportStorageAccountName + *out = new(string) + **out = **in + } + if in.ContainerRegistryLoginServerURL != nil { + in, out := &in.ContainerRegistryLoginServerURL, &out.ContainerRegistryLoginServerURL + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]CorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]HealthcareFHIRServiceIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.OciArtifact != nil { + in, out := &in.OciArtifact, &out.OciArtifact + *out = make([]OciArtifactInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareFHIRServiceInitParameters. +func (in *HealthcareFHIRServiceInitParameters) DeepCopy() *HealthcareFHIRServiceInitParameters { + if in == nil { + return nil + } + out := new(HealthcareFHIRServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthcareFHIRServiceList) DeepCopyInto(out *HealthcareFHIRServiceList) { *out = *in @@ -1019,6 +1384,7 @@ func (in *HealthcareFHIRServiceSpec) DeepCopyInto(out *HealthcareFHIRServiceSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareFHIRServiceSpec. @@ -1099,7 +1465,37 @@ func (in *HealthcareMedtechServiceFHIRDestination) DeepCopyObject() runtime.Obje if c := in.DeepCopy(); c != nil { return c } - return nil + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthcareMedtechServiceFHIRDestinationInitParameters) DeepCopyInto(out *HealthcareMedtechServiceFHIRDestinationInitParameters) { + *out = *in + if in.DestinationFHIRMappingJSON != nil { + in, out := &in.DestinationFHIRMappingJSON, &out.DestinationFHIRMappingJSON + *out = new(string) + **out = **in + } + if in.DestinationIdentityResolutionType != nil { + in, out := &in.DestinationIdentityResolutionType, &out.DestinationIdentityResolutionType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareMedtechServiceFHIRDestinationInitParameters. +func (in *HealthcareMedtechServiceFHIRDestinationInitParameters) DeepCopy() *HealthcareMedtechServiceFHIRDestinationInitParameters { + if in == nil { + return nil + } + out := new(HealthcareMedtechServiceFHIRDestinationInitParameters) + in.DeepCopyInto(out) + return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. @@ -1244,6 +1640,7 @@ func (in *HealthcareMedtechServiceFHIRDestinationSpec) DeepCopyInto(out *Healthc *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareMedtechServiceFHIRDestinationSpec. @@ -1273,6 +1670,37 @@ func (in *HealthcareMedtechServiceFHIRDestinationStatus) DeepCopy() *HealthcareM return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthcareMedtechServiceIdentityInitParameters) DeepCopyInto(out *HealthcareMedtechServiceIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareMedtechServiceIdentityInitParameters. +func (in *HealthcareMedtechServiceIdentityInitParameters) DeepCopy() *HealthcareMedtechServiceIdentityInitParameters { + if in == nil { + return nil + } + out := new(HealthcareMedtechServiceIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthcareMedtechServiceIdentityObservation) DeepCopyInto(out *HealthcareMedtechServiceIdentityObservation) { *out = *in @@ -1345,6 +1773,53 @@ func (in *HealthcareMedtechServiceIdentityParameters) DeepCopy() *HealthcareMedt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthcareMedtechServiceInitParameters) DeepCopyInto(out *HealthcareMedtechServiceInitParameters) { + *out = *in + if in.DeviceMappingJSON != nil { + in, out := &in.DeviceMappingJSON, &out.DeviceMappingJSON + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]HealthcareMedtechServiceIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareMedtechServiceInitParameters. +func (in *HealthcareMedtechServiceInitParameters) DeepCopy() *HealthcareMedtechServiceInitParameters { + if in == nil { + return nil + } + out := new(HealthcareMedtechServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthcareMedtechServiceList) DeepCopyInto(out *HealthcareMedtechServiceList) { *out = *in @@ -1561,6 +2036,7 @@ func (in *HealthcareMedtechServiceSpec) DeepCopyInto(out *HealthcareMedtechServi *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareMedtechServiceSpec. @@ -1617,6 +2093,86 @@ func (in *HealthcareService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthcareServiceInitParameters) DeepCopyInto(out *HealthcareServiceInitParameters) { + *out = *in + if in.AccessPolicyObjectIds != nil { + in, out := &in.AccessPolicyObjectIds, &out.AccessPolicyObjectIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AuthenticationConfiguration != nil { + in, out := &in.AuthenticationConfiguration, &out.AuthenticationConfiguration + *out = make([]AuthenticationConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CorsConfiguration != nil { + in, out := &in.CorsConfiguration, &out.CorsConfiguration + *out = make([]CorsConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CosmosDBKeyVaultKeyVersionlessID != nil { + in, out := &in.CosmosDBKeyVaultKeyVersionlessID, &out.CosmosDBKeyVaultKeyVersionlessID + *out = new(string) + **out = **in + } + if in.CosmosDBThroughput != nil { + in, out := &in.CosmosDBThroughput, &out.CosmosDBThroughput + *out = new(float64) + **out = **in + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareServiceInitParameters. +func (in *HealthcareServiceInitParameters) DeepCopy() *HealthcareServiceInitParameters { + if in == nil { + return nil + } + out := new(HealthcareServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthcareServiceList) DeepCopyInto(out *HealthcareServiceList) { *out = *in @@ -1839,6 +2395,7 @@ func (in *HealthcareServiceSpec) DeepCopyInto(out *HealthcareServiceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareServiceSpec. @@ -1895,6 +2452,41 @@ func (in *HealthcareWorkspace) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthcareWorkspaceInitParameters) DeepCopyInto(out *HealthcareWorkspaceInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareWorkspaceInitParameters. +func (in *HealthcareWorkspaceInitParameters) DeepCopy() *HealthcareWorkspaceInitParameters { + if in == nil { + return nil + } + out := new(HealthcareWorkspaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthcareWorkspaceList) DeepCopyInto(out *HealthcareWorkspaceList) { *out = *in @@ -2034,6 +2626,7 @@ func (in *HealthcareWorkspaceSpec) DeepCopyInto(out *HealthcareWorkspaceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthcareWorkspaceSpec. @@ -2063,6 +2656,37 @@ func (in *HealthcareWorkspaceStatus) DeepCopy() *HealthcareWorkspaceStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -2135,6 +2759,36 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OciArtifactInitParameters) DeepCopyInto(out *OciArtifactInitParameters) { + *out = *in + if in.Digest != nil { + in, out := &in.Digest, &out.Digest + *out = new(string) + **out = **in + } + if in.ImageName != nil { + in, out := &in.ImageName, &out.ImageName + *out = new(string) + **out = **in + } + if in.LoginServer != nil { + in, out := &in.LoginServer, &out.LoginServer + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OciArtifactInitParameters. +func (in *OciArtifactInitParameters) DeepCopy() *OciArtifactInitParameters { + if in == nil { + return nil + } + out := new(OciArtifactInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OciArtifactObservation) DeepCopyInto(out *OciArtifactObservation) { *out = *in @@ -2195,6 +2849,21 @@ func (in *OciArtifactParameters) DeepCopy() *OciArtifactParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointConnectionInitParameters) DeepCopyInto(out *PrivateEndpointConnectionInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointConnectionInitParameters. +func (in *PrivateEndpointConnectionInitParameters) DeepCopy() *PrivateEndpointConnectionInitParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateEndpointConnectionObservation) DeepCopyInto(out *PrivateEndpointConnectionObservation) { *out = *in @@ -2235,6 +2904,21 @@ func (in *PrivateEndpointConnectionParameters) DeepCopy() *PrivateEndpointConnec return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointInitParameters) DeepCopyInto(out *PrivateEndpointInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointInitParameters. +func (in *PrivateEndpointInitParameters) DeepCopy() *PrivateEndpointInitParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateEndpointObservation) DeepCopyInto(out *PrivateEndpointObservation) { *out = *in diff --git a/apis/healthcareapis/v1beta1/zz_generated.managed.go b/apis/healthcareapis/v1beta1/zz_generated.managed.go index 9c19dbe9a..6666a8d00 100644 --- a/apis/healthcareapis/v1beta1/zz_generated.managed.go +++ b/apis/healthcareapis/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *HealthcareDICOMService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HealthcareDICOMService. -func (mg *HealthcareDICOMService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HealthcareDICOMService. +func (mg *HealthcareDICOMService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HealthcareDICOMService. @@ -55,9 +55,9 @@ func (mg *HealthcareDICOMService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HealthcareDICOMService. -func (mg *HealthcareDICOMService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HealthcareDICOMService. +func (mg *HealthcareDICOMService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HealthcareDICOMService. @@ -93,9 +93,9 @@ func (mg *HealthcareFHIRService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HealthcareFHIRService. -func (mg *HealthcareFHIRService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HealthcareFHIRService. +func (mg *HealthcareFHIRService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HealthcareFHIRService. @@ -131,9 +131,9 @@ func (mg *HealthcareFHIRService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HealthcareFHIRService. -func (mg *HealthcareFHIRService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HealthcareFHIRService. +func (mg *HealthcareFHIRService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HealthcareFHIRService. @@ -169,9 +169,9 @@ func (mg *HealthcareMedtechService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HealthcareMedtechService. -func (mg *HealthcareMedtechService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HealthcareMedtechService. +func (mg *HealthcareMedtechService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HealthcareMedtechService. @@ -207,9 +207,9 @@ func (mg *HealthcareMedtechService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HealthcareMedtechService. -func (mg *HealthcareMedtechService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HealthcareMedtechService. +func (mg *HealthcareMedtechService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HealthcareMedtechService. @@ -245,9 +245,9 @@ func (mg *HealthcareMedtechServiceFHIRDestination) GetDeletionPolicy() xpv1.Dele return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HealthcareMedtechServiceFHIRDestination. -func (mg *HealthcareMedtechServiceFHIRDestination) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HealthcareMedtechServiceFHIRDestination. +func (mg *HealthcareMedtechServiceFHIRDestination) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HealthcareMedtechServiceFHIRDestination. @@ -283,9 +283,9 @@ func (mg *HealthcareMedtechServiceFHIRDestination) SetDeletionPolicy(r xpv1.Dele mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HealthcareMedtechServiceFHIRDestination. -func (mg *HealthcareMedtechServiceFHIRDestination) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HealthcareMedtechServiceFHIRDestination. +func (mg *HealthcareMedtechServiceFHIRDestination) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HealthcareMedtechServiceFHIRDestination. @@ -321,9 +321,9 @@ func (mg *HealthcareService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HealthcareService. -func (mg *HealthcareService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HealthcareService. +func (mg *HealthcareService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HealthcareService. @@ -359,9 +359,9 @@ func (mg *HealthcareService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HealthcareService. -func (mg *HealthcareService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HealthcareService. +func (mg *HealthcareService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HealthcareService. @@ -397,9 +397,9 @@ func (mg *HealthcareWorkspace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HealthcareWorkspace. -func (mg *HealthcareWorkspace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HealthcareWorkspace. +func (mg *HealthcareWorkspace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HealthcareWorkspace. @@ -435,9 +435,9 @@ func (mg *HealthcareWorkspace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HealthcareWorkspace. -func (mg *HealthcareWorkspace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HealthcareWorkspace. +func (mg *HealthcareWorkspace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HealthcareWorkspace. diff --git a/apis/healthcareapis/v1beta1/zz_generated_terraformed.go b/apis/healthcareapis/v1beta1/zz_generated_terraformed.go index ea36aa5f8..2c01c7d2f 100755 --- a/apis/healthcareapis/v1beta1/zz_generated_terraformed.go +++ b/apis/healthcareapis/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *HealthcareDICOMService) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HealthcareDICOMService +func (tr *HealthcareDICOMService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HealthcareDICOMService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HealthcareDICOMService) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *HealthcareFHIRService) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HealthcareFHIRService +func (tr *HealthcareFHIRService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HealthcareFHIRService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HealthcareFHIRService) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *HealthcareMedtechService) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HealthcareMedtechService +func (tr *HealthcareMedtechService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HealthcareMedtechService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HealthcareMedtechService) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *HealthcareMedtechServiceFHIRDestination) SetParameters(params map[stri return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HealthcareMedtechServiceFHIRDestination +func (tr *HealthcareMedtechServiceFHIRDestination) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HealthcareMedtechServiceFHIRDestination using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HealthcareMedtechServiceFHIRDestination) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *HealthcareService) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HealthcareService +func (tr *HealthcareService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HealthcareService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HealthcareService) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *HealthcareWorkspace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HealthcareWorkspace +func (tr *HealthcareWorkspace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HealthcareWorkspace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HealthcareWorkspace) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/healthcareapis/v1beta1/zz_healthcaredicomservice_types.go b/apis/healthcareapis/v1beta1/zz_healthcaredicomservice_types.go index 8b1a285d3..2b5600047 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcaredicomservice_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcaredicomservice_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthenticationInitParameters struct { +} + type AuthenticationObservation struct { // The intended audience to receive authentication tokens for the service. The default value is https://dicom.azurehealthcareapis.azure.com @@ -26,6 +29,21 @@ type AuthenticationObservation struct { type AuthenticationParameters struct { } +type HealthcareDICOMServiceInitParameters struct { + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the Azure Region where the Healthcare DICOM Service should be created. Changing this forces a new Healthcare DICOM Service to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether to enabled public networks when data plane traffic coming from public networks while private endpoint is enabled. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A mapping of tags to assign to the Healthcare DICOM Service. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type HealthcareDICOMServiceObservation struct { // The authentication block as defined below. @@ -88,6 +106,15 @@ type HealthcareDICOMServiceParameters struct { WorkspaceIDSelector *v1.Selector `json:"workspaceIdSelector,omitempty" tf:"-"` } +type IdentityInitParameters struct { + + // A list of User Assigned Identity IDs which should be assigned to this Healthcare DICOM service. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The type of identity used for the Healthcare DICOM service. Possible values are UserAssigned, SystemAssigned and SystemAssigned, UserAssigned. If UserAssigned is set, an identity_ids must be set as well. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // A list of User Assigned Identity IDs which should be assigned to this Healthcare DICOM service. @@ -110,8 +137,11 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of identity used for the Healthcare DICOM service. Possible values are UserAssigned, SystemAssigned and SystemAssigned, UserAssigned. If UserAssigned is set, an identity_ids must be set as well. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type PrivateEndpointInitParameters struct { } type PrivateEndpointObservation struct { @@ -130,6 +160,18 @@ type PrivateEndpointParameters struct { type HealthcareDICOMServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HealthcareDICOMServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HealthcareDICOMServiceInitParameters `json:"initProvider,omitempty"` } // HealthcareDICOMServiceStatus defines the observed state of HealthcareDICOMService. @@ -150,7 +192,7 @@ type HealthcareDICOMServiceStatus struct { type HealthcareDICOMService struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec HealthcareDICOMServiceSpec `json:"spec"` Status HealthcareDICOMServiceStatus `json:"status,omitempty"` } diff --git a/apis/healthcareapis/v1beta1/zz_healthcarefhirservice_types.go b/apis/healthcareapis/v1beta1/zz_healthcarefhirservice_types.go index e2e8b37b2..7fec488c4 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcarefhirservice_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcarefhirservice_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CorsInitParameters struct { + + // A set of headers to be allowed via CORS. + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` + + // The methods to be allowed via CORS. Possible values are DELETE, GET, HEAD, MERGE, POST, OPTIONS, PATCH and PUT. + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` + + // A set of origins to be allowed via CORS. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // If credentials are allowed via CORS. + CredentialsAllowed *bool `json:"credentialsAllowed,omitempty" tf:"credentials_allowed,omitempty"` + + // The max age to be allowed via CORS. + MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` +} + type CorsObservation struct { // A set of headers to be allowed via CORS. @@ -34,16 +52,16 @@ type CorsObservation struct { type CorsParameters struct { // A set of headers to be allowed via CORS. - // +kubebuilder:validation:Required - AllowedHeaders []*string `json:"allowedHeaders" tf:"allowed_headers,omitempty"` + // +kubebuilder:validation:Optional + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // The methods to be allowed via CORS. Possible values are DELETE, GET, HEAD, MERGE, POST, OPTIONS, PATCH and PUT. - // +kubebuilder:validation:Required - AllowedMethods []*string `json:"allowedMethods" tf:"allowed_methods,omitempty"` + // +kubebuilder:validation:Optional + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A set of origins to be allowed via CORS. - // +kubebuilder:validation:Required - AllowedOrigins []*string `json:"allowedOrigins" tf:"allowed_origins,omitempty"` + // +kubebuilder:validation:Optional + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // If credentials are allowed via CORS. // +kubebuilder:validation:Optional @@ -54,6 +72,19 @@ type CorsParameters struct { MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` } +type HealthcareFHIRServiceAuthenticationInitParameters struct { + + // The intended audience to receive authentication tokens for the service. The default value is https://.fhir.azurehealthcareapis.com. + Audience *string `json:"audience,omitempty" tf:"audience,omitempty"` + + // The Azure Active Directory (tenant) that serves as the authentication authority to access the service. + // Authority must be registered to Azure AD and in the following format: https://{Azure-AD-endpoint}/{tenant-id}. + Authority *string `json:"authority,omitempty" tf:"authority,omitempty"` + + // Whether smart proxy is enabled. + SmartProxyEnabled *bool `json:"smartProxyEnabled,omitempty" tf:"smart_proxy_enabled,omitempty"` +} + type HealthcareFHIRServiceAuthenticationObservation struct { // The intended audience to receive authentication tokens for the service. The default value is https://.fhir.azurehealthcareapis.com. @@ -70,19 +101,28 @@ type HealthcareFHIRServiceAuthenticationObservation struct { type HealthcareFHIRServiceAuthenticationParameters struct { // The intended audience to receive authentication tokens for the service. The default value is https://.fhir.azurehealthcareapis.com. - // +kubebuilder:validation:Required - Audience *string `json:"audience" tf:"audience,omitempty"` + // +kubebuilder:validation:Optional + Audience *string `json:"audience,omitempty" tf:"audience,omitempty"` // The Azure Active Directory (tenant) that serves as the authentication authority to access the service. // Authority must be registered to Azure AD and in the following format: https://{Azure-AD-endpoint}/{tenant-id}. - // +kubebuilder:validation:Required - Authority *string `json:"authority" tf:"authority,omitempty"` + // +kubebuilder:validation:Optional + Authority *string `json:"authority,omitempty" tf:"authority,omitempty"` // Whether smart proxy is enabled. // +kubebuilder:validation:Optional SmartProxyEnabled *bool `json:"smartProxyEnabled,omitempty" tf:"smart_proxy_enabled,omitempty"` } +type HealthcareFHIRServiceIdentityInitParameters struct { + + // A list of one or more Resource IDs for User Assigned Managed identities to assign. Required when type is set to UserAssigned. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The type of managed identity to assign. Possible values are UserAssigned and SystemAssigned + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type HealthcareFHIRServiceIdentityObservation struct { // A list of one or more Resource IDs for User Assigned Managed identities to assign. Required when type is set to UserAssigned. @@ -105,8 +145,41 @@ type HealthcareFHIRServiceIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of managed identity to assign. Possible values are UserAssigned and SystemAssigned - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type HealthcareFHIRServiceInitParameters struct { + + // A list of the access policies of the service instance. + AccessPolicyObjectIds []*string `json:"accessPolicyObjectIds,omitempty" tf:"access_policy_object_ids,omitempty"` + + // An authentication block as defined below. + Authentication []HealthcareFHIRServiceAuthenticationInitParameters `json:"authentication,omitempty" tf:"authentication,omitempty"` + + // Specifies the name of the storage account which the operation configuration information is exported to. + ConfigurationExportStorageAccountName *string `json:"configurationExportStorageAccountName,omitempty" tf:"configuration_export_storage_account_name,omitempty"` + + // A list of azure container registry settings used for convert data operation of the service instance. + ContainerRegistryLoginServerURL []*string `json:"containerRegistryLoginServerUrl,omitempty" tf:"container_registry_login_server_url,omitempty"` + + // A cors block as defined below. + Cors []CorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // An identity block as defined below. + Identity []HealthcareFHIRServiceIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the kind of the Healthcare FHIR Service. Possible values are: fhir-Stu3 and fhir-R4. Defaults to fhir-R4. Changing this forces a new Healthcare FHIR Service to be created. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // Specifies the Azure Region where the Healthcare FHIR Service should be created. Changing this forces a new Healthcare FHIR Service to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A list of objects describing OCI artifacts for export as defined below. + OciArtifact []OciArtifactInitParameters `json:"ociArtifact,omitempty" tf:"oci_artifact,omitempty"` + + // A mapping of tags to assign to the Healthcare FHIR Service. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type HealthcareFHIRServiceObservation struct { @@ -224,6 +297,18 @@ type HealthcareFHIRServiceParameters struct { WorkspaceIDSelector *v1.Selector `json:"workspaceIdSelector,omitempty" tf:"-"` } +type OciArtifactInitParameters struct { + + // A digest of an image within Azure container registry used for export operations of the service instance to narrow the artifacts down. + Digest *string `json:"digest,omitempty" tf:"digest,omitempty"` + + // An image within Azure container registry used for export operations of the service instance. + ImageName *string `json:"imageName,omitempty" tf:"image_name,omitempty"` + + // An Azure container registry used for export operations of the service instance. + LoginServer *string `json:"loginServer,omitempty" tf:"login_server,omitempty"` +} + type OciArtifactObservation struct { // A digest of an image within Azure container registry used for export operations of the service instance to narrow the artifacts down. @@ -247,14 +332,26 @@ type OciArtifactParameters struct { ImageName *string `json:"imageName,omitempty" tf:"image_name,omitempty"` // An Azure container registry used for export operations of the service instance. - // +kubebuilder:validation:Required - LoginServer *string `json:"loginServer" tf:"login_server,omitempty"` + // +kubebuilder:validation:Optional + LoginServer *string `json:"loginServer,omitempty" tf:"login_server,omitempty"` } // HealthcareFHIRServiceSpec defines the desired state of HealthcareFHIRService type HealthcareFHIRServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HealthcareFHIRServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HealthcareFHIRServiceInitParameters `json:"initProvider,omitempty"` } // HealthcareFHIRServiceStatus defines the observed state of HealthcareFHIRService. @@ -275,8 +372,8 @@ type HealthcareFHIRServiceStatus struct { type HealthcareFHIRService struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authentication)",message="authentication is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.authentication) || has(self.initProvider.authentication)",message="authentication is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec HealthcareFHIRServiceSpec `json:"spec"` Status HealthcareFHIRServiceStatus `json:"status,omitempty"` } diff --git a/apis/healthcareapis/v1beta1/zz_healthcaremedtechservice_types.go b/apis/healthcareapis/v1beta1/zz_healthcaremedtechservice_types.go index 8de95d567..e8b755934 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcaremedtechservice_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcaremedtechservice_types.go @@ -13,6 +13,13 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HealthcareMedtechServiceIdentityInitParameters struct { + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Healthcare Med Tech Service. Possible values are SystemAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type HealthcareMedtechServiceIdentityObservation struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` @@ -32,8 +39,23 @@ type HealthcareMedtechServiceIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Healthcare Med Tech Service. Possible values are SystemAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type HealthcareMedtechServiceInitParameters struct { + + // Specifies the Device Mappings of the Med Tech Service. + DeviceMappingJSON *string `json:"deviceMappingJson,omitempty" tf:"device_mapping_json,omitempty"` + + // An identity block as defined below. + Identity []HealthcareMedtechServiceIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the Azure Region where the Healthcare Med Tech Service should be created. Changing this forces a new Healthcare Med Tech Service to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the Healthcare Med Tech Service. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type HealthcareMedtechServiceObservation struct { @@ -142,6 +164,18 @@ type HealthcareMedtechServiceParameters struct { type HealthcareMedtechServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HealthcareMedtechServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HealthcareMedtechServiceInitParameters `json:"initProvider,omitempty"` } // HealthcareMedtechServiceStatus defines the observed state of HealthcareMedtechService. @@ -162,8 +196,8 @@ type HealthcareMedtechServiceStatus struct { type HealthcareMedtechService struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.deviceMappingJson)",message="deviceMappingJson is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.deviceMappingJson) || has(self.initProvider.deviceMappingJson)",message="deviceMappingJson is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec HealthcareMedtechServiceSpec `json:"spec"` Status HealthcareMedtechServiceStatus `json:"status,omitempty"` } diff --git a/apis/healthcareapis/v1beta1/zz_healthcaremedtechservicefhirdestination_types.go b/apis/healthcareapis/v1beta1/zz_healthcaremedtechservicefhirdestination_types.go index 2d440e669..fa69ee783 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcaremedtechservicefhirdestination_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcaremedtechservicefhirdestination_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HealthcareMedtechServiceFHIRDestinationInitParameters struct { + + // Specifies the destination Fhir mappings of the Med Tech Service Fhir Destination. + DestinationFHIRMappingJSON *string `json:"destinationFhirMappingJson,omitempty" tf:"destination_fhir_mapping_json,omitempty"` + + // Specifies the destination identity resolution type where the Healthcare Med Tech Service Fhir Destination should be created. Possible values are Create, Lookup. + DestinationIdentityResolutionType *string `json:"destinationIdentityResolutionType,omitempty" tf:"destination_identity_resolution_type,omitempty"` + + // Specifies the Azure Region where the Healthcare Med Tech Service Fhir Destination should be created. Changing this forces a new Healthcare Med Tech Service Fhir Destination to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type HealthcareMedtechServiceFHIRDestinationObservation struct { // Specifies the destination Fhir mappings of the Med Tech Service Fhir Destination. @@ -81,6 +93,18 @@ type HealthcareMedtechServiceFHIRDestinationParameters struct { type HealthcareMedtechServiceFHIRDestinationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HealthcareMedtechServiceFHIRDestinationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HealthcareMedtechServiceFHIRDestinationInitParameters `json:"initProvider,omitempty"` } // HealthcareMedtechServiceFHIRDestinationStatus defines the observed state of HealthcareMedtechServiceFHIRDestination. @@ -101,9 +125,9 @@ type HealthcareMedtechServiceFHIRDestinationStatus struct { type HealthcareMedtechServiceFHIRDestination struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.destinationFhirMappingJson)",message="destinationFhirMappingJson is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.destinationIdentityResolutionType)",message="destinationIdentityResolutionType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.destinationFhirMappingJson) || has(self.initProvider.destinationFhirMappingJson)",message="destinationFhirMappingJson is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.destinationIdentityResolutionType) || has(self.initProvider.destinationIdentityResolutionType)",message="destinationIdentityResolutionType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec HealthcareMedtechServiceFHIRDestinationSpec `json:"spec"` Status HealthcareMedtechServiceFHIRDestinationStatus `json:"status,omitempty"` } diff --git a/apis/healthcareapis/v1beta1/zz_healthcareservice_types.go b/apis/healthcareapis/v1beta1/zz_healthcareservice_types.go index a1bef0842..010c85564 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcareservice_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcareservice_types.go @@ -13,6 +13,19 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthenticationConfigurationInitParameters struct { + + // The intended audience to receive authentication tokens for the service. The default value is https://azurehealthcareapis.com + Audience *string `json:"audience,omitempty" tf:"audience,omitempty"` + + // The Azure Active Directory (tenant) that serves as the authentication authority to access the service. + // Authority must be registered to Azure AD and in the following format: https://{Azure-AD-endpoint}/{tenant-id}. + Authority *string `json:"authority,omitempty" tf:"authority,omitempty"` + + // (Boolean) Enables the 'SMART on FHIR' option for mobile and web implementations. + SmartProxyEnabled *bool `json:"smartProxyEnabled,omitempty" tf:"smart_proxy_enabled,omitempty"` +} + type AuthenticationConfigurationObservation struct { // The intended audience to receive authentication tokens for the service. The default value is https://azurehealthcareapis.com @@ -42,6 +55,24 @@ type AuthenticationConfigurationParameters struct { SmartProxyEnabled *bool `json:"smartProxyEnabled,omitempty" tf:"smart_proxy_enabled,omitempty"` } +type CorsConfigurationInitParameters struct { + + // (Boolean) If credentials are allowed via CORS. + AllowCredentials *bool `json:"allowCredentials,omitempty" tf:"allow_credentials,omitempty"` + + // A set of headers to be allowed via CORS. + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` + + // The methods to be allowed via CORS. Possible values are DELETE, GET, HEAD, MERGE, POST, OPTIONS, PATCH and PUT. + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` + + // A set of origins to be allowed via CORS. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // The max age to be allowed via CORS. + MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` +} + type CorsConfigurationObservation struct { // (Boolean) If credentials are allowed via CORS. @@ -83,6 +114,36 @@ type CorsConfigurationParameters struct { MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` } +type HealthcareServiceInitParameters struct { + + // A set of Azure object IDs that are allowed to access the Service. + AccessPolicyObjectIds []*string `json:"accessPolicyObjectIds,omitempty" tf:"access_policy_object_ids,omitempty"` + + // An authentication_configuration block as defined below. + AuthenticationConfiguration []AuthenticationConfigurationInitParameters `json:"authenticationConfiguration,omitempty" tf:"authentication_configuration,omitempty"` + + // A cors_configuration block as defined below. + CorsConfiguration []CorsConfigurationInitParameters `json:"corsConfiguration,omitempty" tf:"cors_configuration,omitempty"` + + // A versionless Key Vault Key ID for CMK encryption of the backing database. Changing this forces a new resource to be created. + CosmosDBKeyVaultKeyVersionlessID *string `json:"cosmosdbKeyVaultKeyVersionlessId,omitempty" tf:"cosmosdb_key_vault_key_versionless_id,omitempty"` + + // The provisioned throughput for the backing database. Range of 400-100000. Defaults to 1000. + CosmosDBThroughput *float64 `json:"cosmosdbThroughput,omitempty" tf:"cosmosdb_throughput,omitempty"` + + // The type of the service. Values at time of publication are: fhir, fhir-Stu3 and fhir-R4. Default value is fhir. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // Specifies the supported Azure Region where the Service should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether public network access is enabled or disabled for this service instance. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type HealthcareServiceObservation struct { // A set of Azure object IDs that are allowed to access the Service. @@ -175,6 +236,18 @@ type HealthcareServiceParameters struct { type HealthcareServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HealthcareServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HealthcareServiceInitParameters `json:"initProvider,omitempty"` } // HealthcareServiceStatus defines the observed state of HealthcareService. @@ -195,7 +268,7 @@ type HealthcareServiceStatus struct { type HealthcareService struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec HealthcareServiceSpec `json:"spec"` Status HealthcareServiceStatus `json:"status,omitempty"` } diff --git a/apis/healthcareapis/v1beta1/zz_healthcareworkspace_types.go b/apis/healthcareapis/v1beta1/zz_healthcareworkspace_types.go index e11eb31a0..3306642ba 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcareworkspace_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcareworkspace_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HealthcareWorkspaceInitParameters struct { + + // Specifies the Azure Region where the Healthcare Workspace should be created. Changing this forces a new Healthcare Workspace to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the Healthcare Workspace. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type HealthcareWorkspaceObservation struct { // The ID of the Healthcare Workspace. @@ -54,6 +63,9 @@ type HealthcareWorkspaceParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type PrivateEndpointConnectionInitParameters struct { +} + type PrivateEndpointConnectionObservation struct { // The ID of the Healthcare Workspace. @@ -70,6 +82,18 @@ type PrivateEndpointConnectionParameters struct { type HealthcareWorkspaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HealthcareWorkspaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HealthcareWorkspaceInitParameters `json:"initProvider,omitempty"` } // HealthcareWorkspaceStatus defines the observed state of HealthcareWorkspace. @@ -90,7 +114,7 @@ type HealthcareWorkspaceStatus struct { type HealthcareWorkspace struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec HealthcareWorkspaceSpec `json:"spec"` Status HealthcareWorkspaceStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsights_types.go b/apis/insights/v1beta1/zz_applicationinsights_types.go index 54ec6eb2e..abe9a045a 100755 --- a/apis/insights/v1beta1/zz_applicationinsights_types.go +++ b/apis/insights/v1beta1/zz_applicationinsights_types.go @@ -13,6 +13,45 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInsightsInitParameters struct { + + // Specifies the type of Application Insights to create. Valid values are ios for iOS, java for Java web, MobileCenter for App Center, Node.JS for Node.js, other for General, phone for Windows Phone, store for Windows Store and web for ASP.NET. Please note these values are case sensitive; unmatched values are treated as ASP.NET by Azure. Changing this forces a new resource to be created. + ApplicationType *string `json:"applicationType,omitempty" tf:"application_type,omitempty"` + + // Specifies the Application Insights component daily data volume cap in GB. + DailyDataCapInGb *float64 `json:"dailyDataCapInGb,omitempty" tf:"daily_data_cap_in_gb,omitempty"` + + // Specifies if a notification email will be send when the daily data volume cap is met. + DailyDataCapNotificationsDisabled *bool `json:"dailyDataCapNotificationsDisabled,omitempty" tf:"daily_data_cap_notifications_disabled,omitempty"` + + // By default the real client IP is masked as 0.0.0.0 in the logs. Use this argument to disable masking and log the real client IP. Defaults to false. + DisableIPMasking *bool `json:"disableIpMasking,omitempty" tf:"disable_ip_masking,omitempty"` + + // Should the Application Insights component force users to create their own storage account for profiling? Defaults to false. + ForceCustomerStorageForProfiler *bool `json:"forceCustomerStorageForProfiler,omitempty" tf:"force_customer_storage_for_profiler,omitempty"` + + // Should the Application Insights component support ingestion over the Public Internet? Defaults to true. + InternetIngestionEnabled *bool `json:"internetIngestionEnabled,omitempty" tf:"internet_ingestion_enabled,omitempty"` + + // Should the Application Insights component support querying over the Public Internet? Defaults to true. + InternetQueryEnabled *bool `json:"internetQueryEnabled,omitempty" tf:"internet_query_enabled,omitempty"` + + // Disable Non-Azure AD based Auth. Defaults to false. + LocalAuthenticationDisabled *bool `json:"localAuthenticationDisabled,omitempty" tf:"local_authentication_disabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the retention period in days. Possible values are 30, 60, 90, 120, 180, 270, 365, 550 or 730. Defaults to 90. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // Specifies the percentage of the data produced by the monitored application that is sampled for Application Insights telemetry. Defaults to 100. + SamplingPercentage *float64 `json:"samplingPercentage,omitempty" tf:"sampling_percentage,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ApplicationInsightsObservation struct { // The App ID associated with this Application Insights component. @@ -146,6 +185,18 @@ type ApplicationInsightsParameters struct { type ApplicationInsightsSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationInsightsParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationInsightsInitParameters `json:"initProvider,omitempty"` } // ApplicationInsightsStatus defines the observed state of ApplicationInsights. @@ -166,8 +217,8 @@ type ApplicationInsightsStatus struct { type ApplicationInsights struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.applicationType)",message="applicationType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.applicationType) || has(self.initProvider.applicationType)",message="applicationType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ApplicationInsightsSpec `json:"spec"` Status ApplicationInsightsStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightsanalyticsitem_types.go b/apis/insights/v1beta1/zz_applicationinsightsanalyticsitem_types.go index 496f08292..d868a5cbb 100755 --- a/apis/insights/v1beta1/zz_applicationinsightsanalyticsitem_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightsanalyticsitem_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInsightsAnalyticsItemInitParameters struct { + + // The content for the Analytics Item, for example the query text if type is query. + Content *string `json:"content,omitempty" tf:"content,omitempty"` + + // The alias to use for the function. Required when type is function. + FunctionAlias *string `json:"functionAlias,omitempty" tf:"function_alias,omitempty"` + + // Specifies the name of the Application Insights Analytics Item. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The scope for the Analytics Item. Can be shared or user. Changing this forces a new resource to be created. Must be shared for functions. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + + // The type of Analytics Item to create. Can be one of query, function, folder, recent. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ApplicationInsightsAnalyticsItemObservation struct { // The ID of the Application Insights component on which the Analytics Item exists. Changing this forces a new resource to be created. @@ -87,6 +105,18 @@ type ApplicationInsightsAnalyticsItemParameters struct { type ApplicationInsightsAnalyticsItemSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationInsightsAnalyticsItemParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationInsightsAnalyticsItemInitParameters `json:"initProvider,omitempty"` } // ApplicationInsightsAnalyticsItemStatus defines the observed state of ApplicationInsightsAnalyticsItem. @@ -107,10 +137,10 @@ type ApplicationInsightsAnalyticsItemStatus struct { type ApplicationInsightsAnalyticsItem struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.content)",message="content is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope)",message="scope is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.content) || has(self.initProvider.content)",message="content is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scope) || has(self.initProvider.scope)",message="scope is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" Spec ApplicationInsightsAnalyticsItemSpec `json:"spec"` Status ApplicationInsightsAnalyticsItemStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightsapikey_types.go b/apis/insights/v1beta1/zz_applicationinsightsapikey_types.go index 1bd386546..c720adb3b 100755 --- a/apis/insights/v1beta1/zz_applicationinsightsapikey_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightsapikey_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInsightsAPIKeyInitParameters struct { + + // Specifies the name of the Application Insights API key. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the list of read permissions granted to the API key. Valid values are agentconfig, aggregate, api, draft, extendqueries, search. Please note these values are case sensitive. Changing this forces a new resource to be created. + ReadPermissions []*string `json:"readPermissions,omitempty" tf:"read_permissions,omitempty"` + + // Specifies the list of write permissions granted to the API key. Valid values are annotations. Please note these values are case sensitive. Changing this forces a new resource to be created. + WritePermissions []*string `json:"writePermissions,omitempty" tf:"write_permissions,omitempty"` +} + type ApplicationInsightsAPIKeyObservation struct { // The ID of the Application Insights component on which the API key operates. Changing this forces a new resource to be created. @@ -64,6 +76,18 @@ type ApplicationInsightsAPIKeyParameters struct { type ApplicationInsightsAPIKeySpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationInsightsAPIKeyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationInsightsAPIKeyInitParameters `json:"initProvider,omitempty"` } // ApplicationInsightsAPIKeyStatus defines the observed state of ApplicationInsightsAPIKey. @@ -84,7 +108,7 @@ type ApplicationInsightsAPIKeyStatus struct { type ApplicationInsightsAPIKey struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ApplicationInsightsAPIKeySpec `json:"spec"` Status ApplicationInsightsAPIKeyStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightssmartdetectionrule_types.go b/apis/insights/v1beta1/zz_applicationinsightssmartdetectionrule_types.go index 8fc4eff6a..555db9e9a 100755 --- a/apis/insights/v1beta1/zz_applicationinsightssmartdetectionrule_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightssmartdetectionrule_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInsightsSmartDetectionRuleInitParameters struct { + + // Specifies a list of additional recipients that will be sent emails on this Application Insights Smart Detection Rule. + AdditionalEmailRecipients []*string `json:"additionalEmailRecipients,omitempty" tf:"additional_email_recipients,omitempty"` + + // Is the Application Insights Smart Detection Rule enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Specifies the name of the Application Insights Smart Detection Rule. Valid values include Slow page load time, Slow server response time, Long dependency duration, Degradation in server response time, Degradation in dependency duration, Degradation in trace severity ratio, Abnormal rise in exception volume, Potential memory leak detected, Potential security issue detected and Abnormal rise in daily data volume, Long dependency duration, Degradation in server response time, Degradation in dependency duration, Degradation in trace severity ratio, Abnormal rise in exception volume, Potential memory leak detected, Potential security issue detected, Abnormal rise in daily data volume. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Do emails get sent to subscription owners? Defaults to true. + SendEmailsToSubscriptionOwners *bool `json:"sendEmailsToSubscriptionOwners,omitempty" tf:"send_emails_to_subscription_owners,omitempty"` +} + type ApplicationInsightsSmartDetectionRuleObservation struct { // Specifies a list of additional recipients that will be sent emails on this Application Insights Smart Detection Rule. @@ -71,6 +86,18 @@ type ApplicationInsightsSmartDetectionRuleParameters struct { type ApplicationInsightsSmartDetectionRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationInsightsSmartDetectionRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationInsightsSmartDetectionRuleInitParameters `json:"initProvider,omitempty"` } // ApplicationInsightsSmartDetectionRuleStatus defines the observed state of ApplicationInsightsSmartDetectionRule. @@ -91,7 +118,7 @@ type ApplicationInsightsSmartDetectionRuleStatus struct { type ApplicationInsightsSmartDetectionRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ApplicationInsightsSmartDetectionRuleSpec `json:"spec"` Status ApplicationInsightsSmartDetectionRuleStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightsstandardwebtest_types.go b/apis/insights/v1beta1/zz_applicationinsightsstandardwebtest_types.go index 7ddf09115..e0e0e32cf 100755 --- a/apis/insights/v1beta1/zz_applicationinsightsstandardwebtest_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightsstandardwebtest_types.go @@ -13,6 +13,39 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInsightsStandardWebTestInitParameters struct { + + // Purpose/user defined descriptive test for this WebTest. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Should the WebTest be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Interval in seconds between test runs for this WebTest. Valid options are 300, 600 and 900. Defaults to 300. + Frequency *float64 `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // Specifies a list of where to physically run the tests from to give global coverage for accessibility of your application. + GeoLocations []*string `json:"geoLocations,omitempty" tf:"geo_locations,omitempty"` + + // The Azure Region where the Application Insights Standard WebTest should exist. Changing this forces a new Application Insights Standard WebTest to be created. It needs to correlate with location of the parent resource (azurerm_application_insights) + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A request block as defined below. + Request []RequestInitParameters `json:"request,omitempty" tf:"request,omitempty"` + + // Should the retry on WebTest failure be enabled? + RetryEnabled *bool `json:"retryEnabled,omitempty" tf:"retry_enabled,omitempty"` + + // A mapping of tags which should be assigned to the Application Insights Standard WebTest. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Seconds until this WebTest will timeout and fail. Default is 30. + Timeout *float64 `json:"timeout,omitempty" tf:"timeout,omitempty"` + + // A validation_rules block as defined below. + ValidationRules []ValidationRulesInitParameters `json:"validationRules,omitempty" tf:"validation_rules,omitempty"` +} + type ApplicationInsightsStandardWebTestObservation struct { // The ID of the Application Insights instance on which the WebTest operates. Changing this forces a new Application Insights Standard WebTest to be created. @@ -128,6 +161,18 @@ type ApplicationInsightsStandardWebTestParameters struct { ValidationRules []ValidationRulesParameters `json:"validationRules,omitempty" tf:"validation_rules,omitempty"` } +type ContentInitParameters struct { + + // A string value containing the content to match on. + ContentMatch *string `json:"contentMatch,omitempty" tf:"content_match,omitempty"` + + // Ignore the casing in the content_match value. + IgnoreCase *bool `json:"ignoreCase,omitempty" tf:"ignore_case,omitempty"` + + // If the content of content_match is found, pass the test. If set to false, the WebTest is failing if the content of content_match is found. + PassIfTextFound *bool `json:"passIfTextFound,omitempty" tf:"pass_if_text_found,omitempty"` +} + type ContentObservation struct { // A string value containing the content to match on. @@ -143,8 +188,8 @@ type ContentObservation struct { type ContentParameters struct { // A string value containing the content to match on. - // +kubebuilder:validation:Required - ContentMatch *string `json:"contentMatch" tf:"content_match,omitempty"` + // +kubebuilder:validation:Optional + ContentMatch *string `json:"contentMatch,omitempty" tf:"content_match,omitempty"` // Ignore the casing in the content_match value. // +kubebuilder:validation:Optional @@ -155,6 +200,15 @@ type ContentParameters struct { PassIfTextFound *bool `json:"passIfTextFound,omitempty" tf:"pass_if_text_found,omitempty"` } +type HeaderInitParameters struct { + + // The name which should be used for this Application Insights Standard WebTest. Changing this forces a new Application Insights Standard WebTest to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value which should be used for a header in the request. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type HeaderObservation struct { // The name which should be used for this Application Insights Standard WebTest. Changing this forces a new Application Insights Standard WebTest to be created. @@ -167,12 +221,33 @@ type HeaderObservation struct { type HeaderParameters struct { // The name which should be used for this Application Insights Standard WebTest. Changing this forces a new Application Insights Standard WebTest to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value which should be used for a header in the request. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type RequestInitParameters struct { + + // The WebTest request body. + Body *string `json:"body,omitempty" tf:"body,omitempty"` + + // Should the following of redirects be enabled? Defaults to true. + FollowRedirectsEnabled *bool `json:"followRedirectsEnabled,omitempty" tf:"follow_redirects_enabled,omitempty"` + + // Which HTTP verb to use for the call. Options are 'GET', 'POST', 'PUT', 'PATCH', and 'DELETE'. + HTTPVerb *string `json:"httpVerb,omitempty" tf:"http_verb,omitempty"` + + // One or more header blocks as defined above. + Header []HeaderInitParameters `json:"header,omitempty" tf:"header,omitempty"` + + // Should the parsing of dependend requests be enabled? Defaults to true. + ParseDependentRequestsEnabled *bool `json:"parseDependentRequestsEnabled,omitempty" tf:"parse_dependent_requests_enabled,omitempty"` + + // The WebTest request URL. + URL *string `json:"url,omitempty" tf:"url,omitempty"` } type RequestObservation struct { @@ -219,8 +294,23 @@ type RequestParameters struct { ParseDependentRequestsEnabled *bool `json:"parseDependentRequestsEnabled,omitempty" tf:"parse_dependent_requests_enabled,omitempty"` // The WebTest request URL. - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + +type ValidationRulesInitParameters struct { + + // A content block as defined above. + Content []ContentInitParameters `json:"content,omitempty" tf:"content,omitempty"` + + // The expected status code of the response. Default is '200', '0' means 'response code < 400' + ExpectedStatusCode *float64 `json:"expectedStatusCode,omitempty" tf:"expected_status_code,omitempty"` + + // The number of days of SSL certificate validity remaining for the checked endpoint. If the certificate has a shorter remaining lifetime left, the test will fail. This number should be between 1 and 365. + SSLCertRemainingLifetime *float64 `json:"sslCertRemainingLifetime,omitempty" tf:"ssl_cert_remaining_lifetime,omitempty"` + + // Should the SSL check be enabled? + SSLCheckEnabled *bool `json:"sslCheckEnabled,omitempty" tf:"ssl_check_enabled,omitempty"` } type ValidationRulesObservation struct { @@ -261,6 +351,18 @@ type ValidationRulesParameters struct { type ApplicationInsightsStandardWebTestSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationInsightsStandardWebTestParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationInsightsStandardWebTestInitParameters `json:"initProvider,omitempty"` } // ApplicationInsightsStandardWebTestStatus defines the observed state of ApplicationInsightsStandardWebTest. @@ -281,9 +383,9 @@ type ApplicationInsightsStandardWebTestStatus struct { type ApplicationInsightsStandardWebTest struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.geoLocations)",message="geoLocations is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.request)",message="request is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.geoLocations) || has(self.initProvider.geoLocations)",message="geoLocations is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.request) || has(self.initProvider.request)",message="request is a required parameter" Spec ApplicationInsightsStandardWebTestSpec `json:"spec"` Status ApplicationInsightsStandardWebTestStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightswebtest_types.go b/apis/insights/v1beta1/zz_applicationinsightswebtest_types.go index bc7c2c36b..44b8efc16 100755 --- a/apis/insights/v1beta1/zz_applicationinsightswebtest_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightswebtest_types.go @@ -13,6 +13,42 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInsightsWebTestInitParameters struct { + + // An XML configuration specification for a WebTest (see here for more information). + Configuration *string `json:"configuration,omitempty" tf:"configuration,omitempty"` + + // Purpose/user defined descriptive test for this WebTest. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Is the test actively being monitored. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Interval in seconds between test runs for this WebTest. Valid options are 300, 600 and 900. Defaults to 300. + Frequency *float64 `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // A list of where to physically run the tests from to give global coverage for accessibility of your application. + GeoLocations []*string `json:"geoLocations,omitempty" tf:"geo_locations,omitempty"` + + // The kind of web test that this web test watches. Choices are ping and multistep. Changing this forces a new resource to be created. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. It needs to correlate with location of parent resource (azurerm_application_insights). + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name of the Application Insights WebTest. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Allow for retries should this WebTest fail. + RetryEnabled *bool `json:"retryEnabled,omitempty" tf:"retry_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Seconds until this WebTest will timeout and fail. Default is 30. + Timeout *float64 `json:"timeout,omitempty" tf:"timeout,omitempty"` +} + type ApplicationInsightsWebTestObservation struct { // The ID of the Application Insights component on which the WebTest operates. Changing this forces a new resource to be created. @@ -137,6 +173,18 @@ type ApplicationInsightsWebTestParameters struct { type ApplicationInsightsWebTestSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationInsightsWebTestParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationInsightsWebTestInitParameters `json:"initProvider,omitempty"` } // ApplicationInsightsWebTestStatus defines the observed state of ApplicationInsightsWebTest. @@ -157,11 +205,11 @@ type ApplicationInsightsWebTestStatus struct { type ApplicationInsightsWebTest struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.configuration)",message="configuration is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.geoLocations)",message="geoLocations is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.kind)",message="kind is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.configuration) || has(self.initProvider.configuration)",message="configuration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.geoLocations) || has(self.initProvider.geoLocations)",message="geoLocations is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.kind) || has(self.initProvider.kind)",message="kind is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ApplicationInsightsWebTestSpec `json:"spec"` Status ApplicationInsightsWebTestStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightsworkbook_types.go b/apis/insights/v1beta1/zz_applicationinsightsworkbook_types.go index 7e5ab3b7d..cd825a95e 100755 --- a/apis/insights/v1beta1/zz_applicationinsightsworkbook_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightsworkbook_types.go @@ -13,6 +13,39 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInsightsWorkbookInitParameters struct { + + // Workbook category, as defined by the user at creation time. There may be additional category types beyond the following: workbook, sentinel. Defaults to workbook. + Category *string `json:"category,omitempty" tf:"category,omitempty"` + + // Configuration of this particular workbook. Configuration data is a string containing valid JSON. + DataJSON *string `json:"dataJson,omitempty" tf:"data_json,omitempty"` + + // Specifies the description of the workbook. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies the user-defined name (display name) of the workbook. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // An identity block as defined below. Changing this forces a new Workbook to be created. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the Azure Region where the Workbook should exist. Changing this forces a new Workbook to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name of this Workbook as a UUID/GUID. It should not contain any uppercase letters. Changing this forces a new Workbook to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Resource ID for a source resource. It should not contain any uppercase letters. Defaults to azure monitor. + SourceID *string `json:"sourceId,omitempty" tf:"source_id,omitempty"` + + // Specifies the Resource Manager ID of the Storage Container when bring your own storage is used. Changing this forces a new Workbook to be created. + StorageContainerID *string `json:"storageContainerId,omitempty" tf:"storage_container_id,omitempty"` + + // A mapping of tags which should be assigned to the Workbook. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ApplicationInsightsWorkbookObservation struct { // Workbook category, as defined by the user at creation time. There may be additional category types beyond the following: workbook, sentinel. Defaults to workbook. @@ -108,6 +141,15 @@ type ApplicationInsightsWorkbookParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IdentityInitParameters struct { + + // The list of User Assigned Managed Identity IDs assigned to this Workbook. Changing this forces a new resource to be created. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The type of Managed Service Identity that is configured on this Workbook. Possible values are UserAssigned, SystemAssigned and SystemAssigned, UserAssigned. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // The list of User Assigned Managed Identity IDs assigned to this Workbook. Changing this forces a new resource to be created. @@ -130,14 +172,26 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of Managed Service Identity that is configured on this Workbook. Possible values are UserAssigned, SystemAssigned and SystemAssigned, UserAssigned. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // ApplicationInsightsWorkbookSpec defines the desired state of ApplicationInsightsWorkbook type ApplicationInsightsWorkbookSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationInsightsWorkbookParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationInsightsWorkbookInitParameters `json:"initProvider,omitempty"` } // ApplicationInsightsWorkbookStatus defines the observed state of ApplicationInsightsWorkbook. @@ -158,10 +212,10 @@ type ApplicationInsightsWorkbookStatus struct { type ApplicationInsightsWorkbook struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dataJson)",message="dataJson is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dataJson) || has(self.initProvider.dataJson)",message="dataJson is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ApplicationInsightsWorkbookSpec `json:"spec"` Status ApplicationInsightsWorkbookStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightsworkbooktemplate_types.go b/apis/insights/v1beta1/zz_applicationinsightsworkbooktemplate_types.go index 86742cfab..9882fbfee 100755 --- a/apis/insights/v1beta1/zz_applicationinsightsworkbooktemplate_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightsworkbooktemplate_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInsightsWorkbookTemplateInitParameters struct { + + // Information about the author of the workbook template. + Author *string `json:"author,omitempty" tf:"author,omitempty"` + + // A galleries block as defined below. + Galleries []GalleriesInitParameters `json:"galleries,omitempty" tf:"galleries,omitempty"` + + // Key value pairs of localized gallery. Each key is the locale code of languages supported by the Azure portal. + Localized *string `json:"localized,omitempty" tf:"localized,omitempty"` + + // Specifies the Azure Region where the Application Insights Workbook Template should exist. Changing this forces a new Application Insights Workbook Template to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name which should be used for this Application Insights Workbook Template. Changing this forces a new Application Insights Workbook Template to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Priority of the template. Determines which template to open when a workbook gallery is opened in viewer mode. Defaults to 0. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // A mapping of tags which should be assigned to the Application Insights Workbook Template. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Valid JSON object containing workbook template payload. + TemplateData *string `json:"templateData,omitempty" tf:"template_data,omitempty"` +} + type ApplicationInsightsWorkbookTemplateObservation struct { // Information about the author of the workbook template. @@ -94,6 +121,24 @@ type ApplicationInsightsWorkbookTemplateParameters struct { TemplateData *string `json:"templateData,omitempty" tf:"template_data,omitempty"` } +type GalleriesInitParameters struct { + + // Category for the gallery. + Category *string `json:"category,omitempty" tf:"category,omitempty"` + + // Name of the workbook template in the gallery. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Order of the template within the gallery. Defaults to 0. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // Azure resource type supported by the gallery. Defaults to Azure Monitor. + ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"` + + // Type of workbook supported by the workbook template. Defaults to workbook. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type GalleriesObservation struct { // Category for the gallery. @@ -115,12 +160,12 @@ type GalleriesObservation struct { type GalleriesParameters struct { // Category for the gallery. - // +kubebuilder:validation:Required - Category *string `json:"category" tf:"category,omitempty"` + // +kubebuilder:validation:Optional + Category *string `json:"category,omitempty" tf:"category,omitempty"` // Name of the workbook template in the gallery. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Order of the template within the gallery. Defaults to 0. // +kubebuilder:validation:Optional @@ -139,6 +184,18 @@ type GalleriesParameters struct { type ApplicationInsightsWorkbookTemplateSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationInsightsWorkbookTemplateParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationInsightsWorkbookTemplateInitParameters `json:"initProvider,omitempty"` } // ApplicationInsightsWorkbookTemplateStatus defines the observed state of ApplicationInsightsWorkbookTemplate. @@ -159,10 +216,10 @@ type ApplicationInsightsWorkbookTemplateStatus struct { type ApplicationInsightsWorkbookTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.galleries)",message="galleries is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.templateData)",message="templateData is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.galleries) || has(self.initProvider.galleries)",message="galleries is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.templateData) || has(self.initProvider.templateData)",message="templateData is a required parameter" Spec ApplicationInsightsWorkbookTemplateSpec `json:"spec"` Status ApplicationInsightsWorkbookTemplateStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_generated.deepcopy.go b/apis/insights/v1beta1/zz_generated.deepcopy.go index b9adfadec..8ab4c4e2d 100644 --- a/apis/insights/v1beta1/zz_generated.deepcopy.go +++ b/apis/insights/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,36 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AADAuthInitParameters) DeepCopyInto(out *AADAuthInitParameters) { + *out = *in + if in.IdentifierURI != nil { + in, out := &in.IdentifierURI, &out.IdentifierURI + *out = new(string) + **out = **in + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AADAuthInitParameters. +func (in *AADAuthInitParameters) DeepCopy() *AADAuthInitParameters { + if in == nil { + return nil + } + out := new(AADAuthInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AADAuthObservation) DeepCopyInto(out *AADAuthObservation) { *out = *in @@ -74,6 +104,36 @@ func (in *AADAuthParameters) DeepCopy() *AADAuthParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionInitParameters) DeepCopyInto(out *ActionInitParameters) { + *out = *in + if in.WebhookProperties != nil { + in, out := &in.WebhookProperties, &out.WebhookProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionInitParameters. +func (in *ActionInitParameters) DeepCopy() *ActionInitParameters { + if in == nil { + return nil + } + out := new(ActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionObservation) DeepCopyInto(out *ActionObservation) { *out = *in @@ -208,6 +268,48 @@ func (in *ApplicationInsightsAPIKey) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsAPIKeyInitParameters) DeepCopyInto(out *ApplicationInsightsAPIKeyInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ReadPermissions != nil { + in, out := &in.ReadPermissions, &out.ReadPermissions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.WritePermissions != nil { + in, out := &in.WritePermissions, &out.WritePermissions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsAPIKeyInitParameters. +func (in *ApplicationInsightsAPIKeyInitParameters) DeepCopy() *ApplicationInsightsAPIKeyInitParameters { + if in == nil { + return nil + } + out := new(ApplicationInsightsAPIKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationInsightsAPIKeyList) DeepCopyInto(out *ApplicationInsightsAPIKeyList) { *out = *in @@ -354,6 +456,7 @@ func (in *ApplicationInsightsAPIKeySpec) DeepCopyInto(out *ApplicationInsightsAP *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsAPIKeySpec. @@ -410,6 +513,46 @@ func (in *ApplicationInsightsAnalyticsItem) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsAnalyticsItemInitParameters) DeepCopyInto(out *ApplicationInsightsAnalyticsItemInitParameters) { + *out = *in + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = new(string) + **out = **in + } + if in.FunctionAlias != nil { + in, out := &in.FunctionAlias, &out.FunctionAlias + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsAnalyticsItemInitParameters. +func (in *ApplicationInsightsAnalyticsItemInitParameters) DeepCopy() *ApplicationInsightsAnalyticsItemInitParameters { + if in == nil { + return nil + } + out := new(ApplicationInsightsAnalyticsItemInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationInsightsAnalyticsItemList) DeepCopyInto(out *ApplicationInsightsAnalyticsItemList) { *out = *in @@ -567,6 +710,7 @@ func (in *ApplicationInsightsAnalyticsItemSpec) DeepCopyInto(out *ApplicationIns *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsAnalyticsItemSpec. @@ -596,6 +740,91 @@ func (in *ApplicationInsightsAnalyticsItemStatus) DeepCopy() *ApplicationInsight return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsInitParameters) DeepCopyInto(out *ApplicationInsightsInitParameters) { + *out = *in + if in.ApplicationType != nil { + in, out := &in.ApplicationType, &out.ApplicationType + *out = new(string) + **out = **in + } + if in.DailyDataCapInGb != nil { + in, out := &in.DailyDataCapInGb, &out.DailyDataCapInGb + *out = new(float64) + **out = **in + } + if in.DailyDataCapNotificationsDisabled != nil { + in, out := &in.DailyDataCapNotificationsDisabled, &out.DailyDataCapNotificationsDisabled + *out = new(bool) + **out = **in + } + if in.DisableIPMasking != nil { + in, out := &in.DisableIPMasking, &out.DisableIPMasking + *out = new(bool) + **out = **in + } + if in.ForceCustomerStorageForProfiler != nil { + in, out := &in.ForceCustomerStorageForProfiler, &out.ForceCustomerStorageForProfiler + *out = new(bool) + **out = **in + } + if in.InternetIngestionEnabled != nil { + in, out := &in.InternetIngestionEnabled, &out.InternetIngestionEnabled + *out = new(bool) + **out = **in + } + if in.InternetQueryEnabled != nil { + in, out := &in.InternetQueryEnabled, &out.InternetQueryEnabled + *out = new(bool) + **out = **in + } + if in.LocalAuthenticationDisabled != nil { + in, out := &in.LocalAuthenticationDisabled, &out.LocalAuthenticationDisabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.SamplingPercentage != nil { + in, out := &in.SamplingPercentage, &out.SamplingPercentage + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsInitParameters. +func (in *ApplicationInsightsInitParameters) DeepCopy() *ApplicationInsightsInitParameters { + if in == nil { + return nil + } + out := new(ApplicationInsightsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationInsightsList) DeepCopyInto(out *ApplicationInsightsList) { *out = *in @@ -875,6 +1104,47 @@ func (in *ApplicationInsightsSmartDetectionRule) DeepCopyObject() runtime.Object return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsSmartDetectionRuleInitParameters) DeepCopyInto(out *ApplicationInsightsSmartDetectionRuleInitParameters) { + *out = *in + if in.AdditionalEmailRecipients != nil { + in, out := &in.AdditionalEmailRecipients, &out.AdditionalEmailRecipients + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SendEmailsToSubscriptionOwners != nil { + in, out := &in.SendEmailsToSubscriptionOwners, &out.SendEmailsToSubscriptionOwners + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsSmartDetectionRuleInitParameters. +func (in *ApplicationInsightsSmartDetectionRuleInitParameters) DeepCopy() *ApplicationInsightsSmartDetectionRuleInitParameters { + if in == nil { + return nil + } + out := new(ApplicationInsightsSmartDetectionRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationInsightsSmartDetectionRuleList) DeepCopyInto(out *ApplicationInsightsSmartDetectionRuleList) { *out = *in @@ -1019,6 +1289,7 @@ func (in *ApplicationInsightsSmartDetectionRuleSpec) DeepCopyInto(out *Applicati *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsSmartDetectionRuleSpec. @@ -1053,6 +1324,7 @@ func (in *ApplicationInsightsSpec) DeepCopyInto(out *ApplicationInsightsSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsSpec. @@ -1093,19 +1365,104 @@ func (in *ApplicationInsightsStandardWebTest) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ApplicationInsightsStandardWebTestList) DeepCopyInto(out *ApplicationInsightsStandardWebTestList) { +func (in *ApplicationInsightsStandardWebTestInitParameters) DeepCopyInto(out *ApplicationInsightsStandardWebTestInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ApplicationInsightsStandardWebTest, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(float64) + **out = **in + } + if in.GeoLocations != nil { + in, out := &in.GeoLocations, &out.GeoLocations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Request != nil { + in, out := &in.Request, &out.Request + *out = make([]RequestInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetryEnabled != nil { + in, out := &in.RetryEnabled, &out.RetryEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(float64) + **out = **in + } + if in.ValidationRules != nil { + in, out := &in.ValidationRules, &out.ValidationRules + *out = make([]ValidationRulesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsStandardWebTestInitParameters. +func (in *ApplicationInsightsStandardWebTestInitParameters) DeepCopy() *ApplicationInsightsStandardWebTestInitParameters { + if in == nil { + return nil + } + out := new(ApplicationInsightsStandardWebTestInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsStandardWebTestList) DeepCopyInto(out *ApplicationInsightsStandardWebTestList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ApplicationInsightsStandardWebTest, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsStandardWebTestList. func (in *ApplicationInsightsStandardWebTestList) DeepCopy() *ApplicationInsightsStandardWebTestList { if in == nil { @@ -1349,6 +1706,7 @@ func (in *ApplicationInsightsStandardWebTestSpec) DeepCopyInto(out *ApplicationI *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsStandardWebTestSpec. @@ -1422,6 +1780,92 @@ func (in *ApplicationInsightsWebTest) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsWebTestInitParameters) DeepCopyInto(out *ApplicationInsightsWebTestInitParameters) { + *out = *in + if in.Configuration != nil { + in, out := &in.Configuration, &out.Configuration + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(float64) + **out = **in + } + if in.GeoLocations != nil { + in, out := &in.GeoLocations, &out.GeoLocations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RetryEnabled != nil { + in, out := &in.RetryEnabled, &out.RetryEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWebTestInitParameters. +func (in *ApplicationInsightsWebTestInitParameters) DeepCopy() *ApplicationInsightsWebTestInitParameters { + if in == nil { + return nil + } + out := new(ApplicationInsightsWebTestInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationInsightsWebTestList) DeepCopyInto(out *ApplicationInsightsWebTestList) { *out = *in @@ -1454,6 +1898,36 @@ func (in *ApplicationInsightsWebTestList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsWebTestLocationAvailabilityCriteriaInitParameters) DeepCopyInto(out *ApplicationInsightsWebTestLocationAvailabilityCriteriaInitParameters) { + *out = *in + if in.ComponentID != nil { + in, out := &in.ComponentID, &out.ComponentID + *out = new(string) + **out = **in + } + if in.FailedLocationCount != nil { + in, out := &in.FailedLocationCount, &out.FailedLocationCount + *out = new(float64) + **out = **in + } + if in.WebTestID != nil { + in, out := &in.WebTestID, &out.WebTestID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWebTestLocationAvailabilityCriteriaInitParameters. +func (in *ApplicationInsightsWebTestLocationAvailabilityCriteriaInitParameters) DeepCopy() *ApplicationInsightsWebTestLocationAvailabilityCriteriaInitParameters { + if in == nil { + return nil + } + out := new(ApplicationInsightsWebTestLocationAvailabilityCriteriaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationInsightsWebTestLocationAvailabilityCriteriaObservation) DeepCopyInto(out *ApplicationInsightsWebTestLocationAvailabilityCriteriaObservation) { *out = *in @@ -1741,6 +2215,7 @@ func (in *ApplicationInsightsWebTestSpec) DeepCopyInto(out *ApplicationInsightsW *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWebTestSpec. @@ -1798,39 +2273,7 @@ func (in *ApplicationInsightsWorkbook) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ApplicationInsightsWorkbookList) DeepCopyInto(out *ApplicationInsightsWorkbookList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ApplicationInsightsWorkbook, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWorkbookList. -func (in *ApplicationInsightsWorkbookList) DeepCopy() *ApplicationInsightsWorkbookList { - if in == nil { - return nil - } - out := new(ApplicationInsightsWorkbookList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ApplicationInsightsWorkbookList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ApplicationInsightsWorkbookObservation) DeepCopyInto(out *ApplicationInsightsWorkbookObservation) { +func (in *ApplicationInsightsWorkbookInitParameters) DeepCopyInto(out *ApplicationInsightsWorkbookInitParameters) { *out = *in if in.Category != nil { in, out := &in.Category, &out.Category @@ -1852,14 +2295,9 @@ func (in *ApplicationInsightsWorkbookObservation) DeepCopyInto(out *ApplicationI *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.Identity != nil { in, out := &in.Identity, &out.Identity - *out = make([]IdentityObservation, len(*in)) + *out = make([]IdentityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1874,11 +2312,6 @@ func (in *ApplicationInsightsWorkbookObservation) DeepCopyInto(out *ApplicationI *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } if in.SourceID != nil { in, out := &in.SourceID, &out.SourceID *out = new(string) @@ -1906,27 +2339,146 @@ func (in *ApplicationInsightsWorkbookObservation) DeepCopyInto(out *ApplicationI } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWorkbookObservation. -func (in *ApplicationInsightsWorkbookObservation) DeepCopy() *ApplicationInsightsWorkbookObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWorkbookInitParameters. +func (in *ApplicationInsightsWorkbookInitParameters) DeepCopy() *ApplicationInsightsWorkbookInitParameters { if in == nil { return nil } - out := new(ApplicationInsightsWorkbookObservation) + out := new(ApplicationInsightsWorkbookInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ApplicationInsightsWorkbookParameters) DeepCopyInto(out *ApplicationInsightsWorkbookParameters) { +func (in *ApplicationInsightsWorkbookList) DeepCopyInto(out *ApplicationInsightsWorkbookList) { *out = *in - if in.Category != nil { - in, out := &in.Category, &out.Category - *out = new(string) - **out = **in - } - if in.DataJSON != nil { - in, out := &in.DataJSON, &out.DataJSON - *out = new(string) + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ApplicationInsightsWorkbook, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWorkbookList. +func (in *ApplicationInsightsWorkbookList) DeepCopy() *ApplicationInsightsWorkbookList { + if in == nil { + return nil + } + out := new(ApplicationInsightsWorkbookList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ApplicationInsightsWorkbookList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsWorkbookObservation) DeepCopyInto(out *ApplicationInsightsWorkbookObservation) { + *out = *in + if in.Category != nil { + in, out := &in.Category, &out.Category + *out = new(string) + **out = **in + } + if in.DataJSON != nil { + in, out := &in.DataJSON, &out.DataJSON + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.SourceID != nil { + in, out := &in.SourceID, &out.SourceID + *out = new(string) + **out = **in + } + if in.StorageContainerID != nil { + in, out := &in.StorageContainerID, &out.StorageContainerID + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWorkbookObservation. +func (in *ApplicationInsightsWorkbookObservation) DeepCopy() *ApplicationInsightsWorkbookObservation { + if in == nil { + return nil + } + out := new(ApplicationInsightsWorkbookObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsWorkbookParameters) DeepCopyInto(out *ApplicationInsightsWorkbookParameters) { + *out = *in + if in.Category != nil { + in, out := &in.Category, &out.Category + *out = new(string) + **out = **in + } + if in.DataJSON != nil { + in, out := &in.DataJSON, &out.DataJSON + *out = new(string) **out = **in } if in.Description != nil { @@ -2013,6 +2565,7 @@ func (in *ApplicationInsightsWorkbookSpec) DeepCopyInto(out *ApplicationInsights *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWorkbookSpec. @@ -2069,6 +2622,73 @@ func (in *ApplicationInsightsWorkbookTemplate) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInsightsWorkbookTemplateInitParameters) DeepCopyInto(out *ApplicationInsightsWorkbookTemplateInitParameters) { + *out = *in + if in.Author != nil { + in, out := &in.Author, &out.Author + *out = new(string) + **out = **in + } + if in.Galleries != nil { + in, out := &in.Galleries, &out.Galleries + *out = make([]GalleriesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Localized != nil { + in, out := &in.Localized, &out.Localized + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TemplateData != nil { + in, out := &in.TemplateData, &out.TemplateData + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWorkbookTemplateInitParameters. +func (in *ApplicationInsightsWorkbookTemplateInitParameters) DeepCopy() *ApplicationInsightsWorkbookTemplateInitParameters { + if in == nil { + return nil + } + out := new(ApplicationInsightsWorkbookTemplateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationInsightsWorkbookTemplateList) DeepCopyInto(out *ApplicationInsightsWorkbookTemplateList) { *out = *in @@ -2265,6 +2885,7 @@ func (in *ApplicationInsightsWorkbookTemplateSpec) DeepCopyInto(out *Application *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInsightsWorkbookTemplateSpec. @@ -2294,6 +2915,36 @@ func (in *ApplicationInsightsWorkbookTemplateStatus) DeepCopy() *ApplicationInsi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ArmRoleReceiverInitParameters) DeepCopyInto(out *ArmRoleReceiverInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RoleID != nil { + in, out := &in.RoleID, &out.RoleID + *out = new(string) + **out = **in + } + if in.UseCommonAlertSchema != nil { + in, out := &in.UseCommonAlertSchema, &out.UseCommonAlertSchema + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArmRoleReceiverInitParameters. +func (in *ArmRoleReceiverInitParameters) DeepCopy() *ArmRoleReceiverInitParameters { + if in == nil { + return nil + } + out := new(ArmRoleReceiverInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ArmRoleReceiverObservation) DeepCopyInto(out *ArmRoleReceiverObservation) { *out = *in @@ -2355,7 +3006,7 @@ func (in *ArmRoleReceiverParameters) DeepCopy() *ArmRoleReceiverParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AutomationRunBookReceiverObservation) DeepCopyInto(out *AutomationRunBookReceiverObservation) { +func (in *AutomationRunBookReceiverInitParameters) DeepCopyInto(out *AutomationRunBookReceiverInitParameters) { *out = *in if in.AutomationAccountID != nil { in, out := &in.AutomationAccountID, &out.AutomationAccountID @@ -2394,18 +3045,18 @@ func (in *AutomationRunBookReceiverObservation) DeepCopyInto(out *AutomationRunB } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomationRunBookReceiverObservation. -func (in *AutomationRunBookReceiverObservation) DeepCopy() *AutomationRunBookReceiverObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomationRunBookReceiverInitParameters. +func (in *AutomationRunBookReceiverInitParameters) DeepCopy() *AutomationRunBookReceiverInitParameters { if in == nil { return nil } - out := new(AutomationRunBookReceiverObservation) + out := new(AutomationRunBookReceiverInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AutomationRunBookReceiverParameters) DeepCopyInto(out *AutomationRunBookReceiverParameters) { +func (in *AutomationRunBookReceiverObservation) DeepCopyInto(out *AutomationRunBookReceiverObservation) { *out = *in if in.AutomationAccountID != nil { in, out := &in.AutomationAccountID, &out.AutomationAccountID @@ -2444,44 +3095,119 @@ func (in *AutomationRunBookReceiverParameters) DeepCopyInto(out *AutomationRunBo } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomationRunBookReceiverParameters. -func (in *AutomationRunBookReceiverParameters) DeepCopy() *AutomationRunBookReceiverParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomationRunBookReceiverObservation. +func (in *AutomationRunBookReceiverObservation) DeepCopy() *AutomationRunBookReceiverObservation { if in == nil { return nil } - out := new(AutomationRunBookReceiverParameters) + out := new(AutomationRunBookReceiverObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AzureAppPushReceiverObservation) DeepCopyInto(out *AzureAppPushReceiverObservation) { +func (in *AutomationRunBookReceiverParameters) DeepCopyInto(out *AutomationRunBookReceiverParameters) { *out = *in - if in.EmailAddress != nil { - in, out := &in.EmailAddress, &out.EmailAddress + if in.AutomationAccountID != nil { + in, out := &in.AutomationAccountID, &out.AutomationAccountID *out = new(string) **out = **in } + if in.IsGlobalRunBook != nil { + in, out := &in.IsGlobalRunBook, &out.IsGlobalRunBook + *out = new(bool) + **out = **in + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureAppPushReceiverObservation. -func (in *AzureAppPushReceiverObservation) DeepCopy() *AzureAppPushReceiverObservation { - if in == nil { - return nil + if in.RunBookName != nil { + in, out := &in.RunBookName, &out.RunBookName + *out = new(string) + **out = **in } - out := new(AzureAppPushReceiverObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AzureAppPushReceiverParameters) DeepCopyInto(out *AzureAppPushReceiverParameters) { - *out = *in + if in.ServiceURI != nil { + in, out := &in.ServiceURI, &out.ServiceURI + *out = new(string) + **out = **in + } + if in.UseCommonAlertSchema != nil { + in, out := &in.UseCommonAlertSchema, &out.UseCommonAlertSchema + *out = new(bool) + **out = **in + } + if in.WebhookResourceID != nil { + in, out := &in.WebhookResourceID, &out.WebhookResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomationRunBookReceiverParameters. +func (in *AutomationRunBookReceiverParameters) DeepCopy() *AutomationRunBookReceiverParameters { + if in == nil { + return nil + } + out := new(AutomationRunBookReceiverParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureAppPushReceiverInitParameters) DeepCopyInto(out *AzureAppPushReceiverInitParameters) { + *out = *in + if in.EmailAddress != nil { + in, out := &in.EmailAddress, &out.EmailAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureAppPushReceiverInitParameters. +func (in *AzureAppPushReceiverInitParameters) DeepCopy() *AzureAppPushReceiverInitParameters { + if in == nil { + return nil + } + out := new(AzureAppPushReceiverInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureAppPushReceiverObservation) DeepCopyInto(out *AzureAppPushReceiverObservation) { + *out = *in + if in.EmailAddress != nil { + in, out := &in.EmailAddress, &out.EmailAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureAppPushReceiverObservation. +func (in *AzureAppPushReceiverObservation) DeepCopy() *AzureAppPushReceiverObservation { + if in == nil { + return nil + } + out := new(AzureAppPushReceiverObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureAppPushReceiverParameters) DeepCopyInto(out *AzureAppPushReceiverParameters) { + *out = *in if in.EmailAddress != nil { in, out := &in.EmailAddress, &out.EmailAddress *out = new(string) @@ -2504,6 +3230,46 @@ func (in *AzureAppPushReceiverParameters) DeepCopy() *AzureAppPushReceiverParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureFunctionReceiverInitParameters) DeepCopyInto(out *AzureFunctionReceiverInitParameters) { + *out = *in + if in.FunctionAppResourceID != nil { + in, out := &in.FunctionAppResourceID, &out.FunctionAppResourceID + *out = new(string) + **out = **in + } + if in.FunctionName != nil { + in, out := &in.FunctionName, &out.FunctionName + *out = new(string) + **out = **in + } + if in.HTTPTriggerURL != nil { + in, out := &in.HTTPTriggerURL, &out.HTTPTriggerURL + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.UseCommonAlertSchema != nil { + in, out := &in.UseCommonAlertSchema, &out.UseCommonAlertSchema + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureFunctionReceiverInitParameters. +func (in *AzureFunctionReceiverInitParameters) DeepCopy() *AzureFunctionReceiverInitParameters { + if in == nil { + return nil + } + out := new(AzureFunctionReceiverInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureFunctionReceiverObservation) DeepCopyInto(out *AzureFunctionReceiverObservation) { *out = *in @@ -2584,6 +3350,26 @@ func (in *AzureFunctionReceiverParameters) DeepCopy() *AzureFunctionReceiverPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureMonitorMetricsInitParameters) DeepCopyInto(out *AzureMonitorMetricsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMonitorMetricsInitParameters. +func (in *AzureMonitorMetricsInitParameters) DeepCopy() *AzureMonitorMetricsInitParameters { + if in == nil { + return nil + } + out := new(AzureMonitorMetricsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureMonitorMetricsObservation) DeepCopyInto(out *AzureMonitorMetricsObservation) { *out = *in @@ -2624,6 +3410,36 @@ func (in *AzureMonitorMetricsParameters) DeepCopy() *AzureMonitorMetricsParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CapacityInitParameters) DeepCopyInto(out *CapacityInitParameters) { + *out = *in + if in.Default != nil { + in, out := &in.Default, &out.Default + *out = new(float64) + **out = **in + } + if in.Maximum != nil { + in, out := &in.Maximum, &out.Maximum + *out = new(float64) + **out = **in + } + if in.Minimum != nil { + in, out := &in.Minimum, &out.Minimum + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapacityInitParameters. +func (in *CapacityInitParameters) DeepCopy() *CapacityInitParameters { + if in == nil { + return nil + } + out := new(CapacityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CapacityObservation) DeepCopyInto(out *CapacityObservation) { *out = *in @@ -2684,6 +3500,31 @@ func (in *CapacityParameters) DeepCopy() *CapacityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ColumnInitParameters) DeepCopyInto(out *ColumnInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ColumnInitParameters. +func (in *ColumnInitParameters) DeepCopy() *ColumnInitParameters { + if in == nil { + return nil + } + out := new(ColumnInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ColumnObservation) DeepCopyInto(out *ColumnObservation) { *out = *in @@ -2734,6 +3575,36 @@ func (in *ColumnParameters) DeepCopy() *ColumnParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContentInitParameters) DeepCopyInto(out *ContentInitParameters) { + *out = *in + if in.ContentMatch != nil { + in, out := &in.ContentMatch, &out.ContentMatch + *out = new(string) + **out = **in + } + if in.IgnoreCase != nil { + in, out := &in.IgnoreCase, &out.IgnoreCase + *out = new(bool) + **out = **in + } + if in.PassIfTextFound != nil { + in, out := &in.PassIfTextFound, &out.PassIfTextFound + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContentInitParameters. +func (in *ContentInitParameters) DeepCopy() *ContentInitParameters { + if in == nil { + return nil + } + out := new(ContentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContentObservation) DeepCopyInto(out *ContentObservation) { *out = *in @@ -2794,6 +3665,42 @@ func (in *ContentParameters) DeepCopy() *ContentParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CriteriaDimensionInitParameters) DeepCopyInto(out *CriteriaDimensionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CriteriaDimensionInitParameters. +func (in *CriteriaDimensionInitParameters) DeepCopy() *CriteriaDimensionInitParameters { + if in == nil { + return nil + } + out := new(CriteriaDimensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CriteriaDimensionObservation) DeepCopyInto(out *CriteriaDimensionObservation) { *out = *in @@ -2867,7 +3774,7 @@ func (in *CriteriaDimensionParameters) DeepCopy() *CriteriaDimensionParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CriteriaObservation) DeepCopyInto(out *CriteriaObservation) { +func (in *CriteriaInitParameters) DeepCopyInto(out *CriteriaInitParameters) { *out = *in if in.Caller != nil { in, out := &in.Caller, &out.Caller @@ -2911,16 +3818,11 @@ func (in *CriteriaObservation) DeepCopyInto(out *CriteriaObservation) { } if in.ResourceHealth != nil { in, out := &in.ResourceHealth, &out.ResourceHealth - *out = make([]ResourceHealthObservation, len(*in)) + *out = make([]ResourceHealthInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ResourceID != nil { - in, out := &in.ResourceID, &out.ResourceID - *out = new(string) - **out = **in - } if in.ResourceProvider != nil { in, out := &in.ResourceProvider, &out.ResourceProvider *out = new(string) @@ -2933,7 +3835,7 @@ func (in *CriteriaObservation) DeepCopyInto(out *CriteriaObservation) { } if in.ServiceHealth != nil { in, out := &in.ServiceHealth, &out.ServiceHealth - *out = make([]ServiceHealthObservation, len(*in)) + *out = make([]ServiceHealthInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -2950,18 +3852,18 @@ func (in *CriteriaObservation) DeepCopyInto(out *CriteriaObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CriteriaObservation. -func (in *CriteriaObservation) DeepCopy() *CriteriaObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CriteriaInitParameters. +func (in *CriteriaInitParameters) DeepCopy() *CriteriaInitParameters { if in == nil { return nil } - out := new(CriteriaObservation) + out := new(CriteriaInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CriteriaParameters) DeepCopyInto(out *CriteriaParameters) { +func (in *CriteriaObservation) DeepCopyInto(out *CriteriaObservation) { *out = *in if in.Caller != nil { in, out := &in.Caller, &out.Caller @@ -3005,7 +3907,7 @@ func (in *CriteriaParameters) DeepCopyInto(out *CriteriaParameters) { } if in.ResourceHealth != nil { in, out := &in.ResourceHealth, &out.ResourceHealth - *out = make([]ResourceHealthParameters, len(*in)) + *out = make([]ResourceHealthObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -3015,10 +3917,104 @@ func (in *CriteriaParameters) DeepCopyInto(out *CriteriaParameters) { *out = new(string) **out = **in } - if in.ResourceIDRef != nil { - in, out := &in.ResourceIDRef, &out.ResourceIDRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.ResourceProvider != nil { + in, out := &in.ResourceProvider, &out.ResourceProvider + *out = new(string) + **out = **in + } + if in.ResourceType != nil { + in, out := &in.ResourceType, &out.ResourceType + *out = new(string) + **out = **in + } + if in.ServiceHealth != nil { + in, out := &in.ServiceHealth, &out.ServiceHealth + *out = make([]ServiceHealthObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } + if in.SubStatus != nil { + in, out := &in.SubStatus, &out.SubStatus + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CriteriaObservation. +func (in *CriteriaObservation) DeepCopy() *CriteriaObservation { + if in == nil { + return nil + } + out := new(CriteriaObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CriteriaParameters) DeepCopyInto(out *CriteriaParameters) { + *out = *in + if in.Caller != nil { + in, out := &in.Caller, &out.Caller + *out = new(string) + **out = **in + } + if in.Category != nil { + in, out := &in.Category, &out.Category + *out = new(string) + **out = **in + } + if in.Level != nil { + in, out := &in.Level, &out.Level + *out = new(string) + **out = **in + } + if in.OperationName != nil { + in, out := &in.OperationName, &out.OperationName + *out = new(string) + **out = **in + } + if in.RecommendationCategory != nil { + in, out := &in.RecommendationCategory, &out.RecommendationCategory + *out = new(string) + **out = **in + } + if in.RecommendationImpact != nil { + in, out := &in.RecommendationImpact, &out.RecommendationImpact + *out = new(string) + **out = **in + } + if in.RecommendationType != nil { + in, out := &in.RecommendationType, &out.RecommendationType + *out = new(string) + **out = **in + } + if in.ResourceGroup != nil { + in, out := &in.ResourceGroup, &out.ResourceGroup + *out = new(string) + **out = **in + } + if in.ResourceHealth != nil { + in, out := &in.ResourceHealth, &out.ResourceHealth + *out = make([]ResourceHealthParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } + if in.ResourceIDRef != nil { + in, out := &in.ResourceIDRef, &out.ResourceIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) } if in.ResourceIDSelector != nil { in, out := &in.ResourceIDSelector, &out.ResourceIDSelector @@ -3064,6 +4060,58 @@ func (in *CriteriaParameters) DeepCopy() *CriteriaParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataFlowInitParameters) DeepCopyInto(out *DataFlowInitParameters) { + *out = *in + if in.BuiltInTransform != nil { + in, out := &in.BuiltInTransform, &out.BuiltInTransform + *out = new(string) + **out = **in + } + if in.Destinations != nil { + in, out := &in.Destinations, &out.Destinations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.OutputStream != nil { + in, out := &in.OutputStream, &out.OutputStream + *out = new(string) + **out = **in + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TransformKql != nil { + in, out := &in.TransformKql, &out.TransformKql + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataFlowInitParameters. +func (in *DataFlowInitParameters) DeepCopy() *DataFlowInitParameters { + if in == nil { + return nil + } + out := new(DataFlowInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataFlowObservation) DeepCopyInto(out *DataFlowObservation) { *out = *in @@ -3168,6 +4216,28 @@ func (in *DataFlowParameters) DeepCopy() *DataFlowParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataImportInitParameters) DeepCopyInto(out *DataImportInitParameters) { + *out = *in + if in.EventHubDataSource != nil { + in, out := &in.EventHubDataSource, &out.EventHubDataSource + *out = make([]EventHubDataSourceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataImportInitParameters. +func (in *DataImportInitParameters) DeepCopy() *DataImportInitParameters { + if in == nil { + return nil + } + out := new(DataImportInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataImportObservation) DeepCopyInto(out *DataImportObservation) { *out = *in @@ -3212,6 +4282,91 @@ func (in *DataImportParameters) DeepCopy() *DataImportParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataSourcesInitParameters) DeepCopyInto(out *DataSourcesInitParameters) { + *out = *in + if in.DataImport != nil { + in, out := &in.DataImport, &out.DataImport + *out = make([]DataImportInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Extension != nil { + in, out := &in.Extension, &out.Extension + *out = make([]ExtensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IisLog != nil { + in, out := &in.IisLog, &out.IisLog + *out = make([]IisLogInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LogFile != nil { + in, out := &in.LogFile, &out.LogFile + *out = make([]LogFileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PerformanceCounter != nil { + in, out := &in.PerformanceCounter, &out.PerformanceCounter + *out = make([]PerformanceCounterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PlatformTelemetry != nil { + in, out := &in.PlatformTelemetry, &out.PlatformTelemetry + *out = make([]PlatformTelemetryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PrometheusForwarder != nil { + in, out := &in.PrometheusForwarder, &out.PrometheusForwarder + *out = make([]PrometheusForwarderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Syslog != nil { + in, out := &in.Syslog, &out.Syslog + *out = make([]SyslogInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WindowsEventLog != nil { + in, out := &in.WindowsEventLog, &out.WindowsEventLog + *out = make([]WindowsEventLogInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WindowsFirewallLog != nil { + in, out := &in.WindowsFirewallLog, &out.WindowsFirewallLog + *out = make([]WindowsFirewallLogInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSourcesInitParameters. +func (in *DataSourcesInitParameters) DeepCopy() *DataSourcesInitParameters { + if in == nil { + return nil + } + out := new(DataSourcesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataSourcesObservation) DeepCopyInto(out *DataSourcesObservation) { *out = *in @@ -3382,6 +4537,77 @@ func (in *DataSourcesParameters) DeepCopy() *DataSourcesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DestinationsInitParameters) DeepCopyInto(out *DestinationsInitParameters) { + *out = *in + if in.AzureMonitorMetrics != nil { + in, out := &in.AzureMonitorMetrics, &out.AzureMonitorMetrics + *out = make([]AzureMonitorMetricsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EventHub != nil { + in, out := &in.EventHub, &out.EventHub + *out = make([]EventHubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EventHubDirect != nil { + in, out := &in.EventHubDirect, &out.EventHubDirect + *out = make([]EventHubDirectInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LogAnalytics != nil { + in, out := &in.LogAnalytics, &out.LogAnalytics + *out = make([]LogAnalyticsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MonitorAccount != nil { + in, out := &in.MonitorAccount, &out.MonitorAccount + *out = make([]MonitorAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageBlob != nil { + in, out := &in.StorageBlob, &out.StorageBlob + *out = make([]StorageBlobInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageBlobDirect != nil { + in, out := &in.StorageBlobDirect, &out.StorageBlobDirect + *out = make([]StorageBlobDirectInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageTableDirect != nil { + in, out := &in.StorageTableDirect, &out.StorageTableDirect + *out = make([]StorageTableDirectInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DestinationsInitParameters. +func (in *DestinationsInitParameters) DeepCopy() *DestinationsInitParameters { + if in == nil { + return nil + } + out := new(DestinationsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DestinationsObservation) DeepCopyInto(out *DestinationsObservation) { *out = *in @@ -3505,21 +4731,57 @@ func (in *DestinationsParameters) DeepCopyInto(out *DestinationsParameters) { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.StorageTableDirect != nil { - in, out := &in.StorageTableDirect, &out.StorageTableDirect - *out = make([]StorageTableDirectParameters, len(*in)) + if in.StorageTableDirect != nil { + in, out := &in.StorageTableDirect, &out.StorageTableDirect + *out = make([]StorageTableDirectParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DestinationsParameters. +func (in *DestinationsParameters) DeepCopy() *DestinationsParameters { + if in == nil { + return nil + } + out := new(DestinationsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DimensionInitParameters) DeepCopyInto(out *DimensionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DestinationsParameters. -func (in *DestinationsParameters) DeepCopy() *DestinationsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DimensionInitParameters. +func (in *DimensionInitParameters) DeepCopy() *DimensionInitParameters { if in == nil { return nil } - out := new(DestinationsParameters) + out := new(DimensionInitParameters) in.DeepCopyInto(out) return out } @@ -3596,6 +4858,42 @@ func (in *DimensionParameters) DeepCopy() *DimensionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DimensionsInitParameters) DeepCopyInto(out *DimensionsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DimensionsInitParameters. +func (in *DimensionsInitParameters) DeepCopy() *DimensionsInitParameters { + if in == nil { + return nil + } + out := new(DimensionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DimensionsObservation) DeepCopyInto(out *DimensionsObservation) { *out = *in @@ -3668,6 +4966,42 @@ func (in *DimensionsParameters) DeepCopy() *DimensionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DynamicCriteriaDimensionInitParameters) DeepCopyInto(out *DynamicCriteriaDimensionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynamicCriteriaDimensionInitParameters. +func (in *DynamicCriteriaDimensionInitParameters) DeepCopy() *DynamicCriteriaDimensionInitParameters { + if in == nil { + return nil + } + out := new(DynamicCriteriaDimensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DynamicCriteriaDimensionObservation) DeepCopyInto(out *DynamicCriteriaDimensionObservation) { *out = *in @@ -3740,6 +5074,73 @@ func (in *DynamicCriteriaDimensionParameters) DeepCopy() *DynamicCriteriaDimensi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DynamicCriteriaInitParameters) DeepCopyInto(out *DynamicCriteriaInitParameters) { + *out = *in + if in.Aggregation != nil { + in, out := &in.Aggregation, &out.Aggregation + *out = new(string) + **out = **in + } + if in.AlertSensitivity != nil { + in, out := &in.AlertSensitivity, &out.AlertSensitivity + *out = new(string) + **out = **in + } + if in.Dimension != nil { + in, out := &in.Dimension, &out.Dimension + *out = make([]DynamicCriteriaDimensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EvaluationFailureCount != nil { + in, out := &in.EvaluationFailureCount, &out.EvaluationFailureCount + *out = new(float64) + **out = **in + } + if in.EvaluationTotalCount != nil { + in, out := &in.EvaluationTotalCount, &out.EvaluationTotalCount + *out = new(float64) + **out = **in + } + if in.IgnoreDataBefore != nil { + in, out := &in.IgnoreDataBefore, &out.IgnoreDataBefore + *out = new(string) + **out = **in + } + if in.MetricName != nil { + in, out := &in.MetricName, &out.MetricName + *out = new(string) + **out = **in + } + if in.MetricNamespace != nil { + in, out := &in.MetricNamespace, &out.MetricNamespace + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.SkipMetricValidation != nil { + in, out := &in.SkipMetricValidation, &out.SkipMetricValidation + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynamicCriteriaInitParameters. +func (in *DynamicCriteriaInitParameters) DeepCopy() *DynamicCriteriaInitParameters { + if in == nil { + return nil + } + out := new(DynamicCriteriaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DynamicCriteriaObservation) DeepCopyInto(out *DynamicCriteriaObservation) { *out = *in @@ -3874,6 +5275,42 @@ func (in *DynamicCriteriaParameters) DeepCopy() *DynamicCriteriaParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EmailInitParameters) DeepCopyInto(out *EmailInitParameters) { + *out = *in + if in.CustomEmails != nil { + in, out := &in.CustomEmails, &out.CustomEmails + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SendToSubscriptionAdministrator != nil { + in, out := &in.SendToSubscriptionAdministrator, &out.SendToSubscriptionAdministrator + *out = new(bool) + **out = **in + } + if in.SendToSubscriptionCoAdministrator != nil { + in, out := &in.SendToSubscriptionCoAdministrator, &out.SendToSubscriptionCoAdministrator + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmailInitParameters. +func (in *EmailInitParameters) DeepCopy() *EmailInitParameters { + if in == nil { + return nil + } + out := new(EmailInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EmailObservation) DeepCopyInto(out *EmailObservation) { *out = *in @@ -3946,6 +5383,36 @@ func (in *EmailParameters) DeepCopy() *EmailParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EmailReceiverInitParameters) DeepCopyInto(out *EmailReceiverInitParameters) { + *out = *in + if in.EmailAddress != nil { + in, out := &in.EmailAddress, &out.EmailAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.UseCommonAlertSchema != nil { + in, out := &in.UseCommonAlertSchema, &out.UseCommonAlertSchema + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmailReceiverInitParameters. +func (in *EmailReceiverInitParameters) DeepCopy() *EmailReceiverInitParameters { + if in == nil { + return nil + } + out := new(EmailReceiverInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EmailReceiverObservation) DeepCopyInto(out *EmailReceiverObservation) { *out = *in @@ -4006,6 +5473,36 @@ func (in *EmailReceiverParameters) DeepCopy() *EmailReceiverParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventHubDataSourceInitParameters) DeepCopyInto(out *EventHubDataSourceInitParameters) { + *out = *in + if in.ConsumerGroup != nil { + in, out := &in.ConsumerGroup, &out.ConsumerGroup + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Stream != nil { + in, out := &in.Stream, &out.Stream + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubDataSourceInitParameters. +func (in *EventHubDataSourceInitParameters) DeepCopy() *EventHubDataSourceInitParameters { + if in == nil { + return nil + } + out := new(EventHubDataSourceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventHubDataSourceObservation) DeepCopyInto(out *EventHubDataSourceObservation) { *out = *in @@ -4037,10 +5534,40 @@ func (in *EventHubDataSourceObservation) DeepCopy() *EventHubDataSourceObservati } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EventHubDataSourceParameters) DeepCopyInto(out *EventHubDataSourceParameters) { +func (in *EventHubDataSourceParameters) DeepCopyInto(out *EventHubDataSourceParameters) { + *out = *in + if in.ConsumerGroup != nil { + in, out := &in.ConsumerGroup, &out.ConsumerGroup + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Stream != nil { + in, out := &in.Stream, &out.Stream + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubDataSourceParameters. +func (in *EventHubDataSourceParameters) DeepCopy() *EventHubDataSourceParameters { + if in == nil { + return nil + } + out := new(EventHubDataSourceParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventHubDirectInitParameters) DeepCopyInto(out *EventHubDirectInitParameters) { *out = *in - if in.ConsumerGroup != nil { - in, out := &in.ConsumerGroup, &out.ConsumerGroup + if in.EventHubID != nil { + in, out := &in.EventHubID, &out.EventHubID *out = new(string) **out = **in } @@ -4049,19 +5576,14 @@ func (in *EventHubDataSourceParameters) DeepCopyInto(out *EventHubDataSourcePara *out = new(string) **out = **in } - if in.Stream != nil { - in, out := &in.Stream, &out.Stream - *out = new(string) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubDataSourceParameters. -func (in *EventHubDataSourceParameters) DeepCopy() *EventHubDataSourceParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubDirectInitParameters. +func (in *EventHubDirectInitParameters) DeepCopy() *EventHubDirectInitParameters { if in == nil { return nil } - out := new(EventHubDataSourceParameters) + out := new(EventHubDirectInitParameters) in.DeepCopyInto(out) return out } @@ -4116,6 +5638,26 @@ func (in *EventHubDirectParameters) DeepCopy() *EventHubDirectParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventHubInitParameters) DeepCopyInto(out *EventHubInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubInitParameters. +func (in *EventHubInitParameters) DeepCopy() *EventHubInitParameters { + if in == nil { + return nil + } + out := new(EventHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventHubObservation) DeepCopyInto(out *EventHubObservation) { *out = *in @@ -4176,6 +5718,56 @@ func (in *EventHubParameters) DeepCopy() *EventHubParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventHubReceiverInitParameters) DeepCopyInto(out *EventHubReceiverInitParameters) { + *out = *in + if in.EventHubID != nil { + in, out := &in.EventHubID, &out.EventHubID + *out = new(string) + **out = **in + } + if in.EventHubName != nil { + in, out := &in.EventHubName, &out.EventHubName + *out = new(string) + **out = **in + } + if in.EventHubNamespace != nil { + in, out := &in.EventHubNamespace, &out.EventHubNamespace + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } + if in.UseCommonAlertSchema != nil { + in, out := &in.UseCommonAlertSchema, &out.UseCommonAlertSchema + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubReceiverInitParameters. +func (in *EventHubReceiverInitParameters) DeepCopy() *EventHubReceiverInitParameters { + if in == nil { + return nil + } + out := new(EventHubReceiverInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventHubReceiverObservation) DeepCopyInto(out *EventHubReceiverObservation) { *out = *in @@ -4276,6 +5868,58 @@ func (in *EventHubReceiverParameters) DeepCopy() *EventHubReceiverParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExtensionInitParameters) DeepCopyInto(out *ExtensionInitParameters) { + *out = *in + if in.ExtensionJSON != nil { + in, out := &in.ExtensionJSON, &out.ExtensionJSON + *out = new(string) + **out = **in + } + if in.ExtensionName != nil { + in, out := &in.ExtensionName, &out.ExtensionName + *out = new(string) + **out = **in + } + if in.InputDataSources != nil { + in, out := &in.InputDataSources, &out.InputDataSources + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionInitParameters. +func (in *ExtensionInitParameters) DeepCopy() *ExtensionInitParameters { + if in == nil { + return nil + } + out := new(ExtensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExtensionObservation) DeepCopyInto(out *ExtensionObservation) { *out = *in @@ -4380,6 +6024,31 @@ func (in *ExtensionParameters) DeepCopy() *ExtensionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FailingPeriodsInitParameters) DeepCopyInto(out *FailingPeriodsInitParameters) { + *out = *in + if in.MinimumFailingPeriodsToTriggerAlert != nil { + in, out := &in.MinimumFailingPeriodsToTriggerAlert, &out.MinimumFailingPeriodsToTriggerAlert + *out = new(float64) + **out = **in + } + if in.NumberOfEvaluationPeriods != nil { + in, out := &in.NumberOfEvaluationPeriods, &out.NumberOfEvaluationPeriods + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FailingPeriodsInitParameters. +func (in *FailingPeriodsInitParameters) DeepCopy() *FailingPeriodsInitParameters { + if in == nil { + return nil + } + out := new(FailingPeriodsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FailingPeriodsObservation) DeepCopyInto(out *FailingPeriodsObservation) { *out = *in @@ -4430,6 +6099,36 @@ func (in *FailingPeriodsParameters) DeepCopy() *FailingPeriodsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FixedDateInitParameters) DeepCopyInto(out *FixedDateInitParameters) { + *out = *in + if in.End != nil { + in, out := &in.End, &out.End + *out = new(string) + **out = **in + } + if in.Start != nil { + in, out := &in.Start, &out.Start + *out = new(string) + **out = **in + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FixedDateInitParameters. +func (in *FixedDateInitParameters) DeepCopy() *FixedDateInitParameters { + if in == nil { + return nil + } + out := new(FixedDateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FixedDateObservation) DeepCopyInto(out *FixedDateObservation) { *out = *in @@ -4490,6 +6189,46 @@ func (in *FixedDateParameters) DeepCopy() *FixedDateParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GalleriesInitParameters) DeepCopyInto(out *GalleriesInitParameters) { + *out = *in + if in.Category != nil { + in, out := &in.Category, &out.Category + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.ResourceType != nil { + in, out := &in.ResourceType, &out.ResourceType + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GalleriesInitParameters. +func (in *GalleriesInitParameters) DeepCopy() *GalleriesInitParameters { + if in == nil { + return nil + } + out := new(GalleriesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GalleriesObservation) DeepCopyInto(out *GalleriesObservation) { *out = *in @@ -4570,6 +6309,31 @@ func (in *GalleriesParameters) DeepCopy() *GalleriesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HeaderInitParameters) DeepCopyInto(out *HeaderInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderInitParameters. +func (in *HeaderInitParameters) DeepCopy() *HeaderInitParameters { + if in == nil { + return nil + } + out := new(HeaderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HeaderObservation) DeepCopyInto(out *HeaderObservation) { *out = *in @@ -4615,7 +6379,38 @@ func (in *HeaderParameters) DeepCopy() *HeaderParameters { if in == nil { return nil } - out := new(HeaderParameters) + out := new(HeaderParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) in.DeepCopyInto(out) return out } @@ -4692,6 +6487,48 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IisLogInitParameters) DeepCopyInto(out *IisLogInitParameters) { + *out = *in + if in.LogDirectories != nil { + in, out := &in.LogDirectories, &out.LogDirectories + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IisLogInitParameters. +func (in *IisLogInitParameters) DeepCopy() *IisLogInitParameters { + if in == nil { + return nil + } + out := new(IisLogInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IisLogObservation) DeepCopyInto(out *IisLogObservation) { *out = *in @@ -4776,6 +6613,46 @@ func (in *IisLogParameters) DeepCopy() *IisLogParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ItsmReceiverInitParameters) DeepCopyInto(out *ItsmReceiverInitParameters) { + *out = *in + if in.ConnectionID != nil { + in, out := &in.ConnectionID, &out.ConnectionID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Region != nil { + in, out := &in.Region, &out.Region + *out = new(string) + **out = **in + } + if in.TicketConfiguration != nil { + in, out := &in.TicketConfiguration, &out.TicketConfiguration + *out = new(string) + **out = **in + } + if in.WorkspaceID != nil { + in, out := &in.WorkspaceID, &out.WorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ItsmReceiverInitParameters. +func (in *ItsmReceiverInitParameters) DeepCopy() *ItsmReceiverInitParameters { + if in == nil { + return nil + } + out := new(ItsmReceiverInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ItsmReceiverObservation) DeepCopyInto(out *ItsmReceiverObservation) { *out = *in @@ -4856,6 +6733,31 @@ func (in *ItsmReceiverParameters) DeepCopy() *ItsmReceiverParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LabelIncludeFilterInitParameters) DeepCopyInto(out *LabelIncludeFilterInitParameters) { + *out = *in + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabelIncludeFilterInitParameters. +func (in *LabelIncludeFilterInitParameters) DeepCopy() *LabelIncludeFilterInitParameters { + if in == nil { + return nil + } + out := new(LabelIncludeFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LabelIncludeFilterObservation) DeepCopyInto(out *LabelIncludeFilterObservation) { *out = *in @@ -4906,6 +6808,26 @@ func (in *LabelIncludeFilterParameters) DeepCopy() *LabelIncludeFilterParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsInitParameters) DeepCopyInto(out *LogAnalyticsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsInitParameters. +func (in *LogAnalyticsInitParameters) DeepCopy() *LogAnalyticsInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsObservation) DeepCopyInto(out *LogAnalyticsObservation) { *out = *in @@ -4966,6 +6888,60 @@ func (in *LogAnalyticsParameters) DeepCopy() *LogAnalyticsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogFileInitParameters) DeepCopyInto(out *LogFileInitParameters) { + *out = *in + if in.FilePatterns != nil { + in, out := &in.FilePatterns, &out.FilePatterns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Format != nil { + in, out := &in.Format, &out.Format + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = make([]SettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogFileInitParameters. +func (in *LogFileInitParameters) DeepCopy() *LogFileInitParameters { + if in == nil { + return nil + } + out := new(LogFileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogFileObservation) DeepCopyInto(out *LogFileObservation) { *out = *in @@ -5074,6 +7050,41 @@ func (in *LogFileParameters) DeepCopy() *LogFileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogicAppReceiverInitParameters) DeepCopyInto(out *LogicAppReceiverInitParameters) { + *out = *in + if in.CallbackURL != nil { + in, out := &in.CallbackURL, &out.CallbackURL + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ResourceID != nil { + in, out := &in.ResourceID, &out.ResourceID + *out = new(string) + **out = **in + } + if in.UseCommonAlertSchema != nil { + in, out := &in.UseCommonAlertSchema, &out.UseCommonAlertSchema + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogicAppReceiverInitParameters. +func (in *LogicAppReceiverInitParameters) DeepCopy() *LogicAppReceiverInitParameters { + if in == nil { + return nil + } + out := new(LogicAppReceiverInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogicAppReceiverObservation) DeepCopyInto(out *LogicAppReceiverObservation) { *out = *in @@ -5127,19 +7138,86 @@ func (in *LogicAppReceiverParameters) DeepCopyInto(out *LogicAppReceiverParamete *out = new(string) **out = **in } - if in.UseCommonAlertSchema != nil { - in, out := &in.UseCommonAlertSchema, &out.UseCommonAlertSchema - *out = new(bool) + if in.UseCommonAlertSchema != nil { + in, out := &in.UseCommonAlertSchema, &out.UseCommonAlertSchema + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogicAppReceiverParameters. +func (in *LogicAppReceiverParameters) DeepCopy() *LogicAppReceiverParameters { + if in == nil { + return nil + } + out := new(LogicAppReceiverParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MetricTriggerInitParameters) DeepCopyInto(out *MetricTriggerInitParameters) { + *out = *in + if in.Dimensions != nil { + in, out := &in.Dimensions, &out.Dimensions + *out = make([]DimensionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DivideByInstanceCount != nil { + in, out := &in.DivideByInstanceCount, &out.DivideByInstanceCount + *out = new(bool) + **out = **in + } + if in.MetricName != nil { + in, out := &in.MetricName, &out.MetricName + *out = new(string) + **out = **in + } + if in.MetricNamespace != nil { + in, out := &in.MetricNamespace, &out.MetricNamespace + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Statistic != nil { + in, out := &in.Statistic, &out.Statistic + *out = new(string) + **out = **in + } + if in.Threshold != nil { + in, out := &in.Threshold, &out.Threshold + *out = new(float64) + **out = **in + } + if in.TimeAggregation != nil { + in, out := &in.TimeAggregation, &out.TimeAggregation + *out = new(string) + **out = **in + } + if in.TimeGrain != nil { + in, out := &in.TimeGrain, &out.TimeGrain + *out = new(string) + **out = **in + } + if in.TimeWindow != nil { + in, out := &in.TimeWindow, &out.TimeWindow + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogicAppReceiverParameters. -func (in *LogicAppReceiverParameters) DeepCopy() *LogicAppReceiverParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricTriggerInitParameters. +func (in *MetricTriggerInitParameters) DeepCopy() *MetricTriggerInitParameters { if in == nil { return nil } - out := new(LogicAppReceiverParameters) + out := new(MetricTriggerInitParameters) in.DeepCopyInto(out) return out } @@ -5298,6 +7376,31 @@ func (in *MetricTriggerParameters) DeepCopy() *MetricTriggerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAccountInitParameters) DeepCopyInto(out *MonitorAccountInitParameters) { + *out = *in + if in.MonitorAccountID != nil { + in, out := &in.MonitorAccountID, &out.MonitorAccountID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAccountInitParameters. +func (in *MonitorAccountInitParameters) DeepCopy() *MonitorAccountInitParameters { + if in == nil { + return nil + } + out := new(MonitorAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAccountObservation) DeepCopyInto(out *MonitorAccountObservation) { *out = *in @@ -5375,6 +7478,128 @@ func (in *MonitorActionGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorActionGroupInitParameters) DeepCopyInto(out *MonitorActionGroupInitParameters) { + *out = *in + if in.ArmRoleReceiver != nil { + in, out := &in.ArmRoleReceiver, &out.ArmRoleReceiver + *out = make([]ArmRoleReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutomationRunBookReceiver != nil { + in, out := &in.AutomationRunBookReceiver, &out.AutomationRunBookReceiver + *out = make([]AutomationRunBookReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AzureAppPushReceiver != nil { + in, out := &in.AzureAppPushReceiver, &out.AzureAppPushReceiver + *out = make([]AzureAppPushReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AzureFunctionReceiver != nil { + in, out := &in.AzureFunctionReceiver, &out.AzureFunctionReceiver + *out = make([]AzureFunctionReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EmailReceiver != nil { + in, out := &in.EmailReceiver, &out.EmailReceiver + *out = make([]EmailReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.EventHubReceiver != nil { + in, out := &in.EventHubReceiver, &out.EventHubReceiver + *out = make([]EventHubReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ItsmReceiver != nil { + in, out := &in.ItsmReceiver, &out.ItsmReceiver + *out = make([]ItsmReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.LogicAppReceiver != nil { + in, out := &in.LogicAppReceiver, &out.LogicAppReceiver + *out = make([]LogicAppReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SMSReceiver != nil { + in, out := &in.SMSReceiver, &out.SMSReceiver + *out = make([]SMSReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ShortName != nil { + in, out := &in.ShortName, &out.ShortName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.VoiceReceiver != nil { + in, out := &in.VoiceReceiver, &out.VoiceReceiver + *out = make([]VoiceReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WebhookReceiver != nil { + in, out := &in.WebhookReceiver, &out.WebhookReceiver + *out = make([]WebhookReceiverInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorActionGroupInitParameters. +func (in *MonitorActionGroupInitParameters) DeepCopy() *MonitorActionGroupInitParameters { + if in == nil { + return nil + } + out := new(MonitorActionGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorActionGroupList) DeepCopyInto(out *MonitorActionGroupList) { *out = *in @@ -5681,6 +7906,7 @@ func (in *MonitorActionGroupSpec) DeepCopyInto(out *MonitorActionGroupSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorActionGroupSpec. @@ -5737,6 +7963,65 @@ func (in *MonitorActivityLogAlert) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorActivityLogAlertInitParameters) DeepCopyInto(out *MonitorActivityLogAlertInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]ActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Criteria != nil { + in, out := &in.Criteria, &out.Criteria + *out = make([]CriteriaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorActivityLogAlertInitParameters. +func (in *MonitorActivityLogAlertInitParameters) DeepCopy() *MonitorActivityLogAlertInitParameters { + if in == nil { + return nil + } + out := new(MonitorActivityLogAlertInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorActivityLogAlertList) DeepCopyInto(out *MonitorActivityLogAlertList) { *out = *in @@ -5951,6 +8236,7 @@ func (in *MonitorActivityLogAlertSpec) DeepCopyInto(out *MonitorActivityLogAlert *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorActivityLogAlertSpec. @@ -5975,38 +8261,97 @@ func (in *MonitorActivityLogAlertStatus) DeepCopy() *MonitorActivityLogAlertStat if in == nil { return nil } - out := new(MonitorActivityLogAlertStatus) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *MonitorAutoscaleSetting) DeepCopyInto(out *MonitorAutoscaleSetting) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + out := new(MonitorActivityLogAlertStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAutoscaleSetting) DeepCopyInto(out *MonitorAutoscaleSetting) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAutoscaleSetting. +func (in *MonitorAutoscaleSetting) DeepCopy() *MonitorAutoscaleSetting { + if in == nil { + return nil + } + out := new(MonitorAutoscaleSetting) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *MonitorAutoscaleSetting) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorAutoscaleSettingInitParameters) DeepCopyInto(out *MonitorAutoscaleSettingInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Notification != nil { + in, out := &in.Notification, &out.Notification + *out = make([]NotificationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Profile != nil { + in, out := &in.Profile, &out.Profile + *out = make([]ProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAutoscaleSetting. -func (in *MonitorAutoscaleSetting) DeepCopy() *MonitorAutoscaleSetting { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAutoscaleSettingInitParameters. +func (in *MonitorAutoscaleSettingInitParameters) DeepCopy() *MonitorAutoscaleSettingInitParameters { if in == nil { return nil } - out := new(MonitorAutoscaleSetting) + out := new(MonitorAutoscaleSettingInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *MonitorAutoscaleSetting) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorAutoscaleSettingList) DeepCopyInto(out *MonitorAutoscaleSettingList) { *out = *in @@ -6207,6 +8552,7 @@ func (in *MonitorAutoscaleSettingSpec) DeepCopyInto(out *MonitorAutoscaleSetting *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorAutoscaleSettingSpec. @@ -6263,6 +8609,56 @@ func (in *MonitorDataCollectionEndpoint) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorDataCollectionEndpointInitParameters) DeepCopyInto(out *MonitorDataCollectionEndpointInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorDataCollectionEndpointInitParameters. +func (in *MonitorDataCollectionEndpointInitParameters) DeepCopy() *MonitorDataCollectionEndpointInitParameters { + if in == nil { + return nil + } + out := new(MonitorDataCollectionEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorDataCollectionEndpointList) DeepCopyInto(out *MonitorDataCollectionEndpointList) { *out = *in @@ -6435,6 +8831,7 @@ func (in *MonitorDataCollectionEndpointSpec) DeepCopyInto(out *MonitorDataCollec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorDataCollectionEndpointSpec. @@ -6518,6 +8915,26 @@ func (in *MonitorDataCollectionRuleAssociation) DeepCopyObject() runtime.Object return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorDataCollectionRuleAssociationInitParameters) DeepCopyInto(out *MonitorDataCollectionRuleAssociationInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorDataCollectionRuleAssociationInitParameters. +func (in *MonitorDataCollectionRuleAssociationInitParameters) DeepCopy() *MonitorDataCollectionRuleAssociationInitParameters { + if in == nil { + return nil + } + out := new(MonitorDataCollectionRuleAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorDataCollectionRuleAssociationList) DeepCopyInto(out *MonitorDataCollectionRuleAssociationList) { *out = *in @@ -6660,6 +9077,7 @@ func (in *MonitorDataCollectionRuleAssociationSpec) DeepCopyInto(out *MonitorDat *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorDataCollectionRuleAssociationSpec. @@ -6689,6 +9107,37 @@ func (in *MonitorDataCollectionRuleAssociationStatus) DeepCopy() *MonitorDataCol return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorDataCollectionRuleIdentityInitParameters) DeepCopyInto(out *MonitorDataCollectionRuleIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorDataCollectionRuleIdentityInitParameters. +func (in *MonitorDataCollectionRuleIdentityInitParameters) DeepCopy() *MonitorDataCollectionRuleIdentityInitParameters { + if in == nil { + return nil + } + out := new(MonitorDataCollectionRuleIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorDataCollectionRuleIdentityObservation) DeepCopyInto(out *MonitorDataCollectionRuleIdentityObservation) { *out = *in @@ -6761,6 +9210,86 @@ func (in *MonitorDataCollectionRuleIdentityParameters) DeepCopy() *MonitorDataCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorDataCollectionRuleInitParameters) DeepCopyInto(out *MonitorDataCollectionRuleInitParameters) { + *out = *in + if in.DataFlow != nil { + in, out := &in.DataFlow, &out.DataFlow + *out = make([]DataFlowInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DataSources != nil { + in, out := &in.DataSources, &out.DataSources + *out = make([]DataSourcesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Destinations != nil { + in, out := &in.Destinations, &out.Destinations + *out = make([]DestinationsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]MonitorDataCollectionRuleIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.StreamDeclaration != nil { + in, out := &in.StreamDeclaration, &out.StreamDeclaration + *out = make([]StreamDeclarationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorDataCollectionRuleInitParameters. +func (in *MonitorDataCollectionRuleInitParameters) DeepCopy() *MonitorDataCollectionRuleInitParameters { + if in == nil { + return nil + } + out := new(MonitorDataCollectionRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorDataCollectionRuleList) DeepCopyInto(out *MonitorDataCollectionRuleList) { *out = *in @@ -7008,6 +9537,7 @@ func (in *MonitorDataCollectionRuleSpec) DeepCopyInto(out *MonitorDataCollection *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorDataCollectionRuleSpec. @@ -7064,6 +9594,36 @@ func (in *MonitorMetricAlert) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorMetricAlertActionInitParameters) DeepCopyInto(out *MonitorMetricAlertActionInitParameters) { + *out = *in + if in.WebhookProperties != nil { + in, out := &in.WebhookProperties, &out.WebhookProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricAlertActionInitParameters. +func (in *MonitorMetricAlertActionInitParameters) DeepCopy() *MonitorMetricAlertActionInitParameters { + if in == nil { + return nil + } + out := new(MonitorMetricAlertActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorMetricAlertActionObservation) DeepCopyInto(out *MonitorMetricAlertActionObservation) { *out = *in @@ -7134,12 +9694,64 @@ func (in *MonitorMetricAlertActionParameters) DeepCopyInto(out *MonitorMetricAle } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricAlertActionParameters. -func (in *MonitorMetricAlertActionParameters) DeepCopy() *MonitorMetricAlertActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricAlertActionParameters. +func (in *MonitorMetricAlertActionParameters) DeepCopy() *MonitorMetricAlertActionParameters { + if in == nil { + return nil + } + out := new(MonitorMetricAlertActionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorMetricAlertCriteriaInitParameters) DeepCopyInto(out *MonitorMetricAlertCriteriaInitParameters) { + *out = *in + if in.Aggregation != nil { + in, out := &in.Aggregation, &out.Aggregation + *out = new(string) + **out = **in + } + if in.Dimension != nil { + in, out := &in.Dimension, &out.Dimension + *out = make([]DimensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MetricName != nil { + in, out := &in.MetricName, &out.MetricName + *out = new(string) + **out = **in + } + if in.MetricNamespace != nil { + in, out := &in.MetricNamespace, &out.MetricNamespace + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.SkipMetricValidation != nil { + in, out := &in.SkipMetricValidation, &out.SkipMetricValidation + *out = new(bool) + **out = **in + } + if in.Threshold != nil { + in, out := &in.Threshold, &out.Threshold + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricAlertCriteriaInitParameters. +func (in *MonitorMetricAlertCriteriaInitParameters) DeepCopy() *MonitorMetricAlertCriteriaInitParameters { if in == nil { return nil } - out := new(MonitorMetricAlertActionParameters) + out := new(MonitorMetricAlertCriteriaInitParameters) in.DeepCopyInto(out) return out } @@ -7248,6 +9860,104 @@ func (in *MonitorMetricAlertCriteriaParameters) DeepCopy() *MonitorMetricAlertCr return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorMetricAlertInitParameters) DeepCopyInto(out *MonitorMetricAlertInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]MonitorMetricAlertActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ApplicationInsightsWebTestLocationAvailabilityCriteria != nil { + in, out := &in.ApplicationInsightsWebTestLocationAvailabilityCriteria, &out.ApplicationInsightsWebTestLocationAvailabilityCriteria + *out = make([]ApplicationInsightsWebTestLocationAvailabilityCriteriaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoMitigate != nil { + in, out := &in.AutoMitigate, &out.AutoMitigate + *out = new(bool) + **out = **in + } + if in.Criteria != nil { + in, out := &in.Criteria, &out.Criteria + *out = make([]MonitorMetricAlertCriteriaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DynamicCriteria != nil { + in, out := &in.DynamicCriteria, &out.DynamicCriteria + *out = make([]DynamicCriteriaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(string) + **out = **in + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TargetResourceLocation != nil { + in, out := &in.TargetResourceLocation, &out.TargetResourceLocation + *out = new(string) + **out = **in + } + if in.TargetResourceType != nil { + in, out := &in.TargetResourceType, &out.TargetResourceType + *out = new(string) + **out = **in + } + if in.WindowSize != nil { + in, out := &in.WindowSize, &out.WindowSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricAlertInitParameters. +func (in *MonitorMetricAlertInitParameters) DeepCopy() *MonitorMetricAlertInitParameters { + if in == nil { + return nil + } + out := new(MonitorMetricAlertInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorMetricAlertList) DeepCopyInto(out *MonitorMetricAlertList) { *out = *in @@ -7540,6 +10250,7 @@ func (in *MonitorMetricAlertSpec) DeepCopyInto(out *MonitorMetricAlertSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorMetricAlertSpec. @@ -7596,6 +10307,36 @@ func (in *MonitorPrivateLinkScope) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorPrivateLinkScopeInitParameters) DeepCopyInto(out *MonitorPrivateLinkScopeInitParameters) { + *out = *in + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorPrivateLinkScopeInitParameters. +func (in *MonitorPrivateLinkScopeInitParameters) DeepCopy() *MonitorPrivateLinkScopeInitParameters { + if in == nil { + return nil + } + out := new(MonitorPrivateLinkScopeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorPrivateLinkScopeList) DeepCopyInto(out *MonitorPrivateLinkScopeList) { *out = *in @@ -7718,6 +10459,7 @@ func (in *MonitorPrivateLinkScopeSpec) DeepCopyInto(out *MonitorPrivateLinkScope *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorPrivateLinkScopeSpec. @@ -7774,6 +10516,21 @@ func (in *MonitorPrivateLinkScopedService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorPrivateLinkScopedServiceInitParameters) DeepCopyInto(out *MonitorPrivateLinkScopedServiceInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorPrivateLinkScopedServiceInitParameters. +func (in *MonitorPrivateLinkScopedServiceInitParameters) DeepCopy() *MonitorPrivateLinkScopedServiceInitParameters { + if in == nil { + return nil + } + out := new(MonitorPrivateLinkScopedServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorPrivateLinkScopedServiceList) DeepCopyInto(out *MonitorPrivateLinkScopedServiceList) { *out = *in @@ -7906,6 +10663,7 @@ func (in *MonitorPrivateLinkScopedServiceSpec) DeepCopyInto(out *MonitorPrivateL *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorPrivateLinkScopedServiceSpec. @@ -7962,6 +10720,31 @@ func (in *MonitorScheduledQueryRulesAlert) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorScheduledQueryRulesAlertActionInitParameters) DeepCopyInto(out *MonitorScheduledQueryRulesAlertActionInitParameters) { + *out = *in + if in.CustomWebhookPayload != nil { + in, out := &in.CustomWebhookPayload, &out.CustomWebhookPayload + *out = new(string) + **out = **in + } + if in.EmailSubject != nil { + in, out := &in.EmailSubject, &out.EmailSubject + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertActionInitParameters. +func (in *MonitorScheduledQueryRulesAlertActionInitParameters) DeepCopy() *MonitorScheduledQueryRulesAlertActionInitParameters { + if in == nil { + return nil + } + out := new(MonitorScheduledQueryRulesAlertActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorScheduledQueryRulesAlertActionObservation) DeepCopyInto(out *MonitorScheduledQueryRulesAlertActionObservation) { *out = *in @@ -8012,36 +10795,146 @@ func (in *MonitorScheduledQueryRulesAlertActionParameters) DeepCopyInto(out *Mon } } } - if in.ActionGroupRefs != nil { - in, out := &in.ActionGroupRefs, &out.ActionGroupRefs - *out = make([]v1.Reference, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ActionGroupSelector != nil { - in, out := &in.ActionGroupSelector, &out.ActionGroupSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } - if in.CustomWebhookPayload != nil { - in, out := &in.CustomWebhookPayload, &out.CustomWebhookPayload - *out = new(string) + if in.ActionGroupRefs != nil { + in, out := &in.ActionGroupRefs, &out.ActionGroupRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ActionGroupSelector != nil { + in, out := &in.ActionGroupSelector, &out.ActionGroupSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.CustomWebhookPayload != nil { + in, out := &in.CustomWebhookPayload, &out.CustomWebhookPayload + *out = new(string) + **out = **in + } + if in.EmailSubject != nil { + in, out := &in.EmailSubject, &out.EmailSubject + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertActionParameters. +func (in *MonitorScheduledQueryRulesAlertActionParameters) DeepCopy() *MonitorScheduledQueryRulesAlertActionParameters { + if in == nil { + return nil + } + out := new(MonitorScheduledQueryRulesAlertActionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorScheduledQueryRulesAlertInitParameters) DeepCopyInto(out *MonitorScheduledQueryRulesAlertInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]MonitorScheduledQueryRulesAlertActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthorizedResourceIds != nil { + in, out := &in.AuthorizedResourceIds, &out.AuthorizedResourceIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AutoMitigationEnabled != nil { + in, out := &in.AutoMitigationEnabled, &out.AutoMitigationEnabled + *out = new(bool) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(float64) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = new(string) + **out = **in + } + if in.QueryType != nil { + in, out := &in.QueryType, &out.QueryType + *out = new(string) + **out = **in + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Throttling != nil { + in, out := &in.Throttling, &out.Throttling + *out = new(float64) **out = **in } - if in.EmailSubject != nil { - in, out := &in.EmailSubject, &out.EmailSubject - *out = new(string) + if in.TimeWindow != nil { + in, out := &in.TimeWindow, &out.TimeWindow + *out = new(float64) **out = **in } + if in.Trigger != nil { + in, out := &in.Trigger, &out.Trigger + *out = make([]TriggerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertActionParameters. -func (in *MonitorScheduledQueryRulesAlertActionParameters) DeepCopy() *MonitorScheduledQueryRulesAlertActionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertInitParameters. +func (in *MonitorScheduledQueryRulesAlertInitParameters) DeepCopy() *MonitorScheduledQueryRulesAlertInitParameters { if in == nil { return nil } - out := new(MonitorScheduledQueryRulesAlertActionParameters) + out := new(MonitorScheduledQueryRulesAlertInitParameters) in.DeepCopyInto(out) return out } @@ -8348,6 +11241,7 @@ func (in *MonitorScheduledQueryRulesAlertSpec) DeepCopyInto(out *MonitorSchedule *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertSpec. @@ -8404,6 +11298,47 @@ func (in *MonitorScheduledQueryRulesAlertV2) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorScheduledQueryRulesAlertV2ActionInitParameters) DeepCopyInto(out *MonitorScheduledQueryRulesAlertV2ActionInitParameters) { + *out = *in + if in.ActionGroups != nil { + in, out := &in.ActionGroups, &out.ActionGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CustomProperties != nil { + in, out := &in.CustomProperties, &out.CustomProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertV2ActionInitParameters. +func (in *MonitorScheduledQueryRulesAlertV2ActionInitParameters) DeepCopy() *MonitorScheduledQueryRulesAlertV2ActionInitParameters { + if in == nil { + return nil + } + out := new(MonitorScheduledQueryRulesAlertV2ActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorScheduledQueryRulesAlertV2ActionObservation) DeepCopyInto(out *MonitorScheduledQueryRulesAlertV2ActionObservation) { *out = *in @@ -8486,6 +11421,65 @@ func (in *MonitorScheduledQueryRulesAlertV2ActionParameters) DeepCopy() *Monitor return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorScheduledQueryRulesAlertV2CriteriaInitParameters) DeepCopyInto(out *MonitorScheduledQueryRulesAlertV2CriteriaInitParameters) { + *out = *in + if in.Dimension != nil { + in, out := &in.Dimension, &out.Dimension + *out = make([]CriteriaDimensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FailingPeriods != nil { + in, out := &in.FailingPeriods, &out.FailingPeriods + *out = make([]FailingPeriodsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MetricMeasureColumn != nil { + in, out := &in.MetricMeasureColumn, &out.MetricMeasureColumn + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = new(string) + **out = **in + } + if in.ResourceIDColumn != nil { + in, out := &in.ResourceIDColumn, &out.ResourceIDColumn + *out = new(string) + **out = **in + } + if in.Threshold != nil { + in, out := &in.Threshold, &out.Threshold + *out = new(float64) + **out = **in + } + if in.TimeAggregationMethod != nil { + in, out := &in.TimeAggregationMethod, &out.TimeAggregationMethod + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertV2CriteriaInitParameters. +func (in *MonitorScheduledQueryRulesAlertV2CriteriaInitParameters) DeepCopy() *MonitorScheduledQueryRulesAlertV2CriteriaInitParameters { + if in == nil { + return nil + } + out := new(MonitorScheduledQueryRulesAlertV2CriteriaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorScheduledQueryRulesAlertV2CriteriaObservation) DeepCopyInto(out *MonitorScheduledQueryRulesAlertV2CriteriaObservation) { *out = *in @@ -8582,24 +11576,139 @@ func (in *MonitorScheduledQueryRulesAlertV2CriteriaParameters) DeepCopyInto(out *out = new(string) **out = **in } - if in.Threshold != nil { - in, out := &in.Threshold, &out.Threshold - *out = new(float64) + if in.Threshold != nil { + in, out := &in.Threshold, &out.Threshold + *out = new(float64) + **out = **in + } + if in.TimeAggregationMethod != nil { + in, out := &in.TimeAggregationMethod, &out.TimeAggregationMethod + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertV2CriteriaParameters. +func (in *MonitorScheduledQueryRulesAlertV2CriteriaParameters) DeepCopy() *MonitorScheduledQueryRulesAlertV2CriteriaParameters { + if in == nil { + return nil + } + out := new(MonitorScheduledQueryRulesAlertV2CriteriaParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorScheduledQueryRulesAlertV2InitParameters) DeepCopyInto(out *MonitorScheduledQueryRulesAlertV2InitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]MonitorScheduledQueryRulesAlertV2ActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoMitigationEnabled != nil { + in, out := &in.AutoMitigationEnabled, &out.AutoMitigationEnabled + *out = new(bool) + **out = **in + } + if in.Criteria != nil { + in, out := &in.Criteria, &out.Criteria + *out = make([]MonitorScheduledQueryRulesAlertV2CriteriaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.EvaluationFrequency != nil { + in, out := &in.EvaluationFrequency, &out.EvaluationFrequency + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MuteActionsAfterAlertDuration != nil { + in, out := &in.MuteActionsAfterAlertDuration, &out.MuteActionsAfterAlertDuration + *out = new(string) + **out = **in + } + if in.QueryTimeRangeOverride != nil { + in, out := &in.QueryTimeRangeOverride, &out.QueryTimeRangeOverride + *out = new(string) + **out = **in + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = new(float64) + **out = **in + } + if in.SkipQueryValidation != nil { + in, out := &in.SkipQueryValidation, &out.SkipQueryValidation + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TargetResourceTypes != nil { + in, out := &in.TargetResourceTypes, &out.TargetResourceTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.WindowDuration != nil { + in, out := &in.WindowDuration, &out.WindowDuration + *out = new(string) **out = **in } - if in.TimeAggregationMethod != nil { - in, out := &in.TimeAggregationMethod, &out.TimeAggregationMethod - *out = new(string) + if in.WorkspaceAlertsStorageEnabled != nil { + in, out := &in.WorkspaceAlertsStorageEnabled, &out.WorkspaceAlertsStorageEnabled + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertV2CriteriaParameters. -func (in *MonitorScheduledQueryRulesAlertV2CriteriaParameters) DeepCopy() *MonitorScheduledQueryRulesAlertV2CriteriaParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertV2InitParameters. +func (in *MonitorScheduledQueryRulesAlertV2InitParameters) DeepCopy() *MonitorScheduledQueryRulesAlertV2InitParameters { if in == nil { return nil } - out := new(MonitorScheduledQueryRulesAlertV2CriteriaParameters) + out := new(MonitorScheduledQueryRulesAlertV2InitParameters) in.DeepCopyInto(out) return out } @@ -8945,6 +12054,7 @@ func (in *MonitorScheduledQueryRulesAlertV2Spec) DeepCopyInto(out *MonitorSchedu *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesAlertV2Spec. @@ -9001,6 +12111,42 @@ func (in *MonitorScheduledQueryRulesLog) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorScheduledQueryRulesLogCriteriaDimensionInitParameters) DeepCopyInto(out *MonitorScheduledQueryRulesLogCriteriaDimensionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesLogCriteriaDimensionInitParameters. +func (in *MonitorScheduledQueryRulesLogCriteriaDimensionInitParameters) DeepCopy() *MonitorScheduledQueryRulesLogCriteriaDimensionInitParameters { + if in == nil { + return nil + } + out := new(MonitorScheduledQueryRulesLogCriteriaDimensionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorScheduledQueryRulesLogCriteriaDimensionObservation) DeepCopyInto(out *MonitorScheduledQueryRulesLogCriteriaDimensionObservation) { *out = *in @@ -9073,6 +12219,33 @@ func (in *MonitorScheduledQueryRulesLogCriteriaDimensionParameters) DeepCopy() * return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorScheduledQueryRulesLogCriteriaInitParameters) DeepCopyInto(out *MonitorScheduledQueryRulesLogCriteriaInitParameters) { + *out = *in + if in.Dimension != nil { + in, out := &in.Dimension, &out.Dimension + *out = make([]MonitorScheduledQueryRulesLogCriteriaDimensionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MetricName != nil { + in, out := &in.MetricName, &out.MetricName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesLogCriteriaInitParameters. +func (in *MonitorScheduledQueryRulesLogCriteriaInitParameters) DeepCopy() *MonitorScheduledQueryRulesLogCriteriaInitParameters { + if in == nil { + return nil + } + out := new(MonitorScheduledQueryRulesLogCriteriaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorScheduledQueryRulesLogCriteriaObservation) DeepCopyInto(out *MonitorScheduledQueryRulesLogCriteriaObservation) { *out = *in @@ -9127,6 +12300,74 @@ func (in *MonitorScheduledQueryRulesLogCriteriaParameters) DeepCopy() *MonitorSc return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorScheduledQueryRulesLogInitParameters) DeepCopyInto(out *MonitorScheduledQueryRulesLogInitParameters) { + *out = *in + if in.AuthorizedResourceIds != nil { + in, out := &in.AuthorizedResourceIds, &out.AuthorizedResourceIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Criteria != nil { + in, out := &in.Criteria, &out.Criteria + *out = make([]MonitorScheduledQueryRulesLogCriteriaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesLogInitParameters. +func (in *MonitorScheduledQueryRulesLogInitParameters) DeepCopy() *MonitorScheduledQueryRulesLogInitParameters { + if in == nil { + return nil + } + out := new(MonitorScheduledQueryRulesLogInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorScheduledQueryRulesLogList) DeepCopyInto(out *MonitorScheduledQueryRulesLogList) { *out = *in @@ -9345,6 +12586,7 @@ func (in *MonitorScheduledQueryRulesLogSpec) DeepCopyInto(out *MonitorScheduledQ *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorScheduledQueryRulesLogSpec. @@ -9374,6 +12616,35 @@ func (in *MonitorScheduledQueryRulesLogStatus) DeepCopy() *MonitorScheduledQuery return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotificationInitParameters) DeepCopyInto(out *NotificationInitParameters) { + *out = *in + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = make([]EmailInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Webhook != nil { + in, out := &in.Webhook, &out.Webhook + *out = make([]WebhookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationInitParameters. +func (in *NotificationInitParameters) DeepCopy() *NotificationInitParameters { + if in == nil { + return nil + } + out := new(NotificationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotificationObservation) DeepCopyInto(out *NotificationObservation) { *out = *in @@ -9432,6 +12703,53 @@ func (in *NotificationParameters) DeepCopy() *NotificationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PerformanceCounterInitParameters) DeepCopyInto(out *PerformanceCounterInitParameters) { + *out = *in + if in.CounterSpecifiers != nil { + in, out := &in.CounterSpecifiers, &out.CounterSpecifiers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SamplingFrequencyInSeconds != nil { + in, out := &in.SamplingFrequencyInSeconds, &out.SamplingFrequencyInSeconds + *out = new(float64) + **out = **in + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerformanceCounterInitParameters. +func (in *PerformanceCounterInitParameters) DeepCopy() *PerformanceCounterInitParameters { + if in == nil { + return nil + } + out := new(PerformanceCounterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PerformanceCounterObservation) DeepCopyInto(out *PerformanceCounterObservation) { *out = *in @@ -9526,6 +12844,37 @@ func (in *PerformanceCounterParameters) DeepCopy() *PerformanceCounterParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PlatformTelemetryInitParameters) DeepCopyInto(out *PlatformTelemetryInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlatformTelemetryInitParameters. +func (in *PlatformTelemetryInitParameters) DeepCopy() *PlatformTelemetryInitParameters { + if in == nil { + return nil + } + out := new(PlatformTelemetryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PlatformTelemetryObservation) DeepCopyInto(out *PlatformTelemetryObservation) { *out = *in @@ -9552,38 +12901,86 @@ func (in *PlatformTelemetryObservation) DeepCopy() *PlatformTelemetryObservation if in == nil { return nil } - out := new(PlatformTelemetryObservation) + out := new(PlatformTelemetryObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PlatformTelemetryParameters) DeepCopyInto(out *PlatformTelemetryParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlatformTelemetryParameters. +func (in *PlatformTelemetryParameters) DeepCopy() *PlatformTelemetryParameters { + if in == nil { + return nil + } + out := new(PlatformTelemetryParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PlatformTelemetryParameters) DeepCopyInto(out *PlatformTelemetryParameters) { +func (in *ProfileInitParameters) DeepCopyInto(out *ProfileInitParameters) { *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = make([]CapacityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FixedDate != nil { + in, out := &in.FixedDate, &out.FixedDate + *out = make([]FixedDateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Streams != nil { - in, out := &in.Streams, &out.Streams - *out = make([]*string, len(*in)) + if in.Recurrence != nil { + in, out := &in.Recurrence, &out.Recurrence + *out = make([]RecurrenceInitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]RuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlatformTelemetryParameters. -func (in *PlatformTelemetryParameters) DeepCopy() *PlatformTelemetryParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileInitParameters. +func (in *ProfileInitParameters) DeepCopy() *ProfileInitParameters { if in == nil { return nil } - out := new(PlatformTelemetryParameters) + out := new(ProfileInitParameters) in.DeepCopyInto(out) return out } @@ -9684,6 +13081,44 @@ func (in *ProfileParameters) DeepCopy() *ProfileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrometheusForwarderInitParameters) DeepCopyInto(out *PrometheusForwarderInitParameters) { + *out = *in + if in.LabelIncludeFilter != nil { + in, out := &in.LabelIncludeFilter, &out.LabelIncludeFilter + *out = make([]LabelIncludeFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrometheusForwarderInitParameters. +func (in *PrometheusForwarderInitParameters) DeepCopy() *PrometheusForwarderInitParameters { + if in == nil { + return nil + } + out := new(PrometheusForwarderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrometheusForwarderObservation) DeepCopyInto(out *PrometheusForwarderObservation) { *out = *in @@ -9760,6 +13195,59 @@ func (in *PrometheusForwarderParameters) DeepCopy() *PrometheusForwarderParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecurrenceInitParameters) DeepCopyInto(out *RecurrenceInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Hours != nil { + in, out := &in.Hours, &out.Hours + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Minutes != nil { + in, out := &in.Minutes, &out.Minutes + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceInitParameters. +func (in *RecurrenceInitParameters) DeepCopy() *RecurrenceInitParameters { + if in == nil { + return nil + } + out := new(RecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecurrenceObservation) DeepCopyInto(out *RecurrenceObservation) { *out = *in @@ -9866,6 +13354,53 @@ func (in *RecurrenceParameters) DeepCopy() *RecurrenceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestInitParameters) DeepCopyInto(out *RequestInitParameters) { + *out = *in + if in.Body != nil { + in, out := &in.Body, &out.Body + *out = new(string) + **out = **in + } + if in.FollowRedirectsEnabled != nil { + in, out := &in.FollowRedirectsEnabled, &out.FollowRedirectsEnabled + *out = new(bool) + **out = **in + } + if in.HTTPVerb != nil { + in, out := &in.HTTPVerb, &out.HTTPVerb + *out = new(string) + **out = **in + } + if in.Header != nil { + in, out := &in.Header, &out.Header + *out = make([]HeaderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ParseDependentRequestsEnabled != nil { + in, out := &in.ParseDependentRequestsEnabled, &out.ParseDependentRequestsEnabled + *out = new(bool) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestInitParameters. +func (in *RequestInitParameters) DeepCopy() *RequestInitParameters { + if in == nil { + return nil + } + out := new(RequestInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RequestObservation) DeepCopyInto(out *RequestObservation) { *out = *in @@ -9960,6 +13495,54 @@ func (in *RequestParameters) DeepCopy() *RequestParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceHealthInitParameters) DeepCopyInto(out *ResourceHealthInitParameters) { + *out = *in + if in.Current != nil { + in, out := &in.Current, &out.Current + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Previous != nil { + in, out := &in.Previous, &out.Previous + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Reason != nil { + in, out := &in.Reason, &out.Reason + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceHealthInitParameters. +func (in *ResourceHealthInitParameters) DeepCopy() *ResourceHealthInitParameters { + if in == nil { + return nil + } + out := new(ResourceHealthInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceHealthObservation) DeepCopyInto(out *ResourceHealthObservation) { *out = *in @@ -10056,6 +13639,35 @@ func (in *ResourceHealthParameters) DeepCopy() *ResourceHealthParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleInitParameters) DeepCopyInto(out *RuleInitParameters) { + *out = *in + if in.MetricTrigger != nil { + in, out := &in.MetricTrigger, &out.MetricTrigger + *out = make([]MetricTriggerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScaleAction != nil { + in, out := &in.ScaleAction, &out.ScaleAction + *out = make([]ScaleActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleInitParameters. +func (in *RuleInitParameters) DeepCopy() *RuleInitParameters { + if in == nil { + return nil + } + out := new(RuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RuleObservation) DeepCopyInto(out *RuleObservation) { *out = *in @@ -10095,21 +13707,51 @@ func (in *RuleParameters) DeepCopyInto(out *RuleParameters) { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ScaleAction != nil { - in, out := &in.ScaleAction, &out.ScaleAction - *out = make([]ScaleActionParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.ScaleAction != nil { + in, out := &in.ScaleAction, &out.ScaleAction + *out = make([]ScaleActionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleParameters. +func (in *RuleParameters) DeepCopy() *RuleParameters { + if in == nil { + return nil + } + out := new(RuleParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SMSReceiverInitParameters) DeepCopyInto(out *SMSReceiverInitParameters) { + *out = *in + if in.CountryCode != nil { + in, out := &in.CountryCode, &out.CountryCode + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PhoneNumber != nil { + in, out := &in.PhoneNumber, &out.PhoneNumber + *out = new(string) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleParameters. -func (in *RuleParameters) DeepCopy() *RuleParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SMSReceiverInitParameters. +func (in *SMSReceiverInitParameters) DeepCopy() *SMSReceiverInitParameters { if in == nil { return nil } - out := new(RuleParameters) + out := new(SMSReceiverInitParameters) in.DeepCopyInto(out) return out } @@ -10174,6 +13816,41 @@ func (in *SMSReceiverParameters) DeepCopy() *SMSReceiverParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScaleActionInitParameters) DeepCopyInto(out *ScaleActionInitParameters) { + *out = *in + if in.Cooldown != nil { + in, out := &in.Cooldown, &out.Cooldown + *out = new(string) + **out = **in + } + if in.Direction != nil { + in, out := &in.Direction, &out.Direction + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleActionInitParameters. +func (in *ScaleActionInitParameters) DeepCopy() *ScaleActionInitParameters { + if in == nil { + return nil + } + out := new(ScaleActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScaleActionObservation) DeepCopyInto(out *ScaleActionObservation) { *out = *in @@ -10244,6 +13921,54 @@ func (in *ScaleActionParameters) DeepCopy() *ScaleActionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceHealthInitParameters) DeepCopyInto(out *ServiceHealthInitParameters) { + *out = *in + if in.Events != nil { + in, out := &in.Events, &out.Events + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Locations != nil { + in, out := &in.Locations, &out.Locations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Services != nil { + in, out := &in.Services, &out.Services + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceHealthInitParameters. +func (in *ServiceHealthInitParameters) DeepCopy() *ServiceHealthInitParameters { + if in == nil { + return nil + } + out := new(ServiceHealthInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServiceHealthObservation) DeepCopyInto(out *ServiceHealthObservation) { *out = *in @@ -10340,6 +14065,28 @@ func (in *ServiceHealthParameters) DeepCopy() *ServiceHealthParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SettingsInitParameters) DeepCopyInto(out *SettingsInitParameters) { + *out = *in + if in.Text != nil { + in, out := &in.Text, &out.Text + *out = make([]TextInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingsInitParameters. +func (in *SettingsInitParameters) DeepCopy() *SettingsInitParameters { + if in == nil { + return nil + } + out := new(SettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SettingsObservation) DeepCopyInto(out *SettingsObservation) { *out = *in @@ -10384,6 +14131,36 @@ func (in *SettingsParameters) DeepCopy() *SettingsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageBlobDirectInitParameters) DeepCopyInto(out *StorageBlobDirectInitParameters) { + *out = *in + if in.ContainerName != nil { + in, out := &in.ContainerName, &out.ContainerName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageBlobDirectInitParameters. +func (in *StorageBlobDirectInitParameters) DeepCopy() *StorageBlobDirectInitParameters { + if in == nil { + return nil + } + out := new(StorageBlobDirectInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageBlobDirectObservation) DeepCopyInto(out *StorageBlobDirectObservation) { *out = *in @@ -10444,6 +14221,26 @@ func (in *StorageBlobDirectParameters) DeepCopy() *StorageBlobDirectParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageBlobInitParameters) DeepCopyInto(out *StorageBlobInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageBlobInitParameters. +func (in *StorageBlobInitParameters) DeepCopy() *StorageBlobInitParameters { + if in == nil { + return nil + } + out := new(StorageBlobInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageBlobObservation) DeepCopyInto(out *StorageBlobObservation) { *out = *in @@ -10524,6 +14321,36 @@ func (in *StorageBlobParameters) DeepCopy() *StorageBlobParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageTableDirectInitParameters) DeepCopyInto(out *StorageTableDirectInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID + *out = new(string) + **out = **in + } + if in.TableName != nil { + in, out := &in.TableName, &out.TableName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageTableDirectInitParameters. +func (in *StorageTableDirectInitParameters) DeepCopy() *StorageTableDirectInitParameters { + if in == nil { + return nil + } + out := new(StorageTableDirectInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageTableDirectObservation) DeepCopyInto(out *StorageTableDirectObservation) { *out = *in @@ -10584,6 +14411,33 @@ func (in *StorageTableDirectParameters) DeepCopy() *StorageTableDirectParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamDeclarationInitParameters) DeepCopyInto(out *StreamDeclarationInitParameters) { + *out = *in + if in.Column != nil { + in, out := &in.Column, &out.Column + *out = make([]ColumnInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StreamName != nil { + in, out := &in.StreamName, &out.StreamName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamDeclarationInitParameters. +func (in *StreamDeclarationInitParameters) DeepCopy() *StreamDeclarationInitParameters { + if in == nil { + return nil + } + out := new(StreamDeclarationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StreamDeclarationObservation) DeepCopyInto(out *StreamDeclarationObservation) { *out = *in @@ -10638,6 +14492,59 @@ func (in *StreamDeclarationParameters) DeepCopy() *StreamDeclarationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SyslogInitParameters) DeepCopyInto(out *SyslogInitParameters) { + *out = *in + if in.FacilityNames != nil { + in, out := &in.FacilityNames, &out.FacilityNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LogLevels != nil { + in, out := &in.LogLevels, &out.LogLevels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SyslogInitParameters. +func (in *SyslogInitParameters) DeepCopy() *SyslogInitParameters { + if in == nil { + return nil + } + out := new(SyslogInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SyslogObservation) DeepCopyInto(out *SyslogObservation) { *out = *in @@ -10734,12 +14641,32 @@ func (in *SyslogParameters) DeepCopyInto(out *SyslogParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SyslogParameters. -func (in *SyslogParameters) DeepCopy() *SyslogParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SyslogParameters. +func (in *SyslogParameters) DeepCopy() *SyslogParameters { + if in == nil { + return nil + } + out := new(SyslogParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TextInitParameters) DeepCopyInto(out *TextInitParameters) { + *out = *in + if in.RecordStartTimestampFormat != nil { + in, out := &in.RecordStartTimestampFormat, &out.RecordStartTimestampFormat + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TextInitParameters. +func (in *TextInitParameters) DeepCopy() *TextInitParameters { if in == nil { return nil } - out := new(SyslogParameters) + out := new(TextInitParameters) in.DeepCopyInto(out) return out } @@ -10784,6 +14711,73 @@ func (in *TextParameters) DeepCopy() *TextParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerInitParameters) DeepCopyInto(out *TriggerInitParameters) { + *out = *in + if in.MetricTrigger != nil { + in, out := &in.MetricTrigger, &out.MetricTrigger + *out = make([]TriggerMetricTriggerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Threshold != nil { + in, out := &in.Threshold, &out.Threshold + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerInitParameters. +func (in *TriggerInitParameters) DeepCopy() *TriggerInitParameters { + if in == nil { + return nil + } + out := new(TriggerInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerMetricTriggerInitParameters) DeepCopyInto(out *TriggerMetricTriggerInitParameters) { + *out = *in + if in.MetricColumn != nil { + in, out := &in.MetricColumn, &out.MetricColumn + *out = new(string) + **out = **in + } + if in.MetricTriggerType != nil { + in, out := &in.MetricTriggerType, &out.MetricTriggerType + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Threshold != nil { + in, out := &in.Threshold, &out.Threshold + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerMetricTriggerInitParameters. +func (in *TriggerMetricTriggerInitParameters) DeepCopy() *TriggerMetricTriggerInitParameters { + if in == nil { + return nil + } + out := new(TriggerMetricTriggerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerMetricTriggerObservation) DeepCopyInto(out *TriggerMetricTriggerObservation) { *out = *in @@ -10918,6 +14912,43 @@ func (in *TriggerParameters) DeepCopy() *TriggerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ValidationRulesInitParameters) DeepCopyInto(out *ValidationRulesInitParameters) { + *out = *in + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = make([]ContentInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExpectedStatusCode != nil { + in, out := &in.ExpectedStatusCode, &out.ExpectedStatusCode + *out = new(float64) + **out = **in + } + if in.SSLCertRemainingLifetime != nil { + in, out := &in.SSLCertRemainingLifetime, &out.SSLCertRemainingLifetime + *out = new(float64) + **out = **in + } + if in.SSLCheckEnabled != nil { + in, out := &in.SSLCheckEnabled, &out.SSLCheckEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValidationRulesInitParameters. +func (in *ValidationRulesInitParameters) DeepCopy() *ValidationRulesInitParameters { + if in == nil { + return nil + } + out := new(ValidationRulesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ValidationRulesObservation) DeepCopyInto(out *ValidationRulesObservation) { *out = *in @@ -10992,6 +15023,36 @@ func (in *ValidationRulesParameters) DeepCopy() *ValidationRulesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VoiceReceiverInitParameters) DeepCopyInto(out *VoiceReceiverInitParameters) { + *out = *in + if in.CountryCode != nil { + in, out := &in.CountryCode, &out.CountryCode + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PhoneNumber != nil { + in, out := &in.PhoneNumber, &out.PhoneNumber + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VoiceReceiverInitParameters. +func (in *VoiceReceiverInitParameters) DeepCopy() *VoiceReceiverInitParameters { + if in == nil { + return nil + } + out := new(VoiceReceiverInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VoiceReceiverObservation) DeepCopyInto(out *VoiceReceiverObservation) { *out = *in @@ -11052,6 +15113,41 @@ func (in *VoiceReceiverParameters) DeepCopy() *VoiceReceiverParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebhookInitParameters) DeepCopyInto(out *WebhookInitParameters) { + *out = *in + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ServiceURI != nil { + in, out := &in.ServiceURI, &out.ServiceURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookInitParameters. +func (in *WebhookInitParameters) DeepCopy() *WebhookInitParameters { + if in == nil { + return nil + } + out := new(WebhookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebhookObservation) DeepCopyInto(out *WebhookObservation) { *out = *in @@ -11122,6 +15218,43 @@ func (in *WebhookParameters) DeepCopy() *WebhookParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebhookReceiverInitParameters) DeepCopyInto(out *WebhookReceiverInitParameters) { + *out = *in + if in.AADAuth != nil { + in, out := &in.AADAuth, &out.AADAuth + *out = make([]AADAuthInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ServiceURI != nil { + in, out := &in.ServiceURI, &out.ServiceURI + *out = new(string) + **out = **in + } + if in.UseCommonAlertSchema != nil { + in, out := &in.UseCommonAlertSchema, &out.UseCommonAlertSchema + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookReceiverInitParameters. +func (in *WebhookReceiverInitParameters) DeepCopy() *WebhookReceiverInitParameters { + if in == nil { + return nil + } + out := new(WebhookReceiverInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebhookReceiverObservation) DeepCopyInto(out *WebhookReceiverObservation) { *out = *in @@ -11196,6 +15329,48 @@ func (in *WebhookReceiverParameters) DeepCopy() *WebhookReceiverParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsEventLogInitParameters) DeepCopyInto(out *WindowsEventLogInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XPathQueries != nil { + in, out := &in.XPathQueries, &out.XPathQueries + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsEventLogInitParameters. +func (in *WindowsEventLogInitParameters) DeepCopy() *WindowsEventLogInitParameters { + if in == nil { + return nil + } + out := new(WindowsEventLogInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsEventLogObservation) DeepCopyInto(out *WindowsEventLogObservation) { *out = *in @@ -11280,6 +15455,37 @@ func (in *WindowsEventLogParameters) DeepCopy() *WindowsEventLogParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFirewallLogInitParameters) DeepCopyInto(out *WindowsFirewallLogInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Streams != nil { + in, out := &in.Streams, &out.Streams + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFirewallLogInitParameters. +func (in *WindowsFirewallLogInitParameters) DeepCopy() *WindowsFirewallLogInitParameters { + if in == nil { + return nil + } + out := new(WindowsFirewallLogInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFirewallLogObservation) DeepCopyInto(out *WindowsFirewallLogObservation) { *out = *in diff --git a/apis/insights/v1beta1/zz_generated.managed.go b/apis/insights/v1beta1/zz_generated.managed.go index ba6a70445..f0667dd88 100644 --- a/apis/insights/v1beta1/zz_generated.managed.go +++ b/apis/insights/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ApplicationInsights) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationInsights. -func (mg *ApplicationInsights) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationInsights. +func (mg *ApplicationInsights) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationInsights. @@ -55,9 +55,9 @@ func (mg *ApplicationInsights) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationInsights. -func (mg *ApplicationInsights) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationInsights. +func (mg *ApplicationInsights) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationInsights. @@ -93,9 +93,9 @@ func (mg *ApplicationInsightsAPIKey) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationInsightsAPIKey. -func (mg *ApplicationInsightsAPIKey) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationInsightsAPIKey. +func (mg *ApplicationInsightsAPIKey) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationInsightsAPIKey. @@ -131,9 +131,9 @@ func (mg *ApplicationInsightsAPIKey) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationInsightsAPIKey. -func (mg *ApplicationInsightsAPIKey) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationInsightsAPIKey. +func (mg *ApplicationInsightsAPIKey) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationInsightsAPIKey. @@ -169,9 +169,9 @@ func (mg *ApplicationInsightsAnalyticsItem) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationInsightsAnalyticsItem. -func (mg *ApplicationInsightsAnalyticsItem) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationInsightsAnalyticsItem. +func (mg *ApplicationInsightsAnalyticsItem) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationInsightsAnalyticsItem. @@ -207,9 +207,9 @@ func (mg *ApplicationInsightsAnalyticsItem) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationInsightsAnalyticsItem. -func (mg *ApplicationInsightsAnalyticsItem) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationInsightsAnalyticsItem. +func (mg *ApplicationInsightsAnalyticsItem) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationInsightsAnalyticsItem. @@ -245,9 +245,9 @@ func (mg *ApplicationInsightsSmartDetectionRule) GetDeletionPolicy() xpv1.Deleti return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationInsightsSmartDetectionRule. -func (mg *ApplicationInsightsSmartDetectionRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationInsightsSmartDetectionRule. +func (mg *ApplicationInsightsSmartDetectionRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationInsightsSmartDetectionRule. @@ -283,9 +283,9 @@ func (mg *ApplicationInsightsSmartDetectionRule) SetDeletionPolicy(r xpv1.Deleti mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationInsightsSmartDetectionRule. -func (mg *ApplicationInsightsSmartDetectionRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationInsightsSmartDetectionRule. +func (mg *ApplicationInsightsSmartDetectionRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationInsightsSmartDetectionRule. @@ -321,9 +321,9 @@ func (mg *ApplicationInsightsStandardWebTest) GetDeletionPolicy() xpv1.DeletionP return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationInsightsStandardWebTest. -func (mg *ApplicationInsightsStandardWebTest) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationInsightsStandardWebTest. +func (mg *ApplicationInsightsStandardWebTest) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationInsightsStandardWebTest. @@ -359,9 +359,9 @@ func (mg *ApplicationInsightsStandardWebTest) SetDeletionPolicy(r xpv1.DeletionP mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationInsightsStandardWebTest. -func (mg *ApplicationInsightsStandardWebTest) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationInsightsStandardWebTest. +func (mg *ApplicationInsightsStandardWebTest) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationInsightsStandardWebTest. @@ -397,9 +397,9 @@ func (mg *ApplicationInsightsWebTest) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationInsightsWebTest. -func (mg *ApplicationInsightsWebTest) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationInsightsWebTest. +func (mg *ApplicationInsightsWebTest) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationInsightsWebTest. @@ -435,9 +435,9 @@ func (mg *ApplicationInsightsWebTest) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationInsightsWebTest. -func (mg *ApplicationInsightsWebTest) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationInsightsWebTest. +func (mg *ApplicationInsightsWebTest) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationInsightsWebTest. @@ -473,9 +473,9 @@ func (mg *ApplicationInsightsWorkbook) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationInsightsWorkbook. -func (mg *ApplicationInsightsWorkbook) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationInsightsWorkbook. +func (mg *ApplicationInsightsWorkbook) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationInsightsWorkbook. @@ -511,9 +511,9 @@ func (mg *ApplicationInsightsWorkbook) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationInsightsWorkbook. -func (mg *ApplicationInsightsWorkbook) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationInsightsWorkbook. +func (mg *ApplicationInsightsWorkbook) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationInsightsWorkbook. @@ -549,9 +549,9 @@ func (mg *ApplicationInsightsWorkbookTemplate) GetDeletionPolicy() xpv1.Deletion return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationInsightsWorkbookTemplate. -func (mg *ApplicationInsightsWorkbookTemplate) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationInsightsWorkbookTemplate. +func (mg *ApplicationInsightsWorkbookTemplate) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationInsightsWorkbookTemplate. @@ -587,9 +587,9 @@ func (mg *ApplicationInsightsWorkbookTemplate) SetDeletionPolicy(r xpv1.Deletion mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationInsightsWorkbookTemplate. -func (mg *ApplicationInsightsWorkbookTemplate) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationInsightsWorkbookTemplate. +func (mg *ApplicationInsightsWorkbookTemplate) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationInsightsWorkbookTemplate. @@ -625,9 +625,9 @@ func (mg *MonitorActionGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorActionGroup. -func (mg *MonitorActionGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorActionGroup. +func (mg *MonitorActionGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorActionGroup. @@ -663,9 +663,9 @@ func (mg *MonitorActionGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorActionGroup. -func (mg *MonitorActionGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorActionGroup. +func (mg *MonitorActionGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorActionGroup. @@ -701,9 +701,9 @@ func (mg *MonitorActivityLogAlert) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorActivityLogAlert. -func (mg *MonitorActivityLogAlert) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorActivityLogAlert. +func (mg *MonitorActivityLogAlert) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorActivityLogAlert. @@ -739,9 +739,9 @@ func (mg *MonitorActivityLogAlert) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorActivityLogAlert. -func (mg *MonitorActivityLogAlert) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorActivityLogAlert. +func (mg *MonitorActivityLogAlert) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorActivityLogAlert. @@ -777,9 +777,9 @@ func (mg *MonitorAutoscaleSetting) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorAutoscaleSetting. -func (mg *MonitorAutoscaleSetting) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorAutoscaleSetting. +func (mg *MonitorAutoscaleSetting) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorAutoscaleSetting. @@ -815,9 +815,9 @@ func (mg *MonitorAutoscaleSetting) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorAutoscaleSetting. -func (mg *MonitorAutoscaleSetting) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorAutoscaleSetting. +func (mg *MonitorAutoscaleSetting) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorAutoscaleSetting. @@ -853,9 +853,9 @@ func (mg *MonitorDataCollectionEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorDataCollectionEndpoint. -func (mg *MonitorDataCollectionEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorDataCollectionEndpoint. +func (mg *MonitorDataCollectionEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorDataCollectionEndpoint. @@ -891,9 +891,9 @@ func (mg *MonitorDataCollectionEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorDataCollectionEndpoint. -func (mg *MonitorDataCollectionEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorDataCollectionEndpoint. +func (mg *MonitorDataCollectionEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorDataCollectionEndpoint. @@ -929,9 +929,9 @@ func (mg *MonitorDataCollectionRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorDataCollectionRule. -func (mg *MonitorDataCollectionRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorDataCollectionRule. +func (mg *MonitorDataCollectionRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorDataCollectionRule. @@ -967,9 +967,9 @@ func (mg *MonitorDataCollectionRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorDataCollectionRule. -func (mg *MonitorDataCollectionRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorDataCollectionRule. +func (mg *MonitorDataCollectionRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorDataCollectionRule. @@ -1005,9 +1005,9 @@ func (mg *MonitorDataCollectionRuleAssociation) GetDeletionPolicy() xpv1.Deletio return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorDataCollectionRuleAssociation. -func (mg *MonitorDataCollectionRuleAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorDataCollectionRuleAssociation. +func (mg *MonitorDataCollectionRuleAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorDataCollectionRuleAssociation. @@ -1043,9 +1043,9 @@ func (mg *MonitorDataCollectionRuleAssociation) SetDeletionPolicy(r xpv1.Deletio mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorDataCollectionRuleAssociation. -func (mg *MonitorDataCollectionRuleAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorDataCollectionRuleAssociation. +func (mg *MonitorDataCollectionRuleAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorDataCollectionRuleAssociation. @@ -1081,9 +1081,9 @@ func (mg *MonitorMetricAlert) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorMetricAlert. -func (mg *MonitorMetricAlert) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorMetricAlert. +func (mg *MonitorMetricAlert) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorMetricAlert. @@ -1119,9 +1119,9 @@ func (mg *MonitorMetricAlert) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorMetricAlert. -func (mg *MonitorMetricAlert) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorMetricAlert. +func (mg *MonitorMetricAlert) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorMetricAlert. @@ -1157,9 +1157,9 @@ func (mg *MonitorPrivateLinkScope) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorPrivateLinkScope. -func (mg *MonitorPrivateLinkScope) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorPrivateLinkScope. +func (mg *MonitorPrivateLinkScope) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorPrivateLinkScope. @@ -1195,9 +1195,9 @@ func (mg *MonitorPrivateLinkScope) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorPrivateLinkScope. -func (mg *MonitorPrivateLinkScope) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorPrivateLinkScope. +func (mg *MonitorPrivateLinkScope) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorPrivateLinkScope. @@ -1233,9 +1233,9 @@ func (mg *MonitorPrivateLinkScopedService) GetDeletionPolicy() xpv1.DeletionPoli return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorPrivateLinkScopedService. -func (mg *MonitorPrivateLinkScopedService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorPrivateLinkScopedService. +func (mg *MonitorPrivateLinkScopedService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorPrivateLinkScopedService. @@ -1271,9 +1271,9 @@ func (mg *MonitorPrivateLinkScopedService) SetDeletionPolicy(r xpv1.DeletionPoli mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorPrivateLinkScopedService. -func (mg *MonitorPrivateLinkScopedService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorPrivateLinkScopedService. +func (mg *MonitorPrivateLinkScopedService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorPrivateLinkScopedService. @@ -1309,9 +1309,9 @@ func (mg *MonitorScheduledQueryRulesAlert) GetDeletionPolicy() xpv1.DeletionPoli return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorScheduledQueryRulesAlert. -func (mg *MonitorScheduledQueryRulesAlert) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorScheduledQueryRulesAlert. +func (mg *MonitorScheduledQueryRulesAlert) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorScheduledQueryRulesAlert. @@ -1347,9 +1347,9 @@ func (mg *MonitorScheduledQueryRulesAlert) SetDeletionPolicy(r xpv1.DeletionPoli mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorScheduledQueryRulesAlert. -func (mg *MonitorScheduledQueryRulesAlert) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorScheduledQueryRulesAlert. +func (mg *MonitorScheduledQueryRulesAlert) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorScheduledQueryRulesAlert. @@ -1385,9 +1385,9 @@ func (mg *MonitorScheduledQueryRulesAlertV2) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorScheduledQueryRulesAlertV2. -func (mg *MonitorScheduledQueryRulesAlertV2) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorScheduledQueryRulesAlertV2. +func (mg *MonitorScheduledQueryRulesAlertV2) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorScheduledQueryRulesAlertV2. @@ -1423,9 +1423,9 @@ func (mg *MonitorScheduledQueryRulesAlertV2) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorScheduledQueryRulesAlertV2. -func (mg *MonitorScheduledQueryRulesAlertV2) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorScheduledQueryRulesAlertV2. +func (mg *MonitorScheduledQueryRulesAlertV2) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorScheduledQueryRulesAlertV2. @@ -1461,9 +1461,9 @@ func (mg *MonitorScheduledQueryRulesLog) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MonitorScheduledQueryRulesLog. -func (mg *MonitorScheduledQueryRulesLog) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MonitorScheduledQueryRulesLog. +func (mg *MonitorScheduledQueryRulesLog) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MonitorScheduledQueryRulesLog. @@ -1499,9 +1499,9 @@ func (mg *MonitorScheduledQueryRulesLog) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MonitorScheduledQueryRulesLog. -func (mg *MonitorScheduledQueryRulesLog) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MonitorScheduledQueryRulesLog. +func (mg *MonitorScheduledQueryRulesLog) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MonitorScheduledQueryRulesLog. diff --git a/apis/insights/v1beta1/zz_generated_terraformed.go b/apis/insights/v1beta1/zz_generated_terraformed.go index 523fbb811..19194dd0f 100755 --- a/apis/insights/v1beta1/zz_generated_terraformed.go +++ b/apis/insights/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ApplicationInsights) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationInsights +func (tr *ApplicationInsights) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationInsights using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationInsights) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *ApplicationInsightsAnalyticsItem) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationInsightsAnalyticsItem +func (tr *ApplicationInsightsAnalyticsItem) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationInsightsAnalyticsItem using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationInsightsAnalyticsItem) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *ApplicationInsightsAPIKey) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationInsightsAPIKey +func (tr *ApplicationInsightsAPIKey) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationInsightsAPIKey using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationInsightsAPIKey) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *ApplicationInsightsSmartDetectionRule) SetParameters(params map[string return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationInsightsSmartDetectionRule +func (tr *ApplicationInsightsSmartDetectionRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationInsightsSmartDetectionRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationInsightsSmartDetectionRule) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *ApplicationInsightsStandardWebTest) SetParameters(params map[string]an return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationInsightsStandardWebTest +func (tr *ApplicationInsightsStandardWebTest) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationInsightsStandardWebTest using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationInsightsStandardWebTest) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *ApplicationInsightsWebTest) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationInsightsWebTest +func (tr *ApplicationInsightsWebTest) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationInsightsWebTest using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationInsightsWebTest) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *ApplicationInsightsWorkbook) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationInsightsWorkbook +func (tr *ApplicationInsightsWorkbook) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationInsightsWorkbook using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationInsightsWorkbook) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *ApplicationInsightsWorkbookTemplate) SetParameters(params map[string]a return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationInsightsWorkbookTemplate +func (tr *ApplicationInsightsWorkbookTemplate) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationInsightsWorkbookTemplate using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationInsightsWorkbookTemplate) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *MonitorActionGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorActionGroup +func (tr *MonitorActionGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorActionGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorActionGroup) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *MonitorActivityLogAlert) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorActivityLogAlert +func (tr *MonitorActivityLogAlert) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorActivityLogAlert using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorActivityLogAlert) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *MonitorAutoscaleSetting) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorAutoscaleSetting +func (tr *MonitorAutoscaleSetting) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorAutoscaleSetting using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorAutoscaleSetting) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *MonitorDataCollectionEndpoint) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorDataCollectionEndpoint +func (tr *MonitorDataCollectionEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorDataCollectionEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorDataCollectionEndpoint) LateInitialize(attrs []byte) (bool, error) { @@ -957,6 +1077,16 @@ func (tr *MonitorDataCollectionRule) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorDataCollectionRule +func (tr *MonitorDataCollectionRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorDataCollectionRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorDataCollectionRule) LateInitialize(attrs []byte) (bool, error) { @@ -1031,6 +1161,16 @@ func (tr *MonitorDataCollectionRuleAssociation) SetParameters(params map[string] return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorDataCollectionRuleAssociation +func (tr *MonitorDataCollectionRuleAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorDataCollectionRuleAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorDataCollectionRuleAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -1105,6 +1245,16 @@ func (tr *MonitorMetricAlert) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorMetricAlert +func (tr *MonitorMetricAlert) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorMetricAlert using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorMetricAlert) LateInitialize(attrs []byte) (bool, error) { @@ -1179,6 +1329,16 @@ func (tr *MonitorPrivateLinkScope) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorPrivateLinkScope +func (tr *MonitorPrivateLinkScope) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorPrivateLinkScope using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorPrivateLinkScope) LateInitialize(attrs []byte) (bool, error) { @@ -1253,6 +1413,16 @@ func (tr *MonitorPrivateLinkScopedService) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorPrivateLinkScopedService +func (tr *MonitorPrivateLinkScopedService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorPrivateLinkScopedService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorPrivateLinkScopedService) LateInitialize(attrs []byte) (bool, error) { @@ -1327,6 +1497,16 @@ func (tr *MonitorScheduledQueryRulesAlert) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorScheduledQueryRulesAlert +func (tr *MonitorScheduledQueryRulesAlert) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorScheduledQueryRulesAlert using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorScheduledQueryRulesAlert) LateInitialize(attrs []byte) (bool, error) { @@ -1401,6 +1581,16 @@ func (tr *MonitorScheduledQueryRulesAlertV2) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorScheduledQueryRulesAlertV2 +func (tr *MonitorScheduledQueryRulesAlertV2) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorScheduledQueryRulesAlertV2 using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorScheduledQueryRulesAlertV2) LateInitialize(attrs []byte) (bool, error) { @@ -1475,6 +1665,16 @@ func (tr *MonitorScheduledQueryRulesLog) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MonitorScheduledQueryRulesLog +func (tr *MonitorScheduledQueryRulesLog) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MonitorScheduledQueryRulesLog using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MonitorScheduledQueryRulesLog) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/insights/v1beta1/zz_monitoractiongroup_types.go b/apis/insights/v1beta1/zz_monitoractiongroup_types.go index 73f662d30..acf18d16c 100755 --- a/apis/insights/v1beta1/zz_monitoractiongroup_types.go +++ b/apis/insights/v1beta1/zz_monitoractiongroup_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AADAuthInitParameters struct { + + // The identifier URI for AAD auth. + IdentifierURI *string `json:"identifierUri,omitempty" tf:"identifier_uri,omitempty"` + + // The webhook application object Id for AAD auth. + ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` + + // The tenant id for AAD auth. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type AADAuthObservation struct { // The identifier URI for AAD auth. @@ -32,14 +44,26 @@ type AADAuthParameters struct { IdentifierURI *string `json:"identifierUri,omitempty" tf:"identifier_uri,omitempty"` // The webhook application object Id for AAD auth. - // +kubebuilder:validation:Required - ObjectID *string `json:"objectId" tf:"object_id,omitempty"` + // +kubebuilder:validation:Optional + ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` // The tenant id for AAD auth. // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } +type ArmRoleReceiverInitParameters struct { + + // The name of the ARM role receiver. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The arm role id. + RoleID *string `json:"roleId,omitempty" tf:"role_id,omitempty"` + + // Enables or disables the common alert schema. + UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` +} + type ArmRoleReceiverObservation struct { // The name of the ARM role receiver. @@ -55,18 +79,42 @@ type ArmRoleReceiverObservation struct { type ArmRoleReceiverParameters struct { // The name of the ARM role receiver. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The arm role id. - // +kubebuilder:validation:Required - RoleID *string `json:"roleId" tf:"role_id,omitempty"` + // +kubebuilder:validation:Optional + RoleID *string `json:"roleId,omitempty" tf:"role_id,omitempty"` // Enables or disables the common alert schema. // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } +type AutomationRunBookReceiverInitParameters struct { + + // The automation account ID which holds this runbook and authenticates to Azure resources. + AutomationAccountID *string `json:"automationAccountId,omitempty" tf:"automation_account_id,omitempty"` + + // Indicates whether this instance is global runbook. + IsGlobalRunBook *bool `json:"isGlobalRunbook,omitempty" tf:"is_global_runbook,omitempty"` + + // The name of the automation runbook receiver. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The name for this runbook. + RunBookName *string `json:"runbookName,omitempty" tf:"runbook_name,omitempty"` + + // The URI where webhooks should be sent. + ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` + + // Enables or disables the common alert schema. + UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` + + // The resource id for webhook linked to this runbook. + WebhookResourceID *string `json:"webhookResourceId,omitempty" tf:"webhook_resource_id,omitempty"` +} + type AutomationRunBookReceiverObservation struct { // The automation account ID which holds this runbook and authenticates to Azure resources. @@ -94,32 +142,41 @@ type AutomationRunBookReceiverObservation struct { type AutomationRunBookReceiverParameters struct { // The automation account ID which holds this runbook and authenticates to Azure resources. - // +kubebuilder:validation:Required - AutomationAccountID *string `json:"automationAccountId" tf:"automation_account_id,omitempty"` + // +kubebuilder:validation:Optional + AutomationAccountID *string `json:"automationAccountId,omitempty" tf:"automation_account_id,omitempty"` // Indicates whether this instance is global runbook. - // +kubebuilder:validation:Required - IsGlobalRunBook *bool `json:"isGlobalRunbook" tf:"is_global_runbook,omitempty"` + // +kubebuilder:validation:Optional + IsGlobalRunBook *bool `json:"isGlobalRunbook,omitempty" tf:"is_global_runbook,omitempty"` // The name of the automation runbook receiver. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name for this runbook. - // +kubebuilder:validation:Required - RunBookName *string `json:"runbookName" tf:"runbook_name,omitempty"` + // +kubebuilder:validation:Optional + RunBookName *string `json:"runbookName,omitempty" tf:"runbook_name,omitempty"` // The URI where webhooks should be sent. - // +kubebuilder:validation:Required - ServiceURI *string `json:"serviceUri" tf:"service_uri,omitempty"` + // +kubebuilder:validation:Optional + ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` // Enables or disables the common alert schema. // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` // The resource id for webhook linked to this runbook. - // +kubebuilder:validation:Required - WebhookResourceID *string `json:"webhookResourceId" tf:"webhook_resource_id,omitempty"` + // +kubebuilder:validation:Optional + WebhookResourceID *string `json:"webhookResourceId,omitempty" tf:"webhook_resource_id,omitempty"` +} + +type AzureAppPushReceiverInitParameters struct { + + // The email address of the user signed into the mobile app who will receive push notifications from this receiver. + EmailAddress *string `json:"emailAddress,omitempty" tf:"email_address,omitempty"` + + // The name of the Azure app push receiver. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type AzureAppPushReceiverObservation struct { @@ -134,12 +191,30 @@ type AzureAppPushReceiverObservation struct { type AzureAppPushReceiverParameters struct { // The email address of the user signed into the mobile app who will receive push notifications from this receiver. - // +kubebuilder:validation:Required - EmailAddress *string `json:"emailAddress" tf:"email_address,omitempty"` + // +kubebuilder:validation:Optional + EmailAddress *string `json:"emailAddress,omitempty" tf:"email_address,omitempty"` // The name of the Azure app push receiver. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type AzureFunctionReceiverInitParameters struct { + + // The Azure resource ID of the function app. + FunctionAppResourceID *string `json:"functionAppResourceId,omitempty" tf:"function_app_resource_id,omitempty"` + + // The function name in the function app. + FunctionName *string `json:"functionName,omitempty" tf:"function_name,omitempty"` + + // The HTTP trigger url where HTTP request sent to. + HTTPTriggerURL *string `json:"httpTriggerUrl,omitempty" tf:"http_trigger_url,omitempty"` + + // The name of the Azure Function receiver. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Enables or disables the common alert schema. + UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } type AzureFunctionReceiverObservation struct { @@ -163,26 +238,38 @@ type AzureFunctionReceiverObservation struct { type AzureFunctionReceiverParameters struct { // The Azure resource ID of the function app. - // +kubebuilder:validation:Required - FunctionAppResourceID *string `json:"functionAppResourceId" tf:"function_app_resource_id,omitempty"` + // +kubebuilder:validation:Optional + FunctionAppResourceID *string `json:"functionAppResourceId,omitempty" tf:"function_app_resource_id,omitempty"` // The function name in the function app. - // +kubebuilder:validation:Required - FunctionName *string `json:"functionName" tf:"function_name,omitempty"` + // +kubebuilder:validation:Optional + FunctionName *string `json:"functionName,omitempty" tf:"function_name,omitempty"` // The HTTP trigger url where HTTP request sent to. - // +kubebuilder:validation:Required - HTTPTriggerURL *string `json:"httpTriggerUrl" tf:"http_trigger_url,omitempty"` + // +kubebuilder:validation:Optional + HTTPTriggerURL *string `json:"httpTriggerUrl,omitempty" tf:"http_trigger_url,omitempty"` // The name of the Azure Function receiver. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Enables or disables the common alert schema. // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } +type EmailReceiverInitParameters struct { + + // The email address of this receiver. + EmailAddress *string `json:"emailAddress,omitempty" tf:"email_address,omitempty"` + + // The name of the email receiver. Names must be unique (case-insensitive) across all receivers within an action group. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Enables or disables the common alert schema. + UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` +} + type EmailReceiverObservation struct { // The email address of this receiver. @@ -198,18 +285,42 @@ type EmailReceiverObservation struct { type EmailReceiverParameters struct { // The email address of this receiver. - // +kubebuilder:validation:Required - EmailAddress *string `json:"emailAddress" tf:"email_address,omitempty"` + // +kubebuilder:validation:Optional + EmailAddress *string `json:"emailAddress,omitempty" tf:"email_address,omitempty"` // The name of the email receiver. Names must be unique (case-insensitive) across all receivers within an action group. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Enables or disables the common alert schema. // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } +type EventHubReceiverInitParameters struct { + + // The resource ID of the respective Event Hub. + EventHubID *string `json:"eventHubId,omitempty" tf:"event_hub_id,omitempty"` + + // The name of the specific Event Hub queue. + EventHubName *string `json:"eventHubName,omitempty" tf:"event_hub_name,omitempty"` + + // The namespace name of the Event Hub. + EventHubNamespace *string `json:"eventHubNamespace,omitempty" tf:"event_hub_namespace,omitempty"` + + // The name of the EventHub Receiver, must be unique within action group. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID for the subscription containing this Event Hub. Default to the subscription ID of the Action Group. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` + + // The Tenant ID for the subscription containing this Event Hub. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` + + // Indicates whether to use common alert schema. + UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` +} + type EventHubReceiverObservation struct { // The resource ID of the respective Event Hub. @@ -249,8 +360,8 @@ type EventHubReceiverParameters struct { EventHubNamespace *string `json:"eventHubNamespace,omitempty" tf:"event_hub_namespace,omitempty"` // The name of the EventHub Receiver, must be unique within action group. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID for the subscription containing this Event Hub. Default to the subscription ID of the Action Group. // +kubebuilder:validation:Optional @@ -265,6 +376,24 @@ type EventHubReceiverParameters struct { UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } +type ItsmReceiverInitParameters struct { + + // The unique connection identifier of the ITSM connection. + ConnectionID *string `json:"connectionId,omitempty" tf:"connection_id,omitempty"` + + // The name of the ITSM receiver. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The region of the workspace. + Region *string `json:"region,omitempty" tf:"region,omitempty"` + + // A JSON blob for the configurations of the ITSM action. CreateMultipleWorkItems option will be part of this blob as well. + TicketConfiguration *string `json:"ticketConfiguration,omitempty" tf:"ticket_configuration,omitempty"` + + // The Azure Log Analytics workspace ID where this connection is defined. Format is |, for example 00000000-0000-0000-0000-000000000000|00000000-0000-0000-0000-000000000000. + WorkspaceID *string `json:"workspaceId,omitempty" tf:"workspace_id,omitempty"` +} + type ItsmReceiverObservation struct { // The unique connection identifier of the ITSM connection. @@ -286,24 +415,39 @@ type ItsmReceiverObservation struct { type ItsmReceiverParameters struct { // The unique connection identifier of the ITSM connection. - // +kubebuilder:validation:Required - ConnectionID *string `json:"connectionId" tf:"connection_id,omitempty"` + // +kubebuilder:validation:Optional + ConnectionID *string `json:"connectionId,omitempty" tf:"connection_id,omitempty"` // The name of the ITSM receiver. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The region of the workspace. - // +kubebuilder:validation:Required - Region *string `json:"region" tf:"region,omitempty"` + // +kubebuilder:validation:Optional + Region *string `json:"region,omitempty" tf:"region,omitempty"` // A JSON blob for the configurations of the ITSM action. CreateMultipleWorkItems option will be part of this blob as well. - // +kubebuilder:validation:Required - TicketConfiguration *string `json:"ticketConfiguration" tf:"ticket_configuration,omitempty"` + // +kubebuilder:validation:Optional + TicketConfiguration *string `json:"ticketConfiguration,omitempty" tf:"ticket_configuration,omitempty"` // The Azure Log Analytics workspace ID where this connection is defined. Format is |, for example 00000000-0000-0000-0000-000000000000|00000000-0000-0000-0000-000000000000. - // +kubebuilder:validation:Required - WorkspaceID *string `json:"workspaceId" tf:"workspace_id,omitempty"` + // +kubebuilder:validation:Optional + WorkspaceID *string `json:"workspaceId,omitempty" tf:"workspace_id,omitempty"` +} + +type LogicAppReceiverInitParameters struct { + + // The callback url where HTTP request sent to. + CallbackURL *string `json:"callbackUrl,omitempty" tf:"callback_url,omitempty"` + + // The name of the logic app receiver. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Azure resource ID of the logic app. + ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` + + // Enables or disables the common alert schema. + UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } type LogicAppReceiverObservation struct { @@ -324,22 +468,70 @@ type LogicAppReceiverObservation struct { type LogicAppReceiverParameters struct { // The callback url where HTTP request sent to. - // +kubebuilder:validation:Required - CallbackURL *string `json:"callbackUrl" tf:"callback_url,omitempty"` + // +kubebuilder:validation:Optional + CallbackURL *string `json:"callbackUrl,omitempty" tf:"callback_url,omitempty"` // The name of the logic app receiver. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Azure resource ID of the logic app. - // +kubebuilder:validation:Required - ResourceID *string `json:"resourceId" tf:"resource_id,omitempty"` + // +kubebuilder:validation:Optional + ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` // Enables or disables the common alert schema. // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } +type MonitorActionGroupInitParameters struct { + + // One or more arm_role_receiver blocks as defined below. + ArmRoleReceiver []ArmRoleReceiverInitParameters `json:"armRoleReceiver,omitempty" tf:"arm_role_receiver,omitempty"` + + // One or more automation_runbook_receiver blocks as defined below. + AutomationRunBookReceiver []AutomationRunBookReceiverInitParameters `json:"automationRunbookReceiver,omitempty" tf:"automation_runbook_receiver,omitempty"` + + // One or more azure_app_push_receiver blocks as defined below. + AzureAppPushReceiver []AzureAppPushReceiverInitParameters `json:"azureAppPushReceiver,omitempty" tf:"azure_app_push_receiver,omitempty"` + + // One or more azure_function_receiver blocks as defined below. + AzureFunctionReceiver []AzureFunctionReceiverInitParameters `json:"azureFunctionReceiver,omitempty" tf:"azure_function_receiver,omitempty"` + + // One or more email_receiver blocks as defined below. + EmailReceiver []EmailReceiverInitParameters `json:"emailReceiver,omitempty" tf:"email_receiver,omitempty"` + + // Whether this action group is enabled. If an action group is not enabled, then none of its receivers will receive communications. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // One or more event_hub_receiver blocks as defined below. + EventHubReceiver []EventHubReceiverInitParameters `json:"eventHubReceiver,omitempty" tf:"event_hub_receiver,omitempty"` + + // One or more itsm_receiver blocks as defined below. + ItsmReceiver []ItsmReceiverInitParameters `json:"itsmReceiver,omitempty" tf:"itsm_receiver,omitempty"` + + // The Azure Region where the Action Group should exist. Changing this forces a new Action Group to be created. Defaults to global. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // One or more logic_app_receiver blocks as defined below. + LogicAppReceiver []LogicAppReceiverInitParameters `json:"logicAppReceiver,omitempty" tf:"logic_app_receiver,omitempty"` + + // One or more sms_receiver blocks as defined below. + SMSReceiver []SMSReceiverInitParameters `json:"smsReceiver,omitempty" tf:"sms_receiver,omitempty"` + + // The short name of the action group. This will be used in SMS messages. + ShortName *string `json:"shortName,omitempty" tf:"short_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // One or more voice_receiver blocks as defined below. + VoiceReceiver []VoiceReceiverInitParameters `json:"voiceReceiver,omitempty" tf:"voice_receiver,omitempty"` + + // One or more webhook_receiver blocks as defined below. + WebhookReceiver []WebhookReceiverInitParameters `json:"webhookReceiver,omitempty" tf:"webhook_receiver,omitempty"` +} + type MonitorActionGroupObservation struct { // One or more arm_role_receiver blocks as defined below. @@ -470,6 +662,18 @@ type MonitorActionGroupParameters struct { WebhookReceiver []WebhookReceiverParameters `json:"webhookReceiver,omitempty" tf:"webhook_receiver,omitempty"` } +type SMSReceiverInitParameters struct { + + // The country code of the SMS receiver. + CountryCode *string `json:"countryCode,omitempty" tf:"country_code,omitempty"` + + // The name of the SMS receiver. Names must be unique (case-insensitive) across all receivers within an action group. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The phone number of the SMS receiver. + PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` +} + type SMSReceiverObservation struct { // The country code of the SMS receiver. @@ -485,16 +689,28 @@ type SMSReceiverObservation struct { type SMSReceiverParameters struct { // The country code of the SMS receiver. - // +kubebuilder:validation:Required - CountryCode *string `json:"countryCode" tf:"country_code,omitempty"` + // +kubebuilder:validation:Optional + CountryCode *string `json:"countryCode,omitempty" tf:"country_code,omitempty"` // The name of the SMS receiver. Names must be unique (case-insensitive) across all receivers within an action group. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The phone number of the SMS receiver. - // +kubebuilder:validation:Required - PhoneNumber *string `json:"phoneNumber" tf:"phone_number,omitempty"` + // +kubebuilder:validation:Optional + PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` +} + +type VoiceReceiverInitParameters struct { + + // The country code of the voice receiver. + CountryCode *string `json:"countryCode,omitempty" tf:"country_code,omitempty"` + + // The name of the voice receiver. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The phone number of the voice receiver. + PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` } type VoiceReceiverObservation struct { @@ -512,16 +728,31 @@ type VoiceReceiverObservation struct { type VoiceReceiverParameters struct { // The country code of the voice receiver. - // +kubebuilder:validation:Required - CountryCode *string `json:"countryCode" tf:"country_code,omitempty"` + // +kubebuilder:validation:Optional + CountryCode *string `json:"countryCode,omitempty" tf:"country_code,omitempty"` // The name of the voice receiver. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The phone number of the voice receiver. - // +kubebuilder:validation:Required - PhoneNumber *string `json:"phoneNumber" tf:"phone_number,omitempty"` + // +kubebuilder:validation:Optional + PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` +} + +type WebhookReceiverInitParameters struct { + + // The aad_auth block as defined below + AADAuth []AADAuthInitParameters `json:"aadAuth,omitempty" tf:"aad_auth,omitempty"` + + // The name of the webhook receiver. Names must be unique (case-insensitive) across all receivers within an action group. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The URI where webhooks should be sent. + ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` + + // Enables or disables the common alert schema. + UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } type WebhookReceiverObservation struct { @@ -546,12 +777,12 @@ type WebhookReceiverParameters struct { AADAuth []AADAuthParameters `json:"aadAuth,omitempty" tf:"aad_auth,omitempty"` // The name of the webhook receiver. Names must be unique (case-insensitive) across all receivers within an action group. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The URI where webhooks should be sent. - // +kubebuilder:validation:Required - ServiceURI *string `json:"serviceUri" tf:"service_uri,omitempty"` + // +kubebuilder:validation:Optional + ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` // Enables or disables the common alert schema. // +kubebuilder:validation:Optional @@ -562,6 +793,18 @@ type WebhookReceiverParameters struct { type MonitorActionGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorActionGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorActionGroupInitParameters `json:"initProvider,omitempty"` } // MonitorActionGroupStatus defines the observed state of MonitorActionGroup. @@ -582,7 +825,7 @@ type MonitorActionGroupStatus struct { type MonitorActionGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.shortName)",message="shortName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.shortName) || has(self.initProvider.shortName)",message="shortName is a required parameter" Spec MonitorActionGroupSpec `json:"spec"` Status MonitorActionGroupStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitoractivitylogalert_types.go b/apis/insights/v1beta1/zz_monitoractivitylogalert_types.go index 0bb8ce319..d383f86b0 100755 --- a/apis/insights/v1beta1/zz_monitoractivitylogalert_types.go +++ b/apis/insights/v1beta1/zz_monitoractivitylogalert_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActionInitParameters struct { + + // The map of custom string properties to include with the post operation. These data are appended to the webhook payload. + WebhookProperties map[string]*string `json:"webhookProperties,omitempty" tf:"webhook_properties,omitempty"` +} + type ActionObservation struct { // The ID of the Action Group can be sourced from the . @@ -43,6 +49,51 @@ type ActionParameters struct { WebhookProperties map[string]*string `json:"webhookProperties,omitempty" tf:"webhook_properties,omitempty"` } +type CriteriaInitParameters struct { + + // The email address or Azure Active Directory identifier of the user who performed the operation. + Caller *string `json:"caller,omitempty" tf:"caller,omitempty"` + + // The category of the operation. Possible values are Administrative, Autoscale, Policy, Recommendation, ResourceHealth, Security and ServiceHealth. + Category *string `json:"category,omitempty" tf:"category,omitempty"` + + // The severity level of the event. Possible values are Verbose, Informational, Warning, Error, and Critical. + Level *string `json:"level,omitempty" tf:"level,omitempty"` + + // The Resource Manager Role-Based Access Control operation name. Supported operation should be of the form: //. + OperationName *string `json:"operationName,omitempty" tf:"operation_name,omitempty"` + + // The recommendation category of the event. Possible values are Cost, Reliability, OperationalExcellence and Performance. It is only allowed when category is Recommendation. + RecommendationCategory *string `json:"recommendationCategory,omitempty" tf:"recommendation_category,omitempty"` + + // The recommendation impact of the event. Possible values are High, Medium and Low. It is only allowed when category is Recommendation. + RecommendationImpact *string `json:"recommendationImpact,omitempty" tf:"recommendation_impact,omitempty"` + + // The recommendation type of the event. It is only allowed when category is Recommendation. + RecommendationType *string `json:"recommendationType,omitempty" tf:"recommendation_type,omitempty"` + + // The name of resource group monitored by the activity log alert. + ResourceGroup *string `json:"resourceGroup,omitempty" tf:"resource_group,omitempty"` + + // A block to define fine grain resource health settings. + ResourceHealth []ResourceHealthInitParameters `json:"resourceHealth,omitempty" tf:"resource_health,omitempty"` + + // The name of the resource provider monitored by the activity log alert. + ResourceProvider *string `json:"resourceProvider,omitempty" tf:"resource_provider,omitempty"` + + // The resource type monitored by the activity log alert. + ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"` + + // A block to define fine grain service health settings. + ServiceHealth []ServiceHealthInitParameters `json:"serviceHealth,omitempty" tf:"service_health,omitempty"` + + // The status of the event. For example, Started, Failed, or Succeeded. + Status *string `json:"status,omitempty" tf:"status,omitempty"` + + // The sub status of the event. + SubStatus *string `json:"subStatus,omitempty" tf:"sub_status,omitempty"` +} + type CriteriaObservation struct { // The email address or Azure Active Directory identifier of the user who performed the operation. @@ -98,8 +149,8 @@ type CriteriaParameters struct { Caller *string `json:"caller,omitempty" tf:"caller,omitempty"` // The category of the operation. Possible values are Administrative, Autoscale, Policy, Recommendation, ResourceHealth, Security and ServiceHealth. - // +kubebuilder:validation:Required - Category *string `json:"category" tf:"category,omitempty"` + // +kubebuilder:validation:Optional + Category *string `json:"category,omitempty" tf:"category,omitempty"` // The severity level of the event. Possible values are Verbose, Informational, Warning, Error, and Critical. // +kubebuilder:validation:Optional @@ -164,6 +215,27 @@ type CriteriaParameters struct { SubStatus *string `json:"subStatus,omitempty" tf:"sub_status,omitempty"` } +type MonitorActivityLogAlertInitParameters struct { + + // One or more action blocks as defined below. + Action []ActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // A criteria block as defined below. + Criteria []CriteriaInitParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` + + // The description of this activity log alert. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Should this Activity Log Alert be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name of the activity log alert. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type MonitorActivityLogAlertObservation struct { // One or more action blocks as defined below. @@ -248,6 +320,18 @@ type MonitorActivityLogAlertParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type ResourceHealthInitParameters struct { + + // The current resource health statuses that will log an alert. Possible values are Available, Degraded, Unavailable and Unknown. + Current []*string `json:"current,omitempty" tf:"current,omitempty"` + + // The previous resource health statuses that will log an alert. Possible values are Available, Degraded, Unavailable and Unknown. + Previous []*string `json:"previous,omitempty" tf:"previous,omitempty"` + + // The reason that will log an alert. Possible values are PlatformInitiated (such as a problem with the resource in an affected region of an Azure incident), UserInitiated (such as a shutdown request of a VM) and Unknown. + Reason []*string `json:"reason,omitempty" tf:"reason,omitempty"` +} + type ResourceHealthObservation struct { // The current resource health statuses that will log an alert. Possible values are Available, Degraded, Unavailable and Unknown. @@ -275,6 +359,18 @@ type ResourceHealthParameters struct { Reason []*string `json:"reason,omitempty" tf:"reason,omitempty"` } +type ServiceHealthInitParameters struct { + + // Events this alert will monitor Possible values are Incident, Maintenance, Informational, ActionRequired and Security. + Events []*string `json:"events,omitempty" tf:"events,omitempty"` + + // Locations this alert will monitor. For example, West Europe. + Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` + + // Services this alert will monitor. For example, Activity Logs & Alerts, Action Groups. Defaults to all Services. + Services []*string `json:"services,omitempty" tf:"services,omitempty"` +} + type ServiceHealthObservation struct { // Events this alert will monitor Possible values are Incident, Maintenance, Informational, ActionRequired and Security. @@ -306,6 +402,18 @@ type ServiceHealthParameters struct { type MonitorActivityLogAlertSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorActivityLogAlertParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorActivityLogAlertInitParameters `json:"initProvider,omitempty"` } // MonitorActivityLogAlertStatus defines the observed state of MonitorActivityLogAlert. @@ -326,8 +434,8 @@ type MonitorActivityLogAlertStatus struct { type MonitorActivityLogAlert struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.criteria)",message="criteria is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.criteria) || has(self.initProvider.criteria)",message="criteria is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec MonitorActivityLogAlertSpec `json:"spec"` Status MonitorActivityLogAlertStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitorautoscalesetting_types.go b/apis/insights/v1beta1/zz_monitorautoscalesetting_types.go index 474dfd30d..da90cd680 100755 --- a/apis/insights/v1beta1/zz_monitorautoscalesetting_types.go +++ b/apis/insights/v1beta1/zz_monitorautoscalesetting_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CapacityInitParameters struct { + + // The number of instances that are available for scaling if metrics are not available for evaluation. The default is only used if the current instance count is lower than the default. Valid values are between 0 and 1000. + Default *float64 `json:"default,omitempty" tf:"default,omitempty"` + + // The maximum number of instances for this resource. Valid values are between 0 and 1000. + Maximum *float64 `json:"maximum,omitempty" tf:"maximum,omitempty"` + + // The minimum number of instances for this resource. Valid values are between 0 and 1000. + Minimum *float64 `json:"minimum,omitempty" tf:"minimum,omitempty"` +} + type CapacityObservation struct { // The number of instances that are available for scaling if metrics are not available for evaluation. The default is only used if the current instance count is lower than the default. Valid values are between 0 and 1000. @@ -28,16 +40,28 @@ type CapacityObservation struct { type CapacityParameters struct { // The number of instances that are available for scaling if metrics are not available for evaluation. The default is only used if the current instance count is lower than the default. Valid values are between 0 and 1000. - // +kubebuilder:validation:Required - Default *float64 `json:"default" tf:"default,omitempty"` + // +kubebuilder:validation:Optional + Default *float64 `json:"default,omitempty" tf:"default,omitempty"` // The maximum number of instances for this resource. Valid values are between 0 and 1000. - // +kubebuilder:validation:Required - Maximum *float64 `json:"maximum" tf:"maximum,omitempty"` + // +kubebuilder:validation:Optional + Maximum *float64 `json:"maximum,omitempty" tf:"maximum,omitempty"` // The minimum number of instances for this resource. Valid values are between 0 and 1000. - // +kubebuilder:validation:Required - Minimum *float64 `json:"minimum" tf:"minimum,omitempty"` + // +kubebuilder:validation:Optional + Minimum *float64 `json:"minimum,omitempty" tf:"minimum,omitempty"` +} + +type DimensionsInitParameters struct { + + // Specifies the name of the profile. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the operator used to compare the metric data and threshold. Possible values are: Equals, NotEquals, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of dimension values. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type DimensionsObservation struct { @@ -55,16 +79,28 @@ type DimensionsObservation struct { type DimensionsParameters struct { // Specifies the name of the profile. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the operator used to compare the metric data and threshold. Possible values are: Equals, NotEquals, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of dimension values. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type EmailInitParameters struct { + + // Specifies a list of custom email addresses to which the email notifications will be sent. + CustomEmails []*string `json:"customEmails,omitempty" tf:"custom_emails,omitempty"` + + // Should email notifications be sent to the subscription administrator? Defaults to false. + SendToSubscriptionAdministrator *bool `json:"sendToSubscriptionAdministrator,omitempty" tf:"send_to_subscription_administrator,omitempty"` + + // Should email notifications be sent to the subscription co-administrator? Defaults to false. + SendToSubscriptionCoAdministrator *bool `json:"sendToSubscriptionCoAdministrator,omitempty" tf:"send_to_subscription_co_administrator,omitempty"` } type EmailObservation struct { @@ -94,6 +130,18 @@ type EmailParameters struct { SendToSubscriptionCoAdministrator *bool `json:"sendToSubscriptionCoAdministrator,omitempty" tf:"send_to_subscription_co_administrator,omitempty"` } +type FixedDateInitParameters struct { + + // Specifies the end date for the profile, formatted as an RFC3339 date string. + End *string `json:"end,omitempty" tf:"end,omitempty"` + + // Specifies the start date for the profile, formatted as an RFC3339 date string. + Start *string `json:"start,omitempty" tf:"start,omitempty"` + + // The Time Zone used for the hours field. A list of possible values can be found here. Defaults to UTC. + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` +} + type FixedDateObservation struct { // Specifies the end date for the profile, formatted as an RFC3339 date string. @@ -109,18 +157,51 @@ type FixedDateObservation struct { type FixedDateParameters struct { // Specifies the end date for the profile, formatted as an RFC3339 date string. - // +kubebuilder:validation:Required - End *string `json:"end" tf:"end,omitempty"` + // +kubebuilder:validation:Optional + End *string `json:"end,omitempty" tf:"end,omitempty"` // Specifies the start date for the profile, formatted as an RFC3339 date string. - // +kubebuilder:validation:Required - Start *string `json:"start" tf:"start,omitempty"` + // +kubebuilder:validation:Optional + Start *string `json:"start,omitempty" tf:"start,omitempty"` // The Time Zone used for the hours field. A list of possible values can be found here. Defaults to UTC. // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } +type MetricTriggerInitParameters struct { + + // One or more dimensions block as defined below. + Dimensions []DimensionsInitParameters `json:"dimensions,omitempty" tf:"dimensions,omitempty"` + + // Whether to enable metric divide by instance count. + DivideByInstanceCount *bool `json:"divideByInstanceCount,omitempty" tf:"divide_by_instance_count,omitempty"` + + // The name of the metric that defines what the rule monitors, such as Percentage CPU for Virtual Machine Scale Sets and CpuPercentage for App Service Plan. + MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` + + // The namespace of the metric that defines what the rule monitors, such as microsoft.compute/virtualmachinescalesets for Virtual Machine Scale Sets. + MetricNamespace *string `json:"metricNamespace,omitempty" tf:"metric_namespace,omitempty"` + + // Specifies the operator used to compare the metric data and threshold. Possible values are: Equals, NotEquals, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Specifies how the metrics from multiple instances are combined. Possible values are Average, Max, Min and Sum. + Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"` + + // Specifies the threshold of the metric that triggers the scale action. + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` + + // Specifies how the data that's collected should be combined over time. Possible values include Average, Count, Maximum, Minimum, Last and Total. + TimeAggregation *string `json:"timeAggregation,omitempty" tf:"time_aggregation,omitempty"` + + // Specifies the granularity of metrics that the rule monitors, which must be one of the pre-defined values returned from the metric definitions for the metric. This value must be between 1 minute and 12 hours an be formatted as an ISO 8601 string. + TimeGrain *string `json:"timeGrain,omitempty" tf:"time_grain,omitempty"` + + // Specifies the time range for which data is collected, which must be greater than the delay in metric collection (which varies from resource to resource). This value must be between 5 minutes and 12 hours and be formatted as an ISO 8601 string. + TimeWindow *string `json:"timeWindow,omitempty" tf:"time_window,omitempty"` +} + type MetricTriggerObservation struct { // One or more dimensions block as defined below. @@ -168,8 +249,8 @@ type MetricTriggerParameters struct { DivideByInstanceCount *bool `json:"divideByInstanceCount,omitempty" tf:"divide_by_instance_count,omitempty"` // The name of the metric that defines what the rule monitors, such as Percentage CPU for Virtual Machine Scale Sets and CpuPercentage for App Service Plan. - // +kubebuilder:validation:Required - MetricName *string `json:"metricName" tf:"metric_name,omitempty"` + // +kubebuilder:validation:Optional + MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` // The namespace of the metric that defines what the rule monitors, such as microsoft.compute/virtualmachinescalesets for Virtual Machine Scale Sets. // +kubebuilder:validation:Optional @@ -190,28 +271,49 @@ type MetricTriggerParameters struct { MetricResourceIDSelector *v1.Selector `json:"metricResourceIdSelector,omitempty" tf:"-"` // Specifies the operator used to compare the metric data and threshold. Possible values are: Equals, NotEquals, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies how the metrics from multiple instances are combined. Possible values are Average, Max, Min and Sum. - // +kubebuilder:validation:Required - Statistic *string `json:"statistic" tf:"statistic,omitempty"` + // +kubebuilder:validation:Optional + Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"` // Specifies the threshold of the metric that triggers the scale action. - // +kubebuilder:validation:Required - Threshold *float64 `json:"threshold" tf:"threshold,omitempty"` + // +kubebuilder:validation:Optional + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` // Specifies how the data that's collected should be combined over time. Possible values include Average, Count, Maximum, Minimum, Last and Total. - // +kubebuilder:validation:Required - TimeAggregation *string `json:"timeAggregation" tf:"time_aggregation,omitempty"` + // +kubebuilder:validation:Optional + TimeAggregation *string `json:"timeAggregation,omitempty" tf:"time_aggregation,omitempty"` // Specifies the granularity of metrics that the rule monitors, which must be one of the pre-defined values returned from the metric definitions for the metric. This value must be between 1 minute and 12 hours an be formatted as an ISO 8601 string. - // +kubebuilder:validation:Required - TimeGrain *string `json:"timeGrain" tf:"time_grain,omitempty"` + // +kubebuilder:validation:Optional + TimeGrain *string `json:"timeGrain,omitempty" tf:"time_grain,omitempty"` // Specifies the time range for which data is collected, which must be greater than the delay in metric collection (which varies from resource to resource). This value must be between 5 minutes and 12 hours and be formatted as an ISO 8601 string. - // +kubebuilder:validation:Required - TimeWindow *string `json:"timeWindow" tf:"time_window,omitempty"` + // +kubebuilder:validation:Optional + TimeWindow *string `json:"timeWindow,omitempty" tf:"time_window,omitempty"` +} + +type MonitorAutoscaleSettingInitParameters struct { + + // Specifies whether automatic scaling is enabled for the target resource. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Specifies the supported Azure location where the AutoScale Setting should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the AutoScale Setting. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a notification block as defined below. + Notification []NotificationInitParameters `json:"notification,omitempty" tf:"notification,omitempty"` + + // Specifies one or more (up to 20) profile blocks as defined below. + Profile []ProfileInitParameters `json:"profile,omitempty" tf:"profile,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type MonitorAutoscaleSettingObservation struct { @@ -298,6 +400,15 @@ type MonitorAutoscaleSettingParameters struct { TargetResourceIDSelector *v1.Selector `json:"targetResourceIdSelector,omitempty" tf:"-"` } +type NotificationInitParameters struct { + + // A email block as defined below. + Email []EmailInitParameters `json:"email,omitempty" tf:"email,omitempty"` + + // One or more webhook blocks as defined below. + Webhook []WebhookInitParameters `json:"webhook,omitempty" tf:"webhook,omitempty"` +} + type NotificationObservation struct { // A email block as defined below. @@ -318,6 +429,24 @@ type NotificationParameters struct { Webhook []WebhookParameters `json:"webhook,omitempty" tf:"webhook,omitempty"` } +type ProfileInitParameters struct { + + // A capacity block as defined below. + Capacity []CapacityInitParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // A fixed_date block as defined below. This cannot be specified if a recurrence block is specified. + FixedDate []FixedDateInitParameters `json:"fixedDate,omitempty" tf:"fixed_date,omitempty"` + + // Specifies the name of the profile. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A recurrence block as defined below. This cannot be specified if a fixed_date block is specified. + Recurrence []RecurrenceInitParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` + + // One or more (up to 10) rule blocks as defined below. + Rule []RuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + type ProfileObservation struct { // A capacity block as defined below. @@ -339,16 +468,16 @@ type ProfileObservation struct { type ProfileParameters struct { // A capacity block as defined below. - // +kubebuilder:validation:Required - Capacity []CapacityParameters `json:"capacity" tf:"capacity,omitempty"` + // +kubebuilder:validation:Optional + Capacity []CapacityParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` // A fixed_date block as defined below. This cannot be specified if a recurrence block is specified. // +kubebuilder:validation:Optional FixedDate []FixedDateParameters `json:"fixedDate,omitempty" tf:"fixed_date,omitempty"` // Specifies the name of the profile. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A recurrence block as defined below. This cannot be specified if a fixed_date block is specified. // +kubebuilder:validation:Optional @@ -359,6 +488,21 @@ type ProfileParameters struct { Rule []RuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } +type RecurrenceInitParameters struct { + + // A list of days that this profile takes effect on. Possible values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + Days []*string `json:"days,omitempty" tf:"days,omitempty"` + + // A list containing a single item, which specifies the Hour interval at which this recurrence should be triggered (in 24-hour time). Possible values are from 0 to 23. + Hours []*float64 `json:"hours,omitempty" tf:"hours,omitempty"` + + // A list containing a single item which specifies the Minute interval at which this recurrence should be triggered. + Minutes []*float64 `json:"minutes,omitempty" tf:"minutes,omitempty"` + + // The Time Zone used for the hours field. A list of possible values can be found here. Defaults to UTC. + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` +} + type RecurrenceObservation struct { // A list of days that this profile takes effect on. Possible values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. @@ -377,22 +521,31 @@ type RecurrenceObservation struct { type RecurrenceParameters struct { // A list of days that this profile takes effect on. Possible values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. - // +kubebuilder:validation:Required - Days []*string `json:"days" tf:"days,omitempty"` + // +kubebuilder:validation:Optional + Days []*string `json:"days,omitempty" tf:"days,omitempty"` // A list containing a single item, which specifies the Hour interval at which this recurrence should be triggered (in 24-hour time). Possible values are from 0 to 23. - // +kubebuilder:validation:Required - Hours []*float64 `json:"hours" tf:"hours,omitempty"` + // +kubebuilder:validation:Optional + Hours []*float64 `json:"hours,omitempty" tf:"hours,omitempty"` // A list containing a single item which specifies the Minute interval at which this recurrence should be triggered. - // +kubebuilder:validation:Required - Minutes []*float64 `json:"minutes" tf:"minutes,omitempty"` + // +kubebuilder:validation:Optional + Minutes []*float64 `json:"minutes,omitempty" tf:"minutes,omitempty"` // The Time Zone used for the hours field. A list of possible values can be found here. Defaults to UTC. // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } +type RuleInitParameters struct { + + // A metric_trigger block as defined below. + MetricTrigger []MetricTriggerInitParameters `json:"metricTrigger,omitempty" tf:"metric_trigger,omitempty"` + + // A scale_action block as defined below. + ScaleAction []ScaleActionInitParameters `json:"scaleAction,omitempty" tf:"scale_action,omitempty"` +} + type RuleObservation struct { // A metric_trigger block as defined below. @@ -405,12 +558,27 @@ type RuleObservation struct { type RuleParameters struct { // A metric_trigger block as defined below. - // +kubebuilder:validation:Required - MetricTrigger []MetricTriggerParameters `json:"metricTrigger" tf:"metric_trigger,omitempty"` + // +kubebuilder:validation:Optional + MetricTrigger []MetricTriggerParameters `json:"metricTrigger,omitempty" tf:"metric_trigger,omitempty"` // A scale_action block as defined below. - // +kubebuilder:validation:Required - ScaleAction []ScaleActionParameters `json:"scaleAction" tf:"scale_action,omitempty"` + // +kubebuilder:validation:Optional + ScaleAction []ScaleActionParameters `json:"scaleAction,omitempty" tf:"scale_action,omitempty"` +} + +type ScaleActionInitParameters struct { + + // The amount of time to wait since the last scaling action before this action occurs. Must be between 1 minute and 1 week and formatted as a ISO 8601 string. + Cooldown *string `json:"cooldown,omitempty" tf:"cooldown,omitempty"` + + // The scale direction. Possible values are Increase and Decrease. + Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` + + // The type of action that should occur. Possible values are ChangeCount, ExactCount, PercentChangeCount and ServiceAllowedNextValue. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The number of instances involved in the scaling action. + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } type ScaleActionObservation struct { @@ -431,20 +599,29 @@ type ScaleActionObservation struct { type ScaleActionParameters struct { // The amount of time to wait since the last scaling action before this action occurs. Must be between 1 minute and 1 week and formatted as a ISO 8601 string. - // +kubebuilder:validation:Required - Cooldown *string `json:"cooldown" tf:"cooldown,omitempty"` + // +kubebuilder:validation:Optional + Cooldown *string `json:"cooldown,omitempty" tf:"cooldown,omitempty"` // The scale direction. Possible values are Increase and Decrease. - // +kubebuilder:validation:Required - Direction *string `json:"direction" tf:"direction,omitempty"` + // +kubebuilder:validation:Optional + Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` // The type of action that should occur. Possible values are ChangeCount, ExactCount, PercentChangeCount and ServiceAllowedNextValue. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The number of instances involved in the scaling action. - // +kubebuilder:validation:Required - Value *float64 `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *float64 `json:"value,omitempty" tf:"value,omitempty"` +} + +type WebhookInitParameters struct { + + // A map of settings. + Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` + + // The HTTPS URI which should receive scale notifications. + ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` } type WebhookObservation struct { @@ -463,14 +640,26 @@ type WebhookParameters struct { Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` // The HTTPS URI which should receive scale notifications. - // +kubebuilder:validation:Required - ServiceURI *string `json:"serviceUri" tf:"service_uri,omitempty"` + // +kubebuilder:validation:Optional + ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` } // MonitorAutoscaleSettingSpec defines the desired state of MonitorAutoscaleSetting type MonitorAutoscaleSettingSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorAutoscaleSettingParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorAutoscaleSettingInitParameters `json:"initProvider,omitempty"` } // MonitorAutoscaleSettingStatus defines the observed state of MonitorAutoscaleSetting. @@ -491,9 +680,9 @@ type MonitorAutoscaleSettingStatus struct { type MonitorAutoscaleSetting struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.profile)",message="profile is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.profile) || has(self.initProvider.profile)",message="profile is a required parameter" Spec MonitorAutoscaleSettingSpec `json:"spec"` Status MonitorAutoscaleSettingStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitordatacollectionendpoint_types.go b/apis/insights/v1beta1/zz_monitordatacollectionendpoint_types.go index 9af6ed2f3..137d66c9c 100755 --- a/apis/insights/v1beta1/zz_monitordatacollectionendpoint_types.go +++ b/apis/insights/v1beta1/zz_monitordatacollectionendpoint_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MonitorDataCollectionEndpointInitParameters struct { + + // Specifies a description for the Data Collection Endpoint. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The kind of the Data Collection Endpoint. Possible values are Linux and Windows. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // The Azure Region where the Data Collection Endpoint should exist. Changing this forces a new Data Collection Endpoint to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether network access from public internet to the Data Collection Endpoint are allowed. Possible values are true and false. Default to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A mapping of tags which should be assigned to the Data Collection Endpoint. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type MonitorDataCollectionEndpointObservation struct { // The endpoint used for accessing configuration, e.g., https://mydce-abcd.eastus-1.control.monitor.azure.com. @@ -83,6 +101,18 @@ type MonitorDataCollectionEndpointParameters struct { type MonitorDataCollectionEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorDataCollectionEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorDataCollectionEndpointInitParameters `json:"initProvider,omitempty"` } // MonitorDataCollectionEndpointStatus defines the observed state of MonitorDataCollectionEndpoint. @@ -103,7 +133,7 @@ type MonitorDataCollectionEndpointStatus struct { type MonitorDataCollectionEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec MonitorDataCollectionEndpointSpec `json:"spec"` Status MonitorDataCollectionEndpointStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitordatacollectionrule_types.go b/apis/insights/v1beta1/zz_monitordatacollectionrule_types.go index 4025f6316..6bfc122ce 100755 --- a/apis/insights/v1beta1/zz_monitordatacollectionrule_types.go +++ b/apis/insights/v1beta1/zz_monitordatacollectionrule_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AzureMonitorMetricsInitParameters struct { + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type AzureMonitorMetricsObservation struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. @@ -22,8 +28,17 @@ type AzureMonitorMetricsObservation struct { type AzureMonitorMetricsParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type ColumnInitParameters struct { + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Data Collection Rule. Possible values are SystemAssigned and UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type ColumnObservation struct { @@ -38,12 +53,30 @@ type ColumnObservation struct { type ColumnParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Data Collection Rule. Possible values are SystemAssigned and UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type DataFlowInitParameters struct { + + // The built-in transform to transform stream data. + BuiltInTransform *string `json:"builtInTransform,omitempty" tf:"built_in_transform,omitempty"` + + // Specifies a list of destination names. A azure_monitor_metrics data source only allows for stream of kind Microsoft-InsightsMetrics. + Destinations []*string `json:"destinations,omitempty" tf:"destinations,omitempty"` + + // The output stream of the transform. Only required if the data flow changes data to a different stream. + OutputStream *string `json:"outputStream,omitempty" tf:"output_stream,omitempty"` + + // Specifies a list of streams. Possible values include but not limited to Microsoft-Event, Microsoft-InsightsMetrics, Microsoft-Perf, Microsoft-Syslog,and Microsoft-WindowsEvent. + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` + + // The KQL query to transform stream data. + TransformKql *string `json:"transformKql,omitempty" tf:"transform_kql,omitempty"` } type DataFlowObservation struct { @@ -71,22 +104,28 @@ type DataFlowParameters struct { BuiltInTransform *string `json:"builtInTransform,omitempty" tf:"built_in_transform,omitempty"` // Specifies a list of destination names. A azure_monitor_metrics data source only allows for stream of kind Microsoft-InsightsMetrics. - // +kubebuilder:validation:Required - Destinations []*string `json:"destinations" tf:"destinations,omitempty"` + // +kubebuilder:validation:Optional + Destinations []*string `json:"destinations,omitempty" tf:"destinations,omitempty"` // The output stream of the transform. Only required if the data flow changes data to a different stream. // +kubebuilder:validation:Optional OutputStream *string `json:"outputStream,omitempty" tf:"output_stream,omitempty"` // Specifies a list of streams. Possible values include but not limited to Microsoft-Event, Microsoft-InsightsMetrics, Microsoft-Perf, Microsoft-Syslog,and Microsoft-WindowsEvent. - // +kubebuilder:validation:Required - Streams []*string `json:"streams" tf:"streams,omitempty"` + // +kubebuilder:validation:Optional + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` // The KQL query to transform stream data. // +kubebuilder:validation:Optional TransformKql *string `json:"transformKql,omitempty" tf:"transform_kql,omitempty"` } +type DataImportInitParameters struct { + + // An event_hub_data_source block as defined below. + EventHubDataSource []EventHubDataSourceInitParameters `json:"eventHubDataSource,omitempty" tf:"event_hub_data_source,omitempty"` +} + type DataImportObservation struct { // An event_hub_data_source block as defined below. @@ -96,8 +135,41 @@ type DataImportObservation struct { type DataImportParameters struct { // An event_hub_data_source block as defined below. - // +kubebuilder:validation:Required - EventHubDataSource []EventHubDataSourceParameters `json:"eventHubDataSource" tf:"event_hub_data_source,omitempty"` + // +kubebuilder:validation:Optional + EventHubDataSource []EventHubDataSourceParameters `json:"eventHubDataSource,omitempty" tf:"event_hub_data_source,omitempty"` +} + +type DataSourcesInitParameters struct { + + // A data_import block as defined above. + DataImport []DataImportInitParameters `json:"dataImport,omitempty" tf:"data_import,omitempty"` + + // One or more extension blocks as defined below. + Extension []ExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"` + + // One or more iis_log blocks as defined below. + IisLog []IisLogInitParameters `json:"iisLog,omitempty" tf:"iis_log,omitempty"` + + // One or more log_file blocks as defined below. + LogFile []LogFileInitParameters `json:"logFile,omitempty" tf:"log_file,omitempty"` + + // One or more performance_counter blocks as defined below. + PerformanceCounter []PerformanceCounterInitParameters `json:"performanceCounter,omitempty" tf:"performance_counter,omitempty"` + + // One or more platform_telemetry blocks as defined below. + PlatformTelemetry []PlatformTelemetryInitParameters `json:"platformTelemetry,omitempty" tf:"platform_telemetry,omitempty"` + + // One or more prometheus_forwarder blocks as defined below. + PrometheusForwarder []PrometheusForwarderInitParameters `json:"prometheusForwarder,omitempty" tf:"prometheus_forwarder,omitempty"` + + // One or more syslog blocks as defined below. + Syslog []SyslogInitParameters `json:"syslog,omitempty" tf:"syslog,omitempty"` + + // One or more windows_event_log blocks as defined below. + WindowsEventLog []WindowsEventLogInitParameters `json:"windowsEventLog,omitempty" tf:"windows_event_log,omitempty"` + + // One or more windows_firewall_log blocks as defined below. + WindowsFirewallLog []WindowsFirewallLogInitParameters `json:"windowsFirewallLog,omitempty" tf:"windows_firewall_log,omitempty"` } type DataSourcesObservation struct { @@ -176,6 +248,33 @@ type DataSourcesParameters struct { WindowsFirewallLog []WindowsFirewallLogParameters `json:"windowsFirewallLog,omitempty" tf:"windows_firewall_log,omitempty"` } +type DestinationsInitParameters struct { + + // A azure_monitor_metrics block as defined above. + AzureMonitorMetrics []AzureMonitorMetricsInitParameters `json:"azureMonitorMetrics,omitempty" tf:"azure_monitor_metrics,omitempty"` + + // One or more event_hub blocks as defined below. + EventHub []EventHubInitParameters `json:"eventHub,omitempty" tf:"event_hub,omitempty"` + + // One or more event_hub blocks as defined below. + EventHubDirect []EventHubDirectInitParameters `json:"eventHubDirect,omitempty" tf:"event_hub_direct,omitempty"` + + // One or more log_analytics blocks as defined below. + LogAnalytics []LogAnalyticsInitParameters `json:"logAnalytics,omitempty" tf:"log_analytics,omitempty"` + + // One or more monitor_account blocks as defined below. + MonitorAccount []MonitorAccountInitParameters `json:"monitorAccount,omitempty" tf:"monitor_account,omitempty"` + + // One or more storage_blob blocks as defined below. + StorageBlob []StorageBlobInitParameters `json:"storageBlob,omitempty" tf:"storage_blob,omitempty"` + + // One or more storage_blob_direct blocks as defined below. + StorageBlobDirect []StorageBlobDirectInitParameters `json:"storageBlobDirect,omitempty" tf:"storage_blob_direct,omitempty"` + + // One or more storage_table_direct blocks as defined below. + StorageTableDirect []StorageTableDirectInitParameters `json:"storageTableDirect,omitempty" tf:"storage_table_direct,omitempty"` +} + type DestinationsObservation struct { // A azure_monitor_metrics block as defined above. @@ -238,6 +337,18 @@ type DestinationsParameters struct { StorageTableDirect []StorageTableDirectParameters `json:"storageTableDirect,omitempty" tf:"storage_table_direct,omitempty"` } +type EventHubDataSourceInitParameters struct { + + // The Event Hub consumer group name. + ConsumerGroup *string `json:"consumerGroup,omitempty" tf:"consumer_group,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The stream to collect from Event Hub. Possible value should be a custom stream name. + Stream *string `json:"stream,omitempty" tf:"stream,omitempty"` +} + type EventHubDataSourceObservation struct { // The Event Hub consumer group name. @@ -257,12 +368,21 @@ type EventHubDataSourceParameters struct { ConsumerGroup *string `json:"consumerGroup,omitempty" tf:"consumer_group,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The stream to collect from Event Hub. Possible value should be a custom stream name. - // +kubebuilder:validation:Required - Stream *string `json:"stream" tf:"stream,omitempty"` + // +kubebuilder:validation:Optional + Stream *string `json:"stream,omitempty" tf:"stream,omitempty"` +} + +type EventHubDirectInitParameters struct { + + // The resource ID of the Event Hub. + EventHubID *string `json:"eventHubId,omitempty" tf:"event_hub_id,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type EventHubDirectObservation struct { @@ -277,12 +397,18 @@ type EventHubDirectObservation struct { type EventHubDirectParameters struct { // The resource ID of the Event Hub. - // +kubebuilder:validation:Required - EventHubID *string `json:"eventHubId" tf:"event_hub_id,omitempty"` + // +kubebuilder:validation:Optional + EventHubID *string `json:"eventHubId,omitempty" tf:"event_hub_id,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type EventHubInitParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type EventHubObservation struct { @@ -311,8 +437,26 @@ type EventHubParameters struct { EventHubIDSelector *v1.Selector `json:"eventHubIdSelector,omitempty" tf:"-"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type ExtensionInitParameters struct { + + // A JSON String which specifies the extension setting. + ExtensionJSON *string `json:"extensionJson,omitempty" tf:"extension_json,omitempty"` + + // The name of the VM extension. + ExtensionName *string `json:"extensionName,omitempty" tf:"extension_name,omitempty"` + + // Specifies a list of data sources this extension needs data from. An item should be a name of a supported data source which produces only one stream. Supported data sources type: performance_counter, windows_event_log,and syslog. + InputDataSources []*string `json:"inputDataSources,omitempty" tf:"input_data_sources,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } type ExtensionObservation struct { @@ -340,20 +484,32 @@ type ExtensionParameters struct { ExtensionJSON *string `json:"extensionJson,omitempty" tf:"extension_json,omitempty"` // The name of the VM extension. - // +kubebuilder:validation:Required - ExtensionName *string `json:"extensionName" tf:"extension_name,omitempty"` + // +kubebuilder:validation:Optional + ExtensionName *string `json:"extensionName,omitempty" tf:"extension_name,omitempty"` // Specifies a list of data sources this extension needs data from. An item should be a name of a supported data source which produces only one stream. Supported data sources type: performance_counter, windows_event_log,and syslog. // +kubebuilder:validation:Optional InputDataSources []*string `json:"inputDataSources,omitempty" tf:"input_data_sources,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. - // +kubebuilder:validation:Required - Streams []*string `json:"streams" tf:"streams,omitempty"` + // +kubebuilder:validation:Optional + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` +} + +type IisLogInitParameters struct { + + // Specifies a list of absolute paths where the log files are located. + LogDirectories []*string `json:"logDirectories,omitempty" tf:"log_directories,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } type IisLogObservation struct { @@ -375,12 +531,21 @@ type IisLogParameters struct { LogDirectories []*string `json:"logDirectories,omitempty" tf:"log_directories,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. - // +kubebuilder:validation:Required - Streams []*string `json:"streams" tf:"streams,omitempty"` + // +kubebuilder:validation:Optional + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` +} + +type LabelIncludeFilterInitParameters struct { + + // The label of the filter. This label should be unique across all label_include_fileter block. Possible value is microsoft_metrics_include_label. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // The value of the filter. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type LabelIncludeFilterObservation struct { @@ -395,12 +560,18 @@ type LabelIncludeFilterObservation struct { type LabelIncludeFilterParameters struct { // The label of the filter. This label should be unique across all label_include_fileter block. Possible value is microsoft_metrics_include_label. - // +kubebuilder:validation:Required - Label *string `json:"label" tf:"label,omitempty"` + // +kubebuilder:validation:Optional + Label *string `json:"label,omitempty" tf:"label,omitempty"` // The value of the filter. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type LogAnalyticsInitParameters struct { + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type LogAnalyticsObservation struct { @@ -415,8 +586,8 @@ type LogAnalyticsObservation struct { type LogAnalyticsParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of a Log Analytic Workspace resource. // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/operationalinsights/v1beta1.Workspace @@ -433,6 +604,24 @@ type LogAnalyticsParameters struct { WorkspaceResourceIDSelector *v1.Selector `json:"workspaceResourceIdSelector,omitempty" tf:"-"` } +type LogFileInitParameters struct { + + // Specifies a list of file patterns where the log files are located. For example, C:\\JavaLogs\\*.log. + FilePatterns []*string `json:"filePatterns,omitempty" tf:"file_patterns,omitempty"` + + // The data format of the log files. possible value is text. + Format *string `json:"format,omitempty" tf:"format,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A settings block as defined below. + Settings []SettingsInitParameters `json:"settings,omitempty" tf:"settings,omitempty"` + + // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` +} + type LogFileObservation struct { // Specifies a list of file patterns where the log files are located. For example, C:\\JavaLogs\\*.log. @@ -454,24 +643,33 @@ type LogFileObservation struct { type LogFileParameters struct { // Specifies a list of file patterns where the log files are located. For example, C:\\JavaLogs\\*.log. - // +kubebuilder:validation:Required - FilePatterns []*string `json:"filePatterns" tf:"file_patterns,omitempty"` + // +kubebuilder:validation:Optional + FilePatterns []*string `json:"filePatterns,omitempty" tf:"file_patterns,omitempty"` // The data format of the log files. possible value is text. - // +kubebuilder:validation:Required - Format *string `json:"format" tf:"format,omitempty"` + // +kubebuilder:validation:Optional + Format *string `json:"format,omitempty" tf:"format,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A settings block as defined below. // +kubebuilder:validation:Optional Settings []SettingsParameters `json:"settings,omitempty" tf:"settings,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. - // +kubebuilder:validation:Required - Streams []*string `json:"streams" tf:"streams,omitempty"` + // +kubebuilder:validation:Optional + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` +} + +type MonitorAccountInitParameters struct { + + // The resource ID of the Monitor Account. + MonitorAccountID *string `json:"monitorAccountId,omitempty" tf:"monitor_account_id,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type MonitorAccountObservation struct { @@ -486,12 +684,21 @@ type MonitorAccountObservation struct { type MonitorAccountParameters struct { // The resource ID of the Monitor Account. - // +kubebuilder:validation:Required - MonitorAccountID *string `json:"monitorAccountId" tf:"monitor_account_id,omitempty"` + // +kubebuilder:validation:Optional + MonitorAccountID *string `json:"monitorAccountId,omitempty" tf:"monitor_account_id,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type MonitorDataCollectionRuleIdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Data Collection Rule. Currently, up to 1 identity is supported. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Data Collection Rule. Possible values are SystemAssigned and UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type MonitorDataCollectionRuleIdentityObservation struct { @@ -516,8 +723,38 @@ type MonitorDataCollectionRuleIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Data Collection Rule. Possible values are SystemAssigned and UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type MonitorDataCollectionRuleInitParameters struct { + + // One or more data_flow blocks as defined below. + DataFlow []DataFlowInitParameters `json:"dataFlow,omitempty" tf:"data_flow,omitempty"` + + // A data_sources block as defined below. This property is optional and can be omitted if the rule is meant to be used via direct calls to the provisioned endpoint. + DataSources []DataSourcesInitParameters `json:"dataSources,omitempty" tf:"data_sources,omitempty"` + + // The description of the Data Collection Rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A destinations block as defined below. + Destinations []DestinationsInitParameters `json:"destinations,omitempty" tf:"destinations,omitempty"` + + // An identity block as defined below. + Identity []MonitorDataCollectionRuleIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The kind of the Data Collection Rule. Possible values are Linux, Windows,and AgentDirectToStore. A rule of kind Linux does not allow for windows_event_log data sources. And a rule of kind Windows does not allow for syslog data sources. If kind is not specified, all kinds of data sources are allowed. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // The Azure Region where the Data Collection Rule should exist. Changing this forces a new Data Collection Rule to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A stream_declaration block as defined below. + StreamDeclaration []StreamDeclarationInitParameters `json:"streamDeclaration,omitempty" tf:"stream_declaration,omitempty"` + + // A mapping of tags which should be assigned to the Data Collection Rule. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type MonitorDataCollectionRuleObservation struct { @@ -628,6 +865,21 @@ type MonitorDataCollectionRuleParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type PerformanceCounterInitParameters struct { + + // Specifies a list of specifier names of the performance counters you want to collect. To get a list of performance counters on Windows, run the command typeperf. Please see this document for more information. + CounterSpecifiers []*string `json:"counterSpecifiers,omitempty" tf:"counter_specifiers,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The number of seconds between consecutive counter measurements (samples). The value should be integer between 1 and 300 inclusive. sampling_frequency_in_seconds must be equal to 60 seconds for counters collected with Microsoft-InsightsMetrics stream. + SamplingFrequencyInSeconds *float64 `json:"samplingFrequencyInSeconds,omitempty" tf:"sampling_frequency_in_seconds,omitempty"` + + // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` +} + type PerformanceCounterObservation struct { // Specifies a list of specifier names of the performance counters you want to collect. To get a list of performance counters on Windows, run the command typeperf. Please see this document for more information. @@ -646,20 +898,29 @@ type PerformanceCounterObservation struct { type PerformanceCounterParameters struct { // Specifies a list of specifier names of the performance counters you want to collect. To get a list of performance counters on Windows, run the command typeperf. Please see this document for more information. - // +kubebuilder:validation:Required - CounterSpecifiers []*string `json:"counterSpecifiers" tf:"counter_specifiers,omitempty"` + // +kubebuilder:validation:Optional + CounterSpecifiers []*string `json:"counterSpecifiers,omitempty" tf:"counter_specifiers,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The number of seconds between consecutive counter measurements (samples). The value should be integer between 1 and 300 inclusive. sampling_frequency_in_seconds must be equal to 60 seconds for counters collected with Microsoft-InsightsMetrics stream. - // +kubebuilder:validation:Required - SamplingFrequencyInSeconds *float64 `json:"samplingFrequencyInSeconds" tf:"sampling_frequency_in_seconds,omitempty"` + // +kubebuilder:validation:Optional + SamplingFrequencyInSeconds *float64 `json:"samplingFrequencyInSeconds,omitempty" tf:"sampling_frequency_in_seconds,omitempty"` + + // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + // +kubebuilder:validation:Optional + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` +} + +type PlatformTelemetryInitParameters struct { + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. - // +kubebuilder:validation:Required - Streams []*string `json:"streams" tf:"streams,omitempty"` + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } type PlatformTelemetryObservation struct { @@ -674,12 +935,24 @@ type PlatformTelemetryObservation struct { type PlatformTelemetryParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. - // +kubebuilder:validation:Required - Streams []*string `json:"streams" tf:"streams,omitempty"` + // +kubebuilder:validation:Optional + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` +} + +type PrometheusForwarderInitParameters struct { + + // One or more label_include_filter blocks as defined above. + LabelIncludeFilter []LabelIncludeFilterInitParameters `json:"labelIncludeFilter,omitempty" tf:"label_include_filter,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } type PrometheusForwarderObservation struct { @@ -701,12 +974,18 @@ type PrometheusForwarderParameters struct { LabelIncludeFilter []LabelIncludeFilterParameters `json:"labelIncludeFilter,omitempty" tf:"label_include_filter,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. - // +kubebuilder:validation:Required - Streams []*string `json:"streams" tf:"streams,omitempty"` + // +kubebuilder:validation:Optional + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` +} + +type SettingsInitParameters struct { + + // A text block as defined below. + Text []TextInitParameters `json:"text,omitempty" tf:"text,omitempty"` } type SettingsObservation struct { @@ -718,8 +997,20 @@ type SettingsObservation struct { type SettingsParameters struct { // A text block as defined below. - // +kubebuilder:validation:Required - Text []TextParameters `json:"text" tf:"text,omitempty"` + // +kubebuilder:validation:Optional + Text []TextParameters `json:"text,omitempty" tf:"text,omitempty"` +} + +type StorageBlobDirectInitParameters struct { + + // The Storage Container name. + ContainerName *string `json:"containerName,omitempty" tf:"container_name,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The resource ID of the Storage Account. + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` } type StorageBlobDirectObservation struct { @@ -737,16 +1028,22 @@ type StorageBlobDirectObservation struct { type StorageBlobDirectParameters struct { // The Storage Container name. - // +kubebuilder:validation:Required - ContainerName *string `json:"containerName" tf:"container_name,omitempty"` + // +kubebuilder:validation:Optional + ContainerName *string `json:"containerName,omitempty" tf:"container_name,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The resource ID of the Storage Account. - // +kubebuilder:validation:Required - StorageAccountID *string `json:"storageAccountId" tf:"storage_account_id,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` +} + +type StorageBlobInitParameters struct { + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type StorageBlobObservation struct { @@ -777,8 +1074,8 @@ type StorageBlobParameters struct { ContainerNameSelector *v1.Selector `json:"containerNameSelector,omitempty" tf:"-"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The resource ID of the Storage Account. // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/storage/v1beta1.Account @@ -795,6 +1092,18 @@ type StorageBlobParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` } +type StorageTableDirectInitParameters struct { + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The resource ID of the Storage Account. + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` + + // The Storage Table name. + TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` +} + type StorageTableDirectObservation struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. @@ -810,16 +1119,25 @@ type StorageTableDirectObservation struct { type StorageTableDirectParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The resource ID of the Storage Account. - // +kubebuilder:validation:Required - StorageAccountID *string `json:"storageAccountId" tf:"storage_account_id,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` // The Storage Table name. - // +kubebuilder:validation:Required - TableName *string `json:"tableName" tf:"table_name,omitempty"` + // +kubebuilder:validation:Optional + TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` +} + +type StreamDeclarationInitParameters struct { + + // One or more column blocks as defined above. + Column []ColumnInitParameters `json:"column,omitempty" tf:"column,omitempty"` + + // The name of the custom stream. This name should be unique across all stream_declaration blocks. + StreamName *string `json:"streamName,omitempty" tf:"stream_name,omitempty"` } type StreamDeclarationObservation struct { @@ -834,12 +1152,27 @@ type StreamDeclarationObservation struct { type StreamDeclarationParameters struct { // One or more column blocks as defined above. - // +kubebuilder:validation:Required - Column []ColumnParameters `json:"column" tf:"column,omitempty"` + // +kubebuilder:validation:Optional + Column []ColumnParameters `json:"column,omitempty" tf:"column,omitempty"` // The name of the custom stream. This name should be unique across all stream_declaration blocks. - // +kubebuilder:validation:Required - StreamName *string `json:"streamName" tf:"stream_name,omitempty"` + // +kubebuilder:validation:Optional + StreamName *string `json:"streamName,omitempty" tf:"stream_name,omitempty"` +} + +type SyslogInitParameters struct { + + // Specifies a list of facility names. Use a wildcard * to collect logs for all facility names. Possible values are auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, syslog, user, uucp, local0, local1, local2, local3, local4, local5, local6, local7,and *. + FacilityNames []*string `json:"facilityNames,omitempty" tf:"facility_names,omitempty"` + + // Specifies a list of log levels. Use a wildcard * to collect logs for all log levels. Possible values are Debug, Info, Notice, Warning, Error, Critical, Alert, Emergency,and *. + LogLevels []*string `json:"logLevels,omitempty" tf:"log_levels,omitempty"` + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } type SyslogObservation struct { @@ -860,22 +1193,28 @@ type SyslogObservation struct { type SyslogParameters struct { // Specifies a list of facility names. Use a wildcard * to collect logs for all facility names. Possible values are auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, syslog, user, uucp, local0, local1, local2, local3, local4, local5, local6, local7,and *. - // +kubebuilder:validation:Required - FacilityNames []*string `json:"facilityNames" tf:"facility_names,omitempty"` + // +kubebuilder:validation:Optional + FacilityNames []*string `json:"facilityNames,omitempty" tf:"facility_names,omitempty"` // Specifies a list of log levels. Use a wildcard * to collect logs for all log levels. Possible values are Debug, Info, Notice, Warning, Error, Critical, Alert, Emergency,and *. - // +kubebuilder:validation:Required - LogLevels []*string `json:"logLevels" tf:"log_levels,omitempty"` + // +kubebuilder:validation:Optional + LogLevels []*string `json:"logLevels,omitempty" tf:"log_levels,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } +type TextInitParameters struct { + + // The timestamp format of the text log files. Possible values are ISO 8601, YYYY-MM-DD HH:MM:SS, M/D/YYYY HH:MM:SS AM/PM, Mon DD, YYYY HH:MM:SS, yyMMdd HH:mm:ss, ddMMyy HH:mm:ss, MMM d hh:mm:ss, dd/MMM/yyyy:HH:mm:ss zzz,and yyyy-MM-ddTHH:mm:ssK. + RecordStartTimestampFormat *string `json:"recordStartTimestampFormat,omitempty" tf:"record_start_timestamp_format,omitempty"` +} + type TextObservation struct { // The timestamp format of the text log files. Possible values are ISO 8601, YYYY-MM-DD HH:MM:SS, M/D/YYYY HH:MM:SS AM/PM, Mon DD, YYYY HH:MM:SS, yyMMdd HH:mm:ss, ddMMyy HH:mm:ss, MMM d hh:mm:ss, dd/MMM/yyyy:HH:mm:ss zzz,and yyyy-MM-ddTHH:mm:ssK. @@ -885,8 +1224,20 @@ type TextObservation struct { type TextParameters struct { // The timestamp format of the text log files. Possible values are ISO 8601, YYYY-MM-DD HH:MM:SS, M/D/YYYY HH:MM:SS AM/PM, Mon DD, YYYY HH:MM:SS, yyMMdd HH:mm:ss, ddMMyy HH:mm:ss, MMM d hh:mm:ss, dd/MMM/yyyy:HH:mm:ss zzz,and yyyy-MM-ddTHH:mm:ssK. - // +kubebuilder:validation:Required - RecordStartTimestampFormat *string `json:"recordStartTimestampFormat" tf:"record_start_timestamp_format,omitempty"` + // +kubebuilder:validation:Optional + RecordStartTimestampFormat *string `json:"recordStartTimestampFormat,omitempty" tf:"record_start_timestamp_format,omitempty"` +} + +type WindowsEventLogInitParameters struct { + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` + + // Specifies a list of Windows Event Log queries in XPath expression. Please see this document for more information. + XPathQueries []*string `json:"xPathQueries,omitempty" tf:"x_path_queries,omitempty"` } type WindowsEventLogObservation struct { @@ -904,16 +1255,25 @@ type WindowsEventLogObservation struct { type WindowsEventLogParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. - // +kubebuilder:validation:Required - Streams []*string `json:"streams" tf:"streams,omitempty"` + // +kubebuilder:validation:Optional + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` // Specifies a list of Windows Event Log queries in XPath expression. Please see this document for more information. - // +kubebuilder:validation:Required - XPathQueries []*string `json:"xPathQueries" tf:"x_path_queries,omitempty"` + // +kubebuilder:validation:Optional + XPathQueries []*string `json:"xPathQueries,omitempty" tf:"x_path_queries,omitempty"` +} + +type WindowsFirewallLogInitParameters struct { + + // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } type WindowsFirewallLogObservation struct { @@ -928,18 +1288,30 @@ type WindowsFirewallLogObservation struct { type WindowsFirewallLogParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. - // +kubebuilder:validation:Required - Streams []*string `json:"streams" tf:"streams,omitempty"` + // +kubebuilder:validation:Optional + Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } // MonitorDataCollectionRuleSpec defines the desired state of MonitorDataCollectionRule type MonitorDataCollectionRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorDataCollectionRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorDataCollectionRuleInitParameters `json:"initProvider,omitempty"` } // MonitorDataCollectionRuleStatus defines the observed state of MonitorDataCollectionRule. @@ -960,9 +1332,9 @@ type MonitorDataCollectionRuleStatus struct { type MonitorDataCollectionRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dataFlow)",message="dataFlow is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.destinations)",message="destinations is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dataFlow) || has(self.initProvider.dataFlow)",message="dataFlow is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.destinations) || has(self.initProvider.destinations)",message="destinations is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec MonitorDataCollectionRuleSpec `json:"spec"` Status MonitorDataCollectionRuleStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitordatacollectionruleassociation_types.go b/apis/insights/v1beta1/zz_monitordatacollectionruleassociation_types.go index e334d7c1e..a60466ceb 100755 --- a/apis/insights/v1beta1/zz_monitordatacollectionruleassociation_types.go +++ b/apis/insights/v1beta1/zz_monitordatacollectionruleassociation_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MonitorDataCollectionRuleAssociationInitParameters struct { + + // The description of the Data Collection Rule Association. + Description *string `json:"description,omitempty" tf:"description,omitempty"` +} + type MonitorDataCollectionRuleAssociationObservation struct { // The ID of the Data Collection Endpoint which will be associated to the target resource. @@ -84,6 +90,18 @@ type MonitorDataCollectionRuleAssociationParameters struct { type MonitorDataCollectionRuleAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorDataCollectionRuleAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorDataCollectionRuleAssociationInitParameters `json:"initProvider,omitempty"` } // MonitorDataCollectionRuleAssociationStatus defines the observed state of MonitorDataCollectionRuleAssociation. diff --git a/apis/insights/v1beta1/zz_monitormetricalert_types.go b/apis/insights/v1beta1/zz_monitormetricalert_types.go index 4cd40080b..67a6364f3 100755 --- a/apis/insights/v1beta1/zz_monitormetricalert_types.go +++ b/apis/insights/v1beta1/zz_monitormetricalert_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInsightsWebTestLocationAvailabilityCriteriaInitParameters struct { + + // The ID of the Application Insights Resource. + ComponentID *string `json:"componentId,omitempty" tf:"component_id,omitempty"` + + // The number of failed locations. + FailedLocationCount *float64 `json:"failedLocationCount,omitempty" tf:"failed_location_count,omitempty"` + + // The ID of the Application Insights Web Test. + WebTestID *string `json:"webTestId,omitempty" tf:"web_test_id,omitempty"` +} + type ApplicationInsightsWebTestLocationAvailabilityCriteriaObservation struct { // The ID of the Application Insights Resource. @@ -28,16 +40,28 @@ type ApplicationInsightsWebTestLocationAvailabilityCriteriaObservation struct { type ApplicationInsightsWebTestLocationAvailabilityCriteriaParameters struct { // The ID of the Application Insights Resource. - // +kubebuilder:validation:Required - ComponentID *string `json:"componentId" tf:"component_id,omitempty"` + // +kubebuilder:validation:Optional + ComponentID *string `json:"componentId,omitempty" tf:"component_id,omitempty"` // The number of failed locations. - // +kubebuilder:validation:Required - FailedLocationCount *float64 `json:"failedLocationCount" tf:"failed_location_count,omitempty"` + // +kubebuilder:validation:Optional + FailedLocationCount *float64 `json:"failedLocationCount,omitempty" tf:"failed_location_count,omitempty"` // The ID of the Application Insights Web Test. - // +kubebuilder:validation:Required - WebTestID *string `json:"webTestId" tf:"web_test_id,omitempty"` + // +kubebuilder:validation:Optional + WebTestID *string `json:"webTestId,omitempty" tf:"web_test_id,omitempty"` +} + +type DimensionInitParameters struct { + + // The name of the Metric Alert. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The criteria operator. Possible values are LessThan, GreaterThan and GreaterOrLessThan. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // The list of dimension values. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type DimensionObservation struct { @@ -55,16 +79,28 @@ type DimensionObservation struct { type DimensionParameters struct { // The name of the Metric Alert. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The criteria operator. Possible values are LessThan, GreaterThan and GreaterOrLessThan. + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // The list of dimension values. + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type DynamicCriteriaDimensionInitParameters struct { + + // The name of the Metric Alert. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The criteria operator. Possible values are LessThan, GreaterThan and GreaterOrLessThan. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // The list of dimension values. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + Values []*string `json:"values,omitempty" tf:"values,omitempty"` } type DynamicCriteriaDimensionObservation struct { @@ -82,16 +118,49 @@ type DynamicCriteriaDimensionObservation struct { type DynamicCriteriaDimensionParameters struct { // The name of the Metric Alert. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The criteria operator. Possible values are LessThan, GreaterThan and GreaterOrLessThan. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // The list of dimension values. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type DynamicCriteriaInitParameters struct { + + // The statistic that runs over the metric values. Possible values are Average, Count, Minimum, Maximum and Total. + Aggregation *string `json:"aggregation,omitempty" tf:"aggregation,omitempty"` + + // The extent of deviation required to trigger an alert. Possible values are Low, Medium and High. + AlertSensitivity *string `json:"alertSensitivity,omitempty" tf:"alert_sensitivity,omitempty"` + + // One or more dimension blocks as defined below. + Dimension []DynamicCriteriaDimensionInitParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` + + // The number of violations to trigger an alert. Should be smaller or equal to evaluation_total_count. Defaults to 4. + EvaluationFailureCount *float64 `json:"evaluationFailureCount,omitempty" tf:"evaluation_failure_count,omitempty"` + + // The number of aggregated lookback points. The lookback time window is calculated based on the aggregation granularity (window_size) and the selected number of aggregated points. Defaults to 4. + EvaluationTotalCount *float64 `json:"evaluationTotalCount,omitempty" tf:"evaluation_total_count,omitempty"` + + // The ISO8601 date from which to start learning the metric historical data and calculate the dynamic thresholds. + IgnoreDataBefore *string `json:"ignoreDataBefore,omitempty" tf:"ignore_data_before,omitempty"` + + // One of the metric names to be monitored. + MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` + + // One of the metric namespaces to be monitored. + MetricNamespace *string `json:"metricNamespace,omitempty" tf:"metric_namespace,omitempty"` + + // The criteria operator. Possible values are LessThan, GreaterThan and GreaterOrLessThan. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Skip the metric validation to allow creating an alert rule on a custom metric that isn't yet emitted? + SkipMetricValidation *bool `json:"skipMetricValidation,omitempty" tf:"skip_metric_validation,omitempty"` } type DynamicCriteriaObservation struct { @@ -130,12 +199,12 @@ type DynamicCriteriaObservation struct { type DynamicCriteriaParameters struct { // The statistic that runs over the metric values. Possible values are Average, Count, Minimum, Maximum and Total. - // +kubebuilder:validation:Required - Aggregation *string `json:"aggregation" tf:"aggregation,omitempty"` + // +kubebuilder:validation:Optional + Aggregation *string `json:"aggregation,omitempty" tf:"aggregation,omitempty"` // The extent of deviation required to trigger an alert. Possible values are Low, Medium and High. - // +kubebuilder:validation:Required - AlertSensitivity *string `json:"alertSensitivity" tf:"alert_sensitivity,omitempty"` + // +kubebuilder:validation:Optional + AlertSensitivity *string `json:"alertSensitivity,omitempty" tf:"alert_sensitivity,omitempty"` // One or more dimension blocks as defined below. // +kubebuilder:validation:Optional @@ -154,22 +223,28 @@ type DynamicCriteriaParameters struct { IgnoreDataBefore *string `json:"ignoreDataBefore,omitempty" tf:"ignore_data_before,omitempty"` // One of the metric names to be monitored. - // +kubebuilder:validation:Required - MetricName *string `json:"metricName" tf:"metric_name,omitempty"` + // +kubebuilder:validation:Optional + MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` // One of the metric namespaces to be monitored. - // +kubebuilder:validation:Required - MetricNamespace *string `json:"metricNamespace" tf:"metric_namespace,omitempty"` + // +kubebuilder:validation:Optional + MetricNamespace *string `json:"metricNamespace,omitempty" tf:"metric_namespace,omitempty"` // The criteria operator. Possible values are LessThan, GreaterThan and GreaterOrLessThan. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Skip the metric validation to allow creating an alert rule on a custom metric that isn't yet emitted? // +kubebuilder:validation:Optional SkipMetricValidation *bool `json:"skipMetricValidation,omitempty" tf:"skip_metric_validation,omitempty"` } +type MonitorMetricAlertActionInitParameters struct { + + // The map of custom string properties to include with the post operation. These data are appended to the webhook payload. + WebhookProperties map[string]*string `json:"webhookProperties,omitempty" tf:"webhook_properties,omitempty"` +} + type MonitorMetricAlertActionObservation struct { // The ID of the Action Group can be sourced from the @@ -200,6 +275,30 @@ type MonitorMetricAlertActionParameters struct { WebhookProperties map[string]*string `json:"webhookProperties,omitempty" tf:"webhook_properties,omitempty"` } +type MonitorMetricAlertCriteriaInitParameters struct { + + // The statistic that runs over the metric values. Possible values are Average, Count, Minimum, Maximum and Total. + Aggregation *string `json:"aggregation,omitempty" tf:"aggregation,omitempty"` + + // One or more dimension blocks as defined below. + Dimension []DimensionInitParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` + + // One of the metric names to be monitored. + MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` + + // One of the metric namespaces to be monitored. + MetricNamespace *string `json:"metricNamespace,omitempty" tf:"metric_namespace,omitempty"` + + // The criteria operator. Possible values are Equals, GreaterThan, GreaterThanOrEqual, LessThan and LessThanOrEqual. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Skip the metric validation to allow creating an alert rule on a custom metric that isn't yet emitted? Defaults to false. + SkipMetricValidation *bool `json:"skipMetricValidation,omitempty" tf:"skip_metric_validation,omitempty"` + + // The criteria threshold value that activates the alert. + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` +} + type MonitorMetricAlertCriteriaObservation struct { // The statistic that runs over the metric values. Possible values are Average, Count, Minimum, Maximum and Total. @@ -227,32 +326,76 @@ type MonitorMetricAlertCriteriaObservation struct { type MonitorMetricAlertCriteriaParameters struct { // The statistic that runs over the metric values. Possible values are Average, Count, Minimum, Maximum and Total. - // +kubebuilder:validation:Required - Aggregation *string `json:"aggregation" tf:"aggregation,omitempty"` + // +kubebuilder:validation:Optional + Aggregation *string `json:"aggregation,omitempty" tf:"aggregation,omitempty"` // One or more dimension blocks as defined below. // +kubebuilder:validation:Optional Dimension []DimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // One of the metric names to be monitored. - // +kubebuilder:validation:Required - MetricName *string `json:"metricName" tf:"metric_name,omitempty"` + // +kubebuilder:validation:Optional + MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` // One of the metric namespaces to be monitored. - // +kubebuilder:validation:Required - MetricNamespace *string `json:"metricNamespace" tf:"metric_namespace,omitempty"` + // +kubebuilder:validation:Optional + MetricNamespace *string `json:"metricNamespace,omitempty" tf:"metric_namespace,omitempty"` // The criteria operator. Possible values are Equals, GreaterThan, GreaterThanOrEqual, LessThan and LessThanOrEqual. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Skip the metric validation to allow creating an alert rule on a custom metric that isn't yet emitted? Defaults to false. // +kubebuilder:validation:Optional SkipMetricValidation *bool `json:"skipMetricValidation,omitempty" tf:"skip_metric_validation,omitempty"` // The criteria threshold value that activates the alert. - // +kubebuilder:validation:Required - Threshold *float64 `json:"threshold" tf:"threshold,omitempty"` + // +kubebuilder:validation:Optional + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` +} + +type MonitorMetricAlertInitParameters struct { + + // One or more action blocks as defined below. + Action []MonitorMetricAlertActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // A application_insights_web_test_location_availability_criteria block as defined below. + ApplicationInsightsWebTestLocationAvailabilityCriteria []ApplicationInsightsWebTestLocationAvailabilityCriteriaInitParameters `json:"applicationInsightsWebTestLocationAvailabilityCriteria,omitempty" tf:"application_insights_web_test_location_availability_criteria,omitempty"` + + // Should the alerts in this Metric Alert be auto resolved? Defaults to true. + AutoMitigate *bool `json:"autoMitigate,omitempty" tf:"auto_mitigate,omitempty"` + + // One or more (static) criteria blocks as defined below. + Criteria []MonitorMetricAlertCriteriaInitParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` + + // The description of this Metric Alert. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A dynamic_criteria block as defined below. + DynamicCriteria []DynamicCriteriaInitParameters `json:"dynamicCriteria,omitempty" tf:"dynamic_criteria,omitempty"` + + // Should this Metric Alert be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The evaluation frequency of this Metric Alert, represented in ISO 8601 duration format. Possible values are PT1M, PT5M, PT15M, PT30M and PT1H. Defaults to PT1M. + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // The severity of this Metric Alert. Possible values are 0, 1, 2, 3 and 4. Defaults to 3. + Severity *float64 `json:"severity,omitempty" tf:"severity,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The location of the target resource. + // The location of the target pluginsdk. Required when using subscription, resource group scope or multiple scopes. + TargetResourceLocation *string `json:"targetResourceLocation,omitempty" tf:"target_resource_location,omitempty"` + + // The resource type (e.g. Microsoft.Compute/virtualMachines) of the target resource. + // The resource type (e.g. Microsoft.Compute/virtualMachines) of the target pluginsdk. Required when using subscription, resource group scope or multiple scopes. + TargetResourceType *string `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` + + // The period of time that is used to monitor alert activity, represented in ISO 8601 duration format. This value must be greater than frequency. Possible values are PT1M, PT5M, PT15M, PT30M, PT1H, PT6H, PT12H and P1D. Defaults to PT5M. + WindowSize *string `json:"windowSize,omitempty" tf:"window_size,omitempty"` } type MonitorMetricAlertObservation struct { @@ -396,6 +539,18 @@ type MonitorMetricAlertParameters struct { type MonitorMetricAlertSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorMetricAlertParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorMetricAlertInitParameters `json:"initProvider,omitempty"` } // MonitorMetricAlertStatus defines the observed state of MonitorMetricAlert. diff --git a/apis/insights/v1beta1/zz_monitorprivatelinkscope_types.go b/apis/insights/v1beta1/zz_monitorprivatelinkscope_types.go index 92f4744ac..88ab13d94 100755 --- a/apis/insights/v1beta1/zz_monitorprivatelinkscope_types.go +++ b/apis/insights/v1beta1/zz_monitorprivatelinkscope_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MonitorPrivateLinkScopeInitParameters struct { + + // A mapping of tags which should be assigned to the Azure Monitor Private Link Scope. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type MonitorPrivateLinkScopeObservation struct { // The ID of the Azure Monitor Private Link Scope. @@ -49,6 +55,18 @@ type MonitorPrivateLinkScopeParameters struct { type MonitorPrivateLinkScopeSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorPrivateLinkScopeParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorPrivateLinkScopeInitParameters `json:"initProvider,omitempty"` } // MonitorPrivateLinkScopeStatus defines the observed state of MonitorPrivateLinkScope. diff --git a/apis/insights/v1beta1/zz_monitorprivatelinkscopedservice_types.go b/apis/insights/v1beta1/zz_monitorprivatelinkscopedservice_types.go index 8f0a10990..969072145 100755 --- a/apis/insights/v1beta1/zz_monitorprivatelinkscopedservice_types.go +++ b/apis/insights/v1beta1/zz_monitorprivatelinkscopedservice_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MonitorPrivateLinkScopedServiceInitParameters struct { +} + type MonitorPrivateLinkScopedServiceObservation struct { // The ID of the Azure Monitor Private Link Scoped Service. @@ -75,6 +78,18 @@ type MonitorPrivateLinkScopedServiceParameters struct { type MonitorPrivateLinkScopedServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorPrivateLinkScopedServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorPrivateLinkScopedServiceInitParameters `json:"initProvider,omitempty"` } // MonitorPrivateLinkScopedServiceStatus defines the observed state of MonitorPrivateLinkScopedService. diff --git a/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalert_types.go b/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalert_types.go index f7102c35d..159e84edc 100755 --- a/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalert_types.go +++ b/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalert_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MonitorScheduledQueryRulesAlertActionInitParameters struct { + + // Custom payload to be sent for all webhook payloads in alerting action. + CustomWebhookPayload *string `json:"customWebhookPayload,omitempty" tf:"custom_webhook_payload,omitempty"` + + // Custom subject override for all email ids in Azure action group. + EmailSubject *string `json:"emailSubject,omitempty" tf:"email_subject,omitempty"` +} + type MonitorScheduledQueryRulesAlertActionObservation struct { // List of action group reference resource IDs. @@ -50,6 +59,55 @@ type MonitorScheduledQueryRulesAlertActionParameters struct { EmailSubject *string `json:"emailSubject,omitempty" tf:"email_subject,omitempty"` } +type MonitorScheduledQueryRulesAlertInitParameters struct { + + // An action block as defined below. + Action []MonitorScheduledQueryRulesAlertActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // List of Resource IDs referred into query. + AuthorizedResourceIds []*string `json:"authorizedResourceIds,omitempty" tf:"authorized_resource_ids,omitempty"` + + // Should the alerts in this Metric Alert be auto resolved? Defaults to false. + // -> NOTE auto_mitigation_enabled and throttling are mutually exclusive and cannot both be set. + AutoMitigationEnabled *bool `json:"autoMitigationEnabled,omitempty" tf:"auto_mitigation_enabled,omitempty"` + + // The description of the scheduled query rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Whether this scheduled query rule is enabled. Default is true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Frequency (in minutes) at which rule condition should be evaluated. Values must be between 5 and 1440 (inclusive). + Frequency *float64 `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // Specifies the Azure Region where the resource should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the scheduled query rule. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Log search query. + Query *string `json:"query,omitempty" tf:"query,omitempty"` + + // The type of query results. Possible values are ResultCount and Number. Default is ResultCount. If set to Number, query must include an AggregatedValue column of a numeric type, for example, Heartbeat | summarize AggregatedValue = count() by bin(TimeGenerated, 5m). + QueryType *string `json:"queryType,omitempty" tf:"query_type,omitempty"` + + // Severity of the alert. Possible values include: 0, 1, 2, 3, or 4. + Severity *float64 `json:"severity,omitempty" tf:"severity,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Time (in minutes) for which Alerts should be throttled or suppressed. Values must be between 0 and 10000 (inclusive). + Throttling *float64 `json:"throttling,omitempty" tf:"throttling,omitempty"` + + // Time window for which data needs to be fetched for query (must be greater than or equal to frequency). Values must be between 5 and 2880 (inclusive). + TimeWindow *float64 `json:"timeWindow,omitempty" tf:"time_window,omitempty"` + + // A trigger block as defined below. + Trigger []TriggerInitParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` +} + type MonitorScheduledQueryRulesAlertObservation struct { // An action block as defined below. @@ -199,6 +257,33 @@ type MonitorScheduledQueryRulesAlertParameters struct { Trigger []TriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } +type TriggerInitParameters struct { + + // A metric_trigger block as defined above. Trigger condition for metric query rule. + MetricTrigger []TriggerMetricTriggerInitParameters `json:"metricTrigger,omitempty" tf:"metric_trigger,omitempty"` + + // Evaluation operation for rule - 'GreaterThan', GreaterThanOrEqual', 'LessThan', or 'LessThanOrEqual'. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Result or count threshold based on which rule should be triggered. Values must be between 0 and 10000 inclusive. + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` +} + +type TriggerMetricTriggerInitParameters struct { + + // Evaluation of metric on a particular column. + MetricColumn *string `json:"metricColumn,omitempty" tf:"metric_column,omitempty"` + + // Metric Trigger Type - 'Consecutive' or 'Total'. + MetricTriggerType *string `json:"metricTriggerType,omitempty" tf:"metric_trigger_type,omitempty"` + + // Evaluation operation for rule - 'GreaterThan', GreaterThanOrEqual', 'LessThan', or 'LessThanOrEqual'. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Result or count threshold based on which rule should be triggered. Values must be between 0 and 10000 inclusive. + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` +} + type TriggerMetricTriggerObservation struct { // Evaluation of metric on a particular column. @@ -221,16 +306,16 @@ type TriggerMetricTriggerParameters struct { MetricColumn *string `json:"metricColumn,omitempty" tf:"metric_column,omitempty"` // Metric Trigger Type - 'Consecutive' or 'Total'. - // +kubebuilder:validation:Required - MetricTriggerType *string `json:"metricTriggerType" tf:"metric_trigger_type,omitempty"` + // +kubebuilder:validation:Optional + MetricTriggerType *string `json:"metricTriggerType,omitempty" tf:"metric_trigger_type,omitempty"` // Evaluation operation for rule - 'GreaterThan', GreaterThanOrEqual', 'LessThan', or 'LessThanOrEqual'. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Result or count threshold based on which rule should be triggered. Values must be between 0 and 10000 inclusive. - // +kubebuilder:validation:Required - Threshold *float64 `json:"threshold" tf:"threshold,omitempty"` + // +kubebuilder:validation:Optional + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` } type TriggerObservation struct { @@ -252,18 +337,30 @@ type TriggerParameters struct { MetricTrigger []TriggerMetricTriggerParameters `json:"metricTrigger,omitempty" tf:"metric_trigger,omitempty"` // Evaluation operation for rule - 'GreaterThan', GreaterThanOrEqual', 'LessThan', or 'LessThanOrEqual'. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Result or count threshold based on which rule should be triggered. Values must be between 0 and 10000 inclusive. - // +kubebuilder:validation:Required - Threshold *float64 `json:"threshold" tf:"threshold,omitempty"` + // +kubebuilder:validation:Optional + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` } // MonitorScheduledQueryRulesAlertSpec defines the desired state of MonitorScheduledQueryRulesAlert type MonitorScheduledQueryRulesAlertSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorScheduledQueryRulesAlertParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorScheduledQueryRulesAlertInitParameters `json:"initProvider,omitempty"` } // MonitorScheduledQueryRulesAlertStatus defines the observed state of MonitorScheduledQueryRulesAlert. @@ -284,13 +381,13 @@ type MonitorScheduledQueryRulesAlertStatus struct { type MonitorScheduledQueryRulesAlert struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.action)",message="action is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frequency)",message="frequency is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.query)",message="query is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timeWindow)",message="timeWindow is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.trigger)",message="trigger is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.action) || has(self.initProvider.action)",message="action is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frequency) || has(self.initProvider.frequency)",message="frequency is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.query) || has(self.initProvider.query)",message="query is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.timeWindow) || has(self.initProvider.timeWindow)",message="timeWindow is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.trigger) || has(self.initProvider.trigger)",message="trigger is a required parameter" Spec MonitorScheduledQueryRulesAlertSpec `json:"spec"` Status MonitorScheduledQueryRulesAlertStatus `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalertv2_types.go b/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalertv2_types.go index 16bad72fe..320ff4c85 100755 --- a/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalertv2_types.go +++ b/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalertv2_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CriteriaDimensionInitParameters struct { + + // Specifies the name which should be used for this Monitor Scheduled Query Rule. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Operator for dimension values. Possible values are Exclude,and Include. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // List of dimension values. Use a wildcard * to collect all. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type CriteriaDimensionObservation struct { // Specifies the name which should be used for this Monitor Scheduled Query Rule. Changing this forces a new resource to be created. @@ -28,16 +40,25 @@ type CriteriaDimensionObservation struct { type CriteriaDimensionParameters struct { // Specifies the name which should be used for this Monitor Scheduled Query Rule. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Operator for dimension values. Possible values are Exclude,and Include. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // List of dimension values. Use a wildcard * to collect all. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type FailingPeriodsInitParameters struct { + + // Specifies the number of violations to trigger an alert. Should be smaller or equal to number_of_evaluation_periods. Possible value is integer between 1 and 6. + MinimumFailingPeriodsToTriggerAlert *float64 `json:"minimumFailingPeriodsToTriggerAlert,omitempty" tf:"minimum_failing_periods_to_trigger_alert,omitempty"` + + // Specifies the number of aggregated look-back points. The look-back time window is calculated based on the aggregation granularity window_duration and the selected number of aggregated points. Possible value is integer between 1 and 6. + NumberOfEvaluationPeriods *float64 `json:"numberOfEvaluationPeriods,omitempty" tf:"number_of_evaluation_periods,omitempty"` } type FailingPeriodsObservation struct { @@ -52,12 +73,21 @@ type FailingPeriodsObservation struct { type FailingPeriodsParameters struct { // Specifies the number of violations to trigger an alert. Should be smaller or equal to number_of_evaluation_periods. Possible value is integer between 1 and 6. - // +kubebuilder:validation:Required - MinimumFailingPeriodsToTriggerAlert *float64 `json:"minimumFailingPeriodsToTriggerAlert" tf:"minimum_failing_periods_to_trigger_alert,omitempty"` + // +kubebuilder:validation:Optional + MinimumFailingPeriodsToTriggerAlert *float64 `json:"minimumFailingPeriodsToTriggerAlert,omitempty" tf:"minimum_failing_periods_to_trigger_alert,omitempty"` // Specifies the number of aggregated look-back points. The look-back time window is calculated based on the aggregation granularity window_duration and the selected number of aggregated points. Possible value is integer between 1 and 6. - // +kubebuilder:validation:Required - NumberOfEvaluationPeriods *float64 `json:"numberOfEvaluationPeriods" tf:"number_of_evaluation_periods,omitempty"` + // +kubebuilder:validation:Optional + NumberOfEvaluationPeriods *float64 `json:"numberOfEvaluationPeriods,omitempty" tf:"number_of_evaluation_periods,omitempty"` +} + +type MonitorScheduledQueryRulesAlertV2ActionInitParameters struct { + + // List of Action Group resource IDs to invoke when the alert fires. + ActionGroups []*string `json:"actionGroups,omitempty" tf:"action_groups,omitempty"` + + // Specifies the properties of an alert payload. + CustomProperties map[string]*string `json:"customProperties,omitempty" tf:"custom_properties,omitempty"` } type MonitorScheduledQueryRulesAlertV2ActionObservation struct { @@ -80,6 +110,33 @@ type MonitorScheduledQueryRulesAlertV2ActionParameters struct { CustomProperties map[string]*string `json:"customProperties,omitempty" tf:"custom_properties,omitempty"` } +type MonitorScheduledQueryRulesAlertV2CriteriaInitParameters struct { + + // A dimension block as defined below. + Dimension []CriteriaDimensionInitParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` + + // A failing_periods block as defined below. + FailingPeriods []FailingPeriodsInitParameters `json:"failingPeriods,omitempty" tf:"failing_periods,omitempty"` + + // Specifies the column containing the metric measure number. + MetricMeasureColumn *string `json:"metricMeasureColumn,omitempty" tf:"metric_measure_column,omitempty"` + + // Specifies the criteria operator. Possible values are Equal, GreaterThan, GreaterThanOrEqual, LessThan,and LessThanOrEqual. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // The query to run on logs. The results returned by this query are used to populate the alert. + Query *string `json:"query,omitempty" tf:"query,omitempty"` + + // Specifies the column containing the resource ID. The content of the column must be an uri formatted as resource ID. + ResourceIDColumn *string `json:"resourceIdColumn,omitempty" tf:"resource_id_column,omitempty"` + + // Specifies the criteria threshold value that activates the alert. + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` + + // The type of aggregation to apply to the data points in aggregation granularity. Possible values are Average, Count, Maximum, Minimum,and Total. + TimeAggregationMethod *string `json:"timeAggregationMethod,omitempty" tf:"time_aggregation_method,omitempty"` +} + type MonitorScheduledQueryRulesAlertV2CriteriaObservation struct { // A dimension block as defined below. @@ -122,24 +179,75 @@ type MonitorScheduledQueryRulesAlertV2CriteriaParameters struct { MetricMeasureColumn *string `json:"metricMeasureColumn,omitempty" tf:"metric_measure_column,omitempty"` // Specifies the criteria operator. Possible values are Equal, GreaterThan, GreaterThanOrEqual, LessThan,and LessThanOrEqual. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // The query to run on logs. The results returned by this query are used to populate the alert. - // +kubebuilder:validation:Required - Query *string `json:"query" tf:"query,omitempty"` + // +kubebuilder:validation:Optional + Query *string `json:"query,omitempty" tf:"query,omitempty"` // Specifies the column containing the resource ID. The content of the column must be an uri formatted as resource ID. // +kubebuilder:validation:Optional ResourceIDColumn *string `json:"resourceIdColumn,omitempty" tf:"resource_id_column,omitempty"` // Specifies the criteria threshold value that activates the alert. - // +kubebuilder:validation:Required - Threshold *float64 `json:"threshold" tf:"threshold,omitempty"` + // +kubebuilder:validation:Optional + Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` // The type of aggregation to apply to the data points in aggregation granularity. Possible values are Average, Count, Maximum, Minimum,and Total. - // +kubebuilder:validation:Required - TimeAggregationMethod *string `json:"timeAggregationMethod" tf:"time_aggregation_method,omitempty"` + // +kubebuilder:validation:Optional + TimeAggregationMethod *string `json:"timeAggregationMethod,omitempty" tf:"time_aggregation_method,omitempty"` +} + +type MonitorScheduledQueryRulesAlertV2InitParameters struct { + + // An action block as defined below. + Action []MonitorScheduledQueryRulesAlertV2ActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // Specifies the flag that indicates whether the alert should be automatically resolved or not. Value should be true or false. The default is false. + AutoMitigationEnabled *bool `json:"autoMitigationEnabled,omitempty" tf:"auto_mitigation_enabled,omitempty"` + + // A criteria block as defined below. + Criteria []MonitorScheduledQueryRulesAlertV2CriteriaInitParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` + + // Specifies the description of the scheduled query rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies the display name of the alert rule. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Specifies the flag which indicates whether this scheduled query rule is enabled. Value should be true or false. The default is true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // How often the scheduled query rule is evaluated, represented in ISO 8601 duration format. Possible values are PT1M, PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, PT6H, P1D. + EvaluationFrequency *string `json:"evaluationFrequency,omitempty" tf:"evaluation_frequency,omitempty"` + + // Specifies the Azure Region where the Monitor Scheduled Query Rule should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Mute actions for the chosen period of time in ISO 8601 duration format after the alert is fired. Possible values are PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, PT6H, P1D and P2D. + MuteActionsAfterAlertDuration *string `json:"muteActionsAfterAlertDuration,omitempty" tf:"mute_actions_after_alert_duration,omitempty"` + + // Set this if the alert evaluation period is different from the query time range. If not specified, the value is window_duration*number_of_evaluation_periods. Possible values are PT5M, PT10M, PT15M, PT20M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, PT6H, P1D and P2D. + QueryTimeRangeOverride *string `json:"queryTimeRangeOverride,omitempty" tf:"query_time_range_override,omitempty"` + + // Severity of the alert. Should be an integer between 0 and 4. Value of 0 is severest. + Severity *float64 `json:"severity,omitempty" tf:"severity,omitempty"` + + // Specifies the flag which indicates whether the provided query should be validated or not. The default is false. + SkipQueryValidation *bool `json:"skipQueryValidation,omitempty" tf:"skip_query_validation,omitempty"` + + // A mapping of tags which should be assigned to the Monitor Scheduled Query Rule. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // List of resource type of the target resource(s) on which the alert is created/updated. For example if the scope is a resource group and targetResourceTypes is Microsoft.Compute/virtualMachines, then a different alert will be fired for each virtual machine in the resource group which meet the alert criteria. + TargetResourceTypes []*string `json:"targetResourceTypes,omitempty" tf:"target_resource_types,omitempty"` + + // Specifies the period of time in ISO 8601 duration format on which the Scheduled Query Rule will be executed (bin size). If evaluation_frequency is PT1M, possible values are PT1M, PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, and PT6H. Otherwise, possible values are PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, PT6H, P1D, and P2D. + WindowDuration *string `json:"windowDuration,omitempty" tf:"window_duration,omitempty"` + + // Specifies the flag which indicates whether this scheduled query rule check if storage is configured. Value should be true or false. The default is false. + WorkspaceAlertsStorageEnabled *bool `json:"workspaceAlertsStorageEnabled,omitempty" tf:"workspace_alerts_storage_enabled,omitempty"` } type MonitorScheduledQueryRulesAlertV2Observation struct { @@ -309,6 +417,18 @@ type MonitorScheduledQueryRulesAlertV2Parameters struct { type MonitorScheduledQueryRulesAlertV2Spec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorScheduledQueryRulesAlertV2Parameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorScheduledQueryRulesAlertV2InitParameters `json:"initProvider,omitempty"` } // MonitorScheduledQueryRulesAlertV2Status defines the observed state of MonitorScheduledQueryRulesAlertV2. @@ -329,10 +449,10 @@ type MonitorScheduledQueryRulesAlertV2Status struct { type MonitorScheduledQueryRulesAlertV2 struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.criteria)",message="criteria is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.severity)",message="severity is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.windowDuration)",message="windowDuration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.criteria) || has(self.initProvider.criteria)",message="criteria is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.severity) || has(self.initProvider.severity)",message="severity is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.windowDuration) || has(self.initProvider.windowDuration)",message="windowDuration is a required parameter" Spec MonitorScheduledQueryRulesAlertV2Spec `json:"spec"` Status MonitorScheduledQueryRulesAlertV2Status `json:"status,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitorscheduledqueryruleslog_types.go b/apis/insights/v1beta1/zz_monitorscheduledqueryruleslog_types.go index b6db7aaad..26791d434 100755 --- a/apis/insights/v1beta1/zz_monitorscheduledqueryruleslog_types.go +++ b/apis/insights/v1beta1/zz_monitorscheduledqueryruleslog_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MonitorScheduledQueryRulesLogCriteriaDimensionInitParameters struct { + + // Name of the dimension. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Operator for dimension values, - 'Include'. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // List of dimension values. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type MonitorScheduledQueryRulesLogCriteriaDimensionObservation struct { // Name of the dimension. @@ -28,16 +40,25 @@ type MonitorScheduledQueryRulesLogCriteriaDimensionObservation struct { type MonitorScheduledQueryRulesLogCriteriaDimensionParameters struct { // Name of the dimension. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Operator for dimension values, - 'Include'. // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // List of dimension values. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type MonitorScheduledQueryRulesLogCriteriaInitParameters struct { + + // A dimension block as defined below. + Dimension []MonitorScheduledQueryRulesLogCriteriaDimensionInitParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` + + // Name of the metric. Supported metrics are listed in the Azure Monitor Microsoft.OperationalInsights/workspaces metrics namespace. + MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` } type MonitorScheduledQueryRulesLogCriteriaObservation struct { @@ -52,12 +73,36 @@ type MonitorScheduledQueryRulesLogCriteriaObservation struct { type MonitorScheduledQueryRulesLogCriteriaParameters struct { // A dimension block as defined below. - // +kubebuilder:validation:Required - Dimension []MonitorScheduledQueryRulesLogCriteriaDimensionParameters `json:"dimension" tf:"dimension,omitempty"` + // +kubebuilder:validation:Optional + Dimension []MonitorScheduledQueryRulesLogCriteriaDimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // Name of the metric. Supported metrics are listed in the Azure Monitor Microsoft.OperationalInsights/workspaces metrics namespace. - // +kubebuilder:validation:Required - MetricName *string `json:"metricName" tf:"metric_name,omitempty"` + // +kubebuilder:validation:Optional + MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` +} + +type MonitorScheduledQueryRulesLogInitParameters struct { + + // A list of IDs of Resources referred into query. + AuthorizedResourceIds []*string `json:"authorizedResourceIds,omitempty" tf:"authorized_resource_ids,omitempty"` + + // A criteria block as defined below. + Criteria []MonitorScheduledQueryRulesLogCriteriaInitParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` + + // The description of the scheduled query rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Whether this scheduled query rule is enabled. Default is true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Specifies the Azure Region where the resource should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the scheduled query rule. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type MonitorScheduledQueryRulesLogObservation struct { @@ -155,6 +200,18 @@ type MonitorScheduledQueryRulesLogParameters struct { type MonitorScheduledQueryRulesLogSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorScheduledQueryRulesLogParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorScheduledQueryRulesLogInitParameters `json:"initProvider,omitempty"` } // MonitorScheduledQueryRulesLogStatus defines the observed state of MonitorScheduledQueryRulesLog. @@ -175,9 +232,9 @@ type MonitorScheduledQueryRulesLogStatus struct { type MonitorScheduledQueryRulesLog struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.criteria)",message="criteria is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.criteria) || has(self.initProvider.criteria)",message="criteria is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec MonitorScheduledQueryRulesLogSpec `json:"spec"` Status MonitorScheduledQueryRulesLogStatus `json:"status,omitempty"` } diff --git a/apis/iotcentral/v1beta1/zz_application_types.go b/apis/iotcentral/v1beta1/zz_application_types.go index dd88c0cf3..824706080 100755 --- a/apis/iotcentral/v1beta1/zz_application_types.go +++ b/apis/iotcentral/v1beta1/zz_application_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationInitParameters struct { + + // A display_name name. Custom display name for the IoT Central application. Default is resource name. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the supported Azure location where the resource has to be create. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name of the IotHub resource. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Whether public network access is allowed for the IoT Central Application. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A sku name. Possible values is ST0, ST1, ST2, Default value is ST1 + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A sub_domain name. Subdomain for the IoT Central URL. Each application must have a unique subdomain. + SubDomain *string `json:"subDomain,omitempty" tf:"sub_domain,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A template name. IoT Central application template name. Default is a custom application. Changing this forces a new resource to be created. + Template *string `json:"template,omitempty" tf:"template,omitempty"` +} + type ApplicationObservation struct { // A display_name name. Custom display name for the IoT Central application. Default is resource name. @@ -101,6 +131,12 @@ type ApplicationParameters struct { Template *string `json:"template,omitempty" tf:"template,omitempty"` } +type IdentityInitParameters struct { + + // Specifies the type of Managed Service Identity that should be configured on this IoT Central Application. The only possible value is SystemAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // The Principal ID associated with this Managed Service Identity. @@ -116,14 +152,26 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this IoT Central Application. The only possible value is SystemAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // ApplicationSpec defines the desired state of Application type ApplicationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationInitParameters `json:"initProvider,omitempty"` } // ApplicationStatus defines the observed state of Application. @@ -144,9 +192,9 @@ type ApplicationStatus struct { type Application struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subDomain)",message="subDomain is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subDomain) || has(self.initProvider.subDomain)",message="subDomain is a required parameter" Spec ApplicationSpec `json:"spec"` Status ApplicationStatus `json:"status,omitempty"` } diff --git a/apis/iotcentral/v1beta1/zz_applicationnetworkruleset_types.go b/apis/iotcentral/v1beta1/zz_applicationnetworkruleset_types.go index d9982467d..211491a3c 100755 --- a/apis/iotcentral/v1beta1/zz_applicationnetworkruleset_types.go +++ b/apis/iotcentral/v1beta1/zz_applicationnetworkruleset_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationNetworkRuleSetInitParameters struct { + + // Whether these IP Rules apply for device connectivity to IoT Hub and Device Provisioning Service associated with this IoT Central Application. Possible values are true, false. Defaults to true + ApplyToDevice *bool `json:"applyToDevice,omitempty" tf:"apply_to_device,omitempty"` + + // Specifies the default action for the IoT Central Application Network Rule Set. Possible values are Allow and Deny. Defaults to Deny. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + + // One or more ip_rule blocks as defined below. + IPRule []IPRuleInitParameters `json:"ipRule,omitempty" tf:"ip_rule,omitempty"` +} + type ApplicationNetworkRuleSetObservation struct { // Whether these IP Rules apply for device connectivity to IoT Hub and Device Provisioning Service associated with this IoT Central Application. Possible values are true, false. Defaults to true @@ -60,6 +72,15 @@ type ApplicationNetworkRuleSetParameters struct { IotcentralApplicationIDSelector *v1.Selector `json:"iotcentralApplicationIdSelector,omitempty" tf:"-"` } +type IPRuleInitParameters struct { + + // The IP address range in CIDR notation for the IP Rule. + IPMask *string `json:"ipMask,omitempty" tf:"ip_mask,omitempty"` + + // The name of the IP Rule + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type IPRuleObservation struct { // The IP address range in CIDR notation for the IP Rule. @@ -72,18 +93,30 @@ type IPRuleObservation struct { type IPRuleParameters struct { // The IP address range in CIDR notation for the IP Rule. - // +kubebuilder:validation:Required - IPMask *string `json:"ipMask" tf:"ip_mask,omitempty"` + // +kubebuilder:validation:Optional + IPMask *string `json:"ipMask,omitempty" tf:"ip_mask,omitempty"` // The name of the IP Rule - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` } // ApplicationNetworkRuleSetSpec defines the desired state of ApplicationNetworkRuleSet type ApplicationNetworkRuleSetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationNetworkRuleSetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationNetworkRuleSetInitParameters `json:"initProvider,omitempty"` } // ApplicationNetworkRuleSetStatus defines the observed state of ApplicationNetworkRuleSet. diff --git a/apis/iotcentral/v1beta1/zz_generated.deepcopy.go b/apis/iotcentral/v1beta1/zz_generated.deepcopy.go index fbdf681e4..a52962a41 100644 --- a/apis/iotcentral/v1beta1/zz_generated.deepcopy.go +++ b/apis/iotcentral/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,78 @@ func (in *Application) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationInitParameters) DeepCopyInto(out *ApplicationInitParameters) { + *out = *in + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.SubDomain != nil { + in, out := &in.SubDomain, &out.SubDomain + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Template != nil { + in, out := &in.Template, &out.Template + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationInitParameters. +func (in *ApplicationInitParameters) DeepCopy() *ApplicationInitParameters { + if in == nil { + return nil + } + out := new(ApplicationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationList) DeepCopyInto(out *ApplicationList) { *out = *in @@ -100,6 +172,38 @@ func (in *ApplicationNetworkRuleSet) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationNetworkRuleSetInitParameters) DeepCopyInto(out *ApplicationNetworkRuleSetInitParameters) { + *out = *in + if in.ApplyToDevice != nil { + in, out := &in.ApplyToDevice, &out.ApplyToDevice + *out = new(bool) + **out = **in + } + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.IPRule != nil { + in, out := &in.IPRule, &out.IPRule + *out = make([]IPRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationNetworkRuleSetInitParameters. +func (in *ApplicationNetworkRuleSetInitParameters) DeepCopy() *ApplicationNetworkRuleSetInitParameters { + if in == nil { + return nil + } + out := new(ApplicationNetworkRuleSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationNetworkRuleSetList) DeepCopyInto(out *ApplicationNetworkRuleSetList) { *out = *in @@ -226,6 +330,7 @@ func (in *ApplicationNetworkRuleSetSpec) DeepCopyInto(out *ApplicationNetworkRul *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationNetworkRuleSetSpec. @@ -429,6 +534,7 @@ func (in *ApplicationSpec) DeepCopyInto(out *ApplicationSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationSpec. @@ -458,6 +564,31 @@ func (in *ApplicationStatus) DeepCopy() *ApplicationStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPRuleInitParameters) DeepCopyInto(out *IPRuleInitParameters) { + *out = *in + if in.IPMask != nil { + in, out := &in.IPMask, &out.IPMask + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRuleInitParameters. +func (in *IPRuleInitParameters) DeepCopy() *IPRuleInitParameters { + if in == nil { + return nil + } + out := new(IPRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPRuleObservation) DeepCopyInto(out *IPRuleObservation) { *out = *in @@ -508,6 +639,26 @@ func (in *IPRuleParameters) DeepCopy() *IPRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in diff --git a/apis/iotcentral/v1beta1/zz_generated.managed.go b/apis/iotcentral/v1beta1/zz_generated.managed.go index 1dd5df886..21938c12e 100644 --- a/apis/iotcentral/v1beta1/zz_generated.managed.go +++ b/apis/iotcentral/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Application) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Application. -func (mg *Application) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Application. +func (mg *Application) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Application. @@ -55,9 +55,9 @@ func (mg *Application) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Application. -func (mg *Application) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Application. +func (mg *Application) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Application. @@ -93,9 +93,9 @@ func (mg *ApplicationNetworkRuleSet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationNetworkRuleSet. -func (mg *ApplicationNetworkRuleSet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationNetworkRuleSet. +func (mg *ApplicationNetworkRuleSet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationNetworkRuleSet. @@ -131,9 +131,9 @@ func (mg *ApplicationNetworkRuleSet) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationNetworkRuleSet. -func (mg *ApplicationNetworkRuleSet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationNetworkRuleSet. +func (mg *ApplicationNetworkRuleSet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationNetworkRuleSet. diff --git a/apis/iotcentral/v1beta1/zz_generated_terraformed.go b/apis/iotcentral/v1beta1/zz_generated_terraformed.go index 9e1d410a5..0cc3ad9bf 100755 --- a/apis/iotcentral/v1beta1/zz_generated_terraformed.go +++ b/apis/iotcentral/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Application) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Application +func (tr *Application) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Application using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Application) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *ApplicationNetworkRuleSet) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationNetworkRuleSet +func (tr *ApplicationNetworkRuleSet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationNetworkRuleSet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationNetworkRuleSet) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/keyvault/v1beta1/zz_accesspolicy_types.go b/apis/keyvault/v1beta1/zz_accesspolicy_types.go index 703d77922..20c768ed8 100755 --- a/apis/keyvault/v1beta1/zz_accesspolicy_types.go +++ b/apis/keyvault/v1beta1/zz_accesspolicy_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccessPolicyInitParameters_2 struct { + + // The object ID of an Application in Azure Active Directory. Changing this forces a new resource to be created. + ApplicationID *string `json:"applicationId,omitempty" tf:"application_id,omitempty"` + + // List of certificate permissions, must be one or more from the following: Backup, Create, Delete, DeleteIssuers, Get, GetIssuers, Import, List, ListIssuers, ManageContacts, ManageIssuers, Purge, Recover, Restore, SetIssuers and Update. + CertificatePermissions []*string `json:"certificatePermissions,omitempty" tf:"certificate_permissions,omitempty"` + + // List of key permissions, must be one or more from the following: Backup, Create, Decrypt, Delete, Encrypt, Get, Import, List, Purge, Recover, Restore, Sign, UnwrapKey, Update, Verify, WrapKey, Release, Rotate, GetRotationPolicy and SetRotationPolicy. + KeyPermissions []*string `json:"keyPermissions,omitempty" tf:"key_permissions,omitempty"` + + // The object ID of a user, service principal or security group in the Azure Active Directory tenant for the vault. The object ID of a service principal can be fetched from azuread_service_principal.object_id. The object ID must be unique for the list of access policies. Changing this forces a new resource to be created. + ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` + + // List of secret permissions, must be one or more from the following: Backup, Delete, Get, List, Purge, Recover, Restore and Set. + SecretPermissions []*string `json:"secretPermissions,omitempty" tf:"secret_permissions,omitempty"` + + // List of storage permissions, must be one or more from the following: Backup, Delete, DeleteSAS, Get, GetSAS, List, ListSAS, Purge, Recover, RegenerateKey, Restore, Set, SetSAS and Update. + StoragePermissions []*string `json:"storagePermissions,omitempty" tf:"storage_permissions,omitempty"` + + // The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault. Changing this forces a new resource to be created. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type AccessPolicyObservation_2 struct { // The object ID of an Application in Azure Active Directory. Changing this forces a new resource to be created. @@ -92,6 +116,18 @@ type AccessPolicyParameters_2 struct { type AccessPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccessPolicyParameters_2 `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccessPolicyInitParameters_2 `json:"initProvider,omitempty"` } // AccessPolicyStatus defines the observed state of AccessPolicy. @@ -112,8 +148,8 @@ type AccessPolicyStatus struct { type AccessPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId)",message="objectId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId)",message="tenantId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.objectId) || has(self.initProvider.objectId)",message="objectId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantId) || has(self.initProvider.tenantId)",message="tenantId is a required parameter" Spec AccessPolicySpec `json:"spec"` Status AccessPolicyStatus `json:"status,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_certificate_types.go b/apis/keyvault/v1beta1/zz_certificate_types.go index a133da9e4..9e5b795e6 100755 --- a/apis/keyvault/v1beta1/zz_certificate_types.go +++ b/apis/keyvault/v1beta1/zz_certificate_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActionInitParameters struct { + + // The Type of action to be performed when the lifetime trigger is triggerec. Possible values include AutoRenew and EmailContacts. Changing this forces a new resource to be created. + ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` +} + type ActionObservation struct { // The Type of action to be performed when the lifetime trigger is triggerec. Possible values include AutoRenew and EmailContacts. Changing this forces a new resource to be created. @@ -22,8 +28,11 @@ type ActionObservation struct { type ActionParameters struct { // The Type of action to be performed when the lifetime trigger is triggerec. Possible values include AutoRenew and EmailContacts. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - ActionType *string `json:"actionType" tf:"action_type,omitempty"` + // +kubebuilder:validation:Optional + ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` +} + +type CertificateAttributeInitParameters struct { } type CertificateAttributeObservation struct { @@ -50,6 +59,9 @@ type CertificateAttributeObservation struct { type CertificateAttributeParameters struct { } +type CertificateCertificateInitParameters struct { +} + type CertificateCertificateObservation struct { } @@ -64,6 +76,18 @@ type CertificateCertificateParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` } +type CertificateInitParameters struct { + + // A certificate block as defined below, used to Import an existing certificate. + Certificate []CertificateCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` + + // A certificate_policy block as defined below. Changing this forces a new resource to be created. + CertificatePolicy []CertificatePolicyInitParameters `json:"certificatePolicy,omitempty" tf:"certificate_policy,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type CertificateObservation struct { // A certificate block as defined below, used to Import an existing certificate. @@ -141,6 +165,24 @@ type CertificateParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type CertificatePolicyInitParameters struct { + + // A issuer_parameters block as defined below. + IssuerParameters []IssuerParametersInitParameters `json:"issuerParameters,omitempty" tf:"issuer_parameters,omitempty"` + + // A key_properties block as defined below. + KeyProperties []KeyPropertiesInitParameters `json:"keyProperties,omitempty" tf:"key_properties,omitempty"` + + // A lifetime_action block as defined below. + LifetimeAction []LifetimeActionInitParameters `json:"lifetimeAction,omitempty" tf:"lifetime_action,omitempty"` + + // A secret_properties block as defined below. + SecretProperties []SecretPropertiesInitParameters `json:"secretProperties,omitempty" tf:"secret_properties,omitempty"` + + // A x509_certificate_properties block as defined below. Required when certificate block is not specified. + X509CertificateProperties []X509CertificatePropertiesInitParameters `json:"x509CertificateProperties,omitempty" tf:"x509_certificate_properties,omitempty"` +} + type CertificatePolicyObservation struct { // A issuer_parameters block as defined below. @@ -162,26 +204,32 @@ type CertificatePolicyObservation struct { type CertificatePolicyParameters struct { // A issuer_parameters block as defined below. - // +kubebuilder:validation:Required - IssuerParameters []IssuerParametersParameters `json:"issuerParameters" tf:"issuer_parameters,omitempty"` + // +kubebuilder:validation:Optional + IssuerParameters []IssuerParametersParameters `json:"issuerParameters,omitempty" tf:"issuer_parameters,omitempty"` // A key_properties block as defined below. - // +kubebuilder:validation:Required - KeyProperties []KeyPropertiesParameters `json:"keyProperties" tf:"key_properties,omitempty"` + // +kubebuilder:validation:Optional + KeyProperties []KeyPropertiesParameters `json:"keyProperties,omitempty" tf:"key_properties,omitempty"` // A lifetime_action block as defined below. // +kubebuilder:validation:Optional LifetimeAction []LifetimeActionParameters `json:"lifetimeAction,omitempty" tf:"lifetime_action,omitempty"` // A secret_properties block as defined below. - // +kubebuilder:validation:Required - SecretProperties []SecretPropertiesParameters `json:"secretProperties" tf:"secret_properties,omitempty"` + // +kubebuilder:validation:Optional + SecretProperties []SecretPropertiesParameters `json:"secretProperties,omitempty" tf:"secret_properties,omitempty"` // A x509_certificate_properties block as defined below. Required when certificate block is not specified. // +kubebuilder:validation:Optional X509CertificateProperties []X509CertificatePropertiesParameters `json:"x509CertificateProperties,omitempty" tf:"x509_certificate_properties,omitempty"` } +type IssuerParametersInitParameters struct { + + // The name of the Certificate Issuer. Possible values include Self (for self-signed certificate), or Unknown (for a certificate issuing authority like Let's Encrypt and Azure direct supported ones). Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type IssuerParametersObservation struct { // The name of the Certificate Issuer. Possible values include Self (for self-signed certificate), or Unknown (for a certificate issuing authority like Let's Encrypt and Azure direct supported ones). Changing this forces a new resource to be created. @@ -191,8 +239,26 @@ type IssuerParametersObservation struct { type IssuerParametersParameters struct { // The name of the Certificate Issuer. Possible values include Self (for self-signed certificate), or Unknown (for a certificate issuing authority like Let's Encrypt and Azure direct supported ones). Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type KeyPropertiesInitParameters struct { + + // Specifies the curve to use when creating an EC key. Possible values are P-256, P-256K, P-384, and P-521. This field will be required in a future release if key_type is EC or EC-HSM. Changing this forces a new resource to be created. + Curve *string `json:"curve,omitempty" tf:"curve,omitempty"` + + // Is this certificate exportable? Changing this forces a new resource to be created. + Exportable *bool `json:"exportable,omitempty" tf:"exportable,omitempty"` + + // The size of the key used in the certificate. Possible values include 2048, 3072, and 4096 for RSA keys, or 256, 384, and 521 for EC keys. This property is required when using RSA keys. Changing this forces a new resource to be created. + KeySize *float64 `json:"keySize,omitempty" tf:"key_size,omitempty"` + + // Specifies the type of key. Possible values are EC, EC-HSM, RSA, RSA-HSM and oct. Changing this forces a new resource to be created. + KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"` + + // Is the key reusable? Changing this forces a new resource to be created. + ReuseKey *bool `json:"reuseKey,omitempty" tf:"reuse_key,omitempty"` } type KeyPropertiesObservation struct { @@ -220,20 +286,29 @@ type KeyPropertiesParameters struct { Curve *string `json:"curve,omitempty" tf:"curve,omitempty"` // Is this certificate exportable? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Exportable *bool `json:"exportable" tf:"exportable,omitempty"` + // +kubebuilder:validation:Optional + Exportable *bool `json:"exportable,omitempty" tf:"exportable,omitempty"` // The size of the key used in the certificate. Possible values include 2048, 3072, and 4096 for RSA keys, or 256, 384, and 521 for EC keys. This property is required when using RSA keys. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional KeySize *float64 `json:"keySize,omitempty" tf:"key_size,omitempty"` // Specifies the type of key. Possible values are EC, EC-HSM, RSA, RSA-HSM and oct. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - KeyType *string `json:"keyType" tf:"key_type,omitempty"` + // +kubebuilder:validation:Optional + KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"` // Is the key reusable? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - ReuseKey *bool `json:"reuseKey" tf:"reuse_key,omitempty"` + // +kubebuilder:validation:Optional + ReuseKey *bool `json:"reuseKey,omitempty" tf:"reuse_key,omitempty"` +} + +type LifetimeActionInitParameters struct { + + // A action block as defined below. + Action []ActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // A trigger block as defined below. + Trigger []TriggerInitParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } type LifetimeActionObservation struct { @@ -248,12 +323,18 @@ type LifetimeActionObservation struct { type LifetimeActionParameters struct { // A action block as defined below. - // +kubebuilder:validation:Required - Action []ActionParameters `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action []ActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A trigger block as defined below. - // +kubebuilder:validation:Required - Trigger []TriggerParameters `json:"trigger" tf:"trigger,omitempty"` + // +kubebuilder:validation:Optional + Trigger []TriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` +} + +type SecretPropertiesInitParameters struct { + + // The Content-Type of the Certificate, such as application/x-pkcs12 for a PFX or application/x-pem-file for a PEM. Changing this forces a new resource to be created. + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` } type SecretPropertiesObservation struct { @@ -265,8 +346,20 @@ type SecretPropertiesObservation struct { type SecretPropertiesParameters struct { // The Content-Type of the Certificate, such as application/x-pkcs12 for a PFX or application/x-pem-file for a PEM. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - ContentType *string `json:"contentType" tf:"content_type,omitempty"` + // +kubebuilder:validation:Optional + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` +} + +type SubjectAlternativeNamesInitParameters struct { + + // A list of alternative DNS names (FQDNs) identified by the Certificate. Changing this forces a new resource to be created. + DNSNames []*string `json:"dnsNames,omitempty" tf:"dns_names,omitempty"` + + // A list of email addresses identified by this Certificate. Changing this forces a new resource to be created. + Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"` + + // A list of User Principal Names identified by the Certificate. Changing this forces a new resource to be created. + Upns []*string `json:"upns,omitempty" tf:"upns,omitempty"` } type SubjectAlternativeNamesObservation struct { @@ -296,6 +389,15 @@ type SubjectAlternativeNamesParameters struct { Upns []*string `json:"upns,omitempty" tf:"upns,omitempty"` } +type TriggerInitParameters struct { + + // The number of days before the Certificate expires that the action associated with this Trigger should run. Changing this forces a new resource to be created. Conflicts with lifetime_percentage. + DaysBeforeExpiry *float64 `json:"daysBeforeExpiry,omitempty" tf:"days_before_expiry,omitempty"` + + // The percentage at which during the Certificates Lifetime the action associated with this Trigger should run. Changing this forces a new resource to be created. Conflicts with days_before_expiry. + LifetimePercentage *float64 `json:"lifetimePercentage,omitempty" tf:"lifetime_percentage,omitempty"` +} + type TriggerObservation struct { // The number of days before the Certificate expires that the action associated with this Trigger should run. Changing this forces a new resource to be created. Conflicts with lifetime_percentage. @@ -316,6 +418,24 @@ type TriggerParameters struct { LifetimePercentage *float64 `json:"lifetimePercentage,omitempty" tf:"lifetime_percentage,omitempty"` } +type X509CertificatePropertiesInitParameters struct { + + // A list of Extended/Enhanced Key Usages. Changing this forces a new resource to be created. + ExtendedKeyUsage []*string `json:"extendedKeyUsage,omitempty" tf:"extended_key_usage,omitempty"` + + // A list of uses associated with this Key. Possible values include cRLSign, dataEncipherment, decipherOnly, digitalSignature, encipherOnly, keyAgreement, keyCertSign, keyEncipherment and nonRepudiation and are case-sensitive. Changing this forces a new resource to be created. + KeyUsage []*string `json:"keyUsage,omitempty" tf:"key_usage,omitempty"` + + // The Certificate's Subject. Changing this forces a new resource to be created. + Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` + + // A subject_alternative_names block as defined below. Changing this forces a new resource to be created. + SubjectAlternativeNames []SubjectAlternativeNamesInitParameters `json:"subjectAlternativeNames,omitempty" tf:"subject_alternative_names,omitempty"` + + // The Certificates Validity Period in Months. Changing this forces a new resource to be created. + ValidityInMonths *float64 `json:"validityInMonths,omitempty" tf:"validity_in_months,omitempty"` +} + type X509CertificatePropertiesObservation struct { // A list of Extended/Enhanced Key Usages. Changing this forces a new resource to be created. @@ -341,26 +461,38 @@ type X509CertificatePropertiesParameters struct { ExtendedKeyUsage []*string `json:"extendedKeyUsage,omitempty" tf:"extended_key_usage,omitempty"` // A list of uses associated with this Key. Possible values include cRLSign, dataEncipherment, decipherOnly, digitalSignature, encipherOnly, keyAgreement, keyCertSign, keyEncipherment and nonRepudiation and are case-sensitive. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - KeyUsage []*string `json:"keyUsage" tf:"key_usage,omitempty"` + // +kubebuilder:validation:Optional + KeyUsage []*string `json:"keyUsage,omitempty" tf:"key_usage,omitempty"` // The Certificate's Subject. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Subject *string `json:"subject" tf:"subject,omitempty"` + // +kubebuilder:validation:Optional + Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` // A subject_alternative_names block as defined below. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional SubjectAlternativeNames []SubjectAlternativeNamesParameters `json:"subjectAlternativeNames,omitempty" tf:"subject_alternative_names,omitempty"` // The Certificates Validity Period in Months. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - ValidityInMonths *float64 `json:"validityInMonths" tf:"validity_in_months,omitempty"` + // +kubebuilder:validation:Optional + ValidityInMonths *float64 `json:"validityInMonths,omitempty" tf:"validity_in_months,omitempty"` } // CertificateSpec defines the desired state of Certificate type CertificateSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CertificateParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CertificateInitParameters `json:"initProvider,omitempty"` } // CertificateStatus defines the observed state of Certificate. diff --git a/apis/keyvault/v1beta1/zz_certificatecontacts_types.go b/apis/keyvault/v1beta1/zz_certificatecontacts_types.go index 3d02ce847..76ffe0a06 100755 --- a/apis/keyvault/v1beta1/zz_certificatecontacts_types.go +++ b/apis/keyvault/v1beta1/zz_certificatecontacts_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CertificateContactsContactInitParameters struct { + + // E-mail address of the contact. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // Name of the contact. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Phone number of the contact. + Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` +} + type CertificateContactsContactObservation struct { // E-mail address of the contact. @@ -28,8 +40,8 @@ type CertificateContactsContactObservation struct { type CertificateContactsContactParameters struct { // E-mail address of the contact. - // +kubebuilder:validation:Required - Email *string `json:"email" tf:"email,omitempty"` + // +kubebuilder:validation:Optional + Email *string `json:"email,omitempty" tf:"email,omitempty"` // Name of the contact. // +kubebuilder:validation:Optional @@ -40,6 +52,12 @@ type CertificateContactsContactParameters struct { Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` } +type CertificateContactsInitParameters struct { + + // One or more contact blocks as defined below. + Contact []CertificateContactsContactInitParameters `json:"contact,omitempty" tf:"contact,omitempty"` +} + type CertificateContactsObservation struct { // One or more contact blocks as defined below. @@ -77,6 +95,18 @@ type CertificateContactsParameters struct { type CertificateContactsSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CertificateContactsParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CertificateContactsInitParameters `json:"initProvider,omitempty"` } // CertificateContactsStatus defines the observed state of CertificateContacts. @@ -97,7 +127,7 @@ type CertificateContactsStatus struct { type CertificateContacts struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.contact)",message="contact is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.contact) || has(self.initProvider.contact)",message="contact is a required parameter" Spec CertificateContactsSpec `json:"spec"` Status CertificateContactsStatus `json:"status,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_certificateissuer_types.go b/apis/keyvault/v1beta1/zz_certificateissuer_types.go index 50f1971c2..1f2f71a71 100755 --- a/apis/keyvault/v1beta1/zz_certificateissuer_types.go +++ b/apis/keyvault/v1beta1/zz_certificateissuer_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AdminInitParameters struct { + + // E-mail address of the admin. + EmailAddress *string `json:"emailAddress,omitempty" tf:"email_address,omitempty"` + + // First name of the admin. + FirstName *string `json:"firstName,omitempty" tf:"first_name,omitempty"` + + // Last name of the admin. + LastName *string `json:"lastName,omitempty" tf:"last_name,omitempty"` + + // Phone number of the admin. + Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` +} + type AdminObservation struct { // E-mail address of the admin. @@ -31,8 +46,8 @@ type AdminObservation struct { type AdminParameters struct { // E-mail address of the admin. - // +kubebuilder:validation:Required - EmailAddress *string `json:"emailAddress" tf:"email_address,omitempty"` + // +kubebuilder:validation:Optional + EmailAddress *string `json:"emailAddress,omitempty" tf:"email_address,omitempty"` // First name of the admin. // +kubebuilder:validation:Optional @@ -47,6 +62,21 @@ type AdminParameters struct { Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` } +type CertificateIssuerInitParameters struct { + + // The account number with the third-party Certificate Issuer. + AccountID *string `json:"accountId,omitempty" tf:"account_id,omitempty"` + + // One or more admin blocks as defined below. + Admin []AdminInitParameters `json:"admin,omitempty" tf:"admin,omitempty"` + + // The ID of the organization as provided to the issuer. + OrgID *string `json:"orgId,omitempty" tf:"org_id,omitempty"` + + // The name of the third-party Certificate Issuer. Possible values are: DigiCert, GlobalSign, OneCertV2-PrivateCA, OneCertV2-PublicCA and SslAdminV2. + ProviderName *string `json:"providerName,omitempty" tf:"provider_name,omitempty"` +} + type CertificateIssuerObservation struct { // The account number with the third-party Certificate Issuer. @@ -109,6 +139,18 @@ type CertificateIssuerParameters struct { type CertificateIssuerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CertificateIssuerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CertificateIssuerInitParameters `json:"initProvider,omitempty"` } // CertificateIssuerStatus defines the observed state of CertificateIssuer. @@ -129,7 +171,7 @@ type CertificateIssuerStatus struct { type CertificateIssuer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.providerName)",message="providerName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.providerName) || has(self.initProvider.providerName)",message="providerName is a required parameter" Spec CertificateIssuerSpec `json:"spec"` Status CertificateIssuerStatus `json:"status,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_generated.deepcopy.go b/apis/keyvault/v1beta1/zz_generated.deepcopy.go index 3a0457cc9..4f671efe6 100644 --- a/apis/keyvault/v1beta1/zz_generated.deepcopy.go +++ b/apis/keyvault/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,95 @@ func (in *AccessPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccessPolicyInitParameters) DeepCopyInto(out *AccessPolicyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessPolicyInitParameters. +func (in *AccessPolicyInitParameters) DeepCopy() *AccessPolicyInitParameters { + if in == nil { + return nil + } + out := new(AccessPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccessPolicyInitParameters_2) DeepCopyInto(out *AccessPolicyInitParameters_2) { + *out = *in + if in.ApplicationID != nil { + in, out := &in.ApplicationID, &out.ApplicationID + *out = new(string) + **out = **in + } + if in.CertificatePermissions != nil { + in, out := &in.CertificatePermissions, &out.CertificatePermissions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.KeyPermissions != nil { + in, out := &in.KeyPermissions, &out.KeyPermissions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.SecretPermissions != nil { + in, out := &in.SecretPermissions, &out.SecretPermissions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.StoragePermissions != nil { + in, out := &in.StoragePermissions, &out.StoragePermissions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessPolicyInitParameters_2. +func (in *AccessPolicyInitParameters_2) DeepCopy() *AccessPolicyInitParameters_2 { + if in == nil { + return nil + } + out := new(AccessPolicyInitParameters_2) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccessPolicyList) DeepCopyInto(out *AccessPolicyList) { *out = *in @@ -340,6 +429,7 @@ func (in *AccessPolicySpec) DeepCopyInto(out *AccessPolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessPolicySpec. @@ -369,6 +459,26 @@ func (in *AccessPolicyStatus) DeepCopy() *AccessPolicyStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionInitParameters) DeepCopyInto(out *ActionInitParameters) { + *out = *in + if in.ActionType != nil { + in, out := &in.ActionType, &out.ActionType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionInitParameters. +func (in *ActionInitParameters) DeepCopy() *ActionInitParameters { + if in == nil { + return nil + } + out := new(ActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionObservation) DeepCopyInto(out *ActionObservation) { *out = *in @@ -409,6 +519,41 @@ func (in *ActionParameters) DeepCopy() *ActionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AdminInitParameters) DeepCopyInto(out *AdminInitParameters) { + *out = *in + if in.EmailAddress != nil { + in, out := &in.EmailAddress, &out.EmailAddress + *out = new(string) + **out = **in + } + if in.FirstName != nil { + in, out := &in.FirstName, &out.FirstName + *out = new(string) + **out = **in + } + if in.LastName != nil { + in, out := &in.LastName, &out.LastName + *out = new(string) + **out = **in + } + if in.Phone != nil { + in, out := &in.Phone, &out.Phone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdminInitParameters. +func (in *AdminInitParameters) DeepCopy() *AdminInitParameters { + if in == nil { + return nil + } + out := new(AdminInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AdminObservation) DeepCopyInto(out *AdminObservation) { *out = *in @@ -479,6 +624,31 @@ func (in *AdminParameters) DeepCopy() *AdminParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutomaticInitParameters) DeepCopyInto(out *AutomaticInitParameters) { + *out = *in + if in.TimeAfterCreation != nil { + in, out := &in.TimeAfterCreation, &out.TimeAfterCreation + *out = new(string) + **out = **in + } + if in.TimeBeforeExpiry != nil { + in, out := &in.TimeBeforeExpiry, &out.TimeBeforeExpiry + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomaticInitParameters. +func (in *AutomaticInitParameters) DeepCopy() *AutomaticInitParameters { + if in == nil { + return nil + } + out := new(AutomaticInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutomaticObservation) DeepCopyInto(out *AutomaticObservation) { *out = *in @@ -556,6 +726,21 @@ func (in *Certificate) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateAttributeInitParameters) DeepCopyInto(out *CertificateAttributeInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateAttributeInitParameters. +func (in *CertificateAttributeInitParameters) DeepCopy() *CertificateAttributeInitParameters { + if in == nil { + return nil + } + out := new(CertificateAttributeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificateAttributeObservation) DeepCopyInto(out *CertificateAttributeObservation) { *out = *in @@ -616,6 +801,21 @@ func (in *CertificateAttributeParameters) DeepCopy() *CertificateAttributeParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateCertificateInitParameters) DeepCopyInto(out *CertificateCertificateInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateCertificateInitParameters. +func (in *CertificateCertificateInitParameters) DeepCopy() *CertificateCertificateInitParameters { + if in == nil { + return nil + } + out := new(CertificateCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificateCertificateObservation) DeepCopyInto(out *CertificateCertificateObservation) { *out = *in @@ -679,6 +879,36 @@ func (in *CertificateContacts) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateContactsContactInitParameters) DeepCopyInto(out *CertificateContactsContactInitParameters) { + *out = *in + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Phone != nil { + in, out := &in.Phone, &out.Phone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateContactsContactInitParameters. +func (in *CertificateContactsContactInitParameters) DeepCopy() *CertificateContactsContactInitParameters { + if in == nil { + return nil + } + out := new(CertificateContactsContactInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificateContactsContactObservation) DeepCopyInto(out *CertificateContactsContactObservation) { *out = *in @@ -739,6 +969,28 @@ func (in *CertificateContactsContactParameters) DeepCopy() *CertificateContactsC return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateContactsInitParameters) DeepCopyInto(out *CertificateContactsInitParameters) { + *out = *in + if in.Contact != nil { + in, out := &in.Contact, &out.Contact + *out = make([]CertificateContactsContactInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateContactsInitParameters. +func (in *CertificateContactsInitParameters) DeepCopy() *CertificateContactsInitParameters { + if in == nil { + return nil + } + out := new(CertificateContactsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificateContactsList) DeepCopyInto(out *CertificateContactsList) { *out = *in @@ -845,6 +1097,7 @@ func (in *CertificateContactsSpec) DeepCopyInto(out *CertificateContactsSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateContactsSpec. @@ -874,6 +1127,48 @@ func (in *CertificateContactsStatus) DeepCopy() *CertificateContactsStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateInitParameters) DeepCopyInto(out *CertificateInitParameters) { + *out = *in + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]CertificateCertificateInitParameters, len(*in)) + copy(*out, *in) + } + if in.CertificatePolicy != nil { + in, out := &in.CertificatePolicy, &out.CertificatePolicy + *out = make([]CertificatePolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInitParameters. +func (in *CertificateInitParameters) DeepCopy() *CertificateInitParameters { + if in == nil { + return nil + } + out := new(CertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificateIssuer) DeepCopyInto(out *CertificateIssuer) { *out = *in @@ -902,14 +1197,51 @@ func (in *CertificateIssuer) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CertificateIssuerList) DeepCopyInto(out *CertificateIssuerList) { +func (in *CertificateIssuerInitParameters) DeepCopyInto(out *CertificateIssuerInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]CertificateIssuer, len(*in)) - for i := range *in { + if in.AccountID != nil { + in, out := &in.AccountID, &out.AccountID + *out = new(string) + **out = **in + } + if in.Admin != nil { + in, out := &in.Admin, &out.Admin + *out = make([]AdminInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OrgID != nil { + in, out := &in.OrgID, &out.OrgID + *out = new(string) + **out = **in + } + if in.ProviderName != nil { + in, out := &in.ProviderName, &out.ProviderName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateIssuerInitParameters. +func (in *CertificateIssuerInitParameters) DeepCopy() *CertificateIssuerInitParameters { + if in == nil { + return nil + } + out := new(CertificateIssuerInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateIssuerList) DeepCopyInto(out *CertificateIssuerList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]CertificateIssuer, len(*in)) + for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } @@ -1042,6 +1374,7 @@ func (in *CertificateIssuerSpec) DeepCopyInto(out *CertificateIssuerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateIssuerSpec. @@ -1268,6 +1601,56 @@ func (in *CertificateParameters) DeepCopy() *CertificateParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificatePolicyInitParameters) DeepCopyInto(out *CertificatePolicyInitParameters) { + *out = *in + if in.IssuerParameters != nil { + in, out := &in.IssuerParameters, &out.IssuerParameters + *out = make([]IssuerParametersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyProperties != nil { + in, out := &in.KeyProperties, &out.KeyProperties + *out = make([]KeyPropertiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LifetimeAction != nil { + in, out := &in.LifetimeAction, &out.LifetimeAction + *out = make([]LifetimeActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SecretProperties != nil { + in, out := &in.SecretProperties, &out.SecretProperties + *out = make([]SecretPropertiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.X509CertificateProperties != nil { + in, out := &in.X509CertificateProperties, &out.X509CertificateProperties + *out = make([]X509CertificatePropertiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificatePolicyInitParameters. +func (in *CertificatePolicyInitParameters) DeepCopy() *CertificatePolicyInitParameters { + if in == nil { + return nil + } + out := new(CertificatePolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificatePolicyObservation) DeepCopyInto(out *CertificatePolicyObservation) { *out = *in @@ -1373,6 +1756,7 @@ func (in *CertificateSpec) DeepCopyInto(out *CertificateSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateSpec. @@ -1402,6 +1786,36 @@ func (in *CertificateStatus) DeepCopy() *CertificateStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContactInitParameters) DeepCopyInto(out *ContactInitParameters) { + *out = *in + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Phone != nil { + in, out := &in.Phone, &out.Phone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContactInitParameters. +func (in *ContactInitParameters) DeepCopy() *ContactInitParameters { + if in == nil { + return nil + } + out := new(ContactInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContactObservation) DeepCopyInto(out *ContactObservation) { *out = *in @@ -1462,6 +1876,26 @@ func (in *ContactParameters) DeepCopy() *ContactParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IssuerParametersInitParameters) DeepCopyInto(out *IssuerParametersInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IssuerParametersInitParameters. +func (in *IssuerParametersInitParameters) DeepCopy() *IssuerParametersInitParameters { + if in == nil { + return nil + } + out := new(IssuerParametersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IssuerParametersObservation) DeepCopyInto(out *IssuerParametersObservation) { *out = *in @@ -1529,6 +1963,79 @@ func (in *Key) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyInitParameters) DeepCopyInto(out *KeyInitParameters) { + *out = *in + if in.Curve != nil { + in, out := &in.Curve, &out.Curve + *out = new(string) + **out = **in + } + if in.ExpirationDate != nil { + in, out := &in.ExpirationDate, &out.ExpirationDate + *out = new(string) + **out = **in + } + if in.KeyOpts != nil { + in, out := &in.KeyOpts, &out.KeyOpts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.KeySize != nil { + in, out := &in.KeySize, &out.KeySize + *out = new(float64) + **out = **in + } + if in.KeyType != nil { + in, out := &in.KeyType, &out.KeyType + *out = new(string) + **out = **in + } + if in.NotBeforeDate != nil { + in, out := &in.NotBeforeDate, &out.NotBeforeDate + *out = new(string) + **out = **in + } + if in.RotationPolicy != nil { + in, out := &in.RotationPolicy, &out.RotationPolicy + *out = make([]RotationPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyInitParameters. +func (in *KeyInitParameters) DeepCopy() *KeyInitParameters { + if in == nil { + return nil + } + out := new(KeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KeyList) DeepCopyInto(out *KeyList) { *out = *in @@ -1782,6 +2289,46 @@ func (in *KeyParameters) DeepCopy() *KeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyPropertiesInitParameters) DeepCopyInto(out *KeyPropertiesInitParameters) { + *out = *in + if in.Curve != nil { + in, out := &in.Curve, &out.Curve + *out = new(string) + **out = **in + } + if in.Exportable != nil { + in, out := &in.Exportable, &out.Exportable + *out = new(bool) + **out = **in + } + if in.KeySize != nil { + in, out := &in.KeySize, &out.KeySize + *out = new(float64) + **out = **in + } + if in.KeyType != nil { + in, out := &in.KeyType, &out.KeyType + *out = new(string) + **out = **in + } + if in.ReuseKey != nil { + in, out := &in.ReuseKey, &out.ReuseKey + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyPropertiesInitParameters. +func (in *KeyPropertiesInitParameters) DeepCopy() *KeyPropertiesInitParameters { + if in == nil { + return nil + } + out := new(KeyPropertiesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KeyPropertiesObservation) DeepCopyInto(out *KeyPropertiesObservation) { *out = *in @@ -1867,6 +2414,7 @@ func (in *KeySpec) DeepCopyInto(out *KeySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeySpec. @@ -1896,6 +2444,35 @@ func (in *KeyStatus) DeepCopy() *KeyStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LifetimeActionInitParameters) DeepCopyInto(out *LifetimeActionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]ActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Trigger != nil { + in, out := &in.Trigger, &out.Trigger + *out = make([]TriggerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LifetimeActionInitParameters. +func (in *LifetimeActionInitParameters) DeepCopy() *LifetimeActionInitParameters { + if in == nil { + return nil + } + out := new(LifetimeActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LifetimeActionObservation) DeepCopyInto(out *LifetimeActionObservation) { *out = *in @@ -1982,14 +2559,92 @@ func (in *ManagedHardwareSecurityModule) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ManagedHardwareSecurityModuleList) DeepCopyInto(out *ManagedHardwareSecurityModuleList) { +func (in *ManagedHardwareSecurityModuleInitParameters) DeepCopyInto(out *ManagedHardwareSecurityModuleInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]ManagedHardwareSecurityModule, len(*in)) - for i := range *in { + if in.AdminObjectIds != nil { + in, out := &in.AdminObjectIds, &out.AdminObjectIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.NetworkAcls != nil { + in, out := &in.NetworkAcls, &out.NetworkAcls + *out = make([]ManagedHardwareSecurityModuleNetworkAclsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.PurgeProtectionEnabled != nil { + in, out := &in.PurgeProtectionEnabled, &out.PurgeProtectionEnabled + *out = new(bool) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.SoftDeleteRetentionDays != nil { + in, out := &in.SoftDeleteRetentionDays, &out.SoftDeleteRetentionDays + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedHardwareSecurityModuleInitParameters. +func (in *ManagedHardwareSecurityModuleInitParameters) DeepCopy() *ManagedHardwareSecurityModuleInitParameters { + if in == nil { + return nil + } + out := new(ManagedHardwareSecurityModuleInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedHardwareSecurityModuleList) DeepCopyInto(out *ManagedHardwareSecurityModuleList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ManagedHardwareSecurityModule, len(*in)) + for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } @@ -2013,6 +2668,31 @@ func (in *ManagedHardwareSecurityModuleList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedHardwareSecurityModuleNetworkAclsInitParameters) DeepCopyInto(out *ManagedHardwareSecurityModuleNetworkAclsInitParameters) { + *out = *in + if in.Bypass != nil { + in, out := &in.Bypass, &out.Bypass + *out = new(string) + **out = **in + } + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedHardwareSecurityModuleNetworkAclsInitParameters. +func (in *ManagedHardwareSecurityModuleNetworkAclsInitParameters) DeepCopy() *ManagedHardwareSecurityModuleNetworkAclsInitParameters { + if in == nil { + return nil + } + out := new(ManagedHardwareSecurityModuleNetworkAclsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedHardwareSecurityModuleNetworkAclsObservation) DeepCopyInto(out *ManagedHardwareSecurityModuleNetworkAclsObservation) { *out = *in @@ -2254,6 +2934,7 @@ func (in *ManagedHardwareSecurityModuleSpec) DeepCopyInto(out *ManagedHardwareSe *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedHardwareSecurityModuleSpec. @@ -2310,6 +2991,51 @@ func (in *ManagedStorageAccount) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedStorageAccountInitParameters) DeepCopyInto(out *ManagedStorageAccountInitParameters) { + *out = *in + if in.RegenerateKeyAutomatically != nil { + in, out := &in.RegenerateKeyAutomatically, &out.RegenerateKeyAutomatically + *out = new(bool) + **out = **in + } + if in.RegenerationPeriod != nil { + in, out := &in.RegenerationPeriod, &out.RegenerationPeriod + *out = new(string) + **out = **in + } + if in.StorageAccountKey != nil { + in, out := &in.StorageAccountKey, &out.StorageAccountKey + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedStorageAccountInitParameters. +func (in *ManagedStorageAccountInitParameters) DeepCopy() *ManagedStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(ManagedStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedStorageAccountList) DeepCopyInto(out *ManagedStorageAccountList) { *out = *in @@ -2504,6 +3230,51 @@ func (in *ManagedStorageAccountSASTokenDefinition) DeepCopyObject() runtime.Obje return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedStorageAccountSASTokenDefinitionInitParameters) DeepCopyInto(out *ManagedStorageAccountSASTokenDefinitionInitParameters) { + *out = *in + if in.SASTemplateURI != nil { + in, out := &in.SASTemplateURI, &out.SASTemplateURI + *out = new(string) + **out = **in + } + if in.SASType != nil { + in, out := &in.SASType, &out.SASType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ValidityPeriod != nil { + in, out := &in.ValidityPeriod, &out.ValidityPeriod + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedStorageAccountSASTokenDefinitionInitParameters. +func (in *ManagedStorageAccountSASTokenDefinitionInitParameters) DeepCopy() *ManagedStorageAccountSASTokenDefinitionInitParameters { + if in == nil { + return nil + } + out := new(ManagedStorageAccountSASTokenDefinitionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedStorageAccountSASTokenDefinitionList) DeepCopyInto(out *ManagedStorageAccountSASTokenDefinitionList) { *out = *in @@ -2661,6 +3432,7 @@ func (in *ManagedStorageAccountSASTokenDefinitionSpec) DeepCopyInto(out *Managed *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedStorageAccountSASTokenDefinitionSpec. @@ -2695,6 +3467,7 @@ func (in *ManagedStorageAccountSpec) DeepCopyInto(out *ManagedStorageAccountSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedStorageAccountSpec. @@ -2724,6 +3497,53 @@ func (in *ManagedStorageAccountStatus) DeepCopy() *ManagedStorageAccountStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkAclsInitParameters) DeepCopyInto(out *NetworkAclsInitParameters) { + *out = *in + if in.Bypass != nil { + in, out := &in.Bypass, &out.Bypass + *out = new(string) + **out = **in + } + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.IPRules != nil { + in, out := &in.IPRules, &out.IPRules + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.VirtualNetworkSubnetIds != nil { + in, out := &in.VirtualNetworkSubnetIds, &out.VirtualNetworkSubnetIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkAclsInitParameters. +func (in *NetworkAclsInitParameters) DeepCopy() *NetworkAclsInitParameters { + if in == nil { + return nil + } + out := new(NetworkAclsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkAclsObservation) DeepCopyInto(out *NetworkAclsObservation) { *out = *in @@ -2818,6 +3638,38 @@ func (in *NetworkAclsParameters) DeepCopy() *NetworkAclsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RotationPolicyInitParameters) DeepCopyInto(out *RotationPolicyInitParameters) { + *out = *in + if in.Automatic != nil { + in, out := &in.Automatic, &out.Automatic + *out = make([]AutomaticInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExpireAfter != nil { + in, out := &in.ExpireAfter, &out.ExpireAfter + *out = new(string) + **out = **in + } + if in.NotifyBeforeExpiry != nil { + in, out := &in.NotifyBeforeExpiry, &out.NotifyBeforeExpiry + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RotationPolicyInitParameters. +func (in *RotationPolicyInitParameters) DeepCopy() *RotationPolicyInitParameters { + if in == nil { + return nil + } + out := new(RotationPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RotationPolicyObservation) DeepCopyInto(out *RotationPolicyObservation) { *out = *in @@ -2909,6 +3761,51 @@ func (in *Secret) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretInitParameters) DeepCopyInto(out *SecretInitParameters) { + *out = *in + if in.ContentType != nil { + in, out := &in.ContentType, &out.ContentType + *out = new(string) + **out = **in + } + if in.ExpirationDate != nil { + in, out := &in.ExpirationDate, &out.ExpirationDate + *out = new(string) + **out = **in + } + if in.NotBeforeDate != nil { + in, out := &in.NotBeforeDate, &out.NotBeforeDate + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretInitParameters. +func (in *SecretInitParameters) DeepCopy() *SecretInitParameters { + if in == nil { + return nil + } + out := new(SecretInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecretList) DeepCopyInto(out *SecretList) { *out = *in @@ -3077,6 +3974,26 @@ func (in *SecretParameters) DeepCopy() *SecretParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretPropertiesInitParameters) DeepCopyInto(out *SecretPropertiesInitParameters) { + *out = *in + if in.ContentType != nil { + in, out := &in.ContentType, &out.ContentType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretPropertiesInitParameters. +func (in *SecretPropertiesInitParameters) DeepCopy() *SecretPropertiesInitParameters { + if in == nil { + return nil + } + out := new(SecretPropertiesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecretPropertiesObservation) DeepCopyInto(out *SecretPropertiesObservation) { *out = *in @@ -3122,6 +4039,7 @@ func (in *SecretSpec) DeepCopyInto(out *SecretSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretSpec. @@ -3151,6 +4069,54 @@ func (in *SecretStatus) DeepCopy() *SecretStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubjectAlternativeNamesInitParameters) DeepCopyInto(out *SubjectAlternativeNamesInitParameters) { + *out = *in + if in.DNSNames != nil { + in, out := &in.DNSNames, &out.DNSNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Emails != nil { + in, out := &in.Emails, &out.Emails + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Upns != nil { + in, out := &in.Upns, &out.Upns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAlternativeNamesInitParameters. +func (in *SubjectAlternativeNamesInitParameters) DeepCopy() *SubjectAlternativeNamesInitParameters { + if in == nil { + return nil + } + out := new(SubjectAlternativeNamesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubjectAlternativeNamesObservation) DeepCopyInto(out *SubjectAlternativeNamesObservation) { *out = *in @@ -3247,6 +4213,31 @@ func (in *SubjectAlternativeNamesParameters) DeepCopy() *SubjectAlternativeNames return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerInitParameters) DeepCopyInto(out *TriggerInitParameters) { + *out = *in + if in.DaysBeforeExpiry != nil { + in, out := &in.DaysBeforeExpiry, &out.DaysBeforeExpiry + *out = new(float64) + **out = **in + } + if in.LifetimePercentage != nil { + in, out := &in.LifetimePercentage, &out.LifetimePercentage + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerInitParameters. +func (in *TriggerInitParameters) DeepCopy() *TriggerInitParameters { + if in == nil { + return nil + } + out := new(TriggerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerObservation) DeepCopyInto(out *TriggerObservation) { *out = *in @@ -3324,6 +4315,100 @@ func (in *Vault) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VaultInitParameters) DeepCopyInto(out *VaultInitParameters) { + *out = *in + if in.Contact != nil { + in, out := &in.Contact, &out.Contact + *out = make([]ContactInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EnableRbacAuthorization != nil { + in, out := &in.EnableRbacAuthorization, &out.EnableRbacAuthorization + *out = new(bool) + **out = **in + } + if in.EnabledForDeployment != nil { + in, out := &in.EnabledForDeployment, &out.EnabledForDeployment + *out = new(bool) + **out = **in + } + if in.EnabledForDiskEncryption != nil { + in, out := &in.EnabledForDiskEncryption, &out.EnabledForDiskEncryption + *out = new(bool) + **out = **in + } + if in.EnabledForTemplateDeployment != nil { + in, out := &in.EnabledForTemplateDeployment, &out.EnabledForTemplateDeployment + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.NetworkAcls != nil { + in, out := &in.NetworkAcls, &out.NetworkAcls + *out = make([]NetworkAclsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.PurgeProtectionEnabled != nil { + in, out := &in.PurgeProtectionEnabled, &out.PurgeProtectionEnabled + *out = new(bool) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.SoftDeleteRetentionDays != nil { + in, out := &in.SoftDeleteRetentionDays, &out.SoftDeleteRetentionDays + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VaultInitParameters. +func (in *VaultInitParameters) DeepCopy() *VaultInitParameters { + if in == nil { + return nil + } + out := new(VaultInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VaultList) DeepCopyInto(out *VaultList) { *out = *in @@ -3586,6 +4671,7 @@ func (in *VaultSpec) DeepCopyInto(out *VaultSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VaultSpec. @@ -3615,6 +4701,60 @@ func (in *VaultStatus) DeepCopy() *VaultStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *X509CertificatePropertiesInitParameters) DeepCopyInto(out *X509CertificatePropertiesInitParameters) { + *out = *in + if in.ExtendedKeyUsage != nil { + in, out := &in.ExtendedKeyUsage, &out.ExtendedKeyUsage + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.KeyUsage != nil { + in, out := &in.KeyUsage, &out.KeyUsage + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } + if in.SubjectAlternativeNames != nil { + in, out := &in.SubjectAlternativeNames, &out.SubjectAlternativeNames + *out = make([]SubjectAlternativeNamesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ValidityInMonths != nil { + in, out := &in.ValidityInMonths, &out.ValidityInMonths + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new X509CertificatePropertiesInitParameters. +func (in *X509CertificatePropertiesInitParameters) DeepCopy() *X509CertificatePropertiesInitParameters { + if in == nil { + return nil + } + out := new(X509CertificatePropertiesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *X509CertificatePropertiesObservation) DeepCopyInto(out *X509CertificatePropertiesObservation) { *out = *in diff --git a/apis/keyvault/v1beta1/zz_generated.managed.go b/apis/keyvault/v1beta1/zz_generated.managed.go index 6e7c5adef..c558fb2e8 100644 --- a/apis/keyvault/v1beta1/zz_generated.managed.go +++ b/apis/keyvault/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AccessPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AccessPolicy. -func (mg *AccessPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AccessPolicy. +func (mg *AccessPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AccessPolicy. @@ -55,9 +55,9 @@ func (mg *AccessPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AccessPolicy. -func (mg *AccessPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AccessPolicy. +func (mg *AccessPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AccessPolicy. @@ -93,9 +93,9 @@ func (mg *Certificate) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Certificate. -func (mg *Certificate) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Certificate. +func (mg *Certificate) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Certificate. @@ -131,9 +131,9 @@ func (mg *Certificate) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Certificate. -func (mg *Certificate) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Certificate. +func (mg *Certificate) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Certificate. @@ -169,9 +169,9 @@ func (mg *CertificateContacts) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CertificateContacts. -func (mg *CertificateContacts) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CertificateContacts. +func (mg *CertificateContacts) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CertificateContacts. @@ -207,9 +207,9 @@ func (mg *CertificateContacts) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CertificateContacts. -func (mg *CertificateContacts) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CertificateContacts. +func (mg *CertificateContacts) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CertificateContacts. @@ -245,9 +245,9 @@ func (mg *CertificateIssuer) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CertificateIssuer. -func (mg *CertificateIssuer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CertificateIssuer. +func (mg *CertificateIssuer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CertificateIssuer. @@ -283,9 +283,9 @@ func (mg *CertificateIssuer) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CertificateIssuer. -func (mg *CertificateIssuer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CertificateIssuer. +func (mg *CertificateIssuer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CertificateIssuer. @@ -321,9 +321,9 @@ func (mg *Key) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Key. -func (mg *Key) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Key. +func (mg *Key) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Key. @@ -359,9 +359,9 @@ func (mg *Key) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Key. -func (mg *Key) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Key. +func (mg *Key) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Key. @@ -397,9 +397,9 @@ func (mg *ManagedHardwareSecurityModule) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagedHardwareSecurityModule. -func (mg *ManagedHardwareSecurityModule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagedHardwareSecurityModule. +func (mg *ManagedHardwareSecurityModule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagedHardwareSecurityModule. @@ -435,9 +435,9 @@ func (mg *ManagedHardwareSecurityModule) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagedHardwareSecurityModule. -func (mg *ManagedHardwareSecurityModule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagedHardwareSecurityModule. +func (mg *ManagedHardwareSecurityModule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagedHardwareSecurityModule. @@ -473,9 +473,9 @@ func (mg *ManagedStorageAccount) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagedStorageAccount. -func (mg *ManagedStorageAccount) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagedStorageAccount. +func (mg *ManagedStorageAccount) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagedStorageAccount. @@ -511,9 +511,9 @@ func (mg *ManagedStorageAccount) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagedStorageAccount. -func (mg *ManagedStorageAccount) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagedStorageAccount. +func (mg *ManagedStorageAccount) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagedStorageAccount. @@ -549,9 +549,9 @@ func (mg *ManagedStorageAccountSASTokenDefinition) GetDeletionPolicy() xpv1.Dele return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagedStorageAccountSASTokenDefinition. -func (mg *ManagedStorageAccountSASTokenDefinition) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagedStorageAccountSASTokenDefinition. +func (mg *ManagedStorageAccountSASTokenDefinition) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagedStorageAccountSASTokenDefinition. @@ -587,9 +587,9 @@ func (mg *ManagedStorageAccountSASTokenDefinition) SetDeletionPolicy(r xpv1.Dele mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagedStorageAccountSASTokenDefinition. -func (mg *ManagedStorageAccountSASTokenDefinition) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagedStorageAccountSASTokenDefinition. +func (mg *ManagedStorageAccountSASTokenDefinition) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagedStorageAccountSASTokenDefinition. @@ -625,9 +625,9 @@ func (mg *Secret) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Secret. -func (mg *Secret) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Secret. +func (mg *Secret) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Secret. @@ -663,9 +663,9 @@ func (mg *Secret) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Secret. -func (mg *Secret) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Secret. +func (mg *Secret) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Secret. @@ -701,9 +701,9 @@ func (mg *Vault) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Vault. -func (mg *Vault) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Vault. +func (mg *Vault) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Vault. @@ -739,9 +739,9 @@ func (mg *Vault) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Vault. -func (mg *Vault) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Vault. +func (mg *Vault) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Vault. diff --git a/apis/keyvault/v1beta1/zz_generated_terraformed.go b/apis/keyvault/v1beta1/zz_generated_terraformed.go index c52219b34..a3801e697 100755 --- a/apis/keyvault/v1beta1/zz_generated_terraformed.go +++ b/apis/keyvault/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Vault) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Vault +func (tr *Vault) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Vault using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Vault) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *AccessPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AccessPolicy +func (tr *AccessPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AccessPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AccessPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *Certificate) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Certificate +func (tr *Certificate) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Certificate using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Certificate) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *CertificateContacts) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CertificateContacts +func (tr *CertificateContacts) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CertificateContacts using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CertificateContacts) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *CertificateIssuer) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CertificateIssuer +func (tr *CertificateIssuer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CertificateIssuer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CertificateIssuer) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *Key) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Key +func (tr *Key) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Key using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Key) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *ManagedHardwareSecurityModule) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagedHardwareSecurityModule +func (tr *ManagedHardwareSecurityModule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagedHardwareSecurityModule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagedHardwareSecurityModule) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *ManagedStorageAccount) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagedStorageAccount +func (tr *ManagedStorageAccount) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagedStorageAccount using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagedStorageAccount) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *ManagedStorageAccountSASTokenDefinition) SetParameters(params map[stri return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagedStorageAccountSASTokenDefinition +func (tr *ManagedStorageAccountSASTokenDefinition) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagedStorageAccountSASTokenDefinition using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagedStorageAccountSASTokenDefinition) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *Secret) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Secret +func (tr *Secret) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Secret using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Secret) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/keyvault/v1beta1/zz_key_types.go b/apis/keyvault/v1beta1/zz_key_types.go index 7be471396..f763620b2 100755 --- a/apis/keyvault/v1beta1/zz_key_types.go +++ b/apis/keyvault/v1beta1/zz_key_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AutomaticInitParameters struct { + + // Rotate automatically at a duration after create as an ISO 8601 duration. + TimeAfterCreation *string `json:"timeAfterCreation,omitempty" tf:"time_after_creation,omitempty"` + + // Rotate automatically at a duration before expiry as an ISO 8601 duration. + TimeBeforeExpiry *string `json:"timeBeforeExpiry,omitempty" tf:"time_before_expiry,omitempty"` +} + type AutomaticObservation struct { // Rotate automatically at a duration after create as an ISO 8601 duration. @@ -33,6 +42,33 @@ type AutomaticParameters struct { TimeBeforeExpiry *string `json:"timeBeforeExpiry,omitempty" tf:"time_before_expiry,omitempty"` } +type KeyInitParameters struct { + + // Specifies the curve to use when creating an EC key. Possible values are P-256, P-256K, P-384, and P-521. This field will be required in a future release if key_type is EC or EC-HSM. The API will default to P-256 if nothing is specified. Changing this forces a new resource to be created. + Curve *string `json:"curve,omitempty" tf:"curve,omitempty"` + + // Expiration UTC datetime (Y-m-d'T'H:M:S'Z'). + ExpirationDate *string `json:"expirationDate,omitempty" tf:"expiration_date,omitempty"` + + // A list of JSON web key operations. Possible values include: decrypt, encrypt, sign, unwrapKey, verify and wrapKey. Please note these values are case sensitive. + KeyOpts []*string `json:"keyOpts,omitempty" tf:"key_opts,omitempty"` + + // Specifies the Size of the RSA key to create in bytes. For example, 1024 or 2048. Note: This field is required if key_type is RSA or RSA-HSM. Changing this forces a new resource to be created. + KeySize *float64 `json:"keySize,omitempty" tf:"key_size,omitempty"` + + // Specifies the Key Type to use for this Key Vault Key. Possible values are EC (Elliptic Curve), EC-HSM, RSA and RSA-HSM. Changing this forces a new resource to be created. + KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"` + + // Key not usable before the provided UTC datetime (Y-m-d'T'H:M:S'Z'). + NotBeforeDate *string `json:"notBeforeDate,omitempty" tf:"not_before_date,omitempty"` + + // A rotation_policy block as defined below. + RotationPolicy []RotationPolicyInitParameters `json:"rotationPolicy,omitempty" tf:"rotation_policy,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type KeyObservation struct { // Specifies the curve to use when creating an EC key. Possible values are P-256, P-256K, P-384, and P-521. This field will be required in a future release if key_type is EC or EC-HSM. The API will default to P-256 if nothing is specified. Changing this forces a new resource to be created. @@ -145,6 +181,18 @@ type KeyParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type RotationPolicyInitParameters struct { + + // An automatic block as defined below. + Automatic []AutomaticInitParameters `json:"automatic,omitempty" tf:"automatic,omitempty"` + + // Expire a Key Vault Key after given duration as an ISO 8601 duration. + ExpireAfter *string `json:"expireAfter,omitempty" tf:"expire_after,omitempty"` + + // Notify at a given duration before expiry as an ISO 8601 duration. Default is P30D. + NotifyBeforeExpiry *string `json:"notifyBeforeExpiry,omitempty" tf:"notify_before_expiry,omitempty"` +} + type RotationPolicyObservation struct { // An automatic block as defined below. @@ -176,6 +224,18 @@ type RotationPolicyParameters struct { type KeySpec struct { v1.ResourceSpec `json:",inline"` ForProvider KeyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider KeyInitParameters `json:"initProvider,omitempty"` } // KeyStatus defines the observed state of Key. @@ -196,8 +256,8 @@ type KeyStatus struct { type Key struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.keyOpts)",message="keyOpts is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.keyType)",message="keyType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.keyOpts) || has(self.initProvider.keyOpts)",message="keyOpts is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.keyType) || has(self.initProvider.keyType)",message="keyType is a required parameter" Spec KeySpec `json:"spec"` Status KeyStatus `json:"status,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_managedhardwaresecuritymodule_types.go b/apis/keyvault/v1beta1/zz_managedhardwaresecuritymodule_types.go index 71d6d5692..4d73c3d69 100755 --- a/apis/keyvault/v1beta1/zz_managedhardwaresecuritymodule_types.go +++ b/apis/keyvault/v1beta1/zz_managedhardwaresecuritymodule_types.go @@ -13,6 +13,45 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagedHardwareSecurityModuleInitParameters struct { + + // Specifies a list of administrators object IDs for the key vault Managed Hardware Security Module. Changing this forces a new resource to be created. + AdminObjectIds []*string `json:"adminObjectIds,omitempty" tf:"admin_object_ids,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A network_acls block as defined below. + NetworkAcls []ManagedHardwareSecurityModuleNetworkAclsInitParameters `json:"networkAcls,omitempty" tf:"network_acls,omitempty"` + + // Whether traffic from public networks is permitted. Defaults to true. Changing this forces a new resource to be created. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Is Purge Protection enabled for this Key Vault Managed Hardware Security Module? Changing this forces a new resource to be created. + PurgeProtectionEnabled *bool `json:"purgeProtectionEnabled,omitempty" tf:"purge_protection_enabled,omitempty"` + + // The Name of the SKU used for this Key Vault Managed Hardware Security Module. Possible value is Standard_B1. Changing this forces a new resource to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // The number of days that items should be retained for once soft-deleted. This value can be between 7 and 90 days. Defaults to 90. Changing this forces a new resource to be created. + SoftDeleteRetentionDays *float64 `json:"softDeleteRetentionDays,omitempty" tf:"soft_delete_retention_days,omitempty"` + + // A mapping of tags to assign to the resource. Changing this forces a new resource to be created. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The Azure Active Directory Tenant ID that should be used for authenticating requests to the key vault Managed Hardware Security Module. Changing this forces a new resource to be created. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + +type ManagedHardwareSecurityModuleNetworkAclsInitParameters struct { + + // Specifies which traffic can bypass the network rules. Possible values are AzureServices and None. + Bypass *string `json:"bypass,omitempty" tf:"bypass,omitempty"` + + // The Default Action to use. Possible values are Allow and Deny. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` +} + type ManagedHardwareSecurityModuleNetworkAclsObservation struct { // Specifies which traffic can bypass the network rules. Possible values are AzureServices and None. @@ -25,12 +64,12 @@ type ManagedHardwareSecurityModuleNetworkAclsObservation struct { type ManagedHardwareSecurityModuleNetworkAclsParameters struct { // Specifies which traffic can bypass the network rules. Possible values are AzureServices and None. - // +kubebuilder:validation:Required - Bypass *string `json:"bypass" tf:"bypass,omitempty"` + // +kubebuilder:validation:Optional + Bypass *string `json:"bypass,omitempty" tf:"bypass,omitempty"` // The Default Action to use. Possible values are Allow and Deny. - // +kubebuilder:validation:Required - DefaultAction *string `json:"defaultAction" tf:"default_action,omitempty"` + // +kubebuilder:validation:Optional + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` } type ManagedHardwareSecurityModuleObservation struct { @@ -128,6 +167,18 @@ type ManagedHardwareSecurityModuleParameters struct { type ManagedHardwareSecurityModuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagedHardwareSecurityModuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagedHardwareSecurityModuleInitParameters `json:"initProvider,omitempty"` } // ManagedHardwareSecurityModuleStatus defines the observed state of ManagedHardwareSecurityModule. @@ -148,10 +199,10 @@ type ManagedHardwareSecurityModuleStatus struct { type ManagedHardwareSecurityModule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminObjectIds)",message="adminObjectIds is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId)",message="tenantId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adminObjectIds) || has(self.initProvider.adminObjectIds)",message="adminObjectIds is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantId) || has(self.initProvider.tenantId)",message="tenantId is a required parameter" Spec ManagedHardwareSecurityModuleSpec `json:"spec"` Status ManagedHardwareSecurityModuleStatus `json:"status,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_managedstorageaccount_types.go b/apis/keyvault/v1beta1/zz_managedstorageaccount_types.go index 049c6e548..9bcc29f46 100755 --- a/apis/keyvault/v1beta1/zz_managedstorageaccount_types.go +++ b/apis/keyvault/v1beta1/zz_managedstorageaccount_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagedStorageAccountInitParameters struct { + + // Should Storage Account access key be regenerated periodically? + RegenerateKeyAutomatically *bool `json:"regenerateKeyAutomatically,omitempty" tf:"regenerate_key_automatically,omitempty"` + + // How often Storage Account access key should be regenerated. Value needs to be in ISO 8601 duration format. + RegenerationPeriod *string `json:"regenerationPeriod,omitempty" tf:"regeneration_period,omitempty"` + + // Which Storage Account access key that is managed by Key Vault. Possible values are key1 and key2. + StorageAccountKey *string `json:"storageAccountKey,omitempty" tf:"storage_account_key,omitempty"` + + // A mapping of tags which should be assigned to the Key Vault Managed Storage Account. Changing this forces a new resource to be created. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ManagedStorageAccountObservation struct { // The ID of the Key Vault Managed Storage Account. @@ -88,6 +103,18 @@ type ManagedStorageAccountParameters struct { type ManagedStorageAccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagedStorageAccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagedStorageAccountInitParameters `json:"initProvider,omitempty"` } // ManagedStorageAccountStatus defines the observed state of ManagedStorageAccount. @@ -108,7 +135,7 @@ type ManagedStorageAccountStatus struct { type ManagedStorageAccount struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountKey)",message="storageAccountKey is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageAccountKey) || has(self.initProvider.storageAccountKey)",message="storageAccountKey is a required parameter" Spec ManagedStorageAccountSpec `json:"spec"` Status ManagedStorageAccountStatus `json:"status,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_managedstorageaccountsastokendefinition_types.go b/apis/keyvault/v1beta1/zz_managedstorageaccountsastokendefinition_types.go index 70a2d2400..99cb57693 100755 --- a/apis/keyvault/v1beta1/zz_managedstorageaccountsastokendefinition_types.go +++ b/apis/keyvault/v1beta1/zz_managedstorageaccountsastokendefinition_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagedStorageAccountSASTokenDefinitionInitParameters struct { + + // The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template, but regenerated with a new validity period. + SASTemplateURI *string `json:"sasTemplateUri,omitempty" tf:"sas_template_uri,omitempty"` + + // The type of SAS token the SAS definition will create. Possible values are account and service. + SASType *string `json:"sasType,omitempty" tf:"sas_type,omitempty"` + + // A mapping of tags which should be assigned to the SAS Definition. Changing this forces a new resource to be created. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Validity period of SAS token. Value needs to be in ISO 8601 duration format. + ValidityPeriod *string `json:"validityPeriod,omitempty" tf:"validity_period,omitempty"` +} + type ManagedStorageAccountSASTokenDefinitionObservation struct { // The ID of the Managed Storage Account SAS Definition. @@ -74,6 +89,18 @@ type ManagedStorageAccountSASTokenDefinitionParameters struct { type ManagedStorageAccountSASTokenDefinitionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagedStorageAccountSASTokenDefinitionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagedStorageAccountSASTokenDefinitionInitParameters `json:"initProvider,omitempty"` } // ManagedStorageAccountSASTokenDefinitionStatus defines the observed state of ManagedStorageAccountSASTokenDefinition. @@ -94,9 +121,9 @@ type ManagedStorageAccountSASTokenDefinitionStatus struct { type ManagedStorageAccountSASTokenDefinition struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sasTemplateUri)",message="sasTemplateUri is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sasType)",message="sasType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.validityPeriod)",message="validityPeriod is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sasTemplateUri) || has(self.initProvider.sasTemplateUri)",message="sasTemplateUri is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sasType) || has(self.initProvider.sasType)",message="sasType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.validityPeriod) || has(self.initProvider.validityPeriod)",message="validityPeriod is a required parameter" Spec ManagedStorageAccountSASTokenDefinitionSpec `json:"spec"` Status ManagedStorageAccountSASTokenDefinitionStatus `json:"status,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_secret_types.go b/apis/keyvault/v1beta1/zz_secret_types.go index 0e508a208..929b1dd65 100755 --- a/apis/keyvault/v1beta1/zz_secret_types.go +++ b/apis/keyvault/v1beta1/zz_secret_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecretInitParameters struct { + + // Specifies the content type for the Key Vault Secret. + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` + + // Expiration UTC datetime (Y-m-d'T'H:M:S'Z'). + ExpirationDate *string `json:"expirationDate,omitempty" tf:"expiration_date,omitempty"` + + // Key not usable before the provided UTC datetime (Y-m-d'T'H:M:S'Z'). + NotBeforeDate *string `json:"notBeforeDate,omitempty" tf:"not_before_date,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type SecretObservation struct { // Specifies the content type for the Key Vault Secret. @@ -87,6 +102,18 @@ type SecretParameters struct { type SecretSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecretParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecretInitParameters `json:"initProvider,omitempty"` } // SecretStatus defines the observed state of Secret. @@ -107,7 +134,7 @@ type SecretStatus struct { type Secret struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.valueSecretRef)",message="valueSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.valueSecretRef)",message="valueSecretRef is a required parameter" Spec SecretSpec `json:"spec"` Status SecretStatus `json:"status,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_vault_types.go b/apis/keyvault/v1beta1/zz_vault_types.go index aeb5ef48d..8f7d52779 100755 --- a/apis/keyvault/v1beta1/zz_vault_types.go +++ b/apis/keyvault/v1beta1/zz_vault_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccessPolicyInitParameters struct { +} + type AccessPolicyObservation struct { // The object ID of an Application in Azure Active Directory. @@ -40,6 +43,18 @@ type AccessPolicyObservation struct { type AccessPolicyParameters struct { } +type ContactInitParameters struct { + + // E-mail address of the contact. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // Name of the contact. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Phone number of the contact. + Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` +} + type ContactObservation struct { // E-mail address of the contact. @@ -55,8 +70,8 @@ type ContactObservation struct { type ContactParameters struct { // E-mail address of the contact. - // +kubebuilder:validation:Required - Email *string `json:"email" tf:"email,omitempty"` + // +kubebuilder:validation:Optional + Email *string `json:"email,omitempty" tf:"email,omitempty"` // Name of the contact. // +kubebuilder:validation:Optional @@ -67,6 +82,21 @@ type ContactParameters struct { Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` } +type NetworkAclsInitParameters struct { + + // Specifies which traffic can bypass the network rules. Possible values are AzureServices and None. + Bypass *string `json:"bypass,omitempty" tf:"bypass,omitempty"` + + // The Default Action to use when no rules match from ip_rules / virtual_network_subnet_ids. Possible values are Allow and Deny. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + + // One or more IP Addresses, or CIDR Blocks which should be able to access the Key Vault. + IPRules []*string `json:"ipRules,omitempty" tf:"ip_rules,omitempty"` + + // One or more Subnet IDs which should be able to access this Key Vault. + VirtualNetworkSubnetIds []*string `json:"virtualNetworkSubnetIds,omitempty" tf:"virtual_network_subnet_ids,omitempty"` +} + type NetworkAclsObservation struct { // Specifies which traffic can bypass the network rules. Possible values are AzureServices and None. @@ -85,12 +115,12 @@ type NetworkAclsObservation struct { type NetworkAclsParameters struct { // Specifies which traffic can bypass the network rules. Possible values are AzureServices and None. - // +kubebuilder:validation:Required - Bypass *string `json:"bypass" tf:"bypass,omitempty"` + // +kubebuilder:validation:Optional + Bypass *string `json:"bypass,omitempty" tf:"bypass,omitempty"` // The Default Action to use when no rules match from ip_rules / virtual_network_subnet_ids. Possible values are Allow and Deny. - // +kubebuilder:validation:Required - DefaultAction *string `json:"defaultAction" tf:"default_action,omitempty"` + // +kubebuilder:validation:Optional + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // One or more IP Addresses, or CIDR Blocks which should be able to access the Key Vault. // +kubebuilder:validation:Optional @@ -101,6 +131,48 @@ type NetworkAclsParameters struct { VirtualNetworkSubnetIds []*string `json:"virtualNetworkSubnetIds,omitempty" tf:"virtual_network_subnet_ids,omitempty"` } +type VaultInitParameters struct { + + // One or more contact block as defined below. + Contact []ContactInitParameters `json:"contact,omitempty" tf:"contact,omitempty"` + + // Boolean flag to specify whether Azure Key Vault uses Role Based Access Control (RBAC) for authorization of data actions. + EnableRbacAuthorization *bool `json:"enableRbacAuthorization,omitempty" tf:"enable_rbac_authorization,omitempty"` + + // Boolean flag to specify whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault. + EnabledForDeployment *bool `json:"enabledForDeployment,omitempty" tf:"enabled_for_deployment,omitempty"` + + // Boolean flag to specify whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys. + EnabledForDiskEncryption *bool `json:"enabledForDiskEncryption,omitempty" tf:"enabled_for_disk_encryption,omitempty"` + + // Boolean flag to specify whether Azure Resource Manager is permitted to retrieve secrets from the key vault. + EnabledForTemplateDeployment *bool `json:"enabledForTemplateDeployment,omitempty" tf:"enabled_for_template_deployment,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A network_acls block as defined below. + NetworkAcls []NetworkAclsInitParameters `json:"networkAcls,omitempty" tf:"network_acls,omitempty"` + + // Whether public network access is allowed for this Key Vault. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Is Purge Protection enabled for this Key Vault? + PurgeProtectionEnabled *bool `json:"purgeProtectionEnabled,omitempty" tf:"purge_protection_enabled,omitempty"` + + // The Name of the SKU used for this Key Vault. Possible values are standard and premium. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // The number of days that items should be retained for once soft-deleted. This value can be between 7 and 90 (the default) days. + SoftDeleteRetentionDays *float64 `json:"softDeleteRetentionDays,omitempty" tf:"soft_delete_retention_days,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type VaultObservation struct { // A list of up to 1024 objects describing access policies, as described below. @@ -227,6 +299,18 @@ type VaultParameters struct { type VaultSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VaultParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VaultInitParameters `json:"initProvider,omitempty"` } // VaultStatus defines the observed state of Vault. @@ -247,9 +331,9 @@ type VaultStatus struct { type Vault struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId)",message="tenantId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantId) || has(self.initProvider.tenantId)",message="tenantId is a required parameter" Spec VaultSpec `json:"spec"` Status VaultStatus `json:"status,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_attacheddatabaseconfiguration_types.go b/apis/kusto/v1beta1/zz_attacheddatabaseconfiguration_types.go index 8983ceb99..6f7dbf70c 100755 --- a/apis/kusto/v1beta1/zz_attacheddatabaseconfiguration_types.go +++ b/apis/kusto/v1beta1/zz_attacheddatabaseconfiguration_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AttachedDatabaseConfigurationInitParameters struct { + + // The default principals modification kind. Valid values are: None (default), Replace and Union. + DefaultPrincipalModificationKind *string `json:"defaultPrincipalModificationKind,omitempty" tf:"default_principal_modification_kind,omitempty"` + + // Specifies the location of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the Kusto Attached Database Configuration to create. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A sharing block as defined below. + Sharing []SharingInitParameters `json:"sharing,omitempty" tf:"sharing,omitempty"` +} + type AttachedDatabaseConfigurationObservation struct { // The list of databases from the cluster_resource_id which are currently attached to the cluster. @@ -118,6 +133,27 @@ type AttachedDatabaseConfigurationParameters struct { Sharing []SharingParameters `json:"sharing,omitempty" tf:"sharing,omitempty"` } +type SharingInitParameters struct { + + // List of external tables exclude from the follower database. + ExternalTablesToExclude []*string `json:"externalTablesToExclude,omitempty" tf:"external_tables_to_exclude,omitempty"` + + // List of external tables to include in the follower database. + ExternalTablesToInclude []*string `json:"externalTablesToInclude,omitempty" tf:"external_tables_to_include,omitempty"` + + // List of materialized views exclude from the follower database. + MaterializedViewsToExclude []*string `json:"materializedViewsToExclude,omitempty" tf:"materialized_views_to_exclude,omitempty"` + + // List of materialized views to include in the follower database. + MaterializedViewsToInclude []*string `json:"materializedViewsToInclude,omitempty" tf:"materialized_views_to_include,omitempty"` + + // List of tables to exclude from the follower database. + TablesToExclude []*string `json:"tablesToExclude,omitempty" tf:"tables_to_exclude,omitempty"` + + // List of tables to include in the follower database. + TablesToInclude []*string `json:"tablesToInclude,omitempty" tf:"tables_to_include,omitempty"` +} + type SharingObservation struct { // List of external tables exclude from the follower database. @@ -170,6 +206,18 @@ type SharingParameters struct { type AttachedDatabaseConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AttachedDatabaseConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AttachedDatabaseConfigurationInitParameters `json:"initProvider,omitempty"` } // AttachedDatabaseConfigurationStatus defines the observed state of AttachedDatabaseConfiguration. @@ -190,8 +238,8 @@ type AttachedDatabaseConfigurationStatus struct { type AttachedDatabaseConfiguration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec AttachedDatabaseConfigurationSpec `json:"spec"` Status AttachedDatabaseConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_cluster_types.go b/apis/kusto/v1beta1/zz_cluster_types.go index 1a9497285..d7c9175e6 100755 --- a/apis/kusto/v1beta1/zz_cluster_types.go +++ b/apis/kusto/v1beta1/zz_cluster_types.go @@ -13,6 +13,69 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ClusterInitParameters struct { + + // List of allowed FQDNs(Fully Qualified Domain Name) for egress from Cluster. + AllowedFqdns []*string `json:"allowedFqdns,omitempty" tf:"allowed_fqdns,omitempty"` + + // The list of ips in the format of CIDR allowed to connect to the cluster. + AllowedIPRanges []*string `json:"allowedIpRanges,omitempty" tf:"allowed_ip_ranges,omitempty"` + + // Specifies if the cluster could be automatically stopped (due to lack of data or no activity for many days). Defaults to true. + AutoStopEnabled *bool `json:"autoStopEnabled,omitempty" tf:"auto_stop_enabled,omitempty"` + + // Specifies if the cluster's disks are encrypted. + DiskEncryptionEnabled *bool `json:"diskEncryptionEnabled,omitempty" tf:"disk_encryption_enabled,omitempty"` + + // Is the cluster's double encryption enabled? Changing this forces a new resource to be created. + DoubleEncryptionEnabled *bool `json:"doubleEncryptionEnabled,omitempty" tf:"double_encryption_enabled,omitempty"` + + // . The engine type that will be used in the backend. Possible values are V2 and V3. Defaults to V2. Changing this forces a new Kusto Cluster to be created. + Engine *string `json:"engine,omitempty" tf:"engine,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // An list of language_extensions to enable. Valid values are: PYTHON and R. + LanguageExtensions []*string `json:"languageExtensions,omitempty" tf:"language_extensions,omitempty"` + + // The location where the Kusto Cluster should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // An optimized_auto_scale block as defined below. + OptimizedAutoScale []OptimizedAutoScaleInitParameters `json:"optimizedAutoScale,omitempty" tf:"optimized_auto_scale,omitempty"` + + // Whether to restrict outbound network access. Value is optional but if passed in, must be true or false, default is false. + OutboundNetworkAccessRestricted *bool `json:"outboundNetworkAccessRestricted,omitempty" tf:"outbound_network_access_restricted,omitempty"` + + // Indicates what public IP type to create - IPv4 (default), or DualStack (both IPv4 and IPv6). + PublicIPType *string `json:"publicIpType,omitempty" tf:"public_ip_type,omitempty"` + + // Is the public network access enabled? Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Specifies if the purge operations are enabled. + PurgeEnabled *bool `json:"purgeEnabled,omitempty" tf:"purge_enabled,omitempty"` + + // A sku block as defined below. + Sku []SkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"` + + // Specifies if the streaming ingest is enabled. + StreamingIngestionEnabled *bool `json:"streamingIngestionEnabled,omitempty" tf:"streaming_ingestion_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies a list of tenant IDs that are trusted by the cluster. Default setting trusts all other tenants. Use trusted_external_tenants = ["*"] to explicitly allow all other tenants, trusted_external_tenants = ["MyTenantOnly"] for only your tenant or trusted_external_tenants = ["", ""] to allow specific other tenants. + TrustedExternalTenants []*string `json:"trustedExternalTenants,omitempty" tf:"trusted_external_tenants,omitempty"` + + // A virtual_network_configuration block as defined below. Changing this forces a new resource to be created. + VirtualNetworkConfiguration []VirtualNetworkConfigurationInitParameters `json:"virtualNetworkConfiguration,omitempty" tf:"virtual_network_configuration,omitempty"` + + // Specifies a list of Availability Zones in which this Kusto Cluster should be located. Changing this forces a new Kusto Cluster to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type ClusterObservation struct { // List of allowed FQDNs(Fully Qualified Domain Name) for egress from Cluster. @@ -184,6 +247,15 @@ type ClusterParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Kusto Cluster. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Kusto Cluster. @@ -206,8 +278,17 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type OptimizedAutoScaleInitParameters struct { + + // The maximum number of allowed instances. Must between 0 and 1000. + MaximumInstances *float64 `json:"maximumInstances,omitempty" tf:"maximum_instances,omitempty"` + + // The minimum number of allowed instances. Must between 0 and 1000. + MinimumInstances *float64 `json:"minimumInstances,omitempty" tf:"minimum_instances,omitempty"` } type OptimizedAutoScaleObservation struct { @@ -222,12 +303,21 @@ type OptimizedAutoScaleObservation struct { type OptimizedAutoScaleParameters struct { // The maximum number of allowed instances. Must between 0 and 1000. - // +kubebuilder:validation:Required - MaximumInstances *float64 `json:"maximumInstances" tf:"maximum_instances,omitempty"` + // +kubebuilder:validation:Optional + MaximumInstances *float64 `json:"maximumInstances,omitempty" tf:"maximum_instances,omitempty"` // The minimum number of allowed instances. Must between 0 and 1000. - // +kubebuilder:validation:Required - MinimumInstances *float64 `json:"minimumInstances" tf:"minimum_instances,omitempty"` + // +kubebuilder:validation:Optional + MinimumInstances *float64 `json:"minimumInstances,omitempty" tf:"minimum_instances,omitempty"` +} + +type SkuInitParameters struct { + + // Specifies the node count for the cluster. Boundaries depend on the SKU name. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // The name of the SKU. Valid values are: Dev(No SLA)_Standard_D11_v2, Dev(No SLA)_Standard_E2a_v4, Standard_D11_v2, Standard_D12_v2, Standard_D13_v2, Standard_D14_v2, Standard_D16d_v5, Standard_D32d_v4, Standard_D32d_v5, Standard_DS13_v2+1TB_PS, Standard_DS13_v2+2TB_PS, Standard_DS14_v2+3TB_PS, Standard_DS14_v2+4TB_PS, Standard_E16a_v4, Standard_E16ads_v5, Standard_E16as_v4+3TB_PS, Standard_E16as_v4+4TB_PS, Standard_E16as_v5+3TB_PS, Standard_E16as_v5+4TB_PS, Standard_E16s_v4+3TB_PS, Standard_E16s_v4+4TB_PS, Standard_E16s_v5+3TB_PS, Standard_E16s_v5+4TB_PS, Standard_E2a_v4, Standard_E2ads_v5,Standard_E4a_v4, Standard_E4ads_v5, Standard_E64i_v3, Standard_E80ids_v4, Standard_E8a_v4, Standard_E8ads_v5, Standard_E8as_v4+1TB_PS, Standard_E8as_v4+2TB_PS, Standard_E8as_v5+1TB_PS, Standard_E8as_v5+2TB_PS, Standard_E8s_v4+1TB_PS, Standard_E8s_v4+2TB_PS, Standard_E8s_v5+1TB_PS, Standard_E8s_v5+2TB_PS, Standard_L16s, Standard_L16s_v2, Standard_L4s, Standard_L8s, Standard_L8s_v2, "Standard_L8s_v3", Standard_L16s_v3, Standard_L8as_v3, Standard_L16as_v3, Standard_EC8as_v5+1TB_PS, Standard_EC8as_v5+2TB_PS, Standard_EC16as_v5+3TB_PS, Standard_EC16as_v5+4TB_PS, Standard_EC8ads_v5, Standard_EC16ads_v5, Standard_E2d_v4, Standard_E4d_v4, Standard_E8d_v4, Standard_E16d_v4, Standard_E2d_v5, Standard_E4d_v5, Standard_E8d_v5 and Standard_E16d_v5. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type SkuObservation struct { @@ -246,8 +336,17 @@ type SkuParameters struct { Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The name of the SKU. Valid values are: Dev(No SLA)_Standard_D11_v2, Dev(No SLA)_Standard_E2a_v4, Standard_D11_v2, Standard_D12_v2, Standard_D13_v2, Standard_D14_v2, Standard_D16d_v5, Standard_D32d_v4, Standard_D32d_v5, Standard_DS13_v2+1TB_PS, Standard_DS13_v2+2TB_PS, Standard_DS14_v2+3TB_PS, Standard_DS14_v2+4TB_PS, Standard_E16a_v4, Standard_E16ads_v5, Standard_E16as_v4+3TB_PS, Standard_E16as_v4+4TB_PS, Standard_E16as_v5+3TB_PS, Standard_E16as_v5+4TB_PS, Standard_E16s_v4+3TB_PS, Standard_E16s_v4+4TB_PS, Standard_E16s_v5+3TB_PS, Standard_E16s_v5+4TB_PS, Standard_E2a_v4, Standard_E2ads_v5,Standard_E4a_v4, Standard_E4ads_v5, Standard_E64i_v3, Standard_E80ids_v4, Standard_E8a_v4, Standard_E8ads_v5, Standard_E8as_v4+1TB_PS, Standard_E8as_v4+2TB_PS, Standard_E8as_v5+1TB_PS, Standard_E8as_v5+2TB_PS, Standard_E8s_v4+1TB_PS, Standard_E8s_v4+2TB_PS, Standard_E8s_v5+1TB_PS, Standard_E8s_v5+2TB_PS, Standard_L16s, Standard_L16s_v2, Standard_L4s, Standard_L8s, Standard_L8s_v2, "Standard_L8s_v3", Standard_L16s_v3, Standard_L8as_v3, Standard_L16as_v3, Standard_EC8as_v5+1TB_PS, Standard_EC8as_v5+2TB_PS, Standard_EC16as_v5+3TB_PS, Standard_EC16as_v5+4TB_PS, Standard_EC8ads_v5, Standard_EC16ads_v5, Standard_E2d_v4, Standard_E4d_v4, Standard_E8d_v4, Standard_E16d_v4, Standard_E2d_v5, Standard_E4d_v5, Standard_E8d_v5 and Standard_E16d_v5. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type VirtualNetworkConfigurationInitParameters struct { + + // Data management's service public IP address resource id. + DataManagementPublicIPID *string `json:"dataManagementPublicIpId,omitempty" tf:"data_management_public_ip_id,omitempty"` + + // Engine service's public IP address resource id. + EnginePublicIPID *string `json:"enginePublicIpId,omitempty" tf:"engine_public_ip_id,omitempty"` } type VirtualNetworkConfigurationObservation struct { @@ -265,12 +364,12 @@ type VirtualNetworkConfigurationObservation struct { type VirtualNetworkConfigurationParameters struct { // Data management's service public IP address resource id. - // +kubebuilder:validation:Required - DataManagementPublicIPID *string `json:"dataManagementPublicIpId" tf:"data_management_public_ip_id,omitempty"` + // +kubebuilder:validation:Optional + DataManagementPublicIPID *string `json:"dataManagementPublicIpId,omitempty" tf:"data_management_public_ip_id,omitempty"` // Engine service's public IP address resource id. - // +kubebuilder:validation:Required - EnginePublicIPID *string `json:"enginePublicIpId" tf:"engine_public_ip_id,omitempty"` + // +kubebuilder:validation:Optional + EnginePublicIPID *string `json:"enginePublicIpId,omitempty" tf:"engine_public_ip_id,omitempty"` // The subnet resource id. // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet @@ -291,6 +390,18 @@ type VirtualNetworkConfigurationParameters struct { type ClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ClusterInitParameters `json:"initProvider,omitempty"` } // ClusterStatus defines the observed state of Cluster. @@ -311,8 +422,8 @@ type ClusterStatus struct { type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec ClusterSpec `json:"spec"` Status ClusterStatus `json:"status,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_clustermanagedprivateendpoint_types.go b/apis/kusto/v1beta1/zz_clustermanagedprivateendpoint_types.go index b66880134..8378f9392 100755 --- a/apis/kusto/v1beta1/zz_clustermanagedprivateendpoint_types.go +++ b/apis/kusto/v1beta1/zz_clustermanagedprivateendpoint_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ClusterManagedPrivateEndpointInitParameters struct { + + // The group id in which the managed private endpoint is created. Changing this forces a new resource to be created. + GroupID *string `json:"groupId,omitempty" tf:"group_id,omitempty"` + + // The user request message. + RequestMessage *string `json:"requestMessage,omitempty" tf:"request_message,omitempty"` +} + type ClusterManagedPrivateEndpointObservation struct { // The name of the Kusto Cluster. Changing this forces a new resource to be created. @@ -105,6 +114,18 @@ type ClusterManagedPrivateEndpointParameters struct { type ClusterManagedPrivateEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ClusterManagedPrivateEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ClusterManagedPrivateEndpointInitParameters `json:"initProvider,omitempty"` } // ClusterManagedPrivateEndpointStatus defines the observed state of ClusterManagedPrivateEndpoint. @@ -125,7 +146,7 @@ type ClusterManagedPrivateEndpointStatus struct { type ClusterManagedPrivateEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.groupId)",message="groupId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.groupId) || has(self.initProvider.groupId)",message="groupId is a required parameter" Spec ClusterManagedPrivateEndpointSpec `json:"spec"` Status ClusterManagedPrivateEndpointStatus `json:"status,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_clusterprincipalassignment_types.go b/apis/kusto/v1beta1/zz_clusterprincipalassignment_types.go index f96370ba8..4be712df1 100755 --- a/apis/kusto/v1beta1/zz_clusterprincipalassignment_types.go +++ b/apis/kusto/v1beta1/zz_clusterprincipalassignment_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ClusterPrincipalAssignmentInitParameters struct { + + // The object id of the principal. Changing this forces a new resource to be created. + PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` + + // The type of the principal. Valid values include App, Group, User. Changing this forces a new resource to be created. + PrincipalType *string `json:"principalType,omitempty" tf:"principal_type,omitempty"` + + // The cluster role assigned to the principal. Valid values include AllDatabasesAdmin and AllDatabasesViewer. Changing this forces a new resource to be created. + Role *string `json:"role,omitempty" tf:"role,omitempty"` + + // The tenant id in which the principal resides. Changing this forces a new resource to be created. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type ClusterPrincipalAssignmentObservation struct { // The name of the cluster in which to create the resource. Changing this forces a new resource to be created. @@ -92,6 +107,18 @@ type ClusterPrincipalAssignmentParameters struct { type ClusterPrincipalAssignmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ClusterPrincipalAssignmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ClusterPrincipalAssignmentInitParameters `json:"initProvider,omitempty"` } // ClusterPrincipalAssignmentStatus defines the observed state of ClusterPrincipalAssignment. @@ -112,10 +139,10 @@ type ClusterPrincipalAssignmentStatus struct { type ClusterPrincipalAssignment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalId)",message="principalId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalType)",message="principalType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.role)",message="role is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId)",message="tenantId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.principalId) || has(self.initProvider.principalId)",message="principalId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.principalType) || has(self.initProvider.principalType)",message="principalType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.role) || has(self.initProvider.role)",message="role is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantId) || has(self.initProvider.tenantId)",message="tenantId is a required parameter" Spec ClusterPrincipalAssignmentSpec `json:"spec"` Status ClusterPrincipalAssignmentStatus `json:"status,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_database_types.go b/apis/kusto/v1beta1/zz_database_types.go index 0f422710c..9948f377a 100755 --- a/apis/kusto/v1beta1/zz_database_types.go +++ b/apis/kusto/v1beta1/zz_database_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DatabaseInitParameters struct { + + // The time the data that should be kept in cache for fast queries as ISO 8601 timespan. Default is unlimited. For more information see: ISO 8601 Timespan + HotCachePeriod *string `json:"hotCachePeriod,omitempty" tf:"hot_cache_period,omitempty"` + + // The location where the Kusto Database should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The time the data should be kept before it stops being accessible to queries as ISO 8601 timespan. Default is unlimited. For more information see: ISO 8601 Timespan + SoftDeletePeriod *string `json:"softDeletePeriod,omitempty" tf:"soft_delete_period,omitempty"` +} + type DatabaseObservation struct { // Specifies the name of the Kusto Cluster this database will be added to. Changing this forces a new resource to be created. @@ -82,6 +94,18 @@ type DatabaseParameters struct { type DatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DatabaseInitParameters `json:"initProvider,omitempty"` } // DatabaseStatus defines the observed state of Database. @@ -102,7 +126,7 @@ type DatabaseStatus struct { type Database struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec DatabaseSpec `json:"spec"` Status DatabaseStatus `json:"status,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_databaseprincipalassignment_types.go b/apis/kusto/v1beta1/zz_databaseprincipalassignment_types.go index 057ed9eb9..3cd9e3829 100755 --- a/apis/kusto/v1beta1/zz_databaseprincipalassignment_types.go +++ b/apis/kusto/v1beta1/zz_databaseprincipalassignment_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DatabasePrincipalAssignmentInitParameters struct { + + // The object id of the principal. Changing this forces a new resource to be created. + PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` + + // The type of the principal. Valid values include App, Group, User. Changing this forces a new resource to be created. + PrincipalType *string `json:"principalType,omitempty" tf:"principal_type,omitempty"` + + // The database role assigned to the principal. Valid values include Admin, Ingestor, Monitor, UnrestrictedViewer, User and Viewer. Changing this forces a new resource to be created. + Role *string `json:"role,omitempty" tf:"role,omitempty"` + + // The tenant id in which the principal resides. Changing this forces a new resource to be created. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type DatabasePrincipalAssignmentObservation struct { // The name of the cluster in which to create the resource. Changing this forces a new resource to be created. @@ -108,6 +123,18 @@ type DatabasePrincipalAssignmentParameters struct { type DatabasePrincipalAssignmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DatabasePrincipalAssignmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DatabasePrincipalAssignmentInitParameters `json:"initProvider,omitempty"` } // DatabasePrincipalAssignmentStatus defines the observed state of DatabasePrincipalAssignment. @@ -128,10 +155,10 @@ type DatabasePrincipalAssignmentStatus struct { type DatabasePrincipalAssignment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalId)",message="principalId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalType)",message="principalType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.role)",message="role is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId)",message="tenantId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.principalId) || has(self.initProvider.principalId)",message="principalId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.principalType) || has(self.initProvider.principalType)",message="principalType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.role) || has(self.initProvider.role)",message="role is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantId) || has(self.initProvider.tenantId)",message="tenantId is a required parameter" Spec DatabasePrincipalAssignmentSpec `json:"spec"` Status DatabasePrincipalAssignmentStatus `json:"status,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_eventgriddataconnection_types.go b/apis/kusto/v1beta1/zz_eventgriddataconnection_types.go index a2af532b5..3e60850d7 100755 --- a/apis/kusto/v1beta1/zz_eventgriddataconnection_types.go +++ b/apis/kusto/v1beta1/zz_eventgriddataconnection_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EventGridDataConnectionInitParameters struct { + + // Specifies the blob storage event type that needs to be processed. Possible Values are Microsoft.Storage.BlobCreated and Microsoft.Storage.BlobRenamed. Defaults to Microsoft.Storage.BlobCreated. + BlobStorageEventType *string `json:"blobStorageEventType,omitempty" tf:"blob_storage_event_type,omitempty"` + + // Specifies the data format of the EventHub messages. Allowed values: APACHEAVRO, AVRO, CSV, JSON, MULTIJSON, ORC, PARQUET, PSV, RAW, SCSV, SINGLEJSON, SOHSV, TSV, TSVE, TXT and W3CLOGFILE. + DataFormat *string `json:"dataFormat,omitempty" tf:"data_format,omitempty"` + + // Indication for database routing information from the data connection, by default only database routing information is allowed. Allowed values: Single, Multi. Changing this forces a new resource to be created. + DatabaseRoutingType *string `json:"databaseRoutingType,omitempty" tf:"database_routing_type,omitempty"` + + // The resource ID of the event grid that is subscribed to the storage account events. + EventGridResourceID *string `json:"eventgridResourceId,omitempty" tf:"eventgrid_resource_id,omitempty"` + + // The location where the Kusto Database should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Empty for non-managed identity based data connection. For system assigned identity, provide cluster resource Id. For user assigned identity (UAI) provide the UAI resource Id. + ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` + + // Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created. + MappingRuleName *string `json:"mappingRuleName,omitempty" tf:"mapping_rule_name,omitempty"` + + // is the first record of every file ignored? Defaults to false. + SkipFirstRecord *bool `json:"skipFirstRecord,omitempty" tf:"skip_first_record,omitempty"` + + // Specifies the target table name used for the message ingestion. Table must exist before resource is created. + TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` +} + type EventGridDataConnectionObservation struct { // Specifies the blob storage event type that needs to be processed. Possible Values are Microsoft.Storage.BlobCreated and Microsoft.Storage.BlobRenamed. Defaults to Microsoft.Storage.BlobCreated. @@ -187,6 +217,18 @@ type EventGridDataConnectionParameters struct { type EventGridDataConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EventGridDataConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EventGridDataConnectionInitParameters `json:"initProvider,omitempty"` } // EventGridDataConnectionStatus defines the observed state of EventGridDataConnection. @@ -207,7 +249,7 @@ type EventGridDataConnectionStatus struct { type EventGridDataConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec EventGridDataConnectionSpec `json:"spec"` Status EventGridDataConnectionStatus `json:"status,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_eventhubdataconnection_types.go b/apis/kusto/v1beta1/zz_eventhubdataconnection_types.go index e58bc98ca..5c7f67c9f 100755 --- a/apis/kusto/v1beta1/zz_eventhubdataconnection_types.go +++ b/apis/kusto/v1beta1/zz_eventhubdataconnection_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EventHubDataConnectionInitParameters struct { + + // Specifies compression type for the connection. Allowed values: GZip and None. Defaults to None. Changing this forces a new resource to be created. + Compression *string `json:"compression,omitempty" tf:"compression,omitempty"` + + // Specifies the data format of the EventHub messages. Allowed values: APACHEAVRO, AVRO, CSV, JSON, MULTIJSON, ORC, PARQUET, PSV, RAW, SCSV, SINGLEJSON, SOHSV, TSVE, TSV, TXT, and W3CLOGFILE. + DataFormat *string `json:"dataFormat,omitempty" tf:"data_format,omitempty"` + + // Indication for database routing information from the data connection, by default only database routing information is allowed. Allowed values: Single, Multi. Changing this forces a new resource to be created. + DatabaseRoutingType *string `json:"databaseRoutingType,omitempty" tf:"database_routing_type,omitempty"` + + // Specifies a list of system properties for the Event Hub. + EventSystemProperties []*string `json:"eventSystemProperties,omitempty" tf:"event_system_properties,omitempty"` + + // The resource ID of a managed identity (system or user assigned) to be used to authenticate with event hub. + IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` + + // The location where the Kusto Database should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created. + MappingRuleName *string `json:"mappingRuleName,omitempty" tf:"mapping_rule_name,omitempty"` + + // Specifies the target table name used for the message ingestion. Table must exist before resource is created. + TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` +} + type EventHubDataConnectionObservation struct { // Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created. @@ -163,6 +190,18 @@ type EventHubDataConnectionParameters struct { type EventHubDataConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EventHubDataConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EventHubDataConnectionInitParameters `json:"initProvider,omitempty"` } // EventHubDataConnectionStatus defines the observed state of EventHubDataConnection. @@ -183,7 +222,7 @@ type EventHubDataConnectionStatus struct { type EventHubDataConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec EventHubDataConnectionSpec `json:"spec"` Status EventHubDataConnectionStatus `json:"status,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_generated.deepcopy.go b/apis/kusto/v1beta1/zz_generated.deepcopy.go index 73867a87f..2e14d369d 100644 --- a/apis/kusto/v1beta1/zz_generated.deepcopy.go +++ b/apis/kusto/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,43 @@ func (in *AttachedDatabaseConfiguration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AttachedDatabaseConfigurationInitParameters) DeepCopyInto(out *AttachedDatabaseConfigurationInitParameters) { + *out = *in + if in.DefaultPrincipalModificationKind != nil { + in, out := &in.DefaultPrincipalModificationKind, &out.DefaultPrincipalModificationKind + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Sharing != nil { + in, out := &in.Sharing, &out.Sharing + *out = make([]SharingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachedDatabaseConfigurationInitParameters. +func (in *AttachedDatabaseConfigurationInitParameters) DeepCopy() *AttachedDatabaseConfigurationInitParameters { + if in == nil { + return nil + } + out := new(AttachedDatabaseConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AttachedDatabaseConfigurationList) DeepCopyInto(out *AttachedDatabaseConfigurationList) { *out = *in @@ -248,6 +285,7 @@ func (in *AttachedDatabaseConfigurationSpec) DeepCopyInto(out *AttachedDatabaseC *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttachedDatabaseConfigurationSpec. @@ -304,6 +342,169 @@ func (in *Cluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterInitParameters) DeepCopyInto(out *ClusterInitParameters) { + *out = *in + if in.AllowedFqdns != nil { + in, out := &in.AllowedFqdns, &out.AllowedFqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedIPRanges != nil { + in, out := &in.AllowedIPRanges, &out.AllowedIPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AutoStopEnabled != nil { + in, out := &in.AutoStopEnabled, &out.AutoStopEnabled + *out = new(bool) + **out = **in + } + if in.DiskEncryptionEnabled != nil { + in, out := &in.DiskEncryptionEnabled, &out.DiskEncryptionEnabled + *out = new(bool) + **out = **in + } + if in.DoubleEncryptionEnabled != nil { + in, out := &in.DoubleEncryptionEnabled, &out.DoubleEncryptionEnabled + *out = new(bool) + **out = **in + } + if in.Engine != nil { + in, out := &in.Engine, &out.Engine + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LanguageExtensions != nil { + in, out := &in.LanguageExtensions, &out.LanguageExtensions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.OptimizedAutoScale != nil { + in, out := &in.OptimizedAutoScale, &out.OptimizedAutoScale + *out = make([]OptimizedAutoScaleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OutboundNetworkAccessRestricted != nil { + in, out := &in.OutboundNetworkAccessRestricted, &out.OutboundNetworkAccessRestricted + *out = new(bool) + **out = **in + } + if in.PublicIPType != nil { + in, out := &in.PublicIPType, &out.PublicIPType + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.PurgeEnabled != nil { + in, out := &in.PurgeEnabled, &out.PurgeEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = make([]SkuInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StreamingIngestionEnabled != nil { + in, out := &in.StreamingIngestionEnabled, &out.StreamingIngestionEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TrustedExternalTenants != nil { + in, out := &in.TrustedExternalTenants, &out.TrustedExternalTenants + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.VirtualNetworkConfiguration != nil { + in, out := &in.VirtualNetworkConfiguration, &out.VirtualNetworkConfiguration + *out = make([]VirtualNetworkConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInitParameters. +func (in *ClusterInitParameters) DeepCopy() *ClusterInitParameters { + if in == nil { + return nil + } + out := new(ClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClusterList) DeepCopyInto(out *ClusterList) { *out = *in @@ -363,6 +564,31 @@ func (in *ClusterManagedPrivateEndpoint) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterManagedPrivateEndpointInitParameters) DeepCopyInto(out *ClusterManagedPrivateEndpointInitParameters) { + *out = *in + if in.GroupID != nil { + in, out := &in.GroupID, &out.GroupID + *out = new(string) + **out = **in + } + if in.RequestMessage != nil { + in, out := &in.RequestMessage, &out.RequestMessage + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterManagedPrivateEndpointInitParameters. +func (in *ClusterManagedPrivateEndpointInitParameters) DeepCopy() *ClusterManagedPrivateEndpointInitParameters { + if in == nil { + return nil + } + out := new(ClusterManagedPrivateEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClusterManagedPrivateEndpointList) DeepCopyInto(out *ClusterManagedPrivateEndpointList) { *out = *in @@ -535,6 +761,7 @@ func (in *ClusterManagedPrivateEndpointSpec) DeepCopyInto(out *ClusterManagedPri *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterManagedPrivateEndpointSpec. @@ -952,6 +1179,41 @@ func (in *ClusterPrincipalAssignment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterPrincipalAssignmentInitParameters) DeepCopyInto(out *ClusterPrincipalAssignmentInitParameters) { + *out = *in + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID + *out = new(string) + **out = **in + } + if in.PrincipalType != nil { + in, out := &in.PrincipalType, &out.PrincipalType + *out = new(string) + **out = **in + } + if in.Role != nil { + in, out := &in.Role, &out.Role + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPrincipalAssignmentInitParameters. +func (in *ClusterPrincipalAssignmentInitParameters) DeepCopy() *ClusterPrincipalAssignmentInitParameters { + if in == nil { + return nil + } + out := new(ClusterPrincipalAssignmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClusterPrincipalAssignmentList) DeepCopyInto(out *ClusterPrincipalAssignmentList) { *out = *in @@ -1114,6 +1376,7 @@ func (in *ClusterPrincipalAssignmentSpec) DeepCopyInto(out *ClusterPrincipalAssi *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPrincipalAssignmentSpec. @@ -1148,6 +1411,7 @@ func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec. @@ -1205,21 +1469,51 @@ func (in *Database) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *DatabaseList) DeepCopyInto(out *DatabaseList) { +func (in *DatabaseInitParameters) DeepCopyInto(out *DatabaseInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Database, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.HotCachePeriod != nil { + in, out := &in.HotCachePeriod, &out.HotCachePeriod + *out = new(string) + **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseList. -func (in *DatabaseList) DeepCopy() *DatabaseList { + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SoftDeletePeriod != nil { + in, out := &in.SoftDeletePeriod, &out.SoftDeletePeriod + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseInitParameters. +func (in *DatabaseInitParameters) DeepCopy() *DatabaseInitParameters { + if in == nil { + return nil + } + out := new(DatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DatabaseList) DeepCopyInto(out *DatabaseList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Database, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseList. +func (in *DatabaseList) DeepCopy() *DatabaseList { if in == nil { return nil } @@ -1373,6 +1667,41 @@ func (in *DatabasePrincipalAssignment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DatabasePrincipalAssignmentInitParameters) DeepCopyInto(out *DatabasePrincipalAssignmentInitParameters) { + *out = *in + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID + *out = new(string) + **out = **in + } + if in.PrincipalType != nil { + in, out := &in.PrincipalType, &out.PrincipalType + *out = new(string) + **out = **in + } + if in.Role != nil { + in, out := &in.Role, &out.Role + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabasePrincipalAssignmentInitParameters. +func (in *DatabasePrincipalAssignmentInitParameters) DeepCopy() *DatabasePrincipalAssignmentInitParameters { + if in == nil { + return nil + } + out := new(DatabasePrincipalAssignmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DatabasePrincipalAssignmentList) DeepCopyInto(out *DatabasePrincipalAssignmentList) { *out = *in @@ -1555,6 +1884,7 @@ func (in *DatabasePrincipalAssignmentSpec) DeepCopyInto(out *DatabasePrincipalAs *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabasePrincipalAssignmentSpec. @@ -1589,6 +1919,7 @@ func (in *DatabaseSpec) DeepCopyInto(out *DatabaseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseSpec. @@ -1645,6 +1976,66 @@ func (in *EventGridDataConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventGridDataConnectionInitParameters) DeepCopyInto(out *EventGridDataConnectionInitParameters) { + *out = *in + if in.BlobStorageEventType != nil { + in, out := &in.BlobStorageEventType, &out.BlobStorageEventType + *out = new(string) + **out = **in + } + if in.DataFormat != nil { + in, out := &in.DataFormat, &out.DataFormat + *out = new(string) + **out = **in + } + if in.DatabaseRoutingType != nil { + in, out := &in.DatabaseRoutingType, &out.DatabaseRoutingType + *out = new(string) + **out = **in + } + if in.EventGridResourceID != nil { + in, out := &in.EventGridResourceID, &out.EventGridResourceID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ManagedIdentityResourceID != nil { + in, out := &in.ManagedIdentityResourceID, &out.ManagedIdentityResourceID + *out = new(string) + **out = **in + } + if in.MappingRuleName != nil { + in, out := &in.MappingRuleName, &out.MappingRuleName + *out = new(string) + **out = **in + } + if in.SkipFirstRecord != nil { + in, out := &in.SkipFirstRecord, &out.SkipFirstRecord + *out = new(bool) + **out = **in + } + if in.TableName != nil { + in, out := &in.TableName, &out.TableName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventGridDataConnectionInitParameters. +func (in *EventGridDataConnectionInitParameters) DeepCopy() *EventGridDataConnectionInitParameters { + if in == nil { + return nil + } + out := new(EventGridDataConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventGridDataConnectionList) DeepCopyInto(out *EventGridDataConnectionList) { *out = *in @@ -1927,6 +2318,7 @@ func (in *EventGridDataConnectionSpec) DeepCopyInto(out *EventGridDataConnection *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventGridDataConnectionSpec. @@ -1983,6 +2375,67 @@ func (in *EventHubDataConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventHubDataConnectionInitParameters) DeepCopyInto(out *EventHubDataConnectionInitParameters) { + *out = *in + if in.Compression != nil { + in, out := &in.Compression, &out.Compression + *out = new(string) + **out = **in + } + if in.DataFormat != nil { + in, out := &in.DataFormat, &out.DataFormat + *out = new(string) + **out = **in + } + if in.DatabaseRoutingType != nil { + in, out := &in.DatabaseRoutingType, &out.DatabaseRoutingType + *out = new(string) + **out = **in + } + if in.EventSystemProperties != nil { + in, out := &in.EventSystemProperties, &out.EventSystemProperties + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IdentityID != nil { + in, out := &in.IdentityID, &out.IdentityID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MappingRuleName != nil { + in, out := &in.MappingRuleName, &out.MappingRuleName + *out = new(string) + **out = **in + } + if in.TableName != nil { + in, out := &in.TableName, &out.TableName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubDataConnectionInitParameters. +func (in *EventHubDataConnectionInitParameters) DeepCopy() *EventHubDataConnectionInitParameters { + if in == nil { + return nil + } + out := new(EventHubDataConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventHubDataConnectionList) DeepCopyInto(out *EventHubDataConnectionList) { *out = *in @@ -2247,6 +2700,7 @@ func (in *EventHubDataConnectionSpec) DeepCopyInto(out *EventHubDataConnectionSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHubDataConnectionSpec. @@ -2303,6 +2757,62 @@ func (in *IOTHubDataConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTHubDataConnectionInitParameters) DeepCopyInto(out *IOTHubDataConnectionInitParameters) { + *out = *in + if in.DataFormat != nil { + in, out := &in.DataFormat, &out.DataFormat + *out = new(string) + **out = **in + } + if in.DatabaseRoutingType != nil { + in, out := &in.DatabaseRoutingType, &out.DatabaseRoutingType + *out = new(string) + **out = **in + } + if in.EventSystemProperties != nil { + in, out := &in.EventSystemProperties, &out.EventSystemProperties + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MappingRuleName != nil { + in, out := &in.MappingRuleName, &out.MappingRuleName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.TableName != nil { + in, out := &in.TableName, &out.TableName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDataConnectionInitParameters. +func (in *IOTHubDataConnectionInitParameters) DeepCopy() *IOTHubDataConnectionInitParameters { + if in == nil { + return nil + } + out := new(IOTHubDataConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTHubDataConnectionList) DeepCopyInto(out *IOTHubDataConnectionList) { *out = *in @@ -2577,6 +3087,7 @@ func (in *IOTHubDataConnectionSpec) DeepCopyInto(out *IOTHubDataConnectionSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTHubDataConnectionSpec. @@ -2606,6 +3117,37 @@ func (in *IOTHubDataConnectionStatus) DeepCopy() *IOTHubDataConnectionStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -2678,6 +3220,31 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OptimizedAutoScaleInitParameters) DeepCopyInto(out *OptimizedAutoScaleInitParameters) { + *out = *in + if in.MaximumInstances != nil { + in, out := &in.MaximumInstances, &out.MaximumInstances + *out = new(float64) + **out = **in + } + if in.MinimumInstances != nil { + in, out := &in.MinimumInstances, &out.MinimumInstances + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OptimizedAutoScaleInitParameters. +func (in *OptimizedAutoScaleInitParameters) DeepCopy() *OptimizedAutoScaleInitParameters { + if in == nil { + return nil + } + out := new(OptimizedAutoScaleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OptimizedAutoScaleObservation) DeepCopyInto(out *OptimizedAutoScaleObservation) { *out = *in @@ -2728,6 +3295,87 @@ func (in *OptimizedAutoScaleParameters) DeepCopy() *OptimizedAutoScaleParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharingInitParameters) DeepCopyInto(out *SharingInitParameters) { + *out = *in + if in.ExternalTablesToExclude != nil { + in, out := &in.ExternalTablesToExclude, &out.ExternalTablesToExclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ExternalTablesToInclude != nil { + in, out := &in.ExternalTablesToInclude, &out.ExternalTablesToInclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaterializedViewsToExclude != nil { + in, out := &in.MaterializedViewsToExclude, &out.MaterializedViewsToExclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaterializedViewsToInclude != nil { + in, out := &in.MaterializedViewsToInclude, &out.MaterializedViewsToInclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TablesToExclude != nil { + in, out := &in.TablesToExclude, &out.TablesToExclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TablesToInclude != nil { + in, out := &in.TablesToInclude, &out.TablesToInclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharingInitParameters. +func (in *SharingInitParameters) DeepCopy() *SharingInitParameters { + if in == nil { + return nil + } + out := new(SharingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SharingObservation) DeepCopyInto(out *SharingObservation) { *out = *in @@ -2890,6 +3538,31 @@ func (in *SharingParameters) DeepCopy() *SharingParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuInitParameters) DeepCopyInto(out *SkuInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuInitParameters. +func (in *SkuInitParameters) DeepCopy() *SkuInitParameters { + if in == nil { + return nil + } + out := new(SkuInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SkuObservation) DeepCopyInto(out *SkuObservation) { *out = *in @@ -2940,6 +3613,31 @@ func (in *SkuParameters) DeepCopy() *SkuParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkConfigurationInitParameters) DeepCopyInto(out *VirtualNetworkConfigurationInitParameters) { + *out = *in + if in.DataManagementPublicIPID != nil { + in, out := &in.DataManagementPublicIPID, &out.DataManagementPublicIPID + *out = new(string) + **out = **in + } + if in.EnginePublicIPID != nil { + in, out := &in.EnginePublicIPID, &out.EnginePublicIPID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkConfigurationInitParameters. +func (in *VirtualNetworkConfigurationInitParameters) DeepCopy() *VirtualNetworkConfigurationInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkConfigurationObservation) DeepCopyInto(out *VirtualNetworkConfigurationObservation) { *out = *in diff --git a/apis/kusto/v1beta1/zz_generated.managed.go b/apis/kusto/v1beta1/zz_generated.managed.go index 5e9711bec..412c9be38 100644 --- a/apis/kusto/v1beta1/zz_generated.managed.go +++ b/apis/kusto/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AttachedDatabaseConfiguration) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AttachedDatabaseConfiguration. -func (mg *AttachedDatabaseConfiguration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AttachedDatabaseConfiguration. +func (mg *AttachedDatabaseConfiguration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AttachedDatabaseConfiguration. @@ -55,9 +55,9 @@ func (mg *AttachedDatabaseConfiguration) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AttachedDatabaseConfiguration. -func (mg *AttachedDatabaseConfiguration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AttachedDatabaseConfiguration. +func (mg *AttachedDatabaseConfiguration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AttachedDatabaseConfiguration. @@ -93,9 +93,9 @@ func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Cluster. -func (mg *Cluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Cluster. +func (mg *Cluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Cluster. @@ -131,9 +131,9 @@ func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Cluster. -func (mg *Cluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Cluster. +func (mg *Cluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Cluster. @@ -169,9 +169,9 @@ func (mg *ClusterManagedPrivateEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ClusterManagedPrivateEndpoint. -func (mg *ClusterManagedPrivateEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ClusterManagedPrivateEndpoint. +func (mg *ClusterManagedPrivateEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ClusterManagedPrivateEndpoint. @@ -207,9 +207,9 @@ func (mg *ClusterManagedPrivateEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ClusterManagedPrivateEndpoint. -func (mg *ClusterManagedPrivateEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ClusterManagedPrivateEndpoint. +func (mg *ClusterManagedPrivateEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ClusterManagedPrivateEndpoint. @@ -245,9 +245,9 @@ func (mg *ClusterPrincipalAssignment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ClusterPrincipalAssignment. -func (mg *ClusterPrincipalAssignment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ClusterPrincipalAssignment. +func (mg *ClusterPrincipalAssignment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ClusterPrincipalAssignment. @@ -283,9 +283,9 @@ func (mg *ClusterPrincipalAssignment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ClusterPrincipalAssignment. -func (mg *ClusterPrincipalAssignment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ClusterPrincipalAssignment. +func (mg *ClusterPrincipalAssignment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ClusterPrincipalAssignment. @@ -321,9 +321,9 @@ func (mg *Database) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Database. -func (mg *Database) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Database. +func (mg *Database) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Database. @@ -359,9 +359,9 @@ func (mg *Database) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Database. -func (mg *Database) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Database. +func (mg *Database) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Database. @@ -397,9 +397,9 @@ func (mg *DatabasePrincipalAssignment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DatabasePrincipalAssignment. -func (mg *DatabasePrincipalAssignment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DatabasePrincipalAssignment. +func (mg *DatabasePrincipalAssignment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DatabasePrincipalAssignment. @@ -435,9 +435,9 @@ func (mg *DatabasePrincipalAssignment) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DatabasePrincipalAssignment. -func (mg *DatabasePrincipalAssignment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DatabasePrincipalAssignment. +func (mg *DatabasePrincipalAssignment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DatabasePrincipalAssignment. @@ -473,9 +473,9 @@ func (mg *EventGridDataConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this EventGridDataConnection. -func (mg *EventGridDataConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this EventGridDataConnection. +func (mg *EventGridDataConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this EventGridDataConnection. @@ -511,9 +511,9 @@ func (mg *EventGridDataConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this EventGridDataConnection. -func (mg *EventGridDataConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this EventGridDataConnection. +func (mg *EventGridDataConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this EventGridDataConnection. @@ -549,9 +549,9 @@ func (mg *EventHubDataConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this EventHubDataConnection. -func (mg *EventHubDataConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this EventHubDataConnection. +func (mg *EventHubDataConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this EventHubDataConnection. @@ -587,9 +587,9 @@ func (mg *EventHubDataConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this EventHubDataConnection. -func (mg *EventHubDataConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this EventHubDataConnection. +func (mg *EventHubDataConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this EventHubDataConnection. @@ -625,9 +625,9 @@ func (mg *IOTHubDataConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTHubDataConnection. -func (mg *IOTHubDataConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTHubDataConnection. +func (mg *IOTHubDataConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTHubDataConnection. @@ -663,9 +663,9 @@ func (mg *IOTHubDataConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTHubDataConnection. -func (mg *IOTHubDataConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTHubDataConnection. +func (mg *IOTHubDataConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTHubDataConnection. diff --git a/apis/kusto/v1beta1/zz_generated_terraformed.go b/apis/kusto/v1beta1/zz_generated_terraformed.go index a64dc3ec5..df839f435 100755 --- a/apis/kusto/v1beta1/zz_generated_terraformed.go +++ b/apis/kusto/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *AttachedDatabaseConfiguration) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AttachedDatabaseConfiguration +func (tr *AttachedDatabaseConfiguration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AttachedDatabaseConfiguration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AttachedDatabaseConfiguration) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Cluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Cluster +func (tr *Cluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Cluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Cluster) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *ClusterManagedPrivateEndpoint) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ClusterManagedPrivateEndpoint +func (tr *ClusterManagedPrivateEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ClusterManagedPrivateEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ClusterManagedPrivateEndpoint) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *ClusterPrincipalAssignment) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ClusterPrincipalAssignment +func (tr *ClusterPrincipalAssignment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ClusterPrincipalAssignment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ClusterPrincipalAssignment) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *Database) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Database +func (tr *Database) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Database using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Database) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *DatabasePrincipalAssignment) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DatabasePrincipalAssignment +func (tr *DatabasePrincipalAssignment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DatabasePrincipalAssignment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DatabasePrincipalAssignment) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *EventGridDataConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this EventGridDataConnection +func (tr *EventGridDataConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this EventGridDataConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *EventGridDataConnection) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *EventHubDataConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this EventHubDataConnection +func (tr *EventHubDataConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this EventHubDataConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *EventHubDataConnection) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *IOTHubDataConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTHubDataConnection +func (tr *IOTHubDataConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTHubDataConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTHubDataConnection) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/kusto/v1beta1/zz_iothubdataconnection_types.go b/apis/kusto/v1beta1/zz_iothubdataconnection_types.go index 8eee58122..3268e1c5b 100755 --- a/apis/kusto/v1beta1/zz_iothubdataconnection_types.go +++ b/apis/kusto/v1beta1/zz_iothubdataconnection_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IOTHubDataConnectionInitParameters struct { + + // Specifies the data format of the IoTHub messages. Allowed values: APACHEAVRO, AVRO, CSV, JSON, MULTIJSON, ORC, PARQUET, PSV, RAW, SCSV, SINGLEJSON, SOHSV, TSV, TSVE, TXT and W3CLOGFILE. Changing this forces a new resource to be created. + DataFormat *string `json:"dataFormat,omitempty" tf:"data_format,omitempty"` + + // Indication for database routing information from the data connection, by default only database routing information is allowed. Allowed values: Single, Multi. Changing this forces a new resource to be created. + DatabaseRoutingType *string `json:"databaseRoutingType,omitempty" tf:"database_routing_type,omitempty"` + + // Specifies the System Properties that each IoT Hub message should contain. Changing this forces a new resource to be created. Possible values are message-id, sequence-number, to, absolute-expiry-time, iothub-enqueuedtime, correlation-id, user-id, iothub-ack, iothub-connection-device-id, iothub-connection-auth-generation-id and iothub-connection-auth-method. + EventSystemProperties []*string `json:"eventSystemProperties,omitempty" tf:"event_system_properties,omitempty"` + + // The location where the Kusto Database should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created. Changing this forces a new resource to be created. + MappingRuleName *string `json:"mappingRuleName,omitempty" tf:"mapping_rule_name,omitempty"` + + // The name of the Kusto IotHub Data Connection to create. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the target table name used for the message ingestion. Table must exist before resource is created. Changing this forces a new resource to be created. + TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` +} + type IOTHubDataConnectionObservation struct { // Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created. @@ -172,6 +196,18 @@ type IOTHubDataConnectionParameters struct { type IOTHubDataConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTHubDataConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTHubDataConnectionInitParameters `json:"initProvider,omitempty"` } // IOTHubDataConnectionStatus defines the observed state of IOTHubDataConnection. @@ -192,8 +228,8 @@ type IOTHubDataConnectionStatus struct { type IOTHubDataConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec IOTHubDataConnectionSpec `json:"spec"` Status IOTHubDataConnectionStatus `json:"status,omitempty"` } diff --git a/apis/labservices/v1beta1/zz_generated.deepcopy.go b/apis/labservices/v1beta1/zz_generated.deepcopy.go index 03c8a6c07..cd9718b57 100644 --- a/apis/labservices/v1beta1/zz_generated.deepcopy.go +++ b/apis/labservices/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,26 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AdminUserInitParameters) DeepCopyInto(out *AdminUserInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdminUserInitParameters. +func (in *AdminUserInitParameters) DeepCopy() *AdminUserInitParameters { + if in == nil { + return nil + } + out := new(AdminUserInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AdminUserObservation) DeepCopyInto(out *AdminUserObservation) { *out = *in @@ -55,6 +75,41 @@ func (in *AdminUserParameters) DeepCopy() *AdminUserParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoShutdownInitParameters) DeepCopyInto(out *AutoShutdownInitParameters) { + *out = *in + if in.DisconnectDelay != nil { + in, out := &in.DisconnectDelay, &out.DisconnectDelay + *out = new(string) + **out = **in + } + if in.IdleDelay != nil { + in, out := &in.IdleDelay, &out.IdleDelay + *out = new(string) + **out = **in + } + if in.NoConnectDelay != nil { + in, out := &in.NoConnectDelay, &out.NoConnectDelay + *out = new(string) + **out = **in + } + if in.ShutdownOnIdle != nil { + in, out := &in.ShutdownOnIdle, &out.ShutdownOnIdle + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoShutdownInitParameters. +func (in *AutoShutdownInitParameters) DeepCopy() *AutoShutdownInitParameters { + if in == nil { + return nil + } + out := new(AutoShutdownInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoShutdownObservation) DeepCopyInto(out *AutoShutdownObservation) { *out = *in @@ -125,6 +180,31 @@ func (in *AutoShutdownParameters) DeepCopy() *AutoShutdownParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConnectionSettingInitParameters) DeepCopyInto(out *ConnectionSettingInitParameters) { + *out = *in + if in.ClientRdpAccess != nil { + in, out := &in.ClientRdpAccess, &out.ClientRdpAccess + *out = new(string) + **out = **in + } + if in.ClientSSHAccess != nil { + in, out := &in.ClientSSHAccess, &out.ClientSSHAccess + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionSettingInitParameters. +func (in *ConnectionSettingInitParameters) DeepCopy() *ConnectionSettingInitParameters { + if in == nil { + return nil + } + out := new(ConnectionSettingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConnectionSettingObservation) DeepCopyInto(out *ConnectionSettingObservation) { *out = *in @@ -175,6 +255,41 @@ func (in *ConnectionSettingParameters) DeepCopy() *ConnectionSettingParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DefaultAutoShutdownInitParameters) DeepCopyInto(out *DefaultAutoShutdownInitParameters) { + *out = *in + if in.DisconnectDelay != nil { + in, out := &in.DisconnectDelay, &out.DisconnectDelay + *out = new(string) + **out = **in + } + if in.IdleDelay != nil { + in, out := &in.IdleDelay, &out.IdleDelay + *out = new(string) + **out = **in + } + if in.NoConnectDelay != nil { + in, out := &in.NoConnectDelay, &out.NoConnectDelay + *out = new(string) + **out = **in + } + if in.ShutdownOnIdle != nil { + in, out := &in.ShutdownOnIdle, &out.ShutdownOnIdle + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultAutoShutdownInitParameters. +func (in *DefaultAutoShutdownInitParameters) DeepCopy() *DefaultAutoShutdownInitParameters { + if in == nil { + return nil + } + out := new(DefaultAutoShutdownInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DefaultAutoShutdownObservation) DeepCopyInto(out *DefaultAutoShutdownObservation) { *out = *in @@ -245,6 +360,41 @@ func (in *DefaultAutoShutdownParameters) DeepCopy() *DefaultAutoShutdownParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DefaultConnectionInitParameters) DeepCopyInto(out *DefaultConnectionInitParameters) { + *out = *in + if in.ClientRdpAccess != nil { + in, out := &in.ClientRdpAccess, &out.ClientRdpAccess + *out = new(string) + **out = **in + } + if in.ClientSSHAccess != nil { + in, out := &in.ClientSSHAccess, &out.ClientSSHAccess + *out = new(string) + **out = **in + } + if in.WebRdpAccess != nil { + in, out := &in.WebRdpAccess, &out.WebRdpAccess + *out = new(string) + **out = **in + } + if in.WebSSHAccess != nil { + in, out := &in.WebSSHAccess, &out.WebSSHAccess + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultConnectionInitParameters. +func (in *DefaultConnectionInitParameters) DeepCopy() *DefaultConnectionInitParameters { + if in == nil { + return nil + } + out := new(DefaultConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DefaultConnectionObservation) DeepCopyInto(out *DefaultConnectionObservation) { *out = *in @@ -315,6 +465,46 @@ func (in *DefaultConnectionParameters) DeepCopy() *DefaultConnectionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ImageReferenceInitParameters) DeepCopyInto(out *ImageReferenceInitParameters) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageReferenceInitParameters. +func (in *ImageReferenceInitParameters) DeepCopy() *ImageReferenceInitParameters { + if in == nil { + return nil + } + out := new(ImageReferenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ImageReferenceObservation) DeepCopyInto(out *ImageReferenceObservation) { *out = *in @@ -422,6 +612,96 @@ func (in *LabServiceLab) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LabServiceLabInitParameters) DeepCopyInto(out *LabServiceLabInitParameters) { + *out = *in + if in.AutoShutdown != nil { + in, out := &in.AutoShutdown, &out.AutoShutdown + *out = make([]AutoShutdownInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConnectionSetting != nil { + in, out := &in.ConnectionSetting, &out.ConnectionSetting + *out = make([]ConnectionSettingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.LabPlanID != nil { + in, out := &in.LabPlanID, &out.LabPlanID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = make([]NetworkInitParameters, len(*in)) + copy(*out, *in) + } + if in.Roster != nil { + in, out := &in.Roster, &out.Roster + *out = make([]RosterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Security != nil { + in, out := &in.Security, &out.Security + *out = make([]SecurityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Title != nil { + in, out := &in.Title, &out.Title + *out = new(string) + **out = **in + } + if in.VirtualMachine != nil { + in, out := &in.VirtualMachine, &out.VirtualMachine + *out = make([]VirtualMachineInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabServiceLabInitParameters. +func (in *LabServiceLabInitParameters) DeepCopy() *LabServiceLabInitParameters { + if in == nil { + return nil + } + out := new(LabServiceLabInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LabServiceLabList) DeepCopyInto(out *LabServiceLabList) { *out = *in @@ -668,6 +948,7 @@ func (in *LabServiceLabSpec) DeepCopyInto(out *LabServiceLabSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabServiceLabSpec. @@ -724,6 +1005,78 @@ func (in *LabServicePlan) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LabServicePlanInitParameters) DeepCopyInto(out *LabServicePlanInitParameters) { + *out = *in + if in.AllowedRegions != nil { + in, out := &in.AllowedRegions, &out.AllowedRegions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultAutoShutdown != nil { + in, out := &in.DefaultAutoShutdown, &out.DefaultAutoShutdown + *out = make([]DefaultAutoShutdownInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultConnection != nil { + in, out := &in.DefaultConnection, &out.DefaultConnection + *out = make([]DefaultConnectionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SharedGalleryID != nil { + in, out := &in.SharedGalleryID, &out.SharedGalleryID + *out = new(string) + **out = **in + } + if in.Support != nil { + in, out := &in.Support, &out.Support + *out = make([]SupportInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabServicePlanInitParameters. +func (in *LabServicePlanInitParameters) DeepCopy() *LabServicePlanInitParameters { + if in == nil { + return nil + } + out := new(LabServicePlanInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LabServicePlanList) DeepCopyInto(out *LabServicePlanList) { *out = *in @@ -950,6 +1303,7 @@ func (in *LabServicePlanSpec) DeepCopyInto(out *LabServicePlanSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LabServicePlanSpec. @@ -979,6 +1333,21 @@ func (in *LabServicePlanStatus) DeepCopy() *LabServicePlanStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkInitParameters) DeepCopyInto(out *NetworkInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInitParameters. +func (in *NetworkInitParameters) DeepCopy() *NetworkInitParameters { + if in == nil { + return nil + } + out := new(NetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkObservation) DeepCopyInto(out *NetworkObservation) { *out = *in @@ -1039,6 +1408,26 @@ func (in *NetworkParameters) DeepCopy() *NetworkParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NonAdminUserInitParameters) DeepCopyInto(out *NonAdminUserInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NonAdminUserInitParameters. +func (in *NonAdminUserInitParameters) DeepCopy() *NonAdminUserInitParameters { + if in == nil { + return nil + } + out := new(NonAdminUserInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NonAdminUserObservation) DeepCopyInto(out *NonAdminUserObservation) { *out = *in @@ -1080,6 +1469,46 @@ func (in *NonAdminUserParameters) DeepCopy() *NonAdminUserParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RosterInitParameters) DeepCopyInto(out *RosterInitParameters) { + *out = *in + if in.ActiveDirectoryGroupID != nil { + in, out := &in.ActiveDirectoryGroupID, &out.ActiveDirectoryGroupID + *out = new(string) + **out = **in + } + if in.LmsInstance != nil { + in, out := &in.LmsInstance, &out.LmsInstance + *out = new(string) + **out = **in + } + if in.LtiClientID != nil { + in, out := &in.LtiClientID, &out.LtiClientID + *out = new(string) + **out = **in + } + if in.LtiContextID != nil { + in, out := &in.LtiContextID, &out.LtiContextID + *out = new(string) + **out = **in + } + if in.LtiRosterEndpoint != nil { + in, out := &in.LtiRosterEndpoint, &out.LtiRosterEndpoint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RosterInitParameters. +func (in *RosterInitParameters) DeepCopy() *RosterInitParameters { + if in == nil { + return nil + } + out := new(RosterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RosterObservation) DeepCopyInto(out *RosterObservation) { *out = *in @@ -1160,6 +1589,26 @@ func (in *RosterParameters) DeepCopy() *RosterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityInitParameters) DeepCopyInto(out *SecurityInitParameters) { + *out = *in + if in.OpenAccessEnabled != nil { + in, out := &in.OpenAccessEnabled, &out.OpenAccessEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityInitParameters. +func (in *SecurityInitParameters) DeepCopy() *SecurityInitParameters { + if in == nil { + return nil + } + out := new(SecurityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityObservation) DeepCopyInto(out *SecurityObservation) { *out = *in @@ -1205,6 +1654,31 @@ func (in *SecurityParameters) DeepCopy() *SecurityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuInitParameters) DeepCopyInto(out *SkuInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuInitParameters. +func (in *SkuInitParameters) DeepCopy() *SkuInitParameters { + if in == nil { + return nil + } + out := new(SkuInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SkuObservation) DeepCopyInto(out *SkuObservation) { *out = *in @@ -1255,6 +1729,41 @@ func (in *SkuParameters) DeepCopy() *SkuParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SupportInitParameters) DeepCopyInto(out *SupportInitParameters) { + *out = *in + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.Instructions != nil { + in, out := &in.Instructions, &out.Instructions + *out = new(string) + **out = **in + } + if in.Phone != nil { + in, out := &in.Phone, &out.Phone + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SupportInitParameters. +func (in *SupportInitParameters) DeepCopy() *SupportInitParameters { + if in == nil { + return nil + } + out := new(SupportInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SupportObservation) DeepCopyInto(out *SupportObservation) { *out = *in @@ -1325,6 +1834,69 @@ func (in *SupportParameters) DeepCopy() *SupportParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualMachineInitParameters) DeepCopyInto(out *VirtualMachineInitParameters) { + *out = *in + if in.AdditionalCapabilityGpuDriversInstalled != nil { + in, out := &in.AdditionalCapabilityGpuDriversInstalled, &out.AdditionalCapabilityGpuDriversInstalled + *out = new(bool) + **out = **in + } + if in.AdminUser != nil { + in, out := &in.AdminUser, &out.AdminUser + *out = make([]AdminUserInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CreateOption != nil { + in, out := &in.CreateOption, &out.CreateOption + *out = new(string) + **out = **in + } + if in.ImageReference != nil { + in, out := &in.ImageReference, &out.ImageReference + *out = make([]ImageReferenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NonAdminUser != nil { + in, out := &in.NonAdminUser, &out.NonAdminUser + *out = make([]NonAdminUserInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SharedPasswordEnabled != nil { + in, out := &in.SharedPasswordEnabled, &out.SharedPasswordEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = make([]SkuInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UsageQuota != nil { + in, out := &in.UsageQuota, &out.UsageQuota + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineInitParameters. +func (in *VirtualMachineInitParameters) DeepCopy() *VirtualMachineInitParameters { + if in == nil { + return nil + } + out := new(VirtualMachineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualMachineObservation) DeepCopyInto(out *VirtualMachineObservation) { *out = *in diff --git a/apis/labservices/v1beta1/zz_generated.managed.go b/apis/labservices/v1beta1/zz_generated.managed.go index a9ddba825..c8cdaa24c 100644 --- a/apis/labservices/v1beta1/zz_generated.managed.go +++ b/apis/labservices/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *LabServiceLab) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LabServiceLab. -func (mg *LabServiceLab) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LabServiceLab. +func (mg *LabServiceLab) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LabServiceLab. @@ -55,9 +55,9 @@ func (mg *LabServiceLab) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LabServiceLab. -func (mg *LabServiceLab) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LabServiceLab. +func (mg *LabServiceLab) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LabServiceLab. @@ -93,9 +93,9 @@ func (mg *LabServicePlan) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LabServicePlan. -func (mg *LabServicePlan) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LabServicePlan. +func (mg *LabServicePlan) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LabServicePlan. @@ -131,9 +131,9 @@ func (mg *LabServicePlan) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LabServicePlan. -func (mg *LabServicePlan) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LabServicePlan. +func (mg *LabServicePlan) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LabServicePlan. diff --git a/apis/labservices/v1beta1/zz_generated_terraformed.go b/apis/labservices/v1beta1/zz_generated_terraformed.go index 99b748e5a..b9ad502b7 100755 --- a/apis/labservices/v1beta1/zz_generated_terraformed.go +++ b/apis/labservices/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *LabServiceLab) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LabServiceLab +func (tr *LabServiceLab) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LabServiceLab using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LabServiceLab) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *LabServicePlan) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LabServicePlan +func (tr *LabServicePlan) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LabServicePlan using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LabServicePlan) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/labservices/v1beta1/zz_labservicelab_types.go b/apis/labservices/v1beta1/zz_labservicelab_types.go index aa7d0257c..498f3d55f 100755 --- a/apis/labservices/v1beta1/zz_labservicelab_types.go +++ b/apis/labservices/v1beta1/zz_labservicelab_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AdminUserInitParameters struct { + + // The username to use when signing in to Lab Service Lab VMs. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type AdminUserObservation struct { // The username to use when signing in to Lab Service Lab VMs. @@ -26,8 +32,23 @@ type AdminUserParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username to use when signing in to Lab Service Lab VMs. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type AutoShutdownInitParameters struct { + + // The amount of time a VM will stay running after a user disconnects if this behavior is enabled. This value must be formatted as an ISO 8601 string. + DisconnectDelay *string `json:"disconnectDelay,omitempty" tf:"disconnect_delay,omitempty"` + + // The amount of time a VM will idle before it is shutdown if this behavior is enabled. This value must be formatted as an ISO 8601 string. + IdleDelay *string `json:"idleDelay,omitempty" tf:"idle_delay,omitempty"` + + // The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled. This value must be formatted as an ISO 8601 string. + NoConnectDelay *string `json:"noConnectDelay,omitempty" tf:"no_connect_delay,omitempty"` + + // A VM will get shutdown when it has idled for a period of time. Possible values are LowUsage and UserAbsence. + ShutdownOnIdle *string `json:"shutdownOnIdle,omitempty" tf:"shutdown_on_idle,omitempty"` } type AutoShutdownObservation struct { @@ -64,6 +85,15 @@ type AutoShutdownParameters struct { ShutdownOnIdle *string `json:"shutdownOnIdle,omitempty" tf:"shutdown_on_idle,omitempty"` } +type ConnectionSettingInitParameters struct { + + // The enabled access level for Client Access over RDP. Possible value is Public. + ClientRdpAccess *string `json:"clientRdpAccess,omitempty" tf:"client_rdp_access,omitempty"` + + // The enabled access level for Client Access over SSH. Possible value is Public. + ClientSSHAccess *string `json:"clientSshAccess,omitempty" tf:"client_ssh_access,omitempty"` +} + type ConnectionSettingObservation struct { // The enabled access level for Client Access over RDP. Possible value is Public. @@ -84,6 +114,24 @@ type ConnectionSettingParameters struct { ClientSSHAccess *string `json:"clientSshAccess,omitempty" tf:"client_ssh_access,omitempty"` } +type ImageReferenceInitParameters struct { + + // The resource ID of the image. Changing this forces a new resource to be created. + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // The image offer if applicable. Changing this forces a new resource to be created. + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` + + // The image publisher. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` + + // A sku block as defined below. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // The image version specified on creation. Changing this forces a new resource to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type ImageReferenceObservation struct { // The resource ID of the image. Changing this forces a new resource to be created. @@ -125,6 +173,42 @@ type ImageReferenceParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type LabServiceLabInitParameters struct { + + // An auto_shutdown block as defined below. + AutoShutdown []AutoShutdownInitParameters `json:"autoShutdown,omitempty" tf:"auto_shutdown,omitempty"` + + // A connection_setting block as defined below. + ConnectionSetting []ConnectionSettingInitParameters `json:"connectionSetting,omitempty" tf:"connection_setting,omitempty"` + + // The description of the Lab Service Lab. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The resource ID of the Lab Plan that is used during resource creation to provide defaults and acts as a permission container when creating a Lab Service Lab via labs.azure.com. + LabPlanID *string `json:"labPlanId,omitempty" tf:"lab_plan_id,omitempty"` + + // The Azure Region where the Lab Service Lab should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A network block as defined below. + Network []NetworkInitParameters `json:"network,omitempty" tf:"network,omitempty"` + + // A roster block as defined below. + Roster []RosterInitParameters `json:"roster,omitempty" tf:"roster,omitempty"` + + // A security block as defined below. + Security []SecurityInitParameters `json:"security,omitempty" tf:"security,omitempty"` + + // A mapping of tags which should be assigned to the Lab Service Lab. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The title of the Lab Service Lab. + Title *string `json:"title,omitempty" tf:"title,omitempty"` + + // A virtual_machine block as defined below. + VirtualMachine []VirtualMachineInitParameters `json:"virtualMachine,omitempty" tf:"virtual_machine,omitempty"` +} + type LabServiceLabObservation struct { // An auto_shutdown block as defined below. @@ -227,6 +311,9 @@ type LabServiceLabParameters struct { VirtualMachine []VirtualMachineParameters `json:"virtualMachine,omitempty" tf:"virtual_machine,omitempty"` } +type NetworkInitParameters struct { +} + type NetworkObservation struct { // The resource ID of the Load Balancer for the network profile of the Lab Service Lab. @@ -256,6 +343,12 @@ type NetworkParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type NonAdminUserInitParameters struct { + + // The username to use when signing in to Lab Service Lab VMs. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type NonAdminUserObservation struct { // The username to use when signing in to Lab Service Lab VMs. @@ -269,8 +362,26 @@ type NonAdminUserParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username to use when signing in to Lab Service Lab VMs. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type RosterInitParameters struct { + + // The AAD group ID which this Lab Service Lab roster is populated from. + ActiveDirectoryGroupID *string `json:"activeDirectoryGroupId,omitempty" tf:"active_directory_group_id,omitempty"` + + // The base URI identifying the lms instance. + LmsInstance *string `json:"lmsInstance,omitempty" tf:"lms_instance,omitempty"` + + // The unique id of the Azure Lab Service tool in the lms. + LtiClientID *string `json:"ltiClientId,omitempty" tf:"lti_client_id,omitempty"` + + // The unique context identifier for the Lab Service Lab in the lms. + LtiContextID *string `json:"ltiContextId,omitempty" tf:"lti_context_id,omitempty"` + + // The URI of the names and roles service endpoint on the lms for the class attached to this Lab Service Lab. + LtiRosterEndpoint *string `json:"ltiRosterEndpoint,omitempty" tf:"lti_roster_endpoint,omitempty"` } type RosterObservation struct { @@ -314,6 +425,12 @@ type RosterParameters struct { LtiRosterEndpoint *string `json:"ltiRosterEndpoint,omitempty" tf:"lti_roster_endpoint,omitempty"` } +type SecurityInitParameters struct { + + // Is open access enabled to allow any user or only specified users to register to a Lab Service Lab? + OpenAccessEnabled *bool `json:"openAccessEnabled,omitempty" tf:"open_access_enabled,omitempty"` +} + type SecurityObservation struct { // Is open access enabled to allow any user or only specified users to register to a Lab Service Lab? @@ -326,8 +443,17 @@ type SecurityObservation struct { type SecurityParameters struct { // Is open access enabled to allow any user or only specified users to register to a Lab Service Lab? - // +kubebuilder:validation:Required - OpenAccessEnabled *bool `json:"openAccessEnabled" tf:"open_access_enabled,omitempty"` + // +kubebuilder:validation:Optional + OpenAccessEnabled *bool `json:"openAccessEnabled,omitempty" tf:"open_access_enabled,omitempty"` +} + +type SkuInitParameters struct { + + // The capacity for the SKU. Possible values are between 0 and 400. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // The name of the SKU. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type SkuObservation struct { @@ -342,12 +468,39 @@ type SkuObservation struct { type SkuParameters struct { // The capacity for the SKU. Possible values are between 0 and 400. - // +kubebuilder:validation:Required - Capacity *float64 `json:"capacity" tf:"capacity,omitempty"` + // +kubebuilder:validation:Optional + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The name of the SKU. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type VirtualMachineInitParameters struct { + + // Is flagged to pre-install dedicated GPU drivers? Defaults to false. Changing this forces a new resource to be created. + AdditionalCapabilityGpuDriversInstalled *bool `json:"additionalCapabilityGpuDriversInstalled,omitempty" tf:"additional_capability_gpu_drivers_installed,omitempty"` + + // An admin_user block as defined below. + AdminUser []AdminUserInitParameters `json:"adminUser,omitempty" tf:"admin_user,omitempty"` + + // The create option to indicate what Lab Service Lab VMs are created from. Possible values are Image and TemplateVM. Defaults to Image. Changing this forces a new resource to be created. + CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` + + // An image_reference block as defined below. + ImageReference []ImageReferenceInitParameters `json:"imageReference,omitempty" tf:"image_reference,omitempty"` + + // A non_admin_user block as defined below. + NonAdminUser []NonAdminUserInitParameters `json:"nonAdminUser,omitempty" tf:"non_admin_user,omitempty"` + + // Is the shared password enabled with the same password for all user VMs? Defaults to false. Changing this forces a new resource to be created. + SharedPasswordEnabled *bool `json:"sharedPasswordEnabled,omitempty" tf:"shared_password_enabled,omitempty"` + + // A sku block as defined below. + Sku []SkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"` + + // The initial quota allocated to each Lab Service Lab user. Defaults to PT0S. This value must be formatted as an ISO 8601 string. + UsageQuota *string `json:"usageQuota,omitempty" tf:"usage_quota,omitempty"` } type VirtualMachineObservation struct { @@ -384,16 +537,16 @@ type VirtualMachineParameters struct { AdditionalCapabilityGpuDriversInstalled *bool `json:"additionalCapabilityGpuDriversInstalled,omitempty" tf:"additional_capability_gpu_drivers_installed,omitempty"` // An admin_user block as defined below. - // +kubebuilder:validation:Required - AdminUser []AdminUserParameters `json:"adminUser" tf:"admin_user,omitempty"` + // +kubebuilder:validation:Optional + AdminUser []AdminUserParameters `json:"adminUser,omitempty" tf:"admin_user,omitempty"` // The create option to indicate what Lab Service Lab VMs are created from. Possible values are Image and TemplateVM. Defaults to Image. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` // An image_reference block as defined below. - // +kubebuilder:validation:Required - ImageReference []ImageReferenceParameters `json:"imageReference" tf:"image_reference,omitempty"` + // +kubebuilder:validation:Optional + ImageReference []ImageReferenceParameters `json:"imageReference,omitempty" tf:"image_reference,omitempty"` // A non_admin_user block as defined below. // +kubebuilder:validation:Optional @@ -404,8 +557,8 @@ type VirtualMachineParameters struct { SharedPasswordEnabled *bool `json:"sharedPasswordEnabled,omitempty" tf:"shared_password_enabled,omitempty"` // A sku block as defined below. - // +kubebuilder:validation:Required - Sku []SkuParameters `json:"sku" tf:"sku,omitempty"` + // +kubebuilder:validation:Optional + Sku []SkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // The initial quota allocated to each Lab Service Lab user. Defaults to PT0S. This value must be formatted as an ISO 8601 string. // +kubebuilder:validation:Optional @@ -416,6 +569,18 @@ type VirtualMachineParameters struct { type LabServiceLabSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LabServiceLabParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LabServiceLabInitParameters `json:"initProvider,omitempty"` } // LabServiceLabStatus defines the observed state of LabServiceLab. @@ -436,10 +601,10 @@ type LabServiceLabStatus struct { type LabServiceLab struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.security)",message="security is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.title)",message="title is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.virtualMachine)",message="virtualMachine is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.security) || has(self.initProvider.security)",message="security is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.title) || has(self.initProvider.title)",message="title is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.virtualMachine) || has(self.initProvider.virtualMachine)",message="virtualMachine is a required parameter" Spec LabServiceLabSpec `json:"spec"` Status LabServiceLabStatus `json:"status,omitempty"` } diff --git a/apis/labservices/v1beta1/zz_labserviceplan_types.go b/apis/labservices/v1beta1/zz_labserviceplan_types.go index a11f375b4..1570184ce 100755 --- a/apis/labservices/v1beta1/zz_labserviceplan_types.go +++ b/apis/labservices/v1beta1/zz_labserviceplan_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DefaultAutoShutdownInitParameters struct { + + // The amount of time a VM will stay running after a user disconnects if this behavior is enabled. This value must be formatted as an ISO 8601 string. + DisconnectDelay *string `json:"disconnectDelay,omitempty" tf:"disconnect_delay,omitempty"` + + // The amount of time a VM will idle before it is shutdown if this behavior is enabled. This value must be formatted as an ISO 8601 string. + IdleDelay *string `json:"idleDelay,omitempty" tf:"idle_delay,omitempty"` + + // The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled. This value must be formatted as an ISO 8601 string. + NoConnectDelay *string `json:"noConnectDelay,omitempty" tf:"no_connect_delay,omitempty"` + + // Will a VM get shutdown when it has idled for a period of time? Possible values are LowUsage and UserAbsence. + ShutdownOnIdle *string `json:"shutdownOnIdle,omitempty" tf:"shutdown_on_idle,omitempty"` +} + type DefaultAutoShutdownObservation struct { // The amount of time a VM will stay running after a user disconnects if this behavior is enabled. This value must be formatted as an ISO 8601 string. @@ -47,6 +62,21 @@ type DefaultAutoShutdownParameters struct { ShutdownOnIdle *string `json:"shutdownOnIdle,omitempty" tf:"shutdown_on_idle,omitempty"` } +type DefaultConnectionInitParameters struct { + + // The enabled access level for Client Access over RDP. Possible values are Private and Public. + ClientRdpAccess *string `json:"clientRdpAccess,omitempty" tf:"client_rdp_access,omitempty"` + + // The enabled access level for Client Access over SSH. Possible values are Private and Public. + ClientSSHAccess *string `json:"clientSshAccess,omitempty" tf:"client_ssh_access,omitempty"` + + // The enabled access level for Web Access over RDP. Possible values are Private and Public. + WebRdpAccess *string `json:"webRdpAccess,omitempty" tf:"web_rdp_access,omitempty"` + + // The enabled access level for Web Access over SSH. Possible values are Private and Public. + WebSSHAccess *string `json:"webSshAccess,omitempty" tf:"web_ssh_access,omitempty"` +} + type DefaultConnectionObservation struct { // The enabled access level for Client Access over RDP. Possible values are Private and Public. @@ -81,6 +111,30 @@ type DefaultConnectionParameters struct { WebSSHAccess *string `json:"webSshAccess,omitempty" tf:"web_ssh_access,omitempty"` } +type LabServicePlanInitParameters struct { + + // The allowed regions for the lab creator to use when creating labs using this Lab Service Plan. The allowed region's count must be between 1 and 28. + AllowedRegions []*string `json:"allowedRegions,omitempty" tf:"allowed_regions,omitempty"` + + // A default_auto_shutdown block as defined below. + DefaultAutoShutdown []DefaultAutoShutdownInitParameters `json:"defaultAutoShutdown,omitempty" tf:"default_auto_shutdown,omitempty"` + + // A default_connection block as defined below. + DefaultConnection []DefaultConnectionInitParameters `json:"defaultConnection,omitempty" tf:"default_connection,omitempty"` + + // The Azure Region where the Lab Service Plan should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The resource ID of the Shared Image Gallery attached to this Lab Service Plan. When saving a lab template virtual machine image it will be persisted in this gallery. The shared images from the gallery can be made available to use when creating new labs. + SharedGalleryID *string `json:"sharedGalleryId,omitempty" tf:"shared_gallery_id,omitempty"` + + // A support block as defined below. + Support []SupportInitParameters `json:"support,omitempty" tf:"support,omitempty"` + + // A mapping of tags which should be assigned to the Lab Service Plan. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type LabServicePlanObservation struct { // The allowed regions for the lab creator to use when creating labs using this Lab Service Plan. The allowed region's count must be between 1 and 28. @@ -172,6 +226,21 @@ type LabServicePlanParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type SupportInitParameters struct { + + // The email address for the support contact. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // The instructions for users of the Lab Service Plan. + Instructions *string `json:"instructions,omitempty" tf:"instructions,omitempty"` + + // The phone number for the support contact. + Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` + + // The web address for users of the Lab Service Plan. + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type SupportObservation struct { // The email address for the support contact. @@ -210,6 +279,18 @@ type SupportParameters struct { type LabServicePlanSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LabServicePlanParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LabServicePlanInitParameters `json:"initProvider,omitempty"` } // LabServicePlanStatus defines the observed state of LabServicePlan. @@ -230,8 +311,8 @@ type LabServicePlanStatus struct { type LabServicePlan struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.allowedRegions)",message="allowedRegions is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.allowedRegions) || has(self.initProvider.allowedRegions)",message="allowedRegions is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec LabServicePlanSpec `json:"spec"` Status LabServicePlanStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appactioncustom_types.go b/apis/logic/v1beta1/zz_appactioncustom_types.go index ddda5e4e4..674b57d13 100755 --- a/apis/logic/v1beta1/zz_appactioncustom_types.go +++ b/apis/logic/v1beta1/zz_appactioncustom_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppActionCustomInitParameters struct { + + // Specifies the JSON Blob defining the Body of this Custom Action. + Body *string `json:"body,omitempty" tf:"body,omitempty"` +} + type AppActionCustomObservation struct { // Specifies the JSON Blob defining the Body of this Custom Action. @@ -50,6 +56,18 @@ type AppActionCustomParameters struct { type AppActionCustomSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppActionCustomParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppActionCustomInitParameters `json:"initProvider,omitempty"` } // AppActionCustomStatus defines the observed state of AppActionCustom. @@ -70,7 +88,7 @@ type AppActionCustomStatus struct { type AppActionCustom struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body)",message="body is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.body) || has(self.initProvider.body)",message="body is a required parameter" Spec AppActionCustomSpec `json:"spec"` Status AppActionCustomStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appactionhttp_types.go b/apis/logic/v1beta1/zz_appactionhttp_types.go index 7f5bfa392..55db1a4e3 100755 --- a/apis/logic/v1beta1/zz_appactionhttp_types.go +++ b/apis/logic/v1beta1/zz_appactionhttp_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppActionHTTPInitParameters struct { + + // Specifies the HTTP Body that should be sent to the uri when this HTTP Action is triggered. + Body *string `json:"body,omitempty" tf:"body,omitempty"` + + // Specifies a Map of Key-Value Pairs that should be sent to the uri when this HTTP Action is triggered. + Headers map[string]*string `json:"headers,omitempty" tf:"headers,omitempty"` + + // Specifies the HTTP Method which should be used for this HTTP Action. Possible values include DELETE, GET, PATCH, POST and PUT. + Method *string `json:"method,omitempty" tf:"method,omitempty"` + + // Specifies a Map of Key-Value Pairs that should be sent to the uri when this HTTP Action is triggered. + Queries map[string]*string `json:"queries,omitempty" tf:"queries,omitempty"` + + // Specifies the place of the HTTP Action in the Logic App Workflow. If not specified, the HTTP Action is right after the Trigger. A run_after block is as defined below. + RunAfter []RunAfterInitParameters `json:"runAfter,omitempty" tf:"run_after,omitempty"` + + // Specifies the URI which will be called when this HTTP Action is triggered. + URI *string `json:"uri,omitempty" tf:"uri,omitempty"` +} + type AppActionHTTPObservation struct { // Specifies the HTTP Body that should be sent to the uri when this HTTP Action is triggered. @@ -81,6 +102,15 @@ type AppActionHTTPParameters struct { URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } +type RunAfterInitParameters struct { + + // Specifies the name of the precedent HTTP Action. + ActionName *string `json:"actionName,omitempty" tf:"action_name,omitempty"` + + // Specifies the expected result of the precedent HTTP Action, only after which the current HTTP Action will be triggered. Possible values include Succeeded, Failed, Skipped and TimedOut. + ActionResult *string `json:"actionResult,omitempty" tf:"action_result,omitempty"` +} + type RunAfterObservation struct { // Specifies the name of the precedent HTTP Action. @@ -93,18 +123,30 @@ type RunAfterObservation struct { type RunAfterParameters struct { // Specifies the name of the precedent HTTP Action. - // +kubebuilder:validation:Required - ActionName *string `json:"actionName" tf:"action_name,omitempty"` + // +kubebuilder:validation:Optional + ActionName *string `json:"actionName,omitempty" tf:"action_name,omitempty"` // Specifies the expected result of the precedent HTTP Action, only after which the current HTTP Action will be triggered. Possible values include Succeeded, Failed, Skipped and TimedOut. - // +kubebuilder:validation:Required - ActionResult *string `json:"actionResult" tf:"action_result,omitempty"` + // +kubebuilder:validation:Optional + ActionResult *string `json:"actionResult,omitempty" tf:"action_result,omitempty"` } // AppActionHTTPSpec defines the desired state of AppActionHTTP type AppActionHTTPSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppActionHTTPParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppActionHTTPInitParameters `json:"initProvider,omitempty"` } // AppActionHTTPStatus defines the observed state of AppActionHTTP. @@ -125,8 +167,8 @@ type AppActionHTTPStatus struct { type AppActionHTTP struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.method)",message="method is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.uri)",message="uri is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.method) || has(self.initProvider.method)",message="method is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.uri) || has(self.initProvider.uri)",message="uri is a required parameter" Spec AppActionHTTPSpec `json:"spec"` Status AppActionHTTPStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appintegrationaccount_types.go b/apis/logic/v1beta1/zz_appintegrationaccount_types.go index c34b09045..850572d65 100755 --- a/apis/logic/v1beta1/zz_appintegrationaccount_types.go +++ b/apis/logic/v1beta1/zz_appintegrationaccount_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppIntegrationAccountInitParameters struct { + + // The resource ID of the Integration Service Environment. Changing this forces a new Logic App Integration Account to be created. + IntegrationServiceEnvironmentID *string `json:"integrationServiceEnvironmentId,omitempty" tf:"integration_service_environment_id,omitempty"` + + // The Azure Region where the Logic App Integration Account should exist. Changing this forces a new Logic App Integration Account to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name which should be used for this Logic App Integration Account. Changing this forces a new Logic App Integration Account to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The SKU name of the Logic App Integration Account. Possible Values are Basic, Free and Standard. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags which should be assigned to the Logic App Integration Account. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type AppIntegrationAccountObservation struct { // The ID of the Logic App Integration Account. @@ -77,6 +95,18 @@ type AppIntegrationAccountParameters struct { type AppIntegrationAccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppIntegrationAccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppIntegrationAccountInitParameters `json:"initProvider,omitempty"` } // AppIntegrationAccountStatus defines the observed state of AppIntegrationAccount. @@ -97,9 +127,9 @@ type AppIntegrationAccountStatus struct { type AppIntegrationAccount struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec AppIntegrationAccountSpec `json:"spec"` Status AppIntegrationAccountStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appintegrationaccountbatchconfiguration_types.go b/apis/logic/v1beta1/zz_appintegrationaccountbatchconfiguration_types.go index 147b71a40..1576bd127 100755 --- a/apis/logic/v1beta1/zz_appintegrationaccountbatchconfiguration_types.go +++ b/apis/logic/v1beta1/zz_appintegrationaccountbatchconfiguration_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppIntegrationAccountBatchConfigurationInitParameters struct { + + // The batch group name of the Logic App Integration Batch Configuration. Changing this forces a new resource to be created. + BatchGroupName *string `json:"batchGroupName,omitempty" tf:"batch_group_name,omitempty"` + + // A JSON mapping of any Metadata for this Logic App Integration Account Batch Configuration. + Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` + + // The name which should be used for this Logic App Integration Account Batch Configuration. Only Alphanumeric characters allowed. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A release_criteria block as documented below, which is used to select the criteria to meet before processing each batch. + ReleaseCriteria []ReleaseCriteriaInitParameters `json:"releaseCriteria,omitempty" tf:"release_criteria,omitempty"` +} + type AppIntegrationAccountBatchConfigurationObservation struct { // The batch group name of the Logic App Integration Batch Configuration. Changing this forces a new resource to be created. @@ -83,6 +98,15 @@ type AppIntegrationAccountBatchConfigurationParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` } +type MonthlyInitParameters struct { + + // The occurrence of the week within the month. + Week *float64 `json:"week,omitempty" tf:"week,omitempty"` + + // The day of the occurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. + Weekday *string `json:"weekday,omitempty" tf:"weekday,omitempty"` +} + type MonthlyObservation struct { // The occurrence of the week within the month. @@ -95,12 +119,33 @@ type MonthlyObservation struct { type MonthlyParameters struct { // The occurrence of the week within the month. - // +kubebuilder:validation:Required - Week *float64 `json:"week" tf:"week,omitempty"` + // +kubebuilder:validation:Optional + Week *float64 `json:"week,omitempty" tf:"week,omitempty"` // The day of the occurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. - // +kubebuilder:validation:Required - Weekday *string `json:"weekday" tf:"weekday,omitempty"` + // +kubebuilder:validation:Optional + Weekday *string `json:"weekday,omitempty" tf:"weekday,omitempty"` +} + +type RecurrenceInitParameters struct { + + // The end time of the schedule, formatted as an RFC3339 string. + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` + + // The frequency of the schedule. Possible values are Day, Hour, Minute, Month, NotSpecified, Second, Week and Year. + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // The number of frequencys between runs. + Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` + + // A schedule block as documented below. + Schedule []ScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` + + // The start time of the schedule, formatted as an RFC3339 string. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` + + // The timezone of the start/end time. + TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } type RecurrenceObservation struct { @@ -131,12 +176,12 @@ type RecurrenceParameters struct { EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // The frequency of the schedule. Possible values are Day, Hour, Minute, Month, NotSpecified, Second, Week and Year. - // +kubebuilder:validation:Required - Frequency *string `json:"frequency" tf:"frequency,omitempty"` + // +kubebuilder:validation:Optional + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // The number of frequencys between runs. - // +kubebuilder:validation:Required - Interval *float64 `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` // A schedule block as documented below. // +kubebuilder:validation:Optional @@ -151,6 +196,18 @@ type RecurrenceParameters struct { TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } +type ReleaseCriteriaInitParameters struct { + + // The batch size in bytes for the Logic App Integration Batch Configuration. + BatchSize *float64 `json:"batchSize,omitempty" tf:"batch_size,omitempty"` + + // The message count for the Logic App Integration Batch Configuration. + MessageCount *float64 `json:"messageCount,omitempty" tf:"message_count,omitempty"` + + // A recurrence block as documented below. + Recurrence []RecurrenceInitParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` +} + type ReleaseCriteriaObservation struct { // The batch size in bytes for the Logic App Integration Batch Configuration. @@ -178,6 +235,24 @@ type ReleaseCriteriaParameters struct { Recurrence []RecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } +type ScheduleInitParameters struct { + + // A list containing a single item, which specifies the Hour interval at which this recurrence should be triggered. + Hours []*float64 `json:"hours,omitempty" tf:"hours,omitempty"` + + // A list containing a single item which specifies the Minute interval at which this recurrence should be triggered. + Minutes []*float64 `json:"minutes,omitempty" tf:"minutes,omitempty"` + + // A list of days of the month that the job should execute on. + MonthDays []*float64 `json:"monthDays,omitempty" tf:"month_days,omitempty"` + + // A monthly block as documented below. + Monthly []MonthlyInitParameters `json:"monthly,omitempty" tf:"monthly,omitempty"` + + // A list of days of the week that the job should execute on. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. + WeekDays []*string `json:"weekDays,omitempty" tf:"week_days,omitempty"` +} + type ScheduleObservation struct { // A list containing a single item, which specifies the Hour interval at which this recurrence should be triggered. @@ -223,6 +298,18 @@ type ScheduleParameters struct { type AppIntegrationAccountBatchConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppIntegrationAccountBatchConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppIntegrationAccountBatchConfigurationInitParameters `json:"initProvider,omitempty"` } // AppIntegrationAccountBatchConfigurationStatus defines the observed state of AppIntegrationAccountBatchConfiguration. @@ -243,9 +330,9 @@ type AppIntegrationAccountBatchConfigurationStatus struct { type AppIntegrationAccountBatchConfiguration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.batchGroupName)",message="batchGroupName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.releaseCriteria)",message="releaseCriteria is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.batchGroupName) || has(self.initProvider.batchGroupName)",message="batchGroupName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.releaseCriteria) || has(self.initProvider.releaseCriteria)",message="releaseCriteria is a required parameter" Spec AppIntegrationAccountBatchConfigurationSpec `json:"spec"` Status AppIntegrationAccountBatchConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appintegrationaccountpartner_types.go b/apis/logic/v1beta1/zz_appintegrationaccountpartner_types.go index 6c4d65232..6466e9051 100755 --- a/apis/logic/v1beta1/zz_appintegrationaccountpartner_types.go +++ b/apis/logic/v1beta1/zz_appintegrationaccountpartner_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppIntegrationAccountPartnerInitParameters struct { + + // A business_identity block as documented below. + BusinessIdentity []BusinessIdentityInitParameters `json:"businessIdentity,omitempty" tf:"business_identity,omitempty"` + + // A JSON mapping of any Metadata for this Logic App Integration Account Partner. + Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` +} + type AppIntegrationAccountPartnerObservation struct { // A business_identity block as documented below. @@ -69,6 +78,15 @@ type AppIntegrationAccountPartnerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` } +type BusinessIdentityInitParameters struct { + + // The authenticating body that provides unique business identities to organizations. + Qualifier *string `json:"qualifier,omitempty" tf:"qualifier,omitempty"` + + // The value that identifies the documents that your logic apps receive. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type BusinessIdentityObservation struct { // The authenticating body that provides unique business identities to organizations. @@ -81,18 +99,30 @@ type BusinessIdentityObservation struct { type BusinessIdentityParameters struct { // The authenticating body that provides unique business identities to organizations. - // +kubebuilder:validation:Required - Qualifier *string `json:"qualifier" tf:"qualifier,omitempty"` + // +kubebuilder:validation:Optional + Qualifier *string `json:"qualifier,omitempty" tf:"qualifier,omitempty"` // The value that identifies the documents that your logic apps receive. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` } // AppIntegrationAccountPartnerSpec defines the desired state of AppIntegrationAccountPartner type AppIntegrationAccountPartnerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppIntegrationAccountPartnerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppIntegrationAccountPartnerInitParameters `json:"initProvider,omitempty"` } // AppIntegrationAccountPartnerStatus defines the observed state of AppIntegrationAccountPartner. @@ -113,7 +143,7 @@ type AppIntegrationAccountPartnerStatus struct { type AppIntegrationAccountPartner struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.businessIdentity)",message="businessIdentity is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.businessIdentity) || has(self.initProvider.businessIdentity)",message="businessIdentity is a required parameter" Spec AppIntegrationAccountPartnerSpec `json:"spec"` Status AppIntegrationAccountPartnerStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appintegrationaccountschema_types.go b/apis/logic/v1beta1/zz_appintegrationaccountschema_types.go index 8ae7d1835..c92dc6011 100755 --- a/apis/logic/v1beta1/zz_appintegrationaccountschema_types.go +++ b/apis/logic/v1beta1/zz_appintegrationaccountschema_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppIntegrationAccountSchemaInitParameters struct { + + // The content of the Logic App Integration Account Schema. + Content *string `json:"content,omitempty" tf:"content,omitempty"` + + // The file name of the Logic App Integration Account Schema. + FileName *string `json:"fileName,omitempty" tf:"file_name,omitempty"` + + // The metadata of the Logic App Integration Account Schema. + Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` +} + type AppIntegrationAccountSchemaObservation struct { // The content of the Logic App Integration Account Schema. @@ -80,6 +92,18 @@ type AppIntegrationAccountSchemaParameters struct { type AppIntegrationAccountSchemaSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppIntegrationAccountSchemaParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppIntegrationAccountSchemaInitParameters `json:"initProvider,omitempty"` } // AppIntegrationAccountSchemaStatus defines the observed state of AppIntegrationAccountSchema. @@ -100,7 +124,7 @@ type AppIntegrationAccountSchemaStatus struct { type AppIntegrationAccountSchema struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.content)",message="content is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.content) || has(self.initProvider.content)",message="content is a required parameter" Spec AppIntegrationAccountSchemaSpec `json:"spec"` Status AppIntegrationAccountSchemaStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appintegrationaccountsession_types.go b/apis/logic/v1beta1/zz_appintegrationaccountsession_types.go index c487a6175..67aeb2cad 100755 --- a/apis/logic/v1beta1/zz_appintegrationaccountsession_types.go +++ b/apis/logic/v1beta1/zz_appintegrationaccountsession_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppIntegrationAccountSessionInitParameters struct { + + // The content of the Logic App Integration Account Session. + Content *string `json:"content,omitempty" tf:"content,omitempty"` +} + type AppIntegrationAccountSessionObservation struct { // The content of the Logic App Integration Account Session. @@ -66,6 +72,18 @@ type AppIntegrationAccountSessionParameters struct { type AppIntegrationAccountSessionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppIntegrationAccountSessionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppIntegrationAccountSessionInitParameters `json:"initProvider,omitempty"` } // AppIntegrationAccountSessionStatus defines the observed state of AppIntegrationAccountSession. @@ -86,7 +104,7 @@ type AppIntegrationAccountSessionStatus struct { type AppIntegrationAccountSession struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.content)",message="content is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.content) || has(self.initProvider.content)",message="content is a required parameter" Spec AppIntegrationAccountSessionSpec `json:"spec"` Status AppIntegrationAccountSessionStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_apptriggercustom_types.go b/apis/logic/v1beta1/zz_apptriggercustom_types.go index 06e5ff69e..72f3b0a45 100755 --- a/apis/logic/v1beta1/zz_apptriggercustom_types.go +++ b/apis/logic/v1beta1/zz_apptriggercustom_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppTriggerCustomInitParameters struct { + + // Specifies the JSON Blob defining the Body of this Custom Trigger. + Body *string `json:"body,omitempty" tf:"body,omitempty"` +} + type AppTriggerCustomObservation struct { // Specifies the JSON Blob defining the Body of this Custom Trigger. @@ -50,6 +56,18 @@ type AppTriggerCustomParameters struct { type AppTriggerCustomSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppTriggerCustomParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppTriggerCustomInitParameters `json:"initProvider,omitempty"` } // AppTriggerCustomStatus defines the observed state of AppTriggerCustom. @@ -70,7 +88,7 @@ type AppTriggerCustomStatus struct { type AppTriggerCustom struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body)",message="body is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.body) || has(self.initProvider.body)",message="body is a required parameter" Spec AppTriggerCustomSpec `json:"spec"` Status AppTriggerCustomStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_apptriggerhttprequest_types.go b/apis/logic/v1beta1/zz_apptriggerhttprequest_types.go index bcd83c8a3..281bf3d6c 100755 --- a/apis/logic/v1beta1/zz_apptriggerhttprequest_types.go +++ b/apis/logic/v1beta1/zz_apptriggerhttprequest_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppTriggerHTTPRequestInitParameters struct { + + // Specifies the HTTP Method which the request be using. Possible values include DELETE, GET, PATCH, POST or PUT. + Method *string `json:"method,omitempty" tf:"method,omitempty"` + + // Specifies the Relative Path used for this Request. + RelativePath *string `json:"relativePath,omitempty" tf:"relative_path,omitempty"` + + // A JSON Blob defining the Schema of the incoming request. This needs to be valid JSON. + Schema *string `json:"schema,omitempty" tf:"schema,omitempty"` +} + type AppTriggerHTTPRequestObservation struct { // The URL for the workflow trigger @@ -67,6 +79,18 @@ type AppTriggerHTTPRequestParameters struct { type AppTriggerHTTPRequestSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppTriggerHTTPRequestParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppTriggerHTTPRequestInitParameters `json:"initProvider,omitempty"` } // AppTriggerHTTPRequestStatus defines the observed state of AppTriggerHTTPRequest. @@ -87,7 +111,7 @@ type AppTriggerHTTPRequestStatus struct { type AppTriggerHTTPRequest struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.schema)",message="schema is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.schema) || has(self.initProvider.schema)",message="schema is a required parameter" Spec AppTriggerHTTPRequestSpec `json:"spec"` Status AppTriggerHTTPRequestStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_apptriggerrecurrence_types.go b/apis/logic/v1beta1/zz_apptriggerrecurrence_types.go index c306025e6..2d7656ad7 100755 --- a/apis/logic/v1beta1/zz_apptriggerrecurrence_types.go +++ b/apis/logic/v1beta1/zz_apptriggerrecurrence_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppTriggerRecurrenceInitParameters struct { + + // Specifies the Frequency at which this Trigger should be run. Possible values include Month, Week, Day, Hour, Minute and Second. + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // Specifies interval used for the Frequency, for example a value of 4 for interval and hour for frequency would run the Trigger every 4 hours. + Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` + + // A schedule block as specified below. + Schedule []AppTriggerRecurrenceScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` + + // Specifies the start date and time for this trigger in RFC3339 format: 2000-01-02T03:04:05Z. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` + + // Specifies the time zone for this trigger. Supported time zone options are listed here + TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` +} + type AppTriggerRecurrenceObservation struct { // Specifies the Frequency at which this Trigger should be run. Possible values include Month, Week, Day, Hour, Minute and Second. @@ -74,6 +92,18 @@ type AppTriggerRecurrenceParameters struct { TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } +type AppTriggerRecurrenceScheduleInitParameters struct { + + // Specifies a list of hours when the trigger should run. Valid values are between 0 and 23. + AtTheseHours []*float64 `json:"atTheseHours,omitempty" tf:"at_these_hours,omitempty"` + + // Specifies a list of minutes when the trigger should run. Valid values are between 0 and 59. + AtTheseMinutes []*float64 `json:"atTheseMinutes,omitempty" tf:"at_these_minutes,omitempty"` + + // Specifies a list of days when the trigger should run. Valid values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday. + OnTheseDays []*string `json:"onTheseDays,omitempty" tf:"on_these_days,omitempty"` +} + type AppTriggerRecurrenceScheduleObservation struct { // Specifies a list of hours when the trigger should run. Valid values are between 0 and 23. @@ -105,6 +135,18 @@ type AppTriggerRecurrenceScheduleParameters struct { type AppTriggerRecurrenceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppTriggerRecurrenceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppTriggerRecurrenceInitParameters `json:"initProvider,omitempty"` } // AppTriggerRecurrenceStatus defines the observed state of AppTriggerRecurrence. @@ -125,8 +167,8 @@ type AppTriggerRecurrenceStatus struct { type AppTriggerRecurrence struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frequency)",message="frequency is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.interval)",message="interval is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frequency) || has(self.initProvider.frequency)",message="frequency is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.interval) || has(self.initProvider.interval)",message="interval is a required parameter" Spec AppTriggerRecurrenceSpec `json:"spec"` Status AppTriggerRecurrenceStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appworkflow_types.go b/apis/logic/v1beta1/zz_appworkflow_types.go index ce937de71..03da7ae71 100755 --- a/apis/logic/v1beta1/zz_appworkflow_types.go +++ b/apis/logic/v1beta1/zz_appworkflow_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccessControlInitParameters struct { + + // A action block as defined below. + Action []ActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // A content block as defined below. + Content []ContentInitParameters `json:"content,omitempty" tf:"content,omitempty"` + + // A trigger block as defined below. + Trigger []TriggerInitParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` + + // A workflow_management block as defined below. + WorkflowManagement []WorkflowManagementInitParameters `json:"workflowManagement,omitempty" tf:"workflow_management,omitempty"` +} + type AccessControlObservation struct { // A action block as defined below. @@ -47,6 +62,12 @@ type AccessControlParameters struct { WorkflowManagement []WorkflowManagementParameters `json:"workflowManagement,omitempty" tf:"workflow_management,omitempty"` } +type ActionInitParameters struct { + + // A list of the allowed caller IP address ranges. + AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` +} + type ActionObservation struct { // A list of the allowed caller IP address ranges. @@ -56,8 +77,44 @@ type ActionObservation struct { type ActionParameters struct { // A list of the allowed caller IP address ranges. - // +kubebuilder:validation:Required - AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange" tf:"allowed_caller_ip_address_range,omitempty"` + // +kubebuilder:validation:Optional + AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` +} + +type AppWorkflowInitParameters struct { + + // A access_control block as defined below. + AccessControl []AccessControlInitParameters `json:"accessControl,omitempty" tf:"access_control,omitempty"` + + // Is the Logic App Workflow enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The ID of the Integration Service Environment to which this Logic App Workflow belongs. Changing this forces a new Logic App Workflow to be created. + IntegrationServiceEnvironmentID *string `json:"integrationServiceEnvironmentId,omitempty" tf:"integration_service_environment_id,omitempty"` + + // Specifies the supported Azure location where the Logic App Workflow exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The ID of the integration account linked by this Logic App Workflow. + LogicAppIntegrationAccountID *string `json:"logicAppIntegrationAccountId,omitempty" tf:"logic_app_integration_account_id,omitempty"` + + // A map of Key-Value pairs. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies a map of Key-Value pairs of the Parameter Definitions to use for this Logic App Workflow. The key is the parameter name, and the value is a JSON encoded string of the parameter definition (see: https://docs.microsoft.com/azure/logic-apps/logic-apps-workflow-definition-language#parameters). + WorkflowParameters map[string]*string `json:"workflowParameters,omitempty" tf:"workflow_parameters,omitempty"` + + // Specifies the Schema to use for this Logic App Workflow. Defaults to https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#. Changing this forces a new resource to be created. + WorkflowSchema *string `json:"workflowSchema,omitempty" tf:"workflow_schema,omitempty"` + + // Specifies the version of the Schema used for this Logic App Workflow. Defaults to 1.0.0.0. Changing this forces a new resource to be created. + WorkflowVersion *string `json:"workflowVersion,omitempty" tf:"workflow_version,omitempty"` } type AppWorkflowObservation struct { @@ -177,6 +234,15 @@ type AppWorkflowParameters struct { WorkflowVersion *string `json:"workflowVersion,omitempty" tf:"workflow_version,omitempty"` } +type ClaimInitParameters struct { + + // The OAuth policy name for the Logic App Workflow. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of the OAuth policy claim for the Logic App Workflow. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ClaimObservation struct { // The OAuth policy name for the Logic App Workflow. @@ -189,12 +255,18 @@ type ClaimObservation struct { type ClaimParameters struct { // The OAuth policy name for the Logic App Workflow. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the OAuth policy claim for the Logic App Workflow. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type ContentInitParameters struct { + + // A list of the allowed caller IP address ranges. + AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` } type ContentObservation struct { @@ -206,8 +278,17 @@ type ContentObservation struct { type ContentParameters struct { // A list of the allowed caller IP address ranges. - // +kubebuilder:validation:Required - AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange" tf:"allowed_caller_ip_address_range,omitempty"` + // +kubebuilder:validation:Optional + AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` +} + +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Logic App Workflow. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Logic App Workflow. Possible values are SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type IdentityObservation struct { @@ -232,8 +313,17 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Logic App Workflow. Possible values are SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type OpenAuthenticationPolicyInitParameters struct { + + // A claim block as defined below. + Claim []ClaimInitParameters `json:"claim,omitempty" tf:"claim,omitempty"` + + // The OAuth policy name for the Logic App Workflow. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type OpenAuthenticationPolicyObservation struct { @@ -248,12 +338,21 @@ type OpenAuthenticationPolicyObservation struct { type OpenAuthenticationPolicyParameters struct { // A claim block as defined below. - // +kubebuilder:validation:Required - Claim []ClaimParameters `json:"claim" tf:"claim,omitempty"` + // +kubebuilder:validation:Optional + Claim []ClaimParameters `json:"claim,omitempty" tf:"claim,omitempty"` // The OAuth policy name for the Logic App Workflow. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type TriggerInitParameters struct { + + // A list of the allowed caller IP address ranges. + AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` + + // A open_authentication_policy block as defined below. + OpenAuthenticationPolicy []OpenAuthenticationPolicyInitParameters `json:"openAuthenticationPolicy,omitempty" tf:"open_authentication_policy,omitempty"` } type TriggerObservation struct { @@ -268,14 +367,20 @@ type TriggerObservation struct { type TriggerParameters struct { // A list of the allowed caller IP address ranges. - // +kubebuilder:validation:Required - AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange" tf:"allowed_caller_ip_address_range,omitempty"` + // +kubebuilder:validation:Optional + AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` // A open_authentication_policy block as defined below. // +kubebuilder:validation:Optional OpenAuthenticationPolicy []OpenAuthenticationPolicyParameters `json:"openAuthenticationPolicy,omitempty" tf:"open_authentication_policy,omitempty"` } +type WorkflowManagementInitParameters struct { + + // A list of the allowed caller IP address ranges. + AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` +} + type WorkflowManagementObservation struct { // A list of the allowed caller IP address ranges. @@ -285,14 +390,26 @@ type WorkflowManagementObservation struct { type WorkflowManagementParameters struct { // A list of the allowed caller IP address ranges. - // +kubebuilder:validation:Required - AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange" tf:"allowed_caller_ip_address_range,omitempty"` + // +kubebuilder:validation:Optional + AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` } // AppWorkflowSpec defines the desired state of AppWorkflow type AppWorkflowSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppWorkflowParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppWorkflowInitParameters `json:"initProvider,omitempty"` } // AppWorkflowStatus defines the observed state of AppWorkflow. @@ -313,7 +430,7 @@ type AppWorkflowStatus struct { type AppWorkflow struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec AppWorkflowSpec `json:"spec"` Status AppWorkflowStatus `json:"status,omitempty"` } diff --git a/apis/logic/v1beta1/zz_generated.deepcopy.go b/apis/logic/v1beta1/zz_generated.deepcopy.go index 8cff366e7..1b56e4da9 100644 --- a/apis/logic/v1beta1/zz_generated.deepcopy.go +++ b/apis/logic/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,49 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccessControlInitParameters) DeepCopyInto(out *AccessControlInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]ActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = make([]ContentInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Trigger != nil { + in, out := &in.Trigger, &out.Trigger + *out = make([]TriggerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkflowManagement != nil { + in, out := &in.WorkflowManagement, &out.WorkflowManagement + *out = make([]WorkflowManagementInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessControlInitParameters. +func (in *AccessControlInitParameters) DeepCopy() *AccessControlInitParameters { + if in == nil { + return nil + } + out := new(AccessControlInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccessControlObservation) DeepCopyInto(out *AccessControlObservation) { *out = *in @@ -100,6 +143,32 @@ func (in *AccessControlParameters) DeepCopy() *AccessControlParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionInitParameters) DeepCopyInto(out *ActionInitParameters) { + *out = *in + if in.AllowedCallerIPAddressRange != nil { + in, out := &in.AllowedCallerIPAddressRange, &out.AllowedCallerIPAddressRange + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionInitParameters. +func (in *ActionInitParameters) DeepCopy() *ActionInitParameters { + if in == nil { + return nil + } + out := new(ActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionObservation) DeepCopyInto(out *ActionObservation) { *out = *in @@ -179,6 +248,26 @@ func (in *AppActionCustom) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppActionCustomInitParameters) DeepCopyInto(out *AppActionCustomInitParameters) { + *out = *in + if in.Body != nil { + in, out := &in.Body, &out.Body + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppActionCustomInitParameters. +func (in *AppActionCustomInitParameters) DeepCopy() *AppActionCustomInitParameters { + if in == nil { + return nil + } + out := new(AppActionCustomInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppActionCustomList) DeepCopyInto(out *AppActionCustomList) { *out = *in @@ -281,6 +370,7 @@ func (in *AppActionCustomSpec) DeepCopyInto(out *AppActionCustomSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppActionCustomSpec. @@ -337,6 +427,73 @@ func (in *AppActionHTTP) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppActionHTTPInitParameters) DeepCopyInto(out *AppActionHTTPInitParameters) { + *out = *in + if in.Body != nil { + in, out := &in.Body, &out.Body + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Method != nil { + in, out := &in.Method, &out.Method + *out = new(string) + **out = **in + } + if in.Queries != nil { + in, out := &in.Queries, &out.Queries + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.RunAfter != nil { + in, out := &in.RunAfter, &out.RunAfter + *out = make([]RunAfterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URI != nil { + in, out := &in.URI, &out.URI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppActionHTTPInitParameters. +func (in *AppActionHTTPInitParameters) DeepCopy() *AppActionHTTPInitParameters { + if in == nil { + return nil + } + out := new(AppActionHTTPInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppActionHTTPList) DeepCopyInto(out *AppActionHTTPList) { *out = *in @@ -533,6 +690,7 @@ func (in *AppActionHTTPSpec) DeepCopyInto(out *AppActionHTTPSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppActionHTTPSpec. @@ -616,6 +774,53 @@ func (in *AppIntegrationAccountBatchConfiguration) DeepCopyObject() runtime.Obje return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppIntegrationAccountBatchConfigurationInitParameters) DeepCopyInto(out *AppIntegrationAccountBatchConfigurationInitParameters) { + *out = *in + if in.BatchGroupName != nil { + in, out := &in.BatchGroupName, &out.BatchGroupName + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ReleaseCriteria != nil { + in, out := &in.ReleaseCriteria, &out.ReleaseCriteria + *out = make([]ReleaseCriteriaInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountBatchConfigurationInitParameters. +func (in *AppIntegrationAccountBatchConfigurationInitParameters) DeepCopy() *AppIntegrationAccountBatchConfigurationInitParameters { + if in == nil { + return nil + } + out := new(AppIntegrationAccountBatchConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppIntegrationAccountBatchConfigurationList) DeepCopyInto(out *AppIntegrationAccountBatchConfigurationList) { *out = *in @@ -792,6 +997,7 @@ func (in *AppIntegrationAccountBatchConfigurationSpec) DeepCopyInto(out *AppInte *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountBatchConfigurationSpec. @@ -821,6 +1027,56 @@ func (in *AppIntegrationAccountBatchConfigurationStatus) DeepCopy() *AppIntegrat return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppIntegrationAccountInitParameters) DeepCopyInto(out *AppIntegrationAccountInitParameters) { + *out = *in + if in.IntegrationServiceEnvironmentID != nil { + in, out := &in.IntegrationServiceEnvironmentID, &out.IntegrationServiceEnvironmentID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountInitParameters. +func (in *AppIntegrationAccountInitParameters) DeepCopy() *AppIntegrationAccountInitParameters { + if in == nil { + return nil + } + out := new(AppIntegrationAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppIntegrationAccountList) DeepCopyInto(out *AppIntegrationAccountList) { *out = *in @@ -1005,6 +1261,33 @@ func (in *AppIntegrationAccountPartner) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppIntegrationAccountPartnerInitParameters) DeepCopyInto(out *AppIntegrationAccountPartnerInitParameters) { + *out = *in + if in.BusinessIdentity != nil { + in, out := &in.BusinessIdentity, &out.BusinessIdentity + *out = make([]BusinessIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountPartnerInitParameters. +func (in *AppIntegrationAccountPartnerInitParameters) DeepCopy() *AppIntegrationAccountPartnerInitParameters { + if in == nil { + return nil + } + out := new(AppIntegrationAccountPartnerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppIntegrationAccountPartnerList) DeepCopyInto(out *AppIntegrationAccountPartnerList) { *out = *in @@ -1141,6 +1424,7 @@ func (in *AppIntegrationAccountPartnerSpec) DeepCopyInto(out *AppIntegrationAcco *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountPartnerSpec. @@ -1198,18 +1482,48 @@ func (in *AppIntegrationAccountSchema) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AppIntegrationAccountSchemaList) DeepCopyInto(out *AppIntegrationAccountSchemaList) { +func (in *AppIntegrationAccountSchemaInitParameters) DeepCopyInto(out *AppIntegrationAccountSchemaInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]AppIntegrationAccountSchema, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = new(string) + **out = **in + } + if in.FileName != nil { + in, out := &in.FileName, &out.FileName + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountSchemaInitParameters. +func (in *AppIntegrationAccountSchemaInitParameters) DeepCopy() *AppIntegrationAccountSchemaInitParameters { + if in == nil { + return nil + } + out := new(AppIntegrationAccountSchemaInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppIntegrationAccountSchemaList) DeepCopyInto(out *AppIntegrationAccountSchemaList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]AppIntegrationAccountSchema, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountSchemaList. func (in *AppIntegrationAccountSchemaList) DeepCopy() *AppIntegrationAccountSchemaList { @@ -1339,6 +1653,7 @@ func (in *AppIntegrationAccountSchemaSpec) DeepCopyInto(out *AppIntegrationAccou *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountSchemaSpec. @@ -1395,6 +1710,26 @@ func (in *AppIntegrationAccountSession) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppIntegrationAccountSessionInitParameters) DeepCopyInto(out *AppIntegrationAccountSessionInitParameters) { + *out = *in + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountSessionInitParameters. +func (in *AppIntegrationAccountSessionInitParameters) DeepCopy() *AppIntegrationAccountSessionInitParameters { + if in == nil { + return nil + } + out := new(AppIntegrationAccountSessionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppIntegrationAccountSessionList) DeepCopyInto(out *AppIntegrationAccountSessionList) { *out = *in @@ -1517,6 +1852,7 @@ func (in *AppIntegrationAccountSessionSpec) DeepCopyInto(out *AppIntegrationAcco *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountSessionSpec. @@ -1551,6 +1887,7 @@ func (in *AppIntegrationAccountSpec) DeepCopyInto(out *AppIntegrationAccountSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppIntegrationAccountSpec. @@ -1607,6 +1944,26 @@ func (in *AppTriggerCustom) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppTriggerCustomInitParameters) DeepCopyInto(out *AppTriggerCustomInitParameters) { + *out = *in + if in.Body != nil { + in, out := &in.Body, &out.Body + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppTriggerCustomInitParameters. +func (in *AppTriggerCustomInitParameters) DeepCopy() *AppTriggerCustomInitParameters { + if in == nil { + return nil + } + out := new(AppTriggerCustomInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppTriggerCustomList) DeepCopyInto(out *AppTriggerCustomList) { *out = *in @@ -1709,6 +2066,7 @@ func (in *AppTriggerCustomSpec) DeepCopyInto(out *AppTriggerCustomSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppTriggerCustomSpec. @@ -1765,6 +2123,36 @@ func (in *AppTriggerHTTPRequest) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppTriggerHTTPRequestInitParameters) DeepCopyInto(out *AppTriggerHTTPRequestInitParameters) { + *out = *in + if in.Method != nil { + in, out := &in.Method, &out.Method + *out = new(string) + **out = **in + } + if in.RelativePath != nil { + in, out := &in.RelativePath, &out.RelativePath + *out = new(string) + **out = **in + } + if in.Schema != nil { + in, out := &in.Schema, &out.Schema + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppTriggerHTTPRequestInitParameters. +func (in *AppTriggerHTTPRequestInitParameters) DeepCopy() *AppTriggerHTTPRequestInitParameters { + if in == nil { + return nil + } + out := new(AppTriggerHTTPRequestInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppTriggerHTTPRequestList) DeepCopyInto(out *AppTriggerHTTPRequestList) { *out = *in @@ -1892,6 +2280,7 @@ func (in *AppTriggerHTTPRequestSpec) DeepCopyInto(out *AppTriggerHTTPRequestSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppTriggerHTTPRequestSpec. @@ -1948,6 +2337,48 @@ func (in *AppTriggerRecurrence) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppTriggerRecurrenceInitParameters) DeepCopyInto(out *AppTriggerRecurrenceInitParameters) { + *out = *in + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(string) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(float64) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]AppTriggerRecurrenceScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } + if in.TimeZone != nil { + in, out := &in.TimeZone, &out.TimeZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppTriggerRecurrenceInitParameters. +func (in *AppTriggerRecurrenceInitParameters) DeepCopy() *AppTriggerRecurrenceInitParameters { + if in == nil { + return nil + } + out := new(AppTriggerRecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppTriggerRecurrenceList) DeepCopyInto(out *AppTriggerRecurrenceList) { *out = *in @@ -2089,6 +2520,54 @@ func (in *AppTriggerRecurrenceParameters) DeepCopy() *AppTriggerRecurrenceParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppTriggerRecurrenceScheduleInitParameters) DeepCopyInto(out *AppTriggerRecurrenceScheduleInitParameters) { + *out = *in + if in.AtTheseHours != nil { + in, out := &in.AtTheseHours, &out.AtTheseHours + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.AtTheseMinutes != nil { + in, out := &in.AtTheseMinutes, &out.AtTheseMinutes + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.OnTheseDays != nil { + in, out := &in.OnTheseDays, &out.OnTheseDays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppTriggerRecurrenceScheduleInitParameters. +func (in *AppTriggerRecurrenceScheduleInitParameters) DeepCopy() *AppTriggerRecurrenceScheduleInitParameters { + if in == nil { + return nil + } + out := new(AppTriggerRecurrenceScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppTriggerRecurrenceScheduleObservation) DeepCopyInto(out *AppTriggerRecurrenceScheduleObservation) { *out = *in @@ -2190,6 +2669,7 @@ func (in *AppTriggerRecurrenceSpec) DeepCopyInto(out *AppTriggerRecurrenceSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppTriggerRecurrenceSpec. @@ -2247,87 +2727,23 @@ func (in *AppWorkflow) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AppWorkflowList) DeepCopyInto(out *AppWorkflowList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]AppWorkflow, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWorkflowList. -func (in *AppWorkflowList) DeepCopy() *AppWorkflowList { - if in == nil { - return nil - } - out := new(AppWorkflowList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *AppWorkflowList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AppWorkflowObservation) DeepCopyInto(out *AppWorkflowObservation) { +func (in *AppWorkflowInitParameters) DeepCopyInto(out *AppWorkflowInitParameters) { *out = *in if in.AccessControl != nil { in, out := &in.AccessControl, &out.AccessControl - *out = make([]AccessControlObservation, len(*in)) + *out = make([]AccessControlInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.AccessEndpoint != nil { - in, out := &in.AccessEndpoint, &out.AccessEndpoint - *out = new(string) - **out = **in - } - if in.ConnectorEndpointIPAddresses != nil { - in, out := &in.ConnectorEndpointIPAddresses, &out.ConnectorEndpointIPAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ConnectorOutboundIPAddresses != nil { - in, out := &in.ConnectorOutboundIPAddresses, &out.ConnectorOutboundIPAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } if in.Enabled != nil { in, out := &in.Enabled, &out.Enabled *out = new(bool) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.Identity != nil { in, out := &in.Identity, &out.Identity - *out = make([]IdentityObservation, len(*in)) + *out = make([]IdentityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -2362,11 +2778,6 @@ func (in *AppWorkflowObservation) DeepCopyInto(out *AppWorkflowObservation) { (*out)[key] = outVal } } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -2382,14 +2793,187 @@ func (in *AppWorkflowObservation) DeepCopyInto(out *AppWorkflowObservation) { (*out)[key] = outVal } } - if in.WorkflowEndpointIPAddresses != nil { - in, out := &in.WorkflowEndpointIPAddresses, &out.WorkflowEndpointIPAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in + if in.WorkflowParameters != nil { + in, out := &in.WorkflowParameters, &out.WorkflowParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.WorkflowSchema != nil { + in, out := &in.WorkflowSchema, &out.WorkflowSchema + *out = new(string) + **out = **in + } + if in.WorkflowVersion != nil { + in, out := &in.WorkflowVersion, &out.WorkflowVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWorkflowInitParameters. +func (in *AppWorkflowInitParameters) DeepCopy() *AppWorkflowInitParameters { + if in == nil { + return nil + } + out := new(AppWorkflowInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppWorkflowList) DeepCopyInto(out *AppWorkflowList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]AppWorkflow, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWorkflowList. +func (in *AppWorkflowList) DeepCopy() *AppWorkflowList { + if in == nil { + return nil + } + out := new(AppWorkflowList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *AppWorkflowList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppWorkflowObservation) DeepCopyInto(out *AppWorkflowObservation) { + *out = *in + if in.AccessControl != nil { + in, out := &in.AccessControl, &out.AccessControl + *out = make([]AccessControlObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AccessEndpoint != nil { + in, out := &in.AccessEndpoint, &out.AccessEndpoint + *out = new(string) + **out = **in + } + if in.ConnectorEndpointIPAddresses != nil { + in, out := &in.ConnectorEndpointIPAddresses, &out.ConnectorEndpointIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectorOutboundIPAddresses != nil { + in, out := &in.ConnectorOutboundIPAddresses, &out.ConnectorOutboundIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IntegrationServiceEnvironmentID != nil { + in, out := &in.IntegrationServiceEnvironmentID, &out.IntegrationServiceEnvironmentID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.LogicAppIntegrationAccountID != nil { + in, out := &in.LogicAppIntegrationAccountID, &out.LogicAppIntegrationAccountID + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.WorkflowEndpointIPAddresses != nil { + in, out := &in.WorkflowEndpointIPAddresses, &out.WorkflowEndpointIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in } } } @@ -2565,6 +3149,7 @@ func (in *AppWorkflowSpec) DeepCopyInto(out *AppWorkflowSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppWorkflowSpec. @@ -2594,6 +3179,31 @@ func (in *AppWorkflowStatus) DeepCopy() *AppWorkflowStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BusinessIdentityInitParameters) DeepCopyInto(out *BusinessIdentityInitParameters) { + *out = *in + if in.Qualifier != nil { + in, out := &in.Qualifier, &out.Qualifier + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BusinessIdentityInitParameters. +func (in *BusinessIdentityInitParameters) DeepCopy() *BusinessIdentityInitParameters { + if in == nil { + return nil + } + out := new(BusinessIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BusinessIdentityObservation) DeepCopyInto(out *BusinessIdentityObservation) { *out = *in @@ -2644,6 +3254,31 @@ func (in *BusinessIdentityParameters) DeepCopy() *BusinessIdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClaimInitParameters) DeepCopyInto(out *ClaimInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClaimInitParameters. +func (in *ClaimInitParameters) DeepCopy() *ClaimInitParameters { + if in == nil { + return nil + } + out := new(ClaimInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClaimObservation) DeepCopyInto(out *ClaimObservation) { *out = *in @@ -2694,6 +3329,32 @@ func (in *ClaimParameters) DeepCopy() *ClaimParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContentInitParameters) DeepCopyInto(out *ContentInitParameters) { + *out = *in + if in.AllowedCallerIPAddressRange != nil { + in, out := &in.AllowedCallerIPAddressRange, &out.AllowedCallerIPAddressRange + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContentInitParameters. +func (in *ContentInitParameters) DeepCopy() *ContentInitParameters { + if in == nil { + return nil + } + out := new(ContentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContentObservation) DeepCopyInto(out *ContentObservation) { *out = *in @@ -2746,6 +3407,37 @@ func (in *ContentParameters) DeepCopy() *ContentParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -2827,24 +3519,69 @@ func (in *IntegrationServiceEnvironment) DeepCopyInto(out *IntegrationServiceEnv in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationServiceEnvironment. -func (in *IntegrationServiceEnvironment) DeepCopy() *IntegrationServiceEnvironment { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationServiceEnvironment. +func (in *IntegrationServiceEnvironment) DeepCopy() *IntegrationServiceEnvironment { + if in == nil { + return nil + } + out := new(IntegrationServiceEnvironment) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *IntegrationServiceEnvironment) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationServiceEnvironmentInitParameters) DeepCopyInto(out *IntegrationServiceEnvironmentInitParameters) { + *out = *in + if in.AccessEndpointType != nil { + in, out := &in.AccessEndpointType, &out.AccessEndpointType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationServiceEnvironmentInitParameters. +func (in *IntegrationServiceEnvironmentInitParameters) DeepCopy() *IntegrationServiceEnvironmentInitParameters { if in == nil { return nil } - out := new(IntegrationServiceEnvironment) + out := new(IntegrationServiceEnvironmentInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *IntegrationServiceEnvironment) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntegrationServiceEnvironmentList) DeepCopyInto(out *IntegrationServiceEnvironmentList) { *out = *in @@ -3075,6 +3812,7 @@ func (in *IntegrationServiceEnvironmentSpec) DeepCopyInto(out *IntegrationServic *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationServiceEnvironmentSpec. @@ -3104,6 +3842,31 @@ func (in *IntegrationServiceEnvironmentStatus) DeepCopy() *IntegrationServiceEnv return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonthlyInitParameters) DeepCopyInto(out *MonthlyInitParameters) { + *out = *in + if in.Week != nil { + in, out := &in.Week, &out.Week + *out = new(float64) + **out = **in + } + if in.Weekday != nil { + in, out := &in.Weekday, &out.Weekday + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonthlyInitParameters. +func (in *MonthlyInitParameters) DeepCopy() *MonthlyInitParameters { + if in == nil { + return nil + } + out := new(MonthlyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonthlyObservation) DeepCopyInto(out *MonthlyObservation) { *out = *in @@ -3154,6 +3917,33 @@ func (in *MonthlyParameters) DeepCopy() *MonthlyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OpenAuthenticationPolicyInitParameters) DeepCopyInto(out *OpenAuthenticationPolicyInitParameters) { + *out = *in + if in.Claim != nil { + in, out := &in.Claim, &out.Claim + *out = make([]ClaimInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenAuthenticationPolicyInitParameters. +func (in *OpenAuthenticationPolicyInitParameters) DeepCopy() *OpenAuthenticationPolicyInitParameters { + if in == nil { + return nil + } + out := new(OpenAuthenticationPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OpenAuthenticationPolicyObservation) DeepCopyInto(out *OpenAuthenticationPolicyObservation) { *out = *in @@ -3208,6 +3998,53 @@ func (in *OpenAuthenticationPolicyParameters) DeepCopy() *OpenAuthenticationPoli return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecurrenceInitParameters) DeepCopyInto(out *RecurrenceInitParameters) { + *out = *in + if in.EndTime != nil { + in, out := &in.EndTime, &out.EndTime + *out = new(string) + **out = **in + } + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(string) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(float64) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]ScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } + if in.TimeZone != nil { + in, out := &in.TimeZone, &out.TimeZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurrenceInitParameters. +func (in *RecurrenceInitParameters) DeepCopy() *RecurrenceInitParameters { + if in == nil { + return nil + } + out := new(RecurrenceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecurrenceObservation) DeepCopyInto(out *RecurrenceObservation) { *out = *in @@ -3302,6 +4139,38 @@ func (in *RecurrenceParameters) DeepCopy() *RecurrenceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReleaseCriteriaInitParameters) DeepCopyInto(out *ReleaseCriteriaInitParameters) { + *out = *in + if in.BatchSize != nil { + in, out := &in.BatchSize, &out.BatchSize + *out = new(float64) + **out = **in + } + if in.MessageCount != nil { + in, out := &in.MessageCount, &out.MessageCount + *out = new(float64) + **out = **in + } + if in.Recurrence != nil { + in, out := &in.Recurrence, &out.Recurrence + *out = make([]RecurrenceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseCriteriaInitParameters. +func (in *ReleaseCriteriaInitParameters) DeepCopy() *ReleaseCriteriaInitParameters { + if in == nil { + return nil + } + out := new(ReleaseCriteriaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ReleaseCriteriaObservation) DeepCopyInto(out *ReleaseCriteriaObservation) { *out = *in @@ -3366,6 +4235,31 @@ func (in *ReleaseCriteriaParameters) DeepCopy() *ReleaseCriteriaParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RunAfterInitParameters) DeepCopyInto(out *RunAfterInitParameters) { + *out = *in + if in.ActionName != nil { + in, out := &in.ActionName, &out.ActionName + *out = new(string) + **out = **in + } + if in.ActionResult != nil { + in, out := &in.ActionResult, &out.ActionResult + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunAfterInitParameters. +func (in *RunAfterInitParameters) DeepCopy() *RunAfterInitParameters { + if in == nil { + return nil + } + out := new(RunAfterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RunAfterObservation) DeepCopyInto(out *RunAfterObservation) { *out = *in @@ -3416,6 +4310,72 @@ func (in *RunAfterParameters) DeepCopy() *RunAfterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScheduleInitParameters) DeepCopyInto(out *ScheduleInitParameters) { + *out = *in + if in.Hours != nil { + in, out := &in.Hours, &out.Hours + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Minutes != nil { + in, out := &in.Minutes, &out.Minutes + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.MonthDays != nil { + in, out := &in.MonthDays, &out.MonthDays + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Monthly != nil { + in, out := &in.Monthly, &out.Monthly + *out = make([]MonthlyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WeekDays != nil { + in, out := &in.WeekDays, &out.WeekDays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleInitParameters. +func (in *ScheduleInitParameters) DeepCopy() *ScheduleInitParameters { + if in == nil { + return nil + } + out := new(ScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScheduleObservation) DeepCopyInto(out *ScheduleObservation) { *out = *in @@ -3548,6 +4508,39 @@ func (in *ScheduleParameters) DeepCopy() *ScheduleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerInitParameters) DeepCopyInto(out *TriggerInitParameters) { + *out = *in + if in.AllowedCallerIPAddressRange != nil { + in, out := &in.AllowedCallerIPAddressRange, &out.AllowedCallerIPAddressRange + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.OpenAuthenticationPolicy != nil { + in, out := &in.OpenAuthenticationPolicy, &out.OpenAuthenticationPolicy + *out = make([]OpenAuthenticationPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerInitParameters. +func (in *TriggerInitParameters) DeepCopy() *TriggerInitParameters { + if in == nil { + return nil + } + out := new(TriggerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerObservation) DeepCopyInto(out *TriggerObservation) { *out = *in @@ -3614,6 +4607,32 @@ func (in *TriggerParameters) DeepCopy() *TriggerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkflowManagementInitParameters) DeepCopyInto(out *WorkflowManagementInitParameters) { + *out = *in + if in.AllowedCallerIPAddressRange != nil { + in, out := &in.AllowedCallerIPAddressRange, &out.AllowedCallerIPAddressRange + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkflowManagementInitParameters. +func (in *WorkflowManagementInitParameters) DeepCopy() *WorkflowManagementInitParameters { + if in == nil { + return nil + } + out := new(WorkflowManagementInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkflowManagementObservation) DeepCopyInto(out *WorkflowManagementObservation) { *out = *in diff --git a/apis/logic/v1beta1/zz_generated.managed.go b/apis/logic/v1beta1/zz_generated.managed.go index f14ba165c..459155d16 100644 --- a/apis/logic/v1beta1/zz_generated.managed.go +++ b/apis/logic/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AppActionCustom) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppActionCustom. -func (mg *AppActionCustom) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppActionCustom. +func (mg *AppActionCustom) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppActionCustom. @@ -55,9 +55,9 @@ func (mg *AppActionCustom) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppActionCustom. -func (mg *AppActionCustom) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppActionCustom. +func (mg *AppActionCustom) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppActionCustom. @@ -93,9 +93,9 @@ func (mg *AppActionHTTP) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppActionHTTP. -func (mg *AppActionHTTP) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppActionHTTP. +func (mg *AppActionHTTP) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppActionHTTP. @@ -131,9 +131,9 @@ func (mg *AppActionHTTP) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppActionHTTP. -func (mg *AppActionHTTP) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppActionHTTP. +func (mg *AppActionHTTP) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppActionHTTP. @@ -169,9 +169,9 @@ func (mg *AppIntegrationAccount) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppIntegrationAccount. -func (mg *AppIntegrationAccount) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppIntegrationAccount. +func (mg *AppIntegrationAccount) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppIntegrationAccount. @@ -207,9 +207,9 @@ func (mg *AppIntegrationAccount) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppIntegrationAccount. -func (mg *AppIntegrationAccount) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppIntegrationAccount. +func (mg *AppIntegrationAccount) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppIntegrationAccount. @@ -245,9 +245,9 @@ func (mg *AppIntegrationAccountBatchConfiguration) GetDeletionPolicy() xpv1.Dele return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppIntegrationAccountBatchConfiguration. -func (mg *AppIntegrationAccountBatchConfiguration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppIntegrationAccountBatchConfiguration. +func (mg *AppIntegrationAccountBatchConfiguration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppIntegrationAccountBatchConfiguration. @@ -283,9 +283,9 @@ func (mg *AppIntegrationAccountBatchConfiguration) SetDeletionPolicy(r xpv1.Dele mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppIntegrationAccountBatchConfiguration. -func (mg *AppIntegrationAccountBatchConfiguration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppIntegrationAccountBatchConfiguration. +func (mg *AppIntegrationAccountBatchConfiguration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppIntegrationAccountBatchConfiguration. @@ -321,9 +321,9 @@ func (mg *AppIntegrationAccountPartner) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppIntegrationAccountPartner. -func (mg *AppIntegrationAccountPartner) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppIntegrationAccountPartner. +func (mg *AppIntegrationAccountPartner) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppIntegrationAccountPartner. @@ -359,9 +359,9 @@ func (mg *AppIntegrationAccountPartner) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppIntegrationAccountPartner. -func (mg *AppIntegrationAccountPartner) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppIntegrationAccountPartner. +func (mg *AppIntegrationAccountPartner) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppIntegrationAccountPartner. @@ -397,9 +397,9 @@ func (mg *AppIntegrationAccountSchema) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppIntegrationAccountSchema. -func (mg *AppIntegrationAccountSchema) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppIntegrationAccountSchema. +func (mg *AppIntegrationAccountSchema) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppIntegrationAccountSchema. @@ -435,9 +435,9 @@ func (mg *AppIntegrationAccountSchema) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppIntegrationAccountSchema. -func (mg *AppIntegrationAccountSchema) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppIntegrationAccountSchema. +func (mg *AppIntegrationAccountSchema) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppIntegrationAccountSchema. @@ -473,9 +473,9 @@ func (mg *AppIntegrationAccountSession) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppIntegrationAccountSession. -func (mg *AppIntegrationAccountSession) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppIntegrationAccountSession. +func (mg *AppIntegrationAccountSession) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppIntegrationAccountSession. @@ -511,9 +511,9 @@ func (mg *AppIntegrationAccountSession) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppIntegrationAccountSession. -func (mg *AppIntegrationAccountSession) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppIntegrationAccountSession. +func (mg *AppIntegrationAccountSession) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppIntegrationAccountSession. @@ -549,9 +549,9 @@ func (mg *AppTriggerCustom) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppTriggerCustom. -func (mg *AppTriggerCustom) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppTriggerCustom. +func (mg *AppTriggerCustom) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppTriggerCustom. @@ -587,9 +587,9 @@ func (mg *AppTriggerCustom) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppTriggerCustom. -func (mg *AppTriggerCustom) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppTriggerCustom. +func (mg *AppTriggerCustom) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppTriggerCustom. @@ -625,9 +625,9 @@ func (mg *AppTriggerHTTPRequest) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppTriggerHTTPRequest. -func (mg *AppTriggerHTTPRequest) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppTriggerHTTPRequest. +func (mg *AppTriggerHTTPRequest) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppTriggerHTTPRequest. @@ -663,9 +663,9 @@ func (mg *AppTriggerHTTPRequest) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppTriggerHTTPRequest. -func (mg *AppTriggerHTTPRequest) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppTriggerHTTPRequest. +func (mg *AppTriggerHTTPRequest) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppTriggerHTTPRequest. @@ -701,9 +701,9 @@ func (mg *AppTriggerRecurrence) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppTriggerRecurrence. -func (mg *AppTriggerRecurrence) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppTriggerRecurrence. +func (mg *AppTriggerRecurrence) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppTriggerRecurrence. @@ -739,9 +739,9 @@ func (mg *AppTriggerRecurrence) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppTriggerRecurrence. -func (mg *AppTriggerRecurrence) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppTriggerRecurrence. +func (mg *AppTriggerRecurrence) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppTriggerRecurrence. @@ -777,9 +777,9 @@ func (mg *AppWorkflow) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppWorkflow. -func (mg *AppWorkflow) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppWorkflow. +func (mg *AppWorkflow) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppWorkflow. @@ -815,9 +815,9 @@ func (mg *AppWorkflow) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppWorkflow. -func (mg *AppWorkflow) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppWorkflow. +func (mg *AppWorkflow) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppWorkflow. @@ -853,9 +853,9 @@ func (mg *IntegrationServiceEnvironment) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IntegrationServiceEnvironment. -func (mg *IntegrationServiceEnvironment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IntegrationServiceEnvironment. +func (mg *IntegrationServiceEnvironment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IntegrationServiceEnvironment. @@ -891,9 +891,9 @@ func (mg *IntegrationServiceEnvironment) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IntegrationServiceEnvironment. -func (mg *IntegrationServiceEnvironment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IntegrationServiceEnvironment. +func (mg *IntegrationServiceEnvironment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IntegrationServiceEnvironment. diff --git a/apis/logic/v1beta1/zz_generated_terraformed.go b/apis/logic/v1beta1/zz_generated_terraformed.go index 9f6c15eb7..e2d461439 100755 --- a/apis/logic/v1beta1/zz_generated_terraformed.go +++ b/apis/logic/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *IntegrationServiceEnvironment) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IntegrationServiceEnvironment +func (tr *IntegrationServiceEnvironment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IntegrationServiceEnvironment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IntegrationServiceEnvironment) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *AppActionCustom) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppActionCustom +func (tr *AppActionCustom) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppActionCustom using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppActionCustom) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *AppActionHTTP) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppActionHTTP +func (tr *AppActionHTTP) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppActionHTTP using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppActionHTTP) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *AppIntegrationAccount) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppIntegrationAccount +func (tr *AppIntegrationAccount) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppIntegrationAccount using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppIntegrationAccount) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *AppIntegrationAccountBatchConfiguration) SetParameters(params map[stri return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppIntegrationAccountBatchConfiguration +func (tr *AppIntegrationAccountBatchConfiguration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppIntegrationAccountBatchConfiguration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppIntegrationAccountBatchConfiguration) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *AppIntegrationAccountPartner) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppIntegrationAccountPartner +func (tr *AppIntegrationAccountPartner) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppIntegrationAccountPartner using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppIntegrationAccountPartner) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *AppIntegrationAccountSchema) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppIntegrationAccountSchema +func (tr *AppIntegrationAccountSchema) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppIntegrationAccountSchema using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppIntegrationAccountSchema) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *AppIntegrationAccountSession) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppIntegrationAccountSession +func (tr *AppIntegrationAccountSession) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppIntegrationAccountSession using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppIntegrationAccountSession) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *AppTriggerCustom) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppTriggerCustom +func (tr *AppTriggerCustom) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppTriggerCustom using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppTriggerCustom) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *AppTriggerHTTPRequest) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppTriggerHTTPRequest +func (tr *AppTriggerHTTPRequest) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppTriggerHTTPRequest using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppTriggerHTTPRequest) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *AppTriggerRecurrence) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppTriggerRecurrence +func (tr *AppTriggerRecurrence) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppTriggerRecurrence using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppTriggerRecurrence) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *AppWorkflow) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppWorkflow +func (tr *AppWorkflow) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppWorkflow using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppWorkflow) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/logic/v1beta1/zz_integrationserviceenvironment_types.go b/apis/logic/v1beta1/zz_integrationserviceenvironment_types.go index 949814f3b..d2845065c 100755 --- a/apis/logic/v1beta1/zz_integrationserviceenvironment_types.go +++ b/apis/logic/v1beta1/zz_integrationserviceenvironment_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IntegrationServiceEnvironmentInitParameters struct { + + // The type of access endpoint to use for the Integration Service Environment. Possible Values are Internal and External. Changing this forces a new Integration Service Environment to be created. + AccessEndpointType *string `json:"accessEndpointType,omitempty" tf:"access_endpoint_type,omitempty"` + + // The Azure Region where the Integration Service Environment should exist. Changing this forces a new Integration Service Environment to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The SKU name and capacity of the Integration Service Environment. Possible values are Developer_0, Premium_0, Premium_1, Premium_2, Premium_3, Premium_4, Premium_5, Premium_6, Premium_7, Premium_8, Premium_9 and Premium_10. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags which should be assigned to the Integration Service Environment. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type IntegrationServiceEnvironmentObservation struct { // The type of access endpoint to use for the Integration Service Environment. Possible Values are Internal and External. Changing this forces a new Integration Service Environment to be created. @@ -99,6 +114,18 @@ type IntegrationServiceEnvironmentParameters struct { type IntegrationServiceEnvironmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IntegrationServiceEnvironmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IntegrationServiceEnvironmentInitParameters `json:"initProvider,omitempty"` } // IntegrationServiceEnvironmentStatus defines the observed state of IntegrationServiceEnvironment. @@ -119,8 +146,8 @@ type IntegrationServiceEnvironmentStatus struct { type IntegrationServiceEnvironment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.accessEndpointType)",message="accessEndpointType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.accessEndpointType) || has(self.initProvider.accessEndpointType)",message="accessEndpointType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec IntegrationServiceEnvironmentSpec `json:"spec"` Status IntegrationServiceEnvironmentStatus `json:"status,omitempty"` } diff --git a/apis/logz/v1beta1/zz_generated.deepcopy.go b/apis/logz/v1beta1/zz_generated.deepcopy.go index be51118bc..8d93a3fb5 100644 --- a/apis/logz/v1beta1/zz_generated.deepcopy.go +++ b/apis/logz/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,70 @@ func (in *Monitor) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorInitParameters) DeepCopyInto(out *MonitorInitParameters) { + *out = *in + if in.CompanyName != nil { + in, out := &in.CompanyName, &out.CompanyName + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.EnterpriseAppID != nil { + in, out := &in.EnterpriseAppID, &out.EnterpriseAppID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]PlanInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.User != nil { + in, out := &in.User, &out.User + *out = make([]UserInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorInitParameters. +func (in *MonitorInitParameters) DeepCopy() *MonitorInitParameters { + if in == nil { + return nil + } + out := new(MonitorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorList) DeepCopyInto(out *MonitorList) { *out = *in @@ -241,6 +305,7 @@ func (in *MonitorSpec) DeepCopyInto(out *MonitorSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorSpec. @@ -270,6 +335,41 @@ func (in *MonitorStatus) DeepCopy() *MonitorStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PlanInitParameters) DeepCopyInto(out *PlanInitParameters) { + *out = *in + if in.BillingCycle != nil { + in, out := &in.BillingCycle, &out.BillingCycle + *out = new(string) + **out = **in + } + if in.EffectiveDate != nil { + in, out := &in.EffectiveDate, &out.EffectiveDate + *out = new(string) + **out = **in + } + if in.PlanID != nil { + in, out := &in.PlanID, &out.PlanID + *out = new(string) + **out = **in + } + if in.UsageType != nil { + in, out := &in.UsageType, &out.UsageType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanInitParameters. +func (in *PlanInitParameters) DeepCopy() *PlanInitParameters { + if in == nil { + return nil + } + out := new(PlanInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PlanObservation) DeepCopyInto(out *PlanObservation) { *out = *in @@ -367,6 +467,48 @@ func (in *SubAccount) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubAccountInitParameters) DeepCopyInto(out *SubAccountInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.User != nil { + in, out := &in.User, &out.User + *out = make([]SubAccountUserInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubAccountInitParameters. +func (in *SubAccountInitParameters) DeepCopy() *SubAccountInitParameters { + if in == nil { + return nil + } + out := new(SubAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubAccountList) DeepCopyInto(out *SubAccountList) { *out = *in @@ -513,6 +655,7 @@ func (in *SubAccountSpec) DeepCopyInto(out *SubAccountSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubAccountSpec. @@ -569,6 +712,43 @@ func (in *SubAccountTagRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubAccountTagRuleInitParameters) DeepCopyInto(out *SubAccountTagRuleInitParameters) { + *out = *in + if in.SendAADLogs != nil { + in, out := &in.SendAADLogs, &out.SendAADLogs + *out = new(bool) + **out = **in + } + if in.SendActivityLogs != nil { + in, out := &in.SendActivityLogs, &out.SendActivityLogs + *out = new(bool) + **out = **in + } + if in.SendSubscriptionLogs != nil { + in, out := &in.SendSubscriptionLogs, &out.SendSubscriptionLogs + *out = new(bool) + **out = **in + } + if in.TagFilter != nil { + in, out := &in.TagFilter, &out.TagFilter + *out = make([]TagFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubAccountTagRuleInitParameters. +func (in *SubAccountTagRuleInitParameters) DeepCopy() *SubAccountTagRuleInitParameters { + if in == nil { + return nil + } + out := new(SubAccountTagRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubAccountTagRuleList) DeepCopyInto(out *SubAccountTagRuleList) { *out = *in @@ -705,6 +885,7 @@ func (in *SubAccountTagRuleSpec) DeepCopyInto(out *SubAccountTagRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubAccountTagRuleSpec. @@ -734,6 +915,41 @@ func (in *SubAccountTagRuleStatus) DeepCopy() *SubAccountTagRuleStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubAccountUserInitParameters) DeepCopyInto(out *SubAccountUserInitParameters) { + *out = *in + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.FirstName != nil { + in, out := &in.FirstName, &out.FirstName + *out = new(string) + **out = **in + } + if in.LastName != nil { + in, out := &in.LastName, &out.LastName + *out = new(string) + **out = **in + } + if in.PhoneNumber != nil { + in, out := &in.PhoneNumber, &out.PhoneNumber + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubAccountUserInitParameters. +func (in *SubAccountUserInitParameters) DeepCopy() *SubAccountUserInitParameters { + if in == nil { + return nil + } + out := new(SubAccountUserInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubAccountUserObservation) DeepCopyInto(out *SubAccountUserObservation) { *out = *in @@ -804,6 +1020,36 @@ func (in *SubAccountUserParameters) DeepCopy() *SubAccountUserParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TagFilterInitParameters) DeepCopyInto(out *TagFilterInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TagFilterInitParameters. +func (in *TagFilterInitParameters) DeepCopy() *TagFilterInitParameters { + if in == nil { + return nil + } + out := new(TagFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TagFilterObservation) DeepCopyInto(out *TagFilterObservation) { *out = *in @@ -891,6 +1137,43 @@ func (in *TagRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TagRuleInitParameters) DeepCopyInto(out *TagRuleInitParameters) { + *out = *in + if in.SendAADLogs != nil { + in, out := &in.SendAADLogs, &out.SendAADLogs + *out = new(bool) + **out = **in + } + if in.SendActivityLogs != nil { + in, out := &in.SendActivityLogs, &out.SendActivityLogs + *out = new(bool) + **out = **in + } + if in.SendSubscriptionLogs != nil { + in, out := &in.SendSubscriptionLogs, &out.SendSubscriptionLogs + *out = new(bool) + **out = **in + } + if in.TagFilter != nil { + in, out := &in.TagFilter, &out.TagFilter + *out = make([]TagRuleTagFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TagRuleInitParameters. +func (in *TagRuleInitParameters) DeepCopy() *TagRuleInitParameters { + if in == nil { + return nil + } + out := new(TagRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TagRuleList) DeepCopyInto(out *TagRuleList) { *out = *in @@ -1027,6 +1310,7 @@ func (in *TagRuleSpec) DeepCopyInto(out *TagRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TagRuleSpec. @@ -1056,6 +1340,36 @@ func (in *TagRuleStatus) DeepCopy() *TagRuleStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TagRuleTagFilterInitParameters) DeepCopyInto(out *TagRuleTagFilterInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TagRuleTagFilterInitParameters. +func (in *TagRuleTagFilterInitParameters) DeepCopy() *TagRuleTagFilterInitParameters { + if in == nil { + return nil + } + out := new(TagRuleTagFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TagRuleTagFilterObservation) DeepCopyInto(out *TagRuleTagFilterObservation) { *out = *in @@ -1116,6 +1430,41 @@ func (in *TagRuleTagFilterParameters) DeepCopy() *TagRuleTagFilterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UserInitParameters) DeepCopyInto(out *UserInitParameters) { + *out = *in + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.FirstName != nil { + in, out := &in.FirstName, &out.FirstName + *out = new(string) + **out = **in + } + if in.LastName != nil { + in, out := &in.LastName, &out.LastName + *out = new(string) + **out = **in + } + if in.PhoneNumber != nil { + in, out := &in.PhoneNumber, &out.PhoneNumber + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserInitParameters. +func (in *UserInitParameters) DeepCopy() *UserInitParameters { + if in == nil { + return nil + } + out := new(UserInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *UserObservation) DeepCopyInto(out *UserObservation) { *out = *in diff --git a/apis/logz/v1beta1/zz_generated.managed.go b/apis/logz/v1beta1/zz_generated.managed.go index 7100182ad..214af8aa3 100644 --- a/apis/logz/v1beta1/zz_generated.managed.go +++ b/apis/logz/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Monitor) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Monitor. -func (mg *Monitor) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Monitor. +func (mg *Monitor) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Monitor. @@ -55,9 +55,9 @@ func (mg *Monitor) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Monitor. -func (mg *Monitor) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Monitor. +func (mg *Monitor) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Monitor. @@ -93,9 +93,9 @@ func (mg *SubAccount) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubAccount. -func (mg *SubAccount) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubAccount. +func (mg *SubAccount) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubAccount. @@ -131,9 +131,9 @@ func (mg *SubAccount) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubAccount. -func (mg *SubAccount) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubAccount. +func (mg *SubAccount) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubAccount. @@ -169,9 +169,9 @@ func (mg *SubAccountTagRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubAccountTagRule. -func (mg *SubAccountTagRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubAccountTagRule. +func (mg *SubAccountTagRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubAccountTagRule. @@ -207,9 +207,9 @@ func (mg *SubAccountTagRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubAccountTagRule. -func (mg *SubAccountTagRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubAccountTagRule. +func (mg *SubAccountTagRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubAccountTagRule. @@ -245,9 +245,9 @@ func (mg *TagRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TagRule. -func (mg *TagRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TagRule. +func (mg *TagRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TagRule. @@ -283,9 +283,9 @@ func (mg *TagRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TagRule. -func (mg *TagRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TagRule. +func (mg *TagRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TagRule. diff --git a/apis/logz/v1beta1/zz_generated_terraformed.go b/apis/logz/v1beta1/zz_generated_terraformed.go index 29cc5737a..27d61790b 100755 --- a/apis/logz/v1beta1/zz_generated_terraformed.go +++ b/apis/logz/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Monitor) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Monitor +func (tr *Monitor) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Monitor using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Monitor) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *SubAccount) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubAccount +func (tr *SubAccount) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubAccount using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubAccount) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *SubAccountTagRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubAccountTagRule +func (tr *SubAccountTagRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubAccountTagRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubAccountTagRule) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *TagRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TagRule +func (tr *TagRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TagRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TagRule) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/logz/v1beta1/zz_monitor_types.go b/apis/logz/v1beta1/zz_monitor_types.go index bc167e23a..224bbb917 100755 --- a/apis/logz/v1beta1/zz_monitor_types.go +++ b/apis/logz/v1beta1/zz_monitor_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MonitorInitParameters struct { + + // Name of the Logz organization. Changing this forces a new logz Monitor to be created. + CompanyName *string `json:"companyName,omitempty" tf:"company_name,omitempty"` + + // Whether the resource monitoring is enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The ID of the Enterprise App. Changing this forces a new logz Monitor to be created. + EnterpriseAppID *string `json:"enterpriseAppId,omitempty" tf:"enterprise_app_id,omitempty"` + + // The Azure Region where the logz Monitor should exist. Changing this forces a new logz Monitor to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A plan block as defined below. Changing this forces a new resource to be created. + Plan []PlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"` + + // A mapping of tags which should be assigned to the logz Monitor. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A user block as defined below. Changing this forces a new resource to be created. + User []UserInitParameters `json:"user,omitempty" tf:"user,omitempty"` +} + type MonitorObservation struct { // Name of the Logz organization. Changing this forces a new logz Monitor to be created. @@ -93,6 +117,21 @@ type MonitorParameters struct { User []UserParameters `json:"user,omitempty" tf:"user,omitempty"` } +type PlanInitParameters struct { + + // Different billing cycles. Possible values are MONTHLY or WEEKLY. Changing this forces a new logz Monitor to be created. + BillingCycle *string `json:"billingCycle,omitempty" tf:"billing_cycle,omitempty"` + + // Date when plan was applied. Changing this forces a new logz Monitor to be created. + EffectiveDate *string `json:"effectiveDate,omitempty" tf:"effective_date,omitempty"` + + // Plan id as published by Logz. The only possible value is 100gb14days. Defaults to 100gb14days. Changing this forces a new logz Monitor to be created. + PlanID *string `json:"planId,omitempty" tf:"plan_id,omitempty"` + + // Different usage types. Possible values are PAYG or COMMITTED. Changing this forces a new logz Monitor to be created. + UsageType *string `json:"usageType,omitempty" tf:"usage_type,omitempty"` +} + type PlanObservation struct { // Different billing cycles. Possible values are MONTHLY or WEEKLY. Changing this forces a new logz Monitor to be created. @@ -111,20 +150,35 @@ type PlanObservation struct { type PlanParameters struct { // Different billing cycles. Possible values are MONTHLY or WEEKLY. Changing this forces a new logz Monitor to be created. - // +kubebuilder:validation:Required - BillingCycle *string `json:"billingCycle" tf:"billing_cycle,omitempty"` + // +kubebuilder:validation:Optional + BillingCycle *string `json:"billingCycle,omitempty" tf:"billing_cycle,omitempty"` // Date when plan was applied. Changing this forces a new logz Monitor to be created. - // +kubebuilder:validation:Required - EffectiveDate *string `json:"effectiveDate" tf:"effective_date,omitempty"` + // +kubebuilder:validation:Optional + EffectiveDate *string `json:"effectiveDate,omitempty" tf:"effective_date,omitempty"` // Plan id as published by Logz. The only possible value is 100gb14days. Defaults to 100gb14days. Changing this forces a new logz Monitor to be created. // +kubebuilder:validation:Optional PlanID *string `json:"planId,omitempty" tf:"plan_id,omitempty"` // Different usage types. Possible values are PAYG or COMMITTED. Changing this forces a new logz Monitor to be created. - // +kubebuilder:validation:Required - UsageType *string `json:"usageType" tf:"usage_type,omitempty"` + // +kubebuilder:validation:Optional + UsageType *string `json:"usageType,omitempty" tf:"usage_type,omitempty"` +} + +type UserInitParameters struct { + + // Email of the user used by Logz for contacting them if needed. Changing this forces a new logz Monitor to be created. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // First Name of the user. Changing this forces a new logz Monitor to be created. + FirstName *string `json:"firstName,omitempty" tf:"first_name,omitempty"` + + // Last Name of the user. Changing this forces a new logz Monitor to be created. + LastName *string `json:"lastName,omitempty" tf:"last_name,omitempty"` + + // Phone number of the user used by Logz for contacting them if needed. Changing this forces a new logz Monitor to be created. + PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` } type UserObservation struct { @@ -145,26 +199,38 @@ type UserObservation struct { type UserParameters struct { // Email of the user used by Logz for contacting them if needed. Changing this forces a new logz Monitor to be created. - // +kubebuilder:validation:Required - Email *string `json:"email" tf:"email,omitempty"` + // +kubebuilder:validation:Optional + Email *string `json:"email,omitempty" tf:"email,omitempty"` // First Name of the user. Changing this forces a new logz Monitor to be created. - // +kubebuilder:validation:Required - FirstName *string `json:"firstName" tf:"first_name,omitempty"` + // +kubebuilder:validation:Optional + FirstName *string `json:"firstName,omitempty" tf:"first_name,omitempty"` // Last Name of the user. Changing this forces a new logz Monitor to be created. - // +kubebuilder:validation:Required - LastName *string `json:"lastName" tf:"last_name,omitempty"` + // +kubebuilder:validation:Optional + LastName *string `json:"lastName,omitempty" tf:"last_name,omitempty"` // Phone number of the user used by Logz for contacting them if needed. Changing this forces a new logz Monitor to be created. - // +kubebuilder:validation:Required - PhoneNumber *string `json:"phoneNumber" tf:"phone_number,omitempty"` + // +kubebuilder:validation:Optional + PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` } // MonitorSpec defines the desired state of Monitor type MonitorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MonitorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MonitorInitParameters `json:"initProvider,omitempty"` } // MonitorStatus defines the observed state of Monitor. @@ -185,9 +251,9 @@ type MonitorStatus struct { type Monitor struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.plan)",message="plan is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.user)",message="user is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.plan) || has(self.initProvider.plan)",message="plan is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.user) || has(self.initProvider.user)",message="user is a required parameter" Spec MonitorSpec `json:"spec"` Status MonitorStatus `json:"status,omitempty"` } diff --git a/apis/logz/v1beta1/zz_subaccount_types.go b/apis/logz/v1beta1/zz_subaccount_types.go index f28ad74f4..2257ba5ce 100755 --- a/apis/logz/v1beta1/zz_subaccount_types.go +++ b/apis/logz/v1beta1/zz_subaccount_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubAccountInitParameters struct { + + // Whether the resource monitoring is enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A mapping of tags which should be assigned to the logz Sub Account. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A user block as defined below. Changing this forces a new resource to be created. + User []SubAccountUserInitParameters `json:"user,omitempty" tf:"user,omitempty"` +} + type SubAccountObservation struct { // Whether the resource monitoring is enabled? Defaults to true. @@ -60,6 +72,21 @@ type SubAccountParameters struct { User []SubAccountUserParameters `json:"user,omitempty" tf:"user,omitempty"` } +type SubAccountUserInitParameters struct { + + // Email of the user used by Logz for contacting them if needed. A valid email address consists of an email prefix and an email domain. The prefix and domain may contain only letters, numbers, underscores, periods and dashes. Changing this forces a new logz Sub Account to be created. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // First Name of the user. Possible values must be between 1 and 50 characters in length. Changing this forces a new logz Sub Account to be created. + FirstName *string `json:"firstName,omitempty" tf:"first_name,omitempty"` + + // Last Name of the user. Possible values must be between 1 and 50 characters in length. Changing this forces a new logz Sub Account to be created. + LastName *string `json:"lastName,omitempty" tf:"last_name,omitempty"` + + // Phone number of the user used by Logz for contacting them if needed. Possible values must be between 1 and 40 characters in length. Changing this forces a new logz Sub Account to be created. + PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` +} + type SubAccountUserObservation struct { // Email of the user used by Logz for contacting them if needed. A valid email address consists of an email prefix and an email domain. The prefix and domain may contain only letters, numbers, underscores, periods and dashes. Changing this forces a new logz Sub Account to be created. @@ -78,26 +105,38 @@ type SubAccountUserObservation struct { type SubAccountUserParameters struct { // Email of the user used by Logz for contacting them if needed. A valid email address consists of an email prefix and an email domain. The prefix and domain may contain only letters, numbers, underscores, periods and dashes. Changing this forces a new logz Sub Account to be created. - // +kubebuilder:validation:Required - Email *string `json:"email" tf:"email,omitempty"` + // +kubebuilder:validation:Optional + Email *string `json:"email,omitempty" tf:"email,omitempty"` // First Name of the user. Possible values must be between 1 and 50 characters in length. Changing this forces a new logz Sub Account to be created. - // +kubebuilder:validation:Required - FirstName *string `json:"firstName" tf:"first_name,omitempty"` + // +kubebuilder:validation:Optional + FirstName *string `json:"firstName,omitempty" tf:"first_name,omitempty"` // Last Name of the user. Possible values must be between 1 and 50 characters in length. Changing this forces a new logz Sub Account to be created. - // +kubebuilder:validation:Required - LastName *string `json:"lastName" tf:"last_name,omitempty"` + // +kubebuilder:validation:Optional + LastName *string `json:"lastName,omitempty" tf:"last_name,omitempty"` // Phone number of the user used by Logz for contacting them if needed. Possible values must be between 1 and 40 characters in length. Changing this forces a new logz Sub Account to be created. - // +kubebuilder:validation:Required - PhoneNumber *string `json:"phoneNumber" tf:"phone_number,omitempty"` + // +kubebuilder:validation:Optional + PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` } // SubAccountSpec defines the desired state of SubAccount type SubAccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubAccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubAccountInitParameters `json:"initProvider,omitempty"` } // SubAccountStatus defines the observed state of SubAccount. @@ -118,7 +157,7 @@ type SubAccountStatus struct { type SubAccount struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.user)",message="user is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.user) || has(self.initProvider.user)",message="user is a required parameter" Spec SubAccountSpec `json:"spec"` Status SubAccountStatus `json:"status,omitempty"` } diff --git a/apis/logz/v1beta1/zz_subaccounttagrule_types.go b/apis/logz/v1beta1/zz_subaccounttagrule_types.go index 9436babf0..2abbe3105 100755 --- a/apis/logz/v1beta1/zz_subaccounttagrule_types.go +++ b/apis/logz/v1beta1/zz_subaccounttagrule_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubAccountTagRuleInitParameters struct { + + // Whether AAD logs should be sent to the Monitor resource? + SendAADLogs *bool `json:"sendAadLogs,omitempty" tf:"send_aad_logs,omitempty"` + + // Whether activity logs from this Logz Sub Account Tag Rule should be sent to the Monitor resource? + SendActivityLogs *bool `json:"sendActivityLogs,omitempty" tf:"send_activity_logs,omitempty"` + + // Whether subscription logs should be sent to the Monitor resource? + SendSubscriptionLogs *bool `json:"sendSubscriptionLogs,omitempty" tf:"send_subscription_logs,omitempty"` + + // One or more (up to 10) tag_filter blocks as defined below. + TagFilter []TagFilterInitParameters `json:"tagFilter,omitempty" tf:"tag_filter,omitempty"` +} + type SubAccountTagRuleObservation struct { // The ID of the Logz Sub Account Tag Rule. @@ -67,6 +82,18 @@ type SubAccountTagRuleParameters struct { TagFilter []TagFilterParameters `json:"tagFilter,omitempty" tf:"tag_filter,omitempty"` } +type TagFilterInitParameters struct { + + // The action is used to limit logs collection to include or exclude Azure resources with specific tags. Possible values are Include and Exclude. Note that the Exclude takes priority over the Include. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The name of the tag to match. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of the tag to match. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type TagFilterObservation struct { // The action is used to limit logs collection to include or exclude Azure resources with specific tags. Possible values are Include and Exclude. Note that the Exclude takes priority over the Include. @@ -82,12 +109,12 @@ type TagFilterObservation struct { type TagFilterParameters struct { // The action is used to limit logs collection to include or exclude Azure resources with specific tags. Possible values are Include and Exclude. Note that the Exclude takes priority over the Include. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of the tag to match. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the tag to match. // +kubebuilder:validation:Optional @@ -98,6 +125,18 @@ type TagFilterParameters struct { type SubAccountTagRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubAccountTagRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubAccountTagRuleInitParameters `json:"initProvider,omitempty"` } // SubAccountTagRuleStatus defines the observed state of SubAccountTagRule. diff --git a/apis/logz/v1beta1/zz_tagrule_types.go b/apis/logz/v1beta1/zz_tagrule_types.go index 35bbf056c..5f7404608 100755 --- a/apis/logz/v1beta1/zz_tagrule_types.go +++ b/apis/logz/v1beta1/zz_tagrule_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TagRuleInitParameters struct { + + // Whether AAD logs should be sent to the Monitor resource? + SendAADLogs *bool `json:"sendAadLogs,omitempty" tf:"send_aad_logs,omitempty"` + + // Whether activity logs from Azure resources should be sent to the Monitor resource? + SendActivityLogs *bool `json:"sendActivityLogs,omitempty" tf:"send_activity_logs,omitempty"` + + // Whether subscription logs should be sent to the Monitor resource? + SendSubscriptionLogs *bool `json:"sendSubscriptionLogs,omitempty" tf:"send_subscription_logs,omitempty"` + + // One or more (up to 10) tag_filter blocks as defined below. + TagFilter []TagRuleTagFilterInitParameters `json:"tagFilter,omitempty" tf:"tag_filter,omitempty"` +} + type TagRuleObservation struct { // The ID of the logz Tag Rule. @@ -67,6 +82,18 @@ type TagRuleParameters struct { TagFilter []TagRuleTagFilterParameters `json:"tagFilter,omitempty" tf:"tag_filter,omitempty"` } +type TagRuleTagFilterInitParameters struct { + + // The action for a filtering tag. Possible values are Include and Exclude is allowed. Note that the Exclude takes priority over the Include. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The name of this tag_filter. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of this tag_filter. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type TagRuleTagFilterObservation struct { // The action for a filtering tag. Possible values are Include and Exclude is allowed. Note that the Exclude takes priority over the Include. @@ -82,12 +109,12 @@ type TagRuleTagFilterObservation struct { type TagRuleTagFilterParameters struct { // The action for a filtering tag. Possible values are Include and Exclude is allowed. Note that the Exclude takes priority over the Include. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of this tag_filter. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of this tag_filter. // +kubebuilder:validation:Optional @@ -98,6 +125,18 @@ type TagRuleTagFilterParameters struct { type TagRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TagRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TagRuleInitParameters `json:"initProvider,omitempty"` } // TagRuleStatus defines the observed state of TagRule. diff --git a/apis/machinelearningservices/v1beta1/zz_computecluster_types.go b/apis/machinelearningservices/v1beta1/zz_computecluster_types.go index e58de8250..57d07093b 100755 --- a/apis/machinelearningservices/v1beta1/zz_computecluster_types.go +++ b/apis/machinelearningservices/v1beta1/zz_computecluster_types.go @@ -13,6 +13,42 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ComputeClusterInitParameters struct { + + // The description of the Machine Learning compute. Changing this forces a new Machine Learning Compute Cluster to be created. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // An identity block as defined below. Changing this forces a new Machine Learning Compute Cluster to be created. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Whether local authentication methods is enabled. Defaults to true. Changing this forces a new Machine Learning Compute Cluster to be created. + LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` + + // The Azure Region where the Machine Learning Compute Cluster should exist. Changing this forces a new Machine Learning Compute Cluster to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name which should be used for this Machine Learning Compute Cluster. Changing this forces a new Machine Learning Compute Cluster to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Credentials for an administrator user account that will be created on each compute node. A ssh block as defined below. Changing this forces a new Machine Learning Compute Cluster to be created. + SSH []SSHInitParameters `json:"ssh,omitempty" tf:"ssh,omitempty"` + + // A boolean value indicating whether enable the public SSH port. Changing this forces a new Machine Learning Compute Cluster to be created. + SSHPublicAccessEnabled *bool `json:"sshPublicAccessEnabled,omitempty" tf:"ssh_public_access_enabled,omitempty"` + + // A scale_settings block as defined below. Changing this forces a new Machine Learning Compute Cluster to be created. + ScaleSettings []ScaleSettingsInitParameters `json:"scaleSettings,omitempty" tf:"scale_settings,omitempty"` + + // A mapping of tags which should be assigned to the Machine Learning Compute Cluster. Changing this forces a new Machine Learning Compute Cluster to be created. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The priority of the VM. Changing this forces a new Machine Learning Compute Cluster to be created. Accepted values are Dedicated and LowPriority. + VMPriority *string `json:"vmPriority,omitempty" tf:"vm_priority,omitempty"` + + // The size of the VM. Changing this forces a new Machine Learning Compute Cluster to be created. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` +} + type ComputeClusterObservation struct { // The description of the Machine Learning compute. Changing this forces a new Machine Learning Compute Cluster to be created. @@ -133,6 +169,15 @@ type ComputeClusterParameters struct { VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Compute Cluster. Changing this forces a new resource to be created. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Compute Cluster. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Compute Cluster. Changing this forces a new resource to be created. @@ -155,8 +200,20 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Compute Cluster. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type SSHInitParameters struct { + + // Password of the administrator user account. Changing this forces a new Machine Learning Compute Cluster to be created. + AdminPassword *string `json:"adminPassword,omitempty" tf:"admin_password,omitempty"` + + // Name of the administrator user account which can be used to SSH to nodes. Changing this forces a new Machine Learning Compute Cluster to be created. + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` + + // SSH public key of the administrator user account. Changing this forces a new Machine Learning Compute Cluster to be created. + KeyValue *string `json:"keyValue,omitempty" tf:"key_value,omitempty"` } type SSHObservation struct { @@ -178,14 +235,26 @@ type SSHParameters struct { AdminPassword *string `json:"adminPassword,omitempty" tf:"admin_password,omitempty"` // Name of the administrator user account which can be used to SSH to nodes. Changing this forces a new Machine Learning Compute Cluster to be created. - // +kubebuilder:validation:Required - AdminUsername *string `json:"adminUsername" tf:"admin_username,omitempty"` + // +kubebuilder:validation:Optional + AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // SSH public key of the administrator user account. Changing this forces a new Machine Learning Compute Cluster to be created. // +kubebuilder:validation:Optional KeyValue *string `json:"keyValue,omitempty" tf:"key_value,omitempty"` } +type ScaleSettingsInitParameters struct { + + // Maximum node count. Changing this forces a new Machine Learning Compute Cluster to be created. + MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"` + + // Minimal node count. Changing this forces a new Machine Learning Compute Cluster to be created. + MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"` + + // Node Idle Time Before Scale Down: defines the time until the compute is shutdown when it has gone into Idle state. Is defined according to W3C XML schema standard for duration. Changing this forces a new Machine Learning Compute Cluster to be created. + ScaleDownNodesAfterIdleDuration *string `json:"scaleDownNodesAfterIdleDuration,omitempty" tf:"scale_down_nodes_after_idle_duration,omitempty"` +} + type ScaleSettingsObservation struct { // Maximum node count. Changing this forces a new Machine Learning Compute Cluster to be created. @@ -201,22 +270,34 @@ type ScaleSettingsObservation struct { type ScaleSettingsParameters struct { // Maximum node count. Changing this forces a new Machine Learning Compute Cluster to be created. - // +kubebuilder:validation:Required - MaxNodeCount *float64 `json:"maxNodeCount" tf:"max_node_count,omitempty"` + // +kubebuilder:validation:Optional + MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"` // Minimal node count. Changing this forces a new Machine Learning Compute Cluster to be created. - // +kubebuilder:validation:Required - MinNodeCount *float64 `json:"minNodeCount" tf:"min_node_count,omitempty"` + // +kubebuilder:validation:Optional + MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"` // Node Idle Time Before Scale Down: defines the time until the compute is shutdown when it has gone into Idle state. Is defined according to W3C XML schema standard for duration. Changing this forces a new Machine Learning Compute Cluster to be created. - // +kubebuilder:validation:Required - ScaleDownNodesAfterIdleDuration *string `json:"scaleDownNodesAfterIdleDuration" tf:"scale_down_nodes_after_idle_duration,omitempty"` + // +kubebuilder:validation:Optional + ScaleDownNodesAfterIdleDuration *string `json:"scaleDownNodesAfterIdleDuration,omitempty" tf:"scale_down_nodes_after_idle_duration,omitempty"` } // ComputeClusterSpec defines the desired state of ComputeCluster type ComputeClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ComputeClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ComputeClusterInitParameters `json:"initProvider,omitempty"` } // ComputeClusterStatus defines the observed state of ComputeCluster. @@ -237,11 +318,11 @@ type ComputeClusterStatus struct { type ComputeCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scaleSettings)",message="scaleSettings is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vmPriority)",message="vmPriority is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vmSize)",message="vmSize is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scaleSettings) || has(self.initProvider.scaleSettings)",message="scaleSettings is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.vmPriority) || has(self.initProvider.vmPriority)",message="vmPriority is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.vmSize) || has(self.initProvider.vmSize)",message="vmSize is a required parameter" Spec ComputeClusterSpec `json:"spec"` Status ComputeClusterStatus `json:"status,omitempty"` } diff --git a/apis/machinelearningservices/v1beta1/zz_computeinstance_types.go b/apis/machinelearningservices/v1beta1/zz_computeinstance_types.go index b9b6a173b..77fa1c542 100755 --- a/apis/machinelearningservices/v1beta1/zz_computeinstance_types.go +++ b/apis/machinelearningservices/v1beta1/zz_computeinstance_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AssignToUserInitParameters struct { + + // User’s AAD Object Id. + ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` + + // User’s AAD Tenant Id. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type AssignToUserObservation struct { // User’s AAD Object Id. @@ -33,6 +42,15 @@ type AssignToUserParameters struct { TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } +type ComputeInstanceIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Compute Instance. Changing this forces a new resource to be created. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Compute Instance. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ComputeInstanceIdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Compute Instance. Changing this forces a new resource to be created. @@ -55,8 +73,38 @@ type ComputeInstanceIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Compute Instance. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ComputeInstanceInitParameters struct { + + // A assign_to_user block as defined below. A user explicitly assigned to a personal compute instance. Changing this forces a new Machine Learning Compute Instance to be created. + AssignToUser []AssignToUserInitParameters `json:"assignToUser,omitempty" tf:"assign_to_user,omitempty"` + + // The Compute Instance Authorization type. Possible values include: personal. Changing this forces a new Machine Learning Compute Instance to be created. + AuthorizationType *string `json:"authorizationType,omitempty" tf:"authorization_type,omitempty"` + + // The description of the Machine Learning Compute Instance. Changing this forces a new Machine Learning Compute Instance to be created. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // An identity block as defined below. Changing this forces a new Machine Learning Compute Instance to be created. + Identity []ComputeInstanceIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Whether local authentication methods is enabled. Defaults to true. Changing this forces a new Machine Learning Compute Instance to be created. + LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` + + // The Azure Region where the Machine Learning Compute Instance should exist. Changing this forces a new Machine Learning Compute Instance to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A ssh block as defined below. Specifies policy and settings for SSH access. Changing this forces a new Machine Learning Compute Instance to be created. + SSH []ComputeInstanceSSHInitParameters `json:"ssh,omitempty" tf:"ssh,omitempty"` + + // A mapping of tags which should be assigned to the Machine Learning Compute Instance. Changing this forces a new Machine Learning Compute Instance to be created. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The Virtual Machine Size. Changing this forces a new Machine Learning Compute Instance to be created. + VirtualMachineSize *string `json:"virtualMachineSize,omitempty" tf:"virtual_machine_size,omitempty"` } type ComputeInstanceObservation struct { @@ -165,6 +213,12 @@ type ComputeInstanceParameters struct { VirtualMachineSize *string `json:"virtualMachineSize,omitempty" tf:"virtual_machine_size,omitempty"` } +type ComputeInstanceSSHInitParameters struct { + + // Specifies the SSH rsa public key file as a string. Use "ssh-keygen -t rsa -b 2048" to generate your SSH key pairs. + PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` +} + type ComputeInstanceSSHObservation struct { // Describes the port for connecting through SSH. @@ -180,14 +234,26 @@ type ComputeInstanceSSHObservation struct { type ComputeInstanceSSHParameters struct { // Specifies the SSH rsa public key file as a string. Use "ssh-keygen -t rsa -b 2048" to generate your SSH key pairs. - // +kubebuilder:validation:Required - PublicKey *string `json:"publicKey" tf:"public_key,omitempty"` + // +kubebuilder:validation:Optional + PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` } // ComputeInstanceSpec defines the desired state of ComputeInstance type ComputeInstanceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ComputeInstanceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ComputeInstanceInitParameters `json:"initProvider,omitempty"` } // ComputeInstanceStatus defines the observed state of ComputeInstance. @@ -208,8 +274,8 @@ type ComputeInstanceStatus struct { type ComputeInstance struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.virtualMachineSize)",message="virtualMachineSize is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.virtualMachineSize) || has(self.initProvider.virtualMachineSize)",message="virtualMachineSize is a required parameter" Spec ComputeInstanceSpec `json:"spec"` Status ComputeInstanceStatus `json:"status,omitempty"` } diff --git a/apis/machinelearningservices/v1beta1/zz_generated.deepcopy.go b/apis/machinelearningservices/v1beta1/zz_generated.deepcopy.go index 35cb1d912..942baa420 100644 --- a/apis/machinelearningservices/v1beta1/zz_generated.deepcopy.go +++ b/apis/machinelearningservices/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,31 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AssignToUserInitParameters) DeepCopyInto(out *AssignToUserInitParameters) { + *out = *in + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AssignToUserInitParameters. +func (in *AssignToUserInitParameters) DeepCopy() *AssignToUserInitParameters { + if in == nil { + return nil + } + out := new(AssignToUserInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AssignToUserObservation) DeepCopyInto(out *AssignToUserObservation) { *out = *in @@ -91,6 +116,92 @@ func (in *ComputeCluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComputeClusterInitParameters) DeepCopyInto(out *ComputeClusterInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAuthEnabled != nil { + in, out := &in.LocalAuthEnabled, &out.LocalAuthEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SSH != nil { + in, out := &in.SSH, &out.SSH + *out = make([]SSHInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSHPublicAccessEnabled != nil { + in, out := &in.SSHPublicAccessEnabled, &out.SSHPublicAccessEnabled + *out = new(bool) + **out = **in + } + if in.ScaleSettings != nil { + in, out := &in.ScaleSettings, &out.ScaleSettings + *out = make([]ScaleSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.VMPriority != nil { + in, out := &in.VMPriority, &out.VMPriority + *out = new(string) + **out = **in + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeClusterInitParameters. +func (in *ComputeClusterInitParameters) DeepCopy() *ComputeClusterInitParameters { + if in == nil { + return nil + } + out := new(ComputeClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ComputeClusterList) DeepCopyInto(out *ComputeClusterList) { *out = *in @@ -345,6 +456,7 @@ func (in *ComputeClusterSpec) DeepCopyInto(out *ComputeClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeClusterSpec. @@ -401,6 +513,37 @@ func (in *ComputeInstance) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComputeInstanceIdentityInitParameters) DeepCopyInto(out *ComputeInstanceIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeInstanceIdentityInitParameters. +func (in *ComputeInstanceIdentityInitParameters) DeepCopy() *ComputeInstanceIdentityInitParameters { + if in == nil { + return nil + } + out := new(ComputeInstanceIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ComputeInstanceIdentityObservation) DeepCopyInto(out *ComputeInstanceIdentityObservation) { *out = *in @@ -473,6 +616,82 @@ func (in *ComputeInstanceIdentityParameters) DeepCopy() *ComputeInstanceIdentity return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComputeInstanceInitParameters) DeepCopyInto(out *ComputeInstanceInitParameters) { + *out = *in + if in.AssignToUser != nil { + in, out := &in.AssignToUser, &out.AssignToUser + *out = make([]AssignToUserInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthorizationType != nil { + in, out := &in.AuthorizationType, &out.AuthorizationType + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]ComputeInstanceIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAuthEnabled != nil { + in, out := &in.LocalAuthEnabled, &out.LocalAuthEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SSH != nil { + in, out := &in.SSH, &out.SSH + *out = make([]ComputeInstanceSSHInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.VirtualMachineSize != nil { + in, out := &in.VirtualMachineSize, &out.VirtualMachineSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeInstanceInitParameters. +func (in *ComputeInstanceInitParameters) DeepCopy() *ComputeInstanceInitParameters { + if in == nil { + return nil + } + out := new(ComputeInstanceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ComputeInstanceList) DeepCopyInto(out *ComputeInstanceList) { *out = *in @@ -702,6 +921,26 @@ func (in *ComputeInstanceParameters) DeepCopy() *ComputeInstanceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ComputeInstanceSSHInitParameters) DeepCopyInto(out *ComputeInstanceSSHInitParameters) { + *out = *in + if in.PublicKey != nil { + in, out := &in.PublicKey, &out.PublicKey + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeInstanceSSHInitParameters. +func (in *ComputeInstanceSSHInitParameters) DeepCopy() *ComputeInstanceSSHInitParameters { + if in == nil { + return nil + } + out := new(ComputeInstanceSSHInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ComputeInstanceSSHObservation) DeepCopyInto(out *ComputeInstanceSSHObservation) { *out = *in @@ -757,6 +996,7 @@ func (in *ComputeInstanceSpec) DeepCopyInto(out *ComputeInstanceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeInstanceSpec. @@ -786,6 +1026,21 @@ func (in *ComputeInstanceStatus) DeepCopy() *ComputeInstanceStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncryptionInitParameters) DeepCopyInto(out *EncryptionInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionInitParameters. +func (in *EncryptionInitParameters) DeepCopy() *EncryptionInitParameters { + if in == nil { + return nil + } + out := new(EncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EncryptionObservation) DeepCopyInto(out *EncryptionObservation) { *out = *in @@ -876,6 +1131,37 @@ func (in *EncryptionParameters) DeepCopy() *EncryptionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -948,6 +1234,36 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHInitParameters) DeepCopyInto(out *SSHInitParameters) { + *out = *in + if in.AdminPassword != nil { + in, out := &in.AdminPassword, &out.AdminPassword + *out = new(string) + **out = **in + } + if in.AdminUsername != nil { + in, out := &in.AdminUsername, &out.AdminUsername + *out = new(string) + **out = **in + } + if in.KeyValue != nil { + in, out := &in.KeyValue, &out.KeyValue + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHInitParameters. +func (in *SSHInitParameters) DeepCopy() *SSHInitParameters { + if in == nil { + return nil + } + out := new(SSHInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SSHObservation) DeepCopyInto(out *SSHObservation) { *out = *in @@ -1008,6 +1324,36 @@ func (in *SSHParameters) DeepCopy() *SSHParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScaleSettingsInitParameters) DeepCopyInto(out *ScaleSettingsInitParameters) { + *out = *in + if in.MaxNodeCount != nil { + in, out := &in.MaxNodeCount, &out.MaxNodeCount + *out = new(float64) + **out = **in + } + if in.MinNodeCount != nil { + in, out := &in.MinNodeCount, &out.MinNodeCount + *out = new(float64) + **out = **in + } + if in.ScaleDownNodesAfterIdleDuration != nil { + in, out := &in.ScaleDownNodesAfterIdleDuration, &out.ScaleDownNodesAfterIdleDuration + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleSettingsInitParameters. +func (in *ScaleSettingsInitParameters) DeepCopy() *ScaleSettingsInitParameters { + if in == nil { + return nil + } + out := new(ScaleSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScaleSettingsObservation) DeepCopyInto(out *ScaleSettingsObservation) { *out = *in @@ -1095,6 +1441,37 @@ func (in *SynapseSpark) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SynapseSparkIdentityInitParameters) DeepCopyInto(out *SynapseSparkIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SynapseSparkIdentityInitParameters. +func (in *SynapseSparkIdentityInitParameters) DeepCopy() *SynapseSparkIdentityInitParameters { + if in == nil { + return nil + } + out := new(SynapseSparkIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SynapseSparkIdentityObservation) DeepCopyInto(out *SynapseSparkIdentityObservation) { *out = *in @@ -1167,6 +1544,58 @@ func (in *SynapseSparkIdentityParameters) DeepCopy() *SynapseSparkIdentityParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SynapseSparkInitParameters) DeepCopyInto(out *SynapseSparkInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]SynapseSparkIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAuthEnabled != nil { + in, out := &in.LocalAuthEnabled, &out.LocalAuthEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SynapseSparkInitParameters. +func (in *SynapseSparkInitParameters) DeepCopy() *SynapseSparkInitParameters { + if in == nil { + return nil + } + out := new(SynapseSparkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SynapseSparkList) DeepCopyInto(out *SynapseSparkList) { *out = *in @@ -1353,6 +1782,7 @@ func (in *SynapseSparkSpec) DeepCopyInto(out *SynapseSparkSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SynapseSparkSpec. @@ -1409,6 +1839,37 @@ func (in *Workspace) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceIdentityInitParameters) DeepCopyInto(out *WorkspaceIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceIdentityInitParameters. +func (in *WorkspaceIdentityInitParameters) DeepCopy() *WorkspaceIdentityInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceIdentityObservation) DeepCopyInto(out *WorkspaceIdentityObservation) { *out = *in @@ -1481,6 +1942,98 @@ func (in *WorkspaceIdentityParameters) DeepCopy() *WorkspaceIdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceInitParameters) DeepCopyInto(out *WorkspaceInitParameters) { + *out = *in + if in.ContainerRegistryID != nil { + in, out := &in.ContainerRegistryID, &out.ContainerRegistryID + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Encryption != nil { + in, out := &in.Encryption, &out.Encryption + *out = make([]EncryptionInitParameters, len(*in)) + copy(*out, *in) + } + if in.FriendlyName != nil { + in, out := &in.FriendlyName, &out.FriendlyName + *out = new(string) + **out = **in + } + if in.HighBusinessImpact != nil { + in, out := &in.HighBusinessImpact, &out.HighBusinessImpact + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]WorkspaceIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ImageBuildComputeName != nil { + in, out := &in.ImageBuildComputeName, &out.ImageBuildComputeName + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicAccessBehindVirtualNetworkEnabled != nil { + in, out := &in.PublicAccessBehindVirtualNetworkEnabled, &out.PublicAccessBehindVirtualNetworkEnabled + *out = new(bool) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.V1LegacyModeEnabled != nil { + in, out := &in.V1LegacyModeEnabled, &out.V1LegacyModeEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceInitParameters. +func (in *WorkspaceInitParameters) DeepCopy() *WorkspaceInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceList) DeepCopyInto(out *WorkspaceList) { *out = *in @@ -1821,6 +2374,7 @@ func (in *WorkspaceSpec) DeepCopyInto(out *WorkspaceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceSpec. diff --git a/apis/machinelearningservices/v1beta1/zz_generated.managed.go b/apis/machinelearningservices/v1beta1/zz_generated.managed.go index 35a78c2c7..7d7733eb0 100644 --- a/apis/machinelearningservices/v1beta1/zz_generated.managed.go +++ b/apis/machinelearningservices/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ComputeCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ComputeCluster. -func (mg *ComputeCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ComputeCluster. +func (mg *ComputeCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ComputeCluster. @@ -55,9 +55,9 @@ func (mg *ComputeCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ComputeCluster. -func (mg *ComputeCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ComputeCluster. +func (mg *ComputeCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ComputeCluster. @@ -93,9 +93,9 @@ func (mg *ComputeInstance) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ComputeInstance. -func (mg *ComputeInstance) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ComputeInstance. +func (mg *ComputeInstance) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ComputeInstance. @@ -131,9 +131,9 @@ func (mg *ComputeInstance) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ComputeInstance. -func (mg *ComputeInstance) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ComputeInstance. +func (mg *ComputeInstance) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ComputeInstance. @@ -169,9 +169,9 @@ func (mg *SynapseSpark) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SynapseSpark. -func (mg *SynapseSpark) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SynapseSpark. +func (mg *SynapseSpark) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SynapseSpark. @@ -207,9 +207,9 @@ func (mg *SynapseSpark) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SynapseSpark. -func (mg *SynapseSpark) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SynapseSpark. +func (mg *SynapseSpark) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SynapseSpark. @@ -245,9 +245,9 @@ func (mg *Workspace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Workspace. -func (mg *Workspace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Workspace. +func (mg *Workspace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Workspace. @@ -283,9 +283,9 @@ func (mg *Workspace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Workspace. -func (mg *Workspace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Workspace. +func (mg *Workspace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Workspace. diff --git a/apis/machinelearningservices/v1beta1/zz_generated_terraformed.go b/apis/machinelearningservices/v1beta1/zz_generated_terraformed.go index f9a920e37..115d943c4 100755 --- a/apis/machinelearningservices/v1beta1/zz_generated_terraformed.go +++ b/apis/machinelearningservices/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ComputeCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ComputeCluster +func (tr *ComputeCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ComputeCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ComputeCluster) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *ComputeInstance) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ComputeInstance +func (tr *ComputeInstance) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ComputeInstance using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ComputeInstance) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *SynapseSpark) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SynapseSpark +func (tr *SynapseSpark) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SynapseSpark using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SynapseSpark) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *Workspace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Workspace +func (tr *Workspace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Workspace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Workspace) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/machinelearningservices/v1beta1/zz_synapsespark_types.go b/apis/machinelearningservices/v1beta1/zz_synapsespark_types.go index 1c76cbf20..dae635c22 100755 --- a/apis/machinelearningservices/v1beta1/zz_synapsespark_types.go +++ b/apis/machinelearningservices/v1beta1/zz_synapsespark_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SynapseSparkIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Synapse Spark. Changing this forces a new resource to be created. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Synapse Spark. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type SynapseSparkIdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Synapse Spark. Changing this forces a new resource to be created. @@ -35,8 +44,26 @@ type SynapseSparkIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Synapse Spark. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type SynapseSparkInitParameters struct { + + // The description of the Machine Learning Synapse Spark. Changing this forces a new Machine Learning Synapse Spark to be created. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // An identity block as defined below. Changing this forces a new Machine Learning Synapse Spark to be created. + Identity []SynapseSparkIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Whether local authentication methods is enabled. Defaults to true. Changing this forces a new Machine Learning Synapse Spark to be created. + LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` + + // The Azure Region where the Machine Learning Synapse Spark should exist. Changing this forces a new Machine Learning Synapse Spark to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Machine Learning Synapse Spark. Changing this forces a new Machine Learning Synapse Spark to be created. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type SynapseSparkObservation struct { @@ -121,6 +148,18 @@ type SynapseSparkParameters struct { type SynapseSparkSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SynapseSparkParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SynapseSparkInitParameters `json:"initProvider,omitempty"` } // SynapseSparkStatus defines the observed state of SynapseSpark. @@ -141,7 +180,7 @@ type SynapseSparkStatus struct { type SynapseSpark struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SynapseSparkSpec `json:"spec"` Status SynapseSparkStatus `json:"status,omitempty"` } diff --git a/apis/machinelearningservices/v1beta1/zz_workspace_types.go b/apis/machinelearningservices/v1beta1/zz_workspace_types.go index f31ab3cee..83a39480c 100755 --- a/apis/machinelearningservices/v1beta1/zz_workspace_types.go +++ b/apis/machinelearningservices/v1beta1/zz_workspace_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EncryptionInitParameters struct { +} + type EncryptionObservation struct { // The Key Vault URI to access the encryption key. @@ -70,6 +73,15 @@ type EncryptionParameters struct { UserAssignedIdentityIDSelector *v1.Selector `json:"userAssignedIdentityIdSelector,omitempty" tf:"-"` } +type WorkspaceIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Workspace. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Workspace. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WorkspaceIdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Workspace. @@ -92,8 +104,50 @@ type WorkspaceIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Workspace. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WorkspaceInitParameters struct { + + // The ID of the container registry associated with this Machine Learning Workspace. Changing this forces a new resource to be created. + ContainerRegistryID *string `json:"containerRegistryId,omitempty" tf:"container_registry_id,omitempty"` + + // The description of this Machine Learning Workspace. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // An encryption block as defined below. Changing this forces a new resource to be created. + Encryption []EncryptionInitParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` + + // Display name for this Machine Learning Workspace. + FriendlyName *string `json:"friendlyName,omitempty" tf:"friendly_name,omitempty"` + + // Flag to signal High Business Impact (HBI) data in the workspace and reduce diagnostic data collected by the service + HighBusinessImpact *bool `json:"highBusinessImpact,omitempty" tf:"high_business_impact,omitempty"` + + // An identity block as defined below. + Identity []WorkspaceIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The compute name for image build of the Machine Learning Workspace. + ImageBuildComputeName *string `json:"imageBuildComputeName,omitempty" tf:"image_build_compute_name,omitempty"` + + // Specifies the supported Azure location where the Machine Learning Workspace should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Enable public access when this Machine Learning Workspace is behind a VNet. Changing this forces a new resource to be created. + PublicAccessBehindVirtualNetworkEnabled *bool `json:"publicAccessBehindVirtualNetworkEnabled,omitempty" tf:"public_access_behind_virtual_network_enabled,omitempty"` + + // Enable public access when this Machine Learning Workspace is behind VNet. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // SKU/edition of the Machine Learning Workspace, possible values are Basic. Defaults to Basic. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Enable V1 API features, enabling v1_legacy_mode may prevent you from using features provided by the v2 API. Defaults to false. + V1LegacyModeEnabled *bool `json:"v1LegacyModeEnabled,omitempty" tf:"v1_legacy_mode_enabled,omitempty"` } type WorkspaceObservation struct { @@ -290,6 +344,18 @@ type WorkspaceParameters struct { type WorkspaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WorkspaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WorkspaceInitParameters `json:"initProvider,omitempty"` } // WorkspaceStatus defines the observed state of Workspace. @@ -310,8 +376,8 @@ type WorkspaceStatus struct { type Workspace struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.identity)",message="identity is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.identity) || has(self.initProvider.identity)",message="identity is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec WorkspaceSpec `json:"spec"` Status WorkspaceStatus `json:"status,omitempty"` } diff --git a/apis/maintenance/v1beta1/zz_generated.deepcopy.go b/apis/maintenance/v1beta1/zz_generated.deepcopy.go index bffd52b69..6f656250f 100644 --- a/apis/maintenance/v1beta1/zz_generated.deepcopy.go +++ b/apis/maintenance/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,40 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstallPatchesInitParameters) DeepCopyInto(out *InstallPatchesInitParameters) { + *out = *in + if in.Linux != nil { + in, out := &in.Linux, &out.Linux + *out = make([]LinuxInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Reboot != nil { + in, out := &in.Reboot, &out.Reboot + *out = new(string) + **out = **in + } + if in.Windows != nil { + in, out := &in.Windows, &out.Windows + *out = make([]WindowsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallPatchesInitParameters. +func (in *InstallPatchesInitParameters) DeepCopy() *InstallPatchesInitParameters { + if in == nil { + return nil + } + out := new(InstallPatchesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InstallPatchesObservation) DeepCopyInto(out *InstallPatchesObservation) { *out = *in @@ -82,6 +116,54 @@ func (in *InstallPatchesParameters) DeepCopy() *InstallPatchesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxInitParameters) DeepCopyInto(out *LinuxInitParameters) { + *out = *in + if in.ClassificationsToInclude != nil { + in, out := &in.ClassificationsToInclude, &out.ClassificationsToInclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.PackageNamesMaskToExclude != nil { + in, out := &in.PackageNamesMaskToExclude, &out.PackageNamesMaskToExclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.PackageNamesMaskToInclude != nil { + in, out := &in.PackageNamesMaskToInclude, &out.PackageNamesMaskToInclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxInitParameters. +func (in *LinuxInitParameters) DeepCopy() *LinuxInitParameters { + if in == nil { + return nil + } + out := new(LinuxInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxObservation) DeepCopyInto(out *LinuxObservation) { *out = *in @@ -205,6 +287,26 @@ func (in *MaintenanceAssignmentDedicatedHost) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MaintenanceAssignmentDedicatedHostInitParameters) DeepCopyInto(out *MaintenanceAssignmentDedicatedHostInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceAssignmentDedicatedHostInitParameters. +func (in *MaintenanceAssignmentDedicatedHostInitParameters) DeepCopy() *MaintenanceAssignmentDedicatedHostInitParameters { + if in == nil { + return nil + } + out := new(MaintenanceAssignmentDedicatedHostInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MaintenanceAssignmentDedicatedHostList) DeepCopyInto(out *MaintenanceAssignmentDedicatedHostList) { *out = *in @@ -327,6 +429,7 @@ func (in *MaintenanceAssignmentDedicatedHostSpec) DeepCopyInto(out *MaintenanceA *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceAssignmentDedicatedHostSpec. @@ -383,6 +486,26 @@ func (in *MaintenanceAssignmentVirtualMachine) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MaintenanceAssignmentVirtualMachineInitParameters) DeepCopyInto(out *MaintenanceAssignmentVirtualMachineInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceAssignmentVirtualMachineInitParameters. +func (in *MaintenanceAssignmentVirtualMachineInitParameters) DeepCopy() *MaintenanceAssignmentVirtualMachineInitParameters { + if in == nil { + return nil + } + out := new(MaintenanceAssignmentVirtualMachineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MaintenanceAssignmentVirtualMachineList) DeepCopyInto(out *MaintenanceAssignmentVirtualMachineList) { *out = *in @@ -505,6 +628,7 @@ func (in *MaintenanceAssignmentVirtualMachineSpec) DeepCopyInto(out *Maintenance *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceAssignmentVirtualMachineSpec. @@ -561,6 +685,85 @@ func (in *MaintenanceConfiguration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MaintenanceConfigurationInitParameters) DeepCopyInto(out *MaintenanceConfigurationInitParameters) { + *out = *in + if in.InGuestUserPatchMode != nil { + in, out := &in.InGuestUserPatchMode, &out.InGuestUserPatchMode + *out = new(string) + **out = **in + } + if in.InstallPatches != nil { + in, out := &in.InstallPatches, &out.InstallPatches + *out = make([]InstallPatchesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Visibility != nil { + in, out := &in.Visibility, &out.Visibility + *out = new(string) + **out = **in + } + if in.Window != nil { + in, out := &in.Window, &out.Window + *out = make([]WindowInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceConfigurationInitParameters. +func (in *MaintenanceConfigurationInitParameters) DeepCopy() *MaintenanceConfigurationInitParameters { + if in == nil { + return nil + } + out := new(MaintenanceConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MaintenanceConfigurationList) DeepCopyInto(out *MaintenanceConfigurationList) { *out = *in @@ -781,6 +984,7 @@ func (in *MaintenanceConfigurationSpec) DeepCopyInto(out *MaintenanceConfigurati *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceConfigurationSpec. @@ -810,6 +1014,46 @@ func (in *MaintenanceConfigurationStatus) DeepCopy() *MaintenanceConfigurationSt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowInitParameters) DeepCopyInto(out *WindowInitParameters) { + *out = *in + if in.Duration != nil { + in, out := &in.Duration, &out.Duration + *out = new(string) + **out = **in + } + if in.ExpirationDateTime != nil { + in, out := &in.ExpirationDateTime, &out.ExpirationDateTime + *out = new(string) + **out = **in + } + if in.RecurEvery != nil { + in, out := &in.RecurEvery, &out.RecurEvery + *out = new(string) + **out = **in + } + if in.StartDateTime != nil { + in, out := &in.StartDateTime, &out.StartDateTime + *out = new(string) + **out = **in + } + if in.TimeZone != nil { + in, out := &in.TimeZone, &out.TimeZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowInitParameters. +func (in *WindowInitParameters) DeepCopy() *WindowInitParameters { + if in == nil { + return nil + } + out := new(WindowInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowObservation) DeepCopyInto(out *WindowObservation) { *out = *in @@ -890,6 +1134,54 @@ func (in *WindowParameters) DeepCopy() *WindowParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsInitParameters) DeepCopyInto(out *WindowsInitParameters) { + *out = *in + if in.ClassificationsToInclude != nil { + in, out := &in.ClassificationsToInclude, &out.ClassificationsToInclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.KbNumbersToExclude != nil { + in, out := &in.KbNumbersToExclude, &out.KbNumbersToExclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.KbNumbersToInclude != nil { + in, out := &in.KbNumbersToInclude, &out.KbNumbersToInclude + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsInitParameters. +func (in *WindowsInitParameters) DeepCopy() *WindowsInitParameters { + if in == nil { + return nil + } + out := new(WindowsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsObservation) DeepCopyInto(out *WindowsObservation) { *out = *in diff --git a/apis/maintenance/v1beta1/zz_generated.managed.go b/apis/maintenance/v1beta1/zz_generated.managed.go index 9ffc286e2..36023a090 100644 --- a/apis/maintenance/v1beta1/zz_generated.managed.go +++ b/apis/maintenance/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *MaintenanceAssignmentDedicatedHost) GetDeletionPolicy() xpv1.DeletionP return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MaintenanceAssignmentDedicatedHost. -func (mg *MaintenanceAssignmentDedicatedHost) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MaintenanceAssignmentDedicatedHost. +func (mg *MaintenanceAssignmentDedicatedHost) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MaintenanceAssignmentDedicatedHost. @@ -55,9 +55,9 @@ func (mg *MaintenanceAssignmentDedicatedHost) SetDeletionPolicy(r xpv1.DeletionP mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MaintenanceAssignmentDedicatedHost. -func (mg *MaintenanceAssignmentDedicatedHost) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MaintenanceAssignmentDedicatedHost. +func (mg *MaintenanceAssignmentDedicatedHost) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MaintenanceAssignmentDedicatedHost. @@ -93,9 +93,9 @@ func (mg *MaintenanceAssignmentVirtualMachine) GetDeletionPolicy() xpv1.Deletion return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MaintenanceAssignmentVirtualMachine. -func (mg *MaintenanceAssignmentVirtualMachine) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MaintenanceAssignmentVirtualMachine. +func (mg *MaintenanceAssignmentVirtualMachine) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MaintenanceAssignmentVirtualMachine. @@ -131,9 +131,9 @@ func (mg *MaintenanceAssignmentVirtualMachine) SetDeletionPolicy(r xpv1.Deletion mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MaintenanceAssignmentVirtualMachine. -func (mg *MaintenanceAssignmentVirtualMachine) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MaintenanceAssignmentVirtualMachine. +func (mg *MaintenanceAssignmentVirtualMachine) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MaintenanceAssignmentVirtualMachine. @@ -169,9 +169,9 @@ func (mg *MaintenanceConfiguration) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MaintenanceConfiguration. -func (mg *MaintenanceConfiguration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MaintenanceConfiguration. +func (mg *MaintenanceConfiguration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MaintenanceConfiguration. @@ -207,9 +207,9 @@ func (mg *MaintenanceConfiguration) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MaintenanceConfiguration. -func (mg *MaintenanceConfiguration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MaintenanceConfiguration. +func (mg *MaintenanceConfiguration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MaintenanceConfiguration. diff --git a/apis/maintenance/v1beta1/zz_generated_terraformed.go b/apis/maintenance/v1beta1/zz_generated_terraformed.go index b895bb33b..f707c7dbc 100755 --- a/apis/maintenance/v1beta1/zz_generated_terraformed.go +++ b/apis/maintenance/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *MaintenanceAssignmentDedicatedHost) SetParameters(params map[string]an return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MaintenanceAssignmentDedicatedHost +func (tr *MaintenanceAssignmentDedicatedHost) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MaintenanceAssignmentDedicatedHost using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MaintenanceAssignmentDedicatedHost) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *MaintenanceAssignmentVirtualMachine) SetParameters(params map[string]a return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MaintenanceAssignmentVirtualMachine +func (tr *MaintenanceAssignmentVirtualMachine) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MaintenanceAssignmentVirtualMachine using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MaintenanceAssignmentVirtualMachine) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *MaintenanceConfiguration) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MaintenanceConfiguration +func (tr *MaintenanceConfiguration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MaintenanceConfiguration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MaintenanceConfiguration) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/maintenance/v1beta1/zz_maintenanceassignmentdedicatedhost_types.go b/apis/maintenance/v1beta1/zz_maintenanceassignmentdedicatedhost_types.go index e8c9fbfd4..5f7c4dac4 100755 --- a/apis/maintenance/v1beta1/zz_maintenanceassignmentdedicatedhost_types.go +++ b/apis/maintenance/v1beta1/zz_maintenanceassignmentdedicatedhost_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MaintenanceAssignmentDedicatedHostInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type MaintenanceAssignmentDedicatedHostObservation struct { // Specifies the Dedicated Host ID to which the Maintenance Configuration will be assigned. Changing this forces a new resource to be created. @@ -67,6 +73,18 @@ type MaintenanceAssignmentDedicatedHostParameters struct { type MaintenanceAssignmentDedicatedHostSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MaintenanceAssignmentDedicatedHostParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MaintenanceAssignmentDedicatedHostInitParameters `json:"initProvider,omitempty"` } // MaintenanceAssignmentDedicatedHostStatus defines the observed state of MaintenanceAssignmentDedicatedHost. @@ -87,7 +105,7 @@ type MaintenanceAssignmentDedicatedHostStatus struct { type MaintenanceAssignmentDedicatedHost struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec MaintenanceAssignmentDedicatedHostSpec `json:"spec"` Status MaintenanceAssignmentDedicatedHostStatus `json:"status,omitempty"` } diff --git a/apis/maintenance/v1beta1/zz_maintenanceassignmentvirtualmachine_types.go b/apis/maintenance/v1beta1/zz_maintenanceassignmentvirtualmachine_types.go index 7add7600a..2f7c1c2eb 100755 --- a/apis/maintenance/v1beta1/zz_maintenanceassignmentvirtualmachine_types.go +++ b/apis/maintenance/v1beta1/zz_maintenanceassignmentvirtualmachine_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MaintenanceAssignmentVirtualMachineInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type MaintenanceAssignmentVirtualMachineObservation struct { // The ID of the Maintenance Assignment. @@ -67,6 +73,18 @@ type MaintenanceAssignmentVirtualMachineParameters struct { type MaintenanceAssignmentVirtualMachineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MaintenanceAssignmentVirtualMachineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MaintenanceAssignmentVirtualMachineInitParameters `json:"initProvider,omitempty"` } // MaintenanceAssignmentVirtualMachineStatus defines the observed state of MaintenanceAssignmentVirtualMachine. @@ -87,7 +105,7 @@ type MaintenanceAssignmentVirtualMachineStatus struct { type MaintenanceAssignmentVirtualMachine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec MaintenanceAssignmentVirtualMachineSpec `json:"spec"` Status MaintenanceAssignmentVirtualMachineStatus `json:"status,omitempty"` } diff --git a/apis/maintenance/v1beta1/zz_maintenanceconfiguration_types.go b/apis/maintenance/v1beta1/zz_maintenanceconfiguration_types.go index 3d49fcae0..bbd2d4af6 100755 --- a/apis/maintenance/v1beta1/zz_maintenanceconfiguration_types.go +++ b/apis/maintenance/v1beta1/zz_maintenanceconfiguration_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type InstallPatchesInitParameters struct { + + // A linux block as defined above. This property only applies when scope is set to InGuestPatch + Linux []LinuxInitParameters `json:"linux,omitempty" tf:"linux,omitempty"` + + // Possible reboot preference as defined by the user based on which it would be decided to reboot the machine or not after the patch operation is completed. Possible values are Always, IfRequired and Never. This property only applies when scope is set to InGuestPatch. + Reboot *string `json:"reboot,omitempty" tf:"reboot,omitempty"` + + // A windows block as defined above. This property only applies when scope is set to InGuestPatch + Windows []WindowsInitParameters `json:"windows,omitempty" tf:"windows,omitempty"` +} + type InstallPatchesObservation struct { // A linux block as defined above. This property only applies when scope is set to InGuestPatch @@ -40,6 +52,18 @@ type InstallPatchesParameters struct { Windows []WindowsParameters `json:"windows,omitempty" tf:"windows,omitempty"` } +type LinuxInitParameters struct { + + // List of Classification category of patches to be patched. Possible values are Critical, Security, UpdateRollup, FeaturePack, ServicePack, Definition, Tools and Updates. + ClassificationsToInclude []*string `json:"classificationsToInclude,omitempty" tf:"classifications_to_include,omitempty"` + + // List of package names to be excluded from patching. + PackageNamesMaskToExclude []*string `json:"packageNamesMaskToExclude,omitempty" tf:"package_names_mask_to_exclude,omitempty"` + + // List of package names to be included for patching. + PackageNamesMaskToInclude []*string `json:"packageNamesMaskToInclude,omitempty" tf:"package_names_mask_to_include,omitempty"` +} + type LinuxObservation struct { // List of Classification category of patches to be patched. Possible values are Critical, Security, UpdateRollup, FeaturePack, ServicePack, Definition, Tools and Updates. @@ -67,6 +91,33 @@ type LinuxParameters struct { PackageNamesMaskToInclude []*string `json:"packageNamesMaskToInclude,omitempty" tf:"package_names_mask_to_include,omitempty"` } +type MaintenanceConfigurationInitParameters struct { + + // The in guest user patch mode. Possible values are Platform or User. Must be specified when scope is InGuestPatch. + InGuestUserPatchMode *string `json:"inGuestUserPatchMode,omitempty" tf:"in_guest_user_patch_mode,omitempty"` + + // An install_patches block as defined below. + InstallPatches []InstallPatchesInitParameters `json:"installPatches,omitempty" tf:"install_patches,omitempty"` + + // Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of properties to assign to the resource. + Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` + + // The scope of the Maintenance Configuration. Possible values are Extension, Host, InGuestPatch, OSImage, SQLDB or SQLManagedInstance. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + + // A mapping of tags to assign to the resource. The key could not contain upper case letter. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The visibility of the Maintenance Configuration. The only allowable value is Custom. + Visibility *string `json:"visibility,omitempty" tf:"visibility,omitempty"` + + // A window block as defined below. + Window []WindowInitParameters `json:"window,omitempty" tf:"window,omitempty"` +} + type MaintenanceConfigurationObservation struct { // The ID of the Maintenance Configuration. @@ -148,6 +199,24 @@ type MaintenanceConfigurationParameters struct { Window []WindowParameters `json:"window,omitempty" tf:"window,omitempty"` } +type WindowInitParameters struct { + + // The duration of the maintenance window in HH:mm format. + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` + + // Effective expiration date of the maintenance window in YYYY-MM-DD hh:mm format. + ExpirationDateTime *string `json:"expirationDateTime,omitempty" tf:"expiration_date_time,omitempty"` + + // The rate at which a maintenance window is expected to recur. The rate can be expressed as daily, weekly, or monthly schedules. + RecurEvery *string `json:"recurEvery,omitempty" tf:"recur_every,omitempty"` + + // Effective start date of the maintenance window in YYYY-MM-DD hh:mm format. + StartDateTime *string `json:"startDateTime,omitempty" tf:"start_date_time,omitempty"` + + // The time zone for the maintenance window. A list of timezones can be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. + TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` +} + type WindowObservation struct { // The duration of the maintenance window in HH:mm format. @@ -181,12 +250,24 @@ type WindowParameters struct { RecurEvery *string `json:"recurEvery,omitempty" tf:"recur_every,omitempty"` // Effective start date of the maintenance window in YYYY-MM-DD hh:mm format. - // +kubebuilder:validation:Required - StartDateTime *string `json:"startDateTime" tf:"start_date_time,omitempty"` + // +kubebuilder:validation:Optional + StartDateTime *string `json:"startDateTime,omitempty" tf:"start_date_time,omitempty"` // The time zone for the maintenance window. A list of timezones can be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. - // +kubebuilder:validation:Required - TimeZone *string `json:"timeZone" tf:"time_zone,omitempty"` + // +kubebuilder:validation:Optional + TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` +} + +type WindowsInitParameters struct { + + // List of Classification category of patches to be patched. Possible values are Critical, Security, UpdateRollup, FeaturePack, ServicePack, Definition, Tools and Updates. + ClassificationsToInclude []*string `json:"classificationsToInclude,omitempty" tf:"classifications_to_include,omitempty"` + + // List of KB numbers to be excluded from patching. + KbNumbersToExclude []*string `json:"kbNumbersToExclude,omitempty" tf:"kb_numbers_to_exclude,omitempty"` + + // List of KB numbers to be included for patching. + KbNumbersToInclude []*string `json:"kbNumbersToInclude,omitempty" tf:"kb_numbers_to_include,omitempty"` } type WindowsObservation struct { @@ -220,6 +301,18 @@ type WindowsParameters struct { type MaintenanceConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MaintenanceConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MaintenanceConfigurationInitParameters `json:"initProvider,omitempty"` } // MaintenanceConfigurationStatus defines the observed state of MaintenanceConfiguration. @@ -240,8 +333,8 @@ type MaintenanceConfigurationStatus struct { type MaintenanceConfiguration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope)",message="scope is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scope) || has(self.initProvider.scope)",message="scope is a required parameter" Spec MaintenanceConfigurationSpec `json:"spec"` Status MaintenanceConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/managedidentity/v1beta1/zz_federatedidentitycredential_types.go b/apis/managedidentity/v1beta1/zz_federatedidentitycredential_types.go index 57c5199e8..17d050223 100755 --- a/apis/managedidentity/v1beta1/zz_federatedidentitycredential_types.go +++ b/apis/managedidentity/v1beta1/zz_federatedidentitycredential_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FederatedIdentityCredentialInitParameters struct { + + // Specifies the audience for this Federated Identity Credential. Changing this forces a new Federated Identity Credential to be created. + Audience []*string `json:"audience,omitempty" tf:"audience,omitempty"` + + // Specifies the issuer of this Federated Identity Credential. Changing this forces a new Federated Identity Credential to be created. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // Specifies the subject for this Federated Identity Credential. Changing this forces a new Federated Identity Credential to be created. + Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` +} + type FederatedIdentityCredentialObservation struct { // Specifies the audience for this Federated Identity Credential. Changing this forces a new Federated Identity Credential to be created. @@ -80,6 +92,18 @@ type FederatedIdentityCredentialParameters struct { type FederatedIdentityCredentialSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FederatedIdentityCredentialParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FederatedIdentityCredentialInitParameters `json:"initProvider,omitempty"` } // FederatedIdentityCredentialStatus defines the observed state of FederatedIdentityCredential. @@ -100,9 +124,9 @@ type FederatedIdentityCredentialStatus struct { type FederatedIdentityCredential struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.audience)",message="audience is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.issuer)",message="issuer is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subject)",message="subject is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.audience) || has(self.initProvider.audience)",message="audience is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.issuer) || has(self.initProvider.issuer)",message="issuer is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subject) || has(self.initProvider.subject)",message="subject is a required parameter" Spec FederatedIdentityCredentialSpec `json:"spec"` Status FederatedIdentityCredentialStatus `json:"status,omitempty"` } diff --git a/apis/managedidentity/v1beta1/zz_generated.deepcopy.go b/apis/managedidentity/v1beta1/zz_generated.deepcopy.go index 400c610a7..a58fa5a30 100644 --- a/apis/managedidentity/v1beta1/zz_generated.deepcopy.go +++ b/apis/managedidentity/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,42 @@ func (in *FederatedIdentityCredential) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FederatedIdentityCredentialInitParameters) DeepCopyInto(out *FederatedIdentityCredentialInitParameters) { + *out = *in + if in.Audience != nil { + in, out := &in.Audience, &out.Audience + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Subject != nil { + in, out := &in.Subject, &out.Subject + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedIdentityCredentialInitParameters. +func (in *FederatedIdentityCredentialInitParameters) DeepCopy() *FederatedIdentityCredentialInitParameters { + if in == nil { + return nil + } + out := new(FederatedIdentityCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FederatedIdentityCredentialList) DeepCopyInto(out *FederatedIdentityCredentialList) { *out = *in @@ -195,6 +231,7 @@ func (in *FederatedIdentityCredentialSpec) DeepCopyInto(out *FederatedIdentityCr *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedIdentityCredentialSpec. @@ -251,6 +288,46 @@ func (in *UserAssignedIdentity) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UserAssignedIdentityInitParameters) DeepCopyInto(out *UserAssignedIdentityInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserAssignedIdentityInitParameters. +func (in *UserAssignedIdentityInitParameters) DeepCopy() *UserAssignedIdentityInitParameters { + if in == nil { + return nil + } + out := new(UserAssignedIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *UserAssignedIdentityList) DeepCopyInto(out *UserAssignedIdentityList) { *out = *in @@ -408,6 +485,7 @@ func (in *UserAssignedIdentitySpec) DeepCopyInto(out *UserAssignedIdentitySpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserAssignedIdentitySpec. diff --git a/apis/managedidentity/v1beta1/zz_generated.managed.go b/apis/managedidentity/v1beta1/zz_generated.managed.go index 692587bfb..a5cf156a7 100644 --- a/apis/managedidentity/v1beta1/zz_generated.managed.go +++ b/apis/managedidentity/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *FederatedIdentityCredential) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FederatedIdentityCredential. -func (mg *FederatedIdentityCredential) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FederatedIdentityCredential. +func (mg *FederatedIdentityCredential) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FederatedIdentityCredential. @@ -55,9 +55,9 @@ func (mg *FederatedIdentityCredential) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FederatedIdentityCredential. -func (mg *FederatedIdentityCredential) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FederatedIdentityCredential. +func (mg *FederatedIdentityCredential) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FederatedIdentityCredential. @@ -93,9 +93,9 @@ func (mg *UserAssignedIdentity) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this UserAssignedIdentity. -func (mg *UserAssignedIdentity) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this UserAssignedIdentity. +func (mg *UserAssignedIdentity) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this UserAssignedIdentity. @@ -131,9 +131,9 @@ func (mg *UserAssignedIdentity) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this UserAssignedIdentity. -func (mg *UserAssignedIdentity) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this UserAssignedIdentity. +func (mg *UserAssignedIdentity) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this UserAssignedIdentity. diff --git a/apis/managedidentity/v1beta1/zz_generated_terraformed.go b/apis/managedidentity/v1beta1/zz_generated_terraformed.go index ee1b47b1d..d39c7a251 100755 --- a/apis/managedidentity/v1beta1/zz_generated_terraformed.go +++ b/apis/managedidentity/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *FederatedIdentityCredential) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FederatedIdentityCredential +func (tr *FederatedIdentityCredential) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FederatedIdentityCredential using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FederatedIdentityCredential) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *UserAssignedIdentity) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this UserAssignedIdentity +func (tr *UserAssignedIdentity) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this UserAssignedIdentity using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *UserAssignedIdentity) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/managedidentity/v1beta1/zz_userassignedidentity_types.go b/apis/managedidentity/v1beta1/zz_userassignedidentity_types.go index 467b4aa20..5b0e0a5da 100755 --- a/apis/managedidentity/v1beta1/zz_userassignedidentity_types.go +++ b/apis/managedidentity/v1beta1/zz_userassignedidentity_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type UserAssignedIdentityInitParameters struct { + + // The Azure Region where the User Assigned Identity should exist. Changing this forces a new User Assigned Identity to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name of this User Assigned Identity. Changing this forces a new User Assigned Identity to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A mapping of tags which should be assigned to the User Assigned Identity. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type UserAssignedIdentityObservation struct { // The ID of the app associated with the Identity. @@ -72,6 +84,18 @@ type UserAssignedIdentityParameters struct { type UserAssignedIdentitySpec struct { v1.ResourceSpec `json:",inline"` ForProvider UserAssignedIdentityParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider UserAssignedIdentityInitParameters `json:"initProvider,omitempty"` } // UserAssignedIdentityStatus defines the observed state of UserAssignedIdentity. @@ -92,8 +116,8 @@ type UserAssignedIdentityStatus struct { type UserAssignedIdentity struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec UserAssignedIdentitySpec `json:"spec"` Status UserAssignedIdentityStatus `json:"status,omitempty"` } diff --git a/apis/management/v1beta1/zz_generated.deepcopy.go b/apis/management/v1beta1/zz_generated.deepcopy.go index e6a933830..9ba6bd8d8 100644 --- a/apis/management/v1beta1/zz_generated.deepcopy.go +++ b/apis/management/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,37 @@ func (in *ManagementGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementGroupInitParameters) DeepCopyInto(out *ManagementGroupInitParameters) { + *out = *in + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.SubscriptionIds != nil { + in, out := &in.SubscriptionIds, &out.SubscriptionIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementGroupInitParameters. +func (in *ManagementGroupInitParameters) DeepCopy() *ManagementGroupInitParameters { + if in == nil { + return nil + } + out := new(ManagementGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagementGroupList) DeepCopyInto(out *ManagementGroupList) { *out = *in @@ -165,6 +196,7 @@ func (in *ManagementGroupSpec) DeepCopyInto(out *ManagementGroupSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementGroupSpec. @@ -221,6 +253,21 @@ func (in *ManagementGroupSubscriptionAssociation) DeepCopyObject() runtime.Objec return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementGroupSubscriptionAssociationInitParameters) DeepCopyInto(out *ManagementGroupSubscriptionAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementGroupSubscriptionAssociationInitParameters. +func (in *ManagementGroupSubscriptionAssociationInitParameters) DeepCopy() *ManagementGroupSubscriptionAssociationInitParameters { + if in == nil { + return nil + } + out := new(ManagementGroupSubscriptionAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagementGroupSubscriptionAssociationList) DeepCopyInto(out *ManagementGroupSubscriptionAssociationList) { *out = *in @@ -333,6 +380,7 @@ func (in *ManagementGroupSubscriptionAssociationSpec) DeepCopyInto(out *Manageme *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementGroupSubscriptionAssociationSpec. diff --git a/apis/management/v1beta1/zz_generated.managed.go b/apis/management/v1beta1/zz_generated.managed.go index cf9ab6fe7..abdb4a978 100644 --- a/apis/management/v1beta1/zz_generated.managed.go +++ b/apis/management/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ManagementGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagementGroup. -func (mg *ManagementGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagementGroup. +func (mg *ManagementGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagementGroup. @@ -55,9 +55,9 @@ func (mg *ManagementGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagementGroup. -func (mg *ManagementGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagementGroup. +func (mg *ManagementGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagementGroup. @@ -93,9 +93,9 @@ func (mg *ManagementGroupSubscriptionAssociation) GetDeletionPolicy() xpv1.Delet return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagementGroupSubscriptionAssociation. -func (mg *ManagementGroupSubscriptionAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagementGroupSubscriptionAssociation. +func (mg *ManagementGroupSubscriptionAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagementGroupSubscriptionAssociation. @@ -131,9 +131,9 @@ func (mg *ManagementGroupSubscriptionAssociation) SetDeletionPolicy(r xpv1.Delet mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagementGroupSubscriptionAssociation. -func (mg *ManagementGroupSubscriptionAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagementGroupSubscriptionAssociation. +func (mg *ManagementGroupSubscriptionAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagementGroupSubscriptionAssociation. diff --git a/apis/management/v1beta1/zz_generated_terraformed.go b/apis/management/v1beta1/zz_generated_terraformed.go index bbe21e44e..d63b39be0 100755 --- a/apis/management/v1beta1/zz_generated_terraformed.go +++ b/apis/management/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ManagementGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagementGroup +func (tr *ManagementGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagementGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagementGroup) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *ManagementGroupSubscriptionAssociation) SetParameters(params map[strin return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagementGroupSubscriptionAssociation +func (tr *ManagementGroupSubscriptionAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagementGroupSubscriptionAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagementGroupSubscriptionAssociation) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/management/v1beta1/zz_managementgroup_types.go b/apis/management/v1beta1/zz_managementgroup_types.go index a36b2952d..67aeca7fe 100755 --- a/apis/management/v1beta1/zz_managementgroup_types.go +++ b/apis/management/v1beta1/zz_managementgroup_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagementGroupInitParameters struct { + + // A friendly name for this Management Group. If not specified, this will be the same as the name. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // A list of Subscription GUIDs which should be assigned to the Management Group. + SubscriptionIds []*string `json:"subscriptionIds,omitempty" tf:"subscription_ids,omitempty"` +} + type ManagementGroupObservation struct { // A friendly name for this Management Group. If not specified, this will be the same as the name. @@ -57,6 +66,18 @@ type ManagementGroupParameters struct { type ManagementGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagementGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagementGroupInitParameters `json:"initProvider,omitempty"` } // ManagementGroupStatus defines the observed state of ManagementGroup. diff --git a/apis/management/v1beta1/zz_managementgroupsubscriptionassociation_types.go b/apis/management/v1beta1/zz_managementgroupsubscriptionassociation_types.go index b92f8f7b0..1bead6a06 100755 --- a/apis/management/v1beta1/zz_managementgroupsubscriptionassociation_types.go +++ b/apis/management/v1beta1/zz_managementgroupsubscriptionassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagementGroupSubscriptionAssociationInitParameters struct { +} + type ManagementGroupSubscriptionAssociationObservation struct { // The ID of the Management Group Subscription Association. @@ -60,6 +63,18 @@ type ManagementGroupSubscriptionAssociationParameters struct { type ManagementGroupSubscriptionAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagementGroupSubscriptionAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagementGroupSubscriptionAssociationInitParameters `json:"initProvider,omitempty"` } // ManagementGroupSubscriptionAssociationStatus defines the observed state of ManagementGroupSubscriptionAssociation. diff --git a/apis/maps/v1beta1/zz_account_types.go b/apis/maps/v1beta1/zz_account_types.go index 541e1432f..c85bd68d5 100755 --- a/apis/maps/v1beta1/zz_account_types.go +++ b/apis/maps/v1beta1/zz_account_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccountInitParameters struct { + + // The SKU of the Azure Maps Account. Possible values are S0, S1 and G2. Changing this forces a new resource to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the Azure Maps Account. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type AccountObservation struct { // The ID of the Azure Maps Account. @@ -59,6 +68,18 @@ type AccountParameters struct { type AccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccountInitParameters `json:"initProvider,omitempty"` } // AccountStatus defines the observed state of Account. @@ -79,7 +100,7 @@ type AccountStatus struct { type Account struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec AccountSpec `json:"spec"` Status AccountStatus `json:"status,omitempty"` } diff --git a/apis/maps/v1beta1/zz_creator_types.go b/apis/maps/v1beta1/zz_creator_types.go index 30a038739..65b18528a 100755 --- a/apis/maps/v1beta1/zz_creator_types.go +++ b/apis/maps/v1beta1/zz_creator_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CreatorInitParameters struct { + + // The Azure Region where the Azure Maps Creator should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The storage units to be allocated. Integer values from 1 to 100, inclusive. + StorageUnits *float64 `json:"storageUnits,omitempty" tf:"storage_units,omitempty"` + + // A mapping of tags which should be assigned to the Azure Maps Creator. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type CreatorObservation struct { // The ID of the Azure Maps Creator. @@ -64,6 +76,18 @@ type CreatorParameters struct { type CreatorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CreatorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CreatorInitParameters `json:"initProvider,omitempty"` } // CreatorStatus defines the observed state of Creator. @@ -84,8 +108,8 @@ type CreatorStatus struct { type Creator struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageUnits)",message="storageUnits is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageUnits) || has(self.initProvider.storageUnits)",message="storageUnits is a required parameter" Spec CreatorSpec `json:"spec"` Status CreatorStatus `json:"status,omitempty"` } diff --git a/apis/maps/v1beta1/zz_generated.deepcopy.go b/apis/maps/v1beta1/zz_generated.deepcopy.go index 04188c10e..b35437656 100644 --- a/apis/maps/v1beta1/zz_generated.deepcopy.go +++ b/apis/maps/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,41 @@ func (in *Account) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountInitParameters) DeepCopyInto(out *AccountInitParameters) { + *out = *in + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountInitParameters. +func (in *AccountInitParameters) DeepCopy() *AccountInitParameters { + if in == nil { + return nil + } + out := new(AccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountList) DeepCopyInto(out *AccountList) { *out = *in @@ -178,6 +213,7 @@ func (in *AccountSpec) DeepCopyInto(out *AccountSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountSpec. @@ -234,6 +270,46 @@ func (in *Creator) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CreatorInitParameters) DeepCopyInto(out *CreatorInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.StorageUnits != nil { + in, out := &in.StorageUnits, &out.StorageUnits + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreatorInitParameters. +func (in *CreatorInitParameters) DeepCopy() *CreatorInitParameters { + if in == nil { + return nil + } + out := new(CreatorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CreatorList) DeepCopyInto(out *CreatorList) { *out = *in @@ -376,6 +452,7 @@ func (in *CreatorSpec) DeepCopyInto(out *CreatorSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreatorSpec. diff --git a/apis/maps/v1beta1/zz_generated.managed.go b/apis/maps/v1beta1/zz_generated.managed.go index e50a0620c..8dac00692 100644 --- a/apis/maps/v1beta1/zz_generated.managed.go +++ b/apis/maps/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Account) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Account. -func (mg *Account) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Account. +func (mg *Account) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Account. @@ -55,9 +55,9 @@ func (mg *Account) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Account. -func (mg *Account) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Account. +func (mg *Account) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Account. @@ -93,9 +93,9 @@ func (mg *Creator) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Creator. -func (mg *Creator) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Creator. +func (mg *Creator) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Creator. @@ -131,9 +131,9 @@ func (mg *Creator) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Creator. -func (mg *Creator) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Creator. +func (mg *Creator) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Creator. diff --git a/apis/maps/v1beta1/zz_generated_terraformed.go b/apis/maps/v1beta1/zz_generated_terraformed.go index db765f5fd..8155cf0ff 100755 --- a/apis/maps/v1beta1/zz_generated_terraformed.go +++ b/apis/maps/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Account) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Account +func (tr *Account) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Account using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Account) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Creator) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Creator +func (tr *Creator) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Creator using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Creator) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/marketplaceordering/v1beta1/zz_generated.deepcopy.go b/apis/marketplaceordering/v1beta1/zz_generated.deepcopy.go index 98d47a094..7b2c52e78 100644 --- a/apis/marketplaceordering/v1beta1/zz_generated.deepcopy.go +++ b/apis/marketplaceordering/v1beta1/zz_generated.deepcopy.go @@ -40,6 +40,36 @@ func (in *MarketplaceAgreement) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MarketplaceAgreementInitParameters) DeepCopyInto(out *MarketplaceAgreementInitParameters) { + *out = *in + if in.Offer != nil { + in, out := &in.Offer, &out.Offer + *out = new(string) + **out = **in + } + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MarketplaceAgreementInitParameters. +func (in *MarketplaceAgreementInitParameters) DeepCopy() *MarketplaceAgreementInitParameters { + if in == nil { + return nil + } + out := new(MarketplaceAgreementInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MarketplaceAgreementList) DeepCopyInto(out *MarketplaceAgreementList) { *out = *in @@ -152,6 +182,7 @@ func (in *MarketplaceAgreementSpec) DeepCopyInto(out *MarketplaceAgreementSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MarketplaceAgreementSpec. diff --git a/apis/marketplaceordering/v1beta1/zz_generated.managed.go b/apis/marketplaceordering/v1beta1/zz_generated.managed.go index 509b43c06..a8e6d0168 100644 --- a/apis/marketplaceordering/v1beta1/zz_generated.managed.go +++ b/apis/marketplaceordering/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *MarketplaceAgreement) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MarketplaceAgreement. -func (mg *MarketplaceAgreement) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MarketplaceAgreement. +func (mg *MarketplaceAgreement) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MarketplaceAgreement. @@ -55,9 +55,9 @@ func (mg *MarketplaceAgreement) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MarketplaceAgreement. -func (mg *MarketplaceAgreement) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MarketplaceAgreement. +func (mg *MarketplaceAgreement) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MarketplaceAgreement. diff --git a/apis/marketplaceordering/v1beta1/zz_generated_terraformed.go b/apis/marketplaceordering/v1beta1/zz_generated_terraformed.go index a7b0a71da..17ef6dec9 100755 --- a/apis/marketplaceordering/v1beta1/zz_generated_terraformed.go +++ b/apis/marketplaceordering/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *MarketplaceAgreement) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MarketplaceAgreement +func (tr *MarketplaceAgreement) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MarketplaceAgreement using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MarketplaceAgreement) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/marketplaceordering/v1beta1/zz_marketplaceagreement_types.go b/apis/marketplaceordering/v1beta1/zz_marketplaceagreement_types.go index ff0e23d6b..2e3bb6062 100755 --- a/apis/marketplaceordering/v1beta1/zz_marketplaceagreement_types.go +++ b/apis/marketplaceordering/v1beta1/zz_marketplaceagreement_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MarketplaceAgreementInitParameters struct { + + // The Offer of the Marketplace Image. Changing this forces a new resource to be created. + Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` + + // The Plan of the Marketplace Image. Changing this forces a new resource to be created. + Plan *string `json:"plan,omitempty" tf:"plan,omitempty"` + + // The Publisher of the Marketplace Image. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + type MarketplaceAgreementObservation struct { // The ID of the Marketplace Agreement. @@ -51,6 +63,18 @@ type MarketplaceAgreementParameters struct { type MarketplaceAgreementSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MarketplaceAgreementParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MarketplaceAgreementInitParameters `json:"initProvider,omitempty"` } // MarketplaceAgreementStatus defines the observed state of MarketplaceAgreement. @@ -71,9 +95,9 @@ type MarketplaceAgreementStatus struct { type MarketplaceAgreement struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.offer)",message="offer is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.plan)",message="plan is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publisher)",message="publisher is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.offer) || has(self.initProvider.offer)",message="offer is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.plan) || has(self.initProvider.plan)",message="plan is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.publisher) || has(self.initProvider.publisher)",message="publisher is a required parameter" Spec MarketplaceAgreementSpec `json:"spec"` Status MarketplaceAgreementStatus `json:"status,omitempty"` } diff --git a/apis/media/v1beta1/zz_asset_types.go b/apis/media/v1beta1/zz_asset_types.go index 96da1167b..25448c0c7 100755 --- a/apis/media/v1beta1/zz_asset_types.go +++ b/apis/media/v1beta1/zz_asset_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AssetInitParameters struct { + + // The alternate ID of the Asset. + AlternateID *string `json:"alternateId,omitempty" tf:"alternate_id,omitempty"` + + // The name of the asset blob container. Changing this forces a new Media Asset to be created. + Container *string `json:"container,omitempty" tf:"container,omitempty"` + + // The Asset description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name of the storage account where to store the media asset. Changing this forces a new Media Asset to be created. + StorageAccountName *string `json:"storageAccountName,omitempty" tf:"storage_account_name,omitempty"` +} + type AssetObservation struct { // The alternate ID of the Asset. @@ -86,6 +101,18 @@ type AssetParameters struct { type AssetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AssetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AssetInitParameters `json:"initProvider,omitempty"` } // AssetStatus defines the observed state of Asset. diff --git a/apis/media/v1beta1/zz_assetfilter_types.go b/apis/media/v1beta1/zz_assetfilter_types.go index 9dc3f77d5..53be75a96 100755 --- a/apis/media/v1beta1/zz_assetfilter_types.go +++ b/apis/media/v1beta1/zz_assetfilter_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AssetFilterInitParameters struct { + + // The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning. + FirstQualityBitrate *float64 `json:"firstQualityBitrate,omitempty" tf:"first_quality_bitrate,omitempty"` + + // A presentation_time_range block as defined below. + PresentationTimeRange []PresentationTimeRangeInitParameters `json:"presentationTimeRange,omitempty" tf:"presentation_time_range,omitempty"` + + // One or more track_selection blocks as defined below. + TrackSelection []TrackSelectionInitParameters `json:"trackSelection,omitempty" tf:"track_selection,omitempty"` +} + type AssetFilterObservation struct { // The Asset ID for which the Asset Filter should be created. Changing this forces a new Asset Filter to be created. @@ -60,6 +72,18 @@ type AssetFilterParameters struct { TrackSelection []TrackSelectionParameters `json:"trackSelection,omitempty" tf:"track_selection,omitempty"` } +type ConditionInitParameters struct { + + // The condition operation to test a track property against. Supported values are Equal and NotEqual. + Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` + + // The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details. + Property *string `json:"property,omitempty" tf:"property,omitempty"` + + // The track property value to match or not match. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ConditionObservation struct { // The condition operation to test a track property against. Supported values are Equal and NotEqual. @@ -87,6 +111,29 @@ type ConditionParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type PresentationTimeRangeInitParameters struct { + + // The absolute end time boundary. Applies to Video on Demand (VoD). + // For the Live Streaming presentation, it is silently ignored and applied when the presentation ends and the stream becomes VoD. This is a long value that represents an absolute end point of the presentation, rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so an end_in_units of 180 would be for 3 minutes. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest. + EndInUnits *float64 `json:"endInUnits,omitempty" tf:"end_in_units,omitempty"` + + // Indicates whether the end_in_units property must be present. If true, end_in_units must be specified or a bad request code is returned. Applies to Live Streaming only. Allowed values: false, true. + ForceEnd *bool `json:"forceEnd,omitempty" tf:"force_end,omitempty"` + + // The relative to end right edge. Applies to Live Streaming only. + // This value defines the latest live position that a client can seek to. Using this property, you can delay live playback position and create a server-side buffer for players. The unit is defined by unit_timescale_in_miliseconds. The maximum live back off duration is 300 seconds. For example, a value of 20 means that the latest available content is 20 seconds delayed from the real live edge. + LiveBackoffInUnits *float64 `json:"liveBackoffInUnits,omitempty" tf:"live_backoff_in_units,omitempty"` + + // The relative to end sliding window. Applies to Live Streaming only. Use presentation_window_in_units to apply a sliding window of fragments to include in a playlist. The unit is defined by unit_timescale_in_miliseconds. For example, set presentation_window_in_units to 120 to apply a two-minute sliding window. Media within 2 minutes of the live edge will be included in the playlist. If a fragment straddles the boundary, the entire fragment will be included in the playlist. The minimum presentation window duration is 60 seconds. + PresentationWindowInUnits *float64 `json:"presentationWindowInUnits,omitempty" tf:"presentation_window_in_units,omitempty"` + + // The absolute start time boundary. Applies to Video on Demand (VoD) or Live Streaming. This is a long value that represents an absolute start point of the stream. The value gets rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so a start_in_units of 15 would be for 15 seconds. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest. + StartInUnits *float64 `json:"startInUnits,omitempty" tf:"start_in_units,omitempty"` + + // Specified as the number of miliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1000. Or if you want to set start_in_units in 30 miliseconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale. + UnitTimescaleInMiliseconds *float64 `json:"unitTimescaleInMiliseconds,omitempty" tf:"unit_timescale_in_miliseconds,omitempty"` +} + type PresentationTimeRangeObservation struct { // The absolute end time boundary. Applies to Video on Demand (VoD). @@ -139,6 +186,12 @@ type PresentationTimeRangeParameters struct { UnitTimescaleInMiliseconds *float64 `json:"unitTimescaleInMiliseconds,omitempty" tf:"unit_timescale_in_miliseconds,omitempty"` } +type TrackSelectionInitParameters struct { + + // One or more condition blocks as defined above. + Condition []ConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` +} + type TrackSelectionObservation struct { // One or more condition blocks as defined above. @@ -148,14 +201,26 @@ type TrackSelectionObservation struct { type TrackSelectionParameters struct { // One or more condition blocks as defined above. - // +kubebuilder:validation:Required - Condition []ConditionParameters `json:"condition" tf:"condition,omitempty"` + // +kubebuilder:validation:Optional + Condition []ConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` } // AssetFilterSpec defines the desired state of AssetFilter type AssetFilterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AssetFilterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AssetFilterInitParameters `json:"initProvider,omitempty"` } // AssetFilterStatus defines the observed state of AssetFilter. diff --git a/apis/media/v1beta1/zz_contentkeypolicy_types.go b/apis/media/v1beta1/zz_contentkeypolicy_types.go index 2f706d7c8..35fb34743 100755 --- a/apis/media/v1beta1/zz_contentkeypolicy_types.go +++ b/apis/media/v1beta1/zz_contentkeypolicy_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AlternateKeyInitParameters struct { +} + type AlternateKeyObservation struct { } @@ -35,6 +38,15 @@ type AlternateKeyParameters struct { X509TokenKeyRawSecretRef *v1.SecretKeySelector `json:"x509TokenKeyRawSecretRef,omitempty" tf:"-"` } +type ContentKeyPolicyInitParameters struct { + + // A description for the Policy. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more policy_option blocks as defined below. + PolicyOption []PolicyOptionInitParameters `json:"policyOption,omitempty" tf:"policy_option,omitempty"` +} + type ContentKeyPolicyObservation struct { // A description for the Policy. @@ -90,6 +102,15 @@ type ContentKeyPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` } +type ExplicitAnalogTelevisionOutputRestrictionInitParameters struct { + + // Indicates whether this restriction is enforced on a best effort basis. Possible values are true or false. Defaults to false. + BestEffortEnforced *bool `json:"bestEffortEnforced,omitempty" tf:"best_effort_enforced,omitempty"` + + // The restriction control bits. Possible value is integer between 0 and 3 inclusive. + ControlBits *float64 `json:"controlBits,omitempty" tf:"control_bits,omitempty"` +} + type ExplicitAnalogTelevisionOutputRestrictionObservation struct { // Indicates whether this restriction is enforced on a best effort basis. Possible values are true or false. Defaults to false. @@ -106,8 +127,20 @@ type ExplicitAnalogTelevisionOutputRestrictionParameters struct { BestEffortEnforced *bool `json:"bestEffortEnforced,omitempty" tf:"best_effort_enforced,omitempty"` // The restriction control bits. Possible value is integer between 0 and 3 inclusive. - // +kubebuilder:validation:Required - ControlBits *float64 `json:"controlBits" tf:"control_bits,omitempty"` + // +kubebuilder:validation:Optional + ControlBits *float64 `json:"controlBits,omitempty" tf:"control_bits,omitempty"` +} + +type FairplayConfigurationInitParameters struct { + + // A offline_rental_configuration block as defined below. + OfflineRentalConfiguration []OfflineRentalConfigurationInitParameters `json:"offlineRentalConfiguration,omitempty" tf:"offline_rental_configuration,omitempty"` + + // The rental and lease key type. Supported values are DualExpiry, PersistentLimited, PersistentUnlimited or Undefined. + RentalAndLeaseKeyType *string `json:"rentalAndLeaseKeyType,omitempty" tf:"rental_and_lease_key_type,omitempty"` + + // The rental duration. Must be greater than 0. + RentalDurationSeconds *float64 `json:"rentalDurationSeconds,omitempty" tf:"rental_duration_seconds,omitempty"` } type FairplayConfigurationObservation struct { @@ -149,6 +182,15 @@ type FairplayConfigurationParameters struct { RentalDurationSeconds *float64 `json:"rentalDurationSeconds,omitempty" tf:"rental_duration_seconds,omitempty"` } +type OfflineRentalConfigurationInitParameters struct { + + // Playback duration. + PlaybackDurationSeconds *float64 `json:"playbackDurationSeconds,omitempty" tf:"playback_duration_seconds,omitempty"` + + // Storage duration. + StorageDurationSeconds *float64 `json:"storageDurationSeconds,omitempty" tf:"storage_duration_seconds,omitempty"` +} + type OfflineRentalConfigurationObservation struct { // Playback duration. @@ -169,6 +211,48 @@ type OfflineRentalConfigurationParameters struct { StorageDurationSeconds *float64 `json:"storageDurationSeconds,omitempty" tf:"storage_duration_seconds,omitempty"` } +type PlayRightInitParameters struct { + + // Configures Automatic Gain Control (AGC) and Color Stripe in the license. Must be between 0 and 3 inclusive. + AgcAndColorStripeRestriction *float64 `json:"agcAndColorStripeRestriction,omitempty" tf:"agc_and_color_stripe_restriction,omitempty"` + + // Configures Unknown output handling settings of the license. Supported values are Allowed, AllowedWithVideoConstriction or NotAllowed. + AllowPassingVideoContentToUnknownOutput *string `json:"allowPassingVideoContentToUnknownOutput,omitempty" tf:"allow_passing_video_content_to_unknown_output,omitempty"` + + // Specifies the output protection level for compressed digital audio. Supported values are 100, 150 or 200. + AnalogVideoOpl *float64 `json:"analogVideoOpl,omitempty" tf:"analog_video_opl,omitempty"` + + // Specifies the output protection level for compressed digital audio.Supported values are 100, 150, 200, 250 or 300. + CompressedDigitalAudioOpl *float64 `json:"compressedDigitalAudioOpl,omitempty" tf:"compressed_digital_audio_opl,omitempty"` + + // Specifies the output protection level for compressed digital video. Supported values are 400 or 500. + CompressedDigitalVideoOpl *float64 `json:"compressedDigitalVideoOpl,omitempty" tf:"compressed_digital_video_opl,omitempty"` + + // Enables the Image Constraint For Analog Component Video Restriction in the license. + DigitalVideoOnlyContentRestriction *bool `json:"digitalVideoOnlyContentRestriction,omitempty" tf:"digital_video_only_content_restriction,omitempty"` + + // An explicit_analog_television_output_restriction block as defined above. + ExplicitAnalogTelevisionOutputRestriction []ExplicitAnalogTelevisionOutputRestrictionInitParameters `json:"explicitAnalogTelevisionOutputRestriction,omitempty" tf:"explicit_analog_television_output_restriction,omitempty"` + + // The amount of time that the license is valid after the license is first used to play content. + FirstPlayExpiration *string `json:"firstPlayExpiration,omitempty" tf:"first_play_expiration,omitempty"` + + // Enables the Image Constraint For Analog Component Video Restriction in the license. + ImageConstraintForAnalogComponentVideoRestriction *bool `json:"imageConstraintForAnalogComponentVideoRestriction,omitempty" tf:"image_constraint_for_analog_component_video_restriction,omitempty"` + + // Enables the Image Constraint For Analog Component Video Restriction in the license. + ImageConstraintForAnalogComputerMonitorRestriction *bool `json:"imageConstraintForAnalogComputerMonitorRestriction,omitempty" tf:"image_constraint_for_analog_computer_monitor_restriction,omitempty"` + + // Configures the Serial Copy Management System (SCMS) in the license. Must be between 0 and 3 inclusive. + ScmsRestriction *float64 `json:"scmsRestriction,omitempty" tf:"scms_restriction,omitempty"` + + // Specifies the output protection level for uncompressed digital audio. Supported values are 100, 150, 200, 250 or 300. + UncompressedDigitalAudioOpl *float64 `json:"uncompressedDigitalAudioOpl,omitempty" tf:"uncompressed_digital_audio_opl,omitempty"` + + // Specifies the output protection level for uncompressed digital video. Supported values are 100, 250, 270 or 300. + UncompressedDigitalVideoOpl *float64 `json:"uncompressedDigitalVideoOpl,omitempty" tf:"uncompressed_digital_video_opl,omitempty"` +} + type PlayRightObservation struct { // Configures Automatic Gain Control (AGC) and Color Stripe in the license. Must be between 0 and 3 inclusive. @@ -266,6 +350,42 @@ type PlayRightParameters struct { UncompressedDigitalVideoOpl *float64 `json:"uncompressedDigitalVideoOpl,omitempty" tf:"uncompressed_digital_video_opl,omitempty"` } +type PlayreadyConfigurationLicenseInitParameters struct { + + // A flag indicating whether test devices can use the license. + AllowTestDevices *bool `json:"allowTestDevices,omitempty" tf:"allow_test_devices,omitempty"` + + // The begin date of license. + BeginDate *string `json:"beginDate,omitempty" tf:"begin_date,omitempty"` + + // Specifies that the content key ID is in the PlayReady header. + ContentKeyLocationFromHeaderEnabled *bool `json:"contentKeyLocationFromHeaderEnabled,omitempty" tf:"content_key_location_from_header_enabled,omitempty"` + + // The content key ID. Specifies that the content key ID is specified in the PlayReady configuration. + ContentKeyLocationFromKeyID *string `json:"contentKeyLocationFromKeyId,omitempty" tf:"content_key_location_from_key_id,omitempty"` + + // The PlayReady content type. Supported values are UltraVioletDownload, UltraVioletStreaming or Unspecified. + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` + + // The expiration date of license. + ExpirationDate *string `json:"expirationDate,omitempty" tf:"expiration_date,omitempty"` + + // The license type. Supported values are NonPersistent or Persistent. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // A play_right block as defined above. + PlayRight []PlayRightInitParameters `json:"playRight,omitempty" tf:"play_right,omitempty"` + + // The relative begin date of license. + RelativeBeginDate *string `json:"relativeBeginDate,omitempty" tf:"relative_begin_date,omitempty"` + + // The relative expiration date of license. + RelativeExpirationDate *string `json:"relativeExpirationDate,omitempty" tf:"relative_expiration_date,omitempty"` + + // The security level of the PlayReady license. Possible values are SL150, SL2000 and SL3000. Please see this document for more information about security level. See this document for more information about SL3000 support. + SecurityLevel *string `json:"securityLevel,omitempty" tf:"security_level,omitempty"` +} + type PlayreadyConfigurationLicenseObservation struct { // A flag indicating whether test devices can use the license. @@ -353,6 +473,33 @@ type PlayreadyConfigurationLicenseParameters struct { SecurityLevel *string `json:"securityLevel,omitempty" tf:"security_level,omitempty"` } +type PolicyOptionInitParameters struct { + + // Enable a configuration for non-DRM keys. + ClearKeyConfigurationEnabled *bool `json:"clearKeyConfigurationEnabled,omitempty" tf:"clear_key_configuration_enabled,omitempty"` + + // A fairplay_configuration block as defined above. Check license requirements here https://docs.microsoft.com/azure/media-services/latest/fairplay-license-overview. + FairplayConfiguration []FairplayConfigurationInitParameters `json:"fairplayConfiguration,omitempty" tf:"fairplay_configuration,omitempty"` + + // The name which should be used for this Policy Option. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Enable an open restriction. License or key will be delivered on every request. + OpenRestrictionEnabled *bool `json:"openRestrictionEnabled,omitempty" tf:"open_restriction_enabled,omitempty"` + + // One or more playready_configuration_license blocks as defined above. + PlayreadyConfigurationLicense []PlayreadyConfigurationLicenseInitParameters `json:"playreadyConfigurationLicense,omitempty" tf:"playready_configuration_license,omitempty"` + + // The custom response data of the PlayReady configuration. This only applies when playready_configuration_license is specified. + PlayreadyResponseCustomData *string `json:"playreadyResponseCustomData,omitempty" tf:"playready_response_custom_data,omitempty"` + + // A token_restriction block as defined below. + TokenRestriction []TokenRestrictionInitParameters `json:"tokenRestriction,omitempty" tf:"token_restriction,omitempty"` + + // The Widevine template. + WidevineConfigurationTemplate *string `json:"widevineConfigurationTemplate,omitempty" tf:"widevine_configuration_template,omitempty"` +} + type PolicyOptionObservation struct { // Enable a configuration for non-DRM keys. @@ -391,8 +538,8 @@ type PolicyOptionParameters struct { FairplayConfiguration []FairplayConfigurationParameters `json:"fairplayConfiguration,omitempty" tf:"fairplay_configuration,omitempty"` // The name which should be used for this Policy Option. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Enable an open restriction. License or key will be delivered on every request. // +kubebuilder:validation:Optional @@ -415,6 +562,15 @@ type PolicyOptionParameters struct { WidevineConfigurationTemplate *string `json:"widevineConfigurationTemplate,omitempty" tf:"widevine_configuration_template,omitempty"` } +type RequiredClaimInitParameters struct { + + // Token claim type. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // Token claim value. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type RequiredClaimObservation struct { // Token claim type. @@ -435,6 +591,27 @@ type RequiredClaimParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type TokenRestrictionInitParameters struct { + + // One or more alternate_key block as defined above. + AlternateKey []AlternateKeyInitParameters `json:"alternateKey,omitempty" tf:"alternate_key,omitempty"` + + // The audience for the token. + Audience *string `json:"audience,omitempty" tf:"audience,omitempty"` + + // The token issuer. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // The OpenID connect discovery document. + OpenIDConnectDiscoveryDocument *string `json:"openIdConnectDiscoveryDocument,omitempty" tf:"open_id_connect_discovery_document,omitempty"` + + // One or more required_claim blocks as defined above. + RequiredClaim []RequiredClaimInitParameters `json:"requiredClaim,omitempty" tf:"required_claim,omitempty"` + + // The type of token. Supported values are Jwt or Swt. + TokenType *string `json:"tokenType,omitempty" tf:"token_type,omitempty"` +} + type TokenRestrictionObservation struct { // One or more alternate_key block as defined above. @@ -503,6 +680,18 @@ type TokenRestrictionParameters struct { type ContentKeyPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider ContentKeyPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ContentKeyPolicyInitParameters `json:"initProvider,omitempty"` } // ContentKeyPolicyStatus defines the observed state of ContentKeyPolicy. @@ -523,7 +712,7 @@ type ContentKeyPolicyStatus struct { type ContentKeyPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policyOption)",message="policyOption is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.policyOption) || has(self.initProvider.policyOption)",message="policyOption is a required parameter" Spec ContentKeyPolicySpec `json:"spec"` Status ContentKeyPolicyStatus `json:"status,omitempty"` } diff --git a/apis/media/v1beta1/zz_generated.deepcopy.go b/apis/media/v1beta1/zz_generated.deepcopy.go index d431237ae..4b9948881 100644 --- a/apis/media/v1beta1/zz_generated.deepcopy.go +++ b/apis/media/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,46 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AacAudioInitParameters) DeepCopyInto(out *AacAudioInitParameters) { + *out = *in + if in.Bitrate != nil { + in, out := &in.Bitrate, &out.Bitrate + *out = new(float64) + **out = **in + } + if in.Channels != nil { + in, out := &in.Channels, &out.Channels + *out = new(float64) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Profile != nil { + in, out := &in.Profile, &out.Profile + *out = new(string) + **out = **in + } + if in.SamplingRate != nil { + in, out := &in.SamplingRate, &out.SamplingRate + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AacAudioInitParameters. +func (in *AacAudioInitParameters) DeepCopy() *AacAudioInitParameters { + if in == nil { + return nil + } + out := new(AacAudioInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AacAudioObservation) DeepCopyInto(out *AacAudioObservation) { *out = *in @@ -94,6 +134,35 @@ func (in *AacAudioParameters) DeepCopy() *AacAudioParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccessControlInitParameters) DeepCopyInto(out *AccessControlInitParameters) { + *out = *in + if in.AkamaiSignatureHeaderAuthenticationKey != nil { + in, out := &in.AkamaiSignatureHeaderAuthenticationKey, &out.AkamaiSignatureHeaderAuthenticationKey + *out = make([]AkamaiSignatureHeaderAuthenticationKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAllow != nil { + in, out := &in.IPAllow, &out.IPAllow + *out = make([]IPAllowInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessControlInitParameters. +func (in *AccessControlInitParameters) DeepCopy() *AccessControlInitParameters { + if in == nil { + return nil + } + out := new(AccessControlInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccessControlObservation) DeepCopyInto(out *AccessControlObservation) { *out = *in @@ -152,6 +221,36 @@ func (in *AccessControlParameters) DeepCopy() *AccessControlParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AkamaiSignatureHeaderAuthenticationKeyInitParameters) DeepCopyInto(out *AkamaiSignatureHeaderAuthenticationKeyInitParameters) { + *out = *in + if in.Base64Key != nil { + in, out := &in.Base64Key, &out.Base64Key + *out = new(string) + **out = **in + } + if in.Expiration != nil { + in, out := &in.Expiration, &out.Expiration + *out = new(string) + **out = **in + } + if in.Identifier != nil { + in, out := &in.Identifier, &out.Identifier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AkamaiSignatureHeaderAuthenticationKeyInitParameters. +func (in *AkamaiSignatureHeaderAuthenticationKeyInitParameters) DeepCopy() *AkamaiSignatureHeaderAuthenticationKeyInitParameters { + if in == nil { + return nil + } + out := new(AkamaiSignatureHeaderAuthenticationKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AkamaiSignatureHeaderAuthenticationKeyObservation) DeepCopyInto(out *AkamaiSignatureHeaderAuthenticationKeyObservation) { *out = *in @@ -212,6 +311,21 @@ func (in *AkamaiSignatureHeaderAuthenticationKeyParameters) DeepCopy() *AkamaiSi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AlternateKeyInitParameters) DeepCopyInto(out *AlternateKeyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlternateKeyInitParameters. +func (in *AlternateKeyInitParameters) DeepCopy() *AlternateKeyInitParameters { + if in == nil { + return nil + } + out := new(AlternateKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AlternateKeyObservation) DeepCopyInto(out *AlternateKeyObservation) { *out = *in @@ -316,6 +430,40 @@ func (in *AssetFilter) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AssetFilterInitParameters) DeepCopyInto(out *AssetFilterInitParameters) { + *out = *in + if in.FirstQualityBitrate != nil { + in, out := &in.FirstQualityBitrate, &out.FirstQualityBitrate + *out = new(float64) + **out = **in + } + if in.PresentationTimeRange != nil { + in, out := &in.PresentationTimeRange, &out.PresentationTimeRange + *out = make([]PresentationTimeRangeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TrackSelection != nil { + in, out := &in.TrackSelection, &out.TrackSelection + *out = make([]TrackSelectionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AssetFilterInitParameters. +func (in *AssetFilterInitParameters) DeepCopy() *AssetFilterInitParameters { + if in == nil { + return nil + } + out := new(AssetFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AssetFilterList) DeepCopyInto(out *AssetFilterList) { *out = *in @@ -446,6 +594,7 @@ func (in *AssetFilterSpec) DeepCopyInto(out *AssetFilterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AssetFilterSpec. @@ -475,6 +624,41 @@ func (in *AssetFilterStatus) DeepCopy() *AssetFilterStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AssetInitParameters) DeepCopyInto(out *AssetInitParameters) { + *out = *in + if in.AlternateID != nil { + in, out := &in.AlternateID, &out.AlternateID + *out = new(string) + **out = **in + } + if in.Container != nil { + in, out := &in.Container, &out.Container + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.StorageAccountName != nil { + in, out := &in.StorageAccountName, &out.StorageAccountName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AssetInitParameters. +func (in *AssetInitParameters) DeepCopy() *AssetInitParameters { + if in == nil { + return nil + } + out := new(AssetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AssetList) DeepCopyInto(out *AssetList) { *out = *in @@ -627,6 +811,7 @@ func (in *AssetSpec) DeepCopyInto(out *AssetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AssetSpec. @@ -656,6 +841,46 @@ func (in *AssetStatus) DeepCopy() *AssetStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AudioAnalyzerPresetInitParameters) DeepCopyInto(out *AudioAnalyzerPresetInitParameters) { + *out = *in + if in.AudioAnalysisMode != nil { + in, out := &in.AudioAnalysisMode, &out.AudioAnalysisMode + *out = new(string) + **out = **in + } + if in.AudioLanguage != nil { + in, out := &in.AudioLanguage, &out.AudioLanguage + *out = new(string) + **out = **in + } + if in.ExperimentalOptions != nil { + in, out := &in.ExperimentalOptions, &out.ExperimentalOptions + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AudioAnalyzerPresetInitParameters. +func (in *AudioAnalyzerPresetInitParameters) DeepCopy() *AudioAnalyzerPresetInitParameters { + if in == nil { + return nil + } + out := new(AudioAnalyzerPresetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AudioAnalyzerPresetObservation) DeepCopyInto(out *AudioAnalyzerPresetObservation) { *out = *in @@ -736,6 +961,51 @@ func (in *AudioAnalyzerPresetParameters) DeepCopy() *AudioAnalyzerPresetParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AudioInitParameters) DeepCopyInto(out *AudioInitParameters) { + *out = *in + if in.AudioGainLevel != nil { + in, out := &in.AudioGainLevel, &out.AudioGainLevel + *out = new(float64) + **out = **in + } + if in.End != nil { + in, out := &in.End, &out.End + *out = new(string) + **out = **in + } + if in.FadeInDuration != nil { + in, out := &in.FadeInDuration, &out.FadeInDuration + *out = new(string) + **out = **in + } + if in.FadeOutDuration != nil { + in, out := &in.FadeOutDuration, &out.FadeOutDuration + *out = new(string) + **out = **in + } + if in.InputLabel != nil { + in, out := &in.InputLabel, &out.InputLabel + *out = new(string) + **out = **in + } + if in.Start != nil { + in, out := &in.Start, &out.Start + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AudioInitParameters. +func (in *AudioInitParameters) DeepCopy() *AudioInitParameters { + if in == nil { + return nil + } + out := new(AudioInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AudioObservation) DeepCopyInto(out *AudioObservation) { *out = *in @@ -826,6 +1096,33 @@ func (in *AudioParameters) DeepCopy() *AudioParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BuiltinPresetInitParameters) DeepCopyInto(out *BuiltinPresetInitParameters) { + *out = *in + if in.PresetConfiguration != nil { + in, out := &in.PresetConfiguration, &out.PresetConfiguration + *out = make([]PresetConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PresetName != nil { + in, out := &in.PresetName, &out.PresetName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuiltinPresetInitParameters. +func (in *BuiltinPresetInitParameters) DeepCopy() *BuiltinPresetInitParameters { + if in == nil { + return nil + } + out := new(BuiltinPresetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BuiltinPresetObservation) DeepCopyInto(out *BuiltinPresetObservation) { *out = *in @@ -881,7 +1178,7 @@ func (in *BuiltinPresetParameters) DeepCopy() *BuiltinPresetParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ClearKeyEncryptionObservation) DeepCopyInto(out *ClearKeyEncryptionObservation) { +func (in *ClearKeyEncryptionInitParameters) DeepCopyInto(out *ClearKeyEncryptionInitParameters) { *out = *in if in.CustomKeysAcquisitionURLTemplate != nil { in, out := &in.CustomKeysAcquisitionURLTemplate, &out.CustomKeysAcquisitionURLTemplate @@ -890,7 +1187,27 @@ func (in *ClearKeyEncryptionObservation) DeepCopyInto(out *ClearKeyEncryptionObs } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClearKeyEncryptionObservation. +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClearKeyEncryptionInitParameters. +func (in *ClearKeyEncryptionInitParameters) DeepCopy() *ClearKeyEncryptionInitParameters { + if in == nil { + return nil + } + out := new(ClearKeyEncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClearKeyEncryptionObservation) DeepCopyInto(out *ClearKeyEncryptionObservation) { + *out = *in + if in.CustomKeysAcquisitionURLTemplate != nil { + in, out := &in.CustomKeysAcquisitionURLTemplate, &out.CustomKeysAcquisitionURLTemplate + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClearKeyEncryptionObservation. func (in *ClearKeyEncryptionObservation) DeepCopy() *ClearKeyEncryptionObservation { if in == nil { return nil @@ -920,6 +1237,36 @@ func (in *ClearKeyEncryptionParameters) DeepCopy() *ClearKeyEncryptionParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClearTrackConditionInitParameters) DeepCopyInto(out *ClearTrackConditionInitParameters) { + *out = *in + if in.Operation != nil { + in, out := &in.Operation, &out.Operation + *out = new(string) + **out = **in + } + if in.Property != nil { + in, out := &in.Property, &out.Property + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClearTrackConditionInitParameters. +func (in *ClearTrackConditionInitParameters) DeepCopy() *ClearTrackConditionInitParameters { + if in == nil { + return nil + } + out := new(ClearTrackConditionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClearTrackConditionObservation) DeepCopyInto(out *ClearTrackConditionObservation) { *out = *in @@ -980,6 +1327,28 @@ func (in *ClearTrackConditionParameters) DeepCopy() *ClearTrackConditionParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClearTrackInitParameters) DeepCopyInto(out *ClearTrackInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]ClearTrackConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClearTrackInitParameters. +func (in *ClearTrackInitParameters) DeepCopy() *ClearTrackInitParameters { + if in == nil { + return nil + } + out := new(ClearTrackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClearTrackObservation) DeepCopyInto(out *ClearTrackObservation) { *out = *in @@ -1024,6 +1393,77 @@ func (in *ClearTrackParameters) DeepCopy() *ClearTrackParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CodecInitParameters) DeepCopyInto(out *CodecInitParameters) { + *out = *in + if in.AacAudio != nil { + in, out := &in.AacAudio, &out.AacAudio + *out = make([]AacAudioInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CopyAudio != nil { + in, out := &in.CopyAudio, &out.CopyAudio + *out = make([]CopyAudioInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CopyVideo != nil { + in, out := &in.CopyVideo, &out.CopyVideo + *out = make([]CopyVideoInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DdAudio != nil { + in, out := &in.DdAudio, &out.DdAudio + *out = make([]DdAudioInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.H264Video != nil { + in, out := &in.H264Video, &out.H264Video + *out = make([]H264VideoInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.H265Video != nil { + in, out := &in.H265Video, &out.H265Video + *out = make([]H265VideoInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.JpgImage != nil { + in, out := &in.JpgImage, &out.JpgImage + *out = make([]JpgImageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PngImage != nil { + in, out := &in.PngImage, &out.PngImage + *out = make([]PngImageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodecInitParameters. +func (in *CodecInitParameters) DeepCopy() *CodecInitParameters { + if in == nil { + return nil + } + out := new(CodecInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CodecObservation) DeepCopyInto(out *CodecObservation) { *out = *in @@ -1166,6 +1606,49 @@ func (in *CodecParameters) DeepCopy() *CodecParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CommonEncryptionCbcsInitParameters) DeepCopyInto(out *CommonEncryptionCbcsInitParameters) { + *out = *in + if in.ClearKeyEncryption != nil { + in, out := &in.ClearKeyEncryption, &out.ClearKeyEncryption + *out = make([]ClearKeyEncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultContentKey != nil { + in, out := &in.DefaultContentKey, &out.DefaultContentKey + *out = make([]DefaultContentKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DrmFairplay != nil { + in, out := &in.DrmFairplay, &out.DrmFairplay + *out = make([]DrmFairplayInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EnabledProtocols != nil { + in, out := &in.EnabledProtocols, &out.EnabledProtocols + *out = make([]EnabledProtocolsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonEncryptionCbcsInitParameters. +func (in *CommonEncryptionCbcsInitParameters) DeepCopy() *CommonEncryptionCbcsInitParameters { + if in == nil { + return nil + } + out := new(CommonEncryptionCbcsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CommonEncryptionCbcsObservation) DeepCopyInto(out *CommonEncryptionCbcsObservation) { *out = *in @@ -1252,6 +1735,26 @@ func (in *CommonEncryptionCbcsParameters) DeepCopy() *CommonEncryptionCbcsParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CommonEncryptionCencClearKeyEncryptionInitParameters) DeepCopyInto(out *CommonEncryptionCencClearKeyEncryptionInitParameters) { + *out = *in + if in.CustomKeysAcquisitionURLTemplate != nil { + in, out := &in.CustomKeysAcquisitionURLTemplate, &out.CustomKeysAcquisitionURLTemplate + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonEncryptionCencClearKeyEncryptionInitParameters. +func (in *CommonEncryptionCencClearKeyEncryptionInitParameters) DeepCopy() *CommonEncryptionCencClearKeyEncryptionInitParameters { + if in == nil { + return nil + } + out := new(CommonEncryptionCencClearKeyEncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CommonEncryptionCencClearKeyEncryptionObservation) DeepCopyInto(out *CommonEncryptionCencClearKeyEncryptionObservation) { *out = *in @@ -1292,6 +1795,26 @@ func (in *CommonEncryptionCencClearKeyEncryptionParameters) DeepCopy() *CommonEn return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CommonEncryptionCencDefaultContentKeyInitParameters) DeepCopyInto(out *CommonEncryptionCencDefaultContentKeyInitParameters) { + *out = *in + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonEncryptionCencDefaultContentKeyInitParameters. +func (in *CommonEncryptionCencDefaultContentKeyInitParameters) DeepCopy() *CommonEncryptionCencDefaultContentKeyInitParameters { + if in == nil { + return nil + } + out := new(CommonEncryptionCencDefaultContentKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CommonEncryptionCencDefaultContentKeyObservation) DeepCopyInto(out *CommonEncryptionCencDefaultContentKeyObservation) { *out = *in @@ -1352,6 +1875,41 @@ func (in *CommonEncryptionCencDefaultContentKeyParameters) DeepCopy() *CommonEnc return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CommonEncryptionCencEnabledProtocolsInitParameters) DeepCopyInto(out *CommonEncryptionCencEnabledProtocolsInitParameters) { + *out = *in + if in.Dash != nil { + in, out := &in.Dash, &out.Dash + *out = new(bool) + **out = **in + } + if in.Download != nil { + in, out := &in.Download, &out.Download + *out = new(bool) + **out = **in + } + if in.Hls != nil { + in, out := &in.Hls, &out.Hls + *out = new(bool) + **out = **in + } + if in.SmoothStreaming != nil { + in, out := &in.SmoothStreaming, &out.SmoothStreaming + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonEncryptionCencEnabledProtocolsInitParameters. +func (in *CommonEncryptionCencEnabledProtocolsInitParameters) DeepCopy() *CommonEncryptionCencEnabledProtocolsInitParameters { + if in == nil { + return nil + } + out := new(CommonEncryptionCencEnabledProtocolsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CommonEncryptionCencEnabledProtocolsObservation) DeepCopyInto(out *CommonEncryptionCencEnabledProtocolsObservation) { *out = *in @@ -1423,39 +1981,39 @@ func (in *CommonEncryptionCencEnabledProtocolsParameters) DeepCopy() *CommonEncr } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CommonEncryptionCencObservation) DeepCopyInto(out *CommonEncryptionCencObservation) { +func (in *CommonEncryptionCencInitParameters) DeepCopyInto(out *CommonEncryptionCencInitParameters) { *out = *in if in.ClearKeyEncryption != nil { in, out := &in.ClearKeyEncryption, &out.ClearKeyEncryption - *out = make([]CommonEncryptionCencClearKeyEncryptionObservation, len(*in)) + *out = make([]CommonEncryptionCencClearKeyEncryptionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.ClearTrack != nil { in, out := &in.ClearTrack, &out.ClearTrack - *out = make([]ClearTrackObservation, len(*in)) + *out = make([]ClearTrackInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.ContentKeyToTrackMapping != nil { in, out := &in.ContentKeyToTrackMapping, &out.ContentKeyToTrackMapping - *out = make([]ContentKeyToTrackMappingObservation, len(*in)) + *out = make([]ContentKeyToTrackMappingInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.DefaultContentKey != nil { in, out := &in.DefaultContentKey, &out.DefaultContentKey - *out = make([]CommonEncryptionCencDefaultContentKeyObservation, len(*in)) + *out = make([]CommonEncryptionCencDefaultContentKeyInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.DrmPlayready != nil { in, out := &in.DrmPlayready, &out.DrmPlayready - *out = make([]DrmPlayreadyObservation, len(*in)) + *out = make([]DrmPlayreadyInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1467,57 +2025,57 @@ func (in *CommonEncryptionCencObservation) DeepCopyInto(out *CommonEncryptionCen } if in.EnabledProtocols != nil { in, out := &in.EnabledProtocols, &out.EnabledProtocols - *out = make([]CommonEncryptionCencEnabledProtocolsObservation, len(*in)) + *out = make([]CommonEncryptionCencEnabledProtocolsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonEncryptionCencObservation. -func (in *CommonEncryptionCencObservation) DeepCopy() *CommonEncryptionCencObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonEncryptionCencInitParameters. +func (in *CommonEncryptionCencInitParameters) DeepCopy() *CommonEncryptionCencInitParameters { if in == nil { return nil } - out := new(CommonEncryptionCencObservation) + out := new(CommonEncryptionCencInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CommonEncryptionCencParameters) DeepCopyInto(out *CommonEncryptionCencParameters) { +func (in *CommonEncryptionCencObservation) DeepCopyInto(out *CommonEncryptionCencObservation) { *out = *in if in.ClearKeyEncryption != nil { in, out := &in.ClearKeyEncryption, &out.ClearKeyEncryption - *out = make([]CommonEncryptionCencClearKeyEncryptionParameters, len(*in)) + *out = make([]CommonEncryptionCencClearKeyEncryptionObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.ClearTrack != nil { in, out := &in.ClearTrack, &out.ClearTrack - *out = make([]ClearTrackParameters, len(*in)) + *out = make([]ClearTrackObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.ContentKeyToTrackMapping != nil { in, out := &in.ContentKeyToTrackMapping, &out.ContentKeyToTrackMapping - *out = make([]ContentKeyToTrackMappingParameters, len(*in)) + *out = make([]ContentKeyToTrackMappingObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.DefaultContentKey != nil { in, out := &in.DefaultContentKey, &out.DefaultContentKey - *out = make([]CommonEncryptionCencDefaultContentKeyParameters, len(*in)) + *out = make([]CommonEncryptionCencDefaultContentKeyObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.DrmPlayready != nil { in, out := &in.DrmPlayready, &out.DrmPlayready - *out = make([]DrmPlayreadyParameters, len(*in)) + *out = make([]DrmPlayreadyObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1529,32 +2087,124 @@ func (in *CommonEncryptionCencParameters) DeepCopyInto(out *CommonEncryptionCenc } if in.EnabledProtocols != nil { in, out := &in.EnabledProtocols, &out.EnabledProtocols - *out = make([]CommonEncryptionCencEnabledProtocolsParameters, len(*in)) + *out = make([]CommonEncryptionCencEnabledProtocolsObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonEncryptionCencParameters. -func (in *CommonEncryptionCencParameters) DeepCopy() *CommonEncryptionCencParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonEncryptionCencObservation. +func (in *CommonEncryptionCencObservation) DeepCopy() *CommonEncryptionCencObservation { if in == nil { return nil } - out := new(CommonEncryptionCencParameters) + out := new(CommonEncryptionCencObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ConditionObservation) DeepCopyInto(out *ConditionObservation) { +func (in *CommonEncryptionCencParameters) DeepCopyInto(out *CommonEncryptionCencParameters) { *out = *in - if in.Operation != nil { - in, out := &in.Operation, &out.Operation - *out = new(string) - **out = **in - } - if in.Property != nil { + if in.ClearKeyEncryption != nil { + in, out := &in.ClearKeyEncryption, &out.ClearKeyEncryption + *out = make([]CommonEncryptionCencClearKeyEncryptionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClearTrack != nil { + in, out := &in.ClearTrack, &out.ClearTrack + *out = make([]ClearTrackParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ContentKeyToTrackMapping != nil { + in, out := &in.ContentKeyToTrackMapping, &out.ContentKeyToTrackMapping + *out = make([]ContentKeyToTrackMappingParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultContentKey != nil { + in, out := &in.DefaultContentKey, &out.DefaultContentKey + *out = make([]CommonEncryptionCencDefaultContentKeyParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DrmPlayready != nil { + in, out := &in.DrmPlayready, &out.DrmPlayready + *out = make([]DrmPlayreadyParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DrmWidevineCustomLicenseAcquisitionURLTemplate != nil { + in, out := &in.DrmWidevineCustomLicenseAcquisitionURLTemplate, &out.DrmWidevineCustomLicenseAcquisitionURLTemplate + *out = new(string) + **out = **in + } + if in.EnabledProtocols != nil { + in, out := &in.EnabledProtocols, &out.EnabledProtocols + *out = make([]CommonEncryptionCencEnabledProtocolsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonEncryptionCencParameters. +func (in *CommonEncryptionCencParameters) DeepCopy() *CommonEncryptionCencParameters { + if in == nil { + return nil + } + out := new(CommonEncryptionCencParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionInitParameters) DeepCopyInto(out *ConditionInitParameters) { + *out = *in + if in.Operation != nil { + in, out := &in.Operation, &out.Operation + *out = new(string) + **out = **in + } + if in.Property != nil { + in, out := &in.Property, &out.Property + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionInitParameters. +func (in *ConditionInitParameters) DeepCopy() *ConditionInitParameters { + if in == nil { + return nil + } + out := new(ConditionInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionObservation) DeepCopyInto(out *ConditionObservation) { + *out = *in + if in.Operation != nil { + in, out := &in.Operation, &out.Operation + *out = new(string) + **out = **in + } + if in.Property != nil { in, out := &in.Property, &out.Property *out = new(string) **out = **in @@ -1606,6 +2256,46 @@ func (in *ConditionParameters) DeepCopy() *ConditionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContentKeyInitParameters) DeepCopyInto(out *ContentKeyInitParameters) { + *out = *in + if in.ContentKeyID != nil { + in, out := &in.ContentKeyID, &out.ContentKeyID + *out = new(string) + **out = **in + } + if in.LabelReferenceInStreamingPolicy != nil { + in, out := &in.LabelReferenceInStreamingPolicy, &out.LabelReferenceInStreamingPolicy + *out = new(string) + **out = **in + } + if in.PolicyName != nil { + in, out := &in.PolicyName, &out.PolicyName + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContentKeyInitParameters. +func (in *ContentKeyInitParameters) DeepCopy() *ContentKeyInitParameters { + if in == nil { + return nil + } + out := new(ContentKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContentKeyObservation) DeepCopyInto(out *ContentKeyObservation) { *out = *in @@ -1713,6 +2403,33 @@ func (in *ContentKeyPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContentKeyPolicyInitParameters) DeepCopyInto(out *ContentKeyPolicyInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.PolicyOption != nil { + in, out := &in.PolicyOption, &out.PolicyOption + *out = make([]PolicyOptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContentKeyPolicyInitParameters. +func (in *ContentKeyPolicyInitParameters) DeepCopy() *ContentKeyPolicyInitParameters { + if in == nil { + return nil + } + out := new(ContentKeyPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContentKeyPolicyList) DeepCopyInto(out *ContentKeyPolicyList) { *out = *in @@ -1849,6 +2566,7 @@ func (in *ContentKeyPolicySpec) DeepCopyInto(out *ContentKeyPolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContentKeyPolicySpec. @@ -1878,6 +2596,38 @@ func (in *ContentKeyPolicyStatus) DeepCopy() *ContentKeyPolicyStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContentKeyToTrackMappingInitParameters) DeepCopyInto(out *ContentKeyToTrackMappingInitParameters) { + *out = *in + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.PolicyName != nil { + in, out := &in.PolicyName, &out.PolicyName + *out = new(string) + **out = **in + } + if in.Track != nil { + in, out := &in.Track, &out.Track + *out = make([]TrackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContentKeyToTrackMappingInitParameters. +func (in *ContentKeyToTrackMappingInitParameters) DeepCopy() *ContentKeyToTrackMappingInitParameters { + if in == nil { + return nil + } + out := new(ContentKeyToTrackMappingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContentKeyToTrackMappingObservation) DeepCopyInto(out *ContentKeyToTrackMappingObservation) { *out = *in @@ -1942,6 +2692,26 @@ func (in *ContentKeyToTrackMappingParameters) DeepCopy() *ContentKeyToTrackMappi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CopyAudioInitParameters) DeepCopyInto(out *CopyAudioInitParameters) { + *out = *in + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CopyAudioInitParameters. +func (in *CopyAudioInitParameters) DeepCopy() *CopyAudioInitParameters { + if in == nil { + return nil + } + out := new(CopyAudioInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CopyAudioObservation) DeepCopyInto(out *CopyAudioObservation) { *out = *in @@ -1982,6 +2752,26 @@ func (in *CopyAudioParameters) DeepCopy() *CopyAudioParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CopyVideoInitParameters) DeepCopyInto(out *CopyVideoInitParameters) { + *out = *in + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CopyVideoInitParameters. +func (in *CopyVideoInitParameters) DeepCopy() *CopyVideoInitParameters { + if in == nil { + return nil + } + out := new(CopyVideoInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CopyVideoObservation) DeepCopyInto(out *CopyVideoObservation) { *out = *in @@ -2022,6 +2812,41 @@ func (in *CopyVideoParameters) DeepCopy() *CopyVideoParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CropRectangleInitParameters) DeepCopyInto(out *CropRectangleInitParameters) { + *out = *in + if in.Height != nil { + in, out := &in.Height, &out.Height + *out = new(string) + **out = **in + } + if in.Left != nil { + in, out := &in.Left, &out.Left + *out = new(string) + **out = **in + } + if in.Top != nil { + in, out := &in.Top, &out.Top + *out = new(string) + **out = **in + } + if in.Width != nil { + in, out := &in.Width, &out.Width + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CropRectangleInitParameters. +func (in *CropRectangleInitParameters) DeepCopy() *CropRectangleInitParameters { + if in == nil { + return nil + } + out := new(CropRectangleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CropRectangleObservation) DeepCopyInto(out *CropRectangleObservation) { *out = *in @@ -2093,7 +2918,7 @@ func (in *CropRectangleParameters) DeepCopy() *CropRectangleParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CrossSiteAccessPolicyObservation) DeepCopyInto(out *CrossSiteAccessPolicyObservation) { +func (in *CrossSiteAccessPolicyInitParameters) DeepCopyInto(out *CrossSiteAccessPolicyInitParameters) { *out = *in if in.ClientAccessPolicy != nil { in, out := &in.ClientAccessPolicy, &out.ClientAccessPolicy @@ -2107,18 +2932,18 @@ func (in *CrossSiteAccessPolicyObservation) DeepCopyInto(out *CrossSiteAccessPol } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CrossSiteAccessPolicyObservation. -func (in *CrossSiteAccessPolicyObservation) DeepCopy() *CrossSiteAccessPolicyObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CrossSiteAccessPolicyInitParameters. +func (in *CrossSiteAccessPolicyInitParameters) DeepCopy() *CrossSiteAccessPolicyInitParameters { if in == nil { return nil } - out := new(CrossSiteAccessPolicyObservation) + out := new(CrossSiteAccessPolicyInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CrossSiteAccessPolicyParameters) DeepCopyInto(out *CrossSiteAccessPolicyParameters) { +func (in *CrossSiteAccessPolicyObservation) DeepCopyInto(out *CrossSiteAccessPolicyObservation) { *out = *in if in.ClientAccessPolicy != nil { in, out := &in.ClientAccessPolicy, &out.ClientAccessPolicy @@ -2132,18 +2957,79 @@ func (in *CrossSiteAccessPolicyParameters) DeepCopyInto(out *CrossSiteAccessPoli } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CrossSiteAccessPolicyParameters. -func (in *CrossSiteAccessPolicyParameters) DeepCopy() *CrossSiteAccessPolicyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CrossSiteAccessPolicyObservation. +func (in *CrossSiteAccessPolicyObservation) DeepCopy() *CrossSiteAccessPolicyObservation { if in == nil { return nil } - out := new(CrossSiteAccessPolicyParameters) + out := new(CrossSiteAccessPolicyObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *CustomPresetObservation) DeepCopyInto(out *CustomPresetObservation) { +func (in *CrossSiteAccessPolicyParameters) DeepCopyInto(out *CrossSiteAccessPolicyParameters) { + *out = *in + if in.ClientAccessPolicy != nil { + in, out := &in.ClientAccessPolicy, &out.ClientAccessPolicy + *out = new(string) + **out = **in + } + if in.CrossDomainPolicy != nil { + in, out := &in.CrossDomainPolicy, &out.CrossDomainPolicy + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CrossSiteAccessPolicyParameters. +func (in *CrossSiteAccessPolicyParameters) DeepCopy() *CrossSiteAccessPolicyParameters { + if in == nil { + return nil + } + out := new(CrossSiteAccessPolicyParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomPresetInitParameters) DeepCopyInto(out *CustomPresetInitParameters) { + *out = *in + if in.Codec != nil { + in, out := &in.Codec, &out.Codec + *out = make([]CodecInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Filter != nil { + in, out := &in.Filter, &out.Filter + *out = make([]FilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Format != nil { + in, out := &in.Format, &out.Format + *out = make([]FormatInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomPresetInitParameters. +func (in *CustomPresetInitParameters) DeepCopy() *CustomPresetInitParameters { + if in == nil { + return nil + } + out := new(CustomPresetInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomPresetObservation) DeepCopyInto(out *CustomPresetObservation) { *out = *in if in.Codec != nil { in, out := &in.Codec, &out.Codec @@ -2214,6 +3100,41 @@ func (in *CustomPresetParameters) DeepCopy() *CustomPresetParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DdAudioInitParameters) DeepCopyInto(out *DdAudioInitParameters) { + *out = *in + if in.Bitrate != nil { + in, out := &in.Bitrate, &out.Bitrate + *out = new(float64) + **out = **in + } + if in.Channels != nil { + in, out := &in.Channels, &out.Channels + *out = new(float64) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.SamplingRate != nil { + in, out := &in.SamplingRate, &out.SamplingRate + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DdAudioInitParameters. +func (in *DdAudioInitParameters) DeepCopy() *DdAudioInitParameters { + if in == nil { + return nil + } + out := new(DdAudioInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DdAudioObservation) DeepCopyInto(out *DdAudioObservation) { *out = *in @@ -2284,6 +3205,31 @@ func (in *DdAudioParameters) DeepCopy() *DdAudioParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DefaultContentKeyInitParameters) DeepCopyInto(out *DefaultContentKeyInitParameters) { + *out = *in + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.PolicyName != nil { + in, out := &in.PolicyName, &out.PolicyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultContentKeyInitParameters. +func (in *DefaultContentKeyInitParameters) DeepCopy() *DefaultContentKeyInitParameters { + if in == nil { + return nil + } + out := new(DefaultContentKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DefaultContentKeyObservation) DeepCopyInto(out *DefaultContentKeyObservation) { *out = *in @@ -2334,6 +3280,31 @@ func (in *DefaultContentKeyParameters) DeepCopy() *DefaultContentKeyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeinterlaceInitParameters) DeepCopyInto(out *DeinterlaceInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.Parity != nil { + in, out := &in.Parity, &out.Parity + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeinterlaceInitParameters. +func (in *DeinterlaceInitParameters) DeepCopy() *DeinterlaceInitParameters { + if in == nil { + return nil + } + out := new(DeinterlaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DeinterlaceObservation) DeepCopyInto(out *DeinterlaceObservation) { *out = *in @@ -2384,6 +3355,31 @@ func (in *DeinterlaceParameters) DeepCopy() *DeinterlaceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DrmFairplayInitParameters) DeepCopyInto(out *DrmFairplayInitParameters) { + *out = *in + if in.AllowPersistentLicense != nil { + in, out := &in.AllowPersistentLicense, &out.AllowPersistentLicense + *out = new(bool) + **out = **in + } + if in.CustomLicenseAcquisitionURLTemplate != nil { + in, out := &in.CustomLicenseAcquisitionURLTemplate, &out.CustomLicenseAcquisitionURLTemplate + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DrmFairplayInitParameters. +func (in *DrmFairplayInitParameters) DeepCopy() *DrmFairplayInitParameters { + if in == nil { + return nil + } + out := new(DrmFairplayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DrmFairplayObservation) DeepCopyInto(out *DrmFairplayObservation) { *out = *in @@ -2434,6 +3430,31 @@ func (in *DrmFairplayParameters) DeepCopy() *DrmFairplayParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DrmPlayreadyInitParameters) DeepCopyInto(out *DrmPlayreadyInitParameters) { + *out = *in + if in.CustomAttributes != nil { + in, out := &in.CustomAttributes, &out.CustomAttributes + *out = new(string) + **out = **in + } + if in.CustomLicenseAcquisitionURLTemplate != nil { + in, out := &in.CustomLicenseAcquisitionURLTemplate, &out.CustomLicenseAcquisitionURLTemplate + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DrmPlayreadyInitParameters. +func (in *DrmPlayreadyInitParameters) DeepCopy() *DrmPlayreadyInitParameters { + if in == nil { + return nil + } + out := new(DrmPlayreadyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DrmPlayreadyObservation) DeepCopyInto(out *DrmPlayreadyObservation) { *out = *in @@ -2484,6 +3505,41 @@ func (in *DrmPlayreadyParameters) DeepCopy() *DrmPlayreadyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnabledProtocolsInitParameters) DeepCopyInto(out *EnabledProtocolsInitParameters) { + *out = *in + if in.Dash != nil { + in, out := &in.Dash, &out.Dash + *out = new(bool) + **out = **in + } + if in.Download != nil { + in, out := &in.Download, &out.Download + *out = new(bool) + **out = **in + } + if in.Hls != nil { + in, out := &in.Hls, &out.Hls + *out = new(bool) + **out = **in + } + if in.SmoothStreaming != nil { + in, out := &in.SmoothStreaming, &out.SmoothStreaming + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnabledProtocolsInitParameters. +func (in *EnabledProtocolsInitParameters) DeepCopy() *EnabledProtocolsInitParameters { + if in == nil { + return nil + } + out := new(EnabledProtocolsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EnabledProtocolsObservation) DeepCopyInto(out *EnabledProtocolsObservation) { *out = *in @@ -2554,6 +3610,41 @@ func (in *EnabledProtocolsParameters) DeepCopy() *EnabledProtocolsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncodingInitParameters) DeepCopyInto(out *EncodingInitParameters) { + *out = *in + if in.KeyFrameInterval != nil { + in, out := &in.KeyFrameInterval, &out.KeyFrameInterval + *out = new(string) + **out = **in + } + if in.PresetName != nil { + in, out := &in.PresetName, &out.PresetName + *out = new(string) + **out = **in + } + if in.StretchMode != nil { + in, out := &in.StretchMode, &out.StretchMode + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncodingInitParameters. +func (in *EncodingInitParameters) DeepCopy() *EncodingInitParameters { + if in == nil { + return nil + } + out := new(EncodingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EncodingObservation) DeepCopyInto(out *EncodingObservation) { *out = *in @@ -2625,13 +3716,8 @@ func (in *EncodingParameters) DeepCopy() *EncodingParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EncryptionObservation) DeepCopyInto(out *EncryptionObservation) { +func (in *EncryptionInitParameters) DeepCopyInto(out *EncryptionInitParameters) { *out = *in - if in.CurrentKeyIdentifier != nil { - in, out := &in.CurrentKeyIdentifier, &out.CurrentKeyIdentifier - *out = new(string) - **out = **in - } if in.KeyVaultKeyIdentifier != nil { in, out := &in.KeyVaultKeyIdentifier, &out.KeyVaultKeyIdentifier *out = new(string) @@ -2639,7 +3725,7 @@ func (in *EncryptionObservation) DeepCopyInto(out *EncryptionObservation) { } if in.ManagedIdentity != nil { in, out := &in.ManagedIdentity, &out.ManagedIdentity - *out = make([]ManagedIdentityObservation, len(*in)) + *out = make([]ManagedIdentityInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -2651,19 +3737,24 @@ func (in *EncryptionObservation) DeepCopyInto(out *EncryptionObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionObservation. -func (in *EncryptionObservation) DeepCopy() *EncryptionObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionInitParameters. +func (in *EncryptionInitParameters) DeepCopy() *EncryptionInitParameters { if in == nil { return nil } - out := new(EncryptionObservation) + out := new(EncryptionInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EncryptionParameters) DeepCopyInto(out *EncryptionParameters) { +func (in *EncryptionObservation) DeepCopyInto(out *EncryptionObservation) { *out = *in + if in.CurrentKeyIdentifier != nil { + in, out := &in.CurrentKeyIdentifier, &out.CurrentKeyIdentifier + *out = new(string) + **out = **in + } if in.KeyVaultKeyIdentifier != nil { in, out := &in.KeyVaultKeyIdentifier, &out.KeyVaultKeyIdentifier *out = new(string) @@ -2671,7 +3762,7 @@ func (in *EncryptionParameters) DeepCopyInto(out *EncryptionParameters) { } if in.ManagedIdentity != nil { in, out := &in.ManagedIdentity, &out.ManagedIdentity - *out = make([]ManagedIdentityParameters, len(*in)) + *out = make([]ManagedIdentityObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -2683,12 +3774,59 @@ func (in *EncryptionParameters) DeepCopyInto(out *EncryptionParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionParameters. -func (in *EncryptionParameters) DeepCopy() *EncryptionParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionObservation. +func (in *EncryptionObservation) DeepCopy() *EncryptionObservation { if in == nil { return nil } - out := new(EncryptionParameters) + out := new(EncryptionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncryptionParameters) DeepCopyInto(out *EncryptionParameters) { + *out = *in + if in.KeyVaultKeyIdentifier != nil { + in, out := &in.KeyVaultKeyIdentifier, &out.KeyVaultKeyIdentifier + *out = new(string) + **out = **in + } + if in.ManagedIdentity != nil { + in, out := &in.ManagedIdentity, &out.ManagedIdentity + *out = make([]ManagedIdentityParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionParameters. +func (in *EncryptionParameters) DeepCopy() *EncryptionParameters { + if in == nil { + return nil + } + out := new(EncryptionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointInitParameters) DeepCopyInto(out *EndpointInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointInitParameters. +func (in *EndpointInitParameters) DeepCopy() *EndpointInitParameters { + if in == nil { + return nil + } + out := new(EndpointInitParameters) in.DeepCopyInto(out) return out } @@ -2733,6 +3871,31 @@ func (in *EndpointParameters) DeepCopy() *EndpointParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnvelopeEncryptionDefaultContentKeyInitParameters) DeepCopyInto(out *EnvelopeEncryptionDefaultContentKeyInitParameters) { + *out = *in + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.PolicyName != nil { + in, out := &in.PolicyName, &out.PolicyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvelopeEncryptionDefaultContentKeyInitParameters. +func (in *EnvelopeEncryptionDefaultContentKeyInitParameters) DeepCopy() *EnvelopeEncryptionDefaultContentKeyInitParameters { + if in == nil { + return nil + } + out := new(EnvelopeEncryptionDefaultContentKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EnvelopeEncryptionDefaultContentKeyObservation) DeepCopyInto(out *EnvelopeEncryptionDefaultContentKeyObservation) { *out = *in @@ -2783,6 +3946,41 @@ func (in *EnvelopeEncryptionDefaultContentKeyParameters) DeepCopy() *EnvelopeEnc return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnvelopeEncryptionEnabledProtocolsInitParameters) DeepCopyInto(out *EnvelopeEncryptionEnabledProtocolsInitParameters) { + *out = *in + if in.Dash != nil { + in, out := &in.Dash, &out.Dash + *out = new(bool) + **out = **in + } + if in.Download != nil { + in, out := &in.Download, &out.Download + *out = new(bool) + **out = **in + } + if in.Hls != nil { + in, out := &in.Hls, &out.Hls + *out = new(bool) + **out = **in + } + if in.SmoothStreaming != nil { + in, out := &in.SmoothStreaming, &out.SmoothStreaming + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvelopeEncryptionEnabledProtocolsInitParameters. +func (in *EnvelopeEncryptionEnabledProtocolsInitParameters) DeepCopy() *EnvelopeEncryptionEnabledProtocolsInitParameters { + if in == nil { + return nil + } + out := new(EnvelopeEncryptionEnabledProtocolsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EnvelopeEncryptionEnabledProtocolsObservation) DeepCopyInto(out *EnvelopeEncryptionEnabledProtocolsObservation) { *out = *in @@ -2853,6 +4051,40 @@ func (in *EnvelopeEncryptionEnabledProtocolsParameters) DeepCopy() *EnvelopeEncr return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnvelopeEncryptionInitParameters) DeepCopyInto(out *EnvelopeEncryptionInitParameters) { + *out = *in + if in.CustomKeysAcquisitionURLTemplate != nil { + in, out := &in.CustomKeysAcquisitionURLTemplate, &out.CustomKeysAcquisitionURLTemplate + *out = new(string) + **out = **in + } + if in.DefaultContentKey != nil { + in, out := &in.DefaultContentKey, &out.DefaultContentKey + *out = make([]EnvelopeEncryptionDefaultContentKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EnabledProtocols != nil { + in, out := &in.EnabledProtocols, &out.EnabledProtocols + *out = make([]EnvelopeEncryptionEnabledProtocolsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvelopeEncryptionInitParameters. +func (in *EnvelopeEncryptionInitParameters) DeepCopy() *EnvelopeEncryptionInitParameters { + if in == nil { + return nil + } + out := new(EnvelopeEncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EnvelopeEncryptionObservation) DeepCopyInto(out *EnvelopeEncryptionObservation) { *out = *in @@ -2921,6 +4153,31 @@ func (in *EnvelopeEncryptionParameters) DeepCopy() *EnvelopeEncryptionParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExplicitAnalogTelevisionOutputRestrictionInitParameters) DeepCopyInto(out *ExplicitAnalogTelevisionOutputRestrictionInitParameters) { + *out = *in + if in.BestEffortEnforced != nil { + in, out := &in.BestEffortEnforced, &out.BestEffortEnforced + *out = new(bool) + **out = **in + } + if in.ControlBits != nil { + in, out := &in.ControlBits, &out.ControlBits + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExplicitAnalogTelevisionOutputRestrictionInitParameters. +func (in *ExplicitAnalogTelevisionOutputRestrictionInitParameters) DeepCopy() *ExplicitAnalogTelevisionOutputRestrictionInitParameters { + if in == nil { + return nil + } + out := new(ExplicitAnalogTelevisionOutputRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExplicitAnalogTelevisionOutputRestrictionObservation) DeepCopyInto(out *ExplicitAnalogTelevisionOutputRestrictionObservation) { *out = *in @@ -2971,6 +4228,51 @@ func (in *ExplicitAnalogTelevisionOutputRestrictionParameters) DeepCopy() *Expli return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FaceDetectorPresetInitParameters) DeepCopyInto(out *FaceDetectorPresetInitParameters) { + *out = *in + if in.AnalysisResolution != nil { + in, out := &in.AnalysisResolution, &out.AnalysisResolution + *out = new(string) + **out = **in + } + if in.BlurType != nil { + in, out := &in.BlurType, &out.BlurType + *out = new(string) + **out = **in + } + if in.ExperimentalOptions != nil { + in, out := &in.ExperimentalOptions, &out.ExperimentalOptions + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.FaceRedactorMode != nil { + in, out := &in.FaceRedactorMode, &out.FaceRedactorMode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaceDetectorPresetInitParameters. +func (in *FaceDetectorPresetInitParameters) DeepCopy() *FaceDetectorPresetInitParameters { + if in == nil { + return nil + } + out := new(FaceDetectorPresetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FaceDetectorPresetObservation) DeepCopyInto(out *FaceDetectorPresetObservation) { *out = *in @@ -3061,6 +4363,36 @@ func (in *FaceDetectorPresetParameters) DeepCopy() *FaceDetectorPresetParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FadeInInitParameters) DeepCopyInto(out *FadeInInitParameters) { + *out = *in + if in.Duration != nil { + in, out := &in.Duration, &out.Duration + *out = new(string) + **out = **in + } + if in.FadeColor != nil { + in, out := &in.FadeColor, &out.FadeColor + *out = new(string) + **out = **in + } + if in.Start != nil { + in, out := &in.Start, &out.Start + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FadeInInitParameters. +func (in *FadeInInitParameters) DeepCopy() *FadeInInitParameters { + if in == nil { + return nil + } + out := new(FadeInInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FadeInObservation) DeepCopyInto(out *FadeInObservation) { *out = *in @@ -3121,6 +4453,36 @@ func (in *FadeInParameters) DeepCopy() *FadeInParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FadeOutInitParameters) DeepCopyInto(out *FadeOutInitParameters) { + *out = *in + if in.Duration != nil { + in, out := &in.Duration, &out.Duration + *out = new(string) + **out = **in + } + if in.FadeColor != nil { + in, out := &in.FadeColor, &out.FadeColor + *out = new(string) + **out = **in + } + if in.Start != nil { + in, out := &in.Start, &out.Start + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FadeOutInitParameters. +func (in *FadeOutInitParameters) DeepCopy() *FadeOutInitParameters { + if in == nil { + return nil + } + out := new(FadeOutInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FadeOutObservation) DeepCopyInto(out *FadeOutObservation) { *out = *in @@ -3182,11 +4544,11 @@ func (in *FadeOutParameters) DeepCopy() *FadeOutParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FairplayConfigurationObservation) DeepCopyInto(out *FairplayConfigurationObservation) { +func (in *FairplayConfigurationInitParameters) DeepCopyInto(out *FairplayConfigurationInitParameters) { *out = *in if in.OfflineRentalConfiguration != nil { in, out := &in.OfflineRentalConfiguration, &out.OfflineRentalConfiguration - *out = make([]OfflineRentalConfigurationObservation, len(*in)) + *out = make([]OfflineRentalConfigurationInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -3203,36 +4565,68 @@ func (in *FairplayConfigurationObservation) DeepCopyInto(out *FairplayConfigurat } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FairplayConfigurationObservation. -func (in *FairplayConfigurationObservation) DeepCopy() *FairplayConfigurationObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FairplayConfigurationInitParameters. +func (in *FairplayConfigurationInitParameters) DeepCopy() *FairplayConfigurationInitParameters { if in == nil { return nil } - out := new(FairplayConfigurationObservation) + out := new(FairplayConfigurationInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FairplayConfigurationParameters) DeepCopyInto(out *FairplayConfigurationParameters) { +func (in *FairplayConfigurationObservation) DeepCopyInto(out *FairplayConfigurationObservation) { *out = *in - if in.AskSecretRef != nil { - in, out := &in.AskSecretRef, &out.AskSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } if in.OfflineRentalConfiguration != nil { in, out := &in.OfflineRentalConfiguration, &out.OfflineRentalConfiguration - *out = make([]OfflineRentalConfigurationParameters, len(*in)) + *out = make([]OfflineRentalConfigurationObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.PfxPasswordSecretRef != nil { - in, out := &in.PfxPasswordSecretRef, &out.PfxPasswordSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } + if in.RentalAndLeaseKeyType != nil { + in, out := &in.RentalAndLeaseKeyType, &out.RentalAndLeaseKeyType + *out = new(string) + **out = **in + } + if in.RentalDurationSeconds != nil { + in, out := &in.RentalDurationSeconds, &out.RentalDurationSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FairplayConfigurationObservation. +func (in *FairplayConfigurationObservation) DeepCopy() *FairplayConfigurationObservation { + if in == nil { + return nil + } + out := new(FairplayConfigurationObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FairplayConfigurationParameters) DeepCopyInto(out *FairplayConfigurationParameters) { + *out = *in + if in.AskSecretRef != nil { + in, out := &in.AskSecretRef, &out.AskSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.OfflineRentalConfiguration != nil { + in, out := &in.OfflineRentalConfiguration, &out.OfflineRentalConfiguration + *out = make([]OfflineRentalConfigurationParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PfxPasswordSecretRef != nil { + in, out := &in.PfxPasswordSecretRef, &out.PfxPasswordSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } if in.PfxSecretRef != nil { in, out := &in.PfxSecretRef, &out.PfxSecretRef *out = new(v1.SecretKeySelector) @@ -3260,6 +4654,61 @@ func (in *FairplayConfigurationParameters) DeepCopy() *FairplayConfigurationPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilterInitParameters) DeepCopyInto(out *FilterInitParameters) { + *out = *in + if in.CropRectangle != nil { + in, out := &in.CropRectangle, &out.CropRectangle + *out = make([]CropRectangleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Deinterlace != nil { + in, out := &in.Deinterlace, &out.Deinterlace + *out = make([]DeinterlaceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FadeIn != nil { + in, out := &in.FadeIn, &out.FadeIn + *out = make([]FadeInInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FadeOut != nil { + in, out := &in.FadeOut, &out.FadeOut + *out = make([]FadeOutInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Overlay != nil { + in, out := &in.Overlay, &out.Overlay + *out = make([]OverlayInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Rotation != nil { + in, out := &in.Rotation, &out.Rotation + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterInitParameters. +func (in *FilterInitParameters) DeepCopy() *FilterInitParameters { + if in == nil { + return nil + } + out := new(FilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FilterObservation) DeepCopyInto(out *FilterObservation) { *out = *in @@ -3370,6 +4819,49 @@ func (in *FilterParameters) DeepCopy() *FilterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FormatInitParameters) DeepCopyInto(out *FormatInitParameters) { + *out = *in + if in.Jpg != nil { + in, out := &in.Jpg, &out.Jpg + *out = make([]JpgInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mp4 != nil { + in, out := &in.Mp4, &out.Mp4 + *out = make([]Mp4InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Png != nil { + in, out := &in.Png, &out.Png + *out = make([]PngInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TransportStream != nil { + in, out := &in.TransportStream, &out.TransportStream + *out = make([]TransportStreamInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FormatInitParameters. +func (in *FormatInitParameters) DeepCopy() *FormatInitParameters { + if in == nil { + return nil + } + out := new(FormatInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FormatObservation) DeepCopyInto(out *FormatObservation) { *out = *in @@ -3456,6 +4948,63 @@ func (in *FormatParameters) DeepCopy() *FormatParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *H264VideoInitParameters) DeepCopyInto(out *H264VideoInitParameters) { + *out = *in + if in.Complexity != nil { + in, out := &in.Complexity, &out.Complexity + *out = new(string) + **out = **in + } + if in.KeyFrameInterval != nil { + in, out := &in.KeyFrameInterval, &out.KeyFrameInterval + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Layer != nil { + in, out := &in.Layer, &out.Layer + *out = make([]LayerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RateControlMode != nil { + in, out := &in.RateControlMode, &out.RateControlMode + *out = new(string) + **out = **in + } + if in.SceneChangeDetectionEnabled != nil { + in, out := &in.SceneChangeDetectionEnabled, &out.SceneChangeDetectionEnabled + *out = new(bool) + **out = **in + } + if in.StretchMode != nil { + in, out := &in.StretchMode, &out.StretchMode + *out = new(string) + **out = **in + } + if in.SyncMode != nil { + in, out := &in.SyncMode, &out.SyncMode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new H264VideoInitParameters. +func (in *H264VideoInitParameters) DeepCopy() *H264VideoInitParameters { + if in == nil { + return nil + } + out := new(H264VideoInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *H264VideoObservation) DeepCopyInto(out *H264VideoObservation) { *out = *in @@ -3571,7 +5120,59 @@ func (in *H264VideoParameters) DeepCopy() *H264VideoParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *H265VideoLayerObservation) DeepCopyInto(out *H265VideoLayerObservation) { +func (in *H265VideoInitParameters) DeepCopyInto(out *H265VideoInitParameters) { + *out = *in + if in.Complexity != nil { + in, out := &in.Complexity, &out.Complexity + *out = new(string) + **out = **in + } + if in.KeyFrameInterval != nil { + in, out := &in.KeyFrameInterval, &out.KeyFrameInterval + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Layer != nil { + in, out := &in.Layer, &out.Layer + *out = make([]H265VideoLayerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SceneChangeDetectionEnabled != nil { + in, out := &in.SceneChangeDetectionEnabled, &out.SceneChangeDetectionEnabled + *out = new(bool) + **out = **in + } + if in.StretchMode != nil { + in, out := &in.StretchMode, &out.StretchMode + *out = new(string) + **out = **in + } + if in.SyncMode != nil { + in, out := &in.SyncMode, &out.SyncMode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new H265VideoInitParameters. +func (in *H265VideoInitParameters) DeepCopy() *H265VideoInitParameters { + if in == nil { + return nil + } + out := new(H265VideoInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *H265VideoLayerInitParameters) DeepCopyInto(out *H265VideoLayerInitParameters) { *out = *in if in.AdaptiveBFrameEnabled != nil { in, out := &in.AdaptiveBFrameEnabled, &out.AdaptiveBFrameEnabled @@ -3645,18 +5246,18 @@ func (in *H265VideoLayerObservation) DeepCopyInto(out *H265VideoLayerObservation } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new H265VideoLayerObservation. -func (in *H265VideoLayerObservation) DeepCopy() *H265VideoLayerObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new H265VideoLayerInitParameters. +func (in *H265VideoLayerInitParameters) DeepCopy() *H265VideoLayerInitParameters { if in == nil { return nil } - out := new(H265VideoLayerObservation) + out := new(H265VideoLayerInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *H265VideoLayerParameters) DeepCopyInto(out *H265VideoLayerParameters) { +func (in *H265VideoLayerObservation) DeepCopyInto(out *H265VideoLayerObservation) { *out = *in if in.AdaptiveBFrameEnabled != nil { in, out := &in.AdaptiveBFrameEnabled, &out.AdaptiveBFrameEnabled @@ -3730,36 +5331,121 @@ func (in *H265VideoLayerParameters) DeepCopyInto(out *H265VideoLayerParameters) } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new H265VideoLayerParameters. -func (in *H265VideoLayerParameters) DeepCopy() *H265VideoLayerParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new H265VideoLayerObservation. +func (in *H265VideoLayerObservation) DeepCopy() *H265VideoLayerObservation { if in == nil { return nil } - out := new(H265VideoLayerParameters) + out := new(H265VideoLayerObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *H265VideoObservation) DeepCopyInto(out *H265VideoObservation) { +func (in *H265VideoLayerParameters) DeepCopyInto(out *H265VideoLayerParameters) { *out = *in - if in.Complexity != nil { - in, out := &in.Complexity, &out.Complexity - *out = new(string) + if in.AdaptiveBFrameEnabled != nil { + in, out := &in.AdaptiveBFrameEnabled, &out.AdaptiveBFrameEnabled + *out = new(bool) **out = **in } - if in.KeyFrameInterval != nil { - in, out := &in.KeyFrameInterval, &out.KeyFrameInterval - *out = new(string) + if in.BFrames != nil { + in, out := &in.BFrames, &out.BFrames + *out = new(float64) **out = **in } - if in.Label != nil { - in, out := &in.Label, &out.Label - *out = new(string) + if in.Bitrate != nil { + in, out := &in.Bitrate, &out.Bitrate + *out = new(float64) **out = **in } - if in.Layer != nil { - in, out := &in.Layer, &out.Layer + if in.BufferWindow != nil { + in, out := &in.BufferWindow, &out.BufferWindow + *out = new(string) + **out = **in + } + if in.Crf != nil { + in, out := &in.Crf, &out.Crf + *out = new(float64) + **out = **in + } + if in.FrameRate != nil { + in, out := &in.FrameRate, &out.FrameRate + *out = new(string) + **out = **in + } + if in.Height != nil { + in, out := &in.Height, &out.Height + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Level != nil { + in, out := &in.Level, &out.Level + *out = new(string) + **out = **in + } + if in.MaxBitrate != nil { + in, out := &in.MaxBitrate, &out.MaxBitrate + *out = new(float64) + **out = **in + } + if in.Profile != nil { + in, out := &in.Profile, &out.Profile + *out = new(string) + **out = **in + } + if in.ReferenceFrames != nil { + in, out := &in.ReferenceFrames, &out.ReferenceFrames + *out = new(float64) + **out = **in + } + if in.Slices != nil { + in, out := &in.Slices, &out.Slices + *out = new(float64) + **out = **in + } + if in.Width != nil { + in, out := &in.Width, &out.Width + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new H265VideoLayerParameters. +func (in *H265VideoLayerParameters) DeepCopy() *H265VideoLayerParameters { + if in == nil { + return nil + } + out := new(H265VideoLayerParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *H265VideoObservation) DeepCopyInto(out *H265VideoObservation) { + *out = *in + if in.Complexity != nil { + in, out := &in.Complexity, &out.Complexity + *out = new(string) + **out = **in + } + if in.KeyFrameInterval != nil { + in, out := &in.KeyFrameInterval, &out.KeyFrameInterval + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Layer != nil { + in, out := &in.Layer, &out.Layer *out = make([]H265VideoLayerObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) @@ -3844,6 +5530,36 @@ func (in *H265VideoParameters) DeepCopy() *H265VideoParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPAccessControlAllowInitParameters) DeepCopyInto(out *IPAccessControlAllowInitParameters) { + *out = *in + if in.Address != nil { + in, out := &in.Address, &out.Address + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubnetPrefixLength != nil { + in, out := &in.SubnetPrefixLength, &out.SubnetPrefixLength + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPAccessControlAllowInitParameters. +func (in *IPAccessControlAllowInitParameters) DeepCopy() *IPAccessControlAllowInitParameters { + if in == nil { + return nil + } + out := new(IPAccessControlAllowInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPAccessControlAllowObservation) DeepCopyInto(out *IPAccessControlAllowObservation) { *out = *in @@ -3904,6 +5620,36 @@ func (in *IPAccessControlAllowParameters) DeepCopy() *IPAccessControlAllowParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPAllowInitParameters) DeepCopyInto(out *IPAllowInitParameters) { + *out = *in + if in.Address != nil { + in, out := &in.Address, &out.Address + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubnetPrefixLength != nil { + in, out := &in.SubnetPrefixLength, &out.SubnetPrefixLength + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPAllowInitParameters. +func (in *IPAllowInitParameters) DeepCopy() *IPAllowInitParameters { + if in == nil { + return nil + } + out := new(IPAllowInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPAllowObservation) DeepCopyInto(out *IPAllowObservation) { *out = *in @@ -3964,6 +5710,37 @@ func (in *IPAllowParameters) DeepCopy() *IPAllowParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -4036,6 +5813,26 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InputAssetInitParameters) DeepCopyInto(out *InputAssetInitParameters) { + *out = *in + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InputAssetInitParameters. +func (in *InputAssetInitParameters) DeepCopy() *InputAssetInitParameters { + if in == nil { + return nil + } + out := new(InputAssetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InputAssetObservation) DeepCopyInto(out *InputAssetObservation) { *out = *in @@ -4096,6 +5893,43 @@ func (in *InputAssetParameters) DeepCopy() *InputAssetParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InputInitParameters) DeepCopyInto(out *InputInitParameters) { + *out = *in + if in.AccessToken != nil { + in, out := &in.AccessToken, &out.AccessToken + *out = new(string) + **out = **in + } + if in.IPAccessControlAllow != nil { + in, out := &in.IPAccessControlAllow, &out.IPAccessControlAllow + *out = make([]IPAccessControlAllowInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyFrameIntervalDuration != nil { + in, out := &in.KeyFrameIntervalDuration, &out.KeyFrameIntervalDuration + *out = new(string) + **out = **in + } + if in.StreamingProtocol != nil { + in, out := &in.StreamingProtocol, &out.StreamingProtocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InputInitParameters. +func (in *InputInitParameters) DeepCopy() *InputInitParameters { + if in == nil { + return nil + } + out := new(InputInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InputObservation) DeepCopyInto(out *InputObservation) { *out = *in @@ -4204,6 +6038,45 @@ func (in *Job) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *JobInitParameters) DeepCopyInto(out *JobInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.InputAsset != nil { + in, out := &in.InputAsset, &out.InputAsset + *out = make([]InputAssetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OutputAsset != nil { + in, out := &in.OutputAsset, &out.OutputAsset + *out = make([]OutputAssetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobInitParameters. +func (in *JobInitParameters) DeepCopy() *JobInitParameters { + if in == nil { + return nil + } + out := new(JobInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *JobList) DeepCopyInto(out *JobList) { *out = *in @@ -4384,6 +6257,7 @@ func (in *JobSpec) DeepCopyInto(out *JobSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobSpec. @@ -4414,10 +6288,10 @@ func (in *JobStatus) DeepCopy() *JobStatus { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *JpgImageLayerObservation) DeepCopyInto(out *JpgImageLayerObservation) { +func (in *JpgImageInitParameters) DeepCopyInto(out *JpgImageInitParameters) { *out = *in - if in.Height != nil { - in, out := &in.Height, &out.Height + if in.KeyFrameInterval != nil { + in, out := &in.KeyFrameInterval, &out.KeyFrameInterval *out = new(string) **out = **in } @@ -4426,10 +6300,107 @@ func (in *JpgImageLayerObservation) DeepCopyInto(out *JpgImageLayerObservation) *out = new(string) **out = **in } - if in.Quality != nil { - in, out := &in.Quality, &out.Quality - *out = new(float64) - **out = **in + if in.Layer != nil { + in, out := &in.Layer, &out.Layer + *out = make([]JpgImageLayerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Range != nil { + in, out := &in.Range, &out.Range + *out = new(string) + **out = **in + } + if in.SpriteColumn != nil { + in, out := &in.SpriteColumn, &out.SpriteColumn + *out = new(float64) + **out = **in + } + if in.Start != nil { + in, out := &in.Start, &out.Start + *out = new(string) + **out = **in + } + if in.Step != nil { + in, out := &in.Step, &out.Step + *out = new(string) + **out = **in + } + if in.StretchMode != nil { + in, out := &in.StretchMode, &out.StretchMode + *out = new(string) + **out = **in + } + if in.SyncMode != nil { + in, out := &in.SyncMode, &out.SyncMode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JpgImageInitParameters. +func (in *JpgImageInitParameters) DeepCopy() *JpgImageInitParameters { + if in == nil { + return nil + } + out := new(JpgImageInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *JpgImageLayerInitParameters) DeepCopyInto(out *JpgImageLayerInitParameters) { + *out = *in + if in.Height != nil { + in, out := &in.Height, &out.Height + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Quality != nil { + in, out := &in.Quality, &out.Quality + *out = new(float64) + **out = **in + } + if in.Width != nil { + in, out := &in.Width, &out.Width + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JpgImageLayerInitParameters. +func (in *JpgImageLayerInitParameters) DeepCopy() *JpgImageLayerInitParameters { + if in == nil { + return nil + } + out := new(JpgImageLayerInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *JpgImageLayerObservation) DeepCopyInto(out *JpgImageLayerObservation) { + *out = *in + if in.Height != nil { + in, out := &in.Height, &out.Height + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Quality != nil { + in, out := &in.Quality, &out.Quality + *out = new(float64) + **out = **in } if in.Width != nil { in, out := &in.Width, &out.Width @@ -4607,6 +6578,26 @@ func (in *JpgImageParameters) DeepCopy() *JpgImageParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *JpgInitParameters) DeepCopyInto(out *JpgInitParameters) { + *out = *in + if in.FilenamePattern != nil { + in, out := &in.FilenamePattern, &out.FilenamePattern + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JpgInitParameters. +func (in *JpgInitParameters) DeepCopy() *JpgInitParameters { + if in == nil { + return nil + } + out := new(JpgInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *JpgObservation) DeepCopyInto(out *JpgObservation) { *out = *in @@ -4647,6 +6638,37 @@ func (in *JpgParameters) DeepCopy() *JpgParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyDeliveryAccessControlInitParameters) DeepCopyInto(out *KeyDeliveryAccessControlInitParameters) { + *out = *in + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.IPAllowList != nil { + in, out := &in.IPAllowList, &out.IPAllowList + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyDeliveryAccessControlInitParameters. +func (in *KeyDeliveryAccessControlInitParameters) DeepCopy() *KeyDeliveryAccessControlInitParameters { + if in == nil { + return nil + } + out := new(KeyDeliveryAccessControlInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KeyDeliveryAccessControlObservation) DeepCopyInto(out *KeyDeliveryAccessControlObservation) { *out = *in @@ -4709,6 +6731,96 @@ func (in *KeyDeliveryAccessControlParameters) DeepCopy() *KeyDeliveryAccessContr return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LayerInitParameters) DeepCopyInto(out *LayerInitParameters) { + *out = *in + if in.AdaptiveBFrameEnabled != nil { + in, out := &in.AdaptiveBFrameEnabled, &out.AdaptiveBFrameEnabled + *out = new(bool) + **out = **in + } + if in.BFrames != nil { + in, out := &in.BFrames, &out.BFrames + *out = new(float64) + **out = **in + } + if in.Bitrate != nil { + in, out := &in.Bitrate, &out.Bitrate + *out = new(float64) + **out = **in + } + if in.BufferWindow != nil { + in, out := &in.BufferWindow, &out.BufferWindow + *out = new(string) + **out = **in + } + if in.Crf != nil { + in, out := &in.Crf, &out.Crf + *out = new(float64) + **out = **in + } + if in.EntropyMode != nil { + in, out := &in.EntropyMode, &out.EntropyMode + *out = new(string) + **out = **in + } + if in.FrameRate != nil { + in, out := &in.FrameRate, &out.FrameRate + *out = new(string) + **out = **in + } + if in.Height != nil { + in, out := &in.Height, &out.Height + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Level != nil { + in, out := &in.Level, &out.Level + *out = new(string) + **out = **in + } + if in.MaxBitrate != nil { + in, out := &in.MaxBitrate, &out.MaxBitrate + *out = new(float64) + **out = **in + } + if in.Profile != nil { + in, out := &in.Profile, &out.Profile + *out = new(string) + **out = **in + } + if in.ReferenceFrames != nil { + in, out := &in.ReferenceFrames, &out.ReferenceFrames + *out = new(float64) + **out = **in + } + if in.Slices != nil { + in, out := &in.Slices, &out.Slices + *out = new(float64) + **out = **in + } + if in.Width != nil { + in, out := &in.Width, &out.Width + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LayerInitParameters. +func (in *LayerInitParameters) DeepCopy() *LayerInitParameters { + if in == nil { + return nil + } + out := new(LayerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LayerObservation) DeepCopyInto(out *LayerObservation) { *out = *in @@ -4916,6 +7028,111 @@ func (in *LiveEvent) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LiveEventInitParameters) DeepCopyInto(out *LiveEventInitParameters) { + *out = *in + if in.AutoStartEnabled != nil { + in, out := &in.AutoStartEnabled, &out.AutoStartEnabled + *out = new(bool) + **out = **in + } + if in.CrossSiteAccessPolicy != nil { + in, out := &in.CrossSiteAccessPolicy, &out.CrossSiteAccessPolicy + *out = make([]CrossSiteAccessPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = make([]EncodingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HostNamePrefix != nil { + in, out := &in.HostNamePrefix, &out.HostNamePrefix + *out = new(string) + **out = **in + } + if in.Input != nil { + in, out := &in.Input, &out.Input + *out = make([]InputInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Preview != nil { + in, out := &in.Preview, &out.Preview + *out = make([]PreviewInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StreamOptions != nil { + in, out := &in.StreamOptions, &out.StreamOptions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TranscriptionLanguages != nil { + in, out := &in.TranscriptionLanguages, &out.TranscriptionLanguages + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.UseStaticHostName != nil { + in, out := &in.UseStaticHostName, &out.UseStaticHostName + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveEventInitParameters. +func (in *LiveEventInitParameters) DeepCopy() *LiveEventInitParameters { + if in == nil { + return nil + } + out := new(LiveEventInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LiveEventList) DeepCopyInto(out *LiveEventList) { *out = *in @@ -5056,45 +7273,90 @@ func (in *LiveEventObservation) DeepCopyInto(out *LiveEventObservation) { *out = new(bool) **out = **in } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveEventObservation. -func (in *LiveEventObservation) DeepCopy() *LiveEventObservation { - if in == nil { - return nil +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveEventObservation. +func (in *LiveEventObservation) DeepCopy() *LiveEventObservation { + if in == nil { + return nil + } + out := new(LiveEventObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LiveEventOutput) DeepCopyInto(out *LiveEventOutput) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveEventOutput. +func (in *LiveEventOutput) DeepCopy() *LiveEventOutput { + if in == nil { + return nil + } + out := new(LiveEventOutput) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LiveEventOutput) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LiveEventOutputInitParameters) DeepCopyInto(out *LiveEventOutputInitParameters) { + *out = *in + if in.ArchiveWindowDuration != nil { + in, out := &in.ArchiveWindowDuration, &out.ArchiveWindowDuration + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.HlsFragmentsPerTSSegment != nil { + in, out := &in.HlsFragmentsPerTSSegment, &out.HlsFragmentsPerTSSegment + *out = new(float64) + **out = **in + } + if in.ManifestName != nil { + in, out := &in.ManifestName, &out.ManifestName + *out = new(string) + **out = **in + } + if in.OutputSnapTimeInSeconds != nil { + in, out := &in.OutputSnapTimeInSeconds, &out.OutputSnapTimeInSeconds + *out = new(float64) + **out = **in + } + if in.RewindWindowDuration != nil { + in, out := &in.RewindWindowDuration, &out.RewindWindowDuration + *out = new(string) + **out = **in } - out := new(LiveEventObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LiveEventOutput) DeepCopyInto(out *LiveEventOutput) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveEventOutput. -func (in *LiveEventOutput) DeepCopy() *LiveEventOutput { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveEventOutputInitParameters. +func (in *LiveEventOutputInitParameters) DeepCopy() *LiveEventOutputInitParameters { if in == nil { return nil } - out := new(LiveEventOutput) + out := new(LiveEventOutputInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *LiveEventOutput) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LiveEventOutputList) DeepCopyInto(out *LiveEventOutputList) { *out = *in @@ -5267,6 +7529,7 @@ func (in *LiveEventOutputSpec) DeepCopyInto(out *LiveEventOutputSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveEventOutputSpec. @@ -5436,6 +7699,7 @@ func (in *LiveEventSpec) DeepCopyInto(out *LiveEventSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveEventSpec. @@ -5465,6 +7729,31 @@ func (in *LiveEventStatus) DeepCopy() *LiveEventStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedIdentityInitParameters) DeepCopyInto(out *ManagedIdentityInitParameters) { + *out = *in + if in.UseSystemAssignedIdentity != nil { + in, out := &in.UseSystemAssignedIdentity, &out.UseSystemAssignedIdentity + *out = new(bool) + **out = **in + } + if in.UserAssignedIdentityID != nil { + in, out := &in.UserAssignedIdentityID, &out.UserAssignedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedIdentityInitParameters. +func (in *ManagedIdentityInitParameters) DeepCopy() *ManagedIdentityInitParameters { + if in == nil { + return nil + } + out := new(ManagedIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedIdentityObservation) DeepCopyInto(out *ManagedIdentityObservation) { *out = *in @@ -5515,6 +7804,33 @@ func (in *ManagedIdentityParameters) DeepCopy() *ManagedIdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Mp4InitParameters) DeepCopyInto(out *Mp4InitParameters) { + *out = *in + if in.FilenamePattern != nil { + in, out := &in.FilenamePattern, &out.FilenamePattern + *out = new(string) + **out = **in + } + if in.OutputFile != nil { + in, out := &in.OutputFile, &out.OutputFile + *out = make([]OutputFileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mp4InitParameters. +func (in *Mp4InitParameters) DeepCopy() *Mp4InitParameters { + if in == nil { + return nil + } + out := new(Mp4InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Mp4Observation) DeepCopyInto(out *Mp4Observation) { *out = *in @@ -5569,6 +7885,41 @@ func (in *Mp4Parameters) DeepCopy() *Mp4Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NoEncryptionEnabledProtocolsInitParameters) DeepCopyInto(out *NoEncryptionEnabledProtocolsInitParameters) { + *out = *in + if in.Dash != nil { + in, out := &in.Dash, &out.Dash + *out = new(bool) + **out = **in + } + if in.Download != nil { + in, out := &in.Download, &out.Download + *out = new(bool) + **out = **in + } + if in.Hls != nil { + in, out := &in.Hls, &out.Hls + *out = new(bool) + **out = **in + } + if in.SmoothStreaming != nil { + in, out := &in.SmoothStreaming, &out.SmoothStreaming + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NoEncryptionEnabledProtocolsInitParameters. +func (in *NoEncryptionEnabledProtocolsInitParameters) DeepCopy() *NoEncryptionEnabledProtocolsInitParameters { + if in == nil { + return nil + } + out := new(NoEncryptionEnabledProtocolsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NoEncryptionEnabledProtocolsObservation) DeepCopyInto(out *NoEncryptionEnabledProtocolsObservation) { *out = *in @@ -5639,6 +7990,31 @@ func (in *NoEncryptionEnabledProtocolsParameters) DeepCopy() *NoEncryptionEnable return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OfflineRentalConfigurationInitParameters) DeepCopyInto(out *OfflineRentalConfigurationInitParameters) { + *out = *in + if in.PlaybackDurationSeconds != nil { + in, out := &in.PlaybackDurationSeconds, &out.PlaybackDurationSeconds + *out = new(float64) + **out = **in + } + if in.StorageDurationSeconds != nil { + in, out := &in.StorageDurationSeconds, &out.StorageDurationSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OfflineRentalConfigurationInitParameters. +func (in *OfflineRentalConfigurationInitParameters) DeepCopy() *OfflineRentalConfigurationInitParameters { + if in == nil { + return nil + } + out := new(OfflineRentalConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OfflineRentalConfigurationObservation) DeepCopyInto(out *OfflineRentalConfigurationObservation) { *out = *in @@ -5689,6 +8065,26 @@ func (in *OfflineRentalConfigurationParameters) DeepCopy() *OfflineRentalConfigu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputAssetInitParameters) DeepCopyInto(out *OutputAssetInitParameters) { + *out = *in + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputAssetInitParameters. +func (in *OutputAssetInitParameters) DeepCopy() *OutputAssetInitParameters { + if in == nil { + return nil + } + out := new(OutputAssetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputAssetObservation) DeepCopyInto(out *OutputAssetObservation) { *out = *in @@ -5749,6 +8145,32 @@ func (in *OutputAssetParameters) DeepCopy() *OutputAssetParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputFileInitParameters) DeepCopyInto(out *OutputFileInitParameters) { + *out = *in + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputFileInitParameters. +func (in *OutputFileInitParameters) DeepCopy() *OutputFileInitParameters { + if in == nil { + return nil + } + out := new(OutputFileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputFileObservation) DeepCopyInto(out *OutputFileObservation) { *out = *in @@ -5801,6 +8223,66 @@ func (in *OutputFileParameters) DeepCopy() *OutputFileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputInitParameters) DeepCopyInto(out *OutputInitParameters) { + *out = *in + if in.AudioAnalyzerPreset != nil { + in, out := &in.AudioAnalyzerPreset, &out.AudioAnalyzerPreset + *out = make([]AudioAnalyzerPresetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BuiltinPreset != nil { + in, out := &in.BuiltinPreset, &out.BuiltinPreset + *out = make([]BuiltinPresetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomPreset != nil { + in, out := &in.CustomPreset, &out.CustomPreset + *out = make([]CustomPresetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FaceDetectorPreset != nil { + in, out := &in.FaceDetectorPreset, &out.FaceDetectorPreset + *out = make([]FaceDetectorPresetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.OnErrorAction != nil { + in, out := &in.OnErrorAction, &out.OnErrorAction + *out = new(string) + **out = **in + } + if in.RelativePriority != nil { + in, out := &in.RelativePriority, &out.RelativePriority + *out = new(string) + **out = **in + } + if in.VideoAnalyzerPreset != nil { + in, out := &in.VideoAnalyzerPreset, &out.VideoAnalyzerPreset + *out = make([]VideoAnalyzerPresetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputInitParameters. +func (in *OutputInitParameters) DeepCopy() *OutputInitParameters { + if in == nil { + return nil + } + out := new(OutputInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputObservation) DeepCopyInto(out *OutputObservation) { *out = *in @@ -5892,31 +8374,60 @@ func (in *OutputParameters) DeepCopyInto(out *OutputParameters) { (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.OnErrorAction != nil { - in, out := &in.OnErrorAction, &out.OnErrorAction - *out = new(string) - **out = **in - } - if in.RelativePriority != nil { - in, out := &in.RelativePriority, &out.RelativePriority - *out = new(string) - **out = **in - } - if in.VideoAnalyzerPreset != nil { - in, out := &in.VideoAnalyzerPreset, &out.VideoAnalyzerPreset - *out = make([]VideoAnalyzerPresetParameters, len(*in)) + if in.OnErrorAction != nil { + in, out := &in.OnErrorAction, &out.OnErrorAction + *out = new(string) + **out = **in + } + if in.RelativePriority != nil { + in, out := &in.RelativePriority, &out.RelativePriority + *out = new(string) + **out = **in + } + if in.VideoAnalyzerPreset != nil { + in, out := &in.VideoAnalyzerPreset, &out.VideoAnalyzerPreset + *out = make([]VideoAnalyzerPresetParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputParameters. +func (in *OutputParameters) DeepCopy() *OutputParameters { + if in == nil { + return nil + } + out := new(OutputParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OverlayInitParameters) DeepCopyInto(out *OverlayInitParameters) { + *out = *in + if in.Audio != nil { + in, out := &in.Audio, &out.Audio + *out = make([]AudioInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Video != nil { + in, out := &in.Video, &out.Video + *out = make([]VideoInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputParameters. -func (in *OutputParameters) DeepCopy() *OutputParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OverlayInitParameters. +func (in *OverlayInitParameters) DeepCopy() *OverlayInitParameters { if in == nil { return nil } - out := new(OutputParameters) + out := new(OverlayInitParameters) in.DeepCopyInto(out) return out } @@ -5979,6 +8490,88 @@ func (in *OverlayParameters) DeepCopy() *OverlayParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PlayRightInitParameters) DeepCopyInto(out *PlayRightInitParameters) { + *out = *in + if in.AgcAndColorStripeRestriction != nil { + in, out := &in.AgcAndColorStripeRestriction, &out.AgcAndColorStripeRestriction + *out = new(float64) + **out = **in + } + if in.AllowPassingVideoContentToUnknownOutput != nil { + in, out := &in.AllowPassingVideoContentToUnknownOutput, &out.AllowPassingVideoContentToUnknownOutput + *out = new(string) + **out = **in + } + if in.AnalogVideoOpl != nil { + in, out := &in.AnalogVideoOpl, &out.AnalogVideoOpl + *out = new(float64) + **out = **in + } + if in.CompressedDigitalAudioOpl != nil { + in, out := &in.CompressedDigitalAudioOpl, &out.CompressedDigitalAudioOpl + *out = new(float64) + **out = **in + } + if in.CompressedDigitalVideoOpl != nil { + in, out := &in.CompressedDigitalVideoOpl, &out.CompressedDigitalVideoOpl + *out = new(float64) + **out = **in + } + if in.DigitalVideoOnlyContentRestriction != nil { + in, out := &in.DigitalVideoOnlyContentRestriction, &out.DigitalVideoOnlyContentRestriction + *out = new(bool) + **out = **in + } + if in.ExplicitAnalogTelevisionOutputRestriction != nil { + in, out := &in.ExplicitAnalogTelevisionOutputRestriction, &out.ExplicitAnalogTelevisionOutputRestriction + *out = make([]ExplicitAnalogTelevisionOutputRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FirstPlayExpiration != nil { + in, out := &in.FirstPlayExpiration, &out.FirstPlayExpiration + *out = new(string) + **out = **in + } + if in.ImageConstraintForAnalogComponentVideoRestriction != nil { + in, out := &in.ImageConstraintForAnalogComponentVideoRestriction, &out.ImageConstraintForAnalogComponentVideoRestriction + *out = new(bool) + **out = **in + } + if in.ImageConstraintForAnalogComputerMonitorRestriction != nil { + in, out := &in.ImageConstraintForAnalogComputerMonitorRestriction, &out.ImageConstraintForAnalogComputerMonitorRestriction + *out = new(bool) + **out = **in + } + if in.ScmsRestriction != nil { + in, out := &in.ScmsRestriction, &out.ScmsRestriction + *out = new(float64) + **out = **in + } + if in.UncompressedDigitalAudioOpl != nil { + in, out := &in.UncompressedDigitalAudioOpl, &out.UncompressedDigitalAudioOpl + *out = new(float64) + **out = **in + } + if in.UncompressedDigitalVideoOpl != nil { + in, out := &in.UncompressedDigitalVideoOpl, &out.UncompressedDigitalVideoOpl + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlayRightInitParameters. +func (in *PlayRightInitParameters) DeepCopy() *PlayRightInitParameters { + if in == nil { + return nil + } + out := new(PlayRightInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PlayRightObservation) DeepCopyInto(out *PlayRightObservation) { *out = *in @@ -6143,6 +8736,78 @@ func (in *PlayRightParameters) DeepCopy() *PlayRightParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PlayreadyConfigurationLicenseInitParameters) DeepCopyInto(out *PlayreadyConfigurationLicenseInitParameters) { + *out = *in + if in.AllowTestDevices != nil { + in, out := &in.AllowTestDevices, &out.AllowTestDevices + *out = new(bool) + **out = **in + } + if in.BeginDate != nil { + in, out := &in.BeginDate, &out.BeginDate + *out = new(string) + **out = **in + } + if in.ContentKeyLocationFromHeaderEnabled != nil { + in, out := &in.ContentKeyLocationFromHeaderEnabled, &out.ContentKeyLocationFromHeaderEnabled + *out = new(bool) + **out = **in + } + if in.ContentKeyLocationFromKeyID != nil { + in, out := &in.ContentKeyLocationFromKeyID, &out.ContentKeyLocationFromKeyID + *out = new(string) + **out = **in + } + if in.ContentType != nil { + in, out := &in.ContentType, &out.ContentType + *out = new(string) + **out = **in + } + if in.ExpirationDate != nil { + in, out := &in.ExpirationDate, &out.ExpirationDate + *out = new(string) + **out = **in + } + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in + } + if in.PlayRight != nil { + in, out := &in.PlayRight, &out.PlayRight + *out = make([]PlayRightInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RelativeBeginDate != nil { + in, out := &in.RelativeBeginDate, &out.RelativeBeginDate + *out = new(string) + **out = **in + } + if in.RelativeExpirationDate != nil { + in, out := &in.RelativeExpirationDate, &out.RelativeExpirationDate + *out = new(string) + **out = **in + } + if in.SecurityLevel != nil { + in, out := &in.SecurityLevel, &out.SecurityLevel + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlayreadyConfigurationLicenseInitParameters. +func (in *PlayreadyConfigurationLicenseInitParameters) DeepCopy() *PlayreadyConfigurationLicenseInitParameters { + if in == nil { + return nil + } + out := new(PlayreadyConfigurationLicenseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PlayreadyConfigurationLicenseObservation) DeepCopyInto(out *PlayreadyConfigurationLicenseObservation) { *out = *in @@ -6292,6 +8957,93 @@ func (in *PlayreadyConfigurationLicenseParameters) DeepCopy() *PlayreadyConfigur return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PngImageInitParameters) DeepCopyInto(out *PngImageInitParameters) { + *out = *in + if in.KeyFrameInterval != nil { + in, out := &in.KeyFrameInterval, &out.KeyFrameInterval + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Layer != nil { + in, out := &in.Layer, &out.Layer + *out = make([]PngImageLayerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Range != nil { + in, out := &in.Range, &out.Range + *out = new(string) + **out = **in + } + if in.Start != nil { + in, out := &in.Start, &out.Start + *out = new(string) + **out = **in + } + if in.Step != nil { + in, out := &in.Step, &out.Step + *out = new(string) + **out = **in + } + if in.StretchMode != nil { + in, out := &in.StretchMode, &out.StretchMode + *out = new(string) + **out = **in + } + if in.SyncMode != nil { + in, out := &in.SyncMode, &out.SyncMode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PngImageInitParameters. +func (in *PngImageInitParameters) DeepCopy() *PngImageInitParameters { + if in == nil { + return nil + } + out := new(PngImageInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PngImageLayerInitParameters) DeepCopyInto(out *PngImageLayerInitParameters) { + *out = *in + if in.Height != nil { + in, out := &in.Height, &out.Height + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.Width != nil { + in, out := &in.Width, &out.Width + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PngImageLayerInitParameters. +func (in *PngImageLayerInitParameters) DeepCopy() *PngImageLayerInitParameters { + if in == nil { + return nil + } + out := new(PngImageLayerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PngImageLayerObservation) DeepCopyInto(out *PngImageLayerObservation) { *out = *in @@ -6456,12 +9208,32 @@ func (in *PngImageParameters) DeepCopyInto(out *PngImageParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PngImageParameters. -func (in *PngImageParameters) DeepCopy() *PngImageParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PngImageParameters. +func (in *PngImageParameters) DeepCopy() *PngImageParameters { + if in == nil { + return nil + } + out := new(PngImageParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PngInitParameters) DeepCopyInto(out *PngInitParameters) { + *out = *in + if in.FilenamePattern != nil { + in, out := &in.FilenamePattern, &out.FilenamePattern + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PngInitParameters. +func (in *PngInitParameters) DeepCopy() *PngInitParameters { if in == nil { return nil } - out := new(PngImageParameters) + out := new(PngInitParameters) in.DeepCopyInto(out) return out } @@ -6506,6 +9278,67 @@ func (in *PngParameters) DeepCopy() *PngParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyOptionInitParameters) DeepCopyInto(out *PolicyOptionInitParameters) { + *out = *in + if in.ClearKeyConfigurationEnabled != nil { + in, out := &in.ClearKeyConfigurationEnabled, &out.ClearKeyConfigurationEnabled + *out = new(bool) + **out = **in + } + if in.FairplayConfiguration != nil { + in, out := &in.FairplayConfiguration, &out.FairplayConfiguration + *out = make([]FairplayConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.OpenRestrictionEnabled != nil { + in, out := &in.OpenRestrictionEnabled, &out.OpenRestrictionEnabled + *out = new(bool) + **out = **in + } + if in.PlayreadyConfigurationLicense != nil { + in, out := &in.PlayreadyConfigurationLicense, &out.PlayreadyConfigurationLicense + *out = make([]PlayreadyConfigurationLicenseInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PlayreadyResponseCustomData != nil { + in, out := &in.PlayreadyResponseCustomData, &out.PlayreadyResponseCustomData + *out = new(string) + **out = **in + } + if in.TokenRestriction != nil { + in, out := &in.TokenRestriction, &out.TokenRestriction + *out = make([]TokenRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WidevineConfigurationTemplate != nil { + in, out := &in.WidevineConfigurationTemplate, &out.WidevineConfigurationTemplate + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyOptionInitParameters. +func (in *PolicyOptionInitParameters) DeepCopy() *PolicyOptionInitParameters { + if in == nil { + return nil + } + out := new(PolicyOptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PolicyOptionObservation) DeepCopyInto(out *PolicyOptionObservation) { *out = *in @@ -6628,6 +9461,41 @@ func (in *PolicyOptionParameters) DeepCopy() *PolicyOptionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PositionInitParameters) DeepCopyInto(out *PositionInitParameters) { + *out = *in + if in.Height != nil { + in, out := &in.Height, &out.Height + *out = new(string) + **out = **in + } + if in.Left != nil { + in, out := &in.Left, &out.Left + *out = new(string) + **out = **in + } + if in.Top != nil { + in, out := &in.Top, &out.Top + *out = new(string) + **out = **in + } + if in.Width != nil { + in, out := &in.Width, &out.Width + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PositionInitParameters. +func (in *PositionInitParameters) DeepCopy() *PositionInitParameters { + if in == nil { + return nil + } + out := new(PositionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PositionObservation) DeepCopyInto(out *PositionObservation) { *out = *in @@ -6698,6 +9566,51 @@ func (in *PositionParameters) DeepCopy() *PositionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PresentationTimeRangeInitParameters) DeepCopyInto(out *PresentationTimeRangeInitParameters) { + *out = *in + if in.EndInUnits != nil { + in, out := &in.EndInUnits, &out.EndInUnits + *out = new(float64) + **out = **in + } + if in.ForceEnd != nil { + in, out := &in.ForceEnd, &out.ForceEnd + *out = new(bool) + **out = **in + } + if in.LiveBackoffInUnits != nil { + in, out := &in.LiveBackoffInUnits, &out.LiveBackoffInUnits + *out = new(float64) + **out = **in + } + if in.PresentationWindowInUnits != nil { + in, out := &in.PresentationWindowInUnits, &out.PresentationWindowInUnits + *out = new(float64) + **out = **in + } + if in.StartInUnits != nil { + in, out := &in.StartInUnits, &out.StartInUnits + *out = new(float64) + **out = **in + } + if in.UnitTimescaleInMiliseconds != nil { + in, out := &in.UnitTimescaleInMiliseconds, &out.UnitTimescaleInMiliseconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PresentationTimeRangeInitParameters. +func (in *PresentationTimeRangeInitParameters) DeepCopy() *PresentationTimeRangeInitParameters { + if in == nil { + return nil + } + out := new(PresentationTimeRangeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PresentationTimeRangeObservation) DeepCopyInto(out *PresentationTimeRangeObservation) { *out = *in @@ -6788,6 +9701,61 @@ func (in *PresentationTimeRangeParameters) DeepCopy() *PresentationTimeRangePara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PresetConfigurationInitParameters) DeepCopyInto(out *PresetConfigurationInitParameters) { + *out = *in + if in.Complexity != nil { + in, out := &in.Complexity, &out.Complexity + *out = new(string) + **out = **in + } + if in.InterleaveOutput != nil { + in, out := &in.InterleaveOutput, &out.InterleaveOutput + *out = new(string) + **out = **in + } + if in.KeyFrameIntervalInSeconds != nil { + in, out := &in.KeyFrameIntervalInSeconds, &out.KeyFrameIntervalInSeconds + *out = new(float64) + **out = **in + } + if in.MaxBitrateBps != nil { + in, out := &in.MaxBitrateBps, &out.MaxBitrateBps + *out = new(float64) + **out = **in + } + if in.MaxHeight != nil { + in, out := &in.MaxHeight, &out.MaxHeight + *out = new(float64) + **out = **in + } + if in.MaxLayers != nil { + in, out := &in.MaxLayers, &out.MaxLayers + *out = new(float64) + **out = **in + } + if in.MinBitrateBps != nil { + in, out := &in.MinBitrateBps, &out.MinBitrateBps + *out = new(float64) + **out = **in + } + if in.MinHeight != nil { + in, out := &in.MinHeight, &out.MinHeight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PresetConfigurationInitParameters. +func (in *PresetConfigurationInitParameters) DeepCopy() *PresetConfigurationInitParameters { + if in == nil { + return nil + } + out := new(PresetConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PresetConfigurationObservation) DeepCopyInto(out *PresetConfigurationObservation) { *out = *in @@ -6898,6 +9866,21 @@ func (in *PresetConfigurationParameters) DeepCopy() *PresetConfigurationParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PreviewEndpointInitParameters) DeepCopyInto(out *PreviewEndpointInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreviewEndpointInitParameters. +func (in *PreviewEndpointInitParameters) DeepCopy() *PreviewEndpointInitParameters { + if in == nil { + return nil + } + out := new(PreviewEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PreviewEndpointObservation) DeepCopyInto(out *PreviewEndpointObservation) { *out = *in @@ -6938,6 +9921,36 @@ func (in *PreviewEndpointParameters) DeepCopy() *PreviewEndpointParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PreviewIPAccessControlAllowInitParameters) DeepCopyInto(out *PreviewIPAccessControlAllowInitParameters) { + *out = *in + if in.Address != nil { + in, out := &in.Address, &out.Address + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubnetPrefixLength != nil { + in, out := &in.SubnetPrefixLength, &out.SubnetPrefixLength + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreviewIPAccessControlAllowInitParameters. +func (in *PreviewIPAccessControlAllowInitParameters) DeepCopy() *PreviewIPAccessControlAllowInitParameters { + if in == nil { + return nil + } + out := new(PreviewIPAccessControlAllowInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PreviewIPAccessControlAllowObservation) DeepCopyInto(out *PreviewIPAccessControlAllowObservation) { *out = *in @@ -6981,19 +9994,56 @@ func (in *PreviewIPAccessControlAllowParameters) DeepCopyInto(out *PreviewIPAcce *out = new(string) **out = **in } - if in.SubnetPrefixLength != nil { - in, out := &in.SubnetPrefixLength, &out.SubnetPrefixLength - *out = new(float64) + if in.SubnetPrefixLength != nil { + in, out := &in.SubnetPrefixLength, &out.SubnetPrefixLength + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreviewIPAccessControlAllowParameters. +func (in *PreviewIPAccessControlAllowParameters) DeepCopy() *PreviewIPAccessControlAllowParameters { + if in == nil { + return nil + } + out := new(PreviewIPAccessControlAllowParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PreviewInitParameters) DeepCopyInto(out *PreviewInitParameters) { + *out = *in + if in.AlternativeMediaID != nil { + in, out := &in.AlternativeMediaID, &out.AlternativeMediaID + *out = new(string) + **out = **in + } + if in.IPAccessControlAllow != nil { + in, out := &in.IPAccessControlAllow, &out.IPAccessControlAllow + *out = make([]PreviewIPAccessControlAllowInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PreviewLocator != nil { + in, out := &in.PreviewLocator, &out.PreviewLocator + *out = new(string) + **out = **in + } + if in.StreamingPolicyName != nil { + in, out := &in.StreamingPolicyName, &out.StreamingPolicyName + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreviewIPAccessControlAllowParameters. -func (in *PreviewIPAccessControlAllowParameters) DeepCopy() *PreviewIPAccessControlAllowParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreviewInitParameters. +func (in *PreviewInitParameters) DeepCopy() *PreviewInitParameters { if in == nil { return nil } - out := new(PreviewIPAccessControlAllowParameters) + out := new(PreviewInitParameters) in.DeepCopyInto(out) return out } @@ -7079,6 +10129,31 @@ func (in *PreviewParameters) DeepCopy() *PreviewParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequiredClaimInitParameters) DeepCopyInto(out *RequiredClaimInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequiredClaimInitParameters. +func (in *RequiredClaimInitParameters) DeepCopy() *RequiredClaimInitParameters { + if in == nil { + return nil + } + out := new(RequiredClaimInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RequiredClaimObservation) DeepCopyInto(out *RequiredClaimObservation) { *out = *in @@ -7183,6 +10258,40 @@ func (in *ServicesAccountFilter) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicesAccountFilterInitParameters) DeepCopyInto(out *ServicesAccountFilterInitParameters) { + *out = *in + if in.FirstQualityBitrate != nil { + in, out := &in.FirstQualityBitrate, &out.FirstQualityBitrate + *out = new(float64) + **out = **in + } + if in.PresentationTimeRange != nil { + in, out := &in.PresentationTimeRange, &out.PresentationTimeRange + *out = make([]ServicesAccountFilterPresentationTimeRangeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TrackSelection != nil { + in, out := &in.TrackSelection, &out.TrackSelection + *out = make([]ServicesAccountFilterTrackSelectionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicesAccountFilterInitParameters. +func (in *ServicesAccountFilterInitParameters) DeepCopy() *ServicesAccountFilterInitParameters { + if in == nil { + return nil + } + out := new(ServicesAccountFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServicesAccountFilterList) DeepCopyInto(out *ServicesAccountFilterList) { *out = *in @@ -7328,6 +10437,51 @@ func (in *ServicesAccountFilterParameters) DeepCopy() *ServicesAccountFilterPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicesAccountFilterPresentationTimeRangeInitParameters) DeepCopyInto(out *ServicesAccountFilterPresentationTimeRangeInitParameters) { + *out = *in + if in.EndInUnits != nil { + in, out := &in.EndInUnits, &out.EndInUnits + *out = new(float64) + **out = **in + } + if in.ForceEnd != nil { + in, out := &in.ForceEnd, &out.ForceEnd + *out = new(bool) + **out = **in + } + if in.LiveBackoffInUnits != nil { + in, out := &in.LiveBackoffInUnits, &out.LiveBackoffInUnits + *out = new(float64) + **out = **in + } + if in.PresentationWindowInUnits != nil { + in, out := &in.PresentationWindowInUnits, &out.PresentationWindowInUnits + *out = new(float64) + **out = **in + } + if in.StartInUnits != nil { + in, out := &in.StartInUnits, &out.StartInUnits + *out = new(float64) + **out = **in + } + if in.UnitTimescaleInMilliseconds != nil { + in, out := &in.UnitTimescaleInMilliseconds, &out.UnitTimescaleInMilliseconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicesAccountFilterPresentationTimeRangeInitParameters. +func (in *ServicesAccountFilterPresentationTimeRangeInitParameters) DeepCopy() *ServicesAccountFilterPresentationTimeRangeInitParameters { + if in == nil { + return nil + } + out := new(ServicesAccountFilterPresentationTimeRangeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServicesAccountFilterPresentationTimeRangeObservation) DeepCopyInto(out *ServicesAccountFilterPresentationTimeRangeObservation) { *out = *in @@ -7423,6 +10577,7 @@ func (in *ServicesAccountFilterSpec) DeepCopyInto(out *ServicesAccountFilterSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicesAccountFilterSpec. @@ -7452,6 +10607,28 @@ func (in *ServicesAccountFilterStatus) DeepCopy() *ServicesAccountFilterStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicesAccountFilterTrackSelectionInitParameters) DeepCopyInto(out *ServicesAccountFilterTrackSelectionInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]TrackSelectionConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicesAccountFilterTrackSelectionInitParameters. +func (in *ServicesAccountFilterTrackSelectionInitParameters) DeepCopy() *ServicesAccountFilterTrackSelectionInitParameters { + if in == nil { + return nil + } + out := new(ServicesAccountFilterTrackSelectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServicesAccountFilterTrackSelectionObservation) DeepCopyInto(out *ServicesAccountFilterTrackSelectionObservation) { *out = *in @@ -7496,6 +10673,79 @@ func (in *ServicesAccountFilterTrackSelectionParameters) DeepCopy() *ServicesAcc return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicesAccountInitParameters) DeepCopyInto(out *ServicesAccountInitParameters) { + *out = *in + if in.Encryption != nil { + in, out := &in.Encryption, &out.Encryption + *out = make([]EncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyDeliveryAccessControl != nil { + in, out := &in.KeyDeliveryAccessControl, &out.KeyDeliveryAccessControl + *out = make([]KeyDeliveryAccessControlInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]StorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAuthenticationType != nil { + in, out := &in.StorageAuthenticationType, &out.StorageAuthenticationType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicesAccountInitParameters. +func (in *ServicesAccountInitParameters) DeepCopy() *ServicesAccountInitParameters { + if in == nil { + return nil + } + out := new(ServicesAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServicesAccountList) DeepCopyInto(out *ServicesAccountList) { *out = *in @@ -7704,6 +10954,7 @@ func (in *ServicesAccountSpec) DeepCopyInto(out *ServicesAccountSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicesAccountSpec. @@ -7733,6 +10984,21 @@ func (in *ServicesAccountStatus) DeepCopy() *ServicesAccountStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuInitParameters) DeepCopyInto(out *SkuInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuInitParameters. +func (in *SkuInitParameters) DeepCopy() *SkuInitParameters { + if in == nil { + return nil + } + out := new(SkuInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SkuObservation) DeepCopyInto(out *SkuObservation) { *out = *in @@ -7773,6 +11039,58 @@ func (in *SkuParameters) DeepCopy() *SkuParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageAccountInitParameters) DeepCopyInto(out *StorageAccountInitParameters) { + *out = *in + if in.IsPrimary != nil { + in, out := &in.IsPrimary, &out.IsPrimary + *out = new(bool) + **out = **in + } + if in.ManagedIdentity != nil { + in, out := &in.ManagedIdentity, &out.ManagedIdentity + *out = make([]StorageAccountManagedIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageAccountInitParameters. +func (in *StorageAccountInitParameters) DeepCopy() *StorageAccountInitParameters { + if in == nil { + return nil + } + out := new(StorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageAccountManagedIdentityInitParameters) DeepCopyInto(out *StorageAccountManagedIdentityInitParameters) { + *out = *in + if in.UseSystemAssignedIdentity != nil { + in, out := &in.UseSystemAssignedIdentity, &out.UseSystemAssignedIdentity + *out = new(bool) + **out = **in + } + if in.UserAssignedIdentityID != nil { + in, out := &in.UserAssignedIdentityID, &out.UserAssignedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageAccountManagedIdentityInitParameters. +func (in *StorageAccountManagedIdentityInitParameters) DeepCopy() *StorageAccountManagedIdentityInitParameters { + if in == nil { + return nil + } + out := new(StorageAccountManagedIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageAccountManagedIdentityObservation) DeepCopyInto(out *StorageAccountManagedIdentityObservation) { *out = *in @@ -7921,7 +11239,32 @@ func (in *StreamingEndpoint) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } - return nil + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamingEndpointCrossSiteAccessPolicyInitParameters) DeepCopyInto(out *StreamingEndpointCrossSiteAccessPolicyInitParameters) { + *out = *in + if in.ClientAccessPolicy != nil { + in, out := &in.ClientAccessPolicy, &out.ClientAccessPolicy + *out = new(string) + **out = **in + } + if in.CrossDomainPolicy != nil { + in, out := &in.CrossDomainPolicy, &out.CrossDomainPolicy + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamingEndpointCrossSiteAccessPolicyInitParameters. +func (in *StreamingEndpointCrossSiteAccessPolicyInitParameters) DeepCopy() *StreamingEndpointCrossSiteAccessPolicyInitParameters { + if in == nil { + return nil + } + out := new(StreamingEndpointCrossSiteAccessPolicyInitParameters) + in.DeepCopyInto(out) + return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. @@ -7974,6 +11317,101 @@ func (in *StreamingEndpointCrossSiteAccessPolicyParameters) DeepCopy() *Streamin return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamingEndpointInitParameters) DeepCopyInto(out *StreamingEndpointInitParameters) { + *out = *in + if in.AccessControl != nil { + in, out := &in.AccessControl, &out.AccessControl + *out = make([]AccessControlInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoStartEnabled != nil { + in, out := &in.AutoStartEnabled, &out.AutoStartEnabled + *out = new(bool) + **out = **in + } + if in.CdnEnabled != nil { + in, out := &in.CdnEnabled, &out.CdnEnabled + *out = new(bool) + **out = **in + } + if in.CdnProfile != nil { + in, out := &in.CdnProfile, &out.CdnProfile + *out = new(string) + **out = **in + } + if in.CdnProvider != nil { + in, out := &in.CdnProvider, &out.CdnProvider + *out = new(string) + **out = **in + } + if in.CrossSiteAccessPolicy != nil { + in, out := &in.CrossSiteAccessPolicy, &out.CrossSiteAccessPolicy + *out = make([]StreamingEndpointCrossSiteAccessPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomHostNames != nil { + in, out := &in.CustomHostNames, &out.CustomHostNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaxCacheAgeSeconds != nil { + in, out := &in.MaxCacheAgeSeconds, &out.MaxCacheAgeSeconds + *out = new(float64) + **out = **in + } + if in.ScaleUnits != nil { + in, out := &in.ScaleUnits, &out.ScaleUnits + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamingEndpointInitParameters. +func (in *StreamingEndpointInitParameters) DeepCopy() *StreamingEndpointInitParameters { + if in == nil { + return nil + } + out := new(StreamingEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StreamingEndpointList) DeepCopyInto(out *StreamingEndpointList) { *out = *in @@ -8258,6 +11696,7 @@ func (in *StreamingEndpointSpec) DeepCopyInto(out *StreamingEndpointSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamingEndpointSpec. @@ -8314,6 +11753,69 @@ func (in *StreamingLocator) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamingLocatorInitParameters) DeepCopyInto(out *StreamingLocatorInitParameters) { + *out = *in + if in.AlternativeMediaID != nil { + in, out := &in.AlternativeMediaID, &out.AlternativeMediaID + *out = new(string) + **out = **in + } + if in.ContentKey != nil { + in, out := &in.ContentKey, &out.ContentKey + *out = make([]ContentKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultContentKeyPolicyName != nil { + in, out := &in.DefaultContentKeyPolicyName, &out.DefaultContentKeyPolicyName + *out = new(string) + **out = **in + } + if in.EndTime != nil { + in, out := &in.EndTime, &out.EndTime + *out = new(string) + **out = **in + } + if in.FilterNames != nil { + in, out := &in.FilterNames, &out.FilterNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } + if in.StreamingLocatorID != nil { + in, out := &in.StreamingLocatorID, &out.StreamingLocatorID + *out = new(string) + **out = **in + } + if in.StreamingPolicyName != nil { + in, out := &in.StreamingPolicyName, &out.StreamingPolicyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamingLocatorInitParameters. +func (in *StreamingLocatorInitParameters) DeepCopy() *StreamingLocatorInitParameters { + if in == nil { + return nil + } + out := new(StreamingLocatorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StreamingLocatorList) DeepCopyInto(out *StreamingLocatorList) { *out = *in @@ -8542,6 +12044,7 @@ func (in *StreamingLocatorSpec) DeepCopyInto(out *StreamingLocatorSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamingLocatorSpec. @@ -8598,6 +12101,54 @@ func (in *StreamingPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamingPolicyInitParameters) DeepCopyInto(out *StreamingPolicyInitParameters) { + *out = *in + if in.CommonEncryptionCbcs != nil { + in, out := &in.CommonEncryptionCbcs, &out.CommonEncryptionCbcs + *out = make([]CommonEncryptionCbcsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CommonEncryptionCenc != nil { + in, out := &in.CommonEncryptionCenc, &out.CommonEncryptionCenc + *out = make([]CommonEncryptionCencInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultContentKeyPolicyName != nil { + in, out := &in.DefaultContentKeyPolicyName, &out.DefaultContentKeyPolicyName + *out = new(string) + **out = **in + } + if in.EnvelopeEncryption != nil { + in, out := &in.EnvelopeEncryption, &out.EnvelopeEncryption + *out = make([]EnvelopeEncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NoEncryptionEnabledProtocols != nil { + in, out := &in.NoEncryptionEnabledProtocols, &out.NoEncryptionEnabledProtocols + *out = make([]NoEncryptionEnabledProtocolsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamingPolicyInitParameters. +func (in *StreamingPolicyInitParameters) DeepCopy() *StreamingPolicyInitParameters { + if in == nil { + return nil + } + out := new(StreamingPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StreamingPolicyList) DeepCopyInto(out *StreamingPolicyList) { *out = *in @@ -8776,6 +12327,7 @@ func (in *StreamingPolicySpec) DeepCopyInto(out *StreamingPolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamingPolicySpec. @@ -8805,6 +12357,53 @@ func (in *StreamingPolicyStatus) DeepCopy() *StreamingPolicyStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TokenRestrictionInitParameters) DeepCopyInto(out *TokenRestrictionInitParameters) { + *out = *in + if in.AlternateKey != nil { + in, out := &in.AlternateKey, &out.AlternateKey + *out = make([]AlternateKeyInitParameters, len(*in)) + copy(*out, *in) + } + if in.Audience != nil { + in, out := &in.Audience, &out.Audience + *out = new(string) + **out = **in + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.OpenIDConnectDiscoveryDocument != nil { + in, out := &in.OpenIDConnectDiscoveryDocument, &out.OpenIDConnectDiscoveryDocument + *out = new(string) + **out = **in + } + if in.RequiredClaim != nil { + in, out := &in.RequiredClaim, &out.RequiredClaim + *out = make([]RequiredClaimInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TokenType != nil { + in, out := &in.TokenType, &out.TokenType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenRestrictionInitParameters. +func (in *TokenRestrictionInitParameters) DeepCopy() *TokenRestrictionInitParameters { + if in == nil { + return nil + } + out := new(TokenRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TokenRestrictionObservation) DeepCopyInto(out *TokenRestrictionObservation) { *out = *in @@ -8923,6 +12522,36 @@ func (in *TokenRestrictionParameters) DeepCopy() *TokenRestrictionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrackConditionInitParameters) DeepCopyInto(out *TrackConditionInitParameters) { + *out = *in + if in.Operation != nil { + in, out := &in.Operation, &out.Operation + *out = new(string) + **out = **in + } + if in.Property != nil { + in, out := &in.Property, &out.Property + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrackConditionInitParameters. +func (in *TrackConditionInitParameters) DeepCopy() *TrackConditionInitParameters { + if in == nil { + return nil + } + out := new(TrackConditionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrackConditionObservation) DeepCopyInto(out *TrackConditionObservation) { *out = *in @@ -8983,6 +12612,28 @@ func (in *TrackConditionParameters) DeepCopy() *TrackConditionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrackInitParameters) DeepCopyInto(out *TrackInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]TrackConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrackInitParameters. +func (in *TrackInitParameters) DeepCopy() *TrackInitParameters { + if in == nil { + return nil + } + out := new(TrackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrackObservation) DeepCopyInto(out *TrackObservation) { *out = *in @@ -9027,6 +12678,36 @@ func (in *TrackParameters) DeepCopy() *TrackParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrackSelectionConditionInitParameters) DeepCopyInto(out *TrackSelectionConditionInitParameters) { + *out = *in + if in.Operation != nil { + in, out := &in.Operation, &out.Operation + *out = new(string) + **out = **in + } + if in.Property != nil { + in, out := &in.Property, &out.Property + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrackSelectionConditionInitParameters. +func (in *TrackSelectionConditionInitParameters) DeepCopy() *TrackSelectionConditionInitParameters { + if in == nil { + return nil + } + out := new(TrackSelectionConditionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrackSelectionConditionObservation) DeepCopyInto(out *TrackSelectionConditionObservation) { *out = *in @@ -9087,6 +12768,28 @@ func (in *TrackSelectionConditionParameters) DeepCopy() *TrackSelectionCondition return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrackSelectionInitParameters) DeepCopyInto(out *TrackSelectionInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]ConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrackSelectionInitParameters. +func (in *TrackSelectionInitParameters) DeepCopy() *TrackSelectionInitParameters { + if in == nil { + return nil + } + out := new(TrackSelectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrackSelectionObservation) DeepCopyInto(out *TrackSelectionObservation) { *out = *in @@ -9158,6 +12861,33 @@ func (in *Transform) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TransformInitParameters) DeepCopyInto(out *TransformInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Output != nil { + in, out := &in.Output, &out.Output + *out = make([]OutputInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformInitParameters. +func (in *TransformInitParameters) DeepCopy() *TransformInitParameters { + if in == nil { + return nil + } + out := new(TransformInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TransformList) DeepCopyInto(out *TransformList) { *out = *in @@ -9294,6 +13024,7 @@ func (in *TransformSpec) DeepCopyInto(out *TransformSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformSpec. @@ -9323,6 +13054,33 @@ func (in *TransformStatus) DeepCopy() *TransformStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TransportStreamInitParameters) DeepCopyInto(out *TransportStreamInitParameters) { + *out = *in + if in.FilenamePattern != nil { + in, out := &in.FilenamePattern, &out.FilenamePattern + *out = new(string) + **out = **in + } + if in.OutputFile != nil { + in, out := &in.OutputFile, &out.OutputFile + *out = make([]TransportStreamOutputFileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransportStreamInitParameters. +func (in *TransportStreamInitParameters) DeepCopy() *TransportStreamInitParameters { + if in == nil { + return nil + } + out := new(TransportStreamInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TransportStreamObservation) DeepCopyInto(out *TransportStreamObservation) { *out = *in @@ -9350,6 +13108,32 @@ func (in *TransportStreamObservation) DeepCopy() *TransportStreamObservation { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TransportStreamOutputFileInitParameters) DeepCopyInto(out *TransportStreamOutputFileInitParameters) { + *out = *in + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransportStreamOutputFileInitParameters. +func (in *TransportStreamOutputFileInitParameters) DeepCopy() *TransportStreamOutputFileInitParameters { + if in == nil { + return nil + } + out := new(TransportStreamOutputFileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TransportStreamOutputFileObservation) DeepCopyInto(out *TransportStreamOutputFileObservation) { *out = *in @@ -9429,6 +13213,51 @@ func (in *TransportStreamParameters) DeepCopy() *TransportStreamParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VideoAnalyzerPresetInitParameters) DeepCopyInto(out *VideoAnalyzerPresetInitParameters) { + *out = *in + if in.AudioAnalysisMode != nil { + in, out := &in.AudioAnalysisMode, &out.AudioAnalysisMode + *out = new(string) + **out = **in + } + if in.AudioLanguage != nil { + in, out := &in.AudioLanguage, &out.AudioLanguage + *out = new(string) + **out = **in + } + if in.ExperimentalOptions != nil { + in, out := &in.ExperimentalOptions, &out.ExperimentalOptions + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.InsightsType != nil { + in, out := &in.InsightsType, &out.InsightsType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VideoAnalyzerPresetInitParameters. +func (in *VideoAnalyzerPresetInitParameters) DeepCopy() *VideoAnalyzerPresetInitParameters { + if in == nil { + return nil + } + out := new(VideoAnalyzerPresetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VideoAnalyzerPresetObservation) DeepCopyInto(out *VideoAnalyzerPresetObservation) { *out = *in @@ -9519,6 +13348,41 @@ func (in *VideoAnalyzerPresetParameters) DeepCopy() *VideoAnalyzerPresetParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VideoCropRectangleInitParameters) DeepCopyInto(out *VideoCropRectangleInitParameters) { + *out = *in + if in.Height != nil { + in, out := &in.Height, &out.Height + *out = new(string) + **out = **in + } + if in.Left != nil { + in, out := &in.Left, &out.Left + *out = new(string) + **out = **in + } + if in.Top != nil { + in, out := &in.Top, &out.Top + *out = new(string) + **out = **in + } + if in.Width != nil { + in, out := &in.Width, &out.Width + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VideoCropRectangleInitParameters. +func (in *VideoCropRectangleInitParameters) DeepCopy() *VideoCropRectangleInitParameters { + if in == nil { + return nil + } + out := new(VideoCropRectangleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VideoCropRectangleObservation) DeepCopyInto(out *VideoCropRectangleObservation) { *out = *in @@ -9589,6 +13453,70 @@ func (in *VideoCropRectangleParameters) DeepCopy() *VideoCropRectangleParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VideoInitParameters) DeepCopyInto(out *VideoInitParameters) { + *out = *in + if in.AudioGainLevel != nil { + in, out := &in.AudioGainLevel, &out.AudioGainLevel + *out = new(float64) + **out = **in + } + if in.CropRectangle != nil { + in, out := &in.CropRectangle, &out.CropRectangle + *out = make([]VideoCropRectangleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.End != nil { + in, out := &in.End, &out.End + *out = new(string) + **out = **in + } + if in.FadeInDuration != nil { + in, out := &in.FadeInDuration, &out.FadeInDuration + *out = new(string) + **out = **in + } + if in.FadeOutDuration != nil { + in, out := &in.FadeOutDuration, &out.FadeOutDuration + *out = new(string) + **out = **in + } + if in.InputLabel != nil { + in, out := &in.InputLabel, &out.InputLabel + *out = new(string) + **out = **in + } + if in.Opacity != nil { + in, out := &in.Opacity, &out.Opacity + *out = new(float64) + **out = **in + } + if in.Position != nil { + in, out := &in.Position, &out.Position + *out = make([]PositionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Start != nil { + in, out := &in.Start, &out.Start + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VideoInitParameters. +func (in *VideoInitParameters) DeepCopy() *VideoInitParameters { + if in == nil { + return nil + } + out := new(VideoInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VideoObservation) DeepCopyInto(out *VideoObservation) { *out = *in diff --git a/apis/media/v1beta1/zz_generated.managed.go b/apis/media/v1beta1/zz_generated.managed.go index 1c4882535..43589b515 100644 --- a/apis/media/v1beta1/zz_generated.managed.go +++ b/apis/media/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Asset) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Asset. -func (mg *Asset) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Asset. +func (mg *Asset) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Asset. @@ -55,9 +55,9 @@ func (mg *Asset) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Asset. -func (mg *Asset) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Asset. +func (mg *Asset) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Asset. @@ -93,9 +93,9 @@ func (mg *AssetFilter) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AssetFilter. -func (mg *AssetFilter) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AssetFilter. +func (mg *AssetFilter) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AssetFilter. @@ -131,9 +131,9 @@ func (mg *AssetFilter) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AssetFilter. -func (mg *AssetFilter) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AssetFilter. +func (mg *AssetFilter) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AssetFilter. @@ -169,9 +169,9 @@ func (mg *ContentKeyPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ContentKeyPolicy. -func (mg *ContentKeyPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ContentKeyPolicy. +func (mg *ContentKeyPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ContentKeyPolicy. @@ -207,9 +207,9 @@ func (mg *ContentKeyPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ContentKeyPolicy. -func (mg *ContentKeyPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ContentKeyPolicy. +func (mg *ContentKeyPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ContentKeyPolicy. @@ -245,9 +245,9 @@ func (mg *Job) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Job. -func (mg *Job) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Job. +func (mg *Job) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Job. @@ -283,9 +283,9 @@ func (mg *Job) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Job. -func (mg *Job) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Job. +func (mg *Job) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Job. @@ -321,9 +321,9 @@ func (mg *LiveEvent) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LiveEvent. -func (mg *LiveEvent) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LiveEvent. +func (mg *LiveEvent) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LiveEvent. @@ -359,9 +359,9 @@ func (mg *LiveEvent) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LiveEvent. -func (mg *LiveEvent) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LiveEvent. +func (mg *LiveEvent) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LiveEvent. @@ -397,9 +397,9 @@ func (mg *LiveEventOutput) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LiveEventOutput. -func (mg *LiveEventOutput) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LiveEventOutput. +func (mg *LiveEventOutput) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LiveEventOutput. @@ -435,9 +435,9 @@ func (mg *LiveEventOutput) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LiveEventOutput. -func (mg *LiveEventOutput) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LiveEventOutput. +func (mg *LiveEventOutput) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LiveEventOutput. @@ -473,9 +473,9 @@ func (mg *ServicesAccount) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ServicesAccount. -func (mg *ServicesAccount) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ServicesAccount. +func (mg *ServicesAccount) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ServicesAccount. @@ -511,9 +511,9 @@ func (mg *ServicesAccount) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ServicesAccount. -func (mg *ServicesAccount) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ServicesAccount. +func (mg *ServicesAccount) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ServicesAccount. @@ -549,9 +549,9 @@ func (mg *ServicesAccountFilter) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ServicesAccountFilter. -func (mg *ServicesAccountFilter) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ServicesAccountFilter. +func (mg *ServicesAccountFilter) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ServicesAccountFilter. @@ -587,9 +587,9 @@ func (mg *ServicesAccountFilter) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ServicesAccountFilter. -func (mg *ServicesAccountFilter) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ServicesAccountFilter. +func (mg *ServicesAccountFilter) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ServicesAccountFilter. @@ -625,9 +625,9 @@ func (mg *StreamingEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this StreamingEndpoint. -func (mg *StreamingEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this StreamingEndpoint. +func (mg *StreamingEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this StreamingEndpoint. @@ -663,9 +663,9 @@ func (mg *StreamingEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this StreamingEndpoint. -func (mg *StreamingEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this StreamingEndpoint. +func (mg *StreamingEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this StreamingEndpoint. @@ -701,9 +701,9 @@ func (mg *StreamingLocator) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this StreamingLocator. -func (mg *StreamingLocator) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this StreamingLocator. +func (mg *StreamingLocator) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this StreamingLocator. @@ -739,9 +739,9 @@ func (mg *StreamingLocator) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this StreamingLocator. -func (mg *StreamingLocator) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this StreamingLocator. +func (mg *StreamingLocator) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this StreamingLocator. @@ -777,9 +777,9 @@ func (mg *StreamingPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this StreamingPolicy. -func (mg *StreamingPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this StreamingPolicy. +func (mg *StreamingPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this StreamingPolicy. @@ -815,9 +815,9 @@ func (mg *StreamingPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this StreamingPolicy. -func (mg *StreamingPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this StreamingPolicy. +func (mg *StreamingPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this StreamingPolicy. @@ -853,9 +853,9 @@ func (mg *Transform) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Transform. -func (mg *Transform) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Transform. +func (mg *Transform) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Transform. @@ -891,9 +891,9 @@ func (mg *Transform) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Transform. -func (mg *Transform) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Transform. +func (mg *Transform) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Transform. diff --git a/apis/media/v1beta1/zz_generated_terraformed.go b/apis/media/v1beta1/zz_generated_terraformed.go index 882cd1afa..6f1d57fa1 100755 --- a/apis/media/v1beta1/zz_generated_terraformed.go +++ b/apis/media/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Asset) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Asset +func (tr *Asset) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Asset using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Asset) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *AssetFilter) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AssetFilter +func (tr *AssetFilter) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AssetFilter using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AssetFilter) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *ContentKeyPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ContentKeyPolicy +func (tr *ContentKeyPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ContentKeyPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ContentKeyPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *Job) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Job +func (tr *Job) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Job using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Job) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *LiveEvent) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LiveEvent +func (tr *LiveEvent) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LiveEvent using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LiveEvent) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *LiveEventOutput) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LiveEventOutput +func (tr *LiveEventOutput) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LiveEventOutput using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LiveEventOutput) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *ServicesAccount) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ServicesAccount +func (tr *ServicesAccount) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ServicesAccount using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ServicesAccount) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *ServicesAccountFilter) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ServicesAccountFilter +func (tr *ServicesAccountFilter) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ServicesAccountFilter using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ServicesAccountFilter) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *StreamingEndpoint) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this StreamingEndpoint +func (tr *StreamingEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this StreamingEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *StreamingEndpoint) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *StreamingLocator) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this StreamingLocator +func (tr *StreamingLocator) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this StreamingLocator using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *StreamingLocator) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *StreamingPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this StreamingPolicy +func (tr *StreamingPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this StreamingPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *StreamingPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *Transform) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Transform +func (tr *Transform) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Transform using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Transform) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/media/v1beta1/zz_job_types.go b/apis/media/v1beta1/zz_job_types.go index 41ba17f28..fea4d2531 100755 --- a/apis/media/v1beta1/zz_job_types.go +++ b/apis/media/v1beta1/zz_job_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type InputAssetInitParameters struct { + + // A label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'. Changing this forces a new resource to be created. + Label *string `json:"label,omitempty" tf:"label,omitempty"` +} + type InputAssetObservation struct { // A label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'. Changing this forces a new resource to be created. @@ -42,6 +48,21 @@ type InputAssetParameters struct { NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"` } +type JobInitParameters struct { + + // Optional customer supplied description of the Job. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A input_asset block as defined below. Changing this forces a new Media Job to be created. + InputAsset []InputAssetInitParameters `json:"inputAsset,omitempty" tf:"input_asset,omitempty"` + + // One or more output_asset blocks as defined below. Changing this forces a new Media Job to be created. + OutputAsset []OutputAssetInitParameters `json:"outputAsset,omitempty" tf:"output_asset,omitempty"` + + // Priority with which the job should be processed. Higher priority jobs are processed before lower priority jobs. If not set, the default is normal. Changing this forces a new Media Job to be created. Possible values are High, Normal and Low. + Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` +} + type JobObservation struct { // Optional customer supplied description of the Job. @@ -127,6 +148,12 @@ type JobParameters struct { TransformNameSelector *v1.Selector `json:"transformNameSelector,omitempty" tf:"-"` } +type OutputAssetInitParameters struct { + + // A label that is assigned to a JobOutput in order to help uniquely identify it. This is useful when your Transform has more than one TransformOutput, whereby your Job has more than one JobOutput. In such cases, when you submit the Job, you will add two or more JobOutputs, in the same order as TransformOutputs in the Transform. Subsequently, when you retrieve the Job, either through events or on a GET request, you can use the label to easily identify the JobOutput. If a label is not provided, a default value of '{presetName}_{outputIndex}' will be used, where the preset name is the name of the preset in the corresponding TransformOutput and the output index is the relative index of the this JobOutput within the Job. Note that this index is the same as the relative index of the corresponding TransformOutput within its Transform. Changing this forces a new resource to be created. + Label *string `json:"label,omitempty" tf:"label,omitempty"` +} + type OutputAssetObservation struct { // A label that is assigned to a JobOutput in order to help uniquely identify it. This is useful when your Transform has more than one TransformOutput, whereby your Job has more than one JobOutput. In such cases, when you submit the Job, you will add two or more JobOutputs, in the same order as TransformOutputs in the Transform. Subsequently, when you retrieve the Job, either through events or on a GET request, you can use the label to easily identify the JobOutput. If a label is not provided, a default value of '{presetName}_{outputIndex}' will be used, where the preset name is the name of the preset in the corresponding TransformOutput and the output index is the relative index of the this JobOutput within the Job. Note that this index is the same as the relative index of the corresponding TransformOutput within its Transform. Changing this forces a new resource to be created. @@ -160,6 +187,18 @@ type OutputAssetParameters struct { type JobSpec struct { v1.ResourceSpec `json:",inline"` ForProvider JobParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider JobInitParameters `json:"initProvider,omitempty"` } // JobStatus defines the observed state of Job. @@ -180,8 +219,8 @@ type JobStatus struct { type Job struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.inputAsset)",message="inputAsset is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.outputAsset)",message="outputAsset is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.inputAsset) || has(self.initProvider.inputAsset)",message="inputAsset is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.outputAsset) || has(self.initProvider.outputAsset)",message="outputAsset is a required parameter" Spec JobSpec `json:"spec"` Status JobStatus `json:"status,omitempty"` } diff --git a/apis/media/v1beta1/zz_liveevent_types.go b/apis/media/v1beta1/zz_liveevent_types.go index 2dcf0f2c4..a9d654931 100755 --- a/apis/media/v1beta1/zz_liveevent_types.go +++ b/apis/media/v1beta1/zz_liveevent_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CrossSiteAccessPolicyInitParameters struct { + + // The content of clientaccesspolicy.xml used by Silverlight. + ClientAccessPolicy *string `json:"clientAccessPolicy,omitempty" tf:"client_access_policy,omitempty"` + + // The content of the Cross Domain Policy (crossdomain.xml). + CrossDomainPolicy *string `json:"crossDomainPolicy,omitempty" tf:"cross_domain_policy,omitempty"` +} + type CrossSiteAccessPolicyObservation struct { // The content of clientaccesspolicy.xml used by Silverlight. @@ -33,6 +42,21 @@ type CrossSiteAccessPolicyParameters struct { CrossDomainPolicy *string `json:"crossDomainPolicy,omitempty" tf:"cross_domain_policy,omitempty"` } +type EncodingInitParameters struct { + + // Use an ISO 8601 time value between 0.5 to 20 seconds to specify the output fragment length for the video and audio tracks of an encoding live event. For example, use PT2S to indicate 2 seconds. For the video track it also defines the key frame interval, or the length of a GoP (group of pictures). If this value is not set for an encoding live event, the fragment duration defaults to 2 seconds. The value cannot be set for pass-through live events. + KeyFrameInterval *string `json:"keyFrameInterval,omitempty" tf:"key_frame_interval,omitempty"` + + // The optional encoding preset name, used when type is not None. If the type is set to Standard, then the default preset name is Default720p. Else if the type is set to Premium1080p, the default preset is Default1080p. Changing this forces a new resource to be created. + PresetName *string `json:"presetName,omitempty" tf:"preset_name,omitempty"` + + // Specifies how the input video will be resized to fit the desired output resolution(s). Allowed values are None, AutoFit or AutoSize. Default is None. + StretchMode *string `json:"stretchMode,omitempty" tf:"stretch_mode,omitempty"` + + // Live event type. Allowed values are None, Premium1080p or Standard. When set to None, the service simply passes through the incoming video and audio layer(s) to the output. When type is set to Standard or Premium1080p, a live encoder transcodes the incoming stream into multiple bitrates or layers. Defaults to None. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type EncodingObservation struct { // Use an ISO 8601 time value between 0.5 to 20 seconds to specify the output fragment length for the video and audio tracks of an encoding live event. For example, use PT2S to indicate 2 seconds. For the video track it also defines the key frame interval, or the length of a GoP (group of pictures). If this value is not set for an encoding live event, the fragment duration defaults to 2 seconds. The value cannot be set for pass-through live events. @@ -67,6 +91,9 @@ type EncodingParameters struct { Type *string `json:"type,omitempty" tf:"type,omitempty"` } +type EndpointInitParameters struct { +} + type EndpointObservation struct { Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` @@ -76,6 +103,18 @@ type EndpointObservation struct { type EndpointParameters struct { } +type IPAccessControlAllowInitParameters struct { + + // The IP address or CIDR range. + Address *string `json:"address,omitempty" tf:"address,omitempty"` + + // The name which should be used for this Live Event. Changing this forces a new Live Event to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The subnet mask prefix length (see CIDR notation). + SubnetPrefixLength *float64 `json:"subnetPrefixLength,omitempty" tf:"subnet_prefix_length,omitempty"` +} + type IPAccessControlAllowObservation struct { // The IP address or CIDR range. @@ -103,6 +142,21 @@ type IPAccessControlAllowParameters struct { SubnetPrefixLength *float64 `json:"subnetPrefixLength,omitempty" tf:"subnet_prefix_length,omitempty"` } +type InputInitParameters struct { + + // A UUID in string form to uniquely identify the stream. If omitted, the service will generate a unique value. Changing this forces a new value to be created. + AccessToken *string `json:"accessToken,omitempty" tf:"access_token,omitempty"` + + // One or more ip_access_control_allow blocks as defined below. + IPAccessControlAllow []IPAccessControlAllowInitParameters `json:"ipAccessControlAllow,omitempty" tf:"ip_access_control_allow,omitempty"` + + // ISO 8601 time duration of the key frame interval duration of the input. This value sets the EXT-X-TARGETDURATION property in the HLS output. For example, use PT2S to indicate 2 seconds. This field cannot be set when type is set to Encoding. + KeyFrameIntervalDuration *string `json:"keyFrameIntervalDuration,omitempty" tf:"key_frame_interval_duration,omitempty"` + + // The input protocol for the live event. Allowed values are FragmentedMP4 and RTMP. Changing this forces a new resource to be created. + StreamingProtocol *string `json:"streamingProtocol,omitempty" tf:"streaming_protocol,omitempty"` +} + type InputObservation struct { // A UUID in string form to uniquely identify the stream. If omitted, the service will generate a unique value. Changing this forces a new value to be created. @@ -139,6 +193,45 @@ type InputParameters struct { StreamingProtocol *string `json:"streamingProtocol,omitempty" tf:"streaming_protocol,omitempty"` } +type LiveEventInitParameters struct { + + // The flag indicates if the resource should be automatically started on creation. Default is false. Changing this forces a new resource to be created. + AutoStartEnabled *bool `json:"autoStartEnabled,omitempty" tf:"auto_start_enabled,omitempty"` + + // A cross_site_access_policy block as defined below. + CrossSiteAccessPolicy []CrossSiteAccessPolicyInitParameters `json:"crossSiteAccessPolicy,omitempty" tf:"cross_site_access_policy,omitempty"` + + // A description for the live event. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A encoding block as defined below. + Encoding []EncodingInitParameters `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // When use_static_hostname is set to true, the hostname_prefix specifies the first part of the hostname assigned to the live event preview and ingest endpoints. The final hostname would be a combination of this prefix, the media service account name and a short code for the Azure Media Services data center. + HostNamePrefix *string `json:"hostnamePrefix,omitempty" tf:"hostname_prefix,omitempty"` + + // A input block as defined below. + Input []InputInitParameters `json:"input,omitempty" tf:"input,omitempty"` + + // The Azure Region where the Live Event should exist. Changing this forces a new Live Event to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A preview block as defined below. + Preview []PreviewInitParameters `json:"preview,omitempty" tf:"preview,omitempty"` + + // A list of options to use for the LiveEvent. Possible values are Default, LowLatency, LowLatencyV2. Please see more at this document. Changing this forces a new resource to be created. + StreamOptions []*string `json:"streamOptions,omitempty" tf:"stream_options,omitempty"` + + // A mapping of tags which should be assigned to the Live Event. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies a list of languages (locale) to be used for speech-to-text transcription – it should match the spoken language in the audio track. The value should be in BCP-47 format (e.g: en-US). See the Microsoft Documentation for more information about the live transcription feature and the list of supported languages. + TranscriptionLanguages []*string `json:"transcriptionLanguages,omitempty" tf:"transcription_languages,omitempty"` + + // Specifies whether a static hostname would be assigned to the live event preview and ingest endpoints. Changing this forces a new Live Event to be created. + UseStaticHostName *bool `json:"useStaticHostname,omitempty" tf:"use_static_hostname,omitempty"` +} + type LiveEventObservation struct { // The flag indicates if the resource should be automatically started on creation. Default is false. Changing this forces a new resource to be created. @@ -264,6 +357,9 @@ type LiveEventParameters struct { UseStaticHostName *bool `json:"useStaticHostname,omitempty" tf:"use_static_hostname,omitempty"` } +type PreviewEndpointInitParameters struct { +} + type PreviewEndpointObservation struct { Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` @@ -273,6 +369,18 @@ type PreviewEndpointObservation struct { type PreviewEndpointParameters struct { } +type PreviewIPAccessControlAllowInitParameters struct { + + // The IP address or CIDR range. + Address *string `json:"address,omitempty" tf:"address,omitempty"` + + // The name which should be used for this Live Event. Changing this forces a new Live Event to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The subnet mask prefix length (see CIDR notation). + SubnetPrefixLength *float64 `json:"subnetPrefixLength,omitempty" tf:"subnet_prefix_length,omitempty"` +} + type PreviewIPAccessControlAllowObservation struct { // The IP address or CIDR range. @@ -300,6 +408,21 @@ type PreviewIPAccessControlAllowParameters struct { SubnetPrefixLength *float64 `json:"subnetPrefixLength,omitempty" tf:"subnet_prefix_length,omitempty"` } +type PreviewInitParameters struct { + + // An alternative media identifier associated with the streaming locator created for the preview. The identifier can be used in the CustomLicenseAcquisitionUrlTemplate or the CustomKeyAcquisitionUrlTemplate of the Streaming Policy specified in the streaming_policy_name field. + AlternativeMediaID *string `json:"alternativeMediaId,omitempty" tf:"alternative_media_id,omitempty"` + + // One or more ip_access_control_allow blocks as defined above. + IPAccessControlAllow []PreviewIPAccessControlAllowInitParameters `json:"ipAccessControlAllow,omitempty" tf:"ip_access_control_allow,omitempty"` + + // The identifier of the preview locator in GUID format. Specifying this at creation time allows the caller to know the preview locator url before the event is created. If omitted, the service will generate a random identifier. Changing this forces a new resource to be created. + PreviewLocator *string `json:"previewLocator,omitempty" tf:"preview_locator,omitempty"` + + // The name of streaming policy used for the live event preview. Changing this forces a new resource to be created. + StreamingPolicyName *string `json:"streamingPolicyName,omitempty" tf:"streaming_policy_name,omitempty"` +} + type PreviewObservation struct { // An alternative media identifier associated with the streaming locator created for the preview. The identifier can be used in the CustomLicenseAcquisitionUrlTemplate or the CustomKeyAcquisitionUrlTemplate of the Streaming Policy specified in the streaming_policy_name field. @@ -340,6 +463,18 @@ type PreviewParameters struct { type LiveEventSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LiveEventParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LiveEventInitParameters `json:"initProvider,omitempty"` } // LiveEventStatus defines the observed state of LiveEvent. @@ -360,8 +495,8 @@ type LiveEventStatus struct { type LiveEvent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.input)",message="input is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.input) || has(self.initProvider.input)",message="input is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec LiveEventSpec `json:"spec"` Status LiveEventStatus `json:"status,omitempty"` } diff --git a/apis/media/v1beta1/zz_liveeventoutput_types.go b/apis/media/v1beta1/zz_liveeventoutput_types.go index 343f9d816..3af1d5ee9 100755 --- a/apis/media/v1beta1/zz_liveeventoutput_types.go +++ b/apis/media/v1beta1/zz_liveeventoutput_types.go @@ -13,6 +13,26 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LiveEventOutputInitParameters struct { + + // ISO 8601 time between 1 minute to 25 hours to indicate the maximum content length that can be archived in the asset for this live output. This also sets the maximum content length for the rewind window. For example, use PT1H30M to indicate 1 hour and 30 minutes of archive window. Changing this forces a new Live Output to be created. + ArchiveWindowDuration *string `json:"archiveWindowDuration,omitempty" tf:"archive_window_duration,omitempty"` + + // The description of the live output. Changing this forces a new Live Output to be created. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The number of fragments in an HTTP Live Streaming (HLS) TS segment in the output of the live event. This value does not affect the packing ratio for HLS CMAF output. Changing this forces a new Live Output to be created. + HlsFragmentsPerTSSegment *float64 `json:"hlsFragmentsPerTsSegment,omitempty" tf:"hls_fragments_per_ts_segment,omitempty"` + + // The manifest file name. If not provided, the service will generate one automatically. Changing this forces a new Live Output to be created. + ManifestName *string `json:"manifestName,omitempty" tf:"manifest_name,omitempty"` + + // The initial timestamp that the live output will start at, any content before this value will not be archived. Changing this forces a new Live Output to be created. + OutputSnapTimeInSeconds *float64 `json:"outputSnapTimeInSeconds,omitempty" tf:"output_snap_time_in_seconds,omitempty"` + + RewindWindowDuration *string `json:"rewindWindowDuration,omitempty" tf:"rewind_window_duration,omitempty"` +} + type LiveEventOutputObservation struct { // ISO 8601 time between 1 minute to 25 hours to indicate the maximum content length that can be archived in the asset for this live output. This also sets the maximum content length for the rewind window. For example, use PT1H30M to indicate 1 hour and 30 minutes of archive window. Changing this forces a new Live Output to be created. @@ -99,6 +119,18 @@ type LiveEventOutputParameters struct { type LiveEventOutputSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LiveEventOutputParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LiveEventOutputInitParameters `json:"initProvider,omitempty"` } // LiveEventOutputStatus defines the observed state of LiveEventOutput. @@ -119,7 +151,7 @@ type LiveEventOutputStatus struct { type LiveEventOutput struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.archiveWindowDuration)",message="archiveWindowDuration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.archiveWindowDuration) || has(self.initProvider.archiveWindowDuration)",message="archiveWindowDuration is a required parameter" Spec LiveEventOutputSpec `json:"spec"` Status LiveEventOutputStatus `json:"status,omitempty"` } diff --git a/apis/media/v1beta1/zz_servicesaccount_types.go b/apis/media/v1beta1/zz_servicesaccount_types.go index 05a2d3919..8c6406d16 100755 --- a/apis/media/v1beta1/zz_servicesaccount_types.go +++ b/apis/media/v1beta1/zz_servicesaccount_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EncryptionInitParameters struct { + + // Specifies the URI of the Key Vault Key used to encrypt data. The key may either be versioned (for example https://vault/keys/mykey/version1) or reference a key without a version (for example https://vault/keys/mykey). + KeyVaultKeyIdentifier *string `json:"keyVaultKeyIdentifier,omitempty" tf:"key_vault_key_identifier,omitempty"` + + // A managed_identity block as defined below. + ManagedIdentity []ManagedIdentityInitParameters `json:"managedIdentity,omitempty" tf:"managed_identity,omitempty"` + + // Specifies the type of key used to encrypt the account data. Possible values are SystemKey and CustomerKey. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type EncryptionObservation struct { // The current key used to encrypt the Media Services Account, including the key version. @@ -43,6 +55,15 @@ type EncryptionParameters struct { Type *string `json:"type,omitempty" tf:"type,omitempty"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Media Services Account. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Media Services Account. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Media Services Account. @@ -65,8 +86,17 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Media Services Account. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type KeyDeliveryAccessControlInitParameters struct { + + // The Default Action to use when no rules match from ip_allow_list. Possible values are Allow and Deny. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + + // One or more IP Addresses, or CIDR Blocks which should be able to access the Key Delivery. + IPAllowList []*string `json:"ipAllowList,omitempty" tf:"ip_allow_list,omitempty"` } type KeyDeliveryAccessControlObservation struct { @@ -89,6 +119,15 @@ type KeyDeliveryAccessControlParameters struct { IPAllowList []*string `json:"ipAllowList,omitempty" tf:"ip_allow_list,omitempty"` } +type ManagedIdentityInitParameters struct { + + // Whether to use System Assigned Identity. Possible Values are true and false. + UseSystemAssignedIdentity *bool `json:"useSystemAssignedIdentity,omitempty" tf:"use_system_assigned_identity,omitempty"` + + // The ID of the User Assigned Identity. This value can only be set when use_system_assigned_identity is false + UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` +} + type ManagedIdentityObservation struct { // Whether to use System Assigned Identity. Possible Values are true and false. @@ -109,6 +148,33 @@ type ManagedIdentityParameters struct { UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` } +type ServicesAccountInitParameters struct { + + // An encryption block as defined below. + Encryption []EncryptionInitParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // A key_delivery_access_control block as defined below. + KeyDeliveryAccessControl []KeyDeliveryAccessControlInitParameters `json:"keyDeliveryAccessControl,omitempty" tf:"key_delivery_access_control,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Whether public network access is allowed for this server. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // One or more storage_account blocks as defined below. + StorageAccount []StorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // Specifies the storage authentication type. Possible value is ManagedIdentity or System. + StorageAuthenticationType *string `json:"storageAuthenticationType,omitempty" tf:"storage_authentication_type,omitempty"` + + // A mapping of tags assigned to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ServicesAccountObservation struct { // An encryption block as defined below. @@ -190,6 +256,24 @@ type ServicesAccountParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type StorageAccountInitParameters struct { + + // Specifies whether the storage account should be the primary account or not. Defaults to false. + IsPrimary *bool `json:"isPrimary,omitempty" tf:"is_primary,omitempty"` + + // A managed_identity block as defined below. + ManagedIdentity []StorageAccountManagedIdentityInitParameters `json:"managedIdentity,omitempty" tf:"managed_identity,omitempty"` +} + +type StorageAccountManagedIdentityInitParameters struct { + + // Whether to use System Assigned Identity. Possible Values are true and false. + UseSystemAssignedIdentity *bool `json:"useSystemAssignedIdentity,omitempty" tf:"use_system_assigned_identity,omitempty"` + + // The ID of the User Assigned Identity. This value can only be set when use_system_assigned_identity is false + UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` +} + type StorageAccountManagedIdentityObservation struct { // Whether to use System Assigned Identity. Possible Values are true and false. @@ -251,6 +335,18 @@ type StorageAccountParameters struct { type ServicesAccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServicesAccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServicesAccountInitParameters `json:"initProvider,omitempty"` } // ServicesAccountStatus defines the observed state of ServicesAccount. @@ -271,8 +367,8 @@ type ServicesAccountStatus struct { type ServicesAccount struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccount)",message="storageAccount is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageAccount) || has(self.initProvider.storageAccount)",message="storageAccount is a required parameter" Spec ServicesAccountSpec `json:"spec"` Status ServicesAccountStatus `json:"status,omitempty"` } diff --git a/apis/media/v1beta1/zz_servicesaccountfilter_types.go b/apis/media/v1beta1/zz_servicesaccountfilter_types.go index d7cf54734..47643d198 100755 --- a/apis/media/v1beta1/zz_servicesaccountfilter_types.go +++ b/apis/media/v1beta1/zz_servicesaccountfilter_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ServicesAccountFilterInitParameters struct { + + // The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning. + FirstQualityBitrate *float64 `json:"firstQualityBitrate,omitempty" tf:"first_quality_bitrate,omitempty"` + + // A presentation_time_range block as defined below. + PresentationTimeRange []ServicesAccountFilterPresentationTimeRangeInitParameters `json:"presentationTimeRange,omitempty" tf:"presentation_time_range,omitempty"` + + // One or more track_selection blocks as defined below. + TrackSelection []ServicesAccountFilterTrackSelectionInitParameters `json:"trackSelection,omitempty" tf:"track_selection,omitempty"` +} + type ServicesAccountFilterObservation struct { // The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning. @@ -75,6 +87,29 @@ type ServicesAccountFilterParameters struct { TrackSelection []ServicesAccountFilterTrackSelectionParameters `json:"trackSelection,omitempty" tf:"track_selection,omitempty"` } +type ServicesAccountFilterPresentationTimeRangeInitParameters struct { + + // The absolute end time boundary. Applies to Video on Demand (VoD). + // For the Live Streaming presentation, it is silently ignored and applied when the presentation ends and the stream becomes VoD. This is a long value that represents an absolute end point of the presentation, rounded to the closest next GOP start. The unit is defined by unit_timescale_in_milliseconds, so an end_in_units of 180 would be for 3 minutes. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_milliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest. + EndInUnits *float64 `json:"endInUnits,omitempty" tf:"end_in_units,omitempty"` + + // Indicates whether the end_in_units property must be present. If true, end_in_units must be specified or a bad request code is returned. Applies to Live Streaming only. Allowed values: false, true. + ForceEnd *bool `json:"forceEnd,omitempty" tf:"force_end,omitempty"` + + // The relative to end right edge. Applies to Live Streaming only. + // This value defines the latest live position that a client can seek to. Using this property, you can delay live playback position and create a server-side buffer for players. The unit is defined by unit_timescale_in_milliseconds. The maximum live back off duration is 300 seconds. For example, a value of 20 means that the latest available content is 20 seconds delayed from the real live edge. + LiveBackoffInUnits *float64 `json:"liveBackoffInUnits,omitempty" tf:"live_backoff_in_units,omitempty"` + + // The relative to end sliding window. Applies to Live Streaming only. Use presentation_window_in_units to apply a sliding window of fragments to include in a playlist. The unit is defined by unit_timescale_in_milliseconds. For example, set presentation_window_in_units to 120 to apply a two-minute sliding window. Media within 2 minutes of the live edge will be included in the playlist. If a fragment straddles the boundary, the entire fragment will be included in the playlist. The minimum presentation window duration is 60 seconds. + PresentationWindowInUnits *float64 `json:"presentationWindowInUnits,omitempty" tf:"presentation_window_in_units,omitempty"` + + // The absolute start time boundary. Applies to Video on Demand (VoD) or Live Streaming. This is a long value that represents an absolute start point of the stream. The value gets rounded to the closest next GOP start. The unit is defined by unit_timescale_in_milliseconds, so a start_in_units of 15 would be for 15 seconds. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_milliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest. + StartInUnits *float64 `json:"startInUnits,omitempty" tf:"start_in_units,omitempty"` + + // Specified as the number of milliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_milliseconds in 1000. Or if you want to set start_in_units in 30 milliseconds, you would use a value of 30 when using the unit_timescale_in_milliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale. + UnitTimescaleInMilliseconds *float64 `json:"unitTimescaleInMilliseconds,omitempty" tf:"unit_timescale_in_milliseconds,omitempty"` +} + type ServicesAccountFilterPresentationTimeRangeObservation struct { // The absolute end time boundary. Applies to Video on Demand (VoD). @@ -123,8 +158,14 @@ type ServicesAccountFilterPresentationTimeRangeParameters struct { StartInUnits *float64 `json:"startInUnits,omitempty" tf:"start_in_units,omitempty"` // Specified as the number of milliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_milliseconds in 1000. Or if you want to set start_in_units in 30 milliseconds, you would use a value of 30 when using the unit_timescale_in_milliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale. - // +kubebuilder:validation:Required - UnitTimescaleInMilliseconds *float64 `json:"unitTimescaleInMilliseconds" tf:"unit_timescale_in_milliseconds,omitempty"` + // +kubebuilder:validation:Optional + UnitTimescaleInMilliseconds *float64 `json:"unitTimescaleInMilliseconds,omitempty" tf:"unit_timescale_in_milliseconds,omitempty"` +} + +type ServicesAccountFilterTrackSelectionInitParameters struct { + + // One or more selection blocks as defined above. + Condition []TrackSelectionConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` } type ServicesAccountFilterTrackSelectionObservation struct { @@ -136,8 +177,20 @@ type ServicesAccountFilterTrackSelectionObservation struct { type ServicesAccountFilterTrackSelectionParameters struct { // One or more selection blocks as defined above. - // +kubebuilder:validation:Required - Condition []TrackSelectionConditionParameters `json:"condition" tf:"condition,omitempty"` + // +kubebuilder:validation:Optional + Condition []TrackSelectionConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` +} + +type TrackSelectionConditionInitParameters struct { + + // The condition operation to test a track property against. Supported values are Equal and NotEqual. + Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` + + // The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details. + Property *string `json:"property,omitempty" tf:"property,omitempty"` + + // The track property value to match or not match. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type TrackSelectionConditionObservation struct { @@ -155,22 +208,34 @@ type TrackSelectionConditionObservation struct { type TrackSelectionConditionParameters struct { // The condition operation to test a track property against. Supported values are Equal and NotEqual. - // +kubebuilder:validation:Required - Operation *string `json:"operation" tf:"operation,omitempty"` + // +kubebuilder:validation:Optional + Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` // The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details. - // +kubebuilder:validation:Required - Property *string `json:"property" tf:"property,omitempty"` + // +kubebuilder:validation:Optional + Property *string `json:"property,omitempty" tf:"property,omitempty"` // The track property value to match or not match. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` } // ServicesAccountFilterSpec defines the desired state of ServicesAccountFilter type ServicesAccountFilterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServicesAccountFilterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServicesAccountFilterInitParameters `json:"initProvider,omitempty"` } // ServicesAccountFilterStatus defines the observed state of ServicesAccountFilter. diff --git a/apis/media/v1beta1/zz_streamingendpoint_types.go b/apis/media/v1beta1/zz_streamingendpoint_types.go index fafe052a3..72c2db4ef 100755 --- a/apis/media/v1beta1/zz_streamingendpoint_types.go +++ b/apis/media/v1beta1/zz_streamingendpoint_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccessControlInitParameters struct { + + // One or more akamai_signature_header_authentication_key blocks as defined below. + AkamaiSignatureHeaderAuthenticationKey []AkamaiSignatureHeaderAuthenticationKeyInitParameters `json:"akamaiSignatureHeaderAuthenticationKey,omitempty" tf:"akamai_signature_header_authentication_key,omitempty"` + + // A ip_allow block as defined below. + IPAllow []IPAllowInitParameters `json:"ipAllow,omitempty" tf:"ip_allow,omitempty"` +} + type AccessControlObservation struct { // One or more akamai_signature_header_authentication_key blocks as defined below. @@ -33,6 +42,18 @@ type AccessControlParameters struct { IPAllow []IPAllowParameters `json:"ipAllow,omitempty" tf:"ip_allow,omitempty"` } +type AkamaiSignatureHeaderAuthenticationKeyInitParameters struct { + + // Authentication key. + Base64Key *string `json:"base64Key,omitempty" tf:"base64_key,omitempty"` + + // The expiration time of the authentication key. + Expiration *string `json:"expiration,omitempty" tf:"expiration,omitempty"` + + // Identifier of the key. + Identifier *string `json:"identifier,omitempty" tf:"identifier,omitempty"` +} + type AkamaiSignatureHeaderAuthenticationKeyObservation struct { // Authentication key. @@ -60,6 +81,18 @@ type AkamaiSignatureHeaderAuthenticationKeyParameters struct { Identifier *string `json:"identifier,omitempty" tf:"identifier,omitempty"` } +type IPAllowInitParameters struct { + + // The IP address to allow. + Address *string `json:"address,omitempty" tf:"address,omitempty"` + + // The sku name of Streaming Endpoint. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The subnet mask prefix length (see CIDR notation). + SubnetPrefixLength *float64 `json:"subnetPrefixLength,omitempty" tf:"subnet_prefix_length,omitempty"` +} + type IPAllowObservation struct { // The IP address to allow. @@ -87,6 +120,9 @@ type IPAllowParameters struct { SubnetPrefixLength *float64 `json:"subnetPrefixLength,omitempty" tf:"subnet_prefix_length,omitempty"` } +type SkuInitParameters struct { +} + type SkuObservation struct { // The sku capacity of Streaming Endpoint. @@ -99,6 +135,15 @@ type SkuObservation struct { type SkuParameters struct { } +type StreamingEndpointCrossSiteAccessPolicyInitParameters struct { + + // The content of clientaccesspolicy.xml used by Silverlight. + ClientAccessPolicy *string `json:"clientAccessPolicy,omitempty" tf:"client_access_policy,omitempty"` + + // The content of crossdomain.xml used by Silverlight. + CrossDomainPolicy *string `json:"crossDomainPolicy,omitempty" tf:"cross_domain_policy,omitempty"` +} + type StreamingEndpointCrossSiteAccessPolicyObservation struct { // The content of clientaccesspolicy.xml used by Silverlight. @@ -119,6 +164,45 @@ type StreamingEndpointCrossSiteAccessPolicyParameters struct { CrossDomainPolicy *string `json:"crossDomainPolicy,omitempty" tf:"cross_domain_policy,omitempty"` } +type StreamingEndpointInitParameters struct { + + // A access_control block as defined below. + AccessControl []AccessControlInitParameters `json:"accessControl,omitempty" tf:"access_control,omitempty"` + + // The flag indicates if the resource should be automatically started on creation. + AutoStartEnabled *bool `json:"autoStartEnabled,omitempty" tf:"auto_start_enabled,omitempty"` + + // The CDN enabled flag. + CdnEnabled *bool `json:"cdnEnabled,omitempty" tf:"cdn_enabled,omitempty"` + + // The CDN profile name. + CdnProfile *string `json:"cdnProfile,omitempty" tf:"cdn_profile,omitempty"` + + // The CDN provider name. Supported value are StandardVerizon,PremiumVerizon and StandardAkamai + CdnProvider *string `json:"cdnProvider,omitempty" tf:"cdn_provider,omitempty"` + + // A cross_site_access_policy block as defined below. + CrossSiteAccessPolicy []StreamingEndpointCrossSiteAccessPolicyInitParameters `json:"crossSiteAccessPolicy,omitempty" tf:"cross_site_access_policy,omitempty"` + + // The custom host names of the streaming endpoint. + CustomHostNames []*string `json:"customHostNames,omitempty" tf:"custom_host_names,omitempty"` + + // The streaming endpoint description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Azure Region where the Streaming Endpoint should exist. Changing this forces a new Streaming Endpoint to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Max cache age in seconds. + MaxCacheAgeSeconds *float64 `json:"maxCacheAgeSeconds,omitempty" tf:"max_cache_age_seconds,omitempty"` + + // The number of scale units. To create a Standard Streaming Endpoint set 0. For Premium Streaming Endpoint valid values are between 1 and 10. + ScaleUnits *float64 `json:"scaleUnits,omitempty" tf:"scale_units,omitempty"` + + // A mapping of tags which should be assigned to the Streaming Endpoint. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type StreamingEndpointObservation struct { // A access_control block as defined below. @@ -254,6 +338,18 @@ type StreamingEndpointParameters struct { type StreamingEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider StreamingEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider StreamingEndpointInitParameters `json:"initProvider,omitempty"` } // StreamingEndpointStatus defines the observed state of StreamingEndpoint. @@ -274,8 +370,8 @@ type StreamingEndpointStatus struct { type StreamingEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scaleUnits)",message="scaleUnits is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scaleUnits) || has(self.initProvider.scaleUnits)",message="scaleUnits is a required parameter" Spec StreamingEndpointSpec `json:"spec"` Status StreamingEndpointStatus `json:"status,omitempty"` } diff --git a/apis/media/v1beta1/zz_streaminglocator_types.go b/apis/media/v1beta1/zz_streaminglocator_types.go index 5acdc5498..c254076d9 100755 --- a/apis/media/v1beta1/zz_streaminglocator_types.go +++ b/apis/media/v1beta1/zz_streaminglocator_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ContentKeyInitParameters struct { + + // ID of Content Key. Changing this forces a new Streaming Locator to be created. + ContentKeyID *string `json:"contentKeyId,omitempty" tf:"content_key_id,omitempty"` + + // Label of Content Key as specified in the Streaming Policy. Changing this forces a new Streaming Locator to be created. + LabelReferenceInStreamingPolicy *string `json:"labelReferenceInStreamingPolicy,omitempty" tf:"label_reference_in_streaming_policy,omitempty"` + + // Content Key Policy used by Content Key. Changing this forces a new Streaming Locator to be created. + PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` + + // Encryption type of Content Key. Supported values are CommonEncryptionCbcs, CommonEncryptionCenc or EnvelopeEncryption. Changing this forces a new Streaming Locator to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // Value of Content Key. Changing this forces a new Streaming Locator to be created. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ContentKeyObservation struct { // ID of Content Key. Changing this forces a new Streaming Locator to be created. @@ -54,6 +72,33 @@ type ContentKeyParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type StreamingLocatorInitParameters struct { + + // Alternative Media ID of this Streaming Locator. Changing this forces a new Streaming Locator to be created. + AlternativeMediaID *string `json:"alternativeMediaId,omitempty" tf:"alternative_media_id,omitempty"` + + // One or more content_key blocks as defined below. Changing this forces a new Streaming Locator to be created. + ContentKey []ContentKeyInitParameters `json:"contentKey,omitempty" tf:"content_key,omitempty"` + + // Name of the default Content Key Policy used by this Streaming Locator.Changing this forces a new Streaming Locator to be created. + DefaultContentKeyPolicyName *string `json:"defaultContentKeyPolicyName,omitempty" tf:"default_content_key_policy_name,omitempty"` + + // The end time of the Streaming Locator. Changing this forces a new Streaming Locator to be created. + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` + + // A list of names of asset or account filters which apply to this Streaming Locator. Changing this forces a new Streaming Locator to be created. + FilterNames []*string `json:"filterNames,omitempty" tf:"filter_names,omitempty"` + + // The start time of the Streaming Locator. Changing this forces a new Streaming Locator to be created. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` + + // The ID of the Streaming Locator. Changing this forces a new Streaming Locator to be created. + StreamingLocatorID *string `json:"streamingLocatorId,omitempty" tf:"streaming_locator_id,omitempty"` + + // Name of the Streaming Policy used by this Streaming Locator. Either specify the name of Streaming Policy you created or use one of the predefined Streaming Policies. The predefined Streaming Policies available are: Predefined_DownloadOnly, Predefined_ClearStreamingOnly, Predefined_DownloadAndClearStreaming, Predefined_ClearKey, Predefined_MultiDrmCencStreaming and Predefined_MultiDrmStreaming. Changing this forces a new Streaming Locator to be created. + StreamingPolicyName *string `json:"streamingPolicyName,omitempty" tf:"streaming_policy_name,omitempty"` +} + type StreamingLocatorObservation struct { // Alternative Media ID of this Streaming Locator. Changing this forces a new Streaming Locator to be created. @@ -171,6 +216,18 @@ type StreamingLocatorParameters struct { type StreamingLocatorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider StreamingLocatorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider StreamingLocatorInitParameters `json:"initProvider,omitempty"` } // StreamingLocatorStatus defines the observed state of StreamingLocator. @@ -191,7 +248,7 @@ type StreamingLocatorStatus struct { type StreamingLocator struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.streamingPolicyName)",message="streamingPolicyName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.streamingPolicyName) || has(self.initProvider.streamingPolicyName)",message="streamingPolicyName is a required parameter" Spec StreamingLocatorSpec `json:"spec"` Status StreamingLocatorStatus `json:"status,omitempty"` } diff --git a/apis/media/v1beta1/zz_streamingpolicy_types.go b/apis/media/v1beta1/zz_streamingpolicy_types.go index 77eec1e2d..488d398e9 100755 --- a/apis/media/v1beta1/zz_streamingpolicy_types.go +++ b/apis/media/v1beta1/zz_streamingpolicy_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ClearKeyEncryptionInitParameters struct { + + // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. + CustomKeysAcquisitionURLTemplate *string `json:"customKeysAcquisitionUrlTemplate,omitempty" tf:"custom_keys_acquisition_url_template,omitempty"` +} + type ClearKeyEncryptionObservation struct { // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. @@ -22,8 +28,20 @@ type ClearKeyEncryptionObservation struct { type ClearKeyEncryptionParameters struct { // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - CustomKeysAcquisitionURLTemplate *string `json:"customKeysAcquisitionUrlTemplate" tf:"custom_keys_acquisition_url_template,omitempty"` + // +kubebuilder:validation:Optional + CustomKeysAcquisitionURLTemplate *string `json:"customKeysAcquisitionUrlTemplate,omitempty" tf:"custom_keys_acquisition_url_template,omitempty"` +} + +type ClearTrackConditionInitParameters struct { + + // The track property condition operation. Possible value is Equal. Changing this forces a new Streaming Policy to be created. + Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` + + // The track property type. Possible value is FourCC. Changing this forces a new Streaming Policy to be created. + Property *string `json:"property,omitempty" tf:"property,omitempty"` + + // The track property value. Changing this forces a new Streaming Policy to be created. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type ClearTrackConditionObservation struct { @@ -41,16 +59,22 @@ type ClearTrackConditionObservation struct { type ClearTrackConditionParameters struct { // The track property condition operation. Possible value is Equal. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - Operation *string `json:"operation" tf:"operation,omitempty"` + // +kubebuilder:validation:Optional + Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` // The track property type. Possible value is FourCC. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - Property *string `json:"property" tf:"property,omitempty"` + // +kubebuilder:validation:Optional + Property *string `json:"property,omitempty" tf:"property,omitempty"` // The track property value. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type ClearTrackInitParameters struct { + + // One or more condition blocks as defined below. Changing this forces a new Streaming Policy to be created. + Condition []ClearTrackConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` } type ClearTrackObservation struct { @@ -62,8 +86,23 @@ type ClearTrackObservation struct { type ClearTrackParameters struct { // One or more condition blocks as defined below. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - Condition []ClearTrackConditionParameters `json:"condition" tf:"condition,omitempty"` + // +kubebuilder:validation:Optional + Condition []ClearTrackConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` +} + +type CommonEncryptionCbcsInitParameters struct { + + // A clear_key_encryption block as defined below. Changing this forces a new Streaming Policy to be created. + ClearKeyEncryption []ClearKeyEncryptionInitParameters `json:"clearKeyEncryption,omitempty" tf:"clear_key_encryption,omitempty"` + + // A default_content_key block as defined below. Changing this forces a new Streaming Policy to be created. + DefaultContentKey []DefaultContentKeyInitParameters `json:"defaultContentKey,omitempty" tf:"default_content_key,omitempty"` + + // A drm_fairplay block as defined below. Changing this forces a new Streaming Policy to be created. + DrmFairplay []DrmFairplayInitParameters `json:"drmFairplay,omitempty" tf:"drm_fairplay,omitempty"` + + // A enabled_protocols block as defined below. Changing this forces a new Streaming Policy to be created. + EnabledProtocols []EnabledProtocolsInitParameters `json:"enabledProtocols,omitempty" tf:"enabled_protocols,omitempty"` } type CommonEncryptionCbcsObservation struct { @@ -100,6 +139,12 @@ type CommonEncryptionCbcsParameters struct { EnabledProtocols []EnabledProtocolsParameters `json:"enabledProtocols,omitempty" tf:"enabled_protocols,omitempty"` } +type CommonEncryptionCencClearKeyEncryptionInitParameters struct { + + // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. + CustomKeysAcquisitionURLTemplate *string `json:"customKeysAcquisitionUrlTemplate,omitempty" tf:"custom_keys_acquisition_url_template,omitempty"` +} + type CommonEncryptionCencClearKeyEncryptionObservation struct { // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. @@ -109,8 +154,14 @@ type CommonEncryptionCencClearKeyEncryptionObservation struct { type CommonEncryptionCencClearKeyEncryptionParameters struct { // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - CustomKeysAcquisitionURLTemplate *string `json:"customKeysAcquisitionUrlTemplate" tf:"custom_keys_acquisition_url_template,omitempty"` + // +kubebuilder:validation:Optional + CustomKeysAcquisitionURLTemplate *string `json:"customKeysAcquisitionUrlTemplate,omitempty" tf:"custom_keys_acquisition_url_template,omitempty"` +} + +type CommonEncryptionCencDefaultContentKeyInitParameters struct { + + // Label can be used to specify Content Key when creating a Streaming Locator. Changing this forces a new Streaming Policy to be created. + Label *string `json:"label,omitempty" tf:"label,omitempty"` } type CommonEncryptionCencDefaultContentKeyObservation struct { @@ -142,6 +193,21 @@ type CommonEncryptionCencDefaultContentKeyParameters struct { PolicyNameSelector *v1.Selector `json:"policyNameSelector,omitempty" tf:"-"` } +type CommonEncryptionCencEnabledProtocolsInitParameters struct { + + // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. + Dash *bool `json:"dash,omitempty" tf:"dash,omitempty"` + + // Enable Download protocol or not. Changing this forces a new Streaming Policy to be created. + Download *bool `json:"download,omitempty" tf:"download,omitempty"` + + // Enable HLS protocol or not. Changing this forces a new Streaming Policy to be created. + Hls *bool `json:"hls,omitempty" tf:"hls,omitempty"` + + // Enable SmoothStreaming protocol or not. Changing this forces a new Streaming Policy to be created. + SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` +} + type CommonEncryptionCencEnabledProtocolsObservation struct { // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. @@ -176,6 +242,30 @@ type CommonEncryptionCencEnabledProtocolsParameters struct { SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` } +type CommonEncryptionCencInitParameters struct { + + // A clear_key_encryption block as defined below. Changing this forces a new Streaming Policy to be created. + ClearKeyEncryption []CommonEncryptionCencClearKeyEncryptionInitParameters `json:"clearKeyEncryption,omitempty" tf:"clear_key_encryption,omitempty"` + + // One or more clear_track blocks as defined below. Changing this forces a new Streaming Policy to be created. + ClearTrack []ClearTrackInitParameters `json:"clearTrack,omitempty" tf:"clear_track,omitempty"` + + // One or more content_key_to_track_mapping blocks as defined below. Changing this forces a new Streaming Policy to be created. + ContentKeyToTrackMapping []ContentKeyToTrackMappingInitParameters `json:"contentKeyToTrackMapping,omitempty" tf:"content_key_to_track_mapping,omitempty"` + + // A default_content_key block as defined below. Changing this forces a new Streaming Policy to be created. + DefaultContentKey []CommonEncryptionCencDefaultContentKeyInitParameters `json:"defaultContentKey,omitempty" tf:"default_content_key,omitempty"` + + // A drm_playready block as defined below. Changing this forces a new Streaming Policy to be created. + DrmPlayready []DrmPlayreadyInitParameters `json:"drmPlayready,omitempty" tf:"drm_playready,omitempty"` + + // The URL template for the custom service that delivers licenses to the end user. This is not required when using Azure Media Services for issuing licenses. Changing this forces a new Streaming Policy to be created. + DrmWidevineCustomLicenseAcquisitionURLTemplate *string `json:"drmWidevineCustomLicenseAcquisitionUrlTemplate,omitempty" tf:"drm_widevine_custom_license_acquisition_url_template,omitempty"` + + // A enabled_protocols block as defined below. Changing this forces a new Streaming Policy to be created. + EnabledProtocols []CommonEncryptionCencEnabledProtocolsInitParameters `json:"enabledProtocols,omitempty" tf:"enabled_protocols,omitempty"` +} + type CommonEncryptionCencObservation struct { // A clear_key_encryption block as defined below. Changing this forces a new Streaming Policy to be created. @@ -231,6 +321,18 @@ type CommonEncryptionCencParameters struct { EnabledProtocols []CommonEncryptionCencEnabledProtocolsParameters `json:"enabledProtocols,omitempty" tf:"enabled_protocols,omitempty"` } +type ContentKeyToTrackMappingInitParameters struct { + + // Label can be used to specify Content Key when creating a Streaming Locator. Changing this forces a new Streaming Policy to be created. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // Policy used by Default Key. Changing this forces a new Streaming Policy to be created. + PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` + + // One or more track blocks as defined below. Changing this forces a new Streaming Policy to be created. + Track []TrackInitParameters `json:"track,omitempty" tf:"track,omitempty"` +} + type ContentKeyToTrackMappingObservation struct { // Label can be used to specify Content Key when creating a Streaming Locator. Changing this forces a new Streaming Policy to be created. @@ -254,8 +356,17 @@ type ContentKeyToTrackMappingParameters struct { PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` // One or more track blocks as defined below. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - Track []TrackParameters `json:"track" tf:"track,omitempty"` + // +kubebuilder:validation:Optional + Track []TrackParameters `json:"track,omitempty" tf:"track,omitempty"` +} + +type DefaultContentKeyInitParameters struct { + + // Label can be used to specify Content Key when creating a Streaming Locator. Changing this forces a new Streaming Policy to be created. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // Policy used by Default Key. Changing this forces a new Streaming Policy to be created. + PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` } type DefaultContentKeyObservation struct { @@ -278,6 +389,15 @@ type DefaultContentKeyParameters struct { PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` } +type DrmFairplayInitParameters struct { + + // All license to be persistent or not. Changing this forces a new Streaming Policy to be created. + AllowPersistentLicense *bool `json:"allowPersistentLicense,omitempty" tf:"allow_persistent_license,omitempty"` + + // The URL template for the custom service that delivers licenses to the end user. This is not required when using Azure Media Services for issuing licenses. Changing this forces a new Streaming Policy to be created. + CustomLicenseAcquisitionURLTemplate *string `json:"customLicenseAcquisitionUrlTemplate,omitempty" tf:"custom_license_acquisition_url_template,omitempty"` +} + type DrmFairplayObservation struct { // All license to be persistent or not. Changing this forces a new Streaming Policy to be created. @@ -298,6 +418,15 @@ type DrmFairplayParameters struct { CustomLicenseAcquisitionURLTemplate *string `json:"customLicenseAcquisitionUrlTemplate,omitempty" tf:"custom_license_acquisition_url_template,omitempty"` } +type DrmPlayreadyInitParameters struct { + + // Custom attributes for PlayReady. Changing this forces a new Streaming Policy to be created. + CustomAttributes *string `json:"customAttributes,omitempty" tf:"custom_attributes,omitempty"` + + // The URL template for the custom service that delivers licenses to the end user. This is not required when using Azure Media Services for issuing licenses. Changing this forces a new Streaming Policy to be created. + CustomLicenseAcquisitionURLTemplate *string `json:"customLicenseAcquisitionUrlTemplate,omitempty" tf:"custom_license_acquisition_url_template,omitempty"` +} + type DrmPlayreadyObservation struct { // Custom attributes for PlayReady. Changing this forces a new Streaming Policy to be created. @@ -318,6 +447,21 @@ type DrmPlayreadyParameters struct { CustomLicenseAcquisitionURLTemplate *string `json:"customLicenseAcquisitionUrlTemplate,omitempty" tf:"custom_license_acquisition_url_template,omitempty"` } +type EnabledProtocolsInitParameters struct { + + // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. + Dash *bool `json:"dash,omitempty" tf:"dash,omitempty"` + + // Enable Download protocol or not. Changing this forces a new Streaming Policy to be created. + Download *bool `json:"download,omitempty" tf:"download,omitempty"` + + // Enable HLS protocol or not. Changing this forces a new Streaming Policy to be created. + Hls *bool `json:"hls,omitempty" tf:"hls,omitempty"` + + // Enable SmoothStreaming protocol or not. Changing this forces a new Streaming Policy to be created. + SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` +} + type EnabledProtocolsObservation struct { // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. @@ -352,6 +496,15 @@ type EnabledProtocolsParameters struct { SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` } +type EnvelopeEncryptionDefaultContentKeyInitParameters struct { + + // Label can be used to specify Content Key when creating a Streaming Locator. Changing this forces a new Streaming Policy to be created. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // Policy used by Default Key. Changing this forces a new Streaming Policy to be created. + PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` +} + type EnvelopeEncryptionDefaultContentKeyObservation struct { // Label can be used to specify Content Key when creating a Streaming Locator. Changing this forces a new Streaming Policy to be created. @@ -372,6 +525,21 @@ type EnvelopeEncryptionDefaultContentKeyParameters struct { PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` } +type EnvelopeEncryptionEnabledProtocolsInitParameters struct { + + // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. + Dash *bool `json:"dash,omitempty" tf:"dash,omitempty"` + + // Enable Download protocol or not. Changing this forces a new Streaming Policy to be created. + Download *bool `json:"download,omitempty" tf:"download,omitempty"` + + // Enable HLS protocol or not. Changing this forces a new Streaming Policy to be created. + Hls *bool `json:"hls,omitempty" tf:"hls,omitempty"` + + // Enable SmoothStreaming protocol or not. Changing this forces a new Streaming Policy to be created. + SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` +} + type EnvelopeEncryptionEnabledProtocolsObservation struct { // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. @@ -406,6 +574,18 @@ type EnvelopeEncryptionEnabledProtocolsParameters struct { SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` } +type EnvelopeEncryptionInitParameters struct { + + // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. + CustomKeysAcquisitionURLTemplate *string `json:"customKeysAcquisitionUrlTemplate,omitempty" tf:"custom_keys_acquisition_url_template,omitempty"` + + // A default_content_key block as defined above. Changing this forces a new Streaming Policy to be created. + DefaultContentKey []EnvelopeEncryptionDefaultContentKeyInitParameters `json:"defaultContentKey,omitempty" tf:"default_content_key,omitempty"` + + // A enabled_protocols block as defined above. Changing this forces a new Streaming Policy to be created. + EnabledProtocols []EnvelopeEncryptionEnabledProtocolsInitParameters `json:"enabledProtocols,omitempty" tf:"enabled_protocols,omitempty"` +} + type EnvelopeEncryptionObservation struct { // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. @@ -433,6 +613,21 @@ type EnvelopeEncryptionParameters struct { EnabledProtocols []EnvelopeEncryptionEnabledProtocolsParameters `json:"enabledProtocols,omitempty" tf:"enabled_protocols,omitempty"` } +type NoEncryptionEnabledProtocolsInitParameters struct { + + // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. + Dash *bool `json:"dash,omitempty" tf:"dash,omitempty"` + + // Enable Download protocol or not. Changing this forces a new Streaming Policy to be created. + Download *bool `json:"download,omitempty" tf:"download,omitempty"` + + // Enable HLS protocol or not. Changing this forces a new Streaming Policy to be created. + Hls *bool `json:"hls,omitempty" tf:"hls,omitempty"` + + // Enable SmoothStreaming protocol or not. Changing this forces a new Streaming Policy to be created. + SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` +} + type NoEncryptionEnabledProtocolsObservation struct { // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. @@ -467,6 +662,24 @@ type NoEncryptionEnabledProtocolsParameters struct { SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` } +type StreamingPolicyInitParameters struct { + + // A common_encryption_cbcs block as defined below. Changing this forces a new Streaming Policy to be created. + CommonEncryptionCbcs []CommonEncryptionCbcsInitParameters `json:"commonEncryptionCbcs,omitempty" tf:"common_encryption_cbcs,omitempty"` + + // A common_encryption_cenc block as defined below. Changing this forces a new Streaming Policy to be created. + CommonEncryptionCenc []CommonEncryptionCencInitParameters `json:"commonEncryptionCenc,omitempty" tf:"common_encryption_cenc,omitempty"` + + // Default Content Key used by current Streaming Policy. Changing this forces a new Streaming Policy to be created. + DefaultContentKeyPolicyName *string `json:"defaultContentKeyPolicyName,omitempty" tf:"default_content_key_policy_name,omitempty"` + + // A envelope_encryption block as defined below. Changing this forces a new Streaming Policy to be created. + EnvelopeEncryption []EnvelopeEncryptionInitParameters `json:"envelopeEncryption,omitempty" tf:"envelope_encryption,omitempty"` + + // A no_encryption_enabled_protocols block as defined below. Changing this forces a new Streaming Policy to be created. + NoEncryptionEnabledProtocols []NoEncryptionEnabledProtocolsInitParameters `json:"noEncryptionEnabledProtocols,omitempty" tf:"no_encryption_enabled_protocols,omitempty"` +} + type StreamingPolicyObservation struct { // A common_encryption_cbcs block as defined below. Changing this forces a new Streaming Policy to be created. @@ -543,6 +756,18 @@ type StreamingPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` } +type TrackConditionInitParameters struct { + + // The track property condition operation. Possible value is Equal. Changing this forces a new Streaming Policy to be created. + Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` + + // The track property type. Possible value is FourCC. Changing this forces a new Streaming Policy to be created. + Property *string `json:"property,omitempty" tf:"property,omitempty"` + + // The track property value. Changing this forces a new Streaming Policy to be created. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type TrackConditionObservation struct { // The track property condition operation. Possible value is Equal. Changing this forces a new Streaming Policy to be created. @@ -558,16 +783,22 @@ type TrackConditionObservation struct { type TrackConditionParameters struct { // The track property condition operation. Possible value is Equal. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - Operation *string `json:"operation" tf:"operation,omitempty"` + // +kubebuilder:validation:Optional + Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` // The track property type. Possible value is FourCC. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - Property *string `json:"property" tf:"property,omitempty"` + // +kubebuilder:validation:Optional + Property *string `json:"property,omitempty" tf:"property,omitempty"` // The track property value. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type TrackInitParameters struct { + + // One or more condition blocks as defined below. Changing this forces a new Streaming Policy to be created. + Condition []TrackConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` } type TrackObservation struct { @@ -579,14 +810,26 @@ type TrackObservation struct { type TrackParameters struct { // One or more condition blocks as defined below. Changing this forces a new Streaming Policy to be created. - // +kubebuilder:validation:Required - Condition []TrackConditionParameters `json:"condition" tf:"condition,omitempty"` + // +kubebuilder:validation:Optional + Condition []TrackConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` } // StreamingPolicySpec defines the desired state of StreamingPolicy type StreamingPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider StreamingPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider StreamingPolicyInitParameters `json:"initProvider,omitempty"` } // StreamingPolicyStatus defines the observed state of StreamingPolicy. diff --git a/apis/media/v1beta1/zz_transform_types.go b/apis/media/v1beta1/zz_transform_types.go index 819d981a7..8548a0de3 100755 --- a/apis/media/v1beta1/zz_transform_types.go +++ b/apis/media/v1beta1/zz_transform_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AacAudioInitParameters struct { + + // The average bitrate in bits per second at which to encode the input video when generating this layer. + Bitrate *float64 `json:"bitrate,omitempty" tf:"bitrate,omitempty"` + + // The number of audio channels. Default to 2. + Channels *float64 `json:"channels,omitempty" tf:"channels,omitempty"` + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // The H.264 profile. Possible values are Auto, Baseline, High, High422, High444,or Main. Default to Auto. + Profile *string `json:"profile,omitempty" tf:"profile,omitempty"` + + // The sampling rate to use for encoding in Hertz. Default to 48000. + SamplingRate *float64 `json:"samplingRate,omitempty" tf:"sampling_rate,omitempty"` +} + type AacAudioObservation struct { // The average bitrate in bits per second at which to encode the input video when generating this layer. @@ -54,6 +72,18 @@ type AacAudioParameters struct { SamplingRate *float64 `json:"samplingRate,omitempty" tf:"sampling_rate,omitempty"` } +type AudioAnalyzerPresetInitParameters struct { + + // Possible values are Basic or Standard. Determines the set of audio analysis operations to be performed. Default to Standard. + AudioAnalysisMode *string `json:"audioAnalysisMode,omitempty" tf:"audio_analysis_mode,omitempty"` + + // The language for the audio payload in the input using the BCP-47 format of 'language tag-region' (e.g: 'en-US'). If you know the language of your content, it is recommended that you specify it. The language must be specified explicitly for AudioAnalysisMode:Basic, since automatic language detection is not included in basic mode. If the language isn't specified, automatic language detection will choose the first language detected and process with the selected language for the duration of the file. It does not currently support dynamically switching between languages after the first language is detected. The automatic detection works best with audio recordings with clearly discernible speech. If automatic detection fails to find the language, transcription would fall back to en-US. The list of supported languages is available here: https://go.microsoft.com/fwlink/?linkid=2109463. + AudioLanguage *string `json:"audioLanguage,omitempty" tf:"audio_language,omitempty"` + + // Dictionary containing key value pairs for parameters not exposed in the preset itself. + ExperimentalOptions map[string]*string `json:"experimentalOptions,omitempty" tf:"experimental_options,omitempty"` +} + type AudioAnalyzerPresetObservation struct { // Possible values are Basic or Standard. Determines the set of audio analysis operations to be performed. Default to Standard. @@ -81,6 +111,27 @@ type AudioAnalyzerPresetParameters struct { ExperimentalOptions map[string]*string `json:"experimentalOptions,omitempty" tf:"experimental_options,omitempty"` } +type AudioInitParameters struct { + + // The gain level of audio in the overlay. The value should be in range between 0 to 1.0. The default is 1.0. + AudioGainLevel *float64 `json:"audioGainLevel,omitempty" tf:"audio_gain_level,omitempty"` + + // The end position, with reference to the input video, at which the overlay ends. The value should be in ISO 8601 format. For example, PT30S to end the overlay at 30 seconds into the input video. If not specified or the value is greater than the input video duration, the overlay will be applied until the end of the input video if the overlay media duration is greater than the input video duration, else the overlay will last as long as the overlay media duration. + End *string `json:"end,omitempty" tf:"end,omitempty"` + + // The duration over which the overlay fades in onto the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade in (same as PT0S). + FadeInDuration *string `json:"fadeInDuration,omitempty" tf:"fade_in_duration,omitempty"` + + // The duration over which the overlay fades out of the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade out (same as PT0S). + FadeOutDuration *string `json:"fadeOutDuration,omitempty" tf:"fade_out_duration,omitempty"` + + // The label of the job input which is to be used as an overlay. The input must specify exact one file. You can specify an image file in JPG, PNG, GIF or BMP format, or an audio file (such as a WAV, MP3, WMA or M4A file), or a video file. + InputLabel *string `json:"inputLabel,omitempty" tf:"input_label,omitempty"` + + // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + Start *string `json:"start,omitempty" tf:"start,omitempty"` +} + type AudioObservation struct { // The gain level of audio in the overlay. The value should be in range between 0 to 1.0. The default is 1.0. @@ -121,14 +172,23 @@ type AudioParameters struct { FadeOutDuration *string `json:"fadeOutDuration,omitempty" tf:"fade_out_duration,omitempty"` // The label of the job input which is to be used as an overlay. The input must specify exact one file. You can specify an image file in JPG, PNG, GIF or BMP format, or an audio file (such as a WAV, MP3, WMA or M4A file), or a video file. - // +kubebuilder:validation:Required - InputLabel *string `json:"inputLabel" tf:"input_label,omitempty"` + // +kubebuilder:validation:Optional + InputLabel *string `json:"inputLabel,omitempty" tf:"input_label,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } +type BuiltinPresetInitParameters struct { + + // A present_configuration block as defined below. + PresetConfiguration []PresetConfigurationInitParameters `json:"presetConfiguration,omitempty" tf:"preset_configuration,omitempty"` + + // The built-in preset to be used for encoding videos. The Possible values are AACGoodQualityAudio, AdaptiveStreaming, ContentAwareEncoding, ContentAwareEncodingExperimental, CopyAllBitrateNonInterleaved, DDGoodQualityAudio, H265AdaptiveStreaming, H265ContentAwareEncoding, H265SingleBitrate4K, H265SingleBitrate1080p, H265SingleBitrate720p, H264MultipleBitrate1080p, H264MultipleBitrateSD, H264MultipleBitrate720p, H264SingleBitrate1080p, H264SingleBitrateSD and H264SingleBitrate720p. + PresetName *string `json:"presetName,omitempty" tf:"preset_name,omitempty"` +} + type BuiltinPresetObservation struct { // A present_configuration block as defined below. @@ -145,8 +205,35 @@ type BuiltinPresetParameters struct { PresetConfiguration []PresetConfigurationParameters `json:"presetConfiguration,omitempty" tf:"preset_configuration,omitempty"` // The built-in preset to be used for encoding videos. The Possible values are AACGoodQualityAudio, AdaptiveStreaming, ContentAwareEncoding, ContentAwareEncodingExperimental, CopyAllBitrateNonInterleaved, DDGoodQualityAudio, H265AdaptiveStreaming, H265ContentAwareEncoding, H265SingleBitrate4K, H265SingleBitrate1080p, H265SingleBitrate720p, H264MultipleBitrate1080p, H264MultipleBitrateSD, H264MultipleBitrate720p, H264SingleBitrate1080p, H264SingleBitrateSD and H264SingleBitrate720p. - // +kubebuilder:validation:Required - PresetName *string `json:"presetName" tf:"preset_name,omitempty"` + // +kubebuilder:validation:Optional + PresetName *string `json:"presetName,omitempty" tf:"preset_name,omitempty"` +} + +type CodecInitParameters struct { + + // A aac_audio block as defined above. + AacAudio []AacAudioInitParameters `json:"aacAudio,omitempty" tf:"aac_audio,omitempty"` + + // A copy_audio block as defined below. + CopyAudio []CopyAudioInitParameters `json:"copyAudio,omitempty" tf:"copy_audio,omitempty"` + + // A copy_video block as defined below. + CopyVideo []CopyVideoInitParameters `json:"copyVideo,omitempty" tf:"copy_video,omitempty"` + + // A dd_audio block as defined below. + DdAudio []DdAudioInitParameters `json:"ddAudio,omitempty" tf:"dd_audio,omitempty"` + + // A h264_video block as defined below. + H264Video []H264VideoInitParameters `json:"h264Video,omitempty" tf:"h264_video,omitempty"` + + // A h265_video block as defined below. + H265Video []H265VideoInitParameters `json:"h265Video,omitempty" tf:"h265_video,omitempty"` + + // A jpg_image block as defined below. + JpgImage []JpgImageInitParameters `json:"jpgImage,omitempty" tf:"jpg_image,omitempty"` + + // A png_image block as defined below. + PngImage []PngImageInitParameters `json:"pngImage,omitempty" tf:"png_image,omitempty"` } type CodecObservation struct { @@ -211,6 +298,12 @@ type CodecParameters struct { PngImage []PngImageParameters `json:"pngImage,omitempty" tf:"png_image,omitempty"` } +type CopyAudioInitParameters struct { + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` +} + type CopyAudioObservation struct { // Specifies the label for the codec. The label can be used to control muxing behavior. @@ -224,6 +317,12 @@ type CopyAudioParameters struct { Label *string `json:"label,omitempty" tf:"label,omitempty"` } +type CopyVideoInitParameters struct { + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` +} + type CopyVideoObservation struct { // Specifies the label for the codec. The label can be used to control muxing behavior. @@ -237,6 +336,21 @@ type CopyVideoParameters struct { Label *string `json:"label,omitempty" tf:"label,omitempty"` } +type CropRectangleInitParameters struct { + + // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Height *string `json:"height,omitempty" tf:"height,omitempty"` + + // The number of pixels from the left-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Left *string `json:"left,omitempty" tf:"left,omitempty"` + + // The number of pixels from the top-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Top *string `json:"top,omitempty" tf:"top,omitempty"` + + // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Width *string `json:"width,omitempty" tf:"width,omitempty"` +} + type CropRectangleObservation struct { // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). @@ -271,6 +385,18 @@ type CropRectangleParameters struct { Width *string `json:"width,omitempty" tf:"width,omitempty"` } +type CustomPresetInitParameters struct { + + // One or more codec blocks as defined above. + Codec []CodecInitParameters `json:"codec,omitempty" tf:"codec,omitempty"` + + // A filter block as defined below. + Filter []FilterInitParameters `json:"filter,omitempty" tf:"filter,omitempty"` + + // One or more format blocks as defined below. + Format []FormatInitParameters `json:"format,omitempty" tf:"format,omitempty"` +} + type CustomPresetObservation struct { // One or more codec blocks as defined above. @@ -286,16 +412,31 @@ type CustomPresetObservation struct { type CustomPresetParameters struct { // One or more codec blocks as defined above. - // +kubebuilder:validation:Required - Codec []CodecParameters `json:"codec" tf:"codec,omitempty"` + // +kubebuilder:validation:Optional + Codec []CodecParameters `json:"codec,omitempty" tf:"codec,omitempty"` // A filter block as defined below. // +kubebuilder:validation:Optional Filter []FilterParameters `json:"filter,omitempty" tf:"filter,omitempty"` // One or more format blocks as defined below. - // +kubebuilder:validation:Required - Format []FormatParameters `json:"format" tf:"format,omitempty"` + // +kubebuilder:validation:Optional + Format []FormatParameters `json:"format,omitempty" tf:"format,omitempty"` +} + +type DdAudioInitParameters struct { + + // The average bitrate in bits per second at which to encode the input video when generating this layer. + Bitrate *float64 `json:"bitrate,omitempty" tf:"bitrate,omitempty"` + + // The number of audio channels. Default to 2. + Channels *float64 `json:"channels,omitempty" tf:"channels,omitempty"` + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // The sampling rate to use for encoding in Hertz. Default to 48000. + SamplingRate *float64 `json:"samplingRate,omitempty" tf:"sampling_rate,omitempty"` } type DdAudioObservation struct { @@ -332,6 +473,15 @@ type DdAudioParameters struct { SamplingRate *float64 `json:"samplingRate,omitempty" tf:"sampling_rate,omitempty"` } +type DeinterlaceInitParameters struct { + + // The deinterlacing mode. Possible values are AutoPixelAdaptive or Off. Default to AutoPixelAdaptive. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // The field parity to use for deinterlacing. Possible values are Auto, TopFieldFirst or BottomFieldFirst. Default to Auto. + Parity *string `json:"parity,omitempty" tf:"parity,omitempty"` +} + type DeinterlaceObservation struct { // The deinterlacing mode. Possible values are AutoPixelAdaptive or Off. Default to AutoPixelAdaptive. @@ -352,6 +502,21 @@ type DeinterlaceParameters struct { Parity *string `json:"parity,omitempty" tf:"parity,omitempty"` } +type FaceDetectorPresetInitParameters struct { + + // Possible values are SourceResolution or StandardDefinition. Specifies the maximum resolution at which your video is analyzed. which will keep the input video at its original resolution when analyzed. Using StandardDefinition will resize input videos to standard definition while preserving the appropriate aspect ratio. It will only resize if the video is of higher resolution. For example, a 1920x1080 input would be scaled to 640x360 before processing. Switching to StandardDefinition will reduce the time it takes to process high resolution video. It may also reduce the cost of using this component (see https://azure.microsoft.com/en-us/pricing/details/media-services/#analytics for details). However, faces that end up being too small in the resized video may not be detected. Default to SourceResolution. + AnalysisResolution *string `json:"analysisResolution,omitempty" tf:"analysis_resolution,omitempty"` + + // Specifies the type of blur to apply to faces in the output video. Possible values are Black, Box, High, Low,and Med. + BlurType *string `json:"blurType,omitempty" tf:"blur_type,omitempty"` + + // Dictionary containing key value pairs for parameters not exposed in the preset itself. + ExperimentalOptions map[string]*string `json:"experimentalOptions,omitempty" tf:"experimental_options,omitempty"` + + // This mode provides the ability to choose between the following settings: 1) Analyze - For detection only. This mode generates a metadata JSON file marking appearances of faces throughout the video. Where possible, appearances of the same person are assigned the same ID. 2) Combined - Additionally redacts(blurs) detected faces. 3) Redact - This enables a 2-pass process, allowing for selective redaction of a subset of detected faces. It takes in the metadata file from a prior analyze pass, along with the source video, and a user-selected subset of IDs that require redaction. Default to Analyze. + FaceRedactorMode *string `json:"faceRedactorMode,omitempty" tf:"face_redactor_mode,omitempty"` +} + type FaceDetectorPresetObservation struct { // Possible values are SourceResolution or StandardDefinition. Specifies the maximum resolution at which your video is analyzed. which will keep the input video at its original resolution when analyzed. Using StandardDefinition will resize input videos to standard definition while preserving the appropriate aspect ratio. It will only resize if the video is of higher resolution. For example, a 1920x1080 input would be scaled to 640x360 before processing. Switching to StandardDefinition will reduce the time it takes to process high resolution video. It may also reduce the cost of using this component (see https://azure.microsoft.com/en-us/pricing/details/media-services/#analytics for details). However, faces that end up being too small in the resized video may not be detected. Default to SourceResolution. @@ -386,6 +551,18 @@ type FaceDetectorPresetParameters struct { FaceRedactorMode *string `json:"faceRedactorMode,omitempty" tf:"face_redactor_mode,omitempty"` } +type FadeInInitParameters struct { + + // The duration of the fade effect in the video. The value can be in ISO 8601 format (For example, PT05S to fade In/Out a color during 5 seconds), or a frame count (For example, 10 to fade 10 frames from the start time), or a relative value to stream duration (For example, 10% to fade 10% of stream duration). + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` + + // The color for the fade in/out. It can be on the CSS Level1 colors or an RGB/hex value: e.g: rgb(255,0,0), 0xFF0000 or #FF0000. + FadeColor *string `json:"fadeColor,omitempty" tf:"fade_color,omitempty"` + + // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + Start *string `json:"start,omitempty" tf:"start,omitempty"` +} + type FadeInObservation struct { // The duration of the fade effect in the video. The value can be in ISO 8601 format (For example, PT05S to fade In/Out a color during 5 seconds), or a frame count (For example, 10 to fade 10 frames from the start time), or a relative value to stream duration (For example, 10% to fade 10% of stream duration). @@ -401,18 +578,30 @@ type FadeInObservation struct { type FadeInParameters struct { // The duration of the fade effect in the video. The value can be in ISO 8601 format (For example, PT05S to fade In/Out a color during 5 seconds), or a frame count (For example, 10 to fade 10 frames from the start time), or a relative value to stream duration (For example, 10% to fade 10% of stream duration). - // +kubebuilder:validation:Required - Duration *string `json:"duration" tf:"duration,omitempty"` + // +kubebuilder:validation:Optional + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // The color for the fade in/out. It can be on the CSS Level1 colors or an RGB/hex value: e.g: rgb(255,0,0), 0xFF0000 or #FF0000. - // +kubebuilder:validation:Required - FadeColor *string `json:"fadeColor" tf:"fade_color,omitempty"` + // +kubebuilder:validation:Optional + FadeColor *string `json:"fadeColor,omitempty" tf:"fade_color,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } +type FadeOutInitParameters struct { + + // The duration of the fade effect in the video. The value can be in ISO 8601 format (For example, PT05S to fade In/Out a color during 5 seconds), or a frame count (For example, 10 to fade 10 frames from the start time), or a relative value to stream duration (For example, 10% to fade 10% of stream duration). + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` + + // The color for the fade in/out. It can be on the CSS Level1 colors or an RGB/hex value: e.g: rgb(255,0,0), 0xFF0000 or #FF0000. + FadeColor *string `json:"fadeColor,omitempty" tf:"fade_color,omitempty"` + + // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + Start *string `json:"start,omitempty" tf:"start,omitempty"` +} + type FadeOutObservation struct { // The duration of the fade effect in the video. The value can be in ISO 8601 format (For example, PT05S to fade In/Out a color during 5 seconds), or a frame count (For example, 10 to fade 10 frames from the start time), or a relative value to stream duration (For example, 10% to fade 10% of stream duration). @@ -428,18 +617,39 @@ type FadeOutObservation struct { type FadeOutParameters struct { // The duration of the fade effect in the video. The value can be in ISO 8601 format (For example, PT05S to fade In/Out a color during 5 seconds), or a frame count (For example, 10 to fade 10 frames from the start time), or a relative value to stream duration (For example, 10% to fade 10% of stream duration). - // +kubebuilder:validation:Required - Duration *string `json:"duration" tf:"duration,omitempty"` + // +kubebuilder:validation:Optional + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // The color for the fade in/out. It can be on the CSS Level1 colors or an RGB/hex value: e.g: rgb(255,0,0), 0xFF0000 or #FF0000. - // +kubebuilder:validation:Required - FadeColor *string `json:"fadeColor" tf:"fade_color,omitempty"` + // +kubebuilder:validation:Optional + FadeColor *string `json:"fadeColor,omitempty" tf:"fade_color,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } +type FilterInitParameters struct { + + // A crop_rectangle block as defined above. + CropRectangle []CropRectangleInitParameters `json:"cropRectangle,omitempty" tf:"crop_rectangle,omitempty"` + + // A deinterlace block as defined below. + Deinterlace []DeinterlaceInitParameters `json:"deinterlace,omitempty" tf:"deinterlace,omitempty"` + + // A fade_in block as defined above. + FadeIn []FadeInInitParameters `json:"fadeIn,omitempty" tf:"fade_in,omitempty"` + + // A fade_out block as defined above. + FadeOut []FadeOutInitParameters `json:"fadeOut,omitempty" tf:"fade_out,omitempty"` + + // One or more overlay blocks as defined below. + Overlay []OverlayInitParameters `json:"overlay,omitempty" tf:"overlay,omitempty"` + + // The rotation to be applied to the input video before it is encoded. Possible values are Auto, None, Rotate90, Rotate180, Rotate270,or Rotate0. Default to Auto. + Rotation *string `json:"rotation,omitempty" tf:"rotation,omitempty"` +} + type FilterObservation struct { // A crop_rectangle block as defined above. @@ -488,6 +698,21 @@ type FilterParameters struct { Rotation *string `json:"rotation,omitempty" tf:"rotation,omitempty"` } +type FormatInitParameters struct { + + // A jpg block as defined below. + Jpg []JpgInitParameters `json:"jpg,omitempty" tf:"jpg,omitempty"` + + // A mp4 block as defined below. + Mp4 []Mp4InitParameters `json:"mp4,omitempty" tf:"mp4,omitempty"` + + // A png block as defined below. + Png []PngInitParameters `json:"png,omitempty" tf:"png,omitempty"` + + // A transport_stream block as defined below. + TransportStream []TransportStreamInitParameters `json:"transportStream,omitempty" tf:"transport_stream,omitempty"` +} + type FormatObservation struct { // A jpg block as defined below. @@ -522,6 +747,33 @@ type FormatParameters struct { TransportStream []TransportStreamParameters `json:"transportStream,omitempty" tf:"transport_stream,omitempty"` } +type H264VideoInitParameters struct { + + // The complexity of the encoding. Possible values are Balanced, Speed or Quality. + Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` + + // The distance between two key frames. The value should be non-zero in the range 0.5 to 20 seconds, specified in ISO 8601 format. The default is 2 seconds (PT2S). Note that this setting is ignored if sync_mode is set to Passthrough, where the KeyFrameInterval value will follow the input source setting. + KeyFrameInterval *string `json:"keyFrameInterval,omitempty" tf:"key_frame_interval,omitempty"` + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // One or more layer blocks as defined below. + Layer []LayerInitParameters `json:"layer,omitempty" tf:"layer,omitempty"` + + // The rate control mode. Possible values are ABR, CBR or CRF. Default to ABR. + RateControlMode *string `json:"rateControlMode,omitempty" tf:"rate_control_mode,omitempty"` + + // Whether the encoder should insert key frames at scene changes. This flag should be set to true only when the encoder is being configured to produce a single output video. Default to false. + SceneChangeDetectionEnabled *bool `json:"sceneChangeDetectionEnabled,omitempty" tf:"scene_change_detection_enabled,omitempty"` + + // The resizing mode, which indicates how the input video will be resized to fit the desired output resolution(s). Possible values are AutoFit, AutoSize or None. Default to AutoSize. + StretchMode *string `json:"stretchMode,omitempty" tf:"stretch_mode,omitempty"` + + // Specifies the synchronization mode for the video. Possible values are Auto, Cfr, Passthrough or Vfr. Default to Auto. + SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` +} + type H264VideoObservation struct { // The complexity of the encoding. Possible values are Balanced, Speed or Quality. @@ -584,6 +836,75 @@ type H264VideoParameters struct { SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` } +type H265VideoInitParameters struct { + + // The complexity of the encoding. Possible values are Balanced, Speed or Quality. + Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` + + // The distance between two key frames. The value should be non-zero in the range 0.5 to 20 seconds, specified in ISO 8601 format. The default is 2 seconds (PT2S). Note that this setting is ignored if sync_mode is set to Passthrough, where the KeyFrameInterval value will follow the input source setting. + KeyFrameInterval *string `json:"keyFrameInterval,omitempty" tf:"key_frame_interval,omitempty"` + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // One or more layer blocks as defined below. + Layer []H265VideoLayerInitParameters `json:"layer,omitempty" tf:"layer,omitempty"` + + // Whether the encoder should insert key frames at scene changes. This flag should be set to true only when the encoder is being configured to produce a single output video. Default to false. + SceneChangeDetectionEnabled *bool `json:"sceneChangeDetectionEnabled,omitempty" tf:"scene_change_detection_enabled,omitempty"` + + // The resizing mode, which indicates how the input video will be resized to fit the desired output resolution(s). Possible values are AutoFit, AutoSize or None. Default to AutoSize. + StretchMode *string `json:"stretchMode,omitempty" tf:"stretch_mode,omitempty"` + + // Specifies the synchronization mode for the video. Possible values are Auto, Cfr, Passthrough or Vfr. Default to Auto. + SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` +} + +type H265VideoLayerInitParameters struct { + + // Whether adaptive B-frames are used when encoding this layer. If not specified, the encoder will turn it on whenever the video profile permits its use. Default to true. + AdaptiveBFrameEnabled *bool `json:"adaptiveBFrameEnabled,omitempty" tf:"adaptive_b_frame_enabled,omitempty"` + + // The number of B-frames to use when encoding this layer. If not specified, the encoder chooses an appropriate number based on the video profile and level. + BFrames *float64 `json:"bFrames,omitempty" tf:"b_frames,omitempty"` + + // The average bitrate in bits per second at which to encode the input video when generating this layer. + Bitrate *float64 `json:"bitrate,omitempty" tf:"bitrate,omitempty"` + + // Specifies the maximum amount of time that the encoder should buffer frames before encoding. The value should be in ISO 8601 format. The value should be in the range 0.1 to 100 seconds. The default is 5 seconds (PT5S). + BufferWindow *string `json:"bufferWindow,omitempty" tf:"buffer_window,omitempty"` + + // The value of CRF to be used when encoding this layer. This setting takes effect when rate_control_mode is set CRF. The range of CRF value is between 0 and 51, where lower values would result in better quality, at the expense of higher file sizes. Higher values mean more compression, but at some point quality degradation will be noticed. Default to 23. + Crf *float64 `json:"crf,omitempty" tf:"crf,omitempty"` + + // The frame rate (in frames per second) at which to encode this layer. The value can be in the form of M/N where M and N are integers (For example, 30000/1001), or in the form of a number (For example, 30, or 29.97). The encoder enforces constraints on allowed frame rates based on the profile and level. If it is not specified, the encoder will use the same frame rate as the input video. + FrameRate *string `json:"frameRate,omitempty" tf:"frame_rate,omitempty"` + + // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Height *string `json:"height,omitempty" tf:"height,omitempty"` + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // The H.264 levels. Currently, the resource support Level up to 6.2. The value can be auto, or a number that matches the H.264 profile. If not specified, the default is auto, which lets the encoder choose the Level that is appropriate for this layer. + Level *string `json:"level,omitempty" tf:"level,omitempty"` + + // The maximum bitrate (in bits per second), at which the VBV buffer should be assumed to refill. If not specified, defaults to the same value as bitrate. + MaxBitrate *float64 `json:"maxBitrate,omitempty" tf:"max_bitrate,omitempty"` + + // The H.264 profile. Possible values are Auto, Baseline, High, High422, High444,or Main. Default to Auto. + Profile *string `json:"profile,omitempty" tf:"profile,omitempty"` + + // The number of reference frames to be used when encoding this layer. If not specified, the encoder determines an appropriate number based on the encoder complexity setting. + ReferenceFrames *float64 `json:"referenceFrames,omitempty" tf:"reference_frames,omitempty"` + + // The number of slices to be used when encoding this layer. If not specified, default is 1, which means that encoder will use a single slice for each frame. + Slices *float64 `json:"slices,omitempty" tf:"slices,omitempty"` + + // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Width *string `json:"width,omitempty" tf:"width,omitempty"` +} + type H265VideoLayerObservation struct { // Whether adaptive B-frames are used when encoding this layer. If not specified, the encoder will turn it on whenever the video profile permits its use. Default to true. @@ -640,8 +961,8 @@ type H265VideoLayerParameters struct { BFrames *float64 `json:"bFrames,omitempty" tf:"b_frames,omitempty"` // The average bitrate in bits per second at which to encode the input video when generating this layer. - // +kubebuilder:validation:Required - Bitrate *float64 `json:"bitrate" tf:"bitrate,omitempty"` + // +kubebuilder:validation:Optional + Bitrate *float64 `json:"bitrate,omitempty" tf:"bitrate,omitempty"` // Specifies the maximum amount of time that the encoder should buffer frames before encoding. The value should be in ISO 8601 format. The value should be in the range 0.1 to 100 seconds. The default is 5 seconds (PT5S). // +kubebuilder:validation:Optional @@ -743,6 +1064,51 @@ type H265VideoParameters struct { SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` } +type JpgImageInitParameters struct { + + // The distance between two key frames. The value should be non-zero in the range 0.5 to 20 seconds, specified in ISO 8601 format. The default is 2 seconds (PT2S). Note that this setting is ignored if sync_mode is set to Passthrough, where the KeyFrameInterval value will follow the input source setting. + KeyFrameInterval *string `json:"keyFrameInterval,omitempty" tf:"key_frame_interval,omitempty"` + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // One or more layer blocks as defined below. + Layer []JpgImageLayerInitParameters `json:"layer,omitempty" tf:"layer,omitempty"` + + // The position relative to transform preset start time in the input video at which to stop generating thumbnails. The value can be in ISO 8601 format (For example, PT5M30S to stop at 5 minutes and 30 seconds from start time), or a frame count (For example, 300 to stop at the 300th frame from the frame at start time. If this value is 1, it means only producing one thumbnail at start time), or a relative value to the stream duration (For example, 50% to stop at half of stream duration from start time). The default value is 100%, which means to stop at the end of the stream. + Range *string `json:"range,omitempty" tf:"range,omitempty"` + + // Sets the number of columns used in thumbnail sprite image. The number of rows are automatically calculated and a VTT file is generated with the coordinate mappings for each thumbnail in the sprite. Note: this value should be a positive integer and a proper value is recommended so that the output image resolution will not go beyond JPEG maximum pixel resolution limit 65535x65535. + SpriteColumn *float64 `json:"spriteColumn,omitempty" tf:"sprite_column,omitempty"` + + // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + Start *string `json:"start,omitempty" tf:"start,omitempty"` + + // The intervals at which thumbnails are generated. The value can be in ISO 8601 format (For example, PT05S for one image every 5 seconds), or a frame count (For example, 30 for one image every 30 frames), or a relative value to stream duration (For example, 10% for one image every 10% of stream duration). Note: Step value will affect the first generated thumbnail, which may not be exactly the one specified at transform preset start time. This is due to the encoder, which tries to select the best thumbnail between start time and Step position from start time as the first output. As the default value is 10%, it means if stream has long duration, the first generated thumbnail might be far away from the one specified at start time. Try to select reasonable value for Step if the first thumbnail is expected close to start time, or set Range value at 1 if only one thumbnail is needed at start time. + Step *string `json:"step,omitempty" tf:"step,omitempty"` + + // The resizing mode, which indicates how the input video will be resized to fit the desired output resolution(s). Possible values are AutoFit, AutoSize or None. Default to AutoSize. + StretchMode *string `json:"stretchMode,omitempty" tf:"stretch_mode,omitempty"` + + // Specifies the synchronization mode for the video. Possible values are Auto, Cfr, Passthrough or Vfr. Default to Auto. + SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` +} + +type JpgImageLayerInitParameters struct { + + // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Height *string `json:"height,omitempty" tf:"height,omitempty"` + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // The compression quality of the JPEG output. Range is from 0 to 100 and the default is 70. + Quality *float64 `json:"quality,omitempty" tf:"quality,omitempty"` + + // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Width *string `json:"width,omitempty" tf:"width,omitempty"` +} + type JpgImageLayerObservation struct { // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). @@ -830,8 +1196,8 @@ type JpgImageParameters struct { SpriteColumn *float64 `json:"spriteColumn,omitempty" tf:"sprite_column,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. - // +kubebuilder:validation:Required - Start *string `json:"start" tf:"start,omitempty"` + // +kubebuilder:validation:Optional + Start *string `json:"start,omitempty" tf:"start,omitempty"` // The intervals at which thumbnails are generated. The value can be in ISO 8601 format (For example, PT05S for one image every 5 seconds), or a frame count (For example, 30 for one image every 30 frames), or a relative value to stream duration (For example, 10% for one image every 10% of stream duration). Note: Step value will affect the first generated thumbnail, which may not be exactly the one specified at transform preset start time. This is due to the encoder, which tries to select the best thumbnail between start time and Step position from start time as the first output. As the default value is 10%, it means if stream has long duration, the first generated thumbnail might be far away from the one specified at start time. Try to select reasonable value for Step if the first thumbnail is expected close to start time, or set Range value at 1 if only one thumbnail is needed at start time. // +kubebuilder:validation:Optional @@ -846,6 +1212,12 @@ type JpgImageParameters struct { SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` } +type JpgInitParameters struct { + + // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. + FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` +} + type JpgObservation struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. @@ -855,8 +1227,56 @@ type JpgObservation struct { type JpgParameters struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. - // +kubebuilder:validation:Required - FilenamePattern *string `json:"filenamePattern" tf:"filename_pattern,omitempty"` + // +kubebuilder:validation:Optional + FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` +} + +type LayerInitParameters struct { + + // Whether adaptive B-frames are used when encoding this layer. If not specified, the encoder will turn it on whenever the video profile permits its use. Default to true. + AdaptiveBFrameEnabled *bool `json:"adaptiveBFrameEnabled,omitempty" tf:"adaptive_b_frame_enabled,omitempty"` + + // The number of B-frames to use when encoding this layer. If not specified, the encoder chooses an appropriate number based on the video profile and level. + BFrames *float64 `json:"bFrames,omitempty" tf:"b_frames,omitempty"` + + // The average bitrate in bits per second at which to encode the input video when generating this layer. + Bitrate *float64 `json:"bitrate,omitempty" tf:"bitrate,omitempty"` + + // Specifies the maximum amount of time that the encoder should buffer frames before encoding. The value should be in ISO 8601 format. The value should be in the range 0.1 to 100 seconds. The default is 5 seconds (PT5S). + BufferWindow *string `json:"bufferWindow,omitempty" tf:"buffer_window,omitempty"` + + // The value of CRF to be used when encoding this layer. This setting takes effect when rate_control_mode is set CRF. The range of CRF value is between 0 and 51, where lower values would result in better quality, at the expense of higher file sizes. Higher values mean more compression, but at some point quality degradation will be noticed. Default to 23. + Crf *float64 `json:"crf,omitempty" tf:"crf,omitempty"` + + // The entropy mode to be used for this layer. Possible values are Cabac or Cavlc. If not specified, the encoder chooses the mode that is appropriate for the profile and level. + EntropyMode *string `json:"entropyMode,omitempty" tf:"entropy_mode,omitempty"` + + // The frame rate (in frames per second) at which to encode this layer. The value can be in the form of M/N where M and N are integers (For example, 30000/1001), or in the form of a number (For example, 30, or 29.97). The encoder enforces constraints on allowed frame rates based on the profile and level. If it is not specified, the encoder will use the same frame rate as the input video. + FrameRate *string `json:"frameRate,omitempty" tf:"frame_rate,omitempty"` + + // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Height *string `json:"height,omitempty" tf:"height,omitempty"` + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // The H.264 levels. Currently, the resource support Level up to 6.2. The value can be auto, or a number that matches the H.264 profile. If not specified, the default is auto, which lets the encoder choose the Level that is appropriate for this layer. + Level *string `json:"level,omitempty" tf:"level,omitempty"` + + // The maximum bitrate (in bits per second), at which the VBV buffer should be assumed to refill. If not specified, defaults to the same value as bitrate. + MaxBitrate *float64 `json:"maxBitrate,omitempty" tf:"max_bitrate,omitempty"` + + // The H.264 profile. Possible values are Auto, Baseline, High, High422, High444,or Main. Default to Auto. + Profile *string `json:"profile,omitempty" tf:"profile,omitempty"` + + // The number of reference frames to be used when encoding this layer. If not specified, the encoder determines an appropriate number based on the encoder complexity setting. + ReferenceFrames *float64 `json:"referenceFrames,omitempty" tf:"reference_frames,omitempty"` + + // The number of slices to be used when encoding this layer. If not specified, default is 1, which means that encoder will use a single slice for each frame. + Slices *float64 `json:"slices,omitempty" tf:"slices,omitempty"` + + // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Width *string `json:"width,omitempty" tf:"width,omitempty"` } type LayerObservation struct { @@ -918,8 +1338,8 @@ type LayerParameters struct { BFrames *float64 `json:"bFrames,omitempty" tf:"b_frames,omitempty"` // The average bitrate in bits per second at which to encode the input video when generating this layer. - // +kubebuilder:validation:Required - Bitrate *float64 `json:"bitrate" tf:"bitrate,omitempty"` + // +kubebuilder:validation:Optional + Bitrate *float64 `json:"bitrate,omitempty" tf:"bitrate,omitempty"` // Specifies the maximum amount of time that the encoder should buffer frames before encoding. The value should be in ISO 8601 format. The value should be in the range 0.1 to 100 seconds. The default is 5 seconds (PT5S). // +kubebuilder:validation:Optional @@ -970,6 +1390,15 @@ type LayerParameters struct { Width *string `json:"width,omitempty" tf:"width,omitempty"` } +type Mp4InitParameters struct { + + // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. + FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` + + // One or more output_file blocks as defined above. + OutputFile []OutputFileInitParameters `json:"outputFile,omitempty" tf:"output_file,omitempty"` +} + type Mp4Observation struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. @@ -982,14 +1411,20 @@ type Mp4Observation struct { type Mp4Parameters struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. - // +kubebuilder:validation:Required - FilenamePattern *string `json:"filenamePattern" tf:"filename_pattern,omitempty"` + // +kubebuilder:validation:Optional + FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` // One or more output_file blocks as defined above. // +kubebuilder:validation:Optional OutputFile []OutputFileParameters `json:"outputFile,omitempty" tf:"output_file,omitempty"` } +type OutputFileInitParameters struct { + + // The list of labels that describe how the encoder should multiplex video and audio into an output file. For example, if the encoder is producing two video layers with labels v1 and v2, and one audio layer with label a1, then an array like ["v1", "a1"] tells the encoder to produce an output file with the video track represented by v1 and the audio track represented by a1. + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` +} + type OutputFileObservation struct { // The list of labels that describe how the encoder should multiplex video and audio into an output file. For example, if the encoder is producing two video layers with labels v1 and v2, and one audio layer with label a1, then an array like ["v1", "a1"] tells the encoder to produce an output file with the video track represented by v1 and the audio track represented by a1. @@ -999,8 +1434,32 @@ type OutputFileObservation struct { type OutputFileParameters struct { // The list of labels that describe how the encoder should multiplex video and audio into an output file. For example, if the encoder is producing two video layers with labels v1 and v2, and one audio layer with label a1, then an array like ["v1", "a1"] tells the encoder to produce an output file with the video track represented by v1 and the audio track represented by a1. - // +kubebuilder:validation:Required - Labels []*string `json:"labels" tf:"labels,omitempty"` + // +kubebuilder:validation:Optional + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` +} + +type OutputInitParameters struct { + + // An audio_analyzer_preset block as defined above. + AudioAnalyzerPreset []AudioAnalyzerPresetInitParameters `json:"audioAnalyzerPreset,omitempty" tf:"audio_analyzer_preset,omitempty"` + + // A builtin_preset block as defined above. + BuiltinPreset []BuiltinPresetInitParameters `json:"builtinPreset,omitempty" tf:"builtin_preset,omitempty"` + + // A custom_preset block as defined above. + CustomPreset []CustomPresetInitParameters `json:"customPreset,omitempty" tf:"custom_preset,omitempty"` + + // A face_detector_preset block as defined above. + FaceDetectorPreset []FaceDetectorPresetInitParameters `json:"faceDetectorPreset,omitempty" tf:"face_detector_preset,omitempty"` + + // A Transform can define more than one outputs. This property defines what the service should do when one output fails - either continue to produce other outputs, or, stop the other outputs. The overall Job state will not reflect failures of outputs that are specified with ContinueJob. Possible values are StopProcessingJob or ContinueJob. The default is StopProcessingJob. + OnErrorAction *string `json:"onErrorAction,omitempty" tf:"on_error_action,omitempty"` + + // Sets the relative priority of the TransformOutputs within a Transform. This sets the priority that the service uses for processing Transform Outputs. Possible values are High, Normal or Low. Defaults to Normal. + RelativePriority *string `json:"relativePriority,omitempty" tf:"relative_priority,omitempty"` + + // A video_analyzer_preset block as defined below. + VideoAnalyzerPreset []VideoAnalyzerPresetInitParameters `json:"videoAnalyzerPreset,omitempty" tf:"video_analyzer_preset,omitempty"` } type OutputObservation struct { @@ -1058,6 +1517,15 @@ type OutputParameters struct { VideoAnalyzerPreset []VideoAnalyzerPresetParameters `json:"videoAnalyzerPreset,omitempty" tf:"video_analyzer_preset,omitempty"` } +type OverlayInitParameters struct { + + // An audio block as defined above. + Audio []AudioInitParameters `json:"audio,omitempty" tf:"audio,omitempty"` + + // A video block as defined below. + Video []VideoInitParameters `json:"video,omitempty" tf:"video,omitempty"` +} + type OverlayObservation struct { // An audio block as defined above. @@ -1078,6 +1546,45 @@ type OverlayParameters struct { Video []VideoParameters `json:"video,omitempty" tf:"video,omitempty"` } +type PngImageInitParameters struct { + + // The distance between two key frames. The value should be non-zero in the range 0.5 to 20 seconds, specified in ISO 8601 format. The default is 2 seconds (PT2S). Note that this setting is ignored if sync_mode is set to Passthrough, where the KeyFrameInterval value will follow the input source setting. + KeyFrameInterval *string `json:"keyFrameInterval,omitempty" tf:"key_frame_interval,omitempty"` + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // One or more layer blocks as defined below. + Layer []PngImageLayerInitParameters `json:"layer,omitempty" tf:"layer,omitempty"` + + // The position relative to transform preset start time in the input video at which to stop generating thumbnails. The value can be in ISO 8601 format (For example, PT5M30S to stop at 5 minutes and 30 seconds from start time), or a frame count (For example, 300 to stop at the 300th frame from the frame at start time. If this value is 1, it means only producing one thumbnail at start time), or a relative value to the stream duration (For example, 50% to stop at half of stream duration from start time). The default value is 100%, which means to stop at the end of the stream. + Range *string `json:"range,omitempty" tf:"range,omitempty"` + + // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + Start *string `json:"start,omitempty" tf:"start,omitempty"` + + // The intervals at which thumbnails are generated. The value can be in ISO 8601 format (For example, PT05S for one image every 5 seconds), or a frame count (For example, 30 for one image every 30 frames), or a relative value to stream duration (For example, 10% for one image every 10% of stream duration). Note: Step value will affect the first generated thumbnail, which may not be exactly the one specified at transform preset start time. This is due to the encoder, which tries to select the best thumbnail between start time and Step position from start time as the first output. As the default value is 10%, it means if stream has long duration, the first generated thumbnail might be far away from the one specified at start time. Try to select reasonable value for Step if the first thumbnail is expected close to start time, or set Range value at 1 if only one thumbnail is needed at start time. + Step *string `json:"step,omitempty" tf:"step,omitempty"` + + // The resizing mode, which indicates how the input video will be resized to fit the desired output resolution(s). Possible values are AutoFit, AutoSize or None. Default to AutoSize. + StretchMode *string `json:"stretchMode,omitempty" tf:"stretch_mode,omitempty"` + + // Specifies the synchronization mode for the video. Possible values are Auto, Cfr, Passthrough or Vfr. Default to Auto. + SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` +} + +type PngImageLayerInitParameters struct { + + // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Height *string `json:"height,omitempty" tf:"height,omitempty"` + + // Specifies the label for the codec. The label can be used to control muxing behavior. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Width *string `json:"width,omitempty" tf:"width,omitempty"` +} + type PngImageLayerObservation struct { // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). @@ -1151,8 +1658,8 @@ type PngImageParameters struct { Range *string `json:"range,omitempty" tf:"range,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. - // +kubebuilder:validation:Required - Start *string `json:"start" tf:"start,omitempty"` + // +kubebuilder:validation:Optional + Start *string `json:"start,omitempty" tf:"start,omitempty"` // The intervals at which thumbnails are generated. The value can be in ISO 8601 format (For example, PT05S for one image every 5 seconds), or a frame count (For example, 30 for one image every 30 frames), or a relative value to stream duration (For example, 10% for one image every 10% of stream duration). Note: Step value will affect the first generated thumbnail, which may not be exactly the one specified at transform preset start time. This is due to the encoder, which tries to select the best thumbnail between start time and Step position from start time as the first output. As the default value is 10%, it means if stream has long duration, the first generated thumbnail might be far away from the one specified at start time. Try to select reasonable value for Step if the first thumbnail is expected close to start time, or set Range value at 1 if only one thumbnail is needed at start time. // +kubebuilder:validation:Optional @@ -1167,6 +1674,12 @@ type PngImageParameters struct { SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` } +type PngInitParameters struct { + + // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. + FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` +} + type PngObservation struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. @@ -1176,8 +1689,23 @@ type PngObservation struct { type PngParameters struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. - // +kubebuilder:validation:Required - FilenamePattern *string `json:"filenamePattern" tf:"filename_pattern,omitempty"` + // +kubebuilder:validation:Optional + FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` +} + +type PositionInitParameters struct { + + // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Height *string `json:"height,omitempty" tf:"height,omitempty"` + + // The number of pixels from the left-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Left *string `json:"left,omitempty" tf:"left,omitempty"` + + // The number of pixels from the top-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Top *string `json:"top,omitempty" tf:"top,omitempty"` + + // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Width *string `json:"width,omitempty" tf:"width,omitempty"` } type PositionObservation struct { @@ -1214,6 +1742,33 @@ type PositionParameters struct { Width *string `json:"width,omitempty" tf:"width,omitempty"` } +type PresetConfigurationInitParameters struct { + + // The complexity of the encoding. Possible values are Balanced, Speed or Quality. + Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` + + // Specifies the interleave mode of the output to control how audio are stored in the container format. Possible values are InterleavedOutput and NonInterleavedOutput. + InterleaveOutput *string `json:"interleaveOutput,omitempty" tf:"interleave_output,omitempty"` + + // The key frame interval in seconds. Possible value is a positive float. For example, set as 2.0 to reduce the playback buffering for some players. + KeyFrameIntervalInSeconds *float64 `json:"keyFrameIntervalInSeconds,omitempty" tf:"key_frame_interval_in_seconds,omitempty"` + + // The maximum bitrate in bits per second (threshold for the top video layer). For example, set as 6000000 to avoid producing very high bitrate outputs for contents with high complexity. + MaxBitrateBps *float64 `json:"maxBitrateBps,omitempty" tf:"max_bitrate_bps,omitempty"` + + // The maximum height of output video layers. For example, set as 720 to produce output layers up to 720P even if the input is 4K. + MaxHeight *float64 `json:"maxHeight,omitempty" tf:"max_height,omitempty"` + + // The maximum number of output video layers. For example, set as 4 to make sure at most 4 output layers are produced to control the overall cost of the encoding job. + MaxLayers *float64 `json:"maxLayers,omitempty" tf:"max_layers,omitempty"` + + // The minimum bitrate in bits per second (threshold for the bottom video layer). For example, set as 200000 to have a bottom layer that covers users with low network bandwidth. + MinBitrateBps *float64 `json:"minBitrateBps,omitempty" tf:"min_bitrate_bps,omitempty"` + + // The minimum height of output video layers. For example, set as 360 to avoid output layers of smaller resolutions like 180P. + MinHeight *float64 `json:"minHeight,omitempty" tf:"min_height,omitempty"` +} + type PresetConfigurationObservation struct { // The complexity of the encoding. Possible values are Balanced, Speed or Quality. @@ -1276,6 +1831,15 @@ type PresetConfigurationParameters struct { MinHeight *float64 `json:"minHeight,omitempty" tf:"min_height,omitempty"` } +type TransformInitParameters struct { + + // An optional verbose description of the Transform. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // One or more output blocks as defined below. At least one output must be defined. + Output []OutputInitParameters `json:"output,omitempty" tf:"output,omitempty"` +} + type TransformObservation struct { // An optional verbose description of the Transform. @@ -1331,6 +1895,15 @@ type TransformParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` } +type TransportStreamInitParameters struct { + + // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. + FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` + + // One or more output_file blocks as defined above. + OutputFile []TransportStreamOutputFileInitParameters `json:"outputFile,omitempty" tf:"output_file,omitempty"` +} + type TransportStreamObservation struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. @@ -1340,6 +1913,12 @@ type TransportStreamObservation struct { OutputFile []TransportStreamOutputFileObservation `json:"outputFile,omitempty" tf:"output_file,omitempty"` } +type TransportStreamOutputFileInitParameters struct { + + // The list of labels that describe how the encoder should multiplex video and audio into an output file. For example, if the encoder is producing two video layers with labels v1 and v2, and one audio layer with label a1, then an array like ["v1", "a1"] tells the encoder to produce an output file with the video track represented by v1 and the audio track represented by a1. + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` +} + type TransportStreamOutputFileObservation struct { // The list of labels that describe how the encoder should multiplex video and audio into an output file. For example, if the encoder is producing two video layers with labels v1 and v2, and one audio layer with label a1, then an array like ["v1", "a1"] tells the encoder to produce an output file with the video track represented by v1 and the audio track represented by a1. @@ -1349,21 +1928,36 @@ type TransportStreamOutputFileObservation struct { type TransportStreamOutputFileParameters struct { // The list of labels that describe how the encoder should multiplex video and audio into an output file. For example, if the encoder is producing two video layers with labels v1 and v2, and one audio layer with label a1, then an array like ["v1", "a1"] tells the encoder to produce an output file with the video track represented by v1 and the audio track represented by a1. - // +kubebuilder:validation:Required - Labels []*string `json:"labels" tf:"labels,omitempty"` + // +kubebuilder:validation:Optional + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` } type TransportStreamParameters struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. - // +kubebuilder:validation:Required - FilenamePattern *string `json:"filenamePattern" tf:"filename_pattern,omitempty"` + // +kubebuilder:validation:Optional + FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` // One or more output_file blocks as defined above. // +kubebuilder:validation:Optional OutputFile []TransportStreamOutputFileParameters `json:"outputFile,omitempty" tf:"output_file,omitempty"` } +type VideoAnalyzerPresetInitParameters struct { + + // Possible values are Basic or Standard. Determines the set of audio analysis operations to be performed. Default to Standard. + AudioAnalysisMode *string `json:"audioAnalysisMode,omitempty" tf:"audio_analysis_mode,omitempty"` + + // The language for the audio payload in the input using the BCP-47 format of 'language tag-region' (e.g: 'en-US'). If you know the language of your content, it is recommended that you specify it. The language must be specified explicitly for AudioAnalysisMode:Basic, since automatic language detection is not included in basic mode. If the language isn't specified, automatic language detection will choose the first language detected and process with the selected language for the duration of the file. It does not currently support dynamically switching between languages after the first language is detected. The automatic detection works best with audio recordings with clearly discernible speech. If automatic detection fails to find the language, transcription would fall back to en-US. The list of supported languages is available here: https://go.microsoft.com/fwlink/?linkid=2109463. + AudioLanguage *string `json:"audioLanguage,omitempty" tf:"audio_language,omitempty"` + + // Dictionary containing key value pairs for parameters not exposed in the preset itself. + ExperimentalOptions map[string]*string `json:"experimentalOptions,omitempty" tf:"experimental_options,omitempty"` + + // Defines the type of insights that you want the service to generate. The allowed values are AudioInsightsOnly, VideoInsightsOnly, and AllInsights. If you set this to AllInsights and the input is audio only, then only audio insights are generated. Similarly, if the input is video only, then only video insights are generated. It is recommended that you not use AudioInsightsOnly if you expect some of your inputs to be video only; or use VideoInsightsOnly if you expect some of your inputs to be audio only. Your Jobs in such conditions would error out. Default to AllInsights. + InsightsType *string `json:"insightsType,omitempty" tf:"insights_type,omitempty"` +} + type VideoAnalyzerPresetObservation struct { // Possible values are Basic or Standard. Determines the set of audio analysis operations to be performed. Default to Standard. @@ -1398,6 +1992,21 @@ type VideoAnalyzerPresetParameters struct { InsightsType *string `json:"insightsType,omitempty" tf:"insights_type,omitempty"` } +type VideoCropRectangleInitParameters struct { + + // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Height *string `json:"height,omitempty" tf:"height,omitempty"` + + // The number of pixels from the left-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Left *string `json:"left,omitempty" tf:"left,omitempty"` + + // The number of pixels from the top-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Top *string `json:"top,omitempty" tf:"top,omitempty"` + + // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + Width *string `json:"width,omitempty" tf:"width,omitempty"` +} + type VideoCropRectangleObservation struct { // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). @@ -1432,6 +2041,36 @@ type VideoCropRectangleParameters struct { Width *string `json:"width,omitempty" tf:"width,omitempty"` } +type VideoInitParameters struct { + + // The gain level of audio in the overlay. The value should be in range between 0 to 1.0. The default is 1.0. + AudioGainLevel *float64 `json:"audioGainLevel,omitempty" tf:"audio_gain_level,omitempty"` + + // A crop_rectangle block as defined above. + CropRectangle []VideoCropRectangleInitParameters `json:"cropRectangle,omitempty" tf:"crop_rectangle,omitempty"` + + // The end position, with reference to the input video, at which the overlay ends. The value should be in ISO 8601 format. For example, PT30S to end the overlay at 30 seconds into the input video. If not specified or the value is greater than the input video duration, the overlay will be applied until the end of the input video if the overlay media duration is greater than the input video duration, else the overlay will last as long as the overlay media duration. + End *string `json:"end,omitempty" tf:"end,omitempty"` + + // The duration over which the overlay fades in onto the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade in (same as PT0S). + FadeInDuration *string `json:"fadeInDuration,omitempty" tf:"fade_in_duration,omitempty"` + + // The duration over which the overlay fades out of the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade out (same as PT0S). + FadeOutDuration *string `json:"fadeOutDuration,omitempty" tf:"fade_out_duration,omitempty"` + + // The label of the job input which is to be used as an overlay. The input must specify exact one file. You can specify an image file in JPG, PNG, GIF or BMP format, or an audio file (such as a WAV, MP3, WMA or M4A file), or a video file. + InputLabel *string `json:"inputLabel,omitempty" tf:"input_label,omitempty"` + + // The opacity of the overlay. The value should be in the range between 0 to 1.0. Default to 1.0, which means the overlay is opaque. + Opacity *float64 `json:"opacity,omitempty" tf:"opacity,omitempty"` + + // A position block as defined above. + Position []PositionInitParameters `json:"position,omitempty" tf:"position,omitempty"` + + // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + Start *string `json:"start,omitempty" tf:"start,omitempty"` +} + type VideoObservation struct { // The gain level of audio in the overlay. The value should be in range between 0 to 1.0. The default is 1.0. @@ -1485,8 +2124,8 @@ type VideoParameters struct { FadeOutDuration *string `json:"fadeOutDuration,omitempty" tf:"fade_out_duration,omitempty"` // The label of the job input which is to be used as an overlay. The input must specify exact one file. You can specify an image file in JPG, PNG, GIF or BMP format, or an audio file (such as a WAV, MP3, WMA or M4A file), or a video file. - // +kubebuilder:validation:Required - InputLabel *string `json:"inputLabel" tf:"input_label,omitempty"` + // +kubebuilder:validation:Optional + InputLabel *string `json:"inputLabel,omitempty" tf:"input_label,omitempty"` // The opacity of the overlay. The value should be in the range between 0 to 1.0. Default to 1.0, which means the overlay is opaque. // +kubebuilder:validation:Optional @@ -1505,6 +2144,18 @@ type VideoParameters struct { type TransformSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TransformParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TransformInitParameters `json:"initProvider,omitempty"` } // TransformStatus defines the observed state of Transform. diff --git a/apis/mixedreality/v1beta1/zz_generated.deepcopy.go b/apis/mixedreality/v1beta1/zz_generated.deepcopy.go index dacf2746f..3afd0bf45 100644 --- a/apis/mixedreality/v1beta1/zz_generated.deepcopy.go +++ b/apis/mixedreality/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,41 @@ func (in *SpatialAnchorsAccount) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpatialAnchorsAccountInitParameters) DeepCopyInto(out *SpatialAnchorsAccountInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpatialAnchorsAccountInitParameters. +func (in *SpatialAnchorsAccountInitParameters) DeepCopy() *SpatialAnchorsAccountInitParameters { + if in == nil { + return nil + } + out := new(SpatialAnchorsAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpatialAnchorsAccountList) DeepCopyInto(out *SpatialAnchorsAccountList) { *out = *in @@ -183,6 +218,7 @@ func (in *SpatialAnchorsAccountSpec) DeepCopyInto(out *SpatialAnchorsAccountSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpatialAnchorsAccountSpec. diff --git a/apis/mixedreality/v1beta1/zz_generated.managed.go b/apis/mixedreality/v1beta1/zz_generated.managed.go index 6b0ee93ea..2d287ad63 100644 --- a/apis/mixedreality/v1beta1/zz_generated.managed.go +++ b/apis/mixedreality/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *SpatialAnchorsAccount) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpatialAnchorsAccount. -func (mg *SpatialAnchorsAccount) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpatialAnchorsAccount. +func (mg *SpatialAnchorsAccount) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpatialAnchorsAccount. @@ -55,9 +55,9 @@ func (mg *SpatialAnchorsAccount) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpatialAnchorsAccount. -func (mg *SpatialAnchorsAccount) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpatialAnchorsAccount. +func (mg *SpatialAnchorsAccount) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpatialAnchorsAccount. diff --git a/apis/mixedreality/v1beta1/zz_generated_terraformed.go b/apis/mixedreality/v1beta1/zz_generated_terraformed.go index b38445610..ef7be8177 100755 --- a/apis/mixedreality/v1beta1/zz_generated_terraformed.go +++ b/apis/mixedreality/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *SpatialAnchorsAccount) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpatialAnchorsAccount +func (tr *SpatialAnchorsAccount) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpatialAnchorsAccount using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpatialAnchorsAccount) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/mixedreality/v1beta1/zz_spatialanchorsaccount_types.go b/apis/mixedreality/v1beta1/zz_spatialanchorsaccount_types.go index 5a50cbfb8..e1ed1aa10 100755 --- a/apis/mixedreality/v1beta1/zz_spatialanchorsaccount_types.go +++ b/apis/mixedreality/v1beta1/zz_spatialanchorsaccount_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpatialAnchorsAccountInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type SpatialAnchorsAccountObservation struct { // The domain of the Spatial Anchors Account. @@ -62,6 +71,18 @@ type SpatialAnchorsAccountParameters struct { type SpatialAnchorsAccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpatialAnchorsAccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpatialAnchorsAccountInitParameters `json:"initProvider,omitempty"` } // SpatialAnchorsAccountStatus defines the observed state of SpatialAnchorsAccount. @@ -82,7 +103,7 @@ type SpatialAnchorsAccountStatus struct { type SpatialAnchorsAccount struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SpatialAnchorsAccountSpec `json:"spec"` Status SpatialAnchorsAccountStatus `json:"status,omitempty"` } diff --git a/apis/netapp/v1beta1/zz_account_types.go b/apis/netapp/v1beta1/zz_account_types.go index e6776a8fe..56ec94a59 100755 --- a/apis/netapp/v1beta1/zz_account_types.go +++ b/apis/netapp/v1beta1/zz_account_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccountInitParameters struct { + + // A active_directory block as defined below. + ActiveDirectory []ActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type AccountObservation struct { // A active_directory block as defined below. @@ -59,6 +71,24 @@ type AccountParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type ActiveDirectoryInitParameters struct { + + // A list of DNS server IP addresses for the Active Directory domain. Only allows IPv4 address. + DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` + + // The name of the Active Directory domain. + Domain *string `json:"domain,omitempty" tf:"domain,omitempty"` + + // The Organizational Unit (OU) within the Active Directory Domain. + OrganizationalUnit *string `json:"organizationalUnit,omitempty" tf:"organizational_unit,omitempty"` + + // The NetBIOS name which should be used for the NetApp SMB Server, which will be registered as a computer account in the AD and used to mount volumes. + SMBServerName *string `json:"smbServerName,omitempty" tf:"smb_server_name,omitempty"` + + // The Username of Active Directory Domain Administrator. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type ActiveDirectoryObservation struct { // A list of DNS server IP addresses for the Active Directory domain. Only allows IPv4 address. @@ -80,12 +110,12 @@ type ActiveDirectoryObservation struct { type ActiveDirectoryParameters struct { // A list of DNS server IP addresses for the Active Directory domain. Only allows IPv4 address. - // +kubebuilder:validation:Required - DNSServers []*string `json:"dnsServers" tf:"dns_servers,omitempty"` + // +kubebuilder:validation:Optional + DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` // The name of the Active Directory domain. - // +kubebuilder:validation:Required - Domain *string `json:"domain" tf:"domain,omitempty"` + // +kubebuilder:validation:Optional + Domain *string `json:"domain,omitempty" tf:"domain,omitempty"` // The Organizational Unit (OU) within the Active Directory Domain. // +kubebuilder:validation:Optional @@ -96,18 +126,30 @@ type ActiveDirectoryParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The NetBIOS name which should be used for the NetApp SMB Server, which will be registered as a computer account in the AD and used to mount volumes. - // +kubebuilder:validation:Required - SMBServerName *string `json:"smbServerName" tf:"smb_server_name,omitempty"` + // +kubebuilder:validation:Optional + SMBServerName *string `json:"smbServerName,omitempty" tf:"smb_server_name,omitempty"` // The Username of Active Directory Domain Administrator. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` } // AccountSpec defines the desired state of Account type AccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccountInitParameters `json:"initProvider,omitempty"` } // AccountStatus defines the observed state of Account. @@ -128,7 +170,7 @@ type AccountStatus struct { type Account struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec AccountSpec `json:"spec"` Status AccountStatus `json:"status,omitempty"` } diff --git a/apis/netapp/v1beta1/zz_generated.deepcopy.go b/apis/netapp/v1beta1/zz_generated.deepcopy.go index 2e47b1614..db5003bcf 100644 --- a/apis/netapp/v1beta1/zz_generated.deepcopy.go +++ b/apis/netapp/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,48 @@ func (in *Account) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountInitParameters) DeepCopyInto(out *AccountInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]ActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountInitParameters. +func (in *AccountInitParameters) DeepCopy() *AccountInitParameters { + if in == nil { + return nil + } + out := new(AccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountList) DeepCopyInto(out *AccountList) { *out = *in @@ -187,6 +229,7 @@ func (in *AccountSpec) DeepCopyInto(out *AccountSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountSpec. @@ -216,6 +259,52 @@ func (in *AccountStatus) DeepCopy() *AccountStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActiveDirectoryInitParameters) DeepCopyInto(out *ActiveDirectoryInitParameters) { + *out = *in + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Domain != nil { + in, out := &in.Domain, &out.Domain + *out = new(string) + **out = **in + } + if in.OrganizationalUnit != nil { + in, out := &in.OrganizationalUnit, &out.OrganizationalUnit + *out = new(string) + **out = **in + } + if in.SMBServerName != nil { + in, out := &in.SMBServerName, &out.SMBServerName + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryInitParameters. +func (in *ActiveDirectoryInitParameters) DeepCopy() *ActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(ActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActiveDirectoryObservation) DeepCopyInto(out *ActiveDirectoryObservation) { *out = *in @@ -309,6 +398,36 @@ func (in *ActiveDirectoryParameters) DeepCopy() *ActiveDirectoryParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DailyScheduleInitParameters) DeepCopyInto(out *DailyScheduleInitParameters) { + *out = *in + if in.Hour != nil { + in, out := &in.Hour, &out.Hour + *out = new(float64) + **out = **in + } + if in.Minute != nil { + in, out := &in.Minute, &out.Minute + *out = new(float64) + **out = **in + } + if in.SnapshotsToKeep != nil { + in, out := &in.SnapshotsToKeep, &out.SnapshotsToKeep + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DailyScheduleInitParameters. +func (in *DailyScheduleInitParameters) DeepCopy() *DailyScheduleInitParameters { + if in == nil { + return nil + } + out := new(DailyScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DailyScheduleObservation) DeepCopyInto(out *DailyScheduleObservation) { *out = *in @@ -369,6 +488,36 @@ func (in *DailyScheduleParameters) DeepCopy() *DailyScheduleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataProtectionReplicationInitParameters) DeepCopyInto(out *DataProtectionReplicationInitParameters) { + *out = *in + if in.EndpointType != nil { + in, out := &in.EndpointType, &out.EndpointType + *out = new(string) + **out = **in + } + if in.RemoteVolumeLocation != nil { + in, out := &in.RemoteVolumeLocation, &out.RemoteVolumeLocation + *out = new(string) + **out = **in + } + if in.ReplicationFrequency != nil { + in, out := &in.ReplicationFrequency, &out.ReplicationFrequency + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataProtectionReplicationInitParameters. +func (in *DataProtectionReplicationInitParameters) DeepCopy() *DataProtectionReplicationInitParameters { + if in == nil { + return nil + } + out := new(DataProtectionReplicationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataProtectionReplicationObservation) DeepCopyInto(out *DataProtectionReplicationObservation) { *out = *in @@ -449,6 +598,21 @@ func (in *DataProtectionReplicationParameters) DeepCopy() *DataProtectionReplica return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataProtectionSnapshotPolicyInitParameters) DeepCopyInto(out *DataProtectionSnapshotPolicyInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataProtectionSnapshotPolicyInitParameters. +func (in *DataProtectionSnapshotPolicyInitParameters) DeepCopy() *DataProtectionSnapshotPolicyInitParameters { + if in == nil { + return nil + } + out := new(DataProtectionSnapshotPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataProtectionSnapshotPolicyObservation) DeepCopyInto(out *DataProtectionSnapshotPolicyObservation) { *out = *in @@ -499,6 +663,63 @@ func (in *DataProtectionSnapshotPolicyParameters) DeepCopy() *DataProtectionSnap return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExportPolicyRuleInitParameters) DeepCopyInto(out *ExportPolicyRuleInitParameters) { + *out = *in + if in.AllowedClients != nil { + in, out := &in.AllowedClients, &out.AllowedClients + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ProtocolsEnabled != nil { + in, out := &in.ProtocolsEnabled, &out.ProtocolsEnabled + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RootAccessEnabled != nil { + in, out := &in.RootAccessEnabled, &out.RootAccessEnabled + *out = new(bool) + **out = **in + } + if in.RuleIndex != nil { + in, out := &in.RuleIndex, &out.RuleIndex + *out = new(float64) + **out = **in + } + if in.UnixReadOnly != nil { + in, out := &in.UnixReadOnly, &out.UnixReadOnly + *out = new(bool) + **out = **in + } + if in.UnixReadWrite != nil { + in, out := &in.UnixReadWrite, &out.UnixReadWrite + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExportPolicyRuleInitParameters. +func (in *ExportPolicyRuleInitParameters) DeepCopy() *ExportPolicyRuleInitParameters { + if in == nil { + return nil + } + out := new(ExportPolicyRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExportPolicyRuleObservation) DeepCopyInto(out *ExportPolicyRuleObservation) { *out = *in @@ -613,6 +834,31 @@ func (in *ExportPolicyRuleParameters) DeepCopy() *ExportPolicyRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HourlyScheduleInitParameters) DeepCopyInto(out *HourlyScheduleInitParameters) { + *out = *in + if in.Minute != nil { + in, out := &in.Minute, &out.Minute + *out = new(float64) + **out = **in + } + if in.SnapshotsToKeep != nil { + in, out := &in.SnapshotsToKeep, &out.SnapshotsToKeep + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HourlyScheduleInitParameters. +func (in *HourlyScheduleInitParameters) DeepCopy() *HourlyScheduleInitParameters { + if in == nil { + return nil + } + out := new(HourlyScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HourlyScheduleObservation) DeepCopyInto(out *HourlyScheduleObservation) { *out = *in @@ -663,6 +909,47 @@ func (in *HourlyScheduleParameters) DeepCopy() *HourlyScheduleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonthlyScheduleInitParameters) DeepCopyInto(out *MonthlyScheduleInitParameters) { + *out = *in + if in.DaysOfMonth != nil { + in, out := &in.DaysOfMonth, &out.DaysOfMonth + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Hour != nil { + in, out := &in.Hour, &out.Hour + *out = new(float64) + **out = **in + } + if in.Minute != nil { + in, out := &in.Minute, &out.Minute + *out = new(float64) + **out = **in + } + if in.SnapshotsToKeep != nil { + in, out := &in.SnapshotsToKeep, &out.SnapshotsToKeep + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonthlyScheduleInitParameters. +func (in *MonthlyScheduleInitParameters) DeepCopy() *MonthlyScheduleInitParameters { + if in == nil { + return nil + } + out := new(MonthlyScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonthlyScheduleObservation) DeepCopyInto(out *MonthlyScheduleObservation) { *out = *in @@ -740,38 +1027,88 @@ func (in *MonthlyScheduleParameters) DeepCopy() *MonthlyScheduleParameters { if in == nil { return nil } - out := new(MonthlyScheduleParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Pool) DeepCopyInto(out *Pool) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + out := new(MonthlyScheduleParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Pool) DeepCopyInto(out *Pool) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pool. +func (in *Pool) DeepCopy() *Pool { + if in == nil { + return nil + } + out := new(Pool) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Pool) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PoolInitParameters) DeepCopyInto(out *PoolInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.QosType != nil { + in, out := &in.QosType, &out.QosType + *out = new(string) + **out = **in + } + if in.ServiceLevel != nil { + in, out := &in.ServiceLevel, &out.ServiceLevel + *out = new(string) + **out = **in + } + if in.SizeInTb != nil { + in, out := &in.SizeInTb, &out.SizeInTb + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Pool. -func (in *Pool) DeepCopy() *Pool { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolInitParameters. +func (in *PoolInitParameters) DeepCopy() *PoolInitParameters { if in == nil { return nil } - out := new(Pool) + out := new(PoolInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *Pool) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PoolList) DeepCopyInto(out *PoolList) { *out = *in @@ -954,6 +1291,7 @@ func (in *PoolSpec) DeepCopyInto(out *PoolSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolSpec. @@ -1010,6 +1348,26 @@ func (in *Snapshot) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotInitParameters) DeepCopyInto(out *SnapshotInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotInitParameters. +func (in *SnapshotInitParameters) DeepCopy() *SnapshotInitParameters { + if in == nil { + return nil + } + out := new(SnapshotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SnapshotList) DeepCopyInto(out *SnapshotList) { *out = *in @@ -1194,6 +1552,74 @@ func (in *SnapshotPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotPolicyInitParameters) DeepCopyInto(out *SnapshotPolicyInitParameters) { + *out = *in + if in.DailySchedule != nil { + in, out := &in.DailySchedule, &out.DailySchedule + *out = make([]DailyScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HourlySchedule != nil { + in, out := &in.HourlySchedule, &out.HourlySchedule + *out = make([]HourlyScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MonthlySchedule != nil { + in, out := &in.MonthlySchedule, &out.MonthlySchedule + *out = make([]MonthlyScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.WeeklySchedule != nil { + in, out := &in.WeeklySchedule, &out.WeeklySchedule + *out = make([]WeeklyScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotPolicyInitParameters. +func (in *SnapshotPolicyInitParameters) DeepCopy() *SnapshotPolicyInitParameters { + if in == nil { + return nil + } + out := new(SnapshotPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SnapshotPolicyList) DeepCopyInto(out *SnapshotPolicyList) { *out = *in @@ -1412,6 +1838,7 @@ func (in *SnapshotPolicySpec) DeepCopyInto(out *SnapshotPolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotPolicySpec. @@ -1446,6 +1873,7 @@ func (in *SnapshotSpec) DeepCopyInto(out *SnapshotSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotSpec. @@ -1502,6 +1930,116 @@ func (in *Volume) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VolumeInitParameters) DeepCopyInto(out *VolumeInitParameters) { + *out = *in + if in.AzureVMwareDataStoreEnabled != nil { + in, out := &in.AzureVMwareDataStoreEnabled, &out.AzureVMwareDataStoreEnabled + *out = new(bool) + **out = **in + } + if in.DataProtectionReplication != nil { + in, out := &in.DataProtectionReplication, &out.DataProtectionReplication + *out = make([]DataProtectionReplicationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DataProtectionSnapshotPolicy != nil { + in, out := &in.DataProtectionSnapshotPolicy, &out.DataProtectionSnapshotPolicy + *out = make([]DataProtectionSnapshotPolicyInitParameters, len(*in)) + copy(*out, *in) + } + if in.ExportPolicyRule != nil { + in, out := &in.ExportPolicyRule, &out.ExportPolicyRule + *out = make([]ExportPolicyRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.NetworkFeatures != nil { + in, out := &in.NetworkFeatures, &out.NetworkFeatures + *out = new(string) + **out = **in + } + if in.Protocols != nil { + in, out := &in.Protocols, &out.Protocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SecurityStyle != nil { + in, out := &in.SecurityStyle, &out.SecurityStyle + *out = new(string) + **out = **in + } + if in.ServiceLevel != nil { + in, out := &in.ServiceLevel, &out.ServiceLevel + *out = new(string) + **out = **in + } + if in.SnapshotDirectoryVisible != nil { + in, out := &in.SnapshotDirectoryVisible, &out.SnapshotDirectoryVisible + *out = new(bool) + **out = **in + } + if in.StorageQuotaInGb != nil { + in, out := &in.StorageQuotaInGb, &out.StorageQuotaInGb + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ThroughputInMibps != nil { + in, out := &in.ThroughputInMibps, &out.ThroughputInMibps + *out = new(float64) + **out = **in + } + if in.VolumePath != nil { + in, out := &in.VolumePath, &out.VolumePath + *out = new(string) + **out = **in + } + if in.Zone != nil { + in, out := &in.Zone, &out.Zone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeInitParameters. +func (in *VolumeInitParameters) DeepCopy() *VolumeInitParameters { + if in == nil { + return nil + } + out := new(VolumeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VolumeList) DeepCopyInto(out *VolumeList) { *out = *in @@ -1879,6 +2417,7 @@ func (in *VolumeSpec) DeepCopyInto(out *VolumeSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeSpec. @@ -1908,6 +2447,47 @@ func (in *VolumeStatus) DeepCopy() *VolumeStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WeeklyScheduleInitParameters) DeepCopyInto(out *WeeklyScheduleInitParameters) { + *out = *in + if in.DaysOfWeek != nil { + in, out := &in.DaysOfWeek, &out.DaysOfWeek + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Hour != nil { + in, out := &in.Hour, &out.Hour + *out = new(float64) + **out = **in + } + if in.Minute != nil { + in, out := &in.Minute, &out.Minute + *out = new(float64) + **out = **in + } + if in.SnapshotsToKeep != nil { + in, out := &in.SnapshotsToKeep, &out.SnapshotsToKeep + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WeeklyScheduleInitParameters. +func (in *WeeklyScheduleInitParameters) DeepCopy() *WeeklyScheduleInitParameters { + if in == nil { + return nil + } + out := new(WeeklyScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WeeklyScheduleObservation) DeepCopyInto(out *WeeklyScheduleObservation) { *out = *in diff --git a/apis/netapp/v1beta1/zz_generated.managed.go b/apis/netapp/v1beta1/zz_generated.managed.go index 7ba544a86..35873c9cf 100644 --- a/apis/netapp/v1beta1/zz_generated.managed.go +++ b/apis/netapp/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Account) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Account. -func (mg *Account) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Account. +func (mg *Account) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Account. @@ -55,9 +55,9 @@ func (mg *Account) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Account. -func (mg *Account) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Account. +func (mg *Account) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Account. @@ -93,9 +93,9 @@ func (mg *Pool) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Pool. -func (mg *Pool) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Pool. +func (mg *Pool) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Pool. @@ -131,9 +131,9 @@ func (mg *Pool) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Pool. -func (mg *Pool) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Pool. +func (mg *Pool) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Pool. @@ -169,9 +169,9 @@ func (mg *Snapshot) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Snapshot. -func (mg *Snapshot) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Snapshot. +func (mg *Snapshot) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Snapshot. @@ -207,9 +207,9 @@ func (mg *Snapshot) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Snapshot. -func (mg *Snapshot) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Snapshot. +func (mg *Snapshot) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Snapshot. @@ -245,9 +245,9 @@ func (mg *SnapshotPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SnapshotPolicy. -func (mg *SnapshotPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SnapshotPolicy. +func (mg *SnapshotPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SnapshotPolicy. @@ -283,9 +283,9 @@ func (mg *SnapshotPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SnapshotPolicy. -func (mg *SnapshotPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SnapshotPolicy. +func (mg *SnapshotPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SnapshotPolicy. @@ -321,9 +321,9 @@ func (mg *Volume) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Volume. -func (mg *Volume) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Volume. +func (mg *Volume) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Volume. @@ -359,9 +359,9 @@ func (mg *Volume) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Volume. -func (mg *Volume) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Volume. +func (mg *Volume) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Volume. diff --git a/apis/netapp/v1beta1/zz_generated_terraformed.go b/apis/netapp/v1beta1/zz_generated_terraformed.go index dff6c4089..9b5e6e13b 100755 --- a/apis/netapp/v1beta1/zz_generated_terraformed.go +++ b/apis/netapp/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Account) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Account +func (tr *Account) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Account using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Account) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Pool) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Pool +func (tr *Pool) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Pool using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Pool) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *Snapshot) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Snapshot +func (tr *Snapshot) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Snapshot using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Snapshot) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *SnapshotPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SnapshotPolicy +func (tr *SnapshotPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SnapshotPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SnapshotPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *Volume) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Volume +func (tr *Volume) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Volume using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Volume) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/netapp/v1beta1/zz_pool_types.go b/apis/netapp/v1beta1/zz_pool_types.go index 8c4fec52c..429872d2c 100755 --- a/apis/netapp/v1beta1/zz_pool_types.go +++ b/apis/netapp/v1beta1/zz_pool_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PoolInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // QoS Type of the pool. Valid values include Auto or Manual. + QosType *string `json:"qosType,omitempty" tf:"qos_type,omitempty"` + + // The service level of the file system. Valid values include Premium, Standard, or Ultra. Changing this forces a new resource to be created. + ServiceLevel *string `json:"serviceLevel,omitempty" tf:"service_level,omitempty"` + + // Provisioned size of the pool in TB. Value must be between 4 and 500. + SizeInTb *float64 `json:"sizeInTb,omitempty" tf:"size_in_tb,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PoolObservation struct { // The name of the NetApp account in which the NetApp Pool should be created. Changing this forces a new resource to be created. @@ -93,6 +111,18 @@ type PoolParameters struct { type PoolSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PoolParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PoolInitParameters `json:"initProvider,omitempty"` } // PoolStatus defines the observed state of Pool. @@ -113,9 +143,9 @@ type PoolStatus struct { type Pool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serviceLevel)",message="serviceLevel is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sizeInTb)",message="sizeInTb is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serviceLevel) || has(self.initProvider.serviceLevel)",message="serviceLevel is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sizeInTb) || has(self.initProvider.sizeInTb)",message="sizeInTb is a required parameter" Spec PoolSpec `json:"spec"` Status PoolStatus `json:"status,omitempty"` } diff --git a/apis/netapp/v1beta1/zz_snapshot_types.go b/apis/netapp/v1beta1/zz_snapshot_types.go index 58d2f449d..f012eb801 100755 --- a/apis/netapp/v1beta1/zz_snapshot_types.go +++ b/apis/netapp/v1beta1/zz_snapshot_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SnapshotInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type SnapshotObservation struct { // The name of the NetApp account in which the NetApp Pool should be created. Changing this forces a new resource to be created. @@ -97,6 +103,18 @@ type SnapshotParameters struct { type SnapshotSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SnapshotParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SnapshotInitParameters `json:"initProvider,omitempty"` } // SnapshotStatus defines the observed state of Snapshot. @@ -117,7 +135,7 @@ type SnapshotStatus struct { type Snapshot struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SnapshotSpec `json:"spec"` Status SnapshotStatus `json:"status,omitempty"` } diff --git a/apis/netapp/v1beta1/zz_snapshotpolicy_types.go b/apis/netapp/v1beta1/zz_snapshotpolicy_types.go index 45f266b91..5597820f1 100755 --- a/apis/netapp/v1beta1/zz_snapshotpolicy_types.go +++ b/apis/netapp/v1beta1/zz_snapshotpolicy_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DailyScheduleInitParameters struct { + + // Hour of the day that the snapshots will be created, valid range is from 0 to 23. + Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` + + // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. + Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` + + // How many hourly snapshots to keep, valid range is from 0 to 255. + SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` +} + type DailyScheduleObservation struct { // Hour of the day that the snapshots will be created, valid range is from 0 to 23. @@ -28,16 +40,25 @@ type DailyScheduleObservation struct { type DailyScheduleParameters struct { // Hour of the day that the snapshots will be created, valid range is from 0 to 23. - // +kubebuilder:validation:Required - Hour *float64 `json:"hour" tf:"hour,omitempty"` + // +kubebuilder:validation:Optional + Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` + + // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. + // +kubebuilder:validation:Optional + Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` + + // How many hourly snapshots to keep, valid range is from 0 to 255. + // +kubebuilder:validation:Optional + SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` +} + +type HourlyScheduleInitParameters struct { // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. - // +kubebuilder:validation:Required - Minute *float64 `json:"minute" tf:"minute,omitempty"` + Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` // How many hourly snapshots to keep, valid range is from 0 to 255. - // +kubebuilder:validation:Required - SnapshotsToKeep *float64 `json:"snapshotsToKeep" tf:"snapshots_to_keep,omitempty"` + SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` } type HourlyScheduleObservation struct { @@ -52,12 +73,27 @@ type HourlyScheduleObservation struct { type HourlyScheduleParameters struct { // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. - // +kubebuilder:validation:Required - Minute *float64 `json:"minute" tf:"minute,omitempty"` + // +kubebuilder:validation:Optional + Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` // How many hourly snapshots to keep, valid range is from 0 to 255. - // +kubebuilder:validation:Required - SnapshotsToKeep *float64 `json:"snapshotsToKeep" tf:"snapshots_to_keep,omitempty"` + // +kubebuilder:validation:Optional + SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` +} + +type MonthlyScheduleInitParameters struct { + + // List of the days of the month when the snapshots will be created, valid range is from 1 to 30. + DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` + + // Hour of the day that the snapshots will be created, valid range is from 0 to 23. + Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` + + // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. + Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` + + // How many hourly snapshots to keep, valid range is from 0 to 255. + SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` } type MonthlyScheduleObservation struct { @@ -78,20 +114,44 @@ type MonthlyScheduleObservation struct { type MonthlyScheduleParameters struct { // List of the days of the month when the snapshots will be created, valid range is from 1 to 30. - // +kubebuilder:validation:Required - DaysOfMonth []*float64 `json:"daysOfMonth" tf:"days_of_month,omitempty"` + // +kubebuilder:validation:Optional + DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` // Hour of the day that the snapshots will be created, valid range is from 0 to 23. - // +kubebuilder:validation:Required - Hour *float64 `json:"hour" tf:"hour,omitempty"` + // +kubebuilder:validation:Optional + Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. - // +kubebuilder:validation:Required - Minute *float64 `json:"minute" tf:"minute,omitempty"` + // +kubebuilder:validation:Optional + Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` // How many hourly snapshots to keep, valid range is from 0 to 255. - // +kubebuilder:validation:Required - SnapshotsToKeep *float64 `json:"snapshotsToKeep" tf:"snapshots_to_keep,omitempty"` + // +kubebuilder:validation:Optional + SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` +} + +type SnapshotPolicyInitParameters struct { + + // Sets a daily snapshot schedule. See details in below daily_schedule block. + DailySchedule []DailyScheduleInitParameters `json:"dailySchedule,omitempty" tf:"daily_schedule,omitempty"` + + // Defines that the NetApp Snapshot Policy is enabled or not. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Sets an hourly snapshot schedule. See details in below hourly_schedule block. + HourlySchedule []HourlyScheduleInitParameters `json:"hourlySchedule,omitempty" tf:"hourly_schedule,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Sets a monthly snapshot schedule. See details in below monthly_schedule block. + MonthlySchedule []MonthlyScheduleInitParameters `json:"monthlySchedule,omitempty" tf:"monthly_schedule,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Sets a weekly snapshot schedule. See details in below weekly_schedule block. + WeeklySchedule []WeeklyScheduleInitParameters `json:"weeklySchedule,omitempty" tf:"weekly_schedule,omitempty"` } type SnapshotPolicyObservation struct { @@ -184,6 +244,21 @@ type SnapshotPolicyParameters struct { WeeklySchedule []WeeklyScheduleParameters `json:"weeklySchedule,omitempty" tf:"weekly_schedule,omitempty"` } +type WeeklyScheduleInitParameters struct { + + // List of the week days using English names when the snapshots will be created. + DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` + + // Hour of the day that the snapshots will be created, valid range is from 0 to 23. + Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` + + // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. + Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` + + // How many hourly snapshots to keep, valid range is from 0 to 255. + SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` +} + type WeeklyScheduleObservation struct { // List of the week days using English names when the snapshots will be created. @@ -202,26 +277,38 @@ type WeeklyScheduleObservation struct { type WeeklyScheduleParameters struct { // List of the week days using English names when the snapshots will be created. - // +kubebuilder:validation:Required - DaysOfWeek []*string `json:"daysOfWeek" tf:"days_of_week,omitempty"` + // +kubebuilder:validation:Optional + DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` // Hour of the day that the snapshots will be created, valid range is from 0 to 23. - // +kubebuilder:validation:Required - Hour *float64 `json:"hour" tf:"hour,omitempty"` + // +kubebuilder:validation:Optional + Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. - // +kubebuilder:validation:Required - Minute *float64 `json:"minute" tf:"minute,omitempty"` + // +kubebuilder:validation:Optional + Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` // How many hourly snapshots to keep, valid range is from 0 to 255. - // +kubebuilder:validation:Required - SnapshotsToKeep *float64 `json:"snapshotsToKeep" tf:"snapshots_to_keep,omitempty"` + // +kubebuilder:validation:Optional + SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` } // SnapshotPolicySpec defines the desired state of SnapshotPolicy type SnapshotPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider SnapshotPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SnapshotPolicyInitParameters `json:"initProvider,omitempty"` } // SnapshotPolicyStatus defines the observed state of SnapshotPolicy. @@ -242,8 +329,8 @@ type SnapshotPolicyStatus struct { type SnapshotPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled)",message="enabled is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.enabled) || has(self.initProvider.enabled)",message="enabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SnapshotPolicySpec `json:"spec"` Status SnapshotPolicyStatus `json:"status,omitempty"` } diff --git a/apis/netapp/v1beta1/zz_volume_types.go b/apis/netapp/v1beta1/zz_volume_types.go index b5b417618..188e9b4db 100755 --- a/apis/netapp/v1beta1/zz_volume_types.go +++ b/apis/netapp/v1beta1/zz_volume_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataProtectionReplicationInitParameters struct { + + // The endpoint type, default value is dst for destination. + EndpointType *string `json:"endpointType,omitempty" tf:"endpoint_type,omitempty"` + + // Location of the primary volume. Changing this forces a new resource to be created. + RemoteVolumeLocation *string `json:"remoteVolumeLocation,omitempty" tf:"remote_volume_location,omitempty"` + + // Replication frequency, supported values are '10minutes', 'hourly', 'daily', values are case sensitive. + ReplicationFrequency *string `json:"replicationFrequency,omitempty" tf:"replication_frequency,omitempty"` +} + type DataProtectionReplicationObservation struct { // The endpoint type, default value is dst for destination. @@ -35,8 +47,8 @@ type DataProtectionReplicationParameters struct { EndpointType *string `json:"endpointType,omitempty" tf:"endpoint_type,omitempty"` // Location of the primary volume. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - RemoteVolumeLocation *string `json:"remoteVolumeLocation" tf:"remote_volume_location,omitempty"` + // +kubebuilder:validation:Optional + RemoteVolumeLocation *string `json:"remoteVolumeLocation,omitempty" tf:"remote_volume_location,omitempty"` // Resource ID of the primary volume. // +crossplane:generate:reference:type=Volume @@ -53,8 +65,11 @@ type DataProtectionReplicationParameters struct { RemoteVolumeResourceIDSelector *v1.Selector `json:"remoteVolumeResourceIdSelector,omitempty" tf:"-"` // Replication frequency, supported values are '10minutes', 'hourly', 'daily', values are case sensitive. - // +kubebuilder:validation:Required - ReplicationFrequency *string `json:"replicationFrequency" tf:"replication_frequency,omitempty"` + // +kubebuilder:validation:Optional + ReplicationFrequency *string `json:"replicationFrequency,omitempty" tf:"replication_frequency,omitempty"` +} + +type DataProtectionSnapshotPolicyInitParameters struct { } type DataProtectionSnapshotPolicyObservation struct { @@ -80,6 +95,27 @@ type DataProtectionSnapshotPolicyParameters struct { SnapshotPolicyIDSelector *v1.Selector `json:"snapshotPolicyIdSelector,omitempty" tf:"-"` } +type ExportPolicyRuleInitParameters struct { + + // A list of allowed clients IPv4 addresses. + AllowedClients []*string `json:"allowedClients,omitempty" tf:"allowed_clients,omitempty"` + + // A list of allowed protocols. Valid values include CIFS, NFSv3, or NFSv4.1. Only one value is supported at this time. This replaces the previous arguments: cifs_enabled, nfsv3_enabled and nfsv4_enabled. + ProtocolsEnabled []*string `json:"protocolsEnabled,omitempty" tf:"protocols_enabled,omitempty"` + + // Is root access permitted to this volume? + RootAccessEnabled *bool `json:"rootAccessEnabled,omitempty" tf:"root_access_enabled,omitempty"` + + // The index number of the rule. + RuleIndex *float64 `json:"ruleIndex,omitempty" tf:"rule_index,omitempty"` + + // Is the file system on unix read only? + UnixReadOnly *bool `json:"unixReadOnly,omitempty" tf:"unix_read_only,omitempty"` + + // Is the file system on unix read and write? + UnixReadWrite *bool `json:"unixReadWrite,omitempty" tf:"unix_read_write,omitempty"` +} + type ExportPolicyRuleObservation struct { // A list of allowed clients IPv4 addresses. @@ -104,8 +140,8 @@ type ExportPolicyRuleObservation struct { type ExportPolicyRuleParameters struct { // A list of allowed clients IPv4 addresses. - // +kubebuilder:validation:Required - AllowedClients []*string `json:"allowedClients" tf:"allowed_clients,omitempty"` + // +kubebuilder:validation:Optional + AllowedClients []*string `json:"allowedClients,omitempty" tf:"allowed_clients,omitempty"` // A list of allowed protocols. Valid values include CIFS, NFSv3, or NFSv4.1. Only one value is supported at this time. This replaces the previous arguments: cifs_enabled, nfsv3_enabled and nfsv4_enabled. // +kubebuilder:validation:Optional @@ -116,8 +152,8 @@ type ExportPolicyRuleParameters struct { RootAccessEnabled *bool `json:"rootAccessEnabled,omitempty" tf:"root_access_enabled,omitempty"` // The index number of the rule. - // +kubebuilder:validation:Required - RuleIndex *float64 `json:"ruleIndex" tf:"rule_index,omitempty"` + // +kubebuilder:validation:Optional + RuleIndex *float64 `json:"ruleIndex,omitempty" tf:"rule_index,omitempty"` // Is the file system on unix read only? // +kubebuilder:validation:Optional @@ -128,6 +164,54 @@ type ExportPolicyRuleParameters struct { UnixReadWrite *bool `json:"unixReadWrite,omitempty" tf:"unix_read_write,omitempty"` } +type VolumeInitParameters struct { + + // Is the NetApp Volume enabled for Azure VMware Solution (AVS) datastore purpose. Defaults to false. Changing this forces a new resource to be created. + AzureVMwareDataStoreEnabled *bool `json:"azureVmwareDataStoreEnabled,omitempty" tf:"azure_vmware_data_store_enabled,omitempty"` + + // A data_protection_replication block as defined below. Changing this forces a new resource to be created. + DataProtectionReplication []DataProtectionReplicationInitParameters `json:"dataProtectionReplication,omitempty" tf:"data_protection_replication,omitempty"` + + // A data_protection_snapshot_policy block as defined below. + DataProtectionSnapshotPolicy []DataProtectionSnapshotPolicyInitParameters `json:"dataProtectionSnapshotPolicy,omitempty" tf:"data_protection_snapshot_policy,omitempty"` + + // One or more export_policy_rule block defined below. + ExportPolicyRule []ExportPolicyRuleInitParameters `json:"exportPolicyRule,omitempty" tf:"export_policy_rule,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Indicates which network feature to use, accepted values are Basic or Standard, it defaults to Basic if not defined. This is a feature in public preview and for more information about it and how to register, please refer to Configure network features for an Azure NetApp Files volume. Changing this forces a new resource to be created. + NetworkFeatures *string `json:"networkFeatures,omitempty" tf:"network_features,omitempty"` + + // The target volume protocol expressed as a list. Supported single value include CIFS, NFSv3, or NFSv4.1. If argument is not defined it will default to NFSv3. Changing this forces a new resource to be created and data will be lost. Dual protocol scenario is supported for CIFS and NFSv3, for more information, please refer to Create a dual-protocol volume for Azure NetApp Files document. + Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` + + // Volume security style, accepted values are Unix or Ntfs. If not provided, single-protocol volume is created defaulting to Unix if it is NFSv3 or NFSv4.1 volume, if CIFS, it will default to Ntfs. In a dual-protocol volume, if not provided, its value will be Ntfs. Changing this forces a new resource to be created. + SecurityStyle *string `json:"securityStyle,omitempty" tf:"security_style,omitempty"` + + // The target performance of the file system. Valid values include Premium, Standard, or Ultra. Changing this forces a new resource to be created. + ServiceLevel *string `json:"serviceLevel,omitempty" tf:"service_level,omitempty"` + + // Specifies whether the .snapshot (NFS clients) or ~snapshot (SMB clients) path of a volume is visible, default value is true. + SnapshotDirectoryVisible *bool `json:"snapshotDirectoryVisible,omitempty" tf:"snapshot_directory_visible,omitempty"` + + // The maximum Storage Quota allowed for a file system in Gigabytes. + StorageQuotaInGb *float64 `json:"storageQuotaInGb,omitempty" tf:"storage_quota_in_gb,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Throughput of this volume in Mibps. + ThroughputInMibps *float64 `json:"throughputInMibps,omitempty" tf:"throughput_in_mibps,omitempty"` + + // A unique file path for the volume. Used when creating mount targets. Changing this forces a new resource to be created. + VolumePath *string `json:"volumePath,omitempty" tf:"volume_path,omitempty"` + + // Specifies the Availability Zone in which the Volume should be located. Possible values are 1, 2 and 3. Changing this forces a new resource to be created. This feature is currently in preview, for more information on how to enable it, please refer to Manage availability zone volume placement for Azure NetApp Files. + Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` +} + type VolumeObservation struct { // The name of the NetApp account in which the NetApp Pool should be created. Changing this forces a new resource to be created. @@ -331,6 +415,18 @@ type VolumeParameters struct { type VolumeSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VolumeParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VolumeInitParameters `json:"initProvider,omitempty"` } // VolumeStatus defines the observed state of Volume. @@ -351,10 +447,10 @@ type VolumeStatus struct { type Volume struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serviceLevel)",message="serviceLevel is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageQuotaInGb)",message="storageQuotaInGb is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.volumePath)",message="volumePath is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serviceLevel) || has(self.initProvider.serviceLevel)",message="serviceLevel is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageQuotaInGb) || has(self.initProvider.storageQuotaInGb)",message="storageQuotaInGb is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.volumePath) || has(self.initProvider.volumePath)",message="volumePath is a required parameter" Spec VolumeSpec `json:"spec"` Status VolumeStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_applicationgateway_types.go b/apis/network/v1beta1/zz_applicationgateway_types.go index 1b388b95f..f8458ff16 100755 --- a/apis/network/v1beta1/zz_applicationgateway_types.go +++ b/apis/network/v1beta1/zz_applicationgateway_types.go @@ -13,6 +13,102 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationGatewayInitParameters struct { + + // One or more authentication_certificate blocks as defined below. + AuthenticationCertificate []AuthenticationCertificateInitParameters `json:"authenticationCertificate,omitempty" tf:"authentication_certificate,omitempty"` + + // A autoscale_configuration block as defined below. + AutoscaleConfiguration []AutoscaleConfigurationInitParameters `json:"autoscaleConfiguration,omitempty" tf:"autoscale_configuration,omitempty"` + + // One or more backend_address_pool blocks as defined below. + BackendAddressPool []BackendAddressPoolInitParameters `json:"backendAddressPool,omitempty" tf:"backend_address_pool,omitempty"` + + // One or more backend_http_settings blocks as defined below. + BackendHTTPSettings []BackendHTTPSettingsInitParameters `json:"backendHttpSettings,omitempty" tf:"backend_http_settings,omitempty"` + + // One or more custom_error_configuration blocks as defined below. + CustomErrorConfiguration []CustomErrorConfigurationInitParameters `json:"customErrorConfiguration,omitempty" tf:"custom_error_configuration,omitempty"` + + // Is HTTP2 enabled on the application gateway resource? Defaults to false. + EnableHttp2 *bool `json:"enableHttp2,omitempty" tf:"enable_http2,omitempty"` + + // Is FIPS enabled on the Application Gateway? + FipsEnabled *bool `json:"fipsEnabled,omitempty" tf:"fips_enabled,omitempty"` + + // The ID of the Web Application Firewall Policy. + FirewallPolicyID *string `json:"firewallPolicyId,omitempty" tf:"firewall_policy_id,omitempty"` + + // Is the Firewall Policy associated with the Application Gateway? + ForceFirewallPolicyAssociation *bool `json:"forceFirewallPolicyAssociation,omitempty" tf:"force_firewall_policy_association,omitempty"` + + // One or more frontend_ip_configuration blocks as defined below. + FrontendIPConfiguration []FrontendIPConfigurationInitParameters `json:"frontendIpConfiguration,omitempty" tf:"frontend_ip_configuration,omitempty"` + + // One or more frontend_port blocks as defined below. + FrontendPort []FrontendPortInitParameters `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"` + + // One or more gateway_ip_configuration blocks as defined below. + GatewayIPConfiguration []GatewayIPConfigurationInitParameters `json:"gatewayIpConfiguration,omitempty" tf:"gateway_ip_configuration,omitempty"` + + // A global block as defined below. + Global []GlobalInitParameters `json:"global,omitempty" tf:"global,omitempty"` + + // One or more http_listener blocks as defined below. + HTTPListener []HTTPListenerInitParameters `json:"httpListener,omitempty" tf:"http_listener,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure region where the Application Gateway should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // One or more private_link_configuration blocks as defined below. + PrivateLinkConfiguration []PrivateLinkConfigurationInitParameters `json:"privateLinkConfiguration,omitempty" tf:"private_link_configuration,omitempty"` + + // One or more probe blocks as defined below. + Probe []ProbeInitParameters `json:"probe,omitempty" tf:"probe,omitempty"` + + // One or more redirect_configuration blocks as defined below. + RedirectConfiguration []RedirectConfigurationInitParameters `json:"redirectConfiguration,omitempty" tf:"redirect_configuration,omitempty"` + + // One or more request_routing_rule blocks as defined below. + RequestRoutingRule []RequestRoutingRuleInitParameters `json:"requestRoutingRule,omitempty" tf:"request_routing_rule,omitempty"` + + // One or more rewrite_rule_set blocks as defined below. Only valid for v2 SKUs. + RewriteRuleSet []RewriteRuleSetInitParameters `json:"rewriteRuleSet,omitempty" tf:"rewrite_rule_set,omitempty"` + + // One or more ssl_certificate blocks as defined below. + SSLCertificate []SSLCertificateInitParameters `json:"sslCertificate,omitempty" tf:"ssl_certificate,omitempty"` + + // a ssl_policy block as defined below. + SSLPolicy []SSLPolicyInitParameters `json:"sslPolicy,omitempty" tf:"ssl_policy,omitempty"` + + // One or more ssl_profile blocks as defined below. + SSLProfile []SSLProfileInitParameters `json:"sslProfile,omitempty" tf:"ssl_profile,omitempty"` + + // A sku block as defined below. + Sku []SkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // One or more trusted_client_certificate blocks as defined below. + TrustedClientCertificate []TrustedClientCertificateInitParameters `json:"trustedClientCertificate,omitempty" tf:"trusted_client_certificate,omitempty"` + + // One or more trusted_root_certificate blocks as defined below. + TrustedRootCertificate []TrustedRootCertificateInitParameters `json:"trustedRootCertificate,omitempty" tf:"trusted_root_certificate,omitempty"` + + // One or more url_path_map blocks as defined below. + URLPathMap []URLPathMapInitParameters `json:"urlPathMap,omitempty" tf:"url_path_map,omitempty"` + + // A waf_configuration block as defined below. + WafConfiguration []WafConfigurationInitParameters `json:"wafConfiguration,omitempty" tf:"waf_configuration,omitempty"` + + // Specifies a list of Availability Zones in which this Application Gateway should be located. Changing this forces a new Application Gateway to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type ApplicationGatewayObservation struct { // One or more authentication_certificate blocks as defined below. @@ -258,6 +354,12 @@ type ApplicationGatewayParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type AuthenticationCertificateInitParameters struct { + + // The Name of the Authentication Certificate to use. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type AuthenticationCertificateObservation struct { // The ID of the Authentication Certificate. @@ -274,8 +376,17 @@ type AuthenticationCertificateParameters struct { DataSecretRef v1.SecretKeySelector `json:"dataSecretRef" tf:"-"` // The Name of the Authentication Certificate to use. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type AutoscaleConfigurationInitParameters struct { + + // Maximum capacity for autoscaling. Accepted values are in the range 2 to 125. + MaxCapacity *float64 `json:"maxCapacity,omitempty" tf:"max_capacity,omitempty"` + + // Minimum capacity for autoscaling. Accepted values are in the range 0 to 100. + MinCapacity *float64 `json:"minCapacity,omitempty" tf:"min_capacity,omitempty"` } type AutoscaleConfigurationObservation struct { @@ -294,8 +405,20 @@ type AutoscaleConfigurationParameters struct { MaxCapacity *float64 `json:"maxCapacity,omitempty" tf:"max_capacity,omitempty"` // Minimum capacity for autoscaling. Accepted values are in the range 0 to 100. - // +kubebuilder:validation:Required - MinCapacity *float64 `json:"minCapacity" tf:"min_capacity,omitempty"` + // +kubebuilder:validation:Optional + MinCapacity *float64 `json:"minCapacity,omitempty" tf:"min_capacity,omitempty"` +} + +type BackendAddressPoolInitParameters struct { + + // A list of FQDN's which should be part of the Backend Address Pool. + Fqdns []*string `json:"fqdns,omitempty" tf:"fqdns,omitempty"` + + // A list of IP Addresses which should be part of the Backend Address Pool. + IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"` + + // The name of the Backend Address Pool. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type BackendAddressPoolObservation struct { @@ -324,8 +447,14 @@ type BackendAddressPoolParameters struct { IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"` // The name of the Backend Address Pool. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type BackendHTTPSettingsAuthenticationCertificateInitParameters struct { + + // The Name of the URL Path Map. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type BackendHTTPSettingsAuthenticationCertificateObservation struct { @@ -340,8 +469,50 @@ type BackendHTTPSettingsAuthenticationCertificateObservation struct { type BackendHTTPSettingsAuthenticationCertificateParameters struct { // The Name of the URL Path Map. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type BackendHTTPSettingsInitParameters struct { + + // The name of the affinity cookie. + AffinityCookieName *string `json:"affinityCookieName,omitempty" tf:"affinity_cookie_name,omitempty"` + + // One or more authentication_certificate blocks as defined below. + AuthenticationCertificate []BackendHTTPSettingsAuthenticationCertificateInitParameters `json:"authenticationCertificate,omitempty" tf:"authentication_certificate,omitempty"` + + // A connection_draining block as defined below. + ConnectionDraining []ConnectionDrainingInitParameters `json:"connectionDraining,omitempty" tf:"connection_draining,omitempty"` + + // Is Cookie-Based Affinity enabled? Possible values are Enabled and Disabled. + CookieBasedAffinity *string `json:"cookieBasedAffinity,omitempty" tf:"cookie_based_affinity,omitempty"` + + // Host header to be sent to the backend servers. Cannot be set if pick_host_name_from_backend_address is set to true. + HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` + + // The name of the Backend HTTP Settings Collection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Path which should be used as a prefix for all HTTP requests. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // Whether host header should be picked from the host name of the backend server. Defaults to false. + PickHostNameFromBackendAddress *bool `json:"pickHostNameFromBackendAddress,omitempty" tf:"pick_host_name_from_backend_address,omitempty"` + + // The port which should be used for this Backend HTTP Settings Collection. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // The name of an associated HTTP Probe. + ProbeName *string `json:"probeName,omitempty" tf:"probe_name,omitempty"` + + // The Protocol which should be used. Possible values are Http and Https. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // The request timeout in seconds, which must be between 1 and 86400 seconds. Defaults to 30. + RequestTimeout *float64 `json:"requestTimeout,omitempty" tf:"request_timeout,omitempty"` + + // A list of trusted_root_certificate names. + TrustedRootCertificateNames []*string `json:"trustedRootCertificateNames,omitempty" tf:"trusted_root_certificate_names,omitempty"` } type BackendHTTPSettingsObservation struct { @@ -407,16 +578,16 @@ type BackendHTTPSettingsParameters struct { ConnectionDraining []ConnectionDrainingParameters `json:"connectionDraining,omitempty" tf:"connection_draining,omitempty"` // Is Cookie-Based Affinity enabled? Possible values are Enabled and Disabled. - // +kubebuilder:validation:Required - CookieBasedAffinity *string `json:"cookieBasedAffinity" tf:"cookie_based_affinity,omitempty"` + // +kubebuilder:validation:Optional + CookieBasedAffinity *string `json:"cookieBasedAffinity,omitempty" tf:"cookie_based_affinity,omitempty"` // Host header to be sent to the backend servers. Cannot be set if pick_host_name_from_backend_address is set to true. // +kubebuilder:validation:Optional HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` // The name of the Backend HTTP Settings Collection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Path which should be used as a prefix for all HTTP requests. // +kubebuilder:validation:Optional @@ -427,16 +598,16 @@ type BackendHTTPSettingsParameters struct { PickHostNameFromBackendAddress *bool `json:"pickHostNameFromBackendAddress,omitempty" tf:"pick_host_name_from_backend_address,omitempty"` // The port which should be used for this Backend HTTP Settings Collection. - // +kubebuilder:validation:Required - Port *float64 `json:"port" tf:"port,omitempty"` + // +kubebuilder:validation:Optional + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The name of an associated HTTP Probe. // +kubebuilder:validation:Optional ProbeName *string `json:"probeName,omitempty" tf:"probe_name,omitempty"` // The Protocol which should be used. Possible values are Http and Https. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The request timeout in seconds, which must be between 1 and 86400 seconds. Defaults to 30. // +kubebuilder:validation:Optional @@ -447,6 +618,21 @@ type BackendHTTPSettingsParameters struct { TrustedRootCertificateNames []*string `json:"trustedRootCertificateNames,omitempty" tf:"trusted_root_certificate_names,omitempty"` } +type ConditionInitParameters struct { + + // Perform a case in-sensitive comparison. Defaults to false + IgnoreCase *bool `json:"ignoreCase,omitempty" tf:"ignore_case,omitempty"` + + // Negate the result of the condition evaluation. Defaults to false + Negate *bool `json:"negate,omitempty" tf:"negate,omitempty"` + + // The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition. + Pattern *string `json:"pattern,omitempty" tf:"pattern,omitempty"` + + // The variable of the condition. + Variable *string `json:"variable,omitempty" tf:"variable,omitempty"` +} + type ConditionObservation struct { // Perform a case in-sensitive comparison. Defaults to false @@ -473,12 +659,21 @@ type ConditionParameters struct { Negate *bool `json:"negate,omitempty" tf:"negate,omitempty"` // The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition. - // +kubebuilder:validation:Required - Pattern *string `json:"pattern" tf:"pattern,omitempty"` + // +kubebuilder:validation:Optional + Pattern *string `json:"pattern,omitempty" tf:"pattern,omitempty"` // The variable of the condition. - // +kubebuilder:validation:Required - Variable *string `json:"variable" tf:"variable,omitempty"` + // +kubebuilder:validation:Optional + Variable *string `json:"variable,omitempty" tf:"variable,omitempty"` +} + +type ConnectionDrainingInitParameters struct { + + // The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds. + DrainTimeoutSec *float64 `json:"drainTimeoutSec,omitempty" tf:"drain_timeout_sec,omitempty"` + + // Is the Web Application Firewall enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } type ConnectionDrainingObservation struct { @@ -493,12 +688,21 @@ type ConnectionDrainingObservation struct { type ConnectionDrainingParameters struct { // The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds. - // +kubebuilder:validation:Required - DrainTimeoutSec *float64 `json:"drainTimeoutSec" tf:"drain_timeout_sec,omitempty"` + // +kubebuilder:validation:Optional + DrainTimeoutSec *float64 `json:"drainTimeoutSec,omitempty" tf:"drain_timeout_sec,omitempty"` // Is the Web Application Firewall enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + +type CustomErrorConfigurationInitParameters struct { + + // Error page URL of the application gateway customer error. + CustomErrorPageURL *string `json:"customErrorPageUrl,omitempty" tf:"custom_error_page_url,omitempty"` + + // Status code of the application gateway customer error. Possible values are HttpStatus403 and HttpStatus502 + StatusCode *string `json:"statusCode,omitempty" tf:"status_code,omitempty"` } type CustomErrorConfigurationObservation struct { @@ -516,12 +720,21 @@ type CustomErrorConfigurationObservation struct { type CustomErrorConfigurationParameters struct { // Error page URL of the application gateway customer error. - // +kubebuilder:validation:Required - CustomErrorPageURL *string `json:"customErrorPageUrl" tf:"custom_error_page_url,omitempty"` + // +kubebuilder:validation:Optional + CustomErrorPageURL *string `json:"customErrorPageUrl,omitempty" tf:"custom_error_page_url,omitempty"` // Status code of the application gateway customer error. Possible values are HttpStatus403 and HttpStatus502 - // +kubebuilder:validation:Required - StatusCode *string `json:"statusCode" tf:"status_code,omitempty"` + // +kubebuilder:validation:Optional + StatusCode *string `json:"statusCode,omitempty" tf:"status_code,omitempty"` +} + +type DisabledRuleGroupInitParameters struct { + + // The rule group where specific rules should be disabled. Possible values are BadBots, crs_20_protocol_violations, crs_21_protocol_anomalies, crs_23_request_limits, crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, crs_41_sql_injection_attacks, crs_41_xss_attacks, crs_42_tight_security, crs_45_trojans, General, GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. + RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` + + // A list of rules which should be disabled in that group. Disables all rules in the specified group if rules is not specified. + Rules []*float64 `json:"rules,omitempty" tf:"rules,omitempty"` } type DisabledRuleGroupObservation struct { @@ -536,14 +749,26 @@ type DisabledRuleGroupObservation struct { type DisabledRuleGroupParameters struct { // The rule group where specific rules should be disabled. Possible values are BadBots, crs_20_protocol_violations, crs_21_protocol_anomalies, crs_23_request_limits, crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, crs_41_sql_injection_attacks, crs_41_xss_attacks, crs_42_tight_security, crs_45_trojans, General, GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. - // +kubebuilder:validation:Required - RuleGroupName *string `json:"ruleGroupName" tf:"rule_group_name,omitempty"` + // +kubebuilder:validation:Optional + RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` // A list of rules which should be disabled in that group. Disables all rules in the specified group if rules is not specified. // +kubebuilder:validation:Optional Rules []*float64 `json:"rules,omitempty" tf:"rules,omitempty"` } +type ExclusionInitParameters struct { + + // Match variable of the exclusion rule to exclude header, cookie or GET arguments. Possible values are RequestArgKeys, RequestArgNames, RequestArgValues, RequestCookieKeys, RequestCookieNames, RequestCookieValues, RequestHeaderKeys, RequestHeaderNames and RequestHeaderValues + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` + + // String value which will be used for the filter operation. If empty will exclude all traffic on this match_variable + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` + + // Operator which will be used to search in the variable content. Possible values are Contains, EndsWith, Equals, EqualsAny and StartsWith. If empty will exclude all traffic on this match_variable + SelectorMatchOperator *string `json:"selectorMatchOperator,omitempty" tf:"selector_match_operator,omitempty"` +} + type ExclusionObservation struct { // Match variable of the exclusion rule to exclude header, cookie or GET arguments. Possible values are RequestArgKeys, RequestArgNames, RequestArgValues, RequestCookieKeys, RequestCookieNames, RequestCookieValues, RequestHeaderKeys, RequestHeaderNames and RequestHeaderValues @@ -559,8 +784,8 @@ type ExclusionObservation struct { type ExclusionParameters struct { // Match variable of the exclusion rule to exclude header, cookie or GET arguments. Possible values are RequestArgKeys, RequestArgNames, RequestArgValues, RequestCookieKeys, RequestCookieNames, RequestCookieValues, RequestHeaderKeys, RequestHeaderNames and RequestHeaderValues - // +kubebuilder:validation:Required - MatchVariable *string `json:"matchVariable" tf:"match_variable,omitempty"` + // +kubebuilder:validation:Optional + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // String value which will be used for the filter operation. If empty will exclude all traffic on this match_variable // +kubebuilder:validation:Optional @@ -571,6 +796,21 @@ type ExclusionParameters struct { SelectorMatchOperator *string `json:"selectorMatchOperator,omitempty" tf:"selector_match_operator,omitempty"` } +type FrontendIPConfigurationInitParameters struct { + + // The name of the Frontend IP Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Private IP Address to use for the Application Gateway. + PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` + + // The Allocation Method for the Private IP Address. Possible values are Dynamic and Static. + PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` + + // The name of the private link configuration to use for this frontend IP configuration. + PrivateLinkConfigurationName *string `json:"privateLinkConfigurationName,omitempty" tf:"private_link_configuration_name,omitempty"` +} + type FrontendIPConfigurationObservation struct { // The ID of the Frontend IP Configuration. @@ -601,8 +841,8 @@ type FrontendIPConfigurationObservation struct { type FrontendIPConfigurationParameters struct { // The name of the Frontend IP Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Private IP Address to use for the Application Gateway. // +kubebuilder:validation:Optional @@ -645,10 +885,19 @@ type FrontendIPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } -type FrontendPortObservation struct { +type FrontendPortInitParameters struct { - // The ID of the Frontend Port. - ID *string `json:"id,omitempty" tf:"id,omitempty"` + // The name of the Frontend Port. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The port used for this Frontend Port. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` +} + +type FrontendPortObservation struct { + + // The ID of the Frontend Port. + ID *string `json:"id,omitempty" tf:"id,omitempty"` // The name of the Frontend Port. Name *string `json:"name,omitempty" tf:"name,omitempty"` @@ -660,12 +909,18 @@ type FrontendPortObservation struct { type FrontendPortParameters struct { // The name of the Frontend Port. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The port used for this Frontend Port. - // +kubebuilder:validation:Required - Port *float64 `json:"port" tf:"port,omitempty"` + // +kubebuilder:validation:Optional + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` +} + +type GatewayIPConfigurationInitParameters struct { + + // The Name of this Gateway IP Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type GatewayIPConfigurationObservation struct { @@ -683,8 +938,8 @@ type GatewayIPConfigurationObservation struct { type GatewayIPConfigurationParameters struct { // The Name of this Gateway IP Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Subnet which the Application Gateway should be connected to. // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet @@ -701,6 +956,15 @@ type GatewayIPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type GlobalInitParameters struct { + + // Whether Application Gateway's Request buffer is enabled. + RequestBufferingEnabled *bool `json:"requestBufferingEnabled,omitempty" tf:"request_buffering_enabled,omitempty"` + + // Whether Application Gateway's Response buffer is enabled. + ResponseBufferingEnabled *bool `json:"responseBufferingEnabled,omitempty" tf:"response_buffering_enabled,omitempty"` +} + type GlobalObservation struct { // Whether Application Gateway's Request buffer is enabled. @@ -713,12 +977,21 @@ type GlobalObservation struct { type GlobalParameters struct { // Whether Application Gateway's Request buffer is enabled. - // +kubebuilder:validation:Required - RequestBufferingEnabled *bool `json:"requestBufferingEnabled" tf:"request_buffering_enabled,omitempty"` + // +kubebuilder:validation:Optional + RequestBufferingEnabled *bool `json:"requestBufferingEnabled,omitempty" tf:"request_buffering_enabled,omitempty"` // Whether Application Gateway's Response buffer is enabled. - // +kubebuilder:validation:Required - ResponseBufferingEnabled *bool `json:"responseBufferingEnabled" tf:"response_buffering_enabled,omitempty"` + // +kubebuilder:validation:Optional + ResponseBufferingEnabled *bool `json:"responseBufferingEnabled,omitempty" tf:"response_buffering_enabled,omitempty"` +} + +type HTTPListenerCustomErrorConfigurationInitParameters struct { + + // Error page URL of the application gateway customer error. + CustomErrorPageURL *string `json:"customErrorPageUrl,omitempty" tf:"custom_error_page_url,omitempty"` + + // A list of allowed status codes for this Health Probe. + StatusCode *string `json:"statusCode,omitempty" tf:"status_code,omitempty"` } type HTTPListenerCustomErrorConfigurationObservation struct { @@ -736,12 +1009,48 @@ type HTTPListenerCustomErrorConfigurationObservation struct { type HTTPListenerCustomErrorConfigurationParameters struct { // Error page URL of the application gateway customer error. - // +kubebuilder:validation:Required - CustomErrorPageURL *string `json:"customErrorPageUrl" tf:"custom_error_page_url,omitempty"` + // +kubebuilder:validation:Optional + CustomErrorPageURL *string `json:"customErrorPageUrl,omitempty" tf:"custom_error_page_url,omitempty"` // A list of allowed status codes for this Health Probe. - // +kubebuilder:validation:Required - StatusCode *string `json:"statusCode" tf:"status_code,omitempty"` + // +kubebuilder:validation:Optional + StatusCode *string `json:"statusCode,omitempty" tf:"status_code,omitempty"` +} + +type HTTPListenerInitParameters struct { + + // One or more custom_error_configuration blocks as defined below. + CustomErrorConfiguration []HTTPListenerCustomErrorConfigurationInitParameters `json:"customErrorConfiguration,omitempty" tf:"custom_error_configuration,omitempty"` + + // The ID of the Web Application Firewall Policy which should be used for this HTTP Listener. + FirewallPolicyID *string `json:"firewallPolicyId,omitempty" tf:"firewall_policy_id,omitempty"` + + // The Name of the Frontend IP Configuration used for this HTTP Listener. + FrontendIPConfigurationName *string `json:"frontendIpConfigurationName,omitempty" tf:"frontend_ip_configuration_name,omitempty"` + + // The Name of the Frontend Port use for this HTTP Listener. + FrontendPortName *string `json:"frontendPortName,omitempty" tf:"frontend_port_name,omitempty"` + + // The Hostname which should be used for this HTTP Listener. Setting this value changes Listener Type to 'Multi site'. + HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` + + // A list of Hostname(s) should be used for this HTTP Listener. It allows special wildcard characters. + HostNames []*string `json:"hostNames,omitempty" tf:"host_names,omitempty"` + + // The Name of the HTTP Listener. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Protocol to use for this HTTP Listener. Possible values are Http and Https. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // Should Server Name Indication be Required? Defaults to false. + RequireSni *bool `json:"requireSni,omitempty" tf:"require_sni,omitempty"` + + // The name of the associated SSL Certificate which should be used for this HTTP Listener. + SSLCertificateName *string `json:"sslCertificateName,omitempty" tf:"ssl_certificate_name,omitempty"` + + // The name of the associated SSL Profile which should be used for this HTTP Listener. + SSLProfileName *string `json:"sslProfileName,omitempty" tf:"ssl_profile_name,omitempty"` } type HTTPListenerObservation struct { @@ -806,12 +1115,12 @@ type HTTPListenerParameters struct { FirewallPolicyID *string `json:"firewallPolicyId,omitempty" tf:"firewall_policy_id,omitempty"` // The Name of the Frontend IP Configuration used for this HTTP Listener. - // +kubebuilder:validation:Required - FrontendIPConfigurationName *string `json:"frontendIpConfigurationName" tf:"frontend_ip_configuration_name,omitempty"` + // +kubebuilder:validation:Optional + FrontendIPConfigurationName *string `json:"frontendIpConfigurationName,omitempty" tf:"frontend_ip_configuration_name,omitempty"` // The Name of the Frontend Port use for this HTTP Listener. - // +kubebuilder:validation:Required - FrontendPortName *string `json:"frontendPortName" tf:"frontend_port_name,omitempty"` + // +kubebuilder:validation:Optional + FrontendPortName *string `json:"frontendPortName,omitempty" tf:"frontend_port_name,omitempty"` // The Hostname which should be used for this HTTP Listener. Setting this value changes Listener Type to 'Multi site'. // +kubebuilder:validation:Optional @@ -822,12 +1131,12 @@ type HTTPListenerParameters struct { HostNames []*string `json:"hostNames,omitempty" tf:"host_names,omitempty"` // The Name of the HTTP Listener. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Protocol to use for this HTTP Listener. Possible values are Http and Https. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // Should Server Name Indication be Required? Defaults to false. // +kubebuilder:validation:Optional @@ -842,6 +1151,21 @@ type HTTPListenerParameters struct { SSLProfileName *string `json:"sslProfileName,omitempty" tf:"ssl_profile_name,omitempty"` } +type IPConfigurationInitParameters struct { + + // The Name of the URL Path Map. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this the Primary IP Configuration? + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` + + // The Static IP Address which should be used. + PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` + + // The allocation method used for the Private IP Address. Possible values are Dynamic and Static. + PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` +} + type IPConfigurationObservation struct { // The Name of the URL Path Map. @@ -863,20 +1187,20 @@ type IPConfigurationObservation struct { type IPConfigurationParameters struct { // The Name of the URL Path Map. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this the Primary IP Configuration? - // +kubebuilder:validation:Required - Primary *bool `json:"primary" tf:"primary,omitempty"` + // +kubebuilder:validation:Optional + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` // The Static IP Address which should be used. // +kubebuilder:validation:Optional PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // The allocation method used for the Private IP Address. Possible values are Dynamic and Static. - // +kubebuilder:validation:Required - PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation" tf:"private_ip_address_allocation,omitempty"` + // +kubebuilder:validation:Optional + PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` // The ID of the subnet the private link configuration should connect to. // +crossplane:generate:reference:type=Subnet @@ -893,6 +1217,15 @@ type IPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Application Gateway. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Application Gateway. Only possible value is UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Application Gateway. @@ -905,12 +1238,21 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Application Gateway. - // +kubebuilder:validation:Required - IdentityIds []*string `json:"identityIds" tf:"identity_ids,omitempty"` + // +kubebuilder:validation:Optional + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Application Gateway. Only possible value is UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type MatchInitParameters struct { + + // A snippet from the Response Body which must be present in the Response. + Body *string `json:"body,omitempty" tf:"body,omitempty"` + + // A list of allowed status codes for this Health Probe. + StatusCode []*string `json:"statusCode,omitempty" tf:"status_code,omitempty"` } type MatchObservation struct { @@ -929,8 +1271,32 @@ type MatchParameters struct { Body *string `json:"body,omitempty" tf:"body,omitempty"` // A list of allowed status codes for this Health Probe. - // +kubebuilder:validation:Required - StatusCode []*string `json:"statusCode" tf:"status_code,omitempty"` + // +kubebuilder:validation:Optional + StatusCode []*string `json:"statusCode,omitempty" tf:"status_code,omitempty"` +} + +type PathRuleInitParameters struct { + + // The Name of the Backend Address Pool which should be used for this Routing Rule. Cannot be set if redirect_configuration_name is set. + BackendAddressPoolName *string `json:"backendAddressPoolName,omitempty" tf:"backend_address_pool_name,omitempty"` + + // The Name of the Backend HTTP Settings Collection which should be used for this Routing Rule. Cannot be set if redirect_configuration_name is set. + BackendHTTPSettingsName *string `json:"backendHttpSettingsName,omitempty" tf:"backend_http_settings_name,omitempty"` + + // The ID of the Web Application Firewall Policy which should be used as a HTTP Listener. + FirewallPolicyID *string `json:"firewallPolicyId,omitempty" tf:"firewall_policy_id,omitempty"` + + // The Name of the URL Path Map. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A list of Paths used in this Path Rule. + Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` + + // The Name of the Redirect Configuration which should be used for this Routing Rule. Cannot be set if either backend_address_pool_name or backend_http_settings_name is set. + RedirectConfigurationName *string `json:"redirectConfigurationName,omitempty" tf:"redirect_configuration_name,omitempty"` + + // The Name of the Rewrite Rule Set which should be used for this Routing Rule. Only valid for v2 SKUs. + RewriteRuleSetName *string `json:"rewriteRuleSetName,omitempty" tf:"rewrite_rule_set_name,omitempty"` } type PathRuleObservation struct { @@ -987,12 +1353,12 @@ type PathRuleParameters struct { FirewallPolicyID *string `json:"firewallPolicyId,omitempty" tf:"firewall_policy_id,omitempty"` // The Name of the URL Path Map. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of Paths used in this Path Rule. - // +kubebuilder:validation:Required - Paths []*string `json:"paths" tf:"paths,omitempty"` + // +kubebuilder:validation:Optional + Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` // The Name of the Redirect Configuration which should be used for this Routing Rule. Cannot be set if either backend_address_pool_name or backend_http_settings_name is set. // +kubebuilder:validation:Optional @@ -1003,6 +1369,9 @@ type PathRuleParameters struct { RewriteRuleSetName *string `json:"rewriteRuleSetName,omitempty" tf:"rewrite_rule_set_name,omitempty"` } +type PrivateEndpointConnectionInitParameters struct { +} + type PrivateEndpointConnectionObservation struct { // The ID of the private endpoint connection. @@ -1015,6 +1384,15 @@ type PrivateEndpointConnectionObservation struct { type PrivateEndpointConnectionParameters struct { } +type PrivateLinkConfigurationInitParameters struct { + + // One or more ip_configuration blocks as defined below. + IPConfiguration []IPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` + + // The name of the private link configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type PrivateLinkConfigurationObservation struct { // The ID of the private link configuration. @@ -1030,12 +1408,48 @@ type PrivateLinkConfigurationObservation struct { type PrivateLinkConfigurationParameters struct { // One or more ip_configuration blocks as defined below. - // +kubebuilder:validation:Required - IPConfiguration []IPConfigurationParameters `json:"ipConfiguration" tf:"ip_configuration,omitempty"` + // +kubebuilder:validation:Optional + IPConfiguration []IPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The name of the private link configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type ProbeInitParameters struct { + + // The Hostname used for this Probe. If the Application Gateway is configured for a single site, by default the Host name should be specified as 127.0.0.1, unless otherwise configured in custom probe. Cannot be set if pick_host_name_from_backend_http_settings is set to true. + Host *string `json:"host,omitempty" tf:"host,omitempty"` + + // The Interval between two consecutive probes in seconds. Possible values range from 1 second to a maximum of 86,400 seconds. + Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` + + // A match block as defined above. + Match []MatchInitParameters `json:"match,omitempty" tf:"match,omitempty"` + + // The minimum number of servers that are always marked as healthy. Defaults to 0. + MinimumServers *float64 `json:"minimumServers,omitempty" tf:"minimum_servers,omitempty"` + + // The Name of the Probe. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Path used for this Probe. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // Whether the host header should be picked from the backend HTTP settings. Defaults to false. + PickHostNameFromBackendHTTPSettings *bool `json:"pickHostNameFromBackendHttpSettings,omitempty" tf:"pick_host_name_from_backend_http_settings,omitempty"` + + // Custom port which will be used for probing the backend servers. The valid value ranges from 1 to 65535. In case not set, port from HTTP settings will be used. This property is valid for Standard_v2 and WAF_v2 only. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // The Protocol used for this Probe. Possible values are Http and Https. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // The Timeout used for this Probe, which indicates when a probe becomes unhealthy. Possible values range from 1 second to a maximum of 86,400 seconds. + Timeout *float64 `json:"timeout,omitempty" tf:"timeout,omitempty"` + + // The Unhealthy Threshold for this Probe, which indicates the amount of retries which should be attempted before a node is deemed unhealthy. Possible values are from 1 to 20. + UnhealthyThreshold *float64 `json:"unhealthyThreshold,omitempty" tf:"unhealthy_threshold,omitempty"` } type ProbeObservation struct { @@ -1084,8 +1498,8 @@ type ProbeParameters struct { Host *string `json:"host,omitempty" tf:"host,omitempty"` // The Interval between two consecutive probes in seconds. Possible values range from 1 second to a maximum of 86,400 seconds. - // +kubebuilder:validation:Required - Interval *float64 `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` // A match block as defined above. // +kubebuilder:validation:Optional @@ -1096,12 +1510,12 @@ type ProbeParameters struct { MinimumServers *float64 `json:"minimumServers,omitempty" tf:"minimum_servers,omitempty"` // The Name of the Probe. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Path used for this Probe. - // +kubebuilder:validation:Required - Path *string `json:"path" tf:"path,omitempty"` + // +kubebuilder:validation:Optional + Path *string `json:"path,omitempty" tf:"path,omitempty"` // Whether the host header should be picked from the backend HTTP settings. Defaults to false. // +kubebuilder:validation:Optional @@ -1112,16 +1526,37 @@ type ProbeParameters struct { Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The Protocol used for this Probe. Possible values are Http and Https. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The Timeout used for this Probe, which indicates when a probe becomes unhealthy. Possible values range from 1 second to a maximum of 86,400 seconds. - // +kubebuilder:validation:Required - Timeout *float64 `json:"timeout" tf:"timeout,omitempty"` + // +kubebuilder:validation:Optional + Timeout *float64 `json:"timeout,omitempty" tf:"timeout,omitempty"` // The Unhealthy Threshold for this Probe, which indicates the amount of retries which should be attempted before a node is deemed unhealthy. Possible values are from 1 to 20. - // +kubebuilder:validation:Required - UnhealthyThreshold *float64 `json:"unhealthyThreshold" tf:"unhealthy_threshold,omitempty"` + // +kubebuilder:validation:Optional + UnhealthyThreshold *float64 `json:"unhealthyThreshold,omitempty" tf:"unhealthy_threshold,omitempty"` +} + +type RedirectConfigurationInitParameters struct { + + // Whether or not to include the path in the redirected Url. Defaults to false + IncludePath *bool `json:"includePath,omitempty" tf:"include_path,omitempty"` + + // Whether or not to include the query string in the redirected Url. Default to false + IncludeQueryString *bool `json:"includeQueryString,omitempty" tf:"include_query_string,omitempty"` + + // Unique name of the redirect configuration block + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The type of redirect. Possible values are Permanent, Temporary, Found and SeeOther + RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` + + // The name of the listener to redirect to. Cannot be set if target_url is set. + TargetListenerName *string `json:"targetListenerName,omitempty" tf:"target_listener_name,omitempty"` + + // The Url to redirect the request to. Cannot be set if target_listener_name is set. + TargetURL *string `json:"targetUrl,omitempty" tf:"target_url,omitempty"` } type RedirectConfigurationObservation struct { @@ -1162,40 +1597,79 @@ type RedirectConfigurationParameters struct { IncludeQueryString *bool `json:"includeQueryString,omitempty" tf:"include_query_string,omitempty"` // Unique name of the redirect configuration block - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The type of redirect. Possible values are Permanent, Temporary, Found and SeeOther - // +kubebuilder:validation:Required - RedirectType *string `json:"redirectType" tf:"redirect_type,omitempty"` + // +kubebuilder:validation:Optional + RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` // The name of the listener to redirect to. Cannot be set if target_url is set. // +kubebuilder:validation:Optional TargetListenerName *string `json:"targetListenerName,omitempty" tf:"target_listener_name,omitempty"` - // The Url to redirect the request to. Cannot be set if target_listener_name is set. - // +kubebuilder:validation:Optional - TargetURL *string `json:"targetUrl,omitempty" tf:"target_url,omitempty"` -} + // The Url to redirect the request to. Cannot be set if target_listener_name is set. + // +kubebuilder:validation:Optional + TargetURL *string `json:"targetUrl,omitempty" tf:"target_url,omitempty"` +} + +type RequestHeaderConfigurationInitParameters struct { + + // Header name of the header configuration. + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + + // Header value of the header configuration. To delete a response header set this property to an empty string. + HeaderValue *string `json:"headerValue,omitempty" tf:"header_value,omitempty"` +} + +type RequestHeaderConfigurationObservation struct { + + // Header name of the header configuration. + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + + // Header value of the header configuration. To delete a response header set this property to an empty string. + HeaderValue *string `json:"headerValue,omitempty" tf:"header_value,omitempty"` +} + +type RequestHeaderConfigurationParameters struct { + + // Header name of the header configuration. + // +kubebuilder:validation:Optional + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + + // Header value of the header configuration. To delete a response header set this property to an empty string. + // +kubebuilder:validation:Optional + HeaderValue *string `json:"headerValue,omitempty" tf:"header_value,omitempty"` +} + +type RequestRoutingRuleInitParameters struct { + + // The Name of the Backend Address Pool which should be used for this Routing Rule. Cannot be set if redirect_configuration_name is set. + BackendAddressPoolName *string `json:"backendAddressPoolName,omitempty" tf:"backend_address_pool_name,omitempty"` + + // The Name of the Backend HTTP Settings Collection which should be used for this Routing Rule. Cannot be set if redirect_configuration_name is set. + BackendHTTPSettingsName *string `json:"backendHttpSettingsName,omitempty" tf:"backend_http_settings_name,omitempty"` + + // The Name of the HTTP Listener which should be used for this Routing Rule. + HTTPListenerName *string `json:"httpListenerName,omitempty" tf:"http_listener_name,omitempty"` -type RequestHeaderConfigurationObservation struct { + // The Name of this Request Routing Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` - // Header name of the header configuration. - HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + // Rule evaluation order can be dictated by specifying an integer value from 1 to 20000 with 1 being the highest priority and 20000 being the lowest priority. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` - // Header value of the header configuration. To delete a response header set this property to an empty string. - HeaderValue *string `json:"headerValue,omitempty" tf:"header_value,omitempty"` -} + // The Name of the Redirect Configuration which should be used for this Routing Rule. Cannot be set if either backend_address_pool_name or backend_http_settings_name is set. + RedirectConfigurationName *string `json:"redirectConfigurationName,omitempty" tf:"redirect_configuration_name,omitempty"` -type RequestHeaderConfigurationParameters struct { + // The Name of the Rewrite Rule Set which should be used for this Routing Rule. Only valid for v2 SKUs. + RewriteRuleSetName *string `json:"rewriteRuleSetName,omitempty" tf:"rewrite_rule_set_name,omitempty"` - // Header name of the header configuration. - // +kubebuilder:validation:Required - HeaderName *string `json:"headerName" tf:"header_name,omitempty"` + // The Type of Routing that should be used for this Rule. Possible values are Basic and PathBasedRouting. + RuleType *string `json:"ruleType,omitempty" tf:"rule_type,omitempty"` - // Header value of the header configuration. To delete a response header set this property to an empty string. - // +kubebuilder:validation:Required - HeaderValue *string `json:"headerValue" tf:"header_value,omitempty"` + // The Name of the URL Path Map which should be associated with this Routing Rule. + URLPathMapName *string `json:"urlPathMapName,omitempty" tf:"url_path_map_name,omitempty"` } type RequestRoutingRuleObservation struct { @@ -1260,12 +1734,12 @@ type RequestRoutingRuleParameters struct { BackendHTTPSettingsName *string `json:"backendHttpSettingsName,omitempty" tf:"backend_http_settings_name,omitempty"` // The Name of the HTTP Listener which should be used for this Routing Rule. - // +kubebuilder:validation:Required - HTTPListenerName *string `json:"httpListenerName" tf:"http_listener_name,omitempty"` + // +kubebuilder:validation:Optional + HTTPListenerName *string `json:"httpListenerName,omitempty" tf:"http_listener_name,omitempty"` // The Name of this Request Routing Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Rule evaluation order can be dictated by specifying an integer value from 1 to 20000 with 1 being the highest priority and 20000 being the lowest priority. // +kubebuilder:validation:Optional @@ -1280,14 +1754,23 @@ type RequestRoutingRuleParameters struct { RewriteRuleSetName *string `json:"rewriteRuleSetName,omitempty" tf:"rewrite_rule_set_name,omitempty"` // The Type of Routing that should be used for this Rule. Possible values are Basic and PathBasedRouting. - // +kubebuilder:validation:Required - RuleType *string `json:"ruleType" tf:"rule_type,omitempty"` + // +kubebuilder:validation:Optional + RuleType *string `json:"ruleType,omitempty" tf:"rule_type,omitempty"` // The Name of the URL Path Map which should be associated with this Routing Rule. // +kubebuilder:validation:Optional URLPathMapName *string `json:"urlPathMapName,omitempty" tf:"url_path_map_name,omitempty"` } +type ResponseHeaderConfigurationInitParameters struct { + + // Header name of the header configuration. + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + + // Header value of the header configuration. To delete a response header set this property to an empty string. + HeaderValue *string `json:"headerValue,omitempty" tf:"header_value,omitempty"` +} + type ResponseHeaderConfigurationObservation struct { // Header name of the header configuration. @@ -1300,12 +1783,33 @@ type ResponseHeaderConfigurationObservation struct { type ResponseHeaderConfigurationParameters struct { // Header name of the header configuration. - // +kubebuilder:validation:Required - HeaderName *string `json:"headerName" tf:"header_name,omitempty"` + // +kubebuilder:validation:Optional + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // Header value of the header configuration. To delete a response header set this property to an empty string. - // +kubebuilder:validation:Required - HeaderValue *string `json:"headerValue" tf:"header_value,omitempty"` + // +kubebuilder:validation:Optional + HeaderValue *string `json:"headerValue,omitempty" tf:"header_value,omitempty"` +} + +type RewriteRuleInitParameters struct { + + // One or more condition blocks as defined above. + Condition []ConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` + + // The Name of the URL Path Map. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more request_header_configuration blocks as defined above. + RequestHeaderConfiguration []RequestHeaderConfigurationInitParameters `json:"requestHeaderConfiguration,omitempty" tf:"request_header_configuration,omitempty"` + + // One or more response_header_configuration blocks as defined above. + ResponseHeaderConfiguration []ResponseHeaderConfigurationInitParameters `json:"responseHeaderConfiguration,omitempty" tf:"response_header_configuration,omitempty"` + + // Rule sequence of the rewrite rule that determines the order of execution in a set. + RuleSequence *float64 `json:"ruleSequence,omitempty" tf:"rule_sequence,omitempty"` + + // One url block as defined below + URL []URLInitParameters `json:"url,omitempty" tf:"url,omitempty"` } type RewriteRuleObservation struct { @@ -1336,8 +1840,8 @@ type RewriteRuleParameters struct { Condition []ConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` // The Name of the URL Path Map. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more request_header_configuration blocks as defined above. // +kubebuilder:validation:Optional @@ -1348,14 +1852,23 @@ type RewriteRuleParameters struct { ResponseHeaderConfiguration []ResponseHeaderConfigurationParameters `json:"responseHeaderConfiguration,omitempty" tf:"response_header_configuration,omitempty"` // Rule sequence of the rewrite rule that determines the order of execution in a set. - // +kubebuilder:validation:Required - RuleSequence *float64 `json:"ruleSequence" tf:"rule_sequence,omitempty"` + // +kubebuilder:validation:Optional + RuleSequence *float64 `json:"ruleSequence,omitempty" tf:"rule_sequence,omitempty"` // One url block as defined below // +kubebuilder:validation:Optional URL []URLParameters `json:"url,omitempty" tf:"url,omitempty"` } +type RewriteRuleSetInitParameters struct { + + // Unique name of the rewrite rule set block + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more rewrite_rule blocks as defined above. + RewriteRule []RewriteRuleInitParameters `json:"rewriteRule,omitempty" tf:"rewrite_rule,omitempty"` +} + type RewriteRuleSetObservation struct { // The ID of the Rewrite Rule Set @@ -1371,14 +1884,23 @@ type RewriteRuleSetObservation struct { type RewriteRuleSetParameters struct { // Unique name of the rewrite rule set block - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more rewrite_rule blocks as defined above. // +kubebuilder:validation:Optional RewriteRule []RewriteRuleParameters `json:"rewriteRule,omitempty" tf:"rewrite_rule,omitempty"` } +type SSLCertificateInitParameters struct { + + // Secret Id of (base-64 encoded unencrypted pfx) Secret or Certificate object stored in Azure KeyVault. You need to enable soft delete for keyvault to use this feature. Required if data is not set. + KeyVaultSecretID *string `json:"keyVaultSecretId,omitempty" tf:"key_vault_secret_id,omitempty"` + + // The Name of the SSL certificate that is unique within this Application Gateway + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type SSLCertificateObservation struct { // The ID of the SSL Certificate. @@ -1405,14 +1927,32 @@ type SSLCertificateParameters struct { KeyVaultSecretID *string `json:"keyVaultSecretId,omitempty" tf:"key_vault_secret_id,omitempty"` // The Name of the SSL certificate that is unique within this Application Gateway - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Password for the pfx file specified in data. Required if data is set. // +kubebuilder:validation:Optional PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` } +type SSLPolicyInitParameters struct { + + // A List of accepted cipher suites. Possible values are: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_3DES_EDE_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256 and TLS_RSA_WITH_AES_256_GCM_SHA384. + CipherSuites []*string `json:"cipherSuites,omitempty" tf:"cipher_suites,omitempty"` + + // A list of SSL Protocols which should be disabled on this Application Gateway. Possible values are TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + DisabledProtocols []*string `json:"disabledProtocols,omitempty" tf:"disabled_protocols,omitempty"` + + // The minimal TLS version. Possible values are TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + MinProtocolVersion *string `json:"minProtocolVersion,omitempty" tf:"min_protocol_version,omitempty"` + + // The Name of the Policy e.g AppGwSslPolicy20170401S. Required if policy_type is set to Predefined. Possible values can change over time and are published here https://docs.microsoft.com/azure/application-gateway/application-gateway-ssl-policy-overview. Not compatible with disabled_protocols. + PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` + + // The Type of the Policy. Possible values are Predefined, Custom and CustomV2. + PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` +} + type SSLPolicyObservation struct { // A List of accepted cipher suites. Possible values are: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_3DES_EDE_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256 and TLS_RSA_WITH_AES_256_GCM_SHA384. @@ -1454,6 +1994,21 @@ type SSLPolicyParameters struct { PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` } +type SSLProfileInitParameters struct { + + // The name of the SSL Profile that is unique within this Application Gateway. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // a ssl_policy block as defined below. + SSLPolicy []SSLProfileSSLPolicyInitParameters `json:"sslPolicy,omitempty" tf:"ssl_policy,omitempty"` + + // The name of the Trusted Client Certificate that will be used to authenticate requests from clients. + TrustedClientCertificateNames []*string `json:"trustedClientCertificateNames,omitempty" tf:"trusted_client_certificate_names,omitempty"` + + // Should client certificate issuer DN be verified? Defaults to false. + VerifyClientCertIssuerDn *bool `json:"verifyClientCertIssuerDn,omitempty" tf:"verify_client_cert_issuer_dn,omitempty"` +} + type SSLProfileObservation struct { // The ID of the URL Path Map. @@ -1475,8 +2030,8 @@ type SSLProfileObservation struct { type SSLProfileParameters struct { // The name of the SSL Profile that is unique within this Application Gateway. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // a ssl_policy block as defined below. // +kubebuilder:validation:Optional @@ -1491,6 +2046,24 @@ type SSLProfileParameters struct { VerifyClientCertIssuerDn *bool `json:"verifyClientCertIssuerDn,omitempty" tf:"verify_client_cert_issuer_dn,omitempty"` } +type SSLProfileSSLPolicyInitParameters struct { + + // A List of accepted cipher suites. Possible values are: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_3DES_EDE_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256 and TLS_RSA_WITH_AES_256_GCM_SHA384. + CipherSuites []*string `json:"cipherSuites,omitempty" tf:"cipher_suites,omitempty"` + + // A list of SSL Protocols which should be disabled on this Application Gateway. Possible values are TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + DisabledProtocols []*string `json:"disabledProtocols,omitempty" tf:"disabled_protocols,omitempty"` + + // The minimal TLS version. Possible values are TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + MinProtocolVersion *string `json:"minProtocolVersion,omitempty" tf:"min_protocol_version,omitempty"` + + // The Name of the Policy e.g AppGwSslPolicy20170401S. Required if policy_type is set to Predefined. Possible values can change over time and are published here https://docs.microsoft.com/azure/application-gateway/application-gateway-ssl-policy-overview. Not compatible with disabled_protocols. + PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` + + // The Type of the Policy. Possible values are Predefined, Custom and CustomV2. + PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` +} + type SSLProfileSSLPolicyObservation struct { // A List of accepted cipher suites. Possible values are: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_3DES_EDE_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256 and TLS_RSA_WITH_AES_256_GCM_SHA384. @@ -1532,6 +2105,18 @@ type SSLProfileSSLPolicyParameters struct { PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` } +type SkuInitParameters struct { + + // The Capacity of the SKU to use for this Application Gateway. When using a V1 SKU this value must be between 1 and 32, and 1 to 125 for a V2 SKU. This property is optional if autoscale_configuration is set. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // The Name of the SKU to use for this Application Gateway. Possible values are Standard_Small, Standard_Medium, Standard_Large, Standard_v2, WAF_Medium, WAF_Large, and WAF_v2. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Tier of the SKU to use for this Application Gateway. Possible values are Standard, Standard_v2, WAF and WAF_v2. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + type SkuObservation struct { // The Capacity of the SKU to use for this Application Gateway. When using a V1 SKU this value must be between 1 and 32, and 1 to 125 for a V2 SKU. This property is optional if autoscale_configuration is set. @@ -1551,12 +2136,18 @@ type SkuParameters struct { Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The Name of the SKU to use for this Application Gateway. Possible values are Standard_Small, Standard_Medium, Standard_Large, Standard_v2, WAF_Medium, WAF_Large, and WAF_v2. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Tier of the SKU to use for this Application Gateway. Possible values are Standard, Standard_v2, WAF and WAF_v2. - // +kubebuilder:validation:Required - Tier *string `json:"tier" tf:"tier,omitempty"` + // +kubebuilder:validation:Optional + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + +type TrustedClientCertificateInitParameters struct { + + // The name of the Trusted Client Certificate that is unique within this Application Gateway. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type TrustedClientCertificateObservation struct { @@ -1575,8 +2166,17 @@ type TrustedClientCertificateParameters struct { DataSecretRef v1.SecretKeySelector `json:"dataSecretRef" tf:"-"` // The name of the Trusted Client Certificate that is unique within this Application Gateway. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type TrustedRootCertificateInitParameters struct { + + // The Secret ID of (base-64 encoded unencrypted pfx) Secret or Certificate object stored in Azure KeyVault. You need to enable soft delete for the Key Vault to use this feature. Required if data is not set. + KeyVaultSecretID *string `json:"keyVaultSecretId,omitempty" tf:"key_vault_secret_id,omitempty"` + + // The Name of the Trusted Root Certificate to use. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type TrustedRootCertificateObservation struct { @@ -1602,8 +2202,23 @@ type TrustedRootCertificateParameters struct { KeyVaultSecretID *string `json:"keyVaultSecretId,omitempty" tf:"key_vault_secret_id,omitempty"` // The Name of the Trusted Root Certificate to use. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type URLInitParameters struct { + + // The components used to rewrite the URL. Possible values are path_only and query_string_only to limit the rewrite to the URL Path or URL Query String only. + Components *string `json:"components,omitempty" tf:"components,omitempty"` + + // The URL path to rewrite. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The query string to rewrite. + QueryString *string `json:"queryString,omitempty" tf:"query_string,omitempty"` + + // Whether the URL path map should be reevaluated after this rewrite has been applied. More info on rewrite configutation + Reroute *bool `json:"reroute,omitempty" tf:"reroute,omitempty"` } type URLObservation struct { @@ -1640,6 +2255,27 @@ type URLParameters struct { Reroute *bool `json:"reroute,omitempty" tf:"reroute,omitempty"` } +type URLPathMapInitParameters struct { + + // The Name of the Default Backend Address Pool which should be used for this URL Path Map. Cannot be set if default_redirect_configuration_name is set. + DefaultBackendAddressPoolName *string `json:"defaultBackendAddressPoolName,omitempty" tf:"default_backend_address_pool_name,omitempty"` + + // The Name of the Default Backend HTTP Settings Collection which should be used for this URL Path Map. Cannot be set if default_redirect_configuration_name is set. + DefaultBackendHTTPSettingsName *string `json:"defaultBackendHttpSettingsName,omitempty" tf:"default_backend_http_settings_name,omitempty"` + + // The Name of the Default Redirect Configuration which should be used for this URL Path Map. Cannot be set if either default_backend_address_pool_name or default_backend_http_settings_name is set. + DefaultRedirectConfigurationName *string `json:"defaultRedirectConfigurationName,omitempty" tf:"default_redirect_configuration_name,omitempty"` + + // The Name of the Default Rewrite Rule Set which should be used for this URL Path Map. Only valid for v2 SKUs. + DefaultRewriteRuleSetName *string `json:"defaultRewriteRuleSetName,omitempty" tf:"default_rewrite_rule_set_name,omitempty"` + + // The Name of the URL Path Map. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more path_rule blocks as defined above. + PathRule []PathRuleInitParameters `json:"pathRule,omitempty" tf:"path_rule,omitempty"` +} + type URLPathMapObservation struct { // The ID of the Default Backend Address Pool. @@ -1695,12 +2331,42 @@ type URLPathMapParameters struct { DefaultRewriteRuleSetName *string `json:"defaultRewriteRuleSetName,omitempty" tf:"default_rewrite_rule_set_name,omitempty"` // The Name of the URL Path Map. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more path_rule blocks as defined above. - // +kubebuilder:validation:Required - PathRule []PathRuleParameters `json:"pathRule" tf:"path_rule,omitempty"` + // +kubebuilder:validation:Optional + PathRule []PathRuleParameters `json:"pathRule,omitempty" tf:"path_rule,omitempty"` +} + +type WafConfigurationInitParameters struct { + + // one or more disabled_rule_group blocks as defined below. + DisabledRuleGroup []DisabledRuleGroupInitParameters `json:"disabledRuleGroup,omitempty" tf:"disabled_rule_group,omitempty"` + + // Is the Web Application Firewall enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // one or more exclusion blocks as defined below. + Exclusion []ExclusionInitParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` + + // The File Upload Limit in MB. Accepted values are in the range 1MB to 750MB for the WAF_v2 SKU, and 1MB to 500MB for all other SKUs. Defaults to 100MB. + FileUploadLimitMb *float64 `json:"fileUploadLimitMb,omitempty" tf:"file_upload_limit_mb,omitempty"` + + // The Web Application Firewall Mode. Possible values are Detection and Prevention. + FirewallMode *string `json:"firewallMode,omitempty" tf:"firewall_mode,omitempty"` + + // The Maximum Request Body Size in KB. Accepted values are in the range 1KB to 128KB. Defaults to 128KB. + MaxRequestBodySizeKb *float64 `json:"maxRequestBodySizeKb,omitempty" tf:"max_request_body_size_kb,omitempty"` + + // Is Request Body Inspection enabled? Defaults to true. + RequestBodyCheck *bool `json:"requestBodyCheck,omitempty" tf:"request_body_check,omitempty"` + + // The Type of the Rule Set used for this Web Application Firewall. Possible values are OWASP and Microsoft_BotManagerRuleSet. + RuleSetType *string `json:"ruleSetType,omitempty" tf:"rule_set_type,omitempty"` + + // The Version of the Rule Set used for this Web Application Firewall. Possible values are 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2. + RuleSetVersion *string `json:"ruleSetVersion,omitempty" tf:"rule_set_version,omitempty"` } type WafConfigurationObservation struct { @@ -1740,8 +2406,8 @@ type WafConfigurationParameters struct { DisabledRuleGroup []DisabledRuleGroupParameters `json:"disabledRuleGroup,omitempty" tf:"disabled_rule_group,omitempty"` // Is the Web Application Firewall enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // one or more exclusion blocks as defined below. // +kubebuilder:validation:Optional @@ -1752,8 +2418,8 @@ type WafConfigurationParameters struct { FileUploadLimitMb *float64 `json:"fileUploadLimitMb,omitempty" tf:"file_upload_limit_mb,omitempty"` // The Web Application Firewall Mode. Possible values are Detection and Prevention. - // +kubebuilder:validation:Required - FirewallMode *string `json:"firewallMode" tf:"firewall_mode,omitempty"` + // +kubebuilder:validation:Optional + FirewallMode *string `json:"firewallMode,omitempty" tf:"firewall_mode,omitempty"` // The Maximum Request Body Size in KB. Accepted values are in the range 1KB to 128KB. Defaults to 128KB. // +kubebuilder:validation:Optional @@ -1768,14 +2434,26 @@ type WafConfigurationParameters struct { RuleSetType *string `json:"ruleSetType,omitempty" tf:"rule_set_type,omitempty"` // The Version of the Rule Set used for this Web Application Firewall. Possible values are 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2. - // +kubebuilder:validation:Required - RuleSetVersion *string `json:"ruleSetVersion" tf:"rule_set_version,omitempty"` + // +kubebuilder:validation:Optional + RuleSetVersion *string `json:"ruleSetVersion,omitempty" tf:"rule_set_version,omitempty"` } // ApplicationGatewaySpec defines the desired state of ApplicationGateway type ApplicationGatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationGatewayParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationGatewayInitParameters `json:"initProvider,omitempty"` } // ApplicationGatewayStatus defines the observed state of ApplicationGateway. @@ -1796,15 +2474,15 @@ type ApplicationGatewayStatus struct { type ApplicationGateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendAddressPool)",message="backendAddressPool is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendHttpSettings)",message="backendHttpSettings is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendIpConfiguration)",message="frontendIpConfiguration is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendPort)",message="frontendPort is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gatewayIpConfiguration)",message="gatewayIpConfiguration is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.httpListener)",message="httpListener is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.requestRoutingRule)",message="requestRoutingRule is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backendAddressPool) || has(self.initProvider.backendAddressPool)",message="backendAddressPool is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backendHttpSettings) || has(self.initProvider.backendHttpSettings)",message="backendHttpSettings is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frontendIpConfiguration) || has(self.initProvider.frontendIpConfiguration)",message="frontendIpConfiguration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frontendPort) || has(self.initProvider.frontendPort)",message="frontendPort is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.gatewayIpConfiguration) || has(self.initProvider.gatewayIpConfiguration)",message="gatewayIpConfiguration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.httpListener) || has(self.initProvider.httpListener)",message="httpListener is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.requestRoutingRule) || has(self.initProvider.requestRoutingRule)",message="requestRoutingRule is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec ApplicationGatewaySpec `json:"spec"` Status ApplicationGatewayStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_applicationsecuritygroup_types.go b/apis/network/v1beta1/zz_applicationsecuritygroup_types.go index ed41c681b..4290abd73 100755 --- a/apis/network/v1beta1/zz_applicationsecuritygroup_types.go +++ b/apis/network/v1beta1/zz_applicationsecuritygroup_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationSecurityGroupInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ApplicationSecurityGroupObservation struct { // The ID of the Application Security Group. @@ -56,6 +65,18 @@ type ApplicationSecurityGroupParameters struct { type ApplicationSecurityGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ApplicationSecurityGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ApplicationSecurityGroupInitParameters `json:"initProvider,omitempty"` } // ApplicationSecurityGroupStatus defines the observed state of ApplicationSecurityGroup. @@ -76,7 +97,7 @@ type ApplicationSecurityGroupStatus struct { type ApplicationSecurityGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ApplicationSecurityGroupSpec `json:"spec"` Status ApplicationSecurityGroupStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_connectionmonitor_types.go b/apis/network/v1beta1/zz_connectionmonitor_types.go index c7d483025..694c64aea 100755 --- a/apis/network/v1beta1/zz_connectionmonitor_types.go +++ b/apis/network/v1beta1/zz_connectionmonitor_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConnectionMonitorInitParameters struct { + + // A endpoint block as defined below. + Endpoint []EndpointInitParameters `json:"endpoint,omitempty" tf:"endpoint,omitempty"` + + // The Azure Region where the Network Connection Monitor should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The description of the Network Connection Monitor. + Notes *string `json:"notes,omitempty" tf:"notes,omitempty"` + + // A list of IDs of the Log Analytics Workspace which will accept the output from the Network Connection Monitor. + OutputWorkspaceResourceIds []*string `json:"outputWorkspaceResourceIds,omitempty" tf:"output_workspace_resource_ids,omitempty"` + + // A mapping of tags which should be assigned to the Network Connection Monitor. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A test_configuration block as defined below. + TestConfiguration []TestConfigurationInitParameters `json:"testConfiguration,omitempty" tf:"test_configuration,omitempty"` + + // A test_group block as defined below. + TestGroup []TestGroupInitParameters `json:"testGroup,omitempty" tf:"test_group,omitempty"` +} + type ConnectionMonitorObservation struct { // A endpoint block as defined below. @@ -88,6 +112,33 @@ type ConnectionMonitorParameters struct { TestGroup []TestGroupParameters `json:"testGroup,omitempty" tf:"test_group,omitempty"` } +type EndpointInitParameters struct { + + // The IP address or domain name of the Network Connection Monitor endpoint. + Address *string `json:"address,omitempty" tf:"address,omitempty"` + + // The test coverage for the Network Connection Monitor endpoint. Possible values are AboveAverage, Average, BelowAverage, Default, Full and Low. + CoverageLevel *string `json:"coverageLevel,omitempty" tf:"coverage_level,omitempty"` + + // A list of IPv4/IPv6 subnet masks or IPv4/IPv6 IP addresses to be excluded to the Network Connection Monitor endpoint. + ExcludedIPAddresses []*string `json:"excludedIpAddresses,omitempty" tf:"excluded_ip_addresses,omitempty"` + + // A filter block as defined below. + Filter []FilterInitParameters `json:"filter,omitempty" tf:"filter,omitempty"` + + // A list of IPv4/IPv6 subnet masks or IPv4/IPv6 IP addresses to be included to the Network Connection Monitor endpoint. + IncludedIPAddresses []*string `json:"includedIpAddresses,omitempty" tf:"included_ip_addresses,omitempty"` + + // The name of the endpoint for the Network Connection Monitor . + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The resource ID which is used as the endpoint by the Network Connection Monitor. + TargetResourceID *string `json:"targetResourceId,omitempty" tf:"target_resource_id,omitempty"` + + // The endpoint type of the Network Connection Monitor. Possible values are AzureSubnet, AzureVM, AzureVNet, ExternalAddress, MMAWorkspaceMachine and MMAWorkspaceNetwork. + TargetResourceType *string `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` +} + type EndpointObservation struct { // The IP address or domain name of the Network Connection Monitor endpoint. @@ -138,8 +189,8 @@ type EndpointParameters struct { IncludedIPAddresses []*string `json:"includedIpAddresses,omitempty" tf:"included_ip_addresses,omitempty"` // The name of the endpoint for the Network Connection Monitor . - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The resource ID which is used as the endpoint by the Network Connection Monitor. // +kubebuilder:validation:Optional @@ -150,6 +201,15 @@ type EndpointParameters struct { TargetResourceType *string `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } +type FilterInitParameters struct { + + // A item block as defined below. + Item []ItemInitParameters `json:"item,omitempty" tf:"item,omitempty"` + + // The type of items included in the filter. Possible values are AgentAddress. Defaults to AgentAddress. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type FilterObservation struct { // A item block as defined below. @@ -170,6 +230,27 @@ type FilterParameters struct { Type *string `json:"type,omitempty" tf:"type,omitempty"` } +type HTTPConfigurationInitParameters struct { + + // The HTTP method for the HTTP request. Possible values are Get and Post. Defaults to Get. + Method *string `json:"method,omitempty" tf:"method,omitempty"` + + // The path component of the URI. It only accepts the absolute path. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The port for the TCP connection. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // Should HTTPS be preferred over HTTP in cases where the choice is not explicit? Defaults to false. + PreferHTTPS *bool `json:"preferHttps,omitempty" tf:"prefer_https,omitempty"` + + // A request_header block as defined below. + RequestHeader []HTTPConfigurationRequestHeaderInitParameters `json:"requestHeader,omitempty" tf:"request_header,omitempty"` + + // The HTTP status codes to consider successful. For instance, 2xx, 301-304 and 418. + ValidStatusCodeRanges []*string `json:"validStatusCodeRanges,omitempty" tf:"valid_status_code_ranges,omitempty"` +} + type HTTPConfigurationObservation struct { // The HTTP method for the HTTP request. Possible values are Get and Post. Defaults to Get. @@ -218,6 +299,15 @@ type HTTPConfigurationParameters struct { ValidStatusCodeRanges []*string `json:"validStatusCodeRanges,omitempty" tf:"valid_status_code_ranges,omitempty"` } +type HTTPConfigurationRequestHeaderInitParameters struct { + + // The name of the test group for the Network Connection Monitor. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of the HTTP header. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type HTTPConfigurationRequestHeaderObservation struct { // The name of the test group for the Network Connection Monitor. @@ -230,12 +320,18 @@ type HTTPConfigurationRequestHeaderObservation struct { type HTTPConfigurationRequestHeaderParameters struct { // The name of the test group for the Network Connection Monitor. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the HTTP header. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type IcmpConfigurationInitParameters struct { + + // Should path evaluation with trace route be enabled? Defaults to true. + TraceRouteEnabled *bool `json:"traceRouteEnabled,omitempty" tf:"trace_route_enabled,omitempty"` } type IcmpConfigurationObservation struct { @@ -251,6 +347,15 @@ type IcmpConfigurationParameters struct { TraceRouteEnabled *bool `json:"traceRouteEnabled,omitempty" tf:"trace_route_enabled,omitempty"` } +type ItemInitParameters struct { + + // The address of the filter item. + Address *string `json:"address,omitempty" tf:"address,omitempty"` + + // The type of items included in the filter. Possible values are AgentAddress. Defaults to AgentAddress. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ItemObservation struct { // The address of the filter item. @@ -271,6 +376,15 @@ type ItemParameters struct { Type *string `json:"type,omitempty" tf:"type,omitempty"` } +type SuccessThresholdInitParameters struct { + + // The maximum percentage of failed checks permitted for a test to be successful. + ChecksFailedPercent *float64 `json:"checksFailedPercent,omitempty" tf:"checks_failed_percent,omitempty"` + + // The maximum round-trip time in milliseconds permitted for a test to be successful. + RoundTripTimeMS *float64 `json:"roundTripTimeMs,omitempty" tf:"round_trip_time_ms,omitempty"` +} + type SuccessThresholdObservation struct { // The maximum percentage of failed checks permitted for a test to be successful. @@ -291,6 +405,18 @@ type SuccessThresholdParameters struct { RoundTripTimeMS *float64 `json:"roundTripTimeMs,omitempty" tf:"round_trip_time_ms,omitempty"` } +type TCPConfigurationInitParameters struct { + + // The destination port behavior for the TCP connection. Possible values are None and ListenIfAvailable. + DestinationPortBehavior *string `json:"destinationPortBehavior,omitempty" tf:"destination_port_behavior,omitempty"` + + // The port for the TCP connection. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // Should path evaluation with trace route be enabled? Defaults to true. + TraceRouteEnabled *bool `json:"traceRouteEnabled,omitempty" tf:"trace_route_enabled,omitempty"` +} + type TCPConfigurationObservation struct { // The destination port behavior for the TCP connection. Possible values are None and ListenIfAvailable. @@ -310,14 +436,41 @@ type TCPConfigurationParameters struct { DestinationPortBehavior *string `json:"destinationPortBehavior,omitempty" tf:"destination_port_behavior,omitempty"` // The port for the TCP connection. - // +kubebuilder:validation:Required - Port *float64 `json:"port" tf:"port,omitempty"` + // +kubebuilder:validation:Optional + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // Should path evaluation with trace route be enabled? Defaults to true. // +kubebuilder:validation:Optional TraceRouteEnabled *bool `json:"traceRouteEnabled,omitempty" tf:"trace_route_enabled,omitempty"` } +type TestConfigurationInitParameters struct { + + // A http_configuration block as defined below. + HTTPConfiguration []HTTPConfigurationInitParameters `json:"httpConfiguration,omitempty" tf:"http_configuration,omitempty"` + + // A icmp_configuration block as defined below. + IcmpConfiguration []IcmpConfigurationInitParameters `json:"icmpConfiguration,omitempty" tf:"icmp_configuration,omitempty"` + + // The name of test configuration for the Network Connection Monitor. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The preferred IP version which is used in the test evaluation. Possible values are IPv4 and IPv6. + PreferredIPVersion *string `json:"preferredIpVersion,omitempty" tf:"preferred_ip_version,omitempty"` + + // The protocol used to evaluate tests. Possible values are Tcp, Http and Icmp. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // A success_threshold block as defined below. + SuccessThreshold []SuccessThresholdInitParameters `json:"successThreshold,omitempty" tf:"success_threshold,omitempty"` + + // A tcp_configuration block as defined below. + TCPConfiguration []TCPConfigurationInitParameters `json:"tcpConfiguration,omitempty" tf:"tcp_configuration,omitempty"` + + // The time interval in seconds at which the test evaluation will happen. Defaults to 60. + TestFrequencyInSeconds *float64 `json:"testFrequencyInSeconds,omitempty" tf:"test_frequency_in_seconds,omitempty"` +} + type TestConfigurationObservation struct { // A http_configuration block as defined below. @@ -356,16 +509,16 @@ type TestConfigurationParameters struct { IcmpConfiguration []IcmpConfigurationParameters `json:"icmpConfiguration,omitempty" tf:"icmp_configuration,omitempty"` // The name of test configuration for the Network Connection Monitor. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The preferred IP version which is used in the test evaluation. Possible values are IPv4 and IPv6. // +kubebuilder:validation:Optional PreferredIPVersion *string `json:"preferredIpVersion,omitempty" tf:"preferred_ip_version,omitempty"` // The protocol used to evaluate tests. Possible values are Tcp, Http and Icmp. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // A success_threshold block as defined below. // +kubebuilder:validation:Optional @@ -380,6 +533,24 @@ type TestConfigurationParameters struct { TestFrequencyInSeconds *float64 `json:"testFrequencyInSeconds,omitempty" tf:"test_frequency_in_seconds,omitempty"` } +type TestGroupInitParameters struct { + + // A list of destination endpoint names. + DestinationEndpoints []*string `json:"destinationEndpoints,omitempty" tf:"destination_endpoints,omitempty"` + + // Should the test group be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name of the test group for the Network Connection Monitor. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A list of source endpoint names. + SourceEndpoints []*string `json:"sourceEndpoints,omitempty" tf:"source_endpoints,omitempty"` + + // A list of test configuration names. + TestConfigurationNames []*string `json:"testConfigurationNames,omitempty" tf:"test_configuration_names,omitempty"` +} + type TestGroupObservation struct { // A list of destination endpoint names. @@ -401,30 +572,42 @@ type TestGroupObservation struct { type TestGroupParameters struct { // A list of destination endpoint names. - // +kubebuilder:validation:Required - DestinationEndpoints []*string `json:"destinationEndpoints" tf:"destination_endpoints,omitempty"` + // +kubebuilder:validation:Optional + DestinationEndpoints []*string `json:"destinationEndpoints,omitempty" tf:"destination_endpoints,omitempty"` // Should the test group be enabled? Defaults to true. // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the test group for the Network Connection Monitor. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of source endpoint names. - // +kubebuilder:validation:Required - SourceEndpoints []*string `json:"sourceEndpoints" tf:"source_endpoints,omitempty"` + // +kubebuilder:validation:Optional + SourceEndpoints []*string `json:"sourceEndpoints,omitempty" tf:"source_endpoints,omitempty"` // A list of test configuration names. - // +kubebuilder:validation:Required - TestConfigurationNames []*string `json:"testConfigurationNames" tf:"test_configuration_names,omitempty"` + // +kubebuilder:validation:Optional + TestConfigurationNames []*string `json:"testConfigurationNames,omitempty" tf:"test_configuration_names,omitempty"` } // ConnectionMonitorSpec defines the desired state of ConnectionMonitor type ConnectionMonitorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ConnectionMonitorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ConnectionMonitorInitParameters `json:"initProvider,omitempty"` } // ConnectionMonitorStatus defines the observed state of ConnectionMonitor. @@ -445,10 +628,10 @@ type ConnectionMonitorStatus struct { type ConnectionMonitor struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endpoint)",message="endpoint is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.testConfiguration)",message="testConfiguration is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.testGroup)",message="testGroup is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endpoint) || has(self.initProvider.endpoint)",message="endpoint is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.testConfiguration) || has(self.initProvider.testConfiguration)",message="testConfiguration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.testGroup) || has(self.initProvider.testGroup)",message="testGroup is a required parameter" Spec ConnectionMonitorSpec `json:"spec"` Status ConnectionMonitorStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_ddosprotectionplan_types.go b/apis/network/v1beta1/zz_ddosprotectionplan_types.go index dcd567df2..06613a6cd 100755 --- a/apis/network/v1beta1/zz_ddosprotectionplan_types.go +++ b/apis/network/v1beta1/zz_ddosprotectionplan_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DDoSProtectionPlanInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DDoSProtectionPlanObservation struct { // The ID of the DDoS Protection Plan @@ -59,6 +68,18 @@ type DDoSProtectionPlanParameters struct { type DDoSProtectionPlanSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DDoSProtectionPlanParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DDoSProtectionPlanInitParameters `json:"initProvider,omitempty"` } // DDoSProtectionPlanStatus defines the observed state of DDoSProtectionPlan. @@ -79,7 +100,7 @@ type DDoSProtectionPlanStatus struct { type DDoSProtectionPlan struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec DDoSProtectionPlanSpec `json:"spec"` Status DDoSProtectionPlanStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnsaaaarecord_types.go b/apis/network/v1beta1/zz_dnsaaaarecord_types.go index 284ef9fbb..98df7a602 100755 --- a/apis/network/v1beta1/zz_dnsaaaarecord_types.go +++ b/apis/network/v1beta1/zz_dnsaaaarecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSAAAARecordInitParameters struct { + + // List of IPv6 Addresses. Conflicts with target_resource_id. + Records []*string `json:"records,omitempty" tf:"records,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DNSAAAARecordObservation struct { // The FQDN of the DNS AAAA Record. @@ -99,6 +111,18 @@ type DNSAAAARecordParameters struct { type DNSAAAARecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DNSAAAARecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DNSAAAARecordInitParameters `json:"initProvider,omitempty"` } // DNSAAAARecordStatus defines the observed state of DNSAAAARecord. @@ -119,7 +143,7 @@ type DNSAAAARecordStatus struct { type DNSAAAARecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec DNSAAAARecordSpec `json:"spec"` Status DNSAAAARecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnsarecord_types.go b/apis/network/v1beta1/zz_dnsarecord_types.go index ec1757647..28d40d8e2 100755 --- a/apis/network/v1beta1/zz_dnsarecord_types.go +++ b/apis/network/v1beta1/zz_dnsarecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSARecordInitParameters struct { + + // List of IPv4 Addresses. Conflicts with target_resource_id. + Records []*string `json:"records,omitempty" tf:"records,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DNSARecordObservation struct { // The FQDN of the DNS A Record. @@ -99,6 +111,18 @@ type DNSARecordParameters struct { type DNSARecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DNSARecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DNSARecordInitParameters `json:"initProvider,omitempty"` } // DNSARecordStatus defines the observed state of DNSARecord. @@ -119,7 +143,7 @@ type DNSARecordStatus struct { type DNSARecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec DNSARecordSpec `json:"spec"` Status DNSARecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnscaarecord_types.go b/apis/network/v1beta1/zz_dnscaarecord_types.go index 387833ba0..86875b723 100755 --- a/apis/network/v1beta1/zz_dnscaarecord_types.go +++ b/apis/network/v1beta1/zz_dnscaarecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSCAARecordInitParameters struct { + + // A list of values that make up the CAA record. Each record block supports fields documented below. + Record []RecordInitParameters `json:"record,omitempty" tf:"record,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DNSCAARecordObservation struct { // The FQDN of the DNS CAA Record. @@ -78,6 +90,18 @@ type DNSCAARecordParameters struct { ZoneNameSelector *v1.Selector `json:"zoneNameSelector,omitempty" tf:"-"` } +type RecordInitParameters struct { + + // Extensible CAA flags, currently only 1 is implemented to set the issuer critical flag. + Flags *float64 `json:"flags,omitempty" tf:"flags,omitempty"` + + // A property tag, options are issue, issuewild and iodef. + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` + + // A property value such as a registrar domain. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type RecordObservation struct { // Extensible CAA flags, currently only 1 is implemented to set the issuer critical flag. @@ -93,22 +117,34 @@ type RecordObservation struct { type RecordParameters struct { // Extensible CAA flags, currently only 1 is implemented to set the issuer critical flag. - // +kubebuilder:validation:Required - Flags *float64 `json:"flags" tf:"flags,omitempty"` + // +kubebuilder:validation:Optional + Flags *float64 `json:"flags,omitempty" tf:"flags,omitempty"` // A property tag, options are issue, issuewild and iodef. - // +kubebuilder:validation:Required - Tag *string `json:"tag" tf:"tag,omitempty"` + // +kubebuilder:validation:Optional + Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // A property value such as a registrar domain. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` } // DNSCAARecordSpec defines the desired state of DNSCAARecord type DNSCAARecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DNSCAARecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DNSCAARecordInitParameters `json:"initProvider,omitempty"` } // DNSCAARecordStatus defines the observed state of DNSCAARecord. @@ -129,8 +165,8 @@ type DNSCAARecordStatus struct { type DNSCAARecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record)",message="record is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.record) || has(self.initProvider.record)",message="record is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec DNSCAARecordSpec `json:"spec"` Status DNSCAARecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnscnamerecord_types.go b/apis/network/v1beta1/zz_dnscnamerecord_types.go index 4d1b7a627..376d7a6af 100755 --- a/apis/network/v1beta1/zz_dnscnamerecord_types.go +++ b/apis/network/v1beta1/zz_dnscnamerecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSCNAMERecordInitParameters struct { + + // The target of the CNAME. + Record *string `json:"record,omitempty" tf:"record,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DNSCNAMERecordObservation struct { // The FQDN of the DNS CName Record. @@ -99,6 +111,18 @@ type DNSCNAMERecordParameters struct { type DNSCNAMERecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DNSCNAMERecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DNSCNAMERecordInitParameters `json:"initProvider,omitempty"` } // DNSCNAMERecordStatus defines the observed state of DNSCNAMERecord. @@ -119,7 +143,7 @@ type DNSCNAMERecordStatus struct { type DNSCNAMERecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec DNSCNAMERecordSpec `json:"spec"` Status DNSCNAMERecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnsmxrecord_types.go b/apis/network/v1beta1/zz_dnsmxrecord_types.go index 000318559..25afabb1b 100755 --- a/apis/network/v1beta1/zz_dnsmxrecord_types.go +++ b/apis/network/v1beta1/zz_dnsmxrecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSMXRecordInitParameters struct { + + // A list of values that make up the MX record. Each record block supports fields documented below. + Record []DNSMXRecordRecordInitParameters `json:"record,omitempty" tf:"record,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DNSMXRecordObservation struct { // The FQDN of the DNS MX Record. @@ -78,6 +90,15 @@ type DNSMXRecordParameters struct { ZoneNameSelector *v1.Selector `json:"zoneNameSelector,omitempty" tf:"-"` } +type DNSMXRecordRecordInitParameters struct { + + // The mail server responsible for the domain covered by the MX record. + Exchange *string `json:"exchange,omitempty" tf:"exchange,omitempty"` + + // String representing the "preference” value of the MX records. Records with lower preference value take priority. + Preference *string `json:"preference,omitempty" tf:"preference,omitempty"` +} + type DNSMXRecordRecordObservation struct { // The mail server responsible for the domain covered by the MX record. @@ -90,18 +111,30 @@ type DNSMXRecordRecordObservation struct { type DNSMXRecordRecordParameters struct { // The mail server responsible for the domain covered by the MX record. - // +kubebuilder:validation:Required - Exchange *string `json:"exchange" tf:"exchange,omitempty"` + // +kubebuilder:validation:Optional + Exchange *string `json:"exchange,omitempty" tf:"exchange,omitempty"` // String representing the "preference” value of the MX records. Records with lower preference value take priority. - // +kubebuilder:validation:Required - Preference *string `json:"preference" tf:"preference,omitempty"` + // +kubebuilder:validation:Optional + Preference *string `json:"preference,omitempty" tf:"preference,omitempty"` } // DNSMXRecordSpec defines the desired state of DNSMXRecord type DNSMXRecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DNSMXRecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DNSMXRecordInitParameters `json:"initProvider,omitempty"` } // DNSMXRecordStatus defines the observed state of DNSMXRecord. @@ -122,8 +155,8 @@ type DNSMXRecordStatus struct { type DNSMXRecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record)",message="record is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.record) || has(self.initProvider.record)",message="record is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec DNSMXRecordSpec `json:"spec"` Status DNSMXRecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnsnsrecord_types.go b/apis/network/v1beta1/zz_dnsnsrecord_types.go index 3a1a5529d..b3ff43ac2 100755 --- a/apis/network/v1beta1/zz_dnsnsrecord_types.go +++ b/apis/network/v1beta1/zz_dnsnsrecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSNSRecordInitParameters struct { + + // A list of values that make up the NS record. + Records []*string `json:"records,omitempty" tf:"records,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DNSNSRecordObservation struct { // The FQDN of the DNS NS Record. @@ -82,6 +94,18 @@ type DNSNSRecordParameters struct { type DNSNSRecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DNSNSRecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DNSNSRecordInitParameters `json:"initProvider,omitempty"` } // DNSNSRecordStatus defines the observed state of DNSNSRecord. @@ -102,8 +126,8 @@ type DNSNSRecordStatus struct { type DNSNSRecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.records)",message="records is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.records) || has(self.initProvider.records)",message="records is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec DNSNSRecordSpec `json:"spec"` Status DNSNSRecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnsptrrecord_types.go b/apis/network/v1beta1/zz_dnsptrrecord_types.go index ea52e5eb3..809c5e61b 100755 --- a/apis/network/v1beta1/zz_dnsptrrecord_types.go +++ b/apis/network/v1beta1/zz_dnsptrrecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSPTRRecordInitParameters struct { + + // List of Fully Qualified Domain Names. + Records []*string `json:"records,omitempty" tf:"records,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DNSPTRRecordObservation struct { // The FQDN of the DNS PTR Record. @@ -82,6 +94,18 @@ type DNSPTRRecordParameters struct { type DNSPTRRecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DNSPTRRecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DNSPTRRecordInitParameters `json:"initProvider,omitempty"` } // DNSPTRRecordStatus defines the observed state of DNSPTRRecord. @@ -102,8 +126,8 @@ type DNSPTRRecordStatus struct { type DNSPTRRecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.records)",message="records is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.records) || has(self.initProvider.records)",message="records is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec DNSPTRRecordSpec `json:"spec"` Status DNSPTRRecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnssrvrecord_types.go b/apis/network/v1beta1/zz_dnssrvrecord_types.go index 24b6c58e1..066254711 100755 --- a/apis/network/v1beta1/zz_dnssrvrecord_types.go +++ b/apis/network/v1beta1/zz_dnssrvrecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSSRVRecordInitParameters struct { + + // A list of values that make up the SRV record. Each record block supports fields documented below. + Record []DNSSRVRecordRecordInitParameters `json:"record,omitempty" tf:"record,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DNSSRVRecordObservation struct { // The FQDN of the DNS SRV Record. @@ -78,6 +90,21 @@ type DNSSRVRecordParameters struct { ZoneNameSelector *v1.Selector `json:"zoneNameSelector,omitempty" tf:"-"` } +type DNSSRVRecordRecordInitParameters struct { + + // Port the service is listening on. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // Priority of the SRV record. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // FQDN of the service. + Target *string `json:"target,omitempty" tf:"target,omitempty"` + + // Weight of the SRV record. + Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` +} + type DNSSRVRecordRecordObservation struct { // Port the service is listening on. @@ -96,26 +123,38 @@ type DNSSRVRecordRecordObservation struct { type DNSSRVRecordRecordParameters struct { // Port the service is listening on. - // +kubebuilder:validation:Required - Port *float64 `json:"port" tf:"port,omitempty"` + // +kubebuilder:validation:Optional + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // Priority of the SRV record. - // +kubebuilder:validation:Required - Priority *float64 `json:"priority" tf:"priority,omitempty"` + // +kubebuilder:validation:Optional + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // FQDN of the service. - // +kubebuilder:validation:Required - Target *string `json:"target" tf:"target,omitempty"` + // +kubebuilder:validation:Optional + Target *string `json:"target,omitempty" tf:"target,omitempty"` // Weight of the SRV record. - // +kubebuilder:validation:Required - Weight *float64 `json:"weight" tf:"weight,omitempty"` + // +kubebuilder:validation:Optional + Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } // DNSSRVRecordSpec defines the desired state of DNSSRVRecord type DNSSRVRecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DNSSRVRecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DNSSRVRecordInitParameters `json:"initProvider,omitempty"` } // DNSSRVRecordStatus defines the observed state of DNSSRVRecord. @@ -136,8 +175,8 @@ type DNSSRVRecordStatus struct { type DNSSRVRecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record)",message="record is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.record) || has(self.initProvider.record)",message="record is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec DNSSRVRecordSpec `json:"spec"` Status DNSSRVRecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnstxtrecord_types.go b/apis/network/v1beta1/zz_dnstxtrecord_types.go index 19abb4b04..e08ad0106 100755 --- a/apis/network/v1beta1/zz_dnstxtrecord_types.go +++ b/apis/network/v1beta1/zz_dnstxtrecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSTXTRecordInitParameters struct { + + // A list of values that make up the txt record. Each record block supports fields documented below. + Record []DNSTXTRecordRecordInitParameters `json:"record,omitempty" tf:"record,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DNSTXTRecordObservation struct { // The FQDN of the DNS TXT Record. @@ -78,6 +90,12 @@ type DNSTXTRecordParameters struct { ZoneNameSelector *v1.Selector `json:"zoneNameSelector,omitempty" tf:"-"` } +type DNSTXTRecordRecordInitParameters struct { + + // The value of the record. Max length: 1024 characters + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type DNSTXTRecordRecordObservation struct { // The value of the record. Max length: 1024 characters @@ -87,14 +105,26 @@ type DNSTXTRecordRecordObservation struct { type DNSTXTRecordRecordParameters struct { // The value of the record. Max length: 1024 characters - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` } // DNSTXTRecordSpec defines the desired state of DNSTXTRecord type DNSTXTRecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DNSTXTRecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DNSTXTRecordInitParameters `json:"initProvider,omitempty"` } // DNSTXTRecordStatus defines the observed state of DNSTXTRecord. @@ -115,8 +145,8 @@ type DNSTXTRecordStatus struct { type DNSTXTRecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record)",message="record is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.record) || has(self.initProvider.record)",message="record is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec DNSTXTRecordSpec `json:"spec"` Status DNSTXTRecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnszone_types.go b/apis/network/v1beta1/zz_dnszone_types.go index cb44e7395..4ff65b662 100755 --- a/apis/network/v1beta1/zz_dnszone_types.go +++ b/apis/network/v1beta1/zz_dnszone_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSZoneInitParameters struct { + + // An soa_record block as defined below. Changing this forces a new resource to be created. + SoaRecord []SoaRecordInitParameters `json:"soaRecord,omitempty" tf:"soa_record,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DNSZoneObservation struct { // The DNS Zone ID. @@ -61,6 +70,36 @@ type DNSZoneParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type SoaRecordInitParameters struct { + + // The email contact for the SOA record. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // The expire time for the SOA record. Defaults to 2419200. + ExpireTime *float64 `json:"expireTime,omitempty" tf:"expire_time,omitempty"` + + // The domain name of the authoritative name server for the SOA record. + HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` + + // The minimum Time To Live for the SOA record. By convention, it is used to determine the negative caching duration. Defaults to 300. + MinimumTTL *float64 `json:"minimumTtl,omitempty" tf:"minimum_ttl,omitempty"` + + // The refresh time for the SOA record. Defaults to 3600. + RefreshTime *float64 `json:"refreshTime,omitempty" tf:"refresh_time,omitempty"` + + // The retry time for the SOA record. Defaults to 300. + RetryTime *float64 `json:"retryTime,omitempty" tf:"retry_time,omitempty"` + + // The serial number for the SOA record. Defaults to 1. + SerialNumber *float64 `json:"serialNumber,omitempty" tf:"serial_number,omitempty"` + + // The Time To Live of the SOA Record in seconds. Defaults to 3600. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the Record Set. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type SoaRecordObservation struct { // The email contact for the SOA record. @@ -96,16 +135,16 @@ type SoaRecordObservation struct { type SoaRecordParameters struct { // The email contact for the SOA record. - // +kubebuilder:validation:Required - Email *string `json:"email" tf:"email,omitempty"` + // +kubebuilder:validation:Optional + Email *string `json:"email,omitempty" tf:"email,omitempty"` // The expire time for the SOA record. Defaults to 2419200. // +kubebuilder:validation:Optional ExpireTime *float64 `json:"expireTime,omitempty" tf:"expire_time,omitempty"` // The domain name of the authoritative name server for the SOA record. - // +kubebuilder:validation:Required - HostName *string `json:"hostName" tf:"host_name,omitempty"` + // +kubebuilder:validation:Optional + HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` // The minimum Time To Live for the SOA record. By convention, it is used to determine the negative caching duration. Defaults to 300. // +kubebuilder:validation:Optional @@ -136,6 +175,18 @@ type SoaRecordParameters struct { type DNSZoneSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DNSZoneParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DNSZoneInitParameters `json:"initProvider,omitempty"` } // DNSZoneStatus defines the observed state of DNSZone. diff --git a/apis/network/v1beta1/zz_expressroutecircuit_types.go b/apis/network/v1beta1/zz_expressroutecircuit_types.go index 778594884..70c7b38ac 100755 --- a/apis/network/v1beta1/zz_expressroutecircuit_types.go +++ b/apis/network/v1beta1/zz_expressroutecircuit_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ExpressRouteCircuitInitParameters struct { + + // Allow the circuit to interact with classic (RDFE) resources. Defaults to false. + AllowClassicOperations *bool `json:"allowClassicOperations,omitempty" tf:"allow_classic_operations,omitempty"` + + // The bandwidth in Gbps of the circuit being created on the Express Route Port. + BandwidthInGbps *float64 `json:"bandwidthInGbps,omitempty" tf:"bandwidth_in_gbps,omitempty"` + + // The bandwidth in Mbps of the circuit being created on the Service Provider. + BandwidthInMbps *float64 `json:"bandwidthInMbps,omitempty" tf:"bandwidth_in_mbps,omitempty"` + + // The ID of the Express Route Port this Express Route Circuit is based on. Changing this forces a new resource to be created. + ExpressRoutePortID *string `json:"expressRoutePortId,omitempty" tf:"express_route_port_id,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the peering location and not the Azure resource location. Changing this forces a new resource to be created. + PeeringLocation *string `json:"peeringLocation,omitempty" tf:"peering_location,omitempty"` + + // The name of the ExpressRoute Service Provider. Changing this forces a new resource to be created. + ServiceProviderName *string `json:"serviceProviderName,omitempty" tf:"service_provider_name,omitempty"` + + // A sku block for the ExpressRoute circuit as documented below. + Sku []ExpressRouteCircuitSkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ExpressRouteCircuitObservation struct { // Allow the circuit to interact with classic (RDFE) resources. Defaults to false. @@ -108,6 +138,15 @@ type ExpressRouteCircuitParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type ExpressRouteCircuitSkuInitParameters struct { + + // The billing mode for bandwidth. Possible values are MeteredData or UnlimitedData. + Family *string `json:"family,omitempty" tf:"family,omitempty"` + + // The service tier. Possible values are Basic, Local, Standard or Premium. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + type ExpressRouteCircuitSkuObservation struct { // The billing mode for bandwidth. Possible values are MeteredData or UnlimitedData. @@ -120,18 +159,30 @@ type ExpressRouteCircuitSkuObservation struct { type ExpressRouteCircuitSkuParameters struct { // The billing mode for bandwidth. Possible values are MeteredData or UnlimitedData. - // +kubebuilder:validation:Required - Family *string `json:"family" tf:"family,omitempty"` + // +kubebuilder:validation:Optional + Family *string `json:"family,omitempty" tf:"family,omitempty"` // The service tier. Possible values are Basic, Local, Standard or Premium. - // +kubebuilder:validation:Required - Tier *string `json:"tier" tf:"tier,omitempty"` + // +kubebuilder:validation:Optional + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } // ExpressRouteCircuitSpec defines the desired state of ExpressRouteCircuit type ExpressRouteCircuitSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ExpressRouteCircuitParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ExpressRouteCircuitInitParameters `json:"initProvider,omitempty"` } // ExpressRouteCircuitStatus defines the observed state of ExpressRouteCircuit. @@ -152,8 +203,8 @@ type ExpressRouteCircuitStatus struct { type ExpressRouteCircuit struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec ExpressRouteCircuitSpec `json:"spec"` Status ExpressRouteCircuitStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_expressroutecircuitauthorization_types.go b/apis/network/v1beta1/zz_expressroutecircuitauthorization_types.go index 956903331..c35fadbb3 100755 --- a/apis/network/v1beta1/zz_expressroutecircuitauthorization_types.go +++ b/apis/network/v1beta1/zz_expressroutecircuitauthorization_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ExpressRouteCircuitAuthorizationInitParameters struct { +} + type ExpressRouteCircuitAuthorizationObservation struct { // The authorization use status. @@ -61,6 +64,18 @@ type ExpressRouteCircuitAuthorizationParameters struct { type ExpressRouteCircuitAuthorizationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ExpressRouteCircuitAuthorizationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ExpressRouteCircuitAuthorizationInitParameters `json:"initProvider,omitempty"` } // ExpressRouteCircuitAuthorizationStatus defines the observed state of ExpressRouteCircuitAuthorization. diff --git a/apis/network/v1beta1/zz_expressroutecircuitconnection_types.go b/apis/network/v1beta1/zz_expressroutecircuitconnection_types.go index d1b43ebbc..3280c2bf0 100755 --- a/apis/network/v1beta1/zz_expressroutecircuitconnection_types.go +++ b/apis/network/v1beta1/zz_expressroutecircuitconnection_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ExpressRouteCircuitConnectionInitParameters struct { + + // The IPv4 address space from which to allocate customer address for global reach. Changing this forces a new Express Route Circuit Connection to be created. + AddressPrefixIPv4 *string `json:"addressPrefixIpv4,omitempty" tf:"address_prefix_ipv4,omitempty"` + + // The IPv6 address space from which to allocate customer addresses for global reach. + AddressPrefixIPv6 *string `json:"addressPrefixIpv6,omitempty" tf:"address_prefix_ipv6,omitempty"` +} + type ExpressRouteCircuitConnectionObservation struct { // The IPv4 address space from which to allocate customer address for global reach. Changing this forces a new Express Route Circuit Connection to be created. @@ -78,6 +87,18 @@ type ExpressRouteCircuitConnectionParameters struct { type ExpressRouteCircuitConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ExpressRouteCircuitConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ExpressRouteCircuitConnectionInitParameters `json:"initProvider,omitempty"` } // ExpressRouteCircuitConnectionStatus defines the observed state of ExpressRouteCircuitConnection. @@ -98,7 +119,7 @@ type ExpressRouteCircuitConnectionStatus struct { type ExpressRouteCircuitConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.addressPrefixIpv4)",message="addressPrefixIpv4 is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.addressPrefixIpv4) || has(self.initProvider.addressPrefixIpv4)",message="addressPrefixIpv4 is a required parameter" Spec ExpressRouteCircuitConnectionSpec `json:"spec"` Status ExpressRouteCircuitConnectionStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_expressroutecircuitpeering_types.go b/apis/network/v1beta1/zz_expressroutecircuitpeering_types.go index 2338ff8cd..762ec6042 100755 --- a/apis/network/v1beta1/zz_expressroutecircuitpeering_types.go +++ b/apis/network/v1beta1/zz_expressroutecircuitpeering_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ExpressRouteCircuitPeeringInitParameters struct { + + // A boolean value indicating whether the IPv4 peering is enabled. Defaults to true. + IPv4Enabled *bool `json:"ipv4Enabled,omitempty" tf:"ipv4_enabled,omitempty"` + + // A ipv6 block as defined below. + IPv6 []IPv6InitParameters `json:"ipv6,omitempty" tf:"ipv6,omitempty"` + + // A microsoft_peering_config block as defined below. Required when peering_type is set to MicrosoftPeering and config for IPv4. + MicrosoftPeeringConfig []MicrosoftPeeringConfigInitParameters `json:"microsoftPeeringConfig,omitempty" tf:"microsoft_peering_config,omitempty"` + + // The Either a 16-bit or a 32-bit ASN. Can either be public or private. + PeerAsn *float64 `json:"peerAsn,omitempty" tf:"peer_asn,omitempty"` + + // A /30 subnet for the primary link. Required when config for IPv4. + PrimaryPeerAddressPrefix *string `json:"primaryPeerAddressPrefix,omitempty" tf:"primary_peer_address_prefix,omitempty"` + + // The ID of the Route Filter. Only available when peering_type is set to MicrosoftPeering. + RouteFilterID *string `json:"routeFilterId,omitempty" tf:"route_filter_id,omitempty"` + + // A /30 subnet for the secondary link. Required when config for IPv4. + SecondaryPeerAddressPrefix *string `json:"secondaryPeerAddressPrefix,omitempty" tf:"secondary_peer_address_prefix,omitempty"` + + // A valid VLAN ID to establish this peering on. + VlanID *float64 `json:"vlanId,omitempty" tf:"vlan_id,omitempty"` +} + type ExpressRouteCircuitPeeringObservation struct { // The ASN used by Azure. @@ -125,6 +152,24 @@ type ExpressRouteCircuitPeeringParameters struct { VlanID *float64 `json:"vlanId,omitempty" tf:"vlan_id,omitempty"` } +type IPv6InitParameters struct { + + // A boolean value indicating whether the IPv6 peering is enabled. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A microsoft_peering block as defined below. + MicrosoftPeering []MicrosoftPeeringInitParameters `json:"microsoftPeering,omitempty" tf:"microsoft_peering,omitempty"` + + // A subnet for the primary link. + PrimaryPeerAddressPrefix *string `json:"primaryPeerAddressPrefix,omitempty" tf:"primary_peer_address_prefix,omitempty"` + + // The ID of the Route Filter. Only available when peering_type is set to MicrosoftPeering. + RouteFilterID *string `json:"routeFilterId,omitempty" tf:"route_filter_id,omitempty"` + + // A subnet for the secondary link. + SecondaryPeerAddressPrefix *string `json:"secondaryPeerAddressPrefix,omitempty" tf:"secondary_peer_address_prefix,omitempty"` +} + type IPv6Observation struct { // A boolean value indicating whether the IPv6 peering is enabled. Defaults to true. @@ -154,16 +199,31 @@ type IPv6Parameters struct { MicrosoftPeering []MicrosoftPeeringParameters `json:"microsoftPeering,omitempty" tf:"microsoft_peering,omitempty"` // A subnet for the primary link. - // +kubebuilder:validation:Required - PrimaryPeerAddressPrefix *string `json:"primaryPeerAddressPrefix" tf:"primary_peer_address_prefix,omitempty"` + // +kubebuilder:validation:Optional + PrimaryPeerAddressPrefix *string `json:"primaryPeerAddressPrefix,omitempty" tf:"primary_peer_address_prefix,omitempty"` // The ID of the Route Filter. Only available when peering_type is set to MicrosoftPeering. // +kubebuilder:validation:Optional RouteFilterID *string `json:"routeFilterId,omitempty" tf:"route_filter_id,omitempty"` // A subnet for the secondary link. - // +kubebuilder:validation:Required - SecondaryPeerAddressPrefix *string `json:"secondaryPeerAddressPrefix" tf:"secondary_peer_address_prefix,omitempty"` + // +kubebuilder:validation:Optional + SecondaryPeerAddressPrefix *string `json:"secondaryPeerAddressPrefix,omitempty" tf:"secondary_peer_address_prefix,omitempty"` +} + +type MicrosoftPeeringConfigInitParameters struct { + + // The communities of Bgp Peering specified for microsoft peering. + AdvertisedCommunities []*string `json:"advertisedCommunities,omitempty" tf:"advertised_communities,omitempty"` + + // A list of Advertised Public Prefixes. + AdvertisedPublicPrefixes []*string `json:"advertisedPublicPrefixes,omitempty" tf:"advertised_public_prefixes,omitempty"` + + // The CustomerASN of the peering. Defaults to 0. + CustomerAsn *float64 `json:"customerAsn,omitempty" tf:"customer_asn,omitempty"` + + // The Routing Registry against which the AS number and prefixes are registered. For example: ARIN, RIPE, AFRINIC etc. Defaults to NONE. + RoutingRegistryName *string `json:"routingRegistryName,omitempty" tf:"routing_registry_name,omitempty"` } type MicrosoftPeeringConfigObservation struct { @@ -188,8 +248,8 @@ type MicrosoftPeeringConfigParameters struct { AdvertisedCommunities []*string `json:"advertisedCommunities,omitempty" tf:"advertised_communities,omitempty"` // A list of Advertised Public Prefixes. - // +kubebuilder:validation:Required - AdvertisedPublicPrefixes []*string `json:"advertisedPublicPrefixes" tf:"advertised_public_prefixes,omitempty"` + // +kubebuilder:validation:Optional + AdvertisedPublicPrefixes []*string `json:"advertisedPublicPrefixes,omitempty" tf:"advertised_public_prefixes,omitempty"` // The CustomerASN of the peering. Defaults to 0. // +kubebuilder:validation:Optional @@ -200,6 +260,21 @@ type MicrosoftPeeringConfigParameters struct { RoutingRegistryName *string `json:"routingRegistryName,omitempty" tf:"routing_registry_name,omitempty"` } +type MicrosoftPeeringInitParameters struct { + + // The communities of Bgp Peering specified for microsoft peering. + AdvertisedCommunities []*string `json:"advertisedCommunities,omitempty" tf:"advertised_communities,omitempty"` + + // A list of Advertised Public Prefixes. + AdvertisedPublicPrefixes []*string `json:"advertisedPublicPrefixes,omitempty" tf:"advertised_public_prefixes,omitempty"` + + // The CustomerASN of the peering. Defaults to 0. + CustomerAsn *float64 `json:"customerAsn,omitempty" tf:"customer_asn,omitempty"` + + // The Routing Registry against which the AS number and prefixes are registered. For example: ARIN, RIPE, AFRINIC etc. Defaults to NONE. + RoutingRegistryName *string `json:"routingRegistryName,omitempty" tf:"routing_registry_name,omitempty"` +} + type MicrosoftPeeringObservation struct { // The communities of Bgp Peering specified for microsoft peering. @@ -238,6 +313,18 @@ type MicrosoftPeeringParameters struct { type ExpressRouteCircuitPeeringSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ExpressRouteCircuitPeeringParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ExpressRouteCircuitPeeringInitParameters `json:"initProvider,omitempty"` } // ExpressRouteCircuitPeeringStatus defines the observed state of ExpressRouteCircuitPeering. @@ -258,7 +345,7 @@ type ExpressRouteCircuitPeeringStatus struct { type ExpressRouteCircuitPeering struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vlanId)",message="vlanId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.vlanId) || has(self.initProvider.vlanId)",message="vlanId is a required parameter" Spec ExpressRouteCircuitPeeringSpec `json:"spec"` Status ExpressRouteCircuitPeeringStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_expressrouteconnection_types.go b/apis/network/v1beta1/zz_expressrouteconnection_types.go index 92949d84e..ca349e16f 100755 --- a/apis/network/v1beta1/zz_expressrouteconnection_types.go +++ b/apis/network/v1beta1/zz_expressrouteconnection_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ExpressRouteConnectionInitParameters struct { + + // The authorization key to establish the Express Route Connection. + AuthorizationKey *string `json:"authorizationKey,omitempty" tf:"authorization_key,omitempty"` + + // Is Internet security enabled for this Express Route Connection? + EnableInternetSecurity *bool `json:"enableInternetSecurity,omitempty" tf:"enable_internet_security,omitempty"` + + // Specified whether Fast Path is enabled for Virtual Wan Firewall Hub. Defaults to false. + ExpressRouteGatewayBypassEnabled *bool `json:"expressRouteGatewayBypassEnabled,omitempty" tf:"express_route_gateway_bypass_enabled,omitempty"` + + // A routing block as defined below. + Routing []RoutingInitParameters `json:"routing,omitempty" tf:"routing,omitempty"` + + // The routing weight associated to the Express Route Connection. Possible value is between 0 and 32000. Defaults to 0. + RoutingWeight *float64 `json:"routingWeight,omitempty" tf:"routing_weight,omitempty"` +} + type ExpressRouteConnectionObservation struct { // The authorization key to establish the Express Route Connection. @@ -91,6 +109,15 @@ type ExpressRouteConnectionParameters struct { RoutingWeight *float64 `json:"routingWeight,omitempty" tf:"routing_weight,omitempty"` } +type PropagatedRouteTableInitParameters struct { + + // The list of labels to logically group route tables. + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` + + // A list of IDs of the Virtual Hub Route Table to propagate routes from Express Route Connection to the route table. + RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"` +} + type PropagatedRouteTableObservation struct { // The list of labels to logically group route tables. @@ -111,6 +138,21 @@ type PropagatedRouteTableParameters struct { RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"` } +type RoutingInitParameters struct { + + // The ID of the Virtual Hub Route Table associated with this Express Route Connection. + AssociatedRouteTableID *string `json:"associatedRouteTableId,omitempty" tf:"associated_route_table_id,omitempty"` + + // The ID of the Route Map associated with this Express Route Connection for inbound routes. + InboundRouteMapID *string `json:"inboundRouteMapId,omitempty" tf:"inbound_route_map_id,omitempty"` + + // The ID of the Route Map associated with this Express Route Connection for outbound routes. + OutboundRouteMapID *string `json:"outboundRouteMapId,omitempty" tf:"outbound_route_map_id,omitempty"` + + // A propagated_route_table block as defined below. + PropagatedRouteTable []PropagatedRouteTableInitParameters `json:"propagatedRouteTable,omitempty" tf:"propagated_route_table,omitempty"` +} + type RoutingObservation struct { // The ID of the Virtual Hub Route Table associated with this Express Route Connection. @@ -149,6 +191,18 @@ type RoutingParameters struct { type ExpressRouteConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ExpressRouteConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ExpressRouteConnectionInitParameters `json:"initProvider,omitempty"` } // ExpressRouteConnectionStatus defines the observed state of ExpressRouteConnection. diff --git a/apis/network/v1beta1/zz_expressroutegateway_types.go b/apis/network/v1beta1/zz_expressroutegateway_types.go index 1047b976c..0b1abd504 100755 --- a/apis/network/v1beta1/zz_expressroutegateway_types.go +++ b/apis/network/v1beta1/zz_expressroutegateway_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ExpressRouteGatewayInitParameters struct { + + // Specified whether this gateway accept traffic from non-Virtual WAN networks. Defaults to false. + AllowNonVirtualWanTraffic *bool `json:"allowNonVirtualWanTraffic,omitempty" tf:"allow_non_virtual_wan_traffic,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The number of scale units with which to provision the ExpressRoute gateway. Each scale unit is equal to 2Gbps, with support for up to 10 scale units (20Gbps). + ScaleUnits *float64 `json:"scaleUnits,omitempty" tf:"scale_units,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ExpressRouteGatewayObservation struct { // Specified whether this gateway accept traffic from non-Virtual WAN networks. Defaults to false. @@ -87,6 +102,18 @@ type ExpressRouteGatewayParameters struct { type ExpressRouteGatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider ExpressRouteGatewayParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ExpressRouteGatewayInitParameters `json:"initProvider,omitempty"` } // ExpressRouteGatewayStatus defines the observed state of ExpressRouteGateway. @@ -107,8 +134,8 @@ type ExpressRouteGatewayStatus struct { type ExpressRouteGateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scaleUnits)",message="scaleUnits is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scaleUnits) || has(self.initProvider.scaleUnits)",message="scaleUnits is a required parameter" Spec ExpressRouteGatewaySpec `json:"spec"` Status ExpressRouteGatewayStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_expressrouteport_types.go b/apis/network/v1beta1/zz_expressrouteport_types.go index 8c675e819..0254b6669 100755 --- a/apis/network/v1beta1/zz_expressrouteport_types.go +++ b/apis/network/v1beta1/zz_expressrouteport_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ExpressRoutePortIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Express Route Port. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Express Route Port. Only possible value is UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ExpressRoutePortIdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Express Route Port. @@ -25,12 +34,42 @@ type ExpressRoutePortIdentityObservation struct { type ExpressRoutePortIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Express Route Port. - // +kubebuilder:validation:Required - IdentityIds []*string `json:"identityIds" tf:"identity_ids,omitempty"` + // +kubebuilder:validation:Optional + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Express Route Port. Only possible value is UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ExpressRoutePortInitParameters struct { + + // Bandwidth of the Express Route Port in Gbps. Changing this forces a new Express Route Port to be created. + BandwidthInGbps *float64 `json:"bandwidthInGbps,omitempty" tf:"bandwidth_in_gbps,omitempty"` + + // The billing type of the Express Route Port. Possible values are MeteredData and UnlimitedData. + BillingType *string `json:"billingType,omitempty" tf:"billing_type,omitempty"` + + // The encapsulation method used for the Express Route Port. Changing this forces a new Express Route Port to be created. Possible values are: Dot1Q, QinQ. + Encapsulation *string `json:"encapsulation,omitempty" tf:"encapsulation,omitempty"` + + // An identity block as defined below. + Identity []ExpressRoutePortIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // A list of link blocks as defined below. + Link1 []Link1InitParameters `json:"link1,omitempty" tf:"link1,omitempty"` + + // A list of link blocks as defined below. + Link2 []Link2InitParameters `json:"link2,omitempty" tf:"link2,omitempty"` + + // The Azure Region where the Express Route Port should exist. Changing this forces a new Express Route Port to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the peering location that this Express Route Port is physically mapped to. Changing this forces a new Express Route Port to be created. + PeeringLocation *string `json:"peeringLocation,omitempty" tf:"peering_location,omitempty"` + + // A mapping of tags which should be assigned to the Express Route Port. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type ExpressRoutePortObservation struct { @@ -130,6 +169,21 @@ type ExpressRoutePortParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type Link1InitParameters struct { + + // Whether enable administration state on the Express Route Port Link? Defaults to false. + AdminEnabled *bool `json:"adminEnabled,omitempty" tf:"admin_enabled,omitempty"` + + // The ID of the Key Vault Secret that contains the Mac security CAK key for this Express Route Port Link. + MacsecCakKeyvaultSecretID *string `json:"macsecCakKeyvaultSecretId,omitempty" tf:"macsec_cak_keyvault_secret_id,omitempty"` + + // The MACSec cipher used for this Express Route Port Link. Possible values are GcmAes128 and GcmAes256. Defaults to GcmAes128. + MacsecCipher *string `json:"macsecCipher,omitempty" tf:"macsec_cipher,omitempty"` + + // The ID of the Key Vault Secret that contains the MACSec CKN key for this Express Route Port Link. + MacsecCknKeyvaultSecretID *string `json:"macsecCknKeyvaultSecretId,omitempty" tf:"macsec_ckn_keyvault_secret_id,omitempty"` +} + type Link1Observation struct { // Whether enable administration state on the Express Route Port Link? Defaults to false. @@ -182,6 +236,21 @@ type Link1Parameters struct { MacsecCknKeyvaultSecretID *string `json:"macsecCknKeyvaultSecretId,omitempty" tf:"macsec_ckn_keyvault_secret_id,omitempty"` } +type Link2InitParameters struct { + + // Whether enable administration state on the Express Route Port Link? Defaults to false. + AdminEnabled *bool `json:"adminEnabled,omitempty" tf:"admin_enabled,omitempty"` + + // The ID of the Key Vault Secret that contains the Mac security CAK key for this Express Route Port Link. + MacsecCakKeyvaultSecretID *string `json:"macsecCakKeyvaultSecretId,omitempty" tf:"macsec_cak_keyvault_secret_id,omitempty"` + + // The MACSec cipher used for this Express Route Port Link. Possible values are GcmAes128 and GcmAes256. Defaults to GcmAes128. + MacsecCipher *string `json:"macsecCipher,omitempty" tf:"macsec_cipher,omitempty"` + + // The ID of the Key Vault Secret that contains the MACSec CKN key for this Express Route Port Link. + MacsecCknKeyvaultSecretID *string `json:"macsecCknKeyvaultSecretId,omitempty" tf:"macsec_ckn_keyvault_secret_id,omitempty"` +} + type Link2Observation struct { // Whether enable administration state on the Express Route Port Link? Defaults to false. @@ -238,6 +307,18 @@ type Link2Parameters struct { type ExpressRoutePortSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ExpressRoutePortParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ExpressRoutePortInitParameters `json:"initProvider,omitempty"` } // ExpressRoutePortStatus defines the observed state of ExpressRoutePort. @@ -258,10 +339,10 @@ type ExpressRoutePortStatus struct { type ExpressRoutePort struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.bandwidthInGbps)",message="bandwidthInGbps is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.encapsulation)",message="encapsulation is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.peeringLocation)",message="peeringLocation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.bandwidthInGbps) || has(self.initProvider.bandwidthInGbps)",message="bandwidthInGbps is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.encapsulation) || has(self.initProvider.encapsulation)",message="encapsulation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.peeringLocation) || has(self.initProvider.peeringLocation)",message="peeringLocation is a required parameter" Spec ExpressRoutePortSpec `json:"spec"` Status ExpressRoutePortStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewall_types.go b/apis/network/v1beta1/zz_firewall_types.go index 3a899899f..5a73917f6 100755 --- a/apis/network/v1beta1/zz_firewall_types.go +++ b/apis/network/v1beta1/zz_firewall_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FirewallIPConfigurationInitParameters struct { + + // Specifies the name of the IP Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type FirewallIPConfigurationObservation struct { // Specifies the name of the IP Configuration. @@ -31,8 +37,8 @@ type FirewallIPConfigurationObservation struct { type FirewallIPConfigurationParameters struct { // Specifies the name of the IP Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Public IP Address associated with the firewall. // +crossplane:generate:reference:type=PublicIP @@ -63,6 +69,45 @@ type FirewallIPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type FirewallInitParameters struct { + + // A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution. + DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` + + // The ID of the Firewall Policy applied to this Firewall. + FirewallPolicyID *string `json:"firewallPolicyId,omitempty" tf:"firewall_policy_id,omitempty"` + + // An ip_configuration block as documented below. + IPConfiguration []FirewallIPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A management_ip_configuration block as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing the subnet_id in an existing block forces a new resource to be created. Changing this forces a new resource to be created. + ManagementIPConfiguration []ManagementIPConfigurationInitParameters `json:"managementIpConfiguration,omitempty" tf:"management_ip_configuration,omitempty"` + + // A list of SNAT private CIDR IP ranges, or the special string IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. + PrivateIPRanges []*string `json:"privateIpRanges,omitempty" tf:"private_ip_ranges,omitempty"` + + // SKU name of the Firewall. Possible values are AZFW_Hub and AZFW_VNet. Changing this forces a new resource to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // SKU tier of the Firewall. Possible values are Premium, Standard and Basic. + SkuTier *string `json:"skuTier,omitempty" tf:"sku_tier,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The operation mode for threat intelligence-based filtering. Possible values are: Off, Alert and Deny. Defaults to Alert. + ThreatIntelMode *string `json:"threatIntelMode,omitempty" tf:"threat_intel_mode,omitempty"` + + // A virtual_hub block as documented below. + VirtualHub []VirtualHubInitParameters `json:"virtualHub,omitempty" tf:"virtual_hub,omitempty"` + + // Specifies a list of Availability Zones in which this Azure Firewall should be located. Changing this forces a new Azure Firewall to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type FirewallObservation struct { // A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution. @@ -172,6 +217,15 @@ type FirewallParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type ManagementIPConfigurationInitParameters struct { + + // Specifies the name of the IP Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of the Public IP Address associated with the firewall. + PublicIPAddressID *string `json:"publicIpAddressId,omitempty" tf:"public_ip_address_id,omitempty"` +} + type ManagementIPConfigurationObservation struct { // Specifies the name of the IP Configuration. @@ -190,12 +244,12 @@ type ManagementIPConfigurationObservation struct { type ManagementIPConfigurationParameters struct { // Specifies the name of the IP Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Public IP Address associated with the firewall. - // +kubebuilder:validation:Required - PublicIPAddressID *string `json:"publicIpAddressId" tf:"public_ip_address_id,omitempty"` + // +kubebuilder:validation:Optional + PublicIPAddressID *string `json:"publicIpAddressId,omitempty" tf:"public_ip_address_id,omitempty"` // Reference to the subnet associated with the IP Configuration. Changing this forces a new resource to be created. // +crossplane:generate:reference:type=Subnet @@ -212,6 +266,15 @@ type ManagementIPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type VirtualHubInitParameters struct { + + // Specifies the number of public IPs to assign to the Firewall. Defaults to 1. + PublicIPCount *float64 `json:"publicIpCount,omitempty" tf:"public_ip_count,omitempty"` + + // Specifies the ID of the Virtual Hub where the Firewall resides in. + VirtualHubID *string `json:"virtualHubId,omitempty" tf:"virtual_hub_id,omitempty"` +} + type VirtualHubObservation struct { // The private IP address associated with the Firewall. @@ -234,14 +297,26 @@ type VirtualHubParameters struct { PublicIPCount *float64 `json:"publicIpCount,omitempty" tf:"public_ip_count,omitempty"` // Specifies the ID of the Virtual Hub where the Firewall resides in. - // +kubebuilder:validation:Required - VirtualHubID *string `json:"virtualHubId" tf:"virtual_hub_id,omitempty"` + // +kubebuilder:validation:Optional + VirtualHubID *string `json:"virtualHubId,omitempty" tf:"virtual_hub_id,omitempty"` } // FirewallSpec defines the desired state of Firewall type FirewallSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FirewallParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FirewallInitParameters `json:"initProvider,omitempty"` } // FirewallStatus defines the observed state of Firewall. @@ -262,9 +337,9 @@ type FirewallStatus struct { type Firewall struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuTier)",message="skuTier is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuTier) || has(self.initProvider.skuTier)",message="skuTier is a required parameter" Spec FirewallSpec `json:"spec"` Status FirewallStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewallapplicationrulecollection_types.go b/apis/network/v1beta1/zz_firewallapplicationrulecollection_types.go index 95ab4eab2..9ee89a86c 100755 --- a/apis/network/v1beta1/zz_firewallapplicationrulecollection_types.go +++ b/apis/network/v1beta1/zz_firewallapplicationrulecollection_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FirewallApplicationRuleCollectionInitParameters struct { + + // Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // Specifies the priority of the rule collection. Possible values are between 100 - 65000. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // One or more rule blocks as defined below. + Rule []RuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + type FirewallApplicationRuleCollectionObservation struct { // Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny. @@ -74,6 +86,15 @@ type FirewallApplicationRuleCollectionParameters struct { Rule []RuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } +type ProtocolInitParameters struct { + + // Specify a port for the connection. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // Specifies the type of connection. Possible values are Http, Https and Mssql. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ProtocolObservation struct { // Specify a port for the connection. @@ -86,12 +107,36 @@ type ProtocolObservation struct { type ProtocolParameters struct { // Specify a port for the connection. - // +kubebuilder:validation:Required - Port *float64 `json:"port" tf:"port,omitempty"` + // +kubebuilder:validation:Optional + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // Specifies the type of connection. Possible values are Http, Https and Mssql. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type RuleInitParameters struct { + + // Specifies a description for the rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A list of FQDN tags. Possible values are AppServiceEnvironment, AzureBackup, AzureKubernetesService, HDInsight, MicrosoftActiveProtectionService, WindowsDiagnostics, WindowsUpdate and WindowsVirtualDesktop. + FqdnTags []*string `json:"fqdnTags,omitempty" tf:"fqdn_tags,omitempty"` + + // Specifies the name of the rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more protocol blocks as defined below. + Protocol []ProtocolInitParameters `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // A list of source IP addresses and/or IP ranges. + SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` + + // A list of source IP Group IDs for the rule. + SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` + + // A list of FQDNs. + TargetFqdns []*string `json:"targetFqdns,omitempty" tf:"target_fqdns,omitempty"` } type RuleObservation struct { @@ -129,8 +174,8 @@ type RuleParameters struct { FqdnTags []*string `json:"fqdnTags,omitempty" tf:"fqdn_tags,omitempty"` // Specifies the name of the rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more protocol blocks as defined below. // +kubebuilder:validation:Optional @@ -153,6 +198,18 @@ type RuleParameters struct { type FirewallApplicationRuleCollectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FirewallApplicationRuleCollectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FirewallApplicationRuleCollectionInitParameters `json:"initProvider,omitempty"` } // FirewallApplicationRuleCollectionStatus defines the observed state of FirewallApplicationRuleCollection. @@ -173,9 +230,9 @@ type FirewallApplicationRuleCollectionStatus struct { type FirewallApplicationRuleCollection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.action)",message="action is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.priority)",message="priority is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rule)",message="rule is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.action) || has(self.initProvider.action)",message="action is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.priority) || has(self.initProvider.priority)",message="priority is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.rule) || has(self.initProvider.rule)",message="rule is a required parameter" Spec FirewallApplicationRuleCollectionSpec `json:"spec"` Status FirewallApplicationRuleCollectionStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewallnatrulecollection_types.go b/apis/network/v1beta1/zz_firewallnatrulecollection_types.go index d8a941f5e..10eebeaf5 100755 --- a/apis/network/v1beta1/zz_firewallnatrulecollection_types.go +++ b/apis/network/v1beta1/zz_firewallnatrulecollection_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FirewallNATRuleCollectionInitParameters struct { + + // Specifies the action the rule will apply to matching traffic. Possible values are Dnat and Snat. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // Specifies the priority of the rule collection. Possible values are between 100 - 65000. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // One or more rule blocks as defined below. + Rule []FirewallNATRuleCollectionRuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + type FirewallNATRuleCollectionObservation struct { // Specifies the action the rule will apply to matching traffic. Possible values are Dnat and Snat. @@ -74,6 +86,36 @@ type FirewallNATRuleCollectionParameters struct { Rule []FirewallNATRuleCollectionRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } +type FirewallNATRuleCollectionRuleInitParameters struct { + + // Specifies a description for the rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A list of destination IP addresses and/or IP ranges. + DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` + + // A list of destination ports. + DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` + + // Specifies the name of the rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A list of protocols. Possible values are Any, ICMP, TCP and UDP. If action is Dnat, protocols can only be TCP and UDP. + Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` + + // A list of source IP addresses and/or IP ranges. + SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` + + // A list of source IP Group IDs for the rule. + SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` + + // The address of the service behind the Firewall. + TranslatedAddress *string `json:"translatedAddress,omitempty" tf:"translated_address,omitempty"` + + // The port of the service behind the Firewall. + TranslatedPort *string `json:"translatedPort,omitempty" tf:"translated_port,omitempty"` +} + type FirewallNATRuleCollectionRuleObservation struct { // Specifies a description for the rule. @@ -111,20 +153,20 @@ type FirewallNATRuleCollectionRuleParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // A list of destination IP addresses and/or IP ranges. - // +kubebuilder:validation:Required - DestinationAddresses []*string `json:"destinationAddresses" tf:"destination_addresses,omitempty"` + // +kubebuilder:validation:Optional + DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` // A list of destination ports. - // +kubebuilder:validation:Required - DestinationPorts []*string `json:"destinationPorts" tf:"destination_ports,omitempty"` + // +kubebuilder:validation:Optional + DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` // Specifies the name of the rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of protocols. Possible values are Any, ICMP, TCP and UDP. If action is Dnat, protocols can only be TCP and UDP. - // +kubebuilder:validation:Required - Protocols []*string `json:"protocols" tf:"protocols,omitempty"` + // +kubebuilder:validation:Optional + Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` // A list of source IP addresses and/or IP ranges. // +kubebuilder:validation:Optional @@ -135,18 +177,30 @@ type FirewallNATRuleCollectionRuleParameters struct { SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` // The address of the service behind the Firewall. - // +kubebuilder:validation:Required - TranslatedAddress *string `json:"translatedAddress" tf:"translated_address,omitempty"` + // +kubebuilder:validation:Optional + TranslatedAddress *string `json:"translatedAddress,omitempty" tf:"translated_address,omitempty"` // The port of the service behind the Firewall. - // +kubebuilder:validation:Required - TranslatedPort *string `json:"translatedPort" tf:"translated_port,omitempty"` + // +kubebuilder:validation:Optional + TranslatedPort *string `json:"translatedPort,omitempty" tf:"translated_port,omitempty"` } // FirewallNATRuleCollectionSpec defines the desired state of FirewallNATRuleCollection type FirewallNATRuleCollectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FirewallNATRuleCollectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FirewallNATRuleCollectionInitParameters `json:"initProvider,omitempty"` } // FirewallNATRuleCollectionStatus defines the observed state of FirewallNATRuleCollection. @@ -167,9 +221,9 @@ type FirewallNATRuleCollectionStatus struct { type FirewallNATRuleCollection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.action)",message="action is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.priority)",message="priority is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rule)",message="rule is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.action) || has(self.initProvider.action)",message="action is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.priority) || has(self.initProvider.priority)",message="priority is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.rule) || has(self.initProvider.rule)",message="rule is a required parameter" Spec FirewallNATRuleCollectionSpec `json:"spec"` Status FirewallNATRuleCollectionStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewallnetworkrulecollection_types.go b/apis/network/v1beta1/zz_firewallnetworkrulecollection_types.go index 28ab978a1..398904179 100755 --- a/apis/network/v1beta1/zz_firewallnetworkrulecollection_types.go +++ b/apis/network/v1beta1/zz_firewallnetworkrulecollection_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FirewallNetworkRuleCollectionInitParameters struct { + + // Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // Specifies the priority of the rule collection. Possible values are between 100 - 65000. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // One or more rule blocks as defined below. + Rule []FirewallNetworkRuleCollectionRuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + type FirewallNetworkRuleCollectionObservation struct { // Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny. @@ -74,6 +86,36 @@ type FirewallNetworkRuleCollectionParameters struct { Rule []FirewallNetworkRuleCollectionRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } +type FirewallNetworkRuleCollectionRuleInitParameters struct { + + // Specifies a description for the rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Either a list of destination IP addresses and/or IP ranges, or a list of destination Service Tags. + DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` + + // A list of destination FQDNS for the rule. + DestinationFqdns []*string `json:"destinationFqdns,omitempty" tf:"destination_fqdns,omitempty"` + + // A list of destination IP Group IDs for the rule. + DestinationIPGroups []*string `json:"destinationIpGroups,omitempty" tf:"destination_ip_groups,omitempty"` + + // A list of destination ports. + DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` + + // Specifies the name of the rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A list of protocols. Possible values are Any, ICMP, TCP and UDP. + Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` + + // A list of source IP addresses and/or IP ranges. + SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` + + // A list of IP Group IDs for the rule. + SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` +} + type FirewallNetworkRuleCollectionRuleObservation struct { // Specifies a description for the rule. @@ -123,16 +165,16 @@ type FirewallNetworkRuleCollectionRuleParameters struct { DestinationIPGroups []*string `json:"destinationIpGroups,omitempty" tf:"destination_ip_groups,omitempty"` // A list of destination ports. - // +kubebuilder:validation:Required - DestinationPorts []*string `json:"destinationPorts" tf:"destination_ports,omitempty"` + // +kubebuilder:validation:Optional + DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` // Specifies the name of the rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of protocols. Possible values are Any, ICMP, TCP and UDP. - // +kubebuilder:validation:Required - Protocols []*string `json:"protocols" tf:"protocols,omitempty"` + // +kubebuilder:validation:Optional + Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` // A list of source IP addresses and/or IP ranges. // +kubebuilder:validation:Optional @@ -147,6 +189,18 @@ type FirewallNetworkRuleCollectionRuleParameters struct { type FirewallNetworkRuleCollectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FirewallNetworkRuleCollectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FirewallNetworkRuleCollectionInitParameters `json:"initProvider,omitempty"` } // FirewallNetworkRuleCollectionStatus defines the observed state of FirewallNetworkRuleCollection. @@ -167,9 +221,9 @@ type FirewallNetworkRuleCollectionStatus struct { type FirewallNetworkRuleCollection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.action)",message="action is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.priority)",message="priority is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rule)",message="rule is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.action) || has(self.initProvider.action)",message="action is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.priority) || has(self.initProvider.priority)",message="priority is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.rule) || has(self.initProvider.rule)",message="rule is a required parameter" Spec FirewallNetworkRuleCollectionSpec `json:"spec"` Status FirewallNetworkRuleCollectionStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewallpolicy_types.go b/apis/network/v1beta1/zz_firewallpolicy_types.go index 0b1192259..3cadf0b4c 100755 --- a/apis/network/v1beta1/zz_firewallpolicy_types.go +++ b/apis/network/v1beta1/zz_firewallpolicy_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSInitParameters struct { + + // Whether to enable DNS proxy on Firewalls attached to this Firewall Policy? Defaults to false. + ProxyEnabled *bool `json:"proxyEnabled,omitempty" tf:"proxy_enabled,omitempty"` + + // A list of custom DNS servers' IP addresses. + Servers []*string `json:"servers,omitempty" tf:"servers,omitempty"` +} + type DNSObservation struct { // Whether to enable DNS proxy on Firewalls attached to this Firewall Policy? Defaults to false. @@ -33,6 +42,27 @@ type DNSParameters struct { Servers []*string `json:"servers,omitempty" tf:"servers,omitempty"` } +type ExplicitProxyInitParameters struct { + + // Whether the pac file port and url need to be provided. + EnablePacFile *bool `json:"enablePacFile,omitempty" tf:"enable_pac_file,omitempty"` + + // Whether the explicit proxy is enabled for this Firewall Policy. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The port number for explicit http protocol. + HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` + + // The port number for explicit proxy https protocol. + HTTPSPort *float64 `json:"httpsPort,omitempty" tf:"https_port,omitempty"` + + // Specifies a SAS URL for PAC file. + PacFile *string `json:"pacFile,omitempty" tf:"pac_file,omitempty"` + + // Specifies a port number for firewall to serve PAC file. + PacFilePort *float64 `json:"pacFilePort,omitempty" tf:"pac_file_port,omitempty"` +} + type ExplicitProxyObservation struct { // Whether the pac file port and url need to be provided. @@ -81,6 +111,15 @@ type ExplicitProxyParameters struct { PacFilePort *float64 `json:"pacFilePort,omitempty" tf:"pac_file_port,omitempty"` } +type FirewallPolicyIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Firewall Policy. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Firewall Policy. Only possible value is UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type FirewallPolicyIdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Firewall Policy. @@ -93,12 +132,60 @@ type FirewallPolicyIdentityObservation struct { type FirewallPolicyIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Firewall Policy. - // +kubebuilder:validation:Required - IdentityIds []*string `json:"identityIds" tf:"identity_ids,omitempty"` + // +kubebuilder:validation:Optional + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Firewall Policy. Only possible value is UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type FirewallPolicyInitParameters struct { + + // Whether enable auto learn private ip range. + AutoLearnPrivateRangesEnabled *bool `json:"autoLearnPrivateRangesEnabled,omitempty" tf:"auto_learn_private_ranges_enabled,omitempty"` + + // The ID of the base Firewall Policy. + BasePolicyID *string `json:"basePolicyId,omitempty" tf:"base_policy_id,omitempty"` + + // A dns block as defined below. + DNS []DNSInitParameters `json:"dns,omitempty" tf:"dns,omitempty"` + + // A explicit_proxy block as defined below. + ExplicitProxy []ExplicitProxyInitParameters `json:"explicitProxy,omitempty" tf:"explicit_proxy,omitempty"` + + // An identity block as defined below. + Identity []FirewallPolicyIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // An insights block as defined below. + Insights []InsightsInitParameters `json:"insights,omitempty" tf:"insights,omitempty"` + + // A intrusion_detection block as defined below. + IntrusionDetection []IntrusionDetectionInitParameters `json:"intrusionDetection,omitempty" tf:"intrusion_detection,omitempty"` + + // The Azure Region where the Firewall Policy should exist. Changing this forces a new Firewall Policy to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A list of private IP ranges to which traffic will not be SNAT. + PrivateIPRanges []*string `json:"privateIpRanges,omitempty" tf:"private_ip_ranges,omitempty"` + + // Whether SQL Redirect traffic filtering is allowed. Enabling this flag requires no rule using ports between 11000-11999. + SQLRedirectAllowed *bool `json:"sqlRedirectAllowed,omitempty" tf:"sql_redirect_allowed,omitempty"` + + // The SKU Tier of the Firewall Policy. Possible values are Standard, Premium and Basic. Changing this forces a new Firewall Policy to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A tls_certificate block as defined below. + TLSCertificate []TLSCertificateInitParameters `json:"tlsCertificate,omitempty" tf:"tls_certificate,omitempty"` + + // A mapping of tags which should be assigned to the Firewall Policy. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A threat_intelligence_allowlist block as defined below. + ThreatIntelligenceAllowlist []ThreatIntelligenceAllowlistInitParameters `json:"threatIntelligenceAllowlist,omitempty" tf:"threat_intelligence_allowlist,omitempty"` + + // The operation mode for Threat Intelligence. Possible values are Alert, Deny and Off. Defaults to Alert. + ThreatIntelligenceMode *string `json:"threatIntelligenceMode,omitempty" tf:"threat_intelligence_mode,omitempty"` } type FirewallPolicyObservation struct { @@ -240,6 +327,21 @@ type FirewallPolicyParameters struct { ThreatIntelligenceMode *string `json:"threatIntelligenceMode,omitempty" tf:"threat_intelligence_mode,omitempty"` } +type InsightsInitParameters struct { + + // The ID of the default Log Analytics Workspace that the Firewalls associated with this Firewall Policy will send their logs to, when there is no location matches in the log_analytics_workspace. + DefaultLogAnalyticsWorkspaceID *string `json:"defaultLogAnalyticsWorkspaceId,omitempty" tf:"default_log_analytics_workspace_id,omitempty"` + + // Whether the insights functionality is enabled for this Firewall Policy. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A list of log_analytics_workspace block as defined below. + LogAnalyticsWorkspace []LogAnalyticsWorkspaceInitParameters `json:"logAnalyticsWorkspace,omitempty" tf:"log_analytics_workspace,omitempty"` + + // The log retention period in days. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` +} + type InsightsObservation struct { // The ID of the default Log Analytics Workspace that the Firewalls associated with this Firewall Policy will send their logs to, when there is no location matches in the log_analytics_workspace. @@ -258,12 +360,12 @@ type InsightsObservation struct { type InsightsParameters struct { // The ID of the default Log Analytics Workspace that the Firewalls associated with this Firewall Policy will send their logs to, when there is no location matches in the log_analytics_workspace. - // +kubebuilder:validation:Required - DefaultLogAnalyticsWorkspaceID *string `json:"defaultLogAnalyticsWorkspaceId" tf:"default_log_analytics_workspace_id,omitempty"` + // +kubebuilder:validation:Optional + DefaultLogAnalyticsWorkspaceID *string `json:"defaultLogAnalyticsWorkspaceId,omitempty" tf:"default_log_analytics_workspace_id,omitempty"` // Whether the insights functionality is enabled for this Firewall Policy. - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A list of log_analytics_workspace block as defined below. // +kubebuilder:validation:Optional @@ -274,6 +376,21 @@ type InsightsParameters struct { RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` } +type IntrusionDetectionInitParameters struct { + + // In which mode you want to run intrusion detection: Off, Alert or Deny. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // A list of Private IP address ranges to identify traffic direction. By default, only ranges defined by IANA RFC 1918 are considered private IP addresses. + PrivateRanges []*string `json:"privateRanges,omitempty" tf:"private_ranges,omitempty"` + + // One or more signature_overrides blocks as defined below. + SignatureOverrides []SignatureOverridesInitParameters `json:"signatureOverrides,omitempty" tf:"signature_overrides,omitempty"` + + // One or more traffic_bypass blocks as defined below. + TrafficBypass []TrafficBypassInitParameters `json:"trafficBypass,omitempty" tf:"traffic_bypass,omitempty"` +} + type IntrusionDetectionObservation struct { // In which mode you want to run intrusion detection: Off, Alert or Deny. @@ -308,6 +425,15 @@ type IntrusionDetectionParameters struct { TrafficBypass []TrafficBypassParameters `json:"trafficBypass,omitempty" tf:"traffic_bypass,omitempty"` } +type LogAnalyticsWorkspaceInitParameters struct { + + // The location of the Firewalls, that when matches this Log Analytics Workspace will be used to consume their logs. + FirewallLocation *string `json:"firewallLocation,omitempty" tf:"firewall_location,omitempty"` + + // 12-digit number (id) which identifies your signature. + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + type LogAnalyticsWorkspaceObservation struct { // The location of the Firewalls, that when matches this Log Analytics Workspace will be used to consume their logs. @@ -320,12 +446,21 @@ type LogAnalyticsWorkspaceObservation struct { type LogAnalyticsWorkspaceParameters struct { // The location of the Firewalls, that when matches this Log Analytics Workspace will be used to consume their logs. - // +kubebuilder:validation:Required - FirewallLocation *string `json:"firewallLocation" tf:"firewall_location,omitempty"` + // +kubebuilder:validation:Optional + FirewallLocation *string `json:"firewallLocation,omitempty" tf:"firewall_location,omitempty"` + + // 12-digit number (id) which identifies your signature. + // +kubebuilder:validation:Optional + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + +type SignatureOverridesInitParameters struct { // 12-digit number (id) which identifies your signature. - // +kubebuilder:validation:Required - ID *string `json:"id" tf:"id,omitempty"` + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // state can be any of Off, Alert or Deny. + State *string `json:"state,omitempty" tf:"state,omitempty"` } type SignatureOverridesObservation struct { @@ -348,6 +483,15 @@ type SignatureOverridesParameters struct { State *string `json:"state,omitempty" tf:"state,omitempty"` } +type TLSCertificateInitParameters struct { + + // The ID of the Key Vault, where the secret or certificate is stored. + KeyVaultSecretID *string `json:"keyVaultSecretId,omitempty" tf:"key_vault_secret_id,omitempty"` + + // The name of the certificate. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type TLSCertificateObservation struct { // The ID of the Key Vault, where the secret or certificate is stored. @@ -360,12 +504,21 @@ type TLSCertificateObservation struct { type TLSCertificateParameters struct { // The ID of the Key Vault, where the secret or certificate is stored. - // +kubebuilder:validation:Required - KeyVaultSecretID *string `json:"keyVaultSecretId" tf:"key_vault_secret_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultSecretID *string `json:"keyVaultSecretId,omitempty" tf:"key_vault_secret_id,omitempty"` // The name of the certificate. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type ThreatIntelligenceAllowlistInitParameters struct { + + // A list of FQDNs that will be skipped for threat detection. + Fqdns []*string `json:"fqdns,omitempty" tf:"fqdns,omitempty"` + + // A list of IP addresses or CIDR ranges that will be skipped for threat detection. + IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"` } type ThreatIntelligenceAllowlistObservation struct { @@ -388,6 +541,33 @@ type ThreatIntelligenceAllowlistParameters struct { IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"` } +type TrafficBypassInitParameters struct { + + // The description for this bypass traffic setting. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies a list of destination IP addresses that shall be bypassed by intrusion detection. + DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` + + // Specifies a list of destination IP groups that shall be bypassed by intrusion detection. + DestinationIPGroups []*string `json:"destinationIpGroups,omitempty" tf:"destination_ip_groups,omitempty"` + + // Specifies a list of destination IP ports that shall be bypassed by intrusion detection. + DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` + + // The name which should be used for this bypass traffic setting. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The protocols any of ANY, TCP, ICMP, UDP that shall be bypassed by intrusion detection. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // Specifies a list of source addresses that shall be bypassed by intrusion detection. + SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` + + // Specifies a list of source IP groups that shall be bypassed by intrusion detection. + SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` +} + type TrafficBypassObservation struct { // The description for this bypass traffic setting. @@ -434,12 +614,12 @@ type TrafficBypassParameters struct { DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` // The name which should be used for this bypass traffic setting. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The protocols any of ANY, TCP, ICMP, UDP that shall be bypassed by intrusion detection. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // Specifies a list of source addresses that shall be bypassed by intrusion detection. // +kubebuilder:validation:Optional @@ -454,6 +634,18 @@ type TrafficBypassParameters struct { type FirewallPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider FirewallPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FirewallPolicyInitParameters `json:"initProvider,omitempty"` } // FirewallPolicyStatus defines the observed state of FirewallPolicy. @@ -474,7 +666,7 @@ type FirewallPolicyStatus struct { type FirewallPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec FirewallPolicySpec `json:"spec"` Status FirewallPolicyStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewallpolicyrulecollectiongroup_types.go b/apis/network/v1beta1/zz_firewallpolicyrulecollectiongroup_types.go index 47d2e47db..153594bf1 100755 --- a/apis/network/v1beta1/zz_firewallpolicyrulecollectiongroup_types.go +++ b/apis/network/v1beta1/zz_firewallpolicyrulecollectiongroup_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationRuleCollectionInitParameters struct { + + // The action to take for the application rules in this collection. Possible values are Allow and Deny. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The name which should be used for this application rule collection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority of the application rule collection. The range is 100 - 65000. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // One or more application_rule (application rule) blocks as defined below. + Rule []ApplicationRuleCollectionRuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + type ApplicationRuleCollectionObservation struct { // The action to take for the application rules in this collection. Possible values are Allow and Deny. @@ -31,20 +46,56 @@ type ApplicationRuleCollectionObservation struct { type ApplicationRuleCollectionParameters struct { // The action to take for the application rules in this collection. Possible values are Allow and Deny. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name which should be used for this application rule collection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority of the application rule collection. The range is 100 - 65000. - // +kubebuilder:validation:Required - Priority *float64 `json:"priority" tf:"priority,omitempty"` + // +kubebuilder:validation:Optional + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // One or more application_rule (application rule) blocks as defined below. - // +kubebuilder:validation:Required - Rule []ApplicationRuleCollectionRuleParameters `json:"rule" tf:"rule,omitempty"` + // +kubebuilder:validation:Optional + Rule []ApplicationRuleCollectionRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + +type ApplicationRuleCollectionRuleInitParameters struct { + + // The description which should be used for this rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies a list of destination IP addresses (including CIDR, IP range and *) or Service Tags. + DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` + + // Specifies a list of destination FQDN tags. + DestinationFqdnTags []*string `json:"destinationFqdnTags,omitempty" tf:"destination_fqdn_tags,omitempty"` + + // Specifies a list of destination FQDNs. + DestinationFqdns []*string `json:"destinationFqdns,omitempty" tf:"destination_fqdns,omitempty"` + + // Specifies a list of destination URLs for which policy should hold. Needs Premium SKU for Firewall Policy. Conflicts with destination_fqdns. + DestinationUrls []*string `json:"destinationUrls,omitempty" tf:"destination_urls,omitempty"` + + // The name which should be used for this network rule collection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of network protocols this rule applies to. Possible values are Any, TCP, UDP, ICMP. + Protocols []ProtocolsInitParameters `json:"protocols,omitempty" tf:"protocols,omitempty"` + + // Specifies a list of source IP addresses (including CIDR, IP range and *). + SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` + + // Specifies a list of source IP groups. + SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` + + // Boolean specifying if TLS shall be terminated (true) or not (false). Must be true when using destination_urls. Needs Premium SKU for Firewall Policy. + TerminateTLS *bool `json:"terminateTls,omitempty" tf:"terminate_tls,omitempty"` + + // Specifies a list of web categories to which access is denied or allowed depending on the value of action above. Needs Premium SKU for Firewall Policy. + WebCategories []*string `json:"webCategories,omitempty" tf:"web_categories,omitempty"` } type ApplicationRuleCollectionRuleObservation struct { @@ -106,8 +157,8 @@ type ApplicationRuleCollectionRuleParameters struct { DestinationUrls []*string `json:"destinationUrls,omitempty" tf:"destination_urls,omitempty"` // The name which should be used for this network rule collection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of network protocols this rule applies to. Possible values are Any, TCP, UDP, ICMP. // +kubebuilder:validation:Optional @@ -130,6 +181,21 @@ type ApplicationRuleCollectionRuleParameters struct { WebCategories []*string `json:"webCategories,omitempty" tf:"web_categories,omitempty"` } +type FirewallPolicyRuleCollectionGroupInitParameters struct { + + // One or more application_rule_collection blocks as defined below. + ApplicationRuleCollection []ApplicationRuleCollectionInitParameters `json:"applicationRuleCollection,omitempty" tf:"application_rule_collection,omitempty"` + + // One or more nat_rule_collection blocks as defined below. + NATRuleCollection []NATRuleCollectionInitParameters `json:"natRuleCollection,omitempty" tf:"nat_rule_collection,omitempty"` + + // One or more network_rule_collection blocks as defined below. + NetworkRuleCollection []NetworkRuleCollectionInitParameters `json:"networkRuleCollection,omitempty" tf:"network_rule_collection,omitempty"` + + // The priority of the Firewall Policy Rule Collection Group. The range is 100-65000. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` +} + type FirewallPolicyRuleCollectionGroupObservation struct { // One or more application_rule_collection blocks as defined below. @@ -184,6 +250,21 @@ type FirewallPolicyRuleCollectionGroupParameters struct { Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` } +type NATRuleCollectionInitParameters struct { + + // The action to take for the NAT rules in this collection. Currently, the only possible value is Dnat. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The name which should be used for this NAT rule collection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority of the NAT rule collection. The range is 100 - 65000. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // A nat_rule (NAT rule) block as defined below. + Rule []NATRuleCollectionRuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + type NATRuleCollectionObservation struct { // The action to take for the NAT rules in this collection. Currently, the only possible value is Dnat. @@ -202,20 +283,50 @@ type NATRuleCollectionObservation struct { type NATRuleCollectionParameters struct { // The action to take for the NAT rules in this collection. Currently, the only possible value is Dnat. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name which should be used for this NAT rule collection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority of the NAT rule collection. The range is 100 - 65000. - // +kubebuilder:validation:Required - Priority *float64 `json:"priority" tf:"priority,omitempty"` + // +kubebuilder:validation:Optional + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // A nat_rule (NAT rule) block as defined below. - // +kubebuilder:validation:Required - Rule []NATRuleCollectionRuleParameters `json:"rule" tf:"rule,omitempty"` + // +kubebuilder:validation:Optional + Rule []NATRuleCollectionRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + +type NATRuleCollectionRuleInitParameters struct { + + // The destination IP address (including CIDR). + DestinationAddress *string `json:"destinationAddress,omitempty" tf:"destination_address,omitempty"` + + // Specifies a list of destination ports. + DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` + + // The name which should be used for this network rule collection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of network protocols this rule applies to. Possible values are Any, TCP, UDP, ICMP. + Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` + + // Specifies a list of source IP addresses (including CIDR, IP range and *). + SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` + + // Specifies a list of source IP groups. + SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` + + // Specifies the translated address. + TranslatedAddress *string `json:"translatedAddress,omitempty" tf:"translated_address,omitempty"` + + // Specifies the translated FQDN. + TranslatedFqdn *string `json:"translatedFqdn,omitempty" tf:"translated_fqdn,omitempty"` + + // Specifies the translated port. + TranslatedPort *float64 `json:"translatedPort,omitempty" tf:"translated_port,omitempty"` } type NATRuleCollectionRuleObservation struct { @@ -259,12 +370,12 @@ type NATRuleCollectionRuleParameters struct { DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` // The name which should be used for this network rule collection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of network protocols this rule applies to. Possible values are Any, TCP, UDP, ICMP. - // +kubebuilder:validation:Required - Protocols []*string `json:"protocols" tf:"protocols,omitempty"` + // +kubebuilder:validation:Optional + Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` // Specifies a list of source IP addresses (including CIDR, IP range and *). // +kubebuilder:validation:Optional @@ -283,8 +394,23 @@ type NATRuleCollectionRuleParameters struct { TranslatedFqdn *string `json:"translatedFqdn,omitempty" tf:"translated_fqdn,omitempty"` // Specifies the translated port. - // +kubebuilder:validation:Required - TranslatedPort *float64 `json:"translatedPort" tf:"translated_port,omitempty"` + // +kubebuilder:validation:Optional + TranslatedPort *float64 `json:"translatedPort,omitempty" tf:"translated_port,omitempty"` +} + +type NetworkRuleCollectionInitParameters struct { + + // The action to take for the network rules in this collection. Possible values are Allow and Deny. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // The name which should be used for this network rule collection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority of the network rule collection. The range is 100 - 65000. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // One or more network_rule (network rule) blocks as defined below. + Rule []NetworkRuleCollectionRuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` } type NetworkRuleCollectionObservation struct { @@ -305,20 +431,47 @@ type NetworkRuleCollectionObservation struct { type NetworkRuleCollectionParameters struct { // The action to take for the network rules in this collection. Possible values are Allow and Deny. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name which should be used for this network rule collection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority of the network rule collection. The range is 100 - 65000. - // +kubebuilder:validation:Required - Priority *float64 `json:"priority" tf:"priority,omitempty"` + // +kubebuilder:validation:Optional + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // One or more network_rule (network rule) blocks as defined below. - // +kubebuilder:validation:Required - Rule []NetworkRuleCollectionRuleParameters `json:"rule" tf:"rule,omitempty"` + // +kubebuilder:validation:Optional + Rule []NetworkRuleCollectionRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + +type NetworkRuleCollectionRuleInitParameters struct { + + // Specifies a list of destination IP addresses (including CIDR, IP range and *) or Service Tags. + DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` + + // Specifies a list of destination FQDNs. + DestinationFqdns []*string `json:"destinationFqdns,omitempty" tf:"destination_fqdns,omitempty"` + + // Specifies a list of destination IP groups. + DestinationIPGroups []*string `json:"destinationIpGroups,omitempty" tf:"destination_ip_groups,omitempty"` + + // Specifies a list of destination ports. + DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` + + // The name which should be used for this network rule collection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of network protocols this rule applies to. Possible values are Any, TCP, UDP, ICMP. + Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` + + // Specifies a list of source IP addresses (including CIDR, IP range and *). + SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` + + // Specifies a list of source IP groups. + SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` } type NetworkRuleCollectionRuleObservation struct { @@ -363,16 +516,16 @@ type NetworkRuleCollectionRuleParameters struct { DestinationIPGroups []*string `json:"destinationIpGroups,omitempty" tf:"destination_ip_groups,omitempty"` // Specifies a list of destination ports. - // +kubebuilder:validation:Required - DestinationPorts []*string `json:"destinationPorts" tf:"destination_ports,omitempty"` + // +kubebuilder:validation:Optional + DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` // The name which should be used for this network rule collection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of network protocols this rule applies to. Possible values are Any, TCP, UDP, ICMP. - // +kubebuilder:validation:Required - Protocols []*string `json:"protocols" tf:"protocols,omitempty"` + // +kubebuilder:validation:Optional + Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` // Specifies a list of source IP addresses (including CIDR, IP range and *). // +kubebuilder:validation:Optional @@ -383,6 +536,15 @@ type NetworkRuleCollectionRuleParameters struct { SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` } +type ProtocolsInitParameters struct { + + // Port number of the protocol. Range is 0-64000. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // Protocol type. Possible values are Http and Https. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ProtocolsObservation struct { // Port number of the protocol. Range is 0-64000. @@ -395,18 +557,30 @@ type ProtocolsObservation struct { type ProtocolsParameters struct { // Port number of the protocol. Range is 0-64000. - // +kubebuilder:validation:Required - Port *float64 `json:"port" tf:"port,omitempty"` + // +kubebuilder:validation:Optional + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // Protocol type. Possible values are Http and Https. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // FirewallPolicyRuleCollectionGroupSpec defines the desired state of FirewallPolicyRuleCollectionGroup type FirewallPolicyRuleCollectionGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FirewallPolicyRuleCollectionGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FirewallPolicyRuleCollectionGroupInitParameters `json:"initProvider,omitempty"` } // FirewallPolicyRuleCollectionGroupStatus defines the observed state of FirewallPolicyRuleCollectionGroup. @@ -427,7 +601,7 @@ type FirewallPolicyRuleCollectionGroupStatus struct { type FirewallPolicyRuleCollectionGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.priority)",message="priority is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.priority) || has(self.initProvider.priority)",message="priority is a required parameter" Spec FirewallPolicyRuleCollectionGroupSpec `json:"spec"` Status FirewallPolicyRuleCollectionGroupStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_frontdoor_types.go b/apis/network/v1beta1/zz_frontdoor_types.go index 8562c9ce8..d8a2ce527 100755 --- a/apis/network/v1beta1/zz_frontdoor_types.go +++ b/apis/network/v1beta1/zz_frontdoor_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackendInitParameters struct { + + // Location of the backend (IP address or FQDN) + Address *string `json:"address,omitempty" tf:"address,omitempty"` + + // Enable or Disable use of this Backend Routing Rule. Permitted values are true or false. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The HTTP TCP port number. Possible values are between 1 - 65535. + HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` + + // The HTTPS TCP port number. Possible values are between 1 - 65535. + HTTPSPort *float64 `json:"httpsPort,omitempty" tf:"https_port,omitempty"` + + // The value to use as the host header sent to the backend. + HostHeader *string `json:"hostHeader,omitempty" tf:"host_header,omitempty"` + + // Priority to use for load balancing. Higher priorities will not be used for load balancing if any lower priority backend is healthy. Defaults to 1. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // Weight of this endpoint for load balancing purposes. Defaults to 50. + Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` +} + type BackendObservation struct { // Location of the backend (IP address or FQDN) @@ -40,24 +64,24 @@ type BackendObservation struct { type BackendParameters struct { // Location of the backend (IP address or FQDN) - // +kubebuilder:validation:Required - Address *string `json:"address" tf:"address,omitempty"` + // +kubebuilder:validation:Optional + Address *string `json:"address,omitempty" tf:"address,omitempty"` // Enable or Disable use of this Backend Routing Rule. Permitted values are true or false. Defaults to true. // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The HTTP TCP port number. Possible values are between 1 - 65535. - // +kubebuilder:validation:Required - HTTPPort *float64 `json:"httpPort" tf:"http_port,omitempty"` + // +kubebuilder:validation:Optional + HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` // The HTTPS TCP port number. Possible values are between 1 - 65535. - // +kubebuilder:validation:Required - HTTPSPort *float64 `json:"httpsPort" tf:"https_port,omitempty"` + // +kubebuilder:validation:Optional + HTTPSPort *float64 `json:"httpsPort,omitempty" tf:"https_port,omitempty"` // The value to use as the host header sent to the backend. - // +kubebuilder:validation:Required - HostHeader *string `json:"hostHeader" tf:"host_header,omitempty"` + // +kubebuilder:validation:Optional + HostHeader *string `json:"hostHeader,omitempty" tf:"host_header,omitempty"` // Priority to use for load balancing. Higher priorities will not be used for load balancing if any lower priority backend is healthy. Defaults to 1. // +kubebuilder:validation:Optional @@ -68,6 +92,27 @@ type BackendParameters struct { Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } +type BackendPoolHealthProbeInitParameters struct { + + // Is this health probe enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The number of seconds between each Health Probe. Defaults to 120. + IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` + + // Specifies the name of the Health Probe. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The path to use for the Health Probe. Default is /. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // Specifies HTTP method the health probe uses when querying the backend pool instances. Possible values include: Get and Head. Defaults to GET. + ProbeMethod *string `json:"probeMethod,omitempty" tf:"probe_method,omitempty"` + + // Protocol scheme to use for the Health Probe. Possible values are Http and Https. Defaults to Http. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` +} + type BackendPoolHealthProbeObservation struct { // Is this health probe enabled? Defaults to true. @@ -103,8 +148,8 @@ type BackendPoolHealthProbeParameters struct { IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` // Specifies the name of the Health Probe. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The path to use for the Health Probe. Default is /. // +kubebuilder:validation:Optional @@ -119,6 +164,36 @@ type BackendPoolHealthProbeParameters struct { Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } +type BackendPoolInitParameters struct { + + // A backend block as defined below. + Backend []BackendInitParameters `json:"backend,omitempty" tf:"backend,omitempty"` + + // Specifies the name of the backend_pool_health_probe block within this resource to use for this Backend Pool. + HealthProbeName *string `json:"healthProbeName,omitempty" tf:"health_probe_name,omitempty"` + + // Specifies the name of the backend_pool_load_balancing block within this resource to use for this Backend Pool. + LoadBalancingName *string `json:"loadBalancingName,omitempty" tf:"load_balancing_name,omitempty"` + + // Specifies the name of the Backend Pool. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type BackendPoolLoadBalancingInitParameters struct { + + // The additional latency in milliseconds for probes to fall into the lowest latency bucket. Defaults to 0. + AdditionalLatencyMilliseconds *float64 `json:"additionalLatencyMilliseconds,omitempty" tf:"additional_latency_milliseconds,omitempty"` + + // Specifies the name of the Load Balancer. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The number of samples to consider for load balancing decisions. Defaults to 4. + SampleSize *float64 `json:"sampleSize,omitempty" tf:"sample_size,omitempty"` + + // The number of samples within the sample period that must succeed. Defaults to 2. + SuccessfulSamplesRequired *float64 `json:"successfulSamplesRequired,omitempty" tf:"successful_samples_required,omitempty"` +} + type BackendPoolLoadBalancingObservation struct { // The additional latency in milliseconds for probes to fall into the lowest latency bucket. Defaults to 0. @@ -144,8 +219,8 @@ type BackendPoolLoadBalancingParameters struct { AdditionalLatencyMilliseconds *float64 `json:"additionalLatencyMilliseconds,omitempty" tf:"additional_latency_milliseconds,omitempty"` // Specifies the name of the Load Balancer. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The number of samples to consider for load balancing decisions. Defaults to 4. // +kubebuilder:validation:Optional @@ -177,20 +252,29 @@ type BackendPoolObservation struct { type BackendPoolParameters struct { // A backend block as defined below. - // +kubebuilder:validation:Required - Backend []BackendParameters `json:"backend" tf:"backend,omitempty"` + // +kubebuilder:validation:Optional + Backend []BackendParameters `json:"backend,omitempty" tf:"backend,omitempty"` // Specifies the name of the backend_pool_health_probe block within this resource to use for this Backend Pool. - // +kubebuilder:validation:Required - HealthProbeName *string `json:"healthProbeName" tf:"health_probe_name,omitempty"` + // +kubebuilder:validation:Optional + HealthProbeName *string `json:"healthProbeName,omitempty" tf:"health_probe_name,omitempty"` // Specifies the name of the backend_pool_load_balancing block within this resource to use for this Backend Pool. - // +kubebuilder:validation:Required - LoadBalancingName *string `json:"loadBalancingName" tf:"load_balancing_name,omitempty"` + // +kubebuilder:validation:Optional + LoadBalancingName *string `json:"loadBalancingName,omitempty" tf:"load_balancing_name,omitempty"` // Specifies the name of the Backend Pool. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type BackendPoolSettingsInitParameters struct { + + // Specifies the send and receive timeout on forwarding request to the backend. When the timeout is reached, the request fails and returns. Possible values are between 0 - 240. Defaults to 60. + BackendPoolsSendReceiveTimeoutSeconds *float64 `json:"backendPoolsSendReceiveTimeoutSeconds,omitempty" tf:"backend_pools_send_receive_timeout_seconds,omitempty"` + + // Enforce certificate name check on HTTPS requests to all backend pools, this setting will have no effect on HTTP requests. Permitted values are true or false. + EnforceBackendPoolsCertificateNameCheck *bool `json:"enforceBackendPoolsCertificateNameCheck,omitempty" tf:"enforce_backend_pools_certificate_name_check,omitempty"` } type BackendPoolSettingsObservation struct { @@ -209,8 +293,11 @@ type BackendPoolSettingsParameters struct { BackendPoolsSendReceiveTimeoutSeconds *float64 `json:"backendPoolsSendReceiveTimeoutSeconds,omitempty" tf:"backend_pools_send_receive_timeout_seconds,omitempty"` // Enforce certificate name check on HTTPS requests to all backend pools, this setting will have no effect on HTTP requests. Permitted values are true or false. - // +kubebuilder:validation:Required - EnforceBackendPoolsCertificateNameCheck *bool `json:"enforceBackendPoolsCertificateNameCheck" tf:"enforce_backend_pools_certificate_name_check,omitempty"` + // +kubebuilder:validation:Optional + EnforceBackendPoolsCertificateNameCheck *bool `json:"enforceBackendPoolsCertificateNameCheck,omitempty" tf:"enforce_backend_pools_certificate_name_check,omitempty"` +} + +type ExplicitResourceOrderInitParameters struct { } type ExplicitResourceOrderObservation struct { @@ -228,6 +315,33 @@ type ExplicitResourceOrderObservation struct { type ExplicitResourceOrderParameters struct { } +type ForwardingConfigurationInitParameters struct { + + // Specifies the name of the Backend Pool to forward the incoming traffic to. + BackendPoolName *string `json:"backendPoolName,omitempty" tf:"backend_pool_name,omitempty"` + + // Specify the minimum caching duration (in ISO8601 notation e.g. P1DT2H for 1 day and 2 hours). Needs to be greater than 0 and smaller than 365 days. cache_duration works only in combination with cache_enabled set to true. + CacheDuration *string `json:"cacheDuration,omitempty" tf:"cache_duration,omitempty"` + + // Specifies whether to Enable caching or not. Valid options are true or false. Defaults to false. + CacheEnabled *bool `json:"cacheEnabled,omitempty" tf:"cache_enabled,omitempty"` + + // Defines cache behaviour in relation to query string parameters. Valid options are StripAll, StripAllExcept, StripOnly or StripNone. Defaults to StripAll. + CacheQueryParameterStripDirective *string `json:"cacheQueryParameterStripDirective,omitempty" tf:"cache_query_parameter_strip_directive,omitempty"` + + // Specify query parameters (array). Works only in combination with cache_query_parameter_strip_directive set to StripAllExcept or StripOnly. + CacheQueryParameters []*string `json:"cacheQueryParameters,omitempty" tf:"cache_query_parameters,omitempty"` + + // Whether to use dynamic compression when caching. Valid options are true or false. Defaults to false. + CacheUseDynamicCompression *bool `json:"cacheUseDynamicCompression,omitempty" tf:"cache_use_dynamic_compression,omitempty"` + + // Path to use when constructing the request to forward to the backend. This functions as a URL Rewrite. Default behaviour preserves the URL path. + CustomForwardingPath *string `json:"customForwardingPath,omitempty" tf:"custom_forwarding_path,omitempty"` + + // Protocol to use when redirecting. Valid options are HttpOnly, HttpsOnly, or MatchRequest. Defaults to HttpsOnly. + ForwardingProtocol *string `json:"forwardingProtocol,omitempty" tf:"forwarding_protocol,omitempty"` +} + type ForwardingConfigurationObservation struct { // Specifies the name of the Backend Pool to forward the incoming traffic to. @@ -258,8 +372,8 @@ type ForwardingConfigurationObservation struct { type ForwardingConfigurationParameters struct { // Specifies the name of the Backend Pool to forward the incoming traffic to. - // +kubebuilder:validation:Required - BackendPoolName *string `json:"backendPoolName" tf:"backend_pool_name,omitempty"` + // +kubebuilder:validation:Optional + BackendPoolName *string `json:"backendPoolName,omitempty" tf:"backend_pool_name,omitempty"` // Specify the minimum caching duration (in ISO8601 notation e.g. P1DT2H for 1 day and 2 hours). Needs to be greater than 0 and smaller than 365 days. cache_duration works only in combination with cache_enabled set to true. // +kubebuilder:validation:Optional @@ -290,6 +404,36 @@ type ForwardingConfigurationParameters struct { ForwardingProtocol *string `json:"forwardingProtocol,omitempty" tf:"forwarding_protocol,omitempty"` } +type FrontDoorInitParameters struct { + + // A backend_pool block as defined below. + BackendPool []BackendPoolInitParameters `json:"backendPool,omitempty" tf:"backend_pool,omitempty"` + + // A backend_pool_health_probe block as defined below. + BackendPoolHealthProbe []BackendPoolHealthProbeInitParameters `json:"backendPoolHealthProbe,omitempty" tf:"backend_pool_health_probe,omitempty"` + + // A backend_pool_load_balancing block as defined below. + BackendPoolLoadBalancing []BackendPoolLoadBalancingInitParameters `json:"backendPoolLoadBalancing,omitempty" tf:"backend_pool_load_balancing,omitempty"` + + // A backend_pool_settings block as defined below. + BackendPoolSettings []BackendPoolSettingsInitParameters `json:"backendPoolSettings,omitempty" tf:"backend_pool_settings,omitempty"` + + // A friendly name for the Front Door service. + FriendlyName *string `json:"friendlyName,omitempty" tf:"friendly_name,omitempty"` + + // A frontend_endpoint block as defined below. + FrontendEndpoint []FrontendEndpointInitParameters `json:"frontendEndpoint,omitempty" tf:"frontend_endpoint,omitempty"` + + // Should the Front Door Load Balancer be Enabled? Defaults to true. + LoadBalancerEnabled *bool `json:"loadBalancerEnabled,omitempty" tf:"load_balancer_enabled,omitempty"` + + // A routing_rule block as defined below. + RoutingRule []RoutingRuleInitParameters `json:"routingRule,omitempty" tf:"routing_rule,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type FrontDoorObservation struct { // A backend_pool block as defined below. @@ -401,6 +545,24 @@ type FrontDoorParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type FrontendEndpointInitParameters struct { + + // Specifies the host name of the frontend_endpoint. Must be a domain name. In order to use a name.azurefd.net domain, the name value must match the Front Door name. + HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` + + // Specifies the name of the frontend_endpoint. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Whether to allow session affinity on this host. Valid options are true or false Defaults to false. + SessionAffinityEnabled *bool `json:"sessionAffinityEnabled,omitempty" tf:"session_affinity_enabled,omitempty"` + + // The TTL to use in seconds for session affinity, if applicable. Defaults to 0. + SessionAffinityTTLSeconds *float64 `json:"sessionAffinityTtlSeconds,omitempty" tf:"session_affinity_ttl_seconds,omitempty"` + + // Defines the Web Application Firewall policy ID for each host. + WebApplicationFirewallPolicyLinkID *string `json:"webApplicationFirewallPolicyLinkId,omitempty" tf:"web_application_firewall_policy_link_id,omitempty"` +} + type FrontendEndpointObservation struct { // Specifies the host name of the frontend_endpoint. Must be a domain name. In order to use a name.azurefd.net domain, the name value must match the Front Door name. @@ -425,12 +587,12 @@ type FrontendEndpointObservation struct { type FrontendEndpointParameters struct { // Specifies the host name of the frontend_endpoint. Must be a domain name. In order to use a name.azurefd.net domain, the name value must match the Front Door name. - // +kubebuilder:validation:Required - HostName *string `json:"hostName" tf:"host_name,omitempty"` + // +kubebuilder:validation:Optional + HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` // Specifies the name of the frontend_endpoint. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Whether to allow session affinity on this host. Valid options are true or false Defaults to false. // +kubebuilder:validation:Optional @@ -445,6 +607,30 @@ type FrontendEndpointParameters struct { WebApplicationFirewallPolicyLinkID *string `json:"webApplicationFirewallPolicyLinkId,omitempty" tf:"web_application_firewall_policy_link_id,omitempty"` } +type RoutingRuleInitParameters struct { + + // Protocol schemes to match for the Backend Routing Rule. Possible values are Http and Https. + AcceptedProtocols []*string `json:"acceptedProtocols,omitempty" tf:"accepted_protocols,omitempty"` + + // Enable or Disable use of this Backend Routing Rule. Permitted values are true or false. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A forwarding_configuration block as defined below. + ForwardingConfiguration []ForwardingConfigurationInitParameters `json:"forwardingConfiguration,omitempty" tf:"forwarding_configuration,omitempty"` + + // The names of the frontend_endpoint blocks within this resource to associate with this routing_rule. + FrontendEndpoints []*string `json:"frontendEndpoints,omitempty" tf:"frontend_endpoints,omitempty"` + + // Specifies the name of the Routing Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The route patterns for the Backend Routing Rule. + PatternsToMatch []*string `json:"patternsToMatch,omitempty" tf:"patterns_to_match,omitempty"` + + // A redirect_configuration block as defined below. + RedirectConfiguration []RoutingRuleRedirectConfigurationInitParameters `json:"redirectConfiguration,omitempty" tf:"redirect_configuration,omitempty"` +} + type RoutingRuleObservation struct { // Protocol schemes to match for the Backend Routing Rule. Possible values are Http and Https. @@ -475,8 +661,8 @@ type RoutingRuleObservation struct { type RoutingRuleParameters struct { // Protocol schemes to match for the Backend Routing Rule. Possible values are Http and Https. - // +kubebuilder:validation:Required - AcceptedProtocols []*string `json:"acceptedProtocols" tf:"accepted_protocols,omitempty"` + // +kubebuilder:validation:Optional + AcceptedProtocols []*string `json:"acceptedProtocols,omitempty" tf:"accepted_protocols,omitempty"` // Enable or Disable use of this Backend Routing Rule. Permitted values are true or false. Defaults to true. // +kubebuilder:validation:Optional @@ -487,22 +673,43 @@ type RoutingRuleParameters struct { ForwardingConfiguration []ForwardingConfigurationParameters `json:"forwardingConfiguration,omitempty" tf:"forwarding_configuration,omitempty"` // The names of the frontend_endpoint blocks within this resource to associate with this routing_rule. - // +kubebuilder:validation:Required - FrontendEndpoints []*string `json:"frontendEndpoints" tf:"frontend_endpoints,omitempty"` + // +kubebuilder:validation:Optional + FrontendEndpoints []*string `json:"frontendEndpoints,omitempty" tf:"frontend_endpoints,omitempty"` // Specifies the name of the Routing Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The route patterns for the Backend Routing Rule. - // +kubebuilder:validation:Required - PatternsToMatch []*string `json:"patternsToMatch" tf:"patterns_to_match,omitempty"` + // +kubebuilder:validation:Optional + PatternsToMatch []*string `json:"patternsToMatch,omitempty" tf:"patterns_to_match,omitempty"` // A redirect_configuration block as defined below. // +kubebuilder:validation:Optional RedirectConfiguration []RoutingRuleRedirectConfigurationParameters `json:"redirectConfiguration,omitempty" tf:"redirect_configuration,omitempty"` } +type RoutingRuleRedirectConfigurationInitParameters struct { + + // The destination fragment in the portion of URL after '#'. Set this to add a fragment to the redirect URL. + CustomFragment *string `json:"customFragment,omitempty" tf:"custom_fragment,omitempty"` + + // Set this to change the URL for the redirection. + CustomHost *string `json:"customHost,omitempty" tf:"custom_host,omitempty"` + + // The path to retain as per the incoming request, or update in the URL for the redirection. + CustomPath *string `json:"customPath,omitempty" tf:"custom_path,omitempty"` + + // Replace any existing query string from the incoming request URL. + CustomQueryString *string `json:"customQueryString,omitempty" tf:"custom_query_string,omitempty"` + + // Protocol to use when redirecting. Valid options are HttpOnly, HttpsOnly, or MatchRequest. + RedirectProtocol *string `json:"redirectProtocol,omitempty" tf:"redirect_protocol,omitempty"` + + // Status code for the redirect. Valida options are Moved, Found, TemporaryRedirect, PermanentRedirect. + RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` +} + type RoutingRuleRedirectConfigurationObservation struct { // The destination fragment in the portion of URL after '#'. Set this to add a fragment to the redirect URL. @@ -543,18 +750,30 @@ type RoutingRuleRedirectConfigurationParameters struct { CustomQueryString *string `json:"customQueryString,omitempty" tf:"custom_query_string,omitempty"` // Protocol to use when redirecting. Valid options are HttpOnly, HttpsOnly, or MatchRequest. - // +kubebuilder:validation:Required - RedirectProtocol *string `json:"redirectProtocol" tf:"redirect_protocol,omitempty"` + // +kubebuilder:validation:Optional + RedirectProtocol *string `json:"redirectProtocol,omitempty" tf:"redirect_protocol,omitempty"` // Status code for the redirect. Valida options are Moved, Found, TemporaryRedirect, PermanentRedirect. - // +kubebuilder:validation:Required - RedirectType *string `json:"redirectType" tf:"redirect_type,omitempty"` + // +kubebuilder:validation:Optional + RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` } // FrontDoorSpec defines the desired state of FrontDoor type FrontDoorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontDoorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontDoorInitParameters `json:"initProvider,omitempty"` } // FrontDoorStatus defines the observed state of FrontDoor. @@ -575,11 +794,11 @@ type FrontDoorStatus struct { type FrontDoor struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPool)",message="backendPool is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPoolHealthProbe)",message="backendPoolHealthProbe is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPoolLoadBalancing)",message="backendPoolLoadBalancing is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendEndpoint)",message="frontendEndpoint is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.routingRule)",message="routingRule is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backendPool) || has(self.initProvider.backendPool)",message="backendPool is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backendPoolHealthProbe) || has(self.initProvider.backendPoolHealthProbe)",message="backendPoolHealthProbe is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backendPoolLoadBalancing) || has(self.initProvider.backendPoolLoadBalancing)",message="backendPoolLoadBalancing is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frontendEndpoint) || has(self.initProvider.frontendEndpoint)",message="frontendEndpoint is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.routingRule) || has(self.initProvider.routingRule)",message="routingRule is a required parameter" Spec FrontDoorSpec `json:"spec"` Status FrontDoorStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_frontdoorcustomhttpsconfiguration_types.go b/apis/network/v1beta1/zz_frontdoorcustomhttpsconfiguration_types.go index f62fe8b78..2ceffc1fc 100755 --- a/apis/network/v1beta1/zz_frontdoorcustomhttpsconfiguration_types.go +++ b/apis/network/v1beta1/zz_frontdoorcustomhttpsconfiguration_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomHTTPSConfigurationInitParameters struct { + + // The name of the Key Vault secret representing the full certificate PFX. + AzureKeyVaultCertificateSecretName *string `json:"azureKeyVaultCertificateSecretName,omitempty" tf:"azure_key_vault_certificate_secret_name,omitempty"` + + // The version of the Key Vault secret representing the full certificate PFX. + AzureKeyVaultCertificateSecretVersion *string `json:"azureKeyVaultCertificateSecretVersion,omitempty" tf:"azure_key_vault_certificate_secret_version,omitempty"` + + // Certificate source to encrypted HTTPS traffic with. Allowed values are FrontDoor or AzureKeyVault. Defaults to FrontDoor. + CertificateSource *string `json:"certificateSource,omitempty" tf:"certificate_source,omitempty"` +} + type CustomHTTPSConfigurationObservation struct { // The name of the Key Vault secret representing the full certificate PFX. @@ -64,6 +76,18 @@ type CustomHTTPSConfigurationParameters struct { CertificateSource *string `json:"certificateSource,omitempty" tf:"certificate_source,omitempty"` } +type FrontdoorCustomHTTPSConfigurationInitParameters struct { + + // A custom_https_configuration block as defined above. + CustomHTTPSConfiguration []CustomHTTPSConfigurationInitParameters `json:"customHttpsConfiguration,omitempty" tf:"custom_https_configuration,omitempty"` + + // Should the HTTPS protocol be enabled for this custom domain associated with the Front Door? + CustomHTTPSProvisioningEnabled *bool `json:"customHttpsProvisioningEnabled,omitempty" tf:"custom_https_provisioning_enabled,omitempty"` + + // The ID of the Front Door Frontend Endpoint which this configuration refers to. Changing this forces a new resource to be created. + FrontendEndpointID *string `json:"frontendEndpointId,omitempty" tf:"frontend_endpoint_id,omitempty"` +} + type FrontdoorCustomHTTPSConfigurationObservation struct { // A custom_https_configuration block as defined above. @@ -98,6 +122,18 @@ type FrontdoorCustomHTTPSConfigurationParameters struct { type FrontdoorCustomHTTPSConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorCustomHTTPSConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorCustomHTTPSConfigurationInitParameters `json:"initProvider,omitempty"` } // FrontdoorCustomHTTPSConfigurationStatus defines the observed state of FrontdoorCustomHTTPSConfiguration. @@ -118,8 +154,8 @@ type FrontdoorCustomHTTPSConfigurationStatus struct { type FrontdoorCustomHTTPSConfiguration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.customHttpsProvisioningEnabled)",message="customHttpsProvisioningEnabled is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendEndpointId)",message="frontendEndpointId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.customHttpsProvisioningEnabled) || has(self.initProvider.customHttpsProvisioningEnabled)",message="customHttpsProvisioningEnabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frontendEndpointId) || has(self.initProvider.frontendEndpointId)",message="frontendEndpointId is a required parameter" Spec FrontdoorCustomHTTPSConfigurationSpec `json:"spec"` Status FrontdoorCustomHTTPSConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_frontdoorfirewallpolicy_types.go b/apis/network/v1beta1/zz_frontdoorfirewallpolicy_types.go index 898b3388a..5363e11bf 100755 --- a/apis/network/v1beta1/zz_frontdoorfirewallpolicy_types.go +++ b/apis/network/v1beta1/zz_frontdoorfirewallpolicy_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomRuleInitParameters struct { + + // The action to perform when the rule is matched. Possible values are Allow, Block, Log, or Redirect. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // Is the rule is enabled or disabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // One or more match_condition block defined below. Can support up to 10 match_condition blocks. + MatchCondition []MatchConditionInitParameters `json:"matchCondition,omitempty" tf:"match_condition,omitempty"` + + // Gets name of the resource that is unique within a policy. This name can be used to access the resource. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority of the rule. Rules with a lower value will be evaluated before rules with a higher value. Defaults to 1. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The rate limit duration in minutes. Defaults to 1. + RateLimitDurationInMinutes *float64 `json:"rateLimitDurationInMinutes,omitempty" tf:"rate_limit_duration_in_minutes,omitempty"` + + // The rate limit threshold. Defaults to 10. + RateLimitThreshold *float64 `json:"rateLimitThreshold,omitempty" tf:"rate_limit_threshold,omitempty"` + + // The type of rule. Possible values are MatchRule or RateLimitRule. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type CustomRuleObservation struct { // The action to perform when the rule is matched. Possible values are Allow, Block, Log, or Redirect. @@ -43,8 +70,8 @@ type CustomRuleObservation struct { type CustomRuleParameters struct { // The action to perform when the rule is matched. Possible values are Allow, Block, Log, or Redirect. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // Is the rule is enabled or disabled? Defaults to true. // +kubebuilder:validation:Optional @@ -55,8 +82,8 @@ type CustomRuleParameters struct { MatchCondition []MatchConditionParameters `json:"matchCondition,omitempty" tf:"match_condition,omitempty"` // Gets name of the resource that is unique within a policy. This name can be used to access the resource. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority of the rule. Rules with a lower value will be evaluated before rules with a higher value. Defaults to 1. // +kubebuilder:validation:Optional @@ -71,8 +98,35 @@ type CustomRuleParameters struct { RateLimitThreshold *float64 `json:"rateLimitThreshold,omitempty" tf:"rate_limit_threshold,omitempty"` // The type of rule. Possible values are MatchRule or RateLimitRule. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type FrontdoorFirewallPolicyInitParameters struct { + + // If a custom_rule block's action type is block, this is the response body. The body must be specified in base64 encoding. + CustomBlockResponseBody *string `json:"customBlockResponseBody,omitempty" tf:"custom_block_response_body,omitempty"` + + // If a custom_rule block's action type is block, this is the response status code. Possible values are 200, 403, 405, 406, or 429. + CustomBlockResponseStatusCode *float64 `json:"customBlockResponseStatusCode,omitempty" tf:"custom_block_response_status_code,omitempty"` + + // One or more custom_rule blocks as defined below. + CustomRule []CustomRuleInitParameters `json:"customRule,omitempty" tf:"custom_rule,omitempty"` + + // Is the policy a enabled state or disabled state. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // One or more managed_rule blocks as defined below. + ManagedRule []ManagedRuleInitParameters `json:"managedRule,omitempty" tf:"managed_rule,omitempty"` + + // The firewall policy mode. Possible values are Detection, Prevention and defaults to Prevention. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // If action type is redirect, this field represents redirect URL for the client. + RedirectURL *string `json:"redirectUrl,omitempty" tf:"redirect_url,omitempty"` + + // A mapping of tags to assign to the Web Application Firewall Policy. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type FrontdoorFirewallPolicyObservation struct { @@ -162,6 +216,18 @@ type FrontdoorFirewallPolicyParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type ManagedRuleExclusionInitParameters struct { + + // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` + + // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` +} + type ManagedRuleExclusionObservation struct { // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. @@ -177,16 +243,31 @@ type ManagedRuleExclusionObservation struct { type ManagedRuleExclusionParameters struct { // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. - // +kubebuilder:validation:Required - MatchVariable *string `json:"matchVariable" tf:"match_variable,omitempty"` + // +kubebuilder:validation:Optional + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. - // +kubebuilder:validation:Required - Selector *string `json:"selector" tf:"selector,omitempty"` + // +kubebuilder:validation:Optional + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` +} + +type ManagedRuleInitParameters struct { + + // One or more exclusion blocks as defined below. + Exclusion []ManagedRuleExclusionInitParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` + + // One or more override blocks as defined below. + Override []OverrideInitParameters `json:"override,omitempty" tf:"override,omitempty"` + + // The name of the managed rule to use with this resource. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The version on the managed rule to use with this resource. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type ManagedRuleObservation struct { @@ -215,12 +296,33 @@ type ManagedRuleParameters struct { Override []OverrideParameters `json:"override,omitempty" tf:"override,omitempty"` // The name of the managed rule to use with this resource. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The version on the managed rule to use with this resource. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type MatchConditionInitParameters struct { + + // Up to 600 possible values to match. Limit is in total across all match_condition blocks and match_values arguments. String value itself can be up to 256 characters long. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` + + // Should the result of the condition be negated. + NegationCondition *bool `json:"negationCondition,omitempty" tf:"negation_condition,omitempty"` + + // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` + + // Up to 5 transforms to apply. Possible values are Lowercase, RemoveNulls, Trim, Uppercase, URLDecode orURLEncode. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } type MatchConditionObservation struct { @@ -247,20 +349,20 @@ type MatchConditionObservation struct { type MatchConditionParameters struct { // Up to 600 possible values to match. Limit is in total across all match_condition blocks and match_values arguments. String value itself can be up to 256 characters long. - // +kubebuilder:validation:Required - MatchValues []*string `json:"matchValues" tf:"match_values,omitempty"` + // +kubebuilder:validation:Optional + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. - // +kubebuilder:validation:Required - MatchVariable *string `json:"matchVariable" tf:"match_variable,omitempty"` + // +kubebuilder:validation:Optional + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // Should the result of the condition be negated. // +kubebuilder:validation:Optional NegationCondition *bool `json:"negationCondition,omitempty" tf:"negation_condition,omitempty"` // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. // +kubebuilder:validation:Optional @@ -271,6 +373,18 @@ type MatchConditionParameters struct { Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type OverrideExclusionInitParameters struct { + + // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` + + // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` +} + type OverrideExclusionObservation struct { // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. @@ -286,16 +400,28 @@ type OverrideExclusionObservation struct { type OverrideExclusionParameters struct { // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. - // +kubebuilder:validation:Required - MatchVariable *string `json:"matchVariable" tf:"match_variable,omitempty"` + // +kubebuilder:validation:Optional + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. - // +kubebuilder:validation:Required - Selector *string `json:"selector" tf:"selector,omitempty"` + // +kubebuilder:validation:Optional + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` +} + +type OverrideInitParameters struct { + + // One or more exclusion blocks as defined below. + Exclusion []OverrideExclusionInitParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` + + // One or more rule blocks as defined below. If none are specified, all of the rules in the group will be disabled. + Rule []OverrideRuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` + + // The managed rule group to override. + RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` } type OverrideObservation struct { @@ -321,8 +447,23 @@ type OverrideParameters struct { Rule []OverrideRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` // The managed rule group to override. - // +kubebuilder:validation:Required - RuleGroupName *string `json:"ruleGroupName" tf:"rule_group_name,omitempty"` + // +kubebuilder:validation:Optional + RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` +} + +type OverrideRuleInitParameters struct { + + // The action to be applied when the rule matches. Possible values are Allow, Block, Log, or Redirect. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // Is the managed rule override enabled or disabled. Defaults to false + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // One or more exclusion blocks as defined below. + Exclusion []RuleExclusionInitParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` + + // Identifier for the managed rule. + RuleID *string `json:"ruleId,omitempty" tf:"rule_id,omitempty"` } type OverrideRuleObservation struct { @@ -343,8 +484,8 @@ type OverrideRuleObservation struct { type OverrideRuleParameters struct { // The action to be applied when the rule matches. Possible values are Allow, Block, Log, or Redirect. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // Is the managed rule override enabled or disabled. Defaults to false // +kubebuilder:validation:Optional @@ -355,8 +496,20 @@ type OverrideRuleParameters struct { Exclusion []RuleExclusionParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` // Identifier for the managed rule. - // +kubebuilder:validation:Required - RuleID *string `json:"ruleId" tf:"rule_id,omitempty"` + // +kubebuilder:validation:Optional + RuleID *string `json:"ruleId,omitempty" tf:"rule_id,omitempty"` +} + +type RuleExclusionInitParameters struct { + + // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` + + // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` } type RuleExclusionObservation struct { @@ -374,22 +527,34 @@ type RuleExclusionObservation struct { type RuleExclusionParameters struct { // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. - // +kubebuilder:validation:Required - MatchVariable *string `json:"matchVariable" tf:"match_variable,omitempty"` + // +kubebuilder:validation:Optional + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. - // +kubebuilder:validation:Required - Selector *string `json:"selector" tf:"selector,omitempty"` + // +kubebuilder:validation:Optional + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` } // FrontdoorFirewallPolicySpec defines the desired state of FrontdoorFirewallPolicy type FrontdoorFirewallPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorFirewallPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorFirewallPolicyInitParameters `json:"initProvider,omitempty"` } // FrontdoorFirewallPolicyStatus defines the observed state of FrontdoorFirewallPolicy. diff --git a/apis/network/v1beta1/zz_frontdoorrulesengine_types.go b/apis/network/v1beta1/zz_frontdoorrulesengine_types.go index aa07f75a6..80496c37b 100755 --- a/apis/network/v1beta1/zz_frontdoorrulesengine_types.go +++ b/apis/network/v1beta1/zz_frontdoorrulesengine_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActionInitParameters struct { + + // A request_header block as defined below. + RequestHeader []RequestHeaderInitParameters `json:"requestHeader,omitempty" tf:"request_header,omitempty"` + + // A response_header block as defined below. + ResponseHeader []ResponseHeaderInitParameters `json:"responseHeader,omitempty" tf:"response_header,omitempty"` +} + type ActionObservation struct { // A request_header block as defined below. @@ -33,6 +42,15 @@ type ActionParameters struct { ResponseHeader []ResponseHeaderParameters `json:"responseHeader,omitempty" tf:"response_header,omitempty"` } +type FrontdoorRulesEngineInitParameters struct { + + // Whether this Rules engine configuration is enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A rule block as defined below. + Rule []FrontdoorRulesEngineRuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + type FrontdoorRulesEngineObservation struct { // Whether this Rules engine configuration is enabled? Defaults to true. @@ -89,6 +107,21 @@ type FrontdoorRulesEngineParameters struct { Rule []FrontdoorRulesEngineRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } +type FrontdoorRulesEngineRuleInitParameters struct { + + // An action block as defined below. + Action []ActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // One or more match_condition block as defined below. + MatchCondition []RuleMatchConditionInitParameters `json:"matchCondition,omitempty" tf:"match_condition,omitempty"` + + // The name of the rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Priority of the rule, must be unique per rules engine definition. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` +} + type FrontdoorRulesEngineRuleObservation struct { // An action block as defined below. @@ -115,12 +148,24 @@ type FrontdoorRulesEngineRuleParameters struct { MatchCondition []RuleMatchConditionParameters `json:"matchCondition,omitempty" tf:"match_condition,omitempty"` // The name of the rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Priority of the rule, must be unique per rules engine definition. - // +kubebuilder:validation:Required - Priority *float64 `json:"priority" tf:"priority,omitempty"` + // +kubebuilder:validation:Optional + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` +} + +type RequestHeaderInitParameters struct { + + // can be set to Overwrite, Append or Delete. + HeaderActionType *string `json:"headerActionType,omitempty" tf:"header_action_type,omitempty"` + + // header name (string). + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + + // value name (string). + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type RequestHeaderObservation struct { @@ -150,6 +195,18 @@ type RequestHeaderParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type ResponseHeaderInitParameters struct { + + // can be set to Overwrite, Append or Delete. + HeaderActionType *string `json:"headerActionType,omitempty" tf:"header_action_type,omitempty"` + + // header name (string). + HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` + + // value name (string). + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ResponseHeaderObservation struct { // can be set to Overwrite, Append or Delete. @@ -177,6 +234,27 @@ type ResponseHeaderParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type RuleMatchConditionInitParameters struct { + + // can be set to true or false to negate the given condition. Defaults to true. + NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` + + // can be set to Any, IPMatch, GeoMatch, Equal, Contains, LessThan, GreaterThan, LessThanOrEqual, GreaterThanOrEqual, BeginsWith or EndsWith + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // match against a specific key when variable is set to PostArgs or RequestHeader. It cannot be used with QueryString and RequestMethod. + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` + + // can be set to one or more values out of Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode and UrlEncode + Transform []*string `json:"transform,omitempty" tf:"transform,omitempty"` + + // value name (string). + Value []*string `json:"value,omitempty" tf:"value,omitempty"` + + // can be set to IsMobile, RemoteAddr, RequestMethod, QueryString, PostArgs, RequestURI, RequestPath, RequestFilename, RequestFilenameExtension,RequestHeader,RequestBody or RequestScheme. + Variable *string `json:"variable,omitempty" tf:"variable,omitempty"` +} + type RuleMatchConditionObservation struct { // can be set to true or false to negate the given condition. Defaults to true. @@ -205,8 +283,8 @@ type RuleMatchConditionParameters struct { NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // can be set to Any, IPMatch, GeoMatch, Equal, Contains, LessThan, GreaterThan, LessThanOrEqual, GreaterThanOrEqual, BeginsWith or EndsWith - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // match against a specific key when variable is set to PostArgs or RequestHeader. It cannot be used with QueryString and RequestMethod. // +kubebuilder:validation:Optional @@ -229,6 +307,18 @@ type RuleMatchConditionParameters struct { type FrontdoorRulesEngineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FrontdoorRulesEngineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FrontdoorRulesEngineInitParameters `json:"initProvider,omitempty"` } // FrontdoorRulesEngineStatus defines the observed state of FrontdoorRulesEngine. diff --git a/apis/network/v1beta1/zz_generated.deepcopy.go b/apis/network/v1beta1/zz_generated.deepcopy.go index 02d86d962..ecc88416b 100644 --- a/apis/network/v1beta1/zz_generated.deepcopy.go +++ b/apis/network/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,35 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionInitParameters) DeepCopyInto(out *ActionInitParameters) { + *out = *in + if in.RequestHeader != nil { + in, out := &in.RequestHeader, &out.RequestHeader + *out = make([]RequestHeaderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ResponseHeader != nil { + in, out := &in.ResponseHeader, &out.ResponseHeader + *out = make([]ResponseHeaderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionInitParameters. +func (in *ActionInitParameters) DeepCopy() *ActionInitParameters { + if in == nil { + return nil + } + out := new(ActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionObservation) DeepCopyInto(out *ActionObservation) { *out = *in @@ -99,6 +128,240 @@ func (in *ApplicationGateway) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationGatewayInitParameters) DeepCopyInto(out *ApplicationGatewayInitParameters) { + *out = *in + if in.AuthenticationCertificate != nil { + in, out := &in.AuthenticationCertificate, &out.AuthenticationCertificate + *out = make([]AuthenticationCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoscaleConfiguration != nil { + in, out := &in.AutoscaleConfiguration, &out.AutoscaleConfiguration + *out = make([]AutoscaleConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BackendAddressPool != nil { + in, out := &in.BackendAddressPool, &out.BackendAddressPool + *out = make([]BackendAddressPoolInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BackendHTTPSettings != nil { + in, out := &in.BackendHTTPSettings, &out.BackendHTTPSettings + *out = make([]BackendHTTPSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomErrorConfiguration != nil { + in, out := &in.CustomErrorConfiguration, &out.CustomErrorConfiguration + *out = make([]CustomErrorConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EnableHttp2 != nil { + in, out := &in.EnableHttp2, &out.EnableHttp2 + *out = new(bool) + **out = **in + } + if in.FipsEnabled != nil { + in, out := &in.FipsEnabled, &out.FipsEnabled + *out = new(bool) + **out = **in + } + if in.FirewallPolicyID != nil { + in, out := &in.FirewallPolicyID, &out.FirewallPolicyID + *out = new(string) + **out = **in + } + if in.ForceFirewallPolicyAssociation != nil { + in, out := &in.ForceFirewallPolicyAssociation, &out.ForceFirewallPolicyAssociation + *out = new(bool) + **out = **in + } + if in.FrontendIPConfiguration != nil { + in, out := &in.FrontendIPConfiguration, &out.FrontendIPConfiguration + *out = make([]FrontendIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FrontendPort != nil { + in, out := &in.FrontendPort, &out.FrontendPort + *out = make([]FrontendPortInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GatewayIPConfiguration != nil { + in, out := &in.GatewayIPConfiguration, &out.GatewayIPConfiguration + *out = make([]GatewayIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Global != nil { + in, out := &in.Global, &out.Global + *out = make([]GlobalInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPListener != nil { + in, out := &in.HTTPListener, &out.HTTPListener + *out = make([]HTTPListenerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PrivateLinkConfiguration != nil { + in, out := &in.PrivateLinkConfiguration, &out.PrivateLinkConfiguration + *out = make([]PrivateLinkConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Probe != nil { + in, out := &in.Probe, &out.Probe + *out = make([]ProbeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RedirectConfiguration != nil { + in, out := &in.RedirectConfiguration, &out.RedirectConfiguration + *out = make([]RedirectConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequestRoutingRule != nil { + in, out := &in.RequestRoutingRule, &out.RequestRoutingRule + *out = make([]RequestRoutingRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RewriteRuleSet != nil { + in, out := &in.RewriteRuleSet, &out.RewriteRuleSet + *out = make([]RewriteRuleSetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSLCertificate != nil { + in, out := &in.SSLCertificate, &out.SSLCertificate + *out = make([]SSLCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSLPolicy != nil { + in, out := &in.SSLPolicy, &out.SSLPolicy + *out = make([]SSLPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSLProfile != nil { + in, out := &in.SSLProfile, &out.SSLProfile + *out = make([]SSLProfileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = make([]SkuInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TrustedClientCertificate != nil { + in, out := &in.TrustedClientCertificate, &out.TrustedClientCertificate + *out = make([]TrustedClientCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TrustedRootCertificate != nil { + in, out := &in.TrustedRootCertificate, &out.TrustedRootCertificate + *out = make([]TrustedRootCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.URLPathMap != nil { + in, out := &in.URLPathMap, &out.URLPathMap + *out = make([]URLPathMapInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WafConfiguration != nil { + in, out := &in.WafConfiguration, &out.WafConfiguration + *out = make([]WafConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationGatewayInitParameters. +func (in *ApplicationGatewayInitParameters) DeepCopy() *ApplicationGatewayInitParameters { + if in == nil { + return nil + } + out := new(ApplicationGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationGatewayList) DeepCopyInto(out *ApplicationGatewayList) { *out = *in @@ -636,6 +899,7 @@ func (in *ApplicationGatewaySpec) DeepCopyInto(out *ApplicationGatewaySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationGatewaySpec. @@ -665,6 +929,43 @@ func (in *ApplicationGatewayStatus) DeepCopy() *ApplicationGatewayStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationRuleCollectionInitParameters) DeepCopyInto(out *ApplicationRuleCollectionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]ApplicationRuleCollectionRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationRuleCollectionInitParameters. +func (in *ApplicationRuleCollectionInitParameters) DeepCopy() *ApplicationRuleCollectionInitParameters { + if in == nil { + return nil + } + out := new(ApplicationRuleCollectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationRuleCollectionObservation) DeepCopyInto(out *ApplicationRuleCollectionObservation) { *out = *in @@ -739,6 +1040,120 @@ func (in *ApplicationRuleCollectionParameters) DeepCopy() *ApplicationRuleCollec return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationRuleCollectionRuleInitParameters) DeepCopyInto(out *ApplicationRuleCollectionRuleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DestinationAddresses != nil { + in, out := &in.DestinationAddresses, &out.DestinationAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationFqdnTags != nil { + in, out := &in.DestinationFqdnTags, &out.DestinationFqdnTags + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationFqdns != nil { + in, out := &in.DestinationFqdns, &out.DestinationFqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationUrls != nil { + in, out := &in.DestinationUrls, &out.DestinationUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Protocols != nil { + in, out := &in.Protocols, &out.Protocols + *out = make([]ProtocolsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceAddresses != nil { + in, out := &in.SourceAddresses, &out.SourceAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceIPGroups != nil { + in, out := &in.SourceIPGroups, &out.SourceIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TerminateTLS != nil { + in, out := &in.TerminateTLS, &out.TerminateTLS + *out = new(bool) + **out = **in + } + if in.WebCategories != nil { + in, out := &in.WebCategories, &out.WebCategories + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationRuleCollectionRuleInitParameters. +func (in *ApplicationRuleCollectionRuleInitParameters) DeepCopy() *ApplicationRuleCollectionRuleInitParameters { + if in == nil { + return nil + } + out := new(ApplicationRuleCollectionRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationRuleCollectionRuleObservation) DeepCopyInto(out *ApplicationRuleCollectionRuleObservation) { *out = *in @@ -994,6 +1409,41 @@ func (in *ApplicationSecurityGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationSecurityGroupInitParameters) DeepCopyInto(out *ApplicationSecurityGroupInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationSecurityGroupInitParameters. +func (in *ApplicationSecurityGroupInitParameters) DeepCopy() *ApplicationSecurityGroupInitParameters { + if in == nil { + return nil + } + out := new(ApplicationSecurityGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationSecurityGroupList) DeepCopyInto(out *ApplicationSecurityGroupList) { *out = *in @@ -1126,6 +1576,7 @@ func (in *ApplicationSecurityGroupSpec) DeepCopyInto(out *ApplicationSecurityGro *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationSecurityGroupSpec. @@ -1155,6 +1606,26 @@ func (in *ApplicationSecurityGroupStatus) DeepCopy() *ApplicationSecurityGroupSt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthenticationCertificateInitParameters) DeepCopyInto(out *AuthenticationCertificateInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationCertificateInitParameters. +func (in *AuthenticationCertificateInitParameters) DeepCopy() *AuthenticationCertificateInitParameters { + if in == nil { + return nil + } + out := new(AuthenticationCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthenticationCertificateObservation) DeepCopyInto(out *AuthenticationCertificateObservation) { *out = *in @@ -1201,6 +1672,31 @@ func (in *AuthenticationCertificateParameters) DeepCopy() *AuthenticationCertifi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoscaleConfigurationInitParameters) DeepCopyInto(out *AutoscaleConfigurationInitParameters) { + *out = *in + if in.MaxCapacity != nil { + in, out := &in.MaxCapacity, &out.MaxCapacity + *out = new(float64) + **out = **in + } + if in.MinCapacity != nil { + in, out := &in.MinCapacity, &out.MinCapacity + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscaleConfigurationInitParameters. +func (in *AutoscaleConfigurationInitParameters) DeepCopy() *AutoscaleConfigurationInitParameters { + if in == nil { + return nil + } + out := new(AutoscaleConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoscaleConfigurationObservation) DeepCopyInto(out *AutoscaleConfigurationObservation) { *out = *in @@ -1251,6 +1747,36 @@ func (in *AutoscaleConfigurationParameters) DeepCopy() *AutoscaleConfigurationPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureActiveDirectoryAuthenticationInitParameters) DeepCopyInto(out *AzureActiveDirectoryAuthenticationInitParameters) { + *out = *in + if in.Audience != nil { + in, out := &in.Audience, &out.Audience + *out = new(string) + **out = **in + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Tenant != nil { + in, out := &in.Tenant, &out.Tenant + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectoryAuthenticationInitParameters. +func (in *AzureActiveDirectoryAuthenticationInitParameters) DeepCopy() *AzureActiveDirectoryAuthenticationInitParameters { + if in == nil { + return nil + } + out := new(AzureActiveDirectoryAuthenticationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureActiveDirectoryAuthenticationObservation) DeepCopyInto(out *AzureActiveDirectoryAuthenticationObservation) { *out = *in @@ -1311,6 +1837,31 @@ func (in *AzureActiveDirectoryAuthenticationParameters) DeepCopy() *AzureActiveD return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BGPInitParameters) DeepCopyInto(out *BGPInitParameters) { + *out = *in + if in.Asn != nil { + in, out := &in.Asn, &out.Asn + *out = new(float64) + **out = **in + } + if in.PeeringAddress != nil { + in, out := &in.PeeringAddress, &out.PeeringAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BGPInitParameters. +func (in *BGPInitParameters) DeepCopy() *BGPInitParameters { + if in == nil { + return nil + } + out := new(BGPInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BGPObservation) DeepCopyInto(out *BGPObservation) { *out = *in @@ -1362,7 +1913,7 @@ func (in *BGPParameters) DeepCopy() *BGPParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BGPSettingsObservation) DeepCopyInto(out *BGPSettingsObservation) { +func (in *BGPSettingsInitParameters) DeepCopyInto(out *BGPSettingsInitParameters) { *out = *in if in.Asn != nil { in, out := &in.Asn, &out.Asn @@ -1381,18 +1932,18 @@ func (in *BGPSettingsObservation) DeepCopyInto(out *BGPSettingsObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BGPSettingsObservation. -func (in *BGPSettingsObservation) DeepCopy() *BGPSettingsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BGPSettingsInitParameters. +func (in *BGPSettingsInitParameters) DeepCopy() *BGPSettingsInitParameters { if in == nil { return nil } - out := new(BGPSettingsObservation) + out := new(BGPSettingsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BGPSettingsParameters) DeepCopyInto(out *BGPSettingsParameters) { +func (in *BGPSettingsObservation) DeepCopyInto(out *BGPSettingsObservation) { *out = *in if in.Asn != nil { in, out := &in.Asn, &out.Asn @@ -1411,65 +1962,137 @@ func (in *BGPSettingsParameters) DeepCopyInto(out *BGPSettingsParameters) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BGPSettingsParameters. -func (in *BGPSettingsParameters) DeepCopy() *BGPSettingsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BGPSettingsObservation. +func (in *BGPSettingsObservation) DeepCopy() *BGPSettingsObservation { if in == nil { return nil } - out := new(BGPSettingsParameters) + out := new(BGPSettingsObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BackendAddressPoolObservation) DeepCopyInto(out *BackendAddressPoolObservation) { +func (in *BGPSettingsParameters) DeepCopyInto(out *BGPSettingsParameters) { *out = *in - if in.Fqdns != nil { - in, out := &in.Fqdns, &out.Fqdns - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.Asn != nil { + in, out := &in.Asn, &out.Asn + *out = new(float64) + **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID + if in.BGPPeeringAddress != nil { + in, out := &in.BGPPeeringAddress, &out.BGPPeeringAddress *out = new(string) **out = **in } - if in.IPAddresses != nil { - in, out := &in.IPAddresses, &out.IPAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) + if in.PeerWeight != nil { + in, out := &in.PeerWeight, &out.PeerWeight + *out = new(float64) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendAddressPoolObservation. -func (in *BackendAddressPoolObservation) DeepCopy() *BackendAddressPoolObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BGPSettingsParameters. +func (in *BGPSettingsParameters) DeepCopy() *BGPSettingsParameters { if in == nil { return nil } - out := new(BackendAddressPoolObservation) + out := new(BGPSettingsParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BackendAddressPoolParameters) DeepCopyInto(out *BackendAddressPoolParameters) { +func (in *BackendAddressPoolInitParameters) DeepCopyInto(out *BackendAddressPoolInitParameters) { + *out = *in + if in.Fqdns != nil { + in, out := &in.Fqdns, &out.Fqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IPAddresses != nil { + in, out := &in.IPAddresses, &out.IPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendAddressPoolInitParameters. +func (in *BackendAddressPoolInitParameters) DeepCopy() *BackendAddressPoolInitParameters { + if in == nil { + return nil + } + out := new(BackendAddressPoolInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendAddressPoolObservation) DeepCopyInto(out *BackendAddressPoolObservation) { + *out = *in + if in.Fqdns != nil { + in, out := &in.Fqdns, &out.Fqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.IPAddresses != nil { + in, out := &in.IPAddresses, &out.IPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendAddressPoolObservation. +func (in *BackendAddressPoolObservation) DeepCopy() *BackendAddressPoolObservation { + if in == nil { + return nil + } + out := new(BackendAddressPoolObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendAddressPoolParameters) DeepCopyInto(out *BackendAddressPoolParameters) { *out = *in if in.Fqdns != nil { in, out := &in.Fqdns, &out.Fqdns @@ -1510,6 +2133,26 @@ func (in *BackendAddressPoolParameters) DeepCopy() *BackendAddressPoolParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendHTTPSettingsAuthenticationCertificateInitParameters) DeepCopyInto(out *BackendHTTPSettingsAuthenticationCertificateInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendHTTPSettingsAuthenticationCertificateInitParameters. +func (in *BackendHTTPSettingsAuthenticationCertificateInitParameters) DeepCopy() *BackendHTTPSettingsAuthenticationCertificateInitParameters { + if in == nil { + return nil + } + out := new(BackendHTTPSettingsAuthenticationCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendHTTPSettingsAuthenticationCertificateObservation) DeepCopyInto(out *BackendHTTPSettingsAuthenticationCertificateObservation) { *out = *in @@ -1555,6 +2198,96 @@ func (in *BackendHTTPSettingsAuthenticationCertificateParameters) DeepCopy() *Ba return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendHTTPSettingsInitParameters) DeepCopyInto(out *BackendHTTPSettingsInitParameters) { + *out = *in + if in.AffinityCookieName != nil { + in, out := &in.AffinityCookieName, &out.AffinityCookieName + *out = new(string) + **out = **in + } + if in.AuthenticationCertificate != nil { + in, out := &in.AuthenticationCertificate, &out.AuthenticationCertificate + *out = make([]BackendHTTPSettingsAuthenticationCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConnectionDraining != nil { + in, out := &in.ConnectionDraining, &out.ConnectionDraining + *out = make([]ConnectionDrainingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CookieBasedAffinity != nil { + in, out := &in.CookieBasedAffinity, &out.CookieBasedAffinity + *out = new(string) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.PickHostNameFromBackendAddress != nil { + in, out := &in.PickHostNameFromBackendAddress, &out.PickHostNameFromBackendAddress + *out = new(bool) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.ProbeName != nil { + in, out := &in.ProbeName, &out.ProbeName + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.RequestTimeout != nil { + in, out := &in.RequestTimeout, &out.RequestTimeout + *out = new(float64) + **out = **in + } + if in.TrustedRootCertificateNames != nil { + in, out := &in.TrustedRootCertificateNames, &out.TrustedRootCertificateNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendHTTPSettingsInitParameters. +func (in *BackendHTTPSettingsInitParameters) DeepCopy() *BackendHTTPSettingsInitParameters { + if in == nil { + return nil + } + out := new(BackendHTTPSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendHTTPSettingsObservation) DeepCopyInto(out *BackendHTTPSettingsObservation) { *out = *in @@ -1745,6 +2478,56 @@ func (in *BackendHTTPSettingsParameters) DeepCopy() *BackendHTTPSettingsParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendInitParameters) DeepCopyInto(out *BackendInitParameters) { + *out = *in + if in.Address != nil { + in, out := &in.Address, &out.Address + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPPort != nil { + in, out := &in.HTTPPort, &out.HTTPPort + *out = new(float64) + **out = **in + } + if in.HTTPSPort != nil { + in, out := &in.HTTPSPort, &out.HTTPSPort + *out = new(float64) + **out = **in + } + if in.HostHeader != nil { + in, out := &in.HostHeader, &out.HostHeader + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Weight != nil { + in, out := &in.Weight, &out.Weight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendInitParameters. +func (in *BackendInitParameters) DeepCopy() *BackendInitParameters { + if in == nil { + return nil + } + out := new(BackendInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendObservation) DeepCopyInto(out *BackendObservation) { *out = *in @@ -1845,6 +2628,51 @@ func (in *BackendParameters) DeepCopy() *BackendParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendPoolHealthProbeInitParameters) DeepCopyInto(out *BackendPoolHealthProbeInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.IntervalInSeconds != nil { + in, out := &in.IntervalInSeconds, &out.IntervalInSeconds + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.ProbeMethod != nil { + in, out := &in.ProbeMethod, &out.ProbeMethod + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendPoolHealthProbeInitParameters. +func (in *BackendPoolHealthProbeInitParameters) DeepCopy() *BackendPoolHealthProbeInitParameters { + if in == nil { + return nil + } + out := new(BackendPoolHealthProbeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendPoolHealthProbeObservation) DeepCopyInto(out *BackendPoolHealthProbeObservation) { *out = *in @@ -1940,6 +2768,78 @@ func (in *BackendPoolHealthProbeParameters) DeepCopy() *BackendPoolHealthProbePa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendPoolInitParameters) DeepCopyInto(out *BackendPoolInitParameters) { + *out = *in + if in.Backend != nil { + in, out := &in.Backend, &out.Backend + *out = make([]BackendInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HealthProbeName != nil { + in, out := &in.HealthProbeName, &out.HealthProbeName + *out = new(string) + **out = **in + } + if in.LoadBalancingName != nil { + in, out := &in.LoadBalancingName, &out.LoadBalancingName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendPoolInitParameters. +func (in *BackendPoolInitParameters) DeepCopy() *BackendPoolInitParameters { + if in == nil { + return nil + } + out := new(BackendPoolInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendPoolLoadBalancingInitParameters) DeepCopyInto(out *BackendPoolLoadBalancingInitParameters) { + *out = *in + if in.AdditionalLatencyMilliseconds != nil { + in, out := &in.AdditionalLatencyMilliseconds, &out.AdditionalLatencyMilliseconds + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SampleSize != nil { + in, out := &in.SampleSize, &out.SampleSize + *out = new(float64) + **out = **in + } + if in.SuccessfulSamplesRequired != nil { + in, out := &in.SuccessfulSamplesRequired, &out.SuccessfulSamplesRequired + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendPoolLoadBalancingInitParameters. +func (in *BackendPoolLoadBalancingInitParameters) DeepCopy() *BackendPoolLoadBalancingInitParameters { + if in == nil { + return nil + } + out := new(BackendPoolLoadBalancingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendPoolLoadBalancingObservation) DeepCopyInto(out *BackendPoolLoadBalancingObservation) { *out = *in @@ -2094,6 +2994,31 @@ func (in *BackendPoolParameters) DeepCopy() *BackendPoolParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackendPoolSettingsInitParameters) DeepCopyInto(out *BackendPoolSettingsInitParameters) { + *out = *in + if in.BackendPoolsSendReceiveTimeoutSeconds != nil { + in, out := &in.BackendPoolsSendReceiveTimeoutSeconds, &out.BackendPoolsSendReceiveTimeoutSeconds + *out = new(float64) + **out = **in + } + if in.EnforceBackendPoolsCertificateNameCheck != nil { + in, out := &in.EnforceBackendPoolsCertificateNameCheck, &out.EnforceBackendPoolsCertificateNameCheck + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendPoolSettingsInitParameters. +func (in *BackendPoolSettingsInitParameters) DeepCopy() *BackendPoolSettingsInitParameters { + if in == nil { + return nil + } + out := new(BackendPoolSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackendPoolSettingsObservation) DeepCopyInto(out *BackendPoolSettingsObservation) { *out = *in @@ -2144,6 +3069,31 @@ func (in *BackendPoolSettingsParameters) DeepCopy() *BackendPoolSettingsParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClientRevokedCertificateInitParameters) DeepCopyInto(out *ClientRevokedCertificateInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientRevokedCertificateInitParameters. +func (in *ClientRevokedCertificateInitParameters) DeepCopy() *ClientRevokedCertificateInitParameters { + if in == nil { + return nil + } + out := new(ClientRevokedCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClientRevokedCertificateObservation) DeepCopyInto(out *ClientRevokedCertificateObservation) { *out = *in @@ -2194,6 +3144,31 @@ func (in *ClientRevokedCertificateParameters) DeepCopy() *ClientRevokedCertifica return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClientRootCertificateInitParameters) DeepCopyInto(out *ClientRootCertificateInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublicCertData != nil { + in, out := &in.PublicCertData, &out.PublicCertData + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientRootCertificateInitParameters. +func (in *ClientRootCertificateInitParameters) DeepCopy() *ClientRootCertificateInitParameters { + if in == nil { + return nil + } + out := new(ClientRootCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClientRootCertificateObservation) DeepCopyInto(out *ClientRootCertificateObservation) { *out = *in @@ -2244,6 +3219,41 @@ func (in *ClientRootCertificateParameters) DeepCopy() *ClientRootCertificatePara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionInitParameters) DeepCopyInto(out *ConditionInitParameters) { + *out = *in + if in.IgnoreCase != nil { + in, out := &in.IgnoreCase, &out.IgnoreCase + *out = new(bool) + **out = **in + } + if in.Negate != nil { + in, out := &in.Negate, &out.Negate + *out = new(bool) + **out = **in + } + if in.Pattern != nil { + in, out := &in.Pattern, &out.Pattern + *out = new(string) + **out = **in + } + if in.Variable != nil { + in, out := &in.Variable, &out.Variable + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionInitParameters. +func (in *ConditionInitParameters) DeepCopy() *ConditionInitParameters { + if in == nil { + return nil + } + out := new(ConditionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConditionObservation) DeepCopyInto(out *ConditionObservation) { *out = *in @@ -2314,6 +3324,45 @@ func (in *ConditionParameters) DeepCopy() *ConditionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConnectionConfigurationInitParameters) DeepCopyInto(out *ConnectionConfigurationInitParameters) { + *out = *in + if in.InternetSecurityEnabled != nil { + in, out := &in.InternetSecurityEnabled, &out.InternetSecurityEnabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Route != nil { + in, out := &in.Route, &out.Route + *out = make([]RouteInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VPNClientAddressPool != nil { + in, out := &in.VPNClientAddressPool, &out.VPNClientAddressPool + *out = make([]VPNClientAddressPoolInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionConfigurationInitParameters. +func (in *ConnectionConfigurationInitParameters) DeepCopy() *ConnectionConfigurationInitParameters { + if in == nil { + return nil + } + out := new(ConnectionConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConnectionConfigurationObservation) DeepCopyInto(out *ConnectionConfigurationObservation) { *out = *in @@ -2392,6 +3441,31 @@ func (in *ConnectionConfigurationParameters) DeepCopy() *ConnectionConfiguration return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConnectionDrainingInitParameters) DeepCopyInto(out *ConnectionDrainingInitParameters) { + *out = *in + if in.DrainTimeoutSec != nil { + in, out := &in.DrainTimeoutSec, &out.DrainTimeoutSec + *out = new(float64) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionDrainingInitParameters. +func (in *ConnectionDrainingInitParameters) DeepCopy() *ConnectionDrainingInitParameters { + if in == nil { + return nil + } + out := new(ConnectionDrainingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConnectionDrainingObservation) DeepCopyInto(out *ConnectionDrainingObservation) { *out = *in @@ -2469,6 +3543,78 @@ func (in *ConnectionMonitor) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConnectionMonitorInitParameters) DeepCopyInto(out *ConnectionMonitorInitParameters) { + *out = *in + if in.Endpoint != nil { + in, out := &in.Endpoint, &out.Endpoint + *out = make([]EndpointInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Notes != nil { + in, out := &in.Notes, &out.Notes + *out = new(string) + **out = **in + } + if in.OutputWorkspaceResourceIds != nil { + in, out := &in.OutputWorkspaceResourceIds, &out.OutputWorkspaceResourceIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TestConfiguration != nil { + in, out := &in.TestConfiguration, &out.TestConfiguration + *out = make([]TestConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TestGroup != nil { + in, out := &in.TestGroup, &out.TestGroup + *out = make([]TestGroupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionMonitorInitParameters. +func (in *ConnectionMonitorInitParameters) DeepCopy() *ConnectionMonitorInitParameters { + if in == nil { + return nil + } + out := new(ConnectionMonitorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConnectionMonitorList) DeepCopyInto(out *ConnectionMonitorList) { *out = *in @@ -2675,6 +3821,7 @@ func (in *ConnectionMonitorSpec) DeepCopyInto(out *ConnectionMonitorSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionMonitorSpec. @@ -2704,6 +3851,26 @@ func (in *ConnectionMonitorStatus) DeepCopy() *ConnectionMonitorStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerNetworkInterfaceIPConfigurationInitParameters) DeepCopyInto(out *ContainerNetworkInterfaceIPConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerNetworkInterfaceIPConfigurationInitParameters. +func (in *ContainerNetworkInterfaceIPConfigurationInitParameters) DeepCopy() *ContainerNetworkInterfaceIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(ContainerNetworkInterfaceIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContainerNetworkInterfaceIPConfigurationObservation) DeepCopyInto(out *ContainerNetworkInterfaceIPConfigurationObservation) { *out = *in @@ -2764,6 +3931,33 @@ func (in *ContainerNetworkInterfaceIPConfigurationParameters) DeepCopy() *Contai return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerNetworkInterfaceInitParameters) DeepCopyInto(out *ContainerNetworkInterfaceInitParameters) { + *out = *in + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]ContainerNetworkInterfaceIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerNetworkInterfaceInitParameters. +func (in *ContainerNetworkInterfaceInitParameters) DeepCopy() *ContainerNetworkInterfaceInitParameters { + if in == nil { + return nil + } + out := new(ContainerNetworkInterfaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContainerNetworkInterfaceObservation) DeepCopyInto(out *ContainerNetworkInterfaceObservation) { *out = *in @@ -2818,6 +4012,21 @@ func (in *ContainerNetworkInterfaceParameters) DeepCopy() *ContainerNetworkInter return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CrossTenantScopesInitParameters) DeepCopyInto(out *CrossTenantScopesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CrossTenantScopesInitParameters. +func (in *CrossTenantScopesInitParameters) DeepCopy() *CrossTenantScopesInitParameters { + if in == nil { + return nil + } + out := new(CrossTenantScopesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CrossTenantScopesObservation) DeepCopyInto(out *CrossTenantScopesObservation) { *out = *in @@ -2875,6 +4084,31 @@ func (in *CrossTenantScopesParameters) DeepCopy() *CrossTenantScopesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomBGPAddressInitParameters) DeepCopyInto(out *CustomBGPAddressInitParameters) { + *out = *in + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.IPConfigurationID != nil { + in, out := &in.IPConfigurationID, &out.IPConfigurationID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomBGPAddressInitParameters. +func (in *CustomBGPAddressInitParameters) DeepCopy() *CustomBGPAddressInitParameters { + if in == nil { + return nil + } + out := new(CustomBGPAddressInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomBGPAddressObservation) DeepCopyInto(out *CustomBGPAddressObservation) { *out = *in @@ -2925,6 +4159,31 @@ func (in *CustomBGPAddressParameters) DeepCopy() *CustomBGPAddressParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomBGPAddressesInitParameters) DeepCopyInto(out *CustomBGPAddressesInitParameters) { + *out = *in + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(string) + **out = **in + } + if in.Secondary != nil { + in, out := &in.Secondary, &out.Secondary + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomBGPAddressesInitParameters. +func (in *CustomBGPAddressesInitParameters) DeepCopy() *CustomBGPAddressesInitParameters { + if in == nil { + return nil + } + out := new(CustomBGPAddressesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomBGPAddressesObservation) DeepCopyInto(out *CustomBGPAddressesObservation) { *out = *in @@ -2975,6 +4234,21 @@ func (in *CustomBGPAddressesParameters) DeepCopy() *CustomBGPAddressesParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomDNSConfigsInitParameters) DeepCopyInto(out *CustomDNSConfigsInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDNSConfigsInitParameters. +func (in *CustomDNSConfigsInitParameters) DeepCopy() *CustomDNSConfigsInitParameters { + if in == nil { + return nil + } + out := new(CustomDNSConfigsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomDNSConfigsObservation) DeepCopyInto(out *CustomDNSConfigsObservation) { *out = *in @@ -3021,6 +4295,31 @@ func (in *CustomDNSConfigsParameters) DeepCopy() *CustomDNSConfigsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomErrorConfigurationInitParameters) DeepCopyInto(out *CustomErrorConfigurationInitParameters) { + *out = *in + if in.CustomErrorPageURL != nil { + in, out := &in.CustomErrorPageURL, &out.CustomErrorPageURL + *out = new(string) + **out = **in + } + if in.StatusCode != nil { + in, out := &in.StatusCode, &out.StatusCode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomErrorConfigurationInitParameters. +func (in *CustomErrorConfigurationInitParameters) DeepCopy() *CustomErrorConfigurationInitParameters { + if in == nil { + return nil + } + out := new(CustomErrorConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomErrorConfigurationObservation) DeepCopyInto(out *CustomErrorConfigurationObservation) { *out = *in @@ -3076,6 +4375,36 @@ func (in *CustomErrorConfigurationParameters) DeepCopy() *CustomErrorConfigurati return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomHTTPSConfigurationInitParameters) DeepCopyInto(out *CustomHTTPSConfigurationInitParameters) { + *out = *in + if in.AzureKeyVaultCertificateSecretName != nil { + in, out := &in.AzureKeyVaultCertificateSecretName, &out.AzureKeyVaultCertificateSecretName + *out = new(string) + **out = **in + } + if in.AzureKeyVaultCertificateSecretVersion != nil { + in, out := &in.AzureKeyVaultCertificateSecretVersion, &out.AzureKeyVaultCertificateSecretVersion + *out = new(string) + **out = **in + } + if in.CertificateSource != nil { + in, out := &in.CertificateSource, &out.CertificateSource + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomHTTPSConfigurationInitParameters. +func (in *CustomHTTPSConfigurationInitParameters) DeepCopy() *CustomHTTPSConfigurationInitParameters { + if in == nil { + return nil + } + out := new(CustomHTTPSConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomHTTPSConfigurationObservation) DeepCopyInto(out *CustomHTTPSConfigurationObservation) { *out = *in @@ -3171,6 +4500,31 @@ func (in *CustomHTTPSConfigurationParameters) DeepCopy() *CustomHTTPSConfigurati return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomHeaderInitParameters) DeepCopyInto(out *CustomHeaderInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomHeaderInitParameters. +func (in *CustomHeaderInitParameters) DeepCopy() *CustomHeaderInitParameters { + if in == nil { + return nil + } + out := new(CustomHeaderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomHeaderObservation) DeepCopyInto(out *CustomHeaderObservation) { *out = *in @@ -3221,6 +4575,32 @@ func (in *CustomHeaderParameters) DeepCopy() *CustomHeaderParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomRouteInitParameters) DeepCopyInto(out *CustomRouteInitParameters) { + *out = *in + if in.AddressPrefixes != nil { + in, out := &in.AddressPrefixes, &out.AddressPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomRouteInitParameters. +func (in *CustomRouteInitParameters) DeepCopy() *CustomRouteInitParameters { + if in == nil { + return nil + } + out := new(CustomRouteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomRouteObservation) DeepCopyInto(out *CustomRouteObservation) { *out = *in @@ -3273,6 +4653,63 @@ func (in *CustomRouteParameters) DeepCopy() *CustomRouteParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomRuleInitParameters) DeepCopyInto(out *CustomRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.MatchCondition != nil { + in, out := &in.MatchCondition, &out.MatchCondition + *out = make([]MatchConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.RateLimitDurationInMinutes != nil { + in, out := &in.RateLimitDurationInMinutes, &out.RateLimitDurationInMinutes + *out = new(float64) + **out = **in + } + if in.RateLimitThreshold != nil { + in, out := &in.RateLimitThreshold, &out.RateLimitThreshold + *out = new(float64) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomRuleInitParameters. +func (in *CustomRuleInitParameters) DeepCopy() *CustomRuleInitParameters { + if in == nil { + return nil + } + out := new(CustomRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomRuleObservation) DeepCopyInto(out *CustomRuleObservation) { *out = *in @@ -3387,6 +4824,48 @@ func (in *CustomRuleParameters) DeepCopy() *CustomRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomRulesInitParameters) DeepCopyInto(out *CustomRulesInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.MatchConditions != nil { + in, out := &in.MatchConditions, &out.MatchConditions + *out = make([]MatchConditionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.RuleType != nil { + in, out := &in.RuleType, &out.RuleType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomRulesInitParameters. +func (in *CustomRulesInitParameters) DeepCopy() *CustomRulesInitParameters { + if in == nil { + return nil + } + out := new(CustomRulesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomRulesObservation) DeepCopyInto(out *CustomRulesObservation) { *out = *in @@ -3471,6 +4950,31 @@ func (in *CustomRulesParameters) DeepCopy() *CustomRulesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DDOSProtectionPlanInitParameters) DeepCopyInto(out *DDOSProtectionPlanInitParameters) { + *out = *in + if in.Enable != nil { + in, out := &in.Enable, &out.Enable + *out = new(bool) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DDOSProtectionPlanInitParameters. +func (in *DDOSProtectionPlanInitParameters) DeepCopy() *DDOSProtectionPlanInitParameters { + if in == nil { + return nil + } + out := new(DDOSProtectionPlanInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DDOSProtectionPlanObservation) DeepCopyInto(out *DDOSProtectionPlanObservation) { *out = *in @@ -3548,6 +5052,41 @@ func (in *DDoSProtectionPlan) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DDoSProtectionPlanInitParameters) DeepCopyInto(out *DDoSProtectionPlanInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DDoSProtectionPlanInitParameters. +func (in *DDoSProtectionPlanInitParameters) DeepCopy() *DDoSProtectionPlanInitParameters { + if in == nil { + return nil + } + out := new(DDoSProtectionPlanInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DDoSProtectionPlanList) DeepCopyInto(out *DDoSProtectionPlanList) { *out = *in @@ -3691,6 +5230,7 @@ func (in *DDoSProtectionPlanSpec) DeepCopyInto(out *DDoSProtectionPlanSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DDoSProtectionPlanSpec. @@ -3747,6 +5287,52 @@ func (in *DNSAAAARecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSAAAARecordInitParameters) DeepCopyInto(out *DNSAAAARecordInitParameters) { + *out = *in + if in.Records != nil { + in, out := &in.Records, &out.Records + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSAAAARecordInitParameters. +func (in *DNSAAAARecordInitParameters) DeepCopy() *DNSAAAARecordInitParameters { + if in == nil { + return nil + } + out := new(DNSAAAARecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSAAAARecordList) DeepCopyInto(out *DNSAAAARecordList) { *out = *in @@ -3946,6 +5532,7 @@ func (in *DNSAAAARecordSpec) DeepCopyInto(out *DNSAAAARecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSAAAARecordSpec. @@ -4002,6 +5589,52 @@ func (in *DNSARecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSARecordInitParameters) DeepCopyInto(out *DNSARecordInitParameters) { + *out = *in + if in.Records != nil { + in, out := &in.Records, &out.Records + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSARecordInitParameters. +func (in *DNSARecordInitParameters) DeepCopy() *DNSARecordInitParameters { + if in == nil { + return nil + } + out := new(DNSARecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSARecordList) DeepCopyInto(out *DNSARecordList) { *out = *in @@ -4201,6 +5834,7 @@ func (in *DNSARecordSpec) DeepCopyInto(out *DNSARecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSARecordSpec. @@ -4257,6 +5891,48 @@ func (in *DNSCAARecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSCAARecordInitParameters) DeepCopyInto(out *DNSCAARecordInitParameters) { + *out = *in + if in.Record != nil { + in, out := &in.Record, &out.Record + *out = make([]RecordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSCAARecordInitParameters. +func (in *DNSCAARecordInitParameters) DeepCopy() *DNSCAARecordInitParameters { + if in == nil { + return nil + } + out := new(DNSCAARecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSCAARecordList) DeepCopyInto(out *DNSCAARecordList) { *out = *in @@ -4428,6 +6104,7 @@ func (in *DNSCAARecordSpec) DeepCopyInto(out *DNSCAARecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSCAARecordSpec. @@ -4484,6 +6161,46 @@ func (in *DNSCNAMERecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSCNAMERecordInitParameters) DeepCopyInto(out *DNSCNAMERecordInitParameters) { + *out = *in + if in.Record != nil { + in, out := &in.Record, &out.Record + *out = new(string) + **out = **in + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSCNAMERecordInitParameters. +func (in *DNSCNAMERecordInitParameters) DeepCopy() *DNSCNAMERecordInitParameters { + if in == nil { + return nil + } + out := new(DNSCNAMERecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSCNAMERecordList) DeepCopyInto(out *DNSCNAMERecordList) { *out = *in @@ -4671,6 +6388,7 @@ func (in *DNSCNAMERecordSpec) DeepCopyInto(out *DNSCNAMERecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSCNAMERecordSpec. @@ -4700,6 +6418,31 @@ func (in *DNSCNAMERecordStatus) DeepCopy() *DNSCNAMERecordStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSConfigInitParameters) DeepCopyInto(out *DNSConfigInitParameters) { + *out = *in + if in.RelativeName != nil { + in, out := &in.RelativeName, &out.RelativeName + *out = new(string) + **out = **in + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSConfigInitParameters. +func (in *DNSConfigInitParameters) DeepCopy() *DNSConfigInitParameters { + if in == nil { + return nil + } + out := new(DNSConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSConfigObservation) DeepCopyInto(out *DNSConfigObservation) { *out = *in @@ -4750,6 +6493,37 @@ func (in *DNSConfigParameters) DeepCopy() *DNSConfigParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSInitParameters) DeepCopyInto(out *DNSInitParameters) { + *out = *in + if in.ProxyEnabled != nil { + in, out := &in.ProxyEnabled, &out.ProxyEnabled + *out = new(bool) + **out = **in + } + if in.Servers != nil { + in, out := &in.Servers, &out.Servers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSInitParameters. +func (in *DNSInitParameters) DeepCopy() *DNSInitParameters { + if in == nil { + return nil + } + out := new(DNSInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSMXRecord) DeepCopyInto(out *DNSMXRecord) { *out = *in @@ -4777,6 +6551,48 @@ func (in *DNSMXRecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSMXRecordInitParameters) DeepCopyInto(out *DNSMXRecordInitParameters) { + *out = *in + if in.Record != nil { + in, out := &in.Record, &out.Record + *out = make([]DNSMXRecordRecordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSMXRecordInitParameters. +func (in *DNSMXRecordInitParameters) DeepCopy() *DNSMXRecordInitParameters { + if in == nil { + return nil + } + out := new(DNSMXRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSMXRecordList) DeepCopyInto(out *DNSMXRecordList) { *out = *in @@ -4943,6 +6759,31 @@ func (in *DNSMXRecordParameters) DeepCopy() *DNSMXRecordParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSMXRecordRecordInitParameters) DeepCopyInto(out *DNSMXRecordRecordInitParameters) { + *out = *in + if in.Exchange != nil { + in, out := &in.Exchange, &out.Exchange + *out = new(string) + **out = **in + } + if in.Preference != nil { + in, out := &in.Preference, &out.Preference + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSMXRecordRecordInitParameters. +func (in *DNSMXRecordRecordInitParameters) DeepCopy() *DNSMXRecordRecordInitParameters { + if in == nil { + return nil + } + out := new(DNSMXRecordRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSMXRecordRecordObservation) DeepCopyInto(out *DNSMXRecordRecordObservation) { *out = *in @@ -4998,6 +6839,7 @@ func (in *DNSMXRecordSpec) DeepCopyInto(out *DNSMXRecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSMXRecordSpec. @@ -5054,6 +6896,52 @@ func (in *DNSNSRecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSNSRecordInitParameters) DeepCopyInto(out *DNSNSRecordInitParameters) { + *out = *in + if in.Records != nil { + in, out := &in.Records, &out.Records + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSNSRecordInitParameters. +func (in *DNSNSRecordInitParameters) DeepCopy() *DNSNSRecordInitParameters { + if in == nil { + return nil + } + out := new(DNSNSRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSNSRecordList) DeepCopyInto(out *DNSNSRecordList) { *out = *in @@ -5233,6 +7121,7 @@ func (in *DNSNSRecordSpec) DeepCopyInto(out *DNSNSRecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSNSRecordSpec. @@ -5320,6 +7209,52 @@ func (in *DNSPTRRecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSPTRRecordInitParameters) DeepCopyInto(out *DNSPTRRecordInitParameters) { + *out = *in + if in.Records != nil { + in, out := &in.Records, &out.Records + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSPTRRecordInitParameters. +func (in *DNSPTRRecordInitParameters) DeepCopy() *DNSPTRRecordInitParameters { + if in == nil { + return nil + } + out := new(DNSPTRRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSPTRRecordList) DeepCopyInto(out *DNSPTRRecordList) { *out = *in @@ -5499,6 +7434,7 @@ func (in *DNSPTRRecordSpec) DeepCopyInto(out *DNSPTRRecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSPTRRecordSpec. @@ -5586,6 +7522,48 @@ func (in *DNSSRVRecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSSRVRecordInitParameters) DeepCopyInto(out *DNSSRVRecordInitParameters) { + *out = *in + if in.Record != nil { + in, out := &in.Record, &out.Record + *out = make([]DNSSRVRecordRecordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSSRVRecordInitParameters. +func (in *DNSSRVRecordInitParameters) DeepCopy() *DNSSRVRecordInitParameters { + if in == nil { + return nil + } + out := new(DNSSRVRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSSRVRecordList) DeepCopyInto(out *DNSSRVRecordList) { *out = *in @@ -5752,6 +7730,41 @@ func (in *DNSSRVRecordParameters) DeepCopy() *DNSSRVRecordParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSSRVRecordRecordInitParameters) DeepCopyInto(out *DNSSRVRecordRecordInitParameters) { + *out = *in + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Target != nil { + in, out := &in.Target, &out.Target + *out = new(string) + **out = **in + } + if in.Weight != nil { + in, out := &in.Weight, &out.Weight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSSRVRecordRecordInitParameters. +func (in *DNSSRVRecordRecordInitParameters) DeepCopy() *DNSSRVRecordRecordInitParameters { + if in == nil { + return nil + } + out := new(DNSSRVRecordRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSSRVRecordRecordObservation) DeepCopyInto(out *DNSSRVRecordRecordObservation) { *out = *in @@ -5827,6 +7840,7 @@ func (in *DNSSRVRecordSpec) DeepCopyInto(out *DNSSRVRecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSSRVRecordSpec. @@ -5883,6 +7897,48 @@ func (in *DNSTXTRecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSTXTRecordInitParameters) DeepCopyInto(out *DNSTXTRecordInitParameters) { + *out = *in + if in.Record != nil { + in, out := &in.Record, &out.Record + *out = make([]DNSTXTRecordRecordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSTXTRecordInitParameters. +func (in *DNSTXTRecordInitParameters) DeepCopy() *DNSTXTRecordInitParameters { + if in == nil { + return nil + } + out := new(DNSTXTRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSTXTRecordList) DeepCopyInto(out *DNSTXTRecordList) { *out = *in @@ -6049,6 +8105,26 @@ func (in *DNSTXTRecordParameters) DeepCopy() *DNSTXTRecordParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSTXTRecordRecordInitParameters) DeepCopyInto(out *DNSTXTRecordRecordInitParameters) { + *out = *in + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSTXTRecordRecordInitParameters. +func (in *DNSTXTRecordRecordInitParameters) DeepCopy() *DNSTXTRecordRecordInitParameters { + if in == nil { + return nil + } + out := new(DNSTXTRecordRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSTXTRecordRecordObservation) DeepCopyInto(out *DNSTXTRecordRecordObservation) { *out = *in @@ -6094,6 +8170,7 @@ func (in *DNSTXTRecordSpec) DeepCopyInto(out *DNSTXTRecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSTXTRecordSpec. @@ -6150,6 +8227,43 @@ func (in *DNSZone) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSZoneInitParameters) DeepCopyInto(out *DNSZoneInitParameters) { + *out = *in + if in.SoaRecord != nil { + in, out := &in.SoaRecord, &out.SoaRecord + *out = make([]SoaRecordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSZoneInitParameters. +func (in *DNSZoneInitParameters) DeepCopy() *DNSZoneInitParameters { + if in == nil { + return nil + } + out := new(DNSZoneInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSZoneList) DeepCopyInto(out *DNSZoneList) { *out = *in @@ -6307,6 +8421,7 @@ func (in *DNSZoneSpec) DeepCopyInto(out *DNSZoneSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSZoneSpec. @@ -6336,6 +8451,42 @@ func (in *DNSZoneStatus) DeepCopy() *DNSZoneStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DefinitionInitParameters) DeepCopyInto(out *DefinitionInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ServiceResources != nil { + in, out := &in.ServiceResources, &out.ServiceResources + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefinitionInitParameters. +func (in *DefinitionInitParameters) DeepCopy() *DefinitionInitParameters { + if in == nil { + return nil + } + out := new(DefinitionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DefinitionObservation) DeepCopyInto(out *DefinitionObservation) { *out = *in @@ -6408,6 +8559,33 @@ func (in *DefinitionParameters) DeepCopy() *DefinitionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DelegationInitParameters) DeepCopyInto(out *DelegationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ServiceDelegation != nil { + in, out := &in.ServiceDelegation, &out.ServiceDelegation + *out = make([]ServiceDelegationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DelegationInitParameters. +func (in *DelegationInitParameters) DeepCopy() *DelegationInitParameters { + if in == nil { + return nil + } + out := new(DelegationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DelegationObservation) DeepCopyInto(out *DelegationObservation) { *out = *in @@ -6462,6 +8640,37 @@ func (in *DelegationParameters) DeepCopy() *DelegationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DisabledRuleGroupInitParameters) DeepCopyInto(out *DisabledRuleGroupInitParameters) { + *out = *in + if in.RuleGroupName != nil { + in, out := &in.RuleGroupName, &out.RuleGroupName + *out = new(string) + **out = **in + } + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DisabledRuleGroupInitParameters. +func (in *DisabledRuleGroupInitParameters) DeepCopy() *DisabledRuleGroupInitParameters { + if in == nil { + return nil + } + out := new(DisabledRuleGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DisabledRuleGroupObservation) DeepCopyInto(out *DisabledRuleGroupObservation) { *out = *in @@ -6524,6 +8733,75 @@ func (in *DisabledRuleGroupParameters) DeepCopy() *DisabledRuleGroupParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointInitParameters) DeepCopyInto(out *EndpointInitParameters) { + *out = *in + if in.Address != nil { + in, out := &in.Address, &out.Address + *out = new(string) + **out = **in + } + if in.CoverageLevel != nil { + in, out := &in.CoverageLevel, &out.CoverageLevel + *out = new(string) + **out = **in + } + if in.ExcludedIPAddresses != nil { + in, out := &in.ExcludedIPAddresses, &out.ExcludedIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Filter != nil { + in, out := &in.Filter, &out.Filter + *out = make([]FilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IncludedIPAddresses != nil { + in, out := &in.IncludedIPAddresses, &out.IncludedIPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.TargetResourceID != nil { + in, out := &in.TargetResourceID, &out.TargetResourceID + *out = new(string) + **out = **in + } + if in.TargetResourceType != nil { + in, out := &in.TargetResourceType, &out.TargetResourceType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointInitParameters. +func (in *EndpointInitParameters) DeepCopy() *EndpointInitParameters { + if in == nil { + return nil + } + out := new(EndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EndpointObservation) DeepCopyInto(out *EndpointObservation) { *out = *in @@ -6662,6 +8940,38 @@ func (in *EndpointParameters) DeepCopy() *EndpointParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExcludedRuleSetInitParameters) DeepCopyInto(out *ExcludedRuleSetInitParameters) { + *out = *in + if in.RuleGroup != nil { + in, out := &in.RuleGroup, &out.RuleGroup + *out = make([]RuleGroupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExcludedRuleSetInitParameters. +func (in *ExcludedRuleSetInitParameters) DeepCopy() *ExcludedRuleSetInitParameters { + if in == nil { + return nil + } + out := new(ExcludedRuleSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExcludedRuleSetObservation) DeepCopyInto(out *ExcludedRuleSetObservation) { *out = *in @@ -6726,6 +9036,36 @@ func (in *ExcludedRuleSetParameters) DeepCopy() *ExcludedRuleSetParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExclusionInitParameters) DeepCopyInto(out *ExclusionInitParameters) { + *out = *in + if in.MatchVariable != nil { + in, out := &in.MatchVariable, &out.MatchVariable + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } + if in.SelectorMatchOperator != nil { + in, out := &in.SelectorMatchOperator, &out.SelectorMatchOperator + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExclusionInitParameters. +func (in *ExclusionInitParameters) DeepCopy() *ExclusionInitParameters { + if in == nil { + return nil + } + out := new(ExclusionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExclusionObservation) DeepCopyInto(out *ExclusionObservation) { *out = *in @@ -6786,6 +9126,51 @@ func (in *ExclusionParameters) DeepCopy() *ExclusionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExplicitProxyInitParameters) DeepCopyInto(out *ExplicitProxyInitParameters) { + *out = *in + if in.EnablePacFile != nil { + in, out := &in.EnablePacFile, &out.EnablePacFile + *out = new(bool) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPPort != nil { + in, out := &in.HTTPPort, &out.HTTPPort + *out = new(float64) + **out = **in + } + if in.HTTPSPort != nil { + in, out := &in.HTTPSPort, &out.HTTPSPort + *out = new(float64) + **out = **in + } + if in.PacFile != nil { + in, out := &in.PacFile, &out.PacFile + *out = new(string) + **out = **in + } + if in.PacFilePort != nil { + in, out := &in.PacFilePort, &out.PacFilePort + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExplicitProxyInitParameters. +func (in *ExplicitProxyInitParameters) DeepCopy() *ExplicitProxyInitParameters { + if in == nil { + return nil + } + out := new(ExplicitProxyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExplicitProxyObservation) DeepCopyInto(out *ExplicitProxyObservation) { *out = *in @@ -6876,6 +9261,21 @@ func (in *ExplicitProxyParameters) DeepCopy() *ExplicitProxyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExplicitResourceOrderInitParameters) DeepCopyInto(out *ExplicitResourceOrderInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExplicitResourceOrderInitParameters. +func (in *ExplicitResourceOrderInitParameters) DeepCopy() *ExplicitResourceOrderInitParameters { + if in == nil { + return nil + } + out := new(ExplicitResourceOrderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExplicitResourceOrderObservation) DeepCopyInto(out *ExplicitResourceOrderObservation) { *out = *in @@ -7015,6 +9415,21 @@ func (in *ExpressRouteCircuitAuthorization) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressRouteCircuitAuthorizationInitParameters) DeepCopyInto(out *ExpressRouteCircuitAuthorizationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteCircuitAuthorizationInitParameters. +func (in *ExpressRouteCircuitAuthorizationInitParameters) DeepCopy() *ExpressRouteCircuitAuthorizationInitParameters { + if in == nil { + return nil + } + out := new(ExpressRouteCircuitAuthorizationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressRouteCircuitAuthorizationList) DeepCopyInto(out *ExpressRouteCircuitAuthorizationList) { *out = *in @@ -7132,6 +9547,7 @@ func (in *ExpressRouteCircuitAuthorizationSpec) DeepCopyInto(out *ExpressRouteCi *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteCircuitAuthorizationSpec. @@ -7188,6 +9604,31 @@ func (in *ExpressRouteCircuitConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressRouteCircuitConnectionInitParameters) DeepCopyInto(out *ExpressRouteCircuitConnectionInitParameters) { + *out = *in + if in.AddressPrefixIPv4 != nil { + in, out := &in.AddressPrefixIPv4, &out.AddressPrefixIPv4 + *out = new(string) + **out = **in + } + if in.AddressPrefixIPv6 != nil { + in, out := &in.AddressPrefixIPv6, &out.AddressPrefixIPv6 + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteCircuitConnectionInitParameters. +func (in *ExpressRouteCircuitConnectionInitParameters) DeepCopy() *ExpressRouteCircuitConnectionInitParameters { + if in == nil { + return nil + } + out := new(ExpressRouteCircuitConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressRouteCircuitConnectionList) DeepCopyInto(out *ExpressRouteCircuitConnectionList) { *out = *in @@ -7325,6 +9766,7 @@ func (in *ExpressRouteCircuitConnectionSpec) DeepCopyInto(out *ExpressRouteCircu *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteCircuitConnectionSpec. @@ -7354,6 +9796,78 @@ func (in *ExpressRouteCircuitConnectionStatus) DeepCopy() *ExpressRouteCircuitCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressRouteCircuitInitParameters) DeepCopyInto(out *ExpressRouteCircuitInitParameters) { + *out = *in + if in.AllowClassicOperations != nil { + in, out := &in.AllowClassicOperations, &out.AllowClassicOperations + *out = new(bool) + **out = **in + } + if in.BandwidthInGbps != nil { + in, out := &in.BandwidthInGbps, &out.BandwidthInGbps + *out = new(float64) + **out = **in + } + if in.BandwidthInMbps != nil { + in, out := &in.BandwidthInMbps, &out.BandwidthInMbps + *out = new(float64) + **out = **in + } + if in.ExpressRoutePortID != nil { + in, out := &in.ExpressRoutePortID, &out.ExpressRoutePortID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PeeringLocation != nil { + in, out := &in.PeeringLocation, &out.PeeringLocation + *out = new(string) + **out = **in + } + if in.ServiceProviderName != nil { + in, out := &in.ServiceProviderName, &out.ServiceProviderName + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = make([]ExpressRouteCircuitSkuInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteCircuitInitParameters. +func (in *ExpressRouteCircuitInitParameters) DeepCopy() *ExpressRouteCircuitInitParameters { + if in == nil { + return nil + } + out := new(ExpressRouteCircuitInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressRouteCircuitList) DeepCopyInto(out *ExpressRouteCircuitList) { *out = *in @@ -7592,6 +10106,65 @@ func (in *ExpressRouteCircuitPeering) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressRouteCircuitPeeringInitParameters) DeepCopyInto(out *ExpressRouteCircuitPeeringInitParameters) { + *out = *in + if in.IPv4Enabled != nil { + in, out := &in.IPv4Enabled, &out.IPv4Enabled + *out = new(bool) + **out = **in + } + if in.IPv6 != nil { + in, out := &in.IPv6, &out.IPv6 + *out = make([]IPv6InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MicrosoftPeeringConfig != nil { + in, out := &in.MicrosoftPeeringConfig, &out.MicrosoftPeeringConfig + *out = make([]MicrosoftPeeringConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PeerAsn != nil { + in, out := &in.PeerAsn, &out.PeerAsn + *out = new(float64) + **out = **in + } + if in.PrimaryPeerAddressPrefix != nil { + in, out := &in.PrimaryPeerAddressPrefix, &out.PrimaryPeerAddressPrefix + *out = new(string) + **out = **in + } + if in.RouteFilterID != nil { + in, out := &in.RouteFilterID, &out.RouteFilterID + *out = new(string) + **out = **in + } + if in.SecondaryPeerAddressPrefix != nil { + in, out := &in.SecondaryPeerAddressPrefix, &out.SecondaryPeerAddressPrefix + *out = new(string) + **out = **in + } + if in.VlanID != nil { + in, out := &in.VlanID, &out.VlanID + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteCircuitPeeringInitParameters. +func (in *ExpressRouteCircuitPeeringInitParameters) DeepCopy() *ExpressRouteCircuitPeeringInitParameters { + if in == nil { + return nil + } + out := new(ExpressRouteCircuitPeeringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressRouteCircuitPeeringList) DeepCopyInto(out *ExpressRouteCircuitPeeringList) { *out = *in @@ -7817,6 +10390,7 @@ func (in *ExpressRouteCircuitPeeringSpec) DeepCopyInto(out *ExpressRouteCircuitP *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteCircuitPeeringSpec. @@ -7846,6 +10420,31 @@ func (in *ExpressRouteCircuitPeeringStatus) DeepCopy() *ExpressRouteCircuitPeeri return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressRouteCircuitSkuInitParameters) DeepCopyInto(out *ExpressRouteCircuitSkuInitParameters) { + *out = *in + if in.Family != nil { + in, out := &in.Family, &out.Family + *out = new(string) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteCircuitSkuInitParameters. +func (in *ExpressRouteCircuitSkuInitParameters) DeepCopy() *ExpressRouteCircuitSkuInitParameters { + if in == nil { + return nil + } + out := new(ExpressRouteCircuitSkuInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressRouteCircuitSkuObservation) DeepCopyInto(out *ExpressRouteCircuitSkuObservation) { *out = *in @@ -7901,6 +10500,7 @@ func (in *ExpressRouteCircuitSpec) DeepCopyInto(out *ExpressRouteCircuitSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteCircuitSpec. @@ -7957,6 +10557,48 @@ func (in *ExpressRouteConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressRouteConnectionInitParameters) DeepCopyInto(out *ExpressRouteConnectionInitParameters) { + *out = *in + if in.AuthorizationKey != nil { + in, out := &in.AuthorizationKey, &out.AuthorizationKey + *out = new(string) + **out = **in + } + if in.EnableInternetSecurity != nil { + in, out := &in.EnableInternetSecurity, &out.EnableInternetSecurity + *out = new(bool) + **out = **in + } + if in.ExpressRouteGatewayBypassEnabled != nil { + in, out := &in.ExpressRouteGatewayBypassEnabled, &out.ExpressRouteGatewayBypassEnabled + *out = new(bool) + **out = **in + } + if in.Routing != nil { + in, out := &in.Routing, &out.Routing + *out = make([]RoutingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RoutingWeight != nil { + in, out := &in.RoutingWeight, &out.RoutingWeight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteConnectionInitParameters. +func (in *ExpressRouteConnectionInitParameters) DeepCopy() *ExpressRouteConnectionInitParameters { + if in == nil { + return nil + } + out := new(ExpressRouteConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressRouteConnectionList) DeepCopyInto(out *ExpressRouteConnectionList) { *out = *in @@ -8123,6 +10765,7 @@ func (in *ExpressRouteConnectionSpec) DeepCopyInto(out *ExpressRouteConnectionSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteConnectionSpec. @@ -8179,6 +10822,51 @@ func (in *ExpressRouteGateway) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressRouteGatewayInitParameters) DeepCopyInto(out *ExpressRouteGatewayInitParameters) { + *out = *in + if in.AllowNonVirtualWanTraffic != nil { + in, out := &in.AllowNonVirtualWanTraffic, &out.AllowNonVirtualWanTraffic + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ScaleUnits != nil { + in, out := &in.ScaleUnits, &out.ScaleUnits + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteGatewayInitParameters. +func (in *ExpressRouteGatewayInitParameters) DeepCopy() *ExpressRouteGatewayInitParameters { + if in == nil { + return nil + } + out := new(ExpressRouteGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressRouteGatewayList) DeepCopyInto(out *ExpressRouteGatewayList) { *out = *in @@ -8351,6 +11039,7 @@ func (in *ExpressRouteGatewaySpec) DeepCopyInto(out *ExpressRouteGatewaySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRouteGatewaySpec. @@ -8407,6 +11096,37 @@ func (in *ExpressRoutePort) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressRoutePortIdentityInitParameters) DeepCopyInto(out *ExpressRoutePortIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRoutePortIdentityInitParameters. +func (in *ExpressRoutePortIdentityInitParameters) DeepCopy() *ExpressRoutePortIdentityInitParameters { + if in == nil { + return nil + } + out := new(ExpressRoutePortIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressRoutePortIdentityObservation) DeepCopyInto(out *ExpressRoutePortIdentityObservation) { *out = *in @@ -8469,6 +11189,82 @@ func (in *ExpressRoutePortIdentityParameters) DeepCopy() *ExpressRoutePortIdenti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ExpressRoutePortInitParameters) DeepCopyInto(out *ExpressRoutePortInitParameters) { + *out = *in + if in.BandwidthInGbps != nil { + in, out := &in.BandwidthInGbps, &out.BandwidthInGbps + *out = new(float64) + **out = **in + } + if in.BillingType != nil { + in, out := &in.BillingType, &out.BillingType + *out = new(string) + **out = **in + } + if in.Encapsulation != nil { + in, out := &in.Encapsulation, &out.Encapsulation + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]ExpressRoutePortIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Link1 != nil { + in, out := &in.Link1, &out.Link1 + *out = make([]Link1InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Link2 != nil { + in, out := &in.Link2, &out.Link2 + *out = make([]Link2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PeeringLocation != nil { + in, out := &in.PeeringLocation, &out.PeeringLocation + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRoutePortInitParameters. +func (in *ExpressRoutePortInitParameters) DeepCopy() *ExpressRoutePortInitParameters { + if in == nil { + return nil + } + out := new(ExpressRoutePortInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ExpressRoutePortList) DeepCopyInto(out *ExpressRoutePortList) { *out = *in @@ -8698,6 +11494,7 @@ func (in *ExpressRoutePortSpec) DeepCopyInto(out *ExpressRoutePortSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressRoutePortSpec. @@ -8727,6 +11524,33 @@ func (in *ExpressRoutePortStatus) DeepCopy() *ExpressRoutePortStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilterInitParameters) DeepCopyInto(out *FilterInitParameters) { + *out = *in + if in.Item != nil { + in, out := &in.Item, &out.Item + *out = make([]ItemInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterInitParameters. +func (in *FilterInitParameters) DeepCopy() *FilterInitParameters { + if in == nil { + return nil + } + out := new(FilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FilterObservation) DeepCopyInto(out *FilterObservation) { *out = *in @@ -8835,6 +11659,38 @@ func (in *FirewallApplicationRuleCollection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallApplicationRuleCollectionInitParameters) DeepCopyInto(out *FirewallApplicationRuleCollectionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]RuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallApplicationRuleCollectionInitParameters. +func (in *FirewallApplicationRuleCollectionInitParameters) DeepCopy() *FirewallApplicationRuleCollectionInitParameters { + if in == nil { + return nil + } + out := new(FirewallApplicationRuleCollectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallApplicationRuleCollectionList) DeepCopyInto(out *FirewallApplicationRuleCollectionList) { *out = *in @@ -8981,6 +11837,7 @@ func (in *FirewallApplicationRuleCollectionSpec) DeepCopyInto(out *FirewallAppli *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallApplicationRuleCollectionSpec. @@ -9010,6 +11867,26 @@ func (in *FirewallApplicationRuleCollectionStatus) DeepCopy() *FirewallApplicati return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallIPConfigurationInitParameters) DeepCopyInto(out *FirewallIPConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallIPConfigurationInitParameters. +func (in *FirewallIPConfigurationInitParameters) DeepCopy() *FirewallIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(FirewallIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallIPConfigurationObservation) DeepCopyInto(out *FirewallIPConfigurationObservation) { *out = *in @@ -9095,6 +11972,115 @@ func (in *FirewallIPConfigurationParameters) DeepCopy() *FirewallIPConfiguration return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallInitParameters) DeepCopyInto(out *FirewallInitParameters) { + *out = *in + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FirewallPolicyID != nil { + in, out := &in.FirewallPolicyID, &out.FirewallPolicyID + *out = new(string) + **out = **in + } + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]FirewallIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ManagementIPConfiguration != nil { + in, out := &in.ManagementIPConfiguration, &out.ManagementIPConfiguration + *out = make([]ManagementIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PrivateIPRanges != nil { + in, out := &in.PrivateIPRanges, &out.PrivateIPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.SkuTier != nil { + in, out := &in.SkuTier, &out.SkuTier + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ThreatIntelMode != nil { + in, out := &in.ThreatIntelMode, &out.ThreatIntelMode + *out = new(string) + **out = **in + } + if in.VirtualHub != nil { + in, out := &in.VirtualHub, &out.VirtualHub + *out = make([]VirtualHubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallInitParameters. +func (in *FirewallInitParameters) DeepCopy() *FirewallInitParameters { + if in == nil { + return nil + } + out := new(FirewallInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallList) DeepCopyInto(out *FirewallList) { *out = *in @@ -9154,6 +12140,38 @@ func (in *FirewallNATRuleCollection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallNATRuleCollectionInitParameters) DeepCopyInto(out *FirewallNATRuleCollectionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]FirewallNATRuleCollectionRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallNATRuleCollectionInitParameters. +func (in *FirewallNATRuleCollectionInitParameters) DeepCopy() *FirewallNATRuleCollectionInitParameters { + if in == nil { + return nil + } + out := new(FirewallNATRuleCollectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallNATRuleCollectionList) DeepCopyInto(out *FirewallNATRuleCollectionList) { *out = *in @@ -9295,6 +12313,96 @@ func (in *FirewallNATRuleCollectionParameters) DeepCopy() *FirewallNATRuleCollec return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallNATRuleCollectionRuleInitParameters) DeepCopyInto(out *FirewallNATRuleCollectionRuleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DestinationAddresses != nil { + in, out := &in.DestinationAddresses, &out.DestinationAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationPorts != nil { + in, out := &in.DestinationPorts, &out.DestinationPorts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Protocols != nil { + in, out := &in.Protocols, &out.Protocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceAddresses != nil { + in, out := &in.SourceAddresses, &out.SourceAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceIPGroups != nil { + in, out := &in.SourceIPGroups, &out.SourceIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TranslatedAddress != nil { + in, out := &in.TranslatedAddress, &out.TranslatedAddress + *out = new(string) + **out = **in + } + if in.TranslatedPort != nil { + in, out := &in.TranslatedPort, &out.TranslatedPort + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallNATRuleCollectionRuleInitParameters. +func (in *FirewallNATRuleCollectionRuleInitParameters) DeepCopy() *FirewallNATRuleCollectionRuleInitParameters { + if in == nil { + return nil + } + out := new(FirewallNATRuleCollectionRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallNATRuleCollectionRuleObservation) DeepCopyInto(out *FirewallNATRuleCollectionRuleObservation) { *out = *in @@ -9480,6 +12588,7 @@ func (in *FirewallNATRuleCollectionSpec) DeepCopyInto(out *FirewallNATRuleCollec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallNATRuleCollectionSpec. @@ -9536,6 +12645,38 @@ func (in *FirewallNetworkRuleCollection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallNetworkRuleCollectionInitParameters) DeepCopyInto(out *FirewallNetworkRuleCollectionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]FirewallNetworkRuleCollectionRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallNetworkRuleCollectionInitParameters. +func (in *FirewallNetworkRuleCollectionInitParameters) DeepCopy() *FirewallNetworkRuleCollectionInitParameters { + if in == nil { + return nil + } + out := new(FirewallNetworkRuleCollectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallNetworkRuleCollectionList) DeepCopyInto(out *FirewallNetworkRuleCollectionList) { *out = *in @@ -9677,6 +12818,108 @@ func (in *FirewallNetworkRuleCollectionParameters) DeepCopy() *FirewallNetworkRu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallNetworkRuleCollectionRuleInitParameters) DeepCopyInto(out *FirewallNetworkRuleCollectionRuleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DestinationAddresses != nil { + in, out := &in.DestinationAddresses, &out.DestinationAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationFqdns != nil { + in, out := &in.DestinationFqdns, &out.DestinationFqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationIPGroups != nil { + in, out := &in.DestinationIPGroups, &out.DestinationIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationPorts != nil { + in, out := &in.DestinationPorts, &out.DestinationPorts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Protocols != nil { + in, out := &in.Protocols, &out.Protocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceAddresses != nil { + in, out := &in.SourceAddresses, &out.SourceAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceIPGroups != nil { + in, out := &in.SourceIPGroups, &out.SourceIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallNetworkRuleCollectionRuleInitParameters. +func (in *FirewallNetworkRuleCollectionRuleInitParameters) DeepCopy() *FirewallNetworkRuleCollectionRuleInitParameters { + if in == nil { + return nil + } + out := new(FirewallNetworkRuleCollectionRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallNetworkRuleCollectionRuleObservation) DeepCopyInto(out *FirewallNetworkRuleCollectionRuleObservation) { *out = *in @@ -9886,6 +13129,7 @@ func (in *FirewallNetworkRuleCollectionSpec) DeepCopyInto(out *FirewallNetworkRu *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallNetworkRuleCollectionSpec. @@ -10185,6 +13429,37 @@ func (in *FirewallPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallPolicyIdentityInitParameters) DeepCopyInto(out *FirewallPolicyIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallPolicyIdentityInitParameters. +func (in *FirewallPolicyIdentityInitParameters) DeepCopy() *FirewallPolicyIdentityInitParameters { + if in == nil { + return nil + } + out := new(FirewallPolicyIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallPolicyIdentityObservation) DeepCopyInto(out *FirewallPolicyIdentityObservation) { *out = *in @@ -10247,6 +13522,126 @@ func (in *FirewallPolicyIdentityParameters) DeepCopy() *FirewallPolicyIdentityPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallPolicyInitParameters) DeepCopyInto(out *FirewallPolicyInitParameters) { + *out = *in + if in.AutoLearnPrivateRangesEnabled != nil { + in, out := &in.AutoLearnPrivateRangesEnabled, &out.AutoLearnPrivateRangesEnabled + *out = new(bool) + **out = **in + } + if in.BasePolicyID != nil { + in, out := &in.BasePolicyID, &out.BasePolicyID + *out = new(string) + **out = **in + } + if in.DNS != nil { + in, out := &in.DNS, &out.DNS + *out = make([]DNSInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExplicitProxy != nil { + in, out := &in.ExplicitProxy, &out.ExplicitProxy + *out = make([]ExplicitProxyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]FirewallPolicyIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Insights != nil { + in, out := &in.Insights, &out.Insights + *out = make([]InsightsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IntrusionDetection != nil { + in, out := &in.IntrusionDetection, &out.IntrusionDetection + *out = make([]IntrusionDetectionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PrivateIPRanges != nil { + in, out := &in.PrivateIPRanges, &out.PrivateIPRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SQLRedirectAllowed != nil { + in, out := &in.SQLRedirectAllowed, &out.SQLRedirectAllowed + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.TLSCertificate != nil { + in, out := &in.TLSCertificate, &out.TLSCertificate + *out = make([]TLSCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ThreatIntelligenceAllowlist != nil { + in, out := &in.ThreatIntelligenceAllowlist, &out.ThreatIntelligenceAllowlist + *out = make([]ThreatIntelligenceAllowlistInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ThreatIntelligenceMode != nil { + in, out := &in.ThreatIntelligenceMode, &out.ThreatIntelligenceMode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallPolicyInitParameters. +func (in *FirewallPolicyInitParameters) DeepCopy() *FirewallPolicyInitParameters { + if in == nil { + return nil + } + out := new(FirewallPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallPolicyList) DeepCopyInto(out *FirewallPolicyList) { *out = *in @@ -10604,6 +13999,47 @@ func (in *FirewallPolicyRuleCollectionGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallPolicyRuleCollectionGroupInitParameters) DeepCopyInto(out *FirewallPolicyRuleCollectionGroupInitParameters) { + *out = *in + if in.ApplicationRuleCollection != nil { + in, out := &in.ApplicationRuleCollection, &out.ApplicationRuleCollection + *out = make([]ApplicationRuleCollectionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NATRuleCollection != nil { + in, out := &in.NATRuleCollection, &out.NATRuleCollection + *out = make([]NATRuleCollectionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NetworkRuleCollection != nil { + in, out := &in.NetworkRuleCollection, &out.NetworkRuleCollection + *out = make([]NetworkRuleCollectionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallPolicyRuleCollectionGroupInitParameters. +func (in *FirewallPolicyRuleCollectionGroupInitParameters) DeepCopy() *FirewallPolicyRuleCollectionGroupInitParameters { + if in == nil { + return nil + } + out := new(FirewallPolicyRuleCollectionGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallPolicyRuleCollectionGroupList) DeepCopyInto(out *FirewallPolicyRuleCollectionGroupList) { *out = *in @@ -10748,6 +14184,7 @@ func (in *FirewallPolicyRuleCollectionGroupSpec) DeepCopyInto(out *FirewallPolic *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallPolicyRuleCollectionGroupSpec. @@ -10782,6 +14219,7 @@ func (in *FirewallPolicySpec) DeepCopyInto(out *FirewallPolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallPolicySpec. @@ -10816,6 +14254,7 @@ func (in *FirewallSpec) DeepCopyInto(out *FirewallSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallSpec. @@ -10845,6 +14284,67 @@ func (in *FirewallStatus) DeepCopy() *FirewallStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ForwardingConfigurationInitParameters) DeepCopyInto(out *ForwardingConfigurationInitParameters) { + *out = *in + if in.BackendPoolName != nil { + in, out := &in.BackendPoolName, &out.BackendPoolName + *out = new(string) + **out = **in + } + if in.CacheDuration != nil { + in, out := &in.CacheDuration, &out.CacheDuration + *out = new(string) + **out = **in + } + if in.CacheEnabled != nil { + in, out := &in.CacheEnabled, &out.CacheEnabled + *out = new(bool) + **out = **in + } + if in.CacheQueryParameterStripDirective != nil { + in, out := &in.CacheQueryParameterStripDirective, &out.CacheQueryParameterStripDirective + *out = new(string) + **out = **in + } + if in.CacheQueryParameters != nil { + in, out := &in.CacheQueryParameters, &out.CacheQueryParameters + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CacheUseDynamicCompression != nil { + in, out := &in.CacheUseDynamicCompression, &out.CacheUseDynamicCompression + *out = new(bool) + **out = **in + } + if in.CustomForwardingPath != nil { + in, out := &in.CustomForwardingPath, &out.CustomForwardingPath + *out = new(string) + **out = **in + } + if in.ForwardingProtocol != nil { + in, out := &in.ForwardingProtocol, &out.ForwardingProtocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardingConfigurationInitParameters. +func (in *ForwardingConfigurationInitParameters) DeepCopy() *ForwardingConfigurationInitParameters { + if in == nil { + return nil + } + out := new(ForwardingConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ForwardingConfigurationObservation) DeepCopyInto(out *ForwardingConfigurationObservation) { *out = *in @@ -10994,6 +14494,88 @@ func (in *FrontDoor) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontDoorInitParameters) DeepCopyInto(out *FrontDoorInitParameters) { + *out = *in + if in.BackendPool != nil { + in, out := &in.BackendPool, &out.BackendPool + *out = make([]BackendPoolInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BackendPoolHealthProbe != nil { + in, out := &in.BackendPoolHealthProbe, &out.BackendPoolHealthProbe + *out = make([]BackendPoolHealthProbeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BackendPoolLoadBalancing != nil { + in, out := &in.BackendPoolLoadBalancing, &out.BackendPoolLoadBalancing + *out = make([]BackendPoolLoadBalancingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BackendPoolSettings != nil { + in, out := &in.BackendPoolSettings, &out.BackendPoolSettings + *out = make([]BackendPoolSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FriendlyName != nil { + in, out := &in.FriendlyName, &out.FriendlyName + *out = new(string) + **out = **in + } + if in.FrontendEndpoint != nil { + in, out := &in.FrontendEndpoint, &out.FrontendEndpoint + *out = make([]FrontendEndpointInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancerEnabled != nil { + in, out := &in.LoadBalancerEnabled, &out.LoadBalancerEnabled + *out = new(bool) + **out = **in + } + if in.RoutingRule != nil { + in, out := &in.RoutingRule, &out.RoutingRule + *out = make([]RoutingRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontDoorInitParameters. +func (in *FrontDoorInitParameters) DeepCopy() *FrontDoorInitParameters { + if in == nil { + return nil + } + out := new(FrontDoorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontDoorList) DeepCopyInto(out *FrontDoorList) { *out = *in @@ -11312,6 +14894,7 @@ func (in *FrontDoorSpec) DeepCopyInto(out *FrontDoorSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontDoorSpec. @@ -11368,6 +14951,38 @@ func (in *FrontdoorCustomHTTPSConfiguration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorCustomHTTPSConfigurationInitParameters) DeepCopyInto(out *FrontdoorCustomHTTPSConfigurationInitParameters) { + *out = *in + if in.CustomHTTPSConfiguration != nil { + in, out := &in.CustomHTTPSConfiguration, &out.CustomHTTPSConfiguration + *out = make([]CustomHTTPSConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomHTTPSProvisioningEnabled != nil { + in, out := &in.CustomHTTPSProvisioningEnabled, &out.CustomHTTPSProvisioningEnabled + *out = new(bool) + **out = **in + } + if in.FrontendEndpointID != nil { + in, out := &in.FrontendEndpointID, &out.FrontendEndpointID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomHTTPSConfigurationInitParameters. +func (in *FrontdoorCustomHTTPSConfigurationInitParameters) DeepCopy() *FrontdoorCustomHTTPSConfigurationInitParameters { + if in == nil { + return nil + } + out := new(FrontdoorCustomHTTPSConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontdoorCustomHTTPSConfigurationList) DeepCopyInto(out *FrontdoorCustomHTTPSConfigurationList) { *out = *in @@ -11474,6 +15089,7 @@ func (in *FrontdoorCustomHTTPSConfigurationSpec) DeepCopyInto(out *FrontdoorCust *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorCustomHTTPSConfigurationSpec. @@ -11530,6 +15146,75 @@ func (in *FrontdoorFirewallPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorFirewallPolicyInitParameters) DeepCopyInto(out *FrontdoorFirewallPolicyInitParameters) { + *out = *in + if in.CustomBlockResponseBody != nil { + in, out := &in.CustomBlockResponseBody, &out.CustomBlockResponseBody + *out = new(string) + **out = **in + } + if in.CustomBlockResponseStatusCode != nil { + in, out := &in.CustomBlockResponseStatusCode, &out.CustomBlockResponseStatusCode + *out = new(float64) + **out = **in + } + if in.CustomRule != nil { + in, out := &in.CustomRule, &out.CustomRule + *out = make([]CustomRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ManagedRule != nil { + in, out := &in.ManagedRule, &out.ManagedRule + *out = make([]ManagedRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.RedirectURL != nil { + in, out := &in.RedirectURL, &out.RedirectURL + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorFirewallPolicyInitParameters. +func (in *FrontdoorFirewallPolicyInitParameters) DeepCopy() *FrontdoorFirewallPolicyInitParameters { + if in == nil { + return nil + } + out := new(FrontdoorFirewallPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontdoorFirewallPolicyList) DeepCopyInto(out *FrontdoorFirewallPolicyList) { *out = *in @@ -11746,6 +15431,7 @@ func (in *FrontdoorFirewallPolicySpec) DeepCopyInto(out *FrontdoorFirewallPolicy *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorFirewallPolicySpec. @@ -11802,6 +15488,33 @@ func (in *FrontdoorRulesEngine) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorRulesEngineInitParameters) DeepCopyInto(out *FrontdoorRulesEngineInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]FrontdoorRulesEngineRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRulesEngineInitParameters. +func (in *FrontdoorRulesEngineInitParameters) DeepCopy() *FrontdoorRulesEngineInitParameters { + if in == nil { + return nil + } + out := new(FrontdoorRulesEngineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontdoorRulesEngineList) DeepCopyInto(out *FrontdoorRulesEngineList) { *out = *in @@ -11938,6 +15651,45 @@ func (in *FrontdoorRulesEngineParameters) DeepCopy() *FrontdoorRulesEngineParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontdoorRulesEngineRuleInitParameters) DeepCopyInto(out *FrontdoorRulesEngineRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]ActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MatchCondition != nil { + in, out := &in.MatchCondition, &out.MatchCondition + *out = make([]RuleMatchConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRulesEngineRuleInitParameters. +func (in *FrontdoorRulesEngineRuleInitParameters) DeepCopy() *FrontdoorRulesEngineRuleInitParameters { + if in == nil { + return nil + } + out := new(FrontdoorRulesEngineRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontdoorRulesEngineRuleObservation) DeepCopyInto(out *FrontdoorRulesEngineRuleObservation) { *out = *in @@ -12021,6 +15773,7 @@ func (in *FrontdoorRulesEngineSpec) DeepCopyInto(out *FrontdoorRulesEngineSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontdoorRulesEngineSpec. @@ -12050,6 +15803,46 @@ func (in *FrontdoorRulesEngineStatus) DeepCopy() *FrontdoorRulesEngineStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendEndpointInitParameters) DeepCopyInto(out *FrontendEndpointInitParameters) { + *out = *in + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SessionAffinityEnabled != nil { + in, out := &in.SessionAffinityEnabled, &out.SessionAffinityEnabled + *out = new(bool) + **out = **in + } + if in.SessionAffinityTTLSeconds != nil { + in, out := &in.SessionAffinityTTLSeconds, &out.SessionAffinityTTLSeconds + *out = new(float64) + **out = **in + } + if in.WebApplicationFirewallPolicyLinkID != nil { + in, out := &in.WebApplicationFirewallPolicyLinkID, &out.WebApplicationFirewallPolicyLinkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendEndpointInitParameters. +func (in *FrontendEndpointInitParameters) DeepCopy() *FrontendEndpointInitParameters { + if in == nil { + return nil + } + out := new(FrontendEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontendEndpointObservation) DeepCopyInto(out *FrontendEndpointObservation) { *out = *in @@ -12135,6 +15928,41 @@ func (in *FrontendEndpointParameters) DeepCopy() *FrontendEndpointParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendIPConfigurationInitParameters) DeepCopyInto(out *FrontendIPConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrivateIPAddress != nil { + in, out := &in.PrivateIPAddress, &out.PrivateIPAddress + *out = new(string) + **out = **in + } + if in.PrivateIPAddressAllocation != nil { + in, out := &in.PrivateIPAddressAllocation, &out.PrivateIPAddressAllocation + *out = new(string) + **out = **in + } + if in.PrivateLinkConfigurationName != nil { + in, out := &in.PrivateLinkConfigurationName, &out.PrivateLinkConfigurationName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendIPConfigurationInitParameters. +func (in *FrontendIPConfigurationInitParameters) DeepCopy() *FrontendIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(FrontendIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontendIPConfigurationObservation) DeepCopyInto(out *FrontendIPConfigurationObservation) { *out = *in @@ -12255,6 +16083,31 @@ func (in *FrontendIPConfigurationParameters) DeepCopy() *FrontendIPConfiguration return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FrontendPortInitParameters) DeepCopyInto(out *FrontendPortInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendPortInitParameters. +func (in *FrontendPortInitParameters) DeepCopy() *FrontendPortInitParameters { + if in == nil { + return nil + } + out := new(FrontendPortInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FrontendPortObservation) DeepCopyInto(out *FrontendPortObservation) { *out = *in @@ -12310,6 +16163,26 @@ func (in *FrontendPortParameters) DeepCopy() *FrontendPortParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GatewayIPConfigurationInitParameters) DeepCopyInto(out *GatewayIPConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayIPConfigurationInitParameters. +func (in *GatewayIPConfigurationInitParameters) DeepCopy() *GatewayIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(GatewayIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GatewayIPConfigurationObservation) DeepCopyInto(out *GatewayIPConfigurationObservation) { *out = *in @@ -12375,6 +16248,31 @@ func (in *GatewayIPConfigurationParameters) DeepCopy() *GatewayIPConfigurationPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GlobalInitParameters) DeepCopyInto(out *GlobalInitParameters) { + *out = *in + if in.RequestBufferingEnabled != nil { + in, out := &in.RequestBufferingEnabled, &out.RequestBufferingEnabled + *out = new(bool) + **out = **in + } + if in.ResponseBufferingEnabled != nil { + in, out := &in.ResponseBufferingEnabled, &out.ResponseBufferingEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalInitParameters. +func (in *GlobalInitParameters) DeepCopy() *GlobalInitParameters { + if in == nil { + return nil + } + out := new(GlobalInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GlobalObservation) DeepCopyInto(out *GlobalObservation) { *out = *in @@ -12425,6 +16323,59 @@ func (in *GlobalParameters) DeepCopy() *GlobalParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPConfigurationInitParameters) DeepCopyInto(out *HTTPConfigurationInitParameters) { + *out = *in + if in.Method != nil { + in, out := &in.Method, &out.Method + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.PreferHTTPS != nil { + in, out := &in.PreferHTTPS, &out.PreferHTTPS + *out = new(bool) + **out = **in + } + if in.RequestHeader != nil { + in, out := &in.RequestHeader, &out.RequestHeader + *out = make([]HTTPConfigurationRequestHeaderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ValidStatusCodeRanges != nil { + in, out := &in.ValidStatusCodeRanges, &out.ValidStatusCodeRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPConfigurationInitParameters. +func (in *HTTPConfigurationInitParameters) DeepCopy() *HTTPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(HTTPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HTTPConfigurationObservation) DeepCopyInto(out *HTTPConfigurationObservation) { *out = *in @@ -12531,6 +16482,31 @@ func (in *HTTPConfigurationParameters) DeepCopy() *HTTPConfigurationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPConfigurationRequestHeaderInitParameters) DeepCopyInto(out *HTTPConfigurationRequestHeaderInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPConfigurationRequestHeaderInitParameters. +func (in *HTTPConfigurationRequestHeaderInitParameters) DeepCopy() *HTTPConfigurationRequestHeaderInitParameters { + if in == nil { + return nil + } + out := new(HTTPConfigurationRequestHeaderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HTTPConfigurationRequestHeaderObservation) DeepCopyInto(out *HTTPConfigurationRequestHeaderObservation) { *out = *in @@ -12581,6 +16557,31 @@ func (in *HTTPConfigurationRequestHeaderParameters) DeepCopy() *HTTPConfiguratio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPListenerCustomErrorConfigurationInitParameters) DeepCopyInto(out *HTTPListenerCustomErrorConfigurationInitParameters) { + *out = *in + if in.CustomErrorPageURL != nil { + in, out := &in.CustomErrorPageURL, &out.CustomErrorPageURL + *out = new(string) + **out = **in + } + if in.StatusCode != nil { + in, out := &in.StatusCode, &out.StatusCode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPListenerCustomErrorConfigurationInitParameters. +func (in *HTTPListenerCustomErrorConfigurationInitParameters) DeepCopy() *HTTPListenerCustomErrorConfigurationInitParameters { + if in == nil { + return nil + } + out := new(HTTPListenerCustomErrorConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HTTPListenerCustomErrorConfigurationObservation) DeepCopyInto(out *HTTPListenerCustomErrorConfigurationObservation) { *out = *in @@ -12636,6 +16637,84 @@ func (in *HTTPListenerCustomErrorConfigurationParameters) DeepCopy() *HTTPListen return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPListenerInitParameters) DeepCopyInto(out *HTTPListenerInitParameters) { + *out = *in + if in.CustomErrorConfiguration != nil { + in, out := &in.CustomErrorConfiguration, &out.CustomErrorConfiguration + *out = make([]HTTPListenerCustomErrorConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FirewallPolicyID != nil { + in, out := &in.FirewallPolicyID, &out.FirewallPolicyID + *out = new(string) + **out = **in + } + if in.FrontendIPConfigurationName != nil { + in, out := &in.FrontendIPConfigurationName, &out.FrontendIPConfigurationName + *out = new(string) + **out = **in + } + if in.FrontendPortName != nil { + in, out := &in.FrontendPortName, &out.FrontendPortName + *out = new(string) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.HostNames != nil { + in, out := &in.HostNames, &out.HostNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.RequireSni != nil { + in, out := &in.RequireSni, &out.RequireSni + *out = new(bool) + **out = **in + } + if in.SSLCertificateName != nil { + in, out := &in.SSLCertificateName, &out.SSLCertificateName + *out = new(string) + **out = **in + } + if in.SSLProfileName != nil { + in, out := &in.SSLProfileName, &out.SSLProfileName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPListenerInitParameters. +func (in *HTTPListenerInitParameters) DeepCopy() *HTTPListenerInitParameters { + if in == nil { + return nil + } + out := new(HTTPListenerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HTTPListenerObservation) DeepCopyInto(out *HTTPListenerObservation) { *out = *in @@ -12817,6 +16896,41 @@ func (in *HTTPListenerParameters) DeepCopy() *HTTPListenerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPConfigurationInitParameters) DeepCopyInto(out *IPConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } + if in.PrivateIPAddress != nil { + in, out := &in.PrivateIPAddress, &out.PrivateIPAddress + *out = new(string) + **out = **in + } + if in.PrivateIPAddressAllocation != nil { + in, out := &in.PrivateIPAddressAllocation, &out.PrivateIPAddressAllocation + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPConfigurationInitParameters. +func (in *IPConfigurationInitParameters) DeepCopy() *IPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(IPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPConfigurationObservation) DeepCopyInto(out *IPConfigurationObservation) { *out = *in @@ -12935,39 +17049,7 @@ func (in *IPGroup) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IPGroupList) DeepCopyInto(out *IPGroupList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]IPGroup, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPGroupList. -func (in *IPGroupList) DeepCopy() *IPGroupList { - if in == nil { - return nil - } - out := new(IPGroupList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *IPGroupList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IPGroupObservation) DeepCopyInto(out *IPGroupObservation) { +func (in *IPGroupInitParameters) DeepCopyInto(out *IPGroupInitParameters) { *out = *in if in.Cidrs != nil { in, out := &in.Cidrs, &out.Cidrs @@ -12980,43 +17062,121 @@ func (in *IPGroupObservation) DeepCopyInto(out *IPGroupObservation) { } } } - if in.FirewallIds != nil { - in, out := &in.FirewallIds, &out.FirewallIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.FirewallPolicyIds != nil { - in, out := &in.FirewallPolicyIds, &out.FirewallPolicyIds - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.Location != nil { in, out := &in.Location, &out.Location *out = new(string) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPGroupInitParameters. +func (in *IPGroupInitParameters) DeepCopy() *IPGroupInitParameters { + if in == nil { + return nil + } + out := new(IPGroupInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPGroupList) DeepCopyInto(out *IPGroupList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]IPGroup, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPGroupList. +func (in *IPGroupList) DeepCopy() *IPGroupList { + if in == nil { + return nil + } + out := new(IPGroupList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *IPGroupList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPGroupObservation) DeepCopyInto(out *IPGroupObservation) { + *out = *in + if in.Cidrs != nil { + in, out := &in.Cidrs, &out.Cidrs + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FirewallIds != nil { + in, out := &in.FirewallIds, &out.FirewallIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FirewallPolicyIds != nil { + in, out := &in.FirewallPolicyIds, &out.FirewallPolicyIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } if in.Tags != nil { in, out := &in.Tags, &out.Tags *out = make(map[string]*string, len(*in)) @@ -13110,6 +17270,7 @@ func (in *IPGroupSpec) DeepCopyInto(out *IPGroupSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPGroupSpec. @@ -13139,6 +17300,48 @@ func (in *IPGroupStatus) DeepCopy() *IPGroupStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPv6InitParameters) DeepCopyInto(out *IPv6InitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.MicrosoftPeering != nil { + in, out := &in.MicrosoftPeering, &out.MicrosoftPeering + *out = make([]MicrosoftPeeringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PrimaryPeerAddressPrefix != nil { + in, out := &in.PrimaryPeerAddressPrefix, &out.PrimaryPeerAddressPrefix + *out = new(string) + **out = **in + } + if in.RouteFilterID != nil { + in, out := &in.RouteFilterID, &out.RouteFilterID + *out = new(string) + **out = **in + } + if in.SecondaryPeerAddressPrefix != nil { + in, out := &in.SecondaryPeerAddressPrefix, &out.SecondaryPeerAddressPrefix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPv6InitParameters. +func (in *IPv6InitParameters) DeepCopy() *IPv6InitParameters { + if in == nil { + return nil + } + out := new(IPv6InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPv6Observation) DeepCopyInto(out *IPv6Observation) { *out = *in @@ -13223,6 +17426,26 @@ func (in *IPv6Parameters) DeepCopy() *IPv6Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IcmpConfigurationInitParameters) DeepCopyInto(out *IcmpConfigurationInitParameters) { + *out = *in + if in.TraceRouteEnabled != nil { + in, out := &in.TraceRouteEnabled, &out.TraceRouteEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IcmpConfigurationInitParameters. +func (in *IcmpConfigurationInitParameters) DeepCopy() *IcmpConfigurationInitParameters { + if in == nil { + return nil + } + out := new(IcmpConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IcmpConfigurationObservation) DeepCopyInto(out *IcmpConfigurationObservation) { *out = *in @@ -13263,6 +17486,37 @@ func (in *IcmpConfigurationParameters) DeepCopy() *IcmpConfigurationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -13325,6 +17579,21 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InboundNATRulePortMappingInitParameters) DeepCopyInto(out *InboundNATRulePortMappingInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InboundNATRulePortMappingInitParameters. +func (in *InboundNATRulePortMappingInitParameters) DeepCopy() *InboundNATRulePortMappingInitParameters { + if in == nil { + return nil + } + out := new(InboundNATRulePortMappingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InboundNATRulePortMappingObservation) DeepCopyInto(out *InboundNATRulePortMappingObservation) { *out = *in @@ -13370,6 +17639,43 @@ func (in *InboundNATRulePortMappingParameters) DeepCopy() *InboundNATRulePortMap return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InsightsInitParameters) DeepCopyInto(out *InsightsInitParameters) { + *out = *in + if in.DefaultLogAnalyticsWorkspaceID != nil { + in, out := &in.DefaultLogAnalyticsWorkspaceID, &out.DefaultLogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.LogAnalyticsWorkspace != nil { + in, out := &in.LogAnalyticsWorkspace, &out.LogAnalyticsWorkspace + *out = make([]LogAnalyticsWorkspaceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InsightsInitParameters. +func (in *InsightsInitParameters) DeepCopy() *InsightsInitParameters { + if in == nil { + return nil + } + out := new(InsightsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InsightsObservation) DeepCopyInto(out *InsightsObservation) { *out = *in @@ -13444,6 +17750,32 @@ func (in *InsightsParameters) DeepCopy() *InsightsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Instance0BGPPeeringAddressInitParameters) DeepCopyInto(out *Instance0BGPPeeringAddressInitParameters) { + *out = *in + if in.CustomIps != nil { + in, out := &in.CustomIps, &out.CustomIps + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Instance0BGPPeeringAddressInitParameters. +func (in *Instance0BGPPeeringAddressInitParameters) DeepCopy() *Instance0BGPPeeringAddressInitParameters { + if in == nil { + return nil + } + out := new(Instance0BGPPeeringAddressInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Instance0BGPPeeringAddressObservation) DeepCopyInto(out *Instance0BGPPeeringAddressObservation) { *out = *in @@ -13523,6 +17855,32 @@ func (in *Instance0BGPPeeringAddressParameters) DeepCopy() *Instance0BGPPeeringA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Instance1BGPPeeringAddressInitParameters) DeepCopyInto(out *Instance1BGPPeeringAddressInitParameters) { + *out = *in + if in.CustomIps != nil { + in, out := &in.CustomIps, &out.CustomIps + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Instance1BGPPeeringAddressInitParameters. +func (in *Instance1BGPPeeringAddressInitParameters) DeepCopy() *Instance1BGPPeeringAddressInitParameters { + if in == nil { + return nil + } + out := new(Instance1BGPPeeringAddressInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Instance1BGPPeeringAddressObservation) DeepCopyInto(out *Instance1BGPPeeringAddressObservation) { *out = *in @@ -13602,6 +17960,51 @@ func (in *Instance1BGPPeeringAddressParameters) DeepCopy() *Instance1BGPPeeringA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntrusionDetectionInitParameters) DeepCopyInto(out *IntrusionDetectionInitParameters) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.PrivateRanges != nil { + in, out := &in.PrivateRanges, &out.PrivateRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SignatureOverrides != nil { + in, out := &in.SignatureOverrides, &out.SignatureOverrides + *out = make([]SignatureOverridesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TrafficBypass != nil { + in, out := &in.TrafficBypass, &out.TrafficBypass + *out = make([]TrafficBypassInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntrusionDetectionInitParameters. +func (in *IntrusionDetectionInitParameters) DeepCopy() *IntrusionDetectionInitParameters { + if in == nil { + return nil + } + out := new(IntrusionDetectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntrusionDetectionObservation) DeepCopyInto(out *IntrusionDetectionObservation) { *out = *in @@ -13692,6 +18095,61 @@ func (in *IntrusionDetectionParameters) DeepCopy() *IntrusionDetectionParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IpsecPolicyInitParameters) DeepCopyInto(out *IpsecPolicyInitParameters) { + *out = *in + if in.DhGroup != nil { + in, out := &in.DhGroup, &out.DhGroup + *out = new(string) + **out = **in + } + if in.IkeEncryption != nil { + in, out := &in.IkeEncryption, &out.IkeEncryption + *out = new(string) + **out = **in + } + if in.IkeIntegrity != nil { + in, out := &in.IkeIntegrity, &out.IkeIntegrity + *out = new(string) + **out = **in + } + if in.IpsecEncryption != nil { + in, out := &in.IpsecEncryption, &out.IpsecEncryption + *out = new(string) + **out = **in + } + if in.IpsecIntegrity != nil { + in, out := &in.IpsecIntegrity, &out.IpsecIntegrity + *out = new(string) + **out = **in + } + if in.PfsGroup != nil { + in, out := &in.PfsGroup, &out.PfsGroup + *out = new(string) + **out = **in + } + if in.SaDatasize != nil { + in, out := &in.SaDatasize, &out.SaDatasize + *out = new(float64) + **out = **in + } + if in.SaLifetime != nil { + in, out := &in.SaLifetime, &out.SaLifetime + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IpsecPolicyInitParameters. +func (in *IpsecPolicyInitParameters) DeepCopy() *IpsecPolicyInitParameters { + if in == nil { + return nil + } + out := new(IpsecPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IpsecPolicyObservation) DeepCopyInto(out *IpsecPolicyObservation) { *out = *in @@ -13802,6 +18260,31 @@ func (in *IpsecPolicyParameters) DeepCopy() *IpsecPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ItemInitParameters) DeepCopyInto(out *ItemInitParameters) { + *out = *in + if in.Address != nil { + in, out := &in.Address, &out.Address + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ItemInitParameters. +func (in *ItemInitParameters) DeepCopy() *ItemInitParameters { + if in == nil { + return nil + } + out := new(ItemInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ItemObservation) DeepCopyInto(out *ItemObservation) { *out = *in @@ -13852,6 +18335,41 @@ func (in *ItemParameters) DeepCopy() *ItemParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Link1InitParameters) DeepCopyInto(out *Link1InitParameters) { + *out = *in + if in.AdminEnabled != nil { + in, out := &in.AdminEnabled, &out.AdminEnabled + *out = new(bool) + **out = **in + } + if in.MacsecCakKeyvaultSecretID != nil { + in, out := &in.MacsecCakKeyvaultSecretID, &out.MacsecCakKeyvaultSecretID + *out = new(string) + **out = **in + } + if in.MacsecCipher != nil { + in, out := &in.MacsecCipher, &out.MacsecCipher + *out = new(string) + **out = **in + } + if in.MacsecCknKeyvaultSecretID != nil { + in, out := &in.MacsecCknKeyvaultSecretID, &out.MacsecCknKeyvaultSecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Link1InitParameters. +func (in *Link1InitParameters) DeepCopy() *Link1InitParameters { + if in == nil { + return nil + } + out := new(Link1InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Link1Observation) DeepCopyInto(out *Link1Observation) { *out = *in @@ -13952,6 +18470,41 @@ func (in *Link1Parameters) DeepCopy() *Link1Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Link2InitParameters) DeepCopyInto(out *Link2InitParameters) { + *out = *in + if in.AdminEnabled != nil { + in, out := &in.AdminEnabled, &out.AdminEnabled + *out = new(bool) + **out = **in + } + if in.MacsecCakKeyvaultSecretID != nil { + in, out := &in.MacsecCakKeyvaultSecretID, &out.MacsecCakKeyvaultSecretID + *out = new(string) + **out = **in + } + if in.MacsecCipher != nil { + in, out := &in.MacsecCipher, &out.MacsecCipher + *out = new(string) + **out = **in + } + if in.MacsecCknKeyvaultSecretID != nil { + in, out := &in.MacsecCknKeyvaultSecretID, &out.MacsecCknKeyvaultSecretID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Link2InitParameters. +func (in *Link2InitParameters) DeepCopy() *Link2InitParameters { + if in == nil { + return nil + } + out := new(Link2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Link2Observation) DeepCopyInto(out *Link2Observation) { *out = *in @@ -14052,6 +18605,53 @@ func (in *Link2Parameters) DeepCopy() *Link2Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkInitParameters) DeepCopyInto(out *LinkInitParameters) { + *out = *in + if in.BGP != nil { + in, out := &in.BGP, &out.BGP + *out = make([]BGPInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Fqdn != nil { + in, out := &in.Fqdn, &out.Fqdn + *out = new(string) + **out = **in + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ProviderName != nil { + in, out := &in.ProviderName, &out.ProviderName + *out = new(string) + **out = **in + } + if in.SpeedInMbps != nil { + in, out := &in.SpeedInMbps, &out.SpeedInMbps + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkInitParameters. +func (in *LinkInitParameters) DeepCopy() *LinkInitParameters { + if in == nil { + return nil + } + out := new(LinkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkObservation) DeepCopyInto(out *LinkObservation) { *out = *in @@ -14232,6 +18832,31 @@ func (in *LoadBalancerBackendAddressPoolAddress) DeepCopyObject() runtime.Object return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerBackendAddressPoolAddressInitParameters) DeepCopyInto(out *LoadBalancerBackendAddressPoolAddressInitParameters) { + *out = *in + if in.BackendAddressIPConfigurationID != nil { + in, out := &in.BackendAddressIPConfigurationID, &out.BackendAddressIPConfigurationID + *out = new(string) + **out = **in + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerBackendAddressPoolAddressInitParameters. +func (in *LoadBalancerBackendAddressPoolAddressInitParameters) DeepCopy() *LoadBalancerBackendAddressPoolAddressInitParameters { + if in == nil { + return nil + } + out := new(LoadBalancerBackendAddressPoolAddressInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerBackendAddressPoolAddressList) DeepCopyInto(out *LoadBalancerBackendAddressPoolAddressList) { *out = *in @@ -14371,6 +18996,7 @@ func (in *LoadBalancerBackendAddressPoolAddressSpec) DeepCopyInto(out *LoadBalan *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerBackendAddressPoolAddressSpec. @@ -14400,6 +19026,33 @@ func (in *LoadBalancerBackendAddressPoolAddressStatus) DeepCopy() *LoadBalancerB return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerBackendAddressPoolInitParameters) DeepCopyInto(out *LoadBalancerBackendAddressPoolInitParameters) { + *out = *in + if in.TunnelInterface != nil { + in, out := &in.TunnelInterface, &out.TunnelInterface + *out = make([]TunnelInterfaceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VirtualNetworkID != nil { + in, out := &in.VirtualNetworkID, &out.VirtualNetworkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerBackendAddressPoolInitParameters. +func (in *LoadBalancerBackendAddressPoolInitParameters) DeepCopy() *LoadBalancerBackendAddressPoolInitParameters { + if in == nil { + return nil + } + out := new(LoadBalancerBackendAddressPoolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerBackendAddressPoolList) DeepCopyInto(out *LoadBalancerBackendAddressPoolList) { *out = *in @@ -14560,6 +19213,7 @@ func (in *LoadBalancerBackendAddressPoolSpec) DeepCopyInto(out *LoadBalancerBack *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerBackendAddressPoolSpec. @@ -14589,6 +19243,62 @@ func (in *LoadBalancerBackendAddressPoolStatus) DeepCopy() *LoadBalancerBackendA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerFrontendIPConfigurationInitParameters) DeepCopyInto(out *LoadBalancerFrontendIPConfigurationInitParameters) { + *out = *in + if in.GatewayLoadBalancerFrontendIPConfigurationID != nil { + in, out := &in.GatewayLoadBalancerFrontendIPConfigurationID, &out.GatewayLoadBalancerFrontendIPConfigurationID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrivateIPAddress != nil { + in, out := &in.PrivateIPAddress, &out.PrivateIPAddress + *out = new(string) + **out = **in + } + if in.PrivateIPAddressAllocation != nil { + in, out := &in.PrivateIPAddressAllocation, &out.PrivateIPAddressAllocation + *out = new(string) + **out = **in + } + if in.PrivateIPAddressVersion != nil { + in, out := &in.PrivateIPAddressVersion, &out.PrivateIPAddressVersion + *out = new(string) + **out = **in + } + if in.PublicIPPrefixID != nil { + in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID + *out = new(string) + **out = **in + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerFrontendIPConfigurationInitParameters. +func (in *LoadBalancerFrontendIPConfigurationInitParameters) DeepCopy() *LoadBalancerFrontendIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(LoadBalancerFrontendIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerFrontendIPConfigurationObservation) DeepCopyInto(out *LoadBalancerFrontendIPConfigurationObservation) { *out = *in @@ -14779,6 +19489,63 @@ func (in *LoadBalancerFrontendIPConfigurationParameters) DeepCopy() *LoadBalance return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerInitParameters) DeepCopyInto(out *LoadBalancerInitParameters) { + *out = *in + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) + **out = **in + } + if in.FrontendIPConfiguration != nil { + in, out := &in.FrontendIPConfiguration, &out.FrontendIPConfiguration + *out = make([]LoadBalancerFrontendIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.SkuTier != nil { + in, out := &in.SkuTier, &out.SkuTier + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerInitParameters. +func (in *LoadBalancerInitParameters) DeepCopy() *LoadBalancerInitParameters { + if in == nil { + return nil + } + out := new(LoadBalancerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerList) DeepCopyInto(out *LoadBalancerList) { *out = *in @@ -14838,6 +19605,61 @@ func (in *LoadBalancerNatPool) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerNatPoolInitParameters) DeepCopyInto(out *LoadBalancerNatPoolInitParameters) { + *out = *in + if in.BackendPort != nil { + in, out := &in.BackendPort, &out.BackendPort + *out = new(float64) + **out = **in + } + if in.FloatingIPEnabled != nil { + in, out := &in.FloatingIPEnabled, &out.FloatingIPEnabled + *out = new(bool) + **out = **in + } + if in.FrontendIPConfigurationName != nil { + in, out := &in.FrontendIPConfigurationName, &out.FrontendIPConfigurationName + *out = new(string) + **out = **in + } + if in.FrontendPortEnd != nil { + in, out := &in.FrontendPortEnd, &out.FrontendPortEnd + *out = new(float64) + **out = **in + } + if in.FrontendPortStart != nil { + in, out := &in.FrontendPortStart, &out.FrontendPortStart + *out = new(float64) + **out = **in + } + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.TCPResetEnabled != nil { + in, out := &in.TCPResetEnabled, &out.TCPResetEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerNatPoolInitParameters. +func (in *LoadBalancerNatPoolInitParameters) DeepCopy() *LoadBalancerNatPoolInitParameters { + if in == nil { + return nil + } + out := new(LoadBalancerNatPoolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerNatPoolList) DeepCopyInto(out *LoadBalancerNatPoolList) { *out = *in @@ -15035,6 +19857,7 @@ func (in *LoadBalancerNatPoolSpec) DeepCopyInto(out *LoadBalancerNatPoolSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerNatPoolSpec. @@ -15091,6 +19914,66 @@ func (in *LoadBalancerNatRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerNatRuleInitParameters) DeepCopyInto(out *LoadBalancerNatRuleInitParameters) { + *out = *in + if in.BackendPort != nil { + in, out := &in.BackendPort, &out.BackendPort + *out = new(float64) + **out = **in + } + if in.EnableFloatingIP != nil { + in, out := &in.EnableFloatingIP, &out.EnableFloatingIP + *out = new(bool) + **out = **in + } + if in.EnableTCPReset != nil { + in, out := &in.EnableTCPReset, &out.EnableTCPReset + *out = new(bool) + **out = **in + } + if in.FrontendIPConfigurationName != nil { + in, out := &in.FrontendIPConfigurationName, &out.FrontendIPConfigurationName + *out = new(string) + **out = **in + } + if in.FrontendPort != nil { + in, out := &in.FrontendPort, &out.FrontendPort + *out = new(float64) + **out = **in + } + if in.FrontendPortEnd != nil { + in, out := &in.FrontendPortEnd, &out.FrontendPortEnd + *out = new(float64) + **out = **in + } + if in.FrontendPortStart != nil { + in, out := &in.FrontendPortStart, &out.FrontendPortStart + *out = new(float64) + **out = **in + } + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerNatRuleInitParameters. +func (in *LoadBalancerNatRuleInitParameters) DeepCopy() *LoadBalancerNatRuleInitParameters { + if in == nil { + return nil + } + out := new(LoadBalancerNatRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerNatRuleList) DeepCopyInto(out *LoadBalancerNatRuleList) { *out = *in @@ -15323,6 +20206,7 @@ func (in *LoadBalancerNatRuleSpec) DeepCopyInto(out *LoadBalancerNatRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerNatRuleSpec. @@ -15462,6 +20346,26 @@ func (in *LoadBalancerOutboundRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerOutboundRuleFrontendIPConfigurationInitParameters) DeepCopyInto(out *LoadBalancerOutboundRuleFrontendIPConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerOutboundRuleFrontendIPConfigurationInitParameters. +func (in *LoadBalancerOutboundRuleFrontendIPConfigurationInitParameters) DeepCopy() *LoadBalancerOutboundRuleFrontendIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(LoadBalancerOutboundRuleFrontendIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerOutboundRuleFrontendIPConfigurationObservation) DeepCopyInto(out *LoadBalancerOutboundRuleFrontendIPConfigurationObservation) { *out = *in @@ -15507,6 +20411,48 @@ func (in *LoadBalancerOutboundRuleFrontendIPConfigurationParameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerOutboundRuleInitParameters) DeepCopyInto(out *LoadBalancerOutboundRuleInitParameters) { + *out = *in + if in.AllocatedOutboundPorts != nil { + in, out := &in.AllocatedOutboundPorts, &out.AllocatedOutboundPorts + *out = new(float64) + **out = **in + } + if in.EnableTCPReset != nil { + in, out := &in.EnableTCPReset, &out.EnableTCPReset + *out = new(bool) + **out = **in + } + if in.FrontendIPConfiguration != nil { + in, out := &in.FrontendIPConfiguration, &out.FrontendIPConfiguration + *out = make([]LoadBalancerOutboundRuleFrontendIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerOutboundRuleInitParameters. +func (in *LoadBalancerOutboundRuleInitParameters) DeepCopy() *LoadBalancerOutboundRuleInitParameters { + if in == nil { + return nil + } + out := new(LoadBalancerOutboundRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerOutboundRuleList) DeepCopyInto(out *LoadBalancerOutboundRuleList) { *out = *in @@ -15673,6 +20619,7 @@ func (in *LoadBalancerOutboundRuleSpec) DeepCopyInto(out *LoadBalancerOutboundRu *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerOutboundRuleSpec. @@ -15801,6 +20748,51 @@ func (in *LoadBalancerProbe) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerProbeInitParameters) DeepCopyInto(out *LoadBalancerProbeInitParameters) { + *out = *in + if in.IntervalInSeconds != nil { + in, out := &in.IntervalInSeconds, &out.IntervalInSeconds + *out = new(float64) + **out = **in + } + if in.NumberOfProbes != nil { + in, out := &in.NumberOfProbes, &out.NumberOfProbes + *out = new(float64) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.ProbeThreshold != nil { + in, out := &in.ProbeThreshold, &out.ProbeThreshold + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.RequestPath != nil { + in, out := &in.RequestPath, &out.RequestPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerProbeInitParameters. +func (in *LoadBalancerProbeInitParameters) DeepCopy() *LoadBalancerProbeInitParameters { + if in == nil { + return nil + } + out := new(LoadBalancerProbeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerProbeList) DeepCopyInto(out *LoadBalancerProbeList) { *out = *in @@ -15964,6 +20956,7 @@ func (in *LoadBalancerProbeSpec) DeepCopyInto(out *LoadBalancerProbeSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerProbeSpec. @@ -16020,6 +21013,82 @@ func (in *LoadBalancerRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoadBalancerRuleInitParameters) DeepCopyInto(out *LoadBalancerRuleInitParameters) { + *out = *in + if in.BackendAddressPoolIds != nil { + in, out := &in.BackendAddressPoolIds, &out.BackendAddressPoolIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.BackendPort != nil { + in, out := &in.BackendPort, &out.BackendPort + *out = new(float64) + **out = **in + } + if in.DisableOutboundSnat != nil { + in, out := &in.DisableOutboundSnat, &out.DisableOutboundSnat + *out = new(bool) + **out = **in + } + if in.EnableFloatingIP != nil { + in, out := &in.EnableFloatingIP, &out.EnableFloatingIP + *out = new(bool) + **out = **in + } + if in.EnableTCPReset != nil { + in, out := &in.EnableTCPReset, &out.EnableTCPReset + *out = new(bool) + **out = **in + } + if in.FrontendIPConfigurationName != nil { + in, out := &in.FrontendIPConfigurationName, &out.FrontendIPConfigurationName + *out = new(string) + **out = **in + } + if in.FrontendPort != nil { + in, out := &in.FrontendPort, &out.FrontendPort + *out = new(float64) + **out = **in + } + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.LoadDistribution != nil { + in, out := &in.LoadDistribution, &out.LoadDistribution + *out = new(string) + **out = **in + } + if in.ProbeID != nil { + in, out := &in.ProbeID, &out.ProbeID + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerRuleInitParameters. +func (in *LoadBalancerRuleInitParameters) DeepCopy() *LoadBalancerRuleInitParameters { + if in == nil { + return nil + } + out := new(LoadBalancerRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoadBalancerRuleList) DeepCopyInto(out *LoadBalancerRuleList) { *out = *in @@ -16239,6 +21308,7 @@ func (in *LoadBalancerRuleSpec) DeepCopyInto(out *LoadBalancerRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerRuleSpec. @@ -16273,6 +21343,7 @@ func (in *LoadBalancerSpec) DeepCopyInto(out *LoadBalancerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerSpec. @@ -16329,6 +21400,69 @@ func (in *LocalNetworkGateway) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LocalNetworkGatewayInitParameters) DeepCopyInto(out *LocalNetworkGatewayInitParameters) { + *out = *in + if in.AddressSpace != nil { + in, out := &in.AddressSpace, &out.AddressSpace + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.BGPSettings != nil { + in, out := &in.BGPSettings, &out.BGPSettings + *out = make([]BGPSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GatewayAddress != nil { + in, out := &in.GatewayAddress, &out.GatewayAddress + *out = new(string) + **out = **in + } + if in.GatewayFqdn != nil { + in, out := &in.GatewayFqdn, &out.GatewayFqdn + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalNetworkGatewayInitParameters. +func (in *LocalNetworkGatewayInitParameters) DeepCopy() *LocalNetworkGatewayInitParameters { + if in == nil { + return nil + } + out := new(LocalNetworkGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LocalNetworkGatewayList) DeepCopyInto(out *LocalNetworkGatewayList) { *out = *in @@ -16517,6 +21651,7 @@ func (in *LocalNetworkGatewaySpec) DeepCopyInto(out *LocalNetworkGatewaySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalNetworkGatewaySpec. @@ -16546,6 +21681,31 @@ func (in *LocalNetworkGatewayStatus) DeepCopy() *LocalNetworkGatewayStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsWorkspaceInitParameters) DeepCopyInto(out *LogAnalyticsWorkspaceInitParameters) { + *out = *in + if in.FirewallLocation != nil { + in, out := &in.FirewallLocation, &out.FirewallLocation + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsWorkspaceInitParameters. +func (in *LogAnalyticsWorkspaceInitParameters) DeepCopy() *LogAnalyticsWorkspaceInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsWorkspaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsWorkspaceObservation) DeepCopyInto(out *LogAnalyticsWorkspaceObservation) { *out = *in @@ -16596,6 +21756,36 @@ func (in *LogAnalyticsWorkspaceParameters) DeepCopy() *LogAnalyticsWorkspacePara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedRuleExclusionInitParameters) DeepCopyInto(out *ManagedRuleExclusionInitParameters) { + *out = *in + if in.MatchVariable != nil { + in, out := &in.MatchVariable, &out.MatchVariable + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedRuleExclusionInitParameters. +func (in *ManagedRuleExclusionInitParameters) DeepCopy() *ManagedRuleExclusionInitParameters { + if in == nil { + return nil + } + out := new(ManagedRuleExclusionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedRuleExclusionObservation) DeepCopyInto(out *ManagedRuleExclusionObservation) { *out = *in @@ -16656,6 +21846,45 @@ func (in *ManagedRuleExclusionParameters) DeepCopy() *ManagedRuleExclusionParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedRuleInitParameters) DeepCopyInto(out *ManagedRuleInitParameters) { + *out = *in + if in.Exclusion != nil { + in, out := &in.Exclusion, &out.Exclusion + *out = make([]ManagedRuleExclusionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Override != nil { + in, out := &in.Override, &out.Override + *out = make([]OverrideInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedRuleInitParameters. +func (in *ManagedRuleInitParameters) DeepCopy() *ManagedRuleInitParameters { + if in == nil { + return nil + } + out := new(ManagedRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedRuleObservation) DeepCopyInto(out *ManagedRuleObservation) { *out = *in @@ -16734,6 +21963,38 @@ func (in *ManagedRuleParameters) DeepCopy() *ManagedRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedRuleSetInitParameters) DeepCopyInto(out *ManagedRuleSetInitParameters) { + *out = *in + if in.RuleGroupOverride != nil { + in, out := &in.RuleGroupOverride, &out.RuleGroupOverride + *out = make([]RuleGroupOverrideInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedRuleSetInitParameters. +func (in *ManagedRuleSetInitParameters) DeepCopy() *ManagedRuleSetInitParameters { + if in == nil { + return nil + } + out := new(ManagedRuleSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedRuleSetObservation) DeepCopyInto(out *ManagedRuleSetObservation) { *out = *in @@ -16798,6 +22059,43 @@ func (in *ManagedRuleSetParameters) DeepCopy() *ManagedRuleSetParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedRulesExclusionInitParameters) DeepCopyInto(out *ManagedRulesExclusionInitParameters) { + *out = *in + if in.ExcludedRuleSet != nil { + in, out := &in.ExcludedRuleSet, &out.ExcludedRuleSet + *out = make([]ExcludedRuleSetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MatchVariable != nil { + in, out := &in.MatchVariable, &out.MatchVariable + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } + if in.SelectorMatchOperator != nil { + in, out := &in.SelectorMatchOperator, &out.SelectorMatchOperator + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedRulesExclusionInitParameters. +func (in *ManagedRulesExclusionInitParameters) DeepCopy() *ManagedRulesExclusionInitParameters { + if in == nil { + return nil + } + out := new(ManagedRulesExclusionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedRulesExclusionObservation) DeepCopyInto(out *ManagedRulesExclusionObservation) { *out = *in @@ -16872,6 +22170,35 @@ func (in *ManagedRulesExclusionParameters) DeepCopy() *ManagedRulesExclusionPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedRulesInitParameters) DeepCopyInto(out *ManagedRulesInitParameters) { + *out = *in + if in.Exclusion != nil { + in, out := &in.Exclusion, &out.Exclusion + *out = make([]ManagedRulesExclusionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ManagedRuleSet != nil { + in, out := &in.ManagedRuleSet, &out.ManagedRuleSet + *out = make([]ManagedRuleSetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedRulesInitParameters. +func (in *ManagedRulesInitParameters) DeepCopy() *ManagedRulesInitParameters { + if in == nil { + return nil + } + out := new(ManagedRulesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedRulesObservation) DeepCopyInto(out *ManagedRulesObservation) { *out = *in @@ -16930,6 +22257,31 @@ func (in *ManagedRulesParameters) DeepCopy() *ManagedRulesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementIPConfigurationInitParameters) DeepCopyInto(out *ManagementIPConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublicIPAddressID != nil { + in, out := &in.PublicIPAddressID, &out.PublicIPAddressID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementIPConfigurationInitParameters. +func (in *ManagementIPConfigurationInitParameters) DeepCopy() *ManagementIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(ManagementIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagementIPConfigurationObservation) DeepCopyInto(out *ManagementIPConfigurationObservation) { *out = *in @@ -17032,6 +22384,64 @@ func (in *Manager) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagerInitParameters) DeepCopyInto(out *ManagerInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = make([]ScopeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScopeAccesses != nil { + in, out := &in.ScopeAccesses, &out.ScopeAccesses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagerInitParameters. +func (in *ManagerInitParameters) DeepCopy() *ManagerInitParameters { + if in == nil { + return nil + } + out := new(ManagerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagerList) DeepCopyInto(out *ManagerList) { *out = *in @@ -17091,6 +22501,26 @@ func (in *ManagerManagementGroupConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagerManagementGroupConnectionInitParameters) DeepCopyInto(out *ManagerManagementGroupConnectionInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagerManagementGroupConnectionInitParameters. +func (in *ManagerManagementGroupConnectionInitParameters) DeepCopy() *ManagerManagementGroupConnectionInitParameters { + if in == nil { + return nil + } + out := new(ManagerManagementGroupConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagerManagementGroupConnectionList) DeepCopyInto(out *ManagerManagementGroupConnectionList) { *out = *in @@ -17218,6 +22648,7 @@ func (in *ManagerManagementGroupConnectionSpec) DeepCopyInto(out *ManagerManagem *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagerManagementGroupConnectionSpec. @@ -17274,6 +22705,26 @@ func (in *ManagerNetworkGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagerNetworkGroupInitParameters) DeepCopyInto(out *ManagerNetworkGroupInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagerNetworkGroupInitParameters. +func (in *ManagerNetworkGroupInitParameters) DeepCopy() *ManagerNetworkGroupInitParameters { + if in == nil { + return nil + } + out := new(ManagerNetworkGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagerNetworkGroupList) DeepCopyInto(out *ManagerNetworkGroupList) { *out = *in @@ -17376,6 +22827,7 @@ func (in *ManagerNetworkGroupSpec) DeepCopyInto(out *ManagerNetworkGroupSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagerNetworkGroupSpec. @@ -17558,6 +23010,7 @@ func (in *ManagerSpec) DeepCopyInto(out *ManagerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagerSpec. @@ -17597,6 +23050,21 @@ func (in *ManagerStaticMember) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagerStaticMemberInitParameters) DeepCopyInto(out *ManagerStaticMemberInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagerStaticMemberInitParameters. +func (in *ManagerStaticMemberInitParameters) DeepCopy() *ManagerStaticMemberInitParameters { + if in == nil { + return nil + } + out := new(ManagerStaticMemberInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagerStaticMemberList) DeepCopyInto(out *ManagerStaticMemberList) { *out = *in @@ -17714,6 +23182,7 @@ func (in *ManagerStaticMemberSpec) DeepCopyInto(out *ManagerStaticMemberSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagerStaticMemberSpec. @@ -17787,6 +23256,31 @@ func (in *ManagerSubscriptionConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagerSubscriptionConnectionInitParameters) DeepCopyInto(out *ManagerSubscriptionConnectionInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagerSubscriptionConnectionInitParameters. +func (in *ManagerSubscriptionConnectionInitParameters) DeepCopy() *ManagerSubscriptionConnectionInitParameters { + if in == nil { + return nil + } + out := new(ManagerSubscriptionConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagerSubscriptionConnectionList) DeepCopyInto(out *ManagerSubscriptionConnectionList) { *out = *in @@ -17904,6 +23398,7 @@ func (in *ManagerSubscriptionConnectionSpec) DeepCopyInto(out *ManagerSubscripti *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagerSubscriptionConnectionSpec. @@ -17933,6 +23428,63 @@ func (in *ManagerSubscriptionConnectionStatus) DeepCopy() *ManagerSubscriptionCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MatchConditionInitParameters) DeepCopyInto(out *MatchConditionInitParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MatchVariable != nil { + in, out := &in.MatchVariable, &out.MatchVariable + *out = new(string) + **out = **in + } + if in.NegationCondition != nil { + in, out := &in.NegationCondition, &out.NegationCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchConditionInitParameters. +func (in *MatchConditionInitParameters) DeepCopy() *MatchConditionInitParameters { + if in == nil { + return nil + } + out := new(MatchConditionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MatchConditionObservation) DeepCopyInto(out *MatchConditionObservation) { *out = *in @@ -18047,6 +23599,60 @@ func (in *MatchConditionParameters) DeepCopy() *MatchConditionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MatchConditionsInitParameters) DeepCopyInto(out *MatchConditionsInitParameters) { + *out = *in + if in.MatchValues != nil { + in, out := &in.MatchValues, &out.MatchValues + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MatchVariables != nil { + in, out := &in.MatchVariables, &out.MatchVariables + *out = make([]MatchVariablesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.NegationCondition != nil { + in, out := &in.NegationCondition, &out.NegationCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Transforms != nil { + in, out := &in.Transforms, &out.Transforms + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchConditionsInitParameters. +func (in *MatchConditionsInitParameters) DeepCopy() *MatchConditionsInitParameters { + if in == nil { + return nil + } + out := new(MatchConditionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MatchConditionsObservation) DeepCopyInto(out *MatchConditionsObservation) { *out = *in @@ -18155,6 +23761,59 @@ func (in *MatchConditionsParameters) DeepCopy() *MatchConditionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MatchCriterionInitParameters) DeepCopyInto(out *MatchCriterionInitParameters) { + *out = *in + if in.AsPath != nil { + in, out := &in.AsPath, &out.AsPath + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Community != nil { + in, out := &in.Community, &out.Community + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MatchCondition != nil { + in, out := &in.MatchCondition, &out.MatchCondition + *out = new(string) + **out = **in + } + if in.RoutePrefix != nil { + in, out := &in.RoutePrefix, &out.RoutePrefix + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchCriterionInitParameters. +func (in *MatchCriterionInitParameters) DeepCopy() *MatchCriterionInitParameters { + if in == nil { + return nil + } + out := new(MatchCriterionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MatchCriterionObservation) DeepCopyInto(out *MatchCriterionObservation) { *out = *in @@ -18261,6 +23920,37 @@ func (in *MatchCriterionParameters) DeepCopy() *MatchCriterionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MatchInitParameters) DeepCopyInto(out *MatchInitParameters) { + *out = *in + if in.Body != nil { + in, out := &in.Body, &out.Body + *out = new(string) + **out = **in + } + if in.StatusCode != nil { + in, out := &in.StatusCode, &out.StatusCode + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchInitParameters. +func (in *MatchInitParameters) DeepCopy() *MatchInitParameters { + if in == nil { + return nil + } + out := new(MatchInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MatchObservation) DeepCopyInto(out *MatchObservation) { *out = *in @@ -18323,6 +24013,31 @@ func (in *MatchParameters) DeepCopy() *MatchParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MatchVariablesInitParameters) DeepCopyInto(out *MatchVariablesInitParameters) { + *out = *in + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } + if in.VariableName != nil { + in, out := &in.VariableName, &out.VariableName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchVariablesInitParameters. +func (in *MatchVariablesInitParameters) DeepCopy() *MatchVariablesInitParameters { + if in == nil { + return nil + } + out := new(MatchVariablesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MatchVariablesObservation) DeepCopyInto(out *MatchVariablesObservation) { *out = *in @@ -18373,6 +24088,53 @@ func (in *MatchVariablesParameters) DeepCopy() *MatchVariablesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MicrosoftPeeringConfigInitParameters) DeepCopyInto(out *MicrosoftPeeringConfigInitParameters) { + *out = *in + if in.AdvertisedCommunities != nil { + in, out := &in.AdvertisedCommunities, &out.AdvertisedCommunities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AdvertisedPublicPrefixes != nil { + in, out := &in.AdvertisedPublicPrefixes, &out.AdvertisedPublicPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CustomerAsn != nil { + in, out := &in.CustomerAsn, &out.CustomerAsn + *out = new(float64) + **out = **in + } + if in.RoutingRegistryName != nil { + in, out := &in.RoutingRegistryName, &out.RoutingRegistryName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrosoftPeeringConfigInitParameters. +func (in *MicrosoftPeeringConfigInitParameters) DeepCopy() *MicrosoftPeeringConfigInitParameters { + if in == nil { + return nil + } + out := new(MicrosoftPeeringConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MicrosoftPeeringConfigObservation) DeepCopyInto(out *MicrosoftPeeringConfigObservation) { *out = *in @@ -18467,6 +24229,53 @@ func (in *MicrosoftPeeringConfigParameters) DeepCopy() *MicrosoftPeeringConfigPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MicrosoftPeeringInitParameters) DeepCopyInto(out *MicrosoftPeeringInitParameters) { + *out = *in + if in.AdvertisedCommunities != nil { + in, out := &in.AdvertisedCommunities, &out.AdvertisedCommunities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AdvertisedPublicPrefixes != nil { + in, out := &in.AdvertisedPublicPrefixes, &out.AdvertisedPublicPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CustomerAsn != nil { + in, out := &in.CustomerAsn, &out.CustomerAsn + *out = new(float64) + **out = **in + } + if in.RoutingRegistryName != nil { + in, out := &in.RoutingRegistryName, &out.RoutingRegistryName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrosoftPeeringInitParameters. +func (in *MicrosoftPeeringInitParameters) DeepCopy() *MicrosoftPeeringInitParameters { + if in == nil { + return nil + } + out := new(MicrosoftPeeringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MicrosoftPeeringObservation) DeepCopyInto(out *MicrosoftPeeringObservation) { *out = *in @@ -18561,6 +24370,31 @@ func (in *MicrosoftPeeringParameters) DeepCopy() *MicrosoftPeeringParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorConfigCustomHeaderInitParameters) DeepCopyInto(out *MonitorConfigCustomHeaderInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorConfigCustomHeaderInitParameters. +func (in *MonitorConfigCustomHeaderInitParameters) DeepCopy() *MonitorConfigCustomHeaderInitParameters { + if in == nil { + return nil + } + out := new(MonitorConfigCustomHeaderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorConfigCustomHeaderObservation) DeepCopyInto(out *MonitorConfigCustomHeaderObservation) { *out = *in @@ -18611,6 +24445,69 @@ func (in *MonitorConfigCustomHeaderParameters) DeepCopy() *MonitorConfigCustomHe return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitorConfigInitParameters) DeepCopyInto(out *MonitorConfigInitParameters) { + *out = *in + if in.CustomHeader != nil { + in, out := &in.CustomHeader, &out.CustomHeader + *out = make([]MonitorConfigCustomHeaderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ExpectedStatusCodeRanges != nil { + in, out := &in.ExpectedStatusCodeRanges, &out.ExpectedStatusCodeRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IntervalInSeconds != nil { + in, out := &in.IntervalInSeconds, &out.IntervalInSeconds + *out = new(float64) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.TimeoutInSeconds != nil { + in, out := &in.TimeoutInSeconds, &out.TimeoutInSeconds + *out = new(float64) + **out = **in + } + if in.ToleratedNumberOfFailures != nil { + in, out := &in.ToleratedNumberOfFailures, &out.ToleratedNumberOfFailures + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorConfigInitParameters. +func (in *MonitorConfigInitParameters) DeepCopy() *MonitorConfigInitParameters { + if in == nil { + return nil + } + out := new(MonitorConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitorConfigObservation) DeepCopyInto(out *MonitorConfigObservation) { *out = *in @@ -18764,6 +24661,62 @@ func (in *NATGateway) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NATGatewayInitParameters) DeepCopyInto(out *NATGatewayInitParameters) { + *out = *in + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewayInitParameters. +func (in *NATGatewayInitParameters) DeepCopy() *NATGatewayInitParameters { + if in == nil { + return nil + } + out := new(NATGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NATGatewayList) DeepCopyInto(out *NATGatewayList) { *out = *in @@ -18965,6 +24918,21 @@ func (in *NATGatewayPublicIPAssociation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NATGatewayPublicIPAssociationInitParameters) DeepCopyInto(out *NATGatewayPublicIPAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewayPublicIPAssociationInitParameters. +func (in *NATGatewayPublicIPAssociationInitParameters) DeepCopy() *NATGatewayPublicIPAssociationInitParameters { + if in == nil { + return nil + } + out := new(NATGatewayPublicIPAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NATGatewayPublicIPAssociationList) DeepCopyInto(out *NATGatewayPublicIPAssociationList) { *out = *in @@ -19077,6 +25045,7 @@ func (in *NATGatewayPublicIPAssociationSpec) DeepCopyInto(out *NATGatewayPublicI *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewayPublicIPAssociationSpec. @@ -19133,6 +25102,21 @@ func (in *NATGatewayPublicIPPrefixAssociation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NATGatewayPublicIPPrefixAssociationInitParameters) DeepCopyInto(out *NATGatewayPublicIPPrefixAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewayPublicIPPrefixAssociationInitParameters. +func (in *NATGatewayPublicIPPrefixAssociationInitParameters) DeepCopy() *NATGatewayPublicIPPrefixAssociationInitParameters { + if in == nil { + return nil + } + out := new(NATGatewayPublicIPPrefixAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NATGatewayPublicIPPrefixAssociationList) DeepCopyInto(out *NATGatewayPublicIPPrefixAssociationList) { *out = *in @@ -19245,6 +25229,7 @@ func (in *NATGatewayPublicIPPrefixAssociationSpec) DeepCopyInto(out *NATGatewayP *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewayPublicIPPrefixAssociationSpec. @@ -19279,6 +25264,7 @@ func (in *NATGatewaySpec) DeepCopyInto(out *NATGatewaySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATGatewaySpec. @@ -19308,6 +25294,41 @@ func (in *NATGatewayStatus) DeepCopy() *NATGatewayStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NATIPConfigurationInitParameters) DeepCopyInto(out *NATIPConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } + if in.PrivateIPAddress != nil { + in, out := &in.PrivateIPAddress, &out.PrivateIPAddress + *out = new(string) + **out = **in + } + if in.PrivateIPAddressVersion != nil { + in, out := &in.PrivateIPAddressVersion, &out.PrivateIPAddressVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATIPConfigurationInitParameters. +func (in *NATIPConfigurationInitParameters) DeepCopy() *NATIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(NATIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NATIPConfigurationObservation) DeepCopyInto(out *NATIPConfigurationObservation) { *out = *in @@ -19398,6 +25419,43 @@ func (in *NATIPConfigurationParameters) DeepCopy() *NATIPConfigurationParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NATRuleCollectionInitParameters) DeepCopyInto(out *NATRuleCollectionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]NATRuleCollectionRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATRuleCollectionInitParameters. +func (in *NATRuleCollectionInitParameters) DeepCopy() *NATRuleCollectionInitParameters { + if in == nil { + return nil + } + out := new(NATRuleCollectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NATRuleCollectionObservation) DeepCopyInto(out *NATRuleCollectionObservation) { *out = *in @@ -19472,6 +25530,90 @@ func (in *NATRuleCollectionParameters) DeepCopy() *NATRuleCollectionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NATRuleCollectionRuleInitParameters) DeepCopyInto(out *NATRuleCollectionRuleInitParameters) { + *out = *in + if in.DestinationAddress != nil { + in, out := &in.DestinationAddress, &out.DestinationAddress + *out = new(string) + **out = **in + } + if in.DestinationPorts != nil { + in, out := &in.DestinationPorts, &out.DestinationPorts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Protocols != nil { + in, out := &in.Protocols, &out.Protocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceAddresses != nil { + in, out := &in.SourceAddresses, &out.SourceAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceIPGroups != nil { + in, out := &in.SourceIPGroups, &out.SourceIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TranslatedAddress != nil { + in, out := &in.TranslatedAddress, &out.TranslatedAddress + *out = new(string) + **out = **in + } + if in.TranslatedFqdn != nil { + in, out := &in.TranslatedFqdn, &out.TranslatedFqdn + *out = new(string) + **out = **in + } + if in.TranslatedPort != nil { + in, out := &in.TranslatedPort, &out.TranslatedPort + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NATRuleCollectionRuleInitParameters. +func (in *NATRuleCollectionRuleInitParameters) DeepCopy() *NATRuleCollectionRuleInitParameters { + if in == nil { + return nil + } + out := new(NATRuleCollectionRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NATRuleCollectionRuleObservation) DeepCopyInto(out *NATRuleCollectionRuleObservation) { *out = *in @@ -19694,6 +25836,21 @@ func (in *NetworkInterfaceApplicationSecurityGroupAssociation) DeepCopyObject() return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkInterfaceApplicationSecurityGroupAssociationInitParameters) DeepCopyInto(out *NetworkInterfaceApplicationSecurityGroupAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceApplicationSecurityGroupAssociationInitParameters. +func (in *NetworkInterfaceApplicationSecurityGroupAssociationInitParameters) DeepCopy() *NetworkInterfaceApplicationSecurityGroupAssociationInitParameters { + if in == nil { + return nil + } + out := new(NetworkInterfaceApplicationSecurityGroupAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkInterfaceApplicationSecurityGroupAssociationList) DeepCopyInto(out *NetworkInterfaceApplicationSecurityGroupAssociationList) { *out = *in @@ -19806,6 +25963,7 @@ func (in *NetworkInterfaceApplicationSecurityGroupAssociationSpec) DeepCopyInto( *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceApplicationSecurityGroupAssociationSpec. @@ -19862,6 +26020,26 @@ func (in *NetworkInterfaceBackendAddressPoolAssociation) DeepCopyObject() runtim return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkInterfaceBackendAddressPoolAssociationInitParameters) DeepCopyInto(out *NetworkInterfaceBackendAddressPoolAssociationInitParameters) { + *out = *in + if in.IPConfigurationName != nil { + in, out := &in.IPConfigurationName, &out.IPConfigurationName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceBackendAddressPoolAssociationInitParameters. +func (in *NetworkInterfaceBackendAddressPoolAssociationInitParameters) DeepCopy() *NetworkInterfaceBackendAddressPoolAssociationInitParameters { + if in == nil { + return nil + } + out := new(NetworkInterfaceBackendAddressPoolAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkInterfaceBackendAddressPoolAssociationList) DeepCopyInto(out *NetworkInterfaceBackendAddressPoolAssociationList) { *out = *in @@ -19984,6 +26162,7 @@ func (in *NetworkInterfaceBackendAddressPoolAssociationSpec) DeepCopyInto(out *N *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceBackendAddressPoolAssociationSpec. @@ -20013,6 +26192,56 @@ func (in *NetworkInterfaceBackendAddressPoolAssociationStatus) DeepCopy() *Netwo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkInterfaceIPConfigurationInitParameters) DeepCopyInto(out *NetworkInterfaceIPConfigurationInitParameters) { + *out = *in + if in.GatewayLoadBalancerFrontendIPConfigurationID != nil { + in, out := &in.GatewayLoadBalancerFrontendIPConfigurationID, &out.GatewayLoadBalancerFrontendIPConfigurationID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } + if in.PrivateIPAddress != nil { + in, out := &in.PrivateIPAddress, &out.PrivateIPAddress + *out = new(string) + **out = **in + } + if in.PrivateIPAddressAllocation != nil { + in, out := &in.PrivateIPAddressAllocation, &out.PrivateIPAddressAllocation + *out = new(string) + **out = **in + } + if in.PrivateIPAddressVersion != nil { + in, out := &in.PrivateIPAddressVersion, &out.PrivateIPAddressVersion + *out = new(string) + **out = **in + } + if in.PublicIPAddressID != nil { + in, out := &in.PublicIPAddressID, &out.PublicIPAddressID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationInitParameters. +func (in *NetworkInterfaceIPConfigurationInitParameters) DeepCopy() *NetworkInterfaceIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(NetworkInterfaceIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkInterfaceIPConfigurationObservation) DeepCopyInto(out *NetworkInterfaceIPConfigurationObservation) { *out = *in @@ -20133,6 +26362,79 @@ func (in *NetworkInterfaceIPConfigurationParameters) DeepCopy() *NetworkInterfac return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkInterfaceInitParameters) DeepCopyInto(out *NetworkInterfaceInitParameters) { + *out = *in + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) + **out = **in + } + if in.EnableAcceleratedNetworking != nil { + in, out := &in.EnableAcceleratedNetworking, &out.EnableAcceleratedNetworking + *out = new(bool) + **out = **in + } + if in.EnableIPForwarding != nil { + in, out := &in.EnableIPForwarding, &out.EnableIPForwarding + *out = new(bool) + **out = **in + } + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]NetworkInterfaceIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InternalDNSNameLabel != nil { + in, out := &in.InternalDNSNameLabel, &out.InternalDNSNameLabel + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceInitParameters. +func (in *NetworkInterfaceInitParameters) DeepCopy() *NetworkInterfaceInitParameters { + if in == nil { + return nil + } + out := new(NetworkInterfaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkInterfaceList) DeepCopyInto(out *NetworkInterfaceList) { *out = *in @@ -20192,6 +26494,26 @@ func (in *NetworkInterfaceNatRuleAssociation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkInterfaceNatRuleAssociationInitParameters) DeepCopyInto(out *NetworkInterfaceNatRuleAssociationInitParameters) { + *out = *in + if in.IPConfigurationName != nil { + in, out := &in.IPConfigurationName, &out.IPConfigurationName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceNatRuleAssociationInitParameters. +func (in *NetworkInterfaceNatRuleAssociationInitParameters) DeepCopy() *NetworkInterfaceNatRuleAssociationInitParameters { + if in == nil { + return nil + } + out := new(NetworkInterfaceNatRuleAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkInterfaceNatRuleAssociationList) DeepCopyInto(out *NetworkInterfaceNatRuleAssociationList) { *out = *in @@ -20314,6 +26636,7 @@ func (in *NetworkInterfaceNatRuleAssociationSpec) DeepCopyInto(out *NetworkInter *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceNatRuleAssociationSpec. @@ -20583,6 +26906,21 @@ func (in *NetworkInterfaceSecurityGroupAssociation) DeepCopyObject() runtime.Obj return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkInterfaceSecurityGroupAssociationInitParameters) DeepCopyInto(out *NetworkInterfaceSecurityGroupAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceSecurityGroupAssociationInitParameters. +func (in *NetworkInterfaceSecurityGroupAssociationInitParameters) DeepCopy() *NetworkInterfaceSecurityGroupAssociationInitParameters { + if in == nil { + return nil + } + out := new(NetworkInterfaceSecurityGroupAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkInterfaceSecurityGroupAssociationList) DeepCopyInto(out *NetworkInterfaceSecurityGroupAssociationList) { *out = *in @@ -20695,6 +27033,7 @@ func (in *NetworkInterfaceSecurityGroupAssociationSpec) DeepCopyInto(out *Networ *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceSecurityGroupAssociationSpec. @@ -20729,6 +27068,7 @@ func (in *NetworkInterfaceSpec) DeepCopyInto(out *NetworkInterfaceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceSpec. @@ -20758,6 +27098,43 @@ func (in *NetworkInterfaceStatus) DeepCopy() *NetworkInterfaceStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkRuleCollectionInitParameters) DeepCopyInto(out *NetworkRuleCollectionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]NetworkRuleCollectionRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkRuleCollectionInitParameters. +func (in *NetworkRuleCollectionInitParameters) DeepCopy() *NetworkRuleCollectionInitParameters { + if in == nil { + return nil + } + out := new(NetworkRuleCollectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkRuleCollectionObservation) DeepCopyInto(out *NetworkRuleCollectionObservation) { *out = *in @@ -20832,6 +27209,103 @@ func (in *NetworkRuleCollectionParameters) DeepCopy() *NetworkRuleCollectionPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkRuleCollectionRuleInitParameters) DeepCopyInto(out *NetworkRuleCollectionRuleInitParameters) { + *out = *in + if in.DestinationAddresses != nil { + in, out := &in.DestinationAddresses, &out.DestinationAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationFqdns != nil { + in, out := &in.DestinationFqdns, &out.DestinationFqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationIPGroups != nil { + in, out := &in.DestinationIPGroups, &out.DestinationIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationPorts != nil { + in, out := &in.DestinationPorts, &out.DestinationPorts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Protocols != nil { + in, out := &in.Protocols, &out.Protocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceAddresses != nil { + in, out := &in.SourceAddresses, &out.SourceAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceIPGroups != nil { + in, out := &in.SourceIPGroups, &out.SourceIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkRuleCollectionRuleInitParameters. +func (in *NetworkRuleCollectionRuleInitParameters) DeepCopy() *NetworkRuleCollectionRuleInitParameters { + if in == nil { + return nil + } + out := new(NetworkRuleCollectionRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkRuleCollectionRuleObservation) DeepCopyInto(out *NetworkRuleCollectionRuleObservation) { *out = *in @@ -21026,6 +27500,28 @@ func (in *NetworkRuleCollectionRuleParameters) DeepCopy() *NetworkRuleCollection return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *O365PolicyInitParameters) DeepCopyInto(out *O365PolicyInitParameters) { + *out = *in + if in.TrafficCategory != nil { + in, out := &in.TrafficCategory, &out.TrafficCategory + *out = make([]TrafficCategoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new O365PolicyInitParameters. +func (in *O365PolicyInitParameters) DeepCopy() *O365PolicyInitParameters { + if in == nil { + return nil + } + out := new(O365PolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *O365PolicyObservation) DeepCopyInto(out *O365PolicyObservation) { *out = *in @@ -21070,6 +27566,36 @@ func (in *O365PolicyParameters) DeepCopy() *O365PolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OverrideExclusionInitParameters) DeepCopyInto(out *OverrideExclusionInitParameters) { + *out = *in + if in.MatchVariable != nil { + in, out := &in.MatchVariable, &out.MatchVariable + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OverrideExclusionInitParameters. +func (in *OverrideExclusionInitParameters) DeepCopy() *OverrideExclusionInitParameters { + if in == nil { + return nil + } + out := new(OverrideExclusionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OverrideExclusionObservation) DeepCopyInto(out *OverrideExclusionObservation) { *out = *in @@ -21130,6 +27656,40 @@ func (in *OverrideExclusionParameters) DeepCopy() *OverrideExclusionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OverrideInitParameters) DeepCopyInto(out *OverrideInitParameters) { + *out = *in + if in.Exclusion != nil { + in, out := &in.Exclusion, &out.Exclusion + *out = make([]OverrideExclusionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]OverrideRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuleGroupName != nil { + in, out := &in.RuleGroupName, &out.RuleGroupName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OverrideInitParameters. +func (in *OverrideInitParameters) DeepCopy() *OverrideInitParameters { + if in == nil { + return nil + } + out := new(OverrideInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OverrideObservation) DeepCopyInto(out *OverrideObservation) { *out = *in @@ -21198,6 +27758,43 @@ func (in *OverrideParameters) DeepCopy() *OverrideParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OverrideRuleInitParameters) DeepCopyInto(out *OverrideRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Exclusion != nil { + in, out := &in.Exclusion, &out.Exclusion + *out = make([]RuleExclusionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuleID != nil { + in, out := &in.RuleID, &out.RuleID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OverrideRuleInitParameters. +func (in *OverrideRuleInitParameters) DeepCopy() *OverrideRuleInitParameters { + if in == nil { + return nil + } + out := new(OverrideRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OverrideRuleObservation) DeepCopyInto(out *OverrideRuleObservation) { *out = *in @@ -21299,6 +27896,46 @@ func (in *PacketCapture) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PacketCaptureFilterInitParameters) DeepCopyInto(out *PacketCaptureFilterInitParameters) { + *out = *in + if in.LocalIPAddress != nil { + in, out := &in.LocalIPAddress, &out.LocalIPAddress + *out = new(string) + **out = **in + } + if in.LocalPort != nil { + in, out := &in.LocalPort, &out.LocalPort + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.RemoteIPAddress != nil { + in, out := &in.RemoteIPAddress, &out.RemoteIPAddress + *out = new(string) + **out = **in + } + if in.RemotePort != nil { + in, out := &in.RemotePort, &out.RemotePort + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketCaptureFilterInitParameters. +func (in *PacketCaptureFilterInitParameters) DeepCopy() *PacketCaptureFilterInitParameters { + if in == nil { + return nil + } + out := new(PacketCaptureFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PacketCaptureFilterObservation) DeepCopyInto(out *PacketCaptureFilterObservation) { *out = *in @@ -21379,6 +28016,55 @@ func (in *PacketCaptureFilterParameters) DeepCopy() *PacketCaptureFilterParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PacketCaptureInitParameters) DeepCopyInto(out *PacketCaptureInitParameters) { + *out = *in + if in.Filter != nil { + in, out := &in.Filter, &out.Filter + *out = make([]PacketCaptureFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MaximumBytesPerPacket != nil { + in, out := &in.MaximumBytesPerPacket, &out.MaximumBytesPerPacket + *out = new(float64) + **out = **in + } + if in.MaximumBytesPerSession != nil { + in, out := &in.MaximumBytesPerSession, &out.MaximumBytesPerSession + *out = new(float64) + **out = **in + } + if in.MaximumCaptureDuration != nil { + in, out := &in.MaximumCaptureDuration, &out.MaximumCaptureDuration + *out = new(float64) + **out = **in + } + if in.StorageLocation != nil { + in, out := &in.StorageLocation, &out.StorageLocation + *out = make([]StorageLocationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetResourceID != nil { + in, out := &in.TargetResourceID, &out.TargetResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketCaptureInitParameters. +func (in *PacketCaptureInitParameters) DeepCopy() *PacketCaptureInitParameters { + if in == nil { + return nil + } + out := new(PacketCaptureInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PacketCaptureList) DeepCopyInto(out *PacketCaptureList) { *out = *in @@ -21559,6 +28245,7 @@ func (in *PacketCaptureSpec) DeepCopyInto(out *PacketCaptureSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketCaptureSpec. @@ -21588,6 +28275,54 @@ func (in *PacketCaptureStatus) DeepCopy() *PacketCaptureStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ParameterInitParameters) DeepCopyInto(out *ParameterInitParameters) { + *out = *in + if in.AsPath != nil { + in, out := &in.AsPath, &out.AsPath + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Community != nil { + in, out := &in.Community, &out.Community + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RoutePrefix != nil { + in, out := &in.RoutePrefix, &out.RoutePrefix + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParameterInitParameters. +func (in *ParameterInitParameters) DeepCopy() *ParameterInitParameters { + if in == nil { + return nil + } + out := new(ParameterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ParameterObservation) DeepCopyInto(out *ParameterObservation) { *out = *in @@ -21684,6 +28419,62 @@ func (in *ParameterParameters) DeepCopy() *ParameterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PathRuleInitParameters) DeepCopyInto(out *PathRuleInitParameters) { + *out = *in + if in.BackendAddressPoolName != nil { + in, out := &in.BackendAddressPoolName, &out.BackendAddressPoolName + *out = new(string) + **out = **in + } + if in.BackendHTTPSettingsName != nil { + in, out := &in.BackendHTTPSettingsName, &out.BackendHTTPSettingsName + *out = new(string) + **out = **in + } + if in.FirewallPolicyID != nil { + in, out := &in.FirewallPolicyID, &out.FirewallPolicyID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Paths != nil { + in, out := &in.Paths, &out.Paths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RedirectConfigurationName != nil { + in, out := &in.RedirectConfigurationName, &out.RedirectConfigurationName + *out = new(string) + **out = **in + } + if in.RewriteRuleSetName != nil { + in, out := &in.RewriteRuleSetName, &out.RewriteRuleSetName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PathRuleInitParameters. +func (in *PathRuleInitParameters) DeepCopy() *PathRuleInitParameters { + if in == nil { + return nil + } + out := new(PathRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PathRuleObservation) DeepCopyInto(out *PathRuleObservation) { *out = *in @@ -21821,6 +28612,37 @@ func (in *PathRuleParameters) DeepCopy() *PathRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PeeringAddressesInitParameters) DeepCopyInto(out *PeeringAddressesInitParameters) { + *out = *in + if in.ApipaAddresses != nil { + in, out := &in.ApipaAddresses, &out.ApipaAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IPConfigurationName != nil { + in, out := &in.IPConfigurationName, &out.IPConfigurationName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeeringAddressesInitParameters. +func (in *PeeringAddressesInitParameters) DeepCopy() *PeeringAddressesInitParameters { + if in == nil { + return nil + } + out := new(PeeringAddressesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PeeringAddressesObservation) DeepCopyInto(out *PeeringAddressesObservation) { *out = *in @@ -21932,6 +28754,69 @@ func (in *PointToSiteVPNGateway) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PointToSiteVPNGatewayInitParameters) DeepCopyInto(out *PointToSiteVPNGatewayInitParameters) { + *out = *in + if in.ConnectionConfiguration != nil { + in, out := &in.ConnectionConfiguration, &out.ConnectionConfiguration + *out = make([]ConnectionConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.RoutingPreferenceInternetEnabled != nil { + in, out := &in.RoutingPreferenceInternetEnabled, &out.RoutingPreferenceInternetEnabled + *out = new(bool) + **out = **in + } + if in.ScaleUnit != nil { + in, out := &in.ScaleUnit, &out.ScaleUnit + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PointToSiteVPNGatewayInitParameters. +func (in *PointToSiteVPNGatewayInitParameters) DeepCopy() *PointToSiteVPNGatewayInitParameters { + if in == nil { + return nil + } + out := new(PointToSiteVPNGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PointToSiteVPNGatewayList) DeepCopyInto(out *PointToSiteVPNGatewayList) { *out = *in @@ -22160,6 +29045,7 @@ func (in *PointToSiteVPNGatewaySpec) DeepCopyInto(out *PointToSiteVPNGatewaySpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PointToSiteVPNGatewaySpec. @@ -22189,6 +29075,36 @@ func (in *PointToSiteVPNGatewayStatus) DeepCopy() *PointToSiteVPNGatewayStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicyInitParameters) DeepCopyInto(out *PolicyInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicyInitParameters. +func (in *PolicyInitParameters) DeepCopy() *PolicyInitParameters { + if in == nil { + return nil + } + out := new(PolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PolicyObservation) DeepCopyInto(out *PolicyObservation) { *out = *in @@ -22249,6 +29165,46 @@ func (in *PolicyParameters) DeepCopy() *PolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PolicySettingsInitParameters) DeepCopyInto(out *PolicySettingsInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.FileUploadLimitInMb != nil { + in, out := &in.FileUploadLimitInMb, &out.FileUploadLimitInMb + *out = new(float64) + **out = **in + } + if in.MaxRequestBodySizeInKb != nil { + in, out := &in.MaxRequestBodySizeInKb, &out.MaxRequestBodySizeInKb + *out = new(float64) + **out = **in + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.RequestBodyCheck != nil { + in, out := &in.RequestBodyCheck, &out.RequestBodyCheck + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PolicySettingsInitParameters. +func (in *PolicySettingsInitParameters) DeepCopy() *PolicySettingsInitParameters { + if in == nil { + return nil + } + out := new(PolicySettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PolicySettingsObservation) DeepCopyInto(out *PolicySettingsObservation) { *out = *in @@ -22356,6 +29312,52 @@ func (in *PrivateDNSAAAARecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSAAAARecordInitParameters) DeepCopyInto(out *PrivateDNSAAAARecordInitParameters) { + *out = *in + if in.Records != nil { + in, out := &in.Records, &out.Records + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSAAAARecordInitParameters. +func (in *PrivateDNSAAAARecordInitParameters) DeepCopy() *PrivateDNSAAAARecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSAAAARecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSAAAARecordList) DeepCopyInto(out *PrivateDNSAAAARecordList) { *out = *in @@ -22535,6 +29537,7 @@ func (in *PrivateDNSAAAARecordSpec) DeepCopyInto(out *PrivateDNSAAAARecordSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSAAAARecordSpec. @@ -22591,6 +29594,52 @@ func (in *PrivateDNSARecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSARecordInitParameters) DeepCopyInto(out *PrivateDNSARecordInitParameters) { + *out = *in + if in.Records != nil { + in, out := &in.Records, &out.Records + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSARecordInitParameters. +func (in *PrivateDNSARecordInitParameters) DeepCopy() *PrivateDNSARecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSARecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSARecordList) DeepCopyInto(out *PrivateDNSARecordList) { *out = *in @@ -22770,6 +29819,7 @@ func (in *PrivateDNSARecordSpec) DeepCopyInto(out *PrivateDNSARecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSARecordSpec. @@ -22826,6 +29876,46 @@ func (in *PrivateDNSCNAMERecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSCNAMERecordInitParameters) DeepCopyInto(out *PrivateDNSCNAMERecordInitParameters) { + *out = *in + if in.Record != nil { + in, out := &in.Record, &out.Record + *out = new(string) + **out = **in + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSCNAMERecordInitParameters. +func (in *PrivateDNSCNAMERecordInitParameters) DeepCopy() *PrivateDNSCNAMERecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSCNAMERecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSCNAMERecordList) DeepCopyInto(out *PrivateDNSCNAMERecordList) { *out = *in @@ -22993,6 +30083,7 @@ func (in *PrivateDNSCNAMERecordSpec) DeepCopyInto(out *PrivateDNSCNAMERecordSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSCNAMERecordSpec. @@ -23049,6 +30140,48 @@ func (in *PrivateDNSMXRecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSMXRecordInitParameters) DeepCopyInto(out *PrivateDNSMXRecordInitParameters) { + *out = *in + if in.Record != nil { + in, out := &in.Record, &out.Record + *out = make([]PrivateDNSMXRecordRecordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSMXRecordInitParameters. +func (in *PrivateDNSMXRecordInitParameters) DeepCopy() *PrivateDNSMXRecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSMXRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSMXRecordList) DeepCopyInto(out *PrivateDNSMXRecordList) { *out = *in @@ -23215,6 +30348,31 @@ func (in *PrivateDNSMXRecordParameters) DeepCopy() *PrivateDNSMXRecordParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSMXRecordRecordInitParameters) DeepCopyInto(out *PrivateDNSMXRecordRecordInitParameters) { + *out = *in + if in.Exchange != nil { + in, out := &in.Exchange, &out.Exchange + *out = new(string) + **out = **in + } + if in.Preference != nil { + in, out := &in.Preference, &out.Preference + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSMXRecordRecordInitParameters. +func (in *PrivateDNSMXRecordRecordInitParameters) DeepCopy() *PrivateDNSMXRecordRecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSMXRecordRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSMXRecordRecordObservation) DeepCopyInto(out *PrivateDNSMXRecordRecordObservation) { *out = *in @@ -23270,6 +30428,7 @@ func (in *PrivateDNSMXRecordSpec) DeepCopyInto(out *PrivateDNSMXRecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSMXRecordSpec. @@ -23326,6 +30485,52 @@ func (in *PrivateDNSPTRRecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSPTRRecordInitParameters) DeepCopyInto(out *PrivateDNSPTRRecordInitParameters) { + *out = *in + if in.Records != nil { + in, out := &in.Records, &out.Records + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSPTRRecordInitParameters. +func (in *PrivateDNSPTRRecordInitParameters) DeepCopy() *PrivateDNSPTRRecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSPTRRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSPTRRecordList) DeepCopyInto(out *PrivateDNSPTRRecordList) { *out = *in @@ -23505,6 +30710,7 @@ func (in *PrivateDNSPTRRecordSpec) DeepCopyInto(out *PrivateDNSPTRRecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSPTRRecordSpec. @@ -23561,6 +30767,41 @@ func (in *PrivateDNSResolver) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSResolverInitParameters) DeepCopyInto(out *PrivateDNSResolverInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSResolverInitParameters. +func (in *PrivateDNSResolverInitParameters) DeepCopy() *PrivateDNSResolverInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSResolverInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSResolverList) DeepCopyInto(out *PrivateDNSResolverList) { *out = *in @@ -23713,6 +30954,7 @@ func (in *PrivateDNSResolverSpec) DeepCopyInto(out *PrivateDNSResolverSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSResolverSpec. @@ -23769,6 +31011,48 @@ func (in *PrivateDNSSRVRecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSSRVRecordInitParameters) DeepCopyInto(out *PrivateDNSSRVRecordInitParameters) { + *out = *in + if in.Record != nil { + in, out := &in.Record, &out.Record + *out = make([]PrivateDNSSRVRecordRecordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSSRVRecordInitParameters. +func (in *PrivateDNSSRVRecordInitParameters) DeepCopy() *PrivateDNSSRVRecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSSRVRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSSRVRecordList) DeepCopyInto(out *PrivateDNSSRVRecordList) { *out = *in @@ -23935,6 +31219,41 @@ func (in *PrivateDNSSRVRecordParameters) DeepCopy() *PrivateDNSSRVRecordParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSSRVRecordRecordInitParameters) DeepCopyInto(out *PrivateDNSSRVRecordRecordInitParameters) { + *out = *in + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Target != nil { + in, out := &in.Target, &out.Target + *out = new(string) + **out = **in + } + if in.Weight != nil { + in, out := &in.Weight, &out.Weight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSSRVRecordRecordInitParameters. +func (in *PrivateDNSSRVRecordRecordInitParameters) DeepCopy() *PrivateDNSSRVRecordRecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSSRVRecordRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSSRVRecordRecordObservation) DeepCopyInto(out *PrivateDNSSRVRecordRecordObservation) { *out = *in @@ -24010,6 +31329,7 @@ func (in *PrivateDNSSRVRecordSpec) DeepCopyInto(out *PrivateDNSSRVRecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSSRVRecordSpec. @@ -24066,6 +31386,48 @@ func (in *PrivateDNSTXTRecord) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSTXTRecordInitParameters) DeepCopyInto(out *PrivateDNSTXTRecordInitParameters) { + *out = *in + if in.Record != nil { + in, out := &in.Record, &out.Record + *out = make([]PrivateDNSTXTRecordRecordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSTXTRecordInitParameters. +func (in *PrivateDNSTXTRecordInitParameters) DeepCopy() *PrivateDNSTXTRecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSTXTRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSTXTRecordList) DeepCopyInto(out *PrivateDNSTXTRecordList) { *out = *in @@ -24232,6 +31594,26 @@ func (in *PrivateDNSTXTRecordParameters) DeepCopy() *PrivateDNSTXTRecordParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSTXTRecordRecordInitParameters) DeepCopyInto(out *PrivateDNSTXTRecordRecordInitParameters) { + *out = *in + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSTXTRecordRecordInitParameters. +func (in *PrivateDNSTXTRecordRecordInitParameters) DeepCopy() *PrivateDNSTXTRecordRecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSTXTRecordRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSTXTRecordRecordObservation) DeepCopyInto(out *PrivateDNSTXTRecordRecordObservation) { *out = *in @@ -24277,6 +31659,7 @@ func (in *PrivateDNSTXTRecordSpec) DeepCopyInto(out *PrivateDNSTXTRecordSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSTXTRecordSpec. @@ -24333,6 +31716,21 @@ func (in *PrivateDNSZone) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSZoneConfigsInitParameters) DeepCopyInto(out *PrivateDNSZoneConfigsInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSZoneConfigsInitParameters. +func (in *PrivateDNSZoneConfigsInitParameters) DeepCopy() *PrivateDNSZoneConfigsInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSZoneConfigsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSZoneConfigsObservation) DeepCopyInto(out *PrivateDNSZoneConfigsObservation) { *out = *in @@ -24385,6 +31783,26 @@ func (in *PrivateDNSZoneConfigsParameters) DeepCopy() *PrivateDNSZoneConfigsPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSZoneGroupInitParameters) DeepCopyInto(out *PrivateDNSZoneGroupInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSZoneGroupInitParameters. +func (in *PrivateDNSZoneGroupInitParameters) DeepCopy() *PrivateDNSZoneGroupInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSZoneGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSZoneGroupObservation) DeepCopyInto(out *PrivateDNSZoneGroupObservation) { *out = *in @@ -24464,6 +31882,43 @@ func (in *PrivateDNSZoneGroupParameters) DeepCopy() *PrivateDNSZoneGroupParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSZoneInitParameters) DeepCopyInto(out *PrivateDNSZoneInitParameters) { + *out = *in + if in.SoaRecord != nil { + in, out := &in.SoaRecord, &out.SoaRecord + *out = make([]PrivateDNSZoneSoaRecordInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSZoneInitParameters. +func (in *PrivateDNSZoneInitParameters) DeepCopy() *PrivateDNSZoneInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSZoneInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSZoneList) DeepCopyInto(out *PrivateDNSZoneList) { *out = *in @@ -24615,6 +32070,66 @@ func (in *PrivateDNSZoneParameters) DeepCopy() *PrivateDNSZoneParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSZoneSoaRecordInitParameters) DeepCopyInto(out *PrivateDNSZoneSoaRecordInitParameters) { + *out = *in + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.ExpireTime != nil { + in, out := &in.ExpireTime, &out.ExpireTime + *out = new(float64) + **out = **in + } + if in.MinimumTTL != nil { + in, out := &in.MinimumTTL, &out.MinimumTTL + *out = new(float64) + **out = **in + } + if in.RefreshTime != nil { + in, out := &in.RefreshTime, &out.RefreshTime + *out = new(float64) + **out = **in + } + if in.RetryTime != nil { + in, out := &in.RetryTime, &out.RetryTime + *out = new(float64) + **out = **in + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSZoneSoaRecordInitParameters. +func (in *PrivateDNSZoneSoaRecordInitParameters) DeepCopy() *PrivateDNSZoneSoaRecordInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSZoneSoaRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSZoneSoaRecordObservation) DeepCopyInto(out *PrivateDNSZoneSoaRecordObservation) { *out = *in @@ -24755,6 +32270,7 @@ func (in *PrivateDNSZoneSpec) DeepCopyInto(out *PrivateDNSZoneSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSZoneSpec. @@ -24811,6 +32327,41 @@ func (in *PrivateDNSZoneVirtualNetworkLink) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateDNSZoneVirtualNetworkLinkInitParameters) DeepCopyInto(out *PrivateDNSZoneVirtualNetworkLinkInitParameters) { + *out = *in + if in.RegistrationEnabled != nil { + in, out := &in.RegistrationEnabled, &out.RegistrationEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSZoneVirtualNetworkLinkInitParameters. +func (in *PrivateDNSZoneVirtualNetworkLinkInitParameters) DeepCopy() *PrivateDNSZoneVirtualNetworkLinkInitParameters { + if in == nil { + return nil + } + out := new(PrivateDNSZoneVirtualNetworkLinkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateDNSZoneVirtualNetworkLinkList) DeepCopyInto(out *PrivateDNSZoneVirtualNetworkLinkList) { *out = *in @@ -24983,6 +32534,7 @@ func (in *PrivateDNSZoneVirtualNetworkLinkSpec) DeepCopyInto(out *PrivateDNSZone *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateDNSZoneVirtualNetworkLinkSpec. @@ -25066,6 +32618,21 @@ func (in *PrivateEndpointApplicationSecurityGroupAssociation) DeepCopyObject() r return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointApplicationSecurityGroupAssociationInitParameters) DeepCopyInto(out *PrivateEndpointApplicationSecurityGroupAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointApplicationSecurityGroupAssociationInitParameters. +func (in *PrivateEndpointApplicationSecurityGroupAssociationInitParameters) DeepCopy() *PrivateEndpointApplicationSecurityGroupAssociationInitParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointApplicationSecurityGroupAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateEndpointApplicationSecurityGroupAssociationList) DeepCopyInto(out *PrivateEndpointApplicationSecurityGroupAssociationList) { *out = *in @@ -25178,6 +32745,7 @@ func (in *PrivateEndpointApplicationSecurityGroupAssociationSpec) DeepCopyInto(o *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointApplicationSecurityGroupAssociationSpec. @@ -25207,6 +32775,21 @@ func (in *PrivateEndpointApplicationSecurityGroupAssociationStatus) DeepCopy() * return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointConnectionInitParameters) DeepCopyInto(out *PrivateEndpointConnectionInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointConnectionInitParameters. +func (in *PrivateEndpointConnectionInitParameters) DeepCopy() *PrivateEndpointConnectionInitParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateEndpointConnectionObservation) DeepCopyInto(out *PrivateEndpointConnectionObservation) { *out = *in @@ -25247,6 +32830,41 @@ func (in *PrivateEndpointConnectionParameters) DeepCopy() *PrivateEndpointConnec return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointIPConfigurationInitParameters) DeepCopyInto(out *PrivateEndpointIPConfigurationInitParameters) { + *out = *in + if in.MemberName != nil { + in, out := &in.MemberName, &out.MemberName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrivateIPAddress != nil { + in, out := &in.PrivateIPAddress, &out.PrivateIPAddress + *out = new(string) + **out = **in + } + if in.SubresourceName != nil { + in, out := &in.SubresourceName, &out.SubresourceName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointIPConfigurationInitParameters. +func (in *PrivateEndpointIPConfigurationInitParameters) DeepCopy() *PrivateEndpointIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateEndpointIPConfigurationObservation) DeepCopyInto(out *PrivateEndpointIPConfigurationObservation) { *out = *in @@ -25317,6 +32935,67 @@ func (in *PrivateEndpointIPConfigurationParameters) DeepCopy() *PrivateEndpointI return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointInitParameters) DeepCopyInto(out *PrivateEndpointInitParameters) { + *out = *in + if in.CustomNetworkInterfaceName != nil { + in, out := &in.CustomNetworkInterfaceName, &out.CustomNetworkInterfaceName + *out = new(string) + **out = **in + } + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]PrivateEndpointIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PrivateDNSZoneGroup != nil { + in, out := &in.PrivateDNSZoneGroup, &out.PrivateDNSZoneGroup + *out = make([]PrivateDNSZoneGroupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PrivateServiceConnection != nil { + in, out := &in.PrivateServiceConnection, &out.PrivateServiceConnection + *out = make([]PrivateServiceConnectionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointInitParameters. +func (in *PrivateEndpointInitParameters) DeepCopy() *PrivateEndpointInitParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateEndpointList) DeepCopyInto(out *PrivateEndpointList) { *out = *in @@ -25349,6 +33028,21 @@ func (in *PrivateEndpointList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointNetworkInterfaceInitParameters) DeepCopyInto(out *PrivateEndpointNetworkInterfaceInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointNetworkInterfaceInitParameters. +func (in *PrivateEndpointNetworkInterfaceInitParameters) DeepCopy() *PrivateEndpointNetworkInterfaceInitParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointNetworkInterfaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateEndpointNetworkInterfaceObservation) DeepCopyInto(out *PrivateEndpointNetworkInterfaceObservation) { *out = *in @@ -25582,6 +33276,7 @@ func (in *PrivateEndpointSpec) DeepCopyInto(out *PrivateEndpointSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointSpec. @@ -25611,6 +33306,33 @@ func (in *PrivateEndpointStatus) DeepCopy() *PrivateEndpointStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateLinkConfigurationInitParameters) DeepCopyInto(out *PrivateLinkConfigurationInitParameters) { + *out = *in + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]IPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkConfigurationInitParameters. +func (in *PrivateLinkConfigurationInitParameters) DeepCopy() *PrivateLinkConfigurationInitParameters { + if in == nil { + return nil + } + out := new(PrivateLinkConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateLinkConfigurationObservation) DeepCopyInto(out *PrivateLinkConfigurationObservation) { *out = *in @@ -25698,45 +33420,136 @@ func (in *PrivateLinkService) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PrivateLinkServiceList) DeepCopyInto(out *PrivateLinkServiceList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]PrivateLinkService, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkServiceList. -func (in *PrivateLinkServiceList) DeepCopy() *PrivateLinkServiceList { - if in == nil { - return nil - } - out := new(PrivateLinkServiceList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *PrivateLinkServiceList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *PrivateLinkServiceObservation) DeepCopyInto(out *PrivateLinkServiceObservation) { +func (in *PrivateLinkServiceInitParameters) DeepCopyInto(out *PrivateLinkServiceInitParameters) { *out = *in - if in.Alias != nil { - in, out := &in.Alias, &out.Alias - *out = new(string) - **out = **in - } + if in.AutoApprovalSubscriptionIds != nil { + in, out := &in.AutoApprovalSubscriptionIds, &out.AutoApprovalSubscriptionIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EnableProxyProtocol != nil { + in, out := &in.EnableProxyProtocol, &out.EnableProxyProtocol + *out = new(bool) + **out = **in + } + if in.Fqdns != nil { + in, out := &in.Fqdns, &out.Fqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoadBalancerFrontendIPConfigurationIds != nil { + in, out := &in.LoadBalancerFrontendIPConfigurationIds, &out.LoadBalancerFrontendIPConfigurationIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.NATIPConfiguration != nil { + in, out := &in.NATIPConfiguration, &out.NATIPConfiguration + *out = make([]NATIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.VisibilitySubscriptionIds != nil { + in, out := &in.VisibilitySubscriptionIds, &out.VisibilitySubscriptionIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkServiceInitParameters. +func (in *PrivateLinkServiceInitParameters) DeepCopy() *PrivateLinkServiceInitParameters { + if in == nil { + return nil + } + out := new(PrivateLinkServiceInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateLinkServiceList) DeepCopyInto(out *PrivateLinkServiceList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]PrivateLinkService, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkServiceList. +func (in *PrivateLinkServiceList) DeepCopy() *PrivateLinkServiceList { + if in == nil { + return nil + } + out := new(PrivateLinkServiceList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *PrivateLinkServiceList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateLinkServiceObservation) DeepCopyInto(out *PrivateLinkServiceObservation) { + *out = *in + if in.Alias != nil { + in, out := &in.Alias, &out.Alias + *out = new(string) + **out = **in + } if in.AutoApprovalSubscriptionIds != nil { in, out := &in.AutoApprovalSubscriptionIds, &out.AutoApprovalSubscriptionIds *out = make([]*string, len(*in)) @@ -25946,6 +33759,7 @@ func (in *PrivateLinkServiceSpec) DeepCopyInto(out *PrivateLinkServiceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkServiceSpec. @@ -25975,6 +33789,57 @@ func (in *PrivateLinkServiceStatus) DeepCopy() *PrivateLinkServiceStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateServiceConnectionInitParameters) DeepCopyInto(out *PrivateServiceConnectionInitParameters) { + *out = *in + if in.IsManualConnection != nil { + in, out := &in.IsManualConnection, &out.IsManualConnection + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrivateConnectionResourceAlias != nil { + in, out := &in.PrivateConnectionResourceAlias, &out.PrivateConnectionResourceAlias + *out = new(string) + **out = **in + } + if in.PrivateConnectionResourceID != nil { + in, out := &in.PrivateConnectionResourceID, &out.PrivateConnectionResourceID + *out = new(string) + **out = **in + } + if in.RequestMessage != nil { + in, out := &in.RequestMessage, &out.RequestMessage + *out = new(string) + **out = **in + } + if in.SubresourceNames != nil { + in, out := &in.SubresourceNames, &out.SubresourceNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateServiceConnectionInitParameters. +func (in *PrivateServiceConnectionInitParameters) DeepCopy() *PrivateServiceConnectionInitParameters { + if in == nil { + return nil + } + out := new(PrivateServiceConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateServiceConnectionObservation) DeepCopyInto(out *PrivateServiceConnectionObservation) { *out = *in @@ -26082,6 +33947,78 @@ func (in *PrivateServiceConnectionParameters) DeepCopy() *PrivateServiceConnecti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProbeInitParameters) DeepCopyInto(out *ProbeInitParameters) { + *out = *in + if in.Host != nil { + in, out := &in.Host, &out.Host + *out = new(string) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(float64) + **out = **in + } + if in.Match != nil { + in, out := &in.Match, &out.Match + *out = make([]MatchInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MinimumServers != nil { + in, out := &in.MinimumServers, &out.MinimumServers + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.PickHostNameFromBackendHTTPSettings != nil { + in, out := &in.PickHostNameFromBackendHTTPSettings, &out.PickHostNameFromBackendHTTPSettings + *out = new(bool) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(float64) + **out = **in + } + if in.UnhealthyThreshold != nil { + in, out := &in.UnhealthyThreshold, &out.UnhealthyThreshold + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProbeInitParameters. +func (in *ProbeInitParameters) DeepCopy() *ProbeInitParameters { + if in == nil { + return nil + } + out := new(ProbeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProbeObservation) DeepCopyInto(out *ProbeObservation) { *out = *in @@ -26258,6 +34195,48 @@ func (in *Profile) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProfileInitParameters) DeepCopyInto(out *ProfileInitParameters) { + *out = *in + if in.ContainerNetworkInterface != nil { + in, out := &in.ContainerNetworkInterface, &out.ContainerNetworkInterface + *out = make([]ContainerNetworkInterfaceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileInitParameters. +func (in *ProfileInitParameters) DeepCopy() *ProfileInitParameters { + if in == nil { + return nil + } + out := new(ProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProfileList) DeepCopyInto(out *ProfileList) { *out = *in @@ -26415,6 +34394,7 @@ func (in *ProfileSpec) DeepCopyInto(out *ProfileSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProfileSpec. @@ -26444,6 +34424,43 @@ func (in *ProfileStatus) DeepCopy() *ProfileStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PropagatedRouteTableInitParameters) DeepCopyInto(out *PropagatedRouteTableInitParameters) { + *out = *in + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RouteTableIds != nil { + in, out := &in.RouteTableIds, &out.RouteTableIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagatedRouteTableInitParameters. +func (in *PropagatedRouteTableInitParameters) DeepCopy() *PropagatedRouteTableInitParameters { + if in == nil { + return nil + } + out := new(PropagatedRouteTableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PropagatedRouteTableObservation) DeepCopyInto(out *PropagatedRouteTableObservation) { *out = *in @@ -26518,6 +34535,31 @@ func (in *PropagatedRouteTableParameters) DeepCopy() *PropagatedRouteTableParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProtocolInitParameters) DeepCopyInto(out *ProtocolInitParameters) { + *out = *in + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtocolInitParameters. +func (in *ProtocolInitParameters) DeepCopy() *ProtocolInitParameters { + if in == nil { + return nil + } + out := new(ProtocolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProtocolObservation) DeepCopyInto(out *ProtocolObservation) { *out = *in @@ -26568,6 +34610,31 @@ func (in *ProtocolParameters) DeepCopy() *ProtocolParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProtocolsInitParameters) DeepCopyInto(out *ProtocolsInitParameters) { + *out = *in + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtocolsInitParameters. +func (in *ProtocolsInitParameters) DeepCopy() *ProtocolsInitParameters { + if in == nil { + return nil + } + out := new(ProtocolsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProtocolsObservation) DeepCopyInto(out *ProtocolsObservation) { *out = *in @@ -26645,6 +34712,122 @@ func (in *PublicIP) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PublicIPInitParameters) DeepCopyInto(out *PublicIPInitParameters) { + *out = *in + if in.AllocationMethod != nil { + in, out := &in.AllocationMethod, &out.AllocationMethod + *out = new(string) + **out = **in + } + if in.DDOSProtectionMode != nil { + in, out := &in.DDOSProtectionMode, &out.DDOSProtectionMode + *out = new(string) + **out = **in + } + if in.DDOSProtectionPlanID != nil { + in, out := &in.DDOSProtectionPlanID, &out.DDOSProtectionPlanID + *out = new(string) + **out = **in + } + if in.DomainNameLabel != nil { + in, out := &in.DomainNameLabel, &out.DomainNameLabel + *out = new(string) + **out = **in + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) + **out = **in + } + if in.IPTags != nil { + in, out := &in.IPTags, &out.IPTags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.IPVersion != nil { + in, out := &in.IPVersion, &out.IPVersion + *out = new(string) + **out = **in + } + if in.IdleTimeoutInMinutes != nil { + in, out := &in.IdleTimeoutInMinutes, &out.IdleTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicIPPrefixID != nil { + in, out := &in.PublicIPPrefixID, &out.PublicIPPrefixID + *out = new(string) + **out = **in + } + if in.ReverseFqdn != nil { + in, out := &in.ReverseFqdn, &out.ReverseFqdn + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.SkuTier != nil { + in, out := &in.SkuTier, &out.SkuTier + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPInitParameters. +func (in *PublicIPInitParameters) DeepCopy() *PublicIPInitParameters { + if in == nil { + return nil + } + out := new(PublicIPInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PublicIPList) DeepCopyInto(out *PublicIPList) { *out = *in @@ -26971,6 +35154,67 @@ func (in *PublicIPPrefix) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PublicIPPrefixInitParameters) DeepCopyInto(out *PublicIPPrefixInitParameters) { + *out = *in + if in.IPVersion != nil { + in, out := &in.IPVersion, &out.IPVersion + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PrefixLength != nil { + in, out := &in.PrefixLength, &out.PrefixLength + *out = new(float64) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPPrefixInitParameters. +func (in *PublicIPPrefixInitParameters) DeepCopy() *PublicIPPrefixInitParameters { + if in == nil { + return nil + } + out := new(PublicIPPrefixInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PublicIPPrefixList) DeepCopyInto(out *PublicIPPrefixList) { *out = *in @@ -27160,6 +35404,7 @@ func (in *PublicIPPrefixSpec) DeepCopyInto(out *PublicIPPrefixSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPPrefixSpec. @@ -27194,6 +35439,7 @@ func (in *PublicIPSpec) DeepCopyInto(out *PublicIPSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPSpec. @@ -27223,6 +35469,31 @@ func (in *PublicIPStatus) DeepCopy() *PublicIPStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RadiusClientRootCertificateInitParameters) DeepCopyInto(out *RadiusClientRootCertificateInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RadiusClientRootCertificateInitParameters. +func (in *RadiusClientRootCertificateInitParameters) DeepCopy() *RadiusClientRootCertificateInitParameters { + if in == nil { + return nil + } + out := new(RadiusClientRootCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RadiusClientRootCertificateObservation) DeepCopyInto(out *RadiusClientRootCertificateObservation) { *out = *in @@ -27273,6 +35544,42 @@ func (in *RadiusClientRootCertificateParameters) DeepCopy() *RadiusClientRootCer return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RadiusInitParameters) DeepCopyInto(out *RadiusInitParameters) { + *out = *in + if in.ClientRootCertificate != nil { + in, out := &in.ClientRootCertificate, &out.ClientRootCertificate + *out = make([]RadiusClientRootCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = make([]ServerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ServerRootCertificate != nil { + in, out := &in.ServerRootCertificate, &out.ServerRootCertificate + *out = make([]ServerRootCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RadiusInitParameters. +func (in *RadiusInitParameters) DeepCopy() *RadiusInitParameters { + if in == nil { + return nil + } + out := new(RadiusInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RadiusObservation) DeepCopyInto(out *RadiusObservation) { *out = *in @@ -27345,6 +35652,36 @@ func (in *RadiusParameters) DeepCopy() *RadiusParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecordInitParameters) DeepCopyInto(out *RecordInitParameters) { + *out = *in + if in.Flags != nil { + in, out := &in.Flags, &out.Flags + *out = new(float64) + **out = **in + } + if in.Tag != nil { + in, out := &in.Tag, &out.Tag + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecordInitParameters. +func (in *RecordInitParameters) DeepCopy() *RecordInitParameters { + if in == nil { + return nil + } + out := new(RecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecordObservation) DeepCopyInto(out *RecordObservation) { *out = *in @@ -27405,6 +35742,21 @@ func (in *RecordParameters) DeepCopy() *RecordParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecordSetsInitParameters) DeepCopyInto(out *RecordSetsInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecordSetsInitParameters. +func (in *RecordSetsInitParameters) DeepCopy() *RecordSetsInitParameters { + if in == nil { + return nil + } + out := new(RecordSetsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecordSetsObservation) DeepCopyInto(out *RecordSetsObservation) { *out = *in @@ -27466,6 +35818,51 @@ func (in *RecordSetsParameters) DeepCopy() *RecordSetsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RedirectConfigurationInitParameters) DeepCopyInto(out *RedirectConfigurationInitParameters) { + *out = *in + if in.IncludePath != nil { + in, out := &in.IncludePath, &out.IncludePath + *out = new(bool) + **out = **in + } + if in.IncludeQueryString != nil { + in, out := &in.IncludeQueryString, &out.IncludeQueryString + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RedirectType != nil { + in, out := &in.RedirectType, &out.RedirectType + *out = new(string) + **out = **in + } + if in.TargetListenerName != nil { + in, out := &in.TargetListenerName, &out.TargetListenerName + *out = new(string) + **out = **in + } + if in.TargetURL != nil { + in, out := &in.TargetURL, &out.TargetURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedirectConfigurationInitParameters. +func (in *RedirectConfigurationInitParameters) DeepCopy() *RedirectConfigurationInitParameters { + if in == nil { + return nil + } + out := new(RedirectConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RedirectConfigurationObservation) DeepCopyInto(out *RedirectConfigurationObservation) { *out = *in @@ -27566,6 +35963,31 @@ func (in *RedirectConfigurationParameters) DeepCopy() *RedirectConfigurationPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestHeaderConfigurationInitParameters) DeepCopyInto(out *RequestHeaderConfigurationInitParameters) { + *out = *in + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName + *out = new(string) + **out = **in + } + if in.HeaderValue != nil { + in, out := &in.HeaderValue, &out.HeaderValue + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderConfigurationInitParameters. +func (in *RequestHeaderConfigurationInitParameters) DeepCopy() *RequestHeaderConfigurationInitParameters { + if in == nil { + return nil + } + out := new(RequestHeaderConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RequestHeaderConfigurationObservation) DeepCopyInto(out *RequestHeaderConfigurationObservation) { *out = *in @@ -27616,6 +36038,36 @@ func (in *RequestHeaderConfigurationParameters) DeepCopy() *RequestHeaderConfigu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestHeaderInitParameters) DeepCopyInto(out *RequestHeaderInitParameters) { + *out = *in + if in.HeaderActionType != nil { + in, out := &in.HeaderActionType, &out.HeaderActionType + *out = new(string) + **out = **in + } + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestHeaderInitParameters. +func (in *RequestHeaderInitParameters) DeepCopy() *RequestHeaderInitParameters { + if in == nil { + return nil + } + out := new(RequestHeaderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RequestHeaderObservation) DeepCopyInto(out *RequestHeaderObservation) { *out = *in @@ -27676,6 +36128,66 @@ func (in *RequestHeaderParameters) DeepCopy() *RequestHeaderParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestRoutingRuleInitParameters) DeepCopyInto(out *RequestRoutingRuleInitParameters) { + *out = *in + if in.BackendAddressPoolName != nil { + in, out := &in.BackendAddressPoolName, &out.BackendAddressPoolName + *out = new(string) + **out = **in + } + if in.BackendHTTPSettingsName != nil { + in, out := &in.BackendHTTPSettingsName, &out.BackendHTTPSettingsName + *out = new(string) + **out = **in + } + if in.HTTPListenerName != nil { + in, out := &in.HTTPListenerName, &out.HTTPListenerName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.RedirectConfigurationName != nil { + in, out := &in.RedirectConfigurationName, &out.RedirectConfigurationName + *out = new(string) + **out = **in + } + if in.RewriteRuleSetName != nil { + in, out := &in.RewriteRuleSetName, &out.RewriteRuleSetName + *out = new(string) + **out = **in + } + if in.RuleType != nil { + in, out := &in.RuleType, &out.RuleType + *out = new(string) + **out = **in + } + if in.URLPathMapName != nil { + in, out := &in.URLPathMapName, &out.URLPathMapName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestRoutingRuleInitParameters. +func (in *RequestRoutingRuleInitParameters) DeepCopy() *RequestRoutingRuleInitParameters { + if in == nil { + return nil + } + out := new(RequestRoutingRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RequestRoutingRuleObservation) DeepCopyInto(out *RequestRoutingRuleObservation) { *out = *in @@ -27831,6 +36343,31 @@ func (in *RequestRoutingRuleParameters) DeepCopy() *RequestRoutingRuleParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResponseHeaderConfigurationInitParameters) DeepCopyInto(out *ResponseHeaderConfigurationInitParameters) { + *out = *in + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName + *out = new(string) + **out = **in + } + if in.HeaderValue != nil { + in, out := &in.HeaderValue, &out.HeaderValue + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseHeaderConfigurationInitParameters. +func (in *ResponseHeaderConfigurationInitParameters) DeepCopy() *ResponseHeaderConfigurationInitParameters { + if in == nil { + return nil + } + out := new(ResponseHeaderConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResponseHeaderConfigurationObservation) DeepCopyInto(out *ResponseHeaderConfigurationObservation) { *out = *in @@ -27881,6 +36418,36 @@ func (in *ResponseHeaderConfigurationParameters) DeepCopy() *ResponseHeaderConfi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResponseHeaderInitParameters) DeepCopyInto(out *ResponseHeaderInitParameters) { + *out = *in + if in.HeaderActionType != nil { + in, out := &in.HeaderActionType, &out.HeaderActionType + *out = new(string) + **out = **in + } + if in.HeaderName != nil { + in, out := &in.HeaderName, &out.HeaderName + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseHeaderInitParameters. +func (in *ResponseHeaderInitParameters) DeepCopy() *ResponseHeaderInitParameters { + if in == nil { + return nil + } + out := new(ResponseHeaderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResponseHeaderObservation) DeepCopyInto(out *ResponseHeaderObservation) { *out = *in @@ -27941,6 +36508,31 @@ func (in *ResponseHeaderParameters) DeepCopy() *ResponseHeaderParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RetentionPolicyInitParameters) DeepCopyInto(out *RetentionPolicyInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = new(float64) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionPolicyInitParameters. +func (in *RetentionPolicyInitParameters) DeepCopy() *RetentionPolicyInitParameters { + if in == nil { + return nil + } + out := new(RetentionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RetentionPolicyObservation) DeepCopyInto(out *RetentionPolicyObservation) { *out = *in @@ -27991,6 +36583,31 @@ func (in *RetentionPolicyParameters) DeepCopy() *RetentionPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RevokedCertificateInitParameters) DeepCopyInto(out *RevokedCertificateInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevokedCertificateInitParameters. +func (in *RevokedCertificateInitParameters) DeepCopy() *RevokedCertificateInitParameters { + if in == nil { + return nil + } + out := new(RevokedCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RevokedCertificateObservation) DeepCopyInto(out *RevokedCertificateObservation) { *out = *in @@ -28041,6 +36658,59 @@ func (in *RevokedCertificateParameters) DeepCopy() *RevokedCertificateParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RewriteRuleInitParameters) DeepCopyInto(out *RewriteRuleInitParameters) { + *out = *in + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]ConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RequestHeaderConfiguration != nil { + in, out := &in.RequestHeaderConfiguration, &out.RequestHeaderConfiguration + *out = make([]RequestHeaderConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ResponseHeaderConfiguration != nil { + in, out := &in.ResponseHeaderConfiguration, &out.ResponseHeaderConfiguration + *out = make([]ResponseHeaderConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuleSequence != nil { + in, out := &in.RuleSequence, &out.RuleSequence + *out = new(float64) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = make([]URLInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RewriteRuleInitParameters. +func (in *RewriteRuleInitParameters) DeepCopy() *RewriteRuleInitParameters { + if in == nil { + return nil + } + out := new(RewriteRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RewriteRuleObservation) DeepCopyInto(out *RewriteRuleObservation) { *out = *in @@ -28147,6 +36817,33 @@ func (in *RewriteRuleParameters) DeepCopy() *RewriteRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RewriteRuleSetInitParameters) DeepCopyInto(out *RewriteRuleSetInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RewriteRule != nil { + in, out := &in.RewriteRule, &out.RewriteRule + *out = make([]RewriteRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RewriteRuleSetInitParameters. +func (in *RewriteRuleSetInitParameters) DeepCopy() *RewriteRuleSetInitParameters { + if in == nil { + return nil + } + out := new(RewriteRuleSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RewriteRuleSetObservation) DeepCopyInto(out *RewriteRuleSetObservation) { *out = *in @@ -28206,6 +36903,31 @@ func (in *RewriteRuleSetParameters) DeepCopy() *RewriteRuleSetParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RootCertificateInitParameters) DeepCopyInto(out *RootCertificateInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublicCertData != nil { + in, out := &in.PublicCertData, &out.PublicCertData + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RootCertificateInitParameters. +func (in *RootCertificateInitParameters) DeepCopy() *RootCertificateInitParameters { + if in == nil { + return nil + } + out := new(RootCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RootCertificateObservation) DeepCopyInto(out *RootCertificateObservation) { *out = *in @@ -28310,6 +37032,48 @@ func (in *RouteFilter) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteFilterInitParameters) DeepCopyInto(out *RouteFilterInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]RouteFilterRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteFilterInitParameters. +func (in *RouteFilterInitParameters) DeepCopy() *RouteFilterInitParameters { + if in == nil { + return nil + } + out := new(RouteFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteFilterList) DeepCopyInto(out *RouteFilterList) { *out = *in @@ -28451,6 +37215,47 @@ func (in *RouteFilterParameters) DeepCopy() *RouteFilterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteFilterRuleInitParameters) DeepCopyInto(out *RouteFilterRuleInitParameters) { + *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = new(string) + **out = **in + } + if in.Communities != nil { + in, out := &in.Communities, &out.Communities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RuleType != nil { + in, out := &in.RuleType, &out.RuleType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteFilterRuleInitParameters. +func (in *RouteFilterRuleInitParameters) DeepCopy() *RouteFilterRuleInitParameters { + if in == nil { + return nil + } + out := new(RouteFilterRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteFilterRuleObservation) DeepCopyInto(out *RouteFilterRuleObservation) { *out = *in @@ -28538,6 +37343,7 @@ func (in *RouteFilterSpec) DeepCopyInto(out *RouteFilterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteFilterSpec. @@ -28567,6 +37373,73 @@ func (in *RouteFilterStatus) DeepCopy() *RouteFilterStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteInitParameters) DeepCopyInto(out *RouteInitParameters) { + *out = *in + if in.AssociatedRouteTableID != nil { + in, out := &in.AssociatedRouteTableID, &out.AssociatedRouteTableID + *out = new(string) + **out = **in + } + if in.InboundRouteMapID != nil { + in, out := &in.InboundRouteMapID, &out.InboundRouteMapID + *out = new(string) + **out = **in + } + if in.OutboundRouteMapID != nil { + in, out := &in.OutboundRouteMapID, &out.OutboundRouteMapID + *out = new(string) + **out = **in + } + if in.PropagatedRouteTable != nil { + in, out := &in.PropagatedRouteTable, &out.PropagatedRouteTable + *out = make([]RoutePropagatedRouteTableInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteInitParameters. +func (in *RouteInitParameters) DeepCopy() *RouteInitParameters { + if in == nil { + return nil + } + out := new(RouteInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteInitParameters_2) DeepCopyInto(out *RouteInitParameters_2) { + *out = *in + if in.AddressPrefix != nil { + in, out := &in.AddressPrefix, &out.AddressPrefix + *out = new(string) + **out = **in + } + if in.NextHopInIPAddress != nil { + in, out := &in.NextHopInIPAddress, &out.NextHopInIPAddress + *out = new(string) + **out = **in + } + if in.NextHopType != nil { + in, out := &in.NextHopType, &out.NextHopType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteInitParameters_2. +func (in *RouteInitParameters_2) DeepCopy() *RouteInitParameters_2 { + if in == nil { + return nil + } + out := new(RouteInitParameters_2) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteList) DeepCopyInto(out *RouteList) { *out = *in @@ -28626,6 +37499,28 @@ func (in *RouteMap) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteMapInitParameters) DeepCopyInto(out *RouteMapInitParameters) { + *out = *in + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]RouteMapRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteMapInitParameters. +func (in *RouteMapInitParameters) DeepCopy() *RouteMapInitParameters { + if in == nil { + return nil + } + out := new(RouteMapInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteMapList) DeepCopyInto(out *RouteMapList) { *out = *in @@ -28727,6 +37622,45 @@ func (in *RouteMapParameters) DeepCopy() *RouteMapParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteMapRuleInitParameters) DeepCopyInto(out *RouteMapRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]RuleActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MatchCriterion != nil { + in, out := &in.MatchCriterion, &out.MatchCriterion + *out = make([]MatchCriterionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NextStepIfMatched != nil { + in, out := &in.NextStepIfMatched, &out.NextStepIfMatched + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteMapRuleInitParameters. +func (in *RouteMapRuleInitParameters) DeepCopy() *RouteMapRuleInitParameters { + if in == nil { + return nil + } + out := new(RouteMapRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteMapRuleObservation) DeepCopyInto(out *RouteMapRuleObservation) { *out = *in @@ -28810,6 +37744,7 @@ func (in *RouteMapSpec) DeepCopyInto(out *RouteMapSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteMapSpec. @@ -29018,6 +37953,43 @@ func (in *RouteParameters_2) DeepCopy() *RouteParameters_2 { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RoutePropagatedRouteTableInitParameters) DeepCopyInto(out *RoutePropagatedRouteTableInitParameters) { + *out = *in + if in.Ids != nil { + in, out := &in.Ids, &out.Ids + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePropagatedRouteTableInitParameters. +func (in *RoutePropagatedRouteTableInitParameters) DeepCopy() *RoutePropagatedRouteTableInitParameters { + if in == nil { + return nil + } + out := new(RoutePropagatedRouteTableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RoutePropagatedRouteTableObservation) DeepCopyInto(out *RoutePropagatedRouteTableObservation) { *out = *in @@ -29146,6 +38118,31 @@ func (in *RouteServerBGPConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteServerBGPConnectionInitParameters) DeepCopyInto(out *RouteServerBGPConnectionInitParameters) { + *out = *in + if in.PeerAsn != nil { + in, out := &in.PeerAsn, &out.PeerAsn + *out = new(float64) + **out = **in + } + if in.PeerIP != nil { + in, out := &in.PeerIP, &out.PeerIP + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteServerBGPConnectionInitParameters. +func (in *RouteServerBGPConnectionInitParameters) DeepCopy() *RouteServerBGPConnectionInitParameters { + if in == nil { + return nil + } + out := new(RouteServerBGPConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteServerBGPConnectionList) DeepCopyInto(out *RouteServerBGPConnectionList) { *out = *in @@ -29258,6 +38255,7 @@ func (in *RouteServerBGPConnectionSpec) DeepCopyInto(out *RouteServerBGPConnecti *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteServerBGPConnectionSpec. @@ -29287,6 +38285,51 @@ func (in *RouteServerBGPConnectionStatus) DeepCopy() *RouteServerBGPConnectionSt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteServerInitParameters) DeepCopyInto(out *RouteServerInitParameters) { + *out = *in + if in.BranchToBranchTrafficEnabled != nil { + in, out := &in.BranchToBranchTrafficEnabled, &out.BranchToBranchTrafficEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteServerInitParameters. +func (in *RouteServerInitParameters) DeepCopy() *RouteServerInitParameters { + if in == nil { + return nil + } + out := new(RouteServerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteServerList) DeepCopyInto(out *RouteServerList) { *out = *in @@ -29500,6 +38543,7 @@ func (in *RouteServerSpec) DeepCopyInto(out *RouteServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteServerSpec. @@ -29534,6 +38578,7 @@ func (in *RouteSpec) DeepCopyInto(out *RouteSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpec. @@ -29590,6 +38635,53 @@ func (in *RouteTable) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteTableInitParameters) DeepCopyInto(out *RouteTableInitParameters) { + *out = *in + if in.DisableBGPRoutePropagation != nil { + in, out := &in.DisableBGPRoutePropagation, &out.DisableBGPRoutePropagation + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Route != nil { + in, out := &in.Route, &out.Route + *out = make([]RouteTableRouteInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteTableInitParameters. +func (in *RouteTableInitParameters) DeepCopy() *RouteTableInitParameters { + if in == nil { + return nil + } + out := new(RouteTableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteTableList) DeepCopyInto(out *RouteTableList) { *out = *in @@ -29752,6 +38844,41 @@ func (in *RouteTableParameters) DeepCopy() *RouteTableParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RouteTableRouteInitParameters) DeepCopyInto(out *RouteTableRouteInitParameters) { + *out = *in + if in.AddressPrefix != nil { + in, out := &in.AddressPrefix, &out.AddressPrefix + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NextHopInIPAddress != nil { + in, out := &in.NextHopInIPAddress, &out.NextHopInIPAddress + *out = new(string) + **out = **in + } + if in.NextHopType != nil { + in, out := &in.NextHopType, &out.NextHopType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteTableRouteInitParameters. +func (in *RouteTableRouteInitParameters) DeepCopy() *RouteTableRouteInitParameters { + if in == nil { + return nil + } + out := new(RouteTableRouteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RouteTableRouteObservation) DeepCopyInto(out *RouteTableRouteObservation) { *out = *in @@ -29827,6 +38954,7 @@ func (in *RouteTableSpec) DeepCopyInto(out *RouteTableSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteTableSpec. @@ -29857,7 +38985,7 @@ func (in *RouteTableStatus) DeepCopy() *RouteTableStatus { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RoutingObservation) DeepCopyInto(out *RoutingObservation) { +func (in *RoutingInitParameters) DeepCopyInto(out *RoutingInitParameters) { *out = *in if in.AssociatedRouteTableID != nil { in, out := &in.AssociatedRouteTableID, &out.AssociatedRouteTableID @@ -29876,25 +39004,25 @@ func (in *RoutingObservation) DeepCopyInto(out *RoutingObservation) { } if in.PropagatedRouteTable != nil { in, out := &in.PropagatedRouteTable, &out.PropagatedRouteTable - *out = make([]PropagatedRouteTableObservation, len(*in)) + *out = make([]PropagatedRouteTableInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingObservation. -func (in *RoutingObservation) DeepCopy() *RoutingObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingInitParameters. +func (in *RoutingInitParameters) DeepCopy() *RoutingInitParameters { if in == nil { return nil } - out := new(RoutingObservation) + out := new(RoutingInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RoutingParameters) DeepCopyInto(out *RoutingParameters) { +func (in *RoutingObservation) DeepCopyInto(out *RoutingObservation) { *out = *in if in.AssociatedRouteTableID != nil { in, out := &in.AssociatedRouteTableID, &out.AssociatedRouteTableID @@ -29913,62 +39041,136 @@ func (in *RoutingParameters) DeepCopyInto(out *RoutingParameters) { } if in.PropagatedRouteTable != nil { in, out := &in.PropagatedRouteTable, &out.PropagatedRouteTable - *out = make([]PropagatedRouteTableParameters, len(*in)) + *out = make([]PropagatedRouteTableObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingParameters. -func (in *RoutingParameters) DeepCopy() *RoutingParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingObservation. +func (in *RoutingObservation) DeepCopy() *RoutingObservation { if in == nil { return nil } - out := new(RoutingParameters) + out := new(RoutingObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RoutingPropagatedRouteTableObservation) DeepCopyInto(out *RoutingPropagatedRouteTableObservation) { +func (in *RoutingParameters) DeepCopyInto(out *RoutingParameters) { *out = *in - if in.Labels != nil { - in, out := &in.Labels, &out.Labels - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.AssociatedRouteTableID != nil { + in, out := &in.AssociatedRouteTableID, &out.AssociatedRouteTableID + *out = new(string) + **out = **in } - if in.RouteTableIds != nil { - in, out := &in.RouteTableIds, &out.RouteTableIds - *out = make([]*string, len(*in)) + if in.InboundRouteMapID != nil { + in, out := &in.InboundRouteMapID, &out.InboundRouteMapID + *out = new(string) + **out = **in + } + if in.OutboundRouteMapID != nil { + in, out := &in.OutboundRouteMapID, &out.OutboundRouteMapID + *out = new(string) + **out = **in + } + if in.PropagatedRouteTable != nil { + in, out := &in.PropagatedRouteTable, &out.PropagatedRouteTable + *out = make([]PropagatedRouteTableParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingPropagatedRouteTableObservation. -func (in *RoutingPropagatedRouteTableObservation) DeepCopy() *RoutingPropagatedRouteTableObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingParameters. +func (in *RoutingParameters) DeepCopy() *RoutingParameters { if in == nil { return nil } - out := new(RoutingPropagatedRouteTableObservation) + out := new(RoutingParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RoutingPropagatedRouteTableParameters) DeepCopyInto(out *RoutingPropagatedRouteTableParameters) { +func (in *RoutingPropagatedRouteTableInitParameters) DeepCopyInto(out *RoutingPropagatedRouteTableInitParameters) { + *out = *in + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RouteTableIds != nil { + in, out := &in.RouteTableIds, &out.RouteTableIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingPropagatedRouteTableInitParameters. +func (in *RoutingPropagatedRouteTableInitParameters) DeepCopy() *RoutingPropagatedRouteTableInitParameters { + if in == nil { + return nil + } + out := new(RoutingPropagatedRouteTableInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RoutingPropagatedRouteTableObservation) DeepCopyInto(out *RoutingPropagatedRouteTableObservation) { + *out = *in + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RouteTableIds != nil { + in, out := &in.RouteTableIds, &out.RouteTableIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingPropagatedRouteTableObservation. +func (in *RoutingPropagatedRouteTableObservation) DeepCopy() *RoutingPropagatedRouteTableObservation { + if in == nil { + return nil + } + out := new(RoutingPropagatedRouteTableObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RoutingPropagatedRouteTableParameters) DeepCopyInto(out *RoutingPropagatedRouteTableParameters) { *out = *in if in.Labels != nil { in, out := &in.Labels, &out.Labels @@ -30004,6 +39206,78 @@ func (in *RoutingPropagatedRouteTableParameters) DeepCopy() *RoutingPropagatedRo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RoutingRuleInitParameters) DeepCopyInto(out *RoutingRuleInitParameters) { + *out = *in + if in.AcceptedProtocols != nil { + in, out := &in.AcceptedProtocols, &out.AcceptedProtocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ForwardingConfiguration != nil { + in, out := &in.ForwardingConfiguration, &out.ForwardingConfiguration + *out = make([]ForwardingConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FrontendEndpoints != nil { + in, out := &in.FrontendEndpoints, &out.FrontendEndpoints + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PatternsToMatch != nil { + in, out := &in.PatternsToMatch, &out.PatternsToMatch + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RedirectConfiguration != nil { + in, out := &in.RedirectConfiguration, &out.RedirectConfiguration + *out = make([]RoutingRuleRedirectConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingRuleInitParameters. +func (in *RoutingRuleInitParameters) DeepCopy() *RoutingRuleInitParameters { + if in == nil { + return nil + } + out := new(RoutingRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RoutingRuleObservation) DeepCopyInto(out *RoutingRuleObservation) { *out = *in @@ -30153,6 +39427,51 @@ func (in *RoutingRuleParameters) DeepCopy() *RoutingRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RoutingRuleRedirectConfigurationInitParameters) DeepCopyInto(out *RoutingRuleRedirectConfigurationInitParameters) { + *out = *in + if in.CustomFragment != nil { + in, out := &in.CustomFragment, &out.CustomFragment + *out = new(string) + **out = **in + } + if in.CustomHost != nil { + in, out := &in.CustomHost, &out.CustomHost + *out = new(string) + **out = **in + } + if in.CustomPath != nil { + in, out := &in.CustomPath, &out.CustomPath + *out = new(string) + **out = **in + } + if in.CustomQueryString != nil { + in, out := &in.CustomQueryString, &out.CustomQueryString + *out = new(string) + **out = **in + } + if in.RedirectProtocol != nil { + in, out := &in.RedirectProtocol, &out.RedirectProtocol + *out = new(string) + **out = **in + } + if in.RedirectType != nil { + in, out := &in.RedirectType, &out.RedirectType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingRuleRedirectConfigurationInitParameters. +func (in *RoutingRuleRedirectConfigurationInitParameters) DeepCopy() *RoutingRuleRedirectConfigurationInitParameters { + if in == nil { + return nil + } + out := new(RoutingRuleRedirectConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RoutingRuleRedirectConfigurationObservation) DeepCopyInto(out *RoutingRuleRedirectConfigurationObservation) { *out = *in @@ -30243,6 +39562,33 @@ func (in *RoutingRuleRedirectConfigurationParameters) DeepCopy() *RoutingRuleRed return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleActionInitParameters) DeepCopyInto(out *RuleActionInitParameters) { + *out = *in + if in.Parameter != nil { + in, out := &in.Parameter, &out.Parameter + *out = make([]ParameterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleActionInitParameters. +func (in *RuleActionInitParameters) DeepCopy() *RuleActionInitParameters { + if in == nil { + return nil + } + out := new(RuleActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RuleActionObservation) DeepCopyInto(out *RuleActionObservation) { *out = *in @@ -30297,6 +39643,36 @@ func (in *RuleActionParameters) DeepCopy() *RuleActionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleExclusionInitParameters) DeepCopyInto(out *RuleExclusionInitParameters) { + *out = *in + if in.MatchVariable != nil { + in, out := &in.MatchVariable, &out.MatchVariable + *out = new(string) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleExclusionInitParameters. +func (in *RuleExclusionInitParameters) DeepCopy() *RuleExclusionInitParameters { + if in == nil { + return nil + } + out := new(RuleExclusionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RuleExclusionObservation) DeepCopyInto(out *RuleExclusionObservation) { *out = *in @@ -30357,6 +39733,37 @@ func (in *RuleExclusionParameters) DeepCopy() *RuleExclusionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleGroupInitParameters) DeepCopyInto(out *RuleGroupInitParameters) { + *out = *in + if in.ExcludedRules != nil { + in, out := &in.ExcludedRules, &out.ExcludedRules + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RuleGroupName != nil { + in, out := &in.RuleGroupName, &out.RuleGroupName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleGroupInitParameters. +func (in *RuleGroupInitParameters) DeepCopy() *RuleGroupInitParameters { + if in == nil { + return nil + } + out := new(RuleGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RuleGroupObservation) DeepCopyInto(out *RuleGroupObservation) { *out = *in @@ -30388,6 +39795,44 @@ func (in *RuleGroupObservation) DeepCopy() *RuleGroupObservation { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleGroupOverrideInitParameters) DeepCopyInto(out *RuleGroupOverrideInitParameters) { + *out = *in + if in.DisabledRules != nil { + in, out := &in.DisabledRules, &out.DisabledRules + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]RuleGroupOverrideRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuleGroupName != nil { + in, out := &in.RuleGroupName, &out.RuleGroupName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleGroupOverrideInitParameters. +func (in *RuleGroupOverrideInitParameters) DeepCopy() *RuleGroupOverrideInitParameters { + if in == nil { + return nil + } + out := new(RuleGroupOverrideInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RuleGroupOverrideObservation) DeepCopyInto(out *RuleGroupOverrideObservation) { *out = *in @@ -30464,6 +39909,36 @@ func (in *RuleGroupOverrideParameters) DeepCopy() *RuleGroupOverrideParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleGroupOverrideRuleInitParameters) DeepCopyInto(out *RuleGroupOverrideRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleGroupOverrideRuleInitParameters. +func (in *RuleGroupOverrideRuleInitParameters) DeepCopy() *RuleGroupOverrideRuleInitParameters { + if in == nil { + return nil + } + out := new(RuleGroupOverrideRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RuleGroupOverrideRuleObservation) DeepCopyInto(out *RuleGroupOverrideRuleObservation) { *out = *in @@ -30555,6 +40030,139 @@ func (in *RuleGroupParameters) DeepCopy() *RuleGroupParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleInitParameters) DeepCopyInto(out *RuleInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.FqdnTags != nil { + in, out := &in.FqdnTags, &out.FqdnTags + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = make([]ProtocolInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceAddresses != nil { + in, out := &in.SourceAddresses, &out.SourceAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceIPGroups != nil { + in, out := &in.SourceIPGroups, &out.SourceIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TargetFqdns != nil { + in, out := &in.TargetFqdns, &out.TargetFqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleInitParameters. +func (in *RuleInitParameters) DeepCopy() *RuleInitParameters { + if in == nil { + return nil + } + out := new(RuleInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleMatchConditionInitParameters) DeepCopyInto(out *RuleMatchConditionInitParameters) { + *out = *in + if in.NegateCondition != nil { + in, out := &in.NegateCondition, &out.NegateCondition + *out = new(bool) + **out = **in + } + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Selector != nil { + in, out := &in.Selector, &out.Selector + *out = new(string) + **out = **in + } + if in.Transform != nil { + in, out := &in.Transform, &out.Transform + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Variable != nil { + in, out := &in.Variable, &out.Variable + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleMatchConditionInitParameters. +func (in *RuleMatchConditionInitParameters) DeepCopy() *RuleMatchConditionInitParameters { + if in == nil { + return nil + } + out := new(RuleMatchConditionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RuleMatchConditionObservation) DeepCopyInto(out *RuleMatchConditionObservation) { *out = *in @@ -30735,88 +40343,113 @@ func (in *RuleObservation) DeepCopyInto(out *RuleObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleObservation. -func (in *RuleObservation) DeepCopy() *RuleObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleObservation. +func (in *RuleObservation) DeepCopy() *RuleObservation { + if in == nil { + return nil + } + out := new(RuleObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleParameters) DeepCopyInto(out *RuleParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.FqdnTags != nil { + in, out := &in.FqdnTags, &out.FqdnTags + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = make([]ProtocolParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceAddresses != nil { + in, out := &in.SourceAddresses, &out.SourceAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceIPGroups != nil { + in, out := &in.SourceIPGroups, &out.SourceIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TargetFqdns != nil { + in, out := &in.TargetFqdns, &out.TargetFqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleParameters. +func (in *RuleParameters) DeepCopy() *RuleParameters { if in == nil { return nil } - out := new(RuleObservation) + out := new(RuleParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RuleParameters) DeepCopyInto(out *RuleParameters) { +func (in *SSLCertificateInitParameters) DeepCopyInto(out *SSLCertificateInitParameters) { *out = *in - if in.Description != nil { - in, out := &in.Description, &out.Description + if in.KeyVaultSecretID != nil { + in, out := &in.KeyVaultSecretID, &out.KeyVaultSecretID *out = new(string) **out = **in } - if in.FqdnTags != nil { - in, out := &in.FqdnTags, &out.FqdnTags - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } if in.Name != nil { in, out := &in.Name, &out.Name *out = new(string) **out = **in } - if in.Protocol != nil { - in, out := &in.Protocol, &out.Protocol - *out = make([]ProtocolParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.SourceAddresses != nil { - in, out := &in.SourceAddresses, &out.SourceAddresses - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.SourceIPGroups != nil { - in, out := &in.SourceIPGroups, &out.SourceIPGroups - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.TargetFqdns != nil { - in, out := &in.TargetFqdns, &out.TargetFqdns - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleParameters. -func (in *RuleParameters) DeepCopy() *RuleParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLCertificateInitParameters. +func (in *SSLCertificateInitParameters) DeepCopy() *SSLCertificateInitParameters { if in == nil { return nil } - out := new(RuleParameters) + out := new(SSLCertificateInitParameters) in.DeepCopyInto(out) return out } @@ -30891,6 +40524,58 @@ func (in *SSLCertificateParameters) DeepCopy() *SSLCertificateParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSLPolicyInitParameters) DeepCopyInto(out *SSLPolicyInitParameters) { + *out = *in + if in.CipherSuites != nil { + in, out := &in.CipherSuites, &out.CipherSuites + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DisabledProtocols != nil { + in, out := &in.DisabledProtocols, &out.DisabledProtocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MinProtocolVersion != nil { + in, out := &in.MinProtocolVersion, &out.MinProtocolVersion + *out = new(string) + **out = **in + } + if in.PolicyName != nil { + in, out := &in.PolicyName, &out.PolicyName + *out = new(string) + **out = **in + } + if in.PolicyType != nil { + in, out := &in.PolicyType, &out.PolicyType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLPolicyInitParameters. +func (in *SSLPolicyInitParameters) DeepCopy() *SSLPolicyInitParameters { + if in == nil { + return nil + } + out := new(SSLPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SSLPolicyObservation) DeepCopyInto(out *SSLPolicyObservation) { *out = *in @@ -30995,6 +40680,49 @@ func (in *SSLPolicyParameters) DeepCopy() *SSLPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSLProfileInitParameters) DeepCopyInto(out *SSLProfileInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SSLPolicy != nil { + in, out := &in.SSLPolicy, &out.SSLPolicy + *out = make([]SSLProfileSSLPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TrustedClientCertificateNames != nil { + in, out := &in.TrustedClientCertificateNames, &out.TrustedClientCertificateNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.VerifyClientCertIssuerDn != nil { + in, out := &in.VerifyClientCertIssuerDn, &out.VerifyClientCertIssuerDn + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLProfileInitParameters. +func (in *SSLProfileInitParameters) DeepCopy() *SSLProfileInitParameters { + if in == nil { + return nil + } + out := new(SSLProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SSLProfileObservation) DeepCopyInto(out *SSLProfileObservation) { *out = *in @@ -31086,6 +40814,58 @@ func (in *SSLProfileParameters) DeepCopy() *SSLProfileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSLProfileSSLPolicyInitParameters) DeepCopyInto(out *SSLProfileSSLPolicyInitParameters) { + *out = *in + if in.CipherSuites != nil { + in, out := &in.CipherSuites, &out.CipherSuites + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DisabledProtocols != nil { + in, out := &in.DisabledProtocols, &out.DisabledProtocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MinProtocolVersion != nil { + in, out := &in.MinProtocolVersion, &out.MinProtocolVersion + *out = new(string) + **out = **in + } + if in.PolicyName != nil { + in, out := &in.PolicyName, &out.PolicyName + *out = new(string) + **out = **in + } + if in.PolicyType != nil { + in, out := &in.PolicyType, &out.PolicyType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLProfileSSLPolicyInitParameters. +func (in *SSLProfileSSLPolicyInitParameters) DeepCopy() *SSLProfileSSLPolicyInitParameters { + if in == nil { + return nil + } + out := new(SSLProfileSSLPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SSLProfileSSLPolicyObservation) DeepCopyInto(out *SSLProfileSSLPolicyObservation) { *out = *in @@ -31190,6 +40970,43 @@ func (in *SSLProfileSSLPolicyParameters) DeepCopy() *SSLProfileSSLPolicyParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScopeInitParameters) DeepCopyInto(out *ScopeInitParameters) { + *out = *in + if in.ManagementGroupIds != nil { + in, out := &in.ManagementGroupIds, &out.ManagementGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SubscriptionIds != nil { + in, out := &in.SubscriptionIds, &out.SubscriptionIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScopeInitParameters. +func (in *ScopeInitParameters) DeepCopy() *ScopeInitParameters { + if in == nil { + return nil + } + out := new(ScopeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScopeObservation) DeepCopyInto(out *ScopeObservation) { *out = *in @@ -31291,6 +41108,48 @@ func (in *SecurityGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityGroupInitParameters) DeepCopyInto(out *SecurityGroupInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SecurityRule != nil { + in, out := &in.SecurityRule, &out.SecurityRule + *out = make([]SecurityRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupInitParameters. +func (in *SecurityGroupInitParameters) DeepCopy() *SecurityGroupInitParameters { + if in == nil { + return nil + } + out := new(SecurityGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityGroupList) DeepCopyInto(out *SecurityGroupList) { *out = *in @@ -31437,6 +41296,7 @@ func (in *SecurityGroupSpec) DeepCopyInto(out *SecurityGroupSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupSpec. @@ -31493,6 +41353,263 @@ func (in *SecurityRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityRuleInitParameters) DeepCopyInto(out *SecurityRuleInitParameters) { + *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DestinationAddressPrefix != nil { + in, out := &in.DestinationAddressPrefix, &out.DestinationAddressPrefix + *out = new(string) + **out = **in + } + if in.DestinationAddressPrefixes != nil { + in, out := &in.DestinationAddressPrefixes, &out.DestinationAddressPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationApplicationSecurityGroupIds != nil { + in, out := &in.DestinationApplicationSecurityGroupIds, &out.DestinationApplicationSecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationPortRange != nil { + in, out := &in.DestinationPortRange, &out.DestinationPortRange + *out = new(string) + **out = **in + } + if in.DestinationPortRanges != nil { + in, out := &in.DestinationPortRanges, &out.DestinationPortRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Direction != nil { + in, out := &in.Direction, &out.Direction + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.SourceAddressPrefix != nil { + in, out := &in.SourceAddressPrefix, &out.SourceAddressPrefix + *out = new(string) + **out = **in + } + if in.SourceAddressPrefixes != nil { + in, out := &in.SourceAddressPrefixes, &out.SourceAddressPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceApplicationSecurityGroupIds != nil { + in, out := &in.SourceApplicationSecurityGroupIds, &out.SourceApplicationSecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourcePortRange != nil { + in, out := &in.SourcePortRange, &out.SourcePortRange + *out = new(string) + **out = **in + } + if in.SourcePortRanges != nil { + in, out := &in.SourcePortRanges, &out.SourcePortRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRuleInitParameters. +func (in *SecurityRuleInitParameters) DeepCopy() *SecurityRuleInitParameters { + if in == nil { + return nil + } + out := new(SecurityRuleInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityRuleInitParameters_2) DeepCopyInto(out *SecurityRuleInitParameters_2) { + *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DestinationAddressPrefix != nil { + in, out := &in.DestinationAddressPrefix, &out.DestinationAddressPrefix + *out = new(string) + **out = **in + } + if in.DestinationAddressPrefixes != nil { + in, out := &in.DestinationAddressPrefixes, &out.DestinationAddressPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationApplicationSecurityGroupIds != nil { + in, out := &in.DestinationApplicationSecurityGroupIds, &out.DestinationApplicationSecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationPortRange != nil { + in, out := &in.DestinationPortRange, &out.DestinationPortRange + *out = new(string) + **out = **in + } + if in.DestinationPortRanges != nil { + in, out := &in.DestinationPortRanges, &out.DestinationPortRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Direction != nil { + in, out := &in.Direction, &out.Direction + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.SourceAddressPrefix != nil { + in, out := &in.SourceAddressPrefix, &out.SourceAddressPrefix + *out = new(string) + **out = **in + } + if in.SourceAddressPrefixes != nil { + in, out := &in.SourceAddressPrefixes, &out.SourceAddressPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceApplicationSecurityGroupIds != nil { + in, out := &in.SourceApplicationSecurityGroupIds, &out.SourceApplicationSecurityGroupIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourcePortRange != nil { + in, out := &in.SourcePortRange, &out.SourcePortRange + *out = new(string) + **out = **in + } + if in.SourcePortRanges != nil { + in, out := &in.SourcePortRanges, &out.SourcePortRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRuleInitParameters_2. +func (in *SecurityRuleInitParameters_2) DeepCopy() *SecurityRuleInitParameters_2 { + if in == nil { + return nil + } + out := new(SecurityRuleInitParameters_2) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityRuleList) DeepCopyInto(out *SecurityRuleList) { *out = *in @@ -32089,6 +42206,7 @@ func (in *SecurityRuleSpec) DeepCopyInto(out *SecurityRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRuleSpec. @@ -32118,6 +42236,31 @@ func (in *SecurityRuleStatus) DeepCopy() *SecurityRuleStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerInitParameters) DeepCopyInto(out *ServerInitParameters) { + *out = *in + if in.Address != nil { + in, out := &in.Address, &out.Address + *out = new(string) + **out = **in + } + if in.Score != nil { + in, out := &in.Score, &out.Score + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerInitParameters. +func (in *ServerInitParameters) DeepCopy() *ServerInitParameters { + if in == nil { + return nil + } + out := new(ServerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerObservation) DeepCopyInto(out *ServerObservation) { *out = *in @@ -32169,6 +42312,31 @@ func (in *ServerParameters) DeepCopy() *ServerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerRootCertificateInitParameters) DeepCopyInto(out *ServerRootCertificateInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublicCertData != nil { + in, out := &in.PublicCertData, &out.PublicCertData + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerRootCertificateInitParameters. +func (in *ServerRootCertificateInitParameters) DeepCopy() *ServerRootCertificateInitParameters { + if in == nil { + return nil + } + out := new(ServerRootCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServerRootCertificateObservation) DeepCopyInto(out *ServerRootCertificateObservation) { *out = *in @@ -32219,6 +42387,37 @@ func (in *ServerRootCertificateParameters) DeepCopy() *ServerRootCertificatePara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceDelegationInitParameters) DeepCopyInto(out *ServiceDelegationInitParameters) { + *out = *in + if in.Actions != nil { + in, out := &in.Actions, &out.Actions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDelegationInitParameters. +func (in *ServiceDelegationInitParameters) DeepCopy() *ServiceDelegationInitParameters { + if in == nil { + return nil + } + out := new(ServiceDelegationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServiceDelegationObservation) DeepCopyInto(out *ServiceDelegationObservation) { *out = *in @@ -32281,6 +42480,31 @@ func (in *ServiceDelegationParameters) DeepCopy() *ServiceDelegationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SignatureOverridesInitParameters) DeepCopyInto(out *SignatureOverridesInitParameters) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SignatureOverridesInitParameters. +func (in *SignatureOverridesInitParameters) DeepCopy() *SignatureOverridesInitParameters { + if in == nil { + return nil + } + out := new(SignatureOverridesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SignatureOverridesObservation) DeepCopyInto(out *SignatureOverridesObservation) { *out = *in @@ -32331,6 +42555,36 @@ func (in *SignatureOverridesParameters) DeepCopy() *SignatureOverridesParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuInitParameters) DeepCopyInto(out *SkuInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuInitParameters. +func (in *SkuInitParameters) DeepCopy() *SkuInitParameters { + if in == nil { + return nil + } + out := new(SkuInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SkuObservation) DeepCopyInto(out *SkuObservation) { *out = *in @@ -32391,6 +42645,76 @@ func (in *SkuParameters) DeepCopy() *SkuParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SoaRecordInitParameters) DeepCopyInto(out *SoaRecordInitParameters) { + *out = *in + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.ExpireTime != nil { + in, out := &in.ExpireTime, &out.ExpireTime + *out = new(float64) + **out = **in + } + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.MinimumTTL != nil { + in, out := &in.MinimumTTL, &out.MinimumTTL + *out = new(float64) + **out = **in + } + if in.RefreshTime != nil { + in, out := &in.RefreshTime, &out.RefreshTime + *out = new(float64) + **out = **in + } + if in.RetryTime != nil { + in, out := &in.RetryTime, &out.RetryTime + *out = new(float64) + **out = **in + } + if in.SerialNumber != nil { + in, out := &in.SerialNumber, &out.SerialNumber + *out = new(float64) + **out = **in + } + if in.TTL != nil { + in, out := &in.TTL, &out.TTL + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SoaRecordInitParameters. +func (in *SoaRecordInitParameters) DeepCopy() *SoaRecordInitParameters { + if in == nil { + return nil + } + out := new(SoaRecordInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SoaRecordObservation) DeepCopyInto(out *SoaRecordObservation) { *out = *in @@ -32536,6 +42860,42 @@ func (in *SoaRecordParameters) DeepCopy() *SoaRecordParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StaticVnetRouteInitParameters) DeepCopyInto(out *StaticVnetRouteInitParameters) { + *out = *in + if in.AddressPrefixes != nil { + in, out := &in.AddressPrefixes, &out.AddressPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NextHopIPAddress != nil { + in, out := &in.NextHopIPAddress, &out.NextHopIPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaticVnetRouteInitParameters. +func (in *StaticVnetRouteInitParameters) DeepCopy() *StaticVnetRouteInitParameters { + if in == nil { + return nil + } + out := new(StaticVnetRouteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StaticVnetRouteObservation) DeepCopyInto(out *StaticVnetRouteObservation) { *out = *in @@ -32608,6 +42968,26 @@ func (in *StaticVnetRouteParameters) DeepCopy() *StaticVnetRouteParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageLocationInitParameters) DeepCopyInto(out *StorageLocationInitParameters) { + *out = *in + if in.FilePath != nil { + in, out := &in.FilePath, &out.FilePath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageLocationInitParameters. +func (in *StorageLocationInitParameters) DeepCopy() *StorageLocationInitParameters { + if in == nil { + return nil + } + out := new(StorageLocationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageLocationObservation) DeepCopyInto(out *StorageLocationObservation) { *out = *in @@ -32700,6 +43080,81 @@ func (in *Subnet) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubnetInitParameters) DeepCopyInto(out *SubnetInitParameters) { + *out = *in + if in.AddressPrefixes != nil { + in, out := &in.AddressPrefixes, &out.AddressPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Delegation != nil { + in, out := &in.Delegation, &out.Delegation + *out = make([]DelegationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EnforcePrivateLinkEndpointNetworkPolicies != nil { + in, out := &in.EnforcePrivateLinkEndpointNetworkPolicies, &out.EnforcePrivateLinkEndpointNetworkPolicies + *out = new(bool) + **out = **in + } + if in.EnforcePrivateLinkServiceNetworkPolicies != nil { + in, out := &in.EnforcePrivateLinkServiceNetworkPolicies, &out.EnforcePrivateLinkServiceNetworkPolicies + *out = new(bool) + **out = **in + } + if in.PrivateEndpointNetworkPoliciesEnabled != nil { + in, out := &in.PrivateEndpointNetworkPoliciesEnabled, &out.PrivateEndpointNetworkPoliciesEnabled + *out = new(bool) + **out = **in + } + if in.PrivateLinkServiceNetworkPoliciesEnabled != nil { + in, out := &in.PrivateLinkServiceNetworkPoliciesEnabled, &out.PrivateLinkServiceNetworkPoliciesEnabled + *out = new(bool) + **out = **in + } + if in.ServiceEndpointPolicyIds != nil { + in, out := &in.ServiceEndpointPolicyIds, &out.ServiceEndpointPolicyIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ServiceEndpoints != nil { + in, out := &in.ServiceEndpoints, &out.ServiceEndpoints + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetInitParameters. +func (in *SubnetInitParameters) DeepCopy() *SubnetInitParameters { + if in == nil { + return nil + } + out := new(SubnetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubnetList) DeepCopyInto(out *SubnetList) { *out = *in @@ -32759,6 +43214,21 @@ func (in *SubnetNATGatewayAssociation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubnetNATGatewayAssociationInitParameters) DeepCopyInto(out *SubnetNATGatewayAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetNATGatewayAssociationInitParameters. +func (in *SubnetNATGatewayAssociationInitParameters) DeepCopy() *SubnetNATGatewayAssociationInitParameters { + if in == nil { + return nil + } + out := new(SubnetNATGatewayAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubnetNATGatewayAssociationList) DeepCopyInto(out *SubnetNATGatewayAssociationList) { *out = *in @@ -32871,6 +43341,7 @@ func (in *SubnetNATGatewayAssociationSpec) DeepCopyInto(out *SubnetNATGatewayAss *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetNATGatewayAssociationSpec. @@ -32927,6 +43398,21 @@ func (in *SubnetNetworkSecurityGroupAssociation) DeepCopyObject() runtime.Object return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubnetNetworkSecurityGroupAssociationInitParameters) DeepCopyInto(out *SubnetNetworkSecurityGroupAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetNetworkSecurityGroupAssociationInitParameters. +func (in *SubnetNetworkSecurityGroupAssociationInitParameters) DeepCopy() *SubnetNetworkSecurityGroupAssociationInitParameters { + if in == nil { + return nil + } + out := new(SubnetNetworkSecurityGroupAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubnetNetworkSecurityGroupAssociationList) DeepCopyInto(out *SubnetNetworkSecurityGroupAssociationList) { *out = *in @@ -33039,6 +43525,7 @@ func (in *SubnetNetworkSecurityGroupAssociationSpec) DeepCopyInto(out *SubnetNet *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetNetworkSecurityGroupAssociationSpec. @@ -33290,6 +43777,21 @@ func (in *SubnetRouteTableAssociation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubnetRouteTableAssociationInitParameters) DeepCopyInto(out *SubnetRouteTableAssociationInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetRouteTableAssociationInitParameters. +func (in *SubnetRouteTableAssociationInitParameters) DeepCopy() *SubnetRouteTableAssociationInitParameters { + if in == nil { + return nil + } + out := new(SubnetRouteTableAssociationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubnetRouteTableAssociationList) DeepCopyInto(out *SubnetRouteTableAssociationList) { *out = *in @@ -33402,6 +43904,7 @@ func (in *SubnetRouteTableAssociationSpec) DeepCopyInto(out *SubnetRouteTableAss *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetRouteTableAssociationSpec. @@ -33458,6 +43961,48 @@ func (in *SubnetServiceEndpointStoragePolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubnetServiceEndpointStoragePolicyInitParameters) DeepCopyInto(out *SubnetServiceEndpointStoragePolicyInitParameters) { + *out = *in + if in.Definition != nil { + in, out := &in.Definition, &out.Definition + *out = make([]DefinitionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetServiceEndpointStoragePolicyInitParameters. +func (in *SubnetServiceEndpointStoragePolicyInitParameters) DeepCopy() *SubnetServiceEndpointStoragePolicyInitParameters { + if in == nil { + return nil + } + out := new(SubnetServiceEndpointStoragePolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubnetServiceEndpointStoragePolicyList) DeepCopyInto(out *SubnetServiceEndpointStoragePolicyList) { *out = *in @@ -33604,6 +44149,7 @@ func (in *SubnetServiceEndpointStoragePolicySpec) DeepCopyInto(out *SubnetServic *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetServiceEndpointStoragePolicySpec. @@ -33638,6 +44184,7 @@ func (in *SubnetSpec) DeepCopyInto(out *SubnetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetSpec. @@ -33667,6 +44214,31 @@ func (in *SubnetStatus) DeepCopy() *SubnetStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SuccessThresholdInitParameters) DeepCopyInto(out *SuccessThresholdInitParameters) { + *out = *in + if in.ChecksFailedPercent != nil { + in, out := &in.ChecksFailedPercent, &out.ChecksFailedPercent + *out = new(float64) + **out = **in + } + if in.RoundTripTimeMS != nil { + in, out := &in.RoundTripTimeMS, &out.RoundTripTimeMS + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SuccessThresholdInitParameters. +func (in *SuccessThresholdInitParameters) DeepCopy() *SuccessThresholdInitParameters { + if in == nil { + return nil + } + out := new(SuccessThresholdInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SuccessThresholdObservation) DeepCopyInto(out *SuccessThresholdObservation) { *out = *in @@ -33717,6 +44289,36 @@ func (in *SuccessThresholdParameters) DeepCopy() *SuccessThresholdParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TCPConfigurationInitParameters) DeepCopyInto(out *TCPConfigurationInitParameters) { + *out = *in + if in.DestinationPortBehavior != nil { + in, out := &in.DestinationPortBehavior, &out.DestinationPortBehavior + *out = new(string) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.TraceRouteEnabled != nil { + in, out := &in.TraceRouteEnabled, &out.TraceRouteEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TCPConfigurationInitParameters. +func (in *TCPConfigurationInitParameters) DeepCopy() *TCPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(TCPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TCPConfigurationObservation) DeepCopyInto(out *TCPConfigurationObservation) { *out = *in @@ -33777,6 +44379,31 @@ func (in *TCPConfigurationParameters) DeepCopy() *TCPConfigurationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TLSCertificateInitParameters) DeepCopyInto(out *TLSCertificateInitParameters) { + *out = *in + if in.KeyVaultSecretID != nil { + in, out := &in.KeyVaultSecretID, &out.KeyVaultSecretID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSCertificateInitParameters. +func (in *TLSCertificateInitParameters) DeepCopy() *TLSCertificateInitParameters { + if in == nil { + return nil + } + out := new(TLSCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TLSCertificateObservation) DeepCopyInto(out *TLSCertificateObservation) { *out = *in @@ -33827,6 +44454,69 @@ func (in *TLSCertificateParameters) DeepCopy() *TLSCertificateParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TestConfigurationInitParameters) DeepCopyInto(out *TestConfigurationInitParameters) { + *out = *in + if in.HTTPConfiguration != nil { + in, out := &in.HTTPConfiguration, &out.HTTPConfiguration + *out = make([]HTTPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IcmpConfiguration != nil { + in, out := &in.IcmpConfiguration, &out.IcmpConfiguration + *out = make([]IcmpConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PreferredIPVersion != nil { + in, out := &in.PreferredIPVersion, &out.PreferredIPVersion + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.SuccessThreshold != nil { + in, out := &in.SuccessThreshold, &out.SuccessThreshold + *out = make([]SuccessThresholdInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TCPConfiguration != nil { + in, out := &in.TCPConfiguration, &out.TCPConfiguration + *out = make([]TCPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TestFrequencyInSeconds != nil { + in, out := &in.TestFrequencyInSeconds, &out.TestFrequencyInSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TestConfigurationInitParameters. +func (in *TestConfigurationInitParameters) DeepCopy() *TestConfigurationInitParameters { + if in == nil { + return nil + } + out := new(TestConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TestConfigurationObservation) DeepCopyInto(out *TestConfigurationObservation) { *out = *in @@ -33953,6 +44643,64 @@ func (in *TestConfigurationParameters) DeepCopy() *TestConfigurationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TestGroupInitParameters) DeepCopyInto(out *TestGroupInitParameters) { + *out = *in + if in.DestinationEndpoints != nil { + in, out := &in.DestinationEndpoints, &out.DestinationEndpoints + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SourceEndpoints != nil { + in, out := &in.SourceEndpoints, &out.SourceEndpoints + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.TestConfigurationNames != nil { + in, out := &in.TestConfigurationNames, &out.TestConfigurationNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TestGroupInitParameters. +func (in *TestGroupInitParameters) DeepCopy() *TestGroupInitParameters { + if in == nil { + return nil + } + out := new(TestGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TestGroupObservation) DeepCopyInto(out *TestGroupObservation) { *out = *in @@ -34069,6 +44817,43 @@ func (in *TestGroupParameters) DeepCopy() *TestGroupParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ThreatIntelligenceAllowlistInitParameters) DeepCopyInto(out *ThreatIntelligenceAllowlistInitParameters) { + *out = *in + if in.Fqdns != nil { + in, out := &in.Fqdns, &out.Fqdns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IPAddresses != nil { + in, out := &in.IPAddresses, &out.IPAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThreatIntelligenceAllowlistInitParameters. +func (in *ThreatIntelligenceAllowlistInitParameters) DeepCopy() *ThreatIntelligenceAllowlistInitParameters { + if in == nil { + return nil + } + out := new(ThreatIntelligenceAllowlistInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ThreatIntelligenceAllowlistObservation) DeepCopyInto(out *ThreatIntelligenceAllowlistObservation) { *out = *in @@ -34143,6 +44928,36 @@ func (in *ThreatIntelligenceAllowlistParameters) DeepCopy() *ThreatIntelligenceA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficAnalyticsInitParameters) DeepCopyInto(out *TrafficAnalyticsInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.IntervalInMinutes != nil { + in, out := &in.IntervalInMinutes, &out.IntervalInMinutes + *out = new(float64) + **out = **in + } + if in.WorkspaceRegion != nil { + in, out := &in.WorkspaceRegion, &out.WorkspaceRegion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficAnalyticsInitParameters. +func (in *TrafficAnalyticsInitParameters) DeepCopy() *TrafficAnalyticsInitParameters { + if in == nil { + return nil + } + out := new(TrafficAnalyticsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficAnalyticsObservation) DeepCopyInto(out *TrafficAnalyticsObservation) { *out = *in @@ -34243,6 +45058,91 @@ func (in *TrafficAnalyticsParameters) DeepCopy() *TrafficAnalyticsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficBypassInitParameters) DeepCopyInto(out *TrafficBypassInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DestinationAddresses != nil { + in, out := &in.DestinationAddresses, &out.DestinationAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationIPGroups != nil { + in, out := &in.DestinationIPGroups, &out.DestinationIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationPorts != nil { + in, out := &in.DestinationPorts, &out.DestinationPorts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.SourceAddresses != nil { + in, out := &in.SourceAddresses, &out.SourceAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SourceIPGroups != nil { + in, out := &in.SourceIPGroups, &out.SourceIPGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficBypassInitParameters. +func (in *TrafficBypassInitParameters) DeepCopy() *TrafficBypassInitParameters { + if in == nil { + return nil + } + out := new(TrafficBypassInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficBypassObservation) DeepCopyInto(out *TrafficBypassObservation) { *out = *in @@ -34413,6 +45313,36 @@ func (in *TrafficBypassParameters) DeepCopy() *TrafficBypassParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficCategoryInitParameters) DeepCopyInto(out *TrafficCategoryInitParameters) { + *out = *in + if in.AllowEndpointEnabled != nil { + in, out := &in.AllowEndpointEnabled, &out.AllowEndpointEnabled + *out = new(bool) + **out = **in + } + if in.DefaultEndpointEnabled != nil { + in, out := &in.DefaultEndpointEnabled, &out.DefaultEndpointEnabled + *out = new(bool) + **out = **in + } + if in.OptimizeEndpointEnabled != nil { + in, out := &in.OptimizeEndpointEnabled, &out.OptimizeEndpointEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficCategoryInitParameters. +func (in *TrafficCategoryInitParameters) DeepCopy() *TrafficCategoryInitParameters { + if in == nil { + return nil + } + out := new(TrafficCategoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficCategoryObservation) DeepCopyInto(out *TrafficCategoryObservation) { *out = *in @@ -34500,6 +45430,61 @@ func (in *TrafficManagerAzureEndpoint) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficManagerAzureEndpointInitParameters) DeepCopyInto(out *TrafficManagerAzureEndpointInitParameters) { + *out = *in + if in.CustomHeader != nil { + in, out := &in.CustomHeader, &out.CustomHeader + *out = make([]CustomHeaderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.GeoMappings != nil { + in, out := &in.GeoMappings, &out.GeoMappings + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Subnet != nil { + in, out := &in.Subnet, &out.Subnet + *out = make([]TrafficManagerAzureEndpointSubnetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Weight != nil { + in, out := &in.Weight, &out.Weight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerAzureEndpointInitParameters. +func (in *TrafficManagerAzureEndpointInitParameters) DeepCopy() *TrafficManagerAzureEndpointInitParameters { + if in == nil { + return nil + } + out := new(TrafficManagerAzureEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficManagerAzureEndpointList) DeepCopyInto(out *TrafficManagerAzureEndpointList) { *out = *in @@ -34692,6 +45677,7 @@ func (in *TrafficManagerAzureEndpointSpec) DeepCopyInto(out *TrafficManagerAzure *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerAzureEndpointSpec. @@ -34721,6 +45707,36 @@ func (in *TrafficManagerAzureEndpointStatus) DeepCopy() *TrafficManagerAzureEndp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficManagerAzureEndpointSubnetInitParameters) DeepCopyInto(out *TrafficManagerAzureEndpointSubnetInitParameters) { + *out = *in + if in.First != nil { + in, out := &in.First, &out.First + *out = new(string) + **out = **in + } + if in.Last != nil { + in, out := &in.Last, &out.Last + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerAzureEndpointSubnetInitParameters. +func (in *TrafficManagerAzureEndpointSubnetInitParameters) DeepCopy() *TrafficManagerAzureEndpointSubnetInitParameters { + if in == nil { + return nil + } + out := new(TrafficManagerAzureEndpointSubnetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficManagerAzureEndpointSubnetObservation) DeepCopyInto(out *TrafficManagerAzureEndpointSubnetObservation) { *out = *in @@ -34808,6 +45824,31 @@ func (in *TrafficManagerExternalEndpoint) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficManagerExternalEndpointCustomHeaderInitParameters) DeepCopyInto(out *TrafficManagerExternalEndpointCustomHeaderInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerExternalEndpointCustomHeaderInitParameters. +func (in *TrafficManagerExternalEndpointCustomHeaderInitParameters) DeepCopy() *TrafficManagerExternalEndpointCustomHeaderInitParameters { + if in == nil { + return nil + } + out := new(TrafficManagerExternalEndpointCustomHeaderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficManagerExternalEndpointCustomHeaderObservation) DeepCopyInto(out *TrafficManagerExternalEndpointCustomHeaderObservation) { *out = *in @@ -34858,6 +45899,71 @@ func (in *TrafficManagerExternalEndpointCustomHeaderParameters) DeepCopy() *Traf return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficManagerExternalEndpointInitParameters) DeepCopyInto(out *TrafficManagerExternalEndpointInitParameters) { + *out = *in + if in.CustomHeader != nil { + in, out := &in.CustomHeader, &out.CustomHeader + *out = make([]TrafficManagerExternalEndpointCustomHeaderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.EndpointLocation != nil { + in, out := &in.EndpointLocation, &out.EndpointLocation + *out = new(string) + **out = **in + } + if in.GeoMappings != nil { + in, out := &in.GeoMappings, &out.GeoMappings + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Subnet != nil { + in, out := &in.Subnet, &out.Subnet + *out = make([]TrafficManagerExternalEndpointSubnetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Target != nil { + in, out := &in.Target, &out.Target + *out = new(string) + **out = **in + } + if in.Weight != nil { + in, out := &in.Weight, &out.Weight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerExternalEndpointInitParameters. +func (in *TrafficManagerExternalEndpointInitParameters) DeepCopy() *TrafficManagerExternalEndpointInitParameters { + if in == nil { + return nil + } + out := new(TrafficManagerExternalEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficManagerExternalEndpointList) DeepCopyInto(out *TrafficManagerExternalEndpointList) { *out = *in @@ -35050,6 +46156,7 @@ func (in *TrafficManagerExternalEndpointSpec) DeepCopyInto(out *TrafficManagerEx *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerExternalEndpointSpec. @@ -35079,6 +46186,36 @@ func (in *TrafficManagerExternalEndpointStatus) DeepCopy() *TrafficManagerExtern return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficManagerExternalEndpointSubnetInitParameters) DeepCopyInto(out *TrafficManagerExternalEndpointSubnetInitParameters) { + *out = *in + if in.First != nil { + in, out := &in.First, &out.First + *out = new(string) + **out = **in + } + if in.Last != nil { + in, out := &in.Last, &out.Last + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerExternalEndpointSubnetInitParameters. +func (in *TrafficManagerExternalEndpointSubnetInitParameters) DeepCopy() *TrafficManagerExternalEndpointSubnetInitParameters { + if in == nil { + return nil + } + out := new(TrafficManagerExternalEndpointSubnetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficManagerExternalEndpointSubnetObservation) DeepCopyInto(out *TrafficManagerExternalEndpointSubnetObservation) { *out = *in @@ -35166,6 +46303,31 @@ func (in *TrafficManagerNestedEndpoint) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficManagerNestedEndpointCustomHeaderInitParameters) DeepCopyInto(out *TrafficManagerNestedEndpointCustomHeaderInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerNestedEndpointCustomHeaderInitParameters. +func (in *TrafficManagerNestedEndpointCustomHeaderInitParameters) DeepCopy() *TrafficManagerNestedEndpointCustomHeaderInitParameters { + if in == nil { + return nil + } + out := new(TrafficManagerNestedEndpointCustomHeaderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficManagerNestedEndpointCustomHeaderObservation) DeepCopyInto(out *TrafficManagerNestedEndpointCustomHeaderObservation) { *out = *in @@ -35216,6 +46378,81 @@ func (in *TrafficManagerNestedEndpointCustomHeaderParameters) DeepCopy() *Traffi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficManagerNestedEndpointInitParameters) DeepCopyInto(out *TrafficManagerNestedEndpointInitParameters) { + *out = *in + if in.CustomHeader != nil { + in, out := &in.CustomHeader, &out.CustomHeader + *out = make([]TrafficManagerNestedEndpointCustomHeaderInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.EndpointLocation != nil { + in, out := &in.EndpointLocation, &out.EndpointLocation + *out = new(string) + **out = **in + } + if in.GeoMappings != nil { + in, out := &in.GeoMappings, &out.GeoMappings + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MinimumChildEndpoints != nil { + in, out := &in.MinimumChildEndpoints, &out.MinimumChildEndpoints + *out = new(float64) + **out = **in + } + if in.MinimumRequiredChildEndpointsIPv4 != nil { + in, out := &in.MinimumRequiredChildEndpointsIPv4, &out.MinimumRequiredChildEndpointsIPv4 + *out = new(float64) + **out = **in + } + if in.MinimumRequiredChildEndpointsIPv6 != nil { + in, out := &in.MinimumRequiredChildEndpointsIPv6, &out.MinimumRequiredChildEndpointsIPv6 + *out = new(float64) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.Subnet != nil { + in, out := &in.Subnet, &out.Subnet + *out = make([]TrafficManagerNestedEndpointSubnetInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Weight != nil { + in, out := &in.Weight, &out.Weight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerNestedEndpointInitParameters. +func (in *TrafficManagerNestedEndpointInitParameters) DeepCopy() *TrafficManagerNestedEndpointInitParameters { + if in == nil { + return nil + } + out := new(TrafficManagerNestedEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficManagerNestedEndpointList) DeepCopyInto(out *TrafficManagerNestedEndpointList) { *out = *in @@ -35448,6 +46685,7 @@ func (in *TrafficManagerNestedEndpointSpec) DeepCopyInto(out *TrafficManagerNest *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerNestedEndpointSpec. @@ -35477,6 +46715,36 @@ func (in *TrafficManagerNestedEndpointStatus) DeepCopy() *TrafficManagerNestedEn return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficManagerNestedEndpointSubnetInitParameters) DeepCopyInto(out *TrafficManagerNestedEndpointSubnetInitParameters) { + *out = *in + if in.First != nil { + in, out := &in.First, &out.First + *out = new(string) + **out = **in + } + if in.Last != nil { + in, out := &in.Last, &out.Last + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerNestedEndpointSubnetInitParameters. +func (in *TrafficManagerNestedEndpointSubnetInitParameters) DeepCopy() *TrafficManagerNestedEndpointSubnetInitParameters { + if in == nil { + return nil + } + out := new(TrafficManagerNestedEndpointSubnetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficManagerNestedEndpointSubnetObservation) DeepCopyInto(out *TrafficManagerNestedEndpointSubnetObservation) { *out = *in @@ -35564,6 +46832,70 @@ func (in *TrafficManagerProfile) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficManagerProfileInitParameters) DeepCopyInto(out *TrafficManagerProfileInitParameters) { + *out = *in + if in.DNSConfig != nil { + in, out := &in.DNSConfig, &out.DNSConfig + *out = make([]DNSConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MaxReturn != nil { + in, out := &in.MaxReturn, &out.MaxReturn + *out = new(float64) + **out = **in + } + if in.MonitorConfig != nil { + in, out := &in.MonitorConfig, &out.MonitorConfig + *out = make([]MonitorConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ProfileStatus != nil { + in, out := &in.ProfileStatus, &out.ProfileStatus + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TrafficRoutingMethod != nil { + in, out := &in.TrafficRoutingMethod, &out.TrafficRoutingMethod + *out = new(string) + **out = **in + } + if in.TrafficViewEnabled != nil { + in, out := &in.TrafficViewEnabled, &out.TrafficViewEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerProfileInitParameters. +func (in *TrafficManagerProfileInitParameters) DeepCopy() *TrafficManagerProfileInitParameters { + if in == nil { + return nil + } + out := new(TrafficManagerProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficManagerProfileList) DeepCopyInto(out *TrafficManagerProfileList) { *out = *in @@ -35759,6 +47091,7 @@ func (in *TrafficManagerProfileSpec) DeepCopyInto(out *TrafficManagerProfileSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerProfileSpec. @@ -35788,6 +47121,43 @@ func (in *TrafficManagerProfileStatus) DeepCopy() *TrafficManagerProfileStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrafficSelectorPolicyInitParameters) DeepCopyInto(out *TrafficSelectorPolicyInitParameters) { + *out = *in + if in.LocalAddressCidrs != nil { + in, out := &in.LocalAddressCidrs, &out.LocalAddressCidrs + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RemoteAddressCidrs != nil { + in, out := &in.RemoteAddressCidrs, &out.RemoteAddressCidrs + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficSelectorPolicyInitParameters. +func (in *TrafficSelectorPolicyInitParameters) DeepCopy() *TrafficSelectorPolicyInitParameters { + if in == nil { + return nil + } + out := new(TrafficSelectorPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrafficSelectorPolicyObservation) DeepCopyInto(out *TrafficSelectorPolicyObservation) { *out = *in @@ -35862,6 +47232,26 @@ func (in *TrafficSelectorPolicyParameters) DeepCopy() *TrafficSelectorPolicyPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrustedClientCertificateInitParameters) DeepCopyInto(out *TrustedClientCertificateInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrustedClientCertificateInitParameters. +func (in *TrustedClientCertificateInitParameters) DeepCopy() *TrustedClientCertificateInitParameters { + if in == nil { + return nil + } + out := new(TrustedClientCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrustedClientCertificateObservation) DeepCopyInto(out *TrustedClientCertificateObservation) { *out = *in @@ -35908,6 +47298,31 @@ func (in *TrustedClientCertificateParameters) DeepCopy() *TrustedClientCertifica return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TrustedRootCertificateInitParameters) DeepCopyInto(out *TrustedRootCertificateInitParameters) { + *out = *in + if in.KeyVaultSecretID != nil { + in, out := &in.KeyVaultSecretID, &out.KeyVaultSecretID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrustedRootCertificateInitParameters. +func (in *TrustedRootCertificateInitParameters) DeepCopy() *TrustedRootCertificateInitParameters { + if in == nil { + return nil + } + out := new(TrustedRootCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TrustedRootCertificateObservation) DeepCopyInto(out *TrustedRootCertificateObservation) { *out = *in @@ -35968,6 +47383,41 @@ func (in *TrustedRootCertificateParameters) DeepCopy() *TrustedRootCertificatePa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TunnelInterfaceInitParameters) DeepCopyInto(out *TunnelInterfaceInitParameters) { + *out = *in + if in.Identifier != nil { + in, out := &in.Identifier, &out.Identifier + *out = new(float64) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TunnelInterfaceInitParameters. +func (in *TunnelInterfaceInitParameters) DeepCopy() *TunnelInterfaceInitParameters { + if in == nil { + return nil + } + out := new(TunnelInterfaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TunnelInterfaceObservation) DeepCopyInto(out *TunnelInterfaceObservation) { *out = *in @@ -36038,6 +47488,41 @@ func (in *TunnelInterfaceParameters) DeepCopy() *TunnelInterfaceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *URLInitParameters) DeepCopyInto(out *URLInitParameters) { + *out = *in + if in.Components != nil { + in, out := &in.Components, &out.Components + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.QueryString != nil { + in, out := &in.QueryString, &out.QueryString + *out = new(string) + **out = **in + } + if in.Reroute != nil { + in, out := &in.Reroute, &out.Reroute + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLInitParameters. +func (in *URLInitParameters) DeepCopy() *URLInitParameters { + if in == nil { + return nil + } + out := new(URLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *URLObservation) DeepCopyInto(out *URLObservation) { *out = *in @@ -36108,6 +47593,53 @@ func (in *URLParameters) DeepCopy() *URLParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *URLPathMapInitParameters) DeepCopyInto(out *URLPathMapInitParameters) { + *out = *in + if in.DefaultBackendAddressPoolName != nil { + in, out := &in.DefaultBackendAddressPoolName, &out.DefaultBackendAddressPoolName + *out = new(string) + **out = **in + } + if in.DefaultBackendHTTPSettingsName != nil { + in, out := &in.DefaultBackendHTTPSettingsName, &out.DefaultBackendHTTPSettingsName + *out = new(string) + **out = **in + } + if in.DefaultRedirectConfigurationName != nil { + in, out := &in.DefaultRedirectConfigurationName, &out.DefaultRedirectConfigurationName + *out = new(string) + **out = **in + } + if in.DefaultRewriteRuleSetName != nil { + in, out := &in.DefaultRewriteRuleSetName, &out.DefaultRewriteRuleSetName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PathRule != nil { + in, out := &in.PathRule, &out.PathRule + *out = make([]PathRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLPathMapInitParameters. +func (in *URLPathMapInitParameters) DeepCopy() *URLPathMapInitParameters { + if in == nil { + return nil + } + out := new(URLPathMapInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *URLPathMapObservation) DeepCopyInto(out *URLPathMapObservation) { *out = *in @@ -36227,6 +47759,32 @@ func (in *URLPathMapParameters) DeepCopy() *URLPathMapParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNClientAddressPoolInitParameters) DeepCopyInto(out *VPNClientAddressPoolInitParameters) { + *out = *in + if in.AddressPrefixes != nil { + in, out := &in.AddressPrefixes, &out.AddressPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNClientAddressPoolInitParameters. +func (in *VPNClientAddressPoolInitParameters) DeepCopy() *VPNClientAddressPoolInitParameters { + if in == nil { + return nil + } + out := new(VPNClientAddressPoolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNClientAddressPoolObservation) DeepCopyInto(out *VPNClientAddressPoolObservation) { *out = *in @@ -36279,6 +47837,93 @@ func (in *VPNClientAddressPoolParameters) DeepCopy() *VPNClientAddressPoolParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNClientConfigurationInitParameters) DeepCopyInto(out *VPNClientConfigurationInitParameters) { + *out = *in + if in.AADAudience != nil { + in, out := &in.AADAudience, &out.AADAudience + *out = new(string) + **out = **in + } + if in.AADIssuer != nil { + in, out := &in.AADIssuer, &out.AADIssuer + *out = new(string) + **out = **in + } + if in.AADTenant != nil { + in, out := &in.AADTenant, &out.AADTenant + *out = new(string) + **out = **in + } + if in.AddressSpace != nil { + in, out := &in.AddressSpace, &out.AddressSpace + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RadiusServerAddress != nil { + in, out := &in.RadiusServerAddress, &out.RadiusServerAddress + *out = new(string) + **out = **in + } + if in.RadiusServerSecret != nil { + in, out := &in.RadiusServerSecret, &out.RadiusServerSecret + *out = new(string) + **out = **in + } + if in.RevokedCertificate != nil { + in, out := &in.RevokedCertificate, &out.RevokedCertificate + *out = make([]RevokedCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RootCertificate != nil { + in, out := &in.RootCertificate, &out.RootCertificate + *out = make([]RootCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VPNAuthTypes != nil { + in, out := &in.VPNAuthTypes, &out.VPNAuthTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.VPNClientProtocols != nil { + in, out := &in.VPNClientProtocols, &out.VPNClientProtocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNClientConfigurationInitParameters. +func (in *VPNClientConfigurationInitParameters) DeepCopy() *VPNClientConfigurationInitParameters { + if in == nil { + return nil + } + out := new(VPNClientConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNClientConfigurationObservation) DeepCopyInto(out *VPNClientConfigurationObservation) { *out = *in @@ -36480,6 +48125,45 @@ func (in *VPNGateway) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNGatewayBGPSettingsInitParameters) DeepCopyInto(out *VPNGatewayBGPSettingsInitParameters) { + *out = *in + if in.Asn != nil { + in, out := &in.Asn, &out.Asn + *out = new(float64) + **out = **in + } + if in.Instance0BGPPeeringAddress != nil { + in, out := &in.Instance0BGPPeeringAddress, &out.Instance0BGPPeeringAddress + *out = make([]Instance0BGPPeeringAddressInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Instance1BGPPeeringAddress != nil { + in, out := &in.Instance1BGPPeeringAddress, &out.Instance1BGPPeeringAddress + *out = make([]Instance1BGPPeeringAddressInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PeerWeight != nil { + in, out := &in.PeerWeight, &out.PeerWeight + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNGatewayBGPSettingsInitParameters. +func (in *VPNGatewayBGPSettingsInitParameters) DeepCopy() *VPNGatewayBGPSettingsInitParameters { + if in == nil { + return nil + } + out := new(VPNGatewayBGPSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNGatewayBGPSettingsObservation) DeepCopyInto(out *VPNGatewayBGPSettingsObservation) { *out = *in @@ -36590,6 +48274,47 @@ func (in *VPNGatewayConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNGatewayConnectionInitParameters) DeepCopyInto(out *VPNGatewayConnectionInitParameters) { + *out = *in + if in.InternetSecurityEnabled != nil { + in, out := &in.InternetSecurityEnabled, &out.InternetSecurityEnabled + *out = new(bool) + **out = **in + } + if in.Routing != nil { + in, out := &in.Routing, &out.Routing + *out = make([]VPNGatewayConnectionRoutingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TrafficSelectorPolicy != nil { + in, out := &in.TrafficSelectorPolicy, &out.TrafficSelectorPolicy + *out = make([]VPNGatewayConnectionTrafficSelectorPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VPNLink != nil { + in, out := &in.VPNLink, &out.VPNLink + *out = make([]VPNLinkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNGatewayConnectionInitParameters. +func (in *VPNGatewayConnectionInitParameters) DeepCopy() *VPNGatewayConnectionInitParameters { + if in == nil { + return nil + } + out := new(VPNGatewayConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNGatewayConnectionList) DeepCopyInto(out *VPNGatewayConnectionList) { *out = *in @@ -36749,6 +48474,43 @@ func (in *VPNGatewayConnectionParameters) DeepCopy() *VPNGatewayConnectionParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNGatewayConnectionRoutingInitParameters) DeepCopyInto(out *VPNGatewayConnectionRoutingInitParameters) { + *out = *in + if in.AssociatedRouteTable != nil { + in, out := &in.AssociatedRouteTable, &out.AssociatedRouteTable + *out = new(string) + **out = **in + } + if in.InboundRouteMapID != nil { + in, out := &in.InboundRouteMapID, &out.InboundRouteMapID + *out = new(string) + **out = **in + } + if in.OutboundRouteMapID != nil { + in, out := &in.OutboundRouteMapID, &out.OutboundRouteMapID + *out = new(string) + **out = **in + } + if in.PropagatedRouteTable != nil { + in, out := &in.PropagatedRouteTable, &out.PropagatedRouteTable + *out = make([]VPNGatewayConnectionRoutingPropagatedRouteTableInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNGatewayConnectionRoutingInitParameters. +func (in *VPNGatewayConnectionRoutingInitParameters) DeepCopy() *VPNGatewayConnectionRoutingInitParameters { + if in == nil { + return nil + } + out := new(VPNGatewayConnectionRoutingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNGatewayConnectionRoutingObservation) DeepCopyInto(out *VPNGatewayConnectionRoutingObservation) { *out = *in @@ -36823,6 +48585,43 @@ func (in *VPNGatewayConnectionRoutingParameters) DeepCopy() *VPNGatewayConnectio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNGatewayConnectionRoutingPropagatedRouteTableInitParameters) DeepCopyInto(out *VPNGatewayConnectionRoutingPropagatedRouteTableInitParameters) { + *out = *in + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RouteTableIds != nil { + in, out := &in.RouteTableIds, &out.RouteTableIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNGatewayConnectionRoutingPropagatedRouteTableInitParameters. +func (in *VPNGatewayConnectionRoutingPropagatedRouteTableInitParameters) DeepCopy() *VPNGatewayConnectionRoutingPropagatedRouteTableInitParameters { + if in == nil { + return nil + } + out := new(VPNGatewayConnectionRoutingPropagatedRouteTableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNGatewayConnectionRoutingPropagatedRouteTableObservation) DeepCopyInto(out *VPNGatewayConnectionRoutingPropagatedRouteTableObservation) { *out = *in @@ -36902,6 +48701,7 @@ func (in *VPNGatewayConnectionSpec) DeepCopyInto(out *VPNGatewayConnectionSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNGatewayConnectionSpec. @@ -36931,6 +48731,43 @@ func (in *VPNGatewayConnectionStatus) DeepCopy() *VPNGatewayConnectionStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNGatewayConnectionTrafficSelectorPolicyInitParameters) DeepCopyInto(out *VPNGatewayConnectionTrafficSelectorPolicyInitParameters) { + *out = *in + if in.LocalAddressRanges != nil { + in, out := &in.LocalAddressRanges, &out.LocalAddressRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RemoteAddressRanges != nil { + in, out := &in.RemoteAddressRanges, &out.RemoteAddressRanges + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNGatewayConnectionTrafficSelectorPolicyInitParameters. +func (in *VPNGatewayConnectionTrafficSelectorPolicyInitParameters) DeepCopy() *VPNGatewayConnectionTrafficSelectorPolicyInitParameters { + if in == nil { + return nil + } + out := new(VPNGatewayConnectionTrafficSelectorPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNGatewayConnectionTrafficSelectorPolicyObservation) DeepCopyInto(out *VPNGatewayConnectionTrafficSelectorPolicyObservation) { *out = *in @@ -37005,6 +48842,63 @@ func (in *VPNGatewayConnectionTrafficSelectorPolicyParameters) DeepCopy() *VPNGa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNGatewayInitParameters) DeepCopyInto(out *VPNGatewayInitParameters) { + *out = *in + if in.BGPRouteTranslationForNATEnabled != nil { + in, out := &in.BGPRouteTranslationForNATEnabled, &out.BGPRouteTranslationForNATEnabled + *out = new(bool) + **out = **in + } + if in.BGPSettings != nil { + in, out := &in.BGPSettings, &out.BGPSettings + *out = make([]VPNGatewayBGPSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.RoutingPreference != nil { + in, out := &in.RoutingPreference, &out.RoutingPreference + *out = new(string) + **out = **in + } + if in.ScaleUnit != nil { + in, out := &in.ScaleUnit, &out.ScaleUnit + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNGatewayInitParameters. +func (in *VPNGatewayInitParameters) DeepCopy() *VPNGatewayInitParameters { + if in == nil { + return nil + } + out := new(VPNGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNGatewayList) DeepCopyInto(out *VPNGatewayList) { *out = *in @@ -37201,6 +49095,7 @@ func (in *VPNGatewaySpec) DeepCopyInto(out *VPNGatewaySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNGatewaySpec. @@ -37230,6 +49125,167 @@ func (in *VPNGatewayStatus) DeepCopy() *VPNGatewayStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNLinkInitParameters) DeepCopyInto(out *VPNLinkInitParameters) { + *out = *in + if in.BGPEnabled != nil { + in, out := &in.BGPEnabled, &out.BGPEnabled + *out = new(bool) + **out = **in + } + if in.BandwidthMbps != nil { + in, out := &in.BandwidthMbps, &out.BandwidthMbps + *out = new(float64) + **out = **in + } + if in.ConnectionMode != nil { + in, out := &in.ConnectionMode, &out.ConnectionMode + *out = new(string) + **out = **in + } + if in.CustomBGPAddress != nil { + in, out := &in.CustomBGPAddress, &out.CustomBGPAddress + *out = make([]CustomBGPAddressInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EgressNATRuleIds != nil { + in, out := &in.EgressNATRuleIds, &out.EgressNATRuleIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IngressNATRuleIds != nil { + in, out := &in.IngressNATRuleIds, &out.IngressNATRuleIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IpsecPolicy != nil { + in, out := &in.IpsecPolicy, &out.IpsecPolicy + *out = make([]VPNLinkIpsecPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAzureIPAddressEnabled != nil { + in, out := &in.LocalAzureIPAddressEnabled, &out.LocalAzureIPAddressEnabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PolicyBasedTrafficSelectorEnabled != nil { + in, out := &in.PolicyBasedTrafficSelectorEnabled, &out.PolicyBasedTrafficSelectorEnabled + *out = new(bool) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } + if in.RatelimitEnabled != nil { + in, out := &in.RatelimitEnabled, &out.RatelimitEnabled + *out = new(bool) + **out = **in + } + if in.RouteWeight != nil { + in, out := &in.RouteWeight, &out.RouteWeight + *out = new(float64) + **out = **in + } + if in.SharedKey != nil { + in, out := &in.SharedKey, &out.SharedKey + *out = new(string) + **out = **in + } + if in.VPNSiteLinkID != nil { + in, out := &in.VPNSiteLinkID, &out.VPNSiteLinkID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNLinkInitParameters. +func (in *VPNLinkInitParameters) DeepCopy() *VPNLinkInitParameters { + if in == nil { + return nil + } + out := new(VPNLinkInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNLinkIpsecPolicyInitParameters) DeepCopyInto(out *VPNLinkIpsecPolicyInitParameters) { + *out = *in + if in.DhGroup != nil { + in, out := &in.DhGroup, &out.DhGroup + *out = new(string) + **out = **in + } + if in.EncryptionAlgorithm != nil { + in, out := &in.EncryptionAlgorithm, &out.EncryptionAlgorithm + *out = new(string) + **out = **in + } + if in.IkeEncryptionAlgorithm != nil { + in, out := &in.IkeEncryptionAlgorithm, &out.IkeEncryptionAlgorithm + *out = new(string) + **out = **in + } + if in.IkeIntegrityAlgorithm != nil { + in, out := &in.IkeIntegrityAlgorithm, &out.IkeIntegrityAlgorithm + *out = new(string) + **out = **in + } + if in.IntegrityAlgorithm != nil { + in, out := &in.IntegrityAlgorithm, &out.IntegrityAlgorithm + *out = new(string) + **out = **in + } + if in.PfsGroup != nil { + in, out := &in.PfsGroup, &out.PfsGroup + *out = new(string) + **out = **in + } + if in.SaDataSizeKb != nil { + in, out := &in.SaDataSizeKb, &out.SaDataSizeKb + *out = new(float64) + **out = **in + } + if in.SaLifetimeSec != nil { + in, out := &in.SaLifetimeSec, &out.SaLifetimeSec + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNLinkIpsecPolicyInitParameters. +func (in *VPNLinkIpsecPolicyInitParameters) DeepCopy() *VPNLinkIpsecPolicyInitParameters { + if in == nil { + return nil + } + out := new(VPNLinkIpsecPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNLinkIpsecPolicyObservation) DeepCopyInto(out *VPNLinkIpsecPolicyObservation) { *out = *in @@ -37579,6 +49635,153 @@ func (in *VPNServerConfiguration) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNServerConfigurationInitParameters) DeepCopyInto(out *VPNServerConfigurationInitParameters) { + *out = *in + if in.AzureActiveDirectoryAuthentication != nil { + in, out := &in.AzureActiveDirectoryAuthentication, &out.AzureActiveDirectoryAuthentication + *out = make([]AzureActiveDirectoryAuthenticationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientRevokedCertificate != nil { + in, out := &in.ClientRevokedCertificate, &out.ClientRevokedCertificate + *out = make([]ClientRevokedCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientRootCertificate != nil { + in, out := &in.ClientRootCertificate, &out.ClientRootCertificate + *out = make([]ClientRootCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IpsecPolicy != nil { + in, out := &in.IpsecPolicy, &out.IpsecPolicy + *out = make([]VPNServerConfigurationIpsecPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Radius != nil { + in, out := &in.Radius, &out.Radius + *out = make([]RadiusInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.VPNAuthenticationTypes != nil { + in, out := &in.VPNAuthenticationTypes, &out.VPNAuthenticationTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.VPNProtocols != nil { + in, out := &in.VPNProtocols, &out.VPNProtocols + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNServerConfigurationInitParameters. +func (in *VPNServerConfigurationInitParameters) DeepCopy() *VPNServerConfigurationInitParameters { + if in == nil { + return nil + } + out := new(VPNServerConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNServerConfigurationIpsecPolicyInitParameters) DeepCopyInto(out *VPNServerConfigurationIpsecPolicyInitParameters) { + *out = *in + if in.DhGroup != nil { + in, out := &in.DhGroup, &out.DhGroup + *out = new(string) + **out = **in + } + if in.IkeEncryption != nil { + in, out := &in.IkeEncryption, &out.IkeEncryption + *out = new(string) + **out = **in + } + if in.IkeIntegrity != nil { + in, out := &in.IkeIntegrity, &out.IkeIntegrity + *out = new(string) + **out = **in + } + if in.IpsecEncryption != nil { + in, out := &in.IpsecEncryption, &out.IpsecEncryption + *out = new(string) + **out = **in + } + if in.IpsecIntegrity != nil { + in, out := &in.IpsecIntegrity, &out.IpsecIntegrity + *out = new(string) + **out = **in + } + if in.PfsGroup != nil { + in, out := &in.PfsGroup, &out.PfsGroup + *out = new(string) + **out = **in + } + if in.SaDataSizeKilobytes != nil { + in, out := &in.SaDataSizeKilobytes, &out.SaDataSizeKilobytes + *out = new(float64) + **out = **in + } + if in.SaLifetimeSeconds != nil { + in, out := &in.SaLifetimeSeconds, &out.SaLifetimeSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNServerConfigurationIpsecPolicyInitParameters. +func (in *VPNServerConfigurationIpsecPolicyInitParameters) DeepCopy() *VPNServerConfigurationIpsecPolicyInitParameters { + if in == nil { + return nil + } + out := new(VPNServerConfigurationIpsecPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNServerConfigurationIpsecPolicyObservation) DeepCopyInto(out *VPNServerConfigurationIpsecPolicyObservation) { *out = *in @@ -37957,6 +50160,38 @@ func (in *VPNServerConfigurationPolicyGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNServerConfigurationPolicyGroupInitParameters) DeepCopyInto(out *VPNServerConfigurationPolicyGroupInitParameters) { + *out = *in + if in.IsDefault != nil { + in, out := &in.IsDefault, &out.IsDefault + *out = new(bool) + **out = **in + } + if in.Policy != nil { + in, out := &in.Policy, &out.Policy + *out = make([]PolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNServerConfigurationPolicyGroupInitParameters. +func (in *VPNServerConfigurationPolicyGroupInitParameters) DeepCopy() *VPNServerConfigurationPolicyGroupInitParameters { + if in == nil { + return nil + } + out := new(VPNServerConfigurationPolicyGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNServerConfigurationPolicyGroupList) DeepCopyInto(out *VPNServerConfigurationPolicyGroupList) { *out = *in @@ -38083,6 +50318,7 @@ func (in *VPNServerConfigurationPolicyGroupSpec) DeepCopyInto(out *VPNServerConf *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNServerConfigurationPolicyGroupSpec. @@ -38117,6 +50353,7 @@ func (in *VPNServerConfigurationSpec) DeepCopyInto(out *VPNServerConfigurationSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNServerConfigurationSpec. @@ -38173,6 +50410,76 @@ func (in *VPNSite) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VPNSiteInitParameters) DeepCopyInto(out *VPNSiteInitParameters) { + *out = *in + if in.AddressCidrs != nil { + in, out := &in.AddressCidrs, &out.AddressCidrs + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DeviceModel != nil { + in, out := &in.DeviceModel, &out.DeviceModel + *out = new(string) + **out = **in + } + if in.DeviceVendor != nil { + in, out := &in.DeviceVendor, &out.DeviceVendor + *out = new(string) + **out = **in + } + if in.Link != nil { + in, out := &in.Link, &out.Link + *out = make([]LinkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.O365Policy != nil { + in, out := &in.O365Policy, &out.O365Policy + *out = make([]O365PolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNSiteInitParameters. +func (in *VPNSiteInitParameters) DeepCopy() *VPNSiteInitParameters { + if in == nil { + return nil + } + out := new(VPNSiteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VPNSiteList) DeepCopyInto(out *VPNSiteList) { *out = *in @@ -38395,6 +50702,7 @@ func (in *VPNSiteSpec) DeepCopyInto(out *VPNSiteSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VPNSiteSpec. @@ -38478,6 +50786,33 @@ func (in *VirtualHubConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualHubConnectionInitParameters) DeepCopyInto(out *VirtualHubConnectionInitParameters) { + *out = *in + if in.InternetSecurityEnabled != nil { + in, out := &in.InternetSecurityEnabled, &out.InternetSecurityEnabled + *out = new(bool) + **out = **in + } + if in.Routing != nil { + in, out := &in.Routing, &out.Routing + *out = make([]VirtualHubConnectionRoutingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubConnectionInitParameters. +func (in *VirtualHubConnectionInitParameters) DeepCopy() *VirtualHubConnectionInitParameters { + if in == nil { + return nil + } + out := new(VirtualHubConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualHubConnectionList) DeepCopyInto(out *VirtualHubConnectionList) { *out = *in @@ -38609,6 +50944,35 @@ func (in *VirtualHubConnectionParameters) DeepCopy() *VirtualHubConnectionParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualHubConnectionRoutingInitParameters) DeepCopyInto(out *VirtualHubConnectionRoutingInitParameters) { + *out = *in + if in.PropagatedRouteTable != nil { + in, out := &in.PropagatedRouteTable, &out.PropagatedRouteTable + *out = make([]RoutingPropagatedRouteTableInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StaticVnetRoute != nil { + in, out := &in.StaticVnetRoute, &out.StaticVnetRoute + *out = make([]StaticVnetRouteInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubConnectionRoutingInitParameters. +func (in *VirtualHubConnectionRoutingInitParameters) DeepCopy() *VirtualHubConnectionRoutingInitParameters { + if in == nil { + return nil + } + out := new(VirtualHubConnectionRoutingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualHubConnectionRoutingObservation) DeepCopyInto(out *VirtualHubConnectionRoutingObservation) { *out = *in @@ -38692,6 +51056,7 @@ func (in *VirtualHubConnectionSpec) DeepCopyInto(out *VirtualHubConnectionSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubConnectionSpec. @@ -38748,6 +51113,31 @@ func (in *VirtualHubIP) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualHubIPInitParameters) DeepCopyInto(out *VirtualHubIPInitParameters) { + *out = *in + if in.PrivateIPAddress != nil { + in, out := &in.PrivateIPAddress, &out.PrivateIPAddress + *out = new(string) + **out = **in + } + if in.PrivateIPAllocationMethod != nil { + in, out := &in.PrivateIPAllocationMethod, &out.PrivateIPAllocationMethod + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubIPInitParameters. +func (in *VirtualHubIPInitParameters) DeepCopy() *VirtualHubIPInitParameters { + if in == nil { + return nil + } + out := new(VirtualHubIPInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualHubIPList) DeepCopyInto(out *VirtualHubIPList) { *out = *in @@ -38900,6 +51290,7 @@ func (in *VirtualHubIPSpec) DeepCopyInto(out *VirtualHubIPSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubIPSpec. @@ -38929,6 +51320,88 @@ func (in *VirtualHubIPStatus) DeepCopy() *VirtualHubIPStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualHubInitParameters) DeepCopyInto(out *VirtualHubInitParameters) { + *out = *in + if in.PublicIPCount != nil { + in, out := &in.PublicIPCount, &out.PublicIPCount + *out = new(float64) + **out = **in + } + if in.VirtualHubID != nil { + in, out := &in.VirtualHubID, &out.VirtualHubID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubInitParameters. +func (in *VirtualHubInitParameters) DeepCopy() *VirtualHubInitParameters { + if in == nil { + return nil + } + out := new(VirtualHubInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualHubInitParameters_2) DeepCopyInto(out *VirtualHubInitParameters_2) { + *out = *in + if in.AddressPrefix != nil { + in, out := &in.AddressPrefix, &out.AddressPrefix + *out = new(string) + **out = **in + } + if in.HubRoutingPreference != nil { + in, out := &in.HubRoutingPreference, &out.HubRoutingPreference + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Route != nil { + in, out := &in.Route, &out.Route + *out = make([]VirtualHubRouteInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubInitParameters_2. +func (in *VirtualHubInitParameters_2) DeepCopy() *VirtualHubInitParameters_2 { + if in == nil { + return nil + } + out := new(VirtualHubInitParameters_2) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualHubList) DeepCopyInto(out *VirtualHubList) { *out = *in @@ -39207,6 +51680,37 @@ func (in *VirtualHubParameters_2) DeepCopy() *VirtualHubParameters_2 { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualHubRouteInitParameters) DeepCopyInto(out *VirtualHubRouteInitParameters) { + *out = *in + if in.AddressPrefixes != nil { + in, out := &in.AddressPrefixes, &out.AddressPrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NextHopIPAddress != nil { + in, out := &in.NextHopIPAddress, &out.NextHopIPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubRouteInitParameters. +func (in *VirtualHubRouteInitParameters) DeepCopy() *VirtualHubRouteInitParameters { + if in == nil { + return nil + } + out := new(VirtualHubRouteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualHubRouteObservation) DeepCopyInto(out *VirtualHubRouteObservation) { *out = *in @@ -39296,6 +51800,39 @@ func (in *VirtualHubRouteTable) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualHubRouteTableInitParameters) DeepCopyInto(out *VirtualHubRouteTableInitParameters) { + *out = *in + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Route != nil { + in, out := &in.Route, &out.Route + *out = make([]VirtualHubRouteTableRouteInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubRouteTableInitParameters. +func (in *VirtualHubRouteTableInitParameters) DeepCopy() *VirtualHubRouteTableInitParameters { + if in == nil { + return nil + } + out := new(VirtualHubRouteTableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualHubRouteTableList) DeepCopyInto(out *VirtualHubRouteTableList) { *out = *in @@ -39446,6 +51983,83 @@ func (in *VirtualHubRouteTableRoute) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualHubRouteTableRouteInitParameters) DeepCopyInto(out *VirtualHubRouteTableRouteInitParameters) { + *out = *in + if in.Destinations != nil { + in, out := &in.Destinations, &out.Destinations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationsType != nil { + in, out := &in.DestinationsType, &out.DestinationsType + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NextHopType != nil { + in, out := &in.NextHopType, &out.NextHopType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubRouteTableRouteInitParameters. +func (in *VirtualHubRouteTableRouteInitParameters) DeepCopy() *VirtualHubRouteTableRouteInitParameters { + if in == nil { + return nil + } + out := new(VirtualHubRouteTableRouteInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualHubRouteTableRouteInitParameters_2) DeepCopyInto(out *VirtualHubRouteTableRouteInitParameters_2) { + *out = *in + if in.Destinations != nil { + in, out := &in.Destinations, &out.Destinations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DestinationsType != nil { + in, out := &in.DestinationsType, &out.DestinationsType + *out = new(string) + **out = **in + } + if in.NextHopType != nil { + in, out := &in.NextHopType, &out.NextHopType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubRouteTableRouteInitParameters_2. +func (in *VirtualHubRouteTableRouteInitParameters_2) DeepCopy() *VirtualHubRouteTableRouteInitParameters_2 { + if in == nil { + return nil + } + out := new(VirtualHubRouteTableRouteInitParameters_2) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualHubRouteTableRouteList) DeepCopyInto(out *VirtualHubRouteTableRouteList) { *out = *in @@ -39702,6 +52316,7 @@ func (in *VirtualHubRouteTableRouteSpec) DeepCopyInto(out *VirtualHubRouteTableR *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubRouteTableRouteSpec. @@ -39736,6 +52351,7 @@ func (in *VirtualHubRouteTableSpec) DeepCopyInto(out *VirtualHubRouteTableSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubRouteTableSpec. @@ -39792,6 +52408,46 @@ func (in *VirtualHubSecurityPartnerProvider) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualHubSecurityPartnerProviderInitParameters) DeepCopyInto(out *VirtualHubSecurityPartnerProviderInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SecurityProviderName != nil { + in, out := &in.SecurityProviderName, &out.SecurityProviderName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubSecurityPartnerProviderInitParameters. +func (in *VirtualHubSecurityPartnerProviderInitParameters) DeepCopy() *VirtualHubSecurityPartnerProviderInitParameters { + if in == nil { + return nil + } + out := new(VirtualHubSecurityPartnerProviderInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualHubSecurityPartnerProviderList) DeepCopyInto(out *VirtualHubSecurityPartnerProviderList) { *out = *in @@ -39954,6 +52610,7 @@ func (in *VirtualHubSecurityPartnerProviderSpec) DeepCopyInto(out *VirtualHubSec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubSecurityPartnerProviderSpec. @@ -39988,6 +52645,7 @@ func (in *VirtualHubSpec) DeepCopyInto(out *VirtualHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualHubSpec. @@ -40071,6 +52729,38 @@ func (in *VirtualNetworkGateway) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkGatewayBGPSettingsInitParameters) DeepCopyInto(out *VirtualNetworkGatewayBGPSettingsInitParameters) { + *out = *in + if in.Asn != nil { + in, out := &in.Asn, &out.Asn + *out = new(float64) + **out = **in + } + if in.PeerWeight != nil { + in, out := &in.PeerWeight, &out.PeerWeight + *out = new(float64) + **out = **in + } + if in.PeeringAddresses != nil { + in, out := &in.PeeringAddresses, &out.PeeringAddresses + *out = make([]PeeringAddressesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkGatewayBGPSettingsInitParameters. +func (in *VirtualNetworkGatewayBGPSettingsInitParameters) DeepCopy() *VirtualNetworkGatewayBGPSettingsInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkGatewayBGPSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkGatewayBGPSettingsObservation) DeepCopyInto(out *VirtualNetworkGatewayBGPSettingsObservation) { *out = *in @@ -40162,6 +52852,134 @@ func (in *VirtualNetworkGatewayConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkGatewayConnectionInitParameters) DeepCopyInto(out *VirtualNetworkGatewayConnectionInitParameters) { + *out = *in + if in.ConnectionMode != nil { + in, out := &in.ConnectionMode, &out.ConnectionMode + *out = new(string) + **out = **in + } + if in.ConnectionProtocol != nil { + in, out := &in.ConnectionProtocol, &out.ConnectionProtocol + *out = new(string) + **out = **in + } + if in.CustomBGPAddresses != nil { + in, out := &in.CustomBGPAddresses, &out.CustomBGPAddresses + *out = make([]CustomBGPAddressesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DpdTimeoutSeconds != nil { + in, out := &in.DpdTimeoutSeconds, &out.DpdTimeoutSeconds + *out = new(float64) + **out = **in + } + if in.EgressNATRuleIds != nil { + in, out := &in.EgressNATRuleIds, &out.EgressNATRuleIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EnableBGP != nil { + in, out := &in.EnableBGP, &out.EnableBGP + *out = new(bool) + **out = **in + } + if in.ExpressRouteCircuitID != nil { + in, out := &in.ExpressRouteCircuitID, &out.ExpressRouteCircuitID + *out = new(string) + **out = **in + } + if in.ExpressRouteGatewayBypass != nil { + in, out := &in.ExpressRouteGatewayBypass, &out.ExpressRouteGatewayBypass + *out = new(bool) + **out = **in + } + if in.IngressNATRuleIds != nil { + in, out := &in.IngressNATRuleIds, &out.IngressNATRuleIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IpsecPolicy != nil { + in, out := &in.IpsecPolicy, &out.IpsecPolicy + *out = make([]IpsecPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAzureIPAddressEnabled != nil { + in, out := &in.LocalAzureIPAddressEnabled, &out.LocalAzureIPAddressEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.RoutingWeight != nil { + in, out := &in.RoutingWeight, &out.RoutingWeight + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TrafficSelectorPolicy != nil { + in, out := &in.TrafficSelectorPolicy, &out.TrafficSelectorPolicy + *out = make([]TrafficSelectorPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.UsePolicyBasedTrafficSelectors != nil { + in, out := &in.UsePolicyBasedTrafficSelectors, &out.UsePolicyBasedTrafficSelectors + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkGatewayConnectionInitParameters. +func (in *VirtualNetworkGatewayConnectionInitParameters) DeepCopy() *VirtualNetworkGatewayConnectionInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkGatewayConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkGatewayConnectionList) DeepCopyInto(out *VirtualNetworkGatewayConnectionList) { *out = *in @@ -40550,6 +53368,7 @@ func (in *VirtualNetworkGatewayConnectionSpec) DeepCopyInto(out *VirtualNetworkG *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkGatewayConnectionSpec. @@ -40579,6 +53398,31 @@ func (in *VirtualNetworkGatewayConnectionStatus) DeepCopy() *VirtualNetworkGatew return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkGatewayIPConfigurationInitParameters) DeepCopyInto(out *VirtualNetworkGatewayIPConfigurationInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrivateIPAddressAllocation != nil { + in, out := &in.PrivateIPAddressAllocation, &out.PrivateIPAddressAllocation + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkGatewayIPConfigurationInitParameters. +func (in *VirtualNetworkGatewayIPConfigurationInitParameters) DeepCopy() *VirtualNetworkGatewayIPConfigurationInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkGatewayIPConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkGatewayIPConfigurationObservation) DeepCopyInto(out *VirtualNetworkGatewayIPConfigurationObservation) { *out = *in @@ -40669,6 +53513,114 @@ func (in *VirtualNetworkGatewayIPConfigurationParameters) DeepCopy() *VirtualNet return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkGatewayInitParameters) DeepCopyInto(out *VirtualNetworkGatewayInitParameters) { + *out = *in + if in.ActiveActive != nil { + in, out := &in.ActiveActive, &out.ActiveActive + *out = new(bool) + **out = **in + } + if in.BGPSettings != nil { + in, out := &in.BGPSettings, &out.BGPSettings + *out = make([]VirtualNetworkGatewayBGPSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomRoute != nil { + in, out := &in.CustomRoute, &out.CustomRoute + *out = make([]CustomRouteInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultLocalNetworkGatewayID != nil { + in, out := &in.DefaultLocalNetworkGatewayID, &out.DefaultLocalNetworkGatewayID + *out = new(string) + **out = **in + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) + **out = **in + } + if in.EnableBGP != nil { + in, out := &in.EnableBGP, &out.EnableBGP + *out = new(bool) + **out = **in + } + if in.Generation != nil { + in, out := &in.Generation, &out.Generation + *out = new(string) + **out = **in + } + if in.IPConfiguration != nil { + in, out := &in.IPConfiguration, &out.IPConfiguration + *out = make([]VirtualNetworkGatewayIPConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PrivateIPAddressEnabled != nil { + in, out := &in.PrivateIPAddressEnabled, &out.PrivateIPAddressEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.VPNClientConfiguration != nil { + in, out := &in.VPNClientConfiguration, &out.VPNClientConfiguration + *out = make([]VPNClientConfigurationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VPNType != nil { + in, out := &in.VPNType, &out.VPNType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkGatewayInitParameters. +func (in *VirtualNetworkGatewayInitParameters) DeepCopy() *VirtualNetworkGatewayInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkGatewayInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkGatewayList) DeepCopyInto(out *VirtualNetworkGatewayList) { *out = *in @@ -40947,6 +53899,7 @@ func (in *VirtualNetworkGatewaySpec) DeepCopyInto(out *VirtualNetworkGatewaySpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkGatewaySpec. @@ -40976,6 +53929,85 @@ func (in *VirtualNetworkGatewayStatus) DeepCopy() *VirtualNetworkGatewayStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkInitParameters) DeepCopyInto(out *VirtualNetworkInitParameters) { + *out = *in + if in.AddressSpace != nil { + in, out := &in.AddressSpace, &out.AddressSpace + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.BGPCommunity != nil { + in, out := &in.BGPCommunity, &out.BGPCommunity + *out = new(string) + **out = **in + } + if in.DDOSProtectionPlan != nil { + in, out := &in.DDOSProtectionPlan, &out.DDOSProtectionPlan + *out = make([]DDOSProtectionPlanInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DNSServers != nil { + in, out := &in.DNSServers, &out.DNSServers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) + **out = **in + } + if in.FlowTimeoutInMinutes != nil { + in, out := &in.FlowTimeoutInMinutes, &out.FlowTimeoutInMinutes + *out = new(float64) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkInitParameters. +func (in *VirtualNetworkInitParameters) DeepCopy() *VirtualNetworkInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkList) DeepCopyInto(out *VirtualNetworkList) { *out = *in @@ -41230,6 +54262,56 @@ func (in *VirtualNetworkPeering) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkPeeringInitParameters) DeepCopyInto(out *VirtualNetworkPeeringInitParameters) { + *out = *in + if in.AllowForwardedTraffic != nil { + in, out := &in.AllowForwardedTraffic, &out.AllowForwardedTraffic + *out = new(bool) + **out = **in + } + if in.AllowGatewayTransit != nil { + in, out := &in.AllowGatewayTransit, &out.AllowGatewayTransit + *out = new(bool) + **out = **in + } + if in.AllowVirtualNetworkAccess != nil { + in, out := &in.AllowVirtualNetworkAccess, &out.AllowVirtualNetworkAccess + *out = new(bool) + **out = **in + } + if in.Triggers != nil { + in, out := &in.Triggers, &out.Triggers + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.UseRemoteGateways != nil { + in, out := &in.UseRemoteGateways, &out.UseRemoteGateways + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkPeeringInitParameters. +func (in *VirtualNetworkPeeringInitParameters) DeepCopy() *VirtualNetworkPeeringInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkPeeringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkPeeringList) DeepCopyInto(out *VirtualNetworkPeeringList) { *out = *in @@ -41432,6 +54514,7 @@ func (in *VirtualNetworkPeeringSpec) DeepCopyInto(out *VirtualNetworkPeeringSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkPeeringSpec. @@ -41466,6 +54549,7 @@ func (in *VirtualNetworkSpec) DeepCopyInto(out *VirtualNetworkSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkSpec. @@ -41495,6 +54579,21 @@ func (in *VirtualNetworkStatus) DeepCopy() *VirtualNetworkStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualNetworkSubnetInitParameters) DeepCopyInto(out *VirtualNetworkSubnetInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetworkSubnetInitParameters. +func (in *VirtualNetworkSubnetInitParameters) DeepCopy() *VirtualNetworkSubnetInitParameters { + if in == nil { + return nil + } + out := new(VirtualNetworkSubnetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualNetworkSubnetObservation) DeepCopyInto(out *VirtualNetworkSubnetObservation) { *out = *in @@ -41572,6 +54671,61 @@ func (in *VirtualWAN) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualWANInitParameters) DeepCopyInto(out *VirtualWANInitParameters) { + *out = *in + if in.AllowBranchToBranchTraffic != nil { + in, out := &in.AllowBranchToBranchTraffic, &out.AllowBranchToBranchTraffic + *out = new(bool) + **out = **in + } + if in.DisableVPNEncryption != nil { + in, out := &in.DisableVPNEncryption, &out.DisableVPNEncryption + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Office365LocalBreakoutCategory != nil { + in, out := &in.Office365LocalBreakoutCategory, &out.Office365LocalBreakoutCategory + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualWANInitParameters. +func (in *VirtualWANInitParameters) DeepCopy() *VirtualWANInitParameters { + if in == nil { + return nil + } + out := new(VirtualWANInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualWANList) DeepCopyInto(out *VirtualWANList) { *out = *in @@ -41744,6 +54898,7 @@ func (in *VirtualWANSpec) DeepCopyInto(out *VirtualWANSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualWANSpec. @@ -41773,6 +54928,70 @@ func (in *VirtualWANStatus) DeepCopy() *VirtualWANStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WafConfigurationInitParameters) DeepCopyInto(out *WafConfigurationInitParameters) { + *out = *in + if in.DisabledRuleGroup != nil { + in, out := &in.DisabledRuleGroup, &out.DisabledRuleGroup + *out = make([]DisabledRuleGroupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Exclusion != nil { + in, out := &in.Exclusion, &out.Exclusion + *out = make([]ExclusionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FileUploadLimitMb != nil { + in, out := &in.FileUploadLimitMb, &out.FileUploadLimitMb + *out = new(float64) + **out = **in + } + if in.FirewallMode != nil { + in, out := &in.FirewallMode, &out.FirewallMode + *out = new(string) + **out = **in + } + if in.MaxRequestBodySizeKb != nil { + in, out := &in.MaxRequestBodySizeKb, &out.MaxRequestBodySizeKb + *out = new(float64) + **out = **in + } + if in.RequestBodyCheck != nil { + in, out := &in.RequestBodyCheck, &out.RequestBodyCheck + *out = new(bool) + **out = **in + } + if in.RuleSetType != nil { + in, out := &in.RuleSetType, &out.RuleSetType + *out = new(string) + **out = **in + } + if in.RuleSetVersion != nil { + in, out := &in.RuleSetVersion, &out.RuleSetVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WafConfigurationInitParameters. +func (in *WafConfigurationInitParameters) DeepCopy() *WafConfigurationInitParameters { + if in == nil { + return nil + } + out := new(WafConfigurationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WafConfigurationObservation) DeepCopyInto(out *WafConfigurationObservation) { *out = *in @@ -41955,6 +55174,65 @@ func (in *WatcherFlowLog) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WatcherFlowLogInitParameters) DeepCopyInto(out *WatcherFlowLogInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.RetentionPolicy != nil { + in, out := &in.RetentionPolicy, &out.RetentionPolicy + *out = make([]RetentionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TrafficAnalytics != nil { + in, out := &in.TrafficAnalytics, &out.TrafficAnalytics + *out = make([]TrafficAnalyticsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WatcherFlowLogInitParameters. +func (in *WatcherFlowLogInitParameters) DeepCopy() *WatcherFlowLogInitParameters { + if in == nil { + return nil + } + out := new(WatcherFlowLogInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WatcherFlowLogList) DeepCopyInto(out *WatcherFlowLogList) { *out = *in @@ -42195,6 +55473,7 @@ func (in *WatcherFlowLogSpec) DeepCopyInto(out *WatcherFlowLogSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WatcherFlowLogSpec. @@ -42224,6 +55503,41 @@ func (in *WatcherFlowLogStatus) DeepCopy() *WatcherFlowLogStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WatcherInitParameters) DeepCopyInto(out *WatcherInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WatcherInitParameters. +func (in *WatcherInitParameters) DeepCopy() *WatcherInitParameters { + if in == nil { + return nil + } + out := new(WatcherInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WatcherList) DeepCopyInto(out *WatcherList) { *out = *in @@ -42356,6 +55670,7 @@ func (in *WatcherSpec) DeepCopyInto(out *WatcherSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WatcherSpec. @@ -42412,6 +55727,62 @@ func (in *WebApplicationFirewallPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebApplicationFirewallPolicyInitParameters) DeepCopyInto(out *WebApplicationFirewallPolicyInitParameters) { + *out = *in + if in.CustomRules != nil { + in, out := &in.CustomRules, &out.CustomRules + *out = make([]CustomRulesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ManagedRules != nil { + in, out := &in.ManagedRules, &out.ManagedRules + *out = make([]ManagedRulesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PolicySettings != nil { + in, out := &in.PolicySettings, &out.PolicySettings + *out = make([]PolicySettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebApplicationFirewallPolicyInitParameters. +func (in *WebApplicationFirewallPolicyInitParameters) DeepCopy() *WebApplicationFirewallPolicyInitParameters { + if in == nil { + return nil + } + out := new(WebApplicationFirewallPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebApplicationFirewallPolicyList) DeepCopyInto(out *WebApplicationFirewallPolicyList) { *out = *in @@ -42608,6 +55979,7 @@ func (in *WebApplicationFirewallPolicySpec) DeepCopyInto(out *WebApplicationFire *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebApplicationFirewallPolicySpec. diff --git a/apis/network/v1beta1/zz_generated.managed.go b/apis/network/v1beta1/zz_generated.managed.go index bd197bf3f..290e46aba 100644 --- a/apis/network/v1beta1/zz_generated.managed.go +++ b/apis/network/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ApplicationGateway) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationGateway. -func (mg *ApplicationGateway) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationGateway. +func (mg *ApplicationGateway) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationGateway. @@ -55,9 +55,9 @@ func (mg *ApplicationGateway) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationGateway. -func (mg *ApplicationGateway) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationGateway. +func (mg *ApplicationGateway) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationGateway. @@ -93,9 +93,9 @@ func (mg *ApplicationSecurityGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ApplicationSecurityGroup. -func (mg *ApplicationSecurityGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ApplicationSecurityGroup. +func (mg *ApplicationSecurityGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ApplicationSecurityGroup. @@ -131,9 +131,9 @@ func (mg *ApplicationSecurityGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ApplicationSecurityGroup. -func (mg *ApplicationSecurityGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ApplicationSecurityGroup. +func (mg *ApplicationSecurityGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ApplicationSecurityGroup. @@ -169,9 +169,9 @@ func (mg *ConnectionMonitor) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ConnectionMonitor. -func (mg *ConnectionMonitor) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ConnectionMonitor. +func (mg *ConnectionMonitor) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ConnectionMonitor. @@ -207,9 +207,9 @@ func (mg *ConnectionMonitor) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ConnectionMonitor. -func (mg *ConnectionMonitor) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ConnectionMonitor. +func (mg *ConnectionMonitor) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ConnectionMonitor. @@ -245,9 +245,9 @@ func (mg *DDoSProtectionPlan) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DDoSProtectionPlan. -func (mg *DDoSProtectionPlan) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DDoSProtectionPlan. +func (mg *DDoSProtectionPlan) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DDoSProtectionPlan. @@ -283,9 +283,9 @@ func (mg *DDoSProtectionPlan) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DDoSProtectionPlan. -func (mg *DDoSProtectionPlan) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DDoSProtectionPlan. +func (mg *DDoSProtectionPlan) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DDoSProtectionPlan. @@ -321,9 +321,9 @@ func (mg *DNSAAAARecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DNSAAAARecord. -func (mg *DNSAAAARecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DNSAAAARecord. +func (mg *DNSAAAARecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DNSAAAARecord. @@ -359,9 +359,9 @@ func (mg *DNSAAAARecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DNSAAAARecord. -func (mg *DNSAAAARecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DNSAAAARecord. +func (mg *DNSAAAARecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DNSAAAARecord. @@ -397,9 +397,9 @@ func (mg *DNSARecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DNSARecord. -func (mg *DNSARecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DNSARecord. +func (mg *DNSARecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DNSARecord. @@ -435,9 +435,9 @@ func (mg *DNSARecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DNSARecord. -func (mg *DNSARecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DNSARecord. +func (mg *DNSARecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DNSARecord. @@ -473,9 +473,9 @@ func (mg *DNSCAARecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DNSCAARecord. -func (mg *DNSCAARecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DNSCAARecord. +func (mg *DNSCAARecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DNSCAARecord. @@ -511,9 +511,9 @@ func (mg *DNSCAARecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DNSCAARecord. -func (mg *DNSCAARecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DNSCAARecord. +func (mg *DNSCAARecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DNSCAARecord. @@ -549,9 +549,9 @@ func (mg *DNSCNAMERecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DNSCNAMERecord. -func (mg *DNSCNAMERecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DNSCNAMERecord. +func (mg *DNSCNAMERecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DNSCNAMERecord. @@ -587,9 +587,9 @@ func (mg *DNSCNAMERecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DNSCNAMERecord. -func (mg *DNSCNAMERecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DNSCNAMERecord. +func (mg *DNSCNAMERecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DNSCNAMERecord. @@ -625,9 +625,9 @@ func (mg *DNSMXRecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DNSMXRecord. -func (mg *DNSMXRecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DNSMXRecord. +func (mg *DNSMXRecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DNSMXRecord. @@ -663,9 +663,9 @@ func (mg *DNSMXRecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DNSMXRecord. -func (mg *DNSMXRecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DNSMXRecord. +func (mg *DNSMXRecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DNSMXRecord. @@ -701,9 +701,9 @@ func (mg *DNSNSRecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DNSNSRecord. -func (mg *DNSNSRecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DNSNSRecord. +func (mg *DNSNSRecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DNSNSRecord. @@ -739,9 +739,9 @@ func (mg *DNSNSRecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DNSNSRecord. -func (mg *DNSNSRecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DNSNSRecord. +func (mg *DNSNSRecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DNSNSRecord. @@ -777,9 +777,9 @@ func (mg *DNSPTRRecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DNSPTRRecord. -func (mg *DNSPTRRecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DNSPTRRecord. +func (mg *DNSPTRRecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DNSPTRRecord. @@ -815,9 +815,9 @@ func (mg *DNSPTRRecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DNSPTRRecord. -func (mg *DNSPTRRecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DNSPTRRecord. +func (mg *DNSPTRRecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DNSPTRRecord. @@ -853,9 +853,9 @@ func (mg *DNSSRVRecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DNSSRVRecord. -func (mg *DNSSRVRecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DNSSRVRecord. +func (mg *DNSSRVRecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DNSSRVRecord. @@ -891,9 +891,9 @@ func (mg *DNSSRVRecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DNSSRVRecord. -func (mg *DNSSRVRecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DNSSRVRecord. +func (mg *DNSSRVRecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DNSSRVRecord. @@ -929,9 +929,9 @@ func (mg *DNSTXTRecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DNSTXTRecord. -func (mg *DNSTXTRecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DNSTXTRecord. +func (mg *DNSTXTRecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DNSTXTRecord. @@ -967,9 +967,9 @@ func (mg *DNSTXTRecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DNSTXTRecord. -func (mg *DNSTXTRecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DNSTXTRecord. +func (mg *DNSTXTRecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DNSTXTRecord. @@ -1005,9 +1005,9 @@ func (mg *DNSZone) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DNSZone. -func (mg *DNSZone) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DNSZone. +func (mg *DNSZone) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DNSZone. @@ -1043,9 +1043,9 @@ func (mg *DNSZone) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DNSZone. -func (mg *DNSZone) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DNSZone. +func (mg *DNSZone) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DNSZone. @@ -1081,9 +1081,9 @@ func (mg *ExpressRouteCircuit) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ExpressRouteCircuit. -func (mg *ExpressRouteCircuit) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ExpressRouteCircuit. +func (mg *ExpressRouteCircuit) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ExpressRouteCircuit. @@ -1119,9 +1119,9 @@ func (mg *ExpressRouteCircuit) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ExpressRouteCircuit. -func (mg *ExpressRouteCircuit) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ExpressRouteCircuit. +func (mg *ExpressRouteCircuit) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ExpressRouteCircuit. @@ -1157,9 +1157,9 @@ func (mg *ExpressRouteCircuitAuthorization) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ExpressRouteCircuitAuthorization. -func (mg *ExpressRouteCircuitAuthorization) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ExpressRouteCircuitAuthorization. +func (mg *ExpressRouteCircuitAuthorization) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ExpressRouteCircuitAuthorization. @@ -1195,9 +1195,9 @@ func (mg *ExpressRouteCircuitAuthorization) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ExpressRouteCircuitAuthorization. -func (mg *ExpressRouteCircuitAuthorization) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ExpressRouteCircuitAuthorization. +func (mg *ExpressRouteCircuitAuthorization) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ExpressRouteCircuitAuthorization. @@ -1233,9 +1233,9 @@ func (mg *ExpressRouteCircuitConnection) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ExpressRouteCircuitConnection. -func (mg *ExpressRouteCircuitConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ExpressRouteCircuitConnection. +func (mg *ExpressRouteCircuitConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ExpressRouteCircuitConnection. @@ -1271,9 +1271,9 @@ func (mg *ExpressRouteCircuitConnection) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ExpressRouteCircuitConnection. -func (mg *ExpressRouteCircuitConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ExpressRouteCircuitConnection. +func (mg *ExpressRouteCircuitConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ExpressRouteCircuitConnection. @@ -1309,9 +1309,9 @@ func (mg *ExpressRouteCircuitPeering) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ExpressRouteCircuitPeering. -func (mg *ExpressRouteCircuitPeering) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ExpressRouteCircuitPeering. +func (mg *ExpressRouteCircuitPeering) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ExpressRouteCircuitPeering. @@ -1347,9 +1347,9 @@ func (mg *ExpressRouteCircuitPeering) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ExpressRouteCircuitPeering. -func (mg *ExpressRouteCircuitPeering) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ExpressRouteCircuitPeering. +func (mg *ExpressRouteCircuitPeering) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ExpressRouteCircuitPeering. @@ -1385,9 +1385,9 @@ func (mg *ExpressRouteConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ExpressRouteConnection. -func (mg *ExpressRouteConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ExpressRouteConnection. +func (mg *ExpressRouteConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ExpressRouteConnection. @@ -1423,9 +1423,9 @@ func (mg *ExpressRouteConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ExpressRouteConnection. -func (mg *ExpressRouteConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ExpressRouteConnection. +func (mg *ExpressRouteConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ExpressRouteConnection. @@ -1461,9 +1461,9 @@ func (mg *ExpressRouteGateway) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ExpressRouteGateway. -func (mg *ExpressRouteGateway) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ExpressRouteGateway. +func (mg *ExpressRouteGateway) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ExpressRouteGateway. @@ -1499,9 +1499,9 @@ func (mg *ExpressRouteGateway) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ExpressRouteGateway. -func (mg *ExpressRouteGateway) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ExpressRouteGateway. +func (mg *ExpressRouteGateway) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ExpressRouteGateway. @@ -1537,9 +1537,9 @@ func (mg *ExpressRoutePort) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ExpressRoutePort. -func (mg *ExpressRoutePort) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ExpressRoutePort. +func (mg *ExpressRoutePort) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ExpressRoutePort. @@ -1575,9 +1575,9 @@ func (mg *ExpressRoutePort) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ExpressRoutePort. -func (mg *ExpressRoutePort) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ExpressRoutePort. +func (mg *ExpressRoutePort) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ExpressRoutePort. @@ -1613,9 +1613,9 @@ func (mg *Firewall) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Firewall. -func (mg *Firewall) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Firewall. +func (mg *Firewall) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Firewall. @@ -1651,9 +1651,9 @@ func (mg *Firewall) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Firewall. -func (mg *Firewall) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Firewall. +func (mg *Firewall) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Firewall. @@ -1689,9 +1689,9 @@ func (mg *FirewallApplicationRuleCollection) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FirewallApplicationRuleCollection. -func (mg *FirewallApplicationRuleCollection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FirewallApplicationRuleCollection. +func (mg *FirewallApplicationRuleCollection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FirewallApplicationRuleCollection. @@ -1727,9 +1727,9 @@ func (mg *FirewallApplicationRuleCollection) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FirewallApplicationRuleCollection. -func (mg *FirewallApplicationRuleCollection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FirewallApplicationRuleCollection. +func (mg *FirewallApplicationRuleCollection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FirewallApplicationRuleCollection. @@ -1765,9 +1765,9 @@ func (mg *FirewallNATRuleCollection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FirewallNATRuleCollection. -func (mg *FirewallNATRuleCollection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FirewallNATRuleCollection. +func (mg *FirewallNATRuleCollection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FirewallNATRuleCollection. @@ -1803,9 +1803,9 @@ func (mg *FirewallNATRuleCollection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FirewallNATRuleCollection. -func (mg *FirewallNATRuleCollection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FirewallNATRuleCollection. +func (mg *FirewallNATRuleCollection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FirewallNATRuleCollection. @@ -1841,9 +1841,9 @@ func (mg *FirewallNetworkRuleCollection) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FirewallNetworkRuleCollection. -func (mg *FirewallNetworkRuleCollection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FirewallNetworkRuleCollection. +func (mg *FirewallNetworkRuleCollection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FirewallNetworkRuleCollection. @@ -1879,9 +1879,9 @@ func (mg *FirewallNetworkRuleCollection) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FirewallNetworkRuleCollection. -func (mg *FirewallNetworkRuleCollection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FirewallNetworkRuleCollection. +func (mg *FirewallNetworkRuleCollection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FirewallNetworkRuleCollection. @@ -1917,9 +1917,9 @@ func (mg *FirewallPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FirewallPolicy. -func (mg *FirewallPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FirewallPolicy. +func (mg *FirewallPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FirewallPolicy. @@ -1955,9 +1955,9 @@ func (mg *FirewallPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FirewallPolicy. -func (mg *FirewallPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FirewallPolicy. +func (mg *FirewallPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FirewallPolicy. @@ -1993,9 +1993,9 @@ func (mg *FirewallPolicyRuleCollectionGroup) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FirewallPolicyRuleCollectionGroup. -func (mg *FirewallPolicyRuleCollectionGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FirewallPolicyRuleCollectionGroup. +func (mg *FirewallPolicyRuleCollectionGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FirewallPolicyRuleCollectionGroup. @@ -2031,9 +2031,9 @@ func (mg *FirewallPolicyRuleCollectionGroup) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FirewallPolicyRuleCollectionGroup. -func (mg *FirewallPolicyRuleCollectionGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FirewallPolicyRuleCollectionGroup. +func (mg *FirewallPolicyRuleCollectionGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FirewallPolicyRuleCollectionGroup. @@ -2069,9 +2069,9 @@ func (mg *FrontDoor) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontDoor. -func (mg *FrontDoor) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontDoor. +func (mg *FrontDoor) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontDoor. @@ -2107,9 +2107,9 @@ func (mg *FrontDoor) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontDoor. -func (mg *FrontDoor) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontDoor. +func (mg *FrontDoor) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontDoor. @@ -2145,9 +2145,9 @@ func (mg *FrontdoorCustomHTTPSConfiguration) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorCustomHTTPSConfiguration. -func (mg *FrontdoorCustomHTTPSConfiguration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorCustomHTTPSConfiguration. +func (mg *FrontdoorCustomHTTPSConfiguration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorCustomHTTPSConfiguration. @@ -2183,9 +2183,9 @@ func (mg *FrontdoorCustomHTTPSConfiguration) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorCustomHTTPSConfiguration. -func (mg *FrontdoorCustomHTTPSConfiguration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorCustomHTTPSConfiguration. +func (mg *FrontdoorCustomHTTPSConfiguration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorCustomHTTPSConfiguration. @@ -2221,9 +2221,9 @@ func (mg *FrontdoorFirewallPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorFirewallPolicy. -func (mg *FrontdoorFirewallPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorFirewallPolicy. +func (mg *FrontdoorFirewallPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorFirewallPolicy. @@ -2259,9 +2259,9 @@ func (mg *FrontdoorFirewallPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorFirewallPolicy. -func (mg *FrontdoorFirewallPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorFirewallPolicy. +func (mg *FrontdoorFirewallPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorFirewallPolicy. @@ -2297,9 +2297,9 @@ func (mg *FrontdoorRulesEngine) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FrontdoorRulesEngine. -func (mg *FrontdoorRulesEngine) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FrontdoorRulesEngine. +func (mg *FrontdoorRulesEngine) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FrontdoorRulesEngine. @@ -2335,9 +2335,9 @@ func (mg *FrontdoorRulesEngine) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FrontdoorRulesEngine. -func (mg *FrontdoorRulesEngine) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FrontdoorRulesEngine. +func (mg *FrontdoorRulesEngine) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FrontdoorRulesEngine. @@ -2373,9 +2373,9 @@ func (mg *IPGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IPGroup. -func (mg *IPGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IPGroup. +func (mg *IPGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IPGroup. @@ -2411,9 +2411,9 @@ func (mg *IPGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IPGroup. -func (mg *IPGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IPGroup. +func (mg *IPGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IPGroup. @@ -2449,9 +2449,9 @@ func (mg *LoadBalancer) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LoadBalancer. -func (mg *LoadBalancer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LoadBalancer. +func (mg *LoadBalancer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LoadBalancer. @@ -2487,9 +2487,9 @@ func (mg *LoadBalancer) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LoadBalancer. -func (mg *LoadBalancer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LoadBalancer. +func (mg *LoadBalancer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LoadBalancer. @@ -2525,9 +2525,9 @@ func (mg *LoadBalancerBackendAddressPool) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LoadBalancerBackendAddressPool. -func (mg *LoadBalancerBackendAddressPool) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LoadBalancerBackendAddressPool. +func (mg *LoadBalancerBackendAddressPool) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LoadBalancerBackendAddressPool. @@ -2563,9 +2563,9 @@ func (mg *LoadBalancerBackendAddressPool) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LoadBalancerBackendAddressPool. -func (mg *LoadBalancerBackendAddressPool) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LoadBalancerBackendAddressPool. +func (mg *LoadBalancerBackendAddressPool) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LoadBalancerBackendAddressPool. @@ -2601,9 +2601,9 @@ func (mg *LoadBalancerBackendAddressPoolAddress) GetDeletionPolicy() xpv1.Deleti return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LoadBalancerBackendAddressPoolAddress. -func (mg *LoadBalancerBackendAddressPoolAddress) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LoadBalancerBackendAddressPoolAddress. +func (mg *LoadBalancerBackendAddressPoolAddress) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LoadBalancerBackendAddressPoolAddress. @@ -2639,9 +2639,9 @@ func (mg *LoadBalancerBackendAddressPoolAddress) SetDeletionPolicy(r xpv1.Deleti mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LoadBalancerBackendAddressPoolAddress. -func (mg *LoadBalancerBackendAddressPoolAddress) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LoadBalancerBackendAddressPoolAddress. +func (mg *LoadBalancerBackendAddressPoolAddress) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LoadBalancerBackendAddressPoolAddress. @@ -2677,9 +2677,9 @@ func (mg *LoadBalancerNatPool) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LoadBalancerNatPool. -func (mg *LoadBalancerNatPool) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LoadBalancerNatPool. +func (mg *LoadBalancerNatPool) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LoadBalancerNatPool. @@ -2715,9 +2715,9 @@ func (mg *LoadBalancerNatPool) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LoadBalancerNatPool. -func (mg *LoadBalancerNatPool) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LoadBalancerNatPool. +func (mg *LoadBalancerNatPool) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LoadBalancerNatPool. @@ -2753,9 +2753,9 @@ func (mg *LoadBalancerNatRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LoadBalancerNatRule. -func (mg *LoadBalancerNatRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LoadBalancerNatRule. +func (mg *LoadBalancerNatRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LoadBalancerNatRule. @@ -2791,9 +2791,9 @@ func (mg *LoadBalancerNatRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LoadBalancerNatRule. -func (mg *LoadBalancerNatRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LoadBalancerNatRule. +func (mg *LoadBalancerNatRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LoadBalancerNatRule. @@ -2829,9 +2829,9 @@ func (mg *LoadBalancerOutboundRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LoadBalancerOutboundRule. -func (mg *LoadBalancerOutboundRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LoadBalancerOutboundRule. +func (mg *LoadBalancerOutboundRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LoadBalancerOutboundRule. @@ -2867,9 +2867,9 @@ func (mg *LoadBalancerOutboundRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LoadBalancerOutboundRule. -func (mg *LoadBalancerOutboundRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LoadBalancerOutboundRule. +func (mg *LoadBalancerOutboundRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LoadBalancerOutboundRule. @@ -2905,9 +2905,9 @@ func (mg *LoadBalancerProbe) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LoadBalancerProbe. -func (mg *LoadBalancerProbe) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LoadBalancerProbe. +func (mg *LoadBalancerProbe) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LoadBalancerProbe. @@ -2943,9 +2943,9 @@ func (mg *LoadBalancerProbe) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LoadBalancerProbe. -func (mg *LoadBalancerProbe) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LoadBalancerProbe. +func (mg *LoadBalancerProbe) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LoadBalancerProbe. @@ -2981,9 +2981,9 @@ func (mg *LoadBalancerRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LoadBalancerRule. -func (mg *LoadBalancerRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LoadBalancerRule. +func (mg *LoadBalancerRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LoadBalancerRule. @@ -3019,9 +3019,9 @@ func (mg *LoadBalancerRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LoadBalancerRule. -func (mg *LoadBalancerRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LoadBalancerRule. +func (mg *LoadBalancerRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LoadBalancerRule. @@ -3057,9 +3057,9 @@ func (mg *LocalNetworkGateway) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LocalNetworkGateway. -func (mg *LocalNetworkGateway) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LocalNetworkGateway. +func (mg *LocalNetworkGateway) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LocalNetworkGateway. @@ -3095,9 +3095,9 @@ func (mg *LocalNetworkGateway) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LocalNetworkGateway. -func (mg *LocalNetworkGateway) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LocalNetworkGateway. +func (mg *LocalNetworkGateway) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LocalNetworkGateway. @@ -3133,9 +3133,9 @@ func (mg *Manager) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Manager. -func (mg *Manager) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Manager. +func (mg *Manager) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Manager. @@ -3171,9 +3171,9 @@ func (mg *Manager) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Manager. -func (mg *Manager) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Manager. +func (mg *Manager) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Manager. @@ -3209,9 +3209,9 @@ func (mg *ManagerManagementGroupConnection) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagerManagementGroupConnection. -func (mg *ManagerManagementGroupConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagerManagementGroupConnection. +func (mg *ManagerManagementGroupConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagerManagementGroupConnection. @@ -3247,9 +3247,9 @@ func (mg *ManagerManagementGroupConnection) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagerManagementGroupConnection. -func (mg *ManagerManagementGroupConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagerManagementGroupConnection. +func (mg *ManagerManagementGroupConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagerManagementGroupConnection. @@ -3285,9 +3285,9 @@ func (mg *ManagerNetworkGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagerNetworkGroup. -func (mg *ManagerNetworkGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagerNetworkGroup. +func (mg *ManagerNetworkGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagerNetworkGroup. @@ -3323,9 +3323,9 @@ func (mg *ManagerNetworkGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagerNetworkGroup. -func (mg *ManagerNetworkGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagerNetworkGroup. +func (mg *ManagerNetworkGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagerNetworkGroup. @@ -3361,9 +3361,9 @@ func (mg *ManagerStaticMember) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagerStaticMember. -func (mg *ManagerStaticMember) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagerStaticMember. +func (mg *ManagerStaticMember) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagerStaticMember. @@ -3399,9 +3399,9 @@ func (mg *ManagerStaticMember) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagerStaticMember. -func (mg *ManagerStaticMember) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagerStaticMember. +func (mg *ManagerStaticMember) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagerStaticMember. @@ -3437,9 +3437,9 @@ func (mg *ManagerSubscriptionConnection) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagerSubscriptionConnection. -func (mg *ManagerSubscriptionConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagerSubscriptionConnection. +func (mg *ManagerSubscriptionConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagerSubscriptionConnection. @@ -3475,9 +3475,9 @@ func (mg *ManagerSubscriptionConnection) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagerSubscriptionConnection. -func (mg *ManagerSubscriptionConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagerSubscriptionConnection. +func (mg *ManagerSubscriptionConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagerSubscriptionConnection. @@ -3513,9 +3513,9 @@ func (mg *NATGateway) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NATGateway. -func (mg *NATGateway) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NATGateway. +func (mg *NATGateway) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NATGateway. @@ -3551,9 +3551,9 @@ func (mg *NATGateway) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NATGateway. -func (mg *NATGateway) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NATGateway. +func (mg *NATGateway) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NATGateway. @@ -3589,9 +3589,9 @@ func (mg *NATGatewayPublicIPAssociation) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NATGatewayPublicIPAssociation. -func (mg *NATGatewayPublicIPAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NATGatewayPublicIPAssociation. +func (mg *NATGatewayPublicIPAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NATGatewayPublicIPAssociation. @@ -3627,9 +3627,9 @@ func (mg *NATGatewayPublicIPAssociation) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NATGatewayPublicIPAssociation. -func (mg *NATGatewayPublicIPAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NATGatewayPublicIPAssociation. +func (mg *NATGatewayPublicIPAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NATGatewayPublicIPAssociation. @@ -3665,9 +3665,9 @@ func (mg *NATGatewayPublicIPPrefixAssociation) GetDeletionPolicy() xpv1.Deletion return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NATGatewayPublicIPPrefixAssociation. -func (mg *NATGatewayPublicIPPrefixAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NATGatewayPublicIPPrefixAssociation. +func (mg *NATGatewayPublicIPPrefixAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NATGatewayPublicIPPrefixAssociation. @@ -3703,9 +3703,9 @@ func (mg *NATGatewayPublicIPPrefixAssociation) SetDeletionPolicy(r xpv1.Deletion mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NATGatewayPublicIPPrefixAssociation. -func (mg *NATGatewayPublicIPPrefixAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NATGatewayPublicIPPrefixAssociation. +func (mg *NATGatewayPublicIPPrefixAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NATGatewayPublicIPPrefixAssociation. @@ -3741,9 +3741,9 @@ func (mg *NetworkInterface) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NetworkInterface. -func (mg *NetworkInterface) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NetworkInterface. +func (mg *NetworkInterface) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NetworkInterface. @@ -3779,9 +3779,9 @@ func (mg *NetworkInterface) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NetworkInterface. -func (mg *NetworkInterface) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NetworkInterface. +func (mg *NetworkInterface) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NetworkInterface. @@ -3817,9 +3817,9 @@ func (mg *NetworkInterfaceApplicationSecurityGroupAssociation) GetDeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NetworkInterfaceApplicationSecurityGroupAssociation. -func (mg *NetworkInterfaceApplicationSecurityGroupAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NetworkInterfaceApplicationSecurityGroupAssociation. +func (mg *NetworkInterfaceApplicationSecurityGroupAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NetworkInterfaceApplicationSecurityGroupAssociation. @@ -3855,9 +3855,9 @@ func (mg *NetworkInterfaceApplicationSecurityGroupAssociation) SetDeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NetworkInterfaceApplicationSecurityGroupAssociation. -func (mg *NetworkInterfaceApplicationSecurityGroupAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NetworkInterfaceApplicationSecurityGroupAssociation. +func (mg *NetworkInterfaceApplicationSecurityGroupAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NetworkInterfaceApplicationSecurityGroupAssociation. @@ -3893,9 +3893,9 @@ func (mg *NetworkInterfaceBackendAddressPoolAssociation) GetDeletionPolicy() xpv return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NetworkInterfaceBackendAddressPoolAssociation. -func (mg *NetworkInterfaceBackendAddressPoolAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NetworkInterfaceBackendAddressPoolAssociation. +func (mg *NetworkInterfaceBackendAddressPoolAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NetworkInterfaceBackendAddressPoolAssociation. @@ -3931,9 +3931,9 @@ func (mg *NetworkInterfaceBackendAddressPoolAssociation) SetDeletionPolicy(r xpv mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NetworkInterfaceBackendAddressPoolAssociation. -func (mg *NetworkInterfaceBackendAddressPoolAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NetworkInterfaceBackendAddressPoolAssociation. +func (mg *NetworkInterfaceBackendAddressPoolAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NetworkInterfaceBackendAddressPoolAssociation. @@ -3969,9 +3969,9 @@ func (mg *NetworkInterfaceNatRuleAssociation) GetDeletionPolicy() xpv1.DeletionP return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NetworkInterfaceNatRuleAssociation. -func (mg *NetworkInterfaceNatRuleAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NetworkInterfaceNatRuleAssociation. +func (mg *NetworkInterfaceNatRuleAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NetworkInterfaceNatRuleAssociation. @@ -4007,9 +4007,9 @@ func (mg *NetworkInterfaceNatRuleAssociation) SetDeletionPolicy(r xpv1.DeletionP mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NetworkInterfaceNatRuleAssociation. -func (mg *NetworkInterfaceNatRuleAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NetworkInterfaceNatRuleAssociation. +func (mg *NetworkInterfaceNatRuleAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NetworkInterfaceNatRuleAssociation. @@ -4045,9 +4045,9 @@ func (mg *NetworkInterfaceSecurityGroupAssociation) GetDeletionPolicy() xpv1.Del return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NetworkInterfaceSecurityGroupAssociation. -func (mg *NetworkInterfaceSecurityGroupAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NetworkInterfaceSecurityGroupAssociation. +func (mg *NetworkInterfaceSecurityGroupAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NetworkInterfaceSecurityGroupAssociation. @@ -4083,9 +4083,9 @@ func (mg *NetworkInterfaceSecurityGroupAssociation) SetDeletionPolicy(r xpv1.Del mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NetworkInterfaceSecurityGroupAssociation. -func (mg *NetworkInterfaceSecurityGroupAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NetworkInterfaceSecurityGroupAssociation. +func (mg *NetworkInterfaceSecurityGroupAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NetworkInterfaceSecurityGroupAssociation. @@ -4121,9 +4121,9 @@ func (mg *PacketCapture) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PacketCapture. -func (mg *PacketCapture) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PacketCapture. +func (mg *PacketCapture) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PacketCapture. @@ -4159,9 +4159,9 @@ func (mg *PacketCapture) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PacketCapture. -func (mg *PacketCapture) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PacketCapture. +func (mg *PacketCapture) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PacketCapture. @@ -4197,9 +4197,9 @@ func (mg *PointToSiteVPNGateway) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PointToSiteVPNGateway. -func (mg *PointToSiteVPNGateway) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PointToSiteVPNGateway. +func (mg *PointToSiteVPNGateway) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PointToSiteVPNGateway. @@ -4235,9 +4235,9 @@ func (mg *PointToSiteVPNGateway) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PointToSiteVPNGateway. -func (mg *PointToSiteVPNGateway) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PointToSiteVPNGateway. +func (mg *PointToSiteVPNGateway) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PointToSiteVPNGateway. @@ -4273,9 +4273,9 @@ func (mg *PrivateDNSAAAARecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateDNSAAAARecord. -func (mg *PrivateDNSAAAARecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateDNSAAAARecord. +func (mg *PrivateDNSAAAARecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateDNSAAAARecord. @@ -4311,9 +4311,9 @@ func (mg *PrivateDNSAAAARecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateDNSAAAARecord. -func (mg *PrivateDNSAAAARecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateDNSAAAARecord. +func (mg *PrivateDNSAAAARecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateDNSAAAARecord. @@ -4349,9 +4349,9 @@ func (mg *PrivateDNSARecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateDNSARecord. -func (mg *PrivateDNSARecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateDNSARecord. +func (mg *PrivateDNSARecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateDNSARecord. @@ -4387,9 +4387,9 @@ func (mg *PrivateDNSARecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateDNSARecord. -func (mg *PrivateDNSARecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateDNSARecord. +func (mg *PrivateDNSARecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateDNSARecord. @@ -4425,9 +4425,9 @@ func (mg *PrivateDNSCNAMERecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateDNSCNAMERecord. -func (mg *PrivateDNSCNAMERecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateDNSCNAMERecord. +func (mg *PrivateDNSCNAMERecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateDNSCNAMERecord. @@ -4463,9 +4463,9 @@ func (mg *PrivateDNSCNAMERecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateDNSCNAMERecord. -func (mg *PrivateDNSCNAMERecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateDNSCNAMERecord. +func (mg *PrivateDNSCNAMERecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateDNSCNAMERecord. @@ -4501,9 +4501,9 @@ func (mg *PrivateDNSMXRecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateDNSMXRecord. -func (mg *PrivateDNSMXRecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateDNSMXRecord. +func (mg *PrivateDNSMXRecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateDNSMXRecord. @@ -4539,9 +4539,9 @@ func (mg *PrivateDNSMXRecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateDNSMXRecord. -func (mg *PrivateDNSMXRecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateDNSMXRecord. +func (mg *PrivateDNSMXRecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateDNSMXRecord. @@ -4577,9 +4577,9 @@ func (mg *PrivateDNSPTRRecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateDNSPTRRecord. -func (mg *PrivateDNSPTRRecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateDNSPTRRecord. +func (mg *PrivateDNSPTRRecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateDNSPTRRecord. @@ -4615,9 +4615,9 @@ func (mg *PrivateDNSPTRRecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateDNSPTRRecord. -func (mg *PrivateDNSPTRRecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateDNSPTRRecord. +func (mg *PrivateDNSPTRRecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateDNSPTRRecord. @@ -4653,9 +4653,9 @@ func (mg *PrivateDNSResolver) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateDNSResolver. -func (mg *PrivateDNSResolver) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateDNSResolver. +func (mg *PrivateDNSResolver) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateDNSResolver. @@ -4691,9 +4691,9 @@ func (mg *PrivateDNSResolver) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateDNSResolver. -func (mg *PrivateDNSResolver) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateDNSResolver. +func (mg *PrivateDNSResolver) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateDNSResolver. @@ -4729,9 +4729,9 @@ func (mg *PrivateDNSSRVRecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateDNSSRVRecord. -func (mg *PrivateDNSSRVRecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateDNSSRVRecord. +func (mg *PrivateDNSSRVRecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateDNSSRVRecord. @@ -4767,9 +4767,9 @@ func (mg *PrivateDNSSRVRecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateDNSSRVRecord. -func (mg *PrivateDNSSRVRecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateDNSSRVRecord. +func (mg *PrivateDNSSRVRecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateDNSSRVRecord. @@ -4805,9 +4805,9 @@ func (mg *PrivateDNSTXTRecord) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateDNSTXTRecord. -func (mg *PrivateDNSTXTRecord) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateDNSTXTRecord. +func (mg *PrivateDNSTXTRecord) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateDNSTXTRecord. @@ -4843,9 +4843,9 @@ func (mg *PrivateDNSTXTRecord) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateDNSTXTRecord. -func (mg *PrivateDNSTXTRecord) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateDNSTXTRecord. +func (mg *PrivateDNSTXTRecord) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateDNSTXTRecord. @@ -4881,9 +4881,9 @@ func (mg *PrivateDNSZone) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateDNSZone. -func (mg *PrivateDNSZone) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateDNSZone. +func (mg *PrivateDNSZone) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateDNSZone. @@ -4919,9 +4919,9 @@ func (mg *PrivateDNSZone) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateDNSZone. -func (mg *PrivateDNSZone) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateDNSZone. +func (mg *PrivateDNSZone) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateDNSZone. @@ -4957,9 +4957,9 @@ func (mg *PrivateDNSZoneVirtualNetworkLink) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateDNSZoneVirtualNetworkLink. -func (mg *PrivateDNSZoneVirtualNetworkLink) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateDNSZoneVirtualNetworkLink. +func (mg *PrivateDNSZoneVirtualNetworkLink) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateDNSZoneVirtualNetworkLink. @@ -4995,9 +4995,9 @@ func (mg *PrivateDNSZoneVirtualNetworkLink) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateDNSZoneVirtualNetworkLink. -func (mg *PrivateDNSZoneVirtualNetworkLink) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateDNSZoneVirtualNetworkLink. +func (mg *PrivateDNSZoneVirtualNetworkLink) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateDNSZoneVirtualNetworkLink. @@ -5033,9 +5033,9 @@ func (mg *PrivateEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateEndpoint. -func (mg *PrivateEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateEndpoint. +func (mg *PrivateEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateEndpoint. @@ -5071,9 +5071,9 @@ func (mg *PrivateEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateEndpoint. -func (mg *PrivateEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateEndpoint. +func (mg *PrivateEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateEndpoint. @@ -5109,9 +5109,9 @@ func (mg *PrivateEndpointApplicationSecurityGroupAssociation) GetDeletionPolicy( return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateEndpointApplicationSecurityGroupAssociation. -func (mg *PrivateEndpointApplicationSecurityGroupAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateEndpointApplicationSecurityGroupAssociation. +func (mg *PrivateEndpointApplicationSecurityGroupAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateEndpointApplicationSecurityGroupAssociation. @@ -5147,9 +5147,9 @@ func (mg *PrivateEndpointApplicationSecurityGroupAssociation) SetDeletionPolicy( mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateEndpointApplicationSecurityGroupAssociation. -func (mg *PrivateEndpointApplicationSecurityGroupAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateEndpointApplicationSecurityGroupAssociation. +func (mg *PrivateEndpointApplicationSecurityGroupAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateEndpointApplicationSecurityGroupAssociation. @@ -5185,9 +5185,9 @@ func (mg *PrivateLinkService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateLinkService. -func (mg *PrivateLinkService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateLinkService. +func (mg *PrivateLinkService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateLinkService. @@ -5223,9 +5223,9 @@ func (mg *PrivateLinkService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateLinkService. -func (mg *PrivateLinkService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateLinkService. +func (mg *PrivateLinkService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateLinkService. @@ -5261,9 +5261,9 @@ func (mg *Profile) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Profile. -func (mg *Profile) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Profile. +func (mg *Profile) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Profile. @@ -5299,9 +5299,9 @@ func (mg *Profile) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Profile. -func (mg *Profile) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Profile. +func (mg *Profile) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Profile. @@ -5337,9 +5337,9 @@ func (mg *PublicIP) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PublicIP. -func (mg *PublicIP) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PublicIP. +func (mg *PublicIP) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PublicIP. @@ -5375,9 +5375,9 @@ func (mg *PublicIP) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PublicIP. -func (mg *PublicIP) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PublicIP. +func (mg *PublicIP) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PublicIP. @@ -5413,9 +5413,9 @@ func (mg *PublicIPPrefix) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PublicIPPrefix. -func (mg *PublicIPPrefix) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PublicIPPrefix. +func (mg *PublicIPPrefix) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PublicIPPrefix. @@ -5451,9 +5451,9 @@ func (mg *PublicIPPrefix) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PublicIPPrefix. -func (mg *PublicIPPrefix) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PublicIPPrefix. +func (mg *PublicIPPrefix) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PublicIPPrefix. @@ -5489,9 +5489,9 @@ func (mg *Route) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Route. -func (mg *Route) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Route. +func (mg *Route) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Route. @@ -5527,9 +5527,9 @@ func (mg *Route) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Route. -func (mg *Route) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Route. +func (mg *Route) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Route. @@ -5565,9 +5565,9 @@ func (mg *RouteFilter) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RouteFilter. -func (mg *RouteFilter) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RouteFilter. +func (mg *RouteFilter) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RouteFilter. @@ -5603,9 +5603,9 @@ func (mg *RouteFilter) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RouteFilter. -func (mg *RouteFilter) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RouteFilter. +func (mg *RouteFilter) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RouteFilter. @@ -5641,9 +5641,9 @@ func (mg *RouteMap) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RouteMap. -func (mg *RouteMap) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RouteMap. +func (mg *RouteMap) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RouteMap. @@ -5679,9 +5679,9 @@ func (mg *RouteMap) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RouteMap. -func (mg *RouteMap) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RouteMap. +func (mg *RouteMap) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RouteMap. @@ -5717,9 +5717,9 @@ func (mg *RouteServer) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RouteServer. -func (mg *RouteServer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RouteServer. +func (mg *RouteServer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RouteServer. @@ -5755,9 +5755,9 @@ func (mg *RouteServer) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RouteServer. -func (mg *RouteServer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RouteServer. +func (mg *RouteServer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RouteServer. @@ -5793,9 +5793,9 @@ func (mg *RouteServerBGPConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RouteServerBGPConnection. -func (mg *RouteServerBGPConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RouteServerBGPConnection. +func (mg *RouteServerBGPConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RouteServerBGPConnection. @@ -5831,9 +5831,9 @@ func (mg *RouteServerBGPConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RouteServerBGPConnection. -func (mg *RouteServerBGPConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RouteServerBGPConnection. +func (mg *RouteServerBGPConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RouteServerBGPConnection. @@ -5869,9 +5869,9 @@ func (mg *RouteTable) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RouteTable. -func (mg *RouteTable) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RouteTable. +func (mg *RouteTable) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RouteTable. @@ -5907,9 +5907,9 @@ func (mg *RouteTable) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RouteTable. -func (mg *RouteTable) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RouteTable. +func (mg *RouteTable) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RouteTable. @@ -5945,9 +5945,9 @@ func (mg *SecurityGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityGroup. -func (mg *SecurityGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityGroup. +func (mg *SecurityGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityGroup. @@ -5983,9 +5983,9 @@ func (mg *SecurityGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityGroup. -func (mg *SecurityGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityGroup. +func (mg *SecurityGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityGroup. @@ -6021,9 +6021,9 @@ func (mg *SecurityRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityRule. -func (mg *SecurityRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityRule. +func (mg *SecurityRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityRule. @@ -6059,9 +6059,9 @@ func (mg *SecurityRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityRule. -func (mg *SecurityRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityRule. +func (mg *SecurityRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityRule. @@ -6097,9 +6097,9 @@ func (mg *Subnet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Subnet. -func (mg *Subnet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Subnet. +func (mg *Subnet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Subnet. @@ -6135,9 +6135,9 @@ func (mg *Subnet) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Subnet. -func (mg *Subnet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Subnet. +func (mg *Subnet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Subnet. @@ -6173,9 +6173,9 @@ func (mg *SubnetNATGatewayAssociation) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubnetNATGatewayAssociation. -func (mg *SubnetNATGatewayAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubnetNATGatewayAssociation. +func (mg *SubnetNATGatewayAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubnetNATGatewayAssociation. @@ -6211,9 +6211,9 @@ func (mg *SubnetNATGatewayAssociation) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubnetNATGatewayAssociation. -func (mg *SubnetNATGatewayAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubnetNATGatewayAssociation. +func (mg *SubnetNATGatewayAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubnetNATGatewayAssociation. @@ -6249,9 +6249,9 @@ func (mg *SubnetNetworkSecurityGroupAssociation) GetDeletionPolicy() xpv1.Deleti return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubnetNetworkSecurityGroupAssociation. -func (mg *SubnetNetworkSecurityGroupAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubnetNetworkSecurityGroupAssociation. +func (mg *SubnetNetworkSecurityGroupAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubnetNetworkSecurityGroupAssociation. @@ -6287,9 +6287,9 @@ func (mg *SubnetNetworkSecurityGroupAssociation) SetDeletionPolicy(r xpv1.Deleti mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubnetNetworkSecurityGroupAssociation. -func (mg *SubnetNetworkSecurityGroupAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubnetNetworkSecurityGroupAssociation. +func (mg *SubnetNetworkSecurityGroupAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubnetNetworkSecurityGroupAssociation. @@ -6325,9 +6325,9 @@ func (mg *SubnetRouteTableAssociation) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubnetRouteTableAssociation. -func (mg *SubnetRouteTableAssociation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubnetRouteTableAssociation. +func (mg *SubnetRouteTableAssociation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubnetRouteTableAssociation. @@ -6363,9 +6363,9 @@ func (mg *SubnetRouteTableAssociation) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubnetRouteTableAssociation. -func (mg *SubnetRouteTableAssociation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubnetRouteTableAssociation. +func (mg *SubnetRouteTableAssociation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubnetRouteTableAssociation. @@ -6401,9 +6401,9 @@ func (mg *SubnetServiceEndpointStoragePolicy) GetDeletionPolicy() xpv1.DeletionP return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubnetServiceEndpointStoragePolicy. -func (mg *SubnetServiceEndpointStoragePolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubnetServiceEndpointStoragePolicy. +func (mg *SubnetServiceEndpointStoragePolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubnetServiceEndpointStoragePolicy. @@ -6439,9 +6439,9 @@ func (mg *SubnetServiceEndpointStoragePolicy) SetDeletionPolicy(r xpv1.DeletionP mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubnetServiceEndpointStoragePolicy. -func (mg *SubnetServiceEndpointStoragePolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubnetServiceEndpointStoragePolicy. +func (mg *SubnetServiceEndpointStoragePolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubnetServiceEndpointStoragePolicy. @@ -6477,9 +6477,9 @@ func (mg *TrafficManagerAzureEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TrafficManagerAzureEndpoint. -func (mg *TrafficManagerAzureEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TrafficManagerAzureEndpoint. +func (mg *TrafficManagerAzureEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TrafficManagerAzureEndpoint. @@ -6515,9 +6515,9 @@ func (mg *TrafficManagerAzureEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TrafficManagerAzureEndpoint. -func (mg *TrafficManagerAzureEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TrafficManagerAzureEndpoint. +func (mg *TrafficManagerAzureEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TrafficManagerAzureEndpoint. @@ -6553,9 +6553,9 @@ func (mg *TrafficManagerExternalEndpoint) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TrafficManagerExternalEndpoint. -func (mg *TrafficManagerExternalEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TrafficManagerExternalEndpoint. +func (mg *TrafficManagerExternalEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TrafficManagerExternalEndpoint. @@ -6591,9 +6591,9 @@ func (mg *TrafficManagerExternalEndpoint) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TrafficManagerExternalEndpoint. -func (mg *TrafficManagerExternalEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TrafficManagerExternalEndpoint. +func (mg *TrafficManagerExternalEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TrafficManagerExternalEndpoint. @@ -6629,9 +6629,9 @@ func (mg *TrafficManagerNestedEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TrafficManagerNestedEndpoint. -func (mg *TrafficManagerNestedEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TrafficManagerNestedEndpoint. +func (mg *TrafficManagerNestedEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TrafficManagerNestedEndpoint. @@ -6667,9 +6667,9 @@ func (mg *TrafficManagerNestedEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TrafficManagerNestedEndpoint. -func (mg *TrafficManagerNestedEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TrafficManagerNestedEndpoint. +func (mg *TrafficManagerNestedEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TrafficManagerNestedEndpoint. @@ -6705,9 +6705,9 @@ func (mg *TrafficManagerProfile) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TrafficManagerProfile. -func (mg *TrafficManagerProfile) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TrafficManagerProfile. +func (mg *TrafficManagerProfile) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TrafficManagerProfile. @@ -6743,9 +6743,9 @@ func (mg *TrafficManagerProfile) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TrafficManagerProfile. -func (mg *TrafficManagerProfile) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TrafficManagerProfile. +func (mg *TrafficManagerProfile) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TrafficManagerProfile. @@ -6781,9 +6781,9 @@ func (mg *VPNGateway) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VPNGateway. -func (mg *VPNGateway) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VPNGateway. +func (mg *VPNGateway) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VPNGateway. @@ -6819,9 +6819,9 @@ func (mg *VPNGateway) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VPNGateway. -func (mg *VPNGateway) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VPNGateway. +func (mg *VPNGateway) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VPNGateway. @@ -6857,9 +6857,9 @@ func (mg *VPNGatewayConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VPNGatewayConnection. -func (mg *VPNGatewayConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VPNGatewayConnection. +func (mg *VPNGatewayConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VPNGatewayConnection. @@ -6895,9 +6895,9 @@ func (mg *VPNGatewayConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VPNGatewayConnection. -func (mg *VPNGatewayConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VPNGatewayConnection. +func (mg *VPNGatewayConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VPNGatewayConnection. @@ -6933,9 +6933,9 @@ func (mg *VPNServerConfiguration) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VPNServerConfiguration. -func (mg *VPNServerConfiguration) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VPNServerConfiguration. +func (mg *VPNServerConfiguration) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VPNServerConfiguration. @@ -6971,9 +6971,9 @@ func (mg *VPNServerConfiguration) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VPNServerConfiguration. -func (mg *VPNServerConfiguration) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VPNServerConfiguration. +func (mg *VPNServerConfiguration) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VPNServerConfiguration. @@ -7009,9 +7009,9 @@ func (mg *VPNServerConfigurationPolicyGroup) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VPNServerConfigurationPolicyGroup. -func (mg *VPNServerConfigurationPolicyGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VPNServerConfigurationPolicyGroup. +func (mg *VPNServerConfigurationPolicyGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VPNServerConfigurationPolicyGroup. @@ -7047,9 +7047,9 @@ func (mg *VPNServerConfigurationPolicyGroup) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VPNServerConfigurationPolicyGroup. -func (mg *VPNServerConfigurationPolicyGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VPNServerConfigurationPolicyGroup. +func (mg *VPNServerConfigurationPolicyGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VPNServerConfigurationPolicyGroup. @@ -7085,9 +7085,9 @@ func (mg *VPNSite) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VPNSite. -func (mg *VPNSite) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VPNSite. +func (mg *VPNSite) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VPNSite. @@ -7123,9 +7123,9 @@ func (mg *VPNSite) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VPNSite. -func (mg *VPNSite) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VPNSite. +func (mg *VPNSite) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VPNSite. @@ -7161,9 +7161,9 @@ func (mg *VirtualHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualHub. -func (mg *VirtualHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualHub. +func (mg *VirtualHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualHub. @@ -7199,9 +7199,9 @@ func (mg *VirtualHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualHub. -func (mg *VirtualHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualHub. +func (mg *VirtualHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualHub. @@ -7237,9 +7237,9 @@ func (mg *VirtualHubConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualHubConnection. -func (mg *VirtualHubConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualHubConnection. +func (mg *VirtualHubConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualHubConnection. @@ -7275,9 +7275,9 @@ func (mg *VirtualHubConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualHubConnection. -func (mg *VirtualHubConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualHubConnection. +func (mg *VirtualHubConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualHubConnection. @@ -7313,9 +7313,9 @@ func (mg *VirtualHubIP) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualHubIP. -func (mg *VirtualHubIP) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualHubIP. +func (mg *VirtualHubIP) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualHubIP. @@ -7351,9 +7351,9 @@ func (mg *VirtualHubIP) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualHubIP. -func (mg *VirtualHubIP) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualHubIP. +func (mg *VirtualHubIP) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualHubIP. @@ -7389,9 +7389,9 @@ func (mg *VirtualHubRouteTable) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualHubRouteTable. -func (mg *VirtualHubRouteTable) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualHubRouteTable. +func (mg *VirtualHubRouteTable) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualHubRouteTable. @@ -7427,9 +7427,9 @@ func (mg *VirtualHubRouteTable) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualHubRouteTable. -func (mg *VirtualHubRouteTable) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualHubRouteTable. +func (mg *VirtualHubRouteTable) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualHubRouteTable. @@ -7465,9 +7465,9 @@ func (mg *VirtualHubRouteTableRoute) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualHubRouteTableRoute. -func (mg *VirtualHubRouteTableRoute) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualHubRouteTableRoute. +func (mg *VirtualHubRouteTableRoute) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualHubRouteTableRoute. @@ -7503,9 +7503,9 @@ func (mg *VirtualHubRouteTableRoute) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualHubRouteTableRoute. -func (mg *VirtualHubRouteTableRoute) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualHubRouteTableRoute. +func (mg *VirtualHubRouteTableRoute) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualHubRouteTableRoute. @@ -7541,9 +7541,9 @@ func (mg *VirtualHubSecurityPartnerProvider) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualHubSecurityPartnerProvider. -func (mg *VirtualHubSecurityPartnerProvider) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualHubSecurityPartnerProvider. +func (mg *VirtualHubSecurityPartnerProvider) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualHubSecurityPartnerProvider. @@ -7579,9 +7579,9 @@ func (mg *VirtualHubSecurityPartnerProvider) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualHubSecurityPartnerProvider. -func (mg *VirtualHubSecurityPartnerProvider) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualHubSecurityPartnerProvider. +func (mg *VirtualHubSecurityPartnerProvider) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualHubSecurityPartnerProvider. @@ -7617,9 +7617,9 @@ func (mg *VirtualNetwork) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualNetwork. -func (mg *VirtualNetwork) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualNetwork. +func (mg *VirtualNetwork) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualNetwork. @@ -7655,9 +7655,9 @@ func (mg *VirtualNetwork) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualNetwork. -func (mg *VirtualNetwork) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualNetwork. +func (mg *VirtualNetwork) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualNetwork. @@ -7693,9 +7693,9 @@ func (mg *VirtualNetworkGateway) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualNetworkGateway. -func (mg *VirtualNetworkGateway) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualNetworkGateway. +func (mg *VirtualNetworkGateway) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualNetworkGateway. @@ -7731,9 +7731,9 @@ func (mg *VirtualNetworkGateway) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualNetworkGateway. -func (mg *VirtualNetworkGateway) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualNetworkGateway. +func (mg *VirtualNetworkGateway) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualNetworkGateway. @@ -7769,9 +7769,9 @@ func (mg *VirtualNetworkGatewayConnection) GetDeletionPolicy() xpv1.DeletionPoli return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualNetworkGatewayConnection. -func (mg *VirtualNetworkGatewayConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualNetworkGatewayConnection. +func (mg *VirtualNetworkGatewayConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualNetworkGatewayConnection. @@ -7807,9 +7807,9 @@ func (mg *VirtualNetworkGatewayConnection) SetDeletionPolicy(r xpv1.DeletionPoli mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualNetworkGatewayConnection. -func (mg *VirtualNetworkGatewayConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualNetworkGatewayConnection. +func (mg *VirtualNetworkGatewayConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualNetworkGatewayConnection. @@ -7845,9 +7845,9 @@ func (mg *VirtualNetworkPeering) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualNetworkPeering. -func (mg *VirtualNetworkPeering) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualNetworkPeering. +func (mg *VirtualNetworkPeering) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualNetworkPeering. @@ -7883,9 +7883,9 @@ func (mg *VirtualNetworkPeering) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualNetworkPeering. -func (mg *VirtualNetworkPeering) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualNetworkPeering. +func (mg *VirtualNetworkPeering) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualNetworkPeering. @@ -7921,9 +7921,9 @@ func (mg *VirtualWAN) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this VirtualWAN. -func (mg *VirtualWAN) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this VirtualWAN. +func (mg *VirtualWAN) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this VirtualWAN. @@ -7959,9 +7959,9 @@ func (mg *VirtualWAN) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this VirtualWAN. -func (mg *VirtualWAN) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this VirtualWAN. +func (mg *VirtualWAN) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this VirtualWAN. @@ -7997,9 +7997,9 @@ func (mg *Watcher) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Watcher. -func (mg *Watcher) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Watcher. +func (mg *Watcher) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Watcher. @@ -8035,9 +8035,9 @@ func (mg *Watcher) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Watcher. -func (mg *Watcher) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Watcher. +func (mg *Watcher) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Watcher. @@ -8073,9 +8073,9 @@ func (mg *WatcherFlowLog) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WatcherFlowLog. -func (mg *WatcherFlowLog) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WatcherFlowLog. +func (mg *WatcherFlowLog) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WatcherFlowLog. @@ -8111,9 +8111,9 @@ func (mg *WatcherFlowLog) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WatcherFlowLog. -func (mg *WatcherFlowLog) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WatcherFlowLog. +func (mg *WatcherFlowLog) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WatcherFlowLog. @@ -8149,9 +8149,9 @@ func (mg *WebApplicationFirewallPolicy) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WebApplicationFirewallPolicy. -func (mg *WebApplicationFirewallPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WebApplicationFirewallPolicy. +func (mg *WebApplicationFirewallPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WebApplicationFirewallPolicy. @@ -8187,9 +8187,9 @@ func (mg *WebApplicationFirewallPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WebApplicationFirewallPolicy. -func (mg *WebApplicationFirewallPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WebApplicationFirewallPolicy. +func (mg *WebApplicationFirewallPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WebApplicationFirewallPolicy. diff --git a/apis/network/v1beta1/zz_generated_terraformed.go b/apis/network/v1beta1/zz_generated_terraformed.go index 63f516488..543f0fc97 100755 --- a/apis/network/v1beta1/zz_generated_terraformed.go +++ b/apis/network/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ApplicationGateway) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationGateway +func (tr *ApplicationGateway) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationGateway using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationGateway) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *ApplicationSecurityGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ApplicationSecurityGroup +func (tr *ApplicationSecurityGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ApplicationSecurityGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ApplicationSecurityGroup) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *DNSARecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DNSARecord +func (tr *DNSARecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DNSARecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DNSARecord) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *DNSAAAARecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DNSAAAARecord +func (tr *DNSAAAARecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DNSAAAARecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DNSAAAARecord) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *DNSCAARecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DNSCAARecord +func (tr *DNSCAARecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DNSCAARecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DNSCAARecord) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *DNSCNAMERecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DNSCNAMERecord +func (tr *DNSCNAMERecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DNSCNAMERecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DNSCNAMERecord) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *DNSMXRecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DNSMXRecord +func (tr *DNSMXRecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DNSMXRecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DNSMXRecord) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *DNSNSRecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DNSNSRecord +func (tr *DNSNSRecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DNSNSRecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DNSNSRecord) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *DNSPTRRecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DNSPTRRecord +func (tr *DNSPTRRecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DNSPTRRecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DNSPTRRecord) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *DNSSRVRecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DNSSRVRecord +func (tr *DNSSRVRecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DNSSRVRecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DNSSRVRecord) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *DNSTXTRecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DNSTXTRecord +func (tr *DNSTXTRecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DNSTXTRecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DNSTXTRecord) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *DNSZone) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DNSZone +func (tr *DNSZone) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DNSZone using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DNSZone) LateInitialize(attrs []byte) (bool, error) { @@ -957,6 +1077,16 @@ func (tr *ExpressRouteCircuit) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ExpressRouteCircuit +func (tr *ExpressRouteCircuit) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ExpressRouteCircuit using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ExpressRouteCircuit) LateInitialize(attrs []byte) (bool, error) { @@ -1031,6 +1161,16 @@ func (tr *ExpressRouteCircuitAuthorization) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ExpressRouteCircuitAuthorization +func (tr *ExpressRouteCircuitAuthorization) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ExpressRouteCircuitAuthorization using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ExpressRouteCircuitAuthorization) LateInitialize(attrs []byte) (bool, error) { @@ -1105,6 +1245,16 @@ func (tr *ExpressRouteCircuitConnection) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ExpressRouteCircuitConnection +func (tr *ExpressRouteCircuitConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ExpressRouteCircuitConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ExpressRouteCircuitConnection) LateInitialize(attrs []byte) (bool, error) { @@ -1179,6 +1329,16 @@ func (tr *ExpressRouteCircuitPeering) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ExpressRouteCircuitPeering +func (tr *ExpressRouteCircuitPeering) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ExpressRouteCircuitPeering using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ExpressRouteCircuitPeering) LateInitialize(attrs []byte) (bool, error) { @@ -1253,6 +1413,16 @@ func (tr *ExpressRouteConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ExpressRouteConnection +func (tr *ExpressRouteConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ExpressRouteConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ExpressRouteConnection) LateInitialize(attrs []byte) (bool, error) { @@ -1327,6 +1497,16 @@ func (tr *ExpressRouteGateway) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ExpressRouteGateway +func (tr *ExpressRouteGateway) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ExpressRouteGateway using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ExpressRouteGateway) LateInitialize(attrs []byte) (bool, error) { @@ -1401,6 +1581,16 @@ func (tr *ExpressRoutePort) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ExpressRoutePort +func (tr *ExpressRoutePort) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ExpressRoutePort using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ExpressRoutePort) LateInitialize(attrs []byte) (bool, error) { @@ -1475,6 +1665,16 @@ func (tr *Firewall) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Firewall +func (tr *Firewall) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Firewall using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Firewall) LateInitialize(attrs []byte) (bool, error) { @@ -1549,6 +1749,16 @@ func (tr *FirewallApplicationRuleCollection) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FirewallApplicationRuleCollection +func (tr *FirewallApplicationRuleCollection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FirewallApplicationRuleCollection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FirewallApplicationRuleCollection) LateInitialize(attrs []byte) (bool, error) { @@ -1623,6 +1833,16 @@ func (tr *FirewallNATRuleCollection) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FirewallNATRuleCollection +func (tr *FirewallNATRuleCollection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FirewallNATRuleCollection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FirewallNATRuleCollection) LateInitialize(attrs []byte) (bool, error) { @@ -1697,6 +1917,16 @@ func (tr *FirewallNetworkRuleCollection) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FirewallNetworkRuleCollection +func (tr *FirewallNetworkRuleCollection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FirewallNetworkRuleCollection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FirewallNetworkRuleCollection) LateInitialize(attrs []byte) (bool, error) { @@ -1771,6 +2001,16 @@ func (tr *FirewallPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FirewallPolicy +func (tr *FirewallPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FirewallPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FirewallPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -1845,6 +2085,16 @@ func (tr *FirewallPolicyRuleCollectionGroup) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FirewallPolicyRuleCollectionGroup +func (tr *FirewallPolicyRuleCollectionGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FirewallPolicyRuleCollectionGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FirewallPolicyRuleCollectionGroup) LateInitialize(attrs []byte) (bool, error) { @@ -1919,6 +2169,16 @@ func (tr *FrontDoor) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontDoor +func (tr *FrontDoor) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontDoor using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontDoor) LateInitialize(attrs []byte) (bool, error) { @@ -1993,6 +2253,16 @@ func (tr *FrontdoorCustomHTTPSConfiguration) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorCustomHTTPSConfiguration +func (tr *FrontdoorCustomHTTPSConfiguration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorCustomHTTPSConfiguration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorCustomHTTPSConfiguration) LateInitialize(attrs []byte) (bool, error) { @@ -2067,6 +2337,16 @@ func (tr *FrontdoorFirewallPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorFirewallPolicy +func (tr *FrontdoorFirewallPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorFirewallPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorFirewallPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -2141,6 +2421,16 @@ func (tr *FrontdoorRulesEngine) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FrontdoorRulesEngine +func (tr *FrontdoorRulesEngine) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FrontdoorRulesEngine using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FrontdoorRulesEngine) LateInitialize(attrs []byte) (bool, error) { @@ -2215,6 +2505,16 @@ func (tr *IPGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IPGroup +func (tr *IPGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IPGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IPGroup) LateInitialize(attrs []byte) (bool, error) { @@ -2289,6 +2589,16 @@ func (tr *LoadBalancer) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LoadBalancer +func (tr *LoadBalancer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LoadBalancer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LoadBalancer) LateInitialize(attrs []byte) (bool, error) { @@ -2363,6 +2673,16 @@ func (tr *LoadBalancerBackendAddressPool) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LoadBalancerBackendAddressPool +func (tr *LoadBalancerBackendAddressPool) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LoadBalancerBackendAddressPool using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LoadBalancerBackendAddressPool) LateInitialize(attrs []byte) (bool, error) { @@ -2437,6 +2757,16 @@ func (tr *LoadBalancerBackendAddressPoolAddress) SetParameters(params map[string return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LoadBalancerBackendAddressPoolAddress +func (tr *LoadBalancerBackendAddressPoolAddress) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LoadBalancerBackendAddressPoolAddress using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LoadBalancerBackendAddressPoolAddress) LateInitialize(attrs []byte) (bool, error) { @@ -2511,6 +2841,16 @@ func (tr *LoadBalancerNatPool) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LoadBalancerNatPool +func (tr *LoadBalancerNatPool) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LoadBalancerNatPool using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LoadBalancerNatPool) LateInitialize(attrs []byte) (bool, error) { @@ -2585,6 +2925,16 @@ func (tr *LoadBalancerNatRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LoadBalancerNatRule +func (tr *LoadBalancerNatRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LoadBalancerNatRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LoadBalancerNatRule) LateInitialize(attrs []byte) (bool, error) { @@ -2659,6 +3009,16 @@ func (tr *LoadBalancerOutboundRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LoadBalancerOutboundRule +func (tr *LoadBalancerOutboundRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LoadBalancerOutboundRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LoadBalancerOutboundRule) LateInitialize(attrs []byte) (bool, error) { @@ -2733,6 +3093,16 @@ func (tr *LoadBalancerProbe) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LoadBalancerProbe +func (tr *LoadBalancerProbe) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LoadBalancerProbe using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LoadBalancerProbe) LateInitialize(attrs []byte) (bool, error) { @@ -2807,6 +3177,16 @@ func (tr *LoadBalancerRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LoadBalancerRule +func (tr *LoadBalancerRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LoadBalancerRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LoadBalancerRule) LateInitialize(attrs []byte) (bool, error) { @@ -2881,6 +3261,16 @@ func (tr *LocalNetworkGateway) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LocalNetworkGateway +func (tr *LocalNetworkGateway) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LocalNetworkGateway using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LocalNetworkGateway) LateInitialize(attrs []byte) (bool, error) { @@ -2955,6 +3345,16 @@ func (tr *NATGateway) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NATGateway +func (tr *NATGateway) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NATGateway using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NATGateway) LateInitialize(attrs []byte) (bool, error) { @@ -3029,6 +3429,16 @@ func (tr *NATGatewayPublicIPAssociation) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NATGatewayPublicIPAssociation +func (tr *NATGatewayPublicIPAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NATGatewayPublicIPAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NATGatewayPublicIPAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -3103,6 +3513,16 @@ func (tr *NATGatewayPublicIPPrefixAssociation) SetParameters(params map[string]a return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NATGatewayPublicIPPrefixAssociation +func (tr *NATGatewayPublicIPPrefixAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NATGatewayPublicIPPrefixAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NATGatewayPublicIPPrefixAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -3177,6 +3597,16 @@ func (tr *ConnectionMonitor) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ConnectionMonitor +func (tr *ConnectionMonitor) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ConnectionMonitor using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ConnectionMonitor) LateInitialize(attrs []byte) (bool, error) { @@ -3251,6 +3681,16 @@ func (tr *DDoSProtectionPlan) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DDoSProtectionPlan +func (tr *DDoSProtectionPlan) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DDoSProtectionPlan using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DDoSProtectionPlan) LateInitialize(attrs []byte) (bool, error) { @@ -3325,6 +3765,16 @@ func (tr *NetworkInterface) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NetworkInterface +func (tr *NetworkInterface) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NetworkInterface using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NetworkInterface) LateInitialize(attrs []byte) (bool, error) { @@ -3399,6 +3849,16 @@ func (tr *NetworkInterfaceApplicationSecurityGroupAssociation) SetParameters(par return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NetworkInterfaceApplicationSecurityGroupAssociation +func (tr *NetworkInterfaceApplicationSecurityGroupAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NetworkInterfaceApplicationSecurityGroupAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NetworkInterfaceApplicationSecurityGroupAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -3473,6 +3933,16 @@ func (tr *NetworkInterfaceBackendAddressPoolAssociation) SetParameters(params ma return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NetworkInterfaceBackendAddressPoolAssociation +func (tr *NetworkInterfaceBackendAddressPoolAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NetworkInterfaceBackendAddressPoolAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NetworkInterfaceBackendAddressPoolAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -3547,6 +4017,16 @@ func (tr *NetworkInterfaceNatRuleAssociation) SetParameters(params map[string]an return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NetworkInterfaceNatRuleAssociation +func (tr *NetworkInterfaceNatRuleAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NetworkInterfaceNatRuleAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NetworkInterfaceNatRuleAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -3621,6 +4101,16 @@ func (tr *NetworkInterfaceSecurityGroupAssociation) SetParameters(params map[str return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NetworkInterfaceSecurityGroupAssociation +func (tr *NetworkInterfaceSecurityGroupAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NetworkInterfaceSecurityGroupAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NetworkInterfaceSecurityGroupAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -3695,6 +4185,16 @@ func (tr *Manager) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Manager +func (tr *Manager) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Manager using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Manager) LateInitialize(attrs []byte) (bool, error) { @@ -3769,6 +4269,16 @@ func (tr *ManagerManagementGroupConnection) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagerManagementGroupConnection +func (tr *ManagerManagementGroupConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagerManagementGroupConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagerManagementGroupConnection) LateInitialize(attrs []byte) (bool, error) { @@ -3843,6 +4353,16 @@ func (tr *ManagerNetworkGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagerNetworkGroup +func (tr *ManagerNetworkGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagerNetworkGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagerNetworkGroup) LateInitialize(attrs []byte) (bool, error) { @@ -3917,6 +4437,16 @@ func (tr *ManagerStaticMember) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagerStaticMember +func (tr *ManagerStaticMember) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagerStaticMember using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagerStaticMember) LateInitialize(attrs []byte) (bool, error) { @@ -3991,6 +4521,16 @@ func (tr *ManagerSubscriptionConnection) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagerSubscriptionConnection +func (tr *ManagerSubscriptionConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagerSubscriptionConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagerSubscriptionConnection) LateInitialize(attrs []byte) (bool, error) { @@ -4065,6 +4605,16 @@ func (tr *PacketCapture) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PacketCapture +func (tr *PacketCapture) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PacketCapture using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PacketCapture) LateInitialize(attrs []byte) (bool, error) { @@ -4139,6 +4689,16 @@ func (tr *Profile) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Profile +func (tr *Profile) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Profile using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Profile) LateInitialize(attrs []byte) (bool, error) { @@ -4213,6 +4773,16 @@ func (tr *SecurityGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityGroup +func (tr *SecurityGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityGroup) LateInitialize(attrs []byte) (bool, error) { @@ -4287,6 +4857,16 @@ func (tr *SecurityRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityRule +func (tr *SecurityRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityRule) LateInitialize(attrs []byte) (bool, error) { @@ -4361,6 +4941,16 @@ func (tr *Watcher) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Watcher +func (tr *Watcher) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Watcher using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Watcher) LateInitialize(attrs []byte) (bool, error) { @@ -4435,6 +5025,16 @@ func (tr *WatcherFlowLog) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WatcherFlowLog +func (tr *WatcherFlowLog) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WatcherFlowLog using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WatcherFlowLog) LateInitialize(attrs []byte) (bool, error) { @@ -4509,6 +5109,16 @@ func (tr *PointToSiteVPNGateway) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PointToSiteVPNGateway +func (tr *PointToSiteVPNGateway) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PointToSiteVPNGateway using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PointToSiteVPNGateway) LateInitialize(attrs []byte) (bool, error) { @@ -4583,6 +5193,16 @@ func (tr *PrivateDNSARecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateDNSARecord +func (tr *PrivateDNSARecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateDNSARecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateDNSARecord) LateInitialize(attrs []byte) (bool, error) { @@ -4657,6 +5277,16 @@ func (tr *PrivateDNSAAAARecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateDNSAAAARecord +func (tr *PrivateDNSAAAARecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateDNSAAAARecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateDNSAAAARecord) LateInitialize(attrs []byte) (bool, error) { @@ -4731,6 +5361,16 @@ func (tr *PrivateDNSCNAMERecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateDNSCNAMERecord +func (tr *PrivateDNSCNAMERecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateDNSCNAMERecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateDNSCNAMERecord) LateInitialize(attrs []byte) (bool, error) { @@ -4805,6 +5445,16 @@ func (tr *PrivateDNSMXRecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateDNSMXRecord +func (tr *PrivateDNSMXRecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateDNSMXRecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateDNSMXRecord) LateInitialize(attrs []byte) (bool, error) { @@ -4879,6 +5529,16 @@ func (tr *PrivateDNSPTRRecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateDNSPTRRecord +func (tr *PrivateDNSPTRRecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateDNSPTRRecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateDNSPTRRecord) LateInitialize(attrs []byte) (bool, error) { @@ -4953,6 +5613,16 @@ func (tr *PrivateDNSResolver) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateDNSResolver +func (tr *PrivateDNSResolver) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateDNSResolver using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateDNSResolver) LateInitialize(attrs []byte) (bool, error) { @@ -5027,6 +5697,16 @@ func (tr *PrivateDNSSRVRecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateDNSSRVRecord +func (tr *PrivateDNSSRVRecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateDNSSRVRecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateDNSSRVRecord) LateInitialize(attrs []byte) (bool, error) { @@ -5101,6 +5781,16 @@ func (tr *PrivateDNSTXTRecord) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateDNSTXTRecord +func (tr *PrivateDNSTXTRecord) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateDNSTXTRecord using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateDNSTXTRecord) LateInitialize(attrs []byte) (bool, error) { @@ -5175,6 +5865,16 @@ func (tr *PrivateDNSZone) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateDNSZone +func (tr *PrivateDNSZone) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateDNSZone using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateDNSZone) LateInitialize(attrs []byte) (bool, error) { @@ -5249,6 +5949,16 @@ func (tr *PrivateDNSZoneVirtualNetworkLink) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateDNSZoneVirtualNetworkLink +func (tr *PrivateDNSZoneVirtualNetworkLink) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateDNSZoneVirtualNetworkLink using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateDNSZoneVirtualNetworkLink) LateInitialize(attrs []byte) (bool, error) { @@ -5320,7 +6030,17 @@ func (tr *PrivateEndpoint) SetParameters(params map[string]any) error { if err != nil { return err } - return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) + return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) +} + +// GetInitParameters of this PrivateEndpoint +func (tr *PrivateEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) } // LateInitialize this PrivateEndpoint using its observed tfState. @@ -5397,6 +6117,16 @@ func (tr *PrivateEndpointApplicationSecurityGroupAssociation) SetParameters(para return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateEndpointApplicationSecurityGroupAssociation +func (tr *PrivateEndpointApplicationSecurityGroupAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateEndpointApplicationSecurityGroupAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateEndpointApplicationSecurityGroupAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -5471,6 +6201,16 @@ func (tr *PrivateLinkService) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateLinkService +func (tr *PrivateLinkService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateLinkService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateLinkService) LateInitialize(attrs []byte) (bool, error) { @@ -5545,6 +6285,16 @@ func (tr *PublicIP) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PublicIP +func (tr *PublicIP) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PublicIP using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PublicIP) LateInitialize(attrs []byte) (bool, error) { @@ -5619,6 +6369,16 @@ func (tr *PublicIPPrefix) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PublicIPPrefix +func (tr *PublicIPPrefix) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PublicIPPrefix using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PublicIPPrefix) LateInitialize(attrs []byte) (bool, error) { @@ -5693,6 +6453,16 @@ func (tr *Route) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Route +func (tr *Route) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Route using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Route) LateInitialize(attrs []byte) (bool, error) { @@ -5767,6 +6537,16 @@ func (tr *RouteFilter) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RouteFilter +func (tr *RouteFilter) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RouteFilter using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RouteFilter) LateInitialize(attrs []byte) (bool, error) { @@ -5841,6 +6621,16 @@ func (tr *RouteMap) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RouteMap +func (tr *RouteMap) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RouteMap using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RouteMap) LateInitialize(attrs []byte) (bool, error) { @@ -5915,6 +6705,16 @@ func (tr *RouteServer) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RouteServer +func (tr *RouteServer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RouteServer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RouteServer) LateInitialize(attrs []byte) (bool, error) { @@ -5989,6 +6789,16 @@ func (tr *RouteServerBGPConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RouteServerBGPConnection +func (tr *RouteServerBGPConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RouteServerBGPConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RouteServerBGPConnection) LateInitialize(attrs []byte) (bool, error) { @@ -6063,6 +6873,16 @@ func (tr *RouteTable) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RouteTable +func (tr *RouteTable) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RouteTable using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RouteTable) LateInitialize(attrs []byte) (bool, error) { @@ -6137,6 +6957,16 @@ func (tr *Subnet) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Subnet +func (tr *Subnet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Subnet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Subnet) LateInitialize(attrs []byte) (bool, error) { @@ -6211,6 +7041,16 @@ func (tr *SubnetNATGatewayAssociation) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubnetNATGatewayAssociation +func (tr *SubnetNATGatewayAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubnetNATGatewayAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubnetNATGatewayAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -6285,6 +7125,16 @@ func (tr *SubnetNetworkSecurityGroupAssociation) SetParameters(params map[string return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubnetNetworkSecurityGroupAssociation +func (tr *SubnetNetworkSecurityGroupAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubnetNetworkSecurityGroupAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubnetNetworkSecurityGroupAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -6359,6 +7209,16 @@ func (tr *SubnetRouteTableAssociation) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubnetRouteTableAssociation +func (tr *SubnetRouteTableAssociation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubnetRouteTableAssociation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubnetRouteTableAssociation) LateInitialize(attrs []byte) (bool, error) { @@ -6433,6 +7293,16 @@ func (tr *SubnetServiceEndpointStoragePolicy) SetParameters(params map[string]an return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubnetServiceEndpointStoragePolicy +func (tr *SubnetServiceEndpointStoragePolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubnetServiceEndpointStoragePolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubnetServiceEndpointStoragePolicy) LateInitialize(attrs []byte) (bool, error) { @@ -6507,6 +7377,16 @@ func (tr *TrafficManagerAzureEndpoint) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TrafficManagerAzureEndpoint +func (tr *TrafficManagerAzureEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TrafficManagerAzureEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TrafficManagerAzureEndpoint) LateInitialize(attrs []byte) (bool, error) { @@ -6581,6 +7461,16 @@ func (tr *TrafficManagerExternalEndpoint) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TrafficManagerExternalEndpoint +func (tr *TrafficManagerExternalEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TrafficManagerExternalEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TrafficManagerExternalEndpoint) LateInitialize(attrs []byte) (bool, error) { @@ -6655,6 +7545,16 @@ func (tr *TrafficManagerNestedEndpoint) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TrafficManagerNestedEndpoint +func (tr *TrafficManagerNestedEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TrafficManagerNestedEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TrafficManagerNestedEndpoint) LateInitialize(attrs []byte) (bool, error) { @@ -6729,6 +7629,16 @@ func (tr *TrafficManagerProfile) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TrafficManagerProfile +func (tr *TrafficManagerProfile) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TrafficManagerProfile using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TrafficManagerProfile) LateInitialize(attrs []byte) (bool, error) { @@ -6803,6 +7713,16 @@ func (tr *VirtualHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualHub +func (tr *VirtualHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualHub) LateInitialize(attrs []byte) (bool, error) { @@ -6877,6 +7797,16 @@ func (tr *VirtualHubConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualHubConnection +func (tr *VirtualHubConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualHubConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualHubConnection) LateInitialize(attrs []byte) (bool, error) { @@ -6951,6 +7881,16 @@ func (tr *VirtualHubIP) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualHubIP +func (tr *VirtualHubIP) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualHubIP using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualHubIP) LateInitialize(attrs []byte) (bool, error) { @@ -7025,6 +7965,16 @@ func (tr *VirtualHubRouteTable) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualHubRouteTable +func (tr *VirtualHubRouteTable) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualHubRouteTable using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualHubRouteTable) LateInitialize(attrs []byte) (bool, error) { @@ -7099,6 +8049,16 @@ func (tr *VirtualHubRouteTableRoute) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualHubRouteTableRoute +func (tr *VirtualHubRouteTableRoute) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualHubRouteTableRoute using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualHubRouteTableRoute) LateInitialize(attrs []byte) (bool, error) { @@ -7173,6 +8133,16 @@ func (tr *VirtualHubSecurityPartnerProvider) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualHubSecurityPartnerProvider +func (tr *VirtualHubSecurityPartnerProvider) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualHubSecurityPartnerProvider using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualHubSecurityPartnerProvider) LateInitialize(attrs []byte) (bool, error) { @@ -7247,6 +8217,16 @@ func (tr *VirtualNetwork) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualNetwork +func (tr *VirtualNetwork) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualNetwork using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualNetwork) LateInitialize(attrs []byte) (bool, error) { @@ -7322,6 +8302,16 @@ func (tr *VirtualNetworkGateway) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualNetworkGateway +func (tr *VirtualNetworkGateway) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualNetworkGateway using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualNetworkGateway) LateInitialize(attrs []byte) (bool, error) { @@ -7396,6 +8386,16 @@ func (tr *VirtualNetworkGatewayConnection) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualNetworkGatewayConnection +func (tr *VirtualNetworkGatewayConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualNetworkGatewayConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualNetworkGatewayConnection) LateInitialize(attrs []byte) (bool, error) { @@ -7470,6 +8470,16 @@ func (tr *VirtualNetworkPeering) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualNetworkPeering +func (tr *VirtualNetworkPeering) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualNetworkPeering using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualNetworkPeering) LateInitialize(attrs []byte) (bool, error) { @@ -7544,6 +8554,16 @@ func (tr *VirtualWAN) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VirtualWAN +func (tr *VirtualWAN) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VirtualWAN using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VirtualWAN) LateInitialize(attrs []byte) (bool, error) { @@ -7618,6 +8638,16 @@ func (tr *VPNGateway) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VPNGateway +func (tr *VPNGateway) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VPNGateway using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VPNGateway) LateInitialize(attrs []byte) (bool, error) { @@ -7693,6 +8723,16 @@ func (tr *VPNGatewayConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VPNGatewayConnection +func (tr *VPNGatewayConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VPNGatewayConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VPNGatewayConnection) LateInitialize(attrs []byte) (bool, error) { @@ -7767,6 +8807,16 @@ func (tr *VPNServerConfiguration) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VPNServerConfiguration +func (tr *VPNServerConfiguration) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VPNServerConfiguration using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VPNServerConfiguration) LateInitialize(attrs []byte) (bool, error) { @@ -7841,6 +8891,16 @@ func (tr *VPNServerConfigurationPolicyGroup) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VPNServerConfigurationPolicyGroup +func (tr *VPNServerConfigurationPolicyGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VPNServerConfigurationPolicyGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VPNServerConfigurationPolicyGroup) LateInitialize(attrs []byte) (bool, error) { @@ -7915,6 +8975,16 @@ func (tr *VPNSite) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this VPNSite +func (tr *VPNSite) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this VPNSite using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *VPNSite) LateInitialize(attrs []byte) (bool, error) { @@ -7989,6 +9059,16 @@ func (tr *WebApplicationFirewallPolicy) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WebApplicationFirewallPolicy +func (tr *WebApplicationFirewallPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WebApplicationFirewallPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WebApplicationFirewallPolicy) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/network/v1beta1/zz_ipgroup_types.go b/apis/network/v1beta1/zz_ipgroup_types.go index 873e28d78..17dc7c175 100755 --- a/apis/network/v1beta1/zz_ipgroup_types.go +++ b/apis/network/v1beta1/zz_ipgroup_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IPGroupInitParameters struct { + + // A list of CIDRs or IP addresses. + Cidrs []*string `json:"cidrs,omitempty" tf:"cidrs,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type IPGroupObservation struct { // A list of CIDRs or IP addresses. @@ -69,6 +81,18 @@ type IPGroupParameters struct { type IPGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IPGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IPGroupInitParameters `json:"initProvider,omitempty"` } // IPGroupStatus defines the observed state of IPGroup. @@ -89,7 +113,7 @@ type IPGroupStatus struct { type IPGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec IPGroupSpec `json:"spec"` Status IPGroupStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancer_types.go b/apis/network/v1beta1/zz_loadbalancer_types.go index d376e4d16..1df03bc15 100755 --- a/apis/network/v1beta1/zz_loadbalancer_types.go +++ b/apis/network/v1beta1/zz_loadbalancer_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LoadBalancerFrontendIPConfigurationInitParameters struct { + + // The Frontend IP Configuration ID of a Gateway SKU Load Balancer. + GatewayLoadBalancerFrontendIPConfigurationID *string `json:"gatewayLoadBalancerFrontendIpConfigurationId,omitempty" tf:"gateway_load_balancer_frontend_ip_configuration_id,omitempty"` + + // Specifies the name of the frontend IP configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Private IP Address to assign to the Load Balancer. The last one and first four IPs in any range are reserved and cannot be manually assigned. + PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` + + // The allocation method for the Private IP Address used by this Load Balancer. Possible values as Dynamic and Static. + PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` + + // The version of IP that the Private IP Address is. Possible values are IPv4 or IPv6. + PrivateIPAddressVersion *string `json:"privateIpAddressVersion,omitempty" tf:"private_ip_address_version,omitempty"` + + // The ID of a Public IP Prefix which should be associated with the Load Balancer. Public IP Prefix can only be used with outbound rules. + PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"` + + // Specifies a list of Availability Zones in which the IP Address for this Load Balancer should be located. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type LoadBalancerFrontendIPConfigurationObservation struct { // The Frontend IP Configuration ID of a Gateway SKU Load Balancer. @@ -62,8 +86,8 @@ type LoadBalancerFrontendIPConfigurationParameters struct { GatewayLoadBalancerFrontendIPConfigurationID *string `json:"gatewayLoadBalancerFrontendIpConfigurationId,omitempty" tf:"gateway_load_balancer_frontend_ip_configuration_id,omitempty"` // Specifies the name of the frontend IP configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Private IP Address to assign to the Load Balancer. The last one and first four IPs in any range are reserved and cannot be manually assigned. // +kubebuilder:validation:Optional @@ -114,6 +138,27 @@ type LoadBalancerFrontendIPConfigurationParameters struct { Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } +type LoadBalancerInitParameters struct { + + // Specifies the Edge Zone within the Azure Region where this Load Balancer should exist. Changing this forces a new Load Balancer to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // One or multiple frontend_ip_configuration blocks as documented below. + FrontendIPConfiguration []LoadBalancerFrontendIPConfigurationInitParameters `json:"frontendIpConfiguration,omitempty" tf:"frontend_ip_configuration,omitempty"` + + // Specifies the supported Azure Region where the Load Balancer should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The SKU of the Azure Load Balancer. Accepted values are Basic, Standard and Gateway. Defaults to Basic. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // sku_tier - The SKU tier of this Load Balancer. Possible values are Global and Regional. Defaults to Regional. Changing this forces a new resource to be created. + SkuTier *string `json:"skuTier,omitempty" tf:"sku_tier,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type LoadBalancerObservation struct { // Specifies the Edge Zone within the Azure Region where this Load Balancer should exist. Changing this forces a new Load Balancer to be created. @@ -191,6 +236,18 @@ type LoadBalancerParameters struct { type LoadBalancerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LoadBalancerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LoadBalancerInitParameters `json:"initProvider,omitempty"` } // LoadBalancerStatus defines the observed state of LoadBalancer. @@ -211,7 +268,7 @@ type LoadBalancerStatus struct { type LoadBalancer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec LoadBalancerSpec `json:"spec"` Status LoadBalancerStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancerbackendaddresspool_types.go b/apis/network/v1beta1/zz_loadbalancerbackendaddresspool_types.go index b2a2cb5ef..d6ff051b9 100755 --- a/apis/network/v1beta1/zz_loadbalancerbackendaddresspool_types.go +++ b/apis/network/v1beta1/zz_loadbalancerbackendaddresspool_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LoadBalancerBackendAddressPoolInitParameters struct { + + // One or more tunnel_interface blocks as defined below. + TunnelInterface []TunnelInterfaceInitParameters `json:"tunnelInterface,omitempty" tf:"tunnel_interface,omitempty"` + + // The ID of the Virtual Network within which the Backend Address Pool should exist. + VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` +} + type LoadBalancerBackendAddressPoolObservation struct { // The Backend IP Configurations associated with this Backend Address Pool. @@ -65,6 +74,21 @@ type LoadBalancerBackendAddressPoolParameters struct { VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } +type TunnelInterfaceInitParameters struct { + + // The unique identifier of this Gateway Lodbalancer Tunnel Interface. + Identifier *float64 `json:"identifier,omitempty" tf:"identifier,omitempty"` + + // The port number that this Gateway Lodbalancer Tunnel Interface listens to. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // The protocol used for this Gateway Lodbalancer Tunnel Interface. Possible values are None, Native and VXLAN. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // The traffic type of this Gateway Lodbalancer Tunnel Interface. Possible values are None, Internal and External. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type TunnelInterfaceObservation struct { // The unique identifier of this Gateway Lodbalancer Tunnel Interface. @@ -83,26 +107,38 @@ type TunnelInterfaceObservation struct { type TunnelInterfaceParameters struct { // The unique identifier of this Gateway Lodbalancer Tunnel Interface. - // +kubebuilder:validation:Required - Identifier *float64 `json:"identifier" tf:"identifier,omitempty"` + // +kubebuilder:validation:Optional + Identifier *float64 `json:"identifier,omitempty" tf:"identifier,omitempty"` // The port number that this Gateway Lodbalancer Tunnel Interface listens to. - // +kubebuilder:validation:Required - Port *float64 `json:"port" tf:"port,omitempty"` + // +kubebuilder:validation:Optional + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The protocol used for this Gateway Lodbalancer Tunnel Interface. Possible values are None, Native and VXLAN. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The traffic type of this Gateway Lodbalancer Tunnel Interface. Possible values are None, Internal and External. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // LoadBalancerBackendAddressPoolSpec defines the desired state of LoadBalancerBackendAddressPool type LoadBalancerBackendAddressPoolSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LoadBalancerBackendAddressPoolParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LoadBalancerBackendAddressPoolInitParameters `json:"initProvider,omitempty"` } // LoadBalancerBackendAddressPoolStatus defines the observed state of LoadBalancerBackendAddressPool. diff --git a/apis/network/v1beta1/zz_loadbalancerbackendaddresspooladdress_types.go b/apis/network/v1beta1/zz_loadbalancerbackendaddresspooladdress_types.go index 11cb51415..fadf9c0f9 100755 --- a/apis/network/v1beta1/zz_loadbalancerbackendaddresspooladdress_types.go +++ b/apis/network/v1beta1/zz_loadbalancerbackendaddresspooladdress_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type InboundNATRulePortMappingInitParameters struct { +} + type InboundNATRulePortMappingObservation struct { // The Backend Port of the Load Balancing Inbound NAT Rules associated with this Backend Address Pool Address. @@ -28,6 +31,16 @@ type InboundNATRulePortMappingObservation struct { type InboundNATRulePortMappingParameters struct { } +type LoadBalancerBackendAddressPoolAddressInitParameters struct { + + // The ip config ID of the regional load balancer that's added to the global load balancer's backend address pool. + // For global load balancer, user needs to specify the `backend_address_ip_configuration_id` of the added regional load balancers + BackendAddressIPConfigurationID *string `json:"backendAddressIpConfigurationId,omitempty" tf:"backend_address_ip_configuration_id,omitempty"` + + // The Static IP Address which should be allocated to this Backend Address Pool. + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` +} + type LoadBalancerBackendAddressPoolAddressObservation struct { // The ip config ID of the regional load balancer that's added to the global load balancer's backend address pool. @@ -96,6 +109,18 @@ type LoadBalancerBackendAddressPoolAddressParameters struct { type LoadBalancerBackendAddressPoolAddressSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LoadBalancerBackendAddressPoolAddressParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LoadBalancerBackendAddressPoolAddressInitParameters `json:"initProvider,omitempty"` } // LoadBalancerBackendAddressPoolAddressStatus defines the observed state of LoadBalancerBackendAddressPoolAddress. diff --git a/apis/network/v1beta1/zz_loadbalancernatpool_types.go b/apis/network/v1beta1/zz_loadbalancernatpool_types.go index 7a95a8fe5..3564d74b7 100755 --- a/apis/network/v1beta1/zz_loadbalancernatpool_types.go +++ b/apis/network/v1beta1/zz_loadbalancernatpool_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LoadBalancerNatPoolInitParameters struct { + + // The port used for the internal endpoint. Possible values range between 1 and 65535, inclusive. + BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` + + // Are the floating IPs enabled for this Load Balancer Rule? A floating IP is reassigned to a secondary server in case the primary server fails. Required to configure a SQL AlwaysOn Availability Group. + FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"` + + // The name of the frontend IP configuration exposing this rule. + FrontendIPConfigurationName *string `json:"frontendIpConfigurationName,omitempty" tf:"frontend_ip_configuration_name,omitempty"` + + // The last port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive. + FrontendPortEnd *float64 `json:"frontendPortEnd,omitempty" tf:"frontend_port_end,omitempty"` + + // The first port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive. + FrontendPortStart *float64 `json:"frontendPortStart,omitempty" tf:"frontend_port_start,omitempty"` + + // Specifies the idle timeout in minutes for TCP connections. Valid values are between 4 and 30. Defaults to 4. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // The transport protocol for the external endpoint. Possible values are All, Tcp and Udp. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // Is TCP Reset enabled for this Load Balancer Rule? + TCPResetEnabled *bool `json:"tcpResetEnabled,omitempty" tf:"tcp_reset_enabled,omitempty"` +} + type LoadBalancerNatPoolObservation struct { // The port used for the internal endpoint. Possible values range between 1 and 65535, inclusive. @@ -118,6 +145,18 @@ type LoadBalancerNatPoolParameters struct { type LoadBalancerNatPoolSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LoadBalancerNatPoolParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LoadBalancerNatPoolInitParameters `json:"initProvider,omitempty"` } // LoadBalancerNatPoolStatus defines the observed state of LoadBalancerNatPool. @@ -138,11 +177,11 @@ type LoadBalancerNatPoolStatus struct { type LoadBalancerNatPool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPort)",message="backendPort is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendIpConfigurationName)",message="frontendIpConfigurationName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendPortEnd)",message="frontendPortEnd is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendPortStart)",message="frontendPortStart is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol)",message="protocol is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backendPort) || has(self.initProvider.backendPort)",message="backendPort is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frontendIpConfigurationName) || has(self.initProvider.frontendIpConfigurationName)",message="frontendIpConfigurationName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frontendPortEnd) || has(self.initProvider.frontendPortEnd)",message="frontendPortEnd is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frontendPortStart) || has(self.initProvider.frontendPortStart)",message="frontendPortStart is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.protocol) || has(self.initProvider.protocol)",message="protocol is a required parameter" Spec LoadBalancerNatPoolSpec `json:"spec"` Status LoadBalancerNatPoolStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancernatrule_types.go b/apis/network/v1beta1/zz_loadbalancernatrule_types.go index 5c1b85156..ccc7f11cd 100755 --- a/apis/network/v1beta1/zz_loadbalancernatrule_types.go +++ b/apis/network/v1beta1/zz_loadbalancernatrule_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LoadBalancerNatRuleInitParameters struct { + + // The port used for internal connections on the endpoint. Possible values range between 1 and 65535, inclusive. + BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` + + // Are the Floating IPs enabled for this Load Balancer Rule? A "floating” IP is reassigned to a secondary server in case the primary server fails. Required to configure a SQL AlwaysOn Availability Group. Defaults to false. + EnableFloatingIP *bool `json:"enableFloatingIp,omitempty" tf:"enable_floating_ip,omitempty"` + + // Is TCP Reset enabled for this Load Balancer Rule? + EnableTCPReset *bool `json:"enableTcpReset,omitempty" tf:"enable_tcp_reset,omitempty"` + + // The name of the frontend IP configuration exposing this rule. + FrontendIPConfigurationName *string `json:"frontendIpConfigurationName,omitempty" tf:"frontend_ip_configuration_name,omitempty"` + + // The port for the external endpoint. Port numbers for each Rule must be unique within the Load Balancer. Possible values range between 1 and 65534, inclusive. + FrontendPort *float64 `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"` + + // The port range end for the external endpoint. This property is used together with BackendAddressPool and FrontendPortRangeStart. Individual inbound NAT rule port mappings will be created for each backend address from BackendAddressPool. Acceptable values range from 1 to 65534, inclusive. + FrontendPortEnd *float64 `json:"frontendPortEnd,omitempty" tf:"frontend_port_end,omitempty"` + + // The port range start for the external endpoint. This property is used together with BackendAddressPool and FrontendPortRangeEnd. Individual inbound NAT rule port mappings will be created for each backend address from BackendAddressPool. Acceptable values range from 1 to 65534, inclusive. + FrontendPortStart *float64 `json:"frontendPortStart,omitempty" tf:"frontend_port_start,omitempty"` + + // Specifies the idle timeout in minutes for TCP connections. Valid values are between 4 and 30 minutes. Defaults to 4 minutes. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // The transport protocol for the external endpoint. Possible values are Udp, Tcp or All. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` +} + type LoadBalancerNatRuleObservation struct { // Specifies a reference to backendAddressPool resource. @@ -145,6 +175,18 @@ type LoadBalancerNatRuleParameters struct { type LoadBalancerNatRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LoadBalancerNatRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LoadBalancerNatRuleInitParameters `json:"initProvider,omitempty"` } // LoadBalancerNatRuleStatus defines the observed state of LoadBalancerNatRule. @@ -165,9 +207,9 @@ type LoadBalancerNatRuleStatus struct { type LoadBalancerNatRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPort)",message="backendPort is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendIpConfigurationName)",message="frontendIpConfigurationName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol)",message="protocol is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backendPort) || has(self.initProvider.backendPort)",message="backendPort is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frontendIpConfigurationName) || has(self.initProvider.frontendIpConfigurationName)",message="frontendIpConfigurationName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.protocol) || has(self.initProvider.protocol)",message="protocol is a required parameter" Spec LoadBalancerNatRuleSpec `json:"spec"` Status LoadBalancerNatRuleStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalanceroutboundrule_types.go b/apis/network/v1beta1/zz_loadbalanceroutboundrule_types.go index 96f2b044d..2dfd93926 100755 --- a/apis/network/v1beta1/zz_loadbalanceroutboundrule_types.go +++ b/apis/network/v1beta1/zz_loadbalanceroutboundrule_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LoadBalancerOutboundRuleFrontendIPConfigurationInitParameters struct { + + // The name of the Frontend IP Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type LoadBalancerOutboundRuleFrontendIPConfigurationObservation struct { // The ID of the Load Balancer Outbound Rule. @@ -25,8 +31,26 @@ type LoadBalancerOutboundRuleFrontendIPConfigurationObservation struct { type LoadBalancerOutboundRuleFrontendIPConfigurationParameters struct { // The name of the Frontend IP Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type LoadBalancerOutboundRuleInitParameters struct { + + // The number of outbound ports to be used for NAT. Defaults to 1024. + AllocatedOutboundPorts *float64 `json:"allocatedOutboundPorts,omitempty" tf:"allocated_outbound_ports,omitempty"` + + // Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP. + EnableTCPReset *bool `json:"enableTcpReset,omitempty" tf:"enable_tcp_reset,omitempty"` + + // One or more frontend_ip_configuration blocks as defined below. + FrontendIPConfiguration []LoadBalancerOutboundRuleFrontendIPConfigurationInitParameters `json:"frontendIpConfiguration,omitempty" tf:"frontend_ip_configuration,omitempty"` + + // The timeout for the TCP idle connection Defaults to 4. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // The transport protocol for the external endpoint. Possible values are Udp, Tcp or All. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } type LoadBalancerOutboundRuleObservation struct { @@ -111,6 +135,18 @@ type LoadBalancerOutboundRuleParameters struct { type LoadBalancerOutboundRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LoadBalancerOutboundRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LoadBalancerOutboundRuleInitParameters `json:"initProvider,omitempty"` } // LoadBalancerOutboundRuleStatus defines the observed state of LoadBalancerOutboundRule. @@ -131,7 +167,7 @@ type LoadBalancerOutboundRuleStatus struct { type LoadBalancerOutboundRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol)",message="protocol is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.protocol) || has(self.initProvider.protocol)",message="protocol is a required parameter" Spec LoadBalancerOutboundRuleSpec `json:"spec"` Status LoadBalancerOutboundRuleStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancerprobe_types.go b/apis/network/v1beta1/zz_loadbalancerprobe_types.go index 14bb25dd7..410fed7c9 100755 --- a/apis/network/v1beta1/zz_loadbalancerprobe_types.go +++ b/apis/network/v1beta1/zz_loadbalancerprobe_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LoadBalancerProbeInitParameters struct { + + // The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5. + IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` + + // The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful. + NumberOfProbes *float64 `json:"numberOfProbes,omitempty" tf:"number_of_probes,omitempty"` + + // Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // The number of consecutive successful or failed probes that allow or deny traffic to this endpoint. Possible values range from 1 to 100. The default value is 1. + ProbeThreshold *float64 `json:"probeThreshold,omitempty" tf:"probe_threshold,omitempty"` + + // Specifies the protocol of the end point. Possible values are Http, Https or Tcp. If TCP is specified, a received ACK is required for the probe to be successful. If HTTP is specified, a 200 OK response from the specified URI is required for the probe to be successful. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // The URI used for requesting health status from the backend endpoint. Required if protocol is set to Http or Https. Otherwise, it is not allowed. + RequestPath *string `json:"requestPath,omitempty" tf:"request_path,omitempty"` +} + type LoadBalancerProbeObservation struct { // The ID of the Load Balancer Probe. @@ -87,6 +108,18 @@ type LoadBalancerProbeParameters struct { type LoadBalancerProbeSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LoadBalancerProbeParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LoadBalancerProbeInitParameters `json:"initProvider,omitempty"` } // LoadBalancerProbeStatus defines the observed state of LoadBalancerProbe. @@ -107,7 +140,7 @@ type LoadBalancerProbeStatus struct { type LoadBalancerProbe struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.port)",message="port is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.port) || has(self.initProvider.port)",message="port is a required parameter" Spec LoadBalancerProbeSpec `json:"spec"` Status LoadBalancerProbeStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancerrule_types.go b/apis/network/v1beta1/zz_loadbalancerrule_types.go index aeaa9e14a..1cd819625 100755 --- a/apis/network/v1beta1/zz_loadbalancerrule_types.go +++ b/apis/network/v1beta1/zz_loadbalancerrule_types.go @@ -13,6 +13,42 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LoadBalancerRuleInitParameters struct { + + // A list of reference to a Backend Address Pool over which this Load Balancing Rule operates. + BackendAddressPoolIds []*string `json:"backendAddressPoolIds,omitempty" tf:"backend_address_pool_ids,omitempty"` + + // The port used for internal connections on the endpoint. Possible values range between 0 and 65535, inclusive. + BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` + + // Is snat enabled for this Load Balancer Rule? Default false. + DisableOutboundSnat *bool `json:"disableOutboundSnat,omitempty" tf:"disable_outbound_snat,omitempty"` + + // Are the Floating IPs enabled for this Load Balncer Rule? A "floating” IP is reassigned to a secondary server in case the primary server fails. Required to configure a SQL AlwaysOn Availability Group. Defaults to false. + EnableFloatingIP *bool `json:"enableFloatingIp,omitempty" tf:"enable_floating_ip,omitempty"` + + // Is TCP Reset enabled for this Load Balancer Rule? + EnableTCPReset *bool `json:"enableTcpReset,omitempty" tf:"enable_tcp_reset,omitempty"` + + // The name of the frontend IP configuration to which the rule is associated. + FrontendIPConfigurationName *string `json:"frontendIpConfigurationName,omitempty" tf:"frontend_ip_configuration_name,omitempty"` + + // The port for the external endpoint. Port numbers for each Rule must be unique within the Load Balancer. Possible values range between 0 and 65534, inclusive. + FrontendPort *float64 `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"` + + // Specifies the idle timeout in minutes for TCP connections. Valid values are between 4 and 30 minutes. Defaults to 4 minutes. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // Specifies the load balancing distribution type to be used by the Load Balancer. Possible values are: Default – The load balancer is configured to use a 5 tuple hash to map traffic to available servers. SourceIP – The load balancer is configured to use a 2 tuple hash to map traffic to available servers. SourceIPProtocol – The load balancer is configured to use a 3 tuple hash to map traffic to available servers. Also known as Session Persistence, where the options are called None, Client IP and Client IP and Protocol respectively. + LoadDistribution *string `json:"loadDistribution,omitempty" tf:"load_distribution,omitempty"` + + // A reference to a Probe used by this Load Balancing Rule. + ProbeID *string `json:"probeId,omitempty" tf:"probe_id,omitempty"` + + // The transport protocol for the external endpoint. Possible values are Tcp, Udp or All. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` +} + type LoadBalancerRuleObservation struct { // A list of reference to a Backend Address Pool over which this Load Balancing Rule operates. @@ -123,6 +159,18 @@ type LoadBalancerRuleParameters struct { type LoadBalancerRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LoadBalancerRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LoadBalancerRuleInitParameters `json:"initProvider,omitempty"` } // LoadBalancerRuleStatus defines the observed state of LoadBalancerRule. @@ -143,10 +191,10 @@ type LoadBalancerRuleStatus struct { type LoadBalancerRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPort)",message="backendPort is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendIpConfigurationName)",message="frontendIpConfigurationName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendPort)",message="frontendPort is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol)",message="protocol is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backendPort) || has(self.initProvider.backendPort)",message="backendPort is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frontendIpConfigurationName) || has(self.initProvider.frontendIpConfigurationName)",message="frontendIpConfigurationName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.frontendPort) || has(self.initProvider.frontendPort)",message="frontendPort is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.protocol) || has(self.initProvider.protocol)",message="protocol is a required parameter" Spec LoadBalancerRuleSpec `json:"spec"` Status LoadBalancerRuleStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_localnetworkgateway_types.go b/apis/network/v1beta1/zz_localnetworkgateway_types.go index 1559fb8e3..17e693d9a 100755 --- a/apis/network/v1beta1/zz_localnetworkgateway_types.go +++ b/apis/network/v1beta1/zz_localnetworkgateway_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BGPSettingsInitParameters struct { + + // The BGP speaker's ASN. + Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` + + // The BGP peering address and BGP identifier of this BGP speaker. + BGPPeeringAddress *string `json:"bgpPeeringAddress,omitempty" tf:"bgp_peering_address,omitempty"` + + // The weight added to routes learned from this BGP speaker. + PeerWeight *float64 `json:"peerWeight,omitempty" tf:"peer_weight,omitempty"` +} + type BGPSettingsObservation struct { // The BGP speaker's ASN. @@ -28,18 +40,39 @@ type BGPSettingsObservation struct { type BGPSettingsParameters struct { // The BGP speaker's ASN. - // +kubebuilder:validation:Required - Asn *float64 `json:"asn" tf:"asn,omitempty"` + // +kubebuilder:validation:Optional + Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` // The BGP peering address and BGP identifier of this BGP speaker. - // +kubebuilder:validation:Required - BGPPeeringAddress *string `json:"bgpPeeringAddress" tf:"bgp_peering_address,omitempty"` + // +kubebuilder:validation:Optional + BGPPeeringAddress *string `json:"bgpPeeringAddress,omitempty" tf:"bgp_peering_address,omitempty"` // The weight added to routes learned from this BGP speaker. // +kubebuilder:validation:Optional PeerWeight *float64 `json:"peerWeight,omitempty" tf:"peer_weight,omitempty"` } +type LocalNetworkGatewayInitParameters struct { + + // The list of string CIDRs representing the address spaces the gateway exposes. + AddressSpace []*string `json:"addressSpace,omitempty" tf:"address_space,omitempty"` + + // A bgp_settings block as defined below containing the Local Network Gateway's BGP speaker settings. + BGPSettings []BGPSettingsInitParameters `json:"bgpSettings,omitempty" tf:"bgp_settings,omitempty"` + + // The gateway IP address to connect with. + GatewayAddress *string `json:"gatewayAddress,omitempty" tf:"gateway_address,omitempty"` + + // The gateway FQDN to connect with. + GatewayFqdn *string `json:"gatewayFqdn,omitempty" tf:"gateway_fqdn,omitempty"` + + // The location/region where the local network gateway is created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type LocalNetworkGatewayObservation struct { // The list of string CIDRs representing the address spaces the gateway exposes. @@ -111,6 +144,18 @@ type LocalNetworkGatewayParameters struct { type LocalNetworkGatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider LocalNetworkGatewayParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LocalNetworkGatewayInitParameters `json:"initProvider,omitempty"` } // LocalNetworkGatewayStatus defines the observed state of LocalNetworkGateway. @@ -131,7 +176,7 @@ type LocalNetworkGatewayStatus struct { type LocalNetworkGateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec LocalNetworkGatewaySpec `json:"spec"` Status LocalNetworkGatewayStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_manager_types.go b/apis/network/v1beta1/zz_manager_types.go index 75124a36c..9ca6efa43 100755 --- a/apis/network/v1beta1/zz_manager_types.go +++ b/apis/network/v1beta1/zz_manager_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CrossTenantScopesInitParameters struct { +} + type CrossTenantScopesObservation struct { // List of management groups. @@ -28,6 +31,24 @@ type CrossTenantScopesObservation struct { type CrossTenantScopesParameters struct { } +type ManagerInitParameters struct { + + // A description of the network manager. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies the Azure Region where the Network Managers should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A scope block as defined below. + Scope []ScopeInitParameters `json:"scope,omitempty" tf:"scope,omitempty"` + + // A list of configuration deployment type. Possible values are Connectivity and SecurityAdmin, corresponds to if Connectivity Configuration and Security Admin Configuration is allowed for the Network Manager. + ScopeAccesses []*string `json:"scopeAccesses,omitempty" tf:"scope_accesses,omitempty"` + + // A mapping of tags which should be assigned to the Network Managers. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ManagerObservation struct { // A cross_tenant_scopes block as defined below. @@ -91,6 +112,15 @@ type ManagerParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type ScopeInitParameters struct { + + // A list of management group IDs. + ManagementGroupIds []*string `json:"managementGroupIds,omitempty" tf:"management_group_ids,omitempty"` + + // A list of subscription IDs. + SubscriptionIds []*string `json:"subscriptionIds,omitempty" tf:"subscription_ids,omitempty"` +} + type ScopeObservation struct { // A list of management group IDs. @@ -115,6 +145,18 @@ type ScopeParameters struct { type ManagerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagerInitParameters `json:"initProvider,omitempty"` } // ManagerStatus defines the observed state of Manager. @@ -135,9 +177,9 @@ type ManagerStatus struct { type Manager struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope)",message="scope is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scopeAccesses)",message="scopeAccesses is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scope) || has(self.initProvider.scope)",message="scope is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scopeAccesses) || has(self.initProvider.scopeAccesses)",message="scopeAccesses is a required parameter" Spec ManagerSpec `json:"spec"` Status ManagerStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_managermanagementgroupconnection_types.go b/apis/network/v1beta1/zz_managermanagementgroupconnection_types.go index 5536d1e71..d929757ad 100755 --- a/apis/network/v1beta1/zz_managermanagementgroupconnection_types.go +++ b/apis/network/v1beta1/zz_managermanagementgroupconnection_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagerManagementGroupConnectionInitParameters struct { + + // A description of the Network Manager Management Group Connection. + Description *string `json:"description,omitempty" tf:"description,omitempty"` +} + type ManagerManagementGroupConnectionObservation struct { // The Connection state of the Network Manager Management Group Connection. @@ -70,6 +76,18 @@ type ManagerManagementGroupConnectionParameters struct { type ManagerManagementGroupConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagerManagementGroupConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagerManagementGroupConnectionInitParameters `json:"initProvider,omitempty"` } // ManagerManagementGroupConnectionStatus defines the observed state of ManagerManagementGroupConnection. diff --git a/apis/network/v1beta1/zz_managernetworkgroup_types.go b/apis/network/v1beta1/zz_managernetworkgroup_types.go index 79481806f..efde5e7d5 100755 --- a/apis/network/v1beta1/zz_managernetworkgroup_types.go +++ b/apis/network/v1beta1/zz_managernetworkgroup_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagerNetworkGroupInitParameters struct { + + // A description of the Network Manager Network Group. + Description *string `json:"description,omitempty" tf:"description,omitempty"` +} + type ManagerNetworkGroupObservation struct { // A description of the Network Manager Network Group. @@ -50,6 +56,18 @@ type ManagerNetworkGroupParameters struct { type ManagerNetworkGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagerNetworkGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagerNetworkGroupInitParameters `json:"initProvider,omitempty"` } // ManagerNetworkGroupStatus defines the observed state of ManagerNetworkGroup. diff --git a/apis/network/v1beta1/zz_managerstaticmember_types.go b/apis/network/v1beta1/zz_managerstaticmember_types.go index 7cdb36e20..571dd0419 100755 --- a/apis/network/v1beta1/zz_managerstaticmember_types.go +++ b/apis/network/v1beta1/zz_managerstaticmember_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagerStaticMemberInitParameters struct { +} + type ManagerStaticMemberObservation struct { // The ID of the Network Manager Static Member. @@ -63,6 +66,18 @@ type ManagerStaticMemberParameters struct { type ManagerStaticMemberSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagerStaticMemberParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagerStaticMemberInitParameters `json:"initProvider,omitempty"` } // ManagerStaticMemberStatus defines the observed state of ManagerStaticMember. diff --git a/apis/network/v1beta1/zz_managersubscriptionconnection_types.go b/apis/network/v1beta1/zz_managersubscriptionconnection_types.go index f039a1ffe..1c8b97d09 100755 --- a/apis/network/v1beta1/zz_managersubscriptionconnection_types.go +++ b/apis/network/v1beta1/zz_managersubscriptionconnection_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagerSubscriptionConnectionInitParameters struct { + + // A description of the Network Manager Subscription Connection. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies the ID of the target Subscription. Changing this forces a new resource to be created. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` +} + type ManagerSubscriptionConnectionObservation struct { // The Connection state of the Network Manager Subscription Connection. @@ -60,6 +69,18 @@ type ManagerSubscriptionConnectionParameters struct { type ManagerSubscriptionConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagerSubscriptionConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagerSubscriptionConnectionInitParameters `json:"initProvider,omitempty"` } // ManagerSubscriptionConnectionStatus defines the observed state of ManagerSubscriptionConnection. @@ -80,7 +101,7 @@ type ManagerSubscriptionConnectionStatus struct { type ManagerSubscriptionConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId)",message="subscriptionId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subscriptionId) || has(self.initProvider.subscriptionId)",message="subscriptionId is a required parameter" Spec ManagerSubscriptionConnectionSpec `json:"spec"` Status ManagerSubscriptionConnectionStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_natgateway_types.go b/apis/network/v1beta1/zz_natgateway_types.go index 134ffd568..b31ff9abd 100755 --- a/apis/network/v1beta1/zz_natgateway_types.go +++ b/apis/network/v1beta1/zz_natgateway_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NATGatewayInitParameters struct { + + // The idle timeout which should be used in minutes. Defaults to 4. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // Specifies the supported Azure location where the NAT Gateway should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The SKU which should be used. At this time the only supported value is Standard. Defaults to Standard. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A list of Availability Zones in which this NAT Gateway should be located. Changing this forces a new NAT Gateway to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type NATGatewayObservation struct { // The ID of the NAT Gateway. @@ -80,6 +98,18 @@ type NATGatewayParameters struct { type NATGatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider NATGatewayParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NATGatewayInitParameters `json:"initProvider,omitempty"` } // NATGatewayStatus defines the observed state of NATGateway. @@ -100,7 +130,7 @@ type NATGatewayStatus struct { type NATGateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec NATGatewaySpec `json:"spec"` Status NATGatewayStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_natgatewaypublicipassociation_types.go b/apis/network/v1beta1/zz_natgatewaypublicipassociation_types.go index 14e23cca5..af3ac0446 100755 --- a/apis/network/v1beta1/zz_natgatewaypublicipassociation_types.go +++ b/apis/network/v1beta1/zz_natgatewaypublicipassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NATGatewayPublicIPAssociationInitParameters struct { +} + type NATGatewayPublicIPAssociationObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -58,6 +61,18 @@ type NATGatewayPublicIPAssociationParameters struct { type NATGatewayPublicIPAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NATGatewayPublicIPAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NATGatewayPublicIPAssociationInitParameters `json:"initProvider,omitempty"` } // NATGatewayPublicIPAssociationStatus defines the observed state of NATGatewayPublicIPAssociation. diff --git a/apis/network/v1beta1/zz_natgatewaypublicipprefixassociation_types.go b/apis/network/v1beta1/zz_natgatewaypublicipprefixassociation_types.go index d1291005b..9c8e89b36 100755 --- a/apis/network/v1beta1/zz_natgatewaypublicipprefixassociation_types.go +++ b/apis/network/v1beta1/zz_natgatewaypublicipprefixassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NATGatewayPublicIPPrefixAssociationInitParameters struct { +} + type NATGatewayPublicIPPrefixAssociationObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -58,6 +61,18 @@ type NATGatewayPublicIPPrefixAssociationParameters struct { type NATGatewayPublicIPPrefixAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NATGatewayPublicIPPrefixAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NATGatewayPublicIPPrefixAssociationInitParameters `json:"initProvider,omitempty"` } // NATGatewayPublicIPPrefixAssociationStatus defines the observed state of NATGatewayPublicIPPrefixAssociation. diff --git a/apis/network/v1beta1/zz_networkinterface_types.go b/apis/network/v1beta1/zz_networkinterface_types.go index 1054c3961..2093809cd 100755 --- a/apis/network/v1beta1/zz_networkinterface_types.go +++ b/apis/network/v1beta1/zz_networkinterface_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NetworkInterfaceIPConfigurationInitParameters struct { + + // The Frontend IP Configuration ID of a Gateway SKU Load Balancer. + GatewayLoadBalancerFrontendIPConfigurationID *string `json:"gatewayLoadBalancerFrontendIpConfigurationId,omitempty" tf:"gateway_load_balancer_frontend_ip_configuration_id,omitempty"` + + // A name used for this IP Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this the Primary IP Configuration? Must be true for the first ip_configuration when multiple are specified. Defaults to false. + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` + + // The Static IP Address which should be used. + PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` + + // The allocation method used for the Private IP Address. Possible values are Dynamic and Static. + PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` + + // The IP Version to use. Possible values are IPv4 or IPv6. Defaults to IPv4. + PrivateIPAddressVersion *string `json:"privateIpAddressVersion,omitempty" tf:"private_ip_address_version,omitempty"` + + // Reference to a Public IP Address to associate with this NIC + PublicIPAddressID *string `json:"publicIpAddressId,omitempty" tf:"public_ip_address_id,omitempty"` +} + type NetworkInterfaceIPConfigurationObservation struct { // The Frontend IP Configuration ID of a Gateway SKU Load Balancer. @@ -47,8 +71,8 @@ type NetworkInterfaceIPConfigurationParameters struct { GatewayLoadBalancerFrontendIPConfigurationID *string `json:"gatewayLoadBalancerFrontendIpConfigurationId,omitempty" tf:"gateway_load_balancer_frontend_ip_configuration_id,omitempty"` // A name used for this IP Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this the Primary IP Configuration? Must be true for the first ip_configuration when multiple are specified. Defaults to false. // +kubebuilder:validation:Optional @@ -59,8 +83,8 @@ type NetworkInterfaceIPConfigurationParameters struct { PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // The allocation method used for the Private IP Address. Possible values are Dynamic and Static. - // +kubebuilder:validation:Required - PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation" tf:"private_ip_address_allocation,omitempty"` + // +kubebuilder:validation:Optional + PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` // The IP Version to use. Possible values are IPv4 or IPv6. Defaults to IPv4. // +kubebuilder:validation:Optional @@ -85,6 +109,33 @@ type NetworkInterfaceIPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type NetworkInterfaceInitParameters struct { + + // A list of IP Addresses defining the DNS Servers which should be used for this Network Interface. + DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Network Interface should exist. Changing this forces a new Network Interface to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // Should Accelerated Networking be enabled? Defaults to false. + EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"` + + // Should IP Forwarding be enabled? Defaults to false. + EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` + + // One or more ip_configuration blocks as defined below. + IPConfiguration []NetworkInterfaceIPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` + + // The (relative) DNS Name used for internal communications between Virtual Machines in the same Virtual Network. + InternalDNSNameLabel *string `json:"internalDnsNameLabel,omitempty" tf:"internal_dns_name_label,omitempty"` + + // The location where the Network Interface should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type NetworkInterfaceObservation struct { // If the Virtual Machine using this Network Interface is part of an Availability Set, then this list will have the union of all DNS servers from all Network Interfaces that are part of the Availability Set. @@ -188,6 +239,18 @@ type NetworkInterfaceParameters struct { type NetworkInterfaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NetworkInterfaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NetworkInterfaceInitParameters `json:"initProvider,omitempty"` } // NetworkInterfaceStatus defines the observed state of NetworkInterface. @@ -208,8 +271,8 @@ type NetworkInterfaceStatus struct { type NetworkInterface struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ipConfiguration)",message="ipConfiguration is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ipConfiguration) || has(self.initProvider.ipConfiguration)",message="ipConfiguration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec NetworkInterfaceSpec `json:"spec"` Status NetworkInterfaceStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_networkinterfaceapplicationsecuritygroupassociation_types.go b/apis/network/v1beta1/zz_networkinterfaceapplicationsecuritygroupassociation_types.go index 30df42587..a8c4d1c69 100755 --- a/apis/network/v1beta1/zz_networkinterfaceapplicationsecuritygroupassociation_types.go +++ b/apis/network/v1beta1/zz_networkinterfaceapplicationsecuritygroupassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NetworkInterfaceApplicationSecurityGroupAssociationInitParameters struct { +} + type NetworkInterfaceApplicationSecurityGroupAssociationObservation struct { // The ID of the Application Security Group which this Network Interface which should be connected to. Changing this forces a new resource to be created. @@ -59,6 +62,18 @@ type NetworkInterfaceApplicationSecurityGroupAssociationParameters struct { type NetworkInterfaceApplicationSecurityGroupAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NetworkInterfaceApplicationSecurityGroupAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NetworkInterfaceApplicationSecurityGroupAssociationInitParameters `json:"initProvider,omitempty"` } // NetworkInterfaceApplicationSecurityGroupAssociationStatus defines the observed state of NetworkInterfaceApplicationSecurityGroupAssociation. diff --git a/apis/network/v1beta1/zz_networkinterfacebackendaddresspoolassociation_types.go b/apis/network/v1beta1/zz_networkinterfacebackendaddresspoolassociation_types.go index cd2e35603..f48884e1b 100755 --- a/apis/network/v1beta1/zz_networkinterfacebackendaddresspoolassociation_types.go +++ b/apis/network/v1beta1/zz_networkinterfacebackendaddresspoolassociation_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NetworkInterfaceBackendAddressPoolAssociationInitParameters struct { + + // The Name of the IP Configuration within the Network Interface which should be connected to the Backend Address Pool. Changing this forces a new resource to be created. + IPConfigurationName *string `json:"ipConfigurationName,omitempty" tf:"ip_configuration_name,omitempty"` +} + type NetworkInterfaceBackendAddressPoolAssociationObservation struct { // The ID of the Load Balancer Backend Address Pool which this Network Interface should be connected to. Changing this forces a new resource to be created. @@ -66,6 +72,18 @@ type NetworkInterfaceBackendAddressPoolAssociationParameters struct { type NetworkInterfaceBackendAddressPoolAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NetworkInterfaceBackendAddressPoolAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NetworkInterfaceBackendAddressPoolAssociationInitParameters `json:"initProvider,omitempty"` } // NetworkInterfaceBackendAddressPoolAssociationStatus defines the observed state of NetworkInterfaceBackendAddressPoolAssociation. @@ -86,7 +104,7 @@ type NetworkInterfaceBackendAddressPoolAssociationStatus struct { type NetworkInterfaceBackendAddressPoolAssociation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ipConfigurationName)",message="ipConfigurationName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ipConfigurationName) || has(self.initProvider.ipConfigurationName)",message="ipConfigurationName is a required parameter" Spec NetworkInterfaceBackendAddressPoolAssociationSpec `json:"spec"` Status NetworkInterfaceBackendAddressPoolAssociationStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_networkinterfacenatruleassociation_types.go b/apis/network/v1beta1/zz_networkinterfacenatruleassociation_types.go index 800dac7a4..2482df589 100755 --- a/apis/network/v1beta1/zz_networkinterfacenatruleassociation_types.go +++ b/apis/network/v1beta1/zz_networkinterfacenatruleassociation_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NetworkInterfaceNatRuleAssociationInitParameters struct { + + // The Name of the IP Configuration within the Network Interface which should be connected to the NAT Rule. Changing this forces a new resource to be created. + IPConfigurationName *string `json:"ipConfigurationName,omitempty" tf:"ip_configuration_name,omitempty"` +} + type NetworkInterfaceNatRuleAssociationObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -65,6 +71,18 @@ type NetworkInterfaceNatRuleAssociationParameters struct { type NetworkInterfaceNatRuleAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NetworkInterfaceNatRuleAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NetworkInterfaceNatRuleAssociationInitParameters `json:"initProvider,omitempty"` } // NetworkInterfaceNatRuleAssociationStatus defines the observed state of NetworkInterfaceNatRuleAssociation. @@ -85,7 +103,7 @@ type NetworkInterfaceNatRuleAssociationStatus struct { type NetworkInterfaceNatRuleAssociation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ipConfigurationName)",message="ipConfigurationName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ipConfigurationName) || has(self.initProvider.ipConfigurationName)",message="ipConfigurationName is a required parameter" Spec NetworkInterfaceNatRuleAssociationSpec `json:"spec"` Status NetworkInterfaceNatRuleAssociationStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_networkinterfacesecuritygroupassociation_types.go b/apis/network/v1beta1/zz_networkinterfacesecuritygroupassociation_types.go index b9933ef5e..5e95fe28a 100755 --- a/apis/network/v1beta1/zz_networkinterfacesecuritygroupassociation_types.go +++ b/apis/network/v1beta1/zz_networkinterfacesecuritygroupassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NetworkInterfaceSecurityGroupAssociationInitParameters struct { +} + type NetworkInterfaceSecurityGroupAssociationObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -58,6 +61,18 @@ type NetworkInterfaceSecurityGroupAssociationParameters struct { type NetworkInterfaceSecurityGroupAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NetworkInterfaceSecurityGroupAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NetworkInterfaceSecurityGroupAssociationInitParameters `json:"initProvider,omitempty"` } // NetworkInterfaceSecurityGroupAssociationStatus defines the observed state of NetworkInterfaceSecurityGroupAssociation. diff --git a/apis/network/v1beta1/zz_packetcapture_types.go b/apis/network/v1beta1/zz_packetcapture_types.go index f1a09234f..dd78c40b7 100755 --- a/apis/network/v1beta1/zz_packetcapture_types.go +++ b/apis/network/v1beta1/zz_packetcapture_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PacketCaptureFilterInitParameters struct { + + // The local IP Address to be filtered on. Notation: "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. "127.0.0.1;127.0.0.5" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Changing this forces a new resource to be created. + LocalIPAddress *string `json:"localIpAddress,omitempty" tf:"local_ip_address,omitempty"` + + // The local port to be filtered on. Notation: "80" for single port entry."80-85" for range. "80;443;" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Changing this forces a new resource to be created. + LocalPort *string `json:"localPort,omitempty" tf:"local_port,omitempty"` + + // The Protocol to be filtered on. Possible values include Any, TCP and UDP. Changing this forces a new resource to be created. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // The remote IP Address to be filtered on. Notation: "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. "127.0.0.1;127.0.0.5;" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported.. Changing this forces a new resource to be created. + RemoteIPAddress *string `json:"remoteIpAddress,omitempty" tf:"remote_ip_address,omitempty"` + + // The remote port to be filtered on. Notation: "80" for single port entry."80-85" for range. "80;443;" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Changing this forces a new resource to be created. + RemotePort *string `json:"remotePort,omitempty" tf:"remote_port,omitempty"` +} + type PacketCaptureFilterObservation struct { // The local IP Address to be filtered on. Notation: "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. "127.0.0.1;127.0.0.5" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Changing this forces a new resource to be created. @@ -42,8 +60,8 @@ type PacketCaptureFilterParameters struct { LocalPort *string `json:"localPort,omitempty" tf:"local_port,omitempty"` // The Protocol to be filtered on. Possible values include Any, TCP and UDP. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The remote IP Address to be filtered on. Notation: "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. "127.0.0.1;127.0.0.5;" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported.. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -54,6 +72,27 @@ type PacketCaptureFilterParameters struct { RemotePort *string `json:"remotePort,omitempty" tf:"remote_port,omitempty"` } +type PacketCaptureInitParameters struct { + + // One or more filter blocks as defined below. Changing this forces a new resource to be created. + Filter []PacketCaptureFilterInitParameters `json:"filter,omitempty" tf:"filter,omitempty"` + + // The number of bytes captured per packet. The remaining bytes are truncated. Defaults to 0 (Entire Packet Captured). Changing this forces a new resource to be created. + MaximumBytesPerPacket *float64 `json:"maximumBytesPerPacket,omitempty" tf:"maximum_bytes_per_packet,omitempty"` + + // Maximum size of the capture in Bytes. Defaults to 1073741824 (1GB). Changing this forces a new resource to be created. + MaximumBytesPerSession *float64 `json:"maximumBytesPerSession,omitempty" tf:"maximum_bytes_per_session,omitempty"` + + // The maximum duration of the capture session in seconds. Defaults to 18000 (5 hours). Changing this forces a new resource to be created. + MaximumCaptureDuration *float64 `json:"maximumCaptureDuration,omitempty" tf:"maximum_capture_duration,omitempty"` + + // A storage_location block as defined below. Changing this forces a new resource to be created. + StorageLocation []StorageLocationInitParameters `json:"storageLocation,omitempty" tf:"storage_location,omitempty"` + + // The ID of the Resource to capture packets from. Changing this forces a new resource to be created. + TargetResourceID *string `json:"targetResourceId,omitempty" tf:"target_resource_id,omitempty"` +} + type PacketCaptureObservation struct { // One or more filter blocks as defined below. Changing this forces a new resource to be created. @@ -137,6 +176,12 @@ type PacketCaptureParameters struct { TargetResourceID *string `json:"targetResourceId,omitempty" tf:"target_resource_id,omitempty"` } +type StorageLocationInitParameters struct { + + // A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For Linux virtual machine it must start with /var/captures. + FilePath *string `json:"filePath,omitempty" tf:"file_path,omitempty"` +} + type StorageLocationObservation struct { // A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For Linux virtual machine it must start with /var/captures. @@ -174,6 +219,18 @@ type StorageLocationParameters struct { type PacketCaptureSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PacketCaptureParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PacketCaptureInitParameters `json:"initProvider,omitempty"` } // PacketCaptureStatus defines the observed state of PacketCapture. @@ -194,8 +251,8 @@ type PacketCaptureStatus struct { type PacketCapture struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageLocation)",message="storageLocation is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetResourceId)",message="targetResourceId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageLocation) || has(self.initProvider.storageLocation)",message="storageLocation is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.targetResourceId) || has(self.initProvider.targetResourceId)",message="targetResourceId is a required parameter" Spec PacketCaptureSpec `json:"spec"` Status PacketCaptureStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_pointtositevpngateway_types.go b/apis/network/v1beta1/zz_pointtositevpngateway_types.go index 1c7ea616c..13a8cdd45 100755 --- a/apis/network/v1beta1/zz_pointtositevpngateway_types.go +++ b/apis/network/v1beta1/zz_pointtositevpngateway_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ConnectionConfigurationInitParameters struct { + + // Should Internet Security be enabled to secure internet traffic? Changing this forces a new resource to be created. Defaults to false. + InternetSecurityEnabled *bool `json:"internetSecurityEnabled,omitempty" tf:"internet_security_enabled,omitempty"` + + // The Name which should be used for this Connection Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A route block as defined below. + Route []RouteInitParameters `json:"route,omitempty" tf:"route,omitempty"` + + // A vpn_client_address_pool block as defined below. + VPNClientAddressPool []VPNClientAddressPoolInitParameters `json:"vpnClientAddressPool,omitempty" tf:"vpn_client_address_pool,omitempty"` +} + type ConnectionConfigurationObservation struct { // Should Internet Security be enabled to secure internet traffic? Changing this forces a new resource to be created. Defaults to false. @@ -35,16 +50,37 @@ type ConnectionConfigurationParameters struct { InternetSecurityEnabled *bool `json:"internetSecurityEnabled,omitempty" tf:"internet_security_enabled,omitempty"` // The Name which should be used for this Connection Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A route block as defined below. // +kubebuilder:validation:Optional Route []RouteParameters `json:"route,omitempty" tf:"route,omitempty"` // A vpn_client_address_pool block as defined below. - // +kubebuilder:validation:Required - VPNClientAddressPool []VPNClientAddressPoolParameters `json:"vpnClientAddressPool" tf:"vpn_client_address_pool,omitempty"` + // +kubebuilder:validation:Optional + VPNClientAddressPool []VPNClientAddressPoolParameters `json:"vpnClientAddressPool,omitempty" tf:"vpn_client_address_pool,omitempty"` +} + +type PointToSiteVPNGatewayInitParameters struct { + + // A connection_configuration block as defined below. + ConnectionConfiguration []ConnectionConfigurationInitParameters `json:"connectionConfiguration,omitempty" tf:"connection_configuration,omitempty"` + + // A list of IP Addresses of DNS Servers for the Point-to-Site VPN Gateway. + DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Is the Routing Preference for the Public IP Interface of the VPN Gateway enabled? Defaults to false. Changing this forces a new resource to be created. + RoutingPreferenceInternetEnabled *bool `json:"routingPreferenceInternetEnabled,omitempty" tf:"routing_preference_internet_enabled,omitempty"` + + // The Scale Unit for this Point-to-Site VPN Gateway. + ScaleUnit *float64 `json:"scaleUnit,omitempty" tf:"scale_unit,omitempty"` + + // A mapping of tags to assign to the Point-to-Site VPN Gateway. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type PointToSiteVPNGatewayObservation struct { @@ -148,6 +184,21 @@ type PointToSiteVPNGatewayParameters struct { VirtualHubIDSelector *v1.Selector `json:"virtualHubIdSelector,omitempty" tf:"-"` } +type RouteInitParameters struct { + + // The Virtual Hub Route Table resource id associated with this Routing Configuration. + AssociatedRouteTableID *string `json:"associatedRouteTableId,omitempty" tf:"associated_route_table_id,omitempty"` + + // The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes. + InboundRouteMapID *string `json:"inboundRouteMapId,omitempty" tf:"inbound_route_map_id,omitempty"` + + // The resource ID of the Route Map associated with this Routing Configuration for outbound advertised routes. + OutboundRouteMapID *string `json:"outboundRouteMapId,omitempty" tf:"outbound_route_map_id,omitempty"` + + // A propagated_route_table block as defined below. + PropagatedRouteTable []RoutePropagatedRouteTableInitParameters `json:"propagatedRouteTable,omitempty" tf:"propagated_route_table,omitempty"` +} + type RouteObservation struct { // The Virtual Hub Route Table resource id associated with this Routing Configuration. @@ -166,8 +217,8 @@ type RouteObservation struct { type RouteParameters struct { // The Virtual Hub Route Table resource id associated with this Routing Configuration. - // +kubebuilder:validation:Required - AssociatedRouteTableID *string `json:"associatedRouteTableId" tf:"associated_route_table_id,omitempty"` + // +kubebuilder:validation:Optional + AssociatedRouteTableID *string `json:"associatedRouteTableId,omitempty" tf:"associated_route_table_id,omitempty"` // The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes. // +kubebuilder:validation:Optional @@ -182,6 +233,15 @@ type RouteParameters struct { PropagatedRouteTable []RoutePropagatedRouteTableParameters `json:"propagatedRouteTable,omitempty" tf:"propagated_route_table,omitempty"` } +type RoutePropagatedRouteTableInitParameters struct { + + // The list of Virtual Hub Route Table resource id which the routes will be propagated to. + Ids []*string `json:"ids,omitempty" tf:"ids,omitempty"` + + // The list of labels to logically group Virtual Hub Route Tables which the routes will be propagated to. + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` +} + type RoutePropagatedRouteTableObservation struct { // The list of Virtual Hub Route Table resource id which the routes will be propagated to. @@ -194,14 +254,20 @@ type RoutePropagatedRouteTableObservation struct { type RoutePropagatedRouteTableParameters struct { // The list of Virtual Hub Route Table resource id which the routes will be propagated to. - // +kubebuilder:validation:Required - Ids []*string `json:"ids" tf:"ids,omitempty"` + // +kubebuilder:validation:Optional + Ids []*string `json:"ids,omitempty" tf:"ids,omitempty"` // The list of labels to logically group Virtual Hub Route Tables which the routes will be propagated to. // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` } +type VPNClientAddressPoolInitParameters struct { + + // A list of CIDR Ranges which should be used as Address Prefixes. + AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` +} + type VPNClientAddressPoolObservation struct { // A list of CIDR Ranges which should be used as Address Prefixes. @@ -211,14 +277,26 @@ type VPNClientAddressPoolObservation struct { type VPNClientAddressPoolParameters struct { // A list of CIDR Ranges which should be used as Address Prefixes. - // +kubebuilder:validation:Required - AddressPrefixes []*string `json:"addressPrefixes" tf:"address_prefixes,omitempty"` + // +kubebuilder:validation:Optional + AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` } // PointToSiteVPNGatewaySpec defines the desired state of PointToSiteVPNGateway type PointToSiteVPNGatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider PointToSiteVPNGatewayParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PointToSiteVPNGatewayInitParameters `json:"initProvider,omitempty"` } // PointToSiteVPNGatewayStatus defines the observed state of PointToSiteVPNGateway. @@ -239,9 +317,9 @@ type PointToSiteVPNGatewayStatus struct { type PointToSiteVPNGateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionConfiguration)",message="connectionConfiguration is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scaleUnit)",message="scaleUnit is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.connectionConfiguration) || has(self.initProvider.connectionConfiguration)",message="connectionConfiguration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scaleUnit) || has(self.initProvider.scaleUnit)",message="scaleUnit is a required parameter" Spec PointToSiteVPNGatewaySpec `json:"spec"` Status PointToSiteVPNGatewayStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednsaaaarecord_types.go b/apis/network/v1beta1/zz_privatednsaaaarecord_types.go index 4ea6dc22c..dd97c1d7f 100755 --- a/apis/network/v1beta1/zz_privatednsaaaarecord_types.go +++ b/apis/network/v1beta1/zz_privatednsaaaarecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateDNSAAAARecordInitParameters struct { + + // A list of IPv6 Addresses. + Records []*string `json:"records,omitempty" tf:"records,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSAAAARecordObservation struct { // The FQDN of the DNS AAAA Record. @@ -82,6 +94,18 @@ type PrivateDNSAAAARecordParameters struct { type PrivateDNSAAAARecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateDNSAAAARecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateDNSAAAARecordInitParameters `json:"initProvider,omitempty"` } // PrivateDNSAAAARecordStatus defines the observed state of PrivateDNSAAAARecord. @@ -102,8 +126,8 @@ type PrivateDNSAAAARecordStatus struct { type PrivateDNSAAAARecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.records)",message="records is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.records) || has(self.initProvider.records)",message="records is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec PrivateDNSAAAARecordSpec `json:"spec"` Status PrivateDNSAAAARecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednsarecord_types.go b/apis/network/v1beta1/zz_privatednsarecord_types.go index d99b4d442..861b2e344 100755 --- a/apis/network/v1beta1/zz_privatednsarecord_types.go +++ b/apis/network/v1beta1/zz_privatednsarecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateDNSARecordInitParameters struct { + + // List of IPv4 Addresses. + Records []*string `json:"records,omitempty" tf:"records,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSARecordObservation struct { // The FQDN of the DNS A Record. @@ -82,6 +94,18 @@ type PrivateDNSARecordParameters struct { type PrivateDNSARecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateDNSARecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateDNSARecordInitParameters `json:"initProvider,omitempty"` } // PrivateDNSARecordStatus defines the observed state of PrivateDNSARecord. @@ -102,8 +126,8 @@ type PrivateDNSARecordStatus struct { type PrivateDNSARecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.records)",message="records is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.records) || has(self.initProvider.records)",message="records is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec PrivateDNSARecordSpec `json:"spec"` Status PrivateDNSARecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednscnamerecord_types.go b/apis/network/v1beta1/zz_privatednscnamerecord_types.go index 7d8388b7e..eae2ce1c2 100755 --- a/apis/network/v1beta1/zz_privatednscnamerecord_types.go +++ b/apis/network/v1beta1/zz_privatednscnamerecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateDNSCNAMERecordInitParameters struct { + + // The target of the CNAME. + Record *string `json:"record,omitempty" tf:"record,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSCNAMERecordObservation struct { // The FQDN of the DNS CNAME Record. @@ -82,6 +94,18 @@ type PrivateDNSCNAMERecordParameters struct { type PrivateDNSCNAMERecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateDNSCNAMERecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateDNSCNAMERecordInitParameters `json:"initProvider,omitempty"` } // PrivateDNSCNAMERecordStatus defines the observed state of PrivateDNSCNAMERecord. @@ -102,8 +126,8 @@ type PrivateDNSCNAMERecordStatus struct { type PrivateDNSCNAMERecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record)",message="record is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.record) || has(self.initProvider.record)",message="record is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec PrivateDNSCNAMERecordSpec `json:"spec"` Status PrivateDNSCNAMERecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednsmxrecord_types.go b/apis/network/v1beta1/zz_privatednsmxrecord_types.go index 63267824a..40b9116f6 100755 --- a/apis/network/v1beta1/zz_privatednsmxrecord_types.go +++ b/apis/network/v1beta1/zz_privatednsmxrecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateDNSMXRecordInitParameters struct { + + // One or more record blocks as defined below. + Record []PrivateDNSMXRecordRecordInitParameters `json:"record,omitempty" tf:"record,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSMXRecordObservation struct { // The FQDN of the DNS MX Record. @@ -78,6 +90,15 @@ type PrivateDNSMXRecordParameters struct { ZoneNameSelector *v1.Selector `json:"zoneNameSelector,omitempty" tf:"-"` } +type PrivateDNSMXRecordRecordInitParameters struct { + + // The FQDN of the exchange to MX record points to. + Exchange *string `json:"exchange,omitempty" tf:"exchange,omitempty"` + + // The preference of the MX record. + Preference *float64 `json:"preference,omitempty" tf:"preference,omitempty"` +} + type PrivateDNSMXRecordRecordObservation struct { // The FQDN of the exchange to MX record points to. @@ -90,18 +111,30 @@ type PrivateDNSMXRecordRecordObservation struct { type PrivateDNSMXRecordRecordParameters struct { // The FQDN of the exchange to MX record points to. - // +kubebuilder:validation:Required - Exchange *string `json:"exchange" tf:"exchange,omitempty"` + // +kubebuilder:validation:Optional + Exchange *string `json:"exchange,omitempty" tf:"exchange,omitempty"` // The preference of the MX record. - // +kubebuilder:validation:Required - Preference *float64 `json:"preference" tf:"preference,omitempty"` + // +kubebuilder:validation:Optional + Preference *float64 `json:"preference,omitempty" tf:"preference,omitempty"` } // PrivateDNSMXRecordSpec defines the desired state of PrivateDNSMXRecord type PrivateDNSMXRecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateDNSMXRecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateDNSMXRecordInitParameters `json:"initProvider,omitempty"` } // PrivateDNSMXRecordStatus defines the observed state of PrivateDNSMXRecord. @@ -122,8 +155,8 @@ type PrivateDNSMXRecordStatus struct { type PrivateDNSMXRecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record)",message="record is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.record) || has(self.initProvider.record)",message="record is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec PrivateDNSMXRecordSpec `json:"spec"` Status PrivateDNSMXRecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednsptrrecord_types.go b/apis/network/v1beta1/zz_privatednsptrrecord_types.go index a0ad91ebf..b5d20af15 100755 --- a/apis/network/v1beta1/zz_privatednsptrrecord_types.go +++ b/apis/network/v1beta1/zz_privatednsptrrecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateDNSPTRRecordInitParameters struct { + + // List of Fully Qualified Domain Names. + Records []*string `json:"records,omitempty" tf:"records,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSPTRRecordObservation struct { // The FQDN of the DNS PTR Record. @@ -82,6 +94,18 @@ type PrivateDNSPTRRecordParameters struct { type PrivateDNSPTRRecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateDNSPTRRecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateDNSPTRRecordInitParameters `json:"initProvider,omitempty"` } // PrivateDNSPTRRecordStatus defines the observed state of PrivateDNSPTRRecord. @@ -102,8 +126,8 @@ type PrivateDNSPTRRecordStatus struct { type PrivateDNSPTRRecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.records)",message="records is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.records) || has(self.initProvider.records)",message="records is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec PrivateDNSPTRRecordSpec `json:"spec"` Status PrivateDNSPTRRecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednsresolver_types.go b/apis/network/v1beta1/zz_privatednsresolver_types.go index 6eae24f03..c808f72b8 100755 --- a/apis/network/v1beta1/zz_privatednsresolver_types.go +++ b/apis/network/v1beta1/zz_privatednsresolver_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateDNSResolverInitParameters struct { + + // Specifies the Azure Region where the Private DNS Resolver should exist. Changing this forces a new Private DNS Resolver to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Private DNS Resolver. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSResolverObservation struct { // The ID of the DNS Resolver. @@ -73,6 +82,18 @@ type PrivateDNSResolverParameters struct { type PrivateDNSResolverSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateDNSResolverParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateDNSResolverInitParameters `json:"initProvider,omitempty"` } // PrivateDNSResolverStatus defines the observed state of PrivateDNSResolver. @@ -93,7 +114,7 @@ type PrivateDNSResolverStatus struct { type PrivateDNSResolver struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec PrivateDNSResolverSpec `json:"spec"` Status PrivateDNSResolverStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednssrvrecord_types.go b/apis/network/v1beta1/zz_privatednssrvrecord_types.go index 63fffb1b9..08e0f567f 100755 --- a/apis/network/v1beta1/zz_privatednssrvrecord_types.go +++ b/apis/network/v1beta1/zz_privatednssrvrecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateDNSSRVRecordInitParameters struct { + + // One or more record blocks as defined below. + Record []PrivateDNSSRVRecordRecordInitParameters `json:"record,omitempty" tf:"record,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSSRVRecordObservation struct { // The FQDN of the DNS SRV Record. @@ -78,6 +90,21 @@ type PrivateDNSSRVRecordParameters struct { ZoneNameSelector *v1.Selector `json:"zoneNameSelector,omitempty" tf:"-"` } +type PrivateDNSSRVRecordRecordInitParameters struct { + + // The Port the service is listening on. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // The priority of the SRV record. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The FQDN of the service. + Target *string `json:"target,omitempty" tf:"target,omitempty"` + + // The Weight of the SRV record. + Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` +} + type PrivateDNSSRVRecordRecordObservation struct { // The Port the service is listening on. @@ -96,26 +123,38 @@ type PrivateDNSSRVRecordRecordObservation struct { type PrivateDNSSRVRecordRecordParameters struct { // The Port the service is listening on. - // +kubebuilder:validation:Required - Port *float64 `json:"port" tf:"port,omitempty"` + // +kubebuilder:validation:Optional + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The priority of the SRV record. - // +kubebuilder:validation:Required - Priority *float64 `json:"priority" tf:"priority,omitempty"` + // +kubebuilder:validation:Optional + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The FQDN of the service. - // +kubebuilder:validation:Required - Target *string `json:"target" tf:"target,omitempty"` + // +kubebuilder:validation:Optional + Target *string `json:"target,omitempty" tf:"target,omitempty"` // The Weight of the SRV record. - // +kubebuilder:validation:Required - Weight *float64 `json:"weight" tf:"weight,omitempty"` + // +kubebuilder:validation:Optional + Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } // PrivateDNSSRVRecordSpec defines the desired state of PrivateDNSSRVRecord type PrivateDNSSRVRecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateDNSSRVRecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateDNSSRVRecordInitParameters `json:"initProvider,omitempty"` } // PrivateDNSSRVRecordStatus defines the observed state of PrivateDNSSRVRecord. @@ -136,8 +175,8 @@ type PrivateDNSSRVRecordStatus struct { type PrivateDNSSRVRecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record)",message="record is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.record) || has(self.initProvider.record)",message="record is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec PrivateDNSSRVRecordSpec `json:"spec"` Status PrivateDNSSRVRecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednstxtrecord_types.go b/apis/network/v1beta1/zz_privatednstxtrecord_types.go index 240953852..996f2c36d 100755 --- a/apis/network/v1beta1/zz_privatednstxtrecord_types.go +++ b/apis/network/v1beta1/zz_privatednstxtrecord_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateDNSTXTRecordInitParameters struct { + + // One or more record blocks as defined below. + Record []PrivateDNSTXTRecordRecordInitParameters `json:"record,omitempty" tf:"record,omitempty"` + + // The Time To Live (TTL) of the DNS record in seconds. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSTXTRecordObservation struct { // The FQDN of the DNS TXT Record. @@ -78,6 +90,12 @@ type PrivateDNSTXTRecordParameters struct { ZoneNameSelector *v1.Selector `json:"zoneNameSelector,omitempty" tf:"-"` } +type PrivateDNSTXTRecordRecordInitParameters struct { + + // The value of the TXT record. Max length: 1024 characters + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type PrivateDNSTXTRecordRecordObservation struct { // The value of the TXT record. Max length: 1024 characters @@ -87,14 +105,26 @@ type PrivateDNSTXTRecordRecordObservation struct { type PrivateDNSTXTRecordRecordParameters struct { // The value of the TXT record. Max length: 1024 characters - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` } // PrivateDNSTXTRecordSpec defines the desired state of PrivateDNSTXTRecord type PrivateDNSTXTRecordSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateDNSTXTRecordParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateDNSTXTRecordInitParameters `json:"initProvider,omitempty"` } // PrivateDNSTXTRecordStatus defines the observed state of PrivateDNSTXTRecord. @@ -115,8 +145,8 @@ type PrivateDNSTXTRecordStatus struct { type PrivateDNSTXTRecord struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record)",message="record is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl)",message="ttl is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.record) || has(self.initProvider.record)",message="record is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ttl) || has(self.initProvider.ttl)",message="ttl is a required parameter" Spec PrivateDNSTXTRecordSpec `json:"spec"` Status PrivateDNSTXTRecordStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednszone_types.go b/apis/network/v1beta1/zz_privatednszone_types.go index 538d49dcf..e0cf4eef2 100755 --- a/apis/network/v1beta1/zz_privatednszone_types.go +++ b/apis/network/v1beta1/zz_privatednszone_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateDNSZoneInitParameters struct { + + // An soa_record block as defined below. Changing this forces a new resource to be created. + SoaRecord []PrivateDNSZoneSoaRecordInitParameters `json:"soaRecord,omitempty" tf:"soa_record,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSZoneObservation struct { // The Private DNS Zone ID. @@ -64,6 +73,30 @@ type PrivateDNSZoneParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type PrivateDNSZoneSoaRecordInitParameters struct { + + // The email contact for the SOA record. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // The expire time for the SOA record. Defaults to 2419200. + ExpireTime *float64 `json:"expireTime,omitempty" tf:"expire_time,omitempty"` + + // The minimum Time To Live for the SOA record. By convention, it is used to determine the negative caching duration. Defaults to 10. + MinimumTTL *float64 `json:"minimumTtl,omitempty" tf:"minimum_ttl,omitempty"` + + // The refresh time for the SOA record. Defaults to 3600. + RefreshTime *float64 `json:"refreshTime,omitempty" tf:"refresh_time,omitempty"` + + // The retry time for the SOA record. Defaults to 300. + RetryTime *float64 `json:"retryTime,omitempty" tf:"retry_time,omitempty"` + + // The Time To Live of the SOA Record in seconds. Defaults to 3600. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` + + // A mapping of tags to assign to the Record Set. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSZoneSoaRecordObservation struct { // The email contact for the SOA record. @@ -100,8 +133,8 @@ type PrivateDNSZoneSoaRecordObservation struct { type PrivateDNSZoneSoaRecordParameters struct { // The email contact for the SOA record. - // +kubebuilder:validation:Required - Email *string `json:"email" tf:"email,omitempty"` + // +kubebuilder:validation:Optional + Email *string `json:"email,omitempty" tf:"email,omitempty"` // The expire time for the SOA record. Defaults to 2419200. // +kubebuilder:validation:Optional @@ -132,6 +165,18 @@ type PrivateDNSZoneSoaRecordParameters struct { type PrivateDNSZoneSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateDNSZoneParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateDNSZoneInitParameters `json:"initProvider,omitempty"` } // PrivateDNSZoneStatus defines the observed state of PrivateDNSZone. diff --git a/apis/network/v1beta1/zz_privatednszonevirtualnetworklink_types.go b/apis/network/v1beta1/zz_privatednszonevirtualnetworklink_types.go index ff9d36d48..14beb7d76 100755 --- a/apis/network/v1beta1/zz_privatednszonevirtualnetworklink_types.go +++ b/apis/network/v1beta1/zz_privatednszonevirtualnetworklink_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateDNSZoneVirtualNetworkLinkInitParameters struct { + + // Is auto-registration of virtual machine records in the virtual network in the Private DNS zone enabled? Defaults to false. + RegistrationEnabled *bool `json:"registrationEnabled,omitempty" tf:"registration_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateDNSZoneVirtualNetworkLinkObservation struct { // The ID of the Private DNS Zone Virtual Network Link. @@ -89,6 +98,18 @@ type PrivateDNSZoneVirtualNetworkLinkParameters struct { type PrivateDNSZoneVirtualNetworkLinkSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateDNSZoneVirtualNetworkLinkParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateDNSZoneVirtualNetworkLinkInitParameters `json:"initProvider,omitempty"` } // PrivateDNSZoneVirtualNetworkLinkStatus defines the observed state of PrivateDNSZoneVirtualNetworkLink. diff --git a/apis/network/v1beta1/zz_privateendpoint_types.go b/apis/network/v1beta1/zz_privateendpoint_types.go index 69a1df7a3..dab78ceaa 100755 --- a/apis/network/v1beta1/zz_privateendpoint_types.go +++ b/apis/network/v1beta1/zz_privateendpoint_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomDNSConfigsInitParameters struct { +} + type CustomDNSConfigsObservation struct { // The fully qualified domain name to the private_endpoint. @@ -25,6 +28,9 @@ type CustomDNSConfigsObservation struct { type CustomDNSConfigsParameters struct { } +type PrivateDNSZoneConfigsInitParameters struct { +} + type PrivateDNSZoneConfigsObservation struct { // The ID of the Private DNS Zone Config. @@ -43,6 +49,12 @@ type PrivateDNSZoneConfigsObservation struct { type PrivateDNSZoneConfigsParameters struct { } +type PrivateDNSZoneGroupInitParameters struct { + + // Specifies the Name of the Private DNS Zone Group. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type PrivateDNSZoneGroupObservation struct { // The ID of the Private DNS Zone Group. @@ -58,8 +70,8 @@ type PrivateDNSZoneGroupObservation struct { type PrivateDNSZoneGroupParameters struct { // Specifies the Name of the Private DNS Zone Group. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the list of Private DNS Zones to include within the private_dns_zone_group. // +crossplane:generate:reference:type=PrivateDNSZone @@ -76,6 +88,21 @@ type PrivateDNSZoneGroupParameters struct { PrivateDNSZoneIdsSelector *v1.Selector `json:"privateDnsZoneIdsSelector,omitempty" tf:"-"` } +type PrivateEndpointIPConfigurationInitParameters struct { + + // Specifies the member name this IP address applies to. If it is not specified, it will use the value of subresource_name. Changing this forces a new resource to be created. + MemberName *string `json:"memberName,omitempty" tf:"member_name,omitempty"` + + // Specifies the Name of the IP Configuration. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the static IP address within the private endpoint's subnet to be used. Changing this forces a new resource to be created. + PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` + + // Specifies the subresource this IP address applies to. subresource_names corresponds to group_id. Changing this forces a new resource to be created. + SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` +} + type PrivateEndpointIPConfigurationObservation struct { // Specifies the member name this IP address applies to. If it is not specified, it will use the value of subresource_name. Changing this forces a new resource to be created. @@ -98,18 +125,42 @@ type PrivateEndpointIPConfigurationParameters struct { MemberName *string `json:"memberName,omitempty" tf:"member_name,omitempty"` // Specifies the Name of the IP Configuration. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the static IP address within the private endpoint's subnet to be used. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - PrivateIPAddress *string `json:"privateIpAddress" tf:"private_ip_address,omitempty"` + // +kubebuilder:validation:Optional + PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // Specifies the subresource this IP address applies to. subresource_names corresponds to group_id. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` } +type PrivateEndpointInitParameters struct { + + // The custom name of the network interface attached to the private endpoint. Changing this forces a new resource to be created. + CustomNetworkInterfaceName *string `json:"customNetworkInterfaceName,omitempty" tf:"custom_network_interface_name,omitempty"` + + // One or more ip_configuration blocks as defined below. This allows a static IP address to be set for this Private Endpoint, otherwise an address is dynamically allocated from the Subnet. + IPConfiguration []PrivateEndpointIPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` + + // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A private_dns_zone_group block as defined below. + PrivateDNSZoneGroup []PrivateDNSZoneGroupInitParameters `json:"privateDnsZoneGroup,omitempty" tf:"private_dns_zone_group,omitempty"` + + // A private_service_connection block as defined below. + PrivateServiceConnection []PrivateServiceConnectionInitParameters `json:"privateServiceConnection,omitempty" tf:"private_service_connection,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + +type PrivateEndpointNetworkInterfaceInitParameters struct { +} + type PrivateEndpointNetworkInterfaceObservation struct { // The ID of the network interface associated with the private_endpoint. @@ -215,6 +266,27 @@ type PrivateEndpointParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type PrivateServiceConnectionInitParameters struct { + + // Does the Private Endpoint require Manual Approval from the remote resource owner? Changing this forces a new resource to be created. + IsManualConnection *bool `json:"isManualConnection,omitempty" tf:"is_manual_connection,omitempty"` + + // Specifies the Name of the Private Service Connection. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Service Alias of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created. + PrivateConnectionResourceAlias *string `json:"privateConnectionResourceAlias,omitempty" tf:"private_connection_resource_alias,omitempty"` + + // The ID of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created. For a web app or function app slot, the parent web app should be used in this field instead of a reference to the slot itself. + PrivateConnectionResourceID *string `json:"privateConnectionResourceId,omitempty" tf:"private_connection_resource_id,omitempty"` + + // A message passed to the owner of the remote resource when the private endpoint attempts to establish the connection to the remote resource. The request message can be a maximum of 140 characters in length. Only valid if is_manual_connection is set to true. + RequestMessage *string `json:"requestMessage,omitempty" tf:"request_message,omitempty"` + + // A list of subresource names which the Private Endpoint is able to connect to. subresource_names corresponds to group_id. Possible values are detailed in the product documentation in the Subresources column. Changing this forces a new resource to be created. + SubresourceNames []*string `json:"subresourceNames,omitempty" tf:"subresource_names,omitempty"` +} + type PrivateServiceConnectionObservation struct { // Does the Private Endpoint require Manual Approval from the remote resource owner? Changing this forces a new resource to be created. @@ -242,12 +314,12 @@ type PrivateServiceConnectionObservation struct { type PrivateServiceConnectionParameters struct { // Does the Private Endpoint require Manual Approval from the remote resource owner? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IsManualConnection *bool `json:"isManualConnection" tf:"is_manual_connection,omitempty"` + // +kubebuilder:validation:Optional + IsManualConnection *bool `json:"isManualConnection,omitempty" tf:"is_manual_connection,omitempty"` // Specifies the Name of the Private Service Connection. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Service Alias of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional @@ -266,6 +338,9 @@ type PrivateServiceConnectionParameters struct { SubresourceNames []*string `json:"subresourceNames,omitempty" tf:"subresource_names,omitempty"` } +type RecordSetsInitParameters struct { +} + type RecordSetsObservation struct { // The fully qualified domain name to the private_dns_zone. @@ -291,6 +366,18 @@ type RecordSetsParameters struct { type PrivateEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateEndpointInitParameters `json:"initProvider,omitempty"` } // PrivateEndpointStatus defines the observed state of PrivateEndpoint. @@ -311,8 +398,8 @@ type PrivateEndpointStatus struct { type PrivateEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.privateServiceConnection)",message="privateServiceConnection is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.privateServiceConnection) || has(self.initProvider.privateServiceConnection)",message="privateServiceConnection is a required parameter" Spec PrivateEndpointSpec `json:"spec"` Status PrivateEndpointStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_privateendpointapplicationsecuritygroupassociation_types.go b/apis/network/v1beta1/zz_privateendpointapplicationsecuritygroupassociation_types.go index 675be9d3a..b40f0f117 100755 --- a/apis/network/v1beta1/zz_privateendpointapplicationsecuritygroupassociation_types.go +++ b/apis/network/v1beta1/zz_privateendpointapplicationsecuritygroupassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateEndpointApplicationSecurityGroupAssociationInitParameters struct { +} + type PrivateEndpointApplicationSecurityGroupAssociationObservation struct { // The id of application security group to associate. Changing this forces a new resource to be created. @@ -59,6 +62,18 @@ type PrivateEndpointApplicationSecurityGroupAssociationParameters struct { type PrivateEndpointApplicationSecurityGroupAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateEndpointApplicationSecurityGroupAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateEndpointApplicationSecurityGroupAssociationInitParameters `json:"initProvider,omitempty"` } // PrivateEndpointApplicationSecurityGroupAssociationStatus defines the observed state of PrivateEndpointApplicationSecurityGroupAssociation. diff --git a/apis/network/v1beta1/zz_privatelinkservice_types.go b/apis/network/v1beta1/zz_privatelinkservice_types.go index 311dc122f..a37332c03 100755 --- a/apis/network/v1beta1/zz_privatelinkservice_types.go +++ b/apis/network/v1beta1/zz_privatelinkservice_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NATIPConfigurationInitParameters struct { + + // Specifies the name which should be used for the NAT IP Configuration. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Is this is the Primary IP Configuration? Changing this forces a new resource to be created. + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` + + // Specifies a Private Static IP Address for this IP Configuration. + PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` + + // The version of the IP Protocol which should be used. At this time the only supported value is IPv4. Defaults to IPv4. + PrivateIPAddressVersion *string `json:"privateIpAddressVersion,omitempty" tf:"private_ip_address_version,omitempty"` +} + type NATIPConfigurationObservation struct { // Specifies the name which should be used for the NAT IP Configuration. Changing this forces a new resource to be created. @@ -34,12 +49,12 @@ type NATIPConfigurationObservation struct { type NATIPConfigurationParameters struct { // Specifies the name which should be used for the NAT IP Configuration. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this is the Primary IP Configuration? Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Primary *bool `json:"primary" tf:"primary,omitempty"` + // +kubebuilder:validation:Optional + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` // Specifies a Private Static IP Address for this IP Configuration. // +kubebuilder:validation:Optional @@ -64,6 +79,33 @@ type NATIPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type PrivateLinkServiceInitParameters struct { + + // A list of Subscription UUID/GUID's that will be automatically be able to use this Private Link Service. + AutoApprovalSubscriptionIds []*string `json:"autoApprovalSubscriptionIds,omitempty" tf:"auto_approval_subscription_ids,omitempty"` + + // Should the Private Link Service support the Proxy Protocol? + EnableProxyProtocol *bool `json:"enableProxyProtocol,omitempty" tf:"enable_proxy_protocol,omitempty"` + + // List of FQDNs allowed for the Private Link Service. + Fqdns []*string `json:"fqdns,omitempty" tf:"fqdns,omitempty"` + + // A list of Frontend IP Configuration IDs from a Standard Load Balancer, where traffic from the Private Link Service should be routed. You can use Load Balancer Rules to direct this traffic to appropriate backend pools where your applications are running. Changing this forces a new resource to be created. + LoadBalancerFrontendIPConfigurationIds []*string `json:"loadBalancerFrontendIpConfigurationIds,omitempty" tf:"load_balancer_frontend_ip_configuration_ids,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // One or more (up to 8) nat_ip_configuration block as defined below. + NATIPConfiguration []NATIPConfigurationInitParameters `json:"natIpConfiguration,omitempty" tf:"nat_ip_configuration,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A list of Subscription UUID/GUID's that will be able to see this Private Link Service. + VisibilitySubscriptionIds []*string `json:"visibilitySubscriptionIds,omitempty" tf:"visibility_subscription_ids,omitempty"` +} + type PrivateLinkServiceObservation struct { // A globally unique DNS Name for your Private Link Service. You can use this alias to request a connection to your Private Link Service. @@ -151,6 +193,18 @@ type PrivateLinkServiceParameters struct { type PrivateLinkServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateLinkServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateLinkServiceInitParameters `json:"initProvider,omitempty"` } // PrivateLinkServiceStatus defines the observed state of PrivateLinkService. @@ -171,9 +225,9 @@ type PrivateLinkServiceStatus struct { type PrivateLinkService struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.loadBalancerFrontendIpConfigurationIds)",message="loadBalancerFrontendIpConfigurationIds is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.natIpConfiguration)",message="natIpConfiguration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.loadBalancerFrontendIpConfigurationIds) || has(self.initProvider.loadBalancerFrontendIpConfigurationIds)",message="loadBalancerFrontendIpConfigurationIds is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.natIpConfiguration) || has(self.initProvider.natIpConfiguration)",message="natIpConfiguration is a required parameter" Spec PrivateLinkServiceSpec `json:"spec"` Status PrivateLinkServiceStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_profile_types.go b/apis/network/v1beta1/zz_profile_types.go index 058788b0c..b14210a1b 100755 --- a/apis/network/v1beta1/zz_profile_types.go +++ b/apis/network/v1beta1/zz_profile_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ContainerNetworkInterfaceIPConfigurationInitParameters struct { + + // Specifies the name of the Network Profile. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type ContainerNetworkInterfaceIPConfigurationObservation struct { // Specifies the name of the Network Profile. Changing this forces a new resource to be created. @@ -25,8 +31,8 @@ type ContainerNetworkInterfaceIPConfigurationObservation struct { type ContainerNetworkInterfaceIPConfigurationParameters struct { // Specifies the name of the Network Profile. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Reference to the subnet associated with the IP Configuration. // +crossplane:generate:reference:type=Subnet @@ -43,6 +49,15 @@ type ContainerNetworkInterfaceIPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type ContainerNetworkInterfaceInitParameters struct { + + // One or more ip_configuration blocks as documented below. + IPConfiguration []ContainerNetworkInterfaceIPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` + + // Specifies the name of the IP Configuration. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type ContainerNetworkInterfaceObservation struct { // One or more ip_configuration blocks as documented below. @@ -55,12 +70,24 @@ type ContainerNetworkInterfaceObservation struct { type ContainerNetworkInterfaceParameters struct { // One or more ip_configuration blocks as documented below. - // +kubebuilder:validation:Required - IPConfiguration []ContainerNetworkInterfaceIPConfigurationParameters `json:"ipConfiguration" tf:"ip_configuration,omitempty"` + // +kubebuilder:validation:Optional + IPConfiguration []ContainerNetworkInterfaceIPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // Specifies the name of the IP Configuration. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type ProfileInitParameters struct { + + // A container_network_interface block as documented below. + ContainerNetworkInterface []ContainerNetworkInterfaceInitParameters `json:"containerNetworkInterface,omitempty" tf:"container_network_interface,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type ProfileObservation struct { @@ -116,6 +143,18 @@ type ProfileParameters struct { type ProfileSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ProfileParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ProfileInitParameters `json:"initProvider,omitempty"` } // ProfileStatus defines the observed state of Profile. @@ -136,8 +175,8 @@ type ProfileStatus struct { type Profile struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.containerNetworkInterface)",message="containerNetworkInterface is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.containerNetworkInterface) || has(self.initProvider.containerNetworkInterface)",message="containerNetworkInterface is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ProfileSpec `json:"spec"` Status ProfileStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_publicip_types.go b/apis/network/v1beta1/zz_publicip_types.go index cd79fdf0c..8788b18fb 100755 --- a/apis/network/v1beta1/zz_publicip_types.go +++ b/apis/network/v1beta1/zz_publicip_types.go @@ -13,6 +13,54 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PublicIPInitParameters struct { + + // Defines the allocation method for this IP address. Possible values are Static or Dynamic. + AllocationMethod *string `json:"allocationMethod,omitempty" tf:"allocation_method,omitempty"` + + // The DDoS protection mode of the public IP. Possible values are Disabled, Enabled, and VirtualNetworkInherited. Defaults to VirtualNetworkInherited. + DDOSProtectionMode *string `json:"ddosProtectionMode,omitempty" tf:"ddos_protection_mode,omitempty"` + + // The ID of DDoS protection plan associated with the public IP. + DDOSProtectionPlanID *string `json:"ddosProtectionPlanId,omitempty" tf:"ddos_protection_plan_id,omitempty"` + + // Label for the Domain Name. Will be used to make up the FQDN. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system. + DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Public IP should exist. Changing this forces a new Public IP to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // A mapping of IP tags to assign to the public IP. Changing this forces a new resource to be created. + IPTags map[string]*string `json:"ipTags,omitempty" tf:"ip_tags,omitempty"` + + // The IP Version to use, IPv6 or IPv4. Changing this forces a new resource to be created. + IPVersion *string `json:"ipVersion,omitempty" tf:"ip_version,omitempty"` + + // Specifies the timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. + IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` + + // Specifies the supported Azure location where the Public IP should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // If specified then public IP address allocated will be provided from the public IP prefix resource. Changing this forces a new resource to be created. + PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"` + + // A fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN. + ReverseFqdn *string `json:"reverseFqdn,omitempty" tf:"reverse_fqdn,omitempty"` + + // The SKU of the Public IP. Accepted values are Basic and Standard. Defaults to Basic. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // The SKU Tier that should be used for the Public IP. Possible values are Regional and Global. Defaults to Regional. Changing this forces a new resource to be created. + SkuTier *string `json:"skuTier,omitempty" tf:"sku_tier,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A collection containing the availability zone to allocate the Public IP in. Changing this forces a new resource to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type PublicIPObservation struct { // Defines the allocation method for this IP address. Possible values are Static or Dynamic. @@ -153,6 +201,18 @@ type PublicIPParameters struct { type PublicIPSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PublicIPParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PublicIPInitParameters `json:"initProvider,omitempty"` } // PublicIPStatus defines the observed state of PublicIP. @@ -173,8 +233,8 @@ type PublicIPStatus struct { type PublicIP struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.allocationMethod)",message="allocationMethod is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.allocationMethod) || has(self.initProvider.allocationMethod)",message="allocationMethod is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec PublicIPSpec `json:"spec"` Status PublicIPStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_publicipprefix_types.go b/apis/network/v1beta1/zz_publicipprefix_types.go index 42e5c5a1c..16f8be619 100755 --- a/apis/network/v1beta1/zz_publicipprefix_types.go +++ b/apis/network/v1beta1/zz_publicipprefix_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PublicIPPrefixInitParameters struct { + + // The IP Version to use, IPv6 or IPv4. Changing this forces a new resource to be created. Default is IPv4. + IPVersion *string `json:"ipVersion,omitempty" tf:"ip_version,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the number of bits of the prefix. The value can be set between 0 (4,294,967,296 addresses) and 31 (2 addresses). Defaults to 28(16 addresses). Changing this forces a new resource to be created. + PrefixLength *float64 `json:"prefixLength,omitempty" tf:"prefix_length,omitempty"` + + // The SKU of the Public IP Prefix. Accepted values are Standard. Defaults to Standard. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies a list of Availability Zones in which this Public IP Prefix should be located. Changing this forces a new Public IP Prefix to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type PublicIPPrefixObservation struct { // The Public IP Prefix ID. @@ -87,6 +108,18 @@ type PublicIPPrefixParameters struct { type PublicIPPrefixSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PublicIPPrefixParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PublicIPPrefixInitParameters `json:"initProvider,omitempty"` } // PublicIPPrefixStatus defines the observed state of PublicIPPrefix. @@ -107,7 +140,7 @@ type PublicIPPrefixStatus struct { type PublicIPPrefix struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec PublicIPPrefixSpec `json:"spec"` Status PublicIPPrefixStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_route_types.go b/apis/network/v1beta1/zz_route_types.go index 6f1231404..b61a60e56 100755 --- a/apis/network/v1beta1/zz_route_types.go +++ b/apis/network/v1beta1/zz_route_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RouteInitParameters_2 struct { + + // The destination to which the route applies. Can be CIDR (such as 10.1.0.0/16) or Azure Service Tag (such as ApiManagement, AzureBackup or AzureMonitor) format. + AddressPrefix *string `json:"addressPrefix,omitempty" tf:"address_prefix,omitempty"` + + // Contains the IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance. + NextHopInIPAddress *string `json:"nextHopInIpAddress,omitempty" tf:"next_hop_in_ip_address,omitempty"` + + // The type of Azure hop the packet should be sent to. Possible values are VirtualNetworkGateway, VnetLocal, Internet, VirtualAppliance and None. + NextHopType *string `json:"nextHopType,omitempty" tf:"next_hop_type,omitempty"` +} + type RouteObservation_2 struct { // The destination to which the route applies. Can be CIDR (such as 10.1.0.0/16) or Azure Service Tag (such as ApiManagement, AzureBackup or AzureMonitor) format. @@ -79,6 +91,18 @@ type RouteParameters_2 struct { type RouteSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RouteParameters_2 `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RouteInitParameters_2 `json:"initProvider,omitempty"` } // RouteStatus defines the observed state of Route. @@ -99,8 +123,8 @@ type RouteStatus struct { type Route struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.addressPrefix)",message="addressPrefix is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nextHopType)",message="nextHopType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.addressPrefix) || has(self.initProvider.addressPrefix)",message="addressPrefix is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.nextHopType) || has(self.initProvider.nextHopType)",message="nextHopType is a required parameter" Spec RouteSpec `json:"spec"` Status RouteStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_routefilter_types.go b/apis/network/v1beta1/zz_routefilter_types.go index c999bc03e..00643ff3c 100755 --- a/apis/network/v1beta1/zz_routefilter_types.go +++ b/apis/network/v1beta1/zz_routefilter_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RouteFilterInitParameters struct { + + // The Azure Region where the Route Filter should exist. Changing this forces a new Route Filter to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A rule block as defined below. + Rule []RouteFilterRuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` + + // A mapping of tags which should be assigned to the Route Filter. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type RouteFilterObservation struct { // The ID of the Route Filter. @@ -59,6 +71,21 @@ type RouteFilterParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type RouteFilterRuleInitParameters struct { + + // The access type of the rule. The only possible value is Allow. + Access *string `json:"access,omitempty" tf:"access"` + + // The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']. + Communities []*string `json:"communities,omitempty" tf:"communities"` + + // The name of the route filter rule. + Name *string `json:"name,omitempty" tf:"name"` + + // The rule type of the rule. The only possible value is Community. + RuleType *string `json:"ruleType,omitempty" tf:"rule_type"` +} + type RouteFilterRuleObservation struct { // The access type of the rule. The only possible value is Allow. @@ -97,6 +124,18 @@ type RouteFilterRuleParameters struct { type RouteFilterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RouteFilterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RouteFilterInitParameters `json:"initProvider,omitempty"` } // RouteFilterStatus defines the observed state of RouteFilter. @@ -117,7 +156,7 @@ type RouteFilterStatus struct { type RouteFilter struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec RouteFilterSpec `json:"spec"` Status RouteFilterStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_routemap_types.go b/apis/network/v1beta1/zz_routemap_types.go index 1c7a0baa3..6fd9f321c 100755 --- a/apis/network/v1beta1/zz_routemap_types.go +++ b/apis/network/v1beta1/zz_routemap_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MatchCriterionInitParameters struct { + + // A list of AS paths. + AsPath []*string `json:"asPath,omitempty" tf:"as_path,omitempty"` + + // A list of BGP communities. + Community []*string `json:"community,omitempty" tf:"community,omitempty"` + + // The match condition to apply the rule of the Route Map. Possible values are Contains, Equals, NotContains, NotEquals and Unknown. + MatchCondition *string `json:"matchCondition,omitempty" tf:"match_condition,omitempty"` + + // A list of route prefixes. + RoutePrefix []*string `json:"routePrefix,omitempty" tf:"route_prefix,omitempty"` +} + type MatchCriterionObservation struct { // A list of AS paths. @@ -39,14 +54,26 @@ type MatchCriterionParameters struct { Community []*string `json:"community,omitempty" tf:"community,omitempty"` // The match condition to apply the rule of the Route Map. Possible values are Contains, Equals, NotContains, NotEquals and Unknown. - // +kubebuilder:validation:Required - MatchCondition *string `json:"matchCondition" tf:"match_condition,omitempty"` + // +kubebuilder:validation:Optional + MatchCondition *string `json:"matchCondition,omitempty" tf:"match_condition,omitempty"` // A list of route prefixes. // +kubebuilder:validation:Optional RoutePrefix []*string `json:"routePrefix,omitempty" tf:"route_prefix,omitempty"` } +type ParameterInitParameters struct { + + // A list of AS paths. + AsPath []*string `json:"asPath,omitempty" tf:"as_path,omitempty"` + + // A list of BGP communities. + Community []*string `json:"community,omitempty" tf:"community,omitempty"` + + // A list of route prefixes. + RoutePrefix []*string `json:"routePrefix,omitempty" tf:"route_prefix,omitempty"` +} + type ParameterObservation struct { // A list of AS paths. @@ -74,6 +101,12 @@ type ParameterParameters struct { RoutePrefix []*string `json:"routePrefix,omitempty" tf:"route_prefix,omitempty"` } +type RouteMapInitParameters struct { + + // A rule block as defined below. + Rule []RouteMapRuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + type RouteMapObservation struct { // The ID of the Route Map. @@ -107,6 +140,21 @@ type RouteMapParameters struct { VirtualHubIDSelector *v1.Selector `json:"virtualHubIdSelector,omitempty" tf:"-"` } +type RouteMapRuleInitParameters struct { + + // An action block as defined below. + Action []RuleActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // A match_criterion block as defined below. + MatchCriterion []MatchCriterionInitParameters `json:"matchCriterion,omitempty" tf:"match_criterion,omitempty"` + + // The unique name for the rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The next step after the rule is evaluated. Possible values are Continue, Terminate and Unknown. Defaults to Unknown. + NextStepIfMatched *string `json:"nextStepIfMatched,omitempty" tf:"next_step_if_matched,omitempty"` +} + type RouteMapRuleObservation struct { // An action block as defined below. @@ -133,14 +181,23 @@ type RouteMapRuleParameters struct { MatchCriterion []MatchCriterionParameters `json:"matchCriterion,omitempty" tf:"match_criterion,omitempty"` // The unique name for the rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The next step after the rule is evaluated. Possible values are Continue, Terminate and Unknown. Defaults to Unknown. // +kubebuilder:validation:Optional NextStepIfMatched *string `json:"nextStepIfMatched,omitempty" tf:"next_step_if_matched,omitempty"` } +type RuleActionInitParameters struct { + + // A parameter block as defined below. + Parameter []ParameterInitParameters `json:"parameter,omitempty" tf:"parameter,omitempty"` + + // The type of the action to be taken. Possible values are Add, Drop, Remove, Replace and Unknown. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type RuleActionObservation struct { // A parameter block as defined below. @@ -153,18 +210,30 @@ type RuleActionObservation struct { type RuleActionParameters struct { // A parameter block as defined below. - // +kubebuilder:validation:Required - Parameter []ParameterParameters `json:"parameter" tf:"parameter,omitempty"` + // +kubebuilder:validation:Optional + Parameter []ParameterParameters `json:"parameter,omitempty" tf:"parameter,omitempty"` // The type of the action to be taken. Possible values are Add, Drop, Remove, Replace and Unknown. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // RouteMapSpec defines the desired state of RouteMap type RouteMapSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RouteMapParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RouteMapInitParameters `json:"initProvider,omitempty"` } // RouteMapStatus defines the observed state of RouteMap. diff --git a/apis/network/v1beta1/zz_routeserver_types.go b/apis/network/v1beta1/zz_routeserver_types.go index 7c1409554..e958e7389 100755 --- a/apis/network/v1beta1/zz_routeserver_types.go +++ b/apis/network/v1beta1/zz_routeserver_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RouteServerInitParameters struct { + + // Whether to enable route exchange between Azure Route Server and the gateway(s) + BranchToBranchTrafficEnabled *bool `json:"branchToBranchTrafficEnabled,omitempty" tf:"branch_to_branch_traffic_enabled,omitempty"` + + // Specifies the supported Azure location where the Route Server should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The SKU of the Route Server. The only possible value is Standard. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type RouteServerObservation struct { // Whether to enable route exchange between Azure Route Server and the gateway(s) @@ -110,6 +125,18 @@ type RouteServerParameters struct { type RouteServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RouteServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RouteServerInitParameters `json:"initProvider,omitempty"` } // RouteServerStatus defines the observed state of RouteServer. @@ -130,8 +157,8 @@ type RouteServerStatus struct { type RouteServer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec RouteServerSpec `json:"spec"` Status RouteServerStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_routeserverbgpconnection_types.go b/apis/network/v1beta1/zz_routeserverbgpconnection_types.go index 730466397..c01d148e9 100755 --- a/apis/network/v1beta1/zz_routeserverbgpconnection_types.go +++ b/apis/network/v1beta1/zz_routeserverbgpconnection_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RouteServerBGPConnectionInitParameters struct { + + // The peer autonomous system number for the Route Server Bgp Connection. Changing this forces a new resource to be created. + PeerAsn *float64 `json:"peerAsn,omitempty" tf:"peer_asn,omitempty"` + + // The peer ip address for the Route Server Bgp Connection. Changing this forces a new resource to be created. + PeerIP *string `json:"peerIp,omitempty" tf:"peer_ip,omitempty"` +} + type RouteServerBGPConnectionObservation struct { // The ID of the Route Server Bgp Connection. @@ -57,6 +66,18 @@ type RouteServerBGPConnectionParameters struct { type RouteServerBGPConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RouteServerBGPConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RouteServerBGPConnectionInitParameters `json:"initProvider,omitempty"` } // RouteServerBGPConnectionStatus defines the observed state of RouteServerBGPConnection. @@ -77,8 +98,8 @@ type RouteServerBGPConnectionStatus struct { type RouteServerBGPConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.peerAsn)",message="peerAsn is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.peerIp)",message="peerIp is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.peerAsn) || has(self.initProvider.peerAsn)",message="peerAsn is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.peerIp) || has(self.initProvider.peerIp)",message="peerIp is a required parameter" Spec RouteServerBGPConnectionSpec `json:"spec"` Status RouteServerBGPConnectionStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_routetable_types.go b/apis/network/v1beta1/zz_routetable_types.go index 773d5e8ed..718092070 100755 --- a/apis/network/v1beta1/zz_routetable_types.go +++ b/apis/network/v1beta1/zz_routetable_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RouteTableInitParameters struct { + + // Boolean flag which controls propagation of routes learned by BGP on that route table. True means disable. + DisableBGPRoutePropagation *bool `json:"disableBgpRoutePropagation,omitempty" tf:"disable_bgp_route_propagation,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // List of objects representing routes. Each object accepts the arguments documented below. + Route []RouteTableRouteInitParameters `json:"route,omitempty" tf:"route,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type RouteTableObservation struct { // Boolean flag which controls propagation of routes learned by BGP on that route table. True means disable. @@ -69,6 +84,21 @@ type RouteTableParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type RouteTableRouteInitParameters struct { + + // The destination to which the route applies. Can be CIDR (such as 10.1.0.0/16) or Azure Service Tag (such as ApiManagement, AzureBackup or AzureMonitor) format. + AddressPrefix *string `json:"addressPrefix,omitempty" tf:"address_prefix"` + + // The name of the route. + Name *string `json:"name,omitempty" tf:"name"` + + // Contains the IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance. + NextHopInIPAddress *string `json:"nextHopInIpAddress,omitempty" tf:"next_hop_in_ip_address"` + + // The type of Azure hop the packet should be sent to. Possible values are VirtualNetworkGateway, VnetLocal, Internet, VirtualAppliance and None. + NextHopType *string `json:"nextHopType,omitempty" tf:"next_hop_type"` +} + type RouteTableRouteObservation struct { // The destination to which the route applies. Can be CIDR (such as 10.1.0.0/16) or Azure Service Tag (such as ApiManagement, AzureBackup or AzureMonitor) format. @@ -107,6 +137,18 @@ type RouteTableRouteParameters struct { type RouteTableSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RouteTableParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RouteTableInitParameters `json:"initProvider,omitempty"` } // RouteTableStatus defines the observed state of RouteTable. @@ -127,7 +169,7 @@ type RouteTableStatus struct { type RouteTable struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec RouteTableSpec `json:"spec"` Status RouteTableStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_securitygroup_types.go b/apis/network/v1beta1/zz_securitygroup_types.go index 343125936..d0c528dcd 100755 --- a/apis/network/v1beta1/zz_securitygroup_types.go +++ b/apis/network/v1beta1/zz_securitygroup_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityGroupInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // List of objects representing security rules, as defined below. + SecurityRule []SecurityRuleInitParameters `json:"securityRule,omitempty" tf:"security_rule,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type SecurityGroupObservation struct { // The ID of the Network Security Group. @@ -59,6 +71,57 @@ type SecurityGroupParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type SecurityRuleInitParameters struct { + + // Specifies whether network traffic is allowed or denied. Possible values are Allow and Deny. + Access *string `json:"access,omitempty" tf:"access"` + + // A description for this rule. Restricted to 140 characters. + Description *string `json:"description,omitempty" tf:"description"` + + // CIDR or destination IP range or * to match any IP. Tags such as VirtualNetwork, AzureLoadBalancer and Internet can also be used. This is required if destination_address_prefixes is not specified. + DestinationAddressPrefix *string `json:"destinationAddressPrefix,omitempty" tf:"destination_address_prefix"` + + // List of destination address prefixes. Tags may not be used. This is required if destination_address_prefix is not specified. + DestinationAddressPrefixes []*string `json:"destinationAddressPrefixes,omitempty" tf:"destination_address_prefixes"` + + // A List of destination Application Security Group IDs + DestinationApplicationSecurityGroupIds []*string `json:"destinationApplicationSecurityGroupIds,omitempty" tf:"destination_application_security_group_ids"` + + // Destination Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if destination_port_ranges is not specified. + DestinationPortRange *string `json:"destinationPortRange,omitempty" tf:"destination_port_range"` + + // List of destination ports or port ranges. This is required if destination_port_range is not specified. + DestinationPortRanges []*string `json:"destinationPortRanges,omitempty" tf:"destination_port_ranges"` + + // The direction specifies if rule will be evaluated on incoming or outgoing traffic. Possible values are Inbound and Outbound. + Direction *string `json:"direction,omitempty" tf:"direction"` + + // The name of the security rule. + Name *string `json:"name,omitempty" tf:"name"` + + // Specifies the priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule. + Priority *float64 `json:"priority,omitempty" tf:"priority"` + + // Network protocol this rule applies to. Possible values include Tcp, Udp, Icmp, Esp, Ah or * (which matches all). + Protocol *string `json:"protocol,omitempty" tf:"protocol"` + + // CIDR or source IP range or * to match any IP. Tags such as VirtualNetwork, AzureLoadBalancer and Internet can also be used. This is required if source_address_prefixes is not specified. + SourceAddressPrefix *string `json:"sourceAddressPrefix,omitempty" tf:"source_address_prefix"` + + // List of source address prefixes. Tags may not be used. This is required if source_address_prefix is not specified. + SourceAddressPrefixes []*string `json:"sourceAddressPrefixes,omitempty" tf:"source_address_prefixes"` + + // A List of source Application Security Group IDs + SourceApplicationSecurityGroupIds []*string `json:"sourceApplicationSecurityGroupIds,omitempty" tf:"source_application_security_group_ids"` + + // Source Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if source_port_ranges is not specified. + SourcePortRange *string `json:"sourcePortRange,omitempty" tf:"source_port_range"` + + // List of source ports or port ranges. This is required if source_port_range is not specified. + SourcePortRanges []*string `json:"sourcePortRanges,omitempty" tf:"source_port_ranges"` +} + type SecurityRuleObservation struct { // Specifies whether network traffic is allowed or denied. Possible values are Allow and Deny. @@ -181,6 +244,18 @@ type SecurityRuleParameters struct { type SecurityGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityGroupInitParameters `json:"initProvider,omitempty"` } // SecurityGroupStatus defines the observed state of SecurityGroup. @@ -201,7 +276,7 @@ type SecurityGroupStatus struct { type SecurityGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SecurityGroupSpec `json:"spec"` Status SecurityGroupStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_securityrule_types.go b/apis/network/v1beta1/zz_securityrule_types.go index b1d6ba2e3..b1df36170 100755 --- a/apis/network/v1beta1/zz_securityrule_types.go +++ b/apis/network/v1beta1/zz_securityrule_types.go @@ -13,6 +13,54 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityRuleInitParameters_2 struct { + + // Specifies whether network traffic is allowed or denied. Possible values are Allow and Deny. + Access *string `json:"access,omitempty" tf:"access,omitempty"` + + // A description for this rule. Restricted to 140 characters. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // CIDR or destination IP range or * to match any IP. Tags such as VirtualNetwork, AzureLoadBalancer and Internet can also be used. Besides, it also supports all available Service Tags like ‘Sql.WestEurope‘, ‘Storage.EastUS‘, etc. You can list the available service tags with the CLI: shell az network list-service-tags --location westcentralus. For further information please see Azure CLI - az network list-service-tags. This is required if destination_address_prefixes is not specified. + DestinationAddressPrefix *string `json:"destinationAddressPrefix,omitempty" tf:"destination_address_prefix,omitempty"` + + // List of destination address prefixes. Tags may not be used. This is required if destination_address_prefix is not specified. + DestinationAddressPrefixes []*string `json:"destinationAddressPrefixes,omitempty" tf:"destination_address_prefixes,omitempty"` + + // A List of destination Application Security Group IDs + DestinationApplicationSecurityGroupIds []*string `json:"destinationApplicationSecurityGroupIds,omitempty" tf:"destination_application_security_group_ids,omitempty"` + + // Destination Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if destination_port_ranges is not specified. + DestinationPortRange *string `json:"destinationPortRange,omitempty" tf:"destination_port_range,omitempty"` + + // List of destination ports or port ranges. This is required if destination_port_range is not specified. + DestinationPortRanges []*string `json:"destinationPortRanges,omitempty" tf:"destination_port_ranges,omitempty"` + + // The direction specifies if rule will be evaluated on incoming or outgoing traffic. Possible values are Inbound and Outbound. + Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` + + // Specifies the priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // Network protocol this rule applies to. Possible values include Tcp, Udp, Icmp, Esp, Ah or * (which matches all). + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // CIDR or source IP range or * to match any IP. Tags such as VirtualNetwork, AzureLoadBalancer and Internet can also be used. This is required if source_address_prefixes is not specified. + SourceAddressPrefix *string `json:"sourceAddressPrefix,omitempty" tf:"source_address_prefix,omitempty"` + + // List of source address prefixes. Tags may not be used. This is required if source_address_prefix is not specified. + SourceAddressPrefixes []*string `json:"sourceAddressPrefixes,omitempty" tf:"source_address_prefixes,omitempty"` + + // A List of source Application Security Group IDs + SourceApplicationSecurityGroupIds []*string `json:"sourceApplicationSecurityGroupIds,omitempty" tf:"source_application_security_group_ids,omitempty"` + + // Source Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if source_port_ranges is not specified. + SourcePortRange *string `json:"sourcePortRange,omitempty" tf:"source_port_range,omitempty"` + + // List of source ports or port ranges. This is required if source_port_range is not specified. + SourcePortRanges []*string `json:"sourcePortRanges,omitempty" tf:"source_port_ranges,omitempty"` +} + type SecurityRuleObservation_2 struct { // Specifies whether network traffic is allowed or denied. Possible values are Allow and Deny. @@ -163,6 +211,18 @@ type SecurityRuleParameters_2 struct { type SecurityRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityRuleParameters_2 `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityRuleInitParameters_2 `json:"initProvider,omitempty"` } // SecurityRuleStatus defines the observed state of SecurityRule. @@ -183,10 +243,10 @@ type SecurityRuleStatus struct { type SecurityRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.access)",message="access is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.direction)",message="direction is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.priority)",message="priority is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol)",message="protocol is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.access) || has(self.initProvider.access)",message="access is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.direction) || has(self.initProvider.direction)",message="direction is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.priority) || has(self.initProvider.priority)",message="priority is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.protocol) || has(self.initProvider.protocol)",message="protocol is a required parameter" Spec SecurityRuleSpec `json:"spec"` Status SecurityRuleStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_subnet_types.go b/apis/network/v1beta1/zz_subnet_types.go index decf5717f..949fdd9a9 100755 --- a/apis/network/v1beta1/zz_subnet_types.go +++ b/apis/network/v1beta1/zz_subnet_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DelegationInitParameters struct { + + // A name for this delegation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A service_delegation block as defined below. + ServiceDelegation []ServiceDelegationInitParameters `json:"serviceDelegation,omitempty" tf:"service_delegation,omitempty"` +} + type DelegationObservation struct { // A name for this delegation. @@ -25,12 +34,21 @@ type DelegationObservation struct { type DelegationParameters struct { // A name for this delegation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A service_delegation block as defined below. - // +kubebuilder:validation:Required - ServiceDelegation []ServiceDelegationParameters `json:"serviceDelegation" tf:"service_delegation,omitempty"` + // +kubebuilder:validation:Optional + ServiceDelegation []ServiceDelegationParameters `json:"serviceDelegation,omitempty" tf:"service_delegation,omitempty"` +} + +type ServiceDelegationInitParameters struct { + + // A list of Actions which should be delegated. This list is specific to the service to delegate to. Possible values are Microsoft.Network/networkinterfaces/*, Microsoft.Network/publicIPAddresses/join/action, Microsoft.Network/publicIPAddresses/read, Microsoft.Network/virtualNetworks/read, Microsoft.Network/virtualNetworks/subnets/action, Microsoft.Network/virtualNetworks/subnets/join/action, Microsoft.Network/virtualNetworks/subnets/prepareNetworkPolicies/action, and Microsoft.Network/virtualNetworks/subnets/unprepareNetworkPolicies/action. + Actions []*string `json:"actions,omitempty" tf:"actions,omitempty"` + + // The name of service to delegate to. Possible values are Microsoft.ApiManagement/service, Microsoft.AzureCosmosDB/clusters, Microsoft.BareMetal/AzureVMware, Microsoft.BareMetal/CrayServers, Microsoft.Batch/batchAccounts, Microsoft.ContainerInstance/containerGroups, Microsoft.ContainerService/managedClusters, Microsoft.Databricks/workspaces, Microsoft.DBforMySQL/flexibleServers, Microsoft.DBforMySQL/serversv2, Microsoft.DBforPostgreSQL/flexibleServers, Microsoft.DBforPostgreSQL/serversv2, Microsoft.DBforPostgreSQL/singleServers, Microsoft.HardwareSecurityModules/dedicatedHSMs, Microsoft.Kusto/clusters, Microsoft.Logic/integrationServiceEnvironments, Microsoft.LabServices/labplans, Microsoft.MachineLearningServices/workspaces, Microsoft.Netapp/volumes, Microsoft.Network/dnsResolvers, Microsoft.Network/managedResolvers, Microsoft.PowerPlatform/vnetaccesslinks, Microsoft.ServiceFabricMesh/networks, Microsoft.Sql/managedInstances, Microsoft.Sql/servers, Microsoft.StoragePool/diskPools, Microsoft.StreamAnalytics/streamingJobs, Microsoft.Synapse/workspaces, Microsoft.Web/hostingEnvironments, Microsoft.Web/serverFarms, Microsoft.Orbital/orbitalGateways, NGINX.NGINXPLUS/nginxDeployments, PaloAltoNetworks.Cloudngfw/firewalls, and Qumulo.Storage/fileSystems. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type ServiceDelegationObservation struct { @@ -49,8 +67,33 @@ type ServiceDelegationParameters struct { Actions []*string `json:"actions,omitempty" tf:"actions,omitempty"` // The name of service to delegate to. Possible values are Microsoft.ApiManagement/service, Microsoft.AzureCosmosDB/clusters, Microsoft.BareMetal/AzureVMware, Microsoft.BareMetal/CrayServers, Microsoft.Batch/batchAccounts, Microsoft.ContainerInstance/containerGroups, Microsoft.ContainerService/managedClusters, Microsoft.Databricks/workspaces, Microsoft.DBforMySQL/flexibleServers, Microsoft.DBforMySQL/serversv2, Microsoft.DBforPostgreSQL/flexibleServers, Microsoft.DBforPostgreSQL/serversv2, Microsoft.DBforPostgreSQL/singleServers, Microsoft.HardwareSecurityModules/dedicatedHSMs, Microsoft.Kusto/clusters, Microsoft.Logic/integrationServiceEnvironments, Microsoft.LabServices/labplans, Microsoft.MachineLearningServices/workspaces, Microsoft.Netapp/volumes, Microsoft.Network/dnsResolvers, Microsoft.Network/managedResolvers, Microsoft.PowerPlatform/vnetaccesslinks, Microsoft.ServiceFabricMesh/networks, Microsoft.Sql/managedInstances, Microsoft.Sql/servers, Microsoft.StoragePool/diskPools, Microsoft.StreamAnalytics/streamingJobs, Microsoft.Synapse/workspaces, Microsoft.Web/hostingEnvironments, Microsoft.Web/serverFarms, Microsoft.Orbital/orbitalGateways, NGINX.NGINXPLUS/nginxDeployments, PaloAltoNetworks.Cloudngfw/firewalls, and Qumulo.Storage/fileSystems. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type SubnetInitParameters struct { + + // The address prefixes to use for the subnet. + AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` + + // One or more delegation blocks as defined below. + Delegation []DelegationInitParameters `json:"delegation,omitempty" tf:"delegation,omitempty"` + + EnforcePrivateLinkEndpointNetworkPolicies *bool `json:"enforcePrivateLinkEndpointNetworkPolicies,omitempty" tf:"enforce_private_link_endpoint_network_policies,omitempty"` + + EnforcePrivateLinkServiceNetworkPolicies *bool `json:"enforcePrivateLinkServiceNetworkPolicies,omitempty" tf:"enforce_private_link_service_network_policies,omitempty"` + + // Enable or Disable network policies for the private endpoint on the subnet. Setting this to true will Enable the policy and setting this to false will Disable the policy. Defaults to true. + PrivateEndpointNetworkPoliciesEnabled *bool `json:"privateEndpointNetworkPoliciesEnabled,omitempty" tf:"private_endpoint_network_policies_enabled,omitempty"` + + // Enable or Disable network policies for the private link service on the subnet. Setting this to true will Enable the policy and setting this to false will Disable the policy. Defaults to true. + PrivateLinkServiceNetworkPoliciesEnabled *bool `json:"privateLinkServiceNetworkPoliciesEnabled,omitempty" tf:"private_link_service_network_policies_enabled,omitempty"` + + // The list of IDs of Service Endpoint Policies to associate with the subnet. + ServiceEndpointPolicyIds []*string `json:"serviceEndpointPolicyIds,omitempty" tf:"service_endpoint_policy_ids,omitempty"` + + // The list of Service endpoints to associate with the subnet. Possible values include: Microsoft.AzureActiveDirectory, Microsoft.AzureCosmosDB, Microsoft.ContainerRegistry, Microsoft.EventHub, Microsoft.KeyVault, Microsoft.ServiceBus, Microsoft.Sql, Microsoft.Storage, Microsoft.Storage.Global and Microsoft.Web. + ServiceEndpoints []*string `json:"serviceEndpoints,omitempty" tf:"service_endpoints,omitempty"` } type SubnetObservation struct { @@ -150,6 +193,18 @@ type SubnetParameters struct { type SubnetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubnetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubnetInitParameters `json:"initProvider,omitempty"` } // SubnetStatus defines the observed state of Subnet. @@ -170,7 +225,7 @@ type SubnetStatus struct { type Subnet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.addressPrefixes)",message="addressPrefixes is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.addressPrefixes) || has(self.initProvider.addressPrefixes)",message="addressPrefixes is a required parameter" Spec SubnetSpec `json:"spec"` Status SubnetStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_subnetnatgatewayassociation_types.go b/apis/network/v1beta1/zz_subnetnatgatewayassociation_types.go index 062caf579..a609c80e3 100755 --- a/apis/network/v1beta1/zz_subnetnatgatewayassociation_types.go +++ b/apis/network/v1beta1/zz_subnetnatgatewayassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubnetNATGatewayAssociationInitParameters struct { +} + type SubnetNATGatewayAssociationObservation struct { // The ID of the Subnet. @@ -60,6 +63,18 @@ type SubnetNATGatewayAssociationParameters struct { type SubnetNATGatewayAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubnetNATGatewayAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubnetNATGatewayAssociationInitParameters `json:"initProvider,omitempty"` } // SubnetNATGatewayAssociationStatus defines the observed state of SubnetNATGatewayAssociation. diff --git a/apis/network/v1beta1/zz_subnetnetworksecuritygroupassociation_types.go b/apis/network/v1beta1/zz_subnetnetworksecuritygroupassociation_types.go index b26f3b417..0c83193a8 100755 --- a/apis/network/v1beta1/zz_subnetnetworksecuritygroupassociation_types.go +++ b/apis/network/v1beta1/zz_subnetnetworksecuritygroupassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubnetNetworkSecurityGroupAssociationInitParameters struct { +} + type SubnetNetworkSecurityGroupAssociationObservation struct { // The ID of the Subnet. @@ -60,6 +63,18 @@ type SubnetNetworkSecurityGroupAssociationParameters struct { type SubnetNetworkSecurityGroupAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubnetNetworkSecurityGroupAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubnetNetworkSecurityGroupAssociationInitParameters `json:"initProvider,omitempty"` } // SubnetNetworkSecurityGroupAssociationStatus defines the observed state of SubnetNetworkSecurityGroupAssociation. diff --git a/apis/network/v1beta1/zz_subnetroutetableassociation_types.go b/apis/network/v1beta1/zz_subnetroutetableassociation_types.go index 425bc3219..776db1645 100755 --- a/apis/network/v1beta1/zz_subnetroutetableassociation_types.go +++ b/apis/network/v1beta1/zz_subnetroutetableassociation_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubnetRouteTableAssociationInitParameters struct { +} + type SubnetRouteTableAssociationObservation struct { // The ID of the Subnet. @@ -60,6 +63,18 @@ type SubnetRouteTableAssociationParameters struct { type SubnetRouteTableAssociationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubnetRouteTableAssociationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubnetRouteTableAssociationInitParameters `json:"initProvider,omitempty"` } // SubnetRouteTableAssociationStatus defines the observed state of SubnetRouteTableAssociation. diff --git a/apis/network/v1beta1/zz_subnetserviceendpointstoragepolicy_types.go b/apis/network/v1beta1/zz_subnetserviceendpointstoragepolicy_types.go index 77b8fd3b7..897da7833 100755 --- a/apis/network/v1beta1/zz_subnetserviceendpointstoragepolicy_types.go +++ b/apis/network/v1beta1/zz_subnetserviceendpointstoragepolicy_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DefinitionInitParameters struct { + + // The description of this Subnet Service Endpoint Storage Policy Definition. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The name which should be used for this Subnet Service Endpoint Storage Policy Definition. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of resources that this Subnet Service Endpoint Storage Policy Definition applies to. + ServiceResources []*string `json:"serviceResources,omitempty" tf:"service_resources,omitempty"` +} + type DefinitionObservation struct { // The description of this Subnet Service Endpoint Storage Policy Definition. @@ -32,12 +44,24 @@ type DefinitionParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name which should be used for this Subnet Service Endpoint Storage Policy Definition. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of resources that this Subnet Service Endpoint Storage Policy Definition applies to. - // +kubebuilder:validation:Required - ServiceResources []*string `json:"serviceResources" tf:"service_resources,omitempty"` + // +kubebuilder:validation:Optional + ServiceResources []*string `json:"serviceResources,omitempty" tf:"service_resources,omitempty"` +} + +type SubnetServiceEndpointStoragePolicyInitParameters struct { + + // A definition block as defined below + Definition []DefinitionInitParameters `json:"definition,omitempty" tf:"definition,omitempty"` + + // The Azure Region where the Subnet Service Endpoint Storage Policy should exist. Changing this forces a new Subnet Service Endpoint Storage Policy to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Subnet Service Endpoint Storage Policy. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type SubnetServiceEndpointStoragePolicyObservation struct { @@ -90,6 +114,18 @@ type SubnetServiceEndpointStoragePolicyParameters struct { type SubnetServiceEndpointStoragePolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubnetServiceEndpointStoragePolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubnetServiceEndpointStoragePolicyInitParameters `json:"initProvider,omitempty"` } // SubnetServiceEndpointStoragePolicyStatus defines the observed state of SubnetServiceEndpointStoragePolicy. @@ -110,7 +146,7 @@ type SubnetServiceEndpointStoragePolicyStatus struct { type SubnetServiceEndpointStoragePolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SubnetServiceEndpointStoragePolicySpec `json:"spec"` Status SubnetServiceEndpointStoragePolicyStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_trafficmanagerazureendpoint_types.go b/apis/network/v1beta1/zz_trafficmanagerazureendpoint_types.go index d570d5f1e..54fc28e24 100755 --- a/apis/network/v1beta1/zz_trafficmanagerazureendpoint_types.go +++ b/apis/network/v1beta1/zz_trafficmanagerazureendpoint_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomHeaderInitParameters struct { + + // The name of the custom header. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of custom header. Applicable for HTTP and HTTPS protocol. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type CustomHeaderObservation struct { // The name of the custom header. @@ -25,12 +34,33 @@ type CustomHeaderObservation struct { type CustomHeaderParameters struct { // The name of the custom header. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of custom header. Applicable for HTTP and HTTPS protocol. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type TrafficManagerAzureEndpointInitParameters struct { + + // One or more custom_header blocks as defined below. + CustomHeader []CustomHeaderInitParameters `json:"customHeader,omitempty" tf:"custom_header,omitempty"` + + // Is the endpoint enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A list of Geographic Regions used to distribute traffic, such as WORLD, UK or DE. The same location can't be specified in two endpoints. See the Geographic Hierarchies documentation for more information. + GeoMappings []*string `json:"geoMappings,omitempty" tf:"geo_mappings,omitempty"` + + // Specifies the priority of this Endpoint, this must be specified for Profiles using the Priority traffic routing method. Supports values between 1 and 1000, with no Endpoints sharing the same value. If omitted the value will be computed in order of creation. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // One or more subnet blocks as defined below. Changing this forces a new resource to be created. + Subnet []TrafficManagerAzureEndpointSubnetInitParameters `json:"subnet,omitempty" tf:"subnet,omitempty"` + + // Specifies how much traffic should be distributed to this endpoint, this must be specified for Profiles using the Weighted traffic routing method. Valid values are between 1 and 1000. + Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } type TrafficManagerAzureEndpointObservation struct { @@ -118,6 +148,18 @@ type TrafficManagerAzureEndpointParameters struct { Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } +type TrafficManagerAzureEndpointSubnetInitParameters struct { + + // The first IP Address in this subnet. + First *string `json:"first,omitempty" tf:"first,omitempty"` + + // The last IP Address in this subnet. + Last *string `json:"last,omitempty" tf:"last,omitempty"` + + // The block size (number of leading bits in the subnet mask). + Scope *float64 `json:"scope,omitempty" tf:"scope,omitempty"` +} + type TrafficManagerAzureEndpointSubnetObservation struct { // The first IP Address in this subnet. @@ -133,8 +175,8 @@ type TrafficManagerAzureEndpointSubnetObservation struct { type TrafficManagerAzureEndpointSubnetParameters struct { // The first IP Address in this subnet. - // +kubebuilder:validation:Required - First *string `json:"first" tf:"first,omitempty"` + // +kubebuilder:validation:Optional + First *string `json:"first,omitempty" tf:"first,omitempty"` // The last IP Address in this subnet. // +kubebuilder:validation:Optional @@ -149,6 +191,18 @@ type TrafficManagerAzureEndpointSubnetParameters struct { type TrafficManagerAzureEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TrafficManagerAzureEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TrafficManagerAzureEndpointInitParameters `json:"initProvider,omitempty"` } // TrafficManagerAzureEndpointStatus defines the observed state of TrafficManagerAzureEndpoint. diff --git a/apis/network/v1beta1/zz_trafficmanagerexternalendpoint_types.go b/apis/network/v1beta1/zz_trafficmanagerexternalendpoint_types.go index 3bf920f19..a3464f47c 100755 --- a/apis/network/v1beta1/zz_trafficmanagerexternalendpoint_types.go +++ b/apis/network/v1beta1/zz_trafficmanagerexternalendpoint_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TrafficManagerExternalEndpointCustomHeaderInitParameters struct { + + // The name of the custom header. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of custom header. Applicable for HTTP and HTTPS protocol. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type TrafficManagerExternalEndpointCustomHeaderObservation struct { // The name of the custom header. @@ -25,12 +34,39 @@ type TrafficManagerExternalEndpointCustomHeaderObservation struct { type TrafficManagerExternalEndpointCustomHeaderParameters struct { // The name of the custom header. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of custom header. Applicable for HTTP and HTTPS protocol. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type TrafficManagerExternalEndpointInitParameters struct { + + // One or more custom_header blocks as defined below. + CustomHeader []TrafficManagerExternalEndpointCustomHeaderInitParameters `json:"customHeader,omitempty" tf:"custom_header,omitempty"` + + // Is the endpoint enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Specifies the Azure location of the Endpoint, this must be specified for Profiles using the Performance routing method. + EndpointLocation *string `json:"endpointLocation,omitempty" tf:"endpoint_location,omitempty"` + + // A list of Geographic Regions used to distribute traffic, such as WORLD, UK or DE. The same location can't be specified in two endpoints. See the Geographic Hierarchies documentation for more information. + GeoMappings []*string `json:"geoMappings,omitempty" tf:"geo_mappings,omitempty"` + + // Specifies the priority of this Endpoint, this must be specified for Profiles using the Priority traffic routing method. Supports values between 1 and 1000, with no Endpoints sharing the same value. If omitted the value will be computed in order of creation. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // One or more subnet blocks as defined below. Changing this forces a new resource to be created. + Subnet []TrafficManagerExternalEndpointSubnetInitParameters `json:"subnet,omitempty" tf:"subnet,omitempty"` + + // The FQDN DNS name of the target. + Target *string `json:"target,omitempty" tf:"target,omitempty"` + + // Specifies how much traffic should be distributed to this endpoint, this must be specified for Profiles using the Weighted traffic routing method. Valid values are between 1 and 1000. + Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } type TrafficManagerExternalEndpointObservation struct { @@ -115,6 +151,18 @@ type TrafficManagerExternalEndpointParameters struct { Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } +type TrafficManagerExternalEndpointSubnetInitParameters struct { + + // The first IP Address in this subnet. + First *string `json:"first,omitempty" tf:"first,omitempty"` + + // The last IP Address in this subnet. + Last *string `json:"last,omitempty" tf:"last,omitempty"` + + // The block size (number of leading bits in the subnet mask). + Scope *float64 `json:"scope,omitempty" tf:"scope,omitempty"` +} + type TrafficManagerExternalEndpointSubnetObservation struct { // The first IP Address in this subnet. @@ -130,8 +178,8 @@ type TrafficManagerExternalEndpointSubnetObservation struct { type TrafficManagerExternalEndpointSubnetParameters struct { // The first IP Address in this subnet. - // +kubebuilder:validation:Required - First *string `json:"first" tf:"first,omitempty"` + // +kubebuilder:validation:Optional + First *string `json:"first,omitempty" tf:"first,omitempty"` // The last IP Address in this subnet. // +kubebuilder:validation:Optional @@ -146,6 +194,18 @@ type TrafficManagerExternalEndpointSubnetParameters struct { type TrafficManagerExternalEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TrafficManagerExternalEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TrafficManagerExternalEndpointInitParameters `json:"initProvider,omitempty"` } // TrafficManagerExternalEndpointStatus defines the observed state of TrafficManagerExternalEndpoint. @@ -166,7 +226,7 @@ type TrafficManagerExternalEndpointStatus struct { type TrafficManagerExternalEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.target)",message="target is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.target) || has(self.initProvider.target)",message="target is a required parameter" Spec TrafficManagerExternalEndpointSpec `json:"spec"` Status TrafficManagerExternalEndpointStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_trafficmanagernestedendpoint_types.go b/apis/network/v1beta1/zz_trafficmanagernestedendpoint_types.go index 965617799..fc27f0a6d 100755 --- a/apis/network/v1beta1/zz_trafficmanagernestedendpoint_types.go +++ b/apis/network/v1beta1/zz_trafficmanagernestedendpoint_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TrafficManagerNestedEndpointCustomHeaderInitParameters struct { + + // The name of the custom header. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of custom header. Applicable for HTTP and HTTPS protocol. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type TrafficManagerNestedEndpointCustomHeaderObservation struct { // The name of the custom header. @@ -25,12 +34,45 @@ type TrafficManagerNestedEndpointCustomHeaderObservation struct { type TrafficManagerNestedEndpointCustomHeaderParameters struct { // The name of the custom header. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of custom header. Applicable for HTTP and HTTPS protocol. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type TrafficManagerNestedEndpointInitParameters struct { + + // One or more custom_header blocks as defined below. + CustomHeader []TrafficManagerNestedEndpointCustomHeaderInitParameters `json:"customHeader,omitempty" tf:"custom_header,omitempty"` + + // Is the endpoint enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Specifies the Azure location of the Endpoint, this must be specified for Profiles using the Performance routing method. + EndpointLocation *string `json:"endpointLocation,omitempty" tf:"endpoint_location,omitempty"` + + // A list of Geographic Regions used to distribute traffic, such as WORLD, UK or DE. The same location can't be specified in two endpoints. See the Geographic Hierarchies documentation for more information. + GeoMappings []*string `json:"geoMappings,omitempty" tf:"geo_mappings,omitempty"` + + // This argument specifies the minimum number of endpoints that must be ‘online’ in the child profile in order for the parent profile to direct traffic to any of the endpoints in that child profile. This value must be larger than 0. + MinimumChildEndpoints *float64 `json:"minimumChildEndpoints,omitempty" tf:"minimum_child_endpoints,omitempty"` + + // This argument specifies the minimum number of IPv4 (DNS record type A) endpoints that must be ‘online’ in the child profile in order for the parent profile to direct traffic to any of the endpoints in that child profile. This argument only applies to Endpoints of type nestedEndpoints and + MinimumRequiredChildEndpointsIPv4 *float64 `json:"minimumRequiredChildEndpointsIpv4,omitempty" tf:"minimum_required_child_endpoints_ipv4,omitempty"` + + // This argument specifies the minimum number of IPv6 (DNS record type AAAA) endpoints that must be ‘online’ in the child profile in order for the parent profile to direct traffic to any of the endpoints in that child profile. This argument only applies to Endpoints of type nestedEndpoints and + MinimumRequiredChildEndpointsIPv6 *float64 `json:"minimumRequiredChildEndpointsIpv6,omitempty" tf:"minimum_required_child_endpoints_ipv6,omitempty"` + + // Specifies the priority of this Endpoint, this must be specified for Profiles using the Priority traffic routing method. Supports values between 1 and 1000, with no Endpoints sharing the same value. If omitted the value will be computed in order of creation. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // One or more subnet blocks as defined below. Changing this forces a new resource to be created. + Subnet []TrafficManagerNestedEndpointSubnetInitParameters `json:"subnet,omitempty" tf:"subnet,omitempty"` + + // Specifies how much traffic should be distributed to this endpoint, this must be specified for Profiles using the Weighted traffic routing method. Valid values are between 1 and 1000. + Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } type TrafficManagerNestedEndpointObservation struct { @@ -146,6 +188,18 @@ type TrafficManagerNestedEndpointParameters struct { Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } +type TrafficManagerNestedEndpointSubnetInitParameters struct { + + // The first IP Address in this subnet. + First *string `json:"first,omitempty" tf:"first,omitempty"` + + // The last IP Address in this subnet. + Last *string `json:"last,omitempty" tf:"last,omitempty"` + + // The block size (number of leading bits in the subnet mask). + Scope *float64 `json:"scope,omitempty" tf:"scope,omitempty"` +} + type TrafficManagerNestedEndpointSubnetObservation struct { // The first IP Address in this subnet. @@ -161,8 +215,8 @@ type TrafficManagerNestedEndpointSubnetObservation struct { type TrafficManagerNestedEndpointSubnetParameters struct { // The first IP Address in this subnet. - // +kubebuilder:validation:Required - First *string `json:"first" tf:"first,omitempty"` + // +kubebuilder:validation:Optional + First *string `json:"first,omitempty" tf:"first,omitempty"` // The last IP Address in this subnet. // +kubebuilder:validation:Optional @@ -177,6 +231,18 @@ type TrafficManagerNestedEndpointSubnetParameters struct { type TrafficManagerNestedEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TrafficManagerNestedEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TrafficManagerNestedEndpointInitParameters `json:"initProvider,omitempty"` } // TrafficManagerNestedEndpointStatus defines the observed state of TrafficManagerNestedEndpoint. @@ -197,7 +263,7 @@ type TrafficManagerNestedEndpointStatus struct { type TrafficManagerNestedEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.minimumChildEndpoints)",message="minimumChildEndpoints is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.minimumChildEndpoints) || has(self.initProvider.minimumChildEndpoints)",message="minimumChildEndpoints is a required parameter" Spec TrafficManagerNestedEndpointSpec `json:"spec"` Status TrafficManagerNestedEndpointStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_trafficmanagerprofile_types.go b/apis/network/v1beta1/zz_trafficmanagerprofile_types.go index 91600f10b..a86f7ede7 100755 --- a/apis/network/v1beta1/zz_trafficmanagerprofile_types.go +++ b/apis/network/v1beta1/zz_trafficmanagerprofile_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DNSConfigInitParameters struct { + + // The relative domain name, this is combined with the domain name used by Traffic Manager to form the FQDN which is exported as documented below. Changing this forces a new resource to be created. + RelativeName *string `json:"relativeName,omitempty" tf:"relative_name,omitempty"` + + // The TTL value of the Profile used by Local DNS resolvers and clients. + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` +} + type DNSConfigObservation struct { // The relative domain name, this is combined with the domain name used by Traffic Manager to form the FQDN which is exported as documented below. Changing this forces a new resource to be created. @@ -25,12 +34,21 @@ type DNSConfigObservation struct { type DNSConfigParameters struct { // The relative domain name, this is combined with the domain name used by Traffic Manager to form the FQDN which is exported as documented below. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - RelativeName *string `json:"relativeName" tf:"relative_name,omitempty"` + // +kubebuilder:validation:Optional + RelativeName *string `json:"relativeName,omitempty" tf:"relative_name,omitempty"` // The TTL value of the Profile used by Local DNS resolvers and clients. - // +kubebuilder:validation:Required - TTL *float64 `json:"ttl" tf:"ttl,omitempty"` + // +kubebuilder:validation:Optional + TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` +} + +type MonitorConfigCustomHeaderInitParameters struct { + + // The name of the Traffic Manager profile. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The value of custom header. Applicable for HTTP and HTTPS protocol. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type MonitorConfigCustomHeaderObservation struct { @@ -45,12 +63,39 @@ type MonitorConfigCustomHeaderObservation struct { type MonitorConfigCustomHeaderParameters struct { // The name of the Traffic Manager profile. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of custom header. Applicable for HTTP and HTTPS protocol. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type MonitorConfigInitParameters struct { + + // One or more custom_header blocks as defined below. + CustomHeader []MonitorConfigCustomHeaderInitParameters `json:"customHeader,omitempty" tf:"custom_header,omitempty"` + + // A list of status code ranges in the format of 100-101. + ExpectedStatusCodeRanges []*string `json:"expectedStatusCodeRanges,omitempty" tf:"expected_status_code_ranges,omitempty"` + + // The interval used to check the endpoint health from a Traffic Manager probing agent. You can specify two values here: 30 (normal probing) and 10 (fast probing). The default value is 30. + IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` + + // The path used by the monitoring checks. Required when protocol is set to HTTP or HTTPS - cannot be set when protocol is set to TCP. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The port number used by the monitoring checks. + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // The protocol used by the monitoring checks, supported values are HTTP, HTTPS and TCP. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // The amount of time the Traffic Manager probing agent should wait before considering that check a failure when a health check probe is sent to the endpoint. If interval_in_seconds is set to 30, then timeout_in_seconds can be between 5 and 10. The default value is 10. If interval_in_seconds is set to 10, then valid values are between 5 and 9 and timeout_in_seconds is required. + TimeoutInSeconds *float64 `json:"timeoutInSeconds,omitempty" tf:"timeout_in_seconds,omitempty"` + + // The number of failures a Traffic Manager probing agent tolerates before marking that endpoint as unhealthy. Valid values are between 0 and 9. The default value is 3 + ToleratedNumberOfFailures *float64 `json:"toleratedNumberOfFailures,omitempty" tf:"tolerated_number_of_failures,omitempty"` } type MonitorConfigObservation struct { @@ -99,12 +144,12 @@ type MonitorConfigParameters struct { Path *string `json:"path,omitempty" tf:"path,omitempty"` // The port number used by the monitoring checks. - // +kubebuilder:validation:Required - Port *float64 `json:"port" tf:"port,omitempty"` + // +kubebuilder:validation:Optional + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The protocol used by the monitoring checks, supported values are HTTP, HTTPS and TCP. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The amount of time the Traffic Manager probing agent should wait before considering that check a failure when a health check probe is sent to the endpoint. If interval_in_seconds is set to 30, then timeout_in_seconds can be between 5 and 10. The default value is 10. If interval_in_seconds is set to 10, then valid values are between 5 and 9 and timeout_in_seconds is required. // +kubebuilder:validation:Optional @@ -115,6 +160,30 @@ type MonitorConfigParameters struct { ToleratedNumberOfFailures *float64 `json:"toleratedNumberOfFailures,omitempty" tf:"tolerated_number_of_failures,omitempty"` } +type TrafficManagerProfileInitParameters struct { + + // This block specifies the DNS configuration of the Profile, it supports the fields documented below. + DNSConfig []DNSConfigInitParameters `json:"dnsConfig,omitempty" tf:"dns_config,omitempty"` + + // The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8. + MaxReturn *float64 `json:"maxReturn,omitempty" tf:"max_return,omitempty"` + + // This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below. + MonitorConfig []MonitorConfigInitParameters `json:"monitorConfig,omitempty" tf:"monitor_config,omitempty"` + + // The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled. + ProfileStatus *string `json:"profileStatus,omitempty" tf:"profile_status,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue. + TrafficRoutingMethod *string `json:"trafficRoutingMethod,omitempty" tf:"traffic_routing_method,omitempty"` + + // Indicates whether Traffic View is enabled for the Traffic Manager profile. + TrafficViewEnabled *bool `json:"trafficViewEnabled,omitempty" tf:"traffic_view_enabled,omitempty"` +} + type TrafficManagerProfileObservation struct { // This block specifies the DNS configuration of the Profile, it supports the fields documented below. @@ -196,6 +265,18 @@ type TrafficManagerProfileParameters struct { type TrafficManagerProfileSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TrafficManagerProfileParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TrafficManagerProfileInitParameters `json:"initProvider,omitempty"` } // TrafficManagerProfileStatus defines the observed state of TrafficManagerProfile. @@ -216,9 +297,9 @@ type TrafficManagerProfileStatus struct { type TrafficManagerProfile struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dnsConfig)",message="dnsConfig is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.monitorConfig)",message="monitorConfig is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.trafficRoutingMethod)",message="trafficRoutingMethod is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dnsConfig) || has(self.initProvider.dnsConfig)",message="dnsConfig is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.monitorConfig) || has(self.initProvider.monitorConfig)",message="monitorConfig is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.trafficRoutingMethod) || has(self.initProvider.trafficRoutingMethod)",message="trafficRoutingMethod is a required parameter" Spec TrafficManagerProfileSpec `json:"spec"` Status TrafficManagerProfileStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualhub_types.go b/apis/network/v1beta1/zz_virtualhub_types.go index 272d8ab99..bf22c2754 100755 --- a/apis/network/v1beta1/zz_virtualhub_types.go +++ b/apis/network/v1beta1/zz_virtualhub_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VirtualHubInitParameters_2 struct { + + // The Address Prefix which should be used for this Virtual Hub. Changing this forces a new resource to be created. The address prefix subnet cannot be smaller than a . + AddressPrefix *string `json:"addressPrefix,omitempty" tf:"address_prefix,omitempty"` + + // The hub routing preference. Possible values are ExpressRoute, ASPath and VpnGateway. Defaults to ExpressRoute. + HubRoutingPreference *string `json:"hubRoutingPreference,omitempty" tf:"hub_routing_preference,omitempty"` + + // Specifies the supported Azure location where the Virtual Hub should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // One or more route blocks as defined below. + Route []VirtualHubRouteInitParameters `json:"route,omitempty" tf:"route,omitempty"` + + // The SKU of the Virtual Hub. Possible values are Basic and Standard. Changing this forces a new resource to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the Virtual Hub. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type VirtualHubObservation_2 struct { // The Address Prefix which should be used for this Virtual Hub. Changing this forces a new resource to be created. The address prefix subnet cannot be smaller than a . @@ -106,6 +127,15 @@ type VirtualHubParameters_2 struct { VirtualWanIDSelector *v1.Selector `json:"virtualWanIdSelector,omitempty" tf:"-"` } +type VirtualHubRouteInitParameters struct { + + // A list of Address Prefixes. + AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` + + // The IP Address that Packets should be forwarded to as the Next Hop. + NextHopIPAddress *string `json:"nextHopIpAddress,omitempty" tf:"next_hop_ip_address,omitempty"` +} + type VirtualHubRouteObservation struct { // A list of Address Prefixes. @@ -118,18 +148,30 @@ type VirtualHubRouteObservation struct { type VirtualHubRouteParameters struct { // A list of Address Prefixes. - // +kubebuilder:validation:Required - AddressPrefixes []*string `json:"addressPrefixes" tf:"address_prefixes,omitempty"` + // +kubebuilder:validation:Optional + AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` // The IP Address that Packets should be forwarded to as the Next Hop. - // +kubebuilder:validation:Required - NextHopIPAddress *string `json:"nextHopIpAddress" tf:"next_hop_ip_address,omitempty"` + // +kubebuilder:validation:Optional + NextHopIPAddress *string `json:"nextHopIpAddress,omitempty" tf:"next_hop_ip_address,omitempty"` } // VirtualHubSpec defines the desired state of VirtualHub type VirtualHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualHubParameters_2 `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualHubInitParameters_2 `json:"initProvider,omitempty"` } // VirtualHubStatus defines the observed state of VirtualHub. @@ -150,7 +192,7 @@ type VirtualHubStatus struct { type VirtualHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec VirtualHubSpec `json:"spec"` Status VirtualHubStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualhubconnection_types.go b/apis/network/v1beta1/zz_virtualhubconnection_types.go index 2b87e0261..1ca6ed9bd 100755 --- a/apis/network/v1beta1/zz_virtualhubconnection_types.go +++ b/apis/network/v1beta1/zz_virtualhubconnection_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RoutingPropagatedRouteTableInitParameters struct { + + // The list of labels to assign to this route table. + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` + + // A list of Route Table IDs to associated with this Virtual Hub Connection. + RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"` +} + type RoutingPropagatedRouteTableObservation struct { // The list of labels to assign to this route table. @@ -33,6 +42,18 @@ type RoutingPropagatedRouteTableParameters struct { RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"` } +type StaticVnetRouteInitParameters struct { + + // A list of CIDR Ranges which should be used as Address Prefixes. + AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` + + // The name which should be used for this Static Route. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The IP Address which should be used for the Next Hop. + NextHopIPAddress *string `json:"nextHopIpAddress,omitempty" tf:"next_hop_ip_address,omitempty"` +} + type StaticVnetRouteObservation struct { // A list of CIDR Ranges which should be used as Address Prefixes. @@ -60,6 +81,15 @@ type StaticVnetRouteParameters struct { NextHopIPAddress *string `json:"nextHopIpAddress,omitempty" tf:"next_hop_ip_address,omitempty"` } +type VirtualHubConnectionInitParameters struct { + + // Should Internet Security be enabled to secure internet traffic? Defaults to false. + InternetSecurityEnabled *bool `json:"internetSecurityEnabled,omitempty" tf:"internet_security_enabled,omitempty"` + + // A routing block as defined below. + Routing []VirtualHubConnectionRoutingInitParameters `json:"routing,omitempty" tf:"routing,omitempty"` +} + type VirtualHubConnectionObservation struct { // The ID of the Virtual Hub Connection. @@ -117,6 +147,15 @@ type VirtualHubConnectionParameters struct { VirtualHubIDSelector *v1.Selector `json:"virtualHubIdSelector,omitempty" tf:"-"` } +type VirtualHubConnectionRoutingInitParameters struct { + + // A propagated_route_table block as defined below. + PropagatedRouteTable []RoutingPropagatedRouteTableInitParameters `json:"propagatedRouteTable,omitempty" tf:"propagated_route_table,omitempty"` + + // A static_vnet_route block as defined below. + StaticVnetRoute []StaticVnetRouteInitParameters `json:"staticVnetRoute,omitempty" tf:"static_vnet_route,omitempty"` +} + type VirtualHubConnectionRoutingObservation struct { // The ID of the route table associated with this Virtual Hub connection. @@ -158,6 +197,18 @@ type VirtualHubConnectionRoutingParameters struct { type VirtualHubConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualHubConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualHubConnectionInitParameters `json:"initProvider,omitempty"` } // VirtualHubConnectionStatus defines the observed state of VirtualHubConnection. diff --git a/apis/network/v1beta1/zz_virtualhubip_types.go b/apis/network/v1beta1/zz_virtualhubip_types.go index d94421644..5c330c013 100755 --- a/apis/network/v1beta1/zz_virtualhubip_types.go +++ b/apis/network/v1beta1/zz_virtualhubip_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VirtualHubIPInitParameters struct { + + // The private IP address of the IP configuration. + PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` + + // The private IP address allocation method. Possible values are Static and Dynamic is allowed. Defaults to Dynamic. + PrivateIPAllocationMethod *string `json:"privateIpAllocationMethod,omitempty" tf:"private_ip_allocation_method,omitempty"` +} + type VirtualHubIPObservation struct { // The ID of the Virtual Hub IP. @@ -91,6 +100,18 @@ type VirtualHubIPParameters struct { type VirtualHubIPSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualHubIPParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualHubIPInitParameters `json:"initProvider,omitempty"` } // VirtualHubIPStatus defines the observed state of VirtualHubIP. diff --git a/apis/network/v1beta1/zz_virtualhubroutetable_types.go b/apis/network/v1beta1/zz_virtualhubroutetable_types.go index 952bd55d1..97a89b6aa 100755 --- a/apis/network/v1beta1/zz_virtualhubroutetable_types.go +++ b/apis/network/v1beta1/zz_virtualhubroutetable_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VirtualHubRouteTableInitParameters struct { + + // List of labels associated with this route table. + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` + + // A route block as defined below. + Route []VirtualHubRouteTableRouteInitParameters `json:"route,omitempty" tf:"route,omitempty"` +} + type VirtualHubRouteTableObservation struct { // The ID of the Virtual Hub Route Table. @@ -53,6 +62,21 @@ type VirtualHubRouteTableParameters struct { VirtualHubIDSelector *v1.Selector `json:"virtualHubIdSelector,omitempty" tf:"-"` } +type VirtualHubRouteTableRouteInitParameters struct { + + // A list of destination addresses for this route. + Destinations []*string `json:"destinations,omitempty" tf:"destinations,omitempty"` + + // The type of destinations. Possible values are CIDR, ResourceId and Service. + DestinationsType *string `json:"destinationsType,omitempty" tf:"destinations_type,omitempty"` + + // The name which should be used for this route. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The type of next hop. Currently the only possible value is ResourceId. Defaults to ResourceId. + NextHopType *string `json:"nextHopType,omitempty" tf:"next_hop_type,omitempty"` +} + type VirtualHubRouteTableRouteObservation struct { // A list of destination addresses for this route. @@ -74,16 +98,16 @@ type VirtualHubRouteTableRouteObservation struct { type VirtualHubRouteTableRouteParameters struct { // A list of destination addresses for this route. - // +kubebuilder:validation:Required - Destinations []*string `json:"destinations" tf:"destinations,omitempty"` + // +kubebuilder:validation:Optional + Destinations []*string `json:"destinations,omitempty" tf:"destinations,omitempty"` // The type of destinations. Possible values are CIDR, ResourceId and Service. - // +kubebuilder:validation:Required - DestinationsType *string `json:"destinationsType" tf:"destinations_type,omitempty"` + // +kubebuilder:validation:Optional + DestinationsType *string `json:"destinationsType,omitempty" tf:"destinations_type,omitempty"` // The name which should be used for this route. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The next hop's resource ID. // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.VirtualHubConnection @@ -108,6 +132,18 @@ type VirtualHubRouteTableRouteParameters struct { type VirtualHubRouteTableSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualHubRouteTableParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualHubRouteTableInitParameters `json:"initProvider,omitempty"` } // VirtualHubRouteTableStatus defines the observed state of VirtualHubRouteTable. diff --git a/apis/network/v1beta1/zz_virtualhubroutetableroute_types.go b/apis/network/v1beta1/zz_virtualhubroutetableroute_types.go index 8a3448a8c..a09c5c285 100755 --- a/apis/network/v1beta1/zz_virtualhubroutetableroute_types.go +++ b/apis/network/v1beta1/zz_virtualhubroutetableroute_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VirtualHubRouteTableRouteInitParameters_2 struct { + + // A list of destination addresses for this route. + Destinations []*string `json:"destinations,omitempty" tf:"destinations,omitempty"` + + // The type of destinations. Possible values are CIDR, ResourceId and Service. + DestinationsType *string `json:"destinationsType,omitempty" tf:"destinations_type,omitempty"` + + // The type of next hop. Currently the only possible value is ResourceId. Defaults to ResourceId. + NextHopType *string `json:"nextHopType,omitempty" tf:"next_hop_type,omitempty"` +} + type VirtualHubRouteTableRouteObservation_2 struct { // A list of destination addresses for this route. @@ -81,6 +93,18 @@ type VirtualHubRouteTableRouteParameters_2 struct { type VirtualHubRouteTableRouteSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualHubRouteTableRouteParameters_2 `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualHubRouteTableRouteInitParameters_2 `json:"initProvider,omitempty"` } // VirtualHubRouteTableRouteStatus defines the observed state of VirtualHubRouteTableRoute. @@ -101,8 +125,8 @@ type VirtualHubRouteTableRouteStatus struct { type VirtualHubRouteTableRoute struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.destinations)",message="destinations is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.destinationsType)",message="destinationsType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.destinations) || has(self.initProvider.destinations)",message="destinations is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.destinationsType) || has(self.initProvider.destinationsType)",message="destinationsType is a required parameter" Spec VirtualHubRouteTableRouteSpec `json:"spec"` Status VirtualHubRouteTableRouteStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualhubsecuritypartnerprovider_types.go b/apis/network/v1beta1/zz_virtualhubsecuritypartnerprovider_types.go index d02ccd552..4f7119f07 100755 --- a/apis/network/v1beta1/zz_virtualhubsecuritypartnerprovider_types.go +++ b/apis/network/v1beta1/zz_virtualhubsecuritypartnerprovider_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VirtualHubSecurityPartnerProviderInitParameters struct { + + // The Azure Region where the Security Partner Provider should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The security provider name. Possible values are ZScaler, IBoss and Checkpoint is allowed. Changing this forces a new resource to be created. + SecurityProviderName *string `json:"securityProviderName,omitempty" tf:"security_provider_name,omitempty"` + + // A mapping of tags which should be assigned to the Security Partner Provider. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type VirtualHubSecurityPartnerProviderObservation struct { // The ID of the Security Partner Provider. @@ -80,6 +92,18 @@ type VirtualHubSecurityPartnerProviderParameters struct { type VirtualHubSecurityPartnerProviderSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualHubSecurityPartnerProviderParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualHubSecurityPartnerProviderInitParameters `json:"initProvider,omitempty"` } // VirtualHubSecurityPartnerProviderStatus defines the observed state of VirtualHubSecurityPartnerProvider. @@ -100,8 +124,8 @@ type VirtualHubSecurityPartnerProviderStatus struct { type VirtualHubSecurityPartnerProvider struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.securityProviderName)",message="securityProviderName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.securityProviderName) || has(self.initProvider.securityProviderName)",message="securityProviderName is a required parameter" Spec VirtualHubSecurityPartnerProviderSpec `json:"spec"` Status VirtualHubSecurityPartnerProviderStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualnetwork_types.go b/apis/network/v1beta1/zz_virtualnetwork_types.go index bf933a86b..fca449157 100755 --- a/apis/network/v1beta1/zz_virtualnetwork_types.go +++ b/apis/network/v1beta1/zz_virtualnetwork_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DDOSProtectionPlanInitParameters struct { + + // Enable/disable DDoS Protection Plan on Virtual Network. + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` + + // The ID of DDoS Protection Plan. + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + type DDOSProtectionPlanObservation struct { // Enable/disable DDoS Protection Plan on Virtual Network. @@ -25,12 +34,39 @@ type DDOSProtectionPlanObservation struct { type DDOSProtectionPlanParameters struct { // Enable/disable DDoS Protection Plan on Virtual Network. - // +kubebuilder:validation:Required - Enable *bool `json:"enable" tf:"enable,omitempty"` + // +kubebuilder:validation:Optional + Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` // The ID of DDoS Protection Plan. - // +kubebuilder:validation:Required - ID *string `json:"id" tf:"id,omitempty"` + // +kubebuilder:validation:Optional + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + +type VirtualNetworkInitParameters struct { + + // The address space that is used the virtual network. You can supply more than one address space. + AddressSpace []*string `json:"addressSpace,omitempty" tf:"address_space,omitempty"` + + // The BGP community attribute in format :. + BGPCommunity *string `json:"bgpCommunity,omitempty" tf:"bgp_community,omitempty"` + + // A ddos_protection_plan block as documented below. + DDOSProtectionPlan []DDOSProtectionPlanInitParameters `json:"ddosProtectionPlan,omitempty" tf:"ddos_protection_plan,omitempty"` + + // List of IP addresses of DNS servers + DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Virtual Network should exist. Changing this forces a new Virtual Network to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // The flow timeout in minutes for the Virtual Network, which is used to enable connection tracking for intra-VM flows. Possible values are between 4 and 30 minutes. + FlowTimeoutInMinutes *float64 `json:"flowTimeoutInMinutes,omitempty" tf:"flow_timeout_in_minutes,omitempty"` + + // The location/region where the virtual network is created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type VirtualNetworkObservation struct { @@ -120,6 +156,9 @@ type VirtualNetworkParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type VirtualNetworkSubnetInitParameters struct { +} + type VirtualNetworkSubnetObservation struct { // The address prefix to use for the subnet. @@ -142,6 +181,18 @@ type VirtualNetworkSubnetParameters struct { type VirtualNetworkSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualNetworkParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualNetworkInitParameters `json:"initProvider,omitempty"` } // VirtualNetworkStatus defines the observed state of VirtualNetwork. @@ -162,8 +213,8 @@ type VirtualNetworkStatus struct { type VirtualNetwork struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.addressSpace)",message="addressSpace is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.addressSpace) || has(self.initProvider.addressSpace)",message="addressSpace is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec VirtualNetworkSpec `json:"spec"` Status VirtualNetworkStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualnetworkgateway_types.go b/apis/network/v1beta1/zz_virtualnetworkgateway_types.go index cf4e8e59b..b93db987f 100755 --- a/apis/network/v1beta1/zz_virtualnetworkgateway_types.go +++ b/apis/network/v1beta1/zz_virtualnetworkgateway_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomRouteInitParameters struct { + + // A list of address blocks reserved for this virtual network in CIDR notation as defined below. + AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` +} + type CustomRouteObservation struct { // A list of address blocks reserved for this virtual network in CIDR notation as defined below. @@ -26,6 +32,15 @@ type CustomRouteParameters struct { AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` } +type PeeringAddressesInitParameters struct { + + // A list of Azure custom APIPA addresses assigned to the BGP peer of the Virtual Network Gateway. + ApipaAddresses []*string `json:"apipaAddresses,omitempty" tf:"apipa_addresses,omitempty"` + + // The name of the IP configuration of this Virtual Network Gateway. In case there are multiple ip_configuration blocks defined, this property is required to specify. + IPConfigurationName *string `json:"ipConfigurationName,omitempty" tf:"ip_configuration_name,omitempty"` +} + type PeeringAddressesObservation struct { // A list of Azure custom APIPA addresses assigned to the BGP peer of the Virtual Network Gateway. @@ -52,6 +67,15 @@ type PeeringAddressesParameters struct { IPConfigurationName *string `json:"ipConfigurationName,omitempty" tf:"ip_configuration_name,omitempty"` } +type RevokedCertificateInitParameters struct { + + // A user-defined name of the root certificate. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the public data of the certificate. + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` +} + type RevokedCertificateObservation struct { // A user-defined name of the root certificate. @@ -64,12 +88,21 @@ type RevokedCertificateObservation struct { type RevokedCertificateParameters struct { // A user-defined name of the root certificate. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the public data of the certificate. - // +kubebuilder:validation:Required - Thumbprint *string `json:"thumbprint" tf:"thumbprint,omitempty"` + // +kubebuilder:validation:Optional + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` +} + +type RootCertificateInitParameters struct { + + // A user-defined name of the root certificate. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The public certificate of the root certificate authority. The certificate must be provided in Base-64 encoded X.509 format (PEM). In particular, this argument must not include the -----BEGIN CERTIFICATE----- or -----END CERTIFICATE----- markers. + PublicCertData *string `json:"publicCertData,omitempty" tf:"public_cert_data,omitempty"` } type RootCertificateObservation struct { @@ -84,12 +117,50 @@ type RootCertificateObservation struct { type RootCertificateParameters struct { // A user-defined name of the root certificate. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The public certificate of the root certificate authority. The certificate must be provided in Base-64 encoded X.509 format (PEM). In particular, this argument must not include the -----BEGIN CERTIFICATE----- or -----END CERTIFICATE----- markers. - // +kubebuilder:validation:Required - PublicCertData *string `json:"publicCertData" tf:"public_cert_data,omitempty"` + // +kubebuilder:validation:Optional + PublicCertData *string `json:"publicCertData,omitempty" tf:"public_cert_data,omitempty"` +} + +type VPNClientConfigurationInitParameters struct { + + // The client id of the Azure VPN application. + // See Create an Active Directory (AD) tenant for P2S OpenVPN protocol connections for values + AADAudience *string `json:"aadAudience,omitempty" tf:"aad_audience,omitempty"` + + // The STS url for your tenant + AADIssuer *string `json:"aadIssuer,omitempty" tf:"aad_issuer,omitempty"` + + // AzureAD Tenant URL + AADTenant *string `json:"aadTenant,omitempty" tf:"aad_tenant,omitempty"` + + // The address space out of which IP addresses for vpn clients will be taken. You can provide more than one address space, e.g. in CIDR notation. + AddressSpace []*string `json:"addressSpace,omitempty" tf:"address_space,omitempty"` + + // The address of the Radius server. + RadiusServerAddress *string `json:"radiusServerAddress,omitempty" tf:"radius_server_address,omitempty"` + + // The secret used by the Radius server. + RadiusServerSecret *string `json:"radiusServerSecret,omitempty" tf:"radius_server_secret,omitempty"` + + // One or more revoked_certificate blocks which are defined below. + RevokedCertificate []RevokedCertificateInitParameters `json:"revokedCertificate,omitempty" tf:"revoked_certificate,omitempty"` + + // One or more root_certificate blocks which are defined below. These root certificates are used to sign the client certificate used by the VPN clients to connect to the gateway. + RootCertificate []RootCertificateInitParameters `json:"rootCertificate,omitempty" tf:"root_certificate,omitempty"` + + // List of the vpn authentication types for the virtual network gateway. + // The supported values are AAD, Radius and Certificate. + VPNAuthTypes []*string `json:"vpnAuthTypes,omitempty" tf:"vpn_auth_types,omitempty"` + + // List of the protocols supported by the vpn client. + // The supported values are SSTP, IkeV2 and OpenVPN. + // Values SSTP and IkeV2 are incompatible with the use of + // aad_tenant, aad_audience and aad_issuer. + VPNClientProtocols []*string `json:"vpnClientProtocols,omitempty" tf:"vpn_client_protocols,omitempty"` } type VPNClientConfigurationObservation struct { @@ -146,8 +217,8 @@ type VPNClientConfigurationParameters struct { AADTenant *string `json:"aadTenant,omitempty" tf:"aad_tenant,omitempty"` // The address space out of which IP addresses for vpn clients will be taken. You can provide more than one address space, e.g. in CIDR notation. - // +kubebuilder:validation:Required - AddressSpace []*string `json:"addressSpace" tf:"address_space,omitempty"` + // +kubebuilder:validation:Optional + AddressSpace []*string `json:"addressSpace,omitempty" tf:"address_space,omitempty"` // The address of the Radius server. // +kubebuilder:validation:Optional @@ -178,6 +249,18 @@ type VPNClientConfigurationParameters struct { VPNClientProtocols []*string `json:"vpnClientProtocols,omitempty" tf:"vpn_client_protocols,omitempty"` } +type VirtualNetworkGatewayBGPSettingsInitParameters struct { + + // The Autonomous System Number (ASN) to use as part of the BGP. + Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` + + // The weight added to routes which have been learned through BGP peering. Valid values can be between 0 and 100. + PeerWeight *float64 `json:"peerWeight,omitempty" tf:"peer_weight,omitempty"` + + // A list of peering_addresses as defined below. Only one peering_addresses block can be specified except when active_active of this Virtual Network Gateway is true. + PeeringAddresses []PeeringAddressesInitParameters `json:"peeringAddresses,omitempty" tf:"peering_addresses,omitempty"` +} + type VirtualNetworkGatewayBGPSettingsObservation struct { // The Autonomous System Number (ASN) to use as part of the BGP. @@ -205,6 +288,15 @@ type VirtualNetworkGatewayBGPSettingsParameters struct { PeeringAddresses []PeeringAddressesParameters `json:"peeringAddresses,omitempty" tf:"peering_addresses,omitempty"` } +type VirtualNetworkGatewayIPConfigurationInitParameters struct { + + // A user-defined name of the IP configuration. Defaults to vnetGatewayConfig. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Defines how the private IP address of the gateways virtual interface is assigned. Valid options are Static or Dynamic. Defaults to Dynamic. + PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` +} + type VirtualNetworkGatewayIPConfigurationObservation struct { // A user-defined name of the IP configuration. Defaults to vnetGatewayConfig. @@ -259,6 +351,57 @@ type VirtualNetworkGatewayIPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` } +type VirtualNetworkGatewayInitParameters struct { + + // If true, an active-active Virtual Network Gateway will be created. An active-active gateway requires a HighPerformance or an UltraPerformance SKU. If false, an active-standby gateway will be created. Defaults to false. + ActiveActive *bool `json:"activeActive,omitempty" tf:"active_active,omitempty"` + + // A bgp_settings block which is documented below. In this block the BGP specific settings can be defined. + BGPSettings []VirtualNetworkGatewayBGPSettingsInitParameters `json:"bgpSettings,omitempty" tf:"bgp_settings,omitempty"` + + // A custom_route block as defined below. Specifies a custom routes address space for a virtual network gateway and a VpnClient. + CustomRoute []CustomRouteInitParameters `json:"customRoute,omitempty" tf:"custom_route,omitempty"` + + // The ID of the local network gateway through which outbound Internet traffic from the virtual network in which the gateway is created will be routed (forced tunnelling). Refer to the Azure documentation on forced tunnelling. If not specified, forced tunnelling is disabled. + DefaultLocalNetworkGatewayID *string `json:"defaultLocalNetworkGatewayId,omitempty" tf:"default_local_network_gateway_id,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Virtual Network Gateway should exist. Changing this forces a new Virtual Network Gateway to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // If true, BGP (Border Gateway Protocol) will be enabled for this Virtual Network Gateway. Defaults to false. + EnableBGP *bool `json:"enableBgp,omitempty" tf:"enable_bgp,omitempty"` + + // The Generation of the Virtual Network gateway. Possible values include Generation1, Generation2 or None. Changing this forces a new resource to be created. + Generation *string `json:"generation,omitempty" tf:"generation,omitempty"` + + // One, two or three ip_configuration blocks documented below. + // An active-standby gateway requires exactly one ip_configuration block, + // an active-active gateway requires exactly two ip_configuration blocks whereas + // an active-active zone redundant gateway with P2S configuration requires exactly three ip_configuration blocks. + IPConfiguration []VirtualNetworkGatewayIPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` + + // The location/region where the Virtual Network Gateway is located. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Should private IP be enabled on this gateway for connections? Changing this forces a new resource to be created. + PrivateIPAddressEnabled *bool `json:"privateIpAddressEnabled,omitempty" tf:"private_ip_address_enabled,omitempty"` + + // Configuration of the size and capacity of the virtual network gateway. Valid options are Basic, Standard, HighPerformance, UltraPerformance, ErGw1AZ, ErGw2AZ, ErGw3AZ, VpnGw1, VpnGw2, VpnGw3, VpnGw4,VpnGw5, VpnGw1AZ, VpnGw2AZ, VpnGw3AZ,VpnGw4AZ and VpnGw5AZ and depend on the type, vpn_type and generation arguments. A PolicyBased gateway only supports the Basic SKU. Further, the UltraPerformance SKU is only supported by an ExpressRoute gateway. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The type of the Virtual Network Gateway. Valid options are Vpn or ExpressRoute. Changing the type forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // A vpn_client_configuration block which is documented below. In this block the Virtual Network Gateway can be configured to accept IPSec point-to-site connections. + VPNClientConfiguration []VPNClientConfigurationInitParameters `json:"vpnClientConfiguration,omitempty" tf:"vpn_client_configuration,omitempty"` + + // The routing type of the Virtual Network Gateway. Valid options are RouteBased or PolicyBased. Defaults to RouteBased. Changing this forces a new resource to be created. + VPNType *string `json:"vpnType,omitempty" tf:"vpn_type,omitempty"` +} + type VirtualNetworkGatewayObservation struct { // If true, an active-active Virtual Network Gateway will be created. An active-active gateway requires a HighPerformance or an UltraPerformance SKU. If false, an active-standby gateway will be created. Defaults to false. @@ -399,6 +542,18 @@ type VirtualNetworkGatewayParameters struct { type VirtualNetworkGatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualNetworkGatewayParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualNetworkGatewayInitParameters `json:"initProvider,omitempty"` } // VirtualNetworkGatewayStatus defines the observed state of VirtualNetworkGateway. @@ -419,10 +574,10 @@ type VirtualNetworkGatewayStatus struct { type VirtualNetworkGateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ipConfiguration)",message="ipConfiguration is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ipConfiguration) || has(self.initProvider.ipConfiguration)",message="ipConfiguration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" Spec VirtualNetworkGatewaySpec `json:"spec"` Status VirtualNetworkGatewayStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualnetworkgatewayconnection_types.go b/apis/network/v1beta1/zz_virtualnetworkgatewayconnection_types.go index 3306195a8..061610a97 100755 --- a/apis/network/v1beta1/zz_virtualnetworkgatewayconnection_types.go +++ b/apis/network/v1beta1/zz_virtualnetworkgatewayconnection_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomBGPAddressesInitParameters struct { + + // single IP address that is part of the azurerm_virtual_network_gateway ip_configuration (first one) + Primary *string `json:"primary,omitempty" tf:"primary,omitempty"` + + // single IP address that is part of the azurerm_virtual_network_gateway ip_configuration (second one) + Secondary *string `json:"secondary,omitempty" tf:"secondary,omitempty"` +} + type CustomBGPAddressesObservation struct { // single IP address that is part of the azurerm_virtual_network_gateway ip_configuration (first one) @@ -25,12 +34,41 @@ type CustomBGPAddressesObservation struct { type CustomBGPAddressesParameters struct { // single IP address that is part of the azurerm_virtual_network_gateway ip_configuration (first one) - // +kubebuilder:validation:Required - Primary *string `json:"primary" tf:"primary,omitempty"` + // +kubebuilder:validation:Optional + Primary *string `json:"primary,omitempty" tf:"primary,omitempty"` // single IP address that is part of the azurerm_virtual_network_gateway ip_configuration (second one) - // +kubebuilder:validation:Required - Secondary *string `json:"secondary" tf:"secondary,omitempty"` + // +kubebuilder:validation:Optional + Secondary *string `json:"secondary,omitempty" tf:"secondary,omitempty"` +} + +type IpsecPolicyInitParameters struct { + + // The DH group used in IKE phase 1 for initial SA. Valid options are DHGroup1, DHGroup14, DHGroup2, DHGroup2048, DHGroup24, ECP256, ECP384, or None. + DhGroup *string `json:"dhGroup,omitempty" tf:"dh_group,omitempty"` + + // The IKE encryption algorithm. Valid options are AES128, AES192, AES256, DES, DES3, GCMAES128, or GCMAES256. + IkeEncryption *string `json:"ikeEncryption,omitempty" tf:"ike_encryption,omitempty"` + + // The IKE integrity algorithm. Valid options are GCMAES128, GCMAES256, MD5, SHA1, SHA256, or SHA384. + IkeIntegrity *string `json:"ikeIntegrity,omitempty" tf:"ike_integrity,omitempty"` + + // The IPSec encryption algorithm. Valid options are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, or None. + IpsecEncryption *string `json:"ipsecEncryption,omitempty" tf:"ipsec_encryption,omitempty"` + + // The IPSec integrity algorithm. Valid options are GCMAES128, GCMAES192, GCMAES256, MD5, SHA1, or SHA256. + IpsecIntegrity *string `json:"ipsecIntegrity,omitempty" tf:"ipsec_integrity,omitempty"` + + // The DH group used in IKE phase 2 for new child SA. + // Valid options are ECP256, ECP384, PFS1, PFS14, PFS2, PFS2048, PFS24, PFSMM, + // or None. + PfsGroup *string `json:"pfsGroup,omitempty" tf:"pfs_group,omitempty"` + + // The IPSec SA payload size in KB. Must be at least 1024 KB. Defaults to 102400000 KB. + SaDatasize *float64 `json:"saDatasize,omitempty" tf:"sa_datasize,omitempty"` + + // The IPSec SA lifetime in seconds. Must be at least 300 seconds. Defaults to 27000 seconds. + SaLifetime *float64 `json:"saLifetime,omitempty" tf:"sa_lifetime,omitempty"` } type IpsecPolicyObservation struct { @@ -65,30 +103,30 @@ type IpsecPolicyObservation struct { type IpsecPolicyParameters struct { // The DH group used in IKE phase 1 for initial SA. Valid options are DHGroup1, DHGroup14, DHGroup2, DHGroup2048, DHGroup24, ECP256, ECP384, or None. - // +kubebuilder:validation:Required - DhGroup *string `json:"dhGroup" tf:"dh_group,omitempty"` + // +kubebuilder:validation:Optional + DhGroup *string `json:"dhGroup,omitempty" tf:"dh_group,omitempty"` // The IKE encryption algorithm. Valid options are AES128, AES192, AES256, DES, DES3, GCMAES128, or GCMAES256. - // +kubebuilder:validation:Required - IkeEncryption *string `json:"ikeEncryption" tf:"ike_encryption,omitempty"` + // +kubebuilder:validation:Optional + IkeEncryption *string `json:"ikeEncryption,omitempty" tf:"ike_encryption,omitempty"` // The IKE integrity algorithm. Valid options are GCMAES128, GCMAES256, MD5, SHA1, SHA256, or SHA384. - // +kubebuilder:validation:Required - IkeIntegrity *string `json:"ikeIntegrity" tf:"ike_integrity,omitempty"` + // +kubebuilder:validation:Optional + IkeIntegrity *string `json:"ikeIntegrity,omitempty" tf:"ike_integrity,omitempty"` // The IPSec encryption algorithm. Valid options are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, or None. - // +kubebuilder:validation:Required - IpsecEncryption *string `json:"ipsecEncryption" tf:"ipsec_encryption,omitempty"` + // +kubebuilder:validation:Optional + IpsecEncryption *string `json:"ipsecEncryption,omitempty" tf:"ipsec_encryption,omitempty"` // The IPSec integrity algorithm. Valid options are GCMAES128, GCMAES192, GCMAES256, MD5, SHA1, or SHA256. - // +kubebuilder:validation:Required - IpsecIntegrity *string `json:"ipsecIntegrity" tf:"ipsec_integrity,omitempty"` + // +kubebuilder:validation:Optional + IpsecIntegrity *string `json:"ipsecIntegrity,omitempty" tf:"ipsec_integrity,omitempty"` // The DH group used in IKE phase 2 for new child SA. // Valid options are ECP256, ECP384, PFS1, PFS14, PFS2, PFS2048, PFS24, PFSMM, // or None. - // +kubebuilder:validation:Required - PfsGroup *string `json:"pfsGroup" tf:"pfs_group,omitempty"` + // +kubebuilder:validation:Optional + PfsGroup *string `json:"pfsGroup,omitempty" tf:"pfs_group,omitempty"` // The IPSec SA payload size in KB. Must be at least 1024 KB. Defaults to 102400000 KB. // +kubebuilder:validation:Optional @@ -99,6 +137,15 @@ type IpsecPolicyParameters struct { SaLifetime *float64 `json:"saLifetime,omitempty" tf:"sa_lifetime,omitempty"` } +type TrafficSelectorPolicyInitParameters struct { + + // List of local CIDRs. + LocalAddressCidrs []*string `json:"localAddressCidrs,omitempty" tf:"local_address_cidrs,omitempty"` + + // List of remote CIDRs. + RemoteAddressCidrs []*string `json:"remoteAddressCidrs,omitempty" tf:"remote_address_cidrs,omitempty"` +} + type TrafficSelectorPolicyObservation struct { // List of local CIDRs. @@ -111,12 +158,73 @@ type TrafficSelectorPolicyObservation struct { type TrafficSelectorPolicyParameters struct { // List of local CIDRs. - // +kubebuilder:validation:Required - LocalAddressCidrs []*string `json:"localAddressCidrs" tf:"local_address_cidrs,omitempty"` + // +kubebuilder:validation:Optional + LocalAddressCidrs []*string `json:"localAddressCidrs,omitempty" tf:"local_address_cidrs,omitempty"` // List of remote CIDRs. - // +kubebuilder:validation:Required - RemoteAddressCidrs []*string `json:"remoteAddressCidrs" tf:"remote_address_cidrs,omitempty"` + // +kubebuilder:validation:Optional + RemoteAddressCidrs []*string `json:"remoteAddressCidrs,omitempty" tf:"remote_address_cidrs,omitempty"` +} + +type VirtualNetworkGatewayConnectionInitParameters struct { + + // Connection mode to use. Possible values are Default, InitiatorOnly and ResponderOnly. Defaults to Default. Changing this value will force a resource to be created. + ConnectionMode *string `json:"connectionMode,omitempty" tf:"connection_mode,omitempty"` + + // The IKE protocol version to use. Possible values are IKEv1 and IKEv2, values are IKEv1 and IKEv2. Defaults to IKEv2. Changing this forces a new resource to be created. + // -> Note: Only valid for IPSec connections on virtual network gateways with SKU VpnGw1, VpnGw2, VpnGw3, VpnGw1AZ, VpnGw2AZ or VpnGw3AZ. + ConnectionProtocol *string `json:"connectionProtocol,omitempty" tf:"connection_protocol,omitempty"` + + // A custom_bgp_addresses (Border Gateway Protocol custom IP Addresses) block which is documented below. + // The block can only be used on IPSec / activeactive connections, + // For details about see the relevant section in the Azure documentation. + CustomBGPAddresses []CustomBGPAddressesInitParameters `json:"customBgpAddresses,omitempty" tf:"custom_bgp_addresses,omitempty"` + + // The dead peer detection timeout of this connection in seconds. Changing this forces a new resource to be created. + DpdTimeoutSeconds *float64 `json:"dpdTimeoutSeconds,omitempty" tf:"dpd_timeout_seconds,omitempty"` + + // A list of the egress NAT Rule Ids. + EgressNATRuleIds []*string `json:"egressNatRuleIds,omitempty" tf:"egress_nat_rule_ids,omitempty"` + + // If true, BGP (Border Gateway Protocol) is enabled for this connection. Defaults to false. + EnableBGP *bool `json:"enableBgp,omitempty" tf:"enable_bgp,omitempty"` + + // The ID of the Express Route Circuit when creating an ExpressRoute connection (i.e. when type is ExpressRoute). The Express Route Circuit can be in the same or in a different subscription. Changing this forces a new resource to be created. + ExpressRouteCircuitID *string `json:"expressRouteCircuitId,omitempty" tf:"express_route_circuit_id,omitempty"` + + // If true, data packets will bypass ExpressRoute Gateway for data forwarding This is only valid for ExpressRoute connections. + ExpressRouteGatewayBypass *bool `json:"expressRouteGatewayBypass,omitempty" tf:"express_route_gateway_bypass,omitempty"` + + // A list of the ingress NAT Rule Ids. + IngressNATRuleIds []*string `json:"ingressNatRuleIds,omitempty" tf:"ingress_nat_rule_ids,omitempty"` + + // A ipsec_policy block which is documented below. + // Only a single policy can be defined for a connection. For details on + // custom policies refer to the relevant section in the Azure documentation. + IpsecPolicy []IpsecPolicyInitParameters `json:"ipsecPolicy,omitempty" tf:"ipsec_policy,omitempty"` + + // Use private local Azure IP for the connection. Changing this forces a new resource to be created. + LocalAzureIPAddressEnabled *bool `json:"localAzureIpAddressEnabled,omitempty" tf:"local_azure_ip_address_enabled,omitempty"` + + // The location/region where the connection is located. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The routing weight. Defaults to 10. + RoutingWeight *float64 `json:"routingWeight,omitempty" tf:"routing_weight,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // One or more traffic_selector_policy blocks which are documented below. + // A traffic_selector_policy allows to specify a traffic selector policy proposal to be used in a virtual network gateway connection. + // For details about traffic selectors refer to the relevant section in the Azure documentation. + TrafficSelectorPolicy []TrafficSelectorPolicyInitParameters `json:"trafficSelectorPolicy,omitempty" tf:"traffic_selector_policy,omitempty"` + + // The type of connection. Valid options are IPsec (Site-to-Site), ExpressRoute (ExpressRoute), and Vnet2Vnet (VNet-to-VNet). Each connection type requires different mandatory arguments (refer to the examples above). Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // If true, policy-based traffic selectors are enabled for this connection. Enabling policy-based traffic selectors requires an ipsec_policy block. Defaults to false. + UsePolicyBasedTrafficSelectors *bool `json:"usePolicyBasedTrafficSelectors,omitempty" tf:"use_policy_based_traffic_selectors,omitempty"` } type VirtualNetworkGatewayConnectionObservation struct { @@ -340,6 +448,18 @@ type VirtualNetworkGatewayConnectionParameters struct { type VirtualNetworkGatewayConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualNetworkGatewayConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualNetworkGatewayConnectionInitParameters `json:"initProvider,omitempty"` } // VirtualNetworkGatewayConnectionStatus defines the observed state of VirtualNetworkGatewayConnection. @@ -360,8 +480,8 @@ type VirtualNetworkGatewayConnectionStatus struct { type VirtualNetworkGatewayConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" Spec VirtualNetworkGatewayConnectionSpec `json:"spec"` Status VirtualNetworkGatewayConnectionStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualnetworkpeering_types.go b/apis/network/v1beta1/zz_virtualnetworkpeering_types.go index 3451a1e07..16b0b3356 100755 --- a/apis/network/v1beta1/zz_virtualnetworkpeering_types.go +++ b/apis/network/v1beta1/zz_virtualnetworkpeering_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VirtualNetworkPeeringInitParameters struct { + + // Controls if forwarded traffic from VMs in the remote virtual network is allowed. Defaults to false. + AllowForwardedTraffic *bool `json:"allowForwardedTraffic,omitempty" tf:"allow_forwarded_traffic,omitempty"` + + // Controls gatewayLinks can be used in the remote virtual network’s link to the local virtual network. Defaults to false. + AllowGatewayTransit *bool `json:"allowGatewayTransit,omitempty" tf:"allow_gateway_transit,omitempty"` + + // Controls if the VMs in the remote virtual network can access VMs in the local virtual network. Defaults to true. + AllowVirtualNetworkAccess *bool `json:"allowVirtualNetworkAccess,omitempty" tf:"allow_virtual_network_access,omitempty"` + + // A mapping of key values pairs that can be used to sync network routes from the remote virtual network to the local virtual network. See the trigger example for an example on how to set it up. + Triggers map[string]*string `json:"triggers,omitempty" tf:"triggers,omitempty"` + + // Controls if remote gateways can be used on the local virtual network. If the flag is set to true, and allow_gateway_transit on the remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway. Defaults to false. + UseRemoteGateways *bool `json:"useRemoteGateways,omitempty" tf:"use_remote_gateways,omitempty"` +} + type VirtualNetworkPeeringObservation struct { // Controls if forwarded traffic from VMs in the remote virtual network is allowed. Defaults to false. @@ -110,6 +128,18 @@ type VirtualNetworkPeeringParameters struct { type VirtualNetworkPeeringSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualNetworkPeeringParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualNetworkPeeringInitParameters `json:"initProvider,omitempty"` } // VirtualNetworkPeeringStatus defines the observed state of VirtualNetworkPeering. diff --git a/apis/network/v1beta1/zz_virtualwan_types.go b/apis/network/v1beta1/zz_virtualwan_types.go index 47bde569c..bc5039050 100755 --- a/apis/network/v1beta1/zz_virtualwan_types.go +++ b/apis/network/v1beta1/zz_virtualwan_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type VirtualWANInitParameters struct { + + // Boolean flag to specify whether branch to branch traffic is allowed. Defaults to true. + AllowBranchToBranchTraffic *bool `json:"allowBranchToBranchTraffic,omitempty" tf:"allow_branch_to_branch_traffic,omitempty"` + + // Boolean flag to specify whether VPN encryption is disabled. Defaults to false. + DisableVPNEncryption *bool `json:"disableVpnEncryption,omitempty" tf:"disable_vpn_encryption,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the Office365 local breakout category. Possible values include: Optimize, OptimizeAndAllow, All, None. Defaults to None. + Office365LocalBreakoutCategory *string `json:"office365LocalBreakoutCategory,omitempty" tf:"office365_local_breakout_category,omitempty"` + + // A mapping of tags to assign to the Virtual WAN. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the Virtual WAN type. Possible Values include: Basic and Standard. Defaults to Standard. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type VirtualWANObservation struct { // Boolean flag to specify whether branch to branch traffic is allowed. Defaults to true. @@ -84,6 +105,18 @@ type VirtualWANParameters struct { type VirtualWANSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VirtualWANParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VirtualWANInitParameters `json:"initProvider,omitempty"` } // VirtualWANStatus defines the observed state of VirtualWAN. @@ -104,7 +137,7 @@ type VirtualWANStatus struct { type VirtualWAN struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec VirtualWANSpec `json:"spec"` Status VirtualWANStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_vpngateway_types.go b/apis/network/v1beta1/zz_vpngateway_types.go index 9c42bef79..e36d1edd0 100755 --- a/apis/network/v1beta1/zz_vpngateway_types.go +++ b/apis/network/v1beta1/zz_vpngateway_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type Instance0BGPPeeringAddressInitParameters struct { + + // A list of custom BGP peering addresses to assign to this instance. + CustomIps []*string `json:"customIps,omitempty" tf:"custom_ips,omitempty"` +} + type Instance0BGPPeeringAddressObservation struct { // A list of custom BGP peering addresses to assign to this instance. @@ -31,8 +37,14 @@ type Instance0BGPPeeringAddressObservation struct { type Instance0BGPPeeringAddressParameters struct { // A list of custom BGP peering addresses to assign to this instance. - // +kubebuilder:validation:Required - CustomIps []*string `json:"customIps" tf:"custom_ips,omitempty"` + // +kubebuilder:validation:Optional + CustomIps []*string `json:"customIps,omitempty" tf:"custom_ips,omitempty"` +} + +type Instance1BGPPeeringAddressInitParameters struct { + + // A list of custom BGP peering addresses to assign to this instance. + CustomIps []*string `json:"customIps,omitempty" tf:"custom_ips,omitempty"` } type Instance1BGPPeeringAddressObservation struct { @@ -53,8 +65,23 @@ type Instance1BGPPeeringAddressObservation struct { type Instance1BGPPeeringAddressParameters struct { // A list of custom BGP peering addresses to assign to this instance. - // +kubebuilder:validation:Required - CustomIps []*string `json:"customIps" tf:"custom_ips,omitempty"` + // +kubebuilder:validation:Optional + CustomIps []*string `json:"customIps,omitempty" tf:"custom_ips,omitempty"` +} + +type VPNGatewayBGPSettingsInitParameters struct { + + // The ASN of the BGP Speaker. Changing this forces a new resource to be created. + Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` + + // An instance_bgp_peering_address block as defined below. + Instance0BGPPeeringAddress []Instance0BGPPeeringAddressInitParameters `json:"instance0BgpPeeringAddress,omitempty" tf:"instance_0_bgp_peering_address,omitempty"` + + // An instance_bgp_peering_address block as defined below. + Instance1BGPPeeringAddress []Instance1BGPPeeringAddressInitParameters `json:"instance1BgpPeeringAddress,omitempty" tf:"instance_1_bgp_peering_address,omitempty"` + + // The weight added to Routes learned from this BGP Speaker. Changing this forces a new resource to be created. + PeerWeight *float64 `json:"peerWeight,omitempty" tf:"peer_weight,omitempty"` } type VPNGatewayBGPSettingsObservation struct { @@ -78,8 +105,8 @@ type VPNGatewayBGPSettingsObservation struct { type VPNGatewayBGPSettingsParameters struct { // The ASN of the BGP Speaker. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Asn *float64 `json:"asn" tf:"asn,omitempty"` + // +kubebuilder:validation:Optional + Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` // An instance_bgp_peering_address block as defined below. // +kubebuilder:validation:Optional @@ -90,8 +117,29 @@ type VPNGatewayBGPSettingsParameters struct { Instance1BGPPeeringAddress []Instance1BGPPeeringAddressParameters `json:"instance1BgpPeeringAddress,omitempty" tf:"instance_1_bgp_peering_address,omitempty"` // The weight added to Routes learned from this BGP Speaker. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - PeerWeight *float64 `json:"peerWeight" tf:"peer_weight,omitempty"` + // +kubebuilder:validation:Optional + PeerWeight *float64 `json:"peerWeight,omitempty" tf:"peer_weight,omitempty"` +} + +type VPNGatewayInitParameters struct { + + // Is BGP route translation for NAT on this VPN Gateway enabled? Defaults to false. + BGPRouteTranslationForNATEnabled *bool `json:"bgpRouteTranslationForNatEnabled,omitempty" tf:"bgp_route_translation_for_nat_enabled,omitempty"` + + // A bgp_settings block as defined below. + BGPSettings []VPNGatewayBGPSettingsInitParameters `json:"bgpSettings,omitempty" tf:"bgp_settings,omitempty"` + + // The Azure location where this VPN Gateway should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Azure routing preference lets you to choose how your traffic routes between Azure and the internet. You can choose to route traffic either via the Microsoft network (default value, Microsoft Network), or via the ISP network (public internet, set to Internet). More context of the configuration can be found in the Microsoft Docs to create a VPN Gateway. Changing this forces a new resource to be created. + RoutingPreference *string `json:"routingPreference,omitempty" tf:"routing_preference,omitempty"` + + // The Scale Unit for this VPN Gateway. Defaults to 1. + ScaleUnit *float64 `json:"scaleUnit,omitempty" tf:"scale_unit,omitempty"` + + // A mapping of tags to assign to the VPN Gateway. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type VPNGatewayObservation struct { @@ -182,6 +230,18 @@ type VPNGatewayParameters struct { type VPNGatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider VPNGatewayParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VPNGatewayInitParameters `json:"initProvider,omitempty"` } // VPNGatewayStatus defines the observed state of VPNGateway. @@ -202,7 +262,7 @@ type VPNGatewayStatus struct { type VPNGateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec VPNGatewaySpec `json:"spec"` Status VPNGatewayStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_vpngatewayconnection_types.go b/apis/network/v1beta1/zz_vpngatewayconnection_types.go index 3b82e0f69..ae8019ad7 100755 --- a/apis/network/v1beta1/zz_vpngatewayconnection_types.go +++ b/apis/network/v1beta1/zz_vpngatewayconnection_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomBGPAddressInitParameters struct { + + // The custom bgp ip address which belongs to the IP Configuration. + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The ID of the IP Configuration which belongs to the VPN Gateway. + IPConfigurationID *string `json:"ipConfigurationId,omitempty" tf:"ip_configuration_id,omitempty"` +} + type CustomBGPAddressObservation struct { // The custom bgp ip address which belongs to the IP Configuration. @@ -25,12 +34,27 @@ type CustomBGPAddressObservation struct { type CustomBGPAddressParameters struct { // The custom bgp ip address which belongs to the IP Configuration. - // +kubebuilder:validation:Required - IPAddress *string `json:"ipAddress" tf:"ip_address,omitempty"` + // +kubebuilder:validation:Optional + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The ID of the IP Configuration which belongs to the VPN Gateway. - // +kubebuilder:validation:Required - IPConfigurationID *string `json:"ipConfigurationId" tf:"ip_configuration_id,omitempty"` + // +kubebuilder:validation:Optional + IPConfigurationID *string `json:"ipConfigurationId,omitempty" tf:"ip_configuration_id,omitempty"` +} + +type VPNGatewayConnectionInitParameters struct { + + // Whether Internet Security is enabled for this VPN Connection. Defaults to false. + InternetSecurityEnabled *bool `json:"internetSecurityEnabled,omitempty" tf:"internet_security_enabled,omitempty"` + + // A routing block as defined below. If this is not specified, there will be a default route table created implicitly. + Routing []VPNGatewayConnectionRoutingInitParameters `json:"routing,omitempty" tf:"routing,omitempty"` + + // One or more traffic_selector_policy blocks as defined below. + TrafficSelectorPolicy []VPNGatewayConnectionTrafficSelectorPolicyInitParameters `json:"trafficSelectorPolicy,omitempty" tf:"traffic_selector_policy,omitempty"` + + // One or more vpn_link blocks as defined below. + VPNLink []VPNLinkInitParameters `json:"vpnLink,omitempty" tf:"vpn_link,omitempty"` } type VPNGatewayConnectionObservation struct { @@ -104,6 +128,21 @@ type VPNGatewayConnectionParameters struct { VPNLink []VPNLinkParameters `json:"vpnLink,omitempty" tf:"vpn_link,omitempty"` } +type VPNGatewayConnectionRoutingInitParameters struct { + + // The ID of the Route Table associated with this VPN Connection. + AssociatedRouteTable *string `json:"associatedRouteTable,omitempty" tf:"associated_route_table,omitempty"` + + // The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes. + InboundRouteMapID *string `json:"inboundRouteMapId,omitempty" tf:"inbound_route_map_id,omitempty"` + + // The resource ID of the Route Map associated with this Routing Configuration for outbound advertised routes. + OutboundRouteMapID *string `json:"outboundRouteMapId,omitempty" tf:"outbound_route_map_id,omitempty"` + + // A propagated_route_table block as defined below. + PropagatedRouteTable []VPNGatewayConnectionRoutingPropagatedRouteTableInitParameters `json:"propagatedRouteTable,omitempty" tf:"propagated_route_table,omitempty"` +} + type VPNGatewayConnectionRoutingObservation struct { // The ID of the Route Table associated with this VPN Connection. @@ -122,8 +161,8 @@ type VPNGatewayConnectionRoutingObservation struct { type VPNGatewayConnectionRoutingParameters struct { // The ID of the Route Table associated with this VPN Connection. - // +kubebuilder:validation:Required - AssociatedRouteTable *string `json:"associatedRouteTable" tf:"associated_route_table,omitempty"` + // +kubebuilder:validation:Optional + AssociatedRouteTable *string `json:"associatedRouteTable,omitempty" tf:"associated_route_table,omitempty"` // The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes. // +kubebuilder:validation:Optional @@ -138,6 +177,15 @@ type VPNGatewayConnectionRoutingParameters struct { PropagatedRouteTable []VPNGatewayConnectionRoutingPropagatedRouteTableParameters `json:"propagatedRouteTable,omitempty" tf:"propagated_route_table,omitempty"` } +type VPNGatewayConnectionRoutingPropagatedRouteTableInitParameters struct { + + // A list of labels to assign to this route table. + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` + + // A list of Route Table IDs to associated with this VPN Gateway Connection. + RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"` +} + type VPNGatewayConnectionRoutingPropagatedRouteTableObservation struct { // A list of labels to assign to this route table. @@ -154,8 +202,17 @@ type VPNGatewayConnectionRoutingPropagatedRouteTableParameters struct { Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` // A list of Route Table IDs to associated with this VPN Gateway Connection. - // +kubebuilder:validation:Required - RouteTableIds []*string `json:"routeTableIds" tf:"route_table_ids,omitempty"` + // +kubebuilder:validation:Optional + RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"` +} + +type VPNGatewayConnectionTrafficSelectorPolicyInitParameters struct { + + // A list of local address spaces in CIDR format for this VPN Gateway Connection. + LocalAddressRanges []*string `json:"localAddressRanges,omitempty" tf:"local_address_ranges,omitempty"` + + // A list of remote address spaces in CIDR format for this VPN Gateway Connection. + RemoteAddressRanges []*string `json:"remoteAddressRanges,omitempty" tf:"remote_address_ranges,omitempty"` } type VPNGatewayConnectionTrafficSelectorPolicyObservation struct { @@ -170,12 +227,87 @@ type VPNGatewayConnectionTrafficSelectorPolicyObservation struct { type VPNGatewayConnectionTrafficSelectorPolicyParameters struct { // A list of local address spaces in CIDR format for this VPN Gateway Connection. - // +kubebuilder:validation:Required - LocalAddressRanges []*string `json:"localAddressRanges" tf:"local_address_ranges,omitempty"` + // +kubebuilder:validation:Optional + LocalAddressRanges []*string `json:"localAddressRanges,omitempty" tf:"local_address_ranges,omitempty"` // A list of remote address spaces in CIDR format for this VPN Gateway Connection. - // +kubebuilder:validation:Required - RemoteAddressRanges []*string `json:"remoteAddressRanges" tf:"remote_address_ranges,omitempty"` + // +kubebuilder:validation:Optional + RemoteAddressRanges []*string `json:"remoteAddressRanges,omitempty" tf:"remote_address_ranges,omitempty"` +} + +type VPNLinkInitParameters struct { + + // Should the BGP be enabled? Defaults to false. Changing this forces a new VPN Gateway Connection to be created. + BGPEnabled *bool `json:"bgpEnabled,omitempty" tf:"bgp_enabled,omitempty"` + + // The expected connection bandwidth in MBPS. Defaults to 10. + BandwidthMbps *float64 `json:"bandwidthMbps,omitempty" tf:"bandwidth_mbps,omitempty"` + + // The connection mode of this VPN Link. Possible values are Default, InitiatorOnly and ResponderOnly. Defaults to Default. + ConnectionMode *string `json:"connectionMode,omitempty" tf:"connection_mode,omitempty"` + + // One or more custom_bgp_address blocks as defined below. + CustomBGPAddress []CustomBGPAddressInitParameters `json:"customBgpAddress,omitempty" tf:"custom_bgp_address,omitempty"` + + // A list of the egress NAT Rule Ids. + EgressNATRuleIds []*string `json:"egressNatRuleIds,omitempty" tf:"egress_nat_rule_ids,omitempty"` + + // A list of the ingress NAT Rule Ids. + IngressNATRuleIds []*string `json:"ingressNatRuleIds,omitempty" tf:"ingress_nat_rule_ids,omitempty"` + + // One or more ipsec_policy blocks as defined above. + IpsecPolicy []VPNLinkIpsecPolicyInitParameters `json:"ipsecPolicy,omitempty" tf:"ipsec_policy,omitempty"` + + // Whether to use local Azure IP to initiate connection? Defaults to false. + LocalAzureIPAddressEnabled *bool `json:"localAzureIpAddressEnabled,omitempty" tf:"local_azure_ip_address_enabled,omitempty"` + + // The name which should be used for this VPN Link Connection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Whether to enable policy-based traffic selectors? Defaults to false. + PolicyBasedTrafficSelectorEnabled *bool `json:"policyBasedTrafficSelectorEnabled,omitempty" tf:"policy_based_traffic_selector_enabled,omitempty"` + + // The protocol used for this VPN Link Connection. Possible values are IKEv1 and IKEv2. Defaults to IKEv2. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` + + // Should the rate limit be enabled? Defaults to false. + RatelimitEnabled *bool `json:"ratelimitEnabled,omitempty" tf:"ratelimit_enabled,omitempty"` + + // Routing weight for this VPN Link Connection. Defaults to 0. + RouteWeight *float64 `json:"routeWeight,omitempty" tf:"route_weight,omitempty"` + + // SharedKey for this VPN Link Connection. + SharedKey *string `json:"sharedKey,omitempty" tf:"shared_key,omitempty"` + + // The ID of the connected VPN Site Link. Changing this forces a new VPN Gateway Connection to be created. + VPNSiteLinkID *string `json:"vpnSiteLinkId,omitempty" tf:"vpn_site_link_id,omitempty"` +} + +type VPNLinkIpsecPolicyInitParameters struct { + + // The DH Group used in IKE Phase 1 for initial SA. Possible values are None, DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384. + DhGroup *string `json:"dhGroup,omitempty" tf:"dh_group,omitempty"` + + // The IPSec encryption algorithm (IKE phase 1). Possible values are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, None. + EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` + + // The IKE encryption algorithm (IKE phase 2). Possible values are DES, DES3, AES128, AES192, AES256, GCMAES128, GCMAES256. + IkeEncryptionAlgorithm *string `json:"ikeEncryptionAlgorithm,omitempty" tf:"ike_encryption_algorithm,omitempty"` + + // The IKE integrity algorithm (IKE phase 2). Possible values are MD5, SHA1, SHA256, SHA384, GCMAES128, GCMAES256. + IkeIntegrityAlgorithm *string `json:"ikeIntegrityAlgorithm,omitempty" tf:"ike_integrity_algorithm,omitempty"` + + // The IPSec integrity algorithm (IKE phase 1). Possible values are MD5, SHA1, SHA256, GCMAES128, GCMAES192, GCMAES256. + IntegrityAlgorithm *string `json:"integrityAlgorithm,omitempty" tf:"integrity_algorithm,omitempty"` + + // The Pfs Group used in IKE Phase 2 for the new child SA. Possible values are None, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM, ECP256, ECP384. + PfsGroup *string `json:"pfsGroup,omitempty" tf:"pfs_group,omitempty"` + + // The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for the site to site VPN tunnel. + SaDataSizeKb *float64 `json:"saDataSizeKb,omitempty" tf:"sa_data_size_kb,omitempty"` + + // The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for the site to site VPN tunnel. + SaLifetimeSec *float64 `json:"saLifetimeSec,omitempty" tf:"sa_lifetime_sec,omitempty"` } type VPNLinkIpsecPolicyObservation struct { @@ -208,36 +340,36 @@ type VPNLinkIpsecPolicyObservation struct { type VPNLinkIpsecPolicyParameters struct { // The DH Group used in IKE Phase 1 for initial SA. Possible values are None, DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384. - // +kubebuilder:validation:Required - DhGroup *string `json:"dhGroup" tf:"dh_group,omitempty"` + // +kubebuilder:validation:Optional + DhGroup *string `json:"dhGroup,omitempty" tf:"dh_group,omitempty"` // The IPSec encryption algorithm (IKE phase 1). Possible values are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, None. - // +kubebuilder:validation:Required - EncryptionAlgorithm *string `json:"encryptionAlgorithm" tf:"encryption_algorithm,omitempty"` + // +kubebuilder:validation:Optional + EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` // The IKE encryption algorithm (IKE phase 2). Possible values are DES, DES3, AES128, AES192, AES256, GCMAES128, GCMAES256. - // +kubebuilder:validation:Required - IkeEncryptionAlgorithm *string `json:"ikeEncryptionAlgorithm" tf:"ike_encryption_algorithm,omitempty"` + // +kubebuilder:validation:Optional + IkeEncryptionAlgorithm *string `json:"ikeEncryptionAlgorithm,omitempty" tf:"ike_encryption_algorithm,omitempty"` // The IKE integrity algorithm (IKE phase 2). Possible values are MD5, SHA1, SHA256, SHA384, GCMAES128, GCMAES256. - // +kubebuilder:validation:Required - IkeIntegrityAlgorithm *string `json:"ikeIntegrityAlgorithm" tf:"ike_integrity_algorithm,omitempty"` + // +kubebuilder:validation:Optional + IkeIntegrityAlgorithm *string `json:"ikeIntegrityAlgorithm,omitempty" tf:"ike_integrity_algorithm,omitempty"` // The IPSec integrity algorithm (IKE phase 1). Possible values are MD5, SHA1, SHA256, GCMAES128, GCMAES192, GCMAES256. - // +kubebuilder:validation:Required - IntegrityAlgorithm *string `json:"integrityAlgorithm" tf:"integrity_algorithm,omitempty"` + // +kubebuilder:validation:Optional + IntegrityAlgorithm *string `json:"integrityAlgorithm,omitempty" tf:"integrity_algorithm,omitempty"` // The Pfs Group used in IKE Phase 2 for the new child SA. Possible values are None, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM, ECP256, ECP384. - // +kubebuilder:validation:Required - PfsGroup *string `json:"pfsGroup" tf:"pfs_group,omitempty"` + // +kubebuilder:validation:Optional + PfsGroup *string `json:"pfsGroup,omitempty" tf:"pfs_group,omitempty"` // The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for the site to site VPN tunnel. - // +kubebuilder:validation:Required - SaDataSizeKb *float64 `json:"saDataSizeKb" tf:"sa_data_size_kb,omitempty"` + // +kubebuilder:validation:Optional + SaDataSizeKb *float64 `json:"saDataSizeKb,omitempty" tf:"sa_data_size_kb,omitempty"` // The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for the site to site VPN tunnel. - // +kubebuilder:validation:Required - SaLifetimeSec *float64 `json:"saLifetimeSec" tf:"sa_lifetime_sec,omitempty"` + // +kubebuilder:validation:Optional + SaLifetimeSec *float64 `json:"saLifetimeSec,omitempty" tf:"sa_lifetime_sec,omitempty"` } type VPNLinkObservation struct { @@ -323,8 +455,8 @@ type VPNLinkParameters struct { LocalAzureIPAddressEnabled *bool `json:"localAzureIpAddressEnabled,omitempty" tf:"local_azure_ip_address_enabled,omitempty"` // The name which should be used for this VPN Link Connection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Whether to enable policy-based traffic selectors? Defaults to false. // +kubebuilder:validation:Optional @@ -347,14 +479,26 @@ type VPNLinkParameters struct { SharedKey *string `json:"sharedKey,omitempty" tf:"shared_key,omitempty"` // The ID of the connected VPN Site Link. Changing this forces a new VPN Gateway Connection to be created. - // +kubebuilder:validation:Required - VPNSiteLinkID *string `json:"vpnSiteLinkId" tf:"vpn_site_link_id,omitempty"` + // +kubebuilder:validation:Optional + VPNSiteLinkID *string `json:"vpnSiteLinkId,omitempty" tf:"vpn_site_link_id,omitempty"` } // VPNGatewayConnectionSpec defines the desired state of VPNGatewayConnection type VPNGatewayConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VPNGatewayConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VPNGatewayConnectionInitParameters `json:"initProvider,omitempty"` } // VPNGatewayConnectionStatus defines the observed state of VPNGatewayConnection. @@ -375,7 +519,7 @@ type VPNGatewayConnectionStatus struct { type VPNGatewayConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vpnLink)",message="vpnLink is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.vpnLink) || has(self.initProvider.vpnLink)",message="vpnLink is a required parameter" Spec VPNGatewayConnectionSpec `json:"spec"` Status VPNGatewayConnectionStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_vpnserverconfiguration_types.go b/apis/network/v1beta1/zz_vpnserverconfiguration_types.go index 10aafd11f..ab1d95460 100755 --- a/apis/network/v1beta1/zz_vpnserverconfiguration_types.go +++ b/apis/network/v1beta1/zz_vpnserverconfiguration_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AzureActiveDirectoryAuthenticationInitParameters struct { + + // The Audience which should be used for authentication. + Audience *string `json:"audience,omitempty" tf:"audience,omitempty"` + + // The Issuer which should be used for authentication. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // The Tenant which should be used for authentication. + Tenant *string `json:"tenant,omitempty" tf:"tenant,omitempty"` +} + type AzureActiveDirectoryAuthenticationObservation struct { // The Audience which should be used for authentication. @@ -28,16 +40,25 @@ type AzureActiveDirectoryAuthenticationObservation struct { type AzureActiveDirectoryAuthenticationParameters struct { // The Audience which should be used for authentication. - // +kubebuilder:validation:Required - Audience *string `json:"audience" tf:"audience,omitempty"` + // +kubebuilder:validation:Optional + Audience *string `json:"audience,omitempty" tf:"audience,omitempty"` // The Issuer which should be used for authentication. - // +kubebuilder:validation:Required - Issuer *string `json:"issuer" tf:"issuer,omitempty"` + // +kubebuilder:validation:Optional + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // The Tenant which should be used for authentication. - // +kubebuilder:validation:Required - Tenant *string `json:"tenant" tf:"tenant,omitempty"` + // +kubebuilder:validation:Optional + Tenant *string `json:"tenant,omitempty" tf:"tenant,omitempty"` +} + +type ClientRevokedCertificateInitParameters struct { + + // A name used to uniquely identify this certificate. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Thumbprint of the Certificate. + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` } type ClientRevokedCertificateObservation struct { @@ -52,12 +73,21 @@ type ClientRevokedCertificateObservation struct { type ClientRevokedCertificateParameters struct { // A name used to uniquely identify this certificate. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Thumbprint of the Certificate. - // +kubebuilder:validation:Required - Thumbprint *string `json:"thumbprint" tf:"thumbprint,omitempty"` + // +kubebuilder:validation:Optional + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` +} + +type ClientRootCertificateInitParameters struct { + + // A name used to uniquely identify this certificate. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Public Key Data associated with the Certificate. + PublicCertData *string `json:"publicCertData,omitempty" tf:"public_cert_data,omitempty"` } type ClientRootCertificateObservation struct { @@ -72,12 +102,21 @@ type ClientRootCertificateObservation struct { type ClientRootCertificateParameters struct { // A name used to uniquely identify this certificate. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Public Key Data associated with the Certificate. - // +kubebuilder:validation:Required - PublicCertData *string `json:"publicCertData" tf:"public_cert_data,omitempty"` + // +kubebuilder:validation:Optional + PublicCertData *string `json:"publicCertData,omitempty" tf:"public_cert_data,omitempty"` +} + +type RadiusClientRootCertificateInitParameters struct { + + // A name used to uniquely identify this certificate. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Thumbprint of the Certificate. + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` } type RadiusClientRootCertificateObservation struct { @@ -92,12 +131,24 @@ type RadiusClientRootCertificateObservation struct { type RadiusClientRootCertificateParameters struct { // A name used to uniquely identify this certificate. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Thumbprint of the Certificate. - // +kubebuilder:validation:Required - Thumbprint *string `json:"thumbprint" tf:"thumbprint,omitempty"` + // +kubebuilder:validation:Optional + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` +} + +type RadiusInitParameters struct { + + // One or more client_root_certificate blocks as defined above. + ClientRootCertificate []RadiusClientRootCertificateInitParameters `json:"clientRootCertificate,omitempty" tf:"client_root_certificate,omitempty"` + + // One or more server blocks as defined below. + Server []ServerInitParameters `json:"server,omitempty" tf:"server,omitempty"` + + // One or more server_root_certificate blocks as defined below. + ServerRootCertificate []ServerRootCertificateInitParameters `json:"serverRootCertificate,omitempty" tf:"server_root_certificate,omitempty"` } type RadiusObservation struct { @@ -127,6 +178,15 @@ type RadiusParameters struct { ServerRootCertificate []ServerRootCertificateParameters `json:"serverRootCertificate,omitempty" tf:"server_root_certificate,omitempty"` } +type ServerInitParameters struct { + + // The Address of the Radius Server. + Address *string `json:"address,omitempty" tf:"address,omitempty"` + + // The Score of the Radius Server determines the priority of the server. Ranges from 1 to 30. + Score *float64 `json:"score,omitempty" tf:"score,omitempty"` +} + type ServerObservation struct { // The Address of the Radius Server. @@ -139,18 +199,27 @@ type ServerObservation struct { type ServerParameters struct { // The Address of the Radius Server. - // +kubebuilder:validation:Required - Address *string `json:"address" tf:"address,omitempty"` + // +kubebuilder:validation:Optional + Address *string `json:"address,omitempty" tf:"address,omitempty"` // The Score of the Radius Server determines the priority of the server. Ranges from 1 to 30. - // +kubebuilder:validation:Required - Score *float64 `json:"score" tf:"score,omitempty"` + // +kubebuilder:validation:Optional + Score *float64 `json:"score,omitempty" tf:"score,omitempty"` // The Secret used to communicate with the Radius Server. // +kubebuilder:validation:Required SecretSecretRef v1.SecretKeySelector `json:"secretSecretRef" tf:"-"` } +type ServerRootCertificateInitParameters struct { + + // A name used to uniquely identify this certificate. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Public Key Data associated with the Certificate. + PublicCertData *string `json:"publicCertData,omitempty" tf:"public_cert_data,omitempty"` +} + type ServerRootCertificateObservation struct { // A name used to uniquely identify this certificate. @@ -163,12 +232,69 @@ type ServerRootCertificateObservation struct { type ServerRootCertificateParameters struct { // A name used to uniquely identify this certificate. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Public Key Data associated with the Certificate. - // +kubebuilder:validation:Required - PublicCertData *string `json:"publicCertData" tf:"public_cert_data,omitempty"` + // +kubebuilder:validation:Optional + PublicCertData *string `json:"publicCertData,omitempty" tf:"public_cert_data,omitempty"` +} + +type VPNServerConfigurationInitParameters struct { + + // A azure_active_directory_authentication block as defined below. + AzureActiveDirectoryAuthentication []AzureActiveDirectoryAuthenticationInitParameters `json:"azureActiveDirectoryAuthentication,omitempty" tf:"azure_active_directory_authentication,omitempty"` + + // One or more client_revoked_certificate blocks as defined below. + ClientRevokedCertificate []ClientRevokedCertificateInitParameters `json:"clientRevokedCertificate,omitempty" tf:"client_revoked_certificate,omitempty"` + + // One or more client_root_certificate blocks as defined below. + ClientRootCertificate []ClientRootCertificateInitParameters `json:"clientRootCertificate,omitempty" tf:"client_root_certificate,omitempty"` + + // A ipsec_policy block as defined below. + IpsecPolicy []VPNServerConfigurationIpsecPolicyInitParameters `json:"ipsecPolicy,omitempty" tf:"ipsec_policy,omitempty"` + + // The Azure location where this VPN Server Configuration should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A radius block as defined below. + Radius []RadiusInitParameters `json:"radius,omitempty" tf:"radius,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A list of Authentication Types applicable for this VPN Server Configuration. Possible values are AAD (Azure Active Directory), Certificate and Radius. + VPNAuthenticationTypes []*string `json:"vpnAuthenticationTypes,omitempty" tf:"vpn_authentication_types,omitempty"` + + // A list of VPN Protocols to use for this Server Configuration. Possible values are IkeV2 and OpenVPN. + VPNProtocols []*string `json:"vpnProtocols,omitempty" tf:"vpn_protocols,omitempty"` +} + +type VPNServerConfigurationIpsecPolicyInitParameters struct { + + // The DH Group, used in IKE Phase 1. Possible values include DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384 and None. + DhGroup *string `json:"dhGroup,omitempty" tf:"dh_group,omitempty"` + + // The IKE encryption algorithm, used for IKE Phase 2. Possible values include AES128, AES192, AES256, DES, DES3, GCMAES128 and GCMAES256. + IkeEncryption *string `json:"ikeEncryption,omitempty" tf:"ike_encryption,omitempty"` + + // The IKE encryption integrity algorithm, used for IKE Phase 2. Possible values include GCMAES128, GCMAES256, MD5, SHA1, SHA256 and SHA384. + IkeIntegrity *string `json:"ikeIntegrity,omitempty" tf:"ike_integrity,omitempty"` + + // The IPSec encryption algorithm, used for IKE phase 1. Possible values include AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256 and None. + IpsecEncryption *string `json:"ipsecEncryption,omitempty" tf:"ipsec_encryption,omitempty"` + + // The IPSec integrity algorithm, used for IKE phase 1. Possible values include GCMAES128, GCMAES192, GCMAES256, MD5, SHA1 and SHA256. + IpsecIntegrity *string `json:"ipsecIntegrity,omitempty" tf:"ipsec_integrity,omitempty"` + + // The Pfs Group, used in IKE Phase 2. Possible values include ECP256, ECP384, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM and None. + PfsGroup *string `json:"pfsGroup,omitempty" tf:"pfs_group,omitempty"` + + // The IPSec Security Association payload size in KB for a Site-to-Site VPN tunnel. + SaDataSizeKilobytes *float64 `json:"saDataSizeKilobytes,omitempty" tf:"sa_data_size_kilobytes,omitempty"` + + // The IPSec Security Association lifetime in seconds for a Site-to-Site VPN tunnel. + SaLifetimeSeconds *float64 `json:"saLifetimeSeconds,omitempty" tf:"sa_lifetime_seconds,omitempty"` } type VPNServerConfigurationIpsecPolicyObservation struct { @@ -201,36 +327,36 @@ type VPNServerConfigurationIpsecPolicyObservation struct { type VPNServerConfigurationIpsecPolicyParameters struct { // The DH Group, used in IKE Phase 1. Possible values include DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384 and None. - // +kubebuilder:validation:Required - DhGroup *string `json:"dhGroup" tf:"dh_group,omitempty"` + // +kubebuilder:validation:Optional + DhGroup *string `json:"dhGroup,omitempty" tf:"dh_group,omitempty"` // The IKE encryption algorithm, used for IKE Phase 2. Possible values include AES128, AES192, AES256, DES, DES3, GCMAES128 and GCMAES256. - // +kubebuilder:validation:Required - IkeEncryption *string `json:"ikeEncryption" tf:"ike_encryption,omitempty"` + // +kubebuilder:validation:Optional + IkeEncryption *string `json:"ikeEncryption,omitempty" tf:"ike_encryption,omitempty"` // The IKE encryption integrity algorithm, used for IKE Phase 2. Possible values include GCMAES128, GCMAES256, MD5, SHA1, SHA256 and SHA384. - // +kubebuilder:validation:Required - IkeIntegrity *string `json:"ikeIntegrity" tf:"ike_integrity,omitempty"` + // +kubebuilder:validation:Optional + IkeIntegrity *string `json:"ikeIntegrity,omitempty" tf:"ike_integrity,omitempty"` // The IPSec encryption algorithm, used for IKE phase 1. Possible values include AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256 and None. - // +kubebuilder:validation:Required - IpsecEncryption *string `json:"ipsecEncryption" tf:"ipsec_encryption,omitempty"` + // +kubebuilder:validation:Optional + IpsecEncryption *string `json:"ipsecEncryption,omitempty" tf:"ipsec_encryption,omitempty"` // The IPSec integrity algorithm, used for IKE phase 1. Possible values include GCMAES128, GCMAES192, GCMAES256, MD5, SHA1 and SHA256. - // +kubebuilder:validation:Required - IpsecIntegrity *string `json:"ipsecIntegrity" tf:"ipsec_integrity,omitempty"` + // +kubebuilder:validation:Optional + IpsecIntegrity *string `json:"ipsecIntegrity,omitempty" tf:"ipsec_integrity,omitempty"` // The Pfs Group, used in IKE Phase 2. Possible values include ECP256, ECP384, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM and None. - // +kubebuilder:validation:Required - PfsGroup *string `json:"pfsGroup" tf:"pfs_group,omitempty"` + // +kubebuilder:validation:Optional + PfsGroup *string `json:"pfsGroup,omitempty" tf:"pfs_group,omitempty"` // The IPSec Security Association payload size in KB for a Site-to-Site VPN tunnel. - // +kubebuilder:validation:Required - SaDataSizeKilobytes *float64 `json:"saDataSizeKilobytes" tf:"sa_data_size_kilobytes,omitempty"` + // +kubebuilder:validation:Optional + SaDataSizeKilobytes *float64 `json:"saDataSizeKilobytes,omitempty" tf:"sa_data_size_kilobytes,omitempty"` // The IPSec Security Association lifetime in seconds for a Site-to-Site VPN tunnel. - // +kubebuilder:validation:Required - SaLifetimeSeconds *float64 `json:"saLifetimeSeconds" tf:"sa_lifetime_seconds,omitempty"` + // +kubebuilder:validation:Optional + SaLifetimeSeconds *float64 `json:"saLifetimeSeconds,omitempty" tf:"sa_lifetime_seconds,omitempty"` } type VPNServerConfigurationObservation struct { @@ -325,6 +451,18 @@ type VPNServerConfigurationParameters struct { type VPNServerConfigurationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VPNServerConfigurationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VPNServerConfigurationInitParameters `json:"initProvider,omitempty"` } // VPNServerConfigurationStatus defines the observed state of VPNServerConfiguration. @@ -345,8 +483,8 @@ type VPNServerConfigurationStatus struct { type VPNServerConfiguration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vpnAuthenticationTypes)",message="vpnAuthenticationTypes is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.vpnAuthenticationTypes) || has(self.initProvider.vpnAuthenticationTypes)",message="vpnAuthenticationTypes is a required parameter" Spec VPNServerConfigurationSpec `json:"spec"` Status VPNServerConfigurationStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_vpnserverconfigurationpolicygroup_types.go b/apis/network/v1beta1/zz_vpnserverconfigurationpolicygroup_types.go index 04459afe2..419718cb4 100755 --- a/apis/network/v1beta1/zz_vpnserverconfigurationpolicygroup_types.go +++ b/apis/network/v1beta1/zz_vpnserverconfigurationpolicygroup_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PolicyInitParameters struct { + + // The name of the VPN Server Configuration Policy member. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The attribute type of the VPN Server Configuration Policy member. Possible values are AADGroupId, CertificateGroupId and RadiusAzureGroupId. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The value of the attribute that is used for the VPN Server Configuration Policy member. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type PolicyObservation struct { // The name of the VPN Server Configuration Policy member. @@ -28,16 +40,28 @@ type PolicyObservation struct { type PolicyParameters struct { // The name of the VPN Server Configuration Policy member. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The attribute type of the VPN Server Configuration Policy member. Possible values are AADGroupId, CertificateGroupId and RadiusAzureGroupId. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The value of the attribute that is used for the VPN Server Configuration Policy member. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type VPNServerConfigurationPolicyGroupInitParameters struct { + + // Is this a default VPN Server Configuration Policy Group? Defaults to false. Changing this forces a new resource to be created. + IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` + + // One or more policy blocks as documented below. + Policy []PolicyInitParameters `json:"policy,omitempty" tf:"policy,omitempty"` + + // The priority of this VPN Server Configuration Policy Group. Defaults to 0. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` } type VPNServerConfigurationPolicyGroupObservation struct { @@ -91,6 +115,18 @@ type VPNServerConfigurationPolicyGroupParameters struct { type VPNServerConfigurationPolicyGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VPNServerConfigurationPolicyGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VPNServerConfigurationPolicyGroupInitParameters `json:"initProvider,omitempty"` } // VPNServerConfigurationPolicyGroupStatus defines the observed state of VPNServerConfigurationPolicyGroup. @@ -111,7 +147,7 @@ type VPNServerConfigurationPolicyGroupStatus struct { type VPNServerConfigurationPolicyGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policy)",message="policy is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.policy) || has(self.initProvider.policy)",message="policy is a required parameter" Spec VPNServerConfigurationPolicyGroupSpec `json:"spec"` Status VPNServerConfigurationPolicyGroupStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_vpnsite_types.go b/apis/network/v1beta1/zz_vpnsite_types.go index efd7c970a..dfc2e26cc 100755 --- a/apis/network/v1beta1/zz_vpnsite_types.go +++ b/apis/network/v1beta1/zz_vpnsite_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BGPInitParameters struct { + + // The BGP speaker's ASN. + Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` + + // The BGP peering IP address. + PeeringAddress *string `json:"peeringAddress,omitempty" tf:"peering_address,omitempty"` +} + type BGPObservation struct { // The BGP speaker's ASN. @@ -25,12 +34,33 @@ type BGPObservation struct { type BGPParameters struct { // The BGP speaker's ASN. - // +kubebuilder:validation:Required - Asn *float64 `json:"asn" tf:"asn,omitempty"` + // +kubebuilder:validation:Optional + Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` // The BGP peering IP address. - // +kubebuilder:validation:Required - PeeringAddress *string `json:"peeringAddress" tf:"peering_address,omitempty"` + // +kubebuilder:validation:Optional + PeeringAddress *string `json:"peeringAddress,omitempty" tf:"peering_address,omitempty"` +} + +type LinkInitParameters struct { + + // A bgp block as defined above. + BGP []BGPInitParameters `json:"bgp,omitempty" tf:"bgp,omitempty"` + + // The FQDN of this VPN Site Link. + Fqdn *string `json:"fqdn,omitempty" tf:"fqdn,omitempty"` + + // The IP address of this VPN Site Link. + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this VPN Site Link. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The name of the physical link at the VPN Site. Example: ATT, Verizon. + ProviderName *string `json:"providerName,omitempty" tf:"provider_name,omitempty"` + + // The speed of the VPN device at the branch location in unit of mbps. Defaults to 0. + SpeedInMbps *float64 `json:"speedInMbps,omitempty" tf:"speed_in_mbps,omitempty"` } type LinkObservation struct { @@ -72,8 +102,8 @@ type LinkParameters struct { IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this VPN Site Link. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the physical link at the VPN Site. Example: ATT, Verizon. // +kubebuilder:validation:Optional @@ -84,6 +114,12 @@ type LinkParameters struct { SpeedInMbps *float64 `json:"speedInMbps,omitempty" tf:"speed_in_mbps,omitempty"` } +type O365PolicyInitParameters struct { + + // A traffic_category block as defined above. + TrafficCategory []TrafficCategoryInitParameters `json:"trafficCategory,omitempty" tf:"traffic_category,omitempty"` +} + type O365PolicyObservation struct { // A traffic_category block as defined above. @@ -97,6 +133,18 @@ type O365PolicyParameters struct { TrafficCategory []TrafficCategoryParameters `json:"trafficCategory,omitempty" tf:"traffic_category,omitempty"` } +type TrafficCategoryInitParameters struct { + + // Is allow endpoint enabled? The Allow endpoint is required for connectivity to specific O365 services and features, but are not as sensitive to network performance and latency as other endpoint types. Defaults to false. + AllowEndpointEnabled *bool `json:"allowEndpointEnabled,omitempty" tf:"allow_endpoint_enabled,omitempty"` + + // Is default endpoint enabled? The Default endpoint represents O365 services and dependencies that do not require any optimization, and can be treated by customer networks as normal Internet bound traffic. Defaults to false. + DefaultEndpointEnabled *bool `json:"defaultEndpointEnabled,omitempty" tf:"default_endpoint_enabled,omitempty"` + + // Is optimize endpoint enabled? The Optimize endpoint is required for connectivity to every O365 service and represents the O365 scenario that is the most sensitive to network performance, latency, and availability. Defaults to false. + OptimizeEndpointEnabled *bool `json:"optimizeEndpointEnabled,omitempty" tf:"optimize_endpoint_enabled,omitempty"` +} + type TrafficCategoryObservation struct { // Is allow endpoint enabled? The Allow endpoint is required for connectivity to specific O365 services and features, but are not as sensitive to network performance and latency as other endpoint types. Defaults to false. @@ -124,6 +172,30 @@ type TrafficCategoryParameters struct { OptimizeEndpointEnabled *bool `json:"optimizeEndpointEnabled,omitempty" tf:"optimize_endpoint_enabled,omitempty"` } +type VPNSiteInitParameters struct { + + // Specifies a list of IP address CIDRs that are located on your on-premises site. Traffic destined for these address spaces is routed to your local site. + AddressCidrs []*string `json:"addressCidrs,omitempty" tf:"address_cidrs,omitempty"` + + // The model of the VPN device. + DeviceModel *string `json:"deviceModel,omitempty" tf:"device_model,omitempty"` + + // The name of the VPN device vendor. + DeviceVendor *string `json:"deviceVendor,omitempty" tf:"device_vendor,omitempty"` + + // One or more link blocks as defined below. + Link []LinkInitParameters `json:"link,omitempty" tf:"link,omitempty"` + + // The Azure Region where the VPN Site should exist. Changing this forces a new VPN Site to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // An o365_policy block as defined below. + O365Policy []O365PolicyInitParameters `json:"o365Policy,omitempty" tf:"o365_policy,omitempty"` + + // A mapping of tags which should be assigned to the VPN Site. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type VPNSiteObservation struct { // Specifies a list of IP address CIDRs that are located on your on-premises site. Traffic destined for these address spaces is routed to your local site. @@ -219,6 +291,18 @@ type VPNSiteParameters struct { type VPNSiteSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VPNSiteParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VPNSiteInitParameters `json:"initProvider,omitempty"` } // VPNSiteStatus defines the observed state of VPNSite. @@ -239,7 +323,7 @@ type VPNSiteStatus struct { type VPNSite struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec VPNSiteSpec `json:"spec"` Status VPNSiteStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_watcher_types.go b/apis/network/v1beta1/zz_watcher_types.go index 376238e16..eb947772b 100755 --- a/apis/network/v1beta1/zz_watcher_types.go +++ b/apis/network/v1beta1/zz_watcher_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WatcherInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type WatcherObservation struct { // The ID of the Network Watcher. @@ -56,6 +65,18 @@ type WatcherParameters struct { type WatcherSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WatcherParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WatcherInitParameters `json:"initProvider,omitempty"` } // WatcherStatus defines the observed state of Watcher. @@ -76,7 +97,7 @@ type WatcherStatus struct { type Watcher struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec WatcherSpec `json:"spec"` Status WatcherStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_watcherflowlog_types.go b/apis/network/v1beta1/zz_watcherflowlog_types.go index 428a12ebe..96f52bbbc 100755 --- a/apis/network/v1beta1/zz_watcherflowlog_types.go +++ b/apis/network/v1beta1/zz_watcherflowlog_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RetentionPolicyInitParameters struct { + + // The number of days to retain flow log records. + Days *float64 `json:"days,omitempty" tf:"days,omitempty"` + + // Boolean flag to enable/disable retention. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + type RetentionPolicyObservation struct { // The number of days to retain flow log records. @@ -25,12 +34,24 @@ type RetentionPolicyObservation struct { type RetentionPolicyParameters struct { // The number of days to retain flow log records. - // +kubebuilder:validation:Required - Days *float64 `json:"days" tf:"days,omitempty"` + // +kubebuilder:validation:Optional + Days *float64 `json:"days,omitempty" tf:"days,omitempty"` // Boolean flag to enable/disable retention. - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + +type TrafficAnalyticsInitParameters struct { + + // Boolean flag to enable/disable traffic analytics. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // How frequently service should do flow analytics in minutes. Defaults to 60. + IntervalInMinutes *float64 `json:"intervalInMinutes,omitempty" tf:"interval_in_minutes,omitempty"` + + // The location of the attached workspace. + WorkspaceRegion *string `json:"workspaceRegion,omitempty" tf:"workspace_region,omitempty"` } type TrafficAnalyticsObservation struct { @@ -54,8 +75,8 @@ type TrafficAnalyticsObservation struct { type TrafficAnalyticsParameters struct { // Boolean flag to enable/disable traffic analytics. - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // How frequently service should do flow analytics in minutes. Defaults to 60. // +kubebuilder:validation:Optional @@ -76,8 +97,8 @@ type TrafficAnalyticsParameters struct { WorkspaceIDSelector *v1.Selector `json:"workspaceIdSelector,omitempty" tf:"-"` // The location of the attached workspace. - // +kubebuilder:validation:Required - WorkspaceRegion *string `json:"workspaceRegion" tf:"workspace_region,omitempty"` + // +kubebuilder:validation:Optional + WorkspaceRegion *string `json:"workspaceRegion,omitempty" tf:"workspace_region,omitempty"` // The resource ID of the attached workspace. // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/operationalinsights/v1beta1.Workspace @@ -94,6 +115,27 @@ type TrafficAnalyticsParameters struct { WorkspaceResourceIDSelector *v1.Selector `json:"workspaceResourceIdSelector,omitempty" tf:"-"` } +type WatcherFlowLogInitParameters struct { + + // Should Network Flow Logging be Enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The location where the Network Watcher Flow Log resides. Changing this forces a new resource to be created. Defaults to the location of the Network Watcher. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A retention_policy block as documented below. + RetentionPolicy []RetentionPolicyInitParameters `json:"retentionPolicy,omitempty" tf:"retention_policy,omitempty"` + + // A mapping of tags which should be assigned to the Network Watcher Flow Log. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // A traffic_analytics block as documented below. + TrafficAnalytics []TrafficAnalyticsInitParameters `json:"trafficAnalytics,omitempty" tf:"traffic_analytics,omitempty"` + + // The version (revision) of the flow log. Possible values are 1 and 2. + Version *float64 `json:"version,omitempty" tf:"version,omitempty"` +} + type WatcherFlowLogObservation struct { // Should Network Flow Logging be Enabled? @@ -215,6 +257,18 @@ type WatcherFlowLogParameters struct { type WatcherFlowLogSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WatcherFlowLogParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WatcherFlowLogInitParameters `json:"initProvider,omitempty"` } // WatcherFlowLogStatus defines the observed state of WatcherFlowLog. @@ -235,8 +289,8 @@ type WatcherFlowLogStatus struct { type WatcherFlowLog struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled)",message="enabled is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.retentionPolicy)",message="retentionPolicy is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.enabled) || has(self.initProvider.enabled)",message="enabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.retentionPolicy) || has(self.initProvider.retentionPolicy)",message="retentionPolicy is a required parameter" Spec WatcherFlowLogSpec `json:"spec"` Status WatcherFlowLogStatus `json:"status,omitempty"` } diff --git a/apis/network/v1beta1/zz_webapplicationfirewallpolicy_types.go b/apis/network/v1beta1/zz_webapplicationfirewallpolicy_types.go index 94c762b22..7af31e228 100755 --- a/apis/network/v1beta1/zz_webapplicationfirewallpolicy_types.go +++ b/apis/network/v1beta1/zz_webapplicationfirewallpolicy_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomRulesInitParameters struct { + + // Type of action. Possible values are Allow, Block and Log. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // One or more match_conditions blocks as defined below. + MatchConditions []MatchConditionsInitParameters `json:"matchConditions,omitempty" tf:"match_conditions,omitempty"` + + // Gets name of the resource that is unique within a policy. This name can be used to access the resource. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Describes priority of the rule. Rules with a lower value will be evaluated before rules with a higher value. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // Describes the type of rule. Possible values are MatchRule and Invalid. + RuleType *string `json:"ruleType,omitempty" tf:"rule_type,omitempty"` +} + type CustomRulesObservation struct { // Type of action. Possible values are Allow, Block and Log. @@ -34,24 +52,36 @@ type CustomRulesObservation struct { type CustomRulesParameters struct { // Type of action. Possible values are Allow, Block and Log. - // +kubebuilder:validation:Required - Action *string `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action *string `json:"action,omitempty" tf:"action,omitempty"` // One or more match_conditions blocks as defined below. - // +kubebuilder:validation:Required - MatchConditions []MatchConditionsParameters `json:"matchConditions" tf:"match_conditions,omitempty"` + // +kubebuilder:validation:Optional + MatchConditions []MatchConditionsParameters `json:"matchConditions,omitempty" tf:"match_conditions,omitempty"` // Gets name of the resource that is unique within a policy. This name can be used to access the resource. // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Describes priority of the rule. Rules with a lower value will be evaluated before rules with a higher value. - // +kubebuilder:validation:Required - Priority *float64 `json:"priority" tf:"priority,omitempty"` + // +kubebuilder:validation:Optional + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // Describes the type of rule. Possible values are MatchRule and Invalid. - // +kubebuilder:validation:Required - RuleType *string `json:"ruleType" tf:"rule_type,omitempty"` + // +kubebuilder:validation:Optional + RuleType *string `json:"ruleType,omitempty" tf:"rule_type,omitempty"` +} + +type ExcludedRuleSetInitParameters struct { + + // One or more rule_group block defined below. + RuleGroup []RuleGroupInitParameters `json:"ruleGroup,omitempty" tf:"rule_group,omitempty"` + + // The rule set type. Possible values: Microsoft_BotManagerRuleSet and OWASP. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The rule set version. Possible values: 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type ExcludedRuleSetObservation struct { @@ -81,6 +111,18 @@ type ExcludedRuleSetParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type ManagedRuleSetInitParameters struct { + + // One or more rule_group_override block defined below. + RuleGroupOverride []RuleGroupOverrideInitParameters `json:"ruleGroupOverride,omitempty" tf:"rule_group_override,omitempty"` + + // The rule set type. Possible values: Microsoft_BotManagerRuleSet and OWASP. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // The rule set version. Possible values: 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2. + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type ManagedRuleSetObservation struct { // One or more rule_group_override block defined below. @@ -104,8 +146,23 @@ type ManagedRuleSetParameters struct { Type *string `json:"type,omitempty" tf:"type,omitempty"` // The rule set version. Possible values: 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type ManagedRulesExclusionInitParameters struct { + + // One or more excluded_rule_set block defined below. + ExcludedRuleSet []ExcludedRuleSetInitParameters `json:"excludedRuleSet,omitempty" tf:"excluded_rule_set,omitempty"` + + // The name of the Match Variable. Possible values: RequestArgKeys, RequestArgNames, RequestArgValues, RequestCookieKeys, RequestCookieNames, RequestCookieValues, RequestHeaderKeys, RequestHeaderNames, RequestHeaderValues. + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` + + // Describes field of the matchVariable collection + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` + + // Describes operator to be matched. Possible values: Contains, EndsWith, Equals, EqualsAny, StartsWith. + SelectorMatchOperator *string `json:"selectorMatchOperator,omitempty" tf:"selector_match_operator,omitempty"` } type ManagedRulesExclusionObservation struct { @@ -130,16 +187,25 @@ type ManagedRulesExclusionParameters struct { ExcludedRuleSet []ExcludedRuleSetParameters `json:"excludedRuleSet,omitempty" tf:"excluded_rule_set,omitempty"` // The name of the Match Variable. Possible values: RequestArgKeys, RequestArgNames, RequestArgValues, RequestCookieKeys, RequestCookieNames, RequestCookieValues, RequestHeaderKeys, RequestHeaderNames, RequestHeaderValues. - // +kubebuilder:validation:Required - MatchVariable *string `json:"matchVariable" tf:"match_variable,omitempty"` + // +kubebuilder:validation:Optional + MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // Describes field of the matchVariable collection - // +kubebuilder:validation:Required - Selector *string `json:"selector" tf:"selector,omitempty"` + // +kubebuilder:validation:Optional + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // Describes operator to be matched. Possible values: Contains, EndsWith, Equals, EqualsAny, StartsWith. - // +kubebuilder:validation:Required - SelectorMatchOperator *string `json:"selectorMatchOperator" tf:"selector_match_operator,omitempty"` + // +kubebuilder:validation:Optional + SelectorMatchOperator *string `json:"selectorMatchOperator,omitempty" tf:"selector_match_operator,omitempty"` +} + +type ManagedRulesInitParameters struct { + + // One or more exclusion block defined below. + Exclusion []ManagedRulesExclusionInitParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` + + // One or more managed_rule_set block defined below. + ManagedRuleSet []ManagedRuleSetInitParameters `json:"managedRuleSet,omitempty" tf:"managed_rule_set,omitempty"` } type ManagedRulesObservation struct { @@ -158,8 +224,26 @@ type ManagedRulesParameters struct { Exclusion []ManagedRulesExclusionParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` // One or more managed_rule_set block defined below. - // +kubebuilder:validation:Required - ManagedRuleSet []ManagedRuleSetParameters `json:"managedRuleSet" tf:"managed_rule_set,omitempty"` + // +kubebuilder:validation:Optional + ManagedRuleSet []ManagedRuleSetParameters `json:"managedRuleSet,omitempty" tf:"managed_rule_set,omitempty"` +} + +type MatchConditionsInitParameters struct { + + // A list of match values. This is Required when the operator is not Any. + MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` + + // One or more match_variables blocks as defined below. + MatchVariables []MatchVariablesInitParameters `json:"matchVariables,omitempty" tf:"match_variables,omitempty"` + + // Describes if this is negate condition or not + NegationCondition *bool `json:"negationCondition,omitempty" tf:"negation_condition,omitempty"` + + // Describes operator to be matched. Possible values are Any, IPMatch, GeoMatch, Equal, Contains, LessThan, GreaterThan, LessThanOrEqual, GreaterThanOrEqual, BeginsWith, EndsWith and Regex. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // A list of transformations to do before the match is attempted. Possible values are HtmlEntityDecode, Lowercase, RemoveNulls, Trim, UrlDecode and UrlEncode. + Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } type MatchConditionsObservation struct { @@ -187,22 +271,31 @@ type MatchConditionsParameters struct { MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // One or more match_variables blocks as defined below. - // +kubebuilder:validation:Required - MatchVariables []MatchVariablesParameters `json:"matchVariables" tf:"match_variables,omitempty"` + // +kubebuilder:validation:Optional + MatchVariables []MatchVariablesParameters `json:"matchVariables,omitempty" tf:"match_variables,omitempty"` // Describes if this is negate condition or not // +kubebuilder:validation:Optional NegationCondition *bool `json:"negationCondition,omitempty" tf:"negation_condition,omitempty"` // Describes operator to be matched. Possible values are Any, IPMatch, GeoMatch, Equal, Contains, LessThan, GreaterThan, LessThanOrEqual, GreaterThanOrEqual, BeginsWith, EndsWith and Regex. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transformations to do before the match is attempted. Possible values are HtmlEntityDecode, Lowercase, RemoveNulls, Trim, UrlDecode and UrlEncode. // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } +type MatchVariablesInitParameters struct { + + // Describes field of the matchVariable collection + Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` + + // The name of the Match Variable. Possible values are RemoteAddr, RequestMethod, QueryString, PostArgs, RequestUri, RequestHeaders, RequestBody and RequestCookies. + VariableName *string `json:"variableName,omitempty" tf:"variable_name,omitempty"` +} + type MatchVariablesObservation struct { // Describes field of the matchVariable collection @@ -219,8 +312,26 @@ type MatchVariablesParameters struct { Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // The name of the Match Variable. Possible values are RemoteAddr, RequestMethod, QueryString, PostArgs, RequestUri, RequestHeaders, RequestBody and RequestCookies. - // +kubebuilder:validation:Required - VariableName *string `json:"variableName" tf:"variable_name,omitempty"` + // +kubebuilder:validation:Optional + VariableName *string `json:"variableName,omitempty" tf:"variable_name,omitempty"` +} + +type PolicySettingsInitParameters struct { + + // Describes if the policy is in enabled state or disabled state. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The File Upload Limit in MB. Accepted values are in the range 1 to 4000. Defaults to 100. + FileUploadLimitInMb *float64 `json:"fileUploadLimitInMb,omitempty" tf:"file_upload_limit_in_mb,omitempty"` + + // The Maximum Request Body Size in KB. Accepted values are in the range 8 to 2000. Defaults to 128. + MaxRequestBodySizeInKb *float64 `json:"maxRequestBodySizeInKb,omitempty" tf:"max_request_body_size_in_kb,omitempty"` + + // Describes if it is in detection mode or prevention mode at the policy level. Valid values are Detection and Prevention. Defaults to Prevention. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Is Request Body Inspection enabled? Defaults to true. + RequestBodyCheck *bool `json:"requestBodyCheck,omitempty" tf:"request_body_check,omitempty"` } type PolicySettingsObservation struct { @@ -264,6 +375,15 @@ type PolicySettingsParameters struct { RequestBodyCheck *bool `json:"requestBodyCheck,omitempty" tf:"request_body_check,omitempty"` } +type RuleGroupInitParameters struct { + + // One or more Rule IDs for exclusion. + ExcludedRules []*string `json:"excludedRules,omitempty" tf:"excluded_rules,omitempty"` + + // The name of the Rule Group. Possible values are BadBots, crs_20_protocol_violations, crs_21_protocol_anomalies, crs_23_request_limits, crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, crs_41_sql_injection_attacks, crs_41_xss_attacks, crs_42_tight_security, crs_45_trojans, General, GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. + RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` +} + type RuleGroupObservation struct { // One or more Rule IDs for exclusion. @@ -273,6 +393,16 @@ type RuleGroupObservation struct { RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` } +type RuleGroupOverrideInitParameters struct { + DisabledRules []*string `json:"disabledRules,omitempty" tf:"disabled_rules,omitempty"` + + // One or more rule block defined below. + Rule []RuleGroupOverrideRuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` + + // The name of the Rule Group. Possible values are BadBots, crs_20_protocol_violations, crs_21_protocol_anomalies, crs_23_request_limits, crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, crs_41_sql_injection_attacks, crs_41_xss_attacks, crs_42_tight_security, crs_45_trojans, General, GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. + RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` +} + type RuleGroupOverrideObservation struct { DisabledRules []*string `json:"disabledRules,omitempty" tf:"disabled_rules,omitempty"` @@ -293,8 +423,20 @@ type RuleGroupOverrideParameters struct { Rule []RuleGroupOverrideRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` // The name of the Rule Group. Possible values are BadBots, crs_20_protocol_violations, crs_21_protocol_anomalies, crs_23_request_limits, crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, crs_41_sql_injection_attacks, crs_41_xss_attacks, crs_42_tight_security, crs_45_trojans, General, GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. - // +kubebuilder:validation:Required - RuleGroupName *string `json:"ruleGroupName" tf:"rule_group_name,omitempty"` + // +kubebuilder:validation:Optional + RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` +} + +type RuleGroupOverrideRuleInitParameters struct { + + // Describes the override action to be applied when rule matches. Possible values are Allow, AnomalyScoring, Block and Log. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // Describes if the managed rule is in enabled state or disabled state. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Identifier for the managed rule. + ID *string `json:"id,omitempty" tf:"id,omitempty"` } type RuleGroupOverrideRuleObservation struct { @@ -320,8 +462,8 @@ type RuleGroupOverrideRuleParameters struct { Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Identifier for the managed rule. - // +kubebuilder:validation:Required - ID *string `json:"id" tf:"id,omitempty"` + // +kubebuilder:validation:Optional + ID *string `json:"id,omitempty" tf:"id,omitempty"` } type RuleGroupParameters struct { @@ -331,8 +473,26 @@ type RuleGroupParameters struct { ExcludedRules []*string `json:"excludedRules,omitempty" tf:"excluded_rules,omitempty"` // The name of the Rule Group. Possible values are BadBots, crs_20_protocol_violations, crs_21_protocol_anomalies, crs_23_request_limits, crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, crs_41_sql_injection_attacks, crs_41_xss_attacks, crs_42_tight_security, crs_45_trojans, General, GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. - // +kubebuilder:validation:Required - RuleGroupName *string `json:"ruleGroupName" tf:"rule_group_name,omitempty"` + // +kubebuilder:validation:Optional + RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` +} + +type WebApplicationFirewallPolicyInitParameters struct { + + // One or more custom_rules blocks as defined below. + CustomRules []CustomRulesInitParameters `json:"customRules,omitempty" tf:"custom_rules,omitempty"` + + // Resource location. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A managed_rules blocks as defined below. + ManagedRules []ManagedRulesInitParameters `json:"managedRules,omitempty" tf:"managed_rules,omitempty"` + + // A policy_settings block as defined below. + PolicySettings []PolicySettingsInitParameters `json:"policySettings,omitempty" tf:"policy_settings,omitempty"` + + // A mapping of tags to assign to the Web Application Firewall Policy. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type WebApplicationFirewallPolicyObservation struct { @@ -405,6 +565,18 @@ type WebApplicationFirewallPolicyParameters struct { type WebApplicationFirewallPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider WebApplicationFirewallPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WebApplicationFirewallPolicyInitParameters `json:"initProvider,omitempty"` } // WebApplicationFirewallPolicyStatus defines the observed state of WebApplicationFirewallPolicy. @@ -425,8 +597,8 @@ type WebApplicationFirewallPolicyStatus struct { type WebApplicationFirewallPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.managedRules)",message="managedRules is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.managedRules) || has(self.initProvider.managedRules)",message="managedRules is a required parameter" Spec WebApplicationFirewallPolicySpec `json:"spec"` Status WebApplicationFirewallPolicyStatus `json:"status,omitempty"` } diff --git a/apis/notificationhubs/v1beta1/zz_authorizationrule_types.go b/apis/notificationhubs/v1beta1/zz_authorizationrule_types.go index 1c9928025..691b4d820 100755 --- a/apis/notificationhubs/v1beta1/zz_authorizationrule_types.go +++ b/apis/notificationhubs/v1beta1/zz_authorizationrule_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthorizationRuleInitParameters struct { + + // Does this Authorization Rule have Listen access to the Notification Hub? Defaults to false. + Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` + + // Does this Authorization Rule have Manage access to the Notification Hub? Defaults to false. + Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` + + // Does this Authorization Rule have Send access to the Notification Hub? Defaults to false. + Send *bool `json:"send,omitempty" tf:"send,omitempty"` +} + type AuthorizationRuleObservation struct { // The ID of the Authorization Rule. @@ -101,6 +113,18 @@ type AuthorizationRuleParameters struct { type AuthorizationRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AuthorizationRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AuthorizationRuleInitParameters `json:"initProvider,omitempty"` } // AuthorizationRuleStatus defines the observed state of AuthorizationRule. diff --git a/apis/notificationhubs/v1beta1/zz_generated.deepcopy.go b/apis/notificationhubs/v1beta1/zz_generated.deepcopy.go index c1ac54720..5e5711afd 100644 --- a/apis/notificationhubs/v1beta1/zz_generated.deepcopy.go +++ b/apis/notificationhubs/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,41 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *APNSCredentialInitParameters) DeepCopyInto(out *APNSCredentialInitParameters) { + *out = *in + if in.ApplicationMode != nil { + in, out := &in.ApplicationMode, &out.ApplicationMode + *out = new(string) + **out = **in + } + if in.BundleID != nil { + in, out := &in.BundleID, &out.BundleID + *out = new(string) + **out = **in + } + if in.KeyID != nil { + in, out := &in.KeyID, &out.KeyID + *out = new(string) + **out = **in + } + if in.TeamID != nil { + in, out := &in.TeamID, &out.TeamID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APNSCredentialInitParameters. +func (in *APNSCredentialInitParameters) DeepCopy() *APNSCredentialInitParameters { + if in == nil { + return nil + } + out := new(APNSCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *APNSCredentialObservation) DeepCopyInto(out *APNSCredentialObservation) { *out = *in @@ -112,6 +147,36 @@ func (in *AuthorizationRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthorizationRuleInitParameters) DeepCopyInto(out *AuthorizationRuleInitParameters) { + *out = *in + if in.Listen != nil { + in, out := &in.Listen, &out.Listen + *out = new(bool) + **out = **in + } + if in.Manage != nil { + in, out := &in.Manage, &out.Manage + *out = new(bool) + **out = **in + } + if in.Send != nil { + in, out := &in.Send, &out.Send + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthorizationRuleInitParameters. +func (in *AuthorizationRuleInitParameters) DeepCopy() *AuthorizationRuleInitParameters { + if in == nil { + return nil + } + out := new(AuthorizationRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthorizationRuleList) DeepCopyInto(out *AuthorizationRuleList) { *out = *in @@ -284,6 +349,7 @@ func (in *AuthorizationRuleSpec) DeepCopyInto(out *AuthorizationRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthorizationRuleSpec. @@ -313,6 +379,21 @@ func (in *AuthorizationRuleStatus) DeepCopy() *AuthorizationRuleStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GCMCredentialInitParameters) DeepCopyInto(out *GCMCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GCMCredentialInitParameters. +func (in *GCMCredentialInitParameters) DeepCopy() *GCMCredentialInitParameters { + if in == nil { + return nil + } + out := new(GCMCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GCMCredentialObservation) DeepCopyInto(out *GCMCredentialObservation) { *out = *in @@ -371,6 +452,53 @@ func (in *NotificationHub) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotificationHubInitParameters) DeepCopyInto(out *NotificationHubInitParameters) { + *out = *in + if in.APNSCredential != nil { + in, out := &in.APNSCredential, &out.APNSCredential + *out = make([]APNSCredentialInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GCMCredential != nil { + in, out := &in.GCMCredential, &out.GCMCredential + *out = make([]GCMCredentialInitParameters, len(*in)) + copy(*out, *in) + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationHubInitParameters. +func (in *NotificationHubInitParameters) DeepCopy() *NotificationHubInitParameters { + if in == nil { + return nil + } + out := new(NotificationHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotificationHubList) DeepCopyInto(out *NotificationHubList) { *out = *in @@ -430,6 +558,56 @@ func (in *NotificationHubNamespace) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NotificationHubNamespaceInitParameters) DeepCopyInto(out *NotificationHubNamespaceInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.NamespaceType != nil { + in, out := &in.NamespaceType, &out.NamespaceType + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationHubNamespaceInitParameters. +func (in *NotificationHubNamespaceInitParameters) DeepCopy() *NotificationHubNamespaceInitParameters { + if in == nil { + return nil + } + out := new(NotificationHubNamespaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NotificationHubNamespaceList) DeepCopyInto(out *NotificationHubNamespaceList) { *out = *in @@ -597,6 +775,7 @@ func (in *NotificationHubNamespaceSpec) DeepCopyInto(out *NotificationHubNamespa *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationHubNamespaceSpec. @@ -770,6 +949,7 @@ func (in *NotificationHubSpec) DeepCopyInto(out *NotificationHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationHubSpec. diff --git a/apis/notificationhubs/v1beta1/zz_generated.managed.go b/apis/notificationhubs/v1beta1/zz_generated.managed.go index b9c5b6f5c..fa8735aa2 100644 --- a/apis/notificationhubs/v1beta1/zz_generated.managed.go +++ b/apis/notificationhubs/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AuthorizationRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AuthorizationRule. -func (mg *AuthorizationRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AuthorizationRule. +func (mg *AuthorizationRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AuthorizationRule. @@ -55,9 +55,9 @@ func (mg *AuthorizationRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AuthorizationRule. -func (mg *AuthorizationRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AuthorizationRule. +func (mg *AuthorizationRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AuthorizationRule. @@ -93,9 +93,9 @@ func (mg *NotificationHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NotificationHub. -func (mg *NotificationHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NotificationHub. +func (mg *NotificationHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NotificationHub. @@ -131,9 +131,9 @@ func (mg *NotificationHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NotificationHub. -func (mg *NotificationHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NotificationHub. +func (mg *NotificationHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NotificationHub. @@ -169,9 +169,9 @@ func (mg *NotificationHubNamespace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NotificationHubNamespace. -func (mg *NotificationHubNamespace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NotificationHubNamespace. +func (mg *NotificationHubNamespace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NotificationHubNamespace. @@ -207,9 +207,9 @@ func (mg *NotificationHubNamespace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NotificationHubNamespace. -func (mg *NotificationHubNamespace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NotificationHubNamespace. +func (mg *NotificationHubNamespace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NotificationHubNamespace. diff --git a/apis/notificationhubs/v1beta1/zz_generated_terraformed.go b/apis/notificationhubs/v1beta1/zz_generated_terraformed.go index 97954ad16..c880499d5 100755 --- a/apis/notificationhubs/v1beta1/zz_generated_terraformed.go +++ b/apis/notificationhubs/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *NotificationHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NotificationHub +func (tr *NotificationHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NotificationHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NotificationHub) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *AuthorizationRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AuthorizationRule +func (tr *AuthorizationRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AuthorizationRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AuthorizationRule) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *NotificationHubNamespace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NotificationHubNamespace +func (tr *NotificationHubNamespace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NotificationHubNamespace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NotificationHubNamespace) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/notificationhubs/v1beta1/zz_notificationhub_types.go b/apis/notificationhubs/v1beta1/zz_notificationhub_types.go index 1b8f416c5..12301f743 100755 --- a/apis/notificationhubs/v1beta1/zz_notificationhub_types.go +++ b/apis/notificationhubs/v1beta1/zz_notificationhub_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type APNSCredentialInitParameters struct { + + // The Application Mode which defines which server the APNS Messages should be sent to. Possible values are Production and Sandbox. + ApplicationMode *string `json:"applicationMode,omitempty" tf:"application_mode,omitempty"` + + // The Bundle ID of the iOS/macOS application to send push notifications for, such as com.hashicorp.example. + BundleID *string `json:"bundleId,omitempty" tf:"bundle_id,omitempty"` + + // The Apple Push Notifications Service (APNS) Key. + KeyID *string `json:"keyId,omitempty" tf:"key_id,omitempty"` + + // The ID of the team the Token. + TeamID *string `json:"teamId,omitempty" tf:"team_id,omitempty"` +} + type APNSCredentialObservation struct { // The Application Mode which defines which server the APNS Messages should be sent to. Possible values are Production and Sandbox. @@ -31,26 +46,29 @@ type APNSCredentialObservation struct { type APNSCredentialParameters struct { // The Application Mode which defines which server the APNS Messages should be sent to. Possible values are Production and Sandbox. - // +kubebuilder:validation:Required - ApplicationMode *string `json:"applicationMode" tf:"application_mode,omitempty"` + // +kubebuilder:validation:Optional + ApplicationMode *string `json:"applicationMode,omitempty" tf:"application_mode,omitempty"` // The Bundle ID of the iOS/macOS application to send push notifications for, such as com.hashicorp.example. - // +kubebuilder:validation:Required - BundleID *string `json:"bundleId" tf:"bundle_id,omitempty"` + // +kubebuilder:validation:Optional + BundleID *string `json:"bundleId,omitempty" tf:"bundle_id,omitempty"` // The Apple Push Notifications Service (APNS) Key. - // +kubebuilder:validation:Required - KeyID *string `json:"keyId" tf:"key_id,omitempty"` + // +kubebuilder:validation:Optional + KeyID *string `json:"keyId,omitempty" tf:"key_id,omitempty"` // The ID of the team the Token. - // +kubebuilder:validation:Required - TeamID *string `json:"teamId" tf:"team_id,omitempty"` + // +kubebuilder:validation:Optional + TeamID *string `json:"teamId,omitempty" tf:"team_id,omitempty"` // The Push Token associated with the Apple Developer Account. This is the contents of the key downloaded from the Apple Developer Portal between the -----BEGIN PRIVATE KEY----- and -----END PRIVATE KEY----- blocks. // +kubebuilder:validation:Required TokenSecretRef v1.SecretKeySelector `json:"tokenSecretRef" tf:"-"` } +type GCMCredentialInitParameters struct { +} + type GCMCredentialObservation struct { } @@ -61,6 +79,21 @@ type GCMCredentialParameters struct { APIKeySecretRef v1.SecretKeySelector `json:"apiKeySecretRef" tf:"-"` } +type NotificationHubInitParameters struct { + + // A apns_credential block as defined below. + APNSCredential []APNSCredentialInitParameters `json:"apnsCredential,omitempty" tf:"apns_credential,omitempty"` + + // A gcm_credential block as defined below. + GCMCredential []GCMCredentialInitParameters `json:"gcmCredential,omitempty" tf:"gcm_credential,omitempty"` + + // The Azure Region in which this Notification Hub Namespace exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type NotificationHubObservation struct { // A apns_credential block as defined below. @@ -134,6 +167,18 @@ type NotificationHubParameters struct { type NotificationHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NotificationHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NotificationHubInitParameters `json:"initProvider,omitempty"` } // NotificationHubStatus defines the observed state of NotificationHub. @@ -154,7 +199,7 @@ type NotificationHubStatus struct { type NotificationHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec NotificationHubSpec `json:"spec"` Status NotificationHubStatus `json:"status,omitempty"` } diff --git a/apis/notificationhubs/v1beta1/zz_notificationhubnamespace_types.go b/apis/notificationhubs/v1beta1/zz_notificationhubnamespace_types.go index 18c771446..3daff80ba 100755 --- a/apis/notificationhubs/v1beta1/zz_notificationhubnamespace_types.go +++ b/apis/notificationhubs/v1beta1/zz_notificationhubnamespace_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NotificationHubNamespaceInitParameters struct { + + // Is this Notification Hub Namespace enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The Azure Region in which this Notification Hub Namespace should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The Type of Namespace - possible values are Messaging or NotificationHub. + NamespaceType *string `json:"namespaceType,omitempty" tf:"namespace_type,omitempty"` + + // The name of the SKU to use for this Notification Hub Namespace. Possible values are Free, Basic or Standard. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type NotificationHubNamespaceObservation struct { // Is this Notification Hub Namespace enabled? Defaults to true. @@ -80,6 +98,18 @@ type NotificationHubNamespaceParameters struct { type NotificationHubNamespaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NotificationHubNamespaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NotificationHubNamespaceInitParameters `json:"initProvider,omitempty"` } // NotificationHubNamespaceStatus defines the observed state of NotificationHubNamespace. @@ -100,9 +130,9 @@ type NotificationHubNamespaceStatus struct { type NotificationHubNamespace struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.namespaceType)",message="namespaceType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.namespaceType) || has(self.initProvider.namespaceType)",message="namespaceType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec NotificationHubNamespaceSpec `json:"spec"` Status NotificationHubNamespaceStatus `json:"status,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_generated.deepcopy.go b/apis/operationalinsights/v1beta1/zz_generated.deepcopy.go index 56d5588c4..e22defabb 100644 --- a/apis/operationalinsights/v1beta1/zz_generated.deepcopy.go +++ b/apis/operationalinsights/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,37 @@ func (in *LogAnalyticsDataExportRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataExportRuleInitParameters) DeepCopyInto(out *LogAnalyticsDataExportRuleInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.TableNames != nil { + in, out := &in.TableNames, &out.TableNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataExportRuleInitParameters. +func (in *LogAnalyticsDataExportRuleInitParameters) DeepCopy() *LogAnalyticsDataExportRuleInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsDataExportRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsDataExportRuleList) DeepCopyInto(out *LogAnalyticsDataExportRuleList) { *out = *in @@ -210,6 +241,7 @@ func (in *LogAnalyticsDataExportRuleSpec) DeepCopyInto(out *LogAnalyticsDataExpo *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataExportRuleSpec. @@ -266,6 +298,37 @@ func (in *LogAnalyticsDataSourceWindowsEvent) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsEventInitParameters) DeepCopyInto(out *LogAnalyticsDataSourceWindowsEventInitParameters) { + *out = *in + if in.EventLogName != nil { + in, out := &in.EventLogName, &out.EventLogName + *out = new(string) + **out = **in + } + if in.EventTypes != nil { + in, out := &in.EventTypes, &out.EventTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsEventInitParameters. +func (in *LogAnalyticsDataSourceWindowsEventInitParameters) DeepCopy() *LogAnalyticsDataSourceWindowsEventInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsEventInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsDataSourceWindowsEventList) DeepCopyInto(out *LogAnalyticsDataSourceWindowsEventList) { *out = *in @@ -410,6 +473,7 @@ func (in *LogAnalyticsDataSourceWindowsEventSpec) DeepCopyInto(out *LogAnalytics *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsEventSpec. @@ -466,6 +530,41 @@ func (in *LogAnalyticsDataSourceWindowsPerformanceCounter) DeepCopyObject() runt return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterInitParameters) DeepCopyInto(out *LogAnalyticsDataSourceWindowsPerformanceCounterInitParameters) { + *out = *in + if in.CounterName != nil { + in, out := &in.CounterName, &out.CounterName + *out = new(string) + **out = **in + } + if in.InstanceName != nil { + in, out := &in.InstanceName, &out.InstanceName + *out = new(string) + **out = **in + } + if in.IntervalSeconds != nil { + in, out := &in.IntervalSeconds, &out.IntervalSeconds + *out = new(float64) + **out = **in + } + if in.ObjectName != nil { + in, out := &in.ObjectName, &out.ObjectName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsPerformanceCounterInitParameters. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterInitParameters) DeepCopy() *LogAnalyticsDataSourceWindowsPerformanceCounterInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsPerformanceCounterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsDataSourceWindowsPerformanceCounterList) DeepCopyInto(out *LogAnalyticsDataSourceWindowsPerformanceCounterList) { *out = *in @@ -618,6 +717,7 @@ func (in *LogAnalyticsDataSourceWindowsPerformanceCounterSpec) DeepCopyInto(out *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsPerformanceCounterSpec. @@ -674,6 +774,26 @@ func (in *LogAnalyticsLinkedService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedServiceInitParameters) DeepCopyInto(out *LogAnalyticsLinkedServiceInitParameters) { + *out = *in + if in.WriteAccessID != nil { + in, out := &in.WriteAccessID, &out.WriteAccessID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedServiceInitParameters. +func (in *LogAnalyticsLinkedServiceInitParameters) DeepCopy() *LogAnalyticsLinkedServiceInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsLinkedServiceList) DeepCopyInto(out *LogAnalyticsLinkedServiceList) { *out = *in @@ -821,6 +941,7 @@ func (in *LogAnalyticsLinkedServiceSpec) DeepCopyInto(out *LogAnalyticsLinkedSer *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedServiceSpec. @@ -877,6 +998,26 @@ func (in *LogAnalyticsLinkedStorageAccount) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedStorageAccountInitParameters) DeepCopyInto(out *LogAnalyticsLinkedStorageAccountInitParameters) { + *out = *in + if in.DataSourceType != nil { + in, out := &in.DataSourceType, &out.DataSourceType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedStorageAccountInitParameters. +func (in *LogAnalyticsLinkedStorageAccountInitParameters) DeepCopy() *LogAnalyticsLinkedStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsLinkedStorageAccountList) DeepCopyInto(out *LogAnalyticsLinkedStorageAccountList) { *out = *in @@ -1033,6 +1174,7 @@ func (in *LogAnalyticsLinkedStorageAccountSpec) DeepCopyInto(out *LogAnalyticsLi *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedStorageAccountSpec. @@ -1089,6 +1231,41 @@ func (in *LogAnalyticsQueryPack) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsQueryPackInitParameters) DeepCopyInto(out *LogAnalyticsQueryPackInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsQueryPackInitParameters. +func (in *LogAnalyticsQueryPackInitParameters) DeepCopy() *LogAnalyticsQueryPackInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsQueryPackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsQueryPackList) DeepCopyInto(out *LogAnalyticsQueryPackList) { *out = *in @@ -1243,6 +1420,94 @@ func (in *LogAnalyticsQueryPackQuery) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsQueryPackQueryInitParameters) DeepCopyInto(out *LogAnalyticsQueryPackQueryInitParameters) { + *out = *in + if in.AdditionalSettingsJSON != nil { + in, out := &in.AdditionalSettingsJSON, &out.AdditionalSettingsJSON + *out = new(string) + **out = **in + } + if in.Body != nil { + in, out := &in.Body, &out.Body + *out = new(string) + **out = **in + } + if in.Categories != nil { + in, out := &in.Categories, &out.Categories + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ResourceTypes != nil { + in, out := &in.ResourceTypes, &out.ResourceTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Solutions != nil { + in, out := &in.Solutions, &out.Solutions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsQueryPackQueryInitParameters. +func (in *LogAnalyticsQueryPackQueryInitParameters) DeepCopy() *LogAnalyticsQueryPackQueryInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsQueryPackQueryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsQueryPackQueryList) DeepCopyInto(out *LogAnalyticsQueryPackQueryList) { *out = *in @@ -1481,6 +1746,7 @@ func (in *LogAnalyticsQueryPackQuerySpec) DeepCopyInto(out *LogAnalyticsQueryPac *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsQueryPackQuerySpec. @@ -1515,6 +1781,7 @@ func (in *LogAnalyticsQueryPackSpec) DeepCopyInto(out *LogAnalyticsQueryPackSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsQueryPackSpec. @@ -1571,6 +1838,67 @@ func (in *LogAnalyticsSavedSearch) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSavedSearchInitParameters) DeepCopyInto(out *LogAnalyticsSavedSearchInitParameters) { + *out = *in + if in.Category != nil { + in, out := &in.Category, &out.Category + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.FunctionAlias != nil { + in, out := &in.FunctionAlias, &out.FunctionAlias + *out = new(string) + **out = **in + } + if in.FunctionParameters != nil { + in, out := &in.FunctionParameters, &out.FunctionParameters + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSavedSearchInitParameters. +func (in *LogAnalyticsSavedSearchInitParameters) DeepCopy() *LogAnalyticsSavedSearchInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsSavedSearchInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsSavedSearchList) DeepCopyInto(out *LogAnalyticsSavedSearchList) { *out = *in @@ -1755,6 +2083,7 @@ func (in *LogAnalyticsSavedSearchSpec) DeepCopyInto(out *LogAnalyticsSavedSearch *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSavedSearchSpec. @@ -1811,6 +2140,86 @@ func (in *Workspace) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceInitParameters) DeepCopyInto(out *WorkspaceInitParameters) { + *out = *in + if in.AllowResourceOnlyPermissions != nil { + in, out := &in.AllowResourceOnlyPermissions, &out.AllowResourceOnlyPermissions + *out = new(bool) + **out = **in + } + if in.CmkForQueryForced != nil { + in, out := &in.CmkForQueryForced, &out.CmkForQueryForced + *out = new(bool) + **out = **in + } + if in.DailyQuotaGb != nil { + in, out := &in.DailyQuotaGb, &out.DailyQuotaGb + *out = new(float64) + **out = **in + } + if in.InternetIngestionEnabled != nil { + in, out := &in.InternetIngestionEnabled, &out.InternetIngestionEnabled + *out = new(bool) + **out = **in + } + if in.InternetQueryEnabled != nil { + in, out := &in.InternetQueryEnabled, &out.InternetQueryEnabled + *out = new(bool) + **out = **in + } + if in.LocalAuthenticationDisabled != nil { + in, out := &in.LocalAuthenticationDisabled, &out.LocalAuthenticationDisabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ReservationCapacityInGbPerDay != nil { + in, out := &in.ReservationCapacityInGbPerDay, &out.ReservationCapacityInGbPerDay + *out = new(float64) + **out = **in + } + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceInitParameters. +func (in *WorkspaceInitParameters) DeepCopy() *WorkspaceInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceList) DeepCopyInto(out *WorkspaceList) { *out = *in @@ -2038,6 +2447,7 @@ func (in *WorkspaceSpec) DeepCopyInto(out *WorkspaceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceSpec. diff --git a/apis/operationalinsights/v1beta1/zz_generated.managed.go b/apis/operationalinsights/v1beta1/zz_generated.managed.go index e3ba03be7..e9d6c66d7 100644 --- a/apis/operationalinsights/v1beta1/zz_generated.managed.go +++ b/apis/operationalinsights/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *LogAnalyticsDataExportRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LogAnalyticsDataExportRule. -func (mg *LogAnalyticsDataExportRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LogAnalyticsDataExportRule. @@ -55,9 +55,9 @@ func (mg *LogAnalyticsDataExportRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LogAnalyticsDataExportRule. -func (mg *LogAnalyticsDataExportRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LogAnalyticsDataExportRule. @@ -93,9 +93,9 @@ func (mg *LogAnalyticsDataSourceWindowsEvent) GetDeletionPolicy() xpv1.DeletionP return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LogAnalyticsDataSourceWindowsEvent. -func (mg *LogAnalyticsDataSourceWindowsEvent) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LogAnalyticsDataSourceWindowsEvent. @@ -131,9 +131,9 @@ func (mg *LogAnalyticsDataSourceWindowsEvent) SetDeletionPolicy(r xpv1.DeletionP mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LogAnalyticsDataSourceWindowsEvent. -func (mg *LogAnalyticsDataSourceWindowsEvent) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LogAnalyticsDataSourceWindowsEvent. @@ -169,9 +169,9 @@ func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) GetDeletionPolicy() x return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LogAnalyticsDataSourceWindowsPerformanceCounter. -func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LogAnalyticsDataSourceWindowsPerformanceCounter. @@ -207,9 +207,9 @@ func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) SetDeletionPolicy(r x mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LogAnalyticsDataSourceWindowsPerformanceCounter. -func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LogAnalyticsDataSourceWindowsPerformanceCounter. @@ -245,9 +245,9 @@ func (mg *LogAnalyticsLinkedService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LogAnalyticsLinkedService. -func (mg *LogAnalyticsLinkedService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LogAnalyticsLinkedService. @@ -283,9 +283,9 @@ func (mg *LogAnalyticsLinkedService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LogAnalyticsLinkedService. -func (mg *LogAnalyticsLinkedService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LogAnalyticsLinkedService. @@ -321,9 +321,9 @@ func (mg *LogAnalyticsLinkedStorageAccount) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LogAnalyticsLinkedStorageAccount. -func (mg *LogAnalyticsLinkedStorageAccount) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LogAnalyticsLinkedStorageAccount. @@ -359,9 +359,9 @@ func (mg *LogAnalyticsLinkedStorageAccount) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LogAnalyticsLinkedStorageAccount. -func (mg *LogAnalyticsLinkedStorageAccount) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LogAnalyticsLinkedStorageAccount. @@ -397,9 +397,9 @@ func (mg *LogAnalyticsQueryPack) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LogAnalyticsQueryPack. -func (mg *LogAnalyticsQueryPack) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LogAnalyticsQueryPack. +func (mg *LogAnalyticsQueryPack) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LogAnalyticsQueryPack. @@ -435,9 +435,9 @@ func (mg *LogAnalyticsQueryPack) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LogAnalyticsQueryPack. -func (mg *LogAnalyticsQueryPack) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LogAnalyticsQueryPack. +func (mg *LogAnalyticsQueryPack) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LogAnalyticsQueryPack. @@ -473,9 +473,9 @@ func (mg *LogAnalyticsQueryPackQuery) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LogAnalyticsQueryPackQuery. -func (mg *LogAnalyticsQueryPackQuery) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LogAnalyticsQueryPackQuery. +func (mg *LogAnalyticsQueryPackQuery) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LogAnalyticsQueryPackQuery. @@ -511,9 +511,9 @@ func (mg *LogAnalyticsQueryPackQuery) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LogAnalyticsQueryPackQuery. -func (mg *LogAnalyticsQueryPackQuery) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LogAnalyticsQueryPackQuery. +func (mg *LogAnalyticsQueryPackQuery) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LogAnalyticsQueryPackQuery. @@ -549,9 +549,9 @@ func (mg *LogAnalyticsSavedSearch) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LogAnalyticsSavedSearch. -func (mg *LogAnalyticsSavedSearch) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LogAnalyticsSavedSearch. @@ -587,9 +587,9 @@ func (mg *LogAnalyticsSavedSearch) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LogAnalyticsSavedSearch. -func (mg *LogAnalyticsSavedSearch) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LogAnalyticsSavedSearch. @@ -625,9 +625,9 @@ func (mg *Workspace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Workspace. -func (mg *Workspace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Workspace. +func (mg *Workspace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Workspace. @@ -663,9 +663,9 @@ func (mg *Workspace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Workspace. -func (mg *Workspace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Workspace. +func (mg *Workspace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Workspace. diff --git a/apis/operationalinsights/v1beta1/zz_generated_terraformed.go b/apis/operationalinsights/v1beta1/zz_generated_terraformed.go index 7e82c198a..0dd0177b8 100755 --- a/apis/operationalinsights/v1beta1/zz_generated_terraformed.go +++ b/apis/operationalinsights/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *LogAnalyticsDataExportRule) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LogAnalyticsDataExportRule +func (tr *LogAnalyticsDataExportRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LogAnalyticsDataExportRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LogAnalyticsDataExportRule) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *LogAnalyticsDataSourceWindowsEvent) SetParameters(params map[string]an return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LogAnalyticsDataSourceWindowsEvent +func (tr *LogAnalyticsDataSourceWindowsEvent) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LogAnalyticsDataSourceWindowsEvent using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LogAnalyticsDataSourceWindowsEvent) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) SetParameters(params return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LogAnalyticsDataSourceWindowsPerformanceCounter +func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LogAnalyticsDataSourceWindowsPerformanceCounter using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *LogAnalyticsLinkedService) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LogAnalyticsLinkedService +func (tr *LogAnalyticsLinkedService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LogAnalyticsLinkedService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LogAnalyticsLinkedService) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *LogAnalyticsLinkedStorageAccount) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LogAnalyticsLinkedStorageAccount +func (tr *LogAnalyticsLinkedStorageAccount) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LogAnalyticsLinkedStorageAccount using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LogAnalyticsLinkedStorageAccount) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *LogAnalyticsQueryPack) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LogAnalyticsQueryPack +func (tr *LogAnalyticsQueryPack) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LogAnalyticsQueryPack using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LogAnalyticsQueryPack) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *LogAnalyticsQueryPackQuery) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LogAnalyticsQueryPackQuery +func (tr *LogAnalyticsQueryPackQuery) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LogAnalyticsQueryPackQuery using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LogAnalyticsQueryPackQuery) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *LogAnalyticsSavedSearch) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LogAnalyticsSavedSearch +func (tr *LogAnalyticsSavedSearch) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LogAnalyticsSavedSearch using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LogAnalyticsSavedSearch) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *Workspace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Workspace +func (tr *Workspace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Workspace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Workspace) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go index 9beb67847..83c74e138 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LogAnalyticsDataExportRuleInitParameters struct { + + // Is this Log Analytics Data Export Rule enabled? Possible values include true or false. Defaults to false. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A list of table names to export to the destination resource, for example: ["Heartbeat", "SecurityEvent"]. + TableNames []*string `json:"tableNames,omitempty" tf:"table_names,omitempty"` +} + type LogAnalyticsDataExportRuleObservation struct { // The destination resource ID. It should be a storage account, an event hub namespace or an event hub. If the destination is an event hub namespace, an event hub would be created for each table automatically. @@ -93,6 +102,18 @@ type LogAnalyticsDataExportRuleParameters struct { type LogAnalyticsDataExportRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LogAnalyticsDataExportRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LogAnalyticsDataExportRuleInitParameters `json:"initProvider,omitempty"` } // LogAnalyticsDataExportRuleStatus defines the observed state of LogAnalyticsDataExportRule. @@ -113,7 +134,7 @@ type LogAnalyticsDataExportRuleStatus struct { type LogAnalyticsDataExportRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tableNames)",message="tableNames is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tableNames) || has(self.initProvider.tableNames)",message="tableNames is a required parameter" Spec LogAnalyticsDataExportRuleSpec `json:"spec"` Status LogAnalyticsDataExportRuleStatus `json:"status,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go index 216c0f559..c9543282b 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LogAnalyticsDataSourceWindowsEventInitParameters struct { + + // Specifies the name of the Windows Event Log to collect events from. + EventLogName *string `json:"eventLogName,omitempty" tf:"event_log_name,omitempty"` + + // Specifies an array of event types applied to the specified event log. Possible values include Error, Warning and Information. + EventTypes []*string `json:"eventTypes,omitempty" tf:"event_types,omitempty"` +} + type LogAnalyticsDataSourceWindowsEventObservation struct { // Specifies the name of the Windows Event Log to collect events from. @@ -72,6 +81,18 @@ type LogAnalyticsDataSourceWindowsEventParameters struct { type LogAnalyticsDataSourceWindowsEventSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LogAnalyticsDataSourceWindowsEventParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LogAnalyticsDataSourceWindowsEventInitParameters `json:"initProvider,omitempty"` } // LogAnalyticsDataSourceWindowsEventStatus defines the observed state of LogAnalyticsDataSourceWindowsEvent. @@ -92,8 +113,8 @@ type LogAnalyticsDataSourceWindowsEventStatus struct { type LogAnalyticsDataSourceWindowsEvent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.eventLogName)",message="eventLogName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.eventTypes)",message="eventTypes is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.eventLogName) || has(self.initProvider.eventLogName)",message="eventLogName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.eventTypes) || has(self.initProvider.eventTypes)",message="eventTypes is a required parameter" Spec LogAnalyticsDataSourceWindowsEventSpec `json:"spec"` Status LogAnalyticsDataSourceWindowsEventStatus `json:"status,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go index 265bb23f5..139f82d71 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LogAnalyticsDataSourceWindowsPerformanceCounterInitParameters struct { + + // The friendly name of the performance counter. + CounterName *string `json:"counterName,omitempty" tf:"counter_name,omitempty"` + + // The name of the virtual machine instance to which the Windows Performance Counter DataSource be applied. Specify a * will apply to all instances. + InstanceName *string `json:"instanceName,omitempty" tf:"instance_name,omitempty"` + + // The time of sample interval in seconds. Supports values between 10 and 2147483647. + IntervalSeconds *float64 `json:"intervalSeconds,omitempty" tf:"interval_seconds,omitempty"` + + // The object name of the Log Analytics Windows Performance Counter DataSource. + ObjectName *string `json:"objectName,omitempty" tf:"object_name,omitempty"` +} + type LogAnalyticsDataSourceWindowsPerformanceCounterObservation struct { // The friendly name of the performance counter. @@ -86,6 +101,18 @@ type LogAnalyticsDataSourceWindowsPerformanceCounterParameters struct { type LogAnalyticsDataSourceWindowsPerformanceCounterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LogAnalyticsDataSourceWindowsPerformanceCounterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LogAnalyticsDataSourceWindowsPerformanceCounterInitParameters `json:"initProvider,omitempty"` } // LogAnalyticsDataSourceWindowsPerformanceCounterStatus defines the observed state of LogAnalyticsDataSourceWindowsPerformanceCounter. @@ -106,10 +133,10 @@ type LogAnalyticsDataSourceWindowsPerformanceCounterStatus struct { type LogAnalyticsDataSourceWindowsPerformanceCounter struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.counterName)",message="counterName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.instanceName)",message="instanceName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.intervalSeconds)",message="intervalSeconds is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectName)",message="objectName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.counterName) || has(self.initProvider.counterName)",message="counterName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.instanceName) || has(self.initProvider.instanceName)",message="instanceName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.intervalSeconds) || has(self.initProvider.intervalSeconds)",message="intervalSeconds is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.objectName) || has(self.initProvider.objectName)",message="objectName is a required parameter" Spec LogAnalyticsDataSourceWindowsPerformanceCounterSpec `json:"spec"` Status LogAnalyticsDataSourceWindowsPerformanceCounterStatus `json:"status,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go index 09f9beff7..c9399e0fa 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LogAnalyticsLinkedServiceInitParameters struct { + + // The ID of the writable Resource that will be linked to the workspace. This should be used for linking to a Log Analytics Cluster resource. + WriteAccessID *string `json:"writeAccessId,omitempty" tf:"write_access_id,omitempty"` +} + type LogAnalyticsLinkedServiceObservation struct { // The Log Analytics Linked Service ID. @@ -86,6 +92,18 @@ type LogAnalyticsLinkedServiceParameters struct { type LogAnalyticsLinkedServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LogAnalyticsLinkedServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LogAnalyticsLinkedServiceInitParameters `json:"initProvider,omitempty"` } // LogAnalyticsLinkedServiceStatus defines the observed state of LogAnalyticsLinkedService. diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go index 7ed623cdf..79885d8a7 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LogAnalyticsLinkedStorageAccountInitParameters struct { + + // The data source type which should be used for this Log Analytics Linked Storage Account. Possible values are CustomLogs, AzureWatson, Query, Ingestion and Alerts. Changing this forces a new Log Analytics Linked Storage Account to be created. + DataSourceType *string `json:"dataSourceType,omitempty" tf:"data_source_type,omitempty"` +} + type LogAnalyticsLinkedStorageAccountObservation struct { // The data source type which should be used for this Log Analytics Linked Storage Account. Possible values are CustomLogs, AzureWatson, Query, Ingestion and Alerts. Changing this forces a new Log Analytics Linked Storage Account to be created. @@ -83,6 +89,18 @@ type LogAnalyticsLinkedStorageAccountParameters struct { type LogAnalyticsLinkedStorageAccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LogAnalyticsLinkedStorageAccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LogAnalyticsLinkedStorageAccountInitParameters `json:"initProvider,omitempty"` } // LogAnalyticsLinkedStorageAccountStatus defines the observed state of LogAnalyticsLinkedStorageAccount. @@ -103,7 +121,7 @@ type LogAnalyticsLinkedStorageAccountStatus struct { type LogAnalyticsLinkedStorageAccount struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dataSourceType)",message="dataSourceType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dataSourceType) || has(self.initProvider.dataSourceType)",message="dataSourceType is a required parameter" Spec LogAnalyticsLinkedStorageAccountSpec `json:"spec"` Status LogAnalyticsLinkedStorageAccountStatus `json:"status,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsquerypack_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsquerypack_types.go index ee86a5e22..b70bc3cb0 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticsquerypack_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsquerypack_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LogAnalyticsQueryPackInitParameters struct { + + // The Azure Region where the Log Analytics Query Pack should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Log Analytics Query Pack. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type LogAnalyticsQueryPackObservation struct { // The ID of the Log Analytics Query Pack. @@ -56,6 +65,18 @@ type LogAnalyticsQueryPackParameters struct { type LogAnalyticsQueryPackSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LogAnalyticsQueryPackParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LogAnalyticsQueryPackInitParameters `json:"initProvider,omitempty"` } // LogAnalyticsQueryPackStatus defines the observed state of LogAnalyticsQueryPack. @@ -76,7 +97,7 @@ type LogAnalyticsQueryPackStatus struct { type LogAnalyticsQueryPack struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec LogAnalyticsQueryPackSpec `json:"spec"` Status LogAnalyticsQueryPackStatus `json:"status,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsquerypackquery_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsquerypackquery_types.go index 1f6ca9c61..ba499992f 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticsquerypackquery_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsquerypackquery_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LogAnalyticsQueryPackQueryInitParameters struct { + + // The additional properties that can be set for the Log Analytics Query Pack Query. + AdditionalSettingsJSON *string `json:"additionalSettingsJson,omitempty" tf:"additional_settings_json,omitempty"` + + // The body of the Log Analytics Query Pack Query. + Body *string `json:"body,omitempty" tf:"body,omitempty"` + + // A list of the related categories for the function. Possible values are applications, audit, container, databases, desktopanalytics, management, monitor, network, resources, security, virtualmachines, windowsvirtualdesktop and workloads. + Categories []*string `json:"categories,omitempty" tf:"categories,omitempty"` + + // The description of the Log Analytics Query Pack Query. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The unique display name for the query within the Log Analytics Query Pack. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // An unique UUID/GUID which identifies this Log Analytics Query Pack Query - one will be generated if not specified. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A list of the related resource types for the function. Possible values are default, microsoft.aad/domainservices, microsoft.aadiam/tenants, microsoft.agfoodplatform/farmbeats, microsoft.analysisservices/servers, microsoft.apimanagement/service, microsoft.appconfiguration/configurationstores, microsoft.appplatform/spring, microsoft.attestation/attestationproviders, microsoft.authorization/tenants, microsoft.automation/automationaccounts, microsoft.autonomousdevelopmentplatform/accounts, microsoft.azurestackhci/virtualmachines, microsoft.batch/batchaccounts, microsoft.blockchain/blockchainmembers, microsoft.botservice/botservices, microsoft.cache/redis, microsoft.cdn/profiles, microsoft.cognitiveservices/accounts, microsoft.communication/communicationservices, microsoft.compute/virtualmachines, microsoft.compute/virtualmachinescalesets, microsoft.connectedcache/cachenodes, microsoft.connectedvehicle/platformaccounts, microsoft.conenctedvmwarevsphere/virtualmachines, microsoft.containerregistry/registries, microsoft.containerservice/managedclusters, microsoft.d365customerinsights/instances, microsoft.dashboard/grafana, microsoft.databricks/workspaces, microsoft.datacollaboration/workspaces, microsoft.datafactory/factories, microsoft.datalakeanalytics/accounts, microsoft.datalakestore/accounts, microsoft.datashare/accounts, microsoft.dbformariadb/servers, microsoft.dbformysql/servers, microsoft.dbforpostgresql/flexibleservers, microsoft.dbforpostgresql/servers, microsoft.dbforpostgresql/serversv2, microsoft.digitaltwins/digitaltwinsinstances, microsoft.documentdb/cassandraclusters, microsoft.documentdb/databaseaccounts, microsoft.desktopvirtualization/applicationgroups, microsoft.desktopvirtualization/hostpools, microsoft.desktopvirtualization/workspaces, microsoft.devices/iothubs, microsoft.devices/provisioningservices, microsoft.dynamics/fraudprotection/purchase, microsoft.eventgrid/domains, microsoft.eventgrid/topics, microsoft.eventgrid/partnernamespaces, microsoft.eventgrid/partnertopics, microsoft.eventgrid/systemtopics, microsoft.eventhub/namespaces, microsoft.experimentation/experimentworkspaces, microsoft.hdinsight/clusters, microsoft.healthcareapis/services, microsoft.informationprotection/datasecuritymanagement, microsoft.intune/operations, microsoft.insights/autoscalesettings, microsoft.insights/components, microsoft.insights/workloadmonitoring, microsoft.keyvault/vaults, microsoft.kubernetes/connectedclusters, microsoft.kusto/clusters, microsoft.loadtestservice/loadtests, microsoft.logic/workflows, microsoft.machinelearningservices/workspaces, microsoft.media/mediaservices, microsoft.netapp/netappaccounts/capacitypools, microsoft.network/applicationgateways, microsoft.network/azurefirewalls, microsoft.network/bastionhosts, microsoft.network/expressroutecircuits, microsoft.network/frontdoors, microsoft.network/loadbalancers, microsoft.network/networkinterfaces, microsoft.network/networksecuritygroups, microsoft.network/networksecurityperimeters, microsoft.network/networkwatchers/connectionmonitors, microsoft.network/networkwatchers/trafficanalytics, microsoft.network/publicipaddresses, microsoft.network/trafficmanagerprofiles, microsoft.network/virtualnetworks, microsoft.network/virtualnetworkgateways, microsoft.network/vpngateways, microsoft.networkfunction/azuretrafficcollectors, microsoft.openenergyplatform/energyservices, microsoft.openlogisticsplatform/workspaces, microsoft.operationalinsights/workspaces, microsoft.powerbi/tenants, microsoft.powerbi/tenants/workspaces, microsoft.powerbidedicated/capacities, microsoft.purview/accounts, microsoft.recoveryservices/vaults, microsoft.resources/azureactivity, microsoft.scvmm/virtualmachines, microsoft.search/searchservices, microsoft.security/antimalwaresettings, microsoft.securityinsights/amazon, microsoft.securityinsights/anomalies, microsoft.securityinsights/cef, microsoft.securityinsights/datacollection, microsoft.securityinsights/dnsnormalized, microsoft.securityinsights/mda, microsoft.securityinsights/mde, microsoft.securityinsights/mdi, microsoft.securityinsights/mdo, microsoft.securityinsights/networksessionnormalized, microsoft.securityinsights/office365, microsoft.securityinsights/purview, microsoft.securityinsights/securityinsights, microsoft.securityinsights/securityinsights/mcas, microsoft.securityinsights/tvm, microsoft.securityinsights/watchlists, microsoft.servicebus/namespaces, microsoft.servicefabric/clusters, microsoft.signalrservice/signalr, microsoft.signalrservice/webpubsub, microsoft.sql/managedinstances, microsoft.sql/servers, microsoft.sql/servers/databases, microsoft.storage/storageaccounts, microsoft.storagecache/caches, microsoft.streamanalytics/streamingjobs, microsoft.synapse/workspaces, microsoft.timeseriesinsights/environments, microsoft.videoindexer/accounts, microsoft.web/sites, microsoft.workloadmonitor/monitors, resourcegroup and subscription. + ResourceTypes []*string `json:"resourceTypes,omitempty" tf:"resource_types,omitempty"` + + // A list of the related Log Analytics solutions for the function. Possible values are AADDomainServices, ADAssessment, ADAssessmentPlus, ADReplication, ADSecurityAssessment, AlertManagement, AntiMalware, ApplicationInsights, AzureAssessment, AzureSecurityOfThings, AzureSentinelDSRE, AzureSentinelPrivatePreview, BehaviorAnalyticsInsights, ChangeTracking, CompatibilityAssessment, ContainerInsights, Containers, CustomizedWindowsEventsFiltering, DeviceHealthProd, DnsAnalytics, ExchangeAssessment, ExchangeOnlineAssessment, IISAssessmentPlus, InfrastructureInsights, InternalWindowsEvent, LogManagement, Microsoft365Analytics, NetworkMonitoring, SCCMAssessmentPlus, SCOMAssessment, SCOMAssessmentPlus, Security, SecurityCenter, SecurityCenterFree, SecurityInsights, ServiceMap, SfBAssessment, SfBOnlineAssessment, SharePointOnlineAssessment, SPAssessment, SQLAdvancedThreatProtection, SQLAssessment, SQLAssessmentPlus, SQLDataClassification, SQLThreatDetection, SQLVulnerabilityAssessment, SurfaceHub, Updates, VMInsights, WEFInternalUat, WEF_10x, WEF_10xDSRE, WaaSUpdateInsights, WinLog, WindowsClientAssessmentPlus, WindowsEventForwarding, WindowsFirewall, WindowsServerAssessment, WireData and WireData2. + Solutions []*string `json:"solutions,omitempty" tf:"solutions,omitempty"` + + // A mapping of tags which should be assigned to the Log Analytics Query Pack Query. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type LogAnalyticsQueryPackQueryObservation struct { // The additional properties that can be set for the Log Analytics Query Pack Query. @@ -106,6 +136,18 @@ type LogAnalyticsQueryPackQueryParameters struct { type LogAnalyticsQueryPackQuerySpec struct { v1.ResourceSpec `json:",inline"` ForProvider LogAnalyticsQueryPackQueryParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LogAnalyticsQueryPackQueryInitParameters `json:"initProvider,omitempty"` } // LogAnalyticsQueryPackQueryStatus defines the observed state of LogAnalyticsQueryPackQuery. @@ -126,8 +168,8 @@ type LogAnalyticsQueryPackQueryStatus struct { type LogAnalyticsQueryPackQuery struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body)",message="body is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.body) || has(self.initProvider.body)",message="body is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" Spec LogAnalyticsQueryPackQuerySpec `json:"spec"` Status LogAnalyticsQueryPackQueryStatus `json:"status,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go index cc1748a45..0bb2ab56d 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LogAnalyticsSavedSearchInitParameters struct { + + // The category that the Saved Search will be listed under. Changing this forces a new resource to be created. + Category *string `json:"category,omitempty" tf:"category,omitempty"` + + // The name that Saved Search will be displayed as. Changing this forces a new resource to be created. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The function alias if the query serves as a function. Changing this forces a new resource to be created. + FunctionAlias *string `json:"functionAlias,omitempty" tf:"function_alias,omitempty"` + + // The function parameters if the query serves as a function. Changing this forces a new resource to be created. + FunctionParameters []*string `json:"functionParameters,omitempty" tf:"function_parameters,omitempty"` + + // The query expression for the saved search. Changing this forces a new resource to be created. + Query *string `json:"query,omitempty" tf:"query,omitempty"` + + // A mapping of tags which should be assigned to the Logs Analytics Saved Search. Changing this forces a new resource to be created. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type LogAnalyticsSavedSearchObservation struct { // The category that the Saved Search will be listed under. Changing this forces a new resource to be created. @@ -85,6 +106,18 @@ type LogAnalyticsSavedSearchParameters struct { type LogAnalyticsSavedSearchSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LogAnalyticsSavedSearchParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LogAnalyticsSavedSearchInitParameters `json:"initProvider,omitempty"` } // LogAnalyticsSavedSearchStatus defines the observed state of LogAnalyticsSavedSearch. @@ -105,9 +138,9 @@ type LogAnalyticsSavedSearchStatus struct { type LogAnalyticsSavedSearch struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.category)",message="category is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.query)",message="query is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.category) || has(self.initProvider.category)",message="category is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.query) || has(self.initProvider.query)",message="query is a required parameter" Spec LogAnalyticsSavedSearchSpec `json:"spec"` Status LogAnalyticsSavedSearchStatus `json:"status,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_workspace_types.go b/apis/operationalinsights/v1beta1/zz_workspace_types.go index 67280e930..2301bde99 100755 --- a/apis/operationalinsights/v1beta1/zz_workspace_types.go +++ b/apis/operationalinsights/v1beta1/zz_workspace_types.go @@ -13,6 +13,42 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WorkspaceInitParameters struct { + + // Specifies if the log Analytics Workspace allow users accessing to data associated with resources they have permission to view, without permission to workspace. Defaults to true. + AllowResourceOnlyPermissions *bool `json:"allowResourceOnlyPermissions,omitempty" tf:"allow_resource_only_permissions,omitempty"` + + // Is Customer Managed Storage mandatory for query management? + CmkForQueryForced *bool `json:"cmkForQueryForced,omitempty" tf:"cmk_for_query_forced,omitempty"` + + // The workspace daily quota for ingestion in GB. Defaults to -1 (unlimited) if omitted. + DailyQuotaGb *float64 `json:"dailyQuotaGb,omitempty" tf:"daily_quota_gb,omitempty"` + + // Should the Log Analytics Workspace support ingestion over the Public Internet? Defaults to true. + InternetIngestionEnabled *bool `json:"internetIngestionEnabled,omitempty" tf:"internet_ingestion_enabled,omitempty"` + + // Should the Log Analytics Workspace support querying over the Public Internet? Defaults to true. + InternetQueryEnabled *bool `json:"internetQueryEnabled,omitempty" tf:"internet_query_enabled,omitempty"` + + // Specifies if the log Analytics workspace should enforce authentication using Azure AD. Defaults to false. + LocalAuthenticationDisabled *bool `json:"localAuthenticationDisabled,omitempty" tf:"local_authentication_disabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The capacity reservation level in GB for this workspace. Must be in increments of 100 between 100 and 5000. + ReservationCapacityInGbPerDay *float64 `json:"reservationCapacityInGbPerDay,omitempty" tf:"reservation_capacity_in_gb_per_day,omitempty"` + + // The workspace data retention in days. Possible values are either 7 (Free Tier only) or range between 30 and 730. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // Specifies the SKU of the Log Analytics Workspace. Possible values are Free, PerNode, Premium, Standard, Standalone, Unlimited, CapacityReservation, and PerGB2018 (new SKU as of 2018-04-03). Defaults to PerGB2018. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type WorkspaceObservation struct { // Specifies if the log Analytics Workspace allow users accessing to data associated with resources they have permission to view, without permission to workspace. Defaults to true. @@ -122,6 +158,18 @@ type WorkspaceParameters struct { type WorkspaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WorkspaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WorkspaceInitParameters `json:"initProvider,omitempty"` } // WorkspaceStatus defines the observed state of Workspace. @@ -142,7 +190,7 @@ type WorkspaceStatus struct { type Workspace struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec WorkspaceSpec `json:"spec"` Status WorkspaceStatus `json:"status,omitempty"` } diff --git a/apis/operationsmanagement/v1beta1/zz_generated.deepcopy.go b/apis/operationsmanagement/v1beta1/zz_generated.deepcopy.go index cefe85f19..0ae03eb8f 100644 --- a/apis/operationsmanagement/v1beta1/zz_generated.deepcopy.go +++ b/apis/operationsmanagement/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,53 @@ func (in *LogAnalyticsSolution) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSolutionInitParameters) DeepCopyInto(out *LogAnalyticsSolutionInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]PlanInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SolutionName != nil { + in, out := &in.SolutionName, &out.SolutionName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSolutionInitParameters. +func (in *LogAnalyticsSolutionInitParameters) DeepCopy() *LogAnalyticsSolutionInitParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsSolutionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogAnalyticsSolutionList) DeepCopyInto(out *LogAnalyticsSolutionList) { *out = *in @@ -237,6 +284,7 @@ func (in *LogAnalyticsSolutionSpec) DeepCopyInto(out *LogAnalyticsSolutionSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSolutionSpec. @@ -266,6 +314,36 @@ func (in *LogAnalyticsSolutionStatus) DeepCopy() *LogAnalyticsSolutionStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PlanInitParameters) DeepCopyInto(out *PlanInitParameters) { + *out = *in + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.PromotionCode != nil { + in, out := &in.PromotionCode, &out.PromotionCode + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanInitParameters. +func (in *PlanInitParameters) DeepCopy() *PlanInitParameters { + if in == nil { + return nil + } + out := new(PlanInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PlanObservation) DeepCopyInto(out *PlanObservation) { *out = *in diff --git a/apis/operationsmanagement/v1beta1/zz_generated.managed.go b/apis/operationsmanagement/v1beta1/zz_generated.managed.go index 1756aac48..44331841c 100644 --- a/apis/operationsmanagement/v1beta1/zz_generated.managed.go +++ b/apis/operationsmanagement/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *LogAnalyticsSolution) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LogAnalyticsSolution. -func (mg *LogAnalyticsSolution) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LogAnalyticsSolution. @@ -55,9 +55,9 @@ func (mg *LogAnalyticsSolution) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LogAnalyticsSolution. -func (mg *LogAnalyticsSolution) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LogAnalyticsSolution. diff --git a/apis/operationsmanagement/v1beta1/zz_generated_terraformed.go b/apis/operationsmanagement/v1beta1/zz_generated_terraformed.go index 2f54c573b..431d12612 100755 --- a/apis/operationsmanagement/v1beta1/zz_generated_terraformed.go +++ b/apis/operationsmanagement/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *LogAnalyticsSolution) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LogAnalyticsSolution +func (tr *LogAnalyticsSolution) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LogAnalyticsSolution using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LogAnalyticsSolution) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go b/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go index c0a62c6cb..07abb4988 100755 --- a/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go +++ b/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type LogAnalyticsSolutionInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A plan block as documented below. + Plan []PlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"` + + // Specifies the name of the solution to be deployed. See here for options.Changing this forces a new resource to be created. + SolutionName *string `json:"solutionName,omitempty" tf:"solution_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type LogAnalyticsSolutionObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -97,6 +112,18 @@ type LogAnalyticsSolutionParameters struct { WorkspaceResourceIDSelector *v1.Selector `json:"workspaceResourceIdSelector,omitempty" tf:"-"` } +type PlanInitParameters struct { + + // The product name of the solution. For example OMSGallery/Containers. Changing this forces a new resource to be created. + Product *string `json:"product,omitempty" tf:"product,omitempty"` + + // A promotion code to be used with the solution. Changing this forces a new resource to be created. + PromotionCode *string `json:"promotionCode,omitempty" tf:"promotion_code,omitempty"` + + // The publisher of the solution. For example Microsoft. Changing this forces a new resource to be created. + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` +} + type PlanObservation struct { Name *string `json:"name,omitempty" tf:"name,omitempty"` @@ -113,22 +140,34 @@ type PlanObservation struct { type PlanParameters struct { // The product name of the solution. For example OMSGallery/Containers. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Product *string `json:"product" tf:"product,omitempty"` + // +kubebuilder:validation:Optional + Product *string `json:"product,omitempty" tf:"product,omitempty"` // A promotion code to be used with the solution. Changing this forces a new resource to be created. // +kubebuilder:validation:Optional PromotionCode *string `json:"promotionCode,omitempty" tf:"promotion_code,omitempty"` // The publisher of the solution. For example Microsoft. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Publisher *string `json:"publisher" tf:"publisher,omitempty"` + // +kubebuilder:validation:Optional + Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } // LogAnalyticsSolutionSpec defines the desired state of LogAnalyticsSolution type LogAnalyticsSolutionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LogAnalyticsSolutionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LogAnalyticsSolutionInitParameters `json:"initProvider,omitempty"` } // LogAnalyticsSolutionStatus defines the observed state of LogAnalyticsSolution. @@ -149,9 +188,9 @@ type LogAnalyticsSolutionStatus struct { type LogAnalyticsSolution struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.plan)",message="plan is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.solutionName)",message="solutionName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.plan) || has(self.initProvider.plan)",message="plan is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.solutionName) || has(self.initProvider.solutionName)",message="solutionName is a required parameter" Spec LogAnalyticsSolutionSpec `json:"spec"` Status LogAnalyticsSolutionStatus `json:"status,omitempty"` } diff --git a/apis/orbital/v1beta1/zz_contactprofile_types.go b/apis/orbital/v1beta1/zz_contactprofile_types.go index 2ea88b513..3f980f098 100755 --- a/apis/orbital/v1beta1/zz_contactprofile_types.go +++ b/apis/orbital/v1beta1/zz_contactprofile_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ChannelsInitParameters struct { + + // Bandwidth in MHz. + BandwidthMhz *float64 `json:"bandwidthMhz,omitempty" tf:"bandwidth_mhz,omitempty"` + + // Center frequency in MHz. + CenterFrequencyMhz *float64 `json:"centerFrequencyMhz,omitempty" tf:"center_frequency_mhz,omitempty"` + + // Copy of the modem configuration file such as Kratos QRadio or Kratos QuantumRx. Only valid for downlink directions. If provided, the modem connects to the customer endpoint and sends demodulated data instead of a VITA.49 stream. + DemodulationConfiguration *string `json:"demodulationConfiguration,omitempty" tf:"demodulation_configuration,omitempty"` + + // Customer End point to store/retrieve data during a contact. An end_point block as defined below. + EndPoint []EndPointInitParameters `json:"endPoint,omitempty" tf:"end_point,omitempty"` + + // Copy of the modem configuration file such as Kratos QRadio. Only valid for uplink directions. If provided, the modem connects to the customer endpoint and accepts commands from the customer instead of a VITA.49 stream. + ModulationConfiguration *string `json:"modulationConfiguration,omitempty" tf:"modulation_configuration,omitempty"` + + // The name of the contact profile. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type ChannelsObservation struct { // Bandwidth in MHz. @@ -37,28 +58,52 @@ type ChannelsObservation struct { type ChannelsParameters struct { // Bandwidth in MHz. - // +kubebuilder:validation:Required - BandwidthMhz *float64 `json:"bandwidthMhz" tf:"bandwidth_mhz,omitempty"` + // +kubebuilder:validation:Optional + BandwidthMhz *float64 `json:"bandwidthMhz,omitempty" tf:"bandwidth_mhz,omitempty"` // Center frequency in MHz. - // +kubebuilder:validation:Required - CenterFrequencyMhz *float64 `json:"centerFrequencyMhz" tf:"center_frequency_mhz,omitempty"` + // +kubebuilder:validation:Optional + CenterFrequencyMhz *float64 `json:"centerFrequencyMhz,omitempty" tf:"center_frequency_mhz,omitempty"` // Copy of the modem configuration file such as Kratos QRadio or Kratos QuantumRx. Only valid for downlink directions. If provided, the modem connects to the customer endpoint and sends demodulated data instead of a VITA.49 stream. // +kubebuilder:validation:Optional DemodulationConfiguration *string `json:"demodulationConfiguration,omitempty" tf:"demodulation_configuration,omitempty"` // Customer End point to store/retrieve data during a contact. An end_point block as defined below. - // +kubebuilder:validation:Required - EndPoint []EndPointParameters `json:"endPoint" tf:"end_point,omitempty"` + // +kubebuilder:validation:Optional + EndPoint []EndPointParameters `json:"endPoint,omitempty" tf:"end_point,omitempty"` // Copy of the modem configuration file such as Kratos QRadio. Only valid for uplink directions. If provided, the modem connects to the customer endpoint and accepts commands from the customer instead of a VITA.49 stream. // +kubebuilder:validation:Optional ModulationConfiguration *string `json:"modulationConfiguration,omitempty" tf:"modulation_configuration,omitempty"` // The name of the contact profile. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type ContactProfileInitParameters struct { + + // Auto-tracking configurations for a spacecraft. Possible values are disabled, xBand and sBand. + AutoTracking *string `json:"autoTracking,omitempty" tf:"auto_tracking,omitempty"` + + // ARM resource identifier of the Event Hub used for telemetry. Requires granting Orbital Resource Provider the rights to send telemetry into the hub. + EventHubURI *string `json:"eventHubUri,omitempty" tf:"event_hub_uri,omitempty"` + + // A list of spacecraft links. A links block as defined below. Changing this forces a new resource to be created. + Links []LinksInitParameters `json:"links,omitempty" tf:"links,omitempty"` + + // The location where the contact profile exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Maximum elevation of the antenna during the contact in decimal degrees. + MinimumElevationDegrees *float64 `json:"minimumElevationDegrees,omitempty" tf:"minimum_elevation_degrees,omitempty"` + + // Minimum viable contact duration in ISO 8601 format. Used for listing the available contacts with a spacecraft at a given ground station. + MinimumVariableContactDuration *string `json:"minimumVariableContactDuration,omitempty" tf:"minimum_variable_contact_duration,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type ContactProfileObservation struct { @@ -152,6 +197,21 @@ type ContactProfileParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type EndPointInitParameters struct { + + // Name of an end point. + EndPointName *string `json:"endPointName,omitempty" tf:"end_point_name,omitempty"` + + // IP address of an end point. + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // TCP port to listen on to receive data. + Port *string `json:"port,omitempty" tf:"port,omitempty"` + + // Protocol of an end point. Possible values are TCP and UDP. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` +} + type EndPointObservation struct { // Name of an end point. @@ -170,20 +230,35 @@ type EndPointObservation struct { type EndPointParameters struct { // Name of an end point. - // +kubebuilder:validation:Required - EndPointName *string `json:"endPointName" tf:"end_point_name,omitempty"` + // +kubebuilder:validation:Optional + EndPointName *string `json:"endPointName,omitempty" tf:"end_point_name,omitempty"` // IP address of an end point. // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // TCP port to listen on to receive data. - // +kubebuilder:validation:Required - Port *string `json:"port" tf:"port,omitempty"` + // +kubebuilder:validation:Optional + Port *string `json:"port,omitempty" tf:"port,omitempty"` // Protocol of an end point. Possible values are TCP and UDP. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` +} + +type LinksInitParameters struct { + + // A list of contact profile link channels. A channels block as defined below. Changing this forces a new resource to be created. + Channels []ChannelsInitParameters `json:"channels,omitempty" tf:"channels,omitempty"` + + // Direction of the link. Possible values are Uplink and Downlink. + Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` + + // Name of the link. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Polarization of the link. Possible values are LHCP, RHCP, linearVertical and linearHorizontal. + Polarization *string `json:"polarization,omitempty" tf:"polarization,omitempty"` } type LinksObservation struct { @@ -204,26 +279,38 @@ type LinksObservation struct { type LinksParameters struct { // A list of contact profile link channels. A channels block as defined below. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Channels []ChannelsParameters `json:"channels" tf:"channels,omitempty"` + // +kubebuilder:validation:Optional + Channels []ChannelsParameters `json:"channels,omitempty" tf:"channels,omitempty"` // Direction of the link. Possible values are Uplink and Downlink. - // +kubebuilder:validation:Required - Direction *string `json:"direction" tf:"direction,omitempty"` + // +kubebuilder:validation:Optional + Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` // Name of the link. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Polarization of the link. Possible values are LHCP, RHCP, linearVertical and linearHorizontal. - // +kubebuilder:validation:Required - Polarization *string `json:"polarization" tf:"polarization,omitempty"` + // +kubebuilder:validation:Optional + Polarization *string `json:"polarization,omitempty" tf:"polarization,omitempty"` } // ContactProfileSpec defines the desired state of ContactProfile type ContactProfileSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ContactProfileParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ContactProfileInitParameters `json:"initProvider,omitempty"` } // ContactProfileStatus defines the observed state of ContactProfile. @@ -244,10 +331,10 @@ type ContactProfileStatus struct { type ContactProfile struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.autoTracking)",message="autoTracking is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.links)",message="links is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.minimumVariableContactDuration)",message="minimumVariableContactDuration is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.autoTracking) || has(self.initProvider.autoTracking)",message="autoTracking is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.links) || has(self.initProvider.links)",message="links is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.minimumVariableContactDuration) || has(self.initProvider.minimumVariableContactDuration)",message="minimumVariableContactDuration is a required parameter" Spec ContactProfileSpec `json:"spec"` Status ContactProfileStatus `json:"status,omitempty"` } diff --git a/apis/orbital/v1beta1/zz_generated.deepcopy.go b/apis/orbital/v1beta1/zz_generated.deepcopy.go index 51cdbae7b..a5a79d075 100644 --- a/apis/orbital/v1beta1/zz_generated.deepcopy.go +++ b/apis/orbital/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,53 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ChannelsInitParameters) DeepCopyInto(out *ChannelsInitParameters) { + *out = *in + if in.BandwidthMhz != nil { + in, out := &in.BandwidthMhz, &out.BandwidthMhz + *out = new(float64) + **out = **in + } + if in.CenterFrequencyMhz != nil { + in, out := &in.CenterFrequencyMhz, &out.CenterFrequencyMhz + *out = new(float64) + **out = **in + } + if in.DemodulationConfiguration != nil { + in, out := &in.DemodulationConfiguration, &out.DemodulationConfiguration + *out = new(string) + **out = **in + } + if in.EndPoint != nil { + in, out := &in.EndPoint, &out.EndPoint + *out = make([]EndPointInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ModulationConfiguration != nil { + in, out := &in.ModulationConfiguration, &out.ModulationConfiguration + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChannelsInitParameters. +func (in *ChannelsInitParameters) DeepCopy() *ChannelsInitParameters { + if in == nil { + return nil + } + out := new(ChannelsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ChannelsObservation) DeepCopyInto(out *ChannelsObservation) { *out = *in @@ -135,6 +182,68 @@ func (in *ContactProfile) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContactProfileInitParameters) DeepCopyInto(out *ContactProfileInitParameters) { + *out = *in + if in.AutoTracking != nil { + in, out := &in.AutoTracking, &out.AutoTracking + *out = new(string) + **out = **in + } + if in.EventHubURI != nil { + in, out := &in.EventHubURI, &out.EventHubURI + *out = new(string) + **out = **in + } + if in.Links != nil { + in, out := &in.Links, &out.Links + *out = make([]LinksInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MinimumElevationDegrees != nil { + in, out := &in.MinimumElevationDegrees, &out.MinimumElevationDegrees + *out = new(float64) + **out = **in + } + if in.MinimumVariableContactDuration != nil { + in, out := &in.MinimumVariableContactDuration, &out.MinimumVariableContactDuration + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContactProfileInitParameters. +func (in *ContactProfileInitParameters) DeepCopy() *ContactProfileInitParameters { + if in == nil { + return nil + } + out := new(ContactProfileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContactProfileList) DeepCopyInto(out *ContactProfileList) { *out = *in @@ -341,6 +450,7 @@ func (in *ContactProfileSpec) DeepCopyInto(out *ContactProfileSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContactProfileSpec. @@ -370,6 +480,41 @@ func (in *ContactProfileStatus) DeepCopy() *ContactProfileStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndPointInitParameters) DeepCopyInto(out *EndPointInitParameters) { + *out = *in + if in.EndPointName != nil { + in, out := &in.EndPointName, &out.EndPointName + *out = new(string) + **out = **in + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndPointInitParameters. +func (in *EndPointInitParameters) DeepCopy() *EndPointInitParameters { + if in == nil { + return nil + } + out := new(EndPointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EndPointObservation) DeepCopyInto(out *EndPointObservation) { *out = *in @@ -440,6 +585,43 @@ func (in *EndPointParameters) DeepCopy() *EndPointParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinksInitParameters) DeepCopyInto(out *LinksInitParameters) { + *out = *in + if in.Channels != nil { + in, out := &in.Channels, &out.Channels + *out = make([]ChannelsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Direction != nil { + in, out := &in.Direction, &out.Direction + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Polarization != nil { + in, out := &in.Polarization, &out.Polarization + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinksInitParameters. +func (in *LinksInitParameters) DeepCopy() *LinksInitParameters { + if in == nil { + return nil + } + out := new(LinksInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinksObservation) DeepCopyInto(out *LinksObservation) { *out = *in @@ -541,6 +723,109 @@ func (in *Spacecraft) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpacecraftInitParameters) DeepCopyInto(out *SpacecraftInitParameters) { + *out = *in + if in.Links != nil { + in, out := &in.Links, &out.Links + *out = make([]SpacecraftLinksInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.NoradID != nil { + in, out := &in.NoradID, &out.NoradID + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TitleLine != nil { + in, out := &in.TitleLine, &out.TitleLine + *out = new(string) + **out = **in + } + if in.TwoLineElements != nil { + in, out := &in.TwoLineElements, &out.TwoLineElements + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpacecraftInitParameters. +func (in *SpacecraftInitParameters) DeepCopy() *SpacecraftInitParameters { + if in == nil { + return nil + } + out := new(SpacecraftInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpacecraftLinksInitParameters) DeepCopyInto(out *SpacecraftLinksInitParameters) { + *out = *in + if in.BandwidthMhz != nil { + in, out := &in.BandwidthMhz, &out.BandwidthMhz + *out = new(float64) + **out = **in + } + if in.CenterFrequencyMhz != nil { + in, out := &in.CenterFrequencyMhz, &out.CenterFrequencyMhz + *out = new(float64) + **out = **in + } + if in.Direction != nil { + in, out := &in.Direction, &out.Direction + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Polarization != nil { + in, out := &in.Polarization, &out.Polarization + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpacecraftLinksInitParameters. +func (in *SpacecraftLinksInitParameters) DeepCopy() *SpacecraftLinksInitParameters { + if in == nil { + return nil + } + out := new(SpacecraftLinksInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpacecraftLinksObservation) DeepCopyInto(out *SpacecraftLinksObservation) { *out = *in @@ -809,6 +1094,7 @@ func (in *SpacecraftSpec) DeepCopyInto(out *SpacecraftSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpacecraftSpec. diff --git a/apis/orbital/v1beta1/zz_generated.managed.go b/apis/orbital/v1beta1/zz_generated.managed.go index 18caeb2ff..c1211a433 100644 --- a/apis/orbital/v1beta1/zz_generated.managed.go +++ b/apis/orbital/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ContactProfile) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ContactProfile. -func (mg *ContactProfile) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ContactProfile. +func (mg *ContactProfile) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ContactProfile. @@ -55,9 +55,9 @@ func (mg *ContactProfile) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ContactProfile. -func (mg *ContactProfile) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ContactProfile. +func (mg *ContactProfile) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ContactProfile. @@ -93,9 +93,9 @@ func (mg *Spacecraft) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Spacecraft. -func (mg *Spacecraft) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Spacecraft. +func (mg *Spacecraft) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Spacecraft. @@ -131,9 +131,9 @@ func (mg *Spacecraft) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Spacecraft. -func (mg *Spacecraft) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Spacecraft. +func (mg *Spacecraft) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Spacecraft. diff --git a/apis/orbital/v1beta1/zz_generated_terraformed.go b/apis/orbital/v1beta1/zz_generated_terraformed.go index 395a1f602..87a5f049b 100755 --- a/apis/orbital/v1beta1/zz_generated_terraformed.go +++ b/apis/orbital/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ContactProfile) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ContactProfile +func (tr *ContactProfile) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ContactProfile using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ContactProfile) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *Spacecraft) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Spacecraft +func (tr *Spacecraft) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Spacecraft using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Spacecraft) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/orbital/v1beta1/zz_spacecraft_types.go b/apis/orbital/v1beta1/zz_spacecraft_types.go index 896a50127..a221ccf70 100755 --- a/apis/orbital/v1beta1/zz_spacecraft_types.go +++ b/apis/orbital/v1beta1/zz_spacecraft_types.go @@ -13,6 +13,45 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SpacecraftInitParameters struct { + + // A links block as defined below. Changing this forces a new resource to be created. + Links []SpacecraftLinksInitParameters `json:"links,omitempty" tf:"links,omitempty"` + + // The location where the Spacecraft exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // NORAD ID of the Spacecraft. + NoradID *string `json:"noradId,omitempty" tf:"norad_id,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Title of the two line elements (TLE). + TitleLine *string `json:"titleLine,omitempty" tf:"title_line,omitempty"` + + // A list of the two line elements (TLE), the first string being the first of the TLE, the second string being the second line of the TLE. Changing this forces a new resource to be created. + TwoLineElements []*string `json:"twoLineElements,omitempty" tf:"two_line_elements,omitempty"` +} + +type SpacecraftLinksInitParameters struct { + + // Bandwidth in Mhz. + BandwidthMhz *float64 `json:"bandwidthMhz,omitempty" tf:"bandwidth_mhz,omitempty"` + + // Center frequency in Mhz. + CenterFrequencyMhz *float64 `json:"centerFrequencyMhz,omitempty" tf:"center_frequency_mhz,omitempty"` + + // Direction if the communication. Possible values are Uplink and Downlink. + Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` + + // Name of the link. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Polarization. Possible values are RHCP, LHCP, linearVertical and linearHorizontal. + Polarization *string `json:"polarization,omitempty" tf:"polarization,omitempty"` +} + type SpacecraftLinksObservation struct { // Bandwidth in Mhz. @@ -34,24 +73,24 @@ type SpacecraftLinksObservation struct { type SpacecraftLinksParameters struct { // Bandwidth in Mhz. - // +kubebuilder:validation:Required - BandwidthMhz *float64 `json:"bandwidthMhz" tf:"bandwidth_mhz,omitempty"` + // +kubebuilder:validation:Optional + BandwidthMhz *float64 `json:"bandwidthMhz,omitempty" tf:"bandwidth_mhz,omitempty"` // Center frequency in Mhz. - // +kubebuilder:validation:Required - CenterFrequencyMhz *float64 `json:"centerFrequencyMhz" tf:"center_frequency_mhz,omitempty"` + // +kubebuilder:validation:Optional + CenterFrequencyMhz *float64 `json:"centerFrequencyMhz,omitempty" tf:"center_frequency_mhz,omitempty"` // Direction if the communication. Possible values are Uplink and Downlink. - // +kubebuilder:validation:Required - Direction *string `json:"direction" tf:"direction,omitempty"` + // +kubebuilder:validation:Optional + Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` // Name of the link. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Polarization. Possible values are RHCP, LHCP, linearVertical and linearHorizontal. - // +kubebuilder:validation:Required - Polarization *string `json:"polarization" tf:"polarization,omitempty"` + // +kubebuilder:validation:Optional + Polarization *string `json:"polarization,omitempty" tf:"polarization,omitempty"` } type SpacecraftObservation struct { @@ -125,6 +164,18 @@ type SpacecraftParameters struct { type SpacecraftSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpacecraftParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpacecraftInitParameters `json:"initProvider,omitempty"` } // SpacecraftStatus defines the observed state of Spacecraft. @@ -145,11 +196,11 @@ type SpacecraftStatus struct { type Spacecraft struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.links)",message="links is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.noradId)",message="noradId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.titleLine)",message="titleLine is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.twoLineElements)",message="twoLineElements is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.links) || has(self.initProvider.links)",message="links is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.noradId) || has(self.initProvider.noradId)",message="noradId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.titleLine) || has(self.initProvider.titleLine)",message="titleLine is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.twoLineElements) || has(self.initProvider.twoLineElements)",message="twoLineElements is a required parameter" Spec SpacecraftSpec `json:"spec"` Status SpacecraftStatus `json:"status,omitempty"` } diff --git a/apis/policyinsights/v1beta1/zz_generated.deepcopy.go b/apis/policyinsights/v1beta1/zz_generated.deepcopy.go index 5c4e60177..00671aba9 100644 --- a/apis/policyinsights/v1beta1/zz_generated.deepcopy.go +++ b/apis/policyinsights/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,67 @@ func (in *ResourcePolicyRemediation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourcePolicyRemediationInitParameters) DeepCopyInto(out *ResourcePolicyRemediationInitParameters) { + *out = *in + if in.FailurePercentage != nil { + in, out := &in.FailurePercentage, &out.FailurePercentage + *out = new(float64) + **out = **in + } + if in.LocationFilters != nil { + in, out := &in.LocationFilters, &out.LocationFilters + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ParallelDeployments != nil { + in, out := &in.ParallelDeployments, &out.ParallelDeployments + *out = new(float64) + **out = **in + } + if in.PolicyDefinitionID != nil { + in, out := &in.PolicyDefinitionID, &out.PolicyDefinitionID + *out = new(string) + **out = **in + } + if in.PolicyDefinitionReferenceID != nil { + in, out := &in.PolicyDefinitionReferenceID, &out.PolicyDefinitionReferenceID + *out = new(string) + **out = **in + } + if in.ResourceCount != nil { + in, out := &in.ResourceCount, &out.ResourceCount + *out = new(float64) + **out = **in + } + if in.ResourceDiscoveryMode != nil { + in, out := &in.ResourceDiscoveryMode, &out.ResourceDiscoveryMode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyRemediationInitParameters. +func (in *ResourcePolicyRemediationInitParameters) DeepCopy() *ResourcePolicyRemediationInitParameters { + if in == nil { + return nil + } + out := new(ResourcePolicyRemediationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourcePolicyRemediationList) DeepCopyInto(out *ResourcePolicyRemediationList) { *out = *in @@ -245,6 +306,7 @@ func (in *ResourcePolicyRemediationSpec) DeepCopyInto(out *ResourcePolicyRemedia *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyRemediationSpec. @@ -301,6 +363,67 @@ func (in *SubscriptionPolicyRemediation) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionPolicyRemediationInitParameters) DeepCopyInto(out *SubscriptionPolicyRemediationInitParameters) { + *out = *in + if in.FailurePercentage != nil { + in, out := &in.FailurePercentage, &out.FailurePercentage + *out = new(float64) + **out = **in + } + if in.LocationFilters != nil { + in, out := &in.LocationFilters, &out.LocationFilters + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ParallelDeployments != nil { + in, out := &in.ParallelDeployments, &out.ParallelDeployments + *out = new(float64) + **out = **in + } + if in.PolicyDefinitionID != nil { + in, out := &in.PolicyDefinitionID, &out.PolicyDefinitionID + *out = new(string) + **out = **in + } + if in.PolicyDefinitionReferenceID != nil { + in, out := &in.PolicyDefinitionReferenceID, &out.PolicyDefinitionReferenceID + *out = new(string) + **out = **in + } + if in.ResourceCount != nil { + in, out := &in.ResourceCount, &out.ResourceCount + *out = new(float64) + **out = **in + } + if in.ResourceDiscoveryMode != nil { + in, out := &in.ResourceDiscoveryMode, &out.ResourceDiscoveryMode + *out = new(string) + **out = **in + } + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyRemediationInitParameters. +func (in *SubscriptionPolicyRemediationInitParameters) DeepCopy() *SubscriptionPolicyRemediationInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionPolicyRemediationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionPolicyRemediationList) DeepCopyInto(out *SubscriptionPolicyRemediationList) { *out = *in @@ -485,6 +608,7 @@ func (in *SubscriptionPolicyRemediationSpec) DeepCopyInto(out *SubscriptionPolic *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionPolicyRemediationSpec. diff --git a/apis/policyinsights/v1beta1/zz_generated.managed.go b/apis/policyinsights/v1beta1/zz_generated.managed.go index 846616544..141f3b97d 100644 --- a/apis/policyinsights/v1beta1/zz_generated.managed.go +++ b/apis/policyinsights/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ResourcePolicyRemediation) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourcePolicyRemediation. -func (mg *ResourcePolicyRemediation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourcePolicyRemediation. +func (mg *ResourcePolicyRemediation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourcePolicyRemediation. @@ -55,9 +55,9 @@ func (mg *ResourcePolicyRemediation) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourcePolicyRemediation. -func (mg *ResourcePolicyRemediation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourcePolicyRemediation. +func (mg *ResourcePolicyRemediation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourcePolicyRemediation. @@ -93,9 +93,9 @@ func (mg *SubscriptionPolicyRemediation) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubscriptionPolicyRemediation. -func (mg *SubscriptionPolicyRemediation) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubscriptionPolicyRemediation. +func (mg *SubscriptionPolicyRemediation) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubscriptionPolicyRemediation. @@ -131,9 +131,9 @@ func (mg *SubscriptionPolicyRemediation) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubscriptionPolicyRemediation. -func (mg *SubscriptionPolicyRemediation) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubscriptionPolicyRemediation. +func (mg *SubscriptionPolicyRemediation) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubscriptionPolicyRemediation. diff --git a/apis/policyinsights/v1beta1/zz_generated_terraformed.go b/apis/policyinsights/v1beta1/zz_generated_terraformed.go index c7c431a23..c09be868c 100755 --- a/apis/policyinsights/v1beta1/zz_generated_terraformed.go +++ b/apis/policyinsights/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ResourcePolicyRemediation) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourcePolicyRemediation +func (tr *ResourcePolicyRemediation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourcePolicyRemediation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourcePolicyRemediation) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *SubscriptionPolicyRemediation) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubscriptionPolicyRemediation +func (tr *SubscriptionPolicyRemediation) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubscriptionPolicyRemediation using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubscriptionPolicyRemediation) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/policyinsights/v1beta1/zz_resourcepolicyremediation_types.go b/apis/policyinsights/v1beta1/zz_resourcepolicyremediation_types.go index a1686f62a..b12905d87 100755 --- a/apis/policyinsights/v1beta1/zz_resourcepolicyremediation_types.go +++ b/apis/policyinsights/v1beta1/zz_resourcepolicyremediation_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ResourcePolicyRemediationInitParameters struct { + + // A number between 0.0 to 1.0 representing the percentage failure threshold. The remediation will fail if the percentage of failed remediation operations (i.e. failed deployments) exceeds this threshold. + FailurePercentage *float64 `json:"failurePercentage,omitempty" tf:"failure_percentage,omitempty"` + + // A list of the resource locations that will be remediated. + LocationFilters []*string `json:"locationFilters,omitempty" tf:"location_filters,omitempty"` + + // The name of the Policy Remediation. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Determines how many resources to remediate at any given time. Can be used to increase or reduce the pace of the remediation. If not provided, the default parallel deployments value is used. + ParallelDeployments *float64 `json:"parallelDeployments,omitempty" tf:"parallel_deployments,omitempty"` + + // The unique ID for the policy definition within the policy set definition that should be remediated. Required when the policy assignment being remediated assigns a policy set definition. + PolicyDefinitionID *string `json:"policyDefinitionId,omitempty" tf:"policy_definition_id,omitempty"` + + // The unique ID for the policy definition reference within the policy set definition that should be remediated. Required when the policy assignment being remediated assigns a policy set definition. + PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` + + // Determines the max number of resources that can be remediated by the remediation job. If not provided, the default resource count is used. + ResourceCount *float64 `json:"resourceCount,omitempty" tf:"resource_count,omitempty"` + + // The way that resources to remediate are discovered. Possible values are ExistingNonCompliant, ReEvaluateCompliance. Defaults to ExistingNonCompliant. + ResourceDiscoveryMode *string `json:"resourceDiscoveryMode,omitempty" tf:"resource_discovery_mode,omitempty"` +} + type ResourcePolicyRemediationObservation struct { // A number between 0.0 to 1.0 representing the percentage failure threshold. The remediation will fail if the percentage of failed remediation operations (i.e. failed deployments) exceeds this threshold. @@ -116,6 +143,18 @@ type ResourcePolicyRemediationParameters struct { type ResourcePolicyRemediationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourcePolicyRemediationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourcePolicyRemediationInitParameters `json:"initProvider,omitempty"` } // ResourcePolicyRemediationStatus defines the observed state of ResourcePolicyRemediation. @@ -136,7 +175,7 @@ type ResourcePolicyRemediationStatus struct { type ResourcePolicyRemediation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ResourcePolicyRemediationSpec `json:"spec"` Status ResourcePolicyRemediationStatus `json:"status,omitempty"` } diff --git a/apis/policyinsights/v1beta1/zz_subscriptionpolicyremediation_types.go b/apis/policyinsights/v1beta1/zz_subscriptionpolicyremediation_types.go index 2a3db4db6..182dda43d 100755 --- a/apis/policyinsights/v1beta1/zz_subscriptionpolicyremediation_types.go +++ b/apis/policyinsights/v1beta1/zz_subscriptionpolicyremediation_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubscriptionPolicyRemediationInitParameters struct { + + // A number between 0.0 to 1.0 representing the percentage failure threshold. The remediation will fail if the percentage of failed remediation operations (i.e. failed deployments) exceeds this threshold. + FailurePercentage *float64 `json:"failurePercentage,omitempty" tf:"failure_percentage,omitempty"` + + // A list of the resource locations that will be remediated. + LocationFilters []*string `json:"locationFilters,omitempty" tf:"location_filters,omitempty"` + + // Determines how many resources to remediate at any given time. Can be used to increase or reduce the pace of the remediation. If not provided, the default parallel deployments value is used. + ParallelDeployments *float64 `json:"parallelDeployments,omitempty" tf:"parallel_deployments,omitempty"` + + // The unique ID for the policy definition within the policy set definition that should be remediated. Required when the policy assignment being remediated assigns a policy set definition. + PolicyDefinitionID *string `json:"policyDefinitionId,omitempty" tf:"policy_definition_id,omitempty"` + + // The unique ID for the policy definition reference within the policy set definition that should be remediated. Required when the policy assignment being remediated assigns a policy set definition. + PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` + + // Determines the max number of resources that can be remediated by the remediation job. If not provided, the default resource count is used. + ResourceCount *float64 `json:"resourceCount,omitempty" tf:"resource_count,omitempty"` + + // The way that resources to remediate are discovered. Possible values are ExistingNonCompliant, ReEvaluateCompliance. Defaults to ExistingNonCompliant. + ResourceDiscoveryMode *string `json:"resourceDiscoveryMode,omitempty" tf:"resource_discovery_mode,omitempty"` + + // The Subscription ID at which the Policy Remediation should be applied. Changing this forces a new resource to be created. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` +} + type SubscriptionPolicyRemediationObservation struct { // A number between 0.0 to 1.0 representing the percentage failure threshold. The remediation will fail if the percentage of failed remediation operations (i.e. failed deployments) exceeds this threshold. @@ -99,6 +126,18 @@ type SubscriptionPolicyRemediationParameters struct { type SubscriptionPolicyRemediationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubscriptionPolicyRemediationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubscriptionPolicyRemediationInitParameters `json:"initProvider,omitempty"` } // SubscriptionPolicyRemediationStatus defines the observed state of SubscriptionPolicyRemediation. @@ -119,7 +158,7 @@ type SubscriptionPolicyRemediationStatus struct { type SubscriptionPolicyRemediation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId)",message="subscriptionId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subscriptionId) || has(self.initProvider.subscriptionId)",message="subscriptionId is a required parameter" Spec SubscriptionPolicyRemediationSpec `json:"spec"` Status SubscriptionPolicyRemediationStatus `json:"status,omitempty"` } diff --git a/apis/portal/v1beta1/zz_dashboard_types.go b/apis/portal/v1beta1/zz_dashboard_types.go index 9be1074be..ec9a06549 100755 --- a/apis/portal/v1beta1/zz_dashboard_types.go +++ b/apis/portal/v1beta1/zz_dashboard_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DashboardInitParameters struct { + + // JSON data representing dashboard body. See above for details on how to obtain this from the Portal. + DashboardProperties *string `json:"dashboardProperties,omitempty" tf:"dashboard_properties,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name of the Shared Dashboard. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type DashboardObservation struct { // JSON data representing dashboard body. See above for details on how to obtain this from the Portal. @@ -70,6 +85,18 @@ type DashboardParameters struct { type DashboardSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DashboardParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DashboardInitParameters `json:"initProvider,omitempty"` } // DashboardStatus defines the observed state of Dashboard. @@ -90,9 +117,9 @@ type DashboardStatus struct { type Dashboard struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dashboardProperties)",message="dashboardProperties is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dashboardProperties) || has(self.initProvider.dashboardProperties)",message="dashboardProperties is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec DashboardSpec `json:"spec"` Status DashboardStatus `json:"status,omitempty"` } diff --git a/apis/portal/v1beta1/zz_generated.deepcopy.go b/apis/portal/v1beta1/zz_generated.deepcopy.go index 7f73a85e8..3b8f6320e 100644 --- a/apis/portal/v1beta1/zz_generated.deepcopy.go +++ b/apis/portal/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,51 @@ func (in *Dashboard) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DashboardInitParameters) DeepCopyInto(out *DashboardInitParameters) { + *out = *in + if in.DashboardProperties != nil { + in, out := &in.DashboardProperties, &out.DashboardProperties + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardInitParameters. +func (in *DashboardInitParameters) DeepCopy() *DashboardInitParameters { + if in == nil { + return nil + } + out := new(DashboardInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DashboardList) DeepCopyInto(out *DashboardList) { *out = *in @@ -193,6 +238,7 @@ func (in *DashboardSpec) DeepCopyInto(out *DashboardSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardSpec. diff --git a/apis/portal/v1beta1/zz_generated.managed.go b/apis/portal/v1beta1/zz_generated.managed.go index 801818845..5479d995b 100644 --- a/apis/portal/v1beta1/zz_generated.managed.go +++ b/apis/portal/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Dashboard) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Dashboard. -func (mg *Dashboard) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Dashboard. +func (mg *Dashboard) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Dashboard. @@ -55,9 +55,9 @@ func (mg *Dashboard) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Dashboard. -func (mg *Dashboard) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Dashboard. +func (mg *Dashboard) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Dashboard. diff --git a/apis/portal/v1beta1/zz_generated_terraformed.go b/apis/portal/v1beta1/zz_generated_terraformed.go index 562e38c21..eb43d32a1 100755 --- a/apis/portal/v1beta1/zz_generated_terraformed.go +++ b/apis/portal/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Dashboard) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Dashboard +func (tr *Dashboard) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Dashboard using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Dashboard) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/powerbidedicated/v1beta1/zz_generated.deepcopy.go b/apis/powerbidedicated/v1beta1/zz_generated.deepcopy.go index ae5ac3184..65dc3d84f 100644 --- a/apis/powerbidedicated/v1beta1/zz_generated.deepcopy.go +++ b/apis/powerbidedicated/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,62 @@ func (in *PowerBIEmbedded) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PowerBIEmbeddedInitParameters) DeepCopyInto(out *PowerBIEmbeddedInitParameters) { + *out = *in + if in.Administrators != nil { + in, out := &in.Administrators, &out.Administrators + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PowerBIEmbeddedInitParameters. +func (in *PowerBIEmbeddedInitParameters) DeepCopy() *PowerBIEmbeddedInitParameters { + if in == nil { + return nil + } + out := new(PowerBIEmbeddedInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PowerBIEmbeddedList) DeepCopyInto(out *PowerBIEmbeddedList) { *out = *in @@ -215,6 +271,7 @@ func (in *PowerBIEmbeddedSpec) DeepCopyInto(out *PowerBIEmbeddedSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PowerBIEmbeddedSpec. diff --git a/apis/powerbidedicated/v1beta1/zz_generated.managed.go b/apis/powerbidedicated/v1beta1/zz_generated.managed.go index 381d15f09..83d3f0d43 100644 --- a/apis/powerbidedicated/v1beta1/zz_generated.managed.go +++ b/apis/powerbidedicated/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *PowerBIEmbedded) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PowerBIEmbedded. -func (mg *PowerBIEmbedded) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PowerBIEmbedded. +func (mg *PowerBIEmbedded) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PowerBIEmbedded. @@ -55,9 +55,9 @@ func (mg *PowerBIEmbedded) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PowerBIEmbedded. -func (mg *PowerBIEmbedded) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PowerBIEmbedded. +func (mg *PowerBIEmbedded) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PowerBIEmbedded. diff --git a/apis/powerbidedicated/v1beta1/zz_generated_terraformed.go b/apis/powerbidedicated/v1beta1/zz_generated_terraformed.go index e717a24b3..2ae79e6d3 100755 --- a/apis/powerbidedicated/v1beta1/zz_generated_terraformed.go +++ b/apis/powerbidedicated/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *PowerBIEmbedded) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PowerBIEmbedded +func (tr *PowerBIEmbedded) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PowerBIEmbedded using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PowerBIEmbedded) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/powerbidedicated/v1beta1/zz_powerbiembedded_types.go b/apis/powerbidedicated/v1beta1/zz_powerbiembedded_types.go index d25674893..fa3a113d7 100755 --- a/apis/powerbidedicated/v1beta1/zz_powerbiembedded_types.go +++ b/apis/powerbidedicated/v1beta1/zz_powerbiembedded_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PowerBIEmbeddedInitParameters struct { + + // A set of administrator user identities, which manages the Power BI Embedded and must be a member user or a service principal in your AAD tenant. + Administrators []*string `json:"administrators,omitempty" tf:"administrators,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Sets the PowerBI Embedded's mode. Possible values include: Gen1, Gen2. Defaults to Gen1. Changing this forces a new resource to be created. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` + + // Sets the PowerBI Embedded's pricing level's SKU. Possible values include: A1, A2, A3, A4, A5, A6. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PowerBIEmbeddedObservation struct { // A set of administrator user identities, which manages the Power BI Embedded and must be a member user or a service principal in your AAD tenant. @@ -77,6 +95,18 @@ type PowerBIEmbeddedParameters struct { type PowerBIEmbeddedSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PowerBIEmbeddedParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PowerBIEmbeddedInitParameters `json:"initProvider,omitempty"` } // PowerBIEmbeddedStatus defines the observed state of PowerBIEmbedded. @@ -97,9 +127,9 @@ type PowerBIEmbeddedStatus struct { type PowerBIEmbedded struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.administrators)",message="administrators is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.administrators) || has(self.initProvider.administrators)",message="administrators is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec PowerBIEmbeddedSpec `json:"spec"` Status PowerBIEmbeddedStatus `json:"status,omitempty"` } diff --git a/apis/purview/v1beta1/zz_account_types.go b/apis/purview/v1beta1/zz_account_types.go index 65ed3bb14..9c1cd7069 100755 --- a/apis/purview/v1beta1/zz_account_types.go +++ b/apis/purview/v1beta1/zz_account_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccountInitParameters struct { + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Purview Account should exist. Changing this forces a new Purview Account to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Should the Purview Account be visible to the public network? Defaults to true. + PublicNetworkEnabled *bool `json:"publicNetworkEnabled,omitempty" tf:"public_network_enabled,omitempty"` + + // A mapping of tags which should be assigned to the Purview Account. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type AccountObservation struct { // Catalog endpoint. @@ -94,6 +109,15 @@ type AccountParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Purview Account. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Purview Account. Possible values are UserAssigned and SystemAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Purview Account. @@ -116,8 +140,11 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Purview Account. Possible values are UserAssigned and SystemAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ManagedResourcesInitParameters struct { } type ManagedResourcesObservation struct { @@ -139,6 +166,18 @@ type ManagedResourcesParameters struct { type AccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccountInitParameters `json:"initProvider,omitempty"` } // AccountStatus defines the observed state of Account. @@ -159,8 +198,8 @@ type AccountStatus struct { type Account struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.identity)",message="identity is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.identity) || has(self.initProvider.identity)",message="identity is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec AccountSpec `json:"spec"` Status AccountStatus `json:"status,omitempty"` } diff --git a/apis/purview/v1beta1/zz_generated.deepcopy.go b/apis/purview/v1beta1/zz_generated.deepcopy.go index 1001602a7..4e537a062 100644 --- a/apis/purview/v1beta1/zz_generated.deepcopy.go +++ b/apis/purview/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,53 @@ func (in *Account) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountInitParameters) DeepCopyInto(out *AccountInitParameters) { + *out = *in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PublicNetworkEnabled != nil { + in, out := &in.PublicNetworkEnabled, &out.PublicNetworkEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountInitParameters. +func (in *AccountInitParameters) DeepCopy() *AccountInitParameters { + if in == nil { + return nil + } + out := new(AccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountList) DeepCopyInto(out *AccountList) { *out = *in @@ -239,6 +286,7 @@ func (in *AccountSpec) DeepCopyInto(out *AccountSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountSpec. @@ -268,6 +316,37 @@ func (in *AccountStatus) DeepCopy() *AccountStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -340,6 +419,21 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedResourcesInitParameters) DeepCopyInto(out *ManagedResourcesInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedResourcesInitParameters. +func (in *ManagedResourcesInitParameters) DeepCopy() *ManagedResourcesInitParameters { + if in == nil { + return nil + } + out := new(ManagedResourcesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedResourcesObservation) DeepCopyInto(out *ManagedResourcesObservation) { *out = *in diff --git a/apis/purview/v1beta1/zz_generated.managed.go b/apis/purview/v1beta1/zz_generated.managed.go index 2e1546880..353e547e7 100644 --- a/apis/purview/v1beta1/zz_generated.managed.go +++ b/apis/purview/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Account) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Account. -func (mg *Account) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Account. +func (mg *Account) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Account. @@ -55,9 +55,9 @@ func (mg *Account) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Account. -func (mg *Account) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Account. +func (mg *Account) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Account. diff --git a/apis/purview/v1beta1/zz_generated_terraformed.go b/apis/purview/v1beta1/zz_generated_terraformed.go index 790aa2233..24886c77d 100755 --- a/apis/purview/v1beta1/zz_generated_terraformed.go +++ b/apis/purview/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Account) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Account +func (tr *Account) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Account using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Account) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/recoveryservices/v1beta1/zz_backupcontainerstorageaccount_types.go b/apis/recoveryservices/v1beta1/zz_backupcontainerstorageaccount_types.go index 6ece6c16a..90de193e4 100755 --- a/apis/recoveryservices/v1beta1/zz_backupcontainerstorageaccount_types.go +++ b/apis/recoveryservices/v1beta1/zz_backupcontainerstorageaccount_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupContainerStorageAccountInitParameters struct { +} + type BackupContainerStorageAccountObservation struct { // The ID of the Backup Storage Account Container. @@ -75,6 +78,18 @@ type BackupContainerStorageAccountParameters struct { type BackupContainerStorageAccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupContainerStorageAccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupContainerStorageAccountInitParameters `json:"initProvider,omitempty"` } // BackupContainerStorageAccountStatus defines the observed state of BackupContainerStorageAccount. diff --git a/apis/recoveryservices/v1beta1/zz_backuppolicyfileshare_types.go b/apis/recoveryservices/v1beta1/zz_backuppolicyfileshare_types.go index 9bf9ee23a..b47383d65 100755 --- a/apis/recoveryservices/v1beta1/zz_backuppolicyfileshare_types.go +++ b/apis/recoveryservices/v1beta1/zz_backuppolicyfileshare_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupInitParameters struct { + + // Sets the backup frequency. Currently, only Daily is supported + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // The time of day to perform the backup in 24-hour format. Times must be either on the hour or half hour (e.g. 12:00, 12:30, 13:00, etc.) + Time *string `json:"time,omitempty" tf:"time,omitempty"` +} + type BackupObservation struct { // Sets the backup frequency. Currently, only Daily is supported @@ -25,12 +34,33 @@ type BackupObservation struct { type BackupParameters struct { // Sets the backup frequency. Currently, only Daily is supported - // +kubebuilder:validation:Required - Frequency *string `json:"frequency" tf:"frequency,omitempty"` + // +kubebuilder:validation:Optional + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // The time of day to perform the backup in 24-hour format. Times must be either on the hour or half hour (e.g. 12:00, 12:30, 13:00, etc.) - // +kubebuilder:validation:Required - Time *string `json:"time" tf:"time,omitempty"` + // +kubebuilder:validation:Optional + Time *string `json:"time,omitempty" tf:"time,omitempty"` +} + +type BackupPolicyFileShareInitParameters struct { + + // Configures the Policy backup frequency and times as documented in the backup block below. + Backup []BackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // Configures the policy daily retention as documented in the retention_daily block below. + RetentionDaily []RetentionDailyInitParameters `json:"retentionDaily,omitempty" tf:"retention_daily,omitempty"` + + // Configures the policy monthly retention as documented in the retention_monthly block below. + RetentionMonthly []RetentionMonthlyInitParameters `json:"retentionMonthly,omitempty" tf:"retention_monthly,omitempty"` + + // Configures the policy weekly retention as documented in the retention_weekly block below. + RetentionWeekly []RetentionWeeklyInitParameters `json:"retentionWeekly,omitempty" tf:"retention_weekly,omitempty"` + + // Configures the policy yearly retention as documented in the retention_yearly block below. + RetentionYearly []RetentionYearlyInitParameters `json:"retentionYearly,omitempty" tf:"retention_yearly,omitempty"` + + // Specifies the timezone. the possible values are defined here. Defaults to UTC + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } type BackupPolicyFileShareObservation struct { @@ -116,6 +146,12 @@ type BackupPolicyFileShareParameters struct { Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } +type RetentionDailyInitParameters struct { + + // The number of daily backups to keep. Must be between 1 and 200 (inclusive) + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` +} + type RetentionDailyObservation struct { // The number of daily backups to keep. Must be between 1 and 200 (inclusive) @@ -125,8 +161,20 @@ type RetentionDailyObservation struct { type RetentionDailyParameters struct { // The number of daily backups to keep. Must be between 1 and 200 (inclusive) - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` +} + +type RetentionMonthlyInitParameters struct { + + // The number of monthly backups to keep. Must be between 1 and 120 + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` + + // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. + Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } type RetentionMonthlyObservation struct { @@ -144,16 +192,25 @@ type RetentionMonthlyObservation struct { type RetentionMonthlyParameters struct { // The number of monthly backups to keep. Must be between 1 and 120 - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. - // +kubebuilder:validation:Required - Weekdays []*string `json:"weekdays" tf:"weekdays,omitempty"` + // +kubebuilder:validation:Optional + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. - // +kubebuilder:validation:Required - Weeks []*string `json:"weeks" tf:"weeks,omitempty"` + // +kubebuilder:validation:Optional + Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` +} + +type RetentionWeeklyInitParameters struct { + + // The number of daily backups to keep. Must be between 1 and 200 (inclusive) + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The weekday backups to retain. Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` } type RetentionWeeklyObservation struct { @@ -168,12 +225,27 @@ type RetentionWeeklyObservation struct { type RetentionWeeklyParameters struct { // The number of daily backups to keep. Must be between 1 and 200 (inclusive) - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The weekday backups to retain. Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. - // +kubebuilder:validation:Required - Weekdays []*string `json:"weekdays" tf:"weekdays,omitempty"` + // +kubebuilder:validation:Optional + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` +} + +type RetentionYearlyInitParameters struct { + + // The number of yearly backups to keep. Must be between 1 and 10 + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The months of the year to retain backups of. Must be one of January, February, March, April, May, June, July, Augest, September, October, November and December. + Months []*string `json:"months,omitempty" tf:"months,omitempty"` + + // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` + + // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. + Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } type RetentionYearlyObservation struct { @@ -194,26 +266,38 @@ type RetentionYearlyObservation struct { type RetentionYearlyParameters struct { // The number of yearly backups to keep. Must be between 1 and 10 - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The months of the year to retain backups of. Must be one of January, February, March, April, May, June, July, Augest, September, October, November and December. - // +kubebuilder:validation:Required - Months []*string `json:"months" tf:"months,omitempty"` + // +kubebuilder:validation:Optional + Months []*string `json:"months,omitempty" tf:"months,omitempty"` // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. - // +kubebuilder:validation:Required - Weekdays []*string `json:"weekdays" tf:"weekdays,omitempty"` + // +kubebuilder:validation:Optional + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. - // +kubebuilder:validation:Required - Weeks []*string `json:"weeks" tf:"weeks,omitempty"` + // +kubebuilder:validation:Optional + Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } // BackupPolicyFileShareSpec defines the desired state of BackupPolicyFileShare type BackupPolicyFileShareSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupPolicyFileShareParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupPolicyFileShareInitParameters `json:"initProvider,omitempty"` } // BackupPolicyFileShareStatus defines the observed state of BackupPolicyFileShare. @@ -234,8 +318,8 @@ type BackupPolicyFileShareStatus struct { type BackupPolicyFileShare struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backup)",message="backup is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.retentionDaily)",message="retentionDaily is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backup) || has(self.initProvider.backup)",message="backup is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.retentionDaily) || has(self.initProvider.retentionDaily)",message="retentionDaily is a required parameter" Spec BackupPolicyFileShareSpec `json:"spec"` Status BackupPolicyFileShareStatus `json:"status,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_backuppolicyvm_types.go b/apis/recoveryservices/v1beta1/zz_backuppolicyvm_types.go index 8bf343ba6..5e6f0aec6 100755 --- a/apis/recoveryservices/v1beta1/zz_backuppolicyvm_types.go +++ b/apis/recoveryservices/v1beta1/zz_backuppolicyvm_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupPolicyVMBackupInitParameters struct { + + // Sets the backup frequency. Possible values are Hourly, Daily and Weekly. + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // Duration of the backup window in hours. Possible values are between 4 and 24 This is used when frequency is Hourly. + HourDuration *float64 `json:"hourDuration,omitempty" tf:"hour_duration,omitempty"` + + // Interval in hour at which backup is triggered. Possible values are 4, 6, 8 and 12. This is used when frequency is Hourly. + HourInterval *float64 `json:"hourInterval,omitempty" tf:"hour_interval,omitempty"` + + // The time of day to perform the backup in 24hour format. + Time *string `json:"time,omitempty" tf:"time,omitempty"` + + // The days of the week to perform backups on. Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. This is used when frequency is Weekly. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` +} + type BackupPolicyVMBackupObservation struct { // Sets the backup frequency. Possible values are Hourly, Daily and Weekly. @@ -34,8 +52,8 @@ type BackupPolicyVMBackupObservation struct { type BackupPolicyVMBackupParameters struct { // Sets the backup frequency. Possible values are Hourly, Daily and Weekly. - // +kubebuilder:validation:Required - Frequency *string `json:"frequency" tf:"frequency,omitempty"` + // +kubebuilder:validation:Optional + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // Duration of the backup window in hours. Possible values are between 4 and 24 This is used when frequency is Hourly. // +kubebuilder:validation:Optional @@ -46,14 +64,44 @@ type BackupPolicyVMBackupParameters struct { HourInterval *float64 `json:"hourInterval,omitempty" tf:"hour_interval,omitempty"` // The time of day to perform the backup in 24hour format. - // +kubebuilder:validation:Required - Time *string `json:"time" tf:"time,omitempty"` + // +kubebuilder:validation:Optional + Time *string `json:"time,omitempty" tf:"time,omitempty"` // The days of the week to perform backups on. Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. This is used when frequency is Weekly. // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` } +type BackupPolicyVMInitParameters struct { + + // Configures the Policy backup frequency, times & days as documented in the backup block below. + Backup []BackupPolicyVMBackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // Specifies the instant restore resource group name as documented in the instant_restore_resource_group block below. + InstantRestoreResourceGroup []InstantRestoreResourceGroupInitParameters `json:"instantRestoreResourceGroup,omitempty" tf:"instant_restore_resource_group,omitempty"` + + // Specifies the instant restore retention range in days. Possible values are between 1 and 5 when policy_type is V1, and 1 to 30 when policy_type is V2. + InstantRestoreRetentionDays *float64 `json:"instantRestoreRetentionDays,omitempty" tf:"instant_restore_retention_days,omitempty"` + + // Type of the Backup Policy. Possible values are V1 and V2 where V2 stands for the Enhanced Policy. Defaults to V1. Changing this forces a new resource to be created. + PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` + + // Configures the policy daily retention as documented in the retention_daily block below. Required when backup frequency is Daily. + RetentionDaily []BackupPolicyVMRetentionDailyInitParameters `json:"retentionDaily,omitempty" tf:"retention_daily,omitempty"` + + // Configures the policy monthly retention as documented in the retention_monthly block below. + RetentionMonthly []BackupPolicyVMRetentionMonthlyInitParameters `json:"retentionMonthly,omitempty" tf:"retention_monthly,omitempty"` + + // Configures the policy weekly retention as documented in the retention_weekly block below. Required when backup frequency is Weekly. + RetentionWeekly []BackupPolicyVMRetentionWeeklyInitParameters `json:"retentionWeekly,omitempty" tf:"retention_weekly,omitempty"` + + // Configures the policy yearly retention as documented in the retention_yearly block below. + RetentionYearly []BackupPolicyVMRetentionYearlyInitParameters `json:"retentionYearly,omitempty" tf:"retention_yearly,omitempty"` + + // Specifies the timezone. the possible values are defined here. Defaults to UTC + Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` +} + type BackupPolicyVMObservation struct { // Configures the Policy backup frequency, times & days as documented in the backup block below. @@ -158,6 +206,12 @@ type BackupPolicyVMParameters struct { Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } +type BackupPolicyVMRetentionDailyInitParameters struct { + + // The number of daily backups to keep. Must be between 7 and 9999. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` +} + type BackupPolicyVMRetentionDailyObservation struct { // The number of daily backups to keep. Must be between 7 and 9999. @@ -167,8 +221,20 @@ type BackupPolicyVMRetentionDailyObservation struct { type BackupPolicyVMRetentionDailyParameters struct { // The number of daily backups to keep. Must be between 7 and 9999. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` +} + +type BackupPolicyVMRetentionMonthlyInitParameters struct { + + // The number of monthly backups to keep. Must be between 1 and 9999 + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` + + // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. + Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } type BackupPolicyVMRetentionMonthlyObservation struct { @@ -186,16 +252,25 @@ type BackupPolicyVMRetentionMonthlyObservation struct { type BackupPolicyVMRetentionMonthlyParameters struct { // The number of monthly backups to keep. Must be between 1 and 9999 - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. - // +kubebuilder:validation:Required - Weekdays []*string `json:"weekdays" tf:"weekdays,omitempty"` + // +kubebuilder:validation:Optional + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. - // +kubebuilder:validation:Required - Weeks []*string `json:"weeks" tf:"weeks,omitempty"` + // +kubebuilder:validation:Optional + Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` +} + +type BackupPolicyVMRetentionWeeklyInitParameters struct { + + // The number of weekly backups to keep. Must be between 1 and 9999 + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The weekday backups to retain. Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` } type BackupPolicyVMRetentionWeeklyObservation struct { @@ -210,12 +285,27 @@ type BackupPolicyVMRetentionWeeklyObservation struct { type BackupPolicyVMRetentionWeeklyParameters struct { // The number of weekly backups to keep. Must be between 1 and 9999 - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The weekday backups to retain. Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. - // +kubebuilder:validation:Required - Weekdays []*string `json:"weekdays" tf:"weekdays,omitempty"` + // +kubebuilder:validation:Optional + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` +} + +type BackupPolicyVMRetentionYearlyInitParameters struct { + + // The number of yearly backups to keep. Must be between 1 and 9999 + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The months of the year to retain backups of. Must be one of January, February, March, April, May, June, July, August, September, October, November and December. + Months []*string `json:"months,omitempty" tf:"months,omitempty"` + + // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` + + // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. + Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } type BackupPolicyVMRetentionYearlyObservation struct { @@ -236,20 +326,29 @@ type BackupPolicyVMRetentionYearlyObservation struct { type BackupPolicyVMRetentionYearlyParameters struct { // The number of yearly backups to keep. Must be between 1 and 9999 - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The months of the year to retain backups of. Must be one of January, February, March, April, May, June, July, August, September, October, November and December. - // +kubebuilder:validation:Required - Months []*string `json:"months" tf:"months,omitempty"` + // +kubebuilder:validation:Optional + Months []*string `json:"months,omitempty" tf:"months,omitempty"` // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. - // +kubebuilder:validation:Required - Weekdays []*string `json:"weekdays" tf:"weekdays,omitempty"` + // +kubebuilder:validation:Optional + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. - // +kubebuilder:validation:Required - Weeks []*string `json:"weeks" tf:"weeks,omitempty"` + // +kubebuilder:validation:Optional + Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` +} + +type InstantRestoreResourceGroupInitParameters struct { + + // The prefix for the instant_restore_resource_group name. + Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` + + // The suffix for the instant_restore_resource_group name. + Suffix *string `json:"suffix,omitempty" tf:"suffix,omitempty"` } type InstantRestoreResourceGroupObservation struct { @@ -264,8 +363,8 @@ type InstantRestoreResourceGroupObservation struct { type InstantRestoreResourceGroupParameters struct { // The prefix for the instant_restore_resource_group name. - // +kubebuilder:validation:Required - Prefix *string `json:"prefix" tf:"prefix,omitempty"` + // +kubebuilder:validation:Optional + Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` // The suffix for the instant_restore_resource_group name. // +kubebuilder:validation:Optional @@ -276,6 +375,18 @@ type InstantRestoreResourceGroupParameters struct { type BackupPolicyVMSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupPolicyVMParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupPolicyVMInitParameters `json:"initProvider,omitempty"` } // BackupPolicyVMStatus defines the observed state of BackupPolicyVM. @@ -296,7 +407,7 @@ type BackupPolicyVMStatus struct { type BackupPolicyVM struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backup)",message="backup is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backup) || has(self.initProvider.backup)",message="backup is a required parameter" Spec BackupPolicyVMSpec `json:"spec"` Status BackupPolicyVMStatus `json:"status,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_backuppolicyvmworkload_types.go b/apis/recoveryservices/v1beta1/zz_backuppolicyvmworkload_types.go index ee9e09ddb..3ae0ec928 100755 --- a/apis/recoveryservices/v1beta1/zz_backuppolicyvmworkload_types.go +++ b/apis/recoveryservices/v1beta1/zz_backuppolicyvmworkload_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupPolicyVMWorkloadInitParameters struct { + + // One or more protection_policy blocks as defined below. + ProtectionPolicy []ProtectionPolicyInitParameters `json:"protectionPolicy,omitempty" tf:"protection_policy,omitempty"` + + // A settings block as defined below. + Settings []SettingsInitParameters `json:"settings,omitempty" tf:"settings,omitempty"` + + // The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created. + WorkloadType *string `json:"workloadType,omitempty" tf:"workload_type,omitempty"` +} + type BackupPolicyVMWorkloadObservation struct { // The ID of the Azure VM Workload Backup Policy. @@ -75,6 +87,21 @@ type BackupPolicyVMWorkloadParameters struct { WorkloadType *string `json:"workloadType,omitempty" tf:"workload_type,omitempty"` } +type ProtectionPolicyBackupInitParameters struct { + + // The backup frequency for the VM Workload Backup Policy. Possible values are Daily and Weekly. + Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` + + // The backup frequency in minutes for the VM Workload Backup Policy. Possible values are 15, 30, 60, 120, 240, 480, 720 and 1440. + FrequencyInMinutes *float64 `json:"frequencyInMinutes,omitempty" tf:"frequency_in_minutes,omitempty"` + + // The time of day to perform the backup in 24hour format. + Time *string `json:"time,omitempty" tf:"time,omitempty"` + + // The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` +} + type ProtectionPolicyBackupObservation struct { // The backup frequency for the VM Workload Backup Policy. Possible values are Daily and Weekly. @@ -109,6 +136,30 @@ type ProtectionPolicyBackupParameters struct { Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` } +type ProtectionPolicyInitParameters struct { + + // A backup block as defined below. + Backup []ProtectionPolicyBackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // The type of the VM Workload Backup Policy. Possible values are Differential, Full, Incremental and Log. + PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` + + // A retention_daily block as defined below. + RetentionDaily []ProtectionPolicyRetentionDailyInitParameters `json:"retentionDaily,omitempty" tf:"retention_daily,omitempty"` + + // A retention_monthly block as defined below. + RetentionMonthly []ProtectionPolicyRetentionMonthlyInitParameters `json:"retentionMonthly,omitempty" tf:"retention_monthly,omitempty"` + + // A retention_weekly block as defined below. + RetentionWeekly []ProtectionPolicyRetentionWeeklyInitParameters `json:"retentionWeekly,omitempty" tf:"retention_weekly,omitempty"` + + // A retention_yearly block as defined below. + RetentionYearly []ProtectionPolicyRetentionYearlyInitParameters `json:"retentionYearly,omitempty" tf:"retention_yearly,omitempty"` + + // A simple_retention block as defined below. + SimpleRetention []SimpleRetentionInitParameters `json:"simpleRetention,omitempty" tf:"simple_retention,omitempty"` +} + type ProtectionPolicyObservation struct { // A backup block as defined below. @@ -136,12 +187,12 @@ type ProtectionPolicyObservation struct { type ProtectionPolicyParameters struct { // A backup block as defined below. - // +kubebuilder:validation:Required - Backup []ProtectionPolicyBackupParameters `json:"backup" tf:"backup,omitempty"` + // +kubebuilder:validation:Optional + Backup []ProtectionPolicyBackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // The type of the VM Workload Backup Policy. Possible values are Differential, Full, Incremental and Log. - // +kubebuilder:validation:Required - PolicyType *string `json:"policyType" tf:"policy_type,omitempty"` + // +kubebuilder:validation:Optional + PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` // A retention_daily block as defined below. // +kubebuilder:validation:Optional @@ -164,6 +215,12 @@ type ProtectionPolicyParameters struct { SimpleRetention []SimpleRetentionParameters `json:"simpleRetention,omitempty" tf:"simple_retention,omitempty"` } +type ProtectionPolicyRetentionDailyInitParameters struct { + + // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` +} + type ProtectionPolicyRetentionDailyObservation struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. @@ -173,8 +230,26 @@ type ProtectionPolicyRetentionDailyObservation struct { type ProtectionPolicyRetentionDailyParameters struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` +} + +type ProtectionPolicyRetentionMonthlyInitParameters struct { + + // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly. + FormatType *string `json:"formatType,omitempty" tf:"format_type,omitempty"` + + // The monthday backups to retain. Possible values are between 0 and 28. + Monthdays []*float64 `json:"monthdays,omitempty" tf:"monthdays,omitempty"` + + // The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` + + // The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth, Last. + Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } type ProtectionPolicyRetentionMonthlyObservation struct { @@ -198,12 +273,12 @@ type ProtectionPolicyRetentionMonthlyObservation struct { type ProtectionPolicyRetentionMonthlyParameters struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly. - // +kubebuilder:validation:Required - FormatType *string `json:"formatType" tf:"format_type,omitempty"` + // +kubebuilder:validation:Optional + FormatType *string `json:"formatType,omitempty" tf:"format_type,omitempty"` // The monthday backups to retain. Possible values are between 0 and 28. // +kubebuilder:validation:Optional @@ -218,6 +293,15 @@ type ProtectionPolicyRetentionMonthlyParameters struct { Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } +type ProtectionPolicyRetentionWeeklyInitParameters struct { + + // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` +} + type ProtectionPolicyRetentionWeeklyObservation struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. @@ -230,12 +314,33 @@ type ProtectionPolicyRetentionWeeklyObservation struct { type ProtectionPolicyRetentionWeeklyParameters struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. - // +kubebuilder:validation:Required - Weekdays []*string `json:"weekdays" tf:"weekdays,omitempty"` + // +kubebuilder:validation:Optional + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` +} + +type ProtectionPolicyRetentionYearlyInitParameters struct { + + // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly. + FormatType *string `json:"formatType,omitempty" tf:"format_type,omitempty"` + + // The monthday backups to retain. Possible values are between 0 and 28. + Monthdays []*float64 `json:"monthdays,omitempty" tf:"monthdays,omitempty"` + + // The months of the year to retain backups of. Possible values are January, February, March, April, May, June, July, August, September, October, November and December. + Months []*string `json:"months,omitempty" tf:"months,omitempty"` + + // The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` + + // The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth, Last. + Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } type ProtectionPolicyRetentionYearlyObservation struct { @@ -262,20 +367,20 @@ type ProtectionPolicyRetentionYearlyObservation struct { type ProtectionPolicyRetentionYearlyParameters struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly. - // +kubebuilder:validation:Required - FormatType *string `json:"formatType" tf:"format_type,omitempty"` + // +kubebuilder:validation:Optional + FormatType *string `json:"formatType,omitempty" tf:"format_type,omitempty"` // The monthday backups to retain. Possible values are between 0 and 28. // +kubebuilder:validation:Optional Monthdays []*float64 `json:"monthdays,omitempty" tf:"monthdays,omitempty"` // The months of the year to retain backups of. Possible values are January, February, March, April, May, June, July, August, September, October, November and December. - // +kubebuilder:validation:Required - Months []*string `json:"months" tf:"months,omitempty"` + // +kubebuilder:validation:Optional + Months []*string `json:"months,omitempty" tf:"months,omitempty"` // The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. // +kubebuilder:validation:Optional @@ -286,6 +391,15 @@ type ProtectionPolicyRetentionYearlyParameters struct { Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } +type SettingsInitParameters struct { + + // The compression setting for the VM Workload Backup Policy. Defaults to false. + CompressionEnabled *bool `json:"compressionEnabled,omitempty" tf:"compression_enabled,omitempty"` + + // The timezone for the VM Workload Backup Policy. The possible values are defined here. + TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` +} + type SettingsObservation struct { // The compression setting for the VM Workload Backup Policy. Defaults to false. @@ -302,8 +416,14 @@ type SettingsParameters struct { CompressionEnabled *bool `json:"compressionEnabled,omitempty" tf:"compression_enabled,omitempty"` // The timezone for the VM Workload Backup Policy. The possible values are defined here. - // +kubebuilder:validation:Required - TimeZone *string `json:"timeZone" tf:"time_zone,omitempty"` + // +kubebuilder:validation:Optional + TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` +} + +type SimpleRetentionInitParameters struct { + + // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` } type SimpleRetentionObservation struct { @@ -315,14 +435,26 @@ type SimpleRetentionObservation struct { type SimpleRetentionParameters struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` } // BackupPolicyVMWorkloadSpec defines the desired state of BackupPolicyVMWorkload type BackupPolicyVMWorkloadSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupPolicyVMWorkloadParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupPolicyVMWorkloadInitParameters `json:"initProvider,omitempty"` } // BackupPolicyVMWorkloadStatus defines the observed state of BackupPolicyVMWorkload. @@ -343,9 +475,9 @@ type BackupPolicyVMWorkloadStatus struct { type BackupPolicyVMWorkload struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protectionPolicy)",message="protectionPolicy is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.settings)",message="settings is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.workloadType)",message="workloadType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.protectionPolicy) || has(self.initProvider.protectionPolicy)",message="protectionPolicy is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.settings) || has(self.initProvider.settings)",message="settings is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.workloadType) || has(self.initProvider.workloadType)",message="workloadType is a required parameter" Spec BackupPolicyVMWorkloadSpec `json:"spec"` Status BackupPolicyVMWorkloadStatus `json:"status,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_backupprotectedfileshare_types.go b/apis/recoveryservices/v1beta1/zz_backupprotectedfileshare_types.go index 28fd98221..6230d24a3 100755 --- a/apis/recoveryservices/v1beta1/zz_backupprotectedfileshare_types.go +++ b/apis/recoveryservices/v1beta1/zz_backupprotectedfileshare_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupProtectedFileShareInitParameters struct { +} + type BackupProtectedFileShareObservation struct { // Specifies the ID of the backup policy to use. The policy must be an Azure File Share backup policy. Other types are not supported. @@ -108,6 +111,18 @@ type BackupProtectedFileShareParameters struct { type BackupProtectedFileShareSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupProtectedFileShareParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupProtectedFileShareInitParameters `json:"initProvider,omitempty"` } // BackupProtectedFileShareStatus defines the observed state of BackupProtectedFileShare. diff --git a/apis/recoveryservices/v1beta1/zz_backupprotectedvm_types.go b/apis/recoveryservices/v1beta1/zz_backupprotectedvm_types.go index 1ef5d0957..90ea8b47d 100755 --- a/apis/recoveryservices/v1beta1/zz_backupprotectedvm_types.go +++ b/apis/recoveryservices/v1beta1/zz_backupprotectedvm_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BackupProtectedVMInitParameters struct { + + // A list of Disks' Logical Unit Numbers(LUN) to be excluded for VM Protection. + ExcludeDiskLuns []*float64 `json:"excludeDiskLuns,omitempty" tf:"exclude_disk_luns,omitempty"` + + // A list of Disks' Logical Unit Numbers(LUN) to be included for VM Protection. + IncludeDiskLuns []*float64 `json:"includeDiskLuns,omitempty" tf:"include_disk_luns,omitempty"` + + // Specifies the ID of the VM to backup. Changing this forces a new resource to be created. + SourceVMID *string `json:"sourceVmId,omitempty" tf:"source_vm_id,omitempty"` +} + type BackupProtectedVMObservation struct { // Specifies the id of the backup policy to use. @@ -96,6 +108,18 @@ type BackupProtectedVMParameters struct { type BackupProtectedVMSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BackupProtectedVMParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BackupProtectedVMInitParameters `json:"initProvider,omitempty"` } // BackupProtectedVMStatus defines the observed state of BackupProtectedVM. diff --git a/apis/recoveryservices/v1beta1/zz_generated.deepcopy.go b/apis/recoveryservices/v1beta1/zz_generated.deepcopy.go index 0ce62175d..ef7e41a71 100644 --- a/apis/recoveryservices/v1beta1/zz_generated.deepcopy.go +++ b/apis/recoveryservices/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,31 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutomaticUpdateInitParameters) DeepCopyInto(out *AutomaticUpdateInitParameters) { + *out = *in + if in.AutomationAccountID != nil { + in, out := &in.AutomationAccountID, &out.AutomationAccountID + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomaticUpdateInitParameters. +func (in *AutomaticUpdateInitParameters) DeepCopy() *AutomaticUpdateInitParameters { + if in == nil { + return nil + } + out := new(AutomaticUpdateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutomaticUpdateObservation) DeepCopyInto(out *AutomaticUpdateObservation) { *out = *in @@ -91,6 +116,21 @@ func (in *BackupContainerStorageAccount) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupContainerStorageAccountInitParameters) DeepCopyInto(out *BackupContainerStorageAccountInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupContainerStorageAccountInitParameters. +func (in *BackupContainerStorageAccountInitParameters) DeepCopy() *BackupContainerStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(BackupContainerStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupContainerStorageAccountList) DeepCopyInto(out *BackupContainerStorageAccountList) { *out = *in @@ -223,6 +263,7 @@ func (in *BackupContainerStorageAccountSpec) DeepCopyInto(out *BackupContainerSt *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupContainerStorageAccountSpec. @@ -252,6 +293,31 @@ func (in *BackupContainerStorageAccountStatus) DeepCopy() *BackupContainerStorag return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupInitParameters) DeepCopyInto(out *BackupInitParameters) { + *out = *in + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(string) + **out = **in + } + if in.Time != nil { + in, out := &in.Time, &out.Time + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupInitParameters. +func (in *BackupInitParameters) DeepCopy() *BackupInitParameters { + if in == nil { + return nil + } + out := new(BackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupObservation) DeepCopyInto(out *BackupObservation) { *out = *in @@ -329,6 +395,61 @@ func (in *BackupPolicyFileShare) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyFileShareInitParameters) DeepCopyInto(out *BackupPolicyFileShareInitParameters) { + *out = *in + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]BackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionDaily != nil { + in, out := &in.RetentionDaily, &out.RetentionDaily + *out = make([]RetentionDailyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionMonthly != nil { + in, out := &in.RetentionMonthly, &out.RetentionMonthly + *out = make([]RetentionMonthlyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionWeekly != nil { + in, out := &in.RetentionWeekly, &out.RetentionWeekly + *out = make([]RetentionWeeklyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionYearly != nil { + in, out := &in.RetentionYearly, &out.RetentionYearly + *out = make([]RetentionYearlyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyFileShareInitParameters. +func (in *BackupPolicyFileShareInitParameters) DeepCopy() *BackupPolicyFileShareInitParameters { + if in == nil { + return nil + } + out := new(BackupPolicyFileShareInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupPolicyFileShareList) DeepCopyInto(out *BackupPolicyFileShareList) { *out = *in @@ -521,6 +642,7 @@ func (in *BackupPolicyFileShareSpec) DeepCopyInto(out *BackupPolicyFileShareSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyFileShareSpec. @@ -577,6 +699,52 @@ func (in *BackupPolicyVM) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyVMBackupInitParameters) DeepCopyInto(out *BackupPolicyVMBackupInitParameters) { + *out = *in + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(string) + **out = **in + } + if in.HourDuration != nil { + in, out := &in.HourDuration, &out.HourDuration + *out = new(float64) + **out = **in + } + if in.HourInterval != nil { + in, out := &in.HourInterval, &out.HourInterval + *out = new(float64) + **out = **in + } + if in.Time != nil { + in, out := &in.Time, &out.Time + *out = new(string) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMBackupInitParameters. +func (in *BackupPolicyVMBackupInitParameters) DeepCopy() *BackupPolicyVMBackupInitParameters { + if in == nil { + return nil + } + out := new(BackupPolicyVMBackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupPolicyVMBackupObservation) DeepCopyInto(out *BackupPolicyVMBackupObservation) { *out = *in @@ -669,6 +837,78 @@ func (in *BackupPolicyVMBackupParameters) DeepCopy() *BackupPolicyVMBackupParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyVMInitParameters) DeepCopyInto(out *BackupPolicyVMInitParameters) { + *out = *in + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]BackupPolicyVMBackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InstantRestoreResourceGroup != nil { + in, out := &in.InstantRestoreResourceGroup, &out.InstantRestoreResourceGroup + *out = make([]InstantRestoreResourceGroupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InstantRestoreRetentionDays != nil { + in, out := &in.InstantRestoreRetentionDays, &out.InstantRestoreRetentionDays + *out = new(float64) + **out = **in + } + if in.PolicyType != nil { + in, out := &in.PolicyType, &out.PolicyType + *out = new(string) + **out = **in + } + if in.RetentionDaily != nil { + in, out := &in.RetentionDaily, &out.RetentionDaily + *out = make([]BackupPolicyVMRetentionDailyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionMonthly != nil { + in, out := &in.RetentionMonthly, &out.RetentionMonthly + *out = make([]BackupPolicyVMRetentionMonthlyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionWeekly != nil { + in, out := &in.RetentionWeekly, &out.RetentionWeekly + *out = make([]BackupPolicyVMRetentionWeeklyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionYearly != nil { + in, out := &in.RetentionYearly, &out.RetentionYearly + *out = make([]BackupPolicyVMRetentionYearlyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Timezone != nil { + in, out := &in.Timezone, &out.Timezone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMInitParameters. +func (in *BackupPolicyVMInitParameters) DeepCopy() *BackupPolicyVMInitParameters { + if in == nil { + return nil + } + out := new(BackupPolicyVMInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupPolicyVMList) DeepCopyInto(out *BackupPolicyVMList) { *out = *in @@ -890,6 +1130,26 @@ func (in *BackupPolicyVMParameters) DeepCopy() *BackupPolicyVMParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyVMRetentionDailyInitParameters) DeepCopyInto(out *BackupPolicyVMRetentionDailyInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionDailyInitParameters. +func (in *BackupPolicyVMRetentionDailyInitParameters) DeepCopy() *BackupPolicyVMRetentionDailyInitParameters { + if in == nil { + return nil + } + out := new(BackupPolicyVMRetentionDailyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupPolicyVMRetentionDailyObservation) DeepCopyInto(out *BackupPolicyVMRetentionDailyObservation) { *out = *in @@ -931,7 +1191,7 @@ func (in *BackupPolicyVMRetentionDailyParameters) DeepCopy() *BackupPolicyVMRete } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BackupPolicyVMRetentionMonthlyObservation) DeepCopyInto(out *BackupPolicyVMRetentionMonthlyObservation) { +func (in *BackupPolicyVMRetentionMonthlyInitParameters) DeepCopyInto(out *BackupPolicyVMRetentionMonthlyInitParameters) { *out = *in if in.Count != nil { in, out := &in.Count, &out.Count @@ -962,18 +1222,18 @@ func (in *BackupPolicyVMRetentionMonthlyObservation) DeepCopyInto(out *BackupPol } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionMonthlyObservation. -func (in *BackupPolicyVMRetentionMonthlyObservation) DeepCopy() *BackupPolicyVMRetentionMonthlyObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionMonthlyInitParameters. +func (in *BackupPolicyVMRetentionMonthlyInitParameters) DeepCopy() *BackupPolicyVMRetentionMonthlyInitParameters { if in == nil { return nil } - out := new(BackupPolicyVMRetentionMonthlyObservation) + out := new(BackupPolicyVMRetentionMonthlyInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BackupPolicyVMRetentionMonthlyParameters) DeepCopyInto(out *BackupPolicyVMRetentionMonthlyParameters) { +func (in *BackupPolicyVMRetentionMonthlyObservation) DeepCopyInto(out *BackupPolicyVMRetentionMonthlyObservation) { *out = *in if in.Count != nil { in, out := &in.Count, &out.Count @@ -1004,18 +1264,18 @@ func (in *BackupPolicyVMRetentionMonthlyParameters) DeepCopyInto(out *BackupPoli } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionMonthlyParameters. -func (in *BackupPolicyVMRetentionMonthlyParameters) DeepCopy() *BackupPolicyVMRetentionMonthlyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionMonthlyObservation. +func (in *BackupPolicyVMRetentionMonthlyObservation) DeepCopy() *BackupPolicyVMRetentionMonthlyObservation { if in == nil { return nil } - out := new(BackupPolicyVMRetentionMonthlyParameters) + out := new(BackupPolicyVMRetentionMonthlyObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BackupPolicyVMRetentionWeeklyObservation) DeepCopyInto(out *BackupPolicyVMRetentionWeeklyObservation) { +func (in *BackupPolicyVMRetentionMonthlyParameters) DeepCopyInto(out *BackupPolicyVMRetentionMonthlyParameters) { *out = *in if in.Count != nil { in, out := &in.Count, &out.Count @@ -1033,20 +1293,31 @@ func (in *BackupPolicyVMRetentionWeeklyObservation) DeepCopyInto(out *BackupPoli } } } + if in.Weeks != nil { + in, out := &in.Weeks, &out.Weeks + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionWeeklyObservation. -func (in *BackupPolicyVMRetentionWeeklyObservation) DeepCopy() *BackupPolicyVMRetentionWeeklyObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionMonthlyParameters. +func (in *BackupPolicyVMRetentionMonthlyParameters) DeepCopy() *BackupPolicyVMRetentionMonthlyParameters { if in == nil { return nil } - out := new(BackupPolicyVMRetentionWeeklyObservation) + out := new(BackupPolicyVMRetentionMonthlyParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BackupPolicyVMRetentionWeeklyParameters) DeepCopyInto(out *BackupPolicyVMRetentionWeeklyParameters) { +func (in *BackupPolicyVMRetentionWeeklyInitParameters) DeepCopyInto(out *BackupPolicyVMRetentionWeeklyInitParameters) { *out = *in if in.Count != nil { in, out := &in.Count, &out.Count @@ -1066,18 +1337,133 @@ func (in *BackupPolicyVMRetentionWeeklyParameters) DeepCopyInto(out *BackupPolic } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionWeeklyParameters. -func (in *BackupPolicyVMRetentionWeeklyParameters) DeepCopy() *BackupPolicyVMRetentionWeeklyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionWeeklyInitParameters. +func (in *BackupPolicyVMRetentionWeeklyInitParameters) DeepCopy() *BackupPolicyVMRetentionWeeklyInitParameters { if in == nil { return nil } - out := new(BackupPolicyVMRetentionWeeklyParameters) + out := new(BackupPolicyVMRetentionWeeklyInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *BackupPolicyVMRetentionYearlyObservation) DeepCopyInto(out *BackupPolicyVMRetentionYearlyObservation) { +func (in *BackupPolicyVMRetentionWeeklyObservation) DeepCopyInto(out *BackupPolicyVMRetentionWeeklyObservation) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionWeeklyObservation. +func (in *BackupPolicyVMRetentionWeeklyObservation) DeepCopy() *BackupPolicyVMRetentionWeeklyObservation { + if in == nil { + return nil + } + out := new(BackupPolicyVMRetentionWeeklyObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyVMRetentionWeeklyParameters) DeepCopyInto(out *BackupPolicyVMRetentionWeeklyParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionWeeklyParameters. +func (in *BackupPolicyVMRetentionWeeklyParameters) DeepCopy() *BackupPolicyVMRetentionWeeklyParameters { + if in == nil { + return nil + } + out := new(BackupPolicyVMRetentionWeeklyParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyVMRetentionYearlyInitParameters) DeepCopyInto(out *BackupPolicyVMRetentionYearlyInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Months != nil { + in, out := &in.Months, &out.Months + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Weeks != nil { + in, out := &in.Weeks, &out.Weeks + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMRetentionYearlyInitParameters. +func (in *BackupPolicyVMRetentionYearlyInitParameters) DeepCopy() *BackupPolicyVMRetentionYearlyInitParameters { + if in == nil { + return nil + } + out := new(BackupPolicyVMRetentionYearlyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyVMRetentionYearlyObservation) DeepCopyInto(out *BackupPolicyVMRetentionYearlyObservation) { *out = *in if in.Count != nil { in, out := &in.Count, &out.Count @@ -1187,6 +1573,7 @@ func (in *BackupPolicyVMSpec) DeepCopyInto(out *BackupPolicyVMSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMSpec. @@ -1243,6 +1630,40 @@ func (in *BackupPolicyVMWorkload) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupPolicyVMWorkloadInitParameters) DeepCopyInto(out *BackupPolicyVMWorkloadInitParameters) { + *out = *in + if in.ProtectionPolicy != nil { + in, out := &in.ProtectionPolicy, &out.ProtectionPolicy + *out = make([]ProtectionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Settings != nil { + in, out := &in.Settings, &out.Settings + *out = make([]SettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.WorkloadType != nil { + in, out := &in.WorkloadType, &out.WorkloadType + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMWorkloadInitParameters. +func (in *BackupPolicyVMWorkloadInitParameters) DeepCopy() *BackupPolicyVMWorkloadInitParameters { + if in == nil { + return nil + } + out := new(BackupPolicyVMWorkloadInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupPolicyVMWorkloadList) DeepCopyInto(out *BackupPolicyVMWorkloadList) { *out = *in @@ -1393,6 +1814,7 @@ func (in *BackupPolicyVMWorkloadSpec) DeepCopyInto(out *BackupPolicyVMWorkloadSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupPolicyVMWorkloadSpec. @@ -1449,6 +1871,21 @@ func (in *BackupProtectedFileShare) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupProtectedFileShareInitParameters) DeepCopyInto(out *BackupProtectedFileShareInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupProtectedFileShareInitParameters. +func (in *BackupProtectedFileShareInitParameters) DeepCopy() *BackupProtectedFileShareInitParameters { + if in == nil { + return nil + } + out := new(BackupProtectedFileShareInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupProtectedFileShareList) DeepCopyInto(out *BackupProtectedFileShareList) { *out = *in @@ -1621,6 +2058,7 @@ func (in *BackupProtectedFileShareSpec) DeepCopyInto(out *BackupProtectedFileSha *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupProtectedFileShareSpec. @@ -1677,6 +2115,48 @@ func (in *BackupProtectedVM) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupProtectedVMInitParameters) DeepCopyInto(out *BackupProtectedVMInitParameters) { + *out = *in + if in.ExcludeDiskLuns != nil { + in, out := &in.ExcludeDiskLuns, &out.ExcludeDiskLuns + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.IncludeDiskLuns != nil { + in, out := &in.IncludeDiskLuns, &out.IncludeDiskLuns + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.SourceVMID != nil { + in, out := &in.SourceVMID, &out.SourceVMID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupProtectedVMInitParameters. +func (in *BackupProtectedVMInitParameters) DeepCopy() *BackupProtectedVMInitParameters { + if in == nil { + return nil + } + out := new(BackupProtectedVMInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupProtectedVMList) DeepCopyInto(out *BackupProtectedVMList) { *out = *in @@ -1863,6 +2343,7 @@ func (in *BackupProtectedVMSpec) DeepCopyInto(out *BackupProtectedVMSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupProtectedVMSpec. @@ -1892,6 +2373,41 @@ func (in *BackupProtectedVMStatus) DeepCopy() *BackupProtectedVMStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncryptionInitParameters) DeepCopyInto(out *EncryptionInitParameters) { + *out = *in + if in.InfrastructureEncryptionEnabled != nil { + in, out := &in.InfrastructureEncryptionEnabled, &out.InfrastructureEncryptionEnabled + *out = new(bool) + **out = **in + } + if in.KeyID != nil { + in, out := &in.KeyID, &out.KeyID + *out = new(string) + **out = **in + } + if in.UseSystemAssignedIdentity != nil { + in, out := &in.UseSystemAssignedIdentity, &out.UseSystemAssignedIdentity + *out = new(bool) + **out = **in + } + if in.UserAssignedIdentityID != nil { + in, out := &in.UserAssignedIdentityID, &out.UserAssignedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionInitParameters. +func (in *EncryptionInitParameters) DeepCopy() *EncryptionInitParameters { + if in == nil { + return nil + } + out := new(EncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EncryptionObservation) DeepCopyInto(out *EncryptionObservation) { *out = *in @@ -1962,6 +2478,37 @@ func (in *EncryptionParameters) DeepCopy() *EncryptionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -2035,7 +2582,7 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InstantRestoreResourceGroupObservation) DeepCopyInto(out *InstantRestoreResourceGroupObservation) { +func (in *InstantRestoreResourceGroupInitParameters) DeepCopyInto(out *InstantRestoreResourceGroupInitParameters) { *out = *in if in.Prefix != nil { in, out := &in.Prefix, &out.Prefix @@ -2049,18 +2596,18 @@ func (in *InstantRestoreResourceGroupObservation) DeepCopyInto(out *InstantResto } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstantRestoreResourceGroupObservation. -func (in *InstantRestoreResourceGroupObservation) DeepCopy() *InstantRestoreResourceGroupObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstantRestoreResourceGroupInitParameters. +func (in *InstantRestoreResourceGroupInitParameters) DeepCopy() *InstantRestoreResourceGroupInitParameters { if in == nil { return nil } - out := new(InstantRestoreResourceGroupObservation) + out := new(InstantRestoreResourceGroupInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *InstantRestoreResourceGroupParameters) DeepCopyInto(out *InstantRestoreResourceGroupParameters) { +func (in *InstantRestoreResourceGroupObservation) DeepCopyInto(out *InstantRestoreResourceGroupObservation) { *out = *in if in.Prefix != nil { in, out := &in.Prefix, &out.Prefix @@ -2074,8 +2621,33 @@ func (in *InstantRestoreResourceGroupParameters) DeepCopyInto(out *InstantRestor } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstantRestoreResourceGroupParameters. -func (in *InstantRestoreResourceGroupParameters) DeepCopy() *InstantRestoreResourceGroupParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstantRestoreResourceGroupObservation. +func (in *InstantRestoreResourceGroupObservation) DeepCopy() *InstantRestoreResourceGroupObservation { + if in == nil { + return nil + } + out := new(InstantRestoreResourceGroupObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InstantRestoreResourceGroupParameters) DeepCopyInto(out *InstantRestoreResourceGroupParameters) { + *out = *in + if in.Prefix != nil { + in, out := &in.Prefix, &out.Prefix + *out = new(string) + **out = **in + } + if in.Suffix != nil { + in, out := &in.Suffix, &out.Suffix + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstantRestoreResourceGroupParameters. +func (in *InstantRestoreResourceGroupParameters) DeepCopy() *InstantRestoreResourceGroupParameters { if in == nil { return nil } @@ -2084,6 +2656,31 @@ func (in *InstantRestoreResourceGroupParameters) DeepCopy() *InstantRestoreResou return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MonitoringInitParameters) DeepCopyInto(out *MonitoringInitParameters) { + *out = *in + if in.AlertsForAllJobFailuresEnabled != nil { + in, out := &in.AlertsForAllJobFailuresEnabled, &out.AlertsForAllJobFailuresEnabled + *out = new(bool) + **out = **in + } + if in.AlertsForCriticalOperationFailuresEnabled != nil { + in, out := &in.AlertsForCriticalOperationFailuresEnabled, &out.AlertsForCriticalOperationFailuresEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoringInitParameters. +func (in *MonitoringInitParameters) DeepCopy() *MonitoringInitParameters { + if in == nil { + return nil + } + out := new(MonitoringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MonitoringObservation) DeepCopyInto(out *MonitoringObservation) { *out = *in @@ -2134,6 +2731,47 @@ func (in *MonitoringParameters) DeepCopy() *MonitoringParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProtectionPolicyBackupInitParameters) DeepCopyInto(out *ProtectionPolicyBackupInitParameters) { + *out = *in + if in.Frequency != nil { + in, out := &in.Frequency, &out.Frequency + *out = new(string) + **out = **in + } + if in.FrequencyInMinutes != nil { + in, out := &in.FrequencyInMinutes, &out.FrequencyInMinutes + *out = new(float64) + **out = **in + } + if in.Time != nil { + in, out := &in.Time, &out.Time + *out = new(string) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectionPolicyBackupInitParameters. +func (in *ProtectionPolicyBackupInitParameters) DeepCopy() *ProtectionPolicyBackupInitParameters { + if in == nil { + return nil + } + out := new(ProtectionPolicyBackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProtectionPolicyBackupObservation) DeepCopyInto(out *ProtectionPolicyBackupObservation) { *out = *in @@ -2216,6 +2854,68 @@ func (in *ProtectionPolicyBackupParameters) DeepCopy() *ProtectionPolicyBackupPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProtectionPolicyInitParameters) DeepCopyInto(out *ProtectionPolicyInitParameters) { + *out = *in + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]ProtectionPolicyBackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PolicyType != nil { + in, out := &in.PolicyType, &out.PolicyType + *out = new(string) + **out = **in + } + if in.RetentionDaily != nil { + in, out := &in.RetentionDaily, &out.RetentionDaily + *out = make([]ProtectionPolicyRetentionDailyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionMonthly != nil { + in, out := &in.RetentionMonthly, &out.RetentionMonthly + *out = make([]ProtectionPolicyRetentionMonthlyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionWeekly != nil { + in, out := &in.RetentionWeekly, &out.RetentionWeekly + *out = make([]ProtectionPolicyRetentionWeeklyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionYearly != nil { + in, out := &in.RetentionYearly, &out.RetentionYearly + *out = make([]ProtectionPolicyRetentionYearlyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SimpleRetention != nil { + in, out := &in.SimpleRetention, &out.SimpleRetention + *out = make([]SimpleRetentionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectionPolicyInitParameters. +func (in *ProtectionPolicyInitParameters) DeepCopy() *ProtectionPolicyInitParameters { + if in == nil { + return nil + } + out := new(ProtectionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProtectionPolicyObservation) DeepCopyInto(out *ProtectionPolicyObservation) { *out = *in @@ -2340,6 +3040,26 @@ func (in *ProtectionPolicyParameters) DeepCopy() *ProtectionPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProtectionPolicyRetentionDailyInitParameters) DeepCopyInto(out *ProtectionPolicyRetentionDailyInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectionPolicyRetentionDailyInitParameters. +func (in *ProtectionPolicyRetentionDailyInitParameters) DeepCopy() *ProtectionPolicyRetentionDailyInitParameters { + if in == nil { + return nil + } + out := new(ProtectionPolicyRetentionDailyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProtectionPolicyRetentionDailyObservation) DeepCopyInto(out *ProtectionPolicyRetentionDailyObservation) { *out = *in @@ -2380,6 +3100,64 @@ func (in *ProtectionPolicyRetentionDailyParameters) DeepCopy() *ProtectionPolicy return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProtectionPolicyRetentionMonthlyInitParameters) DeepCopyInto(out *ProtectionPolicyRetentionMonthlyInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.FormatType != nil { + in, out := &in.FormatType, &out.FormatType + *out = new(string) + **out = **in + } + if in.Monthdays != nil { + in, out := &in.Monthdays, &out.Monthdays + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Weeks != nil { + in, out := &in.Weeks, &out.Weeks + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectionPolicyRetentionMonthlyInitParameters. +func (in *ProtectionPolicyRetentionMonthlyInitParameters) DeepCopy() *ProtectionPolicyRetentionMonthlyInitParameters { + if in == nil { + return nil + } + out := new(ProtectionPolicyRetentionMonthlyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProtectionPolicyRetentionMonthlyObservation) DeepCopyInto(out *ProtectionPolicyRetentionMonthlyObservation) { *out = *in @@ -2496,6 +3274,37 @@ func (in *ProtectionPolicyRetentionMonthlyParameters) DeepCopy() *ProtectionPoli return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProtectionPolicyRetentionWeeklyInitParameters) DeepCopyInto(out *ProtectionPolicyRetentionWeeklyInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectionPolicyRetentionWeeklyInitParameters. +func (in *ProtectionPolicyRetentionWeeklyInitParameters) DeepCopy() *ProtectionPolicyRetentionWeeklyInitParameters { + if in == nil { + return nil + } + out := new(ProtectionPolicyRetentionWeeklyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProtectionPolicyRetentionWeeklyObservation) DeepCopyInto(out *ProtectionPolicyRetentionWeeklyObservation) { *out = *in @@ -2558,6 +3367,75 @@ func (in *ProtectionPolicyRetentionWeeklyParameters) DeepCopy() *ProtectionPolic return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ProtectionPolicyRetentionYearlyInitParameters) DeepCopyInto(out *ProtectionPolicyRetentionYearlyInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.FormatType != nil { + in, out := &in.FormatType, &out.FormatType + *out = new(string) + **out = **in + } + if in.Monthdays != nil { + in, out := &in.Monthdays, &out.Monthdays + *out = make([]*float64, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(float64) + **out = **in + } + } + } + if in.Months != nil { + in, out := &in.Months, &out.Months + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Weeks != nil { + in, out := &in.Weeks, &out.Weeks + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectionPolicyRetentionYearlyInitParameters. +func (in *ProtectionPolicyRetentionYearlyInitParameters) DeepCopy() *ProtectionPolicyRetentionYearlyInitParameters { + if in == nil { + return nil + } + out := new(ProtectionPolicyRetentionYearlyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ProtectionPolicyRetentionYearlyObservation) DeepCopyInto(out *ProtectionPolicyRetentionYearlyObservation) { *out = *in @@ -2696,6 +3574,26 @@ func (in *ProtectionPolicyRetentionYearlyParameters) DeepCopy() *ProtectionPolic return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RetentionDailyInitParameters) DeepCopyInto(out *RetentionDailyInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionDailyInitParameters. +func (in *RetentionDailyInitParameters) DeepCopy() *RetentionDailyInitParameters { + if in == nil { + return nil + } + out := new(RetentionDailyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RetentionDailyObservation) DeepCopyInto(out *RetentionDailyObservation) { *out = *in @@ -2736,6 +3634,48 @@ func (in *RetentionDailyParameters) DeepCopy() *RetentionDailyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RetentionMonthlyInitParameters) DeepCopyInto(out *RetentionMonthlyInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Weeks != nil { + in, out := &in.Weeks, &out.Weeks + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionMonthlyInitParameters. +func (in *RetentionMonthlyInitParameters) DeepCopy() *RetentionMonthlyInitParameters { + if in == nil { + return nil + } + out := new(RetentionMonthlyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RetentionMonthlyObservation) DeepCopyInto(out *RetentionMonthlyObservation) { *out = *in @@ -2797,8 +3737,70 @@ func (in *RetentionMonthlyParameters) DeepCopyInto(out *RetentionMonthlyParamete } } } - if in.Weeks != nil { - in, out := &in.Weeks, &out.Weeks + if in.Weeks != nil { + in, out := &in.Weeks, &out.Weeks + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionMonthlyParameters. +func (in *RetentionMonthlyParameters) DeepCopy() *RetentionMonthlyParameters { + if in == nil { + return nil + } + out := new(RetentionMonthlyParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RetentionWeeklyInitParameters) DeepCopyInto(out *RetentionWeeklyInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionWeeklyInitParameters. +func (in *RetentionWeeklyInitParameters) DeepCopy() *RetentionWeeklyInitParameters { + if in == nil { + return nil + } + out := new(RetentionWeeklyInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RetentionWeeklyObservation) DeepCopyInto(out *RetentionWeeklyObservation) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Weekdays != nil { + in, out := &in.Weekdays, &out.Weekdays *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -2810,18 +3812,18 @@ func (in *RetentionMonthlyParameters) DeepCopyInto(out *RetentionMonthlyParamete } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionMonthlyParameters. -func (in *RetentionMonthlyParameters) DeepCopy() *RetentionMonthlyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionWeeklyObservation. +func (in *RetentionWeeklyObservation) DeepCopy() *RetentionWeeklyObservation { if in == nil { return nil } - out := new(RetentionMonthlyParameters) + out := new(RetentionWeeklyObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RetentionWeeklyObservation) DeepCopyInto(out *RetentionWeeklyObservation) { +func (in *RetentionWeeklyParameters) DeepCopyInto(out *RetentionWeeklyParameters) { *out = *in if in.Count != nil { in, out := &in.Count, &out.Count @@ -2841,24 +3843,35 @@ func (in *RetentionWeeklyObservation) DeepCopyInto(out *RetentionWeeklyObservati } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionWeeklyObservation. -func (in *RetentionWeeklyObservation) DeepCopy() *RetentionWeeklyObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionWeeklyParameters. +func (in *RetentionWeeklyParameters) DeepCopy() *RetentionWeeklyParameters { if in == nil { return nil } - out := new(RetentionWeeklyObservation) + out := new(RetentionWeeklyParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RetentionWeeklyParameters) DeepCopyInto(out *RetentionWeeklyParameters) { +func (in *RetentionYearlyInitParameters) DeepCopyInto(out *RetentionYearlyInitParameters) { *out = *in if in.Count != nil { in, out := &in.Count, &out.Count *out = new(float64) **out = **in } + if in.Months != nil { + in, out := &in.Months, &out.Months + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } if in.Weekdays != nil { in, out := &in.Weekdays, &out.Weekdays *out = make([]*string, len(*in)) @@ -2870,14 +3883,25 @@ func (in *RetentionWeeklyParameters) DeepCopyInto(out *RetentionWeeklyParameters } } } + if in.Weeks != nil { + in, out := &in.Weeks, &out.Weeks + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionWeeklyParameters. -func (in *RetentionWeeklyParameters) DeepCopy() *RetentionWeeklyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionYearlyInitParameters. +func (in *RetentionYearlyInitParameters) DeepCopy() *RetentionYearlyInitParameters { if in == nil { return nil } - out := new(RetentionWeeklyParameters) + out := new(RetentionYearlyInitParameters) in.DeepCopyInto(out) return out } @@ -2988,6 +4012,31 @@ func (in *RetentionYearlyParameters) DeepCopy() *RetentionYearlyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SettingsInitParameters) DeepCopyInto(out *SettingsInitParameters) { + *out = *in + if in.CompressionEnabled != nil { + in, out := &in.CompressionEnabled, &out.CompressionEnabled + *out = new(bool) + **out = **in + } + if in.TimeZone != nil { + in, out := &in.TimeZone, &out.TimeZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingsInitParameters. +func (in *SettingsInitParameters) DeepCopy() *SettingsInitParameters { + if in == nil { + return nil + } + out := new(SettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SettingsObservation) DeepCopyInto(out *SettingsObservation) { *out = *in @@ -3038,6 +4087,26 @@ func (in *SettingsParameters) DeepCopy() *SettingsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SimpleRetentionInitParameters) DeepCopyInto(out *SimpleRetentionInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SimpleRetentionInitParameters. +func (in *SimpleRetentionInitParameters) DeepCopy() *SimpleRetentionInitParameters { + if in == nil { + return nil + } + out := new(SimpleRetentionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SimpleRetentionObservation) DeepCopyInto(out *SimpleRetentionObservation) { *out = *in @@ -3105,6 +4174,26 @@ func (in *SiteRecoveryFabric) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteRecoveryFabricInitParameters) DeepCopyInto(out *SiteRecoveryFabricInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteRecoveryFabricInitParameters. +func (in *SiteRecoveryFabricInitParameters) DeepCopy() *SiteRecoveryFabricInitParameters { + if in == nil { + return nil + } + out := new(SiteRecoveryFabricInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteRecoveryFabricList) DeepCopyInto(out *SiteRecoveryFabricList) { *out = *in @@ -3227,6 +4316,7 @@ func (in *SiteRecoveryFabricSpec) DeepCopyInto(out *SiteRecoveryFabricSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteRecoveryFabricSpec. @@ -3283,6 +4373,36 @@ func (in *SiteRecoveryNetworkMapping) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteRecoveryNetworkMappingInitParameters) DeepCopyInto(out *SiteRecoveryNetworkMappingInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SourceRecoveryFabricName != nil { + in, out := &in.SourceRecoveryFabricName, &out.SourceRecoveryFabricName + *out = new(string) + **out = **in + } + if in.TargetRecoveryFabricName != nil { + in, out := &in.TargetRecoveryFabricName, &out.TargetRecoveryFabricName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteRecoveryNetworkMappingInitParameters. +func (in *SiteRecoveryNetworkMappingInitParameters) DeepCopy() *SiteRecoveryNetworkMappingInitParameters { + if in == nil { + return nil + } + out := new(SiteRecoveryNetworkMappingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteRecoveryNetworkMappingList) DeepCopyInto(out *SiteRecoveryNetworkMappingList) { *out = *in @@ -3465,6 +4585,7 @@ func (in *SiteRecoveryNetworkMappingSpec) DeepCopyInto(out *SiteRecoveryNetworkM *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteRecoveryNetworkMappingSpec. @@ -3521,6 +4642,21 @@ func (in *SiteRecoveryProtectionContainer) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteRecoveryProtectionContainerInitParameters) DeepCopyInto(out *SiteRecoveryProtectionContainerInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteRecoveryProtectionContainerInitParameters. +func (in *SiteRecoveryProtectionContainerInitParameters) DeepCopy() *SiteRecoveryProtectionContainerInitParameters { + if in == nil { + return nil + } + out := new(SiteRecoveryProtectionContainerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteRecoveryProtectionContainerList) DeepCopyInto(out *SiteRecoveryProtectionContainerList) { *out = *in @@ -3580,6 +4716,28 @@ func (in *SiteRecoveryProtectionContainerMapping) DeepCopyObject() runtime.Objec return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteRecoveryProtectionContainerMappingInitParameters) DeepCopyInto(out *SiteRecoveryProtectionContainerMappingInitParameters) { + *out = *in + if in.AutomaticUpdate != nil { + in, out := &in.AutomaticUpdate, &out.AutomaticUpdate + *out = make([]AutomaticUpdateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteRecoveryProtectionContainerMappingInitParameters. +func (in *SiteRecoveryProtectionContainerMappingInitParameters) DeepCopy() *SiteRecoveryProtectionContainerMappingInitParameters { + if in == nil { + return nil + } + out := new(SiteRecoveryProtectionContainerMappingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteRecoveryProtectionContainerMappingList) DeepCopyInto(out *SiteRecoveryProtectionContainerMappingList) { *out = *in @@ -3786,6 +4944,7 @@ func (in *SiteRecoveryProtectionContainerMappingSpec) DeepCopyInto(out *SiteReco *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteRecoveryProtectionContainerMappingSpec. @@ -3915,6 +5074,7 @@ func (in *SiteRecoveryProtectionContainerSpec) DeepCopyInto(out *SiteRecoveryPro *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteRecoveryProtectionContainerSpec. @@ -3971,6 +5131,31 @@ func (in *SiteRecoveryReplicationPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteRecoveryReplicationPolicyInitParameters) DeepCopyInto(out *SiteRecoveryReplicationPolicyInitParameters) { + *out = *in + if in.ApplicationConsistentSnapshotFrequencyInMinutes != nil { + in, out := &in.ApplicationConsistentSnapshotFrequencyInMinutes, &out.ApplicationConsistentSnapshotFrequencyInMinutes + *out = new(float64) + **out = **in + } + if in.RecoveryPointRetentionInMinutes != nil { + in, out := &in.RecoveryPointRetentionInMinutes, &out.RecoveryPointRetentionInMinutes + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteRecoveryReplicationPolicyInitParameters. +func (in *SiteRecoveryReplicationPolicyInitParameters) DeepCopy() *SiteRecoveryReplicationPolicyInitParameters { + if in == nil { + return nil + } + out := new(SiteRecoveryReplicationPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteRecoveryReplicationPolicyList) DeepCopyInto(out *SiteRecoveryReplicationPolicyList) { *out = *in @@ -4103,6 +5288,7 @@ func (in *SiteRecoveryReplicationPolicySpec) DeepCopyInto(out *SiteRecoveryRepli *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteRecoveryReplicationPolicySpec. @@ -4159,6 +5345,97 @@ func (in *Vault) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VaultInitParameters) DeepCopyInto(out *VaultInitParameters) { + *out = *in + if in.ClassicVMwareReplicationEnabled != nil { + in, out := &in.ClassicVMwareReplicationEnabled, &out.ClassicVMwareReplicationEnabled + *out = new(bool) + **out = **in + } + if in.CrossRegionRestoreEnabled != nil { + in, out := &in.CrossRegionRestoreEnabled, &out.CrossRegionRestoreEnabled + *out = new(bool) + **out = **in + } + if in.Encryption != nil { + in, out := &in.Encryption, &out.Encryption + *out = make([]EncryptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Immutability != nil { + in, out := &in.Immutability, &out.Immutability + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Monitoring != nil { + in, out := &in.Monitoring, &out.Monitoring + *out = make([]MonitoringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.SoftDeleteEnabled != nil { + in, out := &in.SoftDeleteEnabled, &out.SoftDeleteEnabled + *out = new(bool) + **out = **in + } + if in.StorageModeType != nil { + in, out := &in.StorageModeType, &out.StorageModeType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VaultInitParameters. +func (in *VaultInitParameters) DeepCopy() *VaultInitParameters { + if in == nil { + return nil + } + out := new(VaultInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VaultList) DeepCopyInto(out *VaultList) { *out = *in @@ -4403,6 +5680,7 @@ func (in *VaultSpec) DeepCopyInto(out *VaultSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VaultSpec. diff --git a/apis/recoveryservices/v1beta1/zz_generated.managed.go b/apis/recoveryservices/v1beta1/zz_generated.managed.go index 7e68faf09..b2a47a246 100644 --- a/apis/recoveryservices/v1beta1/zz_generated.managed.go +++ b/apis/recoveryservices/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *BackupContainerStorageAccount) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupContainerStorageAccount. -func (mg *BackupContainerStorageAccount) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupContainerStorageAccount. +func (mg *BackupContainerStorageAccount) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupContainerStorageAccount. @@ -55,9 +55,9 @@ func (mg *BackupContainerStorageAccount) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupContainerStorageAccount. -func (mg *BackupContainerStorageAccount) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupContainerStorageAccount. +func (mg *BackupContainerStorageAccount) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupContainerStorageAccount. @@ -93,9 +93,9 @@ func (mg *BackupPolicyFileShare) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupPolicyFileShare. -func (mg *BackupPolicyFileShare) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupPolicyFileShare. +func (mg *BackupPolicyFileShare) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupPolicyFileShare. @@ -131,9 +131,9 @@ func (mg *BackupPolicyFileShare) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupPolicyFileShare. -func (mg *BackupPolicyFileShare) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupPolicyFileShare. +func (mg *BackupPolicyFileShare) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupPolicyFileShare. @@ -169,9 +169,9 @@ func (mg *BackupPolicyVM) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupPolicyVM. -func (mg *BackupPolicyVM) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupPolicyVM. +func (mg *BackupPolicyVM) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupPolicyVM. @@ -207,9 +207,9 @@ func (mg *BackupPolicyVM) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupPolicyVM. -func (mg *BackupPolicyVM) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupPolicyVM. +func (mg *BackupPolicyVM) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupPolicyVM. @@ -245,9 +245,9 @@ func (mg *BackupPolicyVMWorkload) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupPolicyVMWorkload. -func (mg *BackupPolicyVMWorkload) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupPolicyVMWorkload. +func (mg *BackupPolicyVMWorkload) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupPolicyVMWorkload. @@ -283,9 +283,9 @@ func (mg *BackupPolicyVMWorkload) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupPolicyVMWorkload. -func (mg *BackupPolicyVMWorkload) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupPolicyVMWorkload. +func (mg *BackupPolicyVMWorkload) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupPolicyVMWorkload. @@ -321,9 +321,9 @@ func (mg *BackupProtectedFileShare) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupProtectedFileShare. -func (mg *BackupProtectedFileShare) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupProtectedFileShare. +func (mg *BackupProtectedFileShare) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupProtectedFileShare. @@ -359,9 +359,9 @@ func (mg *BackupProtectedFileShare) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupProtectedFileShare. -func (mg *BackupProtectedFileShare) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupProtectedFileShare. +func (mg *BackupProtectedFileShare) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupProtectedFileShare. @@ -397,9 +397,9 @@ func (mg *BackupProtectedVM) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BackupProtectedVM. -func (mg *BackupProtectedVM) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BackupProtectedVM. +func (mg *BackupProtectedVM) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BackupProtectedVM. @@ -435,9 +435,9 @@ func (mg *BackupProtectedVM) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BackupProtectedVM. -func (mg *BackupProtectedVM) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BackupProtectedVM. +func (mg *BackupProtectedVM) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BackupProtectedVM. @@ -473,9 +473,9 @@ func (mg *SiteRecoveryFabric) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SiteRecoveryFabric. -func (mg *SiteRecoveryFabric) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SiteRecoveryFabric. +func (mg *SiteRecoveryFabric) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SiteRecoveryFabric. @@ -511,9 +511,9 @@ func (mg *SiteRecoveryFabric) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SiteRecoveryFabric. -func (mg *SiteRecoveryFabric) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SiteRecoveryFabric. +func (mg *SiteRecoveryFabric) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SiteRecoveryFabric. @@ -549,9 +549,9 @@ func (mg *SiteRecoveryNetworkMapping) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SiteRecoveryNetworkMapping. -func (mg *SiteRecoveryNetworkMapping) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SiteRecoveryNetworkMapping. +func (mg *SiteRecoveryNetworkMapping) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SiteRecoveryNetworkMapping. @@ -587,9 +587,9 @@ func (mg *SiteRecoveryNetworkMapping) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SiteRecoveryNetworkMapping. -func (mg *SiteRecoveryNetworkMapping) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SiteRecoveryNetworkMapping. +func (mg *SiteRecoveryNetworkMapping) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SiteRecoveryNetworkMapping. @@ -625,9 +625,9 @@ func (mg *SiteRecoveryProtectionContainer) GetDeletionPolicy() xpv1.DeletionPoli return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SiteRecoveryProtectionContainer. -func (mg *SiteRecoveryProtectionContainer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SiteRecoveryProtectionContainer. +func (mg *SiteRecoveryProtectionContainer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SiteRecoveryProtectionContainer. @@ -663,9 +663,9 @@ func (mg *SiteRecoveryProtectionContainer) SetDeletionPolicy(r xpv1.DeletionPoli mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SiteRecoveryProtectionContainer. -func (mg *SiteRecoveryProtectionContainer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SiteRecoveryProtectionContainer. +func (mg *SiteRecoveryProtectionContainer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SiteRecoveryProtectionContainer. @@ -701,9 +701,9 @@ func (mg *SiteRecoveryProtectionContainerMapping) GetDeletionPolicy() xpv1.Delet return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SiteRecoveryProtectionContainerMapping. -func (mg *SiteRecoveryProtectionContainerMapping) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SiteRecoveryProtectionContainerMapping. +func (mg *SiteRecoveryProtectionContainerMapping) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SiteRecoveryProtectionContainerMapping. @@ -739,9 +739,9 @@ func (mg *SiteRecoveryProtectionContainerMapping) SetDeletionPolicy(r xpv1.Delet mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SiteRecoveryProtectionContainerMapping. -func (mg *SiteRecoveryProtectionContainerMapping) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SiteRecoveryProtectionContainerMapping. +func (mg *SiteRecoveryProtectionContainerMapping) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SiteRecoveryProtectionContainerMapping. @@ -777,9 +777,9 @@ func (mg *SiteRecoveryReplicationPolicy) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SiteRecoveryReplicationPolicy. -func (mg *SiteRecoveryReplicationPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SiteRecoveryReplicationPolicy. +func (mg *SiteRecoveryReplicationPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SiteRecoveryReplicationPolicy. @@ -815,9 +815,9 @@ func (mg *SiteRecoveryReplicationPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SiteRecoveryReplicationPolicy. -func (mg *SiteRecoveryReplicationPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SiteRecoveryReplicationPolicy. +func (mg *SiteRecoveryReplicationPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SiteRecoveryReplicationPolicy. @@ -853,9 +853,9 @@ func (mg *Vault) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Vault. -func (mg *Vault) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Vault. +func (mg *Vault) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Vault. @@ -891,9 +891,9 @@ func (mg *Vault) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Vault. -func (mg *Vault) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Vault. +func (mg *Vault) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Vault. diff --git a/apis/recoveryservices/v1beta1/zz_generated_terraformed.go b/apis/recoveryservices/v1beta1/zz_generated_terraformed.go index c1e117d6d..ff6c508d9 100755 --- a/apis/recoveryservices/v1beta1/zz_generated_terraformed.go +++ b/apis/recoveryservices/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *BackupContainerStorageAccount) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupContainerStorageAccount +func (tr *BackupContainerStorageAccount) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupContainerStorageAccount using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupContainerStorageAccount) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *BackupPolicyFileShare) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupPolicyFileShare +func (tr *BackupPolicyFileShare) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupPolicyFileShare using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupPolicyFileShare) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *BackupPolicyVM) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupPolicyVM +func (tr *BackupPolicyVM) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupPolicyVM using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupPolicyVM) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *BackupPolicyVMWorkload) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupPolicyVMWorkload +func (tr *BackupPolicyVMWorkload) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupPolicyVMWorkload using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupPolicyVMWorkload) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *BackupProtectedFileShare) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupProtectedFileShare +func (tr *BackupProtectedFileShare) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupProtectedFileShare using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupProtectedFileShare) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *BackupProtectedVM) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BackupProtectedVM +func (tr *BackupProtectedVM) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BackupProtectedVM using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BackupProtectedVM) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *Vault) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Vault +func (tr *Vault) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Vault using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Vault) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *SiteRecoveryFabric) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SiteRecoveryFabric +func (tr *SiteRecoveryFabric) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SiteRecoveryFabric using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SiteRecoveryFabric) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *SiteRecoveryNetworkMapping) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SiteRecoveryNetworkMapping +func (tr *SiteRecoveryNetworkMapping) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SiteRecoveryNetworkMapping using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SiteRecoveryNetworkMapping) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *SiteRecoveryProtectionContainer) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SiteRecoveryProtectionContainer +func (tr *SiteRecoveryProtectionContainer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SiteRecoveryProtectionContainer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SiteRecoveryProtectionContainer) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *SiteRecoveryProtectionContainerMapping) SetParameters(params map[strin return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SiteRecoveryProtectionContainerMapping +func (tr *SiteRecoveryProtectionContainerMapping) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SiteRecoveryProtectionContainerMapping using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SiteRecoveryProtectionContainerMapping) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *SiteRecoveryReplicationPolicy) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SiteRecoveryReplicationPolicy +func (tr *SiteRecoveryReplicationPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SiteRecoveryReplicationPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SiteRecoveryReplicationPolicy) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/recoveryservices/v1beta1/zz_siterecoveryfabric_types.go b/apis/recoveryservices/v1beta1/zz_siterecoveryfabric_types.go index 8330750f5..9378860e2 100755 --- a/apis/recoveryservices/v1beta1/zz_siterecoveryfabric_types.go +++ b/apis/recoveryservices/v1beta1/zz_siterecoveryfabric_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SiteRecoveryFabricInitParameters struct { + + // In what region should the fabric be located. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` +} + type SiteRecoveryFabricObservation struct { // The ID of the Site Recovery Fabric. @@ -65,6 +71,18 @@ type SiteRecoveryFabricParameters struct { type SiteRecoveryFabricSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SiteRecoveryFabricParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SiteRecoveryFabricInitParameters `json:"initProvider,omitempty"` } // SiteRecoveryFabricStatus defines the observed state of SiteRecoveryFabric. @@ -85,7 +103,7 @@ type SiteRecoveryFabricStatus struct { type SiteRecoveryFabric struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SiteRecoveryFabricSpec `json:"spec"` Status SiteRecoveryFabricStatus `json:"status,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_siterecoverynetworkmapping_types.go b/apis/recoveryservices/v1beta1/zz_siterecoverynetworkmapping_types.go index 0aa2da664..44001c0fd 100755 --- a/apis/recoveryservices/v1beta1/zz_siterecoverynetworkmapping_types.go +++ b/apis/recoveryservices/v1beta1/zz_siterecoverynetworkmapping_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SiteRecoveryNetworkMappingInitParameters struct { + + // The name of the network mapping. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the ASR fabric where mapping should be created. Changing this forces a new resource to be created. + SourceRecoveryFabricName *string `json:"sourceRecoveryFabricName,omitempty" tf:"source_recovery_fabric_name,omitempty"` + + // The Azure Site Recovery fabric object corresponding to the recovery Azure region. Changing this forces a new resource to be created. + TargetRecoveryFabricName *string `json:"targetRecoveryFabricName,omitempty" tf:"target_recovery_fabric_name,omitempty"` +} + type SiteRecoveryNetworkMappingObservation struct { // The ID of the Site Recovery Network Mapping. @@ -113,6 +125,18 @@ type SiteRecoveryNetworkMappingParameters struct { type SiteRecoveryNetworkMappingSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SiteRecoveryNetworkMappingParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SiteRecoveryNetworkMappingInitParameters `json:"initProvider,omitempty"` } // SiteRecoveryNetworkMappingStatus defines the observed state of SiteRecoveryNetworkMapping. @@ -133,9 +157,9 @@ type SiteRecoveryNetworkMappingStatus struct { type SiteRecoveryNetworkMapping struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sourceRecoveryFabricName)",message="sourceRecoveryFabricName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetRecoveryFabricName)",message="targetRecoveryFabricName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sourceRecoveryFabricName) || has(self.initProvider.sourceRecoveryFabricName)",message="sourceRecoveryFabricName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.targetRecoveryFabricName) || has(self.initProvider.targetRecoveryFabricName)",message="targetRecoveryFabricName is a required parameter" Spec SiteRecoveryNetworkMappingSpec `json:"spec"` Status SiteRecoveryNetworkMappingStatus `json:"status,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainer_types.go b/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainer_types.go index 60e8c54d7..4f29b86f8 100755 --- a/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainer_types.go +++ b/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainer_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SiteRecoveryProtectionContainerInitParameters struct { +} + type SiteRecoveryProtectionContainerObservation struct { // The ID of the Site Recovery Protection Container. @@ -74,6 +77,18 @@ type SiteRecoveryProtectionContainerParameters struct { type SiteRecoveryProtectionContainerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SiteRecoveryProtectionContainerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SiteRecoveryProtectionContainerInitParameters `json:"initProvider,omitempty"` } // SiteRecoveryProtectionContainerStatus defines the observed state of SiteRecoveryProtectionContainer. diff --git a/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainermapping_types.go b/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainermapping_types.go index 679de90df..d43db85b8 100755 --- a/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainermapping_types.go +++ b/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainermapping_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AutomaticUpdateInitParameters struct { + + // The automation account ID which holds the automatic update runbook and authenticates to Azure resources. + AutomationAccountID *string `json:"automationAccountId,omitempty" tf:"automation_account_id,omitempty"` + + // Should the Mobility service installed on Azure virtual machines be automatically updated. Defaults to false. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + type AutomaticUpdateObservation struct { // The automation account ID which holds the automatic update runbook and authenticates to Azure resources. @@ -33,6 +42,12 @@ type AutomaticUpdateParameters struct { Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } +type SiteRecoveryProtectionContainerMappingInitParameters struct { + + // a automatic_update block defined as below. + AutomaticUpdate []AutomaticUpdateInitParameters `json:"automaticUpdate,omitempty" tf:"automatic_update,omitempty"` +} + type SiteRecoveryProtectionContainerMappingObservation struct { // a automatic_update block defined as below. @@ -151,6 +166,18 @@ type SiteRecoveryProtectionContainerMappingParameters struct { type SiteRecoveryProtectionContainerMappingSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SiteRecoveryProtectionContainerMappingParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SiteRecoveryProtectionContainerMappingInitParameters `json:"initProvider,omitempty"` } // SiteRecoveryProtectionContainerMappingStatus defines the observed state of SiteRecoveryProtectionContainerMapping. diff --git a/apis/recoveryservices/v1beta1/zz_siterecoveryreplicationpolicy_types.go b/apis/recoveryservices/v1beta1/zz_siterecoveryreplicationpolicy_types.go index 048e476ea..4cdb6dde6 100755 --- a/apis/recoveryservices/v1beta1/zz_siterecoveryreplicationpolicy_types.go +++ b/apis/recoveryservices/v1beta1/zz_siterecoveryreplicationpolicy_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SiteRecoveryReplicationPolicyInitParameters struct { + + // Specifies the frequency(in minutes) at which to create application consistent recovery points. + ApplicationConsistentSnapshotFrequencyInMinutes *float64 `json:"applicationConsistentSnapshotFrequencyInMinutes,omitempty" tf:"application_consistent_snapshot_frequency_in_minutes,omitempty"` + + // The duration in minutes for which the recovery points need to be stored. + RecoveryPointRetentionInMinutes *float64 `json:"recoveryPointRetentionInMinutes,omitempty" tf:"recovery_point_retention_in_minutes,omitempty"` +} + type SiteRecoveryReplicationPolicyObservation struct { // Specifies the frequency(in minutes) at which to create application consistent recovery points. @@ -72,6 +81,18 @@ type SiteRecoveryReplicationPolicyParameters struct { type SiteRecoveryReplicationPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider SiteRecoveryReplicationPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SiteRecoveryReplicationPolicyInitParameters `json:"initProvider,omitempty"` } // SiteRecoveryReplicationPolicyStatus defines the observed state of SiteRecoveryReplicationPolicy. @@ -92,8 +113,8 @@ type SiteRecoveryReplicationPolicyStatus struct { type SiteRecoveryReplicationPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.applicationConsistentSnapshotFrequencyInMinutes)",message="applicationConsistentSnapshotFrequencyInMinutes is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recoveryPointRetentionInMinutes)",message="recoveryPointRetentionInMinutes is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.applicationConsistentSnapshotFrequencyInMinutes) || has(self.initProvider.applicationConsistentSnapshotFrequencyInMinutes)",message="applicationConsistentSnapshotFrequencyInMinutes is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.recoveryPointRetentionInMinutes) || has(self.initProvider.recoveryPointRetentionInMinutes)",message="recoveryPointRetentionInMinutes is a required parameter" Spec SiteRecoveryReplicationPolicySpec `json:"spec"` Status SiteRecoveryReplicationPolicyStatus `json:"status,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_vault_types.go b/apis/recoveryservices/v1beta1/zz_vault_types.go index f91022788..ea4baa1b1 100755 --- a/apis/recoveryservices/v1beta1/zz_vault_types.go +++ b/apis/recoveryservices/v1beta1/zz_vault_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EncryptionInitParameters struct { + + // Enabling/Disabling the Double Encryption state. + InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` + + // The Key Vault key id used to encrypt this vault. Key managed by Vault Managed Hardware Security Module is also supported. + KeyID *string `json:"keyId,omitempty" tf:"key_id,omitempty"` + + // Indicate that system assigned identity should be used or not. Defaults to true. + UseSystemAssignedIdentity *bool `json:"useSystemAssignedIdentity,omitempty" tf:"use_system_assigned_identity,omitempty"` + + // Specifies the user assigned identity ID to be used. + UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` +} + type EncryptionObservation struct { // Enabling/Disabling the Double Encryption state. @@ -31,12 +46,12 @@ type EncryptionObservation struct { type EncryptionParameters struct { // Enabling/Disabling the Double Encryption state. - // +kubebuilder:validation:Required - InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled" tf:"infrastructure_encryption_enabled,omitempty"` + // +kubebuilder:validation:Optional + InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` // The Key Vault key id used to encrypt this vault. Key managed by Vault Managed Hardware Security Module is also supported. - // +kubebuilder:validation:Required - KeyID *string `json:"keyId" tf:"key_id,omitempty"` + // +kubebuilder:validation:Optional + KeyID *string `json:"keyId,omitempty" tf:"key_id,omitempty"` // Indicate that system assigned identity should be used or not. Defaults to true. // +kubebuilder:validation:Optional @@ -47,6 +62,15 @@ type EncryptionParameters struct { UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` } +type IdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this App Configuration. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Recovery Services Vault. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this App Configuration. @@ -69,8 +93,17 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Recovery Services Vault. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type MonitoringInitParameters struct { + + // Enabling/Disabling built-in Azure Monitor alerts for security scenarios and job failure scenarios. Defaults to true. + AlertsForAllJobFailuresEnabled *bool `json:"alertsForAllJobFailuresEnabled,omitempty" tf:"alerts_for_all_job_failures_enabled,omitempty"` + + // Enabling/Disabling alerts from the older (classic alerts) solution. Defaults to true. More details could be found here. + AlertsForCriticalOperationFailuresEnabled *bool `json:"alertsForCriticalOperationFailuresEnabled,omitempty" tf:"alerts_for_critical_operation_failures_enabled,omitempty"` } type MonitoringObservation struct { @@ -93,6 +126,45 @@ type MonitoringParameters struct { AlertsForCriticalOperationFailuresEnabled *bool `json:"alertsForCriticalOperationFailuresEnabled,omitempty" tf:"alerts_for_critical_operation_failures_enabled,omitempty"` } +type VaultInitParameters struct { + + // Whether to enable the Classic experience for VMware replication. If set to false VMware machines will be protected using the new stateless ASR replication appliance. Changing this forces a new resource to be created. + ClassicVMwareReplicationEnabled *bool `json:"classicVmwareReplicationEnabled,omitempty" tf:"classic_vmware_replication_enabled,omitempty"` + + // Is cross region restore enabled for this Vault? Only can be true, when storage_mode_type is GeoRedundant. Defaults to false. + CrossRegionRestoreEnabled *bool `json:"crossRegionRestoreEnabled,omitempty" tf:"cross_region_restore_enabled,omitempty"` + + // An encryption block as defined below. Required with identity. + Encryption []EncryptionInitParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Immutability Settings of vault, possible values include: Locked, Unlocked and Disabled. + Immutability *string `json:"immutability,omitempty" tf:"immutability,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A monitoring block as defined below. + Monitoring []MonitoringInitParameters `json:"monitoring,omitempty" tf:"monitoring,omitempty"` + + // Is it enabled to access the vault from public networks. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Sets the vault's SKU. Possible values include: Standard, RS0. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // Is soft delete enable for this Vault? Defaults to true. + SoftDeleteEnabled *bool `json:"softDeleteEnabled,omitempty" tf:"soft_delete_enabled,omitempty"` + + // The storage type of the Recovery Services Vault. Possible values are GeoRedundant, LocallyRedundant and ZoneRedundant. Defaults to GeoRedundant. + StorageModeType *string `json:"storageModeType,omitempty" tf:"storage_mode_type,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type VaultObservation struct { // Whether to enable the Classic experience for VMware replication. If set to false VMware machines will be protected using the new stateless ASR replication appliance. Changing this forces a new resource to be created. @@ -206,6 +278,18 @@ type VaultParameters struct { type VaultSpec struct { v1.ResourceSpec `json:",inline"` ForProvider VaultParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider VaultInitParameters `json:"initProvider,omitempty"` } // VaultStatus defines the observed state of Vault. @@ -226,8 +310,8 @@ type VaultStatus struct { type Vault struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec VaultSpec `json:"spec"` Status VaultStatus `json:"status,omitempty"` } diff --git a/apis/relay/v1beta1/zz_eventrelaynamespace_types.go b/apis/relay/v1beta1/zz_eventrelaynamespace_types.go index 69143b4ec..adf87059d 100755 --- a/apis/relay/v1beta1/zz_eventrelaynamespace_types.go +++ b/apis/relay/v1beta1/zz_eventrelaynamespace_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EventRelayNamespaceInitParameters struct { + + // Specifies the supported Azure location where the Azure Relay Namespace exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the SKU to use. At this time the only supported value is Standard. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type EventRelayNamespaceObservation struct { // The Azure Relay Namespace ID. @@ -66,6 +78,18 @@ type EventRelayNamespaceParameters struct { type EventRelayNamespaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EventRelayNamespaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EventRelayNamespaceInitParameters `json:"initProvider,omitempty"` } // EventRelayNamespaceStatus defines the observed state of EventRelayNamespace. @@ -86,8 +110,8 @@ type EventRelayNamespaceStatus struct { type EventRelayNamespace struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec EventRelayNamespaceSpec `json:"spec"` Status EventRelayNamespaceStatus `json:"status,omitempty"` } diff --git a/apis/relay/v1beta1/zz_generated.deepcopy.go b/apis/relay/v1beta1/zz_generated.deepcopy.go index 01da7afb1..706d7cebc 100644 --- a/apis/relay/v1beta1/zz_generated.deepcopy.go +++ b/apis/relay/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,46 @@ func (in *EventRelayNamespace) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventRelayNamespaceInitParameters) DeepCopyInto(out *EventRelayNamespaceInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventRelayNamespaceInitParameters. +func (in *EventRelayNamespaceInitParameters) DeepCopy() *EventRelayNamespaceInitParameters { + if in == nil { + return nil + } + out := new(EventRelayNamespaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventRelayNamespaceList) DeepCopyInto(out *EventRelayNamespaceList) { *out = *in @@ -188,6 +228,7 @@ func (in *EventRelayNamespaceSpec) DeepCopyInto(out *EventRelayNamespaceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventRelayNamespaceSpec. @@ -271,6 +312,36 @@ func (in *HybridConnectionAuthorizationRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HybridConnectionAuthorizationRuleInitParameters) DeepCopyInto(out *HybridConnectionAuthorizationRuleInitParameters) { + *out = *in + if in.Listen != nil { + in, out := &in.Listen, &out.Listen + *out = new(bool) + **out = **in + } + if in.Manage != nil { + in, out := &in.Manage, &out.Manage + *out = new(bool) + **out = **in + } + if in.Send != nil { + in, out := &in.Send, &out.Send + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HybridConnectionAuthorizationRuleInitParameters. +func (in *HybridConnectionAuthorizationRuleInitParameters) DeepCopy() *HybridConnectionAuthorizationRuleInitParameters { + if in == nil { + return nil + } + out := new(HybridConnectionAuthorizationRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HybridConnectionAuthorizationRuleList) DeepCopyInto(out *HybridConnectionAuthorizationRuleList) { *out = *in @@ -433,6 +504,7 @@ func (in *HybridConnectionAuthorizationRuleSpec) DeepCopyInto(out *HybridConnect *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HybridConnectionAuthorizationRuleSpec. @@ -462,6 +534,36 @@ func (in *HybridConnectionAuthorizationRuleStatus) DeepCopy() *HybridConnectionA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HybridConnectionInitParameters) DeepCopyInto(out *HybridConnectionInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RequiresClientAuthorization != nil { + in, out := &in.RequiresClientAuthorization, &out.RequiresClientAuthorization + *out = new(bool) + **out = **in + } + if in.UserMetadata != nil { + in, out := &in.UserMetadata, &out.UserMetadata + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HybridConnectionInitParameters. +func (in *HybridConnectionInitParameters) DeepCopy() *HybridConnectionInitParameters { + if in == nil { + return nil + } + out := new(HybridConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HybridConnectionList) DeepCopyInto(out *HybridConnectionList) { *out = *in @@ -604,6 +706,7 @@ func (in *HybridConnectionSpec) DeepCopyInto(out *HybridConnectionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HybridConnectionSpec. @@ -660,6 +763,36 @@ func (in *NamespaceAuthorizationRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceAuthorizationRuleInitParameters) DeepCopyInto(out *NamespaceAuthorizationRuleInitParameters) { + *out = *in + if in.Listen != nil { + in, out := &in.Listen, &out.Listen + *out = new(bool) + **out = **in + } + if in.Manage != nil { + in, out := &in.Manage, &out.Manage + *out = new(bool) + **out = **in + } + if in.Send != nil { + in, out := &in.Send, &out.Send + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceAuthorizationRuleInitParameters. +func (in *NamespaceAuthorizationRuleInitParameters) DeepCopy() *NamespaceAuthorizationRuleInitParameters { + if in == nil { + return nil + } + out := new(NamespaceAuthorizationRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NamespaceAuthorizationRuleList) DeepCopyInto(out *NamespaceAuthorizationRuleList) { *out = *in @@ -802,6 +935,7 @@ func (in *NamespaceAuthorizationRuleSpec) DeepCopyInto(out *NamespaceAuthorizati *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceAuthorizationRuleSpec. diff --git a/apis/relay/v1beta1/zz_generated.managed.go b/apis/relay/v1beta1/zz_generated.managed.go index 44b821ee0..98a00fcd1 100644 --- a/apis/relay/v1beta1/zz_generated.managed.go +++ b/apis/relay/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *EventRelayNamespace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this EventRelayNamespace. -func (mg *EventRelayNamespace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this EventRelayNamespace. +func (mg *EventRelayNamespace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this EventRelayNamespace. @@ -55,9 +55,9 @@ func (mg *EventRelayNamespace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this EventRelayNamespace. -func (mg *EventRelayNamespace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this EventRelayNamespace. +func (mg *EventRelayNamespace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this EventRelayNamespace. @@ -93,9 +93,9 @@ func (mg *HybridConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HybridConnection. -func (mg *HybridConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HybridConnection. +func (mg *HybridConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HybridConnection. @@ -131,9 +131,9 @@ func (mg *HybridConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HybridConnection. -func (mg *HybridConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HybridConnection. +func (mg *HybridConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HybridConnection. @@ -169,9 +169,9 @@ func (mg *HybridConnectionAuthorizationRule) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HybridConnectionAuthorizationRule. -func (mg *HybridConnectionAuthorizationRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HybridConnectionAuthorizationRule. +func (mg *HybridConnectionAuthorizationRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HybridConnectionAuthorizationRule. @@ -207,9 +207,9 @@ func (mg *HybridConnectionAuthorizationRule) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HybridConnectionAuthorizationRule. -func (mg *HybridConnectionAuthorizationRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HybridConnectionAuthorizationRule. +func (mg *HybridConnectionAuthorizationRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HybridConnectionAuthorizationRule. @@ -245,9 +245,9 @@ func (mg *NamespaceAuthorizationRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NamespaceAuthorizationRule. -func (mg *NamespaceAuthorizationRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NamespaceAuthorizationRule. +func (mg *NamespaceAuthorizationRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NamespaceAuthorizationRule. @@ -283,9 +283,9 @@ func (mg *NamespaceAuthorizationRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NamespaceAuthorizationRule. -func (mg *NamespaceAuthorizationRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NamespaceAuthorizationRule. +func (mg *NamespaceAuthorizationRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NamespaceAuthorizationRule. diff --git a/apis/relay/v1beta1/zz_generated_terraformed.go b/apis/relay/v1beta1/zz_generated_terraformed.go index 76c565163..954169314 100755 --- a/apis/relay/v1beta1/zz_generated_terraformed.go +++ b/apis/relay/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *HybridConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HybridConnection +func (tr *HybridConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HybridConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HybridConnection) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *HybridConnectionAuthorizationRule) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HybridConnectionAuthorizationRule +func (tr *HybridConnectionAuthorizationRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HybridConnectionAuthorizationRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HybridConnectionAuthorizationRule) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *EventRelayNamespace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this EventRelayNamespace +func (tr *EventRelayNamespace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this EventRelayNamespace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *EventRelayNamespace) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *NamespaceAuthorizationRule) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NamespaceAuthorizationRule +func (tr *NamespaceAuthorizationRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NamespaceAuthorizationRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NamespaceAuthorizationRule) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/relay/v1beta1/zz_hybridconnection_types.go b/apis/relay/v1beta1/zz_hybridconnection_types.go index 3e084bc1f..9526b0331 100755 --- a/apis/relay/v1beta1/zz_hybridconnection_types.go +++ b/apis/relay/v1beta1/zz_hybridconnection_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HybridConnectionInitParameters struct { + + // Specifies the name of the Azure Relay Hybrid Connection. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specify if client authorization is needed for this hybrid connection. True by default. Changing this forces a new resource to be created. Defaults to true. + RequiresClientAuthorization *bool `json:"requiresClientAuthorization,omitempty" tf:"requires_client_authorization,omitempty"` + + // The usermetadata is a placeholder to store user-defined string data for the hybrid connection endpoint. For example, it can be used to store descriptive data, such as a list of teams and their contact information. Also, user-defined configuration settings can be stored. + UserMetadata *string `json:"userMetadata,omitempty" tf:"user_metadata,omitempty"` +} + type HybridConnectionObservation struct { // The ID of the Relay Hybrid Connection. @@ -79,6 +91,18 @@ type HybridConnectionParameters struct { type HybridConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HybridConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HybridConnectionInitParameters `json:"initProvider,omitempty"` } // HybridConnectionStatus defines the observed state of HybridConnection. @@ -99,7 +123,7 @@ type HybridConnectionStatus struct { type HybridConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec HybridConnectionSpec `json:"spec"` Status HybridConnectionStatus `json:"status,omitempty"` } diff --git a/apis/relay/v1beta1/zz_hybridconnectionauthorizationrule_types.go b/apis/relay/v1beta1/zz_hybridconnectionauthorizationrule_types.go index af91ac1bf..526cddcd9 100755 --- a/apis/relay/v1beta1/zz_hybridconnectionauthorizationrule_types.go +++ b/apis/relay/v1beta1/zz_hybridconnectionauthorizationrule_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HybridConnectionAuthorizationRuleInitParameters struct { + + // Grants listen access to this Authorization Rule. Defaults to false. + Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` + + // Grants manage access to this Authorization Rule. When this property is true - both listen and send must be set to true too. Defaults to false. + Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` + + // Grants send access to this Authorization Rule. Defaults to false. + Send *bool `json:"send,omitempty" tf:"send,omitempty"` +} + type HybridConnectionAuthorizationRuleObservation struct { // Name of the Azure Relay Hybrid Connection for which this Azure Relay Hybrid Connection Authorization Rule will be created. Changing this forces a new Azure Relay Hybrid Connection Authorization Rule to be created. @@ -96,6 +108,18 @@ type HybridConnectionAuthorizationRuleParameters struct { type HybridConnectionAuthorizationRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HybridConnectionAuthorizationRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HybridConnectionAuthorizationRuleInitParameters `json:"initProvider,omitempty"` } // HybridConnectionAuthorizationRuleStatus defines the observed state of HybridConnectionAuthorizationRule. diff --git a/apis/relay/v1beta1/zz_namespaceauthorizationrule_types.go b/apis/relay/v1beta1/zz_namespaceauthorizationrule_types.go index 34a105cfd..b84681bc0 100755 --- a/apis/relay/v1beta1/zz_namespaceauthorizationrule_types.go +++ b/apis/relay/v1beta1/zz_namespaceauthorizationrule_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NamespaceAuthorizationRuleInitParameters struct { + + // Grants listen access to this Authorization Rule. Defaults to false. + Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` + + // Grants manage access to this Authorization Rule. When this property is true - both listen and send must be set to true too. Defaults to false. + Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` + + // Grants send access to this Authorization Rule. Defaults to false. + Send *bool `json:"send,omitempty" tf:"send,omitempty"` +} + type NamespaceAuthorizationRuleObservation struct { // The ID of the Azure Relay Namespace Authorization Rule. @@ -79,6 +91,18 @@ type NamespaceAuthorizationRuleParameters struct { type NamespaceAuthorizationRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NamespaceAuthorizationRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NamespaceAuthorizationRuleInitParameters `json:"initProvider,omitempty"` } // NamespaceAuthorizationRuleStatus defines the observed state of NamespaceAuthorizationRule. diff --git a/apis/resources/v1beta1/zz_generated.deepcopy.go b/apis/resources/v1beta1/zz_generated.deepcopy.go index 915188e4b..45bd2f5f5 100644 --- a/apis/resources/v1beta1/zz_generated.deepcopy.go +++ b/apis/resources/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,26 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerInitParameters) DeepCopyInto(out *ContainerInitParameters) { + *out = *in + if in.ContainerGroupName != nil { + in, out := &in.ContainerGroupName, &out.ContainerGroupName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerInitParameters. +func (in *ContainerInitParameters) DeepCopy() *ContainerInitParameters { + if in == nil { + return nil + } + out := new(ContainerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContainerObservation) DeepCopyInto(out *ContainerObservation) { *out = *in @@ -54,6 +74,31 @@ func (in *ContainerParameters) DeepCopy() *ContainerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EnvironmentVariableInitParameters) DeepCopyInto(out *EnvironmentVariableInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentVariableInitParameters. +func (in *EnvironmentVariableInitParameters) DeepCopy() *EnvironmentVariableInitParameters { + if in == nil { + return nil + } + out := new(EnvironmentVariableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EnvironmentVariableObservation) DeepCopyInto(out *EnvironmentVariableObservation) { *out = *in @@ -109,6 +154,26 @@ func (in *EnvironmentVariableParameters) DeepCopy() *EnvironmentVariableParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -210,6 +275,125 @@ func (in *ResourceDeploymentScriptAzureCli) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceDeploymentScriptAzureCliInitParameters) DeepCopyInto(out *ResourceDeploymentScriptAzureCliInitParameters) { + *out = *in + if in.CleanupPreference != nil { + in, out := &in.CleanupPreference, &out.CleanupPreference + *out = new(string) + **out = **in + } + if in.CommandLine != nil { + in, out := &in.CommandLine, &out.CommandLine + *out = new(string) + **out = **in + } + if in.Container != nil { + in, out := &in.Container, &out.Container + *out = make([]ContainerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EnvironmentVariable != nil { + in, out := &in.EnvironmentVariable, &out.EnvironmentVariable + *out = make([]EnvironmentVariableInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForceUpdateTag != nil { + in, out := &in.ForceUpdateTag, &out.ForceUpdateTag + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrimaryScriptURI != nil { + in, out := &in.PrimaryScriptURI, &out.PrimaryScriptURI + *out = new(string) + **out = **in + } + if in.RetentionInterval != nil { + in, out := &in.RetentionInterval, &out.RetentionInterval + *out = new(string) + **out = **in + } + if in.ScriptContent != nil { + in, out := &in.ScriptContent, &out.ScriptContent + *out = new(string) + **out = **in + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]StorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SupportingScriptUris != nil { + in, out := &in.SupportingScriptUris, &out.SupportingScriptUris + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceDeploymentScriptAzureCliInitParameters. +func (in *ResourceDeploymentScriptAzureCliInitParameters) DeepCopy() *ResourceDeploymentScriptAzureCliInitParameters { + if in == nil { + return nil + } + out := new(ResourceDeploymentScriptAzureCliInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceDeploymentScriptAzureCliList) DeepCopyInto(out *ResourceDeploymentScriptAzureCliList) { *out = *in @@ -515,6 +699,7 @@ func (in *ResourceDeploymentScriptAzureCliSpec) DeepCopyInto(out *ResourceDeploy *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceDeploymentScriptAzureCliSpec. @@ -571,6 +756,26 @@ func (in *ResourceDeploymentScriptAzurePowerShell) DeepCopyObject() runtime.Obje return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceDeploymentScriptAzurePowerShellContainerInitParameters) DeepCopyInto(out *ResourceDeploymentScriptAzurePowerShellContainerInitParameters) { + *out = *in + if in.ContainerGroupName != nil { + in, out := &in.ContainerGroupName, &out.ContainerGroupName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceDeploymentScriptAzurePowerShellContainerInitParameters. +func (in *ResourceDeploymentScriptAzurePowerShellContainerInitParameters) DeepCopy() *ResourceDeploymentScriptAzurePowerShellContainerInitParameters { + if in == nil { + return nil + } + out := new(ResourceDeploymentScriptAzurePowerShellContainerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceDeploymentScriptAzurePowerShellContainerObservation) DeepCopyInto(out *ResourceDeploymentScriptAzurePowerShellContainerObservation) { *out = *in @@ -611,6 +816,31 @@ func (in *ResourceDeploymentScriptAzurePowerShellContainerParameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceDeploymentScriptAzurePowerShellEnvironmentVariableInitParameters) DeepCopyInto(out *ResourceDeploymentScriptAzurePowerShellEnvironmentVariableInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceDeploymentScriptAzurePowerShellEnvironmentVariableInitParameters. +func (in *ResourceDeploymentScriptAzurePowerShellEnvironmentVariableInitParameters) DeepCopy() *ResourceDeploymentScriptAzurePowerShellEnvironmentVariableInitParameters { + if in == nil { + return nil + } + out := new(ResourceDeploymentScriptAzurePowerShellEnvironmentVariableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceDeploymentScriptAzurePowerShellEnvironmentVariableObservation) DeepCopyInto(out *ResourceDeploymentScriptAzurePowerShellEnvironmentVariableObservation) { *out = *in @@ -666,6 +896,26 @@ func (in *ResourceDeploymentScriptAzurePowerShellEnvironmentVariableParameters) return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceDeploymentScriptAzurePowerShellIdentityInitParameters) DeepCopyInto(out *ResourceDeploymentScriptAzurePowerShellIdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceDeploymentScriptAzurePowerShellIdentityInitParameters. +func (in *ResourceDeploymentScriptAzurePowerShellIdentityInitParameters) DeepCopy() *ResourceDeploymentScriptAzurePowerShellIdentityInitParameters { + if in == nil { + return nil + } + out := new(ResourceDeploymentScriptAzurePowerShellIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceDeploymentScriptAzurePowerShellIdentityObservation) DeepCopyInto(out *ResourceDeploymentScriptAzurePowerShellIdentityObservation) { *out = *in @@ -740,6 +990,125 @@ func (in *ResourceDeploymentScriptAzurePowerShellIdentityParameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceDeploymentScriptAzurePowerShellInitParameters) DeepCopyInto(out *ResourceDeploymentScriptAzurePowerShellInitParameters) { + *out = *in + if in.CleanupPreference != nil { + in, out := &in.CleanupPreference, &out.CleanupPreference + *out = new(string) + **out = **in + } + if in.CommandLine != nil { + in, out := &in.CommandLine, &out.CommandLine + *out = new(string) + **out = **in + } + if in.Container != nil { + in, out := &in.Container, &out.Container + *out = make([]ResourceDeploymentScriptAzurePowerShellContainerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EnvironmentVariable != nil { + in, out := &in.EnvironmentVariable, &out.EnvironmentVariable + *out = make([]ResourceDeploymentScriptAzurePowerShellEnvironmentVariableInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForceUpdateTag != nil { + in, out := &in.ForceUpdateTag, &out.ForceUpdateTag + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]ResourceDeploymentScriptAzurePowerShellIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrimaryScriptURI != nil { + in, out := &in.PrimaryScriptURI, &out.PrimaryScriptURI + *out = new(string) + **out = **in + } + if in.RetentionInterval != nil { + in, out := &in.RetentionInterval, &out.RetentionInterval + *out = new(string) + **out = **in + } + if in.ScriptContent != nil { + in, out := &in.ScriptContent, &out.ScriptContent + *out = new(string) + **out = **in + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]ResourceDeploymentScriptAzurePowerShellStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SupportingScriptUris != nil { + in, out := &in.SupportingScriptUris, &out.SupportingScriptUris + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Timeout != nil { + in, out := &in.Timeout, &out.Timeout + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceDeploymentScriptAzurePowerShellInitParameters. +func (in *ResourceDeploymentScriptAzurePowerShellInitParameters) DeepCopy() *ResourceDeploymentScriptAzurePowerShellInitParameters { + if in == nil { + return nil + } + out := new(ResourceDeploymentScriptAzurePowerShellInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceDeploymentScriptAzurePowerShellList) DeepCopyInto(out *ResourceDeploymentScriptAzurePowerShellList) { *out = *in @@ -1045,6 +1414,7 @@ func (in *ResourceDeploymentScriptAzurePowerShellSpec) DeepCopyInto(out *Resourc *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceDeploymentScriptAzurePowerShellSpec. @@ -1074,6 +1444,26 @@ func (in *ResourceDeploymentScriptAzurePowerShellStatus) DeepCopy() *ResourceDep return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceDeploymentScriptAzurePowerShellStorageAccountInitParameters) DeepCopyInto(out *ResourceDeploymentScriptAzurePowerShellStorageAccountInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceDeploymentScriptAzurePowerShellStorageAccountInitParameters. +func (in *ResourceDeploymentScriptAzurePowerShellStorageAccountInitParameters) DeepCopy() *ResourceDeploymentScriptAzurePowerShellStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(ResourceDeploymentScriptAzurePowerShellStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceDeploymentScriptAzurePowerShellStorageAccountObservation) DeepCopyInto(out *ResourceDeploymentScriptAzurePowerShellStorageAccountObservation) { *out = *in @@ -1142,6 +1532,61 @@ func (in *ResourceGroupTemplateDeployment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceGroupTemplateDeploymentInitParameters) DeepCopyInto(out *ResourceGroupTemplateDeploymentInitParameters) { + *out = *in + if in.DebugLevel != nil { + in, out := &in.DebugLevel, &out.DebugLevel + *out = new(string) + **out = **in + } + if in.DeploymentMode != nil { + in, out := &in.DeploymentMode, &out.DeploymentMode + *out = new(string) + **out = **in + } + if in.ParametersContent != nil { + in, out := &in.ParametersContent, &out.ParametersContent + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TemplateContent != nil { + in, out := &in.TemplateContent, &out.TemplateContent + *out = new(string) + **out = **in + } + if in.TemplateSpecVersionID != nil { + in, out := &in.TemplateSpecVersionID, &out.TemplateSpecVersionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGroupTemplateDeploymentInitParameters. +func (in *ResourceGroupTemplateDeploymentInitParameters) DeepCopy() *ResourceGroupTemplateDeploymentInitParameters { + if in == nil { + return nil + } + out := new(ResourceGroupTemplateDeploymentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ResourceGroupTemplateDeploymentList) DeepCopyInto(out *ResourceGroupTemplateDeploymentList) { *out = *in @@ -1319,6 +1764,7 @@ func (in *ResourceGroupTemplateDeploymentSpec) DeepCopyInto(out *ResourceGroupTe *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceGroupTemplateDeploymentSpec. @@ -1348,6 +1794,26 @@ func (in *ResourceGroupTemplateDeploymentStatus) DeepCopy() *ResourceGroupTempla return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageAccountInitParameters) DeepCopyInto(out *StorageAccountInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageAccountInitParameters. +func (in *StorageAccountInitParameters) DeepCopy() *StorageAccountInitParameters { + if in == nil { + return nil + } + out := new(StorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageAccountObservation) DeepCopyInto(out *StorageAccountObservation) { *out = *in @@ -1416,6 +1882,61 @@ func (in *SubscriptionTemplateDeployment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionTemplateDeploymentInitParameters) DeepCopyInto(out *SubscriptionTemplateDeploymentInitParameters) { + *out = *in + if in.DebugLevel != nil { + in, out := &in.DebugLevel, &out.DebugLevel + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ParametersContent != nil { + in, out := &in.ParametersContent, &out.ParametersContent + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TemplateContent != nil { + in, out := &in.TemplateContent, &out.TemplateContent + *out = new(string) + **out = **in + } + if in.TemplateSpecVersionID != nil { + in, out := &in.TemplateSpecVersionID, &out.TemplateSpecVersionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionTemplateDeploymentInitParameters. +func (in *SubscriptionTemplateDeploymentInitParameters) DeepCopy() *SubscriptionTemplateDeploymentInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionTemplateDeploymentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionTemplateDeploymentList) DeepCopyInto(out *SubscriptionTemplateDeploymentList) { *out = *in @@ -1573,6 +2094,7 @@ func (in *SubscriptionTemplateDeploymentSpec) DeepCopyInto(out *SubscriptionTemp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionTemplateDeploymentSpec. diff --git a/apis/resources/v1beta1/zz_generated.managed.go b/apis/resources/v1beta1/zz_generated.managed.go index 828670874..937dfdbda 100644 --- a/apis/resources/v1beta1/zz_generated.managed.go +++ b/apis/resources/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ResourceDeploymentScriptAzureCli) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourceDeploymentScriptAzureCli. -func (mg *ResourceDeploymentScriptAzureCli) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourceDeploymentScriptAzureCli. +func (mg *ResourceDeploymentScriptAzureCli) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourceDeploymentScriptAzureCli. @@ -55,9 +55,9 @@ func (mg *ResourceDeploymentScriptAzureCli) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourceDeploymentScriptAzureCli. -func (mg *ResourceDeploymentScriptAzureCli) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourceDeploymentScriptAzureCli. +func (mg *ResourceDeploymentScriptAzureCli) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourceDeploymentScriptAzureCli. @@ -93,9 +93,9 @@ func (mg *ResourceDeploymentScriptAzurePowerShell) GetDeletionPolicy() xpv1.Dele return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourceDeploymentScriptAzurePowerShell. -func (mg *ResourceDeploymentScriptAzurePowerShell) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourceDeploymentScriptAzurePowerShell. +func (mg *ResourceDeploymentScriptAzurePowerShell) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourceDeploymentScriptAzurePowerShell. @@ -131,9 +131,9 @@ func (mg *ResourceDeploymentScriptAzurePowerShell) SetDeletionPolicy(r xpv1.Dele mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourceDeploymentScriptAzurePowerShell. -func (mg *ResourceDeploymentScriptAzurePowerShell) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourceDeploymentScriptAzurePowerShell. +func (mg *ResourceDeploymentScriptAzurePowerShell) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourceDeploymentScriptAzurePowerShell. @@ -169,9 +169,9 @@ func (mg *ResourceGroupTemplateDeployment) GetDeletionPolicy() xpv1.DeletionPoli return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ResourceGroupTemplateDeployment. -func (mg *ResourceGroupTemplateDeployment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ResourceGroupTemplateDeployment. +func (mg *ResourceGroupTemplateDeployment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ResourceGroupTemplateDeployment. @@ -207,9 +207,9 @@ func (mg *ResourceGroupTemplateDeployment) SetDeletionPolicy(r xpv1.DeletionPoli mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ResourceGroupTemplateDeployment. -func (mg *ResourceGroupTemplateDeployment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ResourceGroupTemplateDeployment. +func (mg *ResourceGroupTemplateDeployment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ResourceGroupTemplateDeployment. @@ -245,9 +245,9 @@ func (mg *SubscriptionTemplateDeployment) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubscriptionTemplateDeployment. -func (mg *SubscriptionTemplateDeployment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubscriptionTemplateDeployment. +func (mg *SubscriptionTemplateDeployment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubscriptionTemplateDeployment. @@ -283,9 +283,9 @@ func (mg *SubscriptionTemplateDeployment) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubscriptionTemplateDeployment. -func (mg *SubscriptionTemplateDeployment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubscriptionTemplateDeployment. +func (mg *SubscriptionTemplateDeployment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubscriptionTemplateDeployment. diff --git a/apis/resources/v1beta1/zz_generated_terraformed.go b/apis/resources/v1beta1/zz_generated_terraformed.go index 4109947bd..ec9d36cb2 100755 --- a/apis/resources/v1beta1/zz_generated_terraformed.go +++ b/apis/resources/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ResourceDeploymentScriptAzureCli) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourceDeploymentScriptAzureCli +func (tr *ResourceDeploymentScriptAzureCli) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourceDeploymentScriptAzureCli using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourceDeploymentScriptAzureCli) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *ResourceDeploymentScriptAzurePowerShell) SetParameters(params map[stri return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourceDeploymentScriptAzurePowerShell +func (tr *ResourceDeploymentScriptAzurePowerShell) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourceDeploymentScriptAzurePowerShell using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourceDeploymentScriptAzurePowerShell) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *ResourceGroupTemplateDeployment) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ResourceGroupTemplateDeployment +func (tr *ResourceGroupTemplateDeployment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ResourceGroupTemplateDeployment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ResourceGroupTemplateDeployment) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *SubscriptionTemplateDeployment) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubscriptionTemplateDeployment +func (tr *SubscriptionTemplateDeployment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubscriptionTemplateDeployment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubscriptionTemplateDeployment) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/resources/v1beta1/zz_resourcedeploymentscriptazurecli_types.go b/apis/resources/v1beta1/zz_resourcedeploymentscriptazurecli_types.go index 5ccfcf5d4..106728ea7 100755 --- a/apis/resources/v1beta1/zz_resourcedeploymentscriptazurecli_types.go +++ b/apis/resources/v1beta1/zz_resourcedeploymentscriptazurecli_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ContainerInitParameters struct { + + // Container group name, if not specified then the name will get auto-generated. For more information, please refer to the Container Configuration documentation. + ContainerGroupName *string `json:"containerGroupName,omitempty" tf:"container_group_name,omitempty"` +} + type ContainerObservation struct { // Container group name, if not specified then the name will get auto-generated. For more information, please refer to the Container Configuration documentation. @@ -26,6 +32,15 @@ type ContainerParameters struct { ContainerGroupName *string `json:"containerGroupName,omitempty" tf:"container_group_name,omitempty"` } +type EnvironmentVariableInitParameters struct { + + // Specifies the name of the environment variable. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the value of the environment variable. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type EnvironmentVariableObservation struct { // Specifies the name of the environment variable. @@ -38,8 +53,8 @@ type EnvironmentVariableObservation struct { type EnvironmentVariableParameters struct { // Specifies the name of the environment variable. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the value of the secure environment variable. // +kubebuilder:validation:Optional @@ -50,6 +65,12 @@ type EnvironmentVariableParameters struct { Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type IdentityInitParameters struct { + + // Type of the managed identity. The only possible value is UserAssigned. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies the list of user-assigned managed identity IDs associated with the resource. Changing this forces a new resource to be created. @@ -76,8 +97,59 @@ type IdentityParameters struct { IdentityIdsSelector *v1.Selector `json:"identityIdsSelector,omitempty" tf:"-"` // Type of the managed identity. The only possible value is UserAssigned. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ResourceDeploymentScriptAzureCliInitParameters struct { + + // Specifies the cleanup preference when the script execution gets in a terminal state. Possible values are Always, OnExpiration, OnSuccess. Defaults to Always. Changing this forces a new Resource Deployment Script to be created. + CleanupPreference *string `json:"cleanupPreference,omitempty" tf:"cleanup_preference,omitempty"` + + // Command line arguments to pass to the script. Changing this forces a new Resource Deployment Script to be created. + CommandLine *string `json:"commandLine,omitempty" tf:"command_line,omitempty"` + + // A container block as defined below. Changing this forces a new Resource Deployment Script to be created. + Container []ContainerInitParameters `json:"container,omitempty" tf:"container,omitempty"` + + // An environment_variable block as defined below. Changing this forces a new Resource Deployment Script to be created. + EnvironmentVariable []EnvironmentVariableInitParameters `json:"environmentVariable,omitempty" tf:"environment_variable,omitempty"` + + // Gets or sets how the deployment script should be forced to execute even if the script resource has not changed. Can be current time stamp or a GUID. Changing this forces a new Resource Deployment Script to be created. + ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"` + + // An identity block as defined below. Changing this forces a new Resource Deployment Script to be created. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the Azure Region where the Resource Deployment Script should exist. Changing this forces a new Resource Deployment Script to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name which should be used for this Resource Deployment Script. The name length must be from 1 to 260 characters. The name can only contain alphanumeric, underscore, parentheses, hyphen and period, and it cannot end with a period. Changing this forces a new Resource Deployment Script to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Uri for the script. This is the entry point for the external script. Changing this forces a new Resource Deployment Script to be created. + PrimaryScriptURI *string `json:"primaryScriptUri,omitempty" tf:"primary_script_uri,omitempty"` + + // Interval for which the service retains the script resource after it reaches a terminal state. Resource will be deleted when this duration expires. The time duration should be between 1 hour and 26 hours (inclusive) and should be specified in ISO 8601 format. Changing this forces a new Resource Deployment Script to be created. + RetentionInterval *string `json:"retentionInterval,omitempty" tf:"retention_interval,omitempty"` + + // Script body. Changing this forces a new Resource Deployment Script to be created. + ScriptContent *string `json:"scriptContent,omitempty" tf:"script_content,omitempty"` + + // A storage_account block as defined below. Changing this forces a new Resource Deployment Script to be created. + StorageAccount []StorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // Supporting files for the external script. Changing this forces a new Resource Deployment Script to be created. + SupportingScriptUris []*string `json:"supportingScriptUris,omitempty" tf:"supporting_script_uris,omitempty"` + + // A mapping of tags which should be assigned to the Resource Deployment Script. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Maximum allowed script execution time specified in ISO 8601 format. Needs to be greater than 0 and smaller than 1 day. Defaults to P1D. Changing this forces a new Resource Deployment Script to be created. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` + + // Azure CLI module version to be used. The supported versions are 2.0.77, 2.0.78, 2.0.79, 2.0.80, 2.0.81, 2.1.0, 2.10.0, 2.10.1, 2.11.0, 2.11.1, 2.12.0, 2.12.1, 2.13.0, 2.14.0, 2.14.1, 2.14.2, 2.15.0, 2.15.1, 2.16.0, 2.17.0, 2.17.1, 2.18.0, 2.19.0, 2.19.1, 2.2.0, 2.20.0, 2.21.0, 2.22.0, 2.22.1, 2.23.0, 2.24.0, 2.24.1, 2.24.2, 2.25.0, 2.26.0, 2.26.1, 2.27.0, 2.27.1, 2.27.2, 2.28.0, 2.29.0, 2.29.1, 2.29.2, 2.3.0, 2.3.1, 2.30.0, 2.31.0, 2.32.0, 2.33.0, 2.33.1, 2.34.0, 2.34.1, 2.35.0, 2.36.0, 2.37.0, 2.38.0, 2.39.0, 2.4.0, 2.40.0, 2.41.0, 2.5.0, 2.5.1, 2.6.0, 2.7.0, 2.8.0, 2.9.0, 2.9.1. Changing this forces a new Resource Deployment Script to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type ResourceDeploymentScriptAzureCliObservation struct { @@ -220,6 +292,12 @@ type ResourceDeploymentScriptAzureCliParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type StorageAccountInitParameters struct { + + // Specifies the storage account name. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type StorageAccountObservation struct { // Specifies the storage account name. @@ -233,14 +311,26 @@ type StorageAccountParameters struct { KeySecretRef v1.SecretKeySelector `json:"keySecretRef" tf:"-"` // Specifies the storage account name. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` } // ResourceDeploymentScriptAzureCliSpec defines the desired state of ResourceDeploymentScriptAzureCli type ResourceDeploymentScriptAzureCliSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourceDeploymentScriptAzureCliParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourceDeploymentScriptAzureCliInitParameters `json:"initProvider,omitempty"` } // ResourceDeploymentScriptAzureCliStatus defines the observed state of ResourceDeploymentScriptAzureCli. @@ -261,10 +351,10 @@ type ResourceDeploymentScriptAzureCliStatus struct { type ResourceDeploymentScriptAzureCli struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.retentionInterval)",message="retentionInterval is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version)",message="version is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.retentionInterval) || has(self.initProvider.retentionInterval)",message="retentionInterval is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.version) || has(self.initProvider.version)",message="version is a required parameter" Spec ResourceDeploymentScriptAzureCliSpec `json:"spec"` Status ResourceDeploymentScriptAzureCliStatus `json:"status,omitempty"` } diff --git a/apis/resources/v1beta1/zz_resourcedeploymentscriptazurepowershell_types.go b/apis/resources/v1beta1/zz_resourcedeploymentscriptazurepowershell_types.go index ef71054b8..792812403 100755 --- a/apis/resources/v1beta1/zz_resourcedeploymentscriptazurepowershell_types.go +++ b/apis/resources/v1beta1/zz_resourcedeploymentscriptazurepowershell_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ResourceDeploymentScriptAzurePowerShellContainerInitParameters struct { + + // Container group name, if not specified then the name will get auto-generated. For more information, please refer to the Container Configuration documentation. + ContainerGroupName *string `json:"containerGroupName,omitempty" tf:"container_group_name,omitempty"` +} + type ResourceDeploymentScriptAzurePowerShellContainerObservation struct { // Container group name, if not specified then the name will get auto-generated. For more information, please refer to the Container Configuration documentation. @@ -26,6 +32,15 @@ type ResourceDeploymentScriptAzurePowerShellContainerParameters struct { ContainerGroupName *string `json:"containerGroupName,omitempty" tf:"container_group_name,omitempty"` } +type ResourceDeploymentScriptAzurePowerShellEnvironmentVariableInitParameters struct { + + // Specifies the name of the environment variable. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the value of the environment variable. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type ResourceDeploymentScriptAzurePowerShellEnvironmentVariableObservation struct { // Specifies the name of the environment variable. @@ -38,8 +53,8 @@ type ResourceDeploymentScriptAzurePowerShellEnvironmentVariableObservation struc type ResourceDeploymentScriptAzurePowerShellEnvironmentVariableParameters struct { // Specifies the name of the environment variable. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the value of the secure environment variable. // +kubebuilder:validation:Optional @@ -50,6 +65,12 @@ type ResourceDeploymentScriptAzurePowerShellEnvironmentVariableParameters struct Value *string `json:"value,omitempty" tf:"value,omitempty"` } +type ResourceDeploymentScriptAzurePowerShellIdentityInitParameters struct { + + // Type of the managed identity. The only possible value is UserAssigned. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ResourceDeploymentScriptAzurePowerShellIdentityObservation struct { // Specifies the list of user-assigned managed identity IDs associated with the resource. Changing this forces a new resource to be created. @@ -76,8 +97,59 @@ type ResourceDeploymentScriptAzurePowerShellIdentityParameters struct { IdentityIdsSelector *v1.Selector `json:"identityIdsSelector,omitempty" tf:"-"` // Type of the managed identity. The only possible value is UserAssigned. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ResourceDeploymentScriptAzurePowerShellInitParameters struct { + + // Specifies the cleanup preference when the script execution gets in a terminal state. Possible values are Always, OnExpiration, OnSuccess. Defaults to Always. Changing this forces a new Resource Deployment Script to be created. + CleanupPreference *string `json:"cleanupPreference,omitempty" tf:"cleanup_preference,omitempty"` + + // Command line arguments to pass to the script. Changing this forces a new Resource Deployment Script to be created. + CommandLine *string `json:"commandLine,omitempty" tf:"command_line,omitempty"` + + // A container block as defined below. Changing this forces a new Resource Deployment Script to be created. + Container []ResourceDeploymentScriptAzurePowerShellContainerInitParameters `json:"container,omitempty" tf:"container,omitempty"` + + // An environment_variable block as defined below. Changing this forces a new Resource Deployment Script to be created. + EnvironmentVariable []ResourceDeploymentScriptAzurePowerShellEnvironmentVariableInitParameters `json:"environmentVariable,omitempty" tf:"environment_variable,omitempty"` + + // Gets or sets how the deployment script should be forced to execute even if the script resource has not changed. Can be current time stamp or a GUID. Changing this forces a new Resource Deployment Script to be created. + ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"` + + // An identity block as defined below. Changing this forces a new Resource Deployment Script to be created. + Identity []ResourceDeploymentScriptAzurePowerShellIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the Azure Region where the Resource Deployment Script should exist. Changing this forces a new Resource Deployment Script to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name which should be used for this Resource Deployment Script. The name length must be from 1 to 260 characters. The name can only contain alphanumeric, underscore, parentheses, hyphen and period, and it cannot end with a period. Changing this forces a new Resource Deployment Script to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Uri for the script. This is the entry point for the external script. Changing this forces a new Resource Deployment Script to be created. + PrimaryScriptURI *string `json:"primaryScriptUri,omitempty" tf:"primary_script_uri,omitempty"` + + // Interval for which the service retains the script resource after it reaches a terminal state. Resource will be deleted when this duration expires. The time duration should be between 1 hour and 26 hours (inclusive) and should be specified in ISO 8601 format. Changing this forces a new Resource Deployment Script to be created. + RetentionInterval *string `json:"retentionInterval,omitempty" tf:"retention_interval,omitempty"` + + // Script body. Changing this forces a new Resource Deployment Script to be created. + ScriptContent *string `json:"scriptContent,omitempty" tf:"script_content,omitempty"` + + // A storage_account block as defined below. Changing this forces a new Resource Deployment Script to be created. + StorageAccount []ResourceDeploymentScriptAzurePowerShellStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // Supporting files for the external script. Changing this forces a new Resource Deployment Script to be created. + SupportingScriptUris []*string `json:"supportingScriptUris,omitempty" tf:"supporting_script_uris,omitempty"` + + // A mapping of tags which should be assigned to the Resource Deployment Script. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Maximum allowed script execution time specified in ISO 8601 format. Needs to be greater than 0 and smaller than 1 day. Defaults to P1D. Changing this forces a new Resource Deployment Script to be created. + Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` + + // Azure PowerShell module version to be used. The supported versions are 2.7, 2.8, 3.0, 3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.7, 3.8, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.7, 4.8, 5.0, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 5.8, 5.9, 6.0, 6.1, 6.2, 6.3, 6.4, 6.5, 6.6, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 8.0, 8.1, 8.2, 8.3, 9.0. Changing this forces a new Resource Deployment Script to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type ResourceDeploymentScriptAzurePowerShellObservation struct { @@ -220,6 +292,12 @@ type ResourceDeploymentScriptAzurePowerShellParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type ResourceDeploymentScriptAzurePowerShellStorageAccountInitParameters struct { + + // Specifies the storage account name. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type ResourceDeploymentScriptAzurePowerShellStorageAccountObservation struct { // Specifies the storage account name. @@ -233,14 +311,26 @@ type ResourceDeploymentScriptAzurePowerShellStorageAccountParameters struct { KeySecretRef v1.SecretKeySelector `json:"keySecretRef" tf:"-"` // Specifies the storage account name. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` } // ResourceDeploymentScriptAzurePowerShellSpec defines the desired state of ResourceDeploymentScriptAzurePowerShell type ResourceDeploymentScriptAzurePowerShellSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourceDeploymentScriptAzurePowerShellParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourceDeploymentScriptAzurePowerShellInitParameters `json:"initProvider,omitempty"` } // ResourceDeploymentScriptAzurePowerShellStatus defines the observed state of ResourceDeploymentScriptAzurePowerShell. @@ -261,10 +351,10 @@ type ResourceDeploymentScriptAzurePowerShellStatus struct { type ResourceDeploymentScriptAzurePowerShell struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.retentionInterval)",message="retentionInterval is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version)",message="version is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.retentionInterval) || has(self.initProvider.retentionInterval)",message="retentionInterval is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.version) || has(self.initProvider.version)",message="version is a required parameter" Spec ResourceDeploymentScriptAzurePowerShellSpec `json:"spec"` Status ResourceDeploymentScriptAzurePowerShellStatus `json:"status,omitempty"` } diff --git a/apis/resources/v1beta1/zz_resourcegrouptemplatedeployment_types.go b/apis/resources/v1beta1/zz_resourcegrouptemplatedeployment_types.go index 8db230129..e74cd6cb4 100755 --- a/apis/resources/v1beta1/zz_resourcegrouptemplatedeployment_types.go +++ b/apis/resources/v1beta1/zz_resourcegrouptemplatedeployment_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ResourceGroupTemplateDeploymentInitParameters struct { + + // The Debug Level which should be used for this Resource Group Template Deployment. Possible values are none, requestContent, responseContent and requestContent, responseContent. + DebugLevel *string `json:"debugLevel,omitempty" tf:"debug_level,omitempty"` + + // The Deployment Mode for this Resource Group Template Deployment. Possible values are Complete (where resources in the Resource Group not specified in the ARM Template will be destroyed) and Incremental (where resources are additive only). + DeploymentMode *string `json:"deploymentMode,omitempty" tf:"deployment_mode,omitempty"` + + // The contents of the ARM Template parameters file - containing a JSON list of parameters. + ParametersContent *string `json:"parametersContent,omitempty" tf:"parameters_content,omitempty"` + + // A mapping of tags which should be assigned to the Resource Group Template Deployment. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The contents of the ARM Template which should be deployed into this Resource Group. Cannot be specified with template_spec_version_id. + TemplateContent *string `json:"templateContent,omitempty" tf:"template_content,omitempty"` + + // The ID of the Template Spec Version to deploy. Cannot be specified with template_content. + TemplateSpecVersionID *string `json:"templateSpecVersionId,omitempty" tf:"template_spec_version_id,omitempty"` +} + type ResourceGroupTemplateDeploymentObservation struct { // The Debug Level which should be used for this Resource Group Template Deployment. Possible values are none, requestContent, responseContent and requestContent, responseContent. @@ -87,6 +108,18 @@ type ResourceGroupTemplateDeploymentParameters struct { type ResourceGroupTemplateDeploymentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ResourceGroupTemplateDeploymentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ResourceGroupTemplateDeploymentInitParameters `json:"initProvider,omitempty"` } // ResourceGroupTemplateDeploymentStatus defines the observed state of ResourceGroupTemplateDeployment. @@ -107,7 +140,7 @@ type ResourceGroupTemplateDeploymentStatus struct { type ResourceGroupTemplateDeployment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.deploymentMode)",message="deploymentMode is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.deploymentMode) || has(self.initProvider.deploymentMode)",message="deploymentMode is a required parameter" Spec ResourceGroupTemplateDeploymentSpec `json:"spec"` Status ResourceGroupTemplateDeploymentStatus `json:"status,omitempty"` } diff --git a/apis/resources/v1beta1/zz_subscriptiontemplatedeployment_types.go b/apis/resources/v1beta1/zz_subscriptiontemplatedeployment_types.go index e97829dba..151b4ed8d 100755 --- a/apis/resources/v1beta1/zz_subscriptiontemplatedeployment_types.go +++ b/apis/resources/v1beta1/zz_subscriptiontemplatedeployment_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SubscriptionTemplateDeploymentInitParameters struct { + + // The Debug Level which should be used for this Subscription Template Deployment. Possible values are none, requestContent, responseContent and requestContent, responseContent. + DebugLevel *string `json:"debugLevel,omitempty" tf:"debug_level,omitempty"` + + // The Azure Region where the Subscription Template Deployment should exist. Changing this forces a new Subscription Template Deployment to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The contents of the ARM Template parameters file - containing a JSON list of parameters. + ParametersContent *string `json:"parametersContent,omitempty" tf:"parameters_content,omitempty"` + + // A mapping of tags which should be assigned to the Subscription Template Deployment. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The contents of the ARM Template which should be deployed into this Subscription. + TemplateContent *string `json:"templateContent,omitempty" tf:"template_content,omitempty"` + + // The ID of the Template Spec Version to deploy into the Subscription. Cannot be specified with template_content. + TemplateSpecVersionID *string `json:"templateSpecVersionId,omitempty" tf:"template_spec_version_id,omitempty"` +} + type SubscriptionTemplateDeploymentObservation struct { // The Debug Level which should be used for this Subscription Template Deployment. Possible values are none, requestContent, responseContent and requestContent, responseContent. @@ -71,6 +92,18 @@ type SubscriptionTemplateDeploymentParameters struct { type SubscriptionTemplateDeploymentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubscriptionTemplateDeploymentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubscriptionTemplateDeploymentInitParameters `json:"initProvider,omitempty"` } // SubscriptionTemplateDeploymentStatus defines the observed state of SubscriptionTemplateDeployment. @@ -91,7 +124,7 @@ type SubscriptionTemplateDeploymentStatus struct { type SubscriptionTemplateDeployment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec SubscriptionTemplateDeploymentSpec `json:"spec"` Status SubscriptionTemplateDeploymentStatus `json:"status,omitempty"` } diff --git a/apis/search/v1beta1/zz_generated.deepcopy.go b/apis/search/v1beta1/zz_generated.deepcopy.go index 21ccdf3b7..26e4fbc00 100644 --- a/apis/search/v1beta1/zz_generated.deepcopy.go +++ b/apis/search/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,26 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -64,6 +84,21 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueryKeysInitParameters) DeepCopyInto(out *QueryKeysInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryKeysInitParameters. +func (in *QueryKeysInitParameters) DeepCopy() *QueryKeysInitParameters { + if in == nil { + return nil + } + out := new(QueryKeysInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *QueryKeysObservation) DeepCopyInto(out *QueryKeysObservation) { *out = *in @@ -131,6 +166,99 @@ func (in *Service) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceInitParameters) DeepCopyInto(out *ServiceInitParameters) { + *out = *in + if in.AllowedIps != nil { + in, out := &in.AllowedIps, &out.AllowedIps + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AuthenticationFailureMode != nil { + in, out := &in.AuthenticationFailureMode, &out.AuthenticationFailureMode + *out = new(string) + **out = **in + } + if in.CustomerManagedKeyEnforcementEnabled != nil { + in, out := &in.CustomerManagedKeyEnforcementEnabled, &out.CustomerManagedKeyEnforcementEnabled + *out = new(bool) + **out = **in + } + if in.HostingMode != nil { + in, out := &in.HostingMode, &out.HostingMode + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAuthenticationEnabled != nil { + in, out := &in.LocalAuthenticationEnabled, &out.LocalAuthenticationEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PartitionCount != nil { + in, out := &in.PartitionCount, &out.PartitionCount + *out = new(float64) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.ReplicaCount != nil { + in, out := &in.ReplicaCount, &out.ReplicaCount + *out = new(float64) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceInitParameters. +func (in *ServiceInitParameters) DeepCopy() *ServiceInitParameters { + if in == nil { + return nil + } + out := new(ServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServiceList) DeepCopyInto(out *ServiceList) { *out = *in @@ -386,6 +514,7 @@ func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSpec. @@ -442,6 +571,31 @@ func (in *SharedPrivateLinkService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharedPrivateLinkServiceInitParameters) DeepCopyInto(out *SharedPrivateLinkServiceInitParameters) { + *out = *in + if in.RequestMessage != nil { + in, out := &in.RequestMessage, &out.RequestMessage + *out = new(string) + **out = **in + } + if in.SubresourceName != nil { + in, out := &in.SubresourceName, &out.SubresourceName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedPrivateLinkServiceInitParameters. +func (in *SharedPrivateLinkServiceInitParameters) DeepCopy() *SharedPrivateLinkServiceInitParameters { + if in == nil { + return nil + } + out := new(SharedPrivateLinkServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SharedPrivateLinkServiceList) DeepCopyInto(out *SharedPrivateLinkServiceList) { *out = *in @@ -579,6 +733,7 @@ func (in *SharedPrivateLinkServiceSpec) DeepCopyInto(out *SharedPrivateLinkServi *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedPrivateLinkServiceSpec. diff --git a/apis/search/v1beta1/zz_generated.managed.go b/apis/search/v1beta1/zz_generated.managed.go index d3824dd13..b3ed7fdcd 100644 --- a/apis/search/v1beta1/zz_generated.managed.go +++ b/apis/search/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Service) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Service. -func (mg *Service) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Service. +func (mg *Service) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Service. @@ -55,9 +55,9 @@ func (mg *Service) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Service. -func (mg *Service) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Service. +func (mg *Service) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Service. @@ -93,9 +93,9 @@ func (mg *SharedPrivateLinkService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SharedPrivateLinkService. -func (mg *SharedPrivateLinkService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SharedPrivateLinkService. +func (mg *SharedPrivateLinkService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SharedPrivateLinkService. @@ -131,9 +131,9 @@ func (mg *SharedPrivateLinkService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SharedPrivateLinkService. -func (mg *SharedPrivateLinkService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SharedPrivateLinkService. +func (mg *SharedPrivateLinkService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SharedPrivateLinkService. diff --git a/apis/search/v1beta1/zz_generated_terraformed.go b/apis/search/v1beta1/zz_generated_terraformed.go index e531e75cf..34aefb5f6 100755 --- a/apis/search/v1beta1/zz_generated_terraformed.go +++ b/apis/search/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Service) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Service +func (tr *Service) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Service using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Service) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *SharedPrivateLinkService) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SharedPrivateLinkService +func (tr *SharedPrivateLinkService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SharedPrivateLinkService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SharedPrivateLinkService) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/search/v1beta1/zz_service_types.go b/apis/search/v1beta1/zz_service_types.go index 4aa06dcac..bceaefea3 100755 --- a/apis/search/v1beta1/zz_service_types.go +++ b/apis/search/v1beta1/zz_service_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityInitParameters struct { + + // Specifies the type of Managed Service Identity that should be configured on this Search Service. The only possible value is SystemAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // The Principal ID associated with this Managed Service Identity. @@ -28,8 +34,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this Search Service. The only possible value is SystemAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type QueryKeysInitParameters struct { } type QueryKeysObservation struct { @@ -44,6 +53,45 @@ type QueryKeysObservation struct { type QueryKeysParameters struct { } +type ServiceInitParameters struct { + + // Specifies a list of inbound IPv4 or CIDRs that are allowed to access the Search Service. If the incoming IP request is from an IP address which is not included in the allowed_ips it will be blocked by the Search Services firewall. + AllowedIps []*string `json:"allowedIps,omitempty" tf:"allowed_ips,omitempty"` + + // Specifies the response that the Search Service should return for requests that fail authentication. Possible values include http401WithBearerChallenge or http403. + AuthenticationFailureMode *string `json:"authenticationFailureMode,omitempty" tf:"authentication_failure_mode,omitempty"` + + // Specifies whether the Search Service should enforce that non-customer resources are encrypted. Defaults to false. + CustomerManagedKeyEnforcementEnabled *bool `json:"customerManagedKeyEnforcementEnabled,omitempty" tf:"customer_managed_key_enforcement_enabled,omitempty"` + + // Specifies the Hosting Mode, which allows for High Density partitions (that allow for up to 1000 indexes) should be supported. Possible values are highDensity or default. Defaults to default. Changing this forces a new Search Service to be created. + HostingMode *string `json:"hostingMode,omitempty" tf:"hosting_mode,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies whether the Search Service allows authenticating using API Keys? Defaults to false. + LocalAuthenticationEnabled *bool `json:"localAuthenticationEnabled,omitempty" tf:"local_authentication_enabled,omitempty"` + + // The Azure Region where the Search Service should exist. Changing this forces a new Search Service to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the number of partitions which should be created. This field cannot be set when using a free or basic sku (see the Microsoft documentation). Possible values include 1, 2, 3, 4, 6, or 12. Defaults to 1. + PartitionCount *float64 `json:"partitionCount,omitempty" tf:"partition_count,omitempty"` + + // Specifies whether Public Network Access is allowed for this resource. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Specifies the number of Replica's which should be created for this Search Service. This field cannot be set when using a free sku (see the Microsoft documentation). + ReplicaCount *float64 `json:"replicaCount,omitempty" tf:"replica_count,omitempty"` + + // The SKU which should be used for this Search Service. Possible values include basic, free, standard, standard2, standard3, storage_optimized_l1 and storage_optimized_l2. Changing this forces a new Search Service to be created. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // Specifies a mapping of tags which should be assigned to this Search Service. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ServiceObservation struct { // Specifies a list of inbound IPv4 or CIDRs that are allowed to access the Search Service. If the incoming IP request is from an IP address which is not included in the allowed_ips it will be blocked by the Search Services firewall. @@ -160,6 +208,18 @@ type ServiceParameters struct { type ServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServiceInitParameters `json:"initProvider,omitempty"` } // ServiceStatus defines the observed state of Service. @@ -180,8 +240,8 @@ type ServiceStatus struct { type Service struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec ServiceSpec `json:"spec"` Status ServiceStatus `json:"status,omitempty"` } diff --git a/apis/search/v1beta1/zz_sharedprivatelinkservice_types.go b/apis/search/v1beta1/zz_sharedprivatelinkservice_types.go index e145abfd3..eceab83fd 100755 --- a/apis/search/v1beta1/zz_sharedprivatelinkservice_types.go +++ b/apis/search/v1beta1/zz_sharedprivatelinkservice_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SharedPrivateLinkServiceInitParameters struct { + + // Specify the request message for requesting approval of the Shared Private Link Enabled Remote Resource. + RequestMessage *string `json:"requestMessage,omitempty" tf:"request_message,omitempty"` + + // Specify the sub resource name which the Azure Search Private Endpoint is able to connect to. Changing this forces a new resource to be created. + SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` +} + type SharedPrivateLinkServiceObservation struct { // The ID of the Azure Search Shared Private Link resource. @@ -77,6 +86,18 @@ type SharedPrivateLinkServiceParameters struct { type SharedPrivateLinkServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SharedPrivateLinkServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SharedPrivateLinkServiceInitParameters `json:"initProvider,omitempty"` } // SharedPrivateLinkServiceStatus defines the observed state of SharedPrivateLinkService. @@ -97,7 +118,7 @@ type SharedPrivateLinkServiceStatus struct { type SharedPrivateLinkService struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subresourceName)",message="subresourceName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subresourceName) || has(self.initProvider.subresourceName)",message="subresourceName is a required parameter" Spec SharedPrivateLinkServiceSpec `json:"spec"` Status SharedPrivateLinkServiceStatus `json:"status,omitempty"` } diff --git a/apis/security/v1beta1/zz_advancedthreatprotection_types.go b/apis/security/v1beta1/zz_advancedthreatprotection_types.go index f4954a869..38ceb639d 100755 --- a/apis/security/v1beta1/zz_advancedthreatprotection_types.go +++ b/apis/security/v1beta1/zz_advancedthreatprotection_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AdvancedThreatProtectionInitParameters struct { + + // Should Advanced Threat Protection be enabled on this resource? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The ID of the Azure Resource which to enable Advanced Threat Protection on. Changing this forces a new resource to be created. + TargetResourceID *string `json:"targetResourceId,omitempty" tf:"target_resource_id,omitempty"` +} + type AdvancedThreatProtectionObservation struct { // Should Advanced Threat Protection be enabled on this resource? @@ -40,6 +49,18 @@ type AdvancedThreatProtectionParameters struct { type AdvancedThreatProtectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AdvancedThreatProtectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AdvancedThreatProtectionInitParameters `json:"initProvider,omitempty"` } // AdvancedThreatProtectionStatus defines the observed state of AdvancedThreatProtection. @@ -60,8 +81,8 @@ type AdvancedThreatProtectionStatus struct { type AdvancedThreatProtection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled)",message="enabled is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetResourceId)",message="targetResourceId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.enabled) || has(self.initProvider.enabled)",message="enabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.targetResourceId) || has(self.initProvider.targetResourceId)",message="targetResourceId is a required parameter" Spec AdvancedThreatProtectionSpec `json:"spec"` Status AdvancedThreatProtectionStatus `json:"status,omitempty"` } diff --git a/apis/security/v1beta1/zz_generated.deepcopy.go b/apis/security/v1beta1/zz_generated.deepcopy.go index fade52387..8b6fbeba0 100644 --- a/apis/security/v1beta1/zz_generated.deepcopy.go +++ b/apis/security/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,37 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AdditionalWorkspaceInitParameters) DeepCopyInto(out *AdditionalWorkspaceInitParameters) { + *out = *in + if in.DataTypes != nil { + in, out := &in.DataTypes, &out.DataTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.WorkspaceID != nil { + in, out := &in.WorkspaceID, &out.WorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalWorkspaceInitParameters. +func (in *AdditionalWorkspaceInitParameters) DeepCopy() *AdditionalWorkspaceInitParameters { + if in == nil { + return nil + } + out := new(AdditionalWorkspaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AdditionalWorkspaceObservation) DeepCopyInto(out *AdditionalWorkspaceObservation) { *out = *in @@ -103,6 +134,31 @@ func (in *AdvancedThreatProtection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AdvancedThreatProtectionInitParameters) DeepCopyInto(out *AdvancedThreatProtectionInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.TargetResourceID != nil { + in, out := &in.TargetResourceID, &out.TargetResourceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvancedThreatProtectionInitParameters. +func (in *AdvancedThreatProtectionInitParameters) DeepCopy() *AdvancedThreatProtectionInitParameters { + if in == nil { + return nil + } + out := new(AdvancedThreatProtectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AdvancedThreatProtectionList) DeepCopyInto(out *AdvancedThreatProtectionList) { *out = *in @@ -195,6 +251,7 @@ func (in *AdvancedThreatProtectionSpec) DeepCopyInto(out *AdvancedThreatProtecti *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvancedThreatProtectionSpec. @@ -224,6 +281,65 @@ func (in *AdvancedThreatProtectionStatus) DeepCopy() *AdvancedThreatProtectionSt return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AllowRuleInitParameters) DeepCopyInto(out *AllowRuleInitParameters) { + *out = *in + if in.ConnectionFromIpsNotAllowed != nil { + in, out := &in.ConnectionFromIpsNotAllowed, &out.ConnectionFromIpsNotAllowed + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionToIpsNotAllowed != nil { + in, out := &in.ConnectionToIpsNotAllowed, &out.ConnectionToIpsNotAllowed + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LocalUsersNotAllowed != nil { + in, out := &in.LocalUsersNotAllowed, &out.LocalUsersNotAllowed + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ProcessesNotAllowed != nil { + in, out := &in.ProcessesNotAllowed, &out.ProcessesNotAllowed + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AllowRuleInitParameters. +func (in *AllowRuleInitParameters) DeepCopy() *AllowRuleInitParameters { + if in == nil { + return nil + } + out := new(AllowRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AllowRuleObservation) DeepCopyInto(out *AllowRuleObservation) { *out = *in @@ -369,6 +485,40 @@ func (in *IOTSecurityDeviceGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTSecurityDeviceGroupInitParameters) DeepCopyInto(out *IOTSecurityDeviceGroupInitParameters) { + *out = *in + if in.AllowRule != nil { + in, out := &in.AllowRule, &out.AllowRule + *out = make([]AllowRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RangeRule != nil { + in, out := &in.RangeRule, &out.RangeRule + *out = make([]RangeRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTSecurityDeviceGroupInitParameters. +func (in *IOTSecurityDeviceGroupInitParameters) DeepCopy() *IOTSecurityDeviceGroupInitParameters { + if in == nil { + return nil + } + out := new(IOTSecurityDeviceGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTSecurityDeviceGroupList) DeepCopyInto(out *IOTSecurityDeviceGroupList) { *out = *in @@ -499,6 +649,7 @@ func (in *IOTSecurityDeviceGroupSpec) DeepCopyInto(out *IOTSecurityDeviceGroupSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTSecurityDeviceGroupSpec. @@ -555,6 +706,118 @@ func (in *IOTSecuritySolution) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IOTSecuritySolutionInitParameters) DeepCopyInto(out *IOTSecuritySolutionInitParameters) { + *out = *in + if in.AdditionalWorkspace != nil { + in, out := &in.AdditionalWorkspace, &out.AdditionalWorkspace + *out = make([]AdditionalWorkspaceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DisabledDataSources != nil { + in, out := &in.DisabledDataSources, &out.DisabledDataSources + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.EventsToExport != nil { + in, out := &in.EventsToExport, &out.EventsToExport + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } + if in.LogUnmaskedIpsEnabled != nil { + in, out := &in.LogUnmaskedIpsEnabled, &out.LogUnmaskedIpsEnabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.QueryForResources != nil { + in, out := &in.QueryForResources, &out.QueryForResources + *out = new(string) + **out = **in + } + if in.QuerySubscriptionIds != nil { + in, out := &in.QuerySubscriptionIds, &out.QuerySubscriptionIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RecommendationsEnabled != nil { + in, out := &in.RecommendationsEnabled, &out.RecommendationsEnabled + *out = make([]RecommendationsEnabledInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTSecuritySolutionInitParameters. +func (in *IOTSecuritySolutionInitParameters) DeepCopy() *IOTSecuritySolutionInitParameters { + if in == nil { + return nil + } + out := new(IOTSecuritySolutionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IOTSecuritySolutionList) DeepCopyInto(out *IOTSecuritySolutionList) { *out = *in @@ -875,6 +1138,7 @@ func (in *IOTSecuritySolutionSpec) DeepCopyInto(out *IOTSecuritySolutionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IOTSecuritySolutionSpec. @@ -904,6 +1168,41 @@ func (in *IOTSecuritySolutionStatus) DeepCopy() *IOTSecuritySolutionStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RangeRuleInitParameters) DeepCopyInto(out *RangeRuleInitParameters) { + *out = *in + if in.Duration != nil { + in, out := &in.Duration, &out.Duration + *out = new(string) + **out = **in + } + if in.Max != nil { + in, out := &in.Max, &out.Max + *out = new(float64) + **out = **in + } + if in.Min != nil { + in, out := &in.Min, &out.Min + *out = new(float64) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RangeRuleInitParameters. +func (in *RangeRuleInitParameters) DeepCopy() *RangeRuleInitParameters { + if in == nil { + return nil + } + out := new(RangeRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RangeRuleObservation) DeepCopyInto(out *RangeRuleObservation) { *out = *in @@ -974,6 +1273,101 @@ func (in *RangeRuleParameters) DeepCopy() *RangeRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecommendationsEnabledInitParameters) DeepCopyInto(out *RecommendationsEnabledInitParameters) { + *out = *in + if in.AcrAuthentication != nil { + in, out := &in.AcrAuthentication, &out.AcrAuthentication + *out = new(bool) + **out = **in + } + if in.AgentSendUnutilizedMsg != nil { + in, out := &in.AgentSendUnutilizedMsg, &out.AgentSendUnutilizedMsg + *out = new(bool) + **out = **in + } + if in.Baseline != nil { + in, out := &in.Baseline, &out.Baseline + *out = new(bool) + **out = **in + } + if in.EdgeHubMemOptimize != nil { + in, out := &in.EdgeHubMemOptimize, &out.EdgeHubMemOptimize + *out = new(bool) + **out = **in + } + if in.EdgeLoggingOption != nil { + in, out := &in.EdgeLoggingOption, &out.EdgeLoggingOption + *out = new(bool) + **out = **in + } + if in.IPFilterDenyAll != nil { + in, out := &in.IPFilterDenyAll, &out.IPFilterDenyAll + *out = new(bool) + **out = **in + } + if in.IPFilterPermissiveRule != nil { + in, out := &in.IPFilterPermissiveRule, &out.IPFilterPermissiveRule + *out = new(bool) + **out = **in + } + if in.InconsistentModuleSettings != nil { + in, out := &in.InconsistentModuleSettings, &out.InconsistentModuleSettings + *out = new(bool) + **out = **in + } + if in.InstallAgent != nil { + in, out := &in.InstallAgent, &out.InstallAgent + *out = new(bool) + **out = **in + } + if in.OpenPorts != nil { + in, out := &in.OpenPorts, &out.OpenPorts + *out = new(bool) + **out = **in + } + if in.PermissiveFirewallPolicy != nil { + in, out := &in.PermissiveFirewallPolicy, &out.PermissiveFirewallPolicy + *out = new(bool) + **out = **in + } + if in.PermissiveInputFirewallRules != nil { + in, out := &in.PermissiveInputFirewallRules, &out.PermissiveInputFirewallRules + *out = new(bool) + **out = **in + } + if in.PermissiveOutputFirewallRules != nil { + in, out := &in.PermissiveOutputFirewallRules, &out.PermissiveOutputFirewallRules + *out = new(bool) + **out = **in + } + if in.PrivilegedDockerOptions != nil { + in, out := &in.PrivilegedDockerOptions, &out.PrivilegedDockerOptions + *out = new(bool) + **out = **in + } + if in.SharedCredentials != nil { + in, out := &in.SharedCredentials, &out.SharedCredentials + *out = new(bool) + **out = **in + } + if in.VulnerableTLSCipherSuite != nil { + in, out := &in.VulnerableTLSCipherSuite, &out.VulnerableTLSCipherSuite + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecommendationsEnabledInitParameters. +func (in *RecommendationsEnabledInitParameters) DeepCopy() *RecommendationsEnabledInitParameters { + if in == nil { + return nil + } + out := new(RecommendationsEnabledInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecommendationsEnabledObservation) DeepCopyInto(out *RecommendationsEnabledObservation) { *out = *in @@ -1159,38 +1553,75 @@ func (in *RecommendationsEnabledParameters) DeepCopy() *RecommendationsEnabledPa if in == nil { return nil } - out := new(RecommendationsEnabledParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *SecurityCenterAssessment) DeepCopyInto(out *SecurityCenterAssessment) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) - in.Spec.DeepCopyInto(&out.Spec) - in.Status.DeepCopyInto(&out.Status) + out := new(RecommendationsEnabledParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityCenterAssessment) DeepCopyInto(out *SecurityCenterAssessment) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterAssessment. +func (in *SecurityCenterAssessment) DeepCopy() *SecurityCenterAssessment { + if in == nil { + return nil + } + out := new(SecurityCenterAssessment) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *SecurityCenterAssessment) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityCenterAssessmentInitParameters) DeepCopyInto(out *SecurityCenterAssessmentInitParameters) { + *out = *in + if in.AdditionalData != nil { + in, out := &in.AdditionalData, &out.AdditionalData + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = make([]StatusInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterAssessment. -func (in *SecurityCenterAssessment) DeepCopy() *SecurityCenterAssessment { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterAssessmentInitParameters. +func (in *SecurityCenterAssessmentInitParameters) DeepCopy() *SecurityCenterAssessmentInitParameters { if in == nil { return nil } - out := new(SecurityCenterAssessment) + out := new(SecurityCenterAssessmentInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *SecurityCenterAssessment) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityCenterAssessmentList) DeepCopyInto(out *SecurityCenterAssessmentList) { *out = *in @@ -1369,6 +1800,73 @@ func (in *SecurityCenterAssessmentPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityCenterAssessmentPolicyInitParameters) DeepCopyInto(out *SecurityCenterAssessmentPolicyInitParameters) { + *out = *in + if in.Categories != nil { + in, out := &in.Categories, &out.Categories + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.ImplementationEffort != nil { + in, out := &in.ImplementationEffort, &out.ImplementationEffort + *out = new(string) + **out = **in + } + if in.RemediationDescription != nil { + in, out := &in.RemediationDescription, &out.RemediationDescription + *out = new(string) + **out = **in + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = new(string) + **out = **in + } + if in.Threats != nil { + in, out := &in.Threats, &out.Threats + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.UserImpact != nil { + in, out := &in.UserImpact, &out.UserImpact + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterAssessmentPolicyInitParameters. +func (in *SecurityCenterAssessmentPolicyInitParameters) DeepCopy() *SecurityCenterAssessmentPolicyInitParameters { + if in == nil { + return nil + } + out := new(SecurityCenterAssessmentPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityCenterAssessmentPolicyList) DeepCopyInto(out *SecurityCenterAssessmentPolicyList) { *out = *in @@ -1550,6 +2048,7 @@ func (in *SecurityCenterAssessmentPolicySpec) DeepCopyInto(out *SecurityCenterAs *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterAssessmentPolicySpec. @@ -1584,6 +2083,7 @@ func (in *SecurityCenterAssessmentSpec) DeepCopyInto(out *SecurityCenterAssessme *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterAssessmentSpec. @@ -1640,6 +2140,26 @@ func (in *SecurityCenterAutoProvisioning) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityCenterAutoProvisioningInitParameters) DeepCopyInto(out *SecurityCenterAutoProvisioningInitParameters) { + *out = *in + if in.AutoProvision != nil { + in, out := &in.AutoProvision, &out.AutoProvision + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterAutoProvisioningInitParameters. +func (in *SecurityCenterAutoProvisioningInitParameters) DeepCopy() *SecurityCenterAutoProvisioningInitParameters { + if in == nil { + return nil + } + out := new(SecurityCenterAutoProvisioningInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityCenterAutoProvisioningList) DeepCopyInto(out *SecurityCenterAutoProvisioningList) { *out = *in @@ -1722,6 +2242,7 @@ func (in *SecurityCenterAutoProvisioningSpec) DeepCopyInto(out *SecurityCenterAu *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterAutoProvisioningSpec. @@ -1778,6 +2299,46 @@ func (in *SecurityCenterContact) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityCenterContactInitParameters) DeepCopyInto(out *SecurityCenterContactInitParameters) { + *out = *in + if in.AlertNotifications != nil { + in, out := &in.AlertNotifications, &out.AlertNotifications + *out = new(bool) + **out = **in + } + if in.AlertsToAdmins != nil { + in, out := &in.AlertsToAdmins, &out.AlertsToAdmins + *out = new(bool) + **out = **in + } + if in.Email != nil { + in, out := &in.Email, &out.Email + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Phone != nil { + in, out := &in.Phone, &out.Phone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterContactInitParameters. +func (in *SecurityCenterContactInitParameters) DeepCopy() *SecurityCenterContactInitParameters { + if in == nil { + return nil + } + out := new(SecurityCenterContactInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityCenterContactList) DeepCopyInto(out *SecurityCenterContactList) { *out = *in @@ -1900,6 +2461,7 @@ func (in *SecurityCenterContactSpec) DeepCopyInto(out *SecurityCenterContactSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterContactSpec. @@ -1956,6 +2518,26 @@ func (in *SecurityCenterServerVulnerabilityAssessment) DeepCopyObject() runtime. return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityCenterServerVulnerabilityAssessmentInitParameters) DeepCopyInto(out *SecurityCenterServerVulnerabilityAssessmentInitParameters) { + *out = *in + if in.HybridMachineID != nil { + in, out := &in.HybridMachineID, &out.HybridMachineID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterServerVulnerabilityAssessmentInitParameters. +func (in *SecurityCenterServerVulnerabilityAssessmentInitParameters) DeepCopy() *SecurityCenterServerVulnerabilityAssessmentInitParameters { + if in == nil { + return nil + } + out := new(SecurityCenterServerVulnerabilityAssessmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityCenterServerVulnerabilityAssessmentList) DeepCopyInto(out *SecurityCenterServerVulnerabilityAssessmentList) { *out = *in @@ -2058,6 +2640,7 @@ func (in *SecurityCenterServerVulnerabilityAssessmentSpec) DeepCopyInto(out *Sec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterServerVulnerabilityAssessmentSpec. @@ -2114,6 +2697,21 @@ func (in *SecurityCenterServerVulnerabilityAssessmentVirtualMachine) DeepCopyObj return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityCenterServerVulnerabilityAssessmentVirtualMachineInitParameters) DeepCopyInto(out *SecurityCenterServerVulnerabilityAssessmentVirtualMachineInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterServerVulnerabilityAssessmentVirtualMachineInitParameters. +func (in *SecurityCenterServerVulnerabilityAssessmentVirtualMachineInitParameters) DeepCopy() *SecurityCenterServerVulnerabilityAssessmentVirtualMachineInitParameters { + if in == nil { + return nil + } + out := new(SecurityCenterServerVulnerabilityAssessmentVirtualMachineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityCenterServerVulnerabilityAssessmentVirtualMachineList) DeepCopyInto(out *SecurityCenterServerVulnerabilityAssessmentVirtualMachineList) { *out = *in @@ -2206,6 +2804,7 @@ func (in *SecurityCenterServerVulnerabilityAssessmentVirtualMachineSpec) DeepCop *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterServerVulnerabilityAssessmentVirtualMachineSpec. @@ -2262,6 +2861,31 @@ func (in *SecurityCenterSetting) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityCenterSettingInitParameters) DeepCopyInto(out *SecurityCenterSettingInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.SettingName != nil { + in, out := &in.SettingName, &out.SettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterSettingInitParameters. +func (in *SecurityCenterSettingInitParameters) DeepCopy() *SecurityCenterSettingInitParameters { + if in == nil { + return nil + } + out := new(SecurityCenterSettingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityCenterSettingList) DeepCopyInto(out *SecurityCenterSettingList) { *out = *in @@ -2354,6 +2978,7 @@ func (in *SecurityCenterSettingSpec) DeepCopyInto(out *SecurityCenterSettingSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterSettingSpec. @@ -2410,6 +3035,36 @@ func (in *SecurityCenterSubscriptionPricing) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityCenterSubscriptionPricingInitParameters) DeepCopyInto(out *SecurityCenterSubscriptionPricingInitParameters) { + *out = *in + if in.ResourceType != nil { + in, out := &in.ResourceType, &out.ResourceType + *out = new(string) + **out = **in + } + if in.Subplan != nil { + in, out := &in.Subplan, &out.Subplan + *out = new(string) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterSubscriptionPricingInitParameters. +func (in *SecurityCenterSubscriptionPricingInitParameters) DeepCopy() *SecurityCenterSubscriptionPricingInitParameters { + if in == nil { + return nil + } + out := new(SecurityCenterSubscriptionPricingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityCenterSubscriptionPricingList) DeepCopyInto(out *SecurityCenterSubscriptionPricingList) { *out = *in @@ -2512,6 +3167,7 @@ func (in *SecurityCenterSubscriptionPricingSpec) DeepCopyInto(out *SecurityCente *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterSubscriptionPricingSpec. @@ -2568,6 +3224,26 @@ func (in *SecurityCenterWorkspace) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecurityCenterWorkspaceInitParameters) DeepCopyInto(out *SecurityCenterWorkspaceInitParameters) { + *out = *in + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterWorkspaceInitParameters. +func (in *SecurityCenterWorkspaceInitParameters) DeepCopy() *SecurityCenterWorkspaceInitParameters { + if in == nil { + return nil + } + out := new(SecurityCenterWorkspaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityCenterWorkspaceList) DeepCopyInto(out *SecurityCenterWorkspaceList) { *out = *in @@ -2670,6 +3346,7 @@ func (in *SecurityCenterWorkspaceSpec) DeepCopyInto(out *SecurityCenterWorkspace *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityCenterWorkspaceSpec. @@ -2699,6 +3376,36 @@ func (in *SecurityCenterWorkspaceStatus) DeepCopy() *SecurityCenterWorkspaceStat return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StatusInitParameters) DeepCopyInto(out *StatusInitParameters) { + *out = *in + if in.Cause != nil { + in, out := &in.Cause, &out.Cause + *out = new(string) + **out = **in + } + if in.Code != nil { + in, out := &in.Code, &out.Code + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatusInitParameters. +func (in *StatusInitParameters) DeepCopy() *StatusInitParameters { + if in == nil { + return nil + } + out := new(StatusInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StatusObservation) DeepCopyInto(out *StatusObservation) { *out = *in diff --git a/apis/security/v1beta1/zz_generated.managed.go b/apis/security/v1beta1/zz_generated.managed.go index c1c6a93e6..245a82125 100644 --- a/apis/security/v1beta1/zz_generated.managed.go +++ b/apis/security/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AdvancedThreatProtection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AdvancedThreatProtection. -func (mg *AdvancedThreatProtection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AdvancedThreatProtection. +func (mg *AdvancedThreatProtection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AdvancedThreatProtection. @@ -55,9 +55,9 @@ func (mg *AdvancedThreatProtection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AdvancedThreatProtection. -func (mg *AdvancedThreatProtection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AdvancedThreatProtection. +func (mg *AdvancedThreatProtection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AdvancedThreatProtection. @@ -93,9 +93,9 @@ func (mg *IOTSecurityDeviceGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTSecurityDeviceGroup. -func (mg *IOTSecurityDeviceGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTSecurityDeviceGroup. +func (mg *IOTSecurityDeviceGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTSecurityDeviceGroup. @@ -131,9 +131,9 @@ func (mg *IOTSecurityDeviceGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTSecurityDeviceGroup. -func (mg *IOTSecurityDeviceGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTSecurityDeviceGroup. +func (mg *IOTSecurityDeviceGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTSecurityDeviceGroup. @@ -169,9 +169,9 @@ func (mg *IOTSecuritySolution) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IOTSecuritySolution. -func (mg *IOTSecuritySolution) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IOTSecuritySolution. +func (mg *IOTSecuritySolution) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IOTSecuritySolution. @@ -207,9 +207,9 @@ func (mg *IOTSecuritySolution) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IOTSecuritySolution. -func (mg *IOTSecuritySolution) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IOTSecuritySolution. +func (mg *IOTSecuritySolution) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IOTSecuritySolution. @@ -245,9 +245,9 @@ func (mg *SecurityCenterAssessment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityCenterAssessment. -func (mg *SecurityCenterAssessment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityCenterAssessment. +func (mg *SecurityCenterAssessment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityCenterAssessment. @@ -283,9 +283,9 @@ func (mg *SecurityCenterAssessment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityCenterAssessment. -func (mg *SecurityCenterAssessment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityCenterAssessment. +func (mg *SecurityCenterAssessment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityCenterAssessment. @@ -321,9 +321,9 @@ func (mg *SecurityCenterAssessmentPolicy) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityCenterAssessmentPolicy. -func (mg *SecurityCenterAssessmentPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityCenterAssessmentPolicy. +func (mg *SecurityCenterAssessmentPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityCenterAssessmentPolicy. @@ -359,9 +359,9 @@ func (mg *SecurityCenterAssessmentPolicy) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityCenterAssessmentPolicy. -func (mg *SecurityCenterAssessmentPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityCenterAssessmentPolicy. +func (mg *SecurityCenterAssessmentPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityCenterAssessmentPolicy. @@ -397,9 +397,9 @@ func (mg *SecurityCenterAutoProvisioning) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityCenterAutoProvisioning. -func (mg *SecurityCenterAutoProvisioning) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityCenterAutoProvisioning. +func (mg *SecurityCenterAutoProvisioning) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityCenterAutoProvisioning. @@ -435,9 +435,9 @@ func (mg *SecurityCenterAutoProvisioning) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityCenterAutoProvisioning. -func (mg *SecurityCenterAutoProvisioning) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityCenterAutoProvisioning. +func (mg *SecurityCenterAutoProvisioning) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityCenterAutoProvisioning. @@ -473,9 +473,9 @@ func (mg *SecurityCenterContact) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityCenterContact. -func (mg *SecurityCenterContact) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityCenterContact. +func (mg *SecurityCenterContact) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityCenterContact. @@ -511,9 +511,9 @@ func (mg *SecurityCenterContact) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityCenterContact. -func (mg *SecurityCenterContact) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityCenterContact. +func (mg *SecurityCenterContact) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityCenterContact. @@ -549,9 +549,9 @@ func (mg *SecurityCenterServerVulnerabilityAssessment) GetDeletionPolicy() xpv1. return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityCenterServerVulnerabilityAssessment. -func (mg *SecurityCenterServerVulnerabilityAssessment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityCenterServerVulnerabilityAssessment. +func (mg *SecurityCenterServerVulnerabilityAssessment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityCenterServerVulnerabilityAssessment. @@ -587,9 +587,9 @@ func (mg *SecurityCenterServerVulnerabilityAssessment) SetDeletionPolicy(r xpv1. mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityCenterServerVulnerabilityAssessment. -func (mg *SecurityCenterServerVulnerabilityAssessment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityCenterServerVulnerabilityAssessment. +func (mg *SecurityCenterServerVulnerabilityAssessment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityCenterServerVulnerabilityAssessment. @@ -625,9 +625,9 @@ func (mg *SecurityCenterServerVulnerabilityAssessmentVirtualMachine) GetDeletion return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityCenterServerVulnerabilityAssessmentVirtualMachine. -func (mg *SecurityCenterServerVulnerabilityAssessmentVirtualMachine) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityCenterServerVulnerabilityAssessmentVirtualMachine. +func (mg *SecurityCenterServerVulnerabilityAssessmentVirtualMachine) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityCenterServerVulnerabilityAssessmentVirtualMachine. @@ -663,9 +663,9 @@ func (mg *SecurityCenterServerVulnerabilityAssessmentVirtualMachine) SetDeletion mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityCenterServerVulnerabilityAssessmentVirtualMachine. -func (mg *SecurityCenterServerVulnerabilityAssessmentVirtualMachine) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityCenterServerVulnerabilityAssessmentVirtualMachine. +func (mg *SecurityCenterServerVulnerabilityAssessmentVirtualMachine) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityCenterServerVulnerabilityAssessmentVirtualMachine. @@ -701,9 +701,9 @@ func (mg *SecurityCenterSetting) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityCenterSetting. -func (mg *SecurityCenterSetting) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityCenterSetting. +func (mg *SecurityCenterSetting) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityCenterSetting. @@ -739,9 +739,9 @@ func (mg *SecurityCenterSetting) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityCenterSetting. -func (mg *SecurityCenterSetting) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityCenterSetting. +func (mg *SecurityCenterSetting) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityCenterSetting. @@ -777,9 +777,9 @@ func (mg *SecurityCenterSubscriptionPricing) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityCenterSubscriptionPricing. -func (mg *SecurityCenterSubscriptionPricing) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityCenterSubscriptionPricing. +func (mg *SecurityCenterSubscriptionPricing) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityCenterSubscriptionPricing. @@ -815,9 +815,9 @@ func (mg *SecurityCenterSubscriptionPricing) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityCenterSubscriptionPricing. -func (mg *SecurityCenterSubscriptionPricing) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityCenterSubscriptionPricing. +func (mg *SecurityCenterSubscriptionPricing) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityCenterSubscriptionPricing. @@ -853,9 +853,9 @@ func (mg *SecurityCenterWorkspace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SecurityCenterWorkspace. -func (mg *SecurityCenterWorkspace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SecurityCenterWorkspace. +func (mg *SecurityCenterWorkspace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SecurityCenterWorkspace. @@ -891,9 +891,9 @@ func (mg *SecurityCenterWorkspace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SecurityCenterWorkspace. -func (mg *SecurityCenterWorkspace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SecurityCenterWorkspace. +func (mg *SecurityCenterWorkspace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SecurityCenterWorkspace. diff --git a/apis/security/v1beta1/zz_generated_terraformed.go b/apis/security/v1beta1/zz_generated_terraformed.go index faa1a5075..fc0c5d1c0 100755 --- a/apis/security/v1beta1/zz_generated_terraformed.go +++ b/apis/security/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *AdvancedThreatProtection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AdvancedThreatProtection +func (tr *AdvancedThreatProtection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AdvancedThreatProtection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AdvancedThreatProtection) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *IOTSecurityDeviceGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTSecurityDeviceGroup +func (tr *IOTSecurityDeviceGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTSecurityDeviceGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTSecurityDeviceGroup) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *IOTSecuritySolution) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IOTSecuritySolution +func (tr *IOTSecuritySolution) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IOTSecuritySolution using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IOTSecuritySolution) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *SecurityCenterAssessment) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityCenterAssessment +func (tr *SecurityCenterAssessment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityCenterAssessment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityCenterAssessment) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *SecurityCenterAssessmentPolicy) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityCenterAssessmentPolicy +func (tr *SecurityCenterAssessmentPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityCenterAssessmentPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityCenterAssessmentPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *SecurityCenterAutoProvisioning) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityCenterAutoProvisioning +func (tr *SecurityCenterAutoProvisioning) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityCenterAutoProvisioning using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityCenterAutoProvisioning) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *SecurityCenterContact) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityCenterContact +func (tr *SecurityCenterContact) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityCenterContact using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityCenterContact) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *SecurityCenterServerVulnerabilityAssessment) SetParameters(params map[ return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityCenterServerVulnerabilityAssessment +func (tr *SecurityCenterServerVulnerabilityAssessment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityCenterServerVulnerabilityAssessment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityCenterServerVulnerabilityAssessment) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *SecurityCenterServerVulnerabilityAssessmentVirtualMachine) SetParamete return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityCenterServerVulnerabilityAssessmentVirtualMachine +func (tr *SecurityCenterServerVulnerabilityAssessmentVirtualMachine) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityCenterServerVulnerabilityAssessmentVirtualMachine using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityCenterServerVulnerabilityAssessmentVirtualMachine) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *SecurityCenterSetting) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityCenterSetting +func (tr *SecurityCenterSetting) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityCenterSetting using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityCenterSetting) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *SecurityCenterSubscriptionPricing) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityCenterSubscriptionPricing +func (tr *SecurityCenterSubscriptionPricing) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityCenterSubscriptionPricing using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityCenterSubscriptionPricing) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *SecurityCenterWorkspace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SecurityCenterWorkspace +func (tr *SecurityCenterWorkspace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SecurityCenterWorkspace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SecurityCenterWorkspace) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/security/v1beta1/zz_iotsecuritydevicegroup_types.go b/apis/security/v1beta1/zz_iotsecuritydevicegroup_types.go index 7ea11a85e..41e21191d 100755 --- a/apis/security/v1beta1/zz_iotsecuritydevicegroup_types.go +++ b/apis/security/v1beta1/zz_iotsecuritydevicegroup_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AllowRuleInitParameters struct { + + // Specifies which IP is not allowed to be connected to in current device group for inbound connection. + ConnectionFromIpsNotAllowed []*string `json:"connectionFromIpsNotAllowed,omitempty" tf:"connection_from_ips_not_allowed,omitempty"` + + // Specifies which IP is not allowed to be connected to in current device group for outbound connection. + ConnectionToIpsNotAllowed []*string `json:"connectionToIpsNotAllowed,omitempty" tf:"connection_to_ips_not_allowed,omitempty"` + + // Specifies which local user is not allowed to login in current device group. + LocalUsersNotAllowed []*string `json:"localUsersNotAllowed,omitempty" tf:"local_users_not_allowed,omitempty"` + + // Specifies which process is not allowed to be executed in current device group. + ProcessesNotAllowed []*string `json:"processesNotAllowed,omitempty" tf:"processes_not_allowed,omitempty"` +} + type AllowRuleObservation struct { // Specifies which IP is not allowed to be connected to in current device group for inbound connection. @@ -47,6 +62,18 @@ type AllowRuleParameters struct { ProcessesNotAllowed []*string `json:"processesNotAllowed,omitempty" tf:"processes_not_allowed,omitempty"` } +type IOTSecurityDeviceGroupInitParameters struct { + + // an allow_rule blocks as defined below. + AllowRule []AllowRuleInitParameters `json:"allowRule,omitempty" tf:"allow_rule,omitempty"` + + // Specifies the name of the Device Security Group. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more range_rule blocks as defined below. + RangeRule []RangeRuleInitParameters `json:"rangeRule,omitempty" tf:"range_rule,omitempty"` +} + type IOTSecurityDeviceGroupObservation struct { // an allow_rule blocks as defined below. @@ -94,6 +121,21 @@ type IOTSecurityDeviceGroupParameters struct { RangeRule []RangeRuleParameters `json:"rangeRule,omitempty" tf:"range_rule,omitempty"` } +type RangeRuleInitParameters struct { + + // Specifies the time range. represented in ISO 8601 duration format. + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` + + // The maximum threshold in the given time window. + Max *float64 `json:"max,omitempty" tf:"max,omitempty"` + + // The minimum threshold in the given time window. + Min *float64 `json:"min,omitempty" tf:"min,omitempty"` + + // The type of supported rule type. Possible Values are ActiveConnectionsNotInAllowedRange, AmqpC2DMessagesNotInAllowedRange, MqttC2DMessagesNotInAllowedRange, HttpC2DMessagesNotInAllowedRange, AmqpC2DRejectedMessagesNotInAllowedRange, MqttC2DRejectedMessagesNotInAllowedRange, HttpC2DRejectedMessagesNotInAllowedRange, AmqpD2CMessagesNotInAllowedRange, MqttD2CMessagesNotInAllowedRange, HttpD2CMessagesNotInAllowedRange, DirectMethodInvokesNotInAllowedRange, FailedLocalLoginsNotInAllowedRange, FileUploadsNotInAllowedRange, QueuePurgesNotInAllowedRange, TwinUpdatesNotInAllowedRange and UnauthorizedOperationsNotInAllowedRange. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type RangeRuleObservation struct { // Specifies the time range. represented in ISO 8601 duration format. @@ -112,26 +154,38 @@ type RangeRuleObservation struct { type RangeRuleParameters struct { // Specifies the time range. represented in ISO 8601 duration format. - // +kubebuilder:validation:Required - Duration *string `json:"duration" tf:"duration,omitempty"` + // +kubebuilder:validation:Optional + Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // The maximum threshold in the given time window. - // +kubebuilder:validation:Required - Max *float64 `json:"max" tf:"max,omitempty"` + // +kubebuilder:validation:Optional + Max *float64 `json:"max,omitempty" tf:"max,omitempty"` // The minimum threshold in the given time window. - // +kubebuilder:validation:Required - Min *float64 `json:"min" tf:"min,omitempty"` + // +kubebuilder:validation:Optional + Min *float64 `json:"min,omitempty" tf:"min,omitempty"` // The type of supported rule type. Possible Values are ActiveConnectionsNotInAllowedRange, AmqpC2DMessagesNotInAllowedRange, MqttC2DMessagesNotInAllowedRange, HttpC2DMessagesNotInAllowedRange, AmqpC2DRejectedMessagesNotInAllowedRange, MqttC2DRejectedMessagesNotInAllowedRange, HttpC2DRejectedMessagesNotInAllowedRange, AmqpD2CMessagesNotInAllowedRange, MqttD2CMessagesNotInAllowedRange, HttpD2CMessagesNotInAllowedRange, DirectMethodInvokesNotInAllowedRange, FailedLocalLoginsNotInAllowedRange, FileUploadsNotInAllowedRange, QueuePurgesNotInAllowedRange, TwinUpdatesNotInAllowedRange and UnauthorizedOperationsNotInAllowedRange. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // IOTSecurityDeviceGroupSpec defines the desired state of IOTSecurityDeviceGroup type IOTSecurityDeviceGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTSecurityDeviceGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTSecurityDeviceGroupInitParameters `json:"initProvider,omitempty"` } // IOTSecurityDeviceGroupStatus defines the observed state of IOTSecurityDeviceGroup. @@ -152,7 +206,7 @@ type IOTSecurityDeviceGroupStatus struct { type IOTSecurityDeviceGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec IOTSecurityDeviceGroupSpec `json:"spec"` Status IOTSecurityDeviceGroupStatus `json:"status,omitempty"` } diff --git a/apis/security/v1beta1/zz_iotsecuritysolution_types.go b/apis/security/v1beta1/zz_iotsecuritysolution_types.go index 3c2be2a5a..ab74f2336 100755 --- a/apis/security/v1beta1/zz_iotsecuritysolution_types.go +++ b/apis/security/v1beta1/zz_iotsecuritysolution_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AdditionalWorkspaceInitParameters struct { + + // A list of data types which sent to workspace. Possible values are Alerts and RawEvents. + DataTypes []*string `json:"dataTypes,omitempty" tf:"data_types,omitempty"` + + // The resource ID of the Log Analytics Workspace. + WorkspaceID *string `json:"workspaceId,omitempty" tf:"workspace_id,omitempty"` +} + type AdditionalWorkspaceObservation struct { // A list of data types which sent to workspace. Possible values are Alerts and RawEvents. @@ -25,12 +34,54 @@ type AdditionalWorkspaceObservation struct { type AdditionalWorkspaceParameters struct { // A list of data types which sent to workspace. Possible values are Alerts and RawEvents. - // +kubebuilder:validation:Required - DataTypes []*string `json:"dataTypes" tf:"data_types,omitempty"` + // +kubebuilder:validation:Optional + DataTypes []*string `json:"dataTypes,omitempty" tf:"data_types,omitempty"` // The resource ID of the Log Analytics Workspace. - // +kubebuilder:validation:Required - WorkspaceID *string `json:"workspaceId" tf:"workspace_id,omitempty"` + // +kubebuilder:validation:Optional + WorkspaceID *string `json:"workspaceId,omitempty" tf:"workspace_id,omitempty"` +} + +type IOTSecuritySolutionInitParameters struct { + + // A additional_workspace block as defined below. + AdditionalWorkspace []AdditionalWorkspaceInitParameters `json:"additionalWorkspace,omitempty" tf:"additional_workspace,omitempty"` + + // A list of disabled data sources for the Iot Security Solution. Possible value is TwinData. + DisabledDataSources []*string `json:"disabledDataSources,omitempty" tf:"disabled_data_sources,omitempty"` + + // Specifies the Display Name for this Iot Security Solution. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Is the Iot Security Solution enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A list of data which is to exported to analytic workspace. Valid values include RawEvents. + EventsToExport []*string `json:"eventsToExport,omitempty" tf:"events_to_export,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the Log Analytics Workspace ID to which the security data will be sent. + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` + + // Should IP addressed be unmasked in the log? Defaults to false. + LogUnmaskedIpsEnabled *bool `json:"logUnmaskedIpsEnabled,omitempty" tf:"log_unmasked_ips_enabled,omitempty"` + + // Specifies the name of the Iot Security Solution. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // An Azure Resource Graph query used to set the resources monitored. + QueryForResources *string `json:"queryForResources,omitempty" tf:"query_for_resources,omitempty"` + + // A list of subscription Ids on which the user defined resources query should be executed. + QuerySubscriptionIds []*string `json:"querySubscriptionIds,omitempty" tf:"query_subscription_ids,omitempty"` + + // A recommendations_enabled block of options to enable or disable as defined below. + RecommendationsEnabled []RecommendationsEnabledInitParameters `json:"recommendationsEnabled,omitempty" tf:"recommendations_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type IOTSecuritySolutionObservation struct { @@ -166,6 +217,57 @@ type IOTSecuritySolutionParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type RecommendationsEnabledInitParameters struct { + + // Is Principal Authentication enabled for the ACR repository? Defaults to true. + AcrAuthentication *bool `json:"acrAuthentication,omitempty" tf:"acr_authentication,omitempty"` + + // Is Agent send underutilized messages enabled? Defaults to true. + AgentSendUnutilizedMsg *bool `json:"agentSendUnutilizedMsg,omitempty" tf:"agent_send_unutilized_msg,omitempty"` + + // Is Security related system configuration issues identified? Defaults to true. + Baseline *bool `json:"baseline,omitempty" tf:"baseline,omitempty"` + + // Is IoT Edge Hub memory optimized? Defaults to true. + EdgeHubMemOptimize *bool `json:"edgeHubMemOptimize,omitempty" tf:"edge_hub_mem_optimize,omitempty"` + + // Is logging configured for IoT Edge module? Defaults to true. + EdgeLoggingOption *bool `json:"edgeLoggingOption,omitempty" tf:"edge_logging_option,omitempty"` + + // Is Default IP filter policy denied? Defaults to true. + IPFilterDenyAll *bool `json:"ipFilterDenyAll,omitempty" tf:"ip_filter_deny_all,omitempty"` + + // Is IP filter rule source allowable IP range too large? Defaults to true. + IPFilterPermissiveRule *bool `json:"ipFilterPermissiveRule,omitempty" tf:"ip_filter_permissive_rule,omitempty"` + + // Is inconsistent module settings enabled for SecurityGroup? Defaults to true. + InconsistentModuleSettings *bool `json:"inconsistentModuleSettings,omitempty" tf:"inconsistent_module_settings,omitempty"` + + // is Azure IoT Security agent installed? Defaults to true. + InstallAgent *bool `json:"installAgent,omitempty" tf:"install_agent,omitempty"` + + // Is any ports open on the device? Defaults to true. + OpenPorts *bool `json:"openPorts,omitempty" tf:"open_ports,omitempty"` + + // Does firewall policy exist which allow necessary communication to/from the device? Defaults to true. + PermissiveFirewallPolicy *bool `json:"permissiveFirewallPolicy,omitempty" tf:"permissive_firewall_policy,omitempty"` + + // Is only necessary addresses or ports are permitted in? Defaults to true. + PermissiveInputFirewallRules *bool `json:"permissiveInputFirewallRules,omitempty" tf:"permissive_input_firewall_rules,omitempty"` + + // Is only necessary addresses or ports are permitted out? Defaults to true. + PermissiveOutputFirewallRules *bool `json:"permissiveOutputFirewallRules,omitempty" tf:"permissive_output_firewall_rules,omitempty"` + + // Is high level permissions are needed for the module? Defaults to true. + PrivilegedDockerOptions *bool `json:"privilegedDockerOptions,omitempty" tf:"privileged_docker_options,omitempty"` + + // Is any credentials shared among devices? Defaults to true. + SharedCredentials *bool `json:"sharedCredentials,omitempty" tf:"shared_credentials,omitempty"` + + // Does TLS cipher suite need to be updated? Defaults to true. + VulnerableTLSCipherSuite *bool `json:"vulnerableTlsCipherSuite,omitempty" tf:"vulnerable_tls_cipher_suite,omitempty"` +} + type RecommendationsEnabledObservation struct { // Is Principal Authentication enabled for the ACR repository? Defaults to true. @@ -288,6 +390,18 @@ type RecommendationsEnabledParameters struct { type IOTSecuritySolutionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IOTSecuritySolutionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IOTSecuritySolutionInitParameters `json:"initProvider,omitempty"` } // IOTSecuritySolutionStatus defines the observed state of IOTSecuritySolution. @@ -308,9 +422,9 @@ type IOTSecuritySolutionStatus struct { type IOTSecuritySolution struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec IOTSecuritySolutionSpec `json:"spec"` Status IOTSecuritySolutionStatus `json:"status,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycenterassessment_types.go b/apis/security/v1beta1/zz_securitycenterassessment_types.go index 83f99c793..b5eb5f7cb 100755 --- a/apis/security/v1beta1/zz_securitycenterassessment_types.go +++ b/apis/security/v1beta1/zz_securitycenterassessment_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityCenterAssessmentInitParameters struct { + + // A map of additional data to associate with the assessment. + AdditionalData map[string]*string `json:"additionalData,omitempty" tf:"additional_data,omitempty"` + + // A status block as defined below. + Status []StatusInitParameters `json:"status,omitempty" tf:"status,omitempty"` +} + type SecurityCenterAssessmentObservation struct { // A map of additional data to associate with the assessment. @@ -70,6 +79,18 @@ type SecurityCenterAssessmentParameters struct { TargetResourceIDSelector *v1.Selector `json:"targetResourceIdSelector,omitempty" tf:"-"` } +type StatusInitParameters struct { + + // Specifies the cause of the assessment status. + Cause *string `json:"cause,omitempty" tf:"cause,omitempty"` + + // Specifies the programmatic code of the assessment status. Possible values are Healthy, Unhealthy and NotApplicable. + Code *string `json:"code,omitempty" tf:"code,omitempty"` + + // Specifies the human readable description of the assessment status. + Description *string `json:"description,omitempty" tf:"description,omitempty"` +} + type StatusObservation struct { // Specifies the cause of the assessment status. @@ -89,8 +110,8 @@ type StatusParameters struct { Cause *string `json:"cause,omitempty" tf:"cause,omitempty"` // Specifies the programmatic code of the assessment status. Possible values are Healthy, Unhealthy and NotApplicable. - // +kubebuilder:validation:Required - Code *string `json:"code" tf:"code,omitempty"` + // +kubebuilder:validation:Optional + Code *string `json:"code,omitempty" tf:"code,omitempty"` // Specifies the human readable description of the assessment status. // +kubebuilder:validation:Optional @@ -101,6 +122,18 @@ type StatusParameters struct { type SecurityCenterAssessmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityCenterAssessmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityCenterAssessmentInitParameters `json:"initProvider,omitempty"` } // SecurityCenterAssessmentStatus defines the observed state of SecurityCenterAssessment. @@ -121,7 +154,7 @@ type SecurityCenterAssessmentStatus struct { type SecurityCenterAssessment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.status)",message="status is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.status) || has(self.initProvider.status)",message="status is a required parameter" Spec SecurityCenterAssessmentSpec `json:"spec"` Status SecurityCenterAssessmentStatus `json:"status,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycenterassessmentpolicy_types.go b/apis/security/v1beta1/zz_securitycenterassessmentpolicy_types.go index 361822516..6166f0044 100755 --- a/apis/security/v1beta1/zz_securitycenterassessmentpolicy_types.go +++ b/apis/security/v1beta1/zz_securitycenterassessmentpolicy_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityCenterAssessmentPolicyInitParameters struct { + + // A list of the categories of resource that is at risk when the Security Center Assessment is unhealthy. Possible values are Unknown, Compute, Data, IdentityAndAccess, IoT and Networking. + Categories []*string `json:"categories,omitempty" tf:"categories,omitempty"` + + // The description of the Security Center Assessment. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The user-friendly display name of the Security Center Assessment. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The implementation effort which is used to remediate the Security Center Assessment. Possible values are Low, Moderate and High. + ImplementationEffort *string `json:"implementationEffort,omitempty" tf:"implementation_effort,omitempty"` + + // The description which is used to mitigate the security issue. + RemediationDescription *string `json:"remediationDescription,omitempty" tf:"remediation_description,omitempty"` + + // The severity level of the Security Center Assessment. Possible values are Low, Medium and High. Defaults to Medium. + Severity *string `json:"severity,omitempty" tf:"severity,omitempty"` + + // A list of the threat impacts for the Security Center Assessment. Possible values are AccountBreach, DataExfiltration, DataSpillage, DenialOfService, ElevationOfPrivilege, MaliciousInsider, MissingCoverage and ThreatResistance. + Threats []*string `json:"threats,omitempty" tf:"threats,omitempty"` + + // The user impact of the Security Center Assessment. Possible values are Low, Moderate and High. + UserImpact *string `json:"userImpact,omitempty" tf:"user_impact,omitempty"` +} + type SecurityCenterAssessmentPolicyObservation struct { // A list of the categories of resource that is at risk when the Security Center Assessment is unhealthy. Possible values are Unknown, Compute, Data, IdentityAndAccess, IoT and Networking. @@ -85,6 +112,18 @@ type SecurityCenterAssessmentPolicyParameters struct { type SecurityCenterAssessmentPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityCenterAssessmentPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityCenterAssessmentPolicyInitParameters `json:"initProvider,omitempty"` } // SecurityCenterAssessmentPolicyStatus defines the observed state of SecurityCenterAssessmentPolicy. @@ -105,8 +144,8 @@ type SecurityCenterAssessmentPolicyStatus struct { type SecurityCenterAssessmentPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.description)",message="description is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.description) || has(self.initProvider.description)",message="description is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" Spec SecurityCenterAssessmentPolicySpec `json:"spec"` Status SecurityCenterAssessmentPolicyStatus `json:"status,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycenterautoprovisioning_types.go b/apis/security/v1beta1/zz_securitycenterautoprovisioning_types.go index adc8ed2d8..14ca29c59 100755 --- a/apis/security/v1beta1/zz_securitycenterautoprovisioning_types.go +++ b/apis/security/v1beta1/zz_securitycenterautoprovisioning_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityCenterAutoProvisioningInitParameters struct { + + // Should the security agent be automatically provisioned on Virtual Machines in this subscription? Possible values are On (to install the security agent automatically, if it's missing) or Off (to not install the security agent automatically). + AutoProvision *string `json:"autoProvision,omitempty" tf:"auto_provision,omitempty"` +} + type SecurityCenterAutoProvisioningObservation struct { // Should the security agent be automatically provisioned on Virtual Machines in this subscription? Possible values are On (to install the security agent automatically, if it's missing) or Off (to not install the security agent automatically). @@ -33,6 +39,18 @@ type SecurityCenterAutoProvisioningParameters struct { type SecurityCenterAutoProvisioningSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityCenterAutoProvisioningParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityCenterAutoProvisioningInitParameters `json:"initProvider,omitempty"` } // SecurityCenterAutoProvisioningStatus defines the observed state of SecurityCenterAutoProvisioning. @@ -53,7 +71,7 @@ type SecurityCenterAutoProvisioningStatus struct { type SecurityCenterAutoProvisioning struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.autoProvision)",message="autoProvision is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.autoProvision) || has(self.initProvider.autoProvision)",message="autoProvision is a required parameter" Spec SecurityCenterAutoProvisioningSpec `json:"spec"` Status SecurityCenterAutoProvisioningStatus `json:"status,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycentercontact_types.go b/apis/security/v1beta1/zz_securitycentercontact_types.go index 771721081..2fe2c2a51 100755 --- a/apis/security/v1beta1/zz_securitycentercontact_types.go +++ b/apis/security/v1beta1/zz_securitycentercontact_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityCenterContactInitParameters struct { + + // Whether to send security alerts notifications to the security contact. + AlertNotifications *bool `json:"alertNotifications,omitempty" tf:"alert_notifications,omitempty"` + + // Whether to send security alerts notifications to subscription admins. + AlertsToAdmins *bool `json:"alertsToAdmins,omitempty" tf:"alerts_to_admins,omitempty"` + + // The email of the Security Center Contact. + Email *string `json:"email,omitempty" tf:"email,omitempty"` + + // The name of the Security Center Contact. Defaults to default1. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The phone number of the Security Center Contact. + Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` +} + type SecurityCenterContactObservation struct { // Whether to send security alerts notifications to the security contact. @@ -61,6 +79,18 @@ type SecurityCenterContactParameters struct { type SecurityCenterContactSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityCenterContactParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityCenterContactInitParameters `json:"initProvider,omitempty"` } // SecurityCenterContactStatus defines the observed state of SecurityCenterContact. @@ -81,9 +111,9 @@ type SecurityCenterContactStatus struct { type SecurityCenterContact struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.alertNotifications)",message="alertNotifications is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.alertsToAdmins)",message="alertsToAdmins is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.email)",message="email is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.alertNotifications) || has(self.initProvider.alertNotifications)",message="alertNotifications is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.alertsToAdmins) || has(self.initProvider.alertsToAdmins)",message="alertsToAdmins is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.email) || has(self.initProvider.email)",message="email is a required parameter" Spec SecurityCenterContactSpec `json:"spec"` Status SecurityCenterContactStatus `json:"status,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessment_types.go b/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessment_types.go index bf68b7170..0c841c965 100755 --- a/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessment_types.go +++ b/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessment_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityCenterServerVulnerabilityAssessmentInitParameters struct { + + // The ID of the Azure ARC server to be monitored by vulnerability assessment. Changing this forces a new resource to be created. + HybridMachineID *string `json:"hybridMachineId,omitempty" tf:"hybrid_machine_id,omitempty"` +} + type SecurityCenterServerVulnerabilityAssessmentObservation struct { // The ID of the Azure ARC server to be monitored by vulnerability assessment. Changing this forces a new resource to be created. @@ -50,6 +56,18 @@ type SecurityCenterServerVulnerabilityAssessmentParameters struct { type SecurityCenterServerVulnerabilityAssessmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityCenterServerVulnerabilityAssessmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityCenterServerVulnerabilityAssessmentInitParameters `json:"initProvider,omitempty"` } // SecurityCenterServerVulnerabilityAssessmentStatus defines the observed state of SecurityCenterServerVulnerabilityAssessment. diff --git a/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessmentvirtualmachine_types.go b/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessmentvirtualmachine_types.go index ed88be1ae..4245ed709 100755 --- a/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessmentvirtualmachine_types.go +++ b/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessmentvirtualmachine_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityCenterServerVulnerabilityAssessmentVirtualMachineInitParameters struct { +} + type SecurityCenterServerVulnerabilityAssessmentVirtualMachineObservation struct { // The ID of the Vulnerability Assessment resource. @@ -43,6 +46,18 @@ type SecurityCenterServerVulnerabilityAssessmentVirtualMachineParameters struct type SecurityCenterServerVulnerabilityAssessmentVirtualMachineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityCenterServerVulnerabilityAssessmentVirtualMachineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityCenterServerVulnerabilityAssessmentVirtualMachineInitParameters `json:"initProvider,omitempty"` } // SecurityCenterServerVulnerabilityAssessmentVirtualMachineStatus defines the observed state of SecurityCenterServerVulnerabilityAssessmentVirtualMachine. diff --git a/apis/security/v1beta1/zz_securitycentersetting_types.go b/apis/security/v1beta1/zz_securitycentersetting_types.go index 0a9166426..e13fa2486 100755 --- a/apis/security/v1beta1/zz_securitycentersetting_types.go +++ b/apis/security/v1beta1/zz_securitycentersetting_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityCenterSettingInitParameters struct { + + // Boolean flag to enable/disable data access. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The setting to manage. Possible values are MCAS , WDATP and SENTINEL. Changing this forces a new resource to be created. + SettingName *string `json:"settingName,omitempty" tf:"setting_name,omitempty"` +} + type SecurityCenterSettingObservation struct { // Boolean flag to enable/disable data access. @@ -40,6 +49,18 @@ type SecurityCenterSettingParameters struct { type SecurityCenterSettingSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityCenterSettingParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityCenterSettingInitParameters `json:"initProvider,omitempty"` } // SecurityCenterSettingStatus defines the observed state of SecurityCenterSetting. @@ -60,8 +81,8 @@ type SecurityCenterSettingStatus struct { type SecurityCenterSetting struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled)",message="enabled is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.settingName)",message="settingName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.enabled) || has(self.initProvider.enabled)",message="enabled is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.settingName) || has(self.initProvider.settingName)",message="settingName is a required parameter" Spec SecurityCenterSettingSpec `json:"spec"` Status SecurityCenterSettingStatus `json:"status,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycentersubscriptionpricing_types.go b/apis/security/v1beta1/zz_securitycentersubscriptionpricing_types.go index d71967c0a..344c9b82d 100755 --- a/apis/security/v1beta1/zz_securitycentersubscriptionpricing_types.go +++ b/apis/security/v1beta1/zz_securitycentersubscriptionpricing_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityCenterSubscriptionPricingInitParameters struct { + + // The resource type this setting affects. Possible values are AppServices, ContainerRegistry, KeyVaults, KubernetesService, SqlServers, SqlServerVirtualMachines, StorageAccounts, VirtualMachines, Arm, Dns, OpenSourceRelationalDatabases, Containers, CosmosDbs and CloudPosture. Defaults to VirtualMachines + ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"` + + // Resource type pricing subplan. Contact your MSFT representative for possible values. + Subplan *string `json:"subplan,omitempty" tf:"subplan,omitempty"` + + // The pricing tier to use. Possible values are Free and Standard. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + type SecurityCenterSubscriptionPricingObservation struct { // The subscription pricing ID. @@ -47,6 +59,18 @@ type SecurityCenterSubscriptionPricingParameters struct { type SecurityCenterSubscriptionPricingSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityCenterSubscriptionPricingParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityCenterSubscriptionPricingInitParameters `json:"initProvider,omitempty"` } // SecurityCenterSubscriptionPricingStatus defines the observed state of SecurityCenterSubscriptionPricing. @@ -67,7 +91,7 @@ type SecurityCenterSubscriptionPricingStatus struct { type SecurityCenterSubscriptionPricing struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier)",message="tier is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tier) || has(self.initProvider.tier)",message="tier is a required parameter" Spec SecurityCenterSubscriptionPricingSpec `json:"spec"` Status SecurityCenterSubscriptionPricingStatus `json:"status,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycenterworkspace_types.go b/apis/security/v1beta1/zz_securitycenterworkspace_types.go index d8d8f2768..1d4a23c20 100755 --- a/apis/security/v1beta1/zz_securitycenterworkspace_types.go +++ b/apis/security/v1beta1/zz_securitycenterworkspace_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SecurityCenterWorkspaceInitParameters struct { + + // The scope of VMs to send their security data to the desired workspace, unless overridden by a setting with more specific scope. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` +} + type SecurityCenterWorkspaceObservation struct { // The Security Center Workspace ID. @@ -50,6 +56,18 @@ type SecurityCenterWorkspaceParameters struct { type SecurityCenterWorkspaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SecurityCenterWorkspaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SecurityCenterWorkspaceInitParameters `json:"initProvider,omitempty"` } // SecurityCenterWorkspaceStatus defines the observed state of SecurityCenterWorkspace. @@ -70,7 +88,7 @@ type SecurityCenterWorkspaceStatus struct { type SecurityCenterWorkspace struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope)",message="scope is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.scope) || has(self.initProvider.scope)",message="scope is a required parameter" Spec SecurityCenterWorkspaceSpec `json:"spec"` Status SecurityCenterWorkspaceStatus `json:"status,omitempty"` } diff --git a/apis/securityinsights/v1beta1/zz_generated.deepcopy.go b/apis/securityinsights/v1beta1/zz_generated.deepcopy.go index da78b6282..cae5b9e77 100644 --- a/apis/securityinsights/v1beta1/zz_generated.deepcopy.go +++ b/apis/securityinsights/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,62 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionIncidentInitParameters) DeepCopyInto(out *ActionIncidentInitParameters) { + *out = *in + if in.Classification != nil { + in, out := &in.Classification, &out.Classification + *out = new(string) + **out = **in + } + if in.ClassificationComment != nil { + in, out := &in.ClassificationComment, &out.ClassificationComment + *out = new(string) + **out = **in + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.OwnerID != nil { + in, out := &in.OwnerID, &out.OwnerID + *out = new(string) + **out = **in + } + if in.Severity != nil { + in, out := &in.Severity, &out.Severity + *out = new(string) + **out = **in + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionIncidentInitParameters. +func (in *ActionIncidentInitParameters) DeepCopy() *ActionIncidentInitParameters { + if in == nil { + return nil + } + out := new(ActionIncidentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionIncidentObservation) DeepCopyInto(out *ActionIncidentObservation) { *out = *in @@ -126,6 +182,36 @@ func (in *ActionIncidentParameters) DeepCopy() *ActionIncidentParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionPlaybookInitParameters) DeepCopyInto(out *ActionPlaybookInitParameters) { + *out = *in + if in.LogicAppID != nil { + in, out := &in.LogicAppID, &out.LogicAppID + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionPlaybookInitParameters. +func (in *ActionPlaybookInitParameters) DeepCopy() *ActionPlaybookInitParameters { + if in == nil { + return nil + } + out := new(ActionPlaybookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionPlaybookObservation) DeepCopyInto(out *ActionPlaybookObservation) { *out = *in @@ -186,6 +272,42 @@ func (in *ActionPlaybookParameters) DeepCopy() *ActionPlaybookParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConditionInitParameters) DeepCopyInto(out *ConditionInitParameters) { + *out = *in + if in.Operator != nil { + in, out := &in.Operator, &out.Operator + *out = new(string) + **out = **in + } + if in.Property != nil { + in, out := &in.Property, &out.Property + *out = new(string) + **out = **in + } + if in.Values != nil { + in, out := &in.Values, &out.Values + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConditionInitParameters. +func (in *ConditionInitParameters) DeepCopy() *ConditionInitParameters { + if in == nil { + return nil + } + out := new(ConditionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConditionObservation) DeepCopyInto(out *ConditionObservation) { *out = *in @@ -285,6 +407,43 @@ func (in *SentinelAlertRuleFusion) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SentinelAlertRuleFusionInitParameters) DeepCopyInto(out *SentinelAlertRuleFusionInitParameters) { + *out = *in + if in.AlertRuleTemplateGUID != nil { + in, out := &in.AlertRuleTemplateGUID, &out.AlertRuleTemplateGUID + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Source != nil { + in, out := &in.Source, &out.Source + *out = make([]SourceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelAlertRuleFusionInitParameters. +func (in *SentinelAlertRuleFusionInitParameters) DeepCopy() *SentinelAlertRuleFusionInitParameters { + if in == nil { + return nil + } + out := new(SentinelAlertRuleFusionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SentinelAlertRuleFusionList) DeepCopyInto(out *SentinelAlertRuleFusionList) { *out = *in @@ -421,6 +580,7 @@ func (in *SentinelAlertRuleFusionSpec) DeepCopyInto(out *SentinelAlertRuleFusion *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelAlertRuleFusionSpec. @@ -477,6 +637,79 @@ func (in *SentinelAlertRuleMSSecurityIncident) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SentinelAlertRuleMSSecurityIncidentInitParameters) DeepCopyInto(out *SentinelAlertRuleMSSecurityIncidentInitParameters) { + *out = *in + if in.AlertRuleTemplateGUID != nil { + in, out := &in.AlertRuleTemplateGUID, &out.AlertRuleTemplateGUID + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.DisplayNameExcludeFilter != nil { + in, out := &in.DisplayNameExcludeFilter, &out.DisplayNameExcludeFilter + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DisplayNameFilter != nil { + in, out := &in.DisplayNameFilter, &out.DisplayNameFilter + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ProductFilter != nil { + in, out := &in.ProductFilter, &out.ProductFilter + *out = new(string) + **out = **in + } + if in.SeverityFilter != nil { + in, out := &in.SeverityFilter, &out.SeverityFilter + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelAlertRuleMSSecurityIncidentInitParameters. +func (in *SentinelAlertRuleMSSecurityIncidentInitParameters) DeepCopy() *SentinelAlertRuleMSSecurityIncidentInitParameters { + if in == nil { + return nil + } + out := new(SentinelAlertRuleMSSecurityIncidentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SentinelAlertRuleMSSecurityIncidentList) DeepCopyInto(out *SentinelAlertRuleMSSecurityIncidentList) { *out = *in @@ -685,6 +918,7 @@ func (in *SentinelAlertRuleMSSecurityIncidentSpec) DeepCopyInto(out *SentinelAle *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelAlertRuleMSSecurityIncidentSpec. @@ -741,6 +975,36 @@ func (in *SentinelAlertRuleMachineLearningBehaviorAnalytics) DeepCopyObject() ru return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SentinelAlertRuleMachineLearningBehaviorAnalyticsInitParameters) DeepCopyInto(out *SentinelAlertRuleMachineLearningBehaviorAnalyticsInitParameters) { + *out = *in + if in.AlertRuleTemplateGUID != nil { + in, out := &in.AlertRuleTemplateGUID, &out.AlertRuleTemplateGUID + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelAlertRuleMachineLearningBehaviorAnalyticsInitParameters. +func (in *SentinelAlertRuleMachineLearningBehaviorAnalyticsInitParameters) DeepCopy() *SentinelAlertRuleMachineLearningBehaviorAnalyticsInitParameters { + if in == nil { + return nil + } + out := new(SentinelAlertRuleMachineLearningBehaviorAnalyticsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SentinelAlertRuleMachineLearningBehaviorAnalyticsList) DeepCopyInto(out *SentinelAlertRuleMachineLearningBehaviorAnalyticsList) { *out = *in @@ -863,6 +1127,7 @@ func (in *SentinelAlertRuleMachineLearningBehaviorAnalyticsSpec) DeepCopyInto(ou *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelAlertRuleMachineLearningBehaviorAnalyticsSpec. @@ -919,6 +1184,82 @@ func (in *SentinelAutomationRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SentinelAutomationRuleInitParameters) DeepCopyInto(out *SentinelAutomationRuleInitParameters) { + *out = *in + if in.ActionIncident != nil { + in, out := &in.ActionIncident, &out.ActionIncident + *out = make([]ActionIncidentInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ActionPlaybook != nil { + in, out := &in.ActionPlaybook, &out.ActionPlaybook + *out = make([]ActionPlaybookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Condition != nil { + in, out := &in.Condition, &out.Condition + *out = make([]ConditionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConditionJSON != nil { + in, out := &in.ConditionJSON, &out.ConditionJSON + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Expiration != nil { + in, out := &in.Expiration, &out.Expiration + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Order != nil { + in, out := &in.Order, &out.Order + *out = new(float64) + **out = **in + } + if in.TriggersOn != nil { + in, out := &in.TriggersOn, &out.TriggersOn + *out = new(string) + **out = **in + } + if in.TriggersWhen != nil { + in, out := &in.TriggersWhen, &out.TriggersWhen + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelAutomationRuleInitParameters. +func (in *SentinelAutomationRuleInitParameters) DeepCopy() *SentinelAutomationRuleInitParameters { + if in == nil { + return nil + } + out := new(SentinelAutomationRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SentinelAutomationRuleList) DeepCopyInto(out *SentinelAutomationRuleList) { *out = *in @@ -1133,6 +1474,7 @@ func (in *SentinelAutomationRuleSpec) DeepCopyInto(out *SentinelAutomationRuleSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelAutomationRuleSpec. @@ -1189,6 +1531,26 @@ func (in *SentinelDataConnectorIOT) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SentinelDataConnectorIOTInitParameters) DeepCopyInto(out *SentinelDataConnectorIOTInitParameters) { + *out = *in + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelDataConnectorIOTInitParameters. +func (in *SentinelDataConnectorIOTInitParameters) DeepCopy() *SentinelDataConnectorIOTInitParameters { + if in == nil { + return nil + } + out := new(SentinelDataConnectorIOTInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SentinelDataConnectorIOTList) DeepCopyInto(out *SentinelDataConnectorIOTList) { *out = *in @@ -1291,6 +1653,7 @@ func (in *SentinelDataConnectorIOTSpec) DeepCopyInto(out *SentinelDataConnectorI *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelDataConnectorIOTSpec. @@ -1347,6 +1710,31 @@ func (in *SentinelLogAnalyticsWorkspaceOnboarding) DeepCopyObject() runtime.Obje return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SentinelLogAnalyticsWorkspaceOnboardingInitParameters) DeepCopyInto(out *SentinelLogAnalyticsWorkspaceOnboardingInitParameters) { + *out = *in + if in.CustomerManagedKeyEnabled != nil { + in, out := &in.CustomerManagedKeyEnabled, &out.CustomerManagedKeyEnabled + *out = new(bool) + **out = **in + } + if in.WorkspaceID != nil { + in, out := &in.WorkspaceID, &out.WorkspaceID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelLogAnalyticsWorkspaceOnboardingInitParameters. +func (in *SentinelLogAnalyticsWorkspaceOnboardingInitParameters) DeepCopy() *SentinelLogAnalyticsWorkspaceOnboardingInitParameters { + if in == nil { + return nil + } + out := new(SentinelLogAnalyticsWorkspaceOnboardingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SentinelLogAnalyticsWorkspaceOnboardingList) DeepCopyInto(out *SentinelLogAnalyticsWorkspaceOnboardingList) { *out = *in @@ -1479,6 +1867,7 @@ func (in *SentinelLogAnalyticsWorkspaceOnboardingSpec) DeepCopyInto(out *Sentine *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelLogAnalyticsWorkspaceOnboardingSpec. @@ -1535,6 +1924,52 @@ func (in *SentinelWatchlist) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SentinelWatchlistInitParameters) DeepCopyInto(out *SentinelWatchlistInitParameters) { + *out = *in + if in.DefaultDuration != nil { + in, out := &in.DefaultDuration, &out.DefaultDuration + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.ItemSearchKey != nil { + in, out := &in.ItemSearchKey, &out.ItemSearchKey + *out = new(string) + **out = **in + } + if in.Labels != nil { + in, out := &in.Labels, &out.Labels + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelWatchlistInitParameters. +func (in *SentinelWatchlistInitParameters) DeepCopy() *SentinelWatchlistInitParameters { + if in == nil { + return nil + } + out := new(SentinelWatchlistInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SentinelWatchlistList) DeepCopyInto(out *SentinelWatchlistList) { *out = *in @@ -1689,6 +2124,7 @@ func (in *SentinelWatchlistSpec) DeepCopyInto(out *SentinelWatchlistSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelWatchlistSpec. @@ -1718,6 +2154,38 @@ func (in *SentinelWatchlistStatus) DeepCopy() *SentinelWatchlistStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceInitParameters) DeepCopyInto(out *SourceInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubType != nil { + in, out := &in.SubType, &out.SubType + *out = make([]SubTypeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceInitParameters. +func (in *SourceInitParameters) DeepCopy() *SourceInitParameters { + if in == nil { + return nil + } + out := new(SourceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SourceObservation) DeepCopyInto(out *SourceObservation) { *out = *in @@ -1782,6 +2250,42 @@ func (in *SourceParameters) DeepCopy() *SourceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubTypeInitParameters) DeepCopyInto(out *SubTypeInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SeveritiesAllowed != nil { + in, out := &in.SeveritiesAllowed, &out.SeveritiesAllowed + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubTypeInitParameters. +func (in *SubTypeInitParameters) DeepCopy() *SubTypeInitParameters { + if in == nil { + return nil + } + out := new(SubTypeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubTypeObservation) DeepCopyInto(out *SubTypeObservation) { *out = *in diff --git a/apis/securityinsights/v1beta1/zz_generated.managed.go b/apis/securityinsights/v1beta1/zz_generated.managed.go index 8f5328aa3..874aa88d2 100644 --- a/apis/securityinsights/v1beta1/zz_generated.managed.go +++ b/apis/securityinsights/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *SentinelAlertRuleFusion) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SentinelAlertRuleFusion. -func (mg *SentinelAlertRuleFusion) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SentinelAlertRuleFusion. +func (mg *SentinelAlertRuleFusion) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SentinelAlertRuleFusion. @@ -55,9 +55,9 @@ func (mg *SentinelAlertRuleFusion) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SentinelAlertRuleFusion. -func (mg *SentinelAlertRuleFusion) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SentinelAlertRuleFusion. +func (mg *SentinelAlertRuleFusion) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SentinelAlertRuleFusion. @@ -93,9 +93,9 @@ func (mg *SentinelAlertRuleMSSecurityIncident) GetDeletionPolicy() xpv1.Deletion return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SentinelAlertRuleMSSecurityIncident. -func (mg *SentinelAlertRuleMSSecurityIncident) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SentinelAlertRuleMSSecurityIncident. +func (mg *SentinelAlertRuleMSSecurityIncident) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SentinelAlertRuleMSSecurityIncident. @@ -131,9 +131,9 @@ func (mg *SentinelAlertRuleMSSecurityIncident) SetDeletionPolicy(r xpv1.Deletion mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SentinelAlertRuleMSSecurityIncident. -func (mg *SentinelAlertRuleMSSecurityIncident) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SentinelAlertRuleMSSecurityIncident. +func (mg *SentinelAlertRuleMSSecurityIncident) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SentinelAlertRuleMSSecurityIncident. @@ -169,9 +169,9 @@ func (mg *SentinelAlertRuleMachineLearningBehaviorAnalytics) GetDeletionPolicy() return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SentinelAlertRuleMachineLearningBehaviorAnalytics. -func (mg *SentinelAlertRuleMachineLearningBehaviorAnalytics) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SentinelAlertRuleMachineLearningBehaviorAnalytics. +func (mg *SentinelAlertRuleMachineLearningBehaviorAnalytics) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SentinelAlertRuleMachineLearningBehaviorAnalytics. @@ -207,9 +207,9 @@ func (mg *SentinelAlertRuleMachineLearningBehaviorAnalytics) SetDeletionPolicy(r mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SentinelAlertRuleMachineLearningBehaviorAnalytics. -func (mg *SentinelAlertRuleMachineLearningBehaviorAnalytics) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SentinelAlertRuleMachineLearningBehaviorAnalytics. +func (mg *SentinelAlertRuleMachineLearningBehaviorAnalytics) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SentinelAlertRuleMachineLearningBehaviorAnalytics. @@ -245,9 +245,9 @@ func (mg *SentinelAutomationRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SentinelAutomationRule. -func (mg *SentinelAutomationRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SentinelAutomationRule. +func (mg *SentinelAutomationRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SentinelAutomationRule. @@ -283,9 +283,9 @@ func (mg *SentinelAutomationRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SentinelAutomationRule. -func (mg *SentinelAutomationRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SentinelAutomationRule. +func (mg *SentinelAutomationRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SentinelAutomationRule. @@ -321,9 +321,9 @@ func (mg *SentinelDataConnectorIOT) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SentinelDataConnectorIOT. -func (mg *SentinelDataConnectorIOT) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SentinelDataConnectorIOT. +func (mg *SentinelDataConnectorIOT) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SentinelDataConnectorIOT. @@ -359,9 +359,9 @@ func (mg *SentinelDataConnectorIOT) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SentinelDataConnectorIOT. -func (mg *SentinelDataConnectorIOT) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SentinelDataConnectorIOT. +func (mg *SentinelDataConnectorIOT) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SentinelDataConnectorIOT. @@ -397,9 +397,9 @@ func (mg *SentinelLogAnalyticsWorkspaceOnboarding) GetDeletionPolicy() xpv1.Dele return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SentinelLogAnalyticsWorkspaceOnboarding. -func (mg *SentinelLogAnalyticsWorkspaceOnboarding) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SentinelLogAnalyticsWorkspaceOnboarding. +func (mg *SentinelLogAnalyticsWorkspaceOnboarding) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SentinelLogAnalyticsWorkspaceOnboarding. @@ -435,9 +435,9 @@ func (mg *SentinelLogAnalyticsWorkspaceOnboarding) SetDeletionPolicy(r xpv1.Dele mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SentinelLogAnalyticsWorkspaceOnboarding. -func (mg *SentinelLogAnalyticsWorkspaceOnboarding) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SentinelLogAnalyticsWorkspaceOnboarding. +func (mg *SentinelLogAnalyticsWorkspaceOnboarding) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SentinelLogAnalyticsWorkspaceOnboarding. @@ -473,9 +473,9 @@ func (mg *SentinelWatchlist) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SentinelWatchlist. -func (mg *SentinelWatchlist) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SentinelWatchlist. +func (mg *SentinelWatchlist) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SentinelWatchlist. @@ -511,9 +511,9 @@ func (mg *SentinelWatchlist) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SentinelWatchlist. -func (mg *SentinelWatchlist) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SentinelWatchlist. +func (mg *SentinelWatchlist) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SentinelWatchlist. diff --git a/apis/securityinsights/v1beta1/zz_generated_terraformed.go b/apis/securityinsights/v1beta1/zz_generated_terraformed.go index 2e0ed8966..8b2edff81 100755 --- a/apis/securityinsights/v1beta1/zz_generated_terraformed.go +++ b/apis/securityinsights/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *SentinelAlertRuleFusion) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SentinelAlertRuleFusion +func (tr *SentinelAlertRuleFusion) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SentinelAlertRuleFusion using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SentinelAlertRuleFusion) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *SentinelAlertRuleMachineLearningBehaviorAnalytics) SetParameters(param return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SentinelAlertRuleMachineLearningBehaviorAnalytics +func (tr *SentinelAlertRuleMachineLearningBehaviorAnalytics) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SentinelAlertRuleMachineLearningBehaviorAnalytics using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SentinelAlertRuleMachineLearningBehaviorAnalytics) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *SentinelAlertRuleMSSecurityIncident) SetParameters(params map[string]a return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SentinelAlertRuleMSSecurityIncident +func (tr *SentinelAlertRuleMSSecurityIncident) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SentinelAlertRuleMSSecurityIncident using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SentinelAlertRuleMSSecurityIncident) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *SentinelAutomationRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SentinelAutomationRule +func (tr *SentinelAutomationRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SentinelAutomationRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SentinelAutomationRule) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *SentinelDataConnectorIOT) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SentinelDataConnectorIOT +func (tr *SentinelDataConnectorIOT) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SentinelDataConnectorIOT using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SentinelDataConnectorIOT) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *SentinelLogAnalyticsWorkspaceOnboarding) SetParameters(params map[stri return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SentinelLogAnalyticsWorkspaceOnboarding +func (tr *SentinelLogAnalyticsWorkspaceOnboarding) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SentinelLogAnalyticsWorkspaceOnboarding using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SentinelLogAnalyticsWorkspaceOnboarding) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *SentinelWatchlist) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SentinelWatchlist +func (tr *SentinelWatchlist) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SentinelWatchlist using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SentinelWatchlist) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/securityinsights/v1beta1/zz_sentinelalertrulefusion_types.go b/apis/securityinsights/v1beta1/zz_sentinelalertrulefusion_types.go index 4555c3ed2..27ae05d70 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelalertrulefusion_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelalertrulefusion_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SentinelAlertRuleFusionInitParameters struct { + + // The GUID of the alert rule template which is used for this Sentinel Fusion Alert Rule. Changing this forces a new Sentinel Fusion Alert Rule to be created. + AlertRuleTemplateGUID *string `json:"alertRuleTemplateGuid,omitempty" tf:"alert_rule_template_guid,omitempty"` + + // Should this Sentinel Fusion Alert Rule be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name which should be used for this Sentinel Fusion Alert Rule. Changing this forces a new Sentinel Fusion Alert Rule to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more source blocks as defined below. + Source []SourceInitParameters `json:"source,omitempty" tf:"source,omitempty"` +} + type SentinelAlertRuleFusionObservation struct { // The GUID of the alert rule template which is used for this Sentinel Fusion Alert Rule. Changing this forces a new Sentinel Fusion Alert Rule to be created. @@ -67,6 +82,18 @@ type SentinelAlertRuleFusionParameters struct { Source []SourceParameters `json:"source,omitempty" tf:"source,omitempty"` } +type SourceInitParameters struct { + + // Whether this source signal is enabled or disabled in Fusion detection? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name of the Fusion source signal. Refer to Fusion alert rule template for supported values. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // One or more sub_type blocks as defined below. + SubType []SubTypeInitParameters `json:"subType,omitempty" tf:"sub_type,omitempty"` +} + type SourceObservation struct { // Whether this source signal is enabled or disabled in Fusion detection? Defaults to true. @@ -86,14 +113,26 @@ type SourceParameters struct { Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the Fusion source signal. Refer to Fusion alert rule template for supported values. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more sub_type blocks as defined below. // +kubebuilder:validation:Optional SubType []SubTypeParameters `json:"subType,omitempty" tf:"sub_type,omitempty"` } +type SubTypeInitParameters struct { + + // Whether this source subtype under source signal is enabled or disabled in Fusion detection. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The Name of the source subtype under a given source signal in Fusion detection. Refer to Fusion alert rule template for supported values. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A list of severities that are enabled for this source subtype consumed in Fusion detection. Possible values for each element are High, Medium, Low, Informational. + SeveritiesAllowed []*string `json:"severitiesAllowed,omitempty" tf:"severities_allowed,omitempty"` +} + type SubTypeObservation struct { // Whether this source subtype under source signal is enabled or disabled in Fusion detection. Defaults to true. @@ -113,18 +152,30 @@ type SubTypeParameters struct { Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The Name of the source subtype under a given source signal in Fusion detection. Refer to Fusion alert rule template for supported values. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of severities that are enabled for this source subtype consumed in Fusion detection. Possible values for each element are High, Medium, Low, Informational. - // +kubebuilder:validation:Required - SeveritiesAllowed []*string `json:"severitiesAllowed" tf:"severities_allowed,omitempty"` + // +kubebuilder:validation:Optional + SeveritiesAllowed []*string `json:"severitiesAllowed,omitempty" tf:"severities_allowed,omitempty"` } // SentinelAlertRuleFusionSpec defines the desired state of SentinelAlertRuleFusion type SentinelAlertRuleFusionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SentinelAlertRuleFusionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SentinelAlertRuleFusionInitParameters `json:"initProvider,omitempty"` } // SentinelAlertRuleFusionStatus defines the observed state of SentinelAlertRuleFusion. @@ -145,8 +196,8 @@ type SentinelAlertRuleFusionStatus struct { type SentinelAlertRuleFusion struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.alertRuleTemplateGuid)",message="alertRuleTemplateGuid is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.alertRuleTemplateGuid) || has(self.initProvider.alertRuleTemplateGuid)",message="alertRuleTemplateGuid is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec SentinelAlertRuleFusionSpec `json:"spec"` Status SentinelAlertRuleFusionStatus `json:"status,omitempty"` } diff --git a/apis/securityinsights/v1beta1/zz_sentinelalertrulemachinelearningbehavioranalytics_types.go b/apis/securityinsights/v1beta1/zz_sentinelalertrulemachinelearningbehavioranalytics_types.go index 89937f020..475ebdc7d 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelalertrulemachinelearningbehavioranalytics_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelalertrulemachinelearningbehavioranalytics_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SentinelAlertRuleMachineLearningBehaviorAnalyticsInitParameters struct { + + // The GUID of the alert rule template which is used for this Sentinel Machine Learning Behavior Analytics Alert Rule. Changing this forces a new Sentinel Machine Learning Behavior Analytics Alert Rule to be created. + AlertRuleTemplateGUID *string `json:"alertRuleTemplateGuid,omitempty" tf:"alert_rule_template_guid,omitempty"` + + // Should this Sentinel Machine Learning Behavior Analytics Alert Rule be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name which should be used for this SentinelMachine Learning Behavior Analytics Alert Rule. Changing this forces a new Sentinel Machine Learning Behavior Analytics Alert Rule to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type SentinelAlertRuleMachineLearningBehaviorAnalyticsObservation struct { // The GUID of the alert rule template which is used for this Sentinel Machine Learning Behavior Analytics Alert Rule. Changing this forces a new Sentinel Machine Learning Behavior Analytics Alert Rule to be created. @@ -64,6 +76,18 @@ type SentinelAlertRuleMachineLearningBehaviorAnalyticsParameters struct { type SentinelAlertRuleMachineLearningBehaviorAnalyticsSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SentinelAlertRuleMachineLearningBehaviorAnalyticsParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SentinelAlertRuleMachineLearningBehaviorAnalyticsInitParameters `json:"initProvider,omitempty"` } // SentinelAlertRuleMachineLearningBehaviorAnalyticsStatus defines the observed state of SentinelAlertRuleMachineLearningBehaviorAnalytics. @@ -84,8 +108,8 @@ type SentinelAlertRuleMachineLearningBehaviorAnalyticsStatus struct { type SentinelAlertRuleMachineLearningBehaviorAnalytics struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.alertRuleTemplateGuid)",message="alertRuleTemplateGuid is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.alertRuleTemplateGuid) || has(self.initProvider.alertRuleTemplateGuid)",message="alertRuleTemplateGuid is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec SentinelAlertRuleMachineLearningBehaviorAnalyticsSpec `json:"spec"` Status SentinelAlertRuleMachineLearningBehaviorAnalyticsStatus `json:"status,omitempty"` } diff --git a/apis/securityinsights/v1beta1/zz_sentinelalertrulemssecurityincident_types.go b/apis/securityinsights/v1beta1/zz_sentinelalertrulemssecurityincident_types.go index 253acdfa1..f85f097b9 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelalertrulemssecurityincident_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelalertrulemssecurityincident_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SentinelAlertRuleMSSecurityIncidentInitParameters struct { + + // The GUID of the alert rule template which is used to create this Sentinel Scheduled Alert Rule. Changing this forces a new Sentinel MS Security Incident Alert Rule to be created. + AlertRuleTemplateGUID *string `json:"alertRuleTemplateGuid,omitempty" tf:"alert_rule_template_guid,omitempty"` + + // The description of this Sentinel MS Security Incident Alert Rule. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The friendly name of this Sentinel MS Security Incident Alert Rule. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Only create incidents when the alert display name doesn't contain text from this list. + DisplayNameExcludeFilter []*string `json:"displayNameExcludeFilter,omitempty" tf:"display_name_exclude_filter,omitempty"` + + // Only create incidents when the alert display name contain text from this list, leave empty to apply no filter. + DisplayNameFilter []*string `json:"displayNameFilter,omitempty" tf:"display_name_filter,omitempty"` + + // Should this Sentinel MS Security Incident Alert Rule be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The Microsoft Security Service from where the alert will be generated. Possible values are Azure Active Directory Identity Protection, Azure Advanced Threat Protection, Azure Security Center, Azure Security Center for IoT, Microsoft Cloud App Security, Microsoft Defender Advanced Threat Protection and Office 365 Advanced Threat Protection. + ProductFilter *string `json:"productFilter,omitempty" tf:"product_filter,omitempty"` + + // Only create incidents from alerts when alert severity level is contained in this list. Possible values are High, Medium, Low and Informational. + SeverityFilter []*string `json:"severityFilter,omitempty" tf:"severity_filter,omitempty"` +} + type SentinelAlertRuleMSSecurityIncidentObservation struct { // The GUID of the alert rule template which is used to create this Sentinel Scheduled Alert Rule. Changing this forces a new Sentinel MS Security Incident Alert Rule to be created. @@ -99,6 +126,18 @@ type SentinelAlertRuleMSSecurityIncidentParameters struct { type SentinelAlertRuleMSSecurityIncidentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SentinelAlertRuleMSSecurityIncidentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SentinelAlertRuleMSSecurityIncidentInitParameters `json:"initProvider,omitempty"` } // SentinelAlertRuleMSSecurityIncidentStatus defines the observed state of SentinelAlertRuleMSSecurityIncident. @@ -119,9 +158,9 @@ type SentinelAlertRuleMSSecurityIncidentStatus struct { type SentinelAlertRuleMSSecurityIncident struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.productFilter)",message="productFilter is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.severityFilter)",message="severityFilter is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.productFilter) || has(self.initProvider.productFilter)",message="productFilter is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.severityFilter) || has(self.initProvider.severityFilter)",message="severityFilter is a required parameter" Spec SentinelAlertRuleMSSecurityIncidentSpec `json:"spec"` Status SentinelAlertRuleMSSecurityIncidentStatus `json:"status,omitempty"` } diff --git a/apis/securityinsights/v1beta1/zz_sentinelautomationrule_types.go b/apis/securityinsights/v1beta1/zz_sentinelautomationrule_types.go index d971dde6e..6c9067c79 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelautomationrule_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelautomationrule_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActionIncidentInitParameters struct { + + // The classification of the incident, when closing it. Possible values are: BenignPositive_SuspiciousButExpected, FalsePositive_InaccurateData, FalsePositive_IncorrectAlertLogic, TruePositive_SuspiciousActivity and Undetermined. + Classification *string `json:"classification,omitempty" tf:"classification,omitempty"` + + // The comment why the incident is to be closed. + ClassificationComment *string `json:"classificationComment,omitempty" tf:"classification_comment,omitempty"` + + // Specifies a list of labels to add to the incident. + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` + + // The execution order of this action. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // The object ID of the entity this incident is assigned to. + OwnerID *string `json:"ownerId,omitempty" tf:"owner_id,omitempty"` + + // The severity to add to the incident. Possible values are High, Informational, Low and Medium. + Severity *string `json:"severity,omitempty" tf:"severity,omitempty"` + + // The status to set to the incident. Possible values are: Active, Closed, New. + Status *string `json:"status,omitempty" tf:"status,omitempty"` +} + type ActionIncidentObservation struct { // The classification of the incident, when closing it. Possible values are: BenignPositive_SuspiciousButExpected, FalsePositive_InaccurateData, FalsePositive_IncorrectAlertLogic, TruePositive_SuspiciousActivity and Undetermined. @@ -52,8 +76,8 @@ type ActionIncidentParameters struct { Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` // The execution order of this action. - // +kubebuilder:validation:Required - Order *float64 `json:"order" tf:"order,omitempty"` + // +kubebuilder:validation:Optional + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // The object ID of the entity this incident is assigned to. // +kubebuilder:validation:Optional @@ -68,6 +92,18 @@ type ActionIncidentParameters struct { Status *string `json:"status,omitempty" tf:"status,omitempty"` } +type ActionPlaybookInitParameters struct { + + // The ID of the Logic App that defines the playbook's logic. + LogicAppID *string `json:"logicAppId,omitempty" tf:"logic_app_id,omitempty"` + + // The execution order of this action. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // The ID of the Tenant that owns the playbook. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type ActionPlaybookObservation struct { // The ID of the Logic App that defines the playbook's logic. @@ -83,18 +119,30 @@ type ActionPlaybookObservation struct { type ActionPlaybookParameters struct { // The ID of the Logic App that defines the playbook's logic. - // +kubebuilder:validation:Required - LogicAppID *string `json:"logicAppId" tf:"logic_app_id,omitempty"` + // +kubebuilder:validation:Optional + LogicAppID *string `json:"logicAppId,omitempty" tf:"logic_app_id,omitempty"` // The execution order of this action. - // +kubebuilder:validation:Required - Order *float64 `json:"order" tf:"order,omitempty"` + // +kubebuilder:validation:Optional + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // The ID of the Tenant that owns the playbook. // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } +type ConditionInitParameters struct { + + // The operator to use for evaluate the condition. Possible values include: Equals, NotEquals, Contains, NotContains, StartsWith, NotStartsWith, EndsWith, NotEndsWith. + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` + + // The property to use for evaluate the condition. Possible values include: AccountAadTenantId, AccountAadUserId, AccountNTDomain, AccountName, AccountObjectGuid, AccountPUID, AccountSid, AccountUPNSuffix, AzureResourceResourceId, AzureResourceSubscriptionId, CloudApplicationAppId, CloudApplicationAppName, DNSDomainName, FileDirectory, FileHashValue, FileName, HostAzureID, HostNTDomain, HostName, HostNetBiosName, HostOSVersion, IPAddress, IncidentDescription, IncidentProviderName, IncidentRelatedAnalyticRuleIds, IncidentSeverity, IncidentStatus, IncidentTactics, IncidentTitle, IoTDeviceId, IoTDeviceModel, IoTDeviceName, IoTDeviceOperatingSystem, IoTDeviceType, IoTDeviceVendor, MailMessageDeliveryAction, MailMessageDeliveryLocation, MailMessageP1Sender, MailMessageP2Sender, MailMessageRecipient, MailMessageSenderIP, MailMessageSubject, MailboxDisplayName, MailboxPrimaryAddress, MailboxUPN, MalwareCategory, MalwareName, ProcessCommandLine, ProcessId, RegistryKey, RegistryValueData, Url. + Property *string `json:"property,omitempty" tf:"property,omitempty"` + + // Specifies a list of values to use for evaluate the condition. + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + type ConditionObservation struct { // The operator to use for evaluate the condition. Possible values include: Equals, NotEquals, Contains, NotContains, StartsWith, NotStartsWith, EndsWith, NotEndsWith. @@ -110,16 +158,52 @@ type ConditionObservation struct { type ConditionParameters struct { // The operator to use for evaluate the condition. Possible values include: Equals, NotEquals, Contains, NotContains, StartsWith, NotStartsWith, EndsWith, NotEndsWith. - // +kubebuilder:validation:Required - Operator *string `json:"operator" tf:"operator,omitempty"` + // +kubebuilder:validation:Optional + Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // The property to use for evaluate the condition. Possible values include: AccountAadTenantId, AccountAadUserId, AccountNTDomain, AccountName, AccountObjectGuid, AccountPUID, AccountSid, AccountUPNSuffix, AzureResourceResourceId, AzureResourceSubscriptionId, CloudApplicationAppId, CloudApplicationAppName, DNSDomainName, FileDirectory, FileHashValue, FileName, HostAzureID, HostNTDomain, HostName, HostNetBiosName, HostOSVersion, IPAddress, IncidentDescription, IncidentProviderName, IncidentRelatedAnalyticRuleIds, IncidentSeverity, IncidentStatus, IncidentTactics, IncidentTitle, IoTDeviceId, IoTDeviceModel, IoTDeviceName, IoTDeviceOperatingSystem, IoTDeviceType, IoTDeviceVendor, MailMessageDeliveryAction, MailMessageDeliveryLocation, MailMessageP1Sender, MailMessageP2Sender, MailMessageRecipient, MailMessageSenderIP, MailMessageSubject, MailboxDisplayName, MailboxPrimaryAddress, MailboxUPN, MalwareCategory, MalwareName, ProcessCommandLine, ProcessId, RegistryKey, RegistryValueData, Url. - // +kubebuilder:validation:Required - Property *string `json:"property" tf:"property,omitempty"` + // +kubebuilder:validation:Optional + Property *string `json:"property,omitempty" tf:"property,omitempty"` // Specifies a list of values to use for evaluate the condition. - // +kubebuilder:validation:Required - Values []*string `json:"values" tf:"values,omitempty"` + // +kubebuilder:validation:Optional + Values []*string `json:"values,omitempty" tf:"values,omitempty"` +} + +type SentinelAutomationRuleInitParameters struct { + + // One or more action_incident blocks as defined below. + ActionIncident []ActionIncidentInitParameters `json:"actionIncident,omitempty" tf:"action_incident,omitempty"` + + // One or more action_playbook blocks as defined below. + ActionPlaybook []ActionPlaybookInitParameters `json:"actionPlaybook,omitempty" tf:"action_playbook,omitempty"` + + // One or more condition blocks as defined below. + Condition []ConditionInitParameters `json:"condition,omitempty" tf:"condition,omitempty"` + + // A JSON array of one or more condition JSON objects as is defined here. + ConditionJSON *string `json:"conditionJson,omitempty" tf:"condition_json,omitempty"` + + // The display name which should be used for this Sentinel Automation Rule. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Whether this Sentinel Automation Rule is enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The time in RFC3339 format of kind UTC that determines when this Automation Rule should expire and be disabled. + Expiration *string `json:"expiration,omitempty" tf:"expiration,omitempty"` + + // The UUID which should be used for this Sentinel Automation Rule. Changing this forces a new Sentinel Automation Rule to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The order of this Sentinel Automation Rule. Possible values varies between 1 and 1000. + Order *float64 `json:"order,omitempty" tf:"order,omitempty"` + + // Specifies what triggers this automation rule. Possible values are Alerts and Incidents. Defaults to Incidents. + TriggersOn *string `json:"triggersOn,omitempty" tf:"triggers_on,omitempty"` + + // Specifies when will this automation rule be triggered. Possible values are Created and Updated. Defaults to Created. + TriggersWhen *string `json:"triggersWhen,omitempty" tf:"triggers_when,omitempty"` } type SentinelAutomationRuleObservation struct { @@ -229,6 +313,18 @@ type SentinelAutomationRuleParameters struct { type SentinelAutomationRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SentinelAutomationRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SentinelAutomationRuleInitParameters `json:"initProvider,omitempty"` } // SentinelAutomationRuleStatus defines the observed state of SentinelAutomationRule. @@ -249,9 +345,9 @@ type SentinelAutomationRuleStatus struct { type SentinelAutomationRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.order)",message="order is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.order) || has(self.initProvider.order)",message="order is a required parameter" Spec SentinelAutomationRuleSpec `json:"spec"` Status SentinelAutomationRuleStatus `json:"status,omitempty"` } diff --git a/apis/securityinsights/v1beta1/zz_sentineldataconnectoriot_types.go b/apis/securityinsights/v1beta1/zz_sentineldataconnectoriot_types.go index 951fa4816..f5057d756 100755 --- a/apis/securityinsights/v1beta1/zz_sentineldataconnectoriot_types.go +++ b/apis/securityinsights/v1beta1/zz_sentineldataconnectoriot_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SentinelDataConnectorIOTInitParameters struct { + + // The ID of the subscription that this Iot Data Connector connects to. Changing this forces a new Iot Data Connector to be created. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` +} + type SentinelDataConnectorIOTObservation struct { // The ID of the Iot Data Connector. @@ -50,6 +56,18 @@ type SentinelDataConnectorIOTParameters struct { type SentinelDataConnectorIOTSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SentinelDataConnectorIOTParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SentinelDataConnectorIOTInitParameters `json:"initProvider,omitempty"` } // SentinelDataConnectorIOTStatus defines the observed state of SentinelDataConnectorIOT. diff --git a/apis/securityinsights/v1beta1/zz_sentinelloganalyticsworkspaceonboarding_types.go b/apis/securityinsights/v1beta1/zz_sentinelloganalyticsworkspaceonboarding_types.go index e07a0dac6..6d37e27de 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelloganalyticsworkspaceonboarding_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelloganalyticsworkspaceonboarding_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SentinelLogAnalyticsWorkspaceOnboardingInitParameters struct { + + // Specifies if the Workspace is using Customer managed key. Defaults to false. Changing this forces a new resource to be created. + CustomerManagedKeyEnabled *bool `json:"customerManagedKeyEnabled,omitempty" tf:"customer_managed_key_enabled,omitempty"` + + // The ID of the Security Insights Sentinel Onboarding States. + WorkspaceID *string `json:"workspaceId,omitempty" tf:"workspace_id,omitempty"` +} + type SentinelLogAnalyticsWorkspaceOnboardingObservation struct { // Specifies if the Workspace is using Customer managed key. Defaults to false. Changing this forces a new resource to be created. @@ -72,6 +81,18 @@ type SentinelLogAnalyticsWorkspaceOnboardingParameters struct { type SentinelLogAnalyticsWorkspaceOnboardingSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SentinelLogAnalyticsWorkspaceOnboardingParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SentinelLogAnalyticsWorkspaceOnboardingInitParameters `json:"initProvider,omitempty"` } // SentinelLogAnalyticsWorkspaceOnboardingStatus defines the observed state of SentinelLogAnalyticsWorkspaceOnboarding. diff --git a/apis/securityinsights/v1beta1/zz_sentinelwatchlist_types.go b/apis/securityinsights/v1beta1/zz_sentinelwatchlist_types.go index 39a92da81..423c87108 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelwatchlist_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelwatchlist_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SentinelWatchlistInitParameters struct { + + // The default duration in ISO8601 duration form of this Sentinel Watchlist. Changing this forces a new Sentinel Watchlist to be created. + DefaultDuration *string `json:"defaultDuration,omitempty" tf:"default_duration,omitempty"` + + // The description of this Sentinel Watchlist. Changing this forces a new Sentinel Watchlist to be created. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The display name of this Sentinel Watchlist. Changing this forces a new Sentinel Watchlist to be created. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // The key used to optimize query performance when using Watchlist for joins with other data. Changing this forces a new Sentinel Watchlist to be created. + ItemSearchKey *string `json:"itemSearchKey,omitempty" tf:"item_search_key,omitempty"` + + // Specifies a list of labels related to this Sentinel Watchlist. Changing this forces a new Sentinel Watchlist to be created. + Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` +} + type SentinelWatchlistObservation struct { // The default duration in ISO8601 duration form of this Sentinel Watchlist. Changing this forces a new Sentinel Watchlist to be created. @@ -78,6 +96,18 @@ type SentinelWatchlistParameters struct { type SentinelWatchlistSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SentinelWatchlistParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SentinelWatchlistInitParameters `json:"initProvider,omitempty"` } // SentinelWatchlistStatus defines the observed state of SentinelWatchlist. @@ -98,8 +128,8 @@ type SentinelWatchlistStatus struct { type SentinelWatchlist struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.itemSearchKey)",message="itemSearchKey is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.itemSearchKey) || has(self.initProvider.itemSearchKey)",message="itemSearchKey is a required parameter" Spec SentinelWatchlistSpec `json:"spec"` Status SentinelWatchlistStatus `json:"status,omitempty"` } diff --git a/apis/servicebus/v1beta1/zz_generated.deepcopy.go b/apis/servicebus/v1beta1/zz_generated.deepcopy.go index 76e4ce581..f2b2ce521 100644 --- a/apis/servicebus/v1beta1/zz_generated.deepcopy.go +++ b/apis/servicebus/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,31 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClientScopedSubscriptionInitParameters) DeepCopyInto(out *ClientScopedSubscriptionInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.IsClientScopedSubscriptionShareable != nil { + in, out := &in.IsClientScopedSubscriptionShareable, &out.IsClientScopedSubscriptionShareable + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientScopedSubscriptionInitParameters. +func (in *ClientScopedSubscriptionInitParameters) DeepCopy() *ClientScopedSubscriptionInitParameters { + if in == nil { + return nil + } + out := new(ClientScopedSubscriptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClientScopedSubscriptionObservation) DeepCopyInto(out *ClientScopedSubscriptionObservation) { *out = *in @@ -69,6 +94,76 @@ func (in *ClientScopedSubscriptionParameters) DeepCopy() *ClientScopedSubscripti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CorrelationFilterInitParameters) DeepCopyInto(out *CorrelationFilterInitParameters) { + *out = *in + if in.ContentType != nil { + in, out := &in.ContentType, &out.ContentType + *out = new(string) + **out = **in + } + if in.CorrelationID != nil { + in, out := &in.CorrelationID, &out.CorrelationID + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.MessageID != nil { + in, out := &in.MessageID, &out.MessageID + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ReplyTo != nil { + in, out := &in.ReplyTo, &out.ReplyTo + *out = new(string) + **out = **in + } + if in.ReplyToSessionID != nil { + in, out := &in.ReplyToSessionID, &out.ReplyToSessionID + *out = new(string) + **out = **in + } + if in.SessionID != nil { + in, out := &in.SessionID, &out.SessionID + *out = new(string) + **out = **in + } + if in.To != nil { + in, out := &in.To, &out.To + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorrelationFilterInitParameters. +func (in *CorrelationFilterInitParameters) DeepCopy() *CorrelationFilterInitParameters { + if in == nil { + return nil + } + out := new(CorrelationFilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CorrelationFilterObservation) DeepCopyInto(out *CorrelationFilterObservation) { *out = *in @@ -209,6 +304,36 @@ func (in *CorrelationFilterParameters) DeepCopy() *CorrelationFilterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomerManagedKeyInitParameters) DeepCopyInto(out *CustomerManagedKeyInitParameters) { + *out = *in + if in.IdentityID != nil { + in, out := &in.IdentityID, &out.IdentityID + *out = new(string) + **out = **in + } + if in.InfrastructureEncryptionEnabled != nil { + in, out := &in.InfrastructureEncryptionEnabled, &out.InfrastructureEncryptionEnabled + *out = new(bool) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomerManagedKeyInitParameters. +func (in *CustomerManagedKeyInitParameters) DeepCopy() *CustomerManagedKeyInitParameters { + if in == nil { + return nil + } + out := new(CustomerManagedKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomerManagedKeyObservation) DeepCopyInto(out *CustomerManagedKeyObservation) { *out = *in @@ -269,6 +394,37 @@ func (in *CustomerManagedKeyParameters) DeepCopy() *CustomerManagedKeyParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -368,6 +524,36 @@ func (in *NamespaceAuthorizationRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceAuthorizationRuleInitParameters) DeepCopyInto(out *NamespaceAuthorizationRuleInitParameters) { + *out = *in + if in.Listen != nil { + in, out := &in.Listen, &out.Listen + *out = new(bool) + **out = **in + } + if in.Manage != nil { + in, out := &in.Manage, &out.Manage + *out = new(bool) + **out = **in + } + if in.Send != nil { + in, out := &in.Send, &out.Send + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceAuthorizationRuleInitParameters. +func (in *NamespaceAuthorizationRuleInitParameters) DeepCopy() *NamespaceAuthorizationRuleInitParameters { + if in == nil { + return nil + } + out := new(NamespaceAuthorizationRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NamespaceAuthorizationRuleList) DeepCopyInto(out *NamespaceAuthorizationRuleList) { *out = *in @@ -490,6 +676,7 @@ func (in *NamespaceAuthorizationRuleSpec) DeepCopyInto(out *NamespaceAuthorizati *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceAuthorizationRuleSpec. @@ -546,6 +733,21 @@ func (in *NamespaceDisasterRecoveryConfig) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceDisasterRecoveryConfigInitParameters) DeepCopyInto(out *NamespaceDisasterRecoveryConfigInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceDisasterRecoveryConfigInitParameters. +func (in *NamespaceDisasterRecoveryConfigInitParameters) DeepCopy() *NamespaceDisasterRecoveryConfigInitParameters { + if in == nil { + return nil + } + out := new(NamespaceDisasterRecoveryConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NamespaceDisasterRecoveryConfigList) DeepCopyInto(out *NamespaceDisasterRecoveryConfigList) { *out = *in @@ -678,6 +880,7 @@ func (in *NamespaceDisasterRecoveryConfigSpec) DeepCopyInto(out *NamespaceDisast *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceDisasterRecoveryConfigSpec. @@ -734,6 +937,54 @@ func (in *NamespaceNetworkRuleSet) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceNetworkRuleSetInitParameters) DeepCopyInto(out *NamespaceNetworkRuleSetInitParameters) { + *out = *in + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.IPRules != nil { + in, out := &in.IPRules, &out.IPRules + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.NetworkRules != nil { + in, out := &in.NetworkRules, &out.NetworkRules + *out = make([]NetworkRulesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.TrustedServicesAllowed != nil { + in, out := &in.TrustedServicesAllowed, &out.TrustedServicesAllowed + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceNetworkRuleSetInitParameters. +func (in *NamespaceNetworkRuleSetInitParameters) DeepCopy() *NamespaceNetworkRuleSetInitParameters { + if in == nil { + return nil + } + out := new(NamespaceNetworkRuleSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NamespaceNetworkRuleSetList) DeepCopyInto(out *NamespaceNetworkRuleSetList) { *out = *in @@ -892,6 +1143,7 @@ func (in *NamespaceNetworkRuleSetSpec) DeepCopyInto(out *NamespaceNetworkRuleSet *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceNetworkRuleSetSpec. @@ -921,6 +1173,26 @@ func (in *NamespaceNetworkRuleSetStatus) DeepCopy() *NamespaceNetworkRuleSetStat return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkRulesInitParameters) DeepCopyInto(out *NetworkRulesInitParameters) { + *out = *in + if in.IgnoreMissingVnetServiceEndpoint != nil { + in, out := &in.IgnoreMissingVnetServiceEndpoint, &out.IgnoreMissingVnetServiceEndpoint + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkRulesInitParameters. +func (in *NetworkRulesInitParameters) DeepCopy() *NetworkRulesInitParameters { + if in == nil { + return nil + } + out := new(NetworkRulesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkRulesObservation) DeepCopyInto(out *NetworkRulesObservation) { *out = *in @@ -1036,23 +1308,53 @@ func (in *QueueAuthorizationRule) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *QueueAuthorizationRuleList) DeepCopyInto(out *QueueAuthorizationRuleList) { +func (in *QueueAuthorizationRuleInitParameters) DeepCopyInto(out *QueueAuthorizationRuleInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]QueueAuthorizationRule, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueAuthorizationRuleList. -func (in *QueueAuthorizationRuleList) DeepCopy() *QueueAuthorizationRuleList { - if in == nil { - return nil + if in.Listen != nil { + in, out := &in.Listen, &out.Listen + *out = new(bool) + **out = **in + } + if in.Manage != nil { + in, out := &in.Manage, &out.Manage + *out = new(bool) + **out = **in + } + if in.Send != nil { + in, out := &in.Send, &out.Send + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueAuthorizationRuleInitParameters. +func (in *QueueAuthorizationRuleInitParameters) DeepCopy() *QueueAuthorizationRuleInitParameters { + if in == nil { + return nil + } + out := new(QueueAuthorizationRuleInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueueAuthorizationRuleList) DeepCopyInto(out *QueueAuthorizationRuleList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]QueueAuthorizationRule, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueAuthorizationRuleList. +func (in *QueueAuthorizationRuleList) DeepCopy() *QueueAuthorizationRuleList { + if in == nil { + return nil } out := new(QueueAuthorizationRuleList) in.DeepCopyInto(out) @@ -1157,6 +1459,7 @@ func (in *QueueAuthorizationRuleSpec) DeepCopyInto(out *QueueAuthorizationRuleSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueAuthorizationRuleSpec. @@ -1186,6 +1489,101 @@ func (in *QueueAuthorizationRuleStatus) DeepCopy() *QueueAuthorizationRuleStatus return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueueInitParameters) DeepCopyInto(out *QueueInitParameters) { + *out = *in + if in.AutoDeleteOnIdle != nil { + in, out := &in.AutoDeleteOnIdle, &out.AutoDeleteOnIdle + *out = new(string) + **out = **in + } + if in.DeadLetteringOnMessageExpiration != nil { + in, out := &in.DeadLetteringOnMessageExpiration, &out.DeadLetteringOnMessageExpiration + *out = new(bool) + **out = **in + } + if in.DefaultMessageTTL != nil { + in, out := &in.DefaultMessageTTL, &out.DefaultMessageTTL + *out = new(string) + **out = **in + } + if in.DuplicateDetectionHistoryTimeWindow != nil { + in, out := &in.DuplicateDetectionHistoryTimeWindow, &out.DuplicateDetectionHistoryTimeWindow + *out = new(string) + **out = **in + } + if in.EnableBatchedOperations != nil { + in, out := &in.EnableBatchedOperations, &out.EnableBatchedOperations + *out = new(bool) + **out = **in + } + if in.EnableExpress != nil { + in, out := &in.EnableExpress, &out.EnableExpress + *out = new(bool) + **out = **in + } + if in.EnablePartitioning != nil { + in, out := &in.EnablePartitioning, &out.EnablePartitioning + *out = new(bool) + **out = **in + } + if in.ForwardDeadLetteredMessagesTo != nil { + in, out := &in.ForwardDeadLetteredMessagesTo, &out.ForwardDeadLetteredMessagesTo + *out = new(string) + **out = **in + } + if in.ForwardTo != nil { + in, out := &in.ForwardTo, &out.ForwardTo + *out = new(string) + **out = **in + } + if in.LockDuration != nil { + in, out := &in.LockDuration, &out.LockDuration + *out = new(string) + **out = **in + } + if in.MaxDeliveryCount != nil { + in, out := &in.MaxDeliveryCount, &out.MaxDeliveryCount + *out = new(float64) + **out = **in + } + if in.MaxMessageSizeInKilobytes != nil { + in, out := &in.MaxMessageSizeInKilobytes, &out.MaxMessageSizeInKilobytes + *out = new(float64) + **out = **in + } + if in.MaxSizeInMegabytes != nil { + in, out := &in.MaxSizeInMegabytes, &out.MaxSizeInMegabytes + *out = new(float64) + **out = **in + } + if in.RequiresDuplicateDetection != nil { + in, out := &in.RequiresDuplicateDetection, &out.RequiresDuplicateDetection + *out = new(bool) + **out = **in + } + if in.RequiresSession != nil { + in, out := &in.RequiresSession, &out.RequiresSession + *out = new(bool) + **out = **in + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueInitParameters. +func (in *QueueInitParameters) DeepCopy() *QueueInitParameters { + if in == nil { + return nil + } + out := new(QueueInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *QueueList) DeepCopyInto(out *QueueList) { *out = *in @@ -1438,6 +1836,7 @@ func (in *QueueSpec) DeepCopyInto(out *QueueSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueSpec. @@ -1494,6 +1893,85 @@ func (in *ServiceBusNamespace) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceBusNamespaceInitParameters) DeepCopyInto(out *ServiceBusNamespaceInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.CustomerManagedKey != nil { + in, out := &in.CustomerManagedKey, &out.CustomerManagedKey + *out = make([]CustomerManagedKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAuthEnabled != nil { + in, out := &in.LocalAuthEnabled, &out.LocalAuthEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZoneRedundant != nil { + in, out := &in.ZoneRedundant, &out.ZoneRedundant + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBusNamespaceInitParameters. +func (in *ServiceBusNamespaceInitParameters) DeepCopy() *ServiceBusNamespaceInitParameters { + if in == nil { + return nil + } + out := new(ServiceBusNamespaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServiceBusNamespaceList) DeepCopyInto(out *ServiceBusNamespaceList) { *out = *in @@ -1719,6 +2197,7 @@ func (in *ServiceBusNamespaceSpec) DeepCopyInto(out *ServiceBusNamespaceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBusNamespaceSpec. @@ -1775,6 +2254,88 @@ func (in *Subscription) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionInitParameters) DeepCopyInto(out *SubscriptionInitParameters) { + *out = *in + if in.AutoDeleteOnIdle != nil { + in, out := &in.AutoDeleteOnIdle, &out.AutoDeleteOnIdle + *out = new(string) + **out = **in + } + if in.ClientScopedSubscription != nil { + in, out := &in.ClientScopedSubscription, &out.ClientScopedSubscription + *out = make([]ClientScopedSubscriptionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientScopedSubscriptionEnabled != nil { + in, out := &in.ClientScopedSubscriptionEnabled, &out.ClientScopedSubscriptionEnabled + *out = new(bool) + **out = **in + } + if in.DeadLetteringOnFilterEvaluationError != nil { + in, out := &in.DeadLetteringOnFilterEvaluationError, &out.DeadLetteringOnFilterEvaluationError + *out = new(bool) + **out = **in + } + if in.DeadLetteringOnMessageExpiration != nil { + in, out := &in.DeadLetteringOnMessageExpiration, &out.DeadLetteringOnMessageExpiration + *out = new(bool) + **out = **in + } + if in.DefaultMessageTTL != nil { + in, out := &in.DefaultMessageTTL, &out.DefaultMessageTTL + *out = new(string) + **out = **in + } + if in.EnableBatchedOperations != nil { + in, out := &in.EnableBatchedOperations, &out.EnableBatchedOperations + *out = new(bool) + **out = **in + } + if in.ForwardDeadLetteredMessagesTo != nil { + in, out := &in.ForwardDeadLetteredMessagesTo, &out.ForwardDeadLetteredMessagesTo + *out = new(string) + **out = **in + } + if in.ForwardTo != nil { + in, out := &in.ForwardTo, &out.ForwardTo + *out = new(string) + **out = **in + } + if in.LockDuration != nil { + in, out := &in.LockDuration, &out.LockDuration + *out = new(string) + **out = **in + } + if in.MaxDeliveryCount != nil { + in, out := &in.MaxDeliveryCount, &out.MaxDeliveryCount + *out = new(float64) + **out = **in + } + if in.RequiresSession != nil { + in, out := &in.RequiresSession, &out.RequiresSession + *out = new(bool) + **out = **in + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionInitParameters. +func (in *SubscriptionInitParameters) DeepCopy() *SubscriptionInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionList) DeepCopyInto(out *SubscriptionList) { *out = *in @@ -2023,6 +2584,43 @@ func (in *SubscriptionRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SubscriptionRuleInitParameters) DeepCopyInto(out *SubscriptionRuleInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.CorrelationFilter != nil { + in, out := &in.CorrelationFilter, &out.CorrelationFilter + *out = make([]CorrelationFilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FilterType != nil { + in, out := &in.FilterType, &out.FilterType + *out = new(string) + **out = **in + } + if in.SQLFilter != nil { + in, out := &in.SQLFilter, &out.SQLFilter + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionRuleInitParameters. +func (in *SubscriptionRuleInitParameters) DeepCopy() *SubscriptionRuleInitParameters { + if in == nil { + return nil + } + out := new(SubscriptionRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SubscriptionRuleList) DeepCopyInto(out *SubscriptionRuleList) { *out = *in @@ -2164,6 +2762,7 @@ func (in *SubscriptionRuleSpec) DeepCopyInto(out *SubscriptionRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionRuleSpec. @@ -2198,6 +2797,7 @@ func (in *SubscriptionSpec) DeepCopyInto(out *SubscriptionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubscriptionSpec. @@ -2281,6 +2881,36 @@ func (in *TopicAuthorizationRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TopicAuthorizationRuleInitParameters) DeepCopyInto(out *TopicAuthorizationRuleInitParameters) { + *out = *in + if in.Listen != nil { + in, out := &in.Listen, &out.Listen + *out = new(bool) + **out = **in + } + if in.Manage != nil { + in, out := &in.Manage, &out.Manage + *out = new(bool) + **out = **in + } + if in.Send != nil { + in, out := &in.Send, &out.Send + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicAuthorizationRuleInitParameters. +func (in *TopicAuthorizationRuleInitParameters) DeepCopy() *TopicAuthorizationRuleInitParameters { + if in == nil { + return nil + } + out := new(TopicAuthorizationRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TopicAuthorizationRuleList) DeepCopyInto(out *TopicAuthorizationRuleList) { *out = *in @@ -2403,6 +3033,7 @@ func (in *TopicAuthorizationRuleSpec) DeepCopyInto(out *TopicAuthorizationRuleSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicAuthorizationRuleSpec. @@ -2432,6 +3063,76 @@ func (in *TopicAuthorizationRuleStatus) DeepCopy() *TopicAuthorizationRuleStatus return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TopicInitParameters) DeepCopyInto(out *TopicInitParameters) { + *out = *in + if in.AutoDeleteOnIdle != nil { + in, out := &in.AutoDeleteOnIdle, &out.AutoDeleteOnIdle + *out = new(string) + **out = **in + } + if in.DefaultMessageTTL != nil { + in, out := &in.DefaultMessageTTL, &out.DefaultMessageTTL + *out = new(string) + **out = **in + } + if in.DuplicateDetectionHistoryTimeWindow != nil { + in, out := &in.DuplicateDetectionHistoryTimeWindow, &out.DuplicateDetectionHistoryTimeWindow + *out = new(string) + **out = **in + } + if in.EnableBatchedOperations != nil { + in, out := &in.EnableBatchedOperations, &out.EnableBatchedOperations + *out = new(bool) + **out = **in + } + if in.EnableExpress != nil { + in, out := &in.EnableExpress, &out.EnableExpress + *out = new(bool) + **out = **in + } + if in.EnablePartitioning != nil { + in, out := &in.EnablePartitioning, &out.EnablePartitioning + *out = new(bool) + **out = **in + } + if in.MaxMessageSizeInKilobytes != nil { + in, out := &in.MaxMessageSizeInKilobytes, &out.MaxMessageSizeInKilobytes + *out = new(float64) + **out = **in + } + if in.MaxSizeInMegabytes != nil { + in, out := &in.MaxSizeInMegabytes, &out.MaxSizeInMegabytes + *out = new(float64) + **out = **in + } + if in.RequiresDuplicateDetection != nil { + in, out := &in.RequiresDuplicateDetection, &out.RequiresDuplicateDetection + *out = new(bool) + **out = **in + } + if in.Status != nil { + in, out := &in.Status, &out.Status + *out = new(string) + **out = **in + } + if in.SupportOrdering != nil { + in, out := &in.SupportOrdering, &out.SupportOrdering + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicInitParameters. +func (in *TopicInitParameters) DeepCopy() *TopicInitParameters { + if in == nil { + return nil + } + out := new(TopicInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TopicList) DeepCopyInto(out *TopicList) { *out = *in @@ -2634,6 +3335,7 @@ func (in *TopicSpec) DeepCopyInto(out *TopicSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopicSpec. diff --git a/apis/servicebus/v1beta1/zz_generated.managed.go b/apis/servicebus/v1beta1/zz_generated.managed.go index bf9949cbb..0bddb7fe2 100644 --- a/apis/servicebus/v1beta1/zz_generated.managed.go +++ b/apis/servicebus/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *NamespaceAuthorizationRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NamespaceAuthorizationRule. -func (mg *NamespaceAuthorizationRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NamespaceAuthorizationRule. +func (mg *NamespaceAuthorizationRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NamespaceAuthorizationRule. @@ -55,9 +55,9 @@ func (mg *NamespaceAuthorizationRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NamespaceAuthorizationRule. -func (mg *NamespaceAuthorizationRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NamespaceAuthorizationRule. +func (mg *NamespaceAuthorizationRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NamespaceAuthorizationRule. @@ -93,9 +93,9 @@ func (mg *NamespaceDisasterRecoveryConfig) GetDeletionPolicy() xpv1.DeletionPoli return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NamespaceDisasterRecoveryConfig. -func (mg *NamespaceDisasterRecoveryConfig) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NamespaceDisasterRecoveryConfig. +func (mg *NamespaceDisasterRecoveryConfig) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NamespaceDisasterRecoveryConfig. @@ -131,9 +131,9 @@ func (mg *NamespaceDisasterRecoveryConfig) SetDeletionPolicy(r xpv1.DeletionPoli mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NamespaceDisasterRecoveryConfig. -func (mg *NamespaceDisasterRecoveryConfig) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NamespaceDisasterRecoveryConfig. +func (mg *NamespaceDisasterRecoveryConfig) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NamespaceDisasterRecoveryConfig. @@ -169,9 +169,9 @@ func (mg *NamespaceNetworkRuleSet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NamespaceNetworkRuleSet. -func (mg *NamespaceNetworkRuleSet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NamespaceNetworkRuleSet. +func (mg *NamespaceNetworkRuleSet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NamespaceNetworkRuleSet. @@ -207,9 +207,9 @@ func (mg *NamespaceNetworkRuleSet) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NamespaceNetworkRuleSet. -func (mg *NamespaceNetworkRuleSet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NamespaceNetworkRuleSet. +func (mg *NamespaceNetworkRuleSet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NamespaceNetworkRuleSet. @@ -245,9 +245,9 @@ func (mg *Queue) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Queue. -func (mg *Queue) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Queue. +func (mg *Queue) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Queue. @@ -283,9 +283,9 @@ func (mg *Queue) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Queue. -func (mg *Queue) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Queue. +func (mg *Queue) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Queue. @@ -321,9 +321,9 @@ func (mg *QueueAuthorizationRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this QueueAuthorizationRule. -func (mg *QueueAuthorizationRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this QueueAuthorizationRule. +func (mg *QueueAuthorizationRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this QueueAuthorizationRule. @@ -359,9 +359,9 @@ func (mg *QueueAuthorizationRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this QueueAuthorizationRule. -func (mg *QueueAuthorizationRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this QueueAuthorizationRule. +func (mg *QueueAuthorizationRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this QueueAuthorizationRule. @@ -397,9 +397,9 @@ func (mg *ServiceBusNamespace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ServiceBusNamespace. -func (mg *ServiceBusNamespace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ServiceBusNamespace. +func (mg *ServiceBusNamespace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ServiceBusNamespace. @@ -435,9 +435,9 @@ func (mg *ServiceBusNamespace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ServiceBusNamespace. -func (mg *ServiceBusNamespace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ServiceBusNamespace. +func (mg *ServiceBusNamespace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ServiceBusNamespace. @@ -473,9 +473,9 @@ func (mg *Subscription) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Subscription. -func (mg *Subscription) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Subscription. +func (mg *Subscription) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Subscription. @@ -511,9 +511,9 @@ func (mg *Subscription) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Subscription. -func (mg *Subscription) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Subscription. +func (mg *Subscription) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Subscription. @@ -549,9 +549,9 @@ func (mg *SubscriptionRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SubscriptionRule. -func (mg *SubscriptionRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SubscriptionRule. +func (mg *SubscriptionRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SubscriptionRule. @@ -587,9 +587,9 @@ func (mg *SubscriptionRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SubscriptionRule. -func (mg *SubscriptionRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SubscriptionRule. +func (mg *SubscriptionRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SubscriptionRule. @@ -625,9 +625,9 @@ func (mg *Topic) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Topic. -func (mg *Topic) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Topic. +func (mg *Topic) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Topic. @@ -663,9 +663,9 @@ func (mg *Topic) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Topic. -func (mg *Topic) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Topic. +func (mg *Topic) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Topic. @@ -701,9 +701,9 @@ func (mg *TopicAuthorizationRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TopicAuthorizationRule. -func (mg *TopicAuthorizationRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TopicAuthorizationRule. +func (mg *TopicAuthorizationRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TopicAuthorizationRule. @@ -739,9 +739,9 @@ func (mg *TopicAuthorizationRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TopicAuthorizationRule. -func (mg *TopicAuthorizationRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TopicAuthorizationRule. +func (mg *TopicAuthorizationRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TopicAuthorizationRule. diff --git a/apis/servicebus/v1beta1/zz_generated_terraformed.go b/apis/servicebus/v1beta1/zz_generated_terraformed.go index 2a939da07..72c87101e 100755 --- a/apis/servicebus/v1beta1/zz_generated_terraformed.go +++ b/apis/servicebus/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ServiceBusNamespace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ServiceBusNamespace +func (tr *ServiceBusNamespace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ServiceBusNamespace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ServiceBusNamespace) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *NamespaceAuthorizationRule) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NamespaceAuthorizationRule +func (tr *NamespaceAuthorizationRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NamespaceAuthorizationRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NamespaceAuthorizationRule) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *NamespaceDisasterRecoveryConfig) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NamespaceDisasterRecoveryConfig +func (tr *NamespaceDisasterRecoveryConfig) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NamespaceDisasterRecoveryConfig using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NamespaceDisasterRecoveryConfig) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *NamespaceNetworkRuleSet) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NamespaceNetworkRuleSet +func (tr *NamespaceNetworkRuleSet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NamespaceNetworkRuleSet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NamespaceNetworkRuleSet) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *Queue) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Queue +func (tr *Queue) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Queue using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Queue) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *QueueAuthorizationRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this QueueAuthorizationRule +func (tr *QueueAuthorizationRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this QueueAuthorizationRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *QueueAuthorizationRule) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *Subscription) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Subscription +func (tr *Subscription) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Subscription using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Subscription) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *SubscriptionRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SubscriptionRule +func (tr *SubscriptionRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SubscriptionRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SubscriptionRule) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *Topic) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Topic +func (tr *Topic) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Topic using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Topic) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *TopicAuthorizationRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TopicAuthorizationRule +func (tr *TopicAuthorizationRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TopicAuthorizationRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TopicAuthorizationRule) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/servicebus/v1beta1/zz_namespaceauthorizationrule_types.go b/apis/servicebus/v1beta1/zz_namespaceauthorizationrule_types.go index 213b88eb8..d64909cff 100755 --- a/apis/servicebus/v1beta1/zz_namespaceauthorizationrule_types.go +++ b/apis/servicebus/v1beta1/zz_namespaceauthorizationrule_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NamespaceAuthorizationRuleInitParameters struct { + + // Grants listen access to this this Authorization Rule. Defaults to false. + Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` + + // Grants manage access to this this Authorization Rule. When this property is true - both listen and send must be too. Defaults to false. + Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` + + // Grants send access to this this Authorization Rule. Defaults to false. + Send *bool `json:"send,omitempty" tf:"send,omitempty"` +} + type NamespaceAuthorizationRuleObservation struct { // The ServiceBus Topic ID. @@ -64,6 +76,18 @@ type NamespaceAuthorizationRuleParameters struct { type NamespaceAuthorizationRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NamespaceAuthorizationRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NamespaceAuthorizationRuleInitParameters `json:"initProvider,omitempty"` } // NamespaceAuthorizationRuleStatus defines the observed state of NamespaceAuthorizationRule. diff --git a/apis/servicebus/v1beta1/zz_namespacedisasterrecoveryconfig_types.go b/apis/servicebus/v1beta1/zz_namespacedisasterrecoveryconfig_types.go index 87d1bd97b..62e11974b 100755 --- a/apis/servicebus/v1beta1/zz_namespacedisasterrecoveryconfig_types.go +++ b/apis/servicebus/v1beta1/zz_namespacedisasterrecoveryconfig_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NamespaceDisasterRecoveryConfigInitParameters struct { +} + type NamespaceDisasterRecoveryConfigObservation struct { // The Shared access policies used to access the connection string for the alias. @@ -77,6 +80,18 @@ type NamespaceDisasterRecoveryConfigParameters struct { type NamespaceDisasterRecoveryConfigSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NamespaceDisasterRecoveryConfigParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NamespaceDisasterRecoveryConfigInitParameters `json:"initProvider,omitempty"` } // NamespaceDisasterRecoveryConfigStatus defines the observed state of NamespaceDisasterRecoveryConfig. diff --git a/apis/servicebus/v1beta1/zz_namespacenetworkruleset_types.go b/apis/servicebus/v1beta1/zz_namespacenetworkruleset_types.go index 070edeae0..0cc3dba71 100755 --- a/apis/servicebus/v1beta1/zz_namespacenetworkruleset_types.go +++ b/apis/servicebus/v1beta1/zz_namespacenetworkruleset_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NamespaceNetworkRuleSetInitParameters struct { + + // Specifies the default action for the ServiceBus Namespace Network Rule Set. Possible values are Allow and Deny. Defaults to Deny. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + + // One or more IP Addresses, or CIDR Blocks which should be able to access the ServiceBus Namespace. + IPRules []*string `json:"ipRules,omitempty" tf:"ip_rules,omitempty"` + + // One or more network_rules blocks as defined below. + NetworkRules []NetworkRulesInitParameters `json:"networkRules,omitempty" tf:"network_rules,omitempty"` + + // Whether to allow traffic over public network. Possible values are true and false. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // If True, then Azure Services that are known and trusted for this resource type are allowed to bypass firewall configuration. See Trusted Microsoft Services + TrustedServicesAllowed *bool `json:"trustedServicesAllowed,omitempty" tf:"trusted_services_allowed,omitempty"` +} + type NamespaceNetworkRuleSetObservation struct { // Specifies the default action for the ServiceBus Namespace Network Rule Set. Possible values are Allow and Deny. Defaults to Deny. @@ -74,6 +92,12 @@ type NamespaceNetworkRuleSetParameters struct { TrustedServicesAllowed *bool `json:"trustedServicesAllowed,omitempty" tf:"trusted_services_allowed,omitempty"` } +type NetworkRulesInitParameters struct { + + // Should the ServiceBus Namespace Network Rule Set ignore missing Virtual Network Service Endpoint option in the Subnet? Defaults to false. + IgnoreMissingVnetServiceEndpoint *bool `json:"ignoreMissingVnetServiceEndpoint,omitempty" tf:"ignore_missing_vnet_service_endpoint,omitempty"` +} + type NetworkRulesObservation struct { // Should the ServiceBus Namespace Network Rule Set ignore missing Virtual Network Service Endpoint option in the Subnet? Defaults to false. @@ -108,6 +132,18 @@ type NetworkRulesParameters struct { type NamespaceNetworkRuleSetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NamespaceNetworkRuleSetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NamespaceNetworkRuleSetInitParameters `json:"initProvider,omitempty"` } // NamespaceNetworkRuleSetStatus defines the observed state of NamespaceNetworkRuleSet. diff --git a/apis/servicebus/v1beta1/zz_queue_types.go b/apis/servicebus/v1beta1/zz_queue_types.go index 4b42e99f0..dbf7cac38 100755 --- a/apis/servicebus/v1beta1/zz_queue_types.go +++ b/apis/servicebus/v1beta1/zz_queue_types.go @@ -13,6 +13,57 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type QueueInitParameters struct { + + // The ISO 8601 timespan duration of the idle interval after which the Queue is automatically deleted, minimum of 5 minutes. + AutoDeleteOnIdle *string `json:"autoDeleteOnIdle,omitempty" tf:"auto_delete_on_idle,omitempty"` + + // Boolean flag which controls whether the Queue has dead letter support when a message expires. Defaults to false. + DeadLetteringOnMessageExpiration *bool `json:"deadLetteringOnMessageExpiration,omitempty" tf:"dead_lettering_on_message_expiration,omitempty"` + + // The ISO 8601 timespan duration of the TTL of messages sent to this queue. This is the default value used when TTL is not set on message itself. + DefaultMessageTTL *string `json:"defaultMessageTtl,omitempty" tf:"default_message_ttl,omitempty"` + + // The ISO 8601 timespan duration during which duplicates can be detected. Defaults to 10 minutes (PT10M). + DuplicateDetectionHistoryTimeWindow *string `json:"duplicateDetectionHistoryTimeWindow,omitempty" tf:"duplicate_detection_history_time_window,omitempty"` + + // Boolean flag which controls whether server-side batched operations are enabled. Defaults to true. + EnableBatchedOperations *bool `json:"enableBatchedOperations,omitempty" tf:"enable_batched_operations,omitempty"` + + // Boolean flag which controls whether Express Entities are enabled. An express queue holds a message in memory temporarily before writing it to persistent storage. Defaults to false for Basic and Standard. For Premium, it MUST be set to false. + EnableExpress *bool `json:"enableExpress,omitempty" tf:"enable_express,omitempty"` + + // Boolean flag which controls whether to enable the queue to be partitioned across multiple message brokers. Changing this forces a new resource to be created. Defaults to false for Basic and Standard. + EnablePartitioning *bool `json:"enablePartitioning,omitempty" tf:"enable_partitioning,omitempty"` + + // The name of a Queue or Topic to automatically forward dead lettered messages to. + ForwardDeadLetteredMessagesTo *string `json:"forwardDeadLetteredMessagesTo,omitempty" tf:"forward_dead_lettered_messages_to,omitempty"` + + // The name of a Queue or Topic to automatically forward messages to. Please see the documentation for more information. + ForwardTo *string `json:"forwardTo,omitempty" tf:"forward_to,omitempty"` + + // The ISO 8601 timespan duration of a peek-lock; that is, the amount of time that the message is locked for other receivers. Maximum value is 5 minutes. Defaults to 1 minute (PT1M). + LockDuration *string `json:"lockDuration,omitempty" tf:"lock_duration,omitempty"` + + // Integer value which controls when a message is automatically dead lettered. Defaults to 10. + MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` + + // Integer value which controls the maximum size of a message allowed on the queue for Premium SKU. For supported values see the "Large messages support" section of this document. + MaxMessageSizeInKilobytes *float64 `json:"maxMessageSizeInKilobytes,omitempty" tf:"max_message_size_in_kilobytes,omitempty"` + + // Integer value which controls the size of memory allocated for the queue. For supported values see the "Queue or topic size" section of Service Bus Quotas. Defaults to 1024. + MaxSizeInMegabytes *float64 `json:"maxSizeInMegabytes,omitempty" tf:"max_size_in_megabytes,omitempty"` + + // Boolean flag which controls whether the Queue requires duplicate detection. Changing this forces a new resource to be created. Defaults to false. + RequiresDuplicateDetection *bool `json:"requiresDuplicateDetection,omitempty" tf:"requires_duplicate_detection,omitempty"` + + // Boolean flag which controls whether the Queue requires sessions. This will allow ordered handling of unbounded sequences of related messages. With sessions enabled a queue can guarantee first-in-first-out delivery of messages. Changing this forces a new resource to be created. Defaults to false. + RequiresSession *bool `json:"requiresSession,omitempty" tf:"requires_session,omitempty"` + + // The status of the Queue. Possible values are Active, Creating, Deleting, Disabled, ReceiveDisabled, Renaming, SendDisabled, Unknown. Note that Restoring is not accepted. Defaults to Active. + Status *string `json:"status,omitempty" tf:"status,omitempty"` +} + type QueueObservation struct { // The ISO 8601 timespan duration of the idle interval after which the Queue is automatically deleted, minimum of 5 minutes. @@ -155,6 +206,18 @@ type QueueParameters struct { type QueueSpec struct { v1.ResourceSpec `json:",inline"` ForProvider QueueParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider QueueInitParameters `json:"initProvider,omitempty"` } // QueueStatus defines the observed state of Queue. diff --git a/apis/servicebus/v1beta1/zz_queueauthorizationrule_types.go b/apis/servicebus/v1beta1/zz_queueauthorizationrule_types.go index 300cf0eaf..1354b6b1d 100755 --- a/apis/servicebus/v1beta1/zz_queueauthorizationrule_types.go +++ b/apis/servicebus/v1beta1/zz_queueauthorizationrule_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type QueueAuthorizationRuleInitParameters struct { + + // Does this Authorization Rule have Listen permissions to the ServiceBus Queue? Defaults to false. + Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` + + // Does this Authorization Rule have Manage permissions to the ServiceBus Queue? When this property is true - both listen and send must be too. Defaults to false. + Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` + + // Does this Authorization Rule have Send permissions to the ServiceBus Queue? Defaults to false. + Send *bool `json:"send,omitempty" tf:"send,omitempty"` +} + type QueueAuthorizationRuleObservation struct { // The ID of the Authorization Rule. @@ -64,6 +76,18 @@ type QueueAuthorizationRuleParameters struct { type QueueAuthorizationRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider QueueAuthorizationRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider QueueAuthorizationRuleInitParameters `json:"initProvider,omitempty"` } // QueueAuthorizationRuleStatus defines the observed state of QueueAuthorizationRule. diff --git a/apis/servicebus/v1beta1/zz_servicebusnamespace_types.go b/apis/servicebus/v1beta1/zz_servicebusnamespace_types.go index d473c7567..c72bc1620 100755 --- a/apis/servicebus/v1beta1/zz_servicebusnamespace_types.go +++ b/apis/servicebus/v1beta1/zz_servicebusnamespace_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CustomerManagedKeyInitParameters struct { + + // The ID of the User Assigned Identity that has access to the key. + IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` + + // Used to specify whether enable Infrastructure Encryption (Double Encryption). Changing this forces a new resource to be created. + InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` + + // The ID of the Key Vault Key which should be used to Encrypt the data in this ServiceBus Namespace. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` +} + type CustomerManagedKeyObservation struct { // The ID of the User Assigned Identity that has access to the key. @@ -28,16 +40,25 @@ type CustomerManagedKeyObservation struct { type CustomerManagedKeyParameters struct { // The ID of the User Assigned Identity that has access to the key. - // +kubebuilder:validation:Required - IdentityID *string `json:"identityId" tf:"identity_id,omitempty"` + // +kubebuilder:validation:Optional + IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` // Used to specify whether enable Infrastructure Encryption (Double Encryption). Changing this forces a new resource to be created. // +kubebuilder:validation:Optional InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` // The ID of the Key Vault Key which should be used to Encrypt the data in this ServiceBus Namespace. - // +kubebuilder:validation:Required - KeyVaultKeyID *string `json:"keyVaultKeyId" tf:"key_vault_key_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` +} + +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this ServiceBus namespace. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this ServiceBus Namespace. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type IdentityObservation struct { @@ -62,8 +83,41 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this ServiceBus Namespace. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ServiceBusNamespaceInitParameters struct { + + // Specifies the capacity. When sku is Premium, capacity can be 1, 2, 4, 8 or 16. When sku is Basic or Standard, capacity can be 0 only. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // An customer_managed_key block as defined below. + CustomerManagedKey []CustomerManagedKeyInitParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Whether or not SAS authentication is enabled for the Service Bus namespace. Defaults to true. + LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The minimum supported TLS version for this Service Bus Namespace. Valid values are: 1.0, 1.1 and 1.2. The current default minimum TLS version is 1.2. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // Is public network access enabled for the Service Bus Namespace? Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Defines which tier to use. Options are Basic, Standard or Premium. Please note that setting this field to Premium will force the creation of a new resource. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Whether or not this resource is zone redundant. sku needs to be Premium. Changing this forces a new resource to be created. + ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } type ServiceBusNamespaceObservation struct { @@ -170,6 +224,18 @@ type ServiceBusNamespaceParameters struct { type ServiceBusNamespaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServiceBusNamespaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServiceBusNamespaceInitParameters `json:"initProvider,omitempty"` } // ServiceBusNamespaceStatus defines the observed state of ServiceBusNamespace. @@ -190,8 +256,8 @@ type ServiceBusNamespaceStatus struct { type ServiceBusNamespace struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec ServiceBusNamespaceSpec `json:"spec"` Status ServiceBusNamespaceStatus `json:"status,omitempty"` } diff --git a/apis/servicebus/v1beta1/zz_subscription_types.go b/apis/servicebus/v1beta1/zz_subscription_types.go index ecc7e2550..895962da7 100755 --- a/apis/servicebus/v1beta1/zz_subscription_types.go +++ b/apis/servicebus/v1beta1/zz_subscription_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ClientScopedSubscriptionInitParameters struct { + + // Specifies the Client ID of the application that created the client-scoped subscription. Changing this forces a new resource to be created. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // Whether the client scoped subscription is shareable. Defaults to true Changing this forces a new resource to be created. + IsClientScopedSubscriptionShareable *bool `json:"isClientScopedSubscriptionShareable,omitempty" tf:"is_client_scoped_subscription_shareable,omitempty"` +} + type ClientScopedSubscriptionObservation struct { // Specifies the Client ID of the application that created the client-scoped subscription. Changing this forces a new resource to be created. @@ -36,6 +45,48 @@ type ClientScopedSubscriptionParameters struct { IsClientScopedSubscriptionShareable *bool `json:"isClientScopedSubscriptionShareable,omitempty" tf:"is_client_scoped_subscription_shareable,omitempty"` } +type SubscriptionInitParameters struct { + + // The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or PT5M. + AutoDeleteOnIdle *string `json:"autoDeleteOnIdle,omitempty" tf:"auto_delete_on_idle,omitempty"` + + // A client_scoped_subscription block as defined below. + ClientScopedSubscription []ClientScopedSubscriptionInitParameters `json:"clientScopedSubscription,omitempty" tf:"client_scoped_subscription,omitempty"` + + // whether the subscription is scoped to a client id. Defaults to False. + ClientScopedSubscriptionEnabled *bool `json:"clientScopedSubscriptionEnabled,omitempty" tf:"client_scoped_subscription_enabled,omitempty"` + + // Boolean flag which controls whether the Subscription has dead letter support on filter evaluation exceptions. Defaults to true. + DeadLetteringOnFilterEvaluationError *bool `json:"deadLetteringOnFilterEvaluationError,omitempty" tf:"dead_lettering_on_filter_evaluation_error,omitempty"` + + // Boolean flag which controls whether the Subscription has dead letter support when a message expires. + DeadLetteringOnMessageExpiration *bool `json:"deadLetteringOnMessageExpiration,omitempty" tf:"dead_lettering_on_message_expiration,omitempty"` + + // The Default message timespan to live as an ISO 8601 duration. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself. + DefaultMessageTTL *string `json:"defaultMessageTtl,omitempty" tf:"default_message_ttl,omitempty"` + + // Boolean flag which controls whether the Subscription supports batched operations. + EnableBatchedOperations *bool `json:"enableBatchedOperations,omitempty" tf:"enable_batched_operations,omitempty"` + + // The name of a Queue or Topic to automatically forward Dead Letter messages to. + ForwardDeadLetteredMessagesTo *string `json:"forwardDeadLetteredMessagesTo,omitempty" tf:"forward_dead_lettered_messages_to,omitempty"` + + // The name of a Queue or Topic to automatically forward messages to. + ForwardTo *string `json:"forwardTo,omitempty" tf:"forward_to,omitempty"` + + // The lock duration for the subscription as an ISO 8601 duration. The default value is 1 minute or P0DT0H1M0S . The maximum value is 5 minutes or P0DT0H5M0S . + LockDuration *string `json:"lockDuration,omitempty" tf:"lock_duration,omitempty"` + + // The maximum number of deliveries. + MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` + + // Boolean flag which controls whether this Subscription supports the concept of a session. Changing this forces a new resource to be created. + RequiresSession *bool `json:"requiresSession,omitempty" tf:"requires_session,omitempty"` + + // The status of the Subscription. Possible values are Active,ReceiveDisabled, or Disabled. Defaults to Active. + Status *string `json:"status,omitempty" tf:"status,omitempty"` +} + type SubscriptionObservation struct { // The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or PT5M. @@ -157,6 +208,18 @@ type SubscriptionParameters struct { type SubscriptionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubscriptionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubscriptionInitParameters `json:"initProvider,omitempty"` } // SubscriptionStatus defines the observed state of Subscription. @@ -177,7 +240,7 @@ type SubscriptionStatus struct { type Subscription struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.maxDeliveryCount)",message="maxDeliveryCount is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.maxDeliveryCount) || has(self.initProvider.maxDeliveryCount)",message="maxDeliveryCount is a required parameter" Spec SubscriptionSpec `json:"spec"` Status SubscriptionStatus `json:"status,omitempty"` } diff --git a/apis/servicebus/v1beta1/zz_subscriptionrule_types.go b/apis/servicebus/v1beta1/zz_subscriptionrule_types.go index 253b9c05f..58fd53372 100755 --- a/apis/servicebus/v1beta1/zz_subscriptionrule_types.go +++ b/apis/servicebus/v1beta1/zz_subscriptionrule_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CorrelationFilterInitParameters struct { + + // Content type of the message. + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` + + // Identifier of the correlation. + CorrelationID *string `json:"correlationId,omitempty" tf:"correlation_id,omitempty"` + + // Application specific label. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // Identifier of the message. + MessageID *string `json:"messageId,omitempty" tf:"message_id,omitempty"` + + // A list of user defined properties to be included in the filter. Specified as a map of name/value pairs. + Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` + + // Address of the queue to reply to. + ReplyTo *string `json:"replyTo,omitempty" tf:"reply_to,omitempty"` + + // Session identifier to reply to. + ReplyToSessionID *string `json:"replyToSessionId,omitempty" tf:"reply_to_session_id,omitempty"` + + // Session identifier. + SessionID *string `json:"sessionId,omitempty" tf:"session_id,omitempty"` + + // Address to send to. + To *string `json:"to,omitempty" tf:"to,omitempty"` +} + type CorrelationFilterObservation struct { // Content type of the message. @@ -82,6 +112,21 @@ type CorrelationFilterParameters struct { To *string `json:"to,omitempty" tf:"to,omitempty"` } +type SubscriptionRuleInitParameters struct { + + // Represents set of actions written in SQL language-based syntax that is performed against a BrokeredMessage. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A correlation_filter block as documented below to be evaluated against a BrokeredMessage. Required when filter_type is set to CorrelationFilter. + CorrelationFilter []CorrelationFilterInitParameters `json:"correlationFilter,omitempty" tf:"correlation_filter,omitempty"` + + // Type of filter to be applied to a BrokeredMessage. Possible values are SqlFilter and CorrelationFilter. + FilterType *string `json:"filterType,omitempty" tf:"filter_type,omitempty"` + + // Represents a filter written in SQL language-based syntax that to be evaluated against a BrokeredMessage. Required when filter_type is set to SqlFilter. + SQLFilter *string `json:"sqlFilter,omitempty" tf:"sql_filter,omitempty"` +} + type SubscriptionRuleObservation struct { // Represents set of actions written in SQL language-based syntax that is performed against a BrokeredMessage. @@ -142,6 +187,18 @@ type SubscriptionRuleParameters struct { type SubscriptionRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SubscriptionRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SubscriptionRuleInitParameters `json:"initProvider,omitempty"` } // SubscriptionRuleStatus defines the observed state of SubscriptionRule. @@ -162,7 +219,7 @@ type SubscriptionRuleStatus struct { type SubscriptionRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.filterType)",message="filterType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.filterType) || has(self.initProvider.filterType)",message="filterType is a required parameter" Spec SubscriptionRuleSpec `json:"spec"` Status SubscriptionRuleStatus `json:"status,omitempty"` } diff --git a/apis/servicebus/v1beta1/zz_topic_types.go b/apis/servicebus/v1beta1/zz_topic_types.go index b5261abe5..acabc977b 100755 --- a/apis/servicebus/v1beta1/zz_topic_types.go +++ b/apis/servicebus/v1beta1/zz_topic_types.go @@ -13,6 +13,46 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TopicInitParameters struct { + + // The ISO 8601 timespan duration of the idle interval after which the Topic is automatically deleted, minimum of 5 minutes. + AutoDeleteOnIdle *string `json:"autoDeleteOnIdle,omitempty" tf:"auto_delete_on_idle,omitempty"` + + // The ISO 8601 timespan duration of TTL of messages sent to this topic if no TTL value is set on the message itself. + DefaultMessageTTL *string `json:"defaultMessageTtl,omitempty" tf:"default_message_ttl,omitempty"` + + // The ISO 8601 timespan duration during which duplicates can be detected. Defaults to 10 minutes. (PT10M) + DuplicateDetectionHistoryTimeWindow *string `json:"duplicateDetectionHistoryTimeWindow,omitempty" tf:"duplicate_detection_history_time_window,omitempty"` + + // Boolean flag which controls if server-side batched operations are enabled. + EnableBatchedOperations *bool `json:"enableBatchedOperations,omitempty" tf:"enable_batched_operations,omitempty"` + + // Boolean flag which controls whether Express Entities are enabled. An express topic holds a message in memory temporarily before writing it to persistent storage. + EnableExpress *bool `json:"enableExpress,omitempty" tf:"enable_express,omitempty"` + + // Boolean flag which controls whether to enable Changing this forces a new resource to be created. + // the topic to be partitioned across multiple message brokers. Defaults to false. + // Changing this forces a new resource to be created. + EnablePartitioning *bool `json:"enablePartitioning,omitempty" tf:"enable_partitioning,omitempty"` + + // Integer value which controls the maximum size of a message allowed on the topic for Premium SKU. For supported values see the "Large messages support" section of this document. + MaxMessageSizeInKilobytes *float64 `json:"maxMessageSizeInKilobytes,omitempty" tf:"max_message_size_in_kilobytes,omitempty"` + + // Integer value which controls the size of memory allocated for the topic. For supported values see the "Queue/topic size" section of this document. + MaxSizeInMegabytes *float64 `json:"maxSizeInMegabytes,omitempty" tf:"max_size_in_megabytes,omitempty"` + + // Boolean flag which controls whether Changing this forces a new resource to be created. + // the Topic requires duplicate detection. Defaults to false. Changing this forces + // a new resource to be created. + RequiresDuplicateDetection *bool `json:"requiresDuplicateDetection,omitempty" tf:"requires_duplicate_detection,omitempty"` + + // The Status of the Service Bus Topic. Acceptable values are Active or Disabled. Defaults to Active. + Status *string `json:"status,omitempty" tf:"status,omitempty"` + + // Boolean flag which controls whether the Topic supports ordering. + SupportOrdering *bool `json:"supportOrdering,omitempty" tf:"support_ordering,omitempty"` +} + type TopicObservation struct { // The ISO 8601 timespan duration of the idle interval after which the Topic is automatically deleted, minimum of 5 minutes. @@ -130,6 +170,18 @@ type TopicParameters struct { type TopicSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TopicParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TopicInitParameters `json:"initProvider,omitempty"` } // TopicStatus defines the observed state of Topic. diff --git a/apis/servicebus/v1beta1/zz_topicauthorizationrule_types.go b/apis/servicebus/v1beta1/zz_topicauthorizationrule_types.go index 928b72876..52a7d51ea 100755 --- a/apis/servicebus/v1beta1/zz_topicauthorizationrule_types.go +++ b/apis/servicebus/v1beta1/zz_topicauthorizationrule_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TopicAuthorizationRuleInitParameters struct { + + // Grants listen access to this this Authorization Rule. Defaults to false. + Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` + + // Grants manage access to this this Authorization Rule. When this property is true - both listen and send must be too. Defaults to false. + Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` + + // Grants send access to this this Authorization Rule. Defaults to false. + Send *bool `json:"send,omitempty" tf:"send,omitempty"` +} + type TopicAuthorizationRuleObservation struct { // The ServiceBus Topic ID. @@ -64,6 +76,18 @@ type TopicAuthorizationRuleParameters struct { type TopicAuthorizationRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TopicAuthorizationRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TopicAuthorizationRuleInitParameters `json:"initProvider,omitempty"` } // TopicAuthorizationRuleStatus defines the observed state of TopicAuthorizationRule. diff --git a/apis/servicefabric/v1beta1/zz_cluster_types.go b/apis/servicefabric/v1beta1/zz_cluster_types.go index 66b53eef4..3d5445905 100755 --- a/apis/servicefabric/v1beta1/zz_cluster_types.go +++ b/apis/servicefabric/v1beta1/zz_cluster_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationPortsInitParameters struct { + + // The end of the Ephemeral Port Range on this Node Type. + EndPort *float64 `json:"endPort,omitempty" tf:"end_port,omitempty"` + + // The start of the Ephemeral Port Range on this Node Type. + StartPort *float64 `json:"startPort,omitempty" tf:"start_port,omitempty"` +} + type ApplicationPortsObservation struct { // The end of the Ephemeral Port Range on this Node Type. @@ -25,12 +34,24 @@ type ApplicationPortsObservation struct { type ApplicationPortsParameters struct { // The end of the Ephemeral Port Range on this Node Type. - // +kubebuilder:validation:Required - EndPort *float64 `json:"endPort" tf:"end_port,omitempty"` + // +kubebuilder:validation:Optional + EndPort *float64 `json:"endPort,omitempty" tf:"end_port,omitempty"` // The start of the Ephemeral Port Range on this Node Type. - // +kubebuilder:validation:Required - StartPort *float64 `json:"startPort" tf:"start_port,omitempty"` + // +kubebuilder:validation:Optional + StartPort *float64 `json:"startPort,omitempty" tf:"start_port,omitempty"` +} + +type AzureActiveDirectoryInitParameters struct { + + // The Azure Active Directory Client ID which should be used for the Client Application. + ClientApplicationID *string `json:"clientApplicationId,omitempty" tf:"client_application_id,omitempty"` + + // The Azure Active Directory Cluster Application ID. + ClusterApplicationID *string `json:"clusterApplicationId,omitempty" tf:"cluster_application_id,omitempty"` + + // The Azure Active Directory Tenant ID. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } type AzureActiveDirectoryObservation struct { @@ -48,16 +69,25 @@ type AzureActiveDirectoryObservation struct { type AzureActiveDirectoryParameters struct { // The Azure Active Directory Client ID which should be used for the Client Application. - // +kubebuilder:validation:Required - ClientApplicationID *string `json:"clientApplicationId" tf:"client_application_id,omitempty"` + // +kubebuilder:validation:Optional + ClientApplicationID *string `json:"clientApplicationId,omitempty" tf:"client_application_id,omitempty"` // The Azure Active Directory Cluster Application ID. - // +kubebuilder:validation:Required - ClusterApplicationID *string `json:"clusterApplicationId" tf:"cluster_application_id,omitempty"` + // +kubebuilder:validation:Optional + ClusterApplicationID *string `json:"clusterApplicationId,omitempty" tf:"cluster_application_id,omitempty"` // The Azure Active Directory Tenant ID. - // +kubebuilder:validation:Required - TenantID *string `json:"tenantId" tf:"tenant_id,omitempty"` + // +kubebuilder:validation:Optional + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + +type CertificateCommonNamesInitParameters struct { + + // A common_names block as defined below. + CommonNames []CommonNamesInitParameters `json:"commonNames,omitempty" tf:"common_names,omitempty"` + + // The X509 Store where the Certificate Exists, such as My. + X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` } type CertificateCommonNamesObservation struct { @@ -72,12 +102,24 @@ type CertificateCommonNamesObservation struct { type CertificateCommonNamesParameters struct { // A common_names block as defined below. - // +kubebuilder:validation:Required - CommonNames []CommonNamesParameters `json:"commonNames" tf:"common_names,omitempty"` + // +kubebuilder:validation:Optional + CommonNames []CommonNamesParameters `json:"commonNames,omitempty" tf:"common_names,omitempty"` // The X509 Store where the Certificate Exists, such as My. - // +kubebuilder:validation:Required - X509StoreName *string `json:"x509StoreName" tf:"x509_store_name,omitempty"` + // +kubebuilder:validation:Optional + X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` +} + +type CertificateInitParameters struct { + + // The Thumbprint of the Certificate. + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` + + // The Secondary Thumbprint of the Certificate. + ThumbprintSecondary *string `json:"thumbprintSecondary,omitempty" tf:"thumbprint_secondary,omitempty"` + + // The X509 Store where the Certificate Exists, such as My. + X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` } type CertificateObservation struct { @@ -95,16 +137,28 @@ type CertificateObservation struct { type CertificateParameters struct { // The Thumbprint of the Certificate. - // +kubebuilder:validation:Required - Thumbprint *string `json:"thumbprint" tf:"thumbprint,omitempty"` + // +kubebuilder:validation:Optional + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` // The Secondary Thumbprint of the Certificate. // +kubebuilder:validation:Optional ThumbprintSecondary *string `json:"thumbprintSecondary,omitempty" tf:"thumbprint_secondary,omitempty"` // The X509 Store where the Certificate Exists, such as My. - // +kubebuilder:validation:Required - X509StoreName *string `json:"x509StoreName" tf:"x509_store_name,omitempty"` + // +kubebuilder:validation:Optional + X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` +} + +type ClientCertificateCommonNameInitParameters struct { + + // The common or subject name of the certificate. + CommonName *string `json:"commonName,omitempty" tf:"common_name,omitempty"` + + // Does the Client Certificate have Admin Access to the cluster? Non-admin clients can only perform read only operations on the cluster. + IsAdmin *bool `json:"isAdmin,omitempty" tf:"is_admin,omitempty"` + + // The Issuer Thumbprint of the Certificate. + IssuerThumbprint *string `json:"issuerThumbprint,omitempty" tf:"issuer_thumbprint,omitempty"` } type ClientCertificateCommonNameObservation struct { @@ -122,18 +176,27 @@ type ClientCertificateCommonNameObservation struct { type ClientCertificateCommonNameParameters struct { // The common or subject name of the certificate. - // +kubebuilder:validation:Required - CommonName *string `json:"commonName" tf:"common_name,omitempty"` + // +kubebuilder:validation:Optional + CommonName *string `json:"commonName,omitempty" tf:"common_name,omitempty"` // Does the Client Certificate have Admin Access to the cluster? Non-admin clients can only perform read only operations on the cluster. - // +kubebuilder:validation:Required - IsAdmin *bool `json:"isAdmin" tf:"is_admin,omitempty"` + // +kubebuilder:validation:Optional + IsAdmin *bool `json:"isAdmin,omitempty" tf:"is_admin,omitempty"` // The Issuer Thumbprint of the Certificate. // +kubebuilder:validation:Optional IssuerThumbprint *string `json:"issuerThumbprint,omitempty" tf:"issuer_thumbprint,omitempty"` } +type ClientCertificateThumbprintInitParameters struct { + + // Does the Client Certificate have Admin Access to the cluster? Non-admin clients can only perform read only operations on the cluster. + IsAdmin *bool `json:"isAdmin,omitempty" tf:"is_admin,omitempty"` + + // The Thumbprint associated with the Client Certificate. + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` +} + type ClientCertificateThumbprintObservation struct { // Does the Client Certificate have Admin Access to the cluster? Non-admin clients can only perform read only operations on the cluster. @@ -146,12 +209,78 @@ type ClientCertificateThumbprintObservation struct { type ClientCertificateThumbprintParameters struct { // Does the Client Certificate have Admin Access to the cluster? Non-admin clients can only perform read only operations on the cluster. - // +kubebuilder:validation:Required - IsAdmin *bool `json:"isAdmin" tf:"is_admin,omitempty"` + // +kubebuilder:validation:Optional + IsAdmin *bool `json:"isAdmin,omitempty" tf:"is_admin,omitempty"` // The Thumbprint associated with the Client Certificate. - // +kubebuilder:validation:Required - Thumbprint *string `json:"thumbprint" tf:"thumbprint,omitempty"` + // +kubebuilder:validation:Optional + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` +} + +type ClusterInitParameters struct { + + // A List of one or more features which should be enabled, such as DnsService. + AddOnFeatures []*string `json:"addOnFeatures,omitempty" tf:"add_on_features,omitempty"` + + // An azure_active_directory block as defined below. + AzureActiveDirectory []AzureActiveDirectoryInitParameters `json:"azureActiveDirectory,omitempty" tf:"azure_active_directory,omitempty"` + + // A certificate block as defined below. Conflicts with certificate_common_names. + Certificate []CertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` + + // A certificate_common_names block as defined below. Conflicts with certificate. + CertificateCommonNames []CertificateCommonNamesInitParameters `json:"certificateCommonNames,omitempty" tf:"certificate_common_names,omitempty"` + + // A client_certificate_common_name block as defined below. + ClientCertificateCommonName []ClientCertificateCommonNameInitParameters `json:"clientCertificateCommonName,omitempty" tf:"client_certificate_common_name,omitempty"` + + // One or more client_certificate_thumbprint blocks as defined below. + ClientCertificateThumbprint []ClientCertificateThumbprintInitParameters `json:"clientCertificateThumbprint,omitempty" tf:"client_certificate_thumbprint,omitempty"` + + // Required if Upgrade Mode set to Manual, Specifies the Version of the Cluster Code of the cluster. + ClusterCodeVersion *string `json:"clusterCodeVersion,omitempty" tf:"cluster_code_version,omitempty"` + + // A diagnostics_config block as defined below. + DiagnosticsConfig []DiagnosticsConfigInitParameters `json:"diagnosticsConfig,omitempty" tf:"diagnostics_config,omitempty"` + + // One or more fabric_settings blocks as defined below. + FabricSettings []FabricSettingsInitParameters `json:"fabricSettings,omitempty" tf:"fabric_settings,omitempty"` + + // Specifies the Azure Region where the Service Fabric Cluster should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the Management Endpoint of the cluster such as http://example.com. Changing this forces a new resource to be created. + ManagementEndpoint *string `json:"managementEndpoint,omitempty" tf:"management_endpoint,omitempty"` + + // One or more node_type blocks as defined below. + NodeType []NodeTypeInitParameters `json:"nodeType,omitempty" tf:"node_type,omitempty"` + + // Specifies the Reliability Level of the Cluster. Possible values include None, Bronze, Silver, Gold and Platinum. + ReliabilityLevel *string `json:"reliabilityLevel,omitempty" tf:"reliability_level,omitempty"` + + // A reverse_proxy_certificate block as defined below. Conflicts with reverse_proxy_certificate_common_names. + ReverseProxyCertificate []ReverseProxyCertificateInitParameters `json:"reverseProxyCertificate,omitempty" tf:"reverse_proxy_certificate,omitempty"` + + // A reverse_proxy_certificate_common_names block as defined below. Conflicts with reverse_proxy_certificate. + ReverseProxyCertificateCommonNames []ReverseProxyCertificateCommonNamesInitParameters `json:"reverseProxyCertificateCommonNames,omitempty" tf:"reverse_proxy_certificate_common_names,omitempty"` + + // Specifies the logical grouping of VMs in upgrade domains. Possible values are Hierarchical or Parallel. + ServiceFabricZonalUpgradeMode *string `json:"serviceFabricZonalUpgradeMode,omitempty" tf:"service_fabric_zonal_upgrade_mode,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the Upgrade Mode of the cluster. Possible values are Automatic or Manual. + UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"` + + // A upgrade_policy block as defined below. + UpgradePolicy []UpgradePolicyInitParameters `json:"upgradePolicy,omitempty" tf:"upgrade_policy,omitempty"` + + // Specifies the Image expected for the Service Fabric Cluster, such as Windows. Changing this forces a new resource to be created. + VMImage *string `json:"vmImage,omitempty" tf:"vm_image,omitempty"` + + // Specifies the upgrade mode for the virtual machine scale set updates that happen in all availability zones at once. Possible values are Hierarchical or Parallel. + VmssZonalUpgradeMode *string `json:"vmssZonalUpgradeMode,omitempty" tf:"vmss_zonal_upgrade_mode,omitempty"` } type ClusterObservation struct { @@ -329,6 +458,15 @@ type ClusterParameters struct { VmssZonalUpgradeMode *string `json:"vmssZonalUpgradeMode,omitempty" tf:"vmss_zonal_upgrade_mode,omitempty"` } +type CommonNamesInitParameters struct { + + // The common or subject name of the certificate. + CertificateCommonName *string `json:"certificateCommonName,omitempty" tf:"certificate_common_name,omitempty"` + + // The Issuer Thumbprint of the Certificate. + CertificateIssuerThumbprint *string `json:"certificateIssuerThumbprint,omitempty" tf:"certificate_issuer_thumbprint,omitempty"` +} + type CommonNamesObservation struct { // The common or subject name of the certificate. @@ -341,14 +479,26 @@ type CommonNamesObservation struct { type CommonNamesParameters struct { // The common or subject name of the certificate. - // +kubebuilder:validation:Required - CertificateCommonName *string `json:"certificateCommonName" tf:"certificate_common_name,omitempty"` + // +kubebuilder:validation:Optional + CertificateCommonName *string `json:"certificateCommonName,omitempty" tf:"certificate_common_name,omitempty"` // The Issuer Thumbprint of the Certificate. // +kubebuilder:validation:Optional CertificateIssuerThumbprint *string `json:"certificateIssuerThumbprint,omitempty" tf:"certificate_issuer_thumbprint,omitempty"` } +type DeltaHealthPolicyInitParameters struct { + + // Specifies the maximum tolerated percentage of delta unhealthy applications that can have aggregated health states of error. If the current unhealthy applications do not respect the percentage relative to the state at the beginning of the upgrade, the cluster is unhealthy. Defaults to 0. + MaxDeltaUnhealthyApplicationsPercent *float64 `json:"maxDeltaUnhealthyApplicationsPercent,omitempty" tf:"max_delta_unhealthy_applications_percent,omitempty"` + + // Specifies the maximum tolerated percentage of delta unhealthy nodes that can have aggregated health states of error. If the current unhealthy nodes do not respect the percentage relative to the state at the beginning of the upgrade, the cluster is unhealthy. Defaults to 0. + MaxDeltaUnhealthyNodesPercent *float64 `json:"maxDeltaUnhealthyNodesPercent,omitempty" tf:"max_delta_unhealthy_nodes_percent,omitempty"` + + // Specifies the maximum tolerated percentage of upgrade domain delta unhealthy nodes that can have aggregated health state of error. If there is any upgrade domain where the current unhealthy nodes do not respect the percentage relative to the state at the beginning of the upgrade, the cluster is unhealthy. Defaults to 0. + MaxUpgradeDomainDeltaUnhealthyNodesPercent *float64 `json:"maxUpgradeDomainDeltaUnhealthyNodesPercent,omitempty" tf:"max_upgrade_domain_delta_unhealthy_nodes_percent,omitempty"` +} + type DeltaHealthPolicyObservation struct { // Specifies the maximum tolerated percentage of delta unhealthy applications that can have aggregated health states of error. If the current unhealthy applications do not respect the percentage relative to the state at the beginning of the upgrade, the cluster is unhealthy. Defaults to 0. @@ -376,6 +526,24 @@ type DeltaHealthPolicyParameters struct { MaxUpgradeDomainDeltaUnhealthyNodesPercent *float64 `json:"maxUpgradeDomainDeltaUnhealthyNodesPercent,omitempty" tf:"max_upgrade_domain_delta_unhealthy_nodes_percent,omitempty"` } +type DiagnosticsConfigInitParameters struct { + + // The Blob Endpoint of the Storage Account. + BlobEndpoint *string `json:"blobEndpoint,omitempty" tf:"blob_endpoint,omitempty"` + + // The protected diagnostics storage key name, such as StorageAccountKey1. + ProtectedAccountKeyName *string `json:"protectedAccountKeyName,omitempty" tf:"protected_account_key_name,omitempty"` + + // The Queue Endpoint of the Storage Account. + QueueEndpoint *string `json:"queueEndpoint,omitempty" tf:"queue_endpoint,omitempty"` + + // The name of the Storage Account where the Diagnostics should be sent to. + StorageAccountName *string `json:"storageAccountName,omitempty" tf:"storage_account_name,omitempty"` + + // The Table Endpoint of the Storage Account. + TableEndpoint *string `json:"tableEndpoint,omitempty" tf:"table_endpoint,omitempty"` +} + type DiagnosticsConfigObservation struct { // The Blob Endpoint of the Storage Account. @@ -397,24 +565,33 @@ type DiagnosticsConfigObservation struct { type DiagnosticsConfigParameters struct { // The Blob Endpoint of the Storage Account. - // +kubebuilder:validation:Required - BlobEndpoint *string `json:"blobEndpoint" tf:"blob_endpoint,omitempty"` + // +kubebuilder:validation:Optional + BlobEndpoint *string `json:"blobEndpoint,omitempty" tf:"blob_endpoint,omitempty"` // The protected diagnostics storage key name, such as StorageAccountKey1. - // +kubebuilder:validation:Required - ProtectedAccountKeyName *string `json:"protectedAccountKeyName" tf:"protected_account_key_name,omitempty"` + // +kubebuilder:validation:Optional + ProtectedAccountKeyName *string `json:"protectedAccountKeyName,omitempty" tf:"protected_account_key_name,omitempty"` // The Queue Endpoint of the Storage Account. - // +kubebuilder:validation:Required - QueueEndpoint *string `json:"queueEndpoint" tf:"queue_endpoint,omitempty"` + // +kubebuilder:validation:Optional + QueueEndpoint *string `json:"queueEndpoint,omitempty" tf:"queue_endpoint,omitempty"` // The name of the Storage Account where the Diagnostics should be sent to. - // +kubebuilder:validation:Required - StorageAccountName *string `json:"storageAccountName" tf:"storage_account_name,omitempty"` + // +kubebuilder:validation:Optional + StorageAccountName *string `json:"storageAccountName,omitempty" tf:"storage_account_name,omitempty"` // The Table Endpoint of the Storage Account. - // +kubebuilder:validation:Required - TableEndpoint *string `json:"tableEndpoint" tf:"table_endpoint,omitempty"` + // +kubebuilder:validation:Optional + TableEndpoint *string `json:"tableEndpoint,omitempty" tf:"table_endpoint,omitempty"` +} + +type EphemeralPortsInitParameters struct { + + // The end of the Ephemeral Port Range on this Node Type. + EndPort *float64 `json:"endPort,omitempty" tf:"end_port,omitempty"` + + // The start of the Ephemeral Port Range on this Node Type. + StartPort *float64 `json:"startPort,omitempty" tf:"start_port,omitempty"` } type EphemeralPortsObservation struct { @@ -429,12 +606,21 @@ type EphemeralPortsObservation struct { type EphemeralPortsParameters struct { // The end of the Ephemeral Port Range on this Node Type. - // +kubebuilder:validation:Required - EndPort *float64 `json:"endPort" tf:"end_port,omitempty"` + // +kubebuilder:validation:Optional + EndPort *float64 `json:"endPort,omitempty" tf:"end_port,omitempty"` // The start of the Ephemeral Port Range on this Node Type. - // +kubebuilder:validation:Required - StartPort *float64 `json:"startPort" tf:"start_port,omitempty"` + // +kubebuilder:validation:Optional + StartPort *float64 `json:"startPort,omitempty" tf:"start_port,omitempty"` +} + +type FabricSettingsInitParameters struct { + + // The name of the Fabric Setting, such as Security or Federation. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A map containing settings for the specified Fabric Setting. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } type FabricSettingsObservation struct { @@ -449,14 +635,23 @@ type FabricSettingsObservation struct { type FabricSettingsParameters struct { // The name of the Fabric Setting, such as Security or Federation. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map containing settings for the specified Fabric Setting. // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type HealthPolicyInitParameters struct { + + // Specifies the maximum tolerated percentage of applications that can have aggregated health state of error. If the upgrade exceeds this percentage, the cluster is unhealthy. Defaults to 0. + MaxUnhealthyApplicationsPercent *float64 `json:"maxUnhealthyApplicationsPercent,omitempty" tf:"max_unhealthy_applications_percent,omitempty"` + + // Specifies the maximum tolerated percentage of nodes that can have aggregated health states of error. If an upgrade exceeds this percentage, the cluster is unhealthy. Defaults to 0. + MaxUnhealthyNodesPercent *float64 `json:"maxUnhealthyNodesPercent,omitempty" tf:"max_unhealthy_nodes_percent,omitempty"` +} + type HealthPolicyObservation struct { // Specifies the maximum tolerated percentage of applications that can have aggregated health state of error. If the upgrade exceeds this percentage, the cluster is unhealthy. Defaults to 0. @@ -477,6 +672,48 @@ type HealthPolicyParameters struct { MaxUnhealthyNodesPercent *float64 `json:"maxUnhealthyNodesPercent,omitempty" tf:"max_unhealthy_nodes_percent,omitempty"` } +type NodeTypeInitParameters struct { + + // A application_ports block as defined below. + ApplicationPorts []ApplicationPortsInitParameters `json:"applicationPorts,omitempty" tf:"application_ports,omitempty"` + + // The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has. + Capacities map[string]*string `json:"capacities,omitempty" tf:"capacities,omitempty"` + + // The Port used for the Client Endpoint for this Node Type. + ClientEndpointPort *float64 `json:"clientEndpointPort,omitempty" tf:"client_endpoint_port,omitempty"` + + // The Durability Level for this Node Type. Possible values include Bronze, Gold and Silver. Defaults to Bronze. + DurabilityLevel *string `json:"durabilityLevel,omitempty" tf:"durability_level,omitempty"` + + // A ephemeral_ports block as defined below. + EphemeralPorts []EphemeralPortsInitParameters `json:"ephemeralPorts,omitempty" tf:"ephemeral_ports,omitempty"` + + // The Port used for the HTTP Endpoint for this Node Type. + HTTPEndpointPort *float64 `json:"httpEndpointPort,omitempty" tf:"http_endpoint_port,omitempty"` + + // The number of nodes for this Node Type. + InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` + + // Is this the Primary Node Type? + IsPrimary *bool `json:"isPrimary,omitempty" tf:"is_primary,omitempty"` + + // Should this node type run only stateless services? + IsStateless *bool `json:"isStateless,omitempty" tf:"is_stateless,omitempty"` + + // Does this node type span availability zones? + MultipleAvailabilityZones *bool `json:"multipleAvailabilityZones,omitempty" tf:"multiple_availability_zones,omitempty"` + + // The name of the Node Type. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run. + PlacementProperties map[string]*string `json:"placementProperties,omitempty" tf:"placement_properties,omitempty"` + + // The Port used for the Reverse Proxy Endpoint for this Node Type. Changing this will upgrade the cluster. + ReverseProxyEndpointPort *float64 `json:"reverseProxyEndpointPort,omitempty" tf:"reverse_proxy_endpoint_port,omitempty"` +} + type NodeTypeObservation struct { // A application_ports block as defined below. @@ -530,8 +767,8 @@ type NodeTypeParameters struct { Capacities map[string]*string `json:"capacities,omitempty" tf:"capacities,omitempty"` // The Port used for the Client Endpoint for this Node Type. - // +kubebuilder:validation:Required - ClientEndpointPort *float64 `json:"clientEndpointPort" tf:"client_endpoint_port,omitempty"` + // +kubebuilder:validation:Optional + ClientEndpointPort *float64 `json:"clientEndpointPort,omitempty" tf:"client_endpoint_port,omitempty"` // The Durability Level for this Node Type. Possible values include Bronze, Gold and Silver. Defaults to Bronze. // +kubebuilder:validation:Optional @@ -542,16 +779,16 @@ type NodeTypeParameters struct { EphemeralPorts []EphemeralPortsParameters `json:"ephemeralPorts,omitempty" tf:"ephemeral_ports,omitempty"` // The Port used for the HTTP Endpoint for this Node Type. - // +kubebuilder:validation:Required - HTTPEndpointPort *float64 `json:"httpEndpointPort" tf:"http_endpoint_port,omitempty"` + // +kubebuilder:validation:Optional + HTTPEndpointPort *float64 `json:"httpEndpointPort,omitempty" tf:"http_endpoint_port,omitempty"` // The number of nodes for this Node Type. - // +kubebuilder:validation:Required - InstanceCount *float64 `json:"instanceCount" tf:"instance_count,omitempty"` + // +kubebuilder:validation:Optional + InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` // Is this the Primary Node Type? - // +kubebuilder:validation:Required - IsPrimary *bool `json:"isPrimary" tf:"is_primary,omitempty"` + // +kubebuilder:validation:Optional + IsPrimary *bool `json:"isPrimary,omitempty" tf:"is_primary,omitempty"` // Should this node type run only stateless services? // +kubebuilder:validation:Optional @@ -562,8 +799,8 @@ type NodeTypeParameters struct { MultipleAvailabilityZones *bool `json:"multipleAvailabilityZones,omitempty" tf:"multiple_availability_zones,omitempty"` // The name of the Node Type. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run. // +kubebuilder:validation:Optional @@ -574,6 +811,15 @@ type NodeTypeParameters struct { ReverseProxyEndpointPort *float64 `json:"reverseProxyEndpointPort,omitempty" tf:"reverse_proxy_endpoint_port,omitempty"` } +type ReverseProxyCertificateCommonNamesCommonNamesInitParameters struct { + + // The common or subject name of the certificate. + CertificateCommonName *string `json:"certificateCommonName,omitempty" tf:"certificate_common_name,omitempty"` + + // The Issuer Thumbprint of the Certificate. + CertificateIssuerThumbprint *string `json:"certificateIssuerThumbprint,omitempty" tf:"certificate_issuer_thumbprint,omitempty"` +} + type ReverseProxyCertificateCommonNamesCommonNamesObservation struct { // The common or subject name of the certificate. @@ -586,14 +832,23 @@ type ReverseProxyCertificateCommonNamesCommonNamesObservation struct { type ReverseProxyCertificateCommonNamesCommonNamesParameters struct { // The common or subject name of the certificate. - // +kubebuilder:validation:Required - CertificateCommonName *string `json:"certificateCommonName" tf:"certificate_common_name,omitempty"` + // +kubebuilder:validation:Optional + CertificateCommonName *string `json:"certificateCommonName,omitempty" tf:"certificate_common_name,omitempty"` // The Issuer Thumbprint of the Certificate. // +kubebuilder:validation:Optional CertificateIssuerThumbprint *string `json:"certificateIssuerThumbprint,omitempty" tf:"certificate_issuer_thumbprint,omitempty"` } +type ReverseProxyCertificateCommonNamesInitParameters struct { + + // A common_names block as defined below. + CommonNames []ReverseProxyCertificateCommonNamesCommonNamesInitParameters `json:"commonNames,omitempty" tf:"common_names,omitempty"` + + // The X509 Store where the Certificate Exists, such as My. + X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` +} + type ReverseProxyCertificateCommonNamesObservation struct { // A common_names block as defined below. @@ -606,12 +861,24 @@ type ReverseProxyCertificateCommonNamesObservation struct { type ReverseProxyCertificateCommonNamesParameters struct { // A common_names block as defined below. - // +kubebuilder:validation:Required - CommonNames []ReverseProxyCertificateCommonNamesCommonNamesParameters `json:"commonNames" tf:"common_names,omitempty"` + // +kubebuilder:validation:Optional + CommonNames []ReverseProxyCertificateCommonNamesCommonNamesParameters `json:"commonNames,omitempty" tf:"common_names,omitempty"` // The X509 Store where the Certificate Exists, such as My. - // +kubebuilder:validation:Required - X509StoreName *string `json:"x509StoreName" tf:"x509_store_name,omitempty"` + // +kubebuilder:validation:Optional + X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` +} + +type ReverseProxyCertificateInitParameters struct { + + // The Thumbprint of the Certificate. + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` + + // The Secondary Thumbprint of the Certificate. + ThumbprintSecondary *string `json:"thumbprintSecondary,omitempty" tf:"thumbprint_secondary,omitempty"` + + // The X509 Store where the Certificate Exists, such as My. + X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` } type ReverseProxyCertificateObservation struct { @@ -629,16 +896,46 @@ type ReverseProxyCertificateObservation struct { type ReverseProxyCertificateParameters struct { // The Thumbprint of the Certificate. - // +kubebuilder:validation:Required - Thumbprint *string `json:"thumbprint" tf:"thumbprint,omitempty"` + // +kubebuilder:validation:Optional + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` // The Secondary Thumbprint of the Certificate. // +kubebuilder:validation:Optional ThumbprintSecondary *string `json:"thumbprintSecondary,omitempty" tf:"thumbprint_secondary,omitempty"` // The X509 Store where the Certificate Exists, such as My. - // +kubebuilder:validation:Required - X509StoreName *string `json:"x509StoreName" tf:"x509_store_name,omitempty"` + // +kubebuilder:validation:Optional + X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` +} + +type UpgradePolicyInitParameters struct { + + // A delta_health_policy block as defined below + DeltaHealthPolicy []DeltaHealthPolicyInitParameters `json:"deltaHealthPolicy,omitempty" tf:"delta_health_policy,omitempty"` + + // Indicates whether to restart the Service Fabric node even if only dynamic configurations have changed. + ForceRestartEnabled *bool `json:"forceRestartEnabled,omitempty" tf:"force_restart_enabled,omitempty"` + + // Specifies the duration, in "hh:mm:ss" string format, after which Service Fabric retries the health check if the previous health check fails. Defaults to 00:45:00. + HealthCheckRetryTimeout *string `json:"healthCheckRetryTimeout,omitempty" tf:"health_check_retry_timeout,omitempty"` + + // Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits in order to verify that the cluster is stable before it continues to the next upgrade domain or completes the upgrade. This wait duration prevents undetected changes of health right after the health check is performed. Defaults to 00:01:00. + HealthCheckStableDuration *string `json:"healthCheckStableDuration,omitempty" tf:"health_check_stable_duration,omitempty"` + + // Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits before it performs the initial health check after it finishes the upgrade on the upgrade domain. Defaults to 00:00:30. + HealthCheckWaitDuration *string `json:"healthCheckWaitDuration,omitempty" tf:"health_check_wait_duration,omitempty"` + + // A health_policy block as defined below + HealthPolicy []HealthPolicyInitParameters `json:"healthPolicy,omitempty" tf:"health_policy,omitempty"` + + // Specifies the duration, in "hh:mm:ss" string format, that Service Fabric takes to upgrade a single upgrade domain. After this period, the upgrade fails. Defaults to 02:00:00. + UpgradeDomainTimeout *string `json:"upgradeDomainTimeout,omitempty" tf:"upgrade_domain_timeout,omitempty"` + + // Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits for a replica set to reconfigure into a safe state, if it is not already in a safe state, before Service Fabric proceeds with the upgrade. Defaults to 10675199.02:48:05.4775807. + UpgradeReplicaSetCheckTimeout *string `json:"upgradeReplicaSetCheckTimeout,omitempty" tf:"upgrade_replica_set_check_timeout,omitempty"` + + // Specifies the duration, in "hh:mm:ss" string format, that Service Fabric takes for the entire upgrade. After this period, the upgrade fails. Defaults to 12:00:00. + UpgradeTimeout *string `json:"upgradeTimeout,omitempty" tf:"upgrade_timeout,omitempty"` } type UpgradePolicyObservation struct { @@ -714,6 +1011,18 @@ type UpgradePolicyParameters struct { type ClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ClusterInitParameters `json:"initProvider,omitempty"` } // ClusterStatus defines the observed state of Cluster. @@ -734,12 +1043,12 @@ type ClusterStatus struct { type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.managementEndpoint)",message="managementEndpoint is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nodeType)",message="nodeType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.reliabilityLevel)",message="reliabilityLevel is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.upgradeMode)",message="upgradeMode is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vmImage)",message="vmImage is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.managementEndpoint) || has(self.initProvider.managementEndpoint)",message="managementEndpoint is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.nodeType) || has(self.initProvider.nodeType)",message="nodeType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.reliabilityLevel) || has(self.initProvider.reliabilityLevel)",message="reliabilityLevel is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.upgradeMode) || has(self.initProvider.upgradeMode)",message="upgradeMode is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.vmImage) || has(self.initProvider.vmImage)",message="vmImage is a required parameter" Spec ClusterSpec `json:"spec"` Status ClusterStatus `json:"status,omitempty"` } diff --git a/apis/servicefabric/v1beta1/zz_generated.deepcopy.go b/apis/servicefabric/v1beta1/zz_generated.deepcopy.go index bbebb39cb..c6b7bfd84 100644 --- a/apis/servicefabric/v1beta1/zz_generated.deepcopy.go +++ b/apis/servicefabric/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,36 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActiveDirectoryInitParameters) DeepCopyInto(out *ActiveDirectoryInitParameters) { + *out = *in + if in.ClientApplicationID != nil { + in, out := &in.ClientApplicationID, &out.ClientApplicationID + *out = new(string) + **out = **in + } + if in.ClusterApplicationID != nil { + in, out := &in.ClusterApplicationID, &out.ClusterApplicationID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryInitParameters. +func (in *ActiveDirectoryInitParameters) DeepCopy() *ActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(ActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActiveDirectoryObservation) DeepCopyInto(out *ActiveDirectoryObservation) { *out = *in @@ -74,6 +104,31 @@ func (in *ActiveDirectoryParameters) DeepCopy() *ActiveDirectoryParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationPortsInitParameters) DeepCopyInto(out *ApplicationPortsInitParameters) { + *out = *in + if in.EndPort != nil { + in, out := &in.EndPort, &out.EndPort + *out = new(float64) + **out = **in + } + if in.StartPort != nil { + in, out := &in.StartPort, &out.StartPort + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationPortsInitParameters. +func (in *ApplicationPortsInitParameters) DeepCopy() *ApplicationPortsInitParameters { + if in == nil { + return nil + } + out := new(ApplicationPortsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationPortsObservation) DeepCopyInto(out *ApplicationPortsObservation) { *out = *in @@ -124,6 +179,36 @@ func (in *ApplicationPortsParameters) DeepCopy() *ApplicationPortsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthenticationCertificateInitParameters) DeepCopyInto(out *AuthenticationCertificateInitParameters) { + *out = *in + if in.CommonName != nil { + in, out := &in.CommonName, &out.CommonName + *out = new(string) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationCertificateInitParameters. +func (in *AuthenticationCertificateInitParameters) DeepCopy() *AuthenticationCertificateInitParameters { + if in == nil { + return nil + } + out := new(AuthenticationCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthenticationCertificateObservation) DeepCopyInto(out *AuthenticationCertificateObservation) { *out = *in @@ -184,6 +269,35 @@ func (in *AuthenticationCertificateParameters) DeepCopy() *AuthenticationCertifi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthenticationInitParameters) DeepCopyInto(out *AuthenticationInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]ActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]AuthenticationCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationInitParameters. +func (in *AuthenticationInitParameters) DeepCopy() *AuthenticationInitParameters { + if in == nil { + return nil + } + out := new(AuthenticationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthenticationObservation) DeepCopyInto(out *AuthenticationObservation) { *out = *in @@ -242,6 +356,36 @@ func (in *AuthenticationParameters) DeepCopy() *AuthenticationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureActiveDirectoryInitParameters) DeepCopyInto(out *AzureActiveDirectoryInitParameters) { + *out = *in + if in.ClientApplicationID != nil { + in, out := &in.ClientApplicationID, &out.ClientApplicationID + *out = new(string) + **out = **in + } + if in.ClusterApplicationID != nil { + in, out := &in.ClusterApplicationID, &out.ClusterApplicationID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureActiveDirectoryInitParameters. +func (in *AzureActiveDirectoryInitParameters) DeepCopy() *AzureActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(AzureActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureActiveDirectoryObservation) DeepCopyInto(out *AzureActiveDirectoryObservation) { *out = *in @@ -302,6 +446,33 @@ func (in *AzureActiveDirectoryParameters) DeepCopy() *AzureActiveDirectoryParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateCommonNamesInitParameters) DeepCopyInto(out *CertificateCommonNamesInitParameters) { + *out = *in + if in.CommonNames != nil { + in, out := &in.CommonNames, &out.CommonNames + *out = make([]CommonNamesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.X509StoreName != nil { + in, out := &in.X509StoreName, &out.X509StoreName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateCommonNamesInitParameters. +func (in *CertificateCommonNamesInitParameters) DeepCopy() *CertificateCommonNamesInitParameters { + if in == nil { + return nil + } + out := new(CertificateCommonNamesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificateCommonNamesObservation) DeepCopyInto(out *CertificateCommonNamesObservation) { *out = *in @@ -356,6 +527,36 @@ func (in *CertificateCommonNamesParameters) DeepCopy() *CertificateCommonNamesPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificateInitParameters) DeepCopyInto(out *CertificateInitParameters) { + *out = *in + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } + if in.ThumbprintSecondary != nil { + in, out := &in.ThumbprintSecondary, &out.ThumbprintSecondary + *out = new(string) + **out = **in + } + if in.X509StoreName != nil { + in, out := &in.X509StoreName, &out.X509StoreName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateInitParameters. +func (in *CertificateInitParameters) DeepCopy() *CertificateInitParameters { + if in == nil { + return nil + } + out := new(CertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificateObservation) DeepCopyInto(out *CertificateObservation) { *out = *in @@ -416,6 +617,31 @@ func (in *CertificateParameters) DeepCopy() *CertificateParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CertificatesInitParameters) DeepCopyInto(out *CertificatesInitParameters) { + *out = *in + if in.Store != nil { + in, out := &in.Store, &out.Store + *out = new(string) + **out = **in + } + if in.URL != nil { + in, out := &in.URL, &out.URL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificatesInitParameters. +func (in *CertificatesInitParameters) DeepCopy() *CertificatesInitParameters { + if in == nil { + return nil + } + out := new(CertificatesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CertificatesObservation) DeepCopyInto(out *CertificatesObservation) { *out = *in @@ -466,6 +692,36 @@ func (in *CertificatesParameters) DeepCopy() *CertificatesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClientCertificateCommonNameInitParameters) DeepCopyInto(out *ClientCertificateCommonNameInitParameters) { + *out = *in + if in.CommonName != nil { + in, out := &in.CommonName, &out.CommonName + *out = new(string) + **out = **in + } + if in.IsAdmin != nil { + in, out := &in.IsAdmin, &out.IsAdmin + *out = new(bool) + **out = **in + } + if in.IssuerThumbprint != nil { + in, out := &in.IssuerThumbprint, &out.IssuerThumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientCertificateCommonNameInitParameters. +func (in *ClientCertificateCommonNameInitParameters) DeepCopy() *ClientCertificateCommonNameInitParameters { + if in == nil { + return nil + } + out := new(ClientCertificateCommonNameInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClientCertificateCommonNameObservation) DeepCopyInto(out *ClientCertificateCommonNameObservation) { *out = *in @@ -526,6 +782,31 @@ func (in *ClientCertificateCommonNameParameters) DeepCopy() *ClientCertificateCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClientCertificateThumbprintInitParameters) DeepCopyInto(out *ClientCertificateThumbprintInitParameters) { + *out = *in + if in.IsAdmin != nil { + in, out := &in.IsAdmin, &out.IsAdmin + *out = new(bool) + **out = **in + } + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientCertificateThumbprintInitParameters. +func (in *ClientCertificateThumbprintInitParameters) DeepCopy() *ClientCertificateThumbprintInitParameters { + if in == nil { + return nil + } + out := new(ClientCertificateThumbprintInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClientCertificateThumbprintObservation) DeepCopyInto(out *ClientCertificateThumbprintObservation) { *out = *in @@ -604,20 +885,178 @@ func (in *Cluster) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ClusterList) DeepCopyInto(out *ClusterList) { +func (in *ClusterInitParameters) DeepCopyInto(out *ClusterInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]Cluster, len(*in)) + if in.AddOnFeatures != nil { + in, out := &in.AddOnFeatures, &out.AddOnFeatures + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList. + if in.AzureActiveDirectory != nil { + in, out := &in.AzureActiveDirectory, &out.AzureActiveDirectory + *out = make([]AzureActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Certificate != nil { + in, out := &in.Certificate, &out.Certificate + *out = make([]CertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CertificateCommonNames != nil { + in, out := &in.CertificateCommonNames, &out.CertificateCommonNames + *out = make([]CertificateCommonNamesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientCertificateCommonName != nil { + in, out := &in.ClientCertificateCommonName, &out.ClientCertificateCommonName + *out = make([]ClientCertificateCommonNameInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientCertificateThumbprint != nil { + in, out := &in.ClientCertificateThumbprint, &out.ClientCertificateThumbprint + *out = make([]ClientCertificateThumbprintInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClusterCodeVersion != nil { + in, out := &in.ClusterCodeVersion, &out.ClusterCodeVersion + *out = new(string) + **out = **in + } + if in.DiagnosticsConfig != nil { + in, out := &in.DiagnosticsConfig, &out.DiagnosticsConfig + *out = make([]DiagnosticsConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FabricSettings != nil { + in, out := &in.FabricSettings, &out.FabricSettings + *out = make([]FabricSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ManagementEndpoint != nil { + in, out := &in.ManagementEndpoint, &out.ManagementEndpoint + *out = new(string) + **out = **in + } + if in.NodeType != nil { + in, out := &in.NodeType, &out.NodeType + *out = make([]NodeTypeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ReliabilityLevel != nil { + in, out := &in.ReliabilityLevel, &out.ReliabilityLevel + *out = new(string) + **out = **in + } + if in.ReverseProxyCertificate != nil { + in, out := &in.ReverseProxyCertificate, &out.ReverseProxyCertificate + *out = make([]ReverseProxyCertificateInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ReverseProxyCertificateCommonNames != nil { + in, out := &in.ReverseProxyCertificateCommonNames, &out.ReverseProxyCertificateCommonNames + *out = make([]ReverseProxyCertificateCommonNamesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ServiceFabricZonalUpgradeMode != nil { + in, out := &in.ServiceFabricZonalUpgradeMode, &out.ServiceFabricZonalUpgradeMode + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.UpgradeMode != nil { + in, out := &in.UpgradeMode, &out.UpgradeMode + *out = new(string) + **out = **in + } + if in.UpgradePolicy != nil { + in, out := &in.UpgradePolicy, &out.UpgradePolicy + *out = make([]UpgradePolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VMImage != nil { + in, out := &in.VMImage, &out.VMImage + *out = new(string) + **out = **in + } + if in.VmssZonalUpgradeMode != nil { + in, out := &in.VmssZonalUpgradeMode, &out.VmssZonalUpgradeMode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInitParameters. +func (in *ClusterInitParameters) DeepCopy() *ClusterInitParameters { + if in == nil { + return nil + } + out := new(ClusterInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterList) DeepCopyInto(out *ClusterList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Cluster, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList. func (in *ClusterList) DeepCopy() *ClusterList { if in == nil { return nil @@ -986,6 +1425,7 @@ func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec. @@ -1015,6 +1455,31 @@ func (in *ClusterStatus) DeepCopy() *ClusterStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CommonNamesInitParameters) DeepCopyInto(out *CommonNamesInitParameters) { + *out = *in + if in.CertificateCommonName != nil { + in, out := &in.CertificateCommonName, &out.CertificateCommonName + *out = new(string) + **out = **in + } + if in.CertificateIssuerThumbprint != nil { + in, out := &in.CertificateIssuerThumbprint, &out.CertificateIssuerThumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommonNamesInitParameters. +func (in *CommonNamesInitParameters) DeepCopy() *CommonNamesInitParameters { + if in == nil { + return nil + } + out := new(CommonNamesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CommonNamesObservation) DeepCopyInto(out *CommonNamesObservation) { *out = *in @@ -1065,6 +1530,36 @@ func (in *CommonNamesParameters) DeepCopy() *CommonNamesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomFabricSettingInitParameters) DeepCopyInto(out *CustomFabricSettingInitParameters) { + *out = *in + if in.Parameter != nil { + in, out := &in.Parameter, &out.Parameter + *out = new(string) + **out = **in + } + if in.Section != nil { + in, out := &in.Section, &out.Section + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomFabricSettingInitParameters. +func (in *CustomFabricSettingInitParameters) DeepCopy() *CustomFabricSettingInitParameters { + if in == nil { + return nil + } + out := new(CustomFabricSettingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomFabricSettingObservation) DeepCopyInto(out *CustomFabricSettingObservation) { *out = *in @@ -1125,6 +1620,36 @@ func (in *CustomFabricSettingParameters) DeepCopy() *CustomFabricSettingParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeltaHealthPolicyInitParameters) DeepCopyInto(out *DeltaHealthPolicyInitParameters) { + *out = *in + if in.MaxDeltaUnhealthyApplicationsPercent != nil { + in, out := &in.MaxDeltaUnhealthyApplicationsPercent, &out.MaxDeltaUnhealthyApplicationsPercent + *out = new(float64) + **out = **in + } + if in.MaxDeltaUnhealthyNodesPercent != nil { + in, out := &in.MaxDeltaUnhealthyNodesPercent, &out.MaxDeltaUnhealthyNodesPercent + *out = new(float64) + **out = **in + } + if in.MaxUpgradeDomainDeltaUnhealthyNodesPercent != nil { + in, out := &in.MaxUpgradeDomainDeltaUnhealthyNodesPercent, &out.MaxUpgradeDomainDeltaUnhealthyNodesPercent + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeltaHealthPolicyInitParameters. +func (in *DeltaHealthPolicyInitParameters) DeepCopy() *DeltaHealthPolicyInitParameters { + if in == nil { + return nil + } + out := new(DeltaHealthPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DeltaHealthPolicyObservation) DeepCopyInto(out *DeltaHealthPolicyObservation) { *out = *in @@ -1185,6 +1710,46 @@ func (in *DeltaHealthPolicyParameters) DeepCopy() *DeltaHealthPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiagnosticsConfigInitParameters) DeepCopyInto(out *DiagnosticsConfigInitParameters) { + *out = *in + if in.BlobEndpoint != nil { + in, out := &in.BlobEndpoint, &out.BlobEndpoint + *out = new(string) + **out = **in + } + if in.ProtectedAccountKeyName != nil { + in, out := &in.ProtectedAccountKeyName, &out.ProtectedAccountKeyName + *out = new(string) + **out = **in + } + if in.QueueEndpoint != nil { + in, out := &in.QueueEndpoint, &out.QueueEndpoint + *out = new(string) + **out = **in + } + if in.StorageAccountName != nil { + in, out := &in.StorageAccountName, &out.StorageAccountName + *out = new(string) + **out = **in + } + if in.TableEndpoint != nil { + in, out := &in.TableEndpoint, &out.TableEndpoint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiagnosticsConfigInitParameters. +func (in *DiagnosticsConfigInitParameters) DeepCopy() *DiagnosticsConfigInitParameters { + if in == nil { + return nil + } + out := new(DiagnosticsConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiagnosticsConfigObservation) DeepCopyInto(out *DiagnosticsConfigObservation) { *out = *in @@ -1266,7 +1831,7 @@ func (in *DiagnosticsConfigParameters) DeepCopy() *DiagnosticsConfigParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *EphemeralPortsObservation) DeepCopyInto(out *EphemeralPortsObservation) { +func (in *EphemeralPortsInitParameters) DeepCopyInto(out *EphemeralPortsInitParameters) { *out = *in if in.EndPort != nil { in, out := &in.EndPort, &out.EndPort @@ -1280,7 +1845,32 @@ func (in *EphemeralPortsObservation) DeepCopyInto(out *EphemeralPortsObservation } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EphemeralPortsObservation. +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EphemeralPortsInitParameters. +func (in *EphemeralPortsInitParameters) DeepCopy() *EphemeralPortsInitParameters { + if in == nil { + return nil + } + out := new(EphemeralPortsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EphemeralPortsObservation) DeepCopyInto(out *EphemeralPortsObservation) { + *out = *in + if in.EndPort != nil { + in, out := &in.EndPort, &out.EndPort + *out = new(float64) + **out = **in + } + if in.StartPort != nil { + in, out := &in.StartPort, &out.StartPort + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EphemeralPortsObservation. func (in *EphemeralPortsObservation) DeepCopy() *EphemeralPortsObservation { if in == nil { return nil @@ -1315,6 +1905,41 @@ func (in *EphemeralPortsParameters) DeepCopy() *EphemeralPortsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FabricSettingsInitParameters) DeepCopyInto(out *FabricSettingsInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FabricSettingsInitParameters. +func (in *FabricSettingsInitParameters) DeepCopy() *FabricSettingsInitParameters { + if in == nil { + return nil + } + out := new(FabricSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FabricSettingsObservation) DeepCopyInto(out *FabricSettingsObservation) { *out = *in @@ -1385,6 +2010,31 @@ func (in *FabricSettingsParameters) DeepCopy() *FabricSettingsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HealthPolicyInitParameters) DeepCopyInto(out *HealthPolicyInitParameters) { + *out = *in + if in.MaxUnhealthyApplicationsPercent != nil { + in, out := &in.MaxUnhealthyApplicationsPercent, &out.MaxUnhealthyApplicationsPercent + *out = new(float64) + **out = **in + } + if in.MaxUnhealthyNodesPercent != nil { + in, out := &in.MaxUnhealthyNodesPercent, &out.MaxUnhealthyNodesPercent + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthPolicyInitParameters. +func (in *HealthPolicyInitParameters) DeepCopy() *HealthPolicyInitParameters { + if in == nil { + return nil + } + out := new(HealthPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HealthPolicyObservation) DeepCopyInto(out *HealthPolicyObservation) { *out = *in @@ -1435,6 +2085,46 @@ func (in *HealthPolicyParameters) DeepCopy() *HealthPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LBRuleInitParameters) DeepCopyInto(out *LBRuleInitParameters) { + *out = *in + if in.BackendPort != nil { + in, out := &in.BackendPort, &out.BackendPort + *out = new(float64) + **out = **in + } + if in.FrontendPort != nil { + in, out := &in.FrontendPort, &out.FrontendPort + *out = new(float64) + **out = **in + } + if in.ProbeProtocol != nil { + in, out := &in.ProbeProtocol, &out.ProbeProtocol + *out = new(string) + **out = **in + } + if in.ProbeRequestPath != nil { + in, out := &in.ProbeRequestPath, &out.ProbeRequestPath + *out = new(string) + **out = **in + } + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LBRuleInitParameters. +func (in *LBRuleInitParameters) DeepCopy() *LBRuleInitParameters { + if in == nil { + return nil + } + out := new(LBRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LBRuleObservation) DeepCopyInto(out *LBRuleObservation) { *out = *in @@ -1542,6 +2232,109 @@ func (in *ManagedCluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedClusterInitParameters) DeepCopyInto(out *ManagedClusterInitParameters) { + *out = *in + if in.Authentication != nil { + in, out := &in.Authentication, &out.Authentication + *out = make([]AuthenticationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BackupServiceEnabled != nil { + in, out := &in.BackupServiceEnabled, &out.BackupServiceEnabled + *out = new(bool) + **out = **in + } + if in.ClientConnectionPort != nil { + in, out := &in.ClientConnectionPort, &out.ClientConnectionPort + *out = new(float64) + **out = **in + } + if in.CustomFabricSetting != nil { + in, out := &in.CustomFabricSetting, &out.CustomFabricSetting + *out = make([]CustomFabricSettingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DNSName != nil { + in, out := &in.DNSName, &out.DNSName + *out = new(string) + **out = **in + } + if in.DNSServiceEnabled != nil { + in, out := &in.DNSServiceEnabled, &out.DNSServiceEnabled + *out = new(bool) + **out = **in + } + if in.HTTPGatewayPort != nil { + in, out := &in.HTTPGatewayPort, &out.HTTPGatewayPort + *out = new(float64) + **out = **in + } + if in.LBRule != nil { + in, out := &in.LBRule, &out.LBRule + *out = make([]LBRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.NodeType != nil { + in, out := &in.NodeType, &out.NodeType + *out = make([]ManagedClusterNodeTypeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.UpgradeWave != nil { + in, out := &in.UpgradeWave, &out.UpgradeWave + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterInitParameters. +func (in *ManagedClusterInitParameters) DeepCopy() *ManagedClusterInitParameters { + if in == nil { + return nil + } + out := new(ManagedClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedClusterList) DeepCopyInto(out *ManagedClusterList) { *out = *in @@ -1561,19 +2354,141 @@ func (in *ManagedClusterList) DeepCopy() *ManagedClusterList { if in == nil { return nil } - out := new(ManagedClusterList) + out := new(ManagedClusterList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *ManagedClusterList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedClusterNodeTypeInitParameters) DeepCopyInto(out *ManagedClusterNodeTypeInitParameters) { + *out = *in + if in.ApplicationPortRange != nil { + in, out := &in.ApplicationPortRange, &out.ApplicationPortRange + *out = new(string) + **out = **in + } + if in.Capacities != nil { + in, out := &in.Capacities, &out.Capacities + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.DataDiskSizeGb != nil { + in, out := &in.DataDiskSizeGb, &out.DataDiskSizeGb + *out = new(float64) + **out = **in + } + if in.DataDiskType != nil { + in, out := &in.DataDiskType, &out.DataDiskType + *out = new(string) + **out = **in + } + if in.EphemeralPortRange != nil { + in, out := &in.EphemeralPortRange, &out.EphemeralPortRange + *out = new(string) + **out = **in + } + if in.MultiplePlacementGroupsEnabled != nil { + in, out := &in.MultiplePlacementGroupsEnabled, &out.MultiplePlacementGroupsEnabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PlacementProperties != nil { + in, out := &in.PlacementProperties, &out.PlacementProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Primary != nil { + in, out := &in.Primary, &out.Primary + *out = new(bool) + **out = **in + } + if in.Stateless != nil { + in, out := &in.Stateless, &out.Stateless + *out = new(bool) + **out = **in + } + if in.VMImageOffer != nil { + in, out := &in.VMImageOffer, &out.VMImageOffer + *out = new(string) + **out = **in + } + if in.VMImagePublisher != nil { + in, out := &in.VMImagePublisher, &out.VMImagePublisher + *out = new(string) + **out = **in + } + if in.VMImageSku != nil { + in, out := &in.VMImageSku, &out.VMImageSku + *out = new(string) + **out = **in + } + if in.VMImageVersion != nil { + in, out := &in.VMImageVersion, &out.VMImageVersion + *out = new(string) + **out = **in + } + if in.VMInstanceCount != nil { + in, out := &in.VMInstanceCount, &out.VMInstanceCount + *out = new(float64) + **out = **in + } + if in.VMSecrets != nil { + in, out := &in.VMSecrets, &out.VMSecrets + *out = make([]VMSecretsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VMSize != nil { + in, out := &in.VMSize, &out.VMSize + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterNodeTypeInitParameters. +func (in *ManagedClusterNodeTypeInitParameters) DeepCopy() *ManagedClusterNodeTypeInitParameters { + if in == nil { + return nil + } + out := new(ManagedClusterNodeTypeInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *ManagedClusterList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedClusterNodeTypeObservation) DeepCopyInto(out *ManagedClusterNodeTypeObservation) { *out = *in @@ -2064,6 +2979,7 @@ func (in *ManagedClusterSpec) DeepCopyInto(out *ManagedClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterSpec. @@ -2093,6 +3009,110 @@ func (in *ManagedClusterStatus) DeepCopy() *ManagedClusterStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeTypeInitParameters) DeepCopyInto(out *NodeTypeInitParameters) { + *out = *in + if in.ApplicationPorts != nil { + in, out := &in.ApplicationPorts, &out.ApplicationPorts + *out = make([]ApplicationPortsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Capacities != nil { + in, out := &in.Capacities, &out.Capacities + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ClientEndpointPort != nil { + in, out := &in.ClientEndpointPort, &out.ClientEndpointPort + *out = new(float64) + **out = **in + } + if in.DurabilityLevel != nil { + in, out := &in.DurabilityLevel, &out.DurabilityLevel + *out = new(string) + **out = **in + } + if in.EphemeralPorts != nil { + in, out := &in.EphemeralPorts, &out.EphemeralPorts + *out = make([]EphemeralPortsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPEndpointPort != nil { + in, out := &in.HTTPEndpointPort, &out.HTTPEndpointPort + *out = new(float64) + **out = **in + } + if in.InstanceCount != nil { + in, out := &in.InstanceCount, &out.InstanceCount + *out = new(float64) + **out = **in + } + if in.IsPrimary != nil { + in, out := &in.IsPrimary, &out.IsPrimary + *out = new(bool) + **out = **in + } + if in.IsStateless != nil { + in, out := &in.IsStateless, &out.IsStateless + *out = new(bool) + **out = **in + } + if in.MultipleAvailabilityZones != nil { + in, out := &in.MultipleAvailabilityZones, &out.MultipleAvailabilityZones + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PlacementProperties != nil { + in, out := &in.PlacementProperties, &out.PlacementProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ReverseProxyEndpointPort != nil { + in, out := &in.ReverseProxyEndpointPort, &out.ReverseProxyEndpointPort + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeTypeInitParameters. +func (in *NodeTypeInitParameters) DeepCopy() *NodeTypeInitParameters { + if in == nil { + return nil + } + out := new(NodeTypeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NodeTypeObservation) DeepCopyInto(out *NodeTypeObservation) { *out = *in @@ -2301,6 +3321,31 @@ func (in *NodeTypeParameters) DeepCopy() *NodeTypeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReverseProxyCertificateCommonNamesCommonNamesInitParameters) DeepCopyInto(out *ReverseProxyCertificateCommonNamesCommonNamesInitParameters) { + *out = *in + if in.CertificateCommonName != nil { + in, out := &in.CertificateCommonName, &out.CertificateCommonName + *out = new(string) + **out = **in + } + if in.CertificateIssuerThumbprint != nil { + in, out := &in.CertificateIssuerThumbprint, &out.CertificateIssuerThumbprint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReverseProxyCertificateCommonNamesCommonNamesInitParameters. +func (in *ReverseProxyCertificateCommonNamesCommonNamesInitParameters) DeepCopy() *ReverseProxyCertificateCommonNamesCommonNamesInitParameters { + if in == nil { + return nil + } + out := new(ReverseProxyCertificateCommonNamesCommonNamesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ReverseProxyCertificateCommonNamesCommonNamesObservation) DeepCopyInto(out *ReverseProxyCertificateCommonNamesCommonNamesObservation) { *out = *in @@ -2351,6 +3396,33 @@ func (in *ReverseProxyCertificateCommonNamesCommonNamesParameters) DeepCopy() *R return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReverseProxyCertificateCommonNamesInitParameters) DeepCopyInto(out *ReverseProxyCertificateCommonNamesInitParameters) { + *out = *in + if in.CommonNames != nil { + in, out := &in.CommonNames, &out.CommonNames + *out = make([]ReverseProxyCertificateCommonNamesCommonNamesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.X509StoreName != nil { + in, out := &in.X509StoreName, &out.X509StoreName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReverseProxyCertificateCommonNamesInitParameters. +func (in *ReverseProxyCertificateCommonNamesInitParameters) DeepCopy() *ReverseProxyCertificateCommonNamesInitParameters { + if in == nil { + return nil + } + out := new(ReverseProxyCertificateCommonNamesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ReverseProxyCertificateCommonNamesObservation) DeepCopyInto(out *ReverseProxyCertificateCommonNamesObservation) { *out = *in @@ -2405,6 +3477,36 @@ func (in *ReverseProxyCertificateCommonNamesParameters) DeepCopy() *ReverseProxy return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReverseProxyCertificateInitParameters) DeepCopyInto(out *ReverseProxyCertificateInitParameters) { + *out = *in + if in.Thumbprint != nil { + in, out := &in.Thumbprint, &out.Thumbprint + *out = new(string) + **out = **in + } + if in.ThumbprintSecondary != nil { + in, out := &in.ThumbprintSecondary, &out.ThumbprintSecondary + *out = new(string) + **out = **in + } + if in.X509StoreName != nil { + in, out := &in.X509StoreName, &out.X509StoreName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReverseProxyCertificateInitParameters. +func (in *ReverseProxyCertificateInitParameters) DeepCopy() *ReverseProxyCertificateInitParameters { + if in == nil { + return nil + } + out := new(ReverseProxyCertificateInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ReverseProxyCertificateObservation) DeepCopyInto(out *ReverseProxyCertificateObservation) { *out = *in @@ -2465,6 +3567,70 @@ func (in *ReverseProxyCertificateParameters) DeepCopy() *ReverseProxyCertificate return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpgradePolicyInitParameters) DeepCopyInto(out *UpgradePolicyInitParameters) { + *out = *in + if in.DeltaHealthPolicy != nil { + in, out := &in.DeltaHealthPolicy, &out.DeltaHealthPolicy + *out = make([]DeltaHealthPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForceRestartEnabled != nil { + in, out := &in.ForceRestartEnabled, &out.ForceRestartEnabled + *out = new(bool) + **out = **in + } + if in.HealthCheckRetryTimeout != nil { + in, out := &in.HealthCheckRetryTimeout, &out.HealthCheckRetryTimeout + *out = new(string) + **out = **in + } + if in.HealthCheckStableDuration != nil { + in, out := &in.HealthCheckStableDuration, &out.HealthCheckStableDuration + *out = new(string) + **out = **in + } + if in.HealthCheckWaitDuration != nil { + in, out := &in.HealthCheckWaitDuration, &out.HealthCheckWaitDuration + *out = new(string) + **out = **in + } + if in.HealthPolicy != nil { + in, out := &in.HealthPolicy, &out.HealthPolicy + *out = make([]HealthPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UpgradeDomainTimeout != nil { + in, out := &in.UpgradeDomainTimeout, &out.UpgradeDomainTimeout + *out = new(string) + **out = **in + } + if in.UpgradeReplicaSetCheckTimeout != nil { + in, out := &in.UpgradeReplicaSetCheckTimeout, &out.UpgradeReplicaSetCheckTimeout + *out = new(string) + **out = **in + } + if in.UpgradeTimeout != nil { + in, out := &in.UpgradeTimeout, &out.UpgradeTimeout + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgradePolicyInitParameters. +func (in *UpgradePolicyInitParameters) DeepCopy() *UpgradePolicyInitParameters { + if in == nil { + return nil + } + out := new(UpgradePolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *UpgradePolicyObservation) DeepCopyInto(out *UpgradePolicyObservation) { *out = *in @@ -2593,6 +3759,33 @@ func (in *UpgradePolicyParameters) DeepCopy() *UpgradePolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VMSecretsInitParameters) DeepCopyInto(out *VMSecretsInitParameters) { + *out = *in + if in.Certificates != nil { + in, out := &in.Certificates, &out.Certificates + *out = make([]CertificatesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VaultID != nil { + in, out := &in.VaultID, &out.VaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VMSecretsInitParameters. +func (in *VMSecretsInitParameters) DeepCopy() *VMSecretsInitParameters { + if in == nil { + return nil + } + out := new(VMSecretsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VMSecretsObservation) DeepCopyInto(out *VMSecretsObservation) { *out = *in diff --git a/apis/servicefabric/v1beta1/zz_generated.managed.go b/apis/servicefabric/v1beta1/zz_generated.managed.go index 6bf780c46..307773d61 100644 --- a/apis/servicefabric/v1beta1/zz_generated.managed.go +++ b/apis/servicefabric/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Cluster. -func (mg *Cluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Cluster. +func (mg *Cluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Cluster. @@ -55,9 +55,9 @@ func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Cluster. -func (mg *Cluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Cluster. +func (mg *Cluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Cluster. @@ -93,9 +93,9 @@ func (mg *ManagedCluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagedCluster. -func (mg *ManagedCluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagedCluster. +func (mg *ManagedCluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagedCluster. @@ -131,9 +131,9 @@ func (mg *ManagedCluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagedCluster. -func (mg *ManagedCluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagedCluster. +func (mg *ManagedCluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagedCluster. diff --git a/apis/servicefabric/v1beta1/zz_generated_terraformed.go b/apis/servicefabric/v1beta1/zz_generated_terraformed.go index 18b7651b5..ec6614ef6 100755 --- a/apis/servicefabric/v1beta1/zz_generated_terraformed.go +++ b/apis/servicefabric/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Cluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Cluster +func (tr *Cluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Cluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Cluster) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *ManagedCluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagedCluster +func (tr *ManagedCluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagedCluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagedCluster) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/servicefabric/v1beta1/zz_managedcluster_types.go b/apis/servicefabric/v1beta1/zz_managedcluster_types.go index 8b7f40c57..514eb37c3 100755 --- a/apis/servicefabric/v1beta1/zz_managedcluster_types.go +++ b/apis/servicefabric/v1beta1/zz_managedcluster_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActiveDirectoryInitParameters struct { + + // The ID of the Client Application. + ClientApplicationID *string `json:"clientApplicationId,omitempty" tf:"client_application_id,omitempty"` + + // The ID of the Cluster Application. + ClusterApplicationID *string `json:"clusterApplicationId,omitempty" tf:"cluster_application_id,omitempty"` + + // The ID of the Tenant. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type ActiveDirectoryObservation struct { // The ID of the Client Application. @@ -28,16 +40,28 @@ type ActiveDirectoryObservation struct { type ActiveDirectoryParameters struct { // The ID of the Client Application. - // +kubebuilder:validation:Required - ClientApplicationID *string `json:"clientApplicationId" tf:"client_application_id,omitempty"` + // +kubebuilder:validation:Optional + ClientApplicationID *string `json:"clientApplicationId,omitempty" tf:"client_application_id,omitempty"` // The ID of the Cluster Application. - // +kubebuilder:validation:Required - ClusterApplicationID *string `json:"clusterApplicationId" tf:"cluster_application_id,omitempty"` + // +kubebuilder:validation:Optional + ClusterApplicationID *string `json:"clusterApplicationId,omitempty" tf:"cluster_application_id,omitempty"` // The ID of the Tenant. - // +kubebuilder:validation:Required - TenantID *string `json:"tenantId" tf:"tenant_id,omitempty"` + // +kubebuilder:validation:Optional + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + +type AuthenticationCertificateInitParameters struct { + + // The certificate's CN. + CommonName *string `json:"commonName,omitempty" tf:"common_name,omitempty"` + + // The thumbprint of the certificate. + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` + + // The type of the certificate. Can be AdminClient or ReadOnlyClient. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type AuthenticationCertificateObservation struct { @@ -59,12 +83,21 @@ type AuthenticationCertificateParameters struct { CommonName *string `json:"commonName,omitempty" tf:"common_name,omitempty"` // The thumbprint of the certificate. - // +kubebuilder:validation:Required - Thumbprint *string `json:"thumbprint" tf:"thumbprint,omitempty"` + // +kubebuilder:validation:Optional + Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` // The type of the certificate. Can be AdminClient or ReadOnlyClient. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type AuthenticationInitParameters struct { + + // A active_directory block as defined above. + ActiveDirectory []ActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // One or more certificate blocks as defined below. + Certificate []AuthenticationCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` } type AuthenticationObservation struct { @@ -87,6 +120,15 @@ type AuthenticationParameters struct { Certificate []AuthenticationCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` } +type CertificatesInitParameters struct { + + // The certificate store on the Virtual Machine to which the certificate should be added. + Store *string `json:"store,omitempty" tf:"store,omitempty"` + + // The URL of a certificate that has been uploaded to Key Vault as a secret + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + type CertificatesObservation struct { // The certificate store on the Virtual Machine to which the certificate should be added. @@ -99,12 +141,24 @@ type CertificatesObservation struct { type CertificatesParameters struct { // The certificate store on the Virtual Machine to which the certificate should be added. - // +kubebuilder:validation:Required - Store *string `json:"store" tf:"store,omitempty"` + // +kubebuilder:validation:Optional + Store *string `json:"store,omitempty" tf:"store,omitempty"` // The URL of a certificate that has been uploaded to Key Vault as a secret - // +kubebuilder:validation:Required - URL *string `json:"url" tf:"url,omitempty"` + // +kubebuilder:validation:Optional + URL *string `json:"url,omitempty" tf:"url,omitempty"` +} + +type CustomFabricSettingInitParameters struct { + + // Parameter name. + Parameter *string `json:"parameter,omitempty" tf:"parameter,omitempty"` + + // Section name. + Section *string `json:"section,omitempty" tf:"section,omitempty"` + + // Parameter value. + Value *string `json:"value,omitempty" tf:"value,omitempty"` } type CustomFabricSettingObservation struct { @@ -122,16 +176,34 @@ type CustomFabricSettingObservation struct { type CustomFabricSettingParameters struct { // Parameter name. - // +kubebuilder:validation:Required - Parameter *string `json:"parameter" tf:"parameter,omitempty"` + // +kubebuilder:validation:Optional + Parameter *string `json:"parameter,omitempty" tf:"parameter,omitempty"` // Section name. - // +kubebuilder:validation:Required - Section *string `json:"section" tf:"section,omitempty"` + // +kubebuilder:validation:Optional + Section *string `json:"section,omitempty" tf:"section,omitempty"` // Parameter value. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type LBRuleInitParameters struct { + + // LB Backend port. + BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` + + // LB Frontend port. + FrontendPort *float64 `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"` + + // Protocol for the probe. Can be one of tcp, udp, http, or https. + ProbeProtocol *string `json:"probeProtocol,omitempty" tf:"probe_protocol,omitempty"` + + // Path for the probe to check, when probe protocol is set to http. + ProbeRequestPath *string `json:"probeRequestPath,omitempty" tf:"probe_request_path,omitempty"` + + // The transport protocol used in this rule. Can be one of tcp or udp. + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } type LBRuleObservation struct { @@ -155,24 +227,123 @@ type LBRuleObservation struct { type LBRuleParameters struct { // LB Backend port. - // +kubebuilder:validation:Required - BackendPort *float64 `json:"backendPort" tf:"backend_port,omitempty"` + // +kubebuilder:validation:Optional + BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` // LB Frontend port. - // +kubebuilder:validation:Required - FrontendPort *float64 `json:"frontendPort" tf:"frontend_port,omitempty"` + // +kubebuilder:validation:Optional + FrontendPort *float64 `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"` // Protocol for the probe. Can be one of tcp, udp, http, or https. - // +kubebuilder:validation:Required - ProbeProtocol *string `json:"probeProtocol" tf:"probe_protocol,omitempty"` + // +kubebuilder:validation:Optional + ProbeProtocol *string `json:"probeProtocol,omitempty" tf:"probe_protocol,omitempty"` // Path for the probe to check, when probe protocol is set to http. // +kubebuilder:validation:Optional ProbeRequestPath *string `json:"probeRequestPath,omitempty" tf:"probe_request_path,omitempty"` // The transport protocol used in this rule. Can be one of tcp or udp. - // +kubebuilder:validation:Required - Protocol *string `json:"protocol" tf:"protocol,omitempty"` + // +kubebuilder:validation:Optional + Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` +} + +type ManagedClusterInitParameters struct { + + // Controls how connections to the cluster are authenticated. A authentication block as defined below. + Authentication []AuthenticationInitParameters `json:"authentication,omitempty" tf:"authentication,omitempty"` + + // If true, backup service is enabled. + BackupServiceEnabled *bool `json:"backupServiceEnabled,omitempty" tf:"backup_service_enabled,omitempty"` + + // Port to use when connecting to the cluster. + ClientConnectionPort *float64 `json:"clientConnectionPort,omitempty" tf:"client_connection_port,omitempty"` + + // One or more custom_fabric_setting blocks as defined below. + CustomFabricSetting []CustomFabricSettingInitParameters `json:"customFabricSetting,omitempty" tf:"custom_fabric_setting,omitempty"` + + // Hostname for the cluster. If unset the cluster's name will be used.. + DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"` + + // If true, DNS service is enabled. + DNSServiceEnabled *bool `json:"dnsServiceEnabled,omitempty" tf:"dns_service_enabled,omitempty"` + + // Port that should be used by the Service Fabric Explorer to visualize applications and cluster status. + HTTPGatewayPort *float64 `json:"httpGatewayPort,omitempty" tf:"http_gateway_port,omitempty"` + + // One or more lb_rule blocks as defined below. + LBRule []LBRuleInitParameters `json:"lbRule,omitempty" tf:"lb_rule,omitempty"` + + // The Azure Region where the Resource Group should exist. Changing this forces a new Resource Group to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // One or more node_type blocks as defined below. + NodeType []ManagedClusterNodeTypeInitParameters `json:"nodeType,omitempty" tf:"node_type,omitempty"` + + // SKU for this cluster. Changing this forces a new resource to be created. Default is Basic, allowed values are either Basic or Standard. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags which should be assigned to the Resource Group. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Upgrade wave for the fabric runtime. Default is Wave0, allowed value must be one of Wave0, Wave1, or Wave2. + UpgradeWave *string `json:"upgradeWave,omitempty" tf:"upgrade_wave,omitempty"` + + // Administrator password for the VMs that will be created as part of this cluster. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type ManagedClusterNodeTypeInitParameters struct { + + // Sets the port range available for applications. Format is -, for example 10000-20000. + ApplicationPortRange *string `json:"applicationPortRange,omitempty" tf:"application_port_range,omitempty"` + + // Specifies a list of key/value pairs used to set capacity tags for this node type. + Capacities map[string]*string `json:"capacities,omitempty" tf:"capacities,omitempty"` + + // The size of the data disk in gigabytes.. + DataDiskSizeGb *float64 `json:"dataDiskSizeGb,omitempty" tf:"data_disk_size_gb,omitempty"` + + // The type of the disk to use for storing data. It can be one of Premium_LRS, Standard_LRS, or StandardSSD_LRS. + DataDiskType *string `json:"dataDiskType,omitempty" tf:"data_disk_type,omitempty"` + + // Sets the port range available for the OS. Format is -, for example 10000-20000. There has to be at least 255 ports available and cannot overlap with application_port_range.. + EphemeralPortRange *string `json:"ephemeralPortRange,omitempty" tf:"ephemeral_port_range,omitempty"` + + // If set the node type can be composed of multiple placement groups. + MultiplePlacementGroupsEnabled *bool `json:"multiplePlacementGroupsEnabled,omitempty" tf:"multiple_placement_groups_enabled,omitempty"` + + // The name which should be used for this node type. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies a list of placement tags that can be used to indicate where services should run.. + PlacementProperties map[string]*string `json:"placementProperties,omitempty" tf:"placement_properties,omitempty"` + + // If set to true, system services will run on this node type. Only one node type should be marked as primary. Primary node type cannot be deleted or changed once they're created. + Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` + + // If set to true, only stateless workloads can run on this node type. + Stateless *bool `json:"stateless,omitempty" tf:"stateless,omitempty"` + + // The offer type of the marketplace image cluster VMs will use. + VMImageOffer *string `json:"vmImageOffer,omitempty" tf:"vm_image_offer,omitempty"` + + // The publisher of the marketplace image cluster VMs will use. + VMImagePublisher *string `json:"vmImagePublisher,omitempty" tf:"vm_image_publisher,omitempty"` + + // The SKU of the marketplace image cluster VMs will use. + VMImageSku *string `json:"vmImageSku,omitempty" tf:"vm_image_sku,omitempty"` + + // The version of the marketplace image cluster VMs will use. + VMImageVersion *string `json:"vmImageVersion,omitempty" tf:"vm_image_version,omitempty"` + + // The number of instances this node type will launch. + VMInstanceCount *float64 `json:"vmInstanceCount,omitempty" tf:"vm_instance_count,omitempty"` + + // One or more vm_secrets blocks as defined below. + VMSecrets []VMSecretsInitParameters `json:"vmSecrets,omitempty" tf:"vm_secrets,omitempty"` + + // The size of the instances in this node type. + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` } type ManagedClusterNodeTypeObservation struct { @@ -235,32 +406,32 @@ type ManagedClusterNodeTypeObservation struct { type ManagedClusterNodeTypeParameters struct { // Sets the port range available for applications. Format is -, for example 10000-20000. - // +kubebuilder:validation:Required - ApplicationPortRange *string `json:"applicationPortRange" tf:"application_port_range,omitempty"` + // +kubebuilder:validation:Optional + ApplicationPortRange *string `json:"applicationPortRange,omitempty" tf:"application_port_range,omitempty"` // Specifies a list of key/value pairs used to set capacity tags for this node type. // +kubebuilder:validation:Optional Capacities map[string]*string `json:"capacities,omitempty" tf:"capacities,omitempty"` // The size of the data disk in gigabytes.. - // +kubebuilder:validation:Required - DataDiskSizeGb *float64 `json:"dataDiskSizeGb" tf:"data_disk_size_gb,omitempty"` + // +kubebuilder:validation:Optional + DataDiskSizeGb *float64 `json:"dataDiskSizeGb,omitempty" tf:"data_disk_size_gb,omitempty"` // The type of the disk to use for storing data. It can be one of Premium_LRS, Standard_LRS, or StandardSSD_LRS. // +kubebuilder:validation:Optional DataDiskType *string `json:"dataDiskType,omitempty" tf:"data_disk_type,omitempty"` // Sets the port range available for the OS. Format is -, for example 10000-20000. There has to be at least 255 ports available and cannot overlap with application_port_range.. - // +kubebuilder:validation:Required - EphemeralPortRange *string `json:"ephemeralPortRange" tf:"ephemeral_port_range,omitempty"` + // +kubebuilder:validation:Optional + EphemeralPortRange *string `json:"ephemeralPortRange,omitempty" tf:"ephemeral_port_range,omitempty"` // If set the node type can be composed of multiple placement groups. // +kubebuilder:validation:Optional MultiplePlacementGroupsEnabled *bool `json:"multiplePlacementGroupsEnabled,omitempty" tf:"multiple_placement_groups_enabled,omitempty"` // The name which should be used for this node type. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of placement tags that can be used to indicate where services should run.. // +kubebuilder:validation:Optional @@ -275,32 +446,32 @@ type ManagedClusterNodeTypeParameters struct { Stateless *bool `json:"stateless,omitempty" tf:"stateless,omitempty"` // The offer type of the marketplace image cluster VMs will use. - // +kubebuilder:validation:Required - VMImageOffer *string `json:"vmImageOffer" tf:"vm_image_offer,omitempty"` + // +kubebuilder:validation:Optional + VMImageOffer *string `json:"vmImageOffer,omitempty" tf:"vm_image_offer,omitempty"` // The publisher of the marketplace image cluster VMs will use. - // +kubebuilder:validation:Required - VMImagePublisher *string `json:"vmImagePublisher" tf:"vm_image_publisher,omitempty"` + // +kubebuilder:validation:Optional + VMImagePublisher *string `json:"vmImagePublisher,omitempty" tf:"vm_image_publisher,omitempty"` // The SKU of the marketplace image cluster VMs will use. - // +kubebuilder:validation:Required - VMImageSku *string `json:"vmImageSku" tf:"vm_image_sku,omitempty"` + // +kubebuilder:validation:Optional + VMImageSku *string `json:"vmImageSku,omitempty" tf:"vm_image_sku,omitempty"` // The version of the marketplace image cluster VMs will use. - // +kubebuilder:validation:Required - VMImageVersion *string `json:"vmImageVersion" tf:"vm_image_version,omitempty"` + // +kubebuilder:validation:Optional + VMImageVersion *string `json:"vmImageVersion,omitempty" tf:"vm_image_version,omitempty"` // The number of instances this node type will launch. - // +kubebuilder:validation:Required - VMInstanceCount *float64 `json:"vmInstanceCount" tf:"vm_instance_count,omitempty"` + // +kubebuilder:validation:Optional + VMInstanceCount *float64 `json:"vmInstanceCount,omitempty" tf:"vm_instance_count,omitempty"` // One or more vm_secrets blocks as defined below. // +kubebuilder:validation:Optional VMSecrets []VMSecretsParameters `json:"vmSecrets,omitempty" tf:"vm_secrets,omitempty"` // The size of the instances in this node type. - // +kubebuilder:validation:Required - VMSize *string `json:"vmSize" tf:"vm_size,omitempty"` + // +kubebuilder:validation:Optional + VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` } type ManagedClusterObservation struct { @@ -430,6 +601,15 @@ type ManagedClusterParameters struct { Username *string `json:"username,omitempty" tf:"username,omitempty"` } +type VMSecretsInitParameters struct { + + // One or more certificates blocks as defined above. + Certificates []CertificatesInitParameters `json:"certificates,omitempty" tf:"certificates,omitempty"` + + // The ID of the Vault that contain the certificates. + VaultID *string `json:"vaultId,omitempty" tf:"vault_id,omitempty"` +} + type VMSecretsObservation struct { // One or more certificates blocks as defined above. @@ -442,18 +622,30 @@ type VMSecretsObservation struct { type VMSecretsParameters struct { // One or more certificates blocks as defined above. - // +kubebuilder:validation:Required - Certificates []CertificatesParameters `json:"certificates" tf:"certificates,omitempty"` + // +kubebuilder:validation:Optional + Certificates []CertificatesParameters `json:"certificates,omitempty" tf:"certificates,omitempty"` // The ID of the Vault that contain the certificates. - // +kubebuilder:validation:Required - VaultID *string `json:"vaultId" tf:"vault_id,omitempty"` + // +kubebuilder:validation:Optional + VaultID *string `json:"vaultId,omitempty" tf:"vault_id,omitempty"` } // ManagedClusterSpec defines the desired state of ManagedCluster type ManagedClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagedClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagedClusterInitParameters `json:"initProvider,omitempty"` } // ManagedClusterStatus defines the observed state of ManagedCluster. @@ -474,10 +666,10 @@ type ManagedClusterStatus struct { type ManagedCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientConnectionPort)",message="clientConnectionPort is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.httpGatewayPort)",message="httpGatewayPort is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.lbRule)",message="lbRule is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientConnectionPort) || has(self.initProvider.clientConnectionPort)",message="clientConnectionPort is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.httpGatewayPort) || has(self.initProvider.httpGatewayPort)",message="httpGatewayPort is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.lbRule) || has(self.initProvider.lbRule)",message="lbRule is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ManagedClusterSpec `json:"spec"` Status ManagedClusterStatus `json:"status,omitempty"` } diff --git a/apis/servicelinker/v1beta1/zz_generated.deepcopy.go b/apis/servicelinker/v1beta1/zz_generated.deepcopy.go index f4e2b1e50..3aeac6523 100644 --- a/apis/servicelinker/v1beta1/zz_generated.deepcopy.go +++ b/apis/servicelinker/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,46 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthenticationInitParameters) DeepCopyInto(out *AuthenticationInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID + *out = new(string) + **out = **in + } + if in.SubscriptionID != nil { + in, out := &in.SubscriptionID, &out.SubscriptionID + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationInitParameters. +func (in *AuthenticationInitParameters) DeepCopy() *AuthenticationInitParameters { + if in == nil { + return nil + } + out := new(AuthenticationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthenticationObservation) DeepCopyInto(out *AuthenticationObservation) { *out = *in @@ -104,6 +144,26 @@ func (in *AuthenticationParameters) DeepCopy() *AuthenticationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SecretStoreInitParameters) DeepCopyInto(out *SecretStoreInitParameters) { + *out = *in + if in.KeyVaultID != nil { + in, out := &in.KeyVaultID, &out.KeyVaultID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretStoreInitParameters. +func (in *SecretStoreInitParameters) DeepCopy() *SecretStoreInitParameters { + if in == nil { + return nil + } + out := new(SecretStoreInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecretStoreObservation) DeepCopyInto(out *SecretStoreObservation) { *out = *in @@ -171,6 +231,50 @@ func (in *SpringCloudConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SpringCloudConnectionInitParameters) DeepCopyInto(out *SpringCloudConnectionInitParameters) { + *out = *in + if in.Authentication != nil { + in, out := &in.Authentication, &out.Authentication + *out = make([]AuthenticationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientType != nil { + in, out := &in.ClientType, &out.ClientType + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SecretStore != nil { + in, out := &in.SecretStore, &out.SecretStore + *out = make([]SecretStoreInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VnetSolution != nil { + in, out := &in.VnetSolution, &out.VnetSolution + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudConnectionInitParameters. +func (in *SpringCloudConnectionInitParameters) DeepCopy() *SpringCloudConnectionInitParameters { + if in == nil { + return nil + } + out := new(SpringCloudConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SpringCloudConnectionList) DeepCopyInto(out *SpringCloudConnectionList) { *out = *in @@ -341,6 +445,7 @@ func (in *SpringCloudConnectionSpec) DeepCopyInto(out *SpringCloudConnectionSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpringCloudConnectionSpec. diff --git a/apis/servicelinker/v1beta1/zz_generated.managed.go b/apis/servicelinker/v1beta1/zz_generated.managed.go index 934516913..e5d597f30 100644 --- a/apis/servicelinker/v1beta1/zz_generated.managed.go +++ b/apis/servicelinker/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *SpringCloudConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SpringCloudConnection. -func (mg *SpringCloudConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SpringCloudConnection. +func (mg *SpringCloudConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SpringCloudConnection. @@ -55,9 +55,9 @@ func (mg *SpringCloudConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SpringCloudConnection. -func (mg *SpringCloudConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SpringCloudConnection. +func (mg *SpringCloudConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SpringCloudConnection. diff --git a/apis/servicelinker/v1beta1/zz_generated_terraformed.go b/apis/servicelinker/v1beta1/zz_generated_terraformed.go index 8e99695f5..70ffda28c 100755 --- a/apis/servicelinker/v1beta1/zz_generated_terraformed.go +++ b/apis/servicelinker/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *SpringCloudConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SpringCloudConnection +func (tr *SpringCloudConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SpringCloudConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SpringCloudConnection) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/servicelinker/v1beta1/zz_springcloudconnection_types.go b/apis/servicelinker/v1beta1/zz_springcloudconnection_types.go index c98f606bf..9928f5693 100755 --- a/apis/servicelinker/v1beta1/zz_springcloudconnection_types.go +++ b/apis/servicelinker/v1beta1/zz_springcloudconnection_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthenticationInitParameters struct { + + // Client ID for userAssignedIdentity or servicePrincipal auth. Should be specified when type is set to servicePrincipalSecret or servicePrincipalCertificate. When type is set to userAssignedIdentity, client_id and subscription_id should be either both specified or both not specified. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // Username or account name for secret auth. name and secret should be either both specified or both not specified when type is set to secret. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Principal ID for servicePrincipal auth. Should be specified when type is set to servicePrincipalSecret or servicePrincipalCertificate. + PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` + + // Subscription ID for userAssignedIdentity. subscription_id and client_id should be either both specified or both not specified. + SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` + + // The authentication type. Possible values are systemAssignedIdentity, userAssignedIdentity, servicePrincipalSecret, servicePrincipalCertificate, secret. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type AuthenticationObservation struct { // Client ID for userAssignedIdentity or servicePrincipal auth. Should be specified when type is set to servicePrincipalSecret or servicePrincipalCertificate. When type is set to userAssignedIdentity, client_id and subscription_id should be either both specified or both not specified. @@ -58,8 +76,14 @@ type AuthenticationParameters struct { SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` // The authentication type. Possible values are systemAssignedIdentity, userAssignedIdentity, servicePrincipalSecret, servicePrincipalCertificate, secret. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type SecretStoreInitParameters struct { + + // The key vault id to store secret. + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } type SecretStoreObservation struct { @@ -71,8 +95,26 @@ type SecretStoreObservation struct { type SecretStoreParameters struct { // The key vault id to store secret. - // +kubebuilder:validation:Required - KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` +} + +type SpringCloudConnectionInitParameters struct { + + // The authentication info. An authentication block as defined below. + Authentication []AuthenticationInitParameters `json:"authentication,omitempty" tf:"authentication,omitempty"` + + // The application client type. Possible values are none, dotnet, java, python, go, php, ruby, django, nodejs and springBoot. + ClientType *string `json:"clientType,omitempty" tf:"client_type,omitempty"` + + // The name of the service connection. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // An option to store secret value in secure place. An secret_store block as defined below. + SecretStore []SecretStoreInitParameters `json:"secretStore,omitempty" tf:"secret_store,omitempty"` + + // The type of the VNet solution. Possible values are serviceEndpoint, privateLink. + VnetSolution *string `json:"vnetSolution,omitempty" tf:"vnet_solution,omitempty"` } type SpringCloudConnectionObservation struct { @@ -157,6 +199,18 @@ type SpringCloudConnectionParameters struct { type SpringCloudConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SpringCloudConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SpringCloudConnectionInitParameters `json:"initProvider,omitempty"` } // SpringCloudConnectionStatus defines the observed state of SpringCloudConnection. @@ -177,8 +231,8 @@ type SpringCloudConnectionStatus struct { type SpringCloudConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authentication)",message="authentication is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.authentication) || has(self.initProvider.authentication)",message="authentication is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec SpringCloudConnectionSpec `json:"spec"` Status SpringCloudConnectionStatus `json:"status,omitempty"` } diff --git a/apis/signalrservice/v1beta1/zz_generated.deepcopy.go b/apis/signalrservice/v1beta1/zz_generated.deepcopy.go index 921e3c7cf..6d6e5f751 100644 --- a/apis/signalrservice/v1beta1/zz_generated.deepcopy.go +++ b/apis/signalrservice/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,21 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthInitParameters) DeepCopyInto(out *AuthInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthInitParameters. +func (in *AuthInitParameters) DeepCopy() *AuthInitParameters { + if in == nil { + return nil + } + out := new(AuthInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthObservation) DeepCopyInto(out *AuthObservation) { *out = *in @@ -64,6 +79,32 @@ func (in *AuthParameters) DeepCopy() *AuthParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CorsInitParameters) DeepCopyInto(out *CorsInitParameters) { + *out = *in + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorsInitParameters. +func (in *CorsInitParameters) DeepCopy() *CorsInitParameters { + if in == nil { + return nil + } + out := new(CorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CorsObservation) DeepCopyInto(out *CorsObservation) { *out = *in @@ -116,6 +157,47 @@ func (in *CorsParameters) DeepCopy() *CorsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventHandlerInitParameters) DeepCopyInto(out *EventHandlerInitParameters) { + *out = *in + if in.Auth != nil { + in, out := &in.Auth, &out.Auth + *out = make([]AuthInitParameters, len(*in)) + copy(*out, *in) + } + if in.SystemEvents != nil { + in, out := &in.SystemEvents, &out.SystemEvents + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.URLTemplate != nil { + in, out := &in.URLTemplate, &out.URLTemplate + *out = new(string) + **out = **in + } + if in.UserEventPattern != nil { + in, out := &in.UserEventPattern, &out.UserEventPattern + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHandlerInitParameters. +func (in *EventHandlerInitParameters) DeepCopy() *EventHandlerInitParameters { + if in == nil { + return nil + } + out := new(EventHandlerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventHandlerObservation) DeepCopyInto(out *EventHandlerObservation) { *out = *in @@ -202,6 +284,43 @@ func (in *EventHandlerParameters) DeepCopy() *EventHandlerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventListenerInitParameters) DeepCopyInto(out *EventListenerInitParameters) { + *out = *in + if in.SystemEventNameFilter != nil { + in, out := &in.SystemEventNameFilter, &out.SystemEventNameFilter + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.UserEventNameFilter != nil { + in, out := &in.UserEventNameFilter, &out.UserEventNameFilter + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventListenerInitParameters. +func (in *EventListenerInitParameters) DeepCopy() *EventListenerInitParameters { + if in == nil { + return nil + } + out := new(EventListenerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventListenerObservation) DeepCopyInto(out *EventListenerObservation) { *out = *in @@ -316,6 +435,37 @@ func (in *EventListenerParameters) DeepCopy() *EventListenerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -388,6 +538,41 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LiveTraceInitParameters) DeepCopyInto(out *LiveTraceInitParameters) { + *out = *in + if in.ConnectivityLogsEnabled != nil { + in, out := &in.ConnectivityLogsEnabled, &out.ConnectivityLogsEnabled + *out = new(bool) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPRequestLogsEnabled != nil { + in, out := &in.HTTPRequestLogsEnabled, &out.HTTPRequestLogsEnabled + *out = new(bool) + **out = **in + } + if in.MessagingLogsEnabled != nil { + in, out := &in.MessagingLogsEnabled, &out.MessagingLogsEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LiveTraceInitParameters. +func (in *LiveTraceInitParameters) DeepCopy() *LiveTraceInitParameters { + if in == nil { + return nil + } + out := new(LiveTraceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LiveTraceObservation) DeepCopyInto(out *LiveTraceObservation) { *out = *in @@ -485,6 +670,40 @@ func (in *NetworkACL) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkACLInitParameters) DeepCopyInto(out *NetworkACLInitParameters) { + *out = *in + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.PrivateEndpoint != nil { + in, out := &in.PrivateEndpoint, &out.PrivateEndpoint + *out = make([]PrivateEndpointInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicNetwork != nil { + in, out := &in.PublicNetwork, &out.PublicNetwork + *out = make([]PublicNetworkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkACLInitParameters. +func (in *NetworkACLInitParameters) DeepCopy() *NetworkACLInitParameters { + if in == nil { + return nil + } + out := new(NetworkACLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkACLList) DeepCopyInto(out *NetworkACLList) { *out = *in @@ -615,6 +834,7 @@ func (in *NetworkACLSpec) DeepCopyInto(out *NetworkACLSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkACLSpec. @@ -644,6 +864,43 @@ func (in *NetworkACLStatus) DeepCopy() *NetworkACLStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointInitParameters) DeepCopyInto(out *PrivateEndpointInitParameters) { + *out = *in + if in.AllowedRequestTypes != nil { + in, out := &in.AllowedRequestTypes, &out.AllowedRequestTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DeniedRequestTypes != nil { + in, out := &in.DeniedRequestTypes, &out.DeniedRequestTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointInitParameters. +func (in *PrivateEndpointInitParameters) DeepCopy() *PrivateEndpointInitParameters { + if in == nil { + return nil + } + out := new(PrivateEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateEndpointObservation) DeepCopyInto(out *PrivateEndpointObservation) { *out = *in @@ -738,6 +995,43 @@ func (in *PrivateEndpointParameters) DeepCopy() *PrivateEndpointParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PublicNetworkInitParameters) DeepCopyInto(out *PublicNetworkInitParameters) { + *out = *in + if in.AllowedRequestTypes != nil { + in, out := &in.AllowedRequestTypes, &out.AllowedRequestTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DeniedRequestTypes != nil { + in, out := &in.DeniedRequestTypes, &out.DeniedRequestTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicNetworkInitParameters. +func (in *PublicNetworkInitParameters) DeepCopy() *PublicNetworkInitParameters { + if in == nil { + return nil + } + out := new(PublicNetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PublicNetworkObservation) DeepCopyInto(out *PublicNetworkObservation) { *out = *in @@ -840,10 +1134,130 @@ func (in *Service) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *ServiceList) DeepCopyInto(out *ServiceList) { +func (in *ServiceInitParameters) DeepCopyInto(out *ServiceInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.AADAuthEnabled != nil { + in, out := &in.AADAuthEnabled, &out.AADAuthEnabled + *out = new(bool) + **out = **in + } + if in.ConnectivityLogsEnabled != nil { + in, out := &in.ConnectivityLogsEnabled, &out.ConnectivityLogsEnabled + *out = new(bool) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]CorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPRequestLogsEnabled != nil { + in, out := &in.HTTPRequestLogsEnabled, &out.HTTPRequestLogsEnabled + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LiveTrace != nil { + in, out := &in.LiveTrace, &out.LiveTrace + *out = make([]LiveTraceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LiveTraceEnabled != nil { + in, out := &in.LiveTraceEnabled, &out.LiveTraceEnabled + *out = new(bool) + **out = **in + } + if in.LocalAuthEnabled != nil { + in, out := &in.LocalAuthEnabled, &out.LocalAuthEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MessagingLogsEnabled != nil { + in, out := &in.MessagingLogsEnabled, &out.MessagingLogsEnabled + *out = new(bool) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.ServerlessConnectionTimeoutInSeconds != nil { + in, out := &in.ServerlessConnectionTimeoutInSeconds, &out.ServerlessConnectionTimeoutInSeconds + *out = new(float64) + **out = **in + } + if in.ServiceMode != nil { + in, out := &in.ServiceMode, &out.ServiceMode + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = make([]SkuInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TLSClientCertEnabled != nil { + in, out := &in.TLSClientCertEnabled, &out.TLSClientCertEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.UpstreamEndpoint != nil { + in, out := &in.UpstreamEndpoint, &out.UpstreamEndpoint + *out = make([]UpstreamEndpointInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceInitParameters. +func (in *ServiceInitParameters) DeepCopy() *ServiceInitParameters { + if in == nil { + return nil + } + out := new(ServiceInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServiceList) DeepCopyInto(out *ServiceList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) if in.Items != nil { in, out := &in.Items, &out.Items *out = make([]Service, len(*in)) @@ -1161,6 +1575,7 @@ func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSpec. @@ -1217,6 +1632,36 @@ func (in *SignalrSharedPrivateLinkResource) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SignalrSharedPrivateLinkResourceInitParameters) DeepCopyInto(out *SignalrSharedPrivateLinkResourceInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.RequestMessage != nil { + in, out := &in.RequestMessage, &out.RequestMessage + *out = new(string) + **out = **in + } + if in.SubResourceName != nil { + in, out := &in.SubResourceName, &out.SubResourceName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SignalrSharedPrivateLinkResourceInitParameters. +func (in *SignalrSharedPrivateLinkResourceInitParameters) DeepCopy() *SignalrSharedPrivateLinkResourceInitParameters { + if in == nil { + return nil + } + out := new(SignalrSharedPrivateLinkResourceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SignalrSharedPrivateLinkResourceList) DeepCopyInto(out *SignalrSharedPrivateLinkResourceList) { *out = *in @@ -1364,6 +1809,7 @@ func (in *SignalrSharedPrivateLinkResourceSpec) DeepCopyInto(out *SignalrSharedP *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SignalrSharedPrivateLinkResourceSpec. @@ -1393,6 +1839,31 @@ func (in *SignalrSharedPrivateLinkResourceStatus) DeepCopy() *SignalrSharedPriva return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuInitParameters) DeepCopyInto(out *SkuInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuInitParameters. +func (in *SkuInitParameters) DeepCopy() *SkuInitParameters { + if in == nil { + return nil + } + out := new(SkuInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SkuObservation) DeepCopyInto(out *SkuObservation) { *out = *in @@ -1443,6 +1914,59 @@ func (in *SkuParameters) DeepCopy() *SkuParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UpstreamEndpointInitParameters) DeepCopyInto(out *UpstreamEndpointInitParameters) { + *out = *in + if in.CategoryPattern != nil { + in, out := &in.CategoryPattern, &out.CategoryPattern + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EventPattern != nil { + in, out := &in.EventPattern, &out.EventPattern + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.HubPattern != nil { + in, out := &in.HubPattern, &out.HubPattern + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.URLTemplate != nil { + in, out := &in.URLTemplate, &out.URLTemplate + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpstreamEndpointInitParameters. +func (in *UpstreamEndpointInitParameters) DeepCopy() *UpstreamEndpointInitParameters { + if in == nil { + return nil + } + out := new(UpstreamEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *UpstreamEndpointObservation) DeepCopyInto(out *UpstreamEndpointObservation) { *out = *in @@ -1603,6 +2127,45 @@ func (in *WebPubsubHub) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebPubsubHubInitParameters) DeepCopyInto(out *WebPubsubHubInitParameters) { + *out = *in + if in.AnonymousConnectionsEnabled != nil { + in, out := &in.AnonymousConnectionsEnabled, &out.AnonymousConnectionsEnabled + *out = new(bool) + **out = **in + } + if in.EventHandler != nil { + in, out := &in.EventHandler, &out.EventHandler + *out = make([]EventHandlerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.EventListener != nil { + in, out := &in.EventListener, &out.EventListener + *out = make([]EventListenerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebPubsubHubInitParameters. +func (in *WebPubsubHubInitParameters) DeepCopy() *WebPubsubHubInitParameters { + if in == nil { + return nil + } + out := new(WebPubsubHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebPubsubHubList) DeepCopyInto(out *WebPubsubHubList) { *out = *in @@ -1743,6 +2306,7 @@ func (in *WebPubsubHubSpec) DeepCopyInto(out *WebPubsubHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebPubsubHubSpec. @@ -1772,6 +2336,37 @@ func (in *WebPubsubHubStatus) DeepCopy() *WebPubsubHubStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebPubsubIdentityInitParameters) DeepCopyInto(out *WebPubsubIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebPubsubIdentityInitParameters. +func (in *WebPubsubIdentityInitParameters) DeepCopy() *WebPubsubIdentityInitParameters { + if in == nil { + return nil + } + out := new(WebPubsubIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebPubsubIdentityObservation) DeepCopyInto(out *WebPubsubIdentityObservation) { *out = *in @@ -1844,6 +2439,90 @@ func (in *WebPubsubIdentityParameters) DeepCopy() *WebPubsubIdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebPubsubInitParameters) DeepCopyInto(out *WebPubsubInitParameters) { + *out = *in + if in.AADAuthEnabled != nil { + in, out := &in.AADAuthEnabled, &out.AADAuthEnabled + *out = new(bool) + **out = **in + } + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]WebPubsubIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LiveTrace != nil { + in, out := &in.LiveTrace, &out.LiveTrace + *out = make([]WebPubsubLiveTraceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LocalAuthEnabled != nil { + in, out := &in.LocalAuthEnabled, &out.LocalAuthEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(string) + **out = **in + } + if in.TLSClientCertEnabled != nil { + in, out := &in.TLSClientCertEnabled, &out.TLSClientCertEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebPubsubInitParameters. +func (in *WebPubsubInitParameters) DeepCopy() *WebPubsubInitParameters { + if in == nil { + return nil + } + out := new(WebPubsubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebPubsubList) DeepCopyInto(out *WebPubsubList) { *out = *in @@ -1876,6 +2555,41 @@ func (in *WebPubsubList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebPubsubLiveTraceInitParameters) DeepCopyInto(out *WebPubsubLiveTraceInitParameters) { + *out = *in + if in.ConnectivityLogsEnabled != nil { + in, out := &in.ConnectivityLogsEnabled, &out.ConnectivityLogsEnabled + *out = new(bool) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPRequestLogsEnabled != nil { + in, out := &in.HTTPRequestLogsEnabled, &out.HTTPRequestLogsEnabled + *out = new(bool) + **out = **in + } + if in.MessagingLogsEnabled != nil { + in, out := &in.MessagingLogsEnabled, &out.MessagingLogsEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebPubsubLiveTraceInitParameters. +func (in *WebPubsubLiveTraceInitParameters) DeepCopy() *WebPubsubLiveTraceInitParameters { + if in == nil { + return nil + } + out := new(WebPubsubLiveTraceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebPubsubLiveTraceObservation) DeepCopyInto(out *WebPubsubLiveTraceObservation) { *out = *in @@ -1973,6 +2687,40 @@ func (in *WebPubsubNetworkACL) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebPubsubNetworkACLInitParameters) DeepCopyInto(out *WebPubsubNetworkACLInitParameters) { + *out = *in + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.PrivateEndpoint != nil { + in, out := &in.PrivateEndpoint, &out.PrivateEndpoint + *out = make([]WebPubsubNetworkACLPrivateEndpointInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PublicNetwork != nil { + in, out := &in.PublicNetwork, &out.PublicNetwork + *out = make([]WebPubsubNetworkACLPublicNetworkInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebPubsubNetworkACLInitParameters. +func (in *WebPubsubNetworkACLInitParameters) DeepCopy() *WebPubsubNetworkACLInitParameters { + if in == nil { + return nil + } + out := new(WebPubsubNetworkACLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebPubsubNetworkACLList) DeepCopyInto(out *WebPubsubNetworkACLList) { *out = *in @@ -2098,6 +2846,43 @@ func (in *WebPubsubNetworkACLParameters) DeepCopy() *WebPubsubNetworkACLParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebPubsubNetworkACLPrivateEndpointInitParameters) DeepCopyInto(out *WebPubsubNetworkACLPrivateEndpointInitParameters) { + *out = *in + if in.AllowedRequestTypes != nil { + in, out := &in.AllowedRequestTypes, &out.AllowedRequestTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DeniedRequestTypes != nil { + in, out := &in.DeniedRequestTypes, &out.DeniedRequestTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebPubsubNetworkACLPrivateEndpointInitParameters. +func (in *WebPubsubNetworkACLPrivateEndpointInitParameters) DeepCopy() *WebPubsubNetworkACLPrivateEndpointInitParameters { + if in == nil { + return nil + } + out := new(WebPubsubNetworkACLPrivateEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebPubsubNetworkACLPrivateEndpointObservation) DeepCopyInto(out *WebPubsubNetworkACLPrivateEndpointObservation) { *out = *in @@ -2192,6 +2977,43 @@ func (in *WebPubsubNetworkACLPrivateEndpointParameters) DeepCopy() *WebPubsubNet return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WebPubsubNetworkACLPublicNetworkInitParameters) DeepCopyInto(out *WebPubsubNetworkACLPublicNetworkInitParameters) { + *out = *in + if in.AllowedRequestTypes != nil { + in, out := &in.AllowedRequestTypes, &out.AllowedRequestTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DeniedRequestTypes != nil { + in, out := &in.DeniedRequestTypes, &out.DeniedRequestTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebPubsubNetworkACLPublicNetworkInitParameters. +func (in *WebPubsubNetworkACLPublicNetworkInitParameters) DeepCopy() *WebPubsubNetworkACLPublicNetworkInitParameters { + if in == nil { + return nil + } + out := new(WebPubsubNetworkACLPublicNetworkInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WebPubsubNetworkACLPublicNetworkObservation) DeepCopyInto(out *WebPubsubNetworkACLPublicNetworkObservation) { *out = *in @@ -2271,6 +3093,7 @@ func (in *WebPubsubNetworkACLSpec) DeepCopyInto(out *WebPubsubNetworkACLSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebPubsubNetworkACLSpec. @@ -2523,6 +3346,7 @@ func (in *WebPubsubSpec) DeepCopyInto(out *WebPubsubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebPubsubSpec. diff --git a/apis/signalrservice/v1beta1/zz_generated.managed.go b/apis/signalrservice/v1beta1/zz_generated.managed.go index a83e534b9..08257b6b3 100644 --- a/apis/signalrservice/v1beta1/zz_generated.managed.go +++ b/apis/signalrservice/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *NetworkACL) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this NetworkACL. -func (mg *NetworkACL) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this NetworkACL. +func (mg *NetworkACL) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this NetworkACL. @@ -55,9 +55,9 @@ func (mg *NetworkACL) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this NetworkACL. -func (mg *NetworkACL) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this NetworkACL. +func (mg *NetworkACL) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this NetworkACL. @@ -93,9 +93,9 @@ func (mg *Service) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Service. -func (mg *Service) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Service. +func (mg *Service) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Service. @@ -131,9 +131,9 @@ func (mg *Service) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Service. -func (mg *Service) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Service. +func (mg *Service) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Service. @@ -169,9 +169,9 @@ func (mg *SignalrSharedPrivateLinkResource) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SignalrSharedPrivateLinkResource. -func (mg *SignalrSharedPrivateLinkResource) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SignalrSharedPrivateLinkResource. +func (mg *SignalrSharedPrivateLinkResource) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SignalrSharedPrivateLinkResource. @@ -207,9 +207,9 @@ func (mg *SignalrSharedPrivateLinkResource) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SignalrSharedPrivateLinkResource. -func (mg *SignalrSharedPrivateLinkResource) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SignalrSharedPrivateLinkResource. +func (mg *SignalrSharedPrivateLinkResource) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SignalrSharedPrivateLinkResource. @@ -245,9 +245,9 @@ func (mg *WebPubsub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WebPubsub. -func (mg *WebPubsub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WebPubsub. +func (mg *WebPubsub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WebPubsub. @@ -283,9 +283,9 @@ func (mg *WebPubsub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WebPubsub. -func (mg *WebPubsub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WebPubsub. +func (mg *WebPubsub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WebPubsub. @@ -321,9 +321,9 @@ func (mg *WebPubsubHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WebPubsubHub. -func (mg *WebPubsubHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WebPubsubHub. +func (mg *WebPubsubHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WebPubsubHub. @@ -359,9 +359,9 @@ func (mg *WebPubsubHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WebPubsubHub. -func (mg *WebPubsubHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WebPubsubHub. +func (mg *WebPubsubHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WebPubsubHub. @@ -397,9 +397,9 @@ func (mg *WebPubsubNetworkACL) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WebPubsubNetworkACL. -func (mg *WebPubsubNetworkACL) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WebPubsubNetworkACL. +func (mg *WebPubsubNetworkACL) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WebPubsubNetworkACL. @@ -435,9 +435,9 @@ func (mg *WebPubsubNetworkACL) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WebPubsubNetworkACL. -func (mg *WebPubsubNetworkACL) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WebPubsubNetworkACL. +func (mg *WebPubsubNetworkACL) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WebPubsubNetworkACL. diff --git a/apis/signalrservice/v1beta1/zz_generated_terraformed.go b/apis/signalrservice/v1beta1/zz_generated_terraformed.go index 75ea249c9..9a0af93e6 100755 --- a/apis/signalrservice/v1beta1/zz_generated_terraformed.go +++ b/apis/signalrservice/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Service) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Service +func (tr *Service) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Service using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Service) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *NetworkACL) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this NetworkACL +func (tr *NetworkACL) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this NetworkACL using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *NetworkACL) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *SignalrSharedPrivateLinkResource) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SignalrSharedPrivateLinkResource +func (tr *SignalrSharedPrivateLinkResource) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SignalrSharedPrivateLinkResource using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SignalrSharedPrivateLinkResource) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *WebPubsub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WebPubsub +func (tr *WebPubsub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WebPubsub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WebPubsub) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *WebPubsubHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WebPubsubHub +func (tr *WebPubsubHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WebPubsubHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WebPubsubHub) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *WebPubsubNetworkACL) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WebPubsubNetworkACL +func (tr *WebPubsubNetworkACL) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WebPubsubNetworkACL using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WebPubsubNetworkACL) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/signalrservice/v1beta1/zz_networkacl_types.go b/apis/signalrservice/v1beta1/zz_networkacl_types.go index 3e424a080..f5225e032 100755 --- a/apis/signalrservice/v1beta1/zz_networkacl_types.go +++ b/apis/signalrservice/v1beta1/zz_networkacl_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type NetworkACLInitParameters struct { + + // The default action to control the network access when no other rule matches. Possible values are Allow and Deny. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + + // A private_endpoint block as defined below. + PrivateEndpoint []PrivateEndpointInitParameters `json:"privateEndpoint,omitempty" tf:"private_endpoint,omitempty"` + + // A public_network block as defined below. + PublicNetwork []PublicNetworkInitParameters `json:"publicNetwork,omitempty" tf:"public_network,omitempty"` +} + type NetworkACLObservation struct { // The default action to control the network access when no other rule matches. Possible values are Allow and Deny. @@ -60,6 +72,15 @@ type NetworkACLParameters struct { SignalrServiceIDSelector *v1.Selector `json:"signalrServiceIdSelector,omitempty" tf:"-"` } +type PrivateEndpointInitParameters struct { + + // The allowed request types for the Private Endpoint Connection. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + AllowedRequestTypes []*string `json:"allowedRequestTypes,omitempty" tf:"allowed_request_types,omitempty"` + + // The denied request types for the Private Endpoint Connection. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + DeniedRequestTypes []*string `json:"deniedRequestTypes,omitempty" tf:"denied_request_types,omitempty"` +} + type PrivateEndpointObservation struct { // The allowed request types for the Private Endpoint Connection. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. @@ -97,6 +118,15 @@ type PrivateEndpointParameters struct { IDSelector *v1.Selector `json:"idSelector,omitempty" tf:"-"` } +type PublicNetworkInitParameters struct { + + // The allowed request types for the public network. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + AllowedRequestTypes []*string `json:"allowedRequestTypes,omitempty" tf:"allowed_request_types,omitempty"` + + // The denied request types for the public network. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + DeniedRequestTypes []*string `json:"deniedRequestTypes,omitempty" tf:"denied_request_types,omitempty"` +} + type PublicNetworkObservation struct { // The allowed request types for the public network. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. @@ -121,6 +151,18 @@ type PublicNetworkParameters struct { type NetworkACLSpec struct { v1.ResourceSpec `json:",inline"` ForProvider NetworkACLParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider NetworkACLInitParameters `json:"initProvider,omitempty"` } // NetworkACLStatus defines the observed state of NetworkACL. @@ -141,8 +183,8 @@ type NetworkACLStatus struct { type NetworkACL struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultAction)",message="defaultAction is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publicNetwork)",message="publicNetwork is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.defaultAction) || has(self.initProvider.defaultAction)",message="defaultAction is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.publicNetwork) || has(self.initProvider.publicNetwork)",message="publicNetwork is a required parameter" Spec NetworkACLSpec `json:"spec"` Status NetworkACLStatus `json:"status,omitempty"` } diff --git a/apis/signalrservice/v1beta1/zz_service_types.go b/apis/signalrservice/v1beta1/zz_service_types.go index 80aff59a8..41d9b0586 100755 --- a/apis/signalrservice/v1beta1/zz_service_types.go +++ b/apis/signalrservice/v1beta1/zz_service_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CorsInitParameters struct { + + // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` +} + type CorsObservation struct { // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. @@ -22,8 +28,17 @@ type CorsObservation struct { type CorsParameters struct { // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. - // +kubebuilder:validation:Required - AllowedOrigins []*string `json:"allowedOrigins" tf:"allowed_origins,omitempty"` + // +kubebuilder:validation:Optional + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` +} + +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this signalR. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this signalR. Possible values are SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type IdentityObservation struct { @@ -48,8 +63,23 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this signalR. Possible values are SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LiveTraceInitParameters struct { + + // Whether the log category ConnectivityLogs is enabled? Defaults to true + ConnectivityLogsEnabled *bool `json:"connectivityLogsEnabled,omitempty" tf:"connectivity_logs_enabled,omitempty"` + + // Whether the live trace is enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Whether the log category HttpRequestLogs is enabled? Defaults to true + HTTPRequestLogsEnabled *bool `json:"httpRequestLogsEnabled,omitempty" tf:"http_request_logs_enabled,omitempty"` + + // Whether the log category MessagingLogs is enabled? Defaults to true + MessagingLogsEnabled *bool `json:"messagingLogsEnabled,omitempty" tf:"messaging_logs_enabled,omitempty"` } type LiveTraceObservation struct { @@ -86,6 +116,60 @@ type LiveTraceParameters struct { MessagingLogsEnabled *bool `json:"messagingLogsEnabled,omitempty" tf:"messaging_logs_enabled,omitempty"` } +type ServiceInitParameters struct { + + // Whether to enable AAD auth? Defaults to true. + AADAuthEnabled *bool `json:"aadAuthEnabled,omitempty" tf:"aad_auth_enabled,omitempty"` + + // Specifies if Connectivity Logs are enabled or not. Defaults to false. + ConnectivityLogsEnabled *bool `json:"connectivityLogsEnabled,omitempty" tf:"connectivity_logs_enabled,omitempty"` + + // A cors block as documented below. + Cors []CorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // Specifies if Http Request Logs are enabled or not. Defaults to false. + HTTPRequestLogsEnabled *bool `json:"httpRequestLogsEnabled,omitempty" tf:"http_request_logs_enabled,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // A live_trace block as defined below. + LiveTrace []LiveTraceInitParameters `json:"liveTrace,omitempty" tf:"live_trace,omitempty"` + + // Specifies if Live Trace is enabled or not. Defaults to false. + LiveTraceEnabled *bool `json:"liveTraceEnabled,omitempty" tf:"live_trace_enabled,omitempty"` + + // Whether to enable local auth? Defaults to true. + LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` + + // Specifies the supported Azure location where the SignalR service exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies if Messaging Logs are enabled or not. Defaults to false. + MessagingLogsEnabled *bool `json:"messagingLogsEnabled,omitempty" tf:"messaging_logs_enabled,omitempty"` + + // Whether to enable public network access? Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Specifies the client connection timeout. Defaults to 30. + ServerlessConnectionTimeoutInSeconds *float64 `json:"serverlessConnectionTimeoutInSeconds,omitempty" tf:"serverless_connection_timeout_in_seconds,omitempty"` + + // Specifies the service mode. Possible values are Classic, Default and Serverless. Defaults to Default. + ServiceMode *string `json:"serviceMode,omitempty" tf:"service_mode,omitempty"` + + // A sku block as documented below. + Sku []SkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"` + + // Whether to request client certificate during TLS handshake? Defaults to false. + TLSClientCertEnabled *bool `json:"tlsClientCertEnabled,omitempty" tf:"tls_client_cert_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // An upstream_endpoint block as documented below. Using this block requires the SignalR service to be Serverless. When creating multiple blocks they will be processed in the order they are defined in. + UpstreamEndpoint []UpstreamEndpointInitParameters `json:"upstreamEndpoint,omitempty" tf:"upstream_endpoint,omitempty"` +} + type ServiceObservation struct { // Whether to enable AAD auth? Defaults to true. @@ -242,6 +326,15 @@ type ServiceParameters struct { UpstreamEndpoint []UpstreamEndpointParameters `json:"upstreamEndpoint,omitempty" tf:"upstream_endpoint,omitempty"` } +type SkuInitParameters struct { + + // Specifies the number of units associated with this SignalR service. Valid values are 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90 and 100. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // Specifies which tier to use. Valid values are Free_F1, Standard_S1 and Premium_P1. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type SkuObservation struct { // Specifies the number of units associated with this SignalR service. Valid values are 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90 and 100. @@ -254,12 +347,27 @@ type SkuObservation struct { type SkuParameters struct { // Specifies the number of units associated with this SignalR service. Valid values are 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90 and 100. - // +kubebuilder:validation:Required - Capacity *float64 `json:"capacity" tf:"capacity,omitempty"` + // +kubebuilder:validation:Optional + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // Specifies which tier to use. Valid values are Free_F1, Standard_S1 and Premium_P1. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type UpstreamEndpointInitParameters struct { + + // The categories to match on, or * for all. + CategoryPattern []*string `json:"categoryPattern,omitempty" tf:"category_pattern,omitempty"` + + // The events to match on, or * for all. + EventPattern []*string `json:"eventPattern,omitempty" tf:"event_pattern,omitempty"` + + // The hubs to match on, or * for all. + HubPattern []*string `json:"hubPattern,omitempty" tf:"hub_pattern,omitempty"` + + // The upstream URL Template. This can be a url or a template such as http://host.com/{hub}/api/{category}/{event}. + URLTemplate *string `json:"urlTemplate,omitempty" tf:"url_template,omitempty"` } type UpstreamEndpointObservation struct { @@ -280,26 +388,38 @@ type UpstreamEndpointObservation struct { type UpstreamEndpointParameters struct { // The categories to match on, or * for all. - // +kubebuilder:validation:Required - CategoryPattern []*string `json:"categoryPattern" tf:"category_pattern,omitempty"` + // +kubebuilder:validation:Optional + CategoryPattern []*string `json:"categoryPattern,omitempty" tf:"category_pattern,omitempty"` // The events to match on, or * for all. - // +kubebuilder:validation:Required - EventPattern []*string `json:"eventPattern" tf:"event_pattern,omitempty"` + // +kubebuilder:validation:Optional + EventPattern []*string `json:"eventPattern,omitempty" tf:"event_pattern,omitempty"` // The hubs to match on, or * for all. - // +kubebuilder:validation:Required - HubPattern []*string `json:"hubPattern" tf:"hub_pattern,omitempty"` + // +kubebuilder:validation:Optional + HubPattern []*string `json:"hubPattern,omitempty" tf:"hub_pattern,omitempty"` // The upstream URL Template. This can be a url or a template such as http://host.com/{hub}/api/{category}/{event}. - // +kubebuilder:validation:Required - URLTemplate *string `json:"urlTemplate" tf:"url_template,omitempty"` + // +kubebuilder:validation:Optional + URLTemplate *string `json:"urlTemplate,omitempty" tf:"url_template,omitempty"` } // ServiceSpec defines the desired state of Service type ServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServiceInitParameters `json:"initProvider,omitempty"` } // ServiceStatus defines the observed state of Service. @@ -320,8 +440,8 @@ type ServiceStatus struct { type Service struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec ServiceSpec `json:"spec"` Status ServiceStatus `json:"status,omitempty"` } diff --git a/apis/signalrservice/v1beta1/zz_signalrsharedprivatelinkresource_types.go b/apis/signalrservice/v1beta1/zz_signalrsharedprivatelinkresource_types.go index 9a536c079..61c9a149f 100755 --- a/apis/signalrservice/v1beta1/zz_signalrsharedprivatelinkresource_types.go +++ b/apis/signalrservice/v1beta1/zz_signalrsharedprivatelinkresource_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SignalrSharedPrivateLinkResourceInitParameters struct { + + // The name of the Signalr Shared Private Link Resource. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The request message for requesting approval of the Shared Private Link Enabled Remote Resource. + RequestMessage *string `json:"requestMessage,omitempty" tf:"request_message,omitempty"` + + // The sub resource name which the Signalr Private Endpoint can connect to. Possible values are sites, vault. Changing this forces a new resource to be created. + SubResourceName *string `json:"subResourceName,omitempty" tf:"sub_resource_name,omitempty"` +} + type SignalrSharedPrivateLinkResourceObservation struct { // The ID of the Signalr Shared Private Link resource. @@ -84,6 +96,18 @@ type SignalrSharedPrivateLinkResourceParameters struct { type SignalrSharedPrivateLinkResourceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SignalrSharedPrivateLinkResourceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SignalrSharedPrivateLinkResourceInitParameters `json:"initProvider,omitempty"` } // SignalrSharedPrivateLinkResourceStatus defines the observed state of SignalrSharedPrivateLinkResource. @@ -104,8 +128,8 @@ type SignalrSharedPrivateLinkResourceStatus struct { type SignalrSharedPrivateLinkResource struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subResourceName)",message="subResourceName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subResourceName) || has(self.initProvider.subResourceName)",message="subResourceName is a required parameter" Spec SignalrSharedPrivateLinkResourceSpec `json:"spec"` Status SignalrSharedPrivateLinkResourceStatus `json:"status,omitempty"` } diff --git a/apis/signalrservice/v1beta1/zz_webpubsub_types.go b/apis/signalrservice/v1beta1/zz_webpubsub_types.go index 1d0e24158..35e6a7bd7 100755 --- a/apis/signalrservice/v1beta1/zz_webpubsub_types.go +++ b/apis/signalrservice/v1beta1/zz_webpubsub_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WebPubsubIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Web PubSub. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Web PubSub. Possible values are SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WebPubsubIdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Web PubSub. @@ -35,8 +44,59 @@ type WebPubsubIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Web PubSub. Possible values are SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WebPubsubInitParameters struct { + + // Whether to enable AAD auth? Defaults to true. + AADAuthEnabled *bool `json:"aadAuthEnabled,omitempty" tf:"aad_auth_enabled,omitempty"` + + // Specifies the number of units associated with this Web PubSub resource. Valid values are: Free: 1, Standard: 1, 2, 5, 10, 20, 50, 100. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // An identity block as defined below. + Identity []WebPubsubIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // A live_trace block as defined below. + LiveTrace []WebPubsubLiveTraceInitParameters `json:"liveTrace,omitempty" tf:"live_trace,omitempty"` + + // Whether to enable local auth? Defaults to true. + LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` + + // Specifies the supported Azure location where the Web PubSub service exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the Web PubSub service. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Whether to enable public network access? Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // Specifies which SKU to use. Possible values are Free_F1, Standard_S1, and Premium_P1. + Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` + + // Whether to request client certificate during TLS handshake? Defaults to false. + TLSClientCertEnabled *bool `json:"tlsClientCertEnabled,omitempty" tf:"tls_client_cert_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + +type WebPubsubLiveTraceInitParameters struct { + + // Whether the log category ConnectivityLogs is enabled? Defaults to true + ConnectivityLogsEnabled *bool `json:"connectivityLogsEnabled,omitempty" tf:"connectivity_logs_enabled,omitempty"` + + // Whether the live trace is enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Whether the log category HttpRequestLogs is enabled? Defaults to true + HTTPRequestLogsEnabled *bool `json:"httpRequestLogsEnabled,omitempty" tf:"http_request_logs_enabled,omitempty"` + + // Whether the log category MessagingLogs is enabled? Defaults to true + MessagingLogsEnabled *bool `json:"messagingLogsEnabled,omitempty" tf:"messaging_logs_enabled,omitempty"` } type WebPubsubLiveTraceObservation struct { @@ -193,6 +253,18 @@ type WebPubsubParameters struct { type WebPubsubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WebPubsubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WebPubsubInitParameters `json:"initProvider,omitempty"` } // WebPubsubStatus defines the observed state of WebPubsub. @@ -213,9 +285,9 @@ type WebPubsubStatus struct { type WebPubsub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec WebPubsubSpec `json:"spec"` Status WebPubsubStatus `json:"status,omitempty"` } diff --git a/apis/signalrservice/v1beta1/zz_webpubsubhub_types.go b/apis/signalrservice/v1beta1/zz_webpubsubhub_types.go index ee843c568..04b044ef1 100755 --- a/apis/signalrservice/v1beta1/zz_webpubsubhub_types.go +++ b/apis/signalrservice/v1beta1/zz_webpubsubhub_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthInitParameters struct { +} + type AuthObservation struct { // Specify the identity ID of the target resource. @@ -36,6 +39,21 @@ type AuthParameters struct { ManagedIdentityIDSelector *v1.Selector `json:"managedIdentityIdSelector,omitempty" tf:"-"` } +type EventHandlerInitParameters struct { + + // An auth block as defined below. + Auth []AuthInitParameters `json:"auth,omitempty" tf:"auth,omitempty"` + + // Specifies the list of system events. Supported values are connect, connected and disconnected. + SystemEvents []*string `json:"systemEvents,omitempty" tf:"system_events,omitempty"` + + // The Event Handler URL Template. Two predefined parameters {hub} and {event} are available to use in the template. The value of the EventHandler URL is dynamically calculated when the client request comes in. Example: http://example.com/api/{hub}/{event}. + URLTemplate *string `json:"urlTemplate,omitempty" tf:"url_template,omitempty"` + + // Specifies the matching event names. There are 3 kind of patterns supported: * * matches any event name * , Combine multiple events with , for example event1,event2, it matches event event1 and event2 * The single event name, for example event1, it matches event1. + UserEventPattern *string `json:"userEventPattern,omitempty" tf:"user_event_pattern,omitempty"` +} + type EventHandlerObservation struct { // An auth block as defined below. @@ -62,14 +80,23 @@ type EventHandlerParameters struct { SystemEvents []*string `json:"systemEvents,omitempty" tf:"system_events,omitempty"` // The Event Handler URL Template. Two predefined parameters {hub} and {event} are available to use in the template. The value of the EventHandler URL is dynamically calculated when the client request comes in. Example: http://example.com/api/{hub}/{event}. - // +kubebuilder:validation:Required - URLTemplate *string `json:"urlTemplate" tf:"url_template,omitempty"` + // +kubebuilder:validation:Optional + URLTemplate *string `json:"urlTemplate,omitempty" tf:"url_template,omitempty"` // Specifies the matching event names. There are 3 kind of patterns supported: * * matches any event name * , Combine multiple events with , for example event1,event2, it matches event event1 and event2 * The single event name, for example event1, it matches event1. // +kubebuilder:validation:Optional UserEventPattern *string `json:"userEventPattern,omitempty" tf:"user_event_pattern,omitempty"` } +type EventListenerInitParameters struct { + + // Specifies the list of system events. Supported values are connected and disconnected. + SystemEventNameFilter []*string `json:"systemEventNameFilter,omitempty" tf:"system_event_name_filter,omitempty"` + + // Specifies the list of matching user event names. ["*"] can be used to match all events. + UserEventNameFilter []*string `json:"userEventNameFilter,omitempty" tf:"user_event_name_filter,omitempty"` +} + type EventListenerObservation struct { // Specifies the event hub name to receive the events. @@ -122,6 +149,22 @@ type EventListenerParameters struct { UserEventNameFilter []*string `json:"userEventNameFilter,omitempty" tf:"user_event_name_filter,omitempty"` } +type WebPubsubHubInitParameters struct { + + // Is anonymous connections are allowed for this hub? Defaults to false. + // Possible values are true, false. + AnonymousConnectionsEnabled *bool `json:"anonymousConnectionsEnabled,omitempty" tf:"anonymous_connections_enabled,omitempty"` + + // An event_handler block as defined below. + EventHandler []EventHandlerInitParameters `json:"eventHandler,omitempty" tf:"event_handler,omitempty"` + + // An event_listener block as defined below. + EventListener []EventListenerInitParameters `json:"eventListener,omitempty" tf:"event_listener,omitempty"` + + // The name of the Web Pubsub hub service. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type WebPubsubHubObservation struct { // Is anonymous connections are allowed for this hub? Defaults to false. @@ -182,6 +225,18 @@ type WebPubsubHubParameters struct { type WebPubsubHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WebPubsubHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WebPubsubHubInitParameters `json:"initProvider,omitempty"` } // WebPubsubHubStatus defines the observed state of WebPubsubHub. @@ -202,7 +257,7 @@ type WebPubsubHubStatus struct { type WebPubsubHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec WebPubsubHubSpec `json:"spec"` Status WebPubsubHubStatus `json:"status,omitempty"` } diff --git a/apis/signalrservice/v1beta1/zz_webpubsubnetworkacl_types.go b/apis/signalrservice/v1beta1/zz_webpubsubnetworkacl_types.go index 081f8f9ae..fe898a5e0 100755 --- a/apis/signalrservice/v1beta1/zz_webpubsubnetworkacl_types.go +++ b/apis/signalrservice/v1beta1/zz_webpubsubnetworkacl_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WebPubsubNetworkACLInitParameters struct { + + // The default action to control the network access when no other rule matches. Possible values are Allow and Deny. Defaults to Deny. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + + // A private_endpoint block as defined below. + PrivateEndpoint []WebPubsubNetworkACLPrivateEndpointInitParameters `json:"privateEndpoint,omitempty" tf:"private_endpoint,omitempty"` + + // A public_network block as defined below. + PublicNetwork []WebPubsubNetworkACLPublicNetworkInitParameters `json:"publicNetwork,omitempty" tf:"public_network,omitempty"` +} + type WebPubsubNetworkACLObservation struct { // The default action to control the network access when no other rule matches. Possible values are Allow and Deny. Defaults to Deny. @@ -60,6 +72,15 @@ type WebPubsubNetworkACLParameters struct { WebPubsubIDSelector *v1.Selector `json:"webPubsubIdSelector,omitempty" tf:"-"` } +type WebPubsubNetworkACLPrivateEndpointInitParameters struct { + + // The allowed request types for the Private Endpoint Connection. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + AllowedRequestTypes []*string `json:"allowedRequestTypes,omitempty" tf:"allowed_request_types,omitempty"` + + // The denied request types for the Private Endpoint Connection. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + DeniedRequestTypes []*string `json:"deniedRequestTypes,omitempty" tf:"denied_request_types,omitempty"` +} + type WebPubsubNetworkACLPrivateEndpointObservation struct { // The allowed request types for the Private Endpoint Connection. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. @@ -97,6 +118,15 @@ type WebPubsubNetworkACLPrivateEndpointParameters struct { IDSelector *v1.Selector `json:"idSelector,omitempty" tf:"-"` } +type WebPubsubNetworkACLPublicNetworkInitParameters struct { + + // The allowed request types for the public network. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + AllowedRequestTypes []*string `json:"allowedRequestTypes,omitempty" tf:"allowed_request_types,omitempty"` + + // The denied request types for the public network. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + DeniedRequestTypes []*string `json:"deniedRequestTypes,omitempty" tf:"denied_request_types,omitempty"` +} + type WebPubsubNetworkACLPublicNetworkObservation struct { // The allowed request types for the public network. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. @@ -121,6 +151,18 @@ type WebPubsubNetworkACLPublicNetworkParameters struct { type WebPubsubNetworkACLSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WebPubsubNetworkACLParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WebPubsubNetworkACLInitParameters `json:"initProvider,omitempty"` } // WebPubsubNetworkACLStatus defines the observed state of WebPubsubNetworkACL. @@ -141,7 +183,7 @@ type WebPubsubNetworkACLStatus struct { type WebPubsubNetworkACL struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publicNetwork)",message="publicNetwork is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.publicNetwork) || has(self.initProvider.publicNetwork)",message="publicNetwork is a required parameter" Spec WebPubsubNetworkACLSpec `json:"spec"` Status WebPubsubNetworkACLStatus `json:"status,omitempty"` } diff --git a/apis/solutions/v1beta1/zz_generated.deepcopy.go b/apis/solutions/v1beta1/zz_generated.deepcopy.go index a45c847f3..2d925b452 100644 --- a/apis/solutions/v1beta1/zz_generated.deepcopy.go +++ b/apis/solutions/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,31 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthorizationInitParameters) DeepCopyInto(out *AuthorizationInitParameters) { + *out = *in + if in.RoleDefinitionID != nil { + in, out := &in.RoleDefinitionID, &out.RoleDefinitionID + *out = new(string) + **out = **in + } + if in.ServicePrincipalID != nil { + in, out := &in.ServicePrincipalID, &out.ServicePrincipalID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthorizationInitParameters. +func (in *AuthorizationInitParameters) DeepCopy() *AuthorizationInitParameters { + if in == nil { + return nil + } + out := new(AuthorizationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthorizationObservation) DeepCopyInto(out *AuthorizationObservation) { *out = *in @@ -91,6 +116,83 @@ func (in *ManagedApplicationDefinition) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedApplicationDefinitionInitParameters) DeepCopyInto(out *ManagedApplicationDefinitionInitParameters) { + *out = *in + if in.Authorization != nil { + in, out := &in.Authorization, &out.Authorization + *out = make([]AuthorizationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CreateUIDefinition != nil { + in, out := &in.CreateUIDefinition, &out.CreateUIDefinition + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.LockLevel != nil { + in, out := &in.LockLevel, &out.LockLevel + *out = new(string) + **out = **in + } + if in.MainTemplate != nil { + in, out := &in.MainTemplate, &out.MainTemplate + *out = new(string) + **out = **in + } + if in.PackageEnabled != nil { + in, out := &in.PackageEnabled, &out.PackageEnabled + *out = new(bool) + **out = **in + } + if in.PackageFileURI != nil { + in, out := &in.PackageFileURI, &out.PackageFileURI + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedApplicationDefinitionInitParameters. +func (in *ManagedApplicationDefinitionInitParameters) DeepCopy() *ManagedApplicationDefinitionInitParameters { + if in == nil { + return nil + } + out := new(ManagedApplicationDefinitionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedApplicationDefinitionList) DeepCopyInto(out *ManagedApplicationDefinitionList) { *out = *in @@ -307,6 +409,7 @@ func (in *ManagedApplicationDefinitionSpec) DeepCopyInto(out *ManagedApplication *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedApplicationDefinitionSpec. diff --git a/apis/solutions/v1beta1/zz_generated.managed.go b/apis/solutions/v1beta1/zz_generated.managed.go index 465202bab..4deb9c7c5 100644 --- a/apis/solutions/v1beta1/zz_generated.managed.go +++ b/apis/solutions/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *ManagedApplicationDefinition) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagedApplicationDefinition. -func (mg *ManagedApplicationDefinition) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagedApplicationDefinition. +func (mg *ManagedApplicationDefinition) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagedApplicationDefinition. @@ -55,9 +55,9 @@ func (mg *ManagedApplicationDefinition) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagedApplicationDefinition. -func (mg *ManagedApplicationDefinition) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagedApplicationDefinition. +func (mg *ManagedApplicationDefinition) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagedApplicationDefinition. diff --git a/apis/solutions/v1beta1/zz_generated_terraformed.go b/apis/solutions/v1beta1/zz_generated_terraformed.go index f1f25a82d..1f9dde02f 100755 --- a/apis/solutions/v1beta1/zz_generated_terraformed.go +++ b/apis/solutions/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *ManagedApplicationDefinition) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagedApplicationDefinition +func (tr *ManagedApplicationDefinition) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagedApplicationDefinition using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagedApplicationDefinition) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/solutions/v1beta1/zz_managedapplicationdefinition_types.go b/apis/solutions/v1beta1/zz_managedapplicationdefinition_types.go index b60a40d5a..677d44ba8 100755 --- a/apis/solutions/v1beta1/zz_managedapplicationdefinition_types.go +++ b/apis/solutions/v1beta1/zz_managedapplicationdefinition_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthorizationInitParameters struct { + + // Specifies a role definition identifier for the provider. This role will define all the permissions that the provider must have on the managed application's container resource group. This role definition cannot have permission to delete the resource group. + RoleDefinitionID *string `json:"roleDefinitionId,omitempty" tf:"role_definition_id,omitempty"` + + // Specifies a service principal identifier for the provider. This is the identity that the provider will use to call ARM to manage the managed application resources. + ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` +} + type AuthorizationObservation struct { // Specifies a role definition identifier for the provider. This role will define all the permissions that the provider must have on the managed application's container resource group. This role definition cannot have permission to delete the resource group. @@ -25,12 +34,45 @@ type AuthorizationObservation struct { type AuthorizationParameters struct { // Specifies a role definition identifier for the provider. This role will define all the permissions that the provider must have on the managed application's container resource group. This role definition cannot have permission to delete the resource group. - // +kubebuilder:validation:Required - RoleDefinitionID *string `json:"roleDefinitionId" tf:"role_definition_id,omitempty"` + // +kubebuilder:validation:Optional + RoleDefinitionID *string `json:"roleDefinitionId,omitempty" tf:"role_definition_id,omitempty"` // Specifies a service principal identifier for the provider. This is the identity that the provider will use to call ARM to manage the managed application resources. - // +kubebuilder:validation:Required - ServicePrincipalID *string `json:"servicePrincipalId" tf:"service_principal_id,omitempty"` + // +kubebuilder:validation:Optional + ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` +} + +type ManagedApplicationDefinitionInitParameters struct { + + // One or more authorization block defined below. + Authorization []AuthorizationInitParameters `json:"authorization,omitempty" tf:"authorization,omitempty"` + + // Specifies the createUiDefinition JSON for the backing template with Microsoft.Solutions/applications resource. + CreateUIDefinition *string `json:"createUiDefinition,omitempty" tf:"create_ui_definition,omitempty"` + + // Specifies the managed application definition description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // Specifies the managed application definition display name. + DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the managed application lock level. Valid values include CanNotDelete, None, ReadOnly. Changing this forces a new resource to be created. + LockLevel *string `json:"lockLevel,omitempty" tf:"lock_level,omitempty"` + + // Specifies the inline main template JSON which has resources to be provisioned. + MainTemplate *string `json:"mainTemplate,omitempty" tf:"main_template,omitempty"` + + // Is the package enabled? Defaults to true. + PackageEnabled *bool `json:"packageEnabled,omitempty" tf:"package_enabled,omitempty"` + + // Specifies the managed application definition package file Uri. + PackageFileURI *string `json:"packageFileUri,omitempty" tf:"package_file_uri,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type ManagedApplicationDefinitionObservation struct { @@ -132,6 +174,18 @@ type ManagedApplicationDefinitionParameters struct { type ManagedApplicationDefinitionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagedApplicationDefinitionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagedApplicationDefinitionInitParameters `json:"initProvider,omitempty"` } // ManagedApplicationDefinitionStatus defines the observed state of ManagedApplicationDefinition. @@ -152,9 +206,9 @@ type ManagedApplicationDefinitionStatus struct { type ManagedApplicationDefinition struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName)",message="displayName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.lockLevel)",message="lockLevel is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.displayName) || has(self.initProvider.displayName)",message="displayName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.lockLevel) || has(self.initProvider.lockLevel)",message="lockLevel is a required parameter" Spec ManagedApplicationDefinitionSpec `json:"spec"` Status ManagedApplicationDefinitionStatus `json:"status,omitempty"` } diff --git a/apis/spring/v1beta1/zz_cloudapplicationliveview_types.go b/apis/spring/v1beta1/zz_cloudapplicationliveview_types.go index 2d0294bc4..de5a939a6 100755 --- a/apis/spring/v1beta1/zz_cloudapplicationliveview_types.go +++ b/apis/spring/v1beta1/zz_cloudapplicationliveview_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type CloudApplicationLiveViewInitParameters struct { +} + type CloudApplicationLiveViewObservation struct { // The ID of the Spring Cloud Application Live View. @@ -43,6 +46,18 @@ type CloudApplicationLiveViewParameters struct { type CloudApplicationLiveViewSpec struct { v1.ResourceSpec `json:",inline"` ForProvider CloudApplicationLiveViewParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider CloudApplicationLiveViewInitParameters `json:"initProvider,omitempty"` } // CloudApplicationLiveViewStatus defines the observed state of CloudApplicationLiveView. diff --git a/apis/spring/v1beta1/zz_generated.deepcopy.go b/apis/spring/v1beta1/zz_generated.deepcopy.go index 8392a260d..b0839bb62 100644 --- a/apis/spring/v1beta1/zz_generated.deepcopy.go +++ b/apis/spring/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,21 @@ func (in *CloudApplicationLiveView) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CloudApplicationLiveViewInitParameters) DeepCopyInto(out *CloudApplicationLiveViewInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudApplicationLiveViewInitParameters. +func (in *CloudApplicationLiveViewInitParameters) DeepCopy() *CloudApplicationLiveViewInitParameters { + if in == nil { + return nil + } + out := new(CloudApplicationLiveViewInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CloudApplicationLiveViewList) DeepCopyInto(out *CloudApplicationLiveViewList) { *out = *in @@ -133,6 +148,7 @@ func (in *CloudApplicationLiveViewSpec) DeepCopyInto(out *CloudApplicationLiveVi *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudApplicationLiveViewSpec. diff --git a/apis/spring/v1beta1/zz_generated.managed.go b/apis/spring/v1beta1/zz_generated.managed.go index a46610b0a..3386b0630 100644 --- a/apis/spring/v1beta1/zz_generated.managed.go +++ b/apis/spring/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *CloudApplicationLiveView) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this CloudApplicationLiveView. -func (mg *CloudApplicationLiveView) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this CloudApplicationLiveView. +func (mg *CloudApplicationLiveView) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this CloudApplicationLiveView. @@ -55,9 +55,9 @@ func (mg *CloudApplicationLiveView) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this CloudApplicationLiveView. -func (mg *CloudApplicationLiveView) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this CloudApplicationLiveView. +func (mg *CloudApplicationLiveView) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this CloudApplicationLiveView. diff --git a/apis/spring/v1beta1/zz_generated_terraformed.go b/apis/spring/v1beta1/zz_generated_terraformed.go index 636ccfbbc..6e362f6fe 100755 --- a/apis/spring/v1beta1/zz_generated_terraformed.go +++ b/apis/spring/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *CloudApplicationLiveView) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this CloudApplicationLiveView +func (tr *CloudApplicationLiveView) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this CloudApplicationLiveView using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *CloudApplicationLiveView) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/sql/v1beta1/zz_generated.deepcopy.go b/apis/sql/v1beta1/zz_generated.deepcopy.go index b90a2ef8a..2a83dd517 100644 --- a/apis/sql/v1beta1/zz_generated.deepcopy.go +++ b/apis/sql/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,31 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureadAdministratorInitParameters) DeepCopyInto(out *AzureadAdministratorInitParameters) { + *out = *in + if in.AzureadAuthenticationOnly != nil { + in, out := &in.AzureadAuthenticationOnly, &out.AzureadAuthenticationOnly + *out = new(bool) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureadAdministratorInitParameters. +func (in *AzureadAdministratorInitParameters) DeepCopy() *AzureadAdministratorInitParameters { + if in == nil { + return nil + } + out := new(AzureadAdministratorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureadAdministratorObservation) DeepCopyInto(out *AzureadAdministratorObservation) { *out = *in @@ -104,6 +129,32 @@ func (in *AzureadAdministratorParameters) DeepCopy() *AzureadAdministratorParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BaselineResultInitParameters) DeepCopyInto(out *BaselineResultInitParameters) { + *out = *in + if in.Result != nil { + in, out := &in.Result, &out.Result + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BaselineResultInitParameters. +func (in *BaselineResultInitParameters) DeepCopy() *BaselineResultInitParameters { + if in == nil { + return nil + } + out := new(BaselineResultInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BaselineResultObservation) DeepCopyInto(out *BaselineResultObservation) { *out = *in @@ -156,6 +207,37 @@ func (in *BaselineResultParameters) DeepCopy() *BaselineResultParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -228,6 +310,46 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ImportInitParameters) DeepCopyInto(out *ImportInitParameters) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AuthenticationType != nil { + in, out := &in.AuthenticationType, &out.AuthenticationType + *out = new(string) + **out = **in + } + if in.StorageAccountID != nil { + in, out := &in.StorageAccountID, &out.StorageAccountID + *out = new(string) + **out = **in + } + if in.StorageKeyType != nil { + in, out := &in.StorageKeyType, &out.StorageKeyType + *out = new(string) + **out = **in + } + if in.StorageURI != nil { + in, out := &in.StorageURI, &out.StorageURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImportInitParameters. +func (in *ImportInitParameters) DeepCopy() *ImportInitParameters { + if in == nil { + return nil + } + out := new(ImportInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ImportObservation) DeepCopyInto(out *ImportObservation) { *out = *in @@ -310,6 +432,41 @@ func (in *ImportParameters) DeepCopy() *ImportParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LongTermRetentionPolicyInitParameters) DeepCopyInto(out *LongTermRetentionPolicyInitParameters) { + *out = *in + if in.MonthlyRetention != nil { + in, out := &in.MonthlyRetention, &out.MonthlyRetention + *out = new(string) + **out = **in + } + if in.WeekOfYear != nil { + in, out := &in.WeekOfYear, &out.WeekOfYear + *out = new(float64) + **out = **in + } + if in.WeeklyRetention != nil { + in, out := &in.WeeklyRetention, &out.WeeklyRetention + *out = new(string) + **out = **in + } + if in.YearlyRetention != nil { + in, out := &in.YearlyRetention, &out.YearlyRetention + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LongTermRetentionPolicyInitParameters. +func (in *LongTermRetentionPolicyInitParameters) DeepCopy() *LongTermRetentionPolicyInitParameters { + if in == nil { + return nil + } + out := new(LongTermRetentionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LongTermRetentionPolicyObservation) DeepCopyInto(out *LongTermRetentionPolicyObservation) { *out = *in @@ -434,6 +591,41 @@ func (in *MSSQLDatabaseExtendedAuditingPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLDatabaseExtendedAuditingPolicyInitParameters) DeepCopyInto(out *MSSQLDatabaseExtendedAuditingPolicyInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.LogMonitoringEnabled != nil { + in, out := &in.LogMonitoringEnabled, &out.LogMonitoringEnabled + *out = new(bool) + **out = **in + } + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.StorageAccountAccessKeyIsSecondary != nil { + in, out := &in.StorageAccountAccessKeyIsSecondary, &out.StorageAccountAccessKeyIsSecondary + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseExtendedAuditingPolicyInitParameters. +func (in *MSSQLDatabaseExtendedAuditingPolicyInitParameters) DeepCopy() *MSSQLDatabaseExtendedAuditingPolicyInitParameters { + if in == nil { + return nil + } + out := new(MSSQLDatabaseExtendedAuditingPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLDatabaseExtendedAuditingPolicyList) DeepCopyInto(out *MSSQLDatabaseExtendedAuditingPolicyList) { *out = *in @@ -549,73 +741,237 @@ func (in *MSSQLDatabaseExtendedAuditingPolicyParameters) DeepCopyInto(out *MSSQL *out = new(float64) **out = **in } - if in.StorageAccountAccessKeyIsSecondary != nil { - in, out := &in.StorageAccountAccessKeyIsSecondary, &out.StorageAccountAccessKeyIsSecondary + if in.StorageAccountAccessKeyIsSecondary != nil { + in, out := &in.StorageAccountAccessKeyIsSecondary, &out.StorageAccountAccessKeyIsSecondary + *out = new(bool) + **out = **in + } + if in.StorageAccountAccessKeySecretRef != nil { + in, out := &in.StorageAccountAccessKeySecretRef, &out.StorageAccountAccessKeySecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.StorageEndpoint != nil { + in, out := &in.StorageEndpoint, &out.StorageEndpoint + *out = new(string) + **out = **in + } + if in.StorageEndpointRef != nil { + in, out := &in.StorageEndpointRef, &out.StorageEndpointRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.StorageEndpointSelector != nil { + in, out := &in.StorageEndpointSelector, &out.StorageEndpointSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseExtendedAuditingPolicyParameters. +func (in *MSSQLDatabaseExtendedAuditingPolicyParameters) DeepCopy() *MSSQLDatabaseExtendedAuditingPolicyParameters { + if in == nil { + return nil + } + out := new(MSSQLDatabaseExtendedAuditingPolicyParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLDatabaseExtendedAuditingPolicySpec) DeepCopyInto(out *MSSQLDatabaseExtendedAuditingPolicySpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseExtendedAuditingPolicySpec. +func (in *MSSQLDatabaseExtendedAuditingPolicySpec) DeepCopy() *MSSQLDatabaseExtendedAuditingPolicySpec { + if in == nil { + return nil + } + out := new(MSSQLDatabaseExtendedAuditingPolicySpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLDatabaseExtendedAuditingPolicyStatus) DeepCopyInto(out *MSSQLDatabaseExtendedAuditingPolicyStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseExtendedAuditingPolicyStatus. +func (in *MSSQLDatabaseExtendedAuditingPolicyStatus) DeepCopy() *MSSQLDatabaseExtendedAuditingPolicyStatus { + if in == nil { + return nil + } + out := new(MSSQLDatabaseExtendedAuditingPolicyStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLDatabaseInitParameters) DeepCopyInto(out *MSSQLDatabaseInitParameters) { + *out = *in + if in.AutoPauseDelayInMinutes != nil { + in, out := &in.AutoPauseDelayInMinutes, &out.AutoPauseDelayInMinutes + *out = new(float64) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(string) + **out = **in + } + if in.CreationSourceDatabaseID != nil { + in, out := &in.CreationSourceDatabaseID, &out.CreationSourceDatabaseID + *out = new(string) + **out = **in + } + if in.ElasticPoolID != nil { + in, out := &in.ElasticPoolID, &out.ElasticPoolID + *out = new(string) + **out = **in + } + if in.GeoBackupEnabled != nil { + in, out := &in.GeoBackupEnabled, &out.GeoBackupEnabled + *out = new(bool) + **out = **in + } + if in.Import != nil { + in, out := &in.Import, &out.Import + *out = make([]ImportInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LedgerEnabled != nil { + in, out := &in.LedgerEnabled, &out.LedgerEnabled + *out = new(bool) + **out = **in + } + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in + } + if in.LongTermRetentionPolicy != nil { + in, out := &in.LongTermRetentionPolicy, &out.LongTermRetentionPolicy + *out = make([]LongTermRetentionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MaintenanceConfigurationName != nil { + in, out := &in.MaintenanceConfigurationName, &out.MaintenanceConfigurationName + *out = new(string) + **out = **in + } + if in.MaxSizeGb != nil { + in, out := &in.MaxSizeGb, &out.MaxSizeGb + *out = new(float64) + **out = **in + } + if in.MinCapacity != nil { + in, out := &in.MinCapacity, &out.MinCapacity + *out = new(float64) + **out = **in + } + if in.ReadReplicaCount != nil { + in, out := &in.ReadReplicaCount, &out.ReadReplicaCount + *out = new(float64) + **out = **in + } + if in.ReadScale != nil { + in, out := &in.ReadScale, &out.ReadScale + *out = new(bool) + **out = **in + } + if in.RecoverDatabaseID != nil { + in, out := &in.RecoverDatabaseID, &out.RecoverDatabaseID + *out = new(string) + **out = **in + } + if in.RestoreDroppedDatabaseID != nil { + in, out := &in.RestoreDroppedDatabaseID, &out.RestoreDroppedDatabaseID + *out = new(string) + **out = **in + } + if in.RestorePointInTime != nil { + in, out := &in.RestorePointInTime, &out.RestorePointInTime + *out = new(string) + **out = **in + } + if in.SampleName != nil { + in, out := &in.SampleName, &out.SampleName + *out = new(string) + **out = **in + } + if in.ShortTermRetentionPolicy != nil { + in, out := &in.ShortTermRetentionPolicy, &out.ShortTermRetentionPolicy + *out = make([]ShortTermRetentionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ThreatDetectionPolicy != nil { + in, out := &in.ThreatDetectionPolicy, &out.ThreatDetectionPolicy + *out = make([]ThreatDetectionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TransparentDataEncryptionEnabled != nil { + in, out := &in.TransparentDataEncryptionEnabled, &out.TransparentDataEncryptionEnabled *out = new(bool) **out = **in } - if in.StorageAccountAccessKeySecretRef != nil { - in, out := &in.StorageAccountAccessKeySecretRef, &out.StorageAccountAccessKeySecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } - if in.StorageEndpoint != nil { - in, out := &in.StorageEndpoint, &out.StorageEndpoint - *out = new(string) + if in.ZoneRedundant != nil { + in, out := &in.ZoneRedundant, &out.ZoneRedundant + *out = new(bool) **out = **in } - if in.StorageEndpointRef != nil { - in, out := &in.StorageEndpointRef, &out.StorageEndpointRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) - } - if in.StorageEndpointSelector != nil { - in, out := &in.StorageEndpointSelector, &out.StorageEndpointSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseExtendedAuditingPolicyParameters. -func (in *MSSQLDatabaseExtendedAuditingPolicyParameters) DeepCopy() *MSSQLDatabaseExtendedAuditingPolicyParameters { - if in == nil { - return nil - } - out := new(MSSQLDatabaseExtendedAuditingPolicyParameters) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *MSSQLDatabaseExtendedAuditingPolicySpec) DeepCopyInto(out *MSSQLDatabaseExtendedAuditingPolicySpec) { - *out = *in - in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) - in.ForProvider.DeepCopyInto(&out.ForProvider) -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseExtendedAuditingPolicySpec. -func (in *MSSQLDatabaseExtendedAuditingPolicySpec) DeepCopy() *MSSQLDatabaseExtendedAuditingPolicySpec { - if in == nil { - return nil - } - out := new(MSSQLDatabaseExtendedAuditingPolicySpec) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *MSSQLDatabaseExtendedAuditingPolicyStatus) DeepCopyInto(out *MSSQLDatabaseExtendedAuditingPolicyStatus) { - *out = *in - in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) - in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseExtendedAuditingPolicyStatus. -func (in *MSSQLDatabaseExtendedAuditingPolicyStatus) DeepCopy() *MSSQLDatabaseExtendedAuditingPolicyStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseInitParameters. +func (in *MSSQLDatabaseInitParameters) DeepCopy() *MSSQLDatabaseInitParameters { if in == nil { return nil } - out := new(MSSQLDatabaseExtendedAuditingPolicyStatus) + out := new(MSSQLDatabaseInitParameters) in.DeepCopyInto(out) return out } @@ -1008,6 +1364,7 @@ func (in *MSSQLDatabaseSpec) DeepCopyInto(out *MSSQLDatabaseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseSpec. @@ -1064,6 +1421,38 @@ func (in *MSSQLDatabaseVulnerabilityAssessmentRuleBaseline) DeepCopyObject() run return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLDatabaseVulnerabilityAssessmentRuleBaselineInitParameters) DeepCopyInto(out *MSSQLDatabaseVulnerabilityAssessmentRuleBaselineInitParameters) { + *out = *in + if in.BaselineName != nil { + in, out := &in.BaselineName, &out.BaselineName + *out = new(string) + **out = **in + } + if in.BaselineResult != nil { + in, out := &in.BaselineResult, &out.BaselineResult + *out = make([]BaselineResultInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuleID != nil { + in, out := &in.RuleID, &out.RuleID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseVulnerabilityAssessmentRuleBaselineInitParameters. +func (in *MSSQLDatabaseVulnerabilityAssessmentRuleBaselineInitParameters) DeepCopy() *MSSQLDatabaseVulnerabilityAssessmentRuleBaselineInitParameters { + if in == nil { + return nil + } + out := new(MSSQLDatabaseVulnerabilityAssessmentRuleBaselineInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLDatabaseVulnerabilityAssessmentRuleBaselineList) DeepCopyInto(out *MSSQLDatabaseVulnerabilityAssessmentRuleBaselineList) { *out = *in @@ -1210,6 +1599,7 @@ func (in *MSSQLDatabaseVulnerabilityAssessmentRuleBaselineSpec) DeepCopyInto(out *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLDatabaseVulnerabilityAssessmentRuleBaselineSpec. @@ -1266,6 +1656,80 @@ func (in *MSSQLElasticPool) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLElasticPoolInitParameters) DeepCopyInto(out *MSSQLElasticPoolInitParameters) { + *out = *in + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaintenanceConfigurationName != nil { + in, out := &in.MaintenanceConfigurationName, &out.MaintenanceConfigurationName + *out = new(string) + **out = **in + } + if in.MaxSizeBytes != nil { + in, out := &in.MaxSizeBytes, &out.MaxSizeBytes + *out = new(float64) + **out = **in + } + if in.MaxSizeGb != nil { + in, out := &in.MaxSizeGb, &out.MaxSizeGb + *out = new(float64) + **out = **in + } + if in.PerDatabaseSettings != nil { + in, out := &in.PerDatabaseSettings, &out.PerDatabaseSettings + *out = make([]PerDatabaseSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = make([]SkuInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZoneRedundant != nil { + in, out := &in.ZoneRedundant, &out.ZoneRedundant + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLElasticPoolInitParameters. +func (in *MSSQLElasticPoolInitParameters) DeepCopy() *MSSQLElasticPoolInitParameters { + if in == nil { + return nil + } + out := new(MSSQLElasticPoolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLElasticPoolList) DeepCopyInto(out *MSSQLElasticPoolList) { *out = *in @@ -1496,6 +1960,7 @@ func (in *MSSQLElasticPoolSpec) DeepCopyInto(out *MSSQLElasticPoolSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLElasticPoolSpec. @@ -1552,6 +2017,53 @@ func (in *MSSQLFailoverGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLFailoverGroupInitParameters) DeepCopyInto(out *MSSQLFailoverGroupInitParameters) { + *out = *in + if in.PartnerServer != nil { + in, out := &in.PartnerServer, &out.PartnerServer + *out = make([]PartnerServerInitParameters, len(*in)) + copy(*out, *in) + } + if in.ReadWriteEndpointFailoverPolicy != nil { + in, out := &in.ReadWriteEndpointFailoverPolicy, &out.ReadWriteEndpointFailoverPolicy + *out = make([]ReadWriteEndpointFailoverPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ReadonlyEndpointFailoverPolicyEnabled != nil { + in, out := &in.ReadonlyEndpointFailoverPolicyEnabled, &out.ReadonlyEndpointFailoverPolicyEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLFailoverGroupInitParameters. +func (in *MSSQLFailoverGroupInitParameters) DeepCopy() *MSSQLFailoverGroupInitParameters { + if in == nil { + return nil + } + out := new(MSSQLFailoverGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLFailoverGroupList) DeepCopyInto(out *MSSQLFailoverGroupList) { *out = *in @@ -1746,6 +2258,7 @@ func (in *MSSQLFailoverGroupSpec) DeepCopyInto(out *MSSQLFailoverGroupSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLFailoverGroupSpec. @@ -1802,6 +2315,31 @@ func (in *MSSQLFirewallRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLFirewallRuleInitParameters) DeepCopyInto(out *MSSQLFirewallRuleInitParameters) { + *out = *in + if in.EndIPAddress != nil { + in, out := &in.EndIPAddress, &out.EndIPAddress + *out = new(string) + **out = **in + } + if in.StartIPAddress != nil { + in, out := &in.StartIPAddress, &out.StartIPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLFirewallRuleInitParameters. +func (in *MSSQLFirewallRuleInitParameters) DeepCopy() *MSSQLFirewallRuleInitParameters { + if in == nil { + return nil + } + out := new(MSSQLFirewallRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLFirewallRuleList) DeepCopyInto(out *MSSQLFirewallRuleList) { *out = *in @@ -1914,6 +2452,7 @@ func (in *MSSQLFirewallRuleSpec) DeepCopyInto(out *MSSQLFirewallRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLFirewallRuleSpec. @@ -1952,24 +2491,64 @@ func (in *MSSQLJobAgent) DeepCopyInto(out *MSSQLJobAgent) { in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLJobAgent. -func (in *MSSQLJobAgent) DeepCopy() *MSSQLJobAgent { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLJobAgent. +func (in *MSSQLJobAgent) DeepCopy() *MSSQLJobAgent { + if in == nil { + return nil + } + out := new(MSSQLJobAgent) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *MSSQLJobAgent) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLJobAgentInitParameters) DeepCopyInto(out *MSSQLJobAgentInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLJobAgentInitParameters. +func (in *MSSQLJobAgentInitParameters) DeepCopy() *MSSQLJobAgentInitParameters { if in == nil { return nil } - out := new(MSSQLJobAgent) + out := new(MSSQLJobAgentInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *MSSQLJobAgent) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLJobAgentList) DeepCopyInto(out *MSSQLJobAgentList) { *out = *in @@ -2112,6 +2691,7 @@ func (in *MSSQLJobAgentSpec) DeepCopyInto(out *MSSQLJobAgentSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLJobAgentSpec. @@ -2168,6 +2748,26 @@ func (in *MSSQLJobCredential) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLJobCredentialInitParameters) DeepCopyInto(out *MSSQLJobCredentialInitParameters) { + *out = *in + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLJobCredentialInitParameters. +func (in *MSSQLJobCredentialInitParameters) DeepCopy() *MSSQLJobCredentialInitParameters { + if in == nil { + return nil + } + out := new(MSSQLJobCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLJobCredentialList) DeepCopyInto(out *MSSQLJobCredentialList) { *out = *in @@ -2271,6 +2871,7 @@ func (in *MSSQLJobCredentialSpec) DeepCopyInto(out *MSSQLJobCredentialSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLJobCredentialSpec. @@ -2327,6 +2928,33 @@ func (in *MSSQLManagedDatabase) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLManagedDatabaseInitParameters) DeepCopyInto(out *MSSQLManagedDatabaseInitParameters) { + *out = *in + if in.LongTermRetentionPolicy != nil { + in, out := &in.LongTermRetentionPolicy, &out.LongTermRetentionPolicy + *out = make([]MSSQLManagedDatabaseLongTermRetentionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ShortTermRetentionDays != nil { + in, out := &in.ShortTermRetentionDays, &out.ShortTermRetentionDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedDatabaseInitParameters. +func (in *MSSQLManagedDatabaseInitParameters) DeepCopy() *MSSQLManagedDatabaseInitParameters { + if in == nil { + return nil + } + out := new(MSSQLManagedDatabaseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLManagedDatabaseList) DeepCopyInto(out *MSSQLManagedDatabaseList) { *out = *in @@ -2359,6 +2987,41 @@ func (in *MSSQLManagedDatabaseList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLManagedDatabaseLongTermRetentionPolicyInitParameters) DeepCopyInto(out *MSSQLManagedDatabaseLongTermRetentionPolicyInitParameters) { + *out = *in + if in.MonthlyRetention != nil { + in, out := &in.MonthlyRetention, &out.MonthlyRetention + *out = new(string) + **out = **in + } + if in.WeekOfYear != nil { + in, out := &in.WeekOfYear, &out.WeekOfYear + *out = new(float64) + **out = **in + } + if in.WeeklyRetention != nil { + in, out := &in.WeeklyRetention, &out.WeeklyRetention + *out = new(string) + **out = **in + } + if in.YearlyRetention != nil { + in, out := &in.YearlyRetention, &out.YearlyRetention + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedDatabaseLongTermRetentionPolicyInitParameters. +func (in *MSSQLManagedDatabaseLongTermRetentionPolicyInitParameters) DeepCopy() *MSSQLManagedDatabaseLongTermRetentionPolicyInitParameters { + if in == nil { + return nil + } + out := new(MSSQLManagedDatabaseLongTermRetentionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLManagedDatabaseLongTermRetentionPolicyObservation) DeepCopyInto(out *MSSQLManagedDatabaseLongTermRetentionPolicyObservation) { *out = *in @@ -2513,6 +3176,7 @@ func (in *MSSQLManagedDatabaseSpec) DeepCopyInto(out *MSSQLManagedDatabaseSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedDatabaseSpec. @@ -2596,6 +3260,41 @@ func (in *MSSQLManagedInstanceActiveDirectoryAdministrator) DeepCopyObject() run return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLManagedInstanceActiveDirectoryAdministratorInitParameters) DeepCopyInto(out *MSSQLManagedInstanceActiveDirectoryAdministratorInitParameters) { + *out = *in + if in.AzureadAuthenticationOnly != nil { + in, out := &in.AzureadAuthenticationOnly, &out.AzureadAuthenticationOnly + *out = new(bool) + **out = **in + } + if in.LoginUsername != nil { + in, out := &in.LoginUsername, &out.LoginUsername + *out = new(string) + **out = **in + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceActiveDirectoryAdministratorInitParameters. +func (in *MSSQLManagedInstanceActiveDirectoryAdministratorInitParameters) DeepCopy() *MSSQLManagedInstanceActiveDirectoryAdministratorInitParameters { + if in == nil { + return nil + } + out := new(MSSQLManagedInstanceActiveDirectoryAdministratorInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLManagedInstanceActiveDirectoryAdministratorList) DeepCopyInto(out *MSSQLManagedInstanceActiveDirectoryAdministratorList) { *out = *in @@ -2728,6 +3427,7 @@ func (in *MSSQLManagedInstanceActiveDirectoryAdministratorSpec) DeepCopyInto(out *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceActiveDirectoryAdministratorSpec. @@ -2784,6 +3484,33 @@ func (in *MSSQLManagedInstanceFailoverGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLManagedInstanceFailoverGroupInitParameters) DeepCopyInto(out *MSSQLManagedInstanceFailoverGroupInitParameters) { + *out = *in + if in.ReadWriteEndpointFailoverPolicy != nil { + in, out := &in.ReadWriteEndpointFailoverPolicy, &out.ReadWriteEndpointFailoverPolicy + *out = make([]MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ReadonlyEndpointFailoverPolicyEnabled != nil { + in, out := &in.ReadonlyEndpointFailoverPolicyEnabled, &out.ReadonlyEndpointFailoverPolicyEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceFailoverGroupInitParameters. +func (in *MSSQLManagedInstanceFailoverGroupInitParameters) DeepCopy() *MSSQLManagedInstanceFailoverGroupInitParameters { + if in == nil { + return nil + } + out := new(MSSQLManagedInstanceFailoverGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLManagedInstanceFailoverGroupList) DeepCopyInto(out *MSSQLManagedInstanceFailoverGroupList) { *out = *in @@ -2937,6 +3664,31 @@ func (in *MSSQLManagedInstanceFailoverGroupParameters) DeepCopy() *MSSQLManagedI return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyInitParameters) DeepCopyInto(out *MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyInitParameters) { + *out = *in + if in.GraceMinutes != nil { + in, out := &in.GraceMinutes, &out.GraceMinutes + *out = new(float64) + **out = **in + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyInitParameters. +func (in *MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyInitParameters) DeepCopy() *MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyInitParameters { + if in == nil { + return nil + } + out := new(MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyObservation) DeepCopyInto(out *MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyObservation) { *out = *in @@ -2992,6 +3744,7 @@ func (in *MSSQLManagedInstanceFailoverGroupSpec) DeepCopyInto(out *MSSQLManagedI *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceFailoverGroupSpec. @@ -3011,12 +3764,114 @@ func (in *MSSQLManagedInstanceFailoverGroupStatus) DeepCopyInto(out *MSSQLManage in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceFailoverGroupStatus. -func (in *MSSQLManagedInstanceFailoverGroupStatus) DeepCopy() *MSSQLManagedInstanceFailoverGroupStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceFailoverGroupStatus. +func (in *MSSQLManagedInstanceFailoverGroupStatus) DeepCopy() *MSSQLManagedInstanceFailoverGroupStatus { + if in == nil { + return nil + } + out := new(MSSQLManagedInstanceFailoverGroupStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLManagedInstanceInitParameters) DeepCopyInto(out *MSSQLManagedInstanceInitParameters) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LicenseType != nil { + in, out := &in.LicenseType, &out.LicenseType + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaintenanceConfigurationName != nil { + in, out := &in.MaintenanceConfigurationName, &out.MaintenanceConfigurationName + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ProxyOverride != nil { + in, out := &in.ProxyOverride, &out.ProxyOverride + *out = new(string) + **out = **in + } + if in.PublicDataEndpointEnabled != nil { + in, out := &in.PublicDataEndpointEnabled, &out.PublicDataEndpointEnabled + *out = new(bool) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.StorageAccountType != nil { + in, out := &in.StorageAccountType, &out.StorageAccountType + *out = new(string) + **out = **in + } + if in.StorageSizeInGb != nil { + in, out := &in.StorageSizeInGb, &out.StorageSizeInGb + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TimezoneID != nil { + in, out := &in.TimezoneID, &out.TimezoneID + *out = new(string) + **out = **in + } + if in.Vcores != nil { + in, out := &in.Vcores, &out.Vcores + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceInitParameters. +func (in *MSSQLManagedInstanceInitParameters) DeepCopy() *MSSQLManagedInstanceInitParameters { if in == nil { return nil } - out := new(MSSQLManagedInstanceFailoverGroupStatus) + out := new(MSSQLManagedInstanceInitParameters) in.DeepCopyInto(out) return out } @@ -3333,6 +4188,7 @@ func (in *MSSQLManagedInstanceSpec) DeepCopyInto(out *MSSQLManagedInstanceSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceSpec. @@ -3389,6 +4245,33 @@ func (in *MSSQLManagedInstanceVulnerabilityAssessment) DeepCopyObject() runtime. return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLManagedInstanceVulnerabilityAssessmentInitParameters) DeepCopyInto(out *MSSQLManagedInstanceVulnerabilityAssessmentInitParameters) { + *out = *in + if in.RecurringScans != nil { + in, out := &in.RecurringScans, &out.RecurringScans + *out = make([]RecurringScansInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageContainerPath != nil { + in, out := &in.StorageContainerPath, &out.StorageContainerPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceVulnerabilityAssessmentInitParameters. +func (in *MSSQLManagedInstanceVulnerabilityAssessmentInitParameters) DeepCopy() *MSSQLManagedInstanceVulnerabilityAssessmentInitParameters { + if in == nil { + return nil + } + out := new(MSSQLManagedInstanceVulnerabilityAssessmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLManagedInstanceVulnerabilityAssessmentList) DeepCopyInto(out *MSSQLManagedInstanceVulnerabilityAssessmentList) { *out = *in @@ -3515,6 +4398,7 @@ func (in *MSSQLManagedInstanceVulnerabilityAssessmentSpec) DeepCopyInto(out *MSS *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLManagedInstanceVulnerabilityAssessmentSpec. @@ -3571,6 +4455,21 @@ func (in *MSSQLOutboundFirewallRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLOutboundFirewallRuleInitParameters) DeepCopyInto(out *MSSQLOutboundFirewallRuleInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLOutboundFirewallRuleInitParameters. +func (in *MSSQLOutboundFirewallRuleInitParameters) DeepCopy() *MSSQLOutboundFirewallRuleInitParameters { + if in == nil { + return nil + } + out := new(MSSQLOutboundFirewallRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLOutboundFirewallRuleList) DeepCopyInto(out *MSSQLOutboundFirewallRuleList) { *out = *in @@ -3663,6 +4562,7 @@ func (in *MSSQLOutboundFirewallRuleSpec) DeepCopyInto(out *MSSQLOutboundFirewall *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLOutboundFirewallRuleSpec. @@ -3746,6 +4646,21 @@ func (in *MSSQLServerDNSAlias) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLServerDNSAliasInitParameters) DeepCopyInto(out *MSSQLServerDNSAliasInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerDNSAliasInitParameters. +func (in *MSSQLServerDNSAliasInitParameters) DeepCopy() *MSSQLServerDNSAliasInitParameters { + if in == nil { + return nil + } + out := new(MSSQLServerDNSAliasInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLServerDNSAliasList) DeepCopyInto(out *MSSQLServerDNSAliasList) { *out = *in @@ -3843,6 +4758,7 @@ func (in *MSSQLServerDNSAliasSpec) DeepCopyInto(out *MSSQLServerDNSAliasSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + out.InitProvider = in.InitProvider } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerDNSAliasSpec. @@ -3872,6 +4788,37 @@ func (in *MSSQLServerDNSAliasStatus) DeepCopy() *MSSQLServerDNSAliasStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLServerIdentityInitParameters) DeepCopyInto(out *MSSQLServerIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerIdentityInitParameters. +func (in *MSSQLServerIdentityInitParameters) DeepCopy() *MSSQLServerIdentityInitParameters { + if in == nil { + return nil + } + out := new(MSSQLServerIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLServerIdentityObservation) DeepCopyInto(out *MSSQLServerIdentityObservation) { *out = *in @@ -3944,6 +4891,85 @@ func (in *MSSQLServerIdentityParameters) DeepCopy() *MSSQLServerIdentityParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLServerInitParameters) DeepCopyInto(out *MSSQLServerInitParameters) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AzureadAdministrator != nil { + in, out := &in.AzureadAdministrator, &out.AzureadAdministrator + *out = make([]AzureadAdministratorInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConnectionPolicy != nil { + in, out := &in.ConnectionPolicy, &out.ConnectionPolicy + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]MSSQLServerIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.OutboundNetworkRestrictionEnabled != nil { + in, out := &in.OutboundNetworkRestrictionEnabled, &out.OutboundNetworkRestrictionEnabled + *out = new(bool) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerInitParameters. +func (in *MSSQLServerInitParameters) DeepCopy() *MSSQLServerInitParameters { + if in == nil { + return nil + } + out := new(MSSQLServerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLServerList) DeepCopyInto(out *MSSQLServerList) { *out = *in @@ -4003,6 +5029,31 @@ func (in *MSSQLServerMicrosoftSupportAuditingPolicy) DeepCopyObject() runtime.Ob return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLServerMicrosoftSupportAuditingPolicyInitParameters) DeepCopyInto(out *MSSQLServerMicrosoftSupportAuditingPolicyInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.LogMonitoringEnabled != nil { + in, out := &in.LogMonitoringEnabled, &out.LogMonitoringEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerMicrosoftSupportAuditingPolicyInitParameters. +func (in *MSSQLServerMicrosoftSupportAuditingPolicyInitParameters) DeepCopy() *MSSQLServerMicrosoftSupportAuditingPolicyInitParameters { + if in == nil { + return nil + } + out := new(MSSQLServerMicrosoftSupportAuditingPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLServerMicrosoftSupportAuditingPolicyList) DeepCopyInto(out *MSSQLServerMicrosoftSupportAuditingPolicyList) { *out = *in @@ -4145,6 +5196,7 @@ func (in *MSSQLServerMicrosoftSupportAuditingPolicySpec) DeepCopyInto(out *MSSQL *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerMicrosoftSupportAuditingPolicySpec. @@ -4445,6 +5497,58 @@ func (in *MSSQLServerSecurityAlertPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLServerSecurityAlertPolicyInitParameters) DeepCopyInto(out *MSSQLServerSecurityAlertPolicyInitParameters) { + *out = *in + if in.DisabledAlerts != nil { + in, out := &in.DisabledAlerts, &out.DisabledAlerts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EmailAccountAdmins != nil { + in, out := &in.EmailAccountAdmins, &out.EmailAccountAdmins + *out = new(bool) + **out = **in + } + if in.EmailAddresses != nil { + in, out := &in.EmailAddresses, &out.EmailAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RetentionDays != nil { + in, out := &in.RetentionDays, &out.RetentionDays + *out = new(float64) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerSecurityAlertPolicyInitParameters. +func (in *MSSQLServerSecurityAlertPolicyInitParameters) DeepCopy() *MSSQLServerSecurityAlertPolicyInitParameters { + if in == nil { + return nil + } + out := new(MSSQLServerSecurityAlertPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLServerSecurityAlertPolicyList) DeepCopyInto(out *MSSQLServerSecurityAlertPolicyList) { *out = *in @@ -4656,6 +5760,7 @@ func (in *MSSQLServerSecurityAlertPolicySpec) DeepCopyInto(out *MSSQLServerSecur *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerSecurityAlertPolicySpec. @@ -4690,6 +5795,7 @@ func (in *MSSQLServerSpec) DeepCopyInto(out *MSSQLServerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerSpec. @@ -4746,6 +5852,26 @@ func (in *MSSQLServerTransparentDataEncryption) DeepCopyObject() runtime.Object return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLServerTransparentDataEncryptionInitParameters) DeepCopyInto(out *MSSQLServerTransparentDataEncryptionInitParameters) { + *out = *in + if in.AutoRotationEnabled != nil { + in, out := &in.AutoRotationEnabled, &out.AutoRotationEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerTransparentDataEncryptionInitParameters. +func (in *MSSQLServerTransparentDataEncryptionInitParameters) DeepCopy() *MSSQLServerTransparentDataEncryptionInitParameters { + if in == nil { + return nil + } + out := new(MSSQLServerTransparentDataEncryptionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLServerTransparentDataEncryptionList) DeepCopyInto(out *MSSQLServerTransparentDataEncryptionList) { *out = *in @@ -4868,6 +5994,7 @@ func (in *MSSQLServerTransparentDataEncryptionSpec) DeepCopyInto(out *MSSQLServe *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerTransparentDataEncryptionSpec. @@ -4921,7 +6048,34 @@ func (in *MSSQLServerVulnerabilityAssessment) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } - return nil + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLServerVulnerabilityAssessmentInitParameters) DeepCopyInto(out *MSSQLServerVulnerabilityAssessmentInitParameters) { + *out = *in + if in.RecurringScans != nil { + in, out := &in.RecurringScans, &out.RecurringScans + *out = make([]MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageContainerPath != nil { + in, out := &in.StorageContainerPath, &out.StorageContainerPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerVulnerabilityAssessmentInitParameters. +func (in *MSSQLServerVulnerabilityAssessmentInitParameters) DeepCopy() *MSSQLServerVulnerabilityAssessmentInitParameters { + if in == nil { + return nil + } + out := new(MSSQLServerVulnerabilityAssessmentInitParameters) + in.DeepCopyInto(out) + return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. @@ -5045,6 +6199,42 @@ func (in *MSSQLServerVulnerabilityAssessmentParameters) DeepCopy() *MSSQLServerV return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters) DeepCopyInto(out *MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters) { + *out = *in + if in.EmailSubscriptionAdmins != nil { + in, out := &in.EmailSubscriptionAdmins, &out.EmailSubscriptionAdmins + *out = new(bool) + **out = **in + } + if in.Emails != nil { + in, out := &in.Emails, &out.Emails + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters. +func (in *MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters) DeepCopy() *MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters { + if in == nil { + return nil + } + out := new(MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLServerVulnerabilityAssessmentRecurringScansObservation) DeepCopyInto(out *MSSQLServerVulnerabilityAssessmentRecurringScansObservation) { *out = *in @@ -5122,6 +6312,7 @@ func (in *MSSQLServerVulnerabilityAssessmentSpec) DeepCopyInto(out *MSSQLServerV *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLServerVulnerabilityAssessmentSpec. @@ -5178,6 +6369,26 @@ func (in *MSSQLVirtualNetworkRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MSSQLVirtualNetworkRuleInitParameters) DeepCopyInto(out *MSSQLVirtualNetworkRuleInitParameters) { + *out = *in + if in.IgnoreMissingVnetServiceEndpoint != nil { + in, out := &in.IgnoreMissingVnetServiceEndpoint, &out.IgnoreMissingVnetServiceEndpoint + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLVirtualNetworkRuleInitParameters. +func (in *MSSQLVirtualNetworkRuleInitParameters) DeepCopy() *MSSQLVirtualNetworkRuleInitParameters { + if in == nil { + return nil + } + out := new(MSSQLVirtualNetworkRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MSSQLVirtualNetworkRuleList) DeepCopyInto(out *MSSQLVirtualNetworkRuleList) { *out = *in @@ -5300,6 +6511,7 @@ func (in *MSSQLVirtualNetworkRuleSpec) DeepCopyInto(out *MSSQLVirtualNetworkRule *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MSSQLVirtualNetworkRuleSpec. @@ -5329,6 +6541,21 @@ func (in *MSSQLVirtualNetworkRuleStatus) DeepCopy() *MSSQLVirtualNetworkRuleStat return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PartnerRegionInitParameters) DeepCopyInto(out *PartnerRegionInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PartnerRegionInitParameters. +func (in *PartnerRegionInitParameters) DeepCopy() *PartnerRegionInitParameters { + if in == nil { + return nil + } + out := new(PartnerRegionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PartnerRegionObservation) DeepCopyInto(out *PartnerRegionObservation) { *out = *in @@ -5369,6 +6596,21 @@ func (in *PartnerRegionParameters) DeepCopy() *PartnerRegionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PartnerServerInitParameters) DeepCopyInto(out *PartnerServerInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PartnerServerInitParameters. +func (in *PartnerServerInitParameters) DeepCopy() *PartnerServerInitParameters { + if in == nil { + return nil + } + out := new(PartnerServerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PartnerServerObservation) DeepCopyInto(out *PartnerServerObservation) { *out = *in @@ -5429,6 +6671,31 @@ func (in *PartnerServerParameters) DeepCopy() *PartnerServerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PerDatabaseSettingsInitParameters) DeepCopyInto(out *PerDatabaseSettingsInitParameters) { + *out = *in + if in.MaxCapacity != nil { + in, out := &in.MaxCapacity, &out.MaxCapacity + *out = new(float64) + **out = **in + } + if in.MinCapacity != nil { + in, out := &in.MinCapacity, &out.MinCapacity + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerDatabaseSettingsInitParameters. +func (in *PerDatabaseSettingsInitParameters) DeepCopy() *PerDatabaseSettingsInitParameters { + if in == nil { + return nil + } + out := new(PerDatabaseSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PerDatabaseSettingsObservation) DeepCopyInto(out *PerDatabaseSettingsObservation) { *out = *in @@ -5479,6 +6746,31 @@ func (in *PerDatabaseSettingsParameters) DeepCopy() *PerDatabaseSettingsParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReadWriteEndpointFailoverPolicyInitParameters) DeepCopyInto(out *ReadWriteEndpointFailoverPolicyInitParameters) { + *out = *in + if in.GraceMinutes != nil { + in, out := &in.GraceMinutes, &out.GraceMinutes + *out = new(float64) + **out = **in + } + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReadWriteEndpointFailoverPolicyInitParameters. +func (in *ReadWriteEndpointFailoverPolicyInitParameters) DeepCopy() *ReadWriteEndpointFailoverPolicyInitParameters { + if in == nil { + return nil + } + out := new(ReadWriteEndpointFailoverPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ReadWriteEndpointFailoverPolicyObservation) DeepCopyInto(out *ReadWriteEndpointFailoverPolicyObservation) { *out = *in @@ -5529,6 +6821,42 @@ func (in *ReadWriteEndpointFailoverPolicyParameters) DeepCopy() *ReadWriteEndpoi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecurringScansInitParameters) DeepCopyInto(out *RecurringScansInitParameters) { + *out = *in + if in.EmailSubscriptionAdmins != nil { + in, out := &in.EmailSubscriptionAdmins, &out.EmailSubscriptionAdmins + *out = new(bool) + **out = **in + } + if in.Emails != nil { + in, out := &in.Emails, &out.Emails + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurringScansInitParameters. +func (in *RecurringScansInitParameters) DeepCopy() *RecurringScansInitParameters { + if in == nil { + return nil + } + out := new(RecurringScansInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecurringScansObservation) DeepCopyInto(out *RecurringScansObservation) { *out = *in @@ -5601,6 +6929,31 @@ func (in *RecurringScansParameters) DeepCopy() *RecurringScansParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ShortTermRetentionPolicyInitParameters) DeepCopyInto(out *ShortTermRetentionPolicyInitParameters) { + *out = *in + if in.BackupIntervalInHours != nil { + in, out := &in.BackupIntervalInHours, &out.BackupIntervalInHours + *out = new(float64) + **out = **in + } + if in.RetentionDays != nil { + in, out := &in.RetentionDays, &out.RetentionDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShortTermRetentionPolicyInitParameters. +func (in *ShortTermRetentionPolicyInitParameters) DeepCopy() *ShortTermRetentionPolicyInitParameters { + if in == nil { + return nil + } + out := new(ShortTermRetentionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ShortTermRetentionPolicyObservation) DeepCopyInto(out *ShortTermRetentionPolicyObservation) { *out = *in @@ -5651,6 +7004,41 @@ func (in *ShortTermRetentionPolicyParameters) DeepCopy() *ShortTermRetentionPoli return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuInitParameters) DeepCopyInto(out *SkuInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Family != nil { + in, out := &in.Family, &out.Family + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuInitParameters. +func (in *SkuInitParameters) DeepCopy() *SkuInitParameters { + if in == nil { + return nil + } + out := new(SkuInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SkuObservation) DeepCopyInto(out *SkuObservation) { *out = *in @@ -5721,6 +7109,63 @@ func (in *SkuParameters) DeepCopy() *SkuParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ThreatDetectionPolicyInitParameters) DeepCopyInto(out *ThreatDetectionPolicyInitParameters) { + *out = *in + if in.DisabledAlerts != nil { + in, out := &in.DisabledAlerts, &out.DisabledAlerts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EmailAccountAdmins != nil { + in, out := &in.EmailAccountAdmins, &out.EmailAccountAdmins + *out = new(string) + **out = **in + } + if in.EmailAddresses != nil { + in, out := &in.EmailAddresses, &out.EmailAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.RetentionDays != nil { + in, out := &in.RetentionDays, &out.RetentionDays + *out = new(float64) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } + if in.StorageEndpoint != nil { + in, out := &in.StorageEndpoint, &out.StorageEndpoint + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThreatDetectionPolicyInitParameters. +func (in *ThreatDetectionPolicyInitParameters) DeepCopy() *ThreatDetectionPolicyInitParameters { + if in == nil { + return nil + } + out := new(ThreatDetectionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ThreatDetectionPolicyObservation) DeepCopyInto(out *ThreatDetectionPolicyObservation) { *out = *in diff --git a/apis/sql/v1beta1/zz_generated.managed.go b/apis/sql/v1beta1/zz_generated.managed.go index 15c30930e..127db777a 100644 --- a/apis/sql/v1beta1/zz_generated.managed.go +++ b/apis/sql/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *MSSQLDatabase) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLDatabase. -func (mg *MSSQLDatabase) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLDatabase. +func (mg *MSSQLDatabase) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLDatabase. @@ -55,9 +55,9 @@ func (mg *MSSQLDatabase) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLDatabase. -func (mg *MSSQLDatabase) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLDatabase. +func (mg *MSSQLDatabase) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLDatabase. @@ -93,9 +93,9 @@ func (mg *MSSQLDatabaseExtendedAuditingPolicy) GetDeletionPolicy() xpv1.Deletion return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLDatabaseExtendedAuditingPolicy. -func (mg *MSSQLDatabaseExtendedAuditingPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLDatabaseExtendedAuditingPolicy. +func (mg *MSSQLDatabaseExtendedAuditingPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLDatabaseExtendedAuditingPolicy. @@ -131,9 +131,9 @@ func (mg *MSSQLDatabaseExtendedAuditingPolicy) SetDeletionPolicy(r xpv1.Deletion mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLDatabaseExtendedAuditingPolicy. -func (mg *MSSQLDatabaseExtendedAuditingPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLDatabaseExtendedAuditingPolicy. +func (mg *MSSQLDatabaseExtendedAuditingPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLDatabaseExtendedAuditingPolicy. @@ -169,9 +169,9 @@ func (mg *MSSQLDatabaseVulnerabilityAssessmentRuleBaseline) GetDeletionPolicy() return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLDatabaseVulnerabilityAssessmentRuleBaseline. -func (mg *MSSQLDatabaseVulnerabilityAssessmentRuleBaseline) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLDatabaseVulnerabilityAssessmentRuleBaseline. +func (mg *MSSQLDatabaseVulnerabilityAssessmentRuleBaseline) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLDatabaseVulnerabilityAssessmentRuleBaseline. @@ -207,9 +207,9 @@ func (mg *MSSQLDatabaseVulnerabilityAssessmentRuleBaseline) SetDeletionPolicy(r mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLDatabaseVulnerabilityAssessmentRuleBaseline. -func (mg *MSSQLDatabaseVulnerabilityAssessmentRuleBaseline) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLDatabaseVulnerabilityAssessmentRuleBaseline. +func (mg *MSSQLDatabaseVulnerabilityAssessmentRuleBaseline) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLDatabaseVulnerabilityAssessmentRuleBaseline. @@ -245,9 +245,9 @@ func (mg *MSSQLElasticPool) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLElasticPool. -func (mg *MSSQLElasticPool) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLElasticPool. +func (mg *MSSQLElasticPool) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLElasticPool. @@ -283,9 +283,9 @@ func (mg *MSSQLElasticPool) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLElasticPool. -func (mg *MSSQLElasticPool) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLElasticPool. +func (mg *MSSQLElasticPool) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLElasticPool. @@ -321,9 +321,9 @@ func (mg *MSSQLFailoverGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLFailoverGroup. -func (mg *MSSQLFailoverGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLFailoverGroup. +func (mg *MSSQLFailoverGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLFailoverGroup. @@ -359,9 +359,9 @@ func (mg *MSSQLFailoverGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLFailoverGroup. -func (mg *MSSQLFailoverGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLFailoverGroup. +func (mg *MSSQLFailoverGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLFailoverGroup. @@ -397,9 +397,9 @@ func (mg *MSSQLFirewallRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLFirewallRule. -func (mg *MSSQLFirewallRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLFirewallRule. +func (mg *MSSQLFirewallRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLFirewallRule. @@ -435,9 +435,9 @@ func (mg *MSSQLFirewallRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLFirewallRule. -func (mg *MSSQLFirewallRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLFirewallRule. +func (mg *MSSQLFirewallRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLFirewallRule. @@ -473,9 +473,9 @@ func (mg *MSSQLJobAgent) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLJobAgent. -func (mg *MSSQLJobAgent) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLJobAgent. +func (mg *MSSQLJobAgent) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLJobAgent. @@ -511,9 +511,9 @@ func (mg *MSSQLJobAgent) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLJobAgent. -func (mg *MSSQLJobAgent) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLJobAgent. +func (mg *MSSQLJobAgent) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLJobAgent. @@ -549,9 +549,9 @@ func (mg *MSSQLJobCredential) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLJobCredential. -func (mg *MSSQLJobCredential) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLJobCredential. +func (mg *MSSQLJobCredential) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLJobCredential. @@ -587,9 +587,9 @@ func (mg *MSSQLJobCredential) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLJobCredential. -func (mg *MSSQLJobCredential) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLJobCredential. +func (mg *MSSQLJobCredential) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLJobCredential. @@ -625,9 +625,9 @@ func (mg *MSSQLManagedDatabase) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLManagedDatabase. -func (mg *MSSQLManagedDatabase) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLManagedDatabase. +func (mg *MSSQLManagedDatabase) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLManagedDatabase. @@ -663,9 +663,9 @@ func (mg *MSSQLManagedDatabase) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLManagedDatabase. -func (mg *MSSQLManagedDatabase) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLManagedDatabase. +func (mg *MSSQLManagedDatabase) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLManagedDatabase. @@ -701,9 +701,9 @@ func (mg *MSSQLManagedInstance) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLManagedInstance. -func (mg *MSSQLManagedInstance) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLManagedInstance. +func (mg *MSSQLManagedInstance) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLManagedInstance. @@ -739,9 +739,9 @@ func (mg *MSSQLManagedInstance) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLManagedInstance. -func (mg *MSSQLManagedInstance) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLManagedInstance. +func (mg *MSSQLManagedInstance) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLManagedInstance. @@ -777,9 +777,9 @@ func (mg *MSSQLManagedInstanceActiveDirectoryAdministrator) GetDeletionPolicy() return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLManagedInstanceActiveDirectoryAdministrator. -func (mg *MSSQLManagedInstanceActiveDirectoryAdministrator) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLManagedInstanceActiveDirectoryAdministrator. +func (mg *MSSQLManagedInstanceActiveDirectoryAdministrator) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLManagedInstanceActiveDirectoryAdministrator. @@ -815,9 +815,9 @@ func (mg *MSSQLManagedInstanceActiveDirectoryAdministrator) SetDeletionPolicy(r mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLManagedInstanceActiveDirectoryAdministrator. -func (mg *MSSQLManagedInstanceActiveDirectoryAdministrator) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLManagedInstanceActiveDirectoryAdministrator. +func (mg *MSSQLManagedInstanceActiveDirectoryAdministrator) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLManagedInstanceActiveDirectoryAdministrator. @@ -853,9 +853,9 @@ func (mg *MSSQLManagedInstanceFailoverGroup) GetDeletionPolicy() xpv1.DeletionPo return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLManagedInstanceFailoverGroup. -func (mg *MSSQLManagedInstanceFailoverGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLManagedInstanceFailoverGroup. +func (mg *MSSQLManagedInstanceFailoverGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLManagedInstanceFailoverGroup. @@ -891,9 +891,9 @@ func (mg *MSSQLManagedInstanceFailoverGroup) SetDeletionPolicy(r xpv1.DeletionPo mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLManagedInstanceFailoverGroup. -func (mg *MSSQLManagedInstanceFailoverGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLManagedInstanceFailoverGroup. +func (mg *MSSQLManagedInstanceFailoverGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLManagedInstanceFailoverGroup. @@ -929,9 +929,9 @@ func (mg *MSSQLManagedInstanceVulnerabilityAssessment) GetDeletionPolicy() xpv1. return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLManagedInstanceVulnerabilityAssessment. -func (mg *MSSQLManagedInstanceVulnerabilityAssessment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLManagedInstanceVulnerabilityAssessment. +func (mg *MSSQLManagedInstanceVulnerabilityAssessment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLManagedInstanceVulnerabilityAssessment. @@ -967,9 +967,9 @@ func (mg *MSSQLManagedInstanceVulnerabilityAssessment) SetDeletionPolicy(r xpv1. mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLManagedInstanceVulnerabilityAssessment. -func (mg *MSSQLManagedInstanceVulnerabilityAssessment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLManagedInstanceVulnerabilityAssessment. +func (mg *MSSQLManagedInstanceVulnerabilityAssessment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLManagedInstanceVulnerabilityAssessment. @@ -1005,9 +1005,9 @@ func (mg *MSSQLOutboundFirewallRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLOutboundFirewallRule. -func (mg *MSSQLOutboundFirewallRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLOutboundFirewallRule. +func (mg *MSSQLOutboundFirewallRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLOutboundFirewallRule. @@ -1043,9 +1043,9 @@ func (mg *MSSQLOutboundFirewallRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLOutboundFirewallRule. -func (mg *MSSQLOutboundFirewallRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLOutboundFirewallRule. +func (mg *MSSQLOutboundFirewallRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLOutboundFirewallRule. @@ -1081,9 +1081,9 @@ func (mg *MSSQLServer) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLServer. -func (mg *MSSQLServer) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLServer. +func (mg *MSSQLServer) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLServer. @@ -1119,9 +1119,9 @@ func (mg *MSSQLServer) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLServer. -func (mg *MSSQLServer) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLServer. +func (mg *MSSQLServer) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLServer. @@ -1157,9 +1157,9 @@ func (mg *MSSQLServerDNSAlias) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLServerDNSAlias. -func (mg *MSSQLServerDNSAlias) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLServerDNSAlias. +func (mg *MSSQLServerDNSAlias) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLServerDNSAlias. @@ -1195,9 +1195,9 @@ func (mg *MSSQLServerDNSAlias) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLServerDNSAlias. -func (mg *MSSQLServerDNSAlias) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLServerDNSAlias. +func (mg *MSSQLServerDNSAlias) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLServerDNSAlias. @@ -1233,9 +1233,9 @@ func (mg *MSSQLServerMicrosoftSupportAuditingPolicy) GetDeletionPolicy() xpv1.De return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLServerMicrosoftSupportAuditingPolicy. -func (mg *MSSQLServerMicrosoftSupportAuditingPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLServerMicrosoftSupportAuditingPolicy. +func (mg *MSSQLServerMicrosoftSupportAuditingPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLServerMicrosoftSupportAuditingPolicy. @@ -1271,9 +1271,9 @@ func (mg *MSSQLServerMicrosoftSupportAuditingPolicy) SetDeletionPolicy(r xpv1.De mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLServerMicrosoftSupportAuditingPolicy. -func (mg *MSSQLServerMicrosoftSupportAuditingPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLServerMicrosoftSupportAuditingPolicy. +func (mg *MSSQLServerMicrosoftSupportAuditingPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLServerMicrosoftSupportAuditingPolicy. @@ -1309,9 +1309,9 @@ func (mg *MSSQLServerSecurityAlertPolicy) GetDeletionPolicy() xpv1.DeletionPolic return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLServerSecurityAlertPolicy. -func (mg *MSSQLServerSecurityAlertPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLServerSecurityAlertPolicy. +func (mg *MSSQLServerSecurityAlertPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLServerSecurityAlertPolicy. @@ -1347,9 +1347,9 @@ func (mg *MSSQLServerSecurityAlertPolicy) SetDeletionPolicy(r xpv1.DeletionPolic mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLServerSecurityAlertPolicy. -func (mg *MSSQLServerSecurityAlertPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLServerSecurityAlertPolicy. +func (mg *MSSQLServerSecurityAlertPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLServerSecurityAlertPolicy. @@ -1385,9 +1385,9 @@ func (mg *MSSQLServerTransparentDataEncryption) GetDeletionPolicy() xpv1.Deletio return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLServerTransparentDataEncryption. -func (mg *MSSQLServerTransparentDataEncryption) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLServerTransparentDataEncryption. +func (mg *MSSQLServerTransparentDataEncryption) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLServerTransparentDataEncryption. @@ -1423,9 +1423,9 @@ func (mg *MSSQLServerTransparentDataEncryption) SetDeletionPolicy(r xpv1.Deletio mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLServerTransparentDataEncryption. -func (mg *MSSQLServerTransparentDataEncryption) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLServerTransparentDataEncryption. +func (mg *MSSQLServerTransparentDataEncryption) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLServerTransparentDataEncryption. @@ -1461,9 +1461,9 @@ func (mg *MSSQLServerVulnerabilityAssessment) GetDeletionPolicy() xpv1.DeletionP return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLServerVulnerabilityAssessment. -func (mg *MSSQLServerVulnerabilityAssessment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLServerVulnerabilityAssessment. +func (mg *MSSQLServerVulnerabilityAssessment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLServerVulnerabilityAssessment. @@ -1499,9 +1499,9 @@ func (mg *MSSQLServerVulnerabilityAssessment) SetDeletionPolicy(r xpv1.DeletionP mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLServerVulnerabilityAssessment. -func (mg *MSSQLServerVulnerabilityAssessment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLServerVulnerabilityAssessment. +func (mg *MSSQLServerVulnerabilityAssessment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLServerVulnerabilityAssessment. @@ -1537,9 +1537,9 @@ func (mg *MSSQLVirtualNetworkRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this MSSQLVirtualNetworkRule. -func (mg *MSSQLVirtualNetworkRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this MSSQLVirtualNetworkRule. +func (mg *MSSQLVirtualNetworkRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this MSSQLVirtualNetworkRule. @@ -1575,9 +1575,9 @@ func (mg *MSSQLVirtualNetworkRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this MSSQLVirtualNetworkRule. -func (mg *MSSQLVirtualNetworkRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this MSSQLVirtualNetworkRule. +func (mg *MSSQLVirtualNetworkRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this MSSQLVirtualNetworkRule. diff --git a/apis/sql/v1beta1/zz_generated_terraformed.go b/apis/sql/v1beta1/zz_generated_terraformed.go index ed196eba6..7d587fa9d 100755 --- a/apis/sql/v1beta1/zz_generated_terraformed.go +++ b/apis/sql/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *MSSQLDatabase) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLDatabase +func (tr *MSSQLDatabase) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLDatabase using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLDatabase) LateInitialize(attrs []byte) (bool, error) { @@ -145,6 +155,16 @@ func (tr *MSSQLDatabaseExtendedAuditingPolicy) SetParameters(params map[string]a return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLDatabaseExtendedAuditingPolicy +func (tr *MSSQLDatabaseExtendedAuditingPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLDatabaseExtendedAuditingPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLDatabaseExtendedAuditingPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -219,6 +239,16 @@ func (tr *MSSQLDatabaseVulnerabilityAssessmentRuleBaseline) SetParameters(params return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLDatabaseVulnerabilityAssessmentRuleBaseline +func (tr *MSSQLDatabaseVulnerabilityAssessmentRuleBaseline) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLDatabaseVulnerabilityAssessmentRuleBaseline using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLDatabaseVulnerabilityAssessmentRuleBaseline) LateInitialize(attrs []byte) (bool, error) { @@ -293,6 +323,16 @@ func (tr *MSSQLElasticPool) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLElasticPool +func (tr *MSSQLElasticPool) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLElasticPool using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLElasticPool) LateInitialize(attrs []byte) (bool, error) { @@ -368,6 +408,16 @@ func (tr *MSSQLFailoverGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLFailoverGroup +func (tr *MSSQLFailoverGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLFailoverGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLFailoverGroup) LateInitialize(attrs []byte) (bool, error) { @@ -442,6 +492,16 @@ func (tr *MSSQLFirewallRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLFirewallRule +func (tr *MSSQLFirewallRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLFirewallRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLFirewallRule) LateInitialize(attrs []byte) (bool, error) { @@ -516,6 +576,16 @@ func (tr *MSSQLJobAgent) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLJobAgent +func (tr *MSSQLJobAgent) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLJobAgent using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLJobAgent) LateInitialize(attrs []byte) (bool, error) { @@ -590,6 +660,16 @@ func (tr *MSSQLJobCredential) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLJobCredential +func (tr *MSSQLJobCredential) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLJobCredential using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLJobCredential) LateInitialize(attrs []byte) (bool, error) { @@ -664,6 +744,16 @@ func (tr *MSSQLManagedDatabase) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLManagedDatabase +func (tr *MSSQLManagedDatabase) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLManagedDatabase using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLManagedDatabase) LateInitialize(attrs []byte) (bool, error) { @@ -738,6 +828,16 @@ func (tr *MSSQLManagedInstance) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLManagedInstance +func (tr *MSSQLManagedInstance) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLManagedInstance using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLManagedInstance) LateInitialize(attrs []byte) (bool, error) { @@ -812,6 +912,16 @@ func (tr *MSSQLManagedInstanceActiveDirectoryAdministrator) SetParameters(params return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLManagedInstanceActiveDirectoryAdministrator +func (tr *MSSQLManagedInstanceActiveDirectoryAdministrator) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLManagedInstanceActiveDirectoryAdministrator using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLManagedInstanceActiveDirectoryAdministrator) LateInitialize(attrs []byte) (bool, error) { @@ -886,6 +996,16 @@ func (tr *MSSQLManagedInstanceFailoverGroup) SetParameters(params map[string]any return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLManagedInstanceFailoverGroup +func (tr *MSSQLManagedInstanceFailoverGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLManagedInstanceFailoverGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLManagedInstanceFailoverGroup) LateInitialize(attrs []byte) (bool, error) { @@ -960,6 +1080,16 @@ func (tr *MSSQLManagedInstanceVulnerabilityAssessment) SetParameters(params map[ return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLManagedInstanceVulnerabilityAssessment +func (tr *MSSQLManagedInstanceVulnerabilityAssessment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLManagedInstanceVulnerabilityAssessment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLManagedInstanceVulnerabilityAssessment) LateInitialize(attrs []byte) (bool, error) { @@ -1034,6 +1164,16 @@ func (tr *MSSQLOutboundFirewallRule) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLOutboundFirewallRule +func (tr *MSSQLOutboundFirewallRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLOutboundFirewallRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLOutboundFirewallRule) LateInitialize(attrs []byte) (bool, error) { @@ -1108,6 +1248,16 @@ func (tr *MSSQLServer) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLServer +func (tr *MSSQLServer) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLServer using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLServer) LateInitialize(attrs []byte) (bool, error) { @@ -1182,6 +1332,16 @@ func (tr *MSSQLServerDNSAlias) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLServerDNSAlias +func (tr *MSSQLServerDNSAlias) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLServerDNSAlias using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLServerDNSAlias) LateInitialize(attrs []byte) (bool, error) { @@ -1256,6 +1416,16 @@ func (tr *MSSQLServerMicrosoftSupportAuditingPolicy) SetParameters(params map[st return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLServerMicrosoftSupportAuditingPolicy +func (tr *MSSQLServerMicrosoftSupportAuditingPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLServerMicrosoftSupportAuditingPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLServerMicrosoftSupportAuditingPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -1330,6 +1500,16 @@ func (tr *MSSQLServerSecurityAlertPolicy) SetParameters(params map[string]any) e return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLServerSecurityAlertPolicy +func (tr *MSSQLServerSecurityAlertPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLServerSecurityAlertPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLServerSecurityAlertPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -1404,6 +1584,16 @@ func (tr *MSSQLServerTransparentDataEncryption) SetParameters(params map[string] return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLServerTransparentDataEncryption +func (tr *MSSQLServerTransparentDataEncryption) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLServerTransparentDataEncryption using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLServerTransparentDataEncryption) LateInitialize(attrs []byte) (bool, error) { @@ -1478,6 +1668,16 @@ func (tr *MSSQLServerVulnerabilityAssessment) SetParameters(params map[string]an return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLServerVulnerabilityAssessment +func (tr *MSSQLServerVulnerabilityAssessment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLServerVulnerabilityAssessment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLServerVulnerabilityAssessment) LateInitialize(attrs []byte) (bool, error) { @@ -1552,6 +1752,16 @@ func (tr *MSSQLVirtualNetworkRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this MSSQLVirtualNetworkRule +func (tr *MSSQLVirtualNetworkRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this MSSQLVirtualNetworkRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *MSSQLVirtualNetworkRule) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/sql/v1beta1/zz_mssqldatabase_types.go b/apis/sql/v1beta1/zz_mssqldatabase_types.go index e5a82f3aa..4db1bd6fd 100755 --- a/apis/sql/v1beta1/zz_mssqldatabase_types.go +++ b/apis/sql/v1beta1/zz_mssqldatabase_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ImportInitParameters struct { + + // Specifies the name of the SQL administrator. + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` + + // Specifies the type of authentication used to access the server. Valid values are SQL or ADPassword. + AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` + + // The resource id for the storage account used to store BACPAC file. If set, private endpoint connection will be created for the storage account. Must match storage account used for storage_uri parameter. + StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` + + // Specifies the type of access key for the storage account. Valid values are StorageAccessKey or SharedAccessKey. + StorageKeyType *string `json:"storageKeyType,omitempty" tf:"storage_key_type,omitempty"` + + // Specifies the blob URI of the .bacpac file. + StorageURI *string `json:"storageUri,omitempty" tf:"storage_uri,omitempty"` +} + type ImportObservation struct { // Specifies the name of the SQL administrator. @@ -34,16 +52,16 @@ type ImportObservation struct { type ImportParameters struct { // Specifies the name of the SQL administrator. - // +kubebuilder:validation:Required - AdministratorLogin *string `json:"administratorLogin" tf:"administrator_login,omitempty"` + // +kubebuilder:validation:Optional + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // Specifies the password of the SQL administrator. // +kubebuilder:validation:Required AdministratorLoginPasswordSecretRef v1.SecretKeySelector `json:"administratorLoginPasswordSecretRef" tf:"-"` // Specifies the type of authentication used to access the server. Valid values are SQL or ADPassword. - // +kubebuilder:validation:Required - AuthenticationType *string `json:"authenticationType" tf:"authentication_type,omitempty"` + // +kubebuilder:validation:Optional + AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` // The resource id for the storage account used to store BACPAC file. If set, private endpoint connection will be created for the storage account. Must match storage account used for storage_uri parameter. // +kubebuilder:validation:Optional @@ -54,12 +72,27 @@ type ImportParameters struct { StorageKeySecretRef v1.SecretKeySelector `json:"storageKeySecretRef" tf:"-"` // Specifies the type of access key for the storage account. Valid values are StorageAccessKey or SharedAccessKey. - // +kubebuilder:validation:Required - StorageKeyType *string `json:"storageKeyType" tf:"storage_key_type,omitempty"` + // +kubebuilder:validation:Optional + StorageKeyType *string `json:"storageKeyType,omitempty" tf:"storage_key_type,omitempty"` // Specifies the blob URI of the .bacpac file. - // +kubebuilder:validation:Required - StorageURI *string `json:"storageUri" tf:"storage_uri,omitempty"` + // +kubebuilder:validation:Optional + StorageURI *string `json:"storageUri,omitempty" tf:"storage_uri,omitempty"` +} + +type LongTermRetentionPolicyInitParameters struct { + + // The monthly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 120 months. e.g. P1Y, P1M, P4W or P30D. + MonthlyRetention *string `json:"monthlyRetention,omitempty" tf:"monthly_retention,omitempty"` + + // The week of year to take the yearly backup. Value has to be between 1 and 52. + WeekOfYear *float64 `json:"weekOfYear,omitempty" tf:"week_of_year,omitempty"` + + // The weekly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 520 weeks. e.g. P1Y, P1M, P1W or P7D. + WeeklyRetention *string `json:"weeklyRetention,omitempty" tf:"weekly_retention,omitempty"` + + // The yearly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 10 years. e.g. P1Y, P12M, P52W or P365D. + YearlyRetention *string `json:"yearlyRetention,omitempty" tf:"yearly_retention,omitempty"` } type LongTermRetentionPolicyObservation struct { @@ -96,6 +129,87 @@ type LongTermRetentionPolicyParameters struct { YearlyRetention *string `json:"yearlyRetention,omitempty" tf:"yearly_retention,omitempty"` } +type MSSQLDatabaseInitParameters struct { + + // Time in minutes after which database is automatically paused. A value of -1 means that automatic pause is disabled. This property is only settable for General Purpose Serverless databases. + AutoPauseDelayInMinutes *float64 `json:"autoPauseDelayInMinutes,omitempty" tf:"auto_pause_delay_in_minutes,omitempty"` + + // Specifies the collation of the database. Changing this forces a new resource to be created. + Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` + + // The create mode of the database. Possible values are Copy, Default, OnlineSecondary, PointInTimeRestore, Recovery, Restore, RestoreExternalBackup, RestoreExternalBackupSecondary, RestoreLongTermRetentionBackup and Secondary. Mutually exclusive with import. Changing this forces a new resource to be created. + CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` + + // The ID of the source database from which to create the new database. This should only be used for databases with create_mode values that use another database as reference. Changing this forces a new resource to be created. + CreationSourceDatabaseID *string `json:"creationSourceDatabaseId,omitempty" tf:"creation_source_database_id,omitempty"` + + // Specifies the ID of the elastic pool containing this database. + ElasticPoolID *string `json:"elasticPoolId,omitempty" tf:"elastic_pool_id,omitempty"` + + // A boolean that specifies if the Geo Backup Policy is enabled. Defaults to true. + GeoBackupEnabled *bool `json:"geoBackupEnabled,omitempty" tf:"geo_backup_enabled,omitempty"` + + // A Database Import block as documented below. Mutually exclusive with create_mode. + Import []ImportInitParameters `json:"import,omitempty" tf:"import,omitempty"` + + // A boolean that specifies if this is a ledger database. Defaults to false. Changing this forces a new resource to be created. + LedgerEnabled *bool `json:"ledgerEnabled,omitempty" tf:"ledger_enabled,omitempty"` + + // Specifies the license type applied to this database. Possible values are LicenseIncluded and BasePrice. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // A long_term_retention_policy block as defined below. + LongTermRetentionPolicy []LongTermRetentionPolicyInitParameters `json:"longTermRetentionPolicy,omitempty" tf:"long_term_retention_policy,omitempty"` + + // The name of the Public Maintenance Configuration window to apply to the database. Valid values include SQL_Default, SQL_EastUS_DB_1, SQL_EastUS2_DB_1, SQL_SoutheastAsia_DB_1, SQL_AustraliaEast_DB_1, SQL_NorthEurope_DB_1, SQL_SouthCentralUS_DB_1, SQL_WestUS2_DB_1, SQL_UKSouth_DB_1, SQL_WestEurope_DB_1, SQL_EastUS_DB_2, SQL_EastUS2_DB_2, SQL_WestUS2_DB_2, SQL_SoutheastAsia_DB_2, SQL_AustraliaEast_DB_2, SQL_NorthEurope_DB_2, SQL_SouthCentralUS_DB_2, SQL_UKSouth_DB_2, SQL_WestEurope_DB_2, SQL_AustraliaSoutheast_DB_1, SQL_BrazilSouth_DB_1, SQL_CanadaCentral_DB_1, SQL_CanadaEast_DB_1, SQL_CentralUS_DB_1, SQL_EastAsia_DB_1, SQL_FranceCentral_DB_1, SQL_GermanyWestCentral_DB_1, SQL_CentralIndia_DB_1, SQL_SouthIndia_DB_1, SQL_JapanEast_DB_1, SQL_JapanWest_DB_1, SQL_NorthCentralUS_DB_1, SQL_UKWest_DB_1, SQL_WestUS_DB_1, SQL_AustraliaSoutheast_DB_2, SQL_BrazilSouth_DB_2, SQL_CanadaCentral_DB_2, SQL_CanadaEast_DB_2, SQL_CentralUS_DB_2, SQL_EastAsia_DB_2, SQL_FranceCentral_DB_2, SQL_GermanyWestCentral_DB_2, SQL_CentralIndia_DB_2, SQL_SouthIndia_DB_2, SQL_JapanEast_DB_2, SQL_JapanWest_DB_2, SQL_NorthCentralUS_DB_2, SQL_UKWest_DB_2, SQL_WestUS_DB_2, SQL_WestCentralUS_DB_1, SQL_FranceSouth_DB_1, SQL_WestCentralUS_DB_2, SQL_FranceSouth_DB_2, SQL_SwitzerlandNorth_DB_1, SQL_SwitzerlandNorth_DB_2, SQL_BrazilSoutheast_DB_1, SQL_UAENorth_DB_1, SQL_BrazilSoutheast_DB_2, SQL_UAENorth_DB_2. Defaults to SQL_Default. + MaintenanceConfigurationName *string `json:"maintenanceConfigurationName,omitempty" tf:"maintenance_configuration_name,omitempty"` + + // The max size of the database in gigabytes. + MaxSizeGb *float64 `json:"maxSizeGb,omitempty" tf:"max_size_gb,omitempty"` + + // Minimal capacity that database will always have allocated, if not paused. This property is only settable for General Purpose Serverless databases. + MinCapacity *float64 `json:"minCapacity,omitempty" tf:"min_capacity,omitempty"` + + // The number of readonly secondary replicas associated with the database to which readonly application intent connections may be routed. This property is only settable for Hyperscale edition databases. + ReadReplicaCount *float64 `json:"readReplicaCount,omitempty" tf:"read_replica_count,omitempty"` + + // If enabled, connections that have application intent set to readonly in their connection string may be routed to a readonly secondary replica. This property is only settable for Premium and Business Critical databases. + ReadScale *bool `json:"readScale,omitempty" tf:"read_scale,omitempty"` + + // The ID of the database to be recovered. This property is only applicable when the create_mode is Recovery. + RecoverDatabaseID *string `json:"recoverDatabaseId,omitempty" tf:"recover_database_id,omitempty"` + + // The ID of the database to be restored. This property is only applicable when the create_mode is Restore. + RestoreDroppedDatabaseID *string `json:"restoreDroppedDatabaseId,omitempty" tf:"restore_dropped_database_id,omitempty"` + + // Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database. This property is only settable for create_mode= PointInTimeRestore databases. + RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"` + + // Specifies the name of the sample schema to apply when creating this database. Possible value is AdventureWorksLT. + SampleName *string `json:"sampleName,omitempty" tf:"sample_name,omitempty"` + + // A short_term_retention_policy block as defined below. + ShortTermRetentionPolicy []ShortTermRetentionPolicyInitParameters `json:"shortTermRetentionPolicy,omitempty" tf:"short_term_retention_policy,omitempty"` + + // Specifies the name of the SKU used by the database. For example, GP_S_Gen5_2,HS_Gen4_1,BC_Gen5_2, ElasticPool, Basic,S0, P2 ,DW100c, DS100. Changing this from the HyperScale service tier to another service tier will create a new resource. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // Specifies the storage account type used to store backups for this database. Possible values are Geo, Local and Zone. The default value is Geo. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Threat detection policy configuration. The threat_detection_policy block supports fields documented below. + ThreatDetectionPolicy []ThreatDetectionPolicyInitParameters `json:"threatDetectionPolicy,omitempty" tf:"threat_detection_policy,omitempty"` + + // If set to true, Transparent Data Encryption will be enabled on the database. Defaults to true. + TransparentDataEncryptionEnabled *bool `json:"transparentDataEncryptionEnabled,omitempty" tf:"transparent_data_encryption_enabled,omitempty"` + + // Whether or not this database is zone redundant, which means the replicas of this database will be spread across multiple availability zones. This property is only settable for Premium and Business Critical databases. + ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` +} + type MSSQLDatabaseObservation struct { // Time in minutes after which database is automatically paused. A value of -1 means that automatic pause is disabled. This property is only settable for General Purpose Serverless databases. @@ -304,6 +418,15 @@ type MSSQLDatabaseParameters struct { ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } +type ShortTermRetentionPolicyInitParameters struct { + + // The hours between each differential backup. This is only applicable to live databases but not dropped databases. Value has to be 12 or 24. Defaults to 12 hours. + BackupIntervalInHours *float64 `json:"backupIntervalInHours,omitempty" tf:"backup_interval_in_hours,omitempty"` + + // Point In Time Restore configuration. Value has to be between 7 and 35. + RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` +} + type ShortTermRetentionPolicyObservation struct { // The hours between each differential backup. This is only applicable to live databases but not dropped databases. Value has to be 12 or 24. Defaults to 12 hours. @@ -320,8 +443,29 @@ type ShortTermRetentionPolicyParameters struct { BackupIntervalInHours *float64 `json:"backupIntervalInHours,omitempty" tf:"backup_interval_in_hours,omitempty"` // Point In Time Restore configuration. Value has to be between 7 and 35. - // +kubebuilder:validation:Required - RetentionDays *float64 `json:"retentionDays" tf:"retention_days,omitempty"` + // +kubebuilder:validation:Optional + RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` +} + +type ThreatDetectionPolicyInitParameters struct { + + // Specifies a list of alerts which should be disabled. Possible values include Access_Anomaly, Sql_Injection and Sql_Injection_Vulnerability. + DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` + + // Should the account administrators be emailed when this alert is triggered? Possible values are Disabled and Enabled. + EmailAccountAdmins *string `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"` + + // A list of email addresses which alerts should be sent to. + EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` + + // Specifies the number of days to keep in the Threat Detection audit logs. + RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` + + // The State of the Policy. Possible values are Enabled, Disabled or New. + State *string `json:"state,omitempty" tf:"state,omitempty"` + + // Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs. Required if state is Enabled. + StorageEndpoint *string `json:"storageEndpoint,omitempty" tf:"storage_endpoint,omitempty"` } type ThreatDetectionPolicyObservation struct { @@ -380,6 +524,18 @@ type ThreatDetectionPolicyParameters struct { type MSSQLDatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLDatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLDatabaseInitParameters `json:"initProvider,omitempty"` } // MSSQLDatabaseStatus defines the observed state of MSSQLDatabase. diff --git a/apis/sql/v1beta1/zz_mssqldatabaseextendedauditingpolicy_types.go b/apis/sql/v1beta1/zz_mssqldatabaseextendedauditingpolicy_types.go index d5f29409d..05bbcecb3 100755 --- a/apis/sql/v1beta1/zz_mssqldatabaseextendedauditingpolicy_types.go +++ b/apis/sql/v1beta1/zz_mssqldatabaseextendedauditingpolicy_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLDatabaseExtendedAuditingPolicyInitParameters struct { + + // Whether to enable the extended auditing policy. Possible values are true and false. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Enable audit events to Azure Monitor? Defaults to true. + LogMonitoringEnabled *bool `json:"logMonitoringEnabled,omitempty" tf:"log_monitoring_enabled,omitempty"` + + // The number of days to retain logs for in the storage account. Defaults to 0. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // Is storage_account_access_key value the storage's secondary key? + StorageAccountAccessKeyIsSecondary *bool `json:"storageAccountAccessKeyIsSecondary,omitempty" tf:"storage_account_access_key_is_secondary,omitempty"` +} + type MSSQLDatabaseExtendedAuditingPolicyObservation struct { // The ID of the SQL database to set the extended auditing policy. Changing this forces a new resource to be created. @@ -92,6 +107,18 @@ type MSSQLDatabaseExtendedAuditingPolicyParameters struct { type MSSQLDatabaseExtendedAuditingPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLDatabaseExtendedAuditingPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLDatabaseExtendedAuditingPolicyInitParameters `json:"initProvider,omitempty"` } // MSSQLDatabaseExtendedAuditingPolicyStatus defines the observed state of MSSQLDatabaseExtendedAuditingPolicy. diff --git a/apis/sql/v1beta1/zz_mssqldatabasevulnerabilityassessmentrulebaseline_types.go b/apis/sql/v1beta1/zz_mssqldatabasevulnerabilityassessmentrulebaseline_types.go index fda768515..f1df02a56 100755 --- a/apis/sql/v1beta1/zz_mssqldatabasevulnerabilityassessmentrulebaseline_types.go +++ b/apis/sql/v1beta1/zz_mssqldatabasevulnerabilityassessmentrulebaseline_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BaselineResultInitParameters struct { + + // A list representing a result of the baseline. + Result []*string `json:"result,omitempty" tf:"result,omitempty"` +} + type BaselineResultObservation struct { // A list representing a result of the baseline. @@ -22,8 +28,20 @@ type BaselineResultObservation struct { type BaselineResultParameters struct { // A list representing a result of the baseline. - // +kubebuilder:validation:Required - Result []*string `json:"result" tf:"result,omitempty"` + // +kubebuilder:validation:Optional + Result []*string `json:"result,omitempty" tf:"result,omitempty"` +} + +type MSSQLDatabaseVulnerabilityAssessmentRuleBaselineInitParameters struct { + + // The name of the vulnerability assessment rule baseline. Valid options are default and master. default implies a baseline on a database level rule and master for server level rule. Defaults to default. Changing this forces a new resource to be created. + BaselineName *string `json:"baselineName,omitempty" tf:"baseline_name,omitempty"` + + // A baseline_result block as documented below. Multiple blocks can be defined. + BaselineResult []BaselineResultInitParameters `json:"baselineResult,omitempty" tf:"baseline_result,omitempty"` + + // The vulnerability assessment rule ID. Changing this forces a new resource to be created. + RuleID *string `json:"ruleId,omitempty" tf:"rule_id,omitempty"` } type MSSQLDatabaseVulnerabilityAssessmentRuleBaselineObservation struct { @@ -93,6 +111,18 @@ type MSSQLDatabaseVulnerabilityAssessmentRuleBaselineParameters struct { type MSSQLDatabaseVulnerabilityAssessmentRuleBaselineSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLDatabaseVulnerabilityAssessmentRuleBaselineParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLDatabaseVulnerabilityAssessmentRuleBaselineInitParameters `json:"initProvider,omitempty"` } // MSSQLDatabaseVulnerabilityAssessmentRuleBaselineStatus defines the observed state of MSSQLDatabaseVulnerabilityAssessmentRuleBaseline. @@ -113,8 +143,8 @@ type MSSQLDatabaseVulnerabilityAssessmentRuleBaselineStatus struct { type MSSQLDatabaseVulnerabilityAssessmentRuleBaseline struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.baselineResult)",message="baselineResult is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ruleId)",message="ruleId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.baselineResult) || has(self.initProvider.baselineResult)",message="baselineResult is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.ruleId) || has(self.initProvider.ruleId)",message="ruleId is a required parameter" Spec MSSQLDatabaseVulnerabilityAssessmentRuleBaselineSpec `json:"spec"` Status MSSQLDatabaseVulnerabilityAssessmentRuleBaselineStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlelasticpool_types.go b/apis/sql/v1beta1/zz_mssqlelasticpool_types.go index e25e3e5fa..c41565df7 100755 --- a/apis/sql/v1beta1/zz_mssqlelasticpool_types.go +++ b/apis/sql/v1beta1/zz_mssqlelasticpool_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLElasticPoolInitParameters struct { + + // Specifies the license type applied to this database. Possible values are LicenseIncluded and BasePrice. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the Public Maintenance Configuration window to apply to the elastic pool. Valid values include SQL_Default, SQL_EastUS_DB_1, SQL_EastUS2_DB_1, SQL_SoutheastAsia_DB_1, SQL_AustraliaEast_DB_1, SQL_NorthEurope_DB_1, SQL_SouthCentralUS_DB_1, SQL_WestUS2_DB_1, SQL_UKSouth_DB_1, SQL_WestEurope_DB_1, SQL_EastUS_DB_2, SQL_EastUS2_DB_2, SQL_WestUS2_DB_2, SQL_SoutheastAsia_DB_2, SQL_AustraliaEast_DB_2, SQL_NorthEurope_DB_2, SQL_SouthCentralUS_DB_2, SQL_UKSouth_DB_2, SQL_WestEurope_DB_2, SQL_AustraliaSoutheast_DB_1, SQL_BrazilSouth_DB_1, SQL_CanadaCentral_DB_1, SQL_CanadaEast_DB_1, SQL_CentralUS_DB_1, SQL_EastAsia_DB_1, SQL_FranceCentral_DB_1, SQL_GermanyWestCentral_DB_1, SQL_CentralIndia_DB_1, SQL_SouthIndia_DB_1, SQL_JapanEast_DB_1, SQL_JapanWest_DB_1, SQL_NorthCentralUS_DB_1, SQL_UKWest_DB_1, SQL_WestUS_DB_1, SQL_AustraliaSoutheast_DB_2, SQL_BrazilSouth_DB_2, SQL_CanadaCentral_DB_2, SQL_CanadaEast_DB_2, SQL_CentralUS_DB_2, SQL_EastAsia_DB_2, SQL_FranceCentral_DB_2, SQL_GermanyWestCentral_DB_2, SQL_CentralIndia_DB_2, SQL_SouthIndia_DB_2, SQL_JapanEast_DB_2, SQL_JapanWest_DB_2, SQL_NorthCentralUS_DB_2, SQL_UKWest_DB_2, SQL_WestUS_DB_2, SQL_WestCentralUS_DB_1, SQL_FranceSouth_DB_1, SQL_WestCentralUS_DB_2, SQL_FranceSouth_DB_2, SQL_SwitzerlandNorth_DB_1, SQL_SwitzerlandNorth_DB_2, SQL_BrazilSoutheast_DB_1, SQL_UAENorth_DB_1, SQL_BrazilSoutheast_DB_2, SQL_UAENorth_DB_2. Defaults to SQL_Default. + MaintenanceConfigurationName *string `json:"maintenanceConfigurationName,omitempty" tf:"maintenance_configuration_name,omitempty"` + + // The max data size of the elastic pool in bytes. Conflicts with max_size_gb. + MaxSizeBytes *float64 `json:"maxSizeBytes,omitempty" tf:"max_size_bytes,omitempty"` + + // The max data size of the elastic pool in gigabytes. Conflicts with max_size_bytes. + MaxSizeGb *float64 `json:"maxSizeGb,omitempty" tf:"max_size_gb,omitempty"` + + // A per_database_settings block as defined below. + PerDatabaseSettings []PerDatabaseSettingsInitParameters `json:"perDatabaseSettings,omitempty" tf:"per_database_settings,omitempty"` + + // A sku block as defined below. + Sku []SkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Whether or not this elastic pool is zone redundant. tier needs to be Premium for DTU based or BusinessCritical for vCore based sku. + ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` +} + type MSSQLElasticPoolObservation struct { // The ID of the MS SQL Elastic Pool. @@ -117,6 +147,15 @@ type MSSQLElasticPoolParameters struct { ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } +type PerDatabaseSettingsInitParameters struct { + + // The maximum capacity any one database can consume. + MaxCapacity *float64 `json:"maxCapacity,omitempty" tf:"max_capacity,omitempty"` + + // The minimum capacity all databases are guaranteed. + MinCapacity *float64 `json:"minCapacity,omitempty" tf:"min_capacity,omitempty"` +} + type PerDatabaseSettingsObservation struct { // The maximum capacity any one database can consume. @@ -129,12 +168,27 @@ type PerDatabaseSettingsObservation struct { type PerDatabaseSettingsParameters struct { // The maximum capacity any one database can consume. - // +kubebuilder:validation:Required - MaxCapacity *float64 `json:"maxCapacity" tf:"max_capacity,omitempty"` + // +kubebuilder:validation:Optional + MaxCapacity *float64 `json:"maxCapacity,omitempty" tf:"max_capacity,omitempty"` // The minimum capacity all databases are guaranteed. - // +kubebuilder:validation:Required - MinCapacity *float64 `json:"minCapacity" tf:"min_capacity,omitempty"` + // +kubebuilder:validation:Optional + MinCapacity *float64 `json:"minCapacity,omitempty" tf:"min_capacity,omitempty"` +} + +type SkuInitParameters struct { + + // The scale up/out capacity, representing server's compute units. For more information see the documentation for your Elasticpool configuration: vCore-based or DTU-based. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // The family of hardware Gen4, Gen5, Fsv2 or DC. + Family *string `json:"family,omitempty" tf:"family,omitempty"` + + // Specifies the SKU Name for this Elasticpool. The name of the SKU, will be either vCore based tier + family pattern (e.g. GP_Gen4, BC_Gen5) or the DTU based BasicPool, StandardPool, or PremiumPool pattern. Possible values are BasicPool, StandardPool, PremiumPool, GP_Gen4, GP_Gen5, GP_Fsv2, GP_DC, BC_Gen4, BC_Gen5 and BC_DC. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The tier of the particular SKU. Possible values are GeneralPurpose, BusinessCritical, Basic, Standard, or Premium. For more information see the documentation for your Elasticpool configuration: vCore-based or DTU-based. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } type SkuObservation struct { @@ -155,26 +209,38 @@ type SkuObservation struct { type SkuParameters struct { // The scale up/out capacity, representing server's compute units. For more information see the documentation for your Elasticpool configuration: vCore-based or DTU-based. - // +kubebuilder:validation:Required - Capacity *float64 `json:"capacity" tf:"capacity,omitempty"` + // +kubebuilder:validation:Optional + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The family of hardware Gen4, Gen5, Fsv2 or DC. // +kubebuilder:validation:Optional Family *string `json:"family,omitempty" tf:"family,omitempty"` // Specifies the SKU Name for this Elasticpool. The name of the SKU, will be either vCore based tier + family pattern (e.g. GP_Gen4, BC_Gen5) or the DTU based BasicPool, StandardPool, or PremiumPool pattern. Possible values are BasicPool, StandardPool, PremiumPool, GP_Gen4, GP_Gen5, GP_Fsv2, GP_DC, BC_Gen4, BC_Gen5 and BC_DC. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The tier of the particular SKU. Possible values are GeneralPurpose, BusinessCritical, Basic, Standard, or Premium. For more information see the documentation for your Elasticpool configuration: vCore-based or DTU-based. - // +kubebuilder:validation:Required - Tier *string `json:"tier" tf:"tier,omitempty"` + // +kubebuilder:validation:Optional + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } // MSSQLElasticPoolSpec defines the desired state of MSSQLElasticPool type MSSQLElasticPoolSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLElasticPoolParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLElasticPoolInitParameters `json:"initProvider,omitempty"` } // MSSQLElasticPoolStatus defines the observed state of MSSQLElasticPool. @@ -195,9 +261,9 @@ type MSSQLElasticPoolStatus struct { type MSSQLElasticPool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.perDatabaseSettings)",message="perDatabaseSettings is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.perDatabaseSettings) || has(self.initProvider.perDatabaseSettings)",message="perDatabaseSettings is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec MSSQLElasticPoolSpec `json:"spec"` Status MSSQLElasticPoolStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlfailovergroup_types.go b/apis/sql/v1beta1/zz_mssqlfailovergroup_types.go index 7653e962d..ba99aa0cb 100755 --- a/apis/sql/v1beta1/zz_mssqlfailovergroup_types.go +++ b/apis/sql/v1beta1/zz_mssqlfailovergroup_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLFailoverGroupInitParameters struct { + + // A partner_server block as defined below. + PartnerServer []PartnerServerInitParameters `json:"partnerServer,omitempty" tf:"partner_server,omitempty"` + + // A read_write_endpoint_failover_policy block as defined below. + ReadWriteEndpointFailoverPolicy []ReadWriteEndpointFailoverPolicyInitParameters `json:"readWriteEndpointFailoverPolicy,omitempty" tf:"read_write_endpoint_failover_policy,omitempty"` + + // Whether failover is enabled for the readonly endpoint. Defaults to false. + ReadonlyEndpointFailoverPolicyEnabled *bool `json:"readonlyEndpointFailoverPolicyEnabled,omitempty" tf:"readonly_endpoint_failover_policy_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type MSSQLFailoverGroupObservation struct { // A set of database names to include in the failover group. @@ -84,6 +99,9 @@ type MSSQLFailoverGroupParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type PartnerServerInitParameters struct { +} + type PartnerServerObservation struct { // The ID of a partner SQL server to include in the failover group. @@ -113,6 +131,15 @@ type PartnerServerParameters struct { IDSelector *v1.Selector `json:"idSelector,omitempty" tf:"-"` } +type ReadWriteEndpointFailoverPolicyInitParameters struct { + + // The grace period in minutes, before failover with data loss is attempted for the read-write endpoint. Required when mode is Automatic. + GraceMinutes *float64 `json:"graceMinutes,omitempty" tf:"grace_minutes,omitempty"` + + // The failover policy of the read-write endpoint for the failover group. Possible values are Automatic or Manual. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` +} + type ReadWriteEndpointFailoverPolicyObservation struct { // The grace period in minutes, before failover with data loss is attempted for the read-write endpoint. Required when mode is Automatic. @@ -129,14 +156,26 @@ type ReadWriteEndpointFailoverPolicyParameters struct { GraceMinutes *float64 `json:"graceMinutes,omitempty" tf:"grace_minutes,omitempty"` // The failover policy of the read-write endpoint for the failover group. Possible values are Automatic or Manual. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } // MSSQLFailoverGroupSpec defines the desired state of MSSQLFailoverGroup type MSSQLFailoverGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLFailoverGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLFailoverGroupInitParameters `json:"initProvider,omitempty"` } // MSSQLFailoverGroupStatus defines the observed state of MSSQLFailoverGroup. @@ -157,8 +196,8 @@ type MSSQLFailoverGroupStatus struct { type MSSQLFailoverGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partnerServer)",message="partnerServer is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.readWriteEndpointFailoverPolicy)",message="readWriteEndpointFailoverPolicy is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.partnerServer) || has(self.initProvider.partnerServer)",message="partnerServer is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.readWriteEndpointFailoverPolicy) || has(self.initProvider.readWriteEndpointFailoverPolicy)",message="readWriteEndpointFailoverPolicy is a required parameter" Spec MSSQLFailoverGroupSpec `json:"spec"` Status MSSQLFailoverGroupStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlfirewallrule_types.go b/apis/sql/v1beta1/zz_mssqlfirewallrule_types.go index d4f435438..13d065c98 100755 --- a/apis/sql/v1beta1/zz_mssqlfirewallrule_types.go +++ b/apis/sql/v1beta1/zz_mssqlfirewallrule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLFirewallRuleInitParameters struct { + + // The ending IP address to allow through the firewall for this rule. + EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` + + // The starting IP address to allow through the firewall for this rule. + StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` +} + type MSSQLFirewallRuleObservation struct { // The ending IP address to allow through the firewall for this rule. @@ -57,6 +66,18 @@ type MSSQLFirewallRuleParameters struct { type MSSQLFirewallRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLFirewallRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLFirewallRuleInitParameters `json:"initProvider,omitempty"` } // MSSQLFirewallRuleStatus defines the observed state of MSSQLFirewallRule. @@ -77,8 +98,8 @@ type MSSQLFirewallRuleStatus struct { type MSSQLFirewallRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress)",message="endIpAddress is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress)",message="startIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endIpAddress) || has(self.initProvider.endIpAddress)",message="endIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.startIpAddress) || has(self.initProvider.startIpAddress)",message="startIpAddress is a required parameter" Spec MSSQLFirewallRuleSpec `json:"spec"` Status MSSQLFirewallRuleStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqljobagent_types.go b/apis/sql/v1beta1/zz_mssqljobagent_types.go index 1505a99d6..18303d988 100755 --- a/apis/sql/v1beta1/zz_mssqljobagent_types.go +++ b/apis/sql/v1beta1/zz_mssqljobagent_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLJobAgentInitParameters struct { + + // The Azure Region where the Elastic Job Agent should exist. Changing this forces a new Elastic Job Agent to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name which should be used for this Elastic Job Agent. Changing this forces a new Elastic Job Agent to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A mapping of tags which should be assigned to the Database. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type MSSQLJobAgentObservation struct { // The ID of the database to store metadata for the Elastic Job Agent. Changing this forces a new Elastic Job Agent to be created. @@ -64,6 +76,18 @@ type MSSQLJobAgentParameters struct { type MSSQLJobAgentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLJobAgentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLJobAgentInitParameters `json:"initProvider,omitempty"` } // MSSQLJobAgentStatus defines the observed state of MSSQLJobAgent. @@ -84,8 +108,8 @@ type MSSQLJobAgentStatus struct { type MSSQLJobAgent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec MSSQLJobAgentSpec `json:"spec"` Status MSSQLJobAgentStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqljobcredential_types.go b/apis/sql/v1beta1/zz_mssqljobcredential_types.go index 8da345265..e8d8b96f4 100755 --- a/apis/sql/v1beta1/zz_mssqljobcredential_types.go +++ b/apis/sql/v1beta1/zz_mssqljobcredential_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLJobCredentialInitParameters struct { + + // The username part of the credential. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type MSSQLJobCredentialObservation struct { // The ID of the Elastic Job Credential. @@ -54,6 +60,18 @@ type MSSQLJobCredentialParameters struct { type MSSQLJobCredentialSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLJobCredentialParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLJobCredentialInitParameters `json:"initProvider,omitempty"` } // MSSQLJobCredentialStatus defines the observed state of MSSQLJobCredential. @@ -74,8 +92,8 @@ type MSSQLJobCredentialStatus struct { type MSSQLJobCredential struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username)",message="username is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.username) || has(self.initProvider.username)",message="username is a required parameter" Spec MSSQLJobCredentialSpec `json:"spec"` Status MSSQLJobCredentialStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlmanageddatabase_types.go b/apis/sql/v1beta1/zz_mssqlmanageddatabase_types.go index 74b591ed8..36fd0dd6f 100755 --- a/apis/sql/v1beta1/zz_mssqlmanageddatabase_types.go +++ b/apis/sql/v1beta1/zz_mssqlmanageddatabase_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLManagedDatabaseInitParameters struct { + + // A long_term_retention_policy block as defined below. + LongTermRetentionPolicy []MSSQLManagedDatabaseLongTermRetentionPolicyInitParameters `json:"longTermRetentionPolicy,omitempty" tf:"long_term_retention_policy,omitempty"` + + // The backup retention period in days. This is how many days Point-in-Time Restore will be supported. + ShortTermRetentionDays *float64 `json:"shortTermRetentionDays,omitempty" tf:"short_term_retention_days,omitempty"` +} + +type MSSQLManagedDatabaseLongTermRetentionPolicyInitParameters struct { + + // The monthly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 120 months. e.g. P1Y, P1M, P4W or P30D. + MonthlyRetention *string `json:"monthlyRetention,omitempty" tf:"monthly_retention,omitempty"` + + // The week of year to take the yearly backup. Value has to be between 1 and 52. + WeekOfYear *float64 `json:"weekOfYear,omitempty" tf:"week_of_year,omitempty"` + + // The weekly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 520 weeks. e.g. P1Y, P1M, P1W or P7D. + WeeklyRetention *string `json:"weeklyRetention,omitempty" tf:"weekly_retention,omitempty"` + + // The yearly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 10 years. e.g. P1Y, P12M, P52W or P365D. + YearlyRetention *string `json:"yearlyRetention,omitempty" tf:"yearly_retention,omitempty"` +} + type MSSQLManagedDatabaseLongTermRetentionPolicyObservation struct { // The monthly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 120 months. e.g. P1Y, P1M, P4W or P30D. @@ -91,6 +115,18 @@ type MSSQLManagedDatabaseParameters struct { type MSSQLManagedDatabaseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLManagedDatabaseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLManagedDatabaseInitParameters `json:"initProvider,omitempty"` } // MSSQLManagedDatabaseStatus defines the observed state of MSSQLManagedDatabase. diff --git a/apis/sql/v1beta1/zz_mssqlmanagedinstance_types.go b/apis/sql/v1beta1/zz_mssqlmanagedinstance_types.go index 8e23c7162..9fbd81340 100755 --- a/apis/sql/v1beta1/zz_mssqlmanagedinstance_types.go +++ b/apis/sql/v1beta1/zz_mssqlmanagedinstance_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this SQL Managed Instance. Required when type is set to UserAssigned. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this SQL Managed Instance. Possible values are SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this SQL Managed Instance. Required when type is set to UserAssigned. @@ -35,8 +44,56 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this SQL Managed Instance. Possible values are SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type MSSQLManagedInstanceInitParameters struct { + + // The administrator login name for the new SQL Managed Instance. Changing this forces a new resource to be created. + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` + + // Specifies how the SQL Managed Instance will be collated. Default value is SQL_Latin1_General_CP1_CI_AS. Changing this forces a new resource to be created. + Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // What type of license the Managed Instance will use. Possible values are LicenseIncluded and BasePrice. + LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the Public Maintenance Configuration window to apply to the SQL Managed Instance. Valid values include SQL_Default or an Azure Location in the format SQL_{Location}_MI_{Size}(for example SQL_EastUS_MI_1). Defaults to SQL_Default. + MaintenanceConfigurationName *string `json:"maintenanceConfigurationName,omitempty" tf:"maintenance_configuration_name,omitempty"` + + // The Minimum TLS Version. Default value is 1.2 Valid values include 1.0, 1.1, 1.2. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // Specifies how the SQL Managed Instance will be accessed. Default value is Default. Valid values include Default, Proxy, and Redirect. + ProxyOverride *string `json:"proxyOverride,omitempty" tf:"proxy_override,omitempty"` + + // Is the public data endpoint enabled? Default value is false. + PublicDataEndpointEnabled *bool `json:"publicDataEndpointEnabled,omitempty" tf:"public_data_endpoint_enabled,omitempty"` + + // Specifies the SKU Name for the SQL Managed Instance. Valid values include GP_Gen4, GP_Gen5, GP_Gen8IM, GP_Gen8IH, BC_Gen4, BC_Gen5, BC_Gen8IM or BC_Gen8IH. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // Specifies the storage account type used to store backups for this database. Changing this forces a new resource to be created. Possible values are GRS, LRS and ZRS. The default value is GRS. + StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + + // Maximum storage space for the SQL Managed instance. This should be a multiple of 32 (GB). + StorageSizeInGb *float64 `json:"storageSizeInGb,omitempty" tf:"storage_size_in_gb,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The TimeZone ID that the SQL Managed Instance will be operating in. Default value is UTC. Changing this forces a new resource to be created. + TimezoneID *string `json:"timezoneId,omitempty" tf:"timezone_id,omitempty"` + + // Number of cores that should be assigned to the SQL Managed Instance. Values can be 8, 16, or 24 for Gen4 SKUs, or 4, 8, 16, 24, 32, 40, 64, or 80 for Gen5 SKUs. + Vcores *float64 `json:"vcores,omitempty" tf:"vcores,omitempty"` } type MSSQLManagedInstanceObservation struct { @@ -214,6 +271,18 @@ type MSSQLManagedInstanceParameters struct { type MSSQLManagedInstanceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLManagedInstanceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLManagedInstanceInitParameters `json:"initProvider,omitempty"` } // MSSQLManagedInstanceStatus defines the observed state of MSSQLManagedInstance. @@ -234,13 +303,13 @@ type MSSQLManagedInstanceStatus struct { type MSSQLManagedInstance struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.administratorLogin)",message="administratorLogin is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.administratorLoginPasswordSecretRef)",message="administratorLoginPasswordSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.licenseType)",message="licenseType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageSizeInGb)",message="storageSizeInGb is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vcores)",message="vcores is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.administratorLogin) || has(self.initProvider.administratorLogin)",message="administratorLogin is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.administratorLoginPasswordSecretRef)",message="administratorLoginPasswordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.licenseType) || has(self.initProvider.licenseType)",message="licenseType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageSizeInGb) || has(self.initProvider.storageSizeInGb)",message="storageSizeInGb is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.vcores) || has(self.initProvider.vcores)",message="vcores is a required parameter" Spec MSSQLManagedInstanceSpec `json:"spec"` Status MSSQLManagedInstanceStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlmanagedinstanceactivedirectoryadministrator_types.go b/apis/sql/v1beta1/zz_mssqlmanagedinstanceactivedirectoryadministrator_types.go index b8e98cb92..3139ca7cd 100755 --- a/apis/sql/v1beta1/zz_mssqlmanagedinstanceactivedirectoryadministrator_types.go +++ b/apis/sql/v1beta1/zz_mssqlmanagedinstanceactivedirectoryadministrator_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLManagedInstanceActiveDirectoryAdministratorInitParameters struct { + + // When true, only permit logins from AAD users and administrators. When false, also allow local database users. + AzureadAuthenticationOnly *bool `json:"azureadAuthenticationOnly,omitempty" tf:"azuread_authentication_only,omitempty"` + + // The login name of the principal to set as the Managed Instance Administrator. + LoginUsername *string `json:"loginUsername,omitempty" tf:"login_username,omitempty"` + + // The Object ID of the principal to set as the Managed Instance Administrator. + ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` + + // The Azure Active Directory Tenant ID. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type MSSQLManagedInstanceActiveDirectoryAdministratorObservation struct { // When true, only permit logins from AAD users and administrators. When false, also allow local database users. @@ -71,6 +86,18 @@ type MSSQLManagedInstanceActiveDirectoryAdministratorParameters struct { type MSSQLManagedInstanceActiveDirectoryAdministratorSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLManagedInstanceActiveDirectoryAdministratorParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLManagedInstanceActiveDirectoryAdministratorInitParameters `json:"initProvider,omitempty"` } // MSSQLManagedInstanceActiveDirectoryAdministratorStatus defines the observed state of MSSQLManagedInstanceActiveDirectoryAdministrator. @@ -91,9 +118,9 @@ type MSSQLManagedInstanceActiveDirectoryAdministratorStatus struct { type MSSQLManagedInstanceActiveDirectoryAdministrator struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.loginUsername)",message="loginUsername is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId)",message="objectId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId)",message="tenantId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.loginUsername) || has(self.initProvider.loginUsername)",message="loginUsername is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.objectId) || has(self.initProvider.objectId)",message="objectId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantId) || has(self.initProvider.tenantId)",message="tenantId is a required parameter" Spec MSSQLManagedInstanceActiveDirectoryAdministratorSpec `json:"spec"` Status MSSQLManagedInstanceActiveDirectoryAdministratorStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlmanagedinstancefailovergroup_types.go b/apis/sql/v1beta1/zz_mssqlmanagedinstancefailovergroup_types.go index af2f14747..664c2a34f 100755 --- a/apis/sql/v1beta1/zz_mssqlmanagedinstancefailovergroup_types.go +++ b/apis/sql/v1beta1/zz_mssqlmanagedinstancefailovergroup_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLManagedInstanceFailoverGroupInitParameters struct { + + // A read_write_endpoint_failover_policy block as defined below. + ReadWriteEndpointFailoverPolicy []MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyInitParameters `json:"readWriteEndpointFailoverPolicy,omitempty" tf:"read_write_endpoint_failover_policy,omitempty"` + + // Failover policy for the read-only endpoint. Defaults to true. + ReadonlyEndpointFailoverPolicyEnabled *bool `json:"readonlyEndpointFailoverPolicyEnabled,omitempty" tf:"readonly_endpoint_failover_policy_enabled,omitempty"` +} + type MSSQLManagedInstanceFailoverGroupObservation struct { // The ID of the Managed Instance Failover Group. @@ -83,6 +92,15 @@ type MSSQLManagedInstanceFailoverGroupParameters struct { ReadonlyEndpointFailoverPolicyEnabled *bool `json:"readonlyEndpointFailoverPolicyEnabled,omitempty" tf:"readonly_endpoint_failover_policy_enabled,omitempty"` } +type MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyInitParameters struct { + + // Applies only if mode is Automatic. The grace period in minutes before failover with data loss is attempted. + GraceMinutes *float64 `json:"graceMinutes,omitempty" tf:"grace_minutes,omitempty"` + + // The failover mode. Possible values are Automatic or Manual. + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` +} + type MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyObservation struct { // Applies only if mode is Automatic. The grace period in minutes before failover with data loss is attempted. @@ -99,8 +117,11 @@ type MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyParameters GraceMinutes *float64 `json:"graceMinutes,omitempty" tf:"grace_minutes,omitempty"` // The failover mode. Possible values are Automatic or Manual. - // +kubebuilder:validation:Required - Mode *string `json:"mode" tf:"mode,omitempty"` + // +kubebuilder:validation:Optional + Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` +} + +type PartnerRegionInitParameters struct { } type PartnerRegionObservation struct { @@ -119,6 +140,18 @@ type PartnerRegionParameters struct { type MSSQLManagedInstanceFailoverGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLManagedInstanceFailoverGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLManagedInstanceFailoverGroupInitParameters `json:"initProvider,omitempty"` } // MSSQLManagedInstanceFailoverGroupStatus defines the observed state of MSSQLManagedInstanceFailoverGroup. @@ -139,7 +172,7 @@ type MSSQLManagedInstanceFailoverGroupStatus struct { type MSSQLManagedInstanceFailoverGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.readWriteEndpointFailoverPolicy)",message="readWriteEndpointFailoverPolicy is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.readWriteEndpointFailoverPolicy) || has(self.initProvider.readWriteEndpointFailoverPolicy)",message="readWriteEndpointFailoverPolicy is a required parameter" Spec MSSQLManagedInstanceFailoverGroupSpec `json:"spec"` Status MSSQLManagedInstanceFailoverGroupStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlmanagedinstancevulnerabilityassessment_types.go b/apis/sql/v1beta1/zz_mssqlmanagedinstancevulnerabilityassessment_types.go index f36ce2ff5..b1369e983 100755 --- a/apis/sql/v1beta1/zz_mssqlmanagedinstancevulnerabilityassessment_types.go +++ b/apis/sql/v1beta1/zz_mssqlmanagedinstancevulnerabilityassessment_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLManagedInstanceVulnerabilityAssessmentInitParameters struct { + + // The recurring scans settings. The recurring_scans block supports fields documented below. + RecurringScans []RecurringScansInitParameters `json:"recurringScans,omitempty" tf:"recurring_scans,omitempty"` + + // A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). + StorageContainerPath *string `json:"storageContainerPath,omitempty" tf:"storage_container_path,omitempty"` +} + type MSSQLManagedInstanceVulnerabilityAssessmentObservation struct { // The ID of the Vulnerability Assessment. @@ -61,6 +70,18 @@ type MSSQLManagedInstanceVulnerabilityAssessmentParameters struct { StorageContainerSASKeySecretRef *v1.SecretKeySelector `json:"storageContainerSasKeySecretRef,omitempty" tf:"-"` } +type RecurringScansInitParameters struct { + + // Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to true. + EmailSubscriptionAdmins *bool `json:"emailSubscriptionAdmins,omitempty" tf:"email_subscription_admins,omitempty"` + + // Specifies an array of e-mail addresses to which the scan notification is sent. + Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"` + + // Boolean flag which specifies if recurring scans is enabled or disabled. Defaults to false. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + type RecurringScansObservation struct { // Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to true. @@ -92,6 +113,18 @@ type RecurringScansParameters struct { type MSSQLManagedInstanceVulnerabilityAssessmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLManagedInstanceVulnerabilityAssessmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLManagedInstanceVulnerabilityAssessmentInitParameters `json:"initProvider,omitempty"` } // MSSQLManagedInstanceVulnerabilityAssessmentStatus defines the observed state of MSSQLManagedInstanceVulnerabilityAssessment. @@ -112,7 +145,7 @@ type MSSQLManagedInstanceVulnerabilityAssessmentStatus struct { type MSSQLManagedInstanceVulnerabilityAssessment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageContainerPath)",message="storageContainerPath is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageContainerPath) || has(self.initProvider.storageContainerPath)",message="storageContainerPath is a required parameter" Spec MSSQLManagedInstanceVulnerabilityAssessmentSpec `json:"spec"` Status MSSQLManagedInstanceVulnerabilityAssessmentStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqloutboundfirewallrule_types.go b/apis/sql/v1beta1/zz_mssqloutboundfirewallrule_types.go index c40c0b347..27f54c968 100755 --- a/apis/sql/v1beta1/zz_mssqloutboundfirewallrule_types.go +++ b/apis/sql/v1beta1/zz_mssqloutboundfirewallrule_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLOutboundFirewallRuleInitParameters struct { +} + type MSSQLOutboundFirewallRuleObservation struct { // The SQL Outbound Firewall Rule ID. @@ -43,6 +46,18 @@ type MSSQLOutboundFirewallRuleParameters struct { type MSSQLOutboundFirewallRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLOutboundFirewallRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLOutboundFirewallRuleInitParameters `json:"initProvider,omitempty"` } // MSSQLOutboundFirewallRuleStatus defines the observed state of MSSQLOutboundFirewallRule. diff --git a/apis/sql/v1beta1/zz_mssqlserver_types.go b/apis/sql/v1beta1/zz_mssqlserver_types.go index 002a6ef6d..5ccadd23b 100755 --- a/apis/sql/v1beta1/zz_mssqlserver_types.go +++ b/apis/sql/v1beta1/zz_mssqlserver_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AzureadAdministratorInitParameters struct { + + // Specifies whether only AD Users and administrators (e.g. azuread_administrator.0.login_username) can be used to login, or also local database users (e.g. administrator_login). When true, the administrator_login and administrator_login_password properties can be omitted. + AzureadAuthenticationOnly *bool `json:"azureadAuthenticationOnly,omitempty" tf:"azuread_authentication_only,omitempty"` + + // The tenant id of the Azure AD Administrator of this SQL Server. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type AzureadAdministratorObservation struct { // Specifies whether only AD Users and administrators (e.g. azuread_administrator.0.login_username) can be used to login, or also local database users (e.g. administrator_login). When true, the administrator_login and administrator_login_password properties can be omitted. @@ -67,6 +76,15 @@ type AzureadAdministratorParameters struct { TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } +type MSSQLServerIdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this SQL Server. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this SQL Server. Possible values are SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type MSSQLServerIdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this SQL Server. @@ -89,8 +107,41 @@ type MSSQLServerIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this SQL Server. Possible values are SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type MSSQLServerInitParameters struct { + + // The administrator login name for the new server. Required unless azuread_authentication_only in the azuread_administrator block is true. When omitted, Azure will generate a default username which cannot be subsequently changed. Changing this forces a new resource to be created. + AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` + + // An azuread_administrator block as defined below. + AzureadAdministrator []AzureadAdministratorInitParameters `json:"azureadAdministrator,omitempty" tf:"azuread_administrator,omitempty"` + + // The connection policy the server will use. Possible values are Default, Proxy, and Redirect. Defaults to Default. + ConnectionPolicy *string `json:"connectionPolicy,omitempty" tf:"connection_policy,omitempty"` + + // An identity block as defined below. + Identity []MSSQLServerIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The Minimum TLS Version for all SQL Database and SQL Data Warehouse databases associated with the server. Valid values are: 1.0, 1.1 , 1.2 and Disabled. Defaults to 1.2. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // Whether outbound network traffic is restricted for this server. Defaults to false. + OutboundNetworkRestrictionEnabled *bool `json:"outboundNetworkRestrictionEnabled,omitempty" tf:"outbound_network_restriction_enabled,omitempty"` + + // Whether public network access is allowed for this server. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The version for the new server. Valid values are: 2.0 (for v11 server) and 12.0 (for v12 server). Changing this forces a new resource to be created. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type MSSQLServerObservation struct { @@ -236,6 +287,18 @@ type MSSQLServerParameters struct { type MSSQLServerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLServerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLServerInitParameters `json:"initProvider,omitempty"` } // MSSQLServerStatus defines the observed state of MSSQLServer. @@ -256,8 +319,8 @@ type MSSQLServerStatus struct { type MSSQLServer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version)",message="version is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.version) || has(self.initProvider.version)",message="version is a required parameter" Spec MSSQLServerSpec `json:"spec"` Status MSSQLServerStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlserverdnsalias_types.go b/apis/sql/v1beta1/zz_mssqlserverdnsalias_types.go index 1af13ed68..969c1bf1f 100755 --- a/apis/sql/v1beta1/zz_mssqlserverdnsalias_types.go +++ b/apis/sql/v1beta1/zz_mssqlserverdnsalias_types.go @@ -13,6 +13,9 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLServerDNSAliasInitParameters struct { +} + type MSSQLServerDNSAliasObservation struct { // The fully qualified DNS record for alias. @@ -46,6 +49,18 @@ type MSSQLServerDNSAliasParameters struct { type MSSQLServerDNSAliasSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLServerDNSAliasParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLServerDNSAliasInitParameters `json:"initProvider,omitempty"` } // MSSQLServerDNSAliasStatus defines the observed state of MSSQLServerDNSAlias. diff --git a/apis/sql/v1beta1/zz_mssqlservermicrosoftsupportauditingpolicy_types.go b/apis/sql/v1beta1/zz_mssqlservermicrosoftsupportauditingpolicy_types.go index 33c5cd72a..d815a87c7 100755 --- a/apis/sql/v1beta1/zz_mssqlservermicrosoftsupportauditingpolicy_types.go +++ b/apis/sql/v1beta1/zz_mssqlservermicrosoftsupportauditingpolicy_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLServerMicrosoftSupportAuditingPolicyInitParameters struct { + + // Whether to enable the extended auditing policy. Possible values are true and false. Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to true. + LogMonitoringEnabled *bool `json:"logMonitoringEnabled,omitempty" tf:"log_monitoring_enabled,omitempty"` +} + type MSSQLServerMicrosoftSupportAuditingPolicyObservation struct { // The blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all Microsoft support auditing logs. @@ -82,6 +91,18 @@ type MSSQLServerMicrosoftSupportAuditingPolicyParameters struct { type MSSQLServerMicrosoftSupportAuditingPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLServerMicrosoftSupportAuditingPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLServerMicrosoftSupportAuditingPolicyInitParameters `json:"initProvider,omitempty"` } // MSSQLServerMicrosoftSupportAuditingPolicyStatus defines the observed state of MSSQLServerMicrosoftSupportAuditingPolicy. diff --git a/apis/sql/v1beta1/zz_mssqlserversecurityalertpolicy_types.go b/apis/sql/v1beta1/zz_mssqlserversecurityalertpolicy_types.go index 513c59f94..926deed24 100755 --- a/apis/sql/v1beta1/zz_mssqlserversecurityalertpolicy_types.go +++ b/apis/sql/v1beta1/zz_mssqlserversecurityalertpolicy_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLServerSecurityAlertPolicyInitParameters struct { + + // Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action. + DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` + + // Boolean flag which specifies if the alert is sent to the account administrators or not. Defaults to false. + EmailAccountAdmins *bool `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"` + + // Specifies an array of email addresses to which the alert is sent. + EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` + + // Specifies the number of days to keep in the Threat Detection audit logs. Defaults to 0. + RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` + + // Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific database server. Possible values are Disabled, Enabled and New. + State *string `json:"state,omitempty" tf:"state,omitempty"` +} + type MSSQLServerSecurityAlertPolicyObservation struct { // Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action. @@ -114,6 +132,18 @@ type MSSQLServerSecurityAlertPolicyParameters struct { type MSSQLServerSecurityAlertPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLServerSecurityAlertPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLServerSecurityAlertPolicyInitParameters `json:"initProvider,omitempty"` } // MSSQLServerSecurityAlertPolicyStatus defines the observed state of MSSQLServerSecurityAlertPolicy. @@ -134,7 +164,7 @@ type MSSQLServerSecurityAlertPolicyStatus struct { type MSSQLServerSecurityAlertPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.state)",message="state is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.state) || has(self.initProvider.state)",message="state is a required parameter" Spec MSSQLServerSecurityAlertPolicySpec `json:"spec"` Status MSSQLServerSecurityAlertPolicyStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlservertransparentdataencryption_types.go b/apis/sql/v1beta1/zz_mssqlservertransparentdataencryption_types.go index 1fed4285d..59718dcc7 100755 --- a/apis/sql/v1beta1/zz_mssqlservertransparentdataencryption_types.go +++ b/apis/sql/v1beta1/zz_mssqlservertransparentdataencryption_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLServerTransparentDataEncryptionInitParameters struct { + + // When enabled, the server will continuously check the key vault for any new versions of the key being used as the TDE protector. If a new version of the key is detected, the TDE protector on the server will be automatically rotated to the latest key version within 60 minutes. + AutoRotationEnabled *bool `json:"autoRotationEnabled,omitempty" tf:"auto_rotation_enabled,omitempty"` +} + type MSSQLServerTransparentDataEncryptionObservation struct { // When enabled, the server will continuously check the key vault for any new versions of the key being used as the TDE protector. If a new version of the key is detected, the TDE protector on the server will be automatically rotated to the latest key version within 60 minutes. @@ -67,6 +73,18 @@ type MSSQLServerTransparentDataEncryptionParameters struct { type MSSQLServerTransparentDataEncryptionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLServerTransparentDataEncryptionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLServerTransparentDataEncryptionInitParameters `json:"initProvider,omitempty"` } // MSSQLServerTransparentDataEncryptionStatus defines the observed state of MSSQLServerTransparentDataEncryption. diff --git a/apis/sql/v1beta1/zz_mssqlservervulnerabilityassessment_types.go b/apis/sql/v1beta1/zz_mssqlservervulnerabilityassessment_types.go index a70091ab2..ad449c1f3 100755 --- a/apis/sql/v1beta1/zz_mssqlservervulnerabilityassessment_types.go +++ b/apis/sql/v1beta1/zz_mssqlservervulnerabilityassessment_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLServerVulnerabilityAssessmentInitParameters struct { + + // The recurring scans settings. The recurring_scans block supports fields documented below. + RecurringScans []MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters `json:"recurringScans,omitempty" tf:"recurring_scans,omitempty"` + + // A blob storage container path to hold the scan results (e.g. https://example.blob.core.windows.net/VaScans/). + StorageContainerPath *string `json:"storageContainerPath,omitempty" tf:"storage_container_path,omitempty"` +} + type MSSQLServerVulnerabilityAssessmentObservation struct { // The ID of the MS SQL Server Vulnerability Assessment. @@ -61,6 +70,18 @@ type MSSQLServerVulnerabilityAssessmentParameters struct { StorageContainerSASKeySecretRef *v1.SecretKeySelector `json:"storageContainerSasKeySecretRef,omitempty" tf:"-"` } +type MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters struct { + + // Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to false. + EmailSubscriptionAdmins *bool `json:"emailSubscriptionAdmins,omitempty" tf:"email_subscription_admins,omitempty"` + + // Specifies an array of email addresses to which the scan notification is sent. + Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"` + + // Boolean flag which specifies if recurring scans is enabled or disabled. Defaults to false. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + type MSSQLServerVulnerabilityAssessmentRecurringScansObservation struct { // Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to false. @@ -92,6 +113,18 @@ type MSSQLServerVulnerabilityAssessmentRecurringScansParameters struct { type MSSQLServerVulnerabilityAssessmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLServerVulnerabilityAssessmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLServerVulnerabilityAssessmentInitParameters `json:"initProvider,omitempty"` } // MSSQLServerVulnerabilityAssessmentStatus defines the observed state of MSSQLServerVulnerabilityAssessment. @@ -112,7 +145,7 @@ type MSSQLServerVulnerabilityAssessmentStatus struct { type MSSQLServerVulnerabilityAssessment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageContainerPath)",message="storageContainerPath is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageContainerPath) || has(self.initProvider.storageContainerPath)",message="storageContainerPath is a required parameter" Spec MSSQLServerVulnerabilityAssessmentSpec `json:"spec"` Status MSSQLServerVulnerabilityAssessmentStatus `json:"status,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlvirtualnetworkrule_types.go b/apis/sql/v1beta1/zz_mssqlvirtualnetworkrule_types.go index 70f983e8c..5c91e9433 100755 --- a/apis/sql/v1beta1/zz_mssqlvirtualnetworkrule_types.go +++ b/apis/sql/v1beta1/zz_mssqlvirtualnetworkrule_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type MSSQLVirtualNetworkRuleInitParameters struct { + + // Create the virtual network rule before the subnet has the virtual network service endpoint enabled. Defaults to false. + IgnoreMissingVnetServiceEndpoint *bool `json:"ignoreMissingVnetServiceEndpoint,omitempty" tf:"ignore_missing_vnet_service_endpoint,omitempty"` +} + type MSSQLVirtualNetworkRuleObservation struct { // The ID of the SQL virtual network rule. @@ -67,6 +73,18 @@ type MSSQLVirtualNetworkRuleParameters struct { type MSSQLVirtualNetworkRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider MSSQLVirtualNetworkRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider MSSQLVirtualNetworkRuleInitParameters `json:"initProvider,omitempty"` } // MSSQLVirtualNetworkRuleStatus defines the observed state of MSSQLVirtualNetworkRule. diff --git a/apis/storage/v1beta1/zz_account_types.go b/apis/storage/v1beta1/zz_account_types.go index 151510ca9..ad0492407 100755 --- a/apis/storage/v1beta1/zz_account_types.go +++ b/apis/storage/v1beta1/zz_account_types.go @@ -13,6 +13,111 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccountInitParameters struct { + + // Defines the access tier for BlobStorage, FileStorage and StorageV2 accounts. Valid options are Hot and Cool, defaults to Hot. + AccessTier *string `json:"accessTier,omitempty" tf:"access_tier,omitempty"` + + // Defines the Kind of account. Valid options are BlobStorage, BlockBlobStorage, FileStorage, Storage and StorageV2. Defaults to StorageV2. + AccountKind *string `json:"accountKind,omitempty" tf:"account_kind,omitempty"` + + // Defines the type of replication to use for this storage account. Valid options are LRS, GRS, RAGRS, ZRS, GZRS and RAGZRS. + AccountReplicationType *string `json:"accountReplicationType,omitempty" tf:"account_replication_type,omitempty"` + + // Defines the Tier to use for this storage account. Valid options are Standard and Premium. For BlockBlobStorage and FileStorage accounts only Premium is valid. Changing this forces a new resource to be created. + AccountTier *string `json:"accountTier,omitempty" tf:"account_tier,omitempty"` + + // Allow or disallow nested items within this Account to opt into being public. Defaults to true. + AllowNestedItemsToBePublic *bool `json:"allowNestedItemsToBePublic,omitempty" tf:"allow_nested_items_to_be_public,omitempty"` + + // Restrict copy to and from Storage Accounts within an AAD tenant or with Private Links to the same VNet. Possible values are AAD and PrivateLink. + AllowedCopyScope *string `json:"allowedCopyScope,omitempty" tf:"allowed_copy_scope,omitempty"` + + // A azure_files_authentication block as defined below. + AzureFilesAuthentication []AzureFilesAuthenticationInitParameters `json:"azureFilesAuthentication,omitempty" tf:"azure_files_authentication,omitempty"` + + // A blob_properties block as defined below. + BlobProperties []BlobPropertiesInitParameters `json:"blobProperties,omitempty" tf:"blob_properties,omitempty"` + + // Should cross Tenant replication be enabled? Defaults to true. + CrossTenantReplicationEnabled *bool `json:"crossTenantReplicationEnabled,omitempty" tf:"cross_tenant_replication_enabled,omitempty"` + + // A custom_domain block as documented below. + CustomDomain []CustomDomainInitParameters `json:"customDomain,omitempty" tf:"custom_domain,omitempty"` + + // A customer_managed_key block as documented below. + CustomerManagedKey []CustomerManagedKeyInitParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` + + // Default to Azure Active Directory authorization in the Azure portal when accessing the Storage Account. The default value is false + DefaultToOauthAuthentication *bool `json:"defaultToOauthAuthentication,omitempty" tf:"default_to_oauth_authentication,omitempty"` + + // Specifies the Edge Zone within the Azure Region where this Storage Account should exist. Changing this forces a new Storage Account to be created. + EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + + // Boolean flag which forces HTTPS if enabled, see here for more information. Defaults to true. + EnableHTTPSTrafficOnly *bool `json:"enableHttpsTrafficOnly,omitempty" tf:"enable_https_traffic_only,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // An immutability_policy block as defined below. Changing this forces a new resource to be created. + ImmutabilityPolicy []ImmutabilityPolicyInitParameters `json:"immutabilityPolicy,omitempty" tf:"immutability_policy,omitempty"` + + // Is infrastructure encryption enabled? Changing this forces a new resource to be created. Defaults to false. + InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` + + // Is Hierarchical Namespace enabled? This can be used with Azure Data Lake Storage Gen 2 (see here for more information). Changing this forces a new resource to be created. + IsHnsEnabled *bool `json:"isHnsEnabled,omitempty" tf:"is_hns_enabled,omitempty"` + + // Is Large File Share Enabled? + LargeFileShareEnabled *bool `json:"largeFileShareEnabled,omitempty" tf:"large_file_share_enabled,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The minimum supported TLS version for the storage account. Possible values are TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2 for new storage accounts. + MinTLSVersion *string `json:"minTlsVersion,omitempty" tf:"min_tls_version,omitempty"` + + // A network_rules block as documented below. + NetworkRules []NetworkRulesInitParameters `json:"networkRules,omitempty" tf:"network_rules,omitempty"` + + // Is NFSv3 protocol enabled? Changing this forces a new resource to be created. Defaults to false. + Nfsv3Enabled *bool `json:"nfsv3Enabled,omitempty" tf:"nfsv3_enabled,omitempty"` + + // Whether the public network access is enabled? Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // The encryption type of the queue service. Possible values are Service and Account. Changing this forces a new resource to be created. Default value is Service. + QueueEncryptionKeyType *string `json:"queueEncryptionKeyType,omitempty" tf:"queue_encryption_key_type,omitempty"` + + // A queue_properties block as defined below. + QueueProperties []QueuePropertiesInitParameters `json:"queueProperties,omitempty" tf:"queue_properties,omitempty"` + + // A routing block as defined below. + Routing []RoutingInitParameters `json:"routing,omitempty" tf:"routing,omitempty"` + + // A sas_policy block as defined below. + SASPolicy []SASPolicyInitParameters `json:"sasPolicy,omitempty" tf:"sas_policy,omitempty"` + + // Boolean, enable SFTP for the storage account + SFTPEnabled *bool `json:"sftpEnabled,omitempty" tf:"sftp_enabled,omitempty"` + + // A share_properties block as defined below. + ShareProperties []SharePropertiesInitParameters `json:"shareProperties,omitempty" tf:"share_properties,omitempty"` + + // Indicates whether the storage account permits requests to be authorized with the account access key via Shared Key. If false, then all requests, including shared access signatures, must be authorized with Azure Active Directory (Azure AD). The default value is true. + SharedAccessKeyEnabled *bool `json:"sharedAccessKeyEnabled,omitempty" tf:"shared_access_key_enabled,omitempty"` + + // A static_website block as defined below. + StaticWebsite []StaticWebsiteInitParameters `json:"staticWebsite,omitempty" tf:"static_website,omitempty"` + + // The encryption type of the table service. Possible values are Service and Account. Changing this forces a new resource to be created. Default value is Service. + TableEncryptionKeyType *string `json:"tableEncryptionKeyType,omitempty" tf:"table_encryption_key_type,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type AccountObservation struct { // Defines the access tier for BlobStorage, FileStorage and StorageV2 accounts. Valid options are Hot and Cool, defaults to Hot. @@ -354,6 +459,27 @@ type AccountParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type ActiveDirectoryInitParameters struct { + + // Specifies the domain GUID. + DomainGUID *string `json:"domainGuid,omitempty" tf:"domain_guid,omitempty"` + + // Specifies the primary domain that the AD DNS server is authoritative for. + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` + + // Specifies the security identifier (SID). + DomainSid *string `json:"domainSid,omitempty" tf:"domain_sid,omitempty"` + + // Specifies the Active Directory forest. + ForestName *string `json:"forestName,omitempty" tf:"forest_name,omitempty"` + + // Specifies the NetBIOS domain name. + NetbiosDomainName *string `json:"netbiosDomainName,omitempty" tf:"netbios_domain_name,omitempty"` + + // Specifies the security identifier (SID) for Azure Storage. + StorageSid *string `json:"storageSid,omitempty" tf:"storage_sid,omitempty"` +} + type ActiveDirectoryObservation struct { // Specifies the domain GUID. @@ -378,28 +504,37 @@ type ActiveDirectoryObservation struct { type ActiveDirectoryParameters struct { // Specifies the domain GUID. - // +kubebuilder:validation:Required - DomainGUID *string `json:"domainGuid" tf:"domain_guid,omitempty"` + // +kubebuilder:validation:Optional + DomainGUID *string `json:"domainGuid,omitempty" tf:"domain_guid,omitempty"` // Specifies the primary domain that the AD DNS server is authoritative for. - // +kubebuilder:validation:Required - DomainName *string `json:"domainName" tf:"domain_name,omitempty"` + // +kubebuilder:validation:Optional + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // Specifies the security identifier (SID). - // +kubebuilder:validation:Required - DomainSid *string `json:"domainSid" tf:"domain_sid,omitempty"` + // +kubebuilder:validation:Optional + DomainSid *string `json:"domainSid,omitempty" tf:"domain_sid,omitempty"` // Specifies the Active Directory forest. - // +kubebuilder:validation:Required - ForestName *string `json:"forestName" tf:"forest_name,omitempty"` + // +kubebuilder:validation:Optional + ForestName *string `json:"forestName,omitempty" tf:"forest_name,omitempty"` // Specifies the NetBIOS domain name. - // +kubebuilder:validation:Required - NetbiosDomainName *string `json:"netbiosDomainName" tf:"netbios_domain_name,omitempty"` + // +kubebuilder:validation:Optional + NetbiosDomainName *string `json:"netbiosDomainName,omitempty" tf:"netbios_domain_name,omitempty"` // Specifies the security identifier (SID) for Azure Storage. - // +kubebuilder:validation:Required - StorageSid *string `json:"storageSid" tf:"storage_sid,omitempty"` + // +kubebuilder:validation:Optional + StorageSid *string `json:"storageSid,omitempty" tf:"storage_sid,omitempty"` +} + +type AzureFilesAuthenticationInitParameters struct { + + // A active_directory block as defined below. Required when directory_type is AD. + ActiveDirectory []ActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Specifies the directory service used. Possible values are AADDS, AD and AADKERB. + DirectoryType *string `json:"directoryType,omitempty" tf:"directory_type,omitempty"` } type AzureFilesAuthenticationObservation struct { @@ -418,8 +553,38 @@ type AzureFilesAuthenticationParameters struct { ActiveDirectory []ActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies the directory service used. Possible values are AADDS, AD and AADKERB. - // +kubebuilder:validation:Required - DirectoryType *string `json:"directoryType" tf:"directory_type,omitempty"` + // +kubebuilder:validation:Optional + DirectoryType *string `json:"directoryType,omitempty" tf:"directory_type,omitempty"` +} + +type BlobPropertiesInitParameters struct { + + // Is the blob service properties for change feed events enabled? Default to false. + ChangeFeedEnabled *bool `json:"changeFeedEnabled,omitempty" tf:"change_feed_enabled,omitempty"` + + // The duration of change feed events retention in days. The possible values are between 1 and 146000 days (400 years). Setting this to null (or omit this in the configuration file) indicates an infinite retention of the change feed. + ChangeFeedRetentionInDays *float64 `json:"changeFeedRetentionInDays,omitempty" tf:"change_feed_retention_in_days,omitempty"` + + // A container_delete_retention_policy block as defined below. + ContainerDeleteRetentionPolicy []ContainerDeleteRetentionPolicyInitParameters `json:"containerDeleteRetentionPolicy,omitempty" tf:"container_delete_retention_policy,omitempty"` + + // A cors_rule block as defined below. + CorsRule []CorsRuleInitParameters `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` + + // The API Version which should be used by default for requests to the Data Plane API if an incoming request doesn't specify an API Version. + DefaultServiceVersion *string `json:"defaultServiceVersion,omitempty" tf:"default_service_version,omitempty"` + + // A delete_retention_policy block as defined below. + DeleteRetentionPolicy []DeleteRetentionPolicyInitParameters `json:"deleteRetentionPolicy,omitempty" tf:"delete_retention_policy,omitempty"` + + // Is the last access time based tracking enabled? Default to false. + LastAccessTimeEnabled *bool `json:"lastAccessTimeEnabled,omitempty" tf:"last_access_time_enabled,omitempty"` + + // A restore_policy block as defined below. This must be used together with delete_retention_policy set, versioning_enabled and change_feed_enabled set to true. + RestorePolicy []RestorePolicyInitParameters `json:"restorePolicy,omitempty" tf:"restore_policy,omitempty"` + + // Is versioning enabled? Default to false. + VersioningEnabled *bool `json:"versioningEnabled,omitempty" tf:"versioning_enabled,omitempty"` } type BlobPropertiesObservation struct { @@ -491,6 +656,12 @@ type BlobPropertiesParameters struct { VersioningEnabled *bool `json:"versioningEnabled,omitempty" tf:"versioning_enabled,omitempty"` } +type ContainerDeleteRetentionPolicyInitParameters struct { + + // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. + Days *float64 `json:"days,omitempty" tf:"days,omitempty"` +} + type ContainerDeleteRetentionPolicyObservation struct { // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. @@ -504,6 +675,25 @@ type ContainerDeleteRetentionPolicyParameters struct { Days *float64 `json:"days,omitempty" tf:"days,omitempty"` } +type CorsRuleInitParameters struct { + + // A list of headers that are allowed to be a part of the cross-origin request. + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` + + // A list of HTTP methods that are allowed to be executed by the origin. Valid options are + // DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` + + // A list of origin domains that will be allowed by CORS. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // A list of response headers that are exposed to CORS clients. + ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` + + // The number of seconds the client should cache a preflight response. + MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` +} + type CorsRuleObservation struct { // A list of headers that are allowed to be a part of the cross-origin request. @@ -526,25 +716,34 @@ type CorsRuleObservation struct { type CorsRuleParameters struct { // A list of headers that are allowed to be a part of the cross-origin request. - // +kubebuilder:validation:Required - AllowedHeaders []*string `json:"allowedHeaders" tf:"allowed_headers,omitempty"` + // +kubebuilder:validation:Optional + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // A list of HTTP methods that are allowed to be executed by the origin. Valid options are // DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. - // +kubebuilder:validation:Required - AllowedMethods []*string `json:"allowedMethods" tf:"allowed_methods,omitempty"` + // +kubebuilder:validation:Optional + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A list of origin domains that will be allowed by CORS. - // +kubebuilder:validation:Required - AllowedOrigins []*string `json:"allowedOrigins" tf:"allowed_origins,omitempty"` + // +kubebuilder:validation:Optional + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // A list of response headers that are exposed to CORS clients. - // +kubebuilder:validation:Required - ExposedHeaders []*string `json:"exposedHeaders" tf:"exposed_headers,omitempty"` + // +kubebuilder:validation:Optional + ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` // The number of seconds the client should cache a preflight response. - // +kubebuilder:validation:Required - MaxAgeInSeconds *float64 `json:"maxAgeInSeconds" tf:"max_age_in_seconds,omitempty"` + // +kubebuilder:validation:Optional + MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` +} + +type CustomDomainInitParameters struct { + + // The Custom Domain Name to use for the Storage Account, which will be validated by Azure. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Should the Custom Domain Name be validated by using indirect CNAME validation? + UseSubdomain *bool `json:"useSubdomain,omitempty" tf:"use_subdomain,omitempty"` } type CustomDomainObservation struct { @@ -559,14 +758,23 @@ type CustomDomainObservation struct { type CustomDomainParameters struct { // The Custom Domain Name to use for the Storage Account, which will be validated by Azure. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Should the Custom Domain Name be validated by using indirect CNAME validation? // +kubebuilder:validation:Optional UseSubdomain *bool `json:"useSubdomain,omitempty" tf:"use_subdomain,omitempty"` } +type CustomerManagedKeyInitParameters struct { + + // The ID of the Key Vault Key, supplying a version-less key ID will enable auto-rotation of this key. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // The ID of a user assigned identity. + UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` +} + type CustomerManagedKeyObservation struct { // The ID of the Key Vault Key, supplying a version-less key ID will enable auto-rotation of this key. @@ -579,12 +787,18 @@ type CustomerManagedKeyObservation struct { type CustomerManagedKeyParameters struct { // The ID of the Key Vault Key, supplying a version-less key ID will enable auto-rotation of this key. - // +kubebuilder:validation:Required - KeyVaultKeyID *string `json:"keyVaultKeyId" tf:"key_vault_key_id,omitempty"` + // +kubebuilder:validation:Optional + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // The ID of a user assigned identity. - // +kubebuilder:validation:Required - UserAssignedIdentityID *string `json:"userAssignedIdentityId" tf:"user_assigned_identity_id,omitempty"` + // +kubebuilder:validation:Optional + UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` +} + +type DeleteRetentionPolicyInitParameters struct { + + // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. + Days *float64 `json:"days,omitempty" tf:"days,omitempty"` } type DeleteRetentionPolicyObservation struct { @@ -600,6 +814,21 @@ type DeleteRetentionPolicyParameters struct { Days *float64 `json:"days,omitempty" tf:"days,omitempty"` } +type HourMetricsInitParameters struct { + + // Indicates whether minute metrics are enabled for the Queue service. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Indicates whether metrics should generate summary statistics for called API operations. + IncludeApis *bool `json:"includeApis,omitempty" tf:"include_apis,omitempty"` + + // Specifies the number of days that logs will be retained. + RetentionPolicyDays *float64 `json:"retentionPolicyDays,omitempty" tf:"retention_policy_days,omitempty"` + + // The version of storage analytics to configure. + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type HourMetricsObservation struct { // Indicates whether minute metrics are enabled for the Queue service. @@ -618,8 +847,8 @@ type HourMetricsObservation struct { type HourMetricsParameters struct { // Indicates whether minute metrics are enabled for the Queue service. - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Indicates whether metrics should generate summary statistics for called API operations. // +kubebuilder:validation:Optional @@ -630,8 +859,17 @@ type HourMetricsParameters struct { RetentionPolicyDays *float64 `json:"retentionPolicyDays,omitempty" tf:"retention_policy_days,omitempty"` // The version of storage analytics to configure. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Storage Account. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Storage Account. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type IdentityObservation struct { @@ -656,8 +894,20 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Storage Account. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ImmutabilityPolicyInitParameters struct { + + // When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. + AllowProtectedAppendWrites *bool `json:"allowProtectedAppendWrites,omitempty" tf:"allow_protected_append_writes,omitempty"` + + // The immutability period for the blobs in the container since the policy creation, in days. + PeriodSinceCreationInDays *float64 `json:"periodSinceCreationInDays,omitempty" tf:"period_since_creation_in_days,omitempty"` + + // Defines the mode of the policy. Disabled state disables the policy, Unlocked state allows increase and decrease of immutability retention time and also allows toggling allowProtectedAppendWrites property, Locked state only allows the increase of the immutability retention time. A policy can only be created in a Disabled or Unlocked state and can be toggled between the two states. Only a policy in an Unlocked state can transition to a Locked state which cannot be reverted. + State *string `json:"state,omitempty" tf:"state,omitempty"` } type ImmutabilityPolicyObservation struct { @@ -675,16 +925,34 @@ type ImmutabilityPolicyObservation struct { type ImmutabilityPolicyParameters struct { // When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. - // +kubebuilder:validation:Required - AllowProtectedAppendWrites *bool `json:"allowProtectedAppendWrites" tf:"allow_protected_append_writes,omitempty"` + // +kubebuilder:validation:Optional + AllowProtectedAppendWrites *bool `json:"allowProtectedAppendWrites,omitempty" tf:"allow_protected_append_writes,omitempty"` // The immutability period for the blobs in the container since the policy creation, in days. - // +kubebuilder:validation:Required - PeriodSinceCreationInDays *float64 `json:"periodSinceCreationInDays" tf:"period_since_creation_in_days,omitempty"` + // +kubebuilder:validation:Optional + PeriodSinceCreationInDays *float64 `json:"periodSinceCreationInDays,omitempty" tf:"period_since_creation_in_days,omitempty"` // Defines the mode of the policy. Disabled state disables the policy, Unlocked state allows increase and decrease of immutability retention time and also allows toggling allowProtectedAppendWrites property, Locked state only allows the increase of the immutability retention time. A policy can only be created in a Disabled or Unlocked state and can be toggled between the two states. Only a policy in an Unlocked state can transition to a Locked state which cannot be reverted. - // +kubebuilder:validation:Required - State *string `json:"state" tf:"state,omitempty"` + // +kubebuilder:validation:Optional + State *string `json:"state,omitempty" tf:"state,omitempty"` +} + +type LoggingInitParameters struct { + + // (Defaults to 60 minutes) Used when deleting the Storage Account. + Delete *bool `json:"delete,omitempty" tf:"delete,omitempty"` + + // (Defaults to 5 minutes) Used when retrieving the Storage Account. + Read *bool `json:"read,omitempty" tf:"read,omitempty"` + + // Specifies the number of days that logs will be retained. + RetentionPolicyDays *float64 `json:"retentionPolicyDays,omitempty" tf:"retention_policy_days,omitempty"` + + // The version of storage analytics to configure. + Version *string `json:"version,omitempty" tf:"version,omitempty"` + + // Indicates whether all write requests should be logged. + Write *bool `json:"write,omitempty" tf:"write,omitempty"` } type LoggingObservation struct { @@ -708,24 +976,39 @@ type LoggingObservation struct { type LoggingParameters struct { // (Defaults to 60 minutes) Used when deleting the Storage Account. - // +kubebuilder:validation:Required - Delete *bool `json:"delete" tf:"delete,omitempty"` + // +kubebuilder:validation:Optional + Delete *bool `json:"delete,omitempty" tf:"delete,omitempty"` // (Defaults to 5 minutes) Used when retrieving the Storage Account. - // +kubebuilder:validation:Required - Read *bool `json:"read" tf:"read,omitempty"` + // +kubebuilder:validation:Optional + Read *bool `json:"read,omitempty" tf:"read,omitempty"` // Specifies the number of days that logs will be retained. // +kubebuilder:validation:Optional RetentionPolicyDays *float64 `json:"retentionPolicyDays,omitempty" tf:"retention_policy_days,omitempty"` // The version of storage analytics to configure. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` // Indicates whether all write requests should be logged. - // +kubebuilder:validation:Required - Write *bool `json:"write" tf:"write,omitempty"` + // +kubebuilder:validation:Optional + Write *bool `json:"write,omitempty" tf:"write,omitempty"` +} + +type MinuteMetricsInitParameters struct { + + // Indicates whether minute metrics are enabled for the Queue service. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Indicates whether metrics should generate summary statistics for called API operations. + IncludeApis *bool `json:"includeApis,omitempty" tf:"include_apis,omitempty"` + + // Specifies the number of days that logs will be retained. + RetentionPolicyDays *float64 `json:"retentionPolicyDays,omitempty" tf:"retention_policy_days,omitempty"` + + // The version of storage analytics to configure. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type MinuteMetricsObservation struct { @@ -746,8 +1029,8 @@ type MinuteMetricsObservation struct { type MinuteMetricsParameters struct { // Indicates whether minute metrics are enabled for the Queue service. - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Indicates whether metrics should generate summary statistics for called API operations. // +kubebuilder:validation:Optional @@ -758,8 +1041,26 @@ type MinuteMetricsParameters struct { RetentionPolicyDays *float64 `json:"retentionPolicyDays,omitempty" tf:"retention_policy_days,omitempty"` // The version of storage analytics to configure. - // +kubebuilder:validation:Required - Version *string `json:"version" tf:"version,omitempty"` + // +kubebuilder:validation:Optional + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + +type NetworkRulesInitParameters struct { + + // Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Valid options are any combination of Logging, Metrics, AzureServices, or None. + Bypass []*string `json:"bypass,omitempty" tf:"bypass,omitempty"` + + // Specifies the default action of allow or deny when no other rules match. Valid options are Deny or Allow. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + + // List of public IP or IP ranges in CIDR Format. Only IPv4 addresses are allowed. /31 CIDRs, /32 CIDRs, and Private IP address ranges (as defined in RFC 1918), are not allowed. + IPRules []*string `json:"ipRules,omitempty" tf:"ip_rules,omitempty"` + + // One or More private_link_access block as defined below. + PrivateLinkAccess []PrivateLinkAccessInitParameters `json:"privateLinkAccess,omitempty" tf:"private_link_access,omitempty"` + + // A list of resource ids for subnets. + VirtualNetworkSubnetIds []*string `json:"virtualNetworkSubnetIds,omitempty" tf:"virtual_network_subnet_ids,omitempty"` } type NetworkRulesObservation struct { @@ -787,8 +1088,8 @@ type NetworkRulesParameters struct { Bypass []*string `json:"bypass,omitempty" tf:"bypass,omitempty"` // Specifies the default action of allow or deny when no other rules match. Valid options are Deny or Allow. - // +kubebuilder:validation:Required - DefaultAction *string `json:"defaultAction" tf:"default_action,omitempty"` + // +kubebuilder:validation:Optional + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // List of public IP or IP ranges in CIDR Format. Only IPv4 addresses are allowed. /31 CIDRs, /32 CIDRs, and Private IP address ranges (as defined in RFC 1918), are not allowed. // +kubebuilder:validation:Optional @@ -803,6 +1104,15 @@ type NetworkRulesParameters struct { VirtualNetworkSubnetIds []*string `json:"virtualNetworkSubnetIds,omitempty" tf:"virtual_network_subnet_ids,omitempty"` } +type PrivateLinkAccessInitParameters struct { + + // The resource id of the resource access rule to be granted access. + EndpointResourceID *string `json:"endpointResourceId,omitempty" tf:"endpoint_resource_id,omitempty"` + + // The tenant id of the resource of the resource access rule to be granted access. Defaults to the current tenant id. + EndpointTenantID *string `json:"endpointTenantId,omitempty" tf:"endpoint_tenant_id,omitempty"` +} + type PrivateLinkAccessObservation struct { // The resource id of the resource access rule to be granted access. @@ -815,14 +1125,33 @@ type PrivateLinkAccessObservation struct { type PrivateLinkAccessParameters struct { // The resource id of the resource access rule to be granted access. - // +kubebuilder:validation:Required - EndpointResourceID *string `json:"endpointResourceId" tf:"endpoint_resource_id,omitempty"` + // +kubebuilder:validation:Optional + EndpointResourceID *string `json:"endpointResourceId,omitempty" tf:"endpoint_resource_id,omitempty"` // The tenant id of the resource of the resource access rule to be granted access. Defaults to the current tenant id. // +kubebuilder:validation:Optional EndpointTenantID *string `json:"endpointTenantId,omitempty" tf:"endpoint_tenant_id,omitempty"` } +type QueuePropertiesCorsRuleInitParameters struct { + + // A list of headers that are allowed to be a part of the cross-origin request. + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` + + // A list of HTTP methods that are allowed to be executed by the origin. Valid options are + // DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` + + // A list of origin domains that will be allowed by CORS. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // A list of response headers that are exposed to CORS clients. + ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` + + // The number of seconds the client should cache a preflight response. + MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` +} + type QueuePropertiesCorsRuleObservation struct { // A list of headers that are allowed to be a part of the cross-origin request. @@ -845,25 +1174,40 @@ type QueuePropertiesCorsRuleObservation struct { type QueuePropertiesCorsRuleParameters struct { // A list of headers that are allowed to be a part of the cross-origin request. - // +kubebuilder:validation:Required - AllowedHeaders []*string `json:"allowedHeaders" tf:"allowed_headers,omitempty"` + // +kubebuilder:validation:Optional + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // A list of HTTP methods that are allowed to be executed by the origin. Valid options are // DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. - // +kubebuilder:validation:Required - AllowedMethods []*string `json:"allowedMethods" tf:"allowed_methods,omitempty"` + // +kubebuilder:validation:Optional + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A list of origin domains that will be allowed by CORS. - // +kubebuilder:validation:Required - AllowedOrigins []*string `json:"allowedOrigins" tf:"allowed_origins,omitempty"` + // +kubebuilder:validation:Optional + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // A list of response headers that are exposed to CORS clients. - // +kubebuilder:validation:Required - ExposedHeaders []*string `json:"exposedHeaders" tf:"exposed_headers,omitempty"` + // +kubebuilder:validation:Optional + ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` // The number of seconds the client should cache a preflight response. - // +kubebuilder:validation:Required - MaxAgeInSeconds *float64 `json:"maxAgeInSeconds" tf:"max_age_in_seconds,omitempty"` + // +kubebuilder:validation:Optional + MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` +} + +type QueuePropertiesInitParameters struct { + + // A cors_rule block as defined above. + CorsRule []QueuePropertiesCorsRuleInitParameters `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` + + // A hour_metrics block as defined below. + HourMetrics []HourMetricsInitParameters `json:"hourMetrics,omitempty" tf:"hour_metrics,omitempty"` + + // A logging block as defined below. + Logging []LoggingInitParameters `json:"logging,omitempty" tf:"logging,omitempty"` + + // A minute_metrics block as defined below. + MinuteMetrics []MinuteMetricsInitParameters `json:"minuteMetrics,omitempty" tf:"minute_metrics,omitempty"` } type QueuePropertiesObservation struct { @@ -900,6 +1244,12 @@ type QueuePropertiesParameters struct { MinuteMetrics []MinuteMetricsParameters `json:"minuteMetrics,omitempty" tf:"minute_metrics,omitempty"` } +type RestorePolicyInitParameters struct { + + // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. + Days *float64 `json:"days,omitempty" tf:"days,omitempty"` +} + type RestorePolicyObservation struct { // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. @@ -909,8 +1259,14 @@ type RestorePolicyObservation struct { type RestorePolicyParameters struct { // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. - // +kubebuilder:validation:Required - Days *float64 `json:"days" tf:"days,omitempty"` + // +kubebuilder:validation:Optional + Days *float64 `json:"days,omitempty" tf:"days,omitempty"` +} + +type RetentionPolicyInitParameters struct { + + // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. + Days *float64 `json:"days,omitempty" tf:"days,omitempty"` } type RetentionPolicyObservation struct { @@ -926,6 +1282,18 @@ type RetentionPolicyParameters struct { Days *float64 `json:"days,omitempty" tf:"days,omitempty"` } +type RoutingInitParameters struct { + + // Specifies the kind of network routing opted by the user. Possible values are InternetRouting and MicrosoftRouting. Defaults to MicrosoftRouting. + Choice *string `json:"choice,omitempty" tf:"choice,omitempty"` + + // Should internet routing storage endpoints be published? Defaults to false. + PublishInternetEndpoints *bool `json:"publishInternetEndpoints,omitempty" tf:"publish_internet_endpoints,omitempty"` + + // Should Microsoft routing storage endpoints be published? Defaults to false. + PublishMicrosoftEndpoints *bool `json:"publishMicrosoftEndpoints,omitempty" tf:"publish_microsoft_endpoints,omitempty"` +} + type RoutingObservation struct { // Specifies the kind of network routing opted by the user. Possible values are InternetRouting and MicrosoftRouting. Defaults to MicrosoftRouting. @@ -953,6 +1321,15 @@ type RoutingParameters struct { PublishMicrosoftEndpoints *bool `json:"publishMicrosoftEndpoints,omitempty" tf:"publish_microsoft_endpoints,omitempty"` } +type SASPolicyInitParameters struct { + + // The SAS expiration action. The only possible value is Log at this moment. Defaults to Log. + ExpirationAction *string `json:"expirationAction,omitempty" tf:"expiration_action,omitempty"` + + // The SAS expiration period in format of DD.HH:MM:SS. + ExpirationPeriod *string `json:"expirationPeriod,omitempty" tf:"expiration_period,omitempty"` +} + type SASPolicyObservation struct { // The SAS expiration action. The only possible value is Log at this moment. Defaults to Log. @@ -969,8 +1346,26 @@ type SASPolicyParameters struct { ExpirationAction *string `json:"expirationAction,omitempty" tf:"expiration_action,omitempty"` // The SAS expiration period in format of DD.HH:MM:SS. - // +kubebuilder:validation:Required - ExpirationPeriod *string `json:"expirationPeriod" tf:"expiration_period,omitempty"` + // +kubebuilder:validation:Optional + ExpirationPeriod *string `json:"expirationPeriod,omitempty" tf:"expiration_period,omitempty"` +} + +type SMBInitParameters struct { + + // A set of SMB authentication methods. Possible values are NTLMv2, and Kerberos. + AuthenticationTypes []*string `json:"authenticationTypes,omitempty" tf:"authentication_types,omitempty"` + + // A set of SMB channel encryption. Possible values are AES-128-CCM, AES-128-GCM, and AES-256-GCM. + ChannelEncryptionType []*string `json:"channelEncryptionType,omitempty" tf:"channel_encryption_type,omitempty"` + + // A set of Kerberos ticket encryption. Possible values are RC4-HMAC, and AES-256. + KerberosTicketEncryptionType []*string `json:"kerberosTicketEncryptionType,omitempty" tf:"kerberos_ticket_encryption_type,omitempty"` + + // Indicates whether multichannel is enabled. Defaults to false. This is only supported on Premium storage accounts. + MultichannelEnabled *bool `json:"multichannelEnabled,omitempty" tf:"multichannel_enabled,omitempty"` + + // A set of SMB protocol versions. Possible values are SMB2.1, SMB3.0, and SMB3.1.1. + Versions []*string `json:"versions,omitempty" tf:"versions,omitempty"` } type SMBObservation struct { @@ -1014,6 +1409,25 @@ type SMBParameters struct { Versions []*string `json:"versions,omitempty" tf:"versions,omitempty"` } +type SharePropertiesCorsRuleInitParameters struct { + + // A list of headers that are allowed to be a part of the cross-origin request. + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` + + // A list of HTTP methods that are allowed to be executed by the origin. Valid options are + // DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` + + // A list of origin domains that will be allowed by CORS. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // A list of response headers that are exposed to CORS clients. + ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` + + // The number of seconds the client should cache a preflight response. + MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` +} + type SharePropertiesCorsRuleObservation struct { // A list of headers that are allowed to be a part of the cross-origin request. @@ -1036,25 +1450,37 @@ type SharePropertiesCorsRuleObservation struct { type SharePropertiesCorsRuleParameters struct { // A list of headers that are allowed to be a part of the cross-origin request. - // +kubebuilder:validation:Required - AllowedHeaders []*string `json:"allowedHeaders" tf:"allowed_headers,omitempty"` + // +kubebuilder:validation:Optional + AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // A list of HTTP methods that are allowed to be executed by the origin. Valid options are // DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. - // +kubebuilder:validation:Required - AllowedMethods []*string `json:"allowedMethods" tf:"allowed_methods,omitempty"` + // +kubebuilder:validation:Optional + AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A list of origin domains that will be allowed by CORS. - // +kubebuilder:validation:Required - AllowedOrigins []*string `json:"allowedOrigins" tf:"allowed_origins,omitempty"` + // +kubebuilder:validation:Optional + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // A list of response headers that are exposed to CORS clients. - // +kubebuilder:validation:Required - ExposedHeaders []*string `json:"exposedHeaders" tf:"exposed_headers,omitempty"` + // +kubebuilder:validation:Optional + ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` // The number of seconds the client should cache a preflight response. - // +kubebuilder:validation:Required - MaxAgeInSeconds *float64 `json:"maxAgeInSeconds" tf:"max_age_in_seconds,omitempty"` + // +kubebuilder:validation:Optional + MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` +} + +type SharePropertiesInitParameters struct { + + // A cors_rule block as defined below. + CorsRule []SharePropertiesCorsRuleInitParameters `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` + + // A retention_policy block as defined below. + RetentionPolicy []RetentionPolicyInitParameters `json:"retentionPolicy,omitempty" tf:"retention_policy,omitempty"` + + // A smb block as defined below. + SMB []SMBInitParameters `json:"smb,omitempty" tf:"smb,omitempty"` } type SharePropertiesObservation struct { @@ -1084,6 +1510,15 @@ type SharePropertiesParameters struct { SMB []SMBParameters `json:"smb,omitempty" tf:"smb,omitempty"` } +type StaticWebsiteInitParameters struct { + + // The absolute path to a custom webpage that should be used when a request is made which does not correspond to an existing file. + Error404Document *string `json:"error404Document,omitempty" tf:"error_404_document,omitempty"` + + // The webpage that Azure Storage serves for requests to the root of a website or any subfolder. For example, index.html. The value is case-sensitive. + IndexDocument *string `json:"indexDocument,omitempty" tf:"index_document,omitempty"` +} + type StaticWebsiteObservation struct { // The absolute path to a custom webpage that should be used when a request is made which does not correspond to an existing file. @@ -1108,6 +1543,18 @@ type StaticWebsiteParameters struct { type AccountSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccountParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccountInitParameters `json:"initProvider,omitempty"` } // AccountStatus defines the observed state of Account. @@ -1128,9 +1575,9 @@ type AccountStatus struct { type Account struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.accountReplicationType)",message="accountReplicationType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.accountTier)",message="accountTier is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.accountReplicationType) || has(self.initProvider.accountReplicationType)",message="accountReplicationType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.accountTier) || has(self.initProvider.accountTier)",message="accountTier is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec AccountSpec `json:"spec"` Status AccountStatus `json:"status,omitempty"` } diff --git a/apis/storage/v1beta1/zz_accountlocaluser_types.go b/apis/storage/v1beta1/zz_accountlocaluser_types.go index 8cf612d5e..1b9bc76aa 100755 --- a/apis/storage/v1beta1/zz_accountlocaluser_types.go +++ b/apis/storage/v1beta1/zz_accountlocaluser_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccountLocalUserInitParameters struct { + + // The home directory of the Storage Account Local User. + HomeDirectory *string `json:"homeDirectory,omitempty" tf:"home_directory,omitempty"` + + // One or more permission_scope blocks as defined below. + PermissionScope []PermissionScopeInitParameters `json:"permissionScope,omitempty" tf:"permission_scope,omitempty"` + + // One or more ssh_authorized_key blocks as defined below. + SSHAuthorizedKey []SSHAuthorizedKeyInitParameters `json:"sshAuthorizedKey,omitempty" tf:"ssh_authorized_key,omitempty"` + + // Specifies whether SSH Key Authentication is enabled. Defaults to false. + SSHKeyEnabled *bool `json:"sshKeyEnabled,omitempty" tf:"ssh_key_enabled,omitempty"` + + // Specifies whether SSH Password Authentication is enabled. Defaults to false. + SSHPasswordEnabled *bool `json:"sshPasswordEnabled,omitempty" tf:"ssh_password_enabled,omitempty"` +} + type AccountLocalUserObservation struct { // The home directory of the Storage Account Local User. @@ -74,6 +92,15 @@ type AccountLocalUserParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` } +type PermissionScopeInitParameters struct { + + // A permissions block as defined below. + Permissions []PermissionsInitParameters `json:"permissions,omitempty" tf:"permissions,omitempty"` + + // The storage service used by this Storage Account Local User. Possible values are blob and file. + Service *string `json:"service,omitempty" tf:"service,omitempty"` +} + type PermissionScopeObservation struct { // A permissions block as defined below. @@ -89,8 +116,8 @@ type PermissionScopeObservation struct { type PermissionScopeParameters struct { // A permissions block as defined below. - // +kubebuilder:validation:Required - Permissions []PermissionsParameters `json:"permissions" tf:"permissions,omitempty"` + // +kubebuilder:validation:Optional + Permissions []PermissionsParameters `json:"permissions,omitempty" tf:"permissions,omitempty"` // The container name (when service is set to blob) or the file share name (when service is set to file), used by the Storage Account Local User. // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/storage/v1beta1.Container @@ -106,8 +133,26 @@ type PermissionScopeParameters struct { ResourceNameSelector *v1.Selector `json:"resourceNameSelector,omitempty" tf:"-"` // The storage service used by this Storage Account Local User. Possible values are blob and file. - // +kubebuilder:validation:Required - Service *string `json:"service" tf:"service,omitempty"` + // +kubebuilder:validation:Optional + Service *string `json:"service,omitempty" tf:"service,omitempty"` +} + +type PermissionsInitParameters struct { + + // (Defaults to 30 minutes) Used when creating the Storage Account Local User. + Create *bool `json:"create,omitempty" tf:"create,omitempty"` + + // (Defaults to 30 minutes) Used when deleting the Storage Account Local User. + Delete *bool `json:"delete,omitempty" tf:"delete,omitempty"` + + // Specifies if the Local User has the list permission for this scope. Defaults to false. + List *bool `json:"list,omitempty" tf:"list,omitempty"` + + // (Defaults to 5 minutes) Used when retrieving the Storage Account Local User. + Read *bool `json:"read,omitempty" tf:"read,omitempty"` + + // Specifies if the Local User has the write permission for this scope. Defaults to false. + Write *bool `json:"write,omitempty" tf:"write,omitempty"` } type PermissionsObservation struct { @@ -151,6 +196,15 @@ type PermissionsParameters struct { Write *bool `json:"write,omitempty" tf:"write,omitempty"` } +type SSHAuthorizedKeyInitParameters struct { + + // The description of this SSH authorized key. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The public key value of this SSH authorized key. + Key *string `json:"key,omitempty" tf:"key,omitempty"` +} + type SSHAuthorizedKeyObservation struct { // The description of this SSH authorized key. @@ -167,14 +221,26 @@ type SSHAuthorizedKeyParameters struct { Description *string `json:"description,omitempty" tf:"description,omitempty"` // The public key value of this SSH authorized key. - // +kubebuilder:validation:Required - Key *string `json:"key" tf:"key,omitempty"` + // +kubebuilder:validation:Optional + Key *string `json:"key,omitempty" tf:"key,omitempty"` } // AccountLocalUserSpec defines the desired state of AccountLocalUser type AccountLocalUserSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccountLocalUserParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccountLocalUserInitParameters `json:"initProvider,omitempty"` } // AccountLocalUserStatus defines the observed state of AccountLocalUser. diff --git a/apis/storage/v1beta1/zz_accountnetworkrules_types.go b/apis/storage/v1beta1/zz_accountnetworkrules_types.go index d286f9563..e5094e546 100755 --- a/apis/storage/v1beta1/zz_accountnetworkrules_types.go +++ b/apis/storage/v1beta1/zz_accountnetworkrules_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccountNetworkRulesInitParameters struct { + + // Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Valid options are any combination of Logging, Metrics, AzureServices, or None. + Bypass []*string `json:"bypass,omitempty" tf:"bypass,omitempty"` + + // Specifies the default action of allow or deny when no other rules match. Valid options are Deny or Allow. + DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` + + // List of public IP or IP ranges in CIDR Format. Only IPv4 addresses are allowed. Private IP address ranges (as defined in RFC 1918) are not allowed. + IPRules []*string `json:"ipRules,omitempty" tf:"ip_rules,omitempty"` + + // One or More private_link_access block as defined below. + PrivateLinkAccess []AccountNetworkRulesPrivateLinkAccessInitParameters `json:"privateLinkAccess,omitempty" tf:"private_link_access,omitempty"` + + // A list of virtual network subnet ids to secure the storage account. + VirtualNetworkSubnetIds []*string `json:"virtualNetworkSubnetIds,omitempty" tf:"virtual_network_subnet_ids,omitempty"` +} + type AccountNetworkRulesObservation struct { // Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Valid options are any combination of Logging, Metrics, AzureServices, or None. @@ -74,6 +92,15 @@ type AccountNetworkRulesParameters struct { VirtualNetworkSubnetIds []*string `json:"virtualNetworkSubnetIds,omitempty" tf:"virtual_network_subnet_ids,omitempty"` } +type AccountNetworkRulesPrivateLinkAccessInitParameters struct { + + // The resource id of the resource access rule to be granted access. + EndpointResourceID *string `json:"endpointResourceId,omitempty" tf:"endpoint_resource_id,omitempty"` + + // The tenant id of the resource of the resource access rule to be granted access. Defaults to the current tenant id. + EndpointTenantID *string `json:"endpointTenantId,omitempty" tf:"endpoint_tenant_id,omitempty"` +} + type AccountNetworkRulesPrivateLinkAccessObservation struct { // The resource id of the resource access rule to be granted access. @@ -86,8 +113,8 @@ type AccountNetworkRulesPrivateLinkAccessObservation struct { type AccountNetworkRulesPrivateLinkAccessParameters struct { // The resource id of the resource access rule to be granted access. - // +kubebuilder:validation:Required - EndpointResourceID *string `json:"endpointResourceId" tf:"endpoint_resource_id,omitempty"` + // +kubebuilder:validation:Optional + EndpointResourceID *string `json:"endpointResourceId,omitempty" tf:"endpoint_resource_id,omitempty"` // The tenant id of the resource of the resource access rule to be granted access. Defaults to the current tenant id. // +kubebuilder:validation:Optional @@ -98,6 +125,18 @@ type AccountNetworkRulesPrivateLinkAccessParameters struct { type AccountNetworkRulesSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AccountNetworkRulesParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AccountNetworkRulesInitParameters `json:"initProvider,omitempty"` } // AccountNetworkRulesStatus defines the observed state of AccountNetworkRules. @@ -118,7 +157,7 @@ type AccountNetworkRulesStatus struct { type AccountNetworkRules struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultAction)",message="defaultAction is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.defaultAction) || has(self.initProvider.defaultAction)",message="defaultAction is a required parameter" Spec AccountNetworkRulesSpec `json:"spec"` Status AccountNetworkRulesStatus `json:"status,omitempty"` } diff --git a/apis/storage/v1beta1/zz_blob_types.go b/apis/storage/v1beta1/zz_blob_types.go index 1d5895f42..cad7b2e9c 100755 --- a/apis/storage/v1beta1/zz_blob_types.go +++ b/apis/storage/v1beta1/zz_blob_types.go @@ -13,6 +13,42 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BlobInitParameters struct { + + // The access tier of the storage blob. Possible values are Archive, Cool and Hot. + AccessTier *string `json:"accessTier,omitempty" tf:"access_tier,omitempty"` + + // Controls the cache control header content of the response when blob is requested . + CacheControl *string `json:"cacheControl,omitempty" tf:"cache_control,omitempty"` + + // The MD5 sum of the blob contents. Cannot be defined if source_uri is defined, or if blob type is Append or Page. Changing this forces a new resource to be created. + ContentMd5 *string `json:"contentMd5,omitempty" tf:"content_md5,omitempty"` + + // The content type of the storage blob. Cannot be defined if source_uri is defined. Defaults to application/octet-stream. + ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` + + // A map of custom blob metadata. + Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` + + // The number of workers per CPU core to run for concurrent uploads. Defaults to 8. Changing this forces a new resource to be created. + Parallelism *float64 `json:"parallelism,omitempty" tf:"parallelism,omitempty"` + + // Used only for page blobs to specify the size in bytes of the blob to be created. Must be a multiple of 512. Defaults to 0. Changing this forces a new resource to be created. + Size *float64 `json:"size,omitempty" tf:"size,omitempty"` + + // An absolute path to a file on the local system. This field cannot be specified for Append blobs and cannot be specified if source_content or source_uri is specified. Changing this forces a new resource to be created. + Source *string `json:"source,omitempty" tf:"source,omitempty"` + + // The content for this blob which should be defined inline. This field can only be specified for Block blobs and cannot be specified if source or source_uri is specified. Changing this forces a new resource to be created. + SourceContent *string `json:"sourceContent,omitempty" tf:"source_content,omitempty"` + + // The URI of an existing blob, or a file in the Azure File service, to use as the source contents for the blob to be created. Changing this forces a new resource to be created. This field cannot be specified for Append blobs and cannot be specified if source or source_content is specified. + SourceURI *string `json:"sourceUri,omitempty" tf:"source_uri,omitempty"` + + // The type of the storage blob to be created. Possible values are Append, Block or Page. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type BlobObservation struct { // The access tier of the storage blob. Possible values are Archive, Cool and Hot. @@ -140,6 +176,18 @@ type BlobParameters struct { type BlobSpec struct { v1.ResourceSpec `json:",inline"` ForProvider BlobParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BlobInitParameters `json:"initProvider,omitempty"` } // BlobStatus defines the observed state of Blob. @@ -160,7 +208,7 @@ type BlobStatus struct { type Blob struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" Spec BlobSpec `json:"spec"` Status BlobStatus `json:"status,omitempty"` } diff --git a/apis/storage/v1beta1/zz_blobinventorypolicy_types.go b/apis/storage/v1beta1/zz_blobinventorypolicy_types.go index 91628fc2c..1b39a9cb9 100755 --- a/apis/storage/v1beta1/zz_blobinventorypolicy_types.go +++ b/apis/storage/v1beta1/zz_blobinventorypolicy_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type BlobInventoryPolicyInitParameters struct { + + // One or more rules blocks as defined below. + Rules []RulesInitParameters `json:"rules,omitempty" tf:"rules,omitempty"` +} + type BlobInventoryPolicyObservation struct { // The ID of the Storage Blob Inventory Policy. @@ -46,6 +52,27 @@ type BlobInventoryPolicyParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` } +type FilterInitParameters struct { + + // A set of blob types. Possible values are blockBlob, appendBlob, and pageBlob. The storage account with is_hns_enabled is true doesn't support pageBlob. + BlobTypes []*string `json:"blobTypes,omitempty" tf:"blob_types,omitempty"` + + // A set of strings for blob prefixes to be excluded. Maximum of 10 blob prefixes. + ExcludePrefixes []*string `json:"excludePrefixes,omitempty" tf:"exclude_prefixes,omitempty"` + + // Includes blob versions in blob inventory or not? Defaults to false. + IncludeBlobVersions *bool `json:"includeBlobVersions,omitempty" tf:"include_blob_versions,omitempty"` + + // Includes deleted blobs in blob inventory or not? Defaults to false. + IncludeDeleted *bool `json:"includeDeleted,omitempty" tf:"include_deleted,omitempty"` + + // Includes blob snapshots in blob inventory or not? Defaults to false. + IncludeSnapshots *bool `json:"includeSnapshots,omitempty" tf:"include_snapshots,omitempty"` + + // A set of strings for blob prefixes to be matched. Maximum of 10 blob prefixes. + PrefixMatch []*string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` +} + type FilterObservation struct { // A set of blob types. Possible values are blockBlob, appendBlob, and pageBlob. The storage account with is_hns_enabled is true doesn't support pageBlob. @@ -70,8 +97,8 @@ type FilterObservation struct { type FilterParameters struct { // A set of blob types. Possible values are blockBlob, appendBlob, and pageBlob. The storage account with is_hns_enabled is true doesn't support pageBlob. - // +kubebuilder:validation:Required - BlobTypes []*string `json:"blobTypes" tf:"blob_types,omitempty"` + // +kubebuilder:validation:Optional + BlobTypes []*string `json:"blobTypes,omitempty" tf:"blob_types,omitempty"` // A set of strings for blob prefixes to be excluded. Maximum of 10 blob prefixes. // +kubebuilder:validation:Optional @@ -94,6 +121,27 @@ type FilterParameters struct { PrefixMatch []*string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` } +type RulesInitParameters struct { + + // A filter block as defined above. Can only be set when the scope is Blob. + Filter []FilterInitParameters `json:"filter,omitempty" tf:"filter,omitempty"` + + // The format of the inventory files. Possible values are Csv and Parquet. + Format *string `json:"format,omitempty" tf:"format,omitempty"` + + // The name which should be used for this Blob Inventory Policy Rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The inventory schedule applied by this rule. Possible values are Daily and Weekly. + Schedule *string `json:"schedule,omitempty" tf:"schedule,omitempty"` + + // A list of fields to be included in the inventory. See the Azure API reference for all the supported fields. + SchemaFields []*string `json:"schemaFields,omitempty" tf:"schema_fields,omitempty"` + + // The scope of the inventory for this rule. Possible values are Blob and Container. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` +} + type RulesObservation struct { // A filter block as defined above. Can only be set when the scope is Blob. @@ -125,24 +173,24 @@ type RulesParameters struct { Filter []FilterParameters `json:"filter,omitempty" tf:"filter,omitempty"` // The format of the inventory files. Possible values are Csv and Parquet. - // +kubebuilder:validation:Required - Format *string `json:"format" tf:"format,omitempty"` + // +kubebuilder:validation:Optional + Format *string `json:"format,omitempty" tf:"format,omitempty"` // The name which should be used for this Blob Inventory Policy Rule. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The inventory schedule applied by this rule. Possible values are Daily and Weekly. - // +kubebuilder:validation:Required - Schedule *string `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule *string `json:"schedule,omitempty" tf:"schedule,omitempty"` // A list of fields to be included in the inventory. See the Azure API reference for all the supported fields. - // +kubebuilder:validation:Required - SchemaFields []*string `json:"schemaFields" tf:"schema_fields,omitempty"` + // +kubebuilder:validation:Optional + SchemaFields []*string `json:"schemaFields,omitempty" tf:"schema_fields,omitempty"` // The scope of the inventory for this rule. Possible values are Blob and Container. - // +kubebuilder:validation:Required - Scope *string `json:"scope" tf:"scope,omitempty"` + // +kubebuilder:validation:Optional + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // The storage container name to store the blob inventory files for this rule. // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/storage/v1beta1.Container @@ -162,6 +210,18 @@ type RulesParameters struct { type BlobInventoryPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider BlobInventoryPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider BlobInventoryPolicyInitParameters `json:"initProvider,omitempty"` } // BlobInventoryPolicyStatus defines the observed state of BlobInventoryPolicy. @@ -182,7 +242,7 @@ type BlobInventoryPolicyStatus struct { type BlobInventoryPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rules)",message="rules is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.rules) || has(self.initProvider.rules)",message="rules is a required parameter" Spec BlobInventoryPolicySpec `json:"spec"` Status BlobInventoryPolicyStatus `json:"status,omitempty"` } diff --git a/apis/storage/v1beta1/zz_container_types.go b/apis/storage/v1beta1/zz_container_types.go index 78c9b9d57..847c33d3d 100755 --- a/apis/storage/v1beta1/zz_container_types.go +++ b/apis/storage/v1beta1/zz_container_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ContainerInitParameters struct { + + // The Access Level configured for this Container. Possible values are blob, container or private. Defaults to private. + ContainerAccessType *string `json:"containerAccessType,omitempty" tf:"container_access_type,omitempty"` + + // A mapping of MetaData for this Container. All metadata keys should be lowercase. + Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` +} + type ContainerObservation struct { // The Access Level configured for this Container. Possible values are blob, container or private. Defaults to private. @@ -65,6 +74,18 @@ type ContainerParameters struct { type ContainerSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ContainerParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ContainerInitParameters `json:"initProvider,omitempty"` } // ContainerStatus defines the observed state of Container. diff --git a/apis/storage/v1beta1/zz_datalakegen2filesystem_types.go b/apis/storage/v1beta1/zz_datalakegen2filesystem_types.go index fca82bc46..8de55c9f0 100755 --- a/apis/storage/v1beta1/zz_datalakegen2filesystem_types.go +++ b/apis/storage/v1beta1/zz_datalakegen2filesystem_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AceInitParameters struct { + + // Specifies the Object ID of the Azure Active Directory User or Group that the entry relates to. Only valid for user or group entries. + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // Specifies the permissions for the entry in rwx form. For example, rwx gives full permissions but r-- only gives read permissions. + Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` + + // Specifies whether the ACE represents an access entry or a default entry. Default value is access. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + + // Specifies the type of entry. Can be user, group, mask or other. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type AceObservation struct { // Specifies the Object ID of the Azure Active Directory User or Group that the entry relates to. Only valid for user or group entries. @@ -35,16 +50,31 @@ type AceParameters struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` // Specifies the permissions for the entry in rwx form. For example, rwx gives full permissions but r-- only gives read permissions. - // +kubebuilder:validation:Required - Permissions *string `json:"permissions" tf:"permissions,omitempty"` + // +kubebuilder:validation:Optional + Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` // Specifies whether the ACE represents an access entry or a default entry. Default value is access. // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // Specifies the type of entry. Can be user, group, mask or other. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type DataLakeGen2FileSystemInitParameters struct { + + // One or more ace blocks as defined below to specify the entries for the ACL for the path. + Ace []AceInitParameters `json:"ace,omitempty" tf:"ace,omitempty"` + + // Specifies the Object ID of the Azure Active Directory Group to make the owning group of the root path (i.e. /). Possible values also include $superuser. + Group *string `json:"group,omitempty" tf:"group,omitempty"` + + // Specifies the Object ID of the Azure Active Directory User to make the owning user of the root path (i.e. /). Possible values also include $superuser. + Owner *string `json:"owner,omitempty" tf:"owner,omitempty"` + + // A mapping of Key to Base64-Encoded Values which should be assigned to this Data Lake Gen2 File System. + Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` } type DataLakeGen2FileSystemObservation struct { @@ -105,6 +135,18 @@ type DataLakeGen2FileSystemParameters struct { type DataLakeGen2FileSystemSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataLakeGen2FileSystemParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataLakeGen2FileSystemInitParameters `json:"initProvider,omitempty"` } // DataLakeGen2FileSystemStatus defines the observed state of DataLakeGen2FileSystem. diff --git a/apis/storage/v1beta1/zz_datalakegen2path_types.go b/apis/storage/v1beta1/zz_datalakegen2path_types.go index 3352a2b59..ff8ded262 100755 --- a/apis/storage/v1beta1/zz_datalakegen2path_types.go +++ b/apis/storage/v1beta1/zz_datalakegen2path_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DataLakeGen2PathAceInitParameters struct { + + // Specifies the Object ID of the Azure Active Directory User or Group that the entry relates to. Only valid for user or group entries. + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // Specifies the permissions for the entry in rwx form. For example, rwx gives full permissions but r-- only gives read permissions. + Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` + + // Specifies whether the ACE represents an access entry or a default entry. Default value is access. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + + // Specifies the type of entry. Can be user, group, mask or other. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type DataLakeGen2PathAceObservation struct { // Specifies the Object ID of the Azure Active Directory User or Group that the entry relates to. Only valid for user or group entries. @@ -35,16 +50,34 @@ type DataLakeGen2PathAceParameters struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` // Specifies the permissions for the entry in rwx form. For example, rwx gives full permissions but r-- only gives read permissions. - // +kubebuilder:validation:Required - Permissions *string `json:"permissions" tf:"permissions,omitempty"` + // +kubebuilder:validation:Optional + Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` // Specifies whether the ACE represents an access entry or a default entry. Default value is access. // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // Specifies the type of entry. Can be user, group, mask or other. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type DataLakeGen2PathInitParameters struct { + + // One or more ace blocks as defined below to specify the entries for the ACL for the path. + Ace []DataLakeGen2PathAceInitParameters `json:"ace,omitempty" tf:"ace,omitempty"` + + // Specifies the Object ID of the Azure Active Directory Group to make the owning group. Possible values also include $superuser. + Group *string `json:"group,omitempty" tf:"group,omitempty"` + + // Specifies the Object ID of the Azure Active Directory User to make the owning user. Possible values also include $superuser. + Owner *string `json:"owner,omitempty" tf:"owner,omitempty"` + + // The path which should be created within the Data Lake Gen2 File System in the Storage Account. Changing this forces a new resource to be created. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // Specifies the type for path to create. Currently only directory is supported. Changing this forces a new resource to be created. + Resource *string `json:"resource,omitempty" tf:"resource,omitempty"` } type DataLakeGen2PathObservation struct { @@ -128,6 +161,18 @@ type DataLakeGen2PathParameters struct { type DataLakeGen2PathSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DataLakeGen2PathParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DataLakeGen2PathInitParameters `json:"initProvider,omitempty"` } // DataLakeGen2PathStatus defines the observed state of DataLakeGen2Path. @@ -148,8 +193,8 @@ type DataLakeGen2PathStatus struct { type DataLakeGen2Path struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.path)",message="path is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.resource)",message="resource is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.path) || has(self.initProvider.path)",message="path is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.resource) || has(self.initProvider.resource)",message="resource is a required parameter" Spec DataLakeGen2PathSpec `json:"spec"` Status DataLakeGen2PathStatus `json:"status,omitempty"` } diff --git a/apis/storage/v1beta1/zz_encryptionscope_types.go b/apis/storage/v1beta1/zz_encryptionscope_types.go index 579139c93..abe8561c2 100755 --- a/apis/storage/v1beta1/zz_encryptionscope_types.go +++ b/apis/storage/v1beta1/zz_encryptionscope_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EncryptionScopeInitParameters struct { + + // Is a secondary layer of encryption with Platform Managed Keys for data applied? Changing this forces a new resource to be created. + InfrastructureEncryptionRequired *bool `json:"infrastructureEncryptionRequired,omitempty" tf:"infrastructure_encryption_required,omitempty"` + + // The ID of the Key Vault Key. Required when source is Microsoft.KeyVault. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // The source of the Storage Encryption Scope. Possible values are Microsoft.KeyVault and Microsoft.Storage. + Source *string `json:"source,omitempty" tf:"source,omitempty"` +} + type EncryptionScopeObservation struct { // The ID of the Storage Encryption Scope. @@ -64,6 +76,18 @@ type EncryptionScopeParameters struct { type EncryptionScopeSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EncryptionScopeParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EncryptionScopeInitParameters `json:"initProvider,omitempty"` } // EncryptionScopeStatus defines the observed state of EncryptionScope. @@ -84,7 +108,7 @@ type EncryptionScopeStatus struct { type EncryptionScope struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.source)",message="source is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.source) || has(self.initProvider.source)",message="source is a required parameter" Spec EncryptionScopeSpec `json:"spec"` Status EncryptionScopeStatus `json:"status,omitempty"` } diff --git a/apis/storage/v1beta1/zz_generated.deepcopy.go b/apis/storage/v1beta1/zz_generated.deepcopy.go index 404fc0e58..0690e81bd 100644 --- a/apis/storage/v1beta1/zz_generated.deepcopy.go +++ b/apis/storage/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,36 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ACLAccessPolicyInitParameters) DeepCopyInto(out *ACLAccessPolicyInitParameters) { + *out = *in + if in.Expiry != nil { + in, out := &in.Expiry, &out.Expiry + *out = new(string) + **out = **in + } + if in.Permissions != nil { + in, out := &in.Permissions, &out.Permissions + *out = new(string) + **out = **in + } + if in.Start != nil { + in, out := &in.Start, &out.Start + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ACLAccessPolicyInitParameters. +func (in *ACLAccessPolicyInitParameters) DeepCopy() *ACLAccessPolicyInitParameters { + if in == nil { + return nil + } + out := new(ACLAccessPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ACLAccessPolicyObservation) DeepCopyInto(out *ACLAccessPolicyObservation) { *out = *in @@ -74,6 +104,33 @@ func (in *ACLAccessPolicyParameters) DeepCopy() *ACLAccessPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ACLInitParameters) DeepCopyInto(out *ACLInitParameters) { + *out = *in + if in.AccessPolicy != nil { + in, out := &in.AccessPolicy, &out.AccessPolicy + *out = make([]AccessPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ACLInitParameters. +func (in *ACLInitParameters) DeepCopy() *ACLInitParameters { + if in == nil { + return nil + } + out := new(ACLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ACLObservation) DeepCopyInto(out *ACLObservation) { *out = *in @@ -128,6 +185,36 @@ func (in *ACLParameters) DeepCopy() *ACLParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccessPolicyInitParameters) DeepCopyInto(out *AccessPolicyInitParameters) { + *out = *in + if in.Expiry != nil { + in, out := &in.Expiry, &out.Expiry + *out = new(string) + **out = **in + } + if in.Permissions != nil { + in, out := &in.Permissions, &out.Permissions + *out = new(string) + **out = **in + } + if in.Start != nil { + in, out := &in.Start, &out.Start + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessPolicyInitParameters. +func (in *AccessPolicyInitParameters) DeepCopy() *AccessPolicyInitParameters { + if in == nil { + return nil + } + out := new(AccessPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccessPolicyObservation) DeepCopyInto(out *AccessPolicyObservation) { *out = *in @@ -215,6 +302,225 @@ func (in *Account) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountInitParameters) DeepCopyInto(out *AccountInitParameters) { + *out = *in + if in.AccessTier != nil { + in, out := &in.AccessTier, &out.AccessTier + *out = new(string) + **out = **in + } + if in.AccountKind != nil { + in, out := &in.AccountKind, &out.AccountKind + *out = new(string) + **out = **in + } + if in.AccountReplicationType != nil { + in, out := &in.AccountReplicationType, &out.AccountReplicationType + *out = new(string) + **out = **in + } + if in.AccountTier != nil { + in, out := &in.AccountTier, &out.AccountTier + *out = new(string) + **out = **in + } + if in.AllowNestedItemsToBePublic != nil { + in, out := &in.AllowNestedItemsToBePublic, &out.AllowNestedItemsToBePublic + *out = new(bool) + **out = **in + } + if in.AllowedCopyScope != nil { + in, out := &in.AllowedCopyScope, &out.AllowedCopyScope + *out = new(string) + **out = **in + } + if in.AzureFilesAuthentication != nil { + in, out := &in.AzureFilesAuthentication, &out.AzureFilesAuthentication + *out = make([]AzureFilesAuthenticationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BlobProperties != nil { + in, out := &in.BlobProperties, &out.BlobProperties + *out = make([]BlobPropertiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CrossTenantReplicationEnabled != nil { + in, out := &in.CrossTenantReplicationEnabled, &out.CrossTenantReplicationEnabled + *out = new(bool) + **out = **in + } + if in.CustomDomain != nil { + in, out := &in.CustomDomain, &out.CustomDomain + *out = make([]CustomDomainInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomerManagedKey != nil { + in, out := &in.CustomerManagedKey, &out.CustomerManagedKey + *out = make([]CustomerManagedKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultToOauthAuthentication != nil { + in, out := &in.DefaultToOauthAuthentication, &out.DefaultToOauthAuthentication + *out = new(bool) + **out = **in + } + if in.EdgeZone != nil { + in, out := &in.EdgeZone, &out.EdgeZone + *out = new(string) + **out = **in + } + if in.EnableHTTPSTrafficOnly != nil { + in, out := &in.EnableHTTPSTrafficOnly, &out.EnableHTTPSTrafficOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ImmutabilityPolicy != nil { + in, out := &in.ImmutabilityPolicy, &out.ImmutabilityPolicy + *out = make([]ImmutabilityPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.InfrastructureEncryptionEnabled != nil { + in, out := &in.InfrastructureEncryptionEnabled, &out.InfrastructureEncryptionEnabled + *out = new(bool) + **out = **in + } + if in.IsHnsEnabled != nil { + in, out := &in.IsHnsEnabled, &out.IsHnsEnabled + *out = new(bool) + **out = **in + } + if in.LargeFileShareEnabled != nil { + in, out := &in.LargeFileShareEnabled, &out.LargeFileShareEnabled + *out = new(bool) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MinTLSVersion != nil { + in, out := &in.MinTLSVersion, &out.MinTLSVersion + *out = new(string) + **out = **in + } + if in.NetworkRules != nil { + in, out := &in.NetworkRules, &out.NetworkRules + *out = make([]NetworkRulesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Nfsv3Enabled != nil { + in, out := &in.Nfsv3Enabled, &out.Nfsv3Enabled + *out = new(bool) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.QueueEncryptionKeyType != nil { + in, out := &in.QueueEncryptionKeyType, &out.QueueEncryptionKeyType + *out = new(string) + **out = **in + } + if in.QueueProperties != nil { + in, out := &in.QueueProperties, &out.QueueProperties + *out = make([]QueuePropertiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Routing != nil { + in, out := &in.Routing, &out.Routing + *out = make([]RoutingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SASPolicy != nil { + in, out := &in.SASPolicy, &out.SASPolicy + *out = make([]SASPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SFTPEnabled != nil { + in, out := &in.SFTPEnabled, &out.SFTPEnabled + *out = new(bool) + **out = **in + } + if in.ShareProperties != nil { + in, out := &in.ShareProperties, &out.ShareProperties + *out = make([]SharePropertiesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SharedAccessKeyEnabled != nil { + in, out := &in.SharedAccessKeyEnabled, &out.SharedAccessKeyEnabled + *out = new(bool) + **out = **in + } + if in.StaticWebsite != nil { + in, out := &in.StaticWebsite, &out.StaticWebsite + *out = make([]StaticWebsiteInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TableEncryptionKeyType != nil { + in, out := &in.TableEncryptionKeyType, &out.TableEncryptionKeyType + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountInitParameters. +func (in *AccountInitParameters) DeepCopy() *AccountInitParameters { + if in == nil { + return nil + } + out := new(AccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountList) DeepCopyInto(out *AccountList) { *out = *in @@ -274,6 +580,50 @@ func (in *AccountLocalUser) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountLocalUserInitParameters) DeepCopyInto(out *AccountLocalUserInitParameters) { + *out = *in + if in.HomeDirectory != nil { + in, out := &in.HomeDirectory, &out.HomeDirectory + *out = new(string) + **out = **in + } + if in.PermissionScope != nil { + in, out := &in.PermissionScope, &out.PermissionScope + *out = make([]PermissionScopeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSHAuthorizedKey != nil { + in, out := &in.SSHAuthorizedKey, &out.SSHAuthorizedKey + *out = make([]SSHAuthorizedKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SSHKeyEnabled != nil { + in, out := &in.SSHKeyEnabled, &out.SSHKeyEnabled + *out = new(bool) + **out = **in + } + if in.SSHPasswordEnabled != nil { + in, out := &in.SSHPasswordEnabled, &out.SSHPasswordEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountLocalUserInitParameters. +func (in *AccountLocalUserInitParameters) DeepCopy() *AccountLocalUserInitParameters { + if in == nil { + return nil + } + out := new(AccountLocalUserInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountLocalUserList) DeepCopyInto(out *AccountLocalUserList) { *out = *in @@ -424,6 +774,7 @@ func (in *AccountLocalUserSpec) DeepCopyInto(out *AccountLocalUserSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountLocalUserSpec. @@ -480,6 +831,66 @@ func (in *AccountNetworkRules) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountNetworkRulesInitParameters) DeepCopyInto(out *AccountNetworkRulesInitParameters) { + *out = *in + if in.Bypass != nil { + in, out := &in.Bypass, &out.Bypass + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.IPRules != nil { + in, out := &in.IPRules, &out.IPRules + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.PrivateLinkAccess != nil { + in, out := &in.PrivateLinkAccess, &out.PrivateLinkAccess + *out = make([]AccountNetworkRulesPrivateLinkAccessInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VirtualNetworkSubnetIds != nil { + in, out := &in.VirtualNetworkSubnetIds, &out.VirtualNetworkSubnetIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountNetworkRulesInitParameters. +func (in *AccountNetworkRulesInitParameters) DeepCopy() *AccountNetworkRulesInitParameters { + if in == nil { + return nil + } + out := new(AccountNetworkRulesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountNetworkRulesList) DeepCopyInto(out *AccountNetworkRulesList) { *out = *in @@ -657,6 +1068,31 @@ func (in *AccountNetworkRulesParameters) DeepCopy() *AccountNetworkRulesParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccountNetworkRulesPrivateLinkAccessInitParameters) DeepCopyInto(out *AccountNetworkRulesPrivateLinkAccessInitParameters) { + *out = *in + if in.EndpointResourceID != nil { + in, out := &in.EndpointResourceID, &out.EndpointResourceID + *out = new(string) + **out = **in + } + if in.EndpointTenantID != nil { + in, out := &in.EndpointTenantID, &out.EndpointTenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountNetworkRulesPrivateLinkAccessInitParameters. +func (in *AccountNetworkRulesPrivateLinkAccessInitParameters) DeepCopy() *AccountNetworkRulesPrivateLinkAccessInitParameters { + if in == nil { + return nil + } + out := new(AccountNetworkRulesPrivateLinkAccessInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccountNetworkRulesPrivateLinkAccessObservation) DeepCopyInto(out *AccountNetworkRulesPrivateLinkAccessObservation) { *out = *in @@ -712,6 +1148,7 @@ func (in *AccountNetworkRulesSpec) DeepCopyInto(out *AccountNetworkRulesSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountNetworkRulesSpec. @@ -1339,6 +1776,7 @@ func (in *AccountSpec) DeepCopyInto(out *AccountSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountSpec. @@ -1368,6 +1806,41 @@ func (in *AccountStatus) DeepCopy() *AccountStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AceInitParameters) DeepCopyInto(out *AceInitParameters) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Permissions != nil { + in, out := &in.Permissions, &out.Permissions + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AceInitParameters. +func (in *AceInitParameters) DeepCopy() *AceInitParameters { + if in == nil { + return nil + } + out := new(AceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AceObservation) DeepCopyInto(out *AceObservation) { *out = *in @@ -1438,6 +1911,42 @@ func (in *AceParameters) DeepCopy() *AceParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionsInitParameters) DeepCopyInto(out *ActionsInitParameters) { + *out = *in + if in.BaseBlob != nil { + in, out := &in.BaseBlob, &out.BaseBlob + *out = make([]BaseBlobInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Snapshot != nil { + in, out := &in.Snapshot, &out.Snapshot + *out = make([]SnapshotInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = make([]VersionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionsInitParameters. +func (in *ActionsInitParameters) DeepCopy() *ActionsInitParameters { + if in == nil { + return nil + } + out := new(ActionsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionsObservation) DeepCopyInto(out *ActionsObservation) { *out = *in @@ -1510,6 +2019,51 @@ func (in *ActionsParameters) DeepCopy() *ActionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActiveDirectoryInitParameters) DeepCopyInto(out *ActiveDirectoryInitParameters) { + *out = *in + if in.DomainGUID != nil { + in, out := &in.DomainGUID, &out.DomainGUID + *out = new(string) + **out = **in + } + if in.DomainName != nil { + in, out := &in.DomainName, &out.DomainName + *out = new(string) + **out = **in + } + if in.DomainSid != nil { + in, out := &in.DomainSid, &out.DomainSid + *out = new(string) + **out = **in + } + if in.ForestName != nil { + in, out := &in.ForestName, &out.ForestName + *out = new(string) + **out = **in + } + if in.NetbiosDomainName != nil { + in, out := &in.NetbiosDomainName, &out.NetbiosDomainName + *out = new(string) + **out = **in + } + if in.StorageSid != nil { + in, out := &in.StorageSid, &out.StorageSid + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryInitParameters. +func (in *ActiveDirectoryInitParameters) DeepCopy() *ActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(ActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActiveDirectoryObservation) DeepCopyInto(out *ActiveDirectoryObservation) { *out = *in @@ -1583,19 +2137,46 @@ func (in *ActiveDirectoryParameters) DeepCopyInto(out *ActiveDirectoryParameters *out = new(string) **out = **in } - if in.StorageSid != nil { - in, out := &in.StorageSid, &out.StorageSid + if in.StorageSid != nil { + in, out := &in.StorageSid, &out.StorageSid + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryParameters. +func (in *ActiveDirectoryParameters) DeepCopy() *ActiveDirectoryParameters { + if in == nil { + return nil + } + out := new(ActiveDirectoryParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureFilesAuthenticationInitParameters) DeepCopyInto(out *AzureFilesAuthenticationInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]ActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DirectoryType != nil { + in, out := &in.DirectoryType, &out.DirectoryType *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryParameters. -func (in *ActiveDirectoryParameters) DeepCopy() *ActiveDirectoryParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureFilesAuthenticationInitParameters. +func (in *AzureFilesAuthenticationInitParameters) DeepCopy() *AzureFilesAuthenticationInitParameters { if in == nil { return nil } - out := new(ActiveDirectoryParameters) + out := new(AzureFilesAuthenticationInitParameters) in.DeepCopyInto(out) return out } @@ -1654,6 +2235,76 @@ func (in *AzureFilesAuthenticationParameters) DeepCopy() *AzureFilesAuthenticati return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BaseBlobInitParameters) DeepCopyInto(out *BaseBlobInitParameters) { + *out = *in + if in.AutoTierToHotFromCoolEnabled != nil { + in, out := &in.AutoTierToHotFromCoolEnabled, &out.AutoTierToHotFromCoolEnabled + *out = new(bool) + **out = **in + } + if in.DeleteAfterDaysSinceCreationGreaterThan != nil { + in, out := &in.DeleteAfterDaysSinceCreationGreaterThan, &out.DeleteAfterDaysSinceCreationGreaterThan + *out = new(float64) + **out = **in + } + if in.DeleteAfterDaysSinceLastAccessTimeGreaterThan != nil { + in, out := &in.DeleteAfterDaysSinceLastAccessTimeGreaterThan, &out.DeleteAfterDaysSinceLastAccessTimeGreaterThan + *out = new(float64) + **out = **in + } + if in.DeleteAfterDaysSinceModificationGreaterThan != nil { + in, out := &in.DeleteAfterDaysSinceModificationGreaterThan, &out.DeleteAfterDaysSinceModificationGreaterThan + *out = new(float64) + **out = **in + } + if in.TierToArchiveAfterDaysSinceCreationGreaterThan != nil { + in, out := &in.TierToArchiveAfterDaysSinceCreationGreaterThan, &out.TierToArchiveAfterDaysSinceCreationGreaterThan + *out = new(float64) + **out = **in + } + if in.TierToArchiveAfterDaysSinceLastAccessTimeGreaterThan != nil { + in, out := &in.TierToArchiveAfterDaysSinceLastAccessTimeGreaterThan, &out.TierToArchiveAfterDaysSinceLastAccessTimeGreaterThan + *out = new(float64) + **out = **in + } + if in.TierToArchiveAfterDaysSinceLastTierChangeGreaterThan != nil { + in, out := &in.TierToArchiveAfterDaysSinceLastTierChangeGreaterThan, &out.TierToArchiveAfterDaysSinceLastTierChangeGreaterThan + *out = new(float64) + **out = **in + } + if in.TierToArchiveAfterDaysSinceModificationGreaterThan != nil { + in, out := &in.TierToArchiveAfterDaysSinceModificationGreaterThan, &out.TierToArchiveAfterDaysSinceModificationGreaterThan + *out = new(float64) + **out = **in + } + if in.TierToCoolAfterDaysSinceCreationGreaterThan != nil { + in, out := &in.TierToCoolAfterDaysSinceCreationGreaterThan, &out.TierToCoolAfterDaysSinceCreationGreaterThan + *out = new(float64) + **out = **in + } + if in.TierToCoolAfterDaysSinceLastAccessTimeGreaterThan != nil { + in, out := &in.TierToCoolAfterDaysSinceLastAccessTimeGreaterThan, &out.TierToCoolAfterDaysSinceLastAccessTimeGreaterThan + *out = new(float64) + **out = **in + } + if in.TierToCoolAfterDaysSinceModificationGreaterThan != nil { + in, out := &in.TierToCoolAfterDaysSinceModificationGreaterThan, &out.TierToCoolAfterDaysSinceModificationGreaterThan + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BaseBlobInitParameters. +func (in *BaseBlobInitParameters) DeepCopy() *BaseBlobInitParameters { + if in == nil { + return nil + } + out := new(BaseBlobInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BaseBlobObservation) DeepCopyInto(out *BaseBlobObservation) { *out = *in @@ -1821,6 +2472,86 @@ func (in *Blob) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BlobInitParameters) DeepCopyInto(out *BlobInitParameters) { + *out = *in + if in.AccessTier != nil { + in, out := &in.AccessTier, &out.AccessTier + *out = new(string) + **out = **in + } + if in.CacheControl != nil { + in, out := &in.CacheControl, &out.CacheControl + *out = new(string) + **out = **in + } + if in.ContentMd5 != nil { + in, out := &in.ContentMd5, &out.ContentMd5 + *out = new(string) + **out = **in + } + if in.ContentType != nil { + in, out := &in.ContentType, &out.ContentType + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Parallelism != nil { + in, out := &in.Parallelism, &out.Parallelism + *out = new(float64) + **out = **in + } + if in.Size != nil { + in, out := &in.Size, &out.Size + *out = new(float64) + **out = **in + } + if in.Source != nil { + in, out := &in.Source, &out.Source + *out = new(string) + **out = **in + } + if in.SourceContent != nil { + in, out := &in.SourceContent, &out.SourceContent + *out = new(string) + **out = **in + } + if in.SourceURI != nil { + in, out := &in.SourceURI, &out.SourceURI + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobInitParameters. +func (in *BlobInitParameters) DeepCopy() *BlobInitParameters { + if in == nil { + return nil + } + out := new(BlobInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BlobInventoryPolicy) DeepCopyInto(out *BlobInventoryPolicy) { *out = *in @@ -1848,6 +2579,28 @@ func (in *BlobInventoryPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BlobInventoryPolicyInitParameters) DeepCopyInto(out *BlobInventoryPolicyInitParameters) { + *out = *in + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]RulesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobInventoryPolicyInitParameters. +func (in *BlobInventoryPolicyInitParameters) DeepCopy() *BlobInventoryPolicyInitParameters { + if in == nil { + return nil + } + out := new(BlobInventoryPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BlobInventoryPolicyList) DeepCopyInto(out *BlobInventoryPolicyList) { *out = *in @@ -1954,6 +2707,7 @@ func (in *BlobInventoryPolicySpec) DeepCopyInto(out *BlobInventoryPolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobInventoryPolicySpec. @@ -2225,6 +2979,74 @@ func (in *BlobParameters) DeepCopy() *BlobParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BlobPropertiesInitParameters) DeepCopyInto(out *BlobPropertiesInitParameters) { + *out = *in + if in.ChangeFeedEnabled != nil { + in, out := &in.ChangeFeedEnabled, &out.ChangeFeedEnabled + *out = new(bool) + **out = **in + } + if in.ChangeFeedRetentionInDays != nil { + in, out := &in.ChangeFeedRetentionInDays, &out.ChangeFeedRetentionInDays + *out = new(float64) + **out = **in + } + if in.ContainerDeleteRetentionPolicy != nil { + in, out := &in.ContainerDeleteRetentionPolicy, &out.ContainerDeleteRetentionPolicy + *out = make([]ContainerDeleteRetentionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CorsRule != nil { + in, out := &in.CorsRule, &out.CorsRule + *out = make([]CorsRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultServiceVersion != nil { + in, out := &in.DefaultServiceVersion, &out.DefaultServiceVersion + *out = new(string) + **out = **in + } + if in.DeleteRetentionPolicy != nil { + in, out := &in.DeleteRetentionPolicy, &out.DeleteRetentionPolicy + *out = make([]DeleteRetentionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LastAccessTimeEnabled != nil { + in, out := &in.LastAccessTimeEnabled, &out.LastAccessTimeEnabled + *out = new(bool) + **out = **in + } + if in.RestorePolicy != nil { + in, out := &in.RestorePolicy, &out.RestorePolicy + *out = make([]RestorePolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VersioningEnabled != nil { + in, out := &in.VersioningEnabled, &out.VersioningEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobPropertiesInitParameters. +func (in *BlobPropertiesInitParameters) DeepCopy() *BlobPropertiesInitParameters { + if in == nil { + return nil + } + out := new(BlobPropertiesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BlobPropertiesObservation) DeepCopyInto(out *BlobPropertiesObservation) { *out = *in @@ -2366,6 +3188,7 @@ func (in *BlobSpec) DeepCopyInto(out *BlobSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobSpec. @@ -2404,24 +3227,44 @@ func (in *Container) DeepCopyInto(out *Container) { in.Status.DeepCopyInto(&out.Status) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Container. -func (in *Container) DeepCopy() *Container { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Container. +func (in *Container) DeepCopy() *Container { + if in == nil { + return nil + } + out := new(Container) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Container) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerDeleteRetentionPolicyInitParameters) DeepCopyInto(out *ContainerDeleteRetentionPolicyInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerDeleteRetentionPolicyInitParameters. +func (in *ContainerDeleteRetentionPolicyInitParameters) DeepCopy() *ContainerDeleteRetentionPolicyInitParameters { if in == nil { return nil } - out := new(Container) + out := new(ContainerDeleteRetentionPolicyInitParameters) in.DeepCopyInto(out) return out } -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *Container) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContainerDeleteRetentionPolicyObservation) DeepCopyInto(out *ContainerDeleteRetentionPolicyObservation) { *out = *in @@ -2462,6 +3305,41 @@ func (in *ContainerDeleteRetentionPolicyParameters) DeepCopy() *ContainerDeleteR return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ContainerInitParameters) DeepCopyInto(out *ContainerInitParameters) { + *out = *in + if in.ContainerAccessType != nil { + in, out := &in.ContainerAccessType, &out.ContainerAccessType + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerInitParameters. +func (in *ContainerInitParameters) DeepCopy() *ContainerInitParameters { + if in == nil { + return nil + } + out := new(ContainerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ContainerList) DeepCopyInto(out *ContainerList) { *out = *in @@ -2609,6 +3487,7 @@ func (in *ContainerSpec) DeepCopyInto(out *ContainerSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContainerSpec. @@ -2638,6 +3517,70 @@ func (in *ContainerStatus) DeepCopy() *ContainerStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CorsRuleInitParameters) DeepCopyInto(out *CorsRuleInitParameters) { + *out = *in + if in.AllowedHeaders != nil { + in, out := &in.AllowedHeaders, &out.AllowedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedMethods != nil { + in, out := &in.AllowedMethods, &out.AllowedMethods + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ExposedHeaders != nil { + in, out := &in.ExposedHeaders, &out.ExposedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAgeInSeconds != nil { + in, out := &in.MaxAgeInSeconds, &out.MaxAgeInSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorsRuleInitParameters. +func (in *CorsRuleInitParameters) DeepCopy() *CorsRuleInitParameters { + if in == nil { + return nil + } + out := new(CorsRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CorsRuleObservation) DeepCopyInto(out *CorsRuleObservation) { *out = *in @@ -2766,6 +3709,31 @@ func (in *CorsRuleParameters) DeepCopy() *CorsRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomDomainInitParameters) DeepCopyInto(out *CustomDomainInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.UseSubdomain != nil { + in, out := &in.UseSubdomain, &out.UseSubdomain + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomDomainInitParameters. +func (in *CustomDomainInitParameters) DeepCopy() *CustomDomainInitParameters { + if in == nil { + return nil + } + out := new(CustomDomainInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomDomainObservation) DeepCopyInto(out *CustomDomainObservation) { *out = *in @@ -2816,6 +3784,31 @@ func (in *CustomDomainParameters) DeepCopy() *CustomDomainParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomerManagedKeyInitParameters) DeepCopyInto(out *CustomerManagedKeyInitParameters) { + *out = *in + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.UserAssignedIdentityID != nil { + in, out := &in.UserAssignedIdentityID, &out.UserAssignedIdentityID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomerManagedKeyInitParameters. +func (in *CustomerManagedKeyInitParameters) DeepCopy() *CustomerManagedKeyInitParameters { + if in == nil { + return nil + } + out := new(CustomerManagedKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomerManagedKeyObservation) DeepCopyInto(out *CustomerManagedKeyObservation) { *out = *in @@ -2893,6 +3886,53 @@ func (in *DataLakeGen2FileSystem) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataLakeGen2FileSystemInitParameters) DeepCopyInto(out *DataLakeGen2FileSystemInitParameters) { + *out = *in + if in.Ace != nil { + in, out := &in.Ace, &out.Ace + *out = make([]AceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Group != nil { + in, out := &in.Group, &out.Group + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLakeGen2FileSystemInitParameters. +func (in *DataLakeGen2FileSystemInitParameters) DeepCopy() *DataLakeGen2FileSystemInitParameters { + if in == nil { + return nil + } + out := new(DataLakeGen2FileSystemInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataLakeGen2FileSystemList) DeepCopyInto(out *DataLakeGen2FileSystemList) { *out = *in @@ -3049,6 +4089,7 @@ func (in *DataLakeGen2FileSystemSpec) DeepCopyInto(out *DataLakeGen2FileSystemSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLakeGen2FileSystemSpec. @@ -3105,6 +4146,41 @@ func (in *DataLakeGen2Path) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataLakeGen2PathAceInitParameters) DeepCopyInto(out *DataLakeGen2PathAceInitParameters) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Permissions != nil { + in, out := &in.Permissions, &out.Permissions + *out = new(string) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLakeGen2PathAceInitParameters. +func (in *DataLakeGen2PathAceInitParameters) DeepCopy() *DataLakeGen2PathAceInitParameters { + if in == nil { + return nil + } + out := new(DataLakeGen2PathAceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DataLakeGen2PathAceObservation) DeepCopyInto(out *DataLakeGen2PathAceObservation) { *out = *in @@ -3165,12 +4241,54 @@ func (in *DataLakeGen2PathAceParameters) DeepCopyInto(out *DataLakeGen2PathAcePa } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLakeGen2PathAceParameters. -func (in *DataLakeGen2PathAceParameters) DeepCopy() *DataLakeGen2PathAceParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLakeGen2PathAceParameters. +func (in *DataLakeGen2PathAceParameters) DeepCopy() *DataLakeGen2PathAceParameters { + if in == nil { + return nil + } + out := new(DataLakeGen2PathAceParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataLakeGen2PathInitParameters) DeepCopyInto(out *DataLakeGen2PathInitParameters) { + *out = *in + if in.Ace != nil { + in, out := &in.Ace, &out.Ace + *out = make([]DataLakeGen2PathAceInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Group != nil { + in, out := &in.Group, &out.Group + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.Resource != nil { + in, out := &in.Resource, &out.Resource + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLakeGen2PathInitParameters. +func (in *DataLakeGen2PathInitParameters) DeepCopy() *DataLakeGen2PathInitParameters { if in == nil { return nil } - out := new(DataLakeGen2PathAceParameters) + out := new(DataLakeGen2PathInitParameters) in.DeepCopyInto(out) return out } @@ -3341,6 +4459,7 @@ func (in *DataLakeGen2PathSpec) DeepCopyInto(out *DataLakeGen2PathSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLakeGen2PathSpec. @@ -3370,6 +4489,26 @@ func (in *DataLakeGen2PathStatus) DeepCopy() *DataLakeGen2PathStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeleteRetentionPolicyInitParameters) DeepCopyInto(out *DeleteRetentionPolicyInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeleteRetentionPolicyInitParameters. +func (in *DeleteRetentionPolicyInitParameters) DeepCopy() *DeleteRetentionPolicyInitParameters { + if in == nil { + return nil + } + out := new(DeleteRetentionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DeleteRetentionPolicyObservation) DeepCopyInto(out *DeleteRetentionPolicyObservation) { *out = *in @@ -3437,6 +4576,36 @@ func (in *EncryptionScope) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EncryptionScopeInitParameters) DeepCopyInto(out *EncryptionScopeInitParameters) { + *out = *in + if in.InfrastructureEncryptionRequired != nil { + in, out := &in.InfrastructureEncryptionRequired, &out.InfrastructureEncryptionRequired + *out = new(bool) + **out = **in + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.Source != nil { + in, out := &in.Source, &out.Source + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionScopeInitParameters. +func (in *EncryptionScopeInitParameters) DeepCopy() *EncryptionScopeInitParameters { + if in == nil { + return nil + } + out := new(EncryptionScopeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EncryptionScopeList) DeepCopyInto(out *EncryptionScopeList) { *out = *in @@ -3559,6 +4728,7 @@ func (in *EncryptionScopeSpec) DeepCopyInto(out *EncryptionScopeSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionScopeSpec. @@ -3588,6 +4758,69 @@ func (in *EncryptionScopeStatus) DeepCopy() *EncryptionScopeStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FilterInitParameters) DeepCopyInto(out *FilterInitParameters) { + *out = *in + if in.BlobTypes != nil { + in, out := &in.BlobTypes, &out.BlobTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ExcludePrefixes != nil { + in, out := &in.ExcludePrefixes, &out.ExcludePrefixes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.IncludeBlobVersions != nil { + in, out := &in.IncludeBlobVersions, &out.IncludeBlobVersions + *out = new(bool) + **out = **in + } + if in.IncludeDeleted != nil { + in, out := &in.IncludeDeleted, &out.IncludeDeleted + *out = new(bool) + **out = **in + } + if in.IncludeSnapshots != nil { + in, out := &in.IncludeSnapshots, &out.IncludeSnapshots + *out = new(bool) + **out = **in + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FilterInitParameters. +func (in *FilterInitParameters) DeepCopy() *FilterInitParameters { + if in == nil { + return nil + } + out := new(FilterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FilterObservation) DeepCopyInto(out *FilterObservation) { *out = *in @@ -3714,6 +4947,50 @@ func (in *FilterParameters) DeepCopy() *FilterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FiltersInitParameters) DeepCopyInto(out *FiltersInitParameters) { + *out = *in + if in.BlobTypes != nil { + in, out := &in.BlobTypes, &out.BlobTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MatchBlobIndexTag != nil { + in, out := &in.MatchBlobIndexTag, &out.MatchBlobIndexTag + *out = make([]MatchBlobIndexTagInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.PrefixMatch != nil { + in, out := &in.PrefixMatch, &out.PrefixMatch + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FiltersInitParameters. +func (in *FiltersInitParameters) DeepCopy() *FiltersInitParameters { + if in == nil { + return nil + } + out := new(FiltersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FiltersObservation) DeepCopyInto(out *FiltersObservation) { *out = *in @@ -3802,6 +5079,41 @@ func (in *FiltersParameters) DeepCopy() *FiltersParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HourMetricsInitParameters) DeepCopyInto(out *HourMetricsInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.IncludeApis != nil { + in, out := &in.IncludeApis, &out.IncludeApis + *out = new(bool) + **out = **in + } + if in.RetentionPolicyDays != nil { + in, out := &in.RetentionPolicyDays, &out.RetentionPolicyDays + *out = new(float64) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HourMetricsInitParameters. +func (in *HourMetricsInitParameters) DeepCopy() *HourMetricsInitParameters { + if in == nil { + return nil + } + out := new(HourMetricsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HourMetricsObservation) DeepCopyInto(out *HourMetricsObservation) { *out = *in @@ -3872,6 +5184,37 @@ func (in *HourMetricsParameters) DeepCopy() *HourMetricsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -3944,6 +5287,36 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ImmutabilityPolicyInitParameters) DeepCopyInto(out *ImmutabilityPolicyInitParameters) { + *out = *in + if in.AllowProtectedAppendWrites != nil { + in, out := &in.AllowProtectedAppendWrites, &out.AllowProtectedAppendWrites + *out = new(bool) + **out = **in + } + if in.PeriodSinceCreationInDays != nil { + in, out := &in.PeriodSinceCreationInDays, &out.PeriodSinceCreationInDays + *out = new(float64) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImmutabilityPolicyInitParameters. +func (in *ImmutabilityPolicyInitParameters) DeepCopy() *ImmutabilityPolicyInitParameters { + if in == nil { + return nil + } + out := new(ImmutabilityPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ImmutabilityPolicyObservation) DeepCopyInto(out *ImmutabilityPolicyObservation) { *out = *in @@ -3982,24 +5355,64 @@ func (in *ImmutabilityPolicyParameters) DeepCopyInto(out *ImmutabilityPolicyPara *out = new(bool) **out = **in } - if in.PeriodSinceCreationInDays != nil { - in, out := &in.PeriodSinceCreationInDays, &out.PeriodSinceCreationInDays + if in.PeriodSinceCreationInDays != nil { + in, out := &in.PeriodSinceCreationInDays, &out.PeriodSinceCreationInDays + *out = new(float64) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImmutabilityPolicyParameters. +func (in *ImmutabilityPolicyParameters) DeepCopy() *ImmutabilityPolicyParameters { + if in == nil { + return nil + } + out := new(ImmutabilityPolicyParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoggingInitParameters) DeepCopyInto(out *LoggingInitParameters) { + *out = *in + if in.Delete != nil { + in, out := &in.Delete, &out.Delete + *out = new(bool) + **out = **in + } + if in.Read != nil { + in, out := &in.Read, &out.Read + *out = new(bool) + **out = **in + } + if in.RetentionPolicyDays != nil { + in, out := &in.RetentionPolicyDays, &out.RetentionPolicyDays *out = new(float64) **out = **in } - if in.State != nil { - in, out := &in.State, &out.State + if in.Version != nil { + in, out := &in.Version, &out.Version *out = new(string) **out = **in } + if in.Write != nil { + in, out := &in.Write, &out.Write + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImmutabilityPolicyParameters. -func (in *ImmutabilityPolicyParameters) DeepCopy() *ImmutabilityPolicyParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingInitParameters. +func (in *LoggingInitParameters) DeepCopy() *LoggingInitParameters { if in == nil { return nil } - out := new(ImmutabilityPolicyParameters) + out := new(LoggingInitParameters) in.DeepCopyInto(out) return out } @@ -4111,6 +5524,28 @@ func (in *ManagementPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagementPolicyInitParameters) DeepCopyInto(out *ManagementPolicyInitParameters) { + *out = *in + if in.Rule != nil { + in, out := &in.Rule, &out.Rule + *out = make([]RuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementPolicyInitParameters. +func (in *ManagementPolicyInitParameters) DeepCopy() *ManagementPolicyInitParameters { + if in == nil { + return nil + } + out := new(ManagementPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagementPolicyList) DeepCopyInto(out *ManagementPolicyList) { *out = *in @@ -4217,6 +5652,7 @@ func (in *ManagementPolicySpec) DeepCopyInto(out *ManagementPolicySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementPolicySpec. @@ -4246,6 +5682,36 @@ func (in *ManagementPolicyStatus) DeepCopy() *ManagementPolicyStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MatchBlobIndexTagInitParameters) DeepCopyInto(out *MatchBlobIndexTagInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Operation != nil { + in, out := &in.Operation, &out.Operation + *out = new(string) + **out = **in + } + if in.Value != nil { + in, out := &in.Value, &out.Value + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchBlobIndexTagInitParameters. +func (in *MatchBlobIndexTagInitParameters) DeepCopy() *MatchBlobIndexTagInitParameters { + if in == nil { + return nil + } + out := new(MatchBlobIndexTagInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MatchBlobIndexTagObservation) DeepCopyInto(out *MatchBlobIndexTagObservation) { *out = *in @@ -4306,6 +5772,41 @@ func (in *MatchBlobIndexTagParameters) DeepCopy() *MatchBlobIndexTagParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MinuteMetricsInitParameters) DeepCopyInto(out *MinuteMetricsInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.IncludeApis != nil { + in, out := &in.IncludeApis, &out.IncludeApis + *out = new(bool) + **out = **in + } + if in.RetentionPolicyDays != nil { + in, out := &in.RetentionPolicyDays, &out.RetentionPolicyDays + *out = new(float64) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MinuteMetricsInitParameters. +func (in *MinuteMetricsInitParameters) DeepCopy() *MinuteMetricsInitParameters { + if in == nil { + return nil + } + out := new(MinuteMetricsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MinuteMetricsObservation) DeepCopyInto(out *MinuteMetricsObservation) { *out = *in @@ -4376,6 +5877,66 @@ func (in *MinuteMetricsParameters) DeepCopy() *MinuteMetricsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NetworkRulesInitParameters) DeepCopyInto(out *NetworkRulesInitParameters) { + *out = *in + if in.Bypass != nil { + in, out := &in.Bypass, &out.Bypass + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultAction != nil { + in, out := &in.DefaultAction, &out.DefaultAction + *out = new(string) + **out = **in + } + if in.IPRules != nil { + in, out := &in.IPRules, &out.IPRules + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.PrivateLinkAccess != nil { + in, out := &in.PrivateLinkAccess, &out.PrivateLinkAccess + *out = make([]PrivateLinkAccessInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VirtualNetworkSubnetIds != nil { + in, out := &in.VirtualNetworkSubnetIds, &out.VirtualNetworkSubnetIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkRulesInitParameters. +func (in *NetworkRulesInitParameters) DeepCopy() *NetworkRulesInitParameters { + if in == nil { + return nil + } + out := new(NetworkRulesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NetworkRulesObservation) DeepCopyInto(out *NetworkRulesObservation) { *out = *in @@ -4523,6 +6084,28 @@ func (in *ObjectReplication) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectReplicationInitParameters) DeepCopyInto(out *ObjectReplicationInitParameters) { + *out = *in + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]ObjectReplicationRulesInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectReplicationInitParameters. +func (in *ObjectReplicationInitParameters) DeepCopy() *ObjectReplicationInitParameters { + if in == nil { + return nil + } + out := new(ObjectReplicationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ObjectReplicationList) DeepCopyInto(out *ObjectReplicationList) { *out = *in @@ -4654,6 +6237,37 @@ func (in *ObjectReplicationParameters) DeepCopy() *ObjectReplicationParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ObjectReplicationRulesInitParameters) DeepCopyInto(out *ObjectReplicationRulesInitParameters) { + *out = *in + if in.CopyBlobsCreatedAfter != nil { + in, out := &in.CopyBlobsCreatedAfter, &out.CopyBlobsCreatedAfter + *out = new(string) + **out = **in + } + if in.FilterOutBlobsWithPrefix != nil { + in, out := &in.FilterOutBlobsWithPrefix, &out.FilterOutBlobsWithPrefix + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectReplicationRulesInitParameters. +func (in *ObjectReplicationRulesInitParameters) DeepCopy() *ObjectReplicationRulesInitParameters { + if in == nil { + return nil + } + out := new(ObjectReplicationRulesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ObjectReplicationRulesObservation) DeepCopyInto(out *ObjectReplicationRulesObservation) { *out = *in @@ -4766,6 +6380,7 @@ func (in *ObjectReplicationSpec) DeepCopyInto(out *ObjectReplicationSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectReplicationSpec. @@ -4795,6 +6410,33 @@ func (in *ObjectReplicationStatus) DeepCopy() *ObjectReplicationStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PermissionScopeInitParameters) DeepCopyInto(out *PermissionScopeInitParameters) { + *out = *in + if in.Permissions != nil { + in, out := &in.Permissions, &out.Permissions + *out = make([]PermissionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Service != nil { + in, out := &in.Service, &out.Service + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionScopeInitParameters. +func (in *PermissionScopeInitParameters) DeepCopy() *PermissionScopeInitParameters { + if in == nil { + return nil + } + out := new(PermissionScopeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PermissionScopeObservation) DeepCopyInto(out *PermissionScopeObservation) { *out = *in @@ -4837,34 +6479,74 @@ func (in *PermissionScopeParameters) DeepCopyInto(out *PermissionScopeParameters (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.ResourceName != nil { - in, out := &in.ResourceName, &out.ResourceName - *out = new(string) + if in.ResourceName != nil { + in, out := &in.ResourceName, &out.ResourceName + *out = new(string) + **out = **in + } + if in.ResourceNameRef != nil { + in, out := &in.ResourceNameRef, &out.ResourceNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceNameSelector != nil { + in, out := &in.ResourceNameSelector, &out.ResourceNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Service != nil { + in, out := &in.Service, &out.Service + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionScopeParameters. +func (in *PermissionScopeParameters) DeepCopy() *PermissionScopeParameters { + if in == nil { + return nil + } + out := new(PermissionScopeParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PermissionsInitParameters) DeepCopyInto(out *PermissionsInitParameters) { + *out = *in + if in.Create != nil { + in, out := &in.Create, &out.Create + *out = new(bool) + **out = **in + } + if in.Delete != nil { + in, out := &in.Delete, &out.Delete + *out = new(bool) **out = **in } - if in.ResourceNameRef != nil { - in, out := &in.ResourceNameRef, &out.ResourceNameRef - *out = new(v1.Reference) - (*in).DeepCopyInto(*out) + if in.List != nil { + in, out := &in.List, &out.List + *out = new(bool) + **out = **in } - if in.ResourceNameSelector != nil { - in, out := &in.ResourceNameSelector, &out.ResourceNameSelector - *out = new(v1.Selector) - (*in).DeepCopyInto(*out) + if in.Read != nil { + in, out := &in.Read, &out.Read + *out = new(bool) + **out = **in } - if in.Service != nil { - in, out := &in.Service, &out.Service - *out = new(string) + if in.Write != nil { + in, out := &in.Write, &out.Write + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionScopeParameters. -func (in *PermissionScopeParameters) DeepCopy() *PermissionScopeParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PermissionsInitParameters. +func (in *PermissionsInitParameters) DeepCopy() *PermissionsInitParameters { if in == nil { return nil } - out := new(PermissionScopeParameters) + out := new(PermissionsInitParameters) in.DeepCopyInto(out) return out } @@ -4949,6 +6631,31 @@ func (in *PermissionsParameters) DeepCopy() *PermissionsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateLinkAccessInitParameters) DeepCopyInto(out *PrivateLinkAccessInitParameters) { + *out = *in + if in.EndpointResourceID != nil { + in, out := &in.EndpointResourceID, &out.EndpointResourceID + *out = new(string) + **out = **in + } + if in.EndpointTenantID != nil { + in, out := &in.EndpointTenantID, &out.EndpointTenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkAccessInitParameters. +func (in *PrivateLinkAccessInitParameters) DeepCopy() *PrivateLinkAccessInitParameters { + if in == nil { + return nil + } + out := new(PrivateLinkAccessInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateLinkAccessObservation) DeepCopyInto(out *PrivateLinkAccessObservation) { *out = *in @@ -5026,6 +6733,36 @@ func (in *Queue) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueueInitParameters) DeepCopyInto(out *QueueInitParameters) { + *out = *in + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueInitParameters. +func (in *QueueInitParameters) DeepCopy() *QueueInitParameters { + if in == nil { + return nil + } + out := new(QueueInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *QueueList) DeepCopyInto(out *QueueList) { *out = *in @@ -5148,6 +6885,70 @@ func (in *QueueParameters) DeepCopy() *QueueParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueuePropertiesCorsRuleInitParameters) DeepCopyInto(out *QueuePropertiesCorsRuleInitParameters) { + *out = *in + if in.AllowedHeaders != nil { + in, out := &in.AllowedHeaders, &out.AllowedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedMethods != nil { + in, out := &in.AllowedMethods, &out.AllowedMethods + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ExposedHeaders != nil { + in, out := &in.ExposedHeaders, &out.ExposedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAgeInSeconds != nil { + in, out := &in.MaxAgeInSeconds, &out.MaxAgeInSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueuePropertiesCorsRuleInitParameters. +func (in *QueuePropertiesCorsRuleInitParameters) DeepCopy() *QueuePropertiesCorsRuleInitParameters { + if in == nil { + return nil + } + out := new(QueuePropertiesCorsRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *QueuePropertiesCorsRuleObservation) DeepCopyInto(out *QueuePropertiesCorsRuleObservation) { *out = *in @@ -5276,6 +7077,49 @@ func (in *QueuePropertiesCorsRuleParameters) DeepCopy() *QueuePropertiesCorsRule return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *QueuePropertiesInitParameters) DeepCopyInto(out *QueuePropertiesInitParameters) { + *out = *in + if in.CorsRule != nil { + in, out := &in.CorsRule, &out.CorsRule + *out = make([]QueuePropertiesCorsRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HourMetrics != nil { + in, out := &in.HourMetrics, &out.HourMetrics + *out = make([]HourMetricsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Logging != nil { + in, out := &in.Logging, &out.Logging + *out = make([]LoggingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MinuteMetrics != nil { + in, out := &in.MinuteMetrics, &out.MinuteMetrics + *out = make([]MinuteMetricsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueuePropertiesInitParameters. +func (in *QueuePropertiesInitParameters) DeepCopy() *QueuePropertiesInitParameters { + if in == nil { + return nil + } + out := new(QueuePropertiesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *QueuePropertiesObservation) DeepCopyInto(out *QueuePropertiesObservation) { *out = *in @@ -5367,6 +7211,7 @@ func (in *QueueSpec) DeepCopyInto(out *QueueSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueSpec. @@ -5396,6 +7241,26 @@ func (in *QueueStatus) DeepCopy() *QueueStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RestorePolicyInitParameters) DeepCopyInto(out *RestorePolicyInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestorePolicyInitParameters. +func (in *RestorePolicyInitParameters) DeepCopy() *RestorePolicyInitParameters { + if in == nil { + return nil + } + out := new(RestorePolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RestorePolicyObservation) DeepCopyInto(out *RestorePolicyObservation) { *out = *in @@ -5436,6 +7301,26 @@ func (in *RestorePolicyParameters) DeepCopy() *RestorePolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RetentionPolicyInitParameters) DeepCopyInto(out *RetentionPolicyInitParameters) { + *out = *in + if in.Days != nil { + in, out := &in.Days, &out.Days + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RetentionPolicyInitParameters. +func (in *RetentionPolicyInitParameters) DeepCopy() *RetentionPolicyInitParameters { + if in == nil { + return nil + } + out := new(RetentionPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RetentionPolicyObservation) DeepCopyInto(out *RetentionPolicyObservation) { *out = *in @@ -5476,6 +7361,36 @@ func (in *RetentionPolicyParameters) DeepCopy() *RetentionPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RoutingInitParameters) DeepCopyInto(out *RoutingInitParameters) { + *out = *in + if in.Choice != nil { + in, out := &in.Choice, &out.Choice + *out = new(string) + **out = **in + } + if in.PublishInternetEndpoints != nil { + in, out := &in.PublishInternetEndpoints, &out.PublishInternetEndpoints + *out = new(bool) + **out = **in + } + if in.PublishMicrosoftEndpoints != nil { + in, out := &in.PublishMicrosoftEndpoints, &out.PublishMicrosoftEndpoints + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingInitParameters. +func (in *RoutingInitParameters) DeepCopy() *RoutingInitParameters { + if in == nil { + return nil + } + out := new(RoutingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RoutingObservation) DeepCopyInto(out *RoutingObservation) { *out = *in @@ -5514,24 +7429,63 @@ func (in *RoutingParameters) DeepCopyInto(out *RoutingParameters) { *out = new(string) **out = **in } - if in.PublishInternetEndpoints != nil { - in, out := &in.PublishInternetEndpoints, &out.PublishInternetEndpoints + if in.PublishInternetEndpoints != nil { + in, out := &in.PublishInternetEndpoints, &out.PublishInternetEndpoints + *out = new(bool) + **out = **in + } + if in.PublishMicrosoftEndpoints != nil { + in, out := &in.PublishMicrosoftEndpoints, &out.PublishMicrosoftEndpoints + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingParameters. +func (in *RoutingParameters) DeepCopy() *RoutingParameters { + if in == nil { + return nil + } + out := new(RoutingParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RuleInitParameters) DeepCopyInto(out *RuleInitParameters) { + *out = *in + if in.Actions != nil { + in, out := &in.Actions, &out.Actions + *out = make([]ActionsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled *out = new(bool) **out = **in } - if in.PublishMicrosoftEndpoints != nil { - in, out := &in.PublishMicrosoftEndpoints, &out.PublishMicrosoftEndpoints - *out = new(bool) + if in.Filters != nil { + in, out := &in.Filters, &out.Filters + *out = make([]FiltersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingParameters. -func (in *RoutingParameters) DeepCopy() *RoutingParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleInitParameters. +func (in *RuleInitParameters) DeepCopy() *RuleInitParameters { if in == nil { return nil } - out := new(RoutingParameters) + out := new(RuleInitParameters) in.DeepCopyInto(out) return out } @@ -5614,6 +7568,59 @@ func (in *RuleParameters) DeepCopy() *RuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RulesInitParameters) DeepCopyInto(out *RulesInitParameters) { + *out = *in + if in.Filter != nil { + in, out := &in.Filter, &out.Filter + *out = make([]FilterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Format != nil { + in, out := &in.Format, &out.Format + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = new(string) + **out = **in + } + if in.SchemaFields != nil { + in, out := &in.SchemaFields, &out.SchemaFields + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RulesInitParameters. +func (in *RulesInitParameters) DeepCopy() *RulesInitParameters { + if in == nil { + return nil + } + out := new(RulesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RulesObservation) DeepCopyInto(out *RulesObservation) { *out = *in @@ -5740,6 +7747,31 @@ func (in *RulesParameters) DeepCopy() *RulesParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SASPolicyInitParameters) DeepCopyInto(out *SASPolicyInitParameters) { + *out = *in + if in.ExpirationAction != nil { + in, out := &in.ExpirationAction, &out.ExpirationAction + *out = new(string) + **out = **in + } + if in.ExpirationPeriod != nil { + in, out := &in.ExpirationPeriod, &out.ExpirationPeriod + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SASPolicyInitParameters. +func (in *SASPolicyInitParameters) DeepCopy() *SASPolicyInitParameters { + if in == nil { + return nil + } + out := new(SASPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SASPolicyObservation) DeepCopyInto(out *SASPolicyObservation) { *out = *in @@ -5790,6 +7822,70 @@ func (in *SASPolicyParameters) DeepCopy() *SASPolicyParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SMBInitParameters) DeepCopyInto(out *SMBInitParameters) { + *out = *in + if in.AuthenticationTypes != nil { + in, out := &in.AuthenticationTypes, &out.AuthenticationTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ChannelEncryptionType != nil { + in, out := &in.ChannelEncryptionType, &out.ChannelEncryptionType + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.KerberosTicketEncryptionType != nil { + in, out := &in.KerberosTicketEncryptionType, &out.KerberosTicketEncryptionType + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MultichannelEnabled != nil { + in, out := &in.MultichannelEnabled, &out.MultichannelEnabled + *out = new(bool) + **out = **in + } + if in.Versions != nil { + in, out := &in.Versions, &out.Versions + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SMBInitParameters. +func (in *SMBInitParameters) DeepCopy() *SMBInitParameters { + if in == nil { + return nil + } + out := new(SMBInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SMBObservation) DeepCopyInto(out *SMBObservation) { *out = *in @@ -5918,6 +8014,31 @@ func (in *SMBParameters) DeepCopy() *SMBParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SSHAuthorizedKeyInitParameters) DeepCopyInto(out *SSHAuthorizedKeyInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Key != nil { + in, out := &in.Key, &out.Key + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHAuthorizedKeyInitParameters. +func (in *SSHAuthorizedKeyInitParameters) DeepCopy() *SSHAuthorizedKeyInitParameters { + if in == nil { + return nil + } + out := new(SSHAuthorizedKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SSHAuthorizedKeyObservation) DeepCopyInto(out *SSHAuthorizedKeyObservation) { *out = *in @@ -6022,6 +8143,41 @@ func (in *ShareDirectory) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ShareDirectoryInitParameters) DeepCopyInto(out *ShareDirectoryInitParameters) { + *out = *in + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShareDirectoryInitParameters. +func (in *ShareDirectoryInitParameters) DeepCopy() *ShareDirectoryInitParameters { + if in == nil { + return nil + } + out := new(ShareDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ShareDirectoryList) DeepCopyInto(out *ShareDirectoryList) { *out = *in @@ -6174,6 +8330,7 @@ func (in *ShareDirectorySpec) DeepCopyInto(out *ShareDirectorySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShareDirectorySpec. @@ -6193,12 +8350,64 @@ func (in *ShareDirectoryStatus) DeepCopyInto(out *ShareDirectoryStatus) { in.AtProvider.DeepCopyInto(&out.AtProvider) } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShareDirectoryStatus. -func (in *ShareDirectoryStatus) DeepCopy() *ShareDirectoryStatus { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShareDirectoryStatus. +func (in *ShareDirectoryStatus) DeepCopy() *ShareDirectoryStatus { + if in == nil { + return nil + } + out := new(ShareDirectoryStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ShareInitParameters) DeepCopyInto(out *ShareInitParameters) { + *out = *in + if in.ACL != nil { + in, out := &in.ACL, &out.ACL + *out = make([]ACLInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AccessTier != nil { + in, out := &in.AccessTier, &out.AccessTier + *out = new(string) + **out = **in + } + if in.EnabledProtocol != nil { + in, out := &in.EnabledProtocol, &out.EnabledProtocol + *out = new(string) + **out = **in + } + if in.Metadata != nil { + in, out := &in.Metadata, &out.Metadata + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Quota != nil { + in, out := &in.Quota, &out.Quota + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShareInitParameters. +func (in *ShareInitParameters) DeepCopy() *ShareInitParameters { if in == nil { return nil } - out := new(ShareDirectoryStatus) + out := new(ShareInitParameters) in.DeepCopyInto(out) return out } @@ -6374,6 +8583,70 @@ func (in *ShareParameters) DeepCopy() *ShareParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharePropertiesCorsRuleInitParameters) DeepCopyInto(out *SharePropertiesCorsRuleInitParameters) { + *out = *in + if in.AllowedHeaders != nil { + in, out := &in.AllowedHeaders, &out.AllowedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedMethods != nil { + in, out := &in.AllowedMethods, &out.AllowedMethods + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ExposedHeaders != nil { + in, out := &in.ExposedHeaders, &out.ExposedHeaders + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.MaxAgeInSeconds != nil { + in, out := &in.MaxAgeInSeconds, &out.MaxAgeInSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharePropertiesCorsRuleInitParameters. +func (in *SharePropertiesCorsRuleInitParameters) DeepCopy() *SharePropertiesCorsRuleInitParameters { + if in == nil { + return nil + } + out := new(SharePropertiesCorsRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SharePropertiesCorsRuleObservation) DeepCopyInto(out *SharePropertiesCorsRuleObservation) { *out = *in @@ -6502,6 +8775,42 @@ func (in *SharePropertiesCorsRuleParameters) DeepCopy() *SharePropertiesCorsRule return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SharePropertiesInitParameters) DeepCopyInto(out *SharePropertiesInitParameters) { + *out = *in + if in.CorsRule != nil { + in, out := &in.CorsRule, &out.CorsRule + *out = make([]SharePropertiesCorsRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RetentionPolicy != nil { + in, out := &in.RetentionPolicy, &out.RetentionPolicy + *out = make([]RetentionPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SMB != nil { + in, out := &in.SMB, &out.SMB + *out = make([]SMBInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharePropertiesInitParameters. +func (in *SharePropertiesInitParameters) DeepCopy() *SharePropertiesInitParameters { + if in == nil { + return nil + } + out := new(SharePropertiesInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SharePropertiesObservation) DeepCopyInto(out *SharePropertiesObservation) { *out = *in @@ -6579,6 +8888,7 @@ func (in *ShareSpec) DeepCopyInto(out *ShareSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShareSpec. @@ -6608,6 +8918,41 @@ func (in *ShareStatus) DeepCopy() *ShareStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SnapshotInitParameters) DeepCopyInto(out *SnapshotInitParameters) { + *out = *in + if in.ChangeTierToArchiveAfterDaysSinceCreation != nil { + in, out := &in.ChangeTierToArchiveAfterDaysSinceCreation, &out.ChangeTierToArchiveAfterDaysSinceCreation + *out = new(float64) + **out = **in + } + if in.ChangeTierToCoolAfterDaysSinceCreation != nil { + in, out := &in.ChangeTierToCoolAfterDaysSinceCreation, &out.ChangeTierToCoolAfterDaysSinceCreation + *out = new(float64) + **out = **in + } + if in.DeleteAfterDaysSinceCreationGreaterThan != nil { + in, out := &in.DeleteAfterDaysSinceCreationGreaterThan, &out.DeleteAfterDaysSinceCreationGreaterThan + *out = new(float64) + **out = **in + } + if in.TierToArchiveAfterDaysSinceLastTierChangeGreaterThan != nil { + in, out := &in.TierToArchiveAfterDaysSinceLastTierChangeGreaterThan, &out.TierToArchiveAfterDaysSinceLastTierChangeGreaterThan + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotInitParameters. +func (in *SnapshotInitParameters) DeepCopy() *SnapshotInitParameters { + if in == nil { + return nil + } + out := new(SnapshotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SnapshotObservation) DeepCopyInto(out *SnapshotObservation) { *out = *in @@ -6678,6 +9023,31 @@ func (in *SnapshotParameters) DeepCopy() *SnapshotParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StaticWebsiteInitParameters) DeepCopyInto(out *StaticWebsiteInitParameters) { + *out = *in + if in.Error404Document != nil { + in, out := &in.Error404Document, &out.Error404Document + *out = new(string) + **out = **in + } + if in.IndexDocument != nil { + in, out := &in.IndexDocument, &out.IndexDocument + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaticWebsiteInitParameters. +func (in *StaticWebsiteInitParameters) DeepCopy() *StaticWebsiteInitParameters { + if in == nil { + return nil + } + out := new(StaticWebsiteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StaticWebsiteObservation) DeepCopyInto(out *StaticWebsiteObservation) { *out = *in @@ -6755,6 +9125,33 @@ func (in *Table) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TableACLInitParameters) DeepCopyInto(out *TableACLInitParameters) { + *out = *in + if in.AccessPolicy != nil { + in, out := &in.AccessPolicy, &out.AccessPolicy + *out = make([]ACLAccessPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TableACLInitParameters. +func (in *TableACLInitParameters) DeepCopy() *TableACLInitParameters { + if in == nil { + return nil + } + out := new(TableACLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TableACLObservation) DeepCopyInto(out *TableACLObservation) { *out = *in @@ -6836,6 +9233,46 @@ func (in *TableEntity) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TableEntityInitParameters) DeepCopyInto(out *TableEntityInitParameters) { + *out = *in + if in.Entity != nil { + in, out := &in.Entity, &out.Entity + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.PartitionKey != nil { + in, out := &in.PartitionKey, &out.PartitionKey + *out = new(string) + **out = **in + } + if in.RowKey != nil { + in, out := &in.RowKey, &out.RowKey + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TableEntityInitParameters. +func (in *TableEntityInitParameters) DeepCopy() *TableEntityInitParameters { + if in == nil { + return nil + } + out := new(TableEntityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TableEntityList) DeepCopyInto(out *TableEntityList) { *out = *in @@ -6998,6 +9435,7 @@ func (in *TableEntitySpec) DeepCopyInto(out *TableEntitySpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TableEntitySpec. @@ -7027,6 +9465,33 @@ func (in *TableEntityStatus) DeepCopy() *TableEntityStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TableInitParameters) DeepCopyInto(out *TableInitParameters) { + *out = *in + if in.ACL != nil { + in, out := &in.ACL, &out.ACL + *out = make([]TableACLInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TableInitParameters. +func (in *TableInitParameters) DeepCopy() *TableInitParameters { + if in == nil { + return nil + } + out := new(TableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TableList) DeepCopyInto(out *TableList) { *out = *in @@ -7143,6 +9608,7 @@ func (in *TableSpec) DeepCopyInto(out *TableSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TableSpec. @@ -7172,6 +9638,41 @@ func (in *TableStatus) DeepCopy() *TableStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VersionInitParameters) DeepCopyInto(out *VersionInitParameters) { + *out = *in + if in.ChangeTierToArchiveAfterDaysSinceCreation != nil { + in, out := &in.ChangeTierToArchiveAfterDaysSinceCreation, &out.ChangeTierToArchiveAfterDaysSinceCreation + *out = new(float64) + **out = **in + } + if in.ChangeTierToCoolAfterDaysSinceCreation != nil { + in, out := &in.ChangeTierToCoolAfterDaysSinceCreation, &out.ChangeTierToCoolAfterDaysSinceCreation + *out = new(float64) + **out = **in + } + if in.DeleteAfterDaysSinceCreation != nil { + in, out := &in.DeleteAfterDaysSinceCreation, &out.DeleteAfterDaysSinceCreation + *out = new(float64) + **out = **in + } + if in.TierToArchiveAfterDaysSinceLastTierChangeGreaterThan != nil { + in, out := &in.TierToArchiveAfterDaysSinceLastTierChangeGreaterThan, &out.TierToArchiveAfterDaysSinceLastTierChangeGreaterThan + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionInitParameters. +func (in *VersionInitParameters) DeepCopy() *VersionInitParameters { + if in == nil { + return nil + } + out := new(VersionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VersionObservation) DeepCopyInto(out *VersionObservation) { *out = *in diff --git a/apis/storage/v1beta1/zz_generated.managed.go b/apis/storage/v1beta1/zz_generated.managed.go index 179565ee2..d046f8640 100644 --- a/apis/storage/v1beta1/zz_generated.managed.go +++ b/apis/storage/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Account) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Account. -func (mg *Account) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Account. +func (mg *Account) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Account. @@ -55,9 +55,9 @@ func (mg *Account) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Account. -func (mg *Account) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Account. +func (mg *Account) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Account. @@ -93,9 +93,9 @@ func (mg *AccountLocalUser) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AccountLocalUser. -func (mg *AccountLocalUser) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AccountLocalUser. +func (mg *AccountLocalUser) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AccountLocalUser. @@ -131,9 +131,9 @@ func (mg *AccountLocalUser) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AccountLocalUser. -func (mg *AccountLocalUser) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AccountLocalUser. +func (mg *AccountLocalUser) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AccountLocalUser. @@ -169,9 +169,9 @@ func (mg *AccountNetworkRules) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AccountNetworkRules. -func (mg *AccountNetworkRules) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AccountNetworkRules. +func (mg *AccountNetworkRules) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AccountNetworkRules. @@ -207,9 +207,9 @@ func (mg *AccountNetworkRules) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AccountNetworkRules. -func (mg *AccountNetworkRules) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AccountNetworkRules. +func (mg *AccountNetworkRules) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AccountNetworkRules. @@ -245,9 +245,9 @@ func (mg *Blob) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Blob. -func (mg *Blob) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Blob. +func (mg *Blob) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Blob. @@ -283,9 +283,9 @@ func (mg *Blob) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Blob. -func (mg *Blob) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Blob. +func (mg *Blob) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Blob. @@ -321,9 +321,9 @@ func (mg *BlobInventoryPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this BlobInventoryPolicy. -func (mg *BlobInventoryPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this BlobInventoryPolicy. +func (mg *BlobInventoryPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this BlobInventoryPolicy. @@ -359,9 +359,9 @@ func (mg *BlobInventoryPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this BlobInventoryPolicy. -func (mg *BlobInventoryPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this BlobInventoryPolicy. +func (mg *BlobInventoryPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this BlobInventoryPolicy. @@ -397,9 +397,9 @@ func (mg *Container) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Container. -func (mg *Container) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Container. +func (mg *Container) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Container. @@ -435,9 +435,9 @@ func (mg *Container) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Container. -func (mg *Container) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Container. +func (mg *Container) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Container. @@ -473,9 +473,9 @@ func (mg *DataLakeGen2FileSystem) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataLakeGen2FileSystem. -func (mg *DataLakeGen2FileSystem) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataLakeGen2FileSystem. +func (mg *DataLakeGen2FileSystem) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataLakeGen2FileSystem. @@ -511,9 +511,9 @@ func (mg *DataLakeGen2FileSystem) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataLakeGen2FileSystem. -func (mg *DataLakeGen2FileSystem) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataLakeGen2FileSystem. +func (mg *DataLakeGen2FileSystem) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataLakeGen2FileSystem. @@ -549,9 +549,9 @@ func (mg *DataLakeGen2Path) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DataLakeGen2Path. -func (mg *DataLakeGen2Path) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DataLakeGen2Path. +func (mg *DataLakeGen2Path) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DataLakeGen2Path. @@ -587,9 +587,9 @@ func (mg *DataLakeGen2Path) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DataLakeGen2Path. -func (mg *DataLakeGen2Path) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DataLakeGen2Path. +func (mg *DataLakeGen2Path) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DataLakeGen2Path. @@ -625,9 +625,9 @@ func (mg *EncryptionScope) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this EncryptionScope. -func (mg *EncryptionScope) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this EncryptionScope. +func (mg *EncryptionScope) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this EncryptionScope. @@ -663,9 +663,9 @@ func (mg *EncryptionScope) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this EncryptionScope. -func (mg *EncryptionScope) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this EncryptionScope. +func (mg *EncryptionScope) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this EncryptionScope. @@ -701,9 +701,9 @@ func (mg *ManagementPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagementPolicy. -func (mg *ManagementPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagementPolicy. +func (mg *ManagementPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagementPolicy. @@ -739,9 +739,9 @@ func (mg *ManagementPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagementPolicy. -func (mg *ManagementPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagementPolicy. +func (mg *ManagementPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagementPolicy. @@ -777,9 +777,9 @@ func (mg *ObjectReplication) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ObjectReplication. -func (mg *ObjectReplication) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ObjectReplication. +func (mg *ObjectReplication) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ObjectReplication. @@ -815,9 +815,9 @@ func (mg *ObjectReplication) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ObjectReplication. -func (mg *ObjectReplication) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ObjectReplication. +func (mg *ObjectReplication) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ObjectReplication. @@ -853,9 +853,9 @@ func (mg *Queue) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Queue. -func (mg *Queue) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Queue. +func (mg *Queue) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Queue. @@ -891,9 +891,9 @@ func (mg *Queue) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Queue. -func (mg *Queue) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Queue. +func (mg *Queue) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Queue. @@ -929,9 +929,9 @@ func (mg *Share) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Share. -func (mg *Share) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Share. +func (mg *Share) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Share. @@ -967,9 +967,9 @@ func (mg *Share) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Share. -func (mg *Share) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Share. +func (mg *Share) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Share. @@ -1005,9 +1005,9 @@ func (mg *ShareDirectory) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ShareDirectory. -func (mg *ShareDirectory) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ShareDirectory. +func (mg *ShareDirectory) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ShareDirectory. @@ -1043,9 +1043,9 @@ func (mg *ShareDirectory) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ShareDirectory. -func (mg *ShareDirectory) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ShareDirectory. +func (mg *ShareDirectory) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ShareDirectory. @@ -1081,9 +1081,9 @@ func (mg *Table) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Table. -func (mg *Table) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Table. +func (mg *Table) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Table. @@ -1119,9 +1119,9 @@ func (mg *Table) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Table. -func (mg *Table) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Table. +func (mg *Table) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Table. @@ -1157,9 +1157,9 @@ func (mg *TableEntity) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this TableEntity. -func (mg *TableEntity) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this TableEntity. +func (mg *TableEntity) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this TableEntity. @@ -1195,9 +1195,9 @@ func (mg *TableEntity) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this TableEntity. -func (mg *TableEntity) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this TableEntity. +func (mg *TableEntity) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this TableEntity. diff --git a/apis/storage/v1beta1/zz_generated_terraformed.go b/apis/storage/v1beta1/zz_generated_terraformed.go index ac696b09c..03519aaad 100755 --- a/apis/storage/v1beta1/zz_generated_terraformed.go +++ b/apis/storage/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Account) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Account +func (tr *Account) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Account using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Account) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *AccountLocalUser) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AccountLocalUser +func (tr *AccountLocalUser) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AccountLocalUser using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AccountLocalUser) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *AccountNetworkRules) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AccountNetworkRules +func (tr *AccountNetworkRules) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AccountNetworkRules using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AccountNetworkRules) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *Blob) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Blob +func (tr *Blob) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Blob using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Blob) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *BlobInventoryPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this BlobInventoryPolicy +func (tr *BlobInventoryPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this BlobInventoryPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *BlobInventoryPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *Container) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Container +func (tr *Container) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Container using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Container) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *DataLakeGen2FileSystem) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataLakeGen2FileSystem +func (tr *DataLakeGen2FileSystem) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataLakeGen2FileSystem using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataLakeGen2FileSystem) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *DataLakeGen2Path) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DataLakeGen2Path +func (tr *DataLakeGen2Path) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DataLakeGen2Path using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DataLakeGen2Path) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *EncryptionScope) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this EncryptionScope +func (tr *EncryptionScope) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this EncryptionScope using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *EncryptionScope) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *ManagementPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagementPolicy +func (tr *ManagementPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagementPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagementPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *ObjectReplication) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ObjectReplication +func (tr *ObjectReplication) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ObjectReplication using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ObjectReplication) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *Queue) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Queue +func (tr *Queue) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Queue using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Queue) LateInitialize(attrs []byte) (bool, error) { @@ -957,6 +1077,16 @@ func (tr *Share) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Share +func (tr *Share) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Share using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Share) LateInitialize(attrs []byte) (bool, error) { @@ -1031,6 +1161,16 @@ func (tr *ShareDirectory) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ShareDirectory +func (tr *ShareDirectory) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ShareDirectory using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ShareDirectory) LateInitialize(attrs []byte) (bool, error) { @@ -1105,6 +1245,16 @@ func (tr *Table) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Table +func (tr *Table) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Table using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Table) LateInitialize(attrs []byte) (bool, error) { @@ -1179,6 +1329,16 @@ func (tr *TableEntity) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this TableEntity +func (tr *TableEntity) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this TableEntity using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *TableEntity) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/storage/v1beta1/zz_managementpolicy_types.go b/apis/storage/v1beta1/zz_managementpolicy_types.go index 4818855f5..db9c69ebe 100755 --- a/apis/storage/v1beta1/zz_managementpolicy_types.go +++ b/apis/storage/v1beta1/zz_managementpolicy_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActionsInitParameters struct { + + // A base_blob block as documented below. + BaseBlob []BaseBlobInitParameters `json:"baseBlob,omitempty" tf:"base_blob,omitempty"` + + // A snapshot block as documented below. + Snapshot []SnapshotInitParameters `json:"snapshot,omitempty" tf:"snapshot,omitempty"` + + // A version block as documented below. + Version []VersionInitParameters `json:"version,omitempty" tf:"version,omitempty"` +} + type ActionsObservation struct { // A base_blob block as documented below. @@ -40,6 +52,42 @@ type ActionsParameters struct { Version []VersionParameters `json:"version,omitempty" tf:"version,omitempty"` } +type BaseBlobInitParameters struct { + + // Whether a blob should automatically be tiered from cool back to hot if it's accessed again after being tiered to cool. Defaults to false. + AutoTierToHotFromCoolEnabled *bool `json:"autoTierToHotFromCoolEnabled,omitempty" tf:"auto_tier_to_hot_from_cool_enabled,omitempty"` + + // The age in days after creation to delete the blob snapshot. Must be between 0 and 99999. Defaults to -1. + DeleteAfterDaysSinceCreationGreaterThan *float64 `json:"deleteAfterDaysSinceCreationGreaterThan,omitempty" tf:"delete_after_days_since_creation_greater_than,omitempty"` + + // The age in days after last access time to delete the blob. Must be between 0 and 99999. Defaults to -1. + DeleteAfterDaysSinceLastAccessTimeGreaterThan *float64 `json:"deleteAfterDaysSinceLastAccessTimeGreaterThan,omitempty" tf:"delete_after_days_since_last_access_time_greater_than,omitempty"` + + // The age in days after last modification to delete the blob. Must be between 0 and 99999. Defaults to -1. + DeleteAfterDaysSinceModificationGreaterThan *float64 `json:"deleteAfterDaysSinceModificationGreaterThan,omitempty" tf:"delete_after_days_since_modification_greater_than,omitempty"` + + // The age in days after creation to archive storage. Supports blob currently at Hot or Cool tier. Must be between 0 and99999. Defaults to -1. + TierToArchiveAfterDaysSinceCreationGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceCreationGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_creation_greater_than,omitempty"` + + // The age in days after last access time to tier blobs to archive storage. Supports blob currently at Hot or Cool tier. Must be between 0 and99999. Defaults to -1. + TierToArchiveAfterDaysSinceLastAccessTimeGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_last_access_time_greater_than,omitempty"` + + // The age in days after last tier change to the blobs to skip to be archved. Must be between 0 and 99999. Defaults to -1. + TierToArchiveAfterDaysSinceLastTierChangeGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceLastTierChangeGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_last_tier_change_greater_than,omitempty"` + + // The age in days after last modification to tier blobs to archive storage. Supports blob currently at Hot or Cool tier. Must be between 0 and 99999. Defaults to -1. + TierToArchiveAfterDaysSinceModificationGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceModificationGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_modification_greater_than,omitempty"` + + // The age in days after creation to cool storage. Supports blob currently at Hot tier. Must be between 0 and 99999. Defaults to -1. + TierToCoolAfterDaysSinceCreationGreaterThan *float64 `json:"tierToCoolAfterDaysSinceCreationGreaterThan,omitempty" tf:"tier_to_cool_after_days_since_creation_greater_than,omitempty"` + + // The age in days after last access time to tier blobs to cool storage. Supports blob currently at Hot tier. Must be between 0 and 99999. Defaults to -1. + TierToCoolAfterDaysSinceLastAccessTimeGreaterThan *float64 `json:"tierToCoolAfterDaysSinceLastAccessTimeGreaterThan,omitempty" tf:"tier_to_cool_after_days_since_last_access_time_greater_than,omitempty"` + + // The age in days after last modification to tier blobs to cool storage. Supports blob currently at Hot tier. Must be between 0 and 99999. Defaults to -1. + TierToCoolAfterDaysSinceModificationGreaterThan *float64 `json:"tierToCoolAfterDaysSinceModificationGreaterThan,omitempty" tf:"tier_to_cool_after_days_since_modification_greater_than,omitempty"` +} + type BaseBlobObservation struct { // Whether a blob should automatically be tiered from cool back to hot if it's accessed again after being tiered to cool. Defaults to false. @@ -123,6 +171,18 @@ type BaseBlobParameters struct { TierToCoolAfterDaysSinceModificationGreaterThan *float64 `json:"tierToCoolAfterDaysSinceModificationGreaterThan,omitempty" tf:"tier_to_cool_after_days_since_modification_greater_than,omitempty"` } +type FiltersInitParameters struct { + + // An array of predefined values. Valid options are blockBlob and appendBlob. + BlobTypes []*string `json:"blobTypes,omitempty" tf:"blob_types,omitempty"` + + // A match_blob_index_tag block as defined below. The block defines the blob index tag based filtering for blob objects. + MatchBlobIndexTag []MatchBlobIndexTagInitParameters `json:"matchBlobIndexTag,omitempty" tf:"match_blob_index_tag,omitempty"` + + // An array of strings for prefixes to be matched. + PrefixMatch []*string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` +} + type FiltersObservation struct { // An array of predefined values. Valid options are blockBlob and appendBlob. @@ -138,8 +198,8 @@ type FiltersObservation struct { type FiltersParameters struct { // An array of predefined values. Valid options are blockBlob and appendBlob. - // +kubebuilder:validation:Required - BlobTypes []*string `json:"blobTypes" tf:"blob_types,omitempty"` + // +kubebuilder:validation:Optional + BlobTypes []*string `json:"blobTypes,omitempty" tf:"blob_types,omitempty"` // A match_blob_index_tag block as defined below. The block defines the blob index tag based filtering for blob objects. // +kubebuilder:validation:Optional @@ -150,6 +210,12 @@ type FiltersParameters struct { PrefixMatch []*string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` } +type ManagementPolicyInitParameters struct { + + // A rule block as documented below. + Rule []RuleInitParameters `json:"rule,omitempty" tf:"rule,omitempty"` +} + type ManagementPolicyObservation struct { // The ID of the Storage Account Management Policy. @@ -183,6 +249,18 @@ type ManagementPolicyParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` } +type MatchBlobIndexTagInitParameters struct { + + // The name of the rule. Rule name is case-sensitive. It must be unique within a policy. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The comparison operator which is used for object comparison and filtering. Possible value is ==. Defaults to ==. + Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` + + // The filter tag value used for tag based filtering for blob objects. + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + type MatchBlobIndexTagObservation struct { // The name of the rule. Rule name is case-sensitive. It must be unique within a policy. @@ -198,16 +276,31 @@ type MatchBlobIndexTagObservation struct { type MatchBlobIndexTagParameters struct { // The name of the rule. Rule name is case-sensitive. It must be unique within a policy. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The comparison operator which is used for object comparison and filtering. Possible value is ==. Defaults to ==. // +kubebuilder:validation:Optional Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` // The filter tag value used for tag based filtering for blob objects. - // +kubebuilder:validation:Required - Value *string `json:"value" tf:"value,omitempty"` + // +kubebuilder:validation:Optional + Value *string `json:"value,omitempty" tf:"value,omitempty"` +} + +type RuleInitParameters struct { + + // An actions block as documented below. + Actions []ActionsInitParameters `json:"actions,omitempty" tf:"actions,omitempty"` + + // Boolean to specify whether the rule is enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A filters block as documented below. + Filters []FiltersInitParameters `json:"filters,omitempty" tf:"filters,omitempty"` + + // The name of the rule. Rule name is case-sensitive. It must be unique within a policy. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type RuleObservation struct { @@ -228,20 +321,35 @@ type RuleObservation struct { type RuleParameters struct { // An actions block as documented below. - // +kubebuilder:validation:Required - Actions []ActionsParameters `json:"actions" tf:"actions,omitempty"` + // +kubebuilder:validation:Optional + Actions []ActionsParameters `json:"actions,omitempty" tf:"actions,omitempty"` // Boolean to specify whether the rule is enabled. - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A filters block as documented below. - // +kubebuilder:validation:Required - Filters []FiltersParameters `json:"filters" tf:"filters,omitempty"` + // +kubebuilder:validation:Optional + Filters []FiltersParameters `json:"filters,omitempty" tf:"filters,omitempty"` // The name of the rule. Rule name is case-sensitive. It must be unique within a policy. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type SnapshotInitParameters struct { + + // The age in days after creation to tier blob version to archive storage. Must be between 0 and 99999. Defaults to -1. + ChangeTierToArchiveAfterDaysSinceCreation *float64 `json:"changeTierToArchiveAfterDaysSinceCreation,omitempty" tf:"change_tier_to_archive_after_days_since_creation,omitempty"` + + // The age in days creation create to tier blob version to cool storage. Must be between 0 and 99999. Defaults to -1. + ChangeTierToCoolAfterDaysSinceCreation *float64 `json:"changeTierToCoolAfterDaysSinceCreation,omitempty" tf:"change_tier_to_cool_after_days_since_creation,omitempty"` + + // The age in days after creation to delete the blob snapshot. Must be between 0 and 99999. Defaults to -1. + DeleteAfterDaysSinceCreationGreaterThan *float64 `json:"deleteAfterDaysSinceCreationGreaterThan,omitempty" tf:"delete_after_days_since_creation_greater_than,omitempty"` + + // The age in days after last tier change to the blobs to skip to be archved. Must be between 0 and 99999. Defaults to -1. + TierToArchiveAfterDaysSinceLastTierChangeGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceLastTierChangeGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_last_tier_change_greater_than,omitempty"` } type SnapshotObservation struct { @@ -278,6 +386,21 @@ type SnapshotParameters struct { TierToArchiveAfterDaysSinceLastTierChangeGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceLastTierChangeGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_last_tier_change_greater_than,omitempty"` } +type VersionInitParameters struct { + + // The age in days after creation to tier blob version to archive storage. Must be between 0 and 99999. Defaults to -1. + ChangeTierToArchiveAfterDaysSinceCreation *float64 `json:"changeTierToArchiveAfterDaysSinceCreation,omitempty" tf:"change_tier_to_archive_after_days_since_creation,omitempty"` + + // The age in days creation create to tier blob version to cool storage. Must be between 0 and 99999. Defaults to -1. + ChangeTierToCoolAfterDaysSinceCreation *float64 `json:"changeTierToCoolAfterDaysSinceCreation,omitempty" tf:"change_tier_to_cool_after_days_since_creation,omitempty"` + + // The age in days after creation to delete the blob version. Must be between 0 and 99999. Defaults to -1. + DeleteAfterDaysSinceCreation *float64 `json:"deleteAfterDaysSinceCreation,omitempty" tf:"delete_after_days_since_creation,omitempty"` + + // The age in days after last tier change to the blobs to skip to be archved. Must be between 0 and 99999. Defaults to -1. + TierToArchiveAfterDaysSinceLastTierChangeGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceLastTierChangeGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_last_tier_change_greater_than,omitempty"` +} + type VersionObservation struct { // The age in days after creation to tier blob version to archive storage. Must be between 0 and 99999. Defaults to -1. @@ -316,6 +439,18 @@ type VersionParameters struct { type ManagementPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagementPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagementPolicyInitParameters `json:"initProvider,omitempty"` } // ManagementPolicyStatus defines the observed state of ManagementPolicy. diff --git a/apis/storage/v1beta1/zz_objectreplication_types.go b/apis/storage/v1beta1/zz_objectreplication_types.go index 1261e2b0a..100842728 100755 --- a/apis/storage/v1beta1/zz_objectreplication_types.go +++ b/apis/storage/v1beta1/zz_objectreplication_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ObjectReplicationInitParameters struct { + + // One or more rules blocks as defined below. + Rules []ObjectReplicationRulesInitParameters `json:"rules,omitempty" tf:"rules,omitempty"` +} + type ObjectReplicationObservation struct { // The ID of the Object Replication in the destination storage account. @@ -69,6 +75,15 @@ type ObjectReplicationParameters struct { SourceStorageAccountIDSelector *v1.Selector `json:"sourceStorageAccountIdSelector,omitempty" tf:"-"` } +type ObjectReplicationRulesInitParameters struct { + + // The time after which the Block Blobs created will be copies to the destination. Possible values are OnlyNewObjects, Everything and time in RFC3339 format: 2006-01-02T15:04:00Z. + CopyBlobsCreatedAfter *string `json:"copyBlobsCreatedAfter,omitempty" tf:"copy_blobs_created_after,omitempty"` + + // Specifies a list of filters prefixes, the blobs whose names begin with which will be replicated. + FilterOutBlobsWithPrefix []*string `json:"filterOutBlobsWithPrefix,omitempty" tf:"filter_out_blobs_with_prefix,omitempty"` +} + type ObjectReplicationRulesObservation struct { // The time after which the Block Blobs created will be copies to the destination. Possible values are OnlyNewObjects, Everything and time in RFC3339 format: 2006-01-02T15:04:00Z. @@ -127,6 +142,18 @@ type ObjectReplicationRulesParameters struct { type ObjectReplicationSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ObjectReplicationParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ObjectReplicationInitParameters `json:"initProvider,omitempty"` } // ObjectReplicationStatus defines the observed state of ObjectReplication. @@ -147,7 +174,7 @@ type ObjectReplicationStatus struct { type ObjectReplication struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rules)",message="rules is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.rules) || has(self.initProvider.rules)",message="rules is a required parameter" Spec ObjectReplicationSpec `json:"spec"` Status ObjectReplicationStatus `json:"status,omitempty"` } diff --git a/apis/storage/v1beta1/zz_queue_types.go b/apis/storage/v1beta1/zz_queue_types.go index 3ccb25dd2..674f2781b 100755 --- a/apis/storage/v1beta1/zz_queue_types.go +++ b/apis/storage/v1beta1/zz_queue_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type QueueInitParameters struct { + + // A mapping of MetaData which should be assigned to this Storage Queue. + Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` +} + type QueueObservation struct { // The ID of the Storage Queue. @@ -52,6 +58,18 @@ type QueueParameters struct { type QueueSpec struct { v1.ResourceSpec `json:",inline"` ForProvider QueueParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider QueueInitParameters `json:"initProvider,omitempty"` } // QueueStatus defines the observed state of Queue. diff --git a/apis/storage/v1beta1/zz_share_types.go b/apis/storage/v1beta1/zz_share_types.go index 7958e1628..349c5848d 100755 --- a/apis/storage/v1beta1/zz_share_types.go +++ b/apis/storage/v1beta1/zz_share_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ACLInitParameters struct { + + // An access_policy block as defined below. + AccessPolicy []AccessPolicyInitParameters `json:"accessPolicy,omitempty" tf:"access_policy,omitempty"` + + // The ID which should be used for this Shared Identifier. + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + type ACLObservation struct { // An access_policy block as defined below. @@ -29,8 +38,20 @@ type ACLParameters struct { AccessPolicy []AccessPolicyParameters `json:"accessPolicy,omitempty" tf:"access_policy,omitempty"` // The ID which should be used for this Shared Identifier. - // +kubebuilder:validation:Required - ID *string `json:"id" tf:"id,omitempty"` + // +kubebuilder:validation:Optional + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + +type AccessPolicyInitParameters struct { + + // The time at which this Access Policy should be valid until, in ISO8601 format. + Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` + + // The permissions which should be associated with this Shared Identifier. Possible value is combination of r (read), w (write), d (delete), and l (list). + Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` + + // The time at which this Access Policy should be valid from, in ISO8601 format. + Start *string `json:"start,omitempty" tf:"start,omitempty"` } type AccessPolicyObservation struct { @@ -52,14 +73,32 @@ type AccessPolicyParameters struct { Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` // The permissions which should be associated with this Shared Identifier. Possible value is combination of r (read), w (write), d (delete), and l (list). - // +kubebuilder:validation:Required - Permissions *string `json:"permissions" tf:"permissions,omitempty"` + // +kubebuilder:validation:Optional + Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` // The time at which this Access Policy should be valid from, in ISO8601 format. // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } +type ShareInitParameters struct { + + // One or more acl blocks as defined below. + ACL []ACLInitParameters `json:"acl,omitempty" tf:"acl,omitempty"` + + // The access tier of the File Share. Possible values are Hot, Cool and TransactionOptimized, Premium. + AccessTier *string `json:"accessTier,omitempty" tf:"access_tier,omitempty"` + + // The protocol used for the share. Possible values are SMB and NFS. The SMB indicates the share can be accessed by SMBv3.0, SMBv2.1 and REST. The NFS indicates the share can be accessed by NFSv4.1. Defaults to SMB. Changing this forces a new resource to be created. + EnabledProtocol *string `json:"enabledProtocol,omitempty" tf:"enabled_protocol,omitempty"` + + // A mapping of MetaData for this File Share. + Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` + + // The maximum size of the share, in gigabytes. For Standard storage accounts, this must be 1GB (or higher) and at most 5120 GB (5 TB). For Premium FileStorage storage accounts, this must be greater than 100 GB and at most 102400 GB (100 TB). + Quota *float64 `json:"quota,omitempty" tf:"quota,omitempty"` +} + type ShareObservation struct { // One or more acl blocks as defined below. @@ -130,6 +169,18 @@ type ShareParameters struct { type ShareSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ShareParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ShareInitParameters `json:"initProvider,omitempty"` } // ShareStatus defines the observed state of Share. @@ -150,7 +201,7 @@ type ShareStatus struct { type Share struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.quota)",message="quota is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.quota) || has(self.initProvider.quota)",message="quota is a required parameter" Spec ShareSpec `json:"spec"` Status ShareStatus `json:"status,omitempty"` } diff --git a/apis/storage/v1beta1/zz_sharedirectory_types.go b/apis/storage/v1beta1/zz_sharedirectory_types.go index ec8d62f66..98b1ebac1 100755 --- a/apis/storage/v1beta1/zz_sharedirectory_types.go +++ b/apis/storage/v1beta1/zz_sharedirectory_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ShareDirectoryInitParameters struct { + + // A mapping of metadata to assign to this Directory. + Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` + + // The name (or path) of the Directory that should be created within this File Share. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type ShareDirectoryObservation struct { // The ID of the Directory within the File Share. @@ -72,6 +81,18 @@ type ShareDirectoryParameters struct { type ShareDirectorySpec struct { v1.ResourceSpec `json:",inline"` ForProvider ShareDirectoryParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ShareDirectoryInitParameters `json:"initProvider,omitempty"` } // ShareDirectoryStatus defines the observed state of ShareDirectory. @@ -92,7 +113,7 @@ type ShareDirectoryStatus struct { type ShareDirectory struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec ShareDirectorySpec `json:"spec"` Status ShareDirectoryStatus `json:"status,omitempty"` } diff --git a/apis/storage/v1beta1/zz_table_types.go b/apis/storage/v1beta1/zz_table_types.go index 3948a2aa0..bd2e054c5 100755 --- a/apis/storage/v1beta1/zz_table_types.go +++ b/apis/storage/v1beta1/zz_table_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ACLAccessPolicyInitParameters struct { + + // The ISO8061 UTC time at which this Access Policy should be valid until. + Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` + + // The permissions which should associated with this Shared Identifier. + Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` + + // The ISO8061 UTC time at which this Access Policy should be valid from. + Start *string `json:"start,omitempty" tf:"start,omitempty"` +} + type ACLAccessPolicyObservation struct { // The ISO8061 UTC time at which this Access Policy should be valid until. @@ -28,16 +40,25 @@ type ACLAccessPolicyObservation struct { type ACLAccessPolicyParameters struct { // The ISO8061 UTC time at which this Access Policy should be valid until. - // +kubebuilder:validation:Required - Expiry *string `json:"expiry" tf:"expiry,omitempty"` + // +kubebuilder:validation:Optional + Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` // The permissions which should associated with this Shared Identifier. - // +kubebuilder:validation:Required - Permissions *string `json:"permissions" tf:"permissions,omitempty"` + // +kubebuilder:validation:Optional + Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` // The ISO8061 UTC time at which this Access Policy should be valid from. - // +kubebuilder:validation:Required - Start *string `json:"start" tf:"start,omitempty"` + // +kubebuilder:validation:Optional + Start *string `json:"start,omitempty" tf:"start,omitempty"` +} + +type TableACLInitParameters struct { + + // An access_policy block as defined below. + AccessPolicy []ACLAccessPolicyInitParameters `json:"accessPolicy,omitempty" tf:"access_policy,omitempty"` + + // The ID which should be used for this Shared Identifier. + ID *string `json:"id,omitempty" tf:"id,omitempty"` } type TableACLObservation struct { @@ -56,8 +77,17 @@ type TableACLParameters struct { AccessPolicy []ACLAccessPolicyParameters `json:"accessPolicy,omitempty" tf:"access_policy,omitempty"` // The ID which should be used for this Shared Identifier. - // +kubebuilder:validation:Required - ID *string `json:"id" tf:"id,omitempty"` + // +kubebuilder:validation:Optional + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + +type TableInitParameters struct { + + // One or more acl blocks as defined below. + ACL []TableACLInitParameters `json:"acl,omitempty" tf:"acl,omitempty"` + + // The name of the storage table. Only Alphanumeric characters allowed, starting with a letter. Must be unique within the storage account the table is located. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` } type TableObservation struct { @@ -103,6 +133,18 @@ type TableParameters struct { type TableSpec struct { v1.ResourceSpec `json:",inline"` ForProvider TableParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TableInitParameters `json:"initProvider,omitempty"` } // TableStatus defines the observed state of Table. @@ -123,7 +165,7 @@ type TableStatus struct { type Table struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec TableSpec `json:"spec"` Status TableStatus `json:"status,omitempty"` } diff --git a/apis/storage/v1beta1/zz_tableentity_types.go b/apis/storage/v1beta1/zz_tableentity_types.go index 25b284718..65e7a5824 100755 --- a/apis/storage/v1beta1/zz_tableentity_types.go +++ b/apis/storage/v1beta1/zz_tableentity_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type TableEntityInitParameters struct { + + // A map of key/value pairs that describe the entity to be inserted/merged in to the storage table. + Entity map[string]*string `json:"entity,omitempty" tf:"entity,omitempty"` + + // The key for the partition where the entity will be inserted/merged. Changing this forces a new resource. + PartitionKey *string `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` + + // The key for the row where the entity will be inserted/merged. Changing this forces a new resource. + RowKey *string `json:"rowKey,omitempty" tf:"row_key,omitempty"` +} + type TableEntityObservation struct { // A map of key/value pairs that describe the entity to be inserted/merged in to the storage table. @@ -80,6 +92,18 @@ type TableEntityParameters struct { type TableEntitySpec struct { v1.ResourceSpec `json:",inline"` ForProvider TableEntityParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider TableEntityInitParameters `json:"initProvider,omitempty"` } // TableEntityStatus defines the observed state of TableEntity. @@ -100,9 +124,9 @@ type TableEntityStatus struct { type TableEntity struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.entity)",message="entity is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partitionKey)",message="partitionKey is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rowKey)",message="rowKey is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.entity) || has(self.initProvider.entity)",message="entity is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.partitionKey) || has(self.initProvider.partitionKey)",message="partitionKey is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.rowKey) || has(self.initProvider.rowKey)",message="rowKey is a required parameter" Spec TableEntitySpec `json:"spec"` Status TableEntityStatus `json:"status,omitempty"` } diff --git a/apis/storagecache/v1beta1/zz_generated.deepcopy.go b/apis/storagecache/v1beta1/zz_generated.deepcopy.go index 7ad4c3e12..e2a368641 100644 --- a/apis/storagecache/v1beta1/zz_generated.deepcopy.go +++ b/apis/storagecache/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,61 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AccessRuleInitParameters) DeepCopyInto(out *AccessRuleInitParameters) { + *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = new(string) + **out = **in + } + if in.AnonymousGID != nil { + in, out := &in.AnonymousGID, &out.AnonymousGID + *out = new(float64) + **out = **in + } + if in.AnonymousUID != nil { + in, out := &in.AnonymousUID, &out.AnonymousUID + *out = new(float64) + **out = **in + } + if in.Filter != nil { + in, out := &in.Filter, &out.Filter + *out = new(string) + **out = **in + } + if in.RootSquashEnabled != nil { + in, out := &in.RootSquashEnabled, &out.RootSquashEnabled + *out = new(bool) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.SubmountAccessEnabled != nil { + in, out := &in.SubmountAccessEnabled, &out.SubmountAccessEnabled + *out = new(bool) + **out = **in + } + if in.SuidEnabled != nil { + in, out := &in.SuidEnabled, &out.SuidEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessRuleInitParameters. +func (in *AccessRuleInitParameters) DeepCopy() *AccessRuleInitParameters { + if in == nil { + return nil + } + out := new(AccessRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AccessRuleObservation) DeepCopyInto(out *AccessRuleObservation) { *out = *in @@ -124,6 +179,26 @@ func (in *AccessRuleParameters) DeepCopy() *AccessRuleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BindInitParameters) DeepCopyInto(out *BindInitParameters) { + *out = *in + if in.Dn != nil { + in, out := &in.Dn, &out.Dn + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BindInitParameters. +func (in *BindInitParameters) DeepCopy() *BindInitParameters { + if in == nil { + return nil + } + out := new(BindInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BindObservation) DeepCopyInto(out *BindObservation) { *out = *in @@ -165,6 +240,37 @@ func (in *BindParameters) DeepCopy() *BindParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DNSInitParameters) DeepCopyInto(out *DNSInitParameters) { + *out = *in + if in.SearchDomain != nil { + in, out := &in.SearchDomain, &out.SearchDomain + *out = new(string) + **out = **in + } + if in.Servers != nil { + in, out := &in.Servers, &out.Servers + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSInitParameters. +func (in *DNSInitParameters) DeepCopy() *DNSInitParameters { + if in == nil { + return nil + } + out := new(DNSInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DNSObservation) DeepCopyInto(out *DNSObservation) { *out = *in @@ -227,6 +333,28 @@ func (in *DNSParameters) DeepCopy() *DNSParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DefaultAccessPolicyInitParameters) DeepCopyInto(out *DefaultAccessPolicyInitParameters) { + *out = *in + if in.AccessRule != nil { + in, out := &in.AccessRule, &out.AccessRule + *out = make([]AccessRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DefaultAccessPolicyInitParameters. +func (in *DefaultAccessPolicyInitParameters) DeepCopy() *DefaultAccessPolicyInitParameters { + if in == nil { + return nil + } + out := new(DefaultAccessPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DefaultAccessPolicyObservation) DeepCopyInto(out *DefaultAccessPolicyObservation) { *out = *in @@ -271,6 +399,51 @@ func (in *DefaultAccessPolicyParameters) DeepCopy() *DefaultAccessPolicyParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DirectoryActiveDirectoryInitParameters) DeepCopyInto(out *DirectoryActiveDirectoryInitParameters) { + *out = *in + if in.CacheNetbiosName != nil { + in, out := &in.CacheNetbiosName, &out.CacheNetbiosName + *out = new(string) + **out = **in + } + if in.DNSPrimaryIP != nil { + in, out := &in.DNSPrimaryIP, &out.DNSPrimaryIP + *out = new(string) + **out = **in + } + if in.DNSSecondaryIP != nil { + in, out := &in.DNSSecondaryIP, &out.DNSSecondaryIP + *out = new(string) + **out = **in + } + if in.DomainName != nil { + in, out := &in.DomainName, &out.DomainName + *out = new(string) + **out = **in + } + if in.DomainNetbiosName != nil { + in, out := &in.DomainNetbiosName, &out.DomainNetbiosName + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DirectoryActiveDirectoryInitParameters. +func (in *DirectoryActiveDirectoryInitParameters) DeepCopy() *DirectoryActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(DirectoryActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DirectoryActiveDirectoryObservation) DeepCopyInto(out *DirectoryActiveDirectoryObservation) { *out = *in @@ -362,6 +535,31 @@ func (in *DirectoryActiveDirectoryParameters) DeepCopy() *DirectoryActiveDirecto return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DirectoryFlatFileInitParameters) DeepCopyInto(out *DirectoryFlatFileInitParameters) { + *out = *in + if in.GroupFileURI != nil { + in, out := &in.GroupFileURI, &out.GroupFileURI + *out = new(string) + **out = **in + } + if in.PasswordFileURI != nil { + in, out := &in.PasswordFileURI, &out.PasswordFileURI + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DirectoryFlatFileInitParameters. +func (in *DirectoryFlatFileInitParameters) DeepCopy() *DirectoryFlatFileInitParameters { + if in == nil { + return nil + } + out := new(DirectoryFlatFileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DirectoryFlatFileObservation) DeepCopyInto(out *DirectoryFlatFileObservation) { *out = *in @@ -412,6 +610,53 @@ func (in *DirectoryFlatFileParameters) DeepCopy() *DirectoryFlatFileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DirectoryLdapInitParameters) DeepCopyInto(out *DirectoryLdapInitParameters) { + *out = *in + if in.BaseDn != nil { + in, out := &in.BaseDn, &out.BaseDn + *out = new(string) + **out = **in + } + if in.Bind != nil { + in, out := &in.Bind, &out.Bind + *out = make([]BindInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CertificateValidationURI != nil { + in, out := &in.CertificateValidationURI, &out.CertificateValidationURI + *out = new(string) + **out = **in + } + if in.DownloadCertificateAutomatically != nil { + in, out := &in.DownloadCertificateAutomatically, &out.DownloadCertificateAutomatically + *out = new(bool) + **out = **in + } + if in.Encrypted != nil { + in, out := &in.Encrypted, &out.Encrypted + *out = new(bool) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DirectoryLdapInitParameters. +func (in *DirectoryLdapInitParameters) DeepCopy() *DirectoryLdapInitParameters { + if in == nil { + return nil + } + out := new(DirectoryLdapInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DirectoryLdapObservation) DeepCopyInto(out *DirectoryLdapObservation) { *out = *in @@ -557,7 +802,62 @@ func (in *HPCCacheAccessPolicy) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } - return nil + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPCCacheAccessPolicyAccessRuleInitParameters) DeepCopyInto(out *HPCCacheAccessPolicyAccessRuleInitParameters) { + *out = *in + if in.Access != nil { + in, out := &in.Access, &out.Access + *out = new(string) + **out = **in + } + if in.AnonymousGID != nil { + in, out := &in.AnonymousGID, &out.AnonymousGID + *out = new(float64) + **out = **in + } + if in.AnonymousUID != nil { + in, out := &in.AnonymousUID, &out.AnonymousUID + *out = new(float64) + **out = **in + } + if in.Filter != nil { + in, out := &in.Filter, &out.Filter + *out = new(string) + **out = **in + } + if in.RootSquashEnabled != nil { + in, out := &in.RootSquashEnabled, &out.RootSquashEnabled + *out = new(bool) + **out = **in + } + if in.Scope != nil { + in, out := &in.Scope, &out.Scope + *out = new(string) + **out = **in + } + if in.SubmountAccessEnabled != nil { + in, out := &in.SubmountAccessEnabled, &out.SubmountAccessEnabled + *out = new(bool) + **out = **in + } + if in.SuidEnabled != nil { + in, out := &in.SuidEnabled, &out.SuidEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheAccessPolicyAccessRuleInitParameters. +func (in *HPCCacheAccessPolicyAccessRuleInitParameters) DeepCopy() *HPCCacheAccessPolicyAccessRuleInitParameters { + if in == nil { + return nil + } + out := new(HPCCacheAccessPolicyAccessRuleInitParameters) + in.DeepCopyInto(out) + return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. @@ -670,6 +970,28 @@ func (in *HPCCacheAccessPolicyAccessRuleParameters) DeepCopy() *HPCCacheAccessPo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPCCacheAccessPolicyInitParameters) DeepCopyInto(out *HPCCacheAccessPolicyInitParameters) { + *out = *in + if in.AccessRule != nil { + in, out := &in.AccessRule, &out.AccessRule + *out = make([]HPCCacheAccessPolicyAccessRuleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheAccessPolicyInitParameters. +func (in *HPCCacheAccessPolicyInitParameters) DeepCopy() *HPCCacheAccessPolicyInitParameters { + if in == nil { + return nil + } + out := new(HPCCacheAccessPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HPCCacheAccessPolicyList) DeepCopyInto(out *HPCCacheAccessPolicyList) { *out = *in @@ -776,6 +1098,7 @@ func (in *HPCCacheAccessPolicySpec) DeepCopyInto(out *HPCCacheAccessPolicySpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheAccessPolicySpec. @@ -832,6 +1155,41 @@ func (in *HPCCacheBlobNFSTarget) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPCCacheBlobNFSTargetInitParameters) DeepCopyInto(out *HPCCacheBlobNFSTargetInitParameters) { + *out = *in + if in.AccessPolicyName != nil { + in, out := &in.AccessPolicyName, &out.AccessPolicyName + *out = new(string) + **out = **in + } + if in.NamespacePath != nil { + in, out := &in.NamespacePath, &out.NamespacePath + *out = new(string) + **out = **in + } + if in.StorageContainerID != nil { + in, out := &in.StorageContainerID, &out.StorageContainerID + *out = new(string) + **out = **in + } + if in.UsageModel != nil { + in, out := &in.UsageModel, &out.UsageModel + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheBlobNFSTargetInitParameters. +func (in *HPCCacheBlobNFSTargetInitParameters) DeepCopy() *HPCCacheBlobNFSTargetInitParameters { + if in == nil { + return nil + } + out := new(HPCCacheBlobNFSTargetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HPCCacheBlobNFSTargetList) DeepCopyInto(out *HPCCacheBlobNFSTargetList) { *out = *in @@ -984,6 +1342,7 @@ func (in *HPCCacheBlobNFSTargetSpec) DeepCopyInto(out *HPCCacheBlobNFSTargetSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheBlobNFSTargetSpec. @@ -1040,6 +1399,31 @@ func (in *HPCCacheBlobTarget) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPCCacheBlobTargetInitParameters) DeepCopyInto(out *HPCCacheBlobTargetInitParameters) { + *out = *in + if in.AccessPolicyName != nil { + in, out := &in.AccessPolicyName, &out.AccessPolicyName + *out = new(string) + **out = **in + } + if in.NamespacePath != nil { + in, out := &in.NamespacePath, &out.NamespacePath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheBlobTargetInitParameters. +func (in *HPCCacheBlobTargetInitParameters) DeepCopy() *HPCCacheBlobTargetInitParameters { + if in == nil { + return nil + } + out := new(HPCCacheBlobTargetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HPCCacheBlobTargetList) DeepCopyInto(out *HPCCacheBlobTargetList) { *out = *in @@ -1192,6 +1576,7 @@ func (in *HPCCacheBlobTargetSpec) DeepCopyInto(out *HPCCacheBlobTargetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheBlobTargetSpec. @@ -1221,6 +1606,113 @@ func (in *HPCCacheBlobTargetStatus) DeepCopy() *HPCCacheBlobTargetStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPCCacheInitParameters) DeepCopyInto(out *HPCCacheInitParameters) { + *out = *in + if in.AutomaticallyRotateKeyToLatestEnabled != nil { + in, out := &in.AutomaticallyRotateKeyToLatestEnabled, &out.AutomaticallyRotateKeyToLatestEnabled + *out = new(bool) + **out = **in + } + if in.CacheSizeInGb != nil { + in, out := &in.CacheSizeInGb, &out.CacheSizeInGb + *out = new(float64) + **out = **in + } + if in.DNS != nil { + in, out := &in.DNS, &out.DNS + *out = make([]DNSInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultAccessPolicy != nil { + in, out := &in.DefaultAccessPolicy, &out.DefaultAccessPolicy + *out = make([]DefaultAccessPolicyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DirectoryActiveDirectory != nil { + in, out := &in.DirectoryActiveDirectory, &out.DirectoryActiveDirectory + *out = make([]DirectoryActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DirectoryFlatFile != nil { + in, out := &in.DirectoryFlatFile, &out.DirectoryFlatFile + *out = make([]DirectoryFlatFileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DirectoryLdap != nil { + in, out := &in.DirectoryLdap, &out.DirectoryLdap + *out = make([]DirectoryLdapInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultKeyID != nil { + in, out := &in.KeyVaultKeyID, &out.KeyVaultKeyID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Mtu != nil { + in, out := &in.Mtu, &out.Mtu + *out = new(float64) + **out = **in + } + if in.NtpServer != nil { + in, out := &in.NtpServer, &out.NtpServer + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheInitParameters. +func (in *HPCCacheInitParameters) DeepCopy() *HPCCacheInitParameters { + if in == nil { + return nil + } + out := new(HPCCacheInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HPCCacheList) DeepCopyInto(out *HPCCacheList) { *out = *in @@ -1280,6 +1772,38 @@ func (in *HPCCacheNFSTarget) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPCCacheNFSTargetInitParameters) DeepCopyInto(out *HPCCacheNFSTargetInitParameters) { + *out = *in + if in.NamespaceJunction != nil { + in, out := &in.NamespaceJunction, &out.NamespaceJunction + *out = make([]NamespaceJunctionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TargetHostName != nil { + in, out := &in.TargetHostName, &out.TargetHostName + *out = new(string) + **out = **in + } + if in.UsageModel != nil { + in, out := &in.UsageModel, &out.UsageModel + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheNFSTargetInitParameters. +func (in *HPCCacheNFSTargetInitParameters) DeepCopy() *HPCCacheNFSTargetInitParameters { + if in == nil { + return nil + } + out := new(HPCCacheNFSTargetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HPCCacheNFSTargetList) DeepCopyInto(out *HPCCacheNFSTargetList) { *out = *in @@ -1426,6 +1950,7 @@ func (in *HPCCacheNFSTargetSpec) DeepCopyInto(out *HPCCacheNFSTargetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheNFSTargetSpec. @@ -1730,6 +2255,7 @@ func (in *HPCCacheSpec) DeepCopyInto(out *HPCCacheSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPCCacheSpec. @@ -1759,6 +2285,37 @@ func (in *HPCCacheStatus) DeepCopy() *HPCCacheStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -1821,6 +2378,41 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NamespaceJunctionInitParameters) DeepCopyInto(out *NamespaceJunctionInitParameters) { + *out = *in + if in.AccessPolicyName != nil { + in, out := &in.AccessPolicyName, &out.AccessPolicyName + *out = new(string) + **out = **in + } + if in.NFSExport != nil { + in, out := &in.NFSExport, &out.NFSExport + *out = new(string) + **out = **in + } + if in.NamespacePath != nil { + in, out := &in.NamespacePath, &out.NamespacePath + *out = new(string) + **out = **in + } + if in.TargetPath != nil { + in, out := &in.TargetPath, &out.TargetPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceJunctionInitParameters. +func (in *NamespaceJunctionInitParameters) DeepCopy() *NamespaceJunctionInitParameters { + if in == nil { + return nil + } + out := new(NamespaceJunctionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NamespaceJunctionObservation) DeepCopyInto(out *NamespaceJunctionObservation) { *out = *in diff --git a/apis/storagecache/v1beta1/zz_generated.managed.go b/apis/storagecache/v1beta1/zz_generated.managed.go index e1eb56cfb..6fe206c55 100644 --- a/apis/storagecache/v1beta1/zz_generated.managed.go +++ b/apis/storagecache/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *HPCCache) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HPCCache. -func (mg *HPCCache) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HPCCache. +func (mg *HPCCache) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HPCCache. @@ -55,9 +55,9 @@ func (mg *HPCCache) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HPCCache. -func (mg *HPCCache) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HPCCache. +func (mg *HPCCache) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HPCCache. @@ -93,9 +93,9 @@ func (mg *HPCCacheAccessPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HPCCacheAccessPolicy. -func (mg *HPCCacheAccessPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HPCCacheAccessPolicy. +func (mg *HPCCacheAccessPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HPCCacheAccessPolicy. @@ -131,9 +131,9 @@ func (mg *HPCCacheAccessPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HPCCacheAccessPolicy. -func (mg *HPCCacheAccessPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HPCCacheAccessPolicy. +func (mg *HPCCacheAccessPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HPCCacheAccessPolicy. @@ -169,9 +169,9 @@ func (mg *HPCCacheBlobNFSTarget) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HPCCacheBlobNFSTarget. -func (mg *HPCCacheBlobNFSTarget) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HPCCacheBlobNFSTarget. +func (mg *HPCCacheBlobNFSTarget) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HPCCacheBlobNFSTarget. @@ -207,9 +207,9 @@ func (mg *HPCCacheBlobNFSTarget) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HPCCacheBlobNFSTarget. -func (mg *HPCCacheBlobNFSTarget) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HPCCacheBlobNFSTarget. +func (mg *HPCCacheBlobNFSTarget) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HPCCacheBlobNFSTarget. @@ -245,9 +245,9 @@ func (mg *HPCCacheBlobTarget) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HPCCacheBlobTarget. -func (mg *HPCCacheBlobTarget) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HPCCacheBlobTarget. +func (mg *HPCCacheBlobTarget) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HPCCacheBlobTarget. @@ -283,9 +283,9 @@ func (mg *HPCCacheBlobTarget) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HPCCacheBlobTarget. -func (mg *HPCCacheBlobTarget) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HPCCacheBlobTarget. +func (mg *HPCCacheBlobTarget) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HPCCacheBlobTarget. @@ -321,9 +321,9 @@ func (mg *HPCCacheNFSTarget) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this HPCCacheNFSTarget. -func (mg *HPCCacheNFSTarget) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this HPCCacheNFSTarget. +func (mg *HPCCacheNFSTarget) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this HPCCacheNFSTarget. @@ -359,9 +359,9 @@ func (mg *HPCCacheNFSTarget) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this HPCCacheNFSTarget. -func (mg *HPCCacheNFSTarget) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this HPCCacheNFSTarget. +func (mg *HPCCacheNFSTarget) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this HPCCacheNFSTarget. diff --git a/apis/storagecache/v1beta1/zz_generated_terraformed.go b/apis/storagecache/v1beta1/zz_generated_terraformed.go index cce6a005c..da5991a39 100755 --- a/apis/storagecache/v1beta1/zz_generated_terraformed.go +++ b/apis/storagecache/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *HPCCache) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HPCCache +func (tr *HPCCache) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HPCCache using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HPCCache) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *HPCCacheAccessPolicy) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HPCCacheAccessPolicy +func (tr *HPCCacheAccessPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HPCCacheAccessPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HPCCacheAccessPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *HPCCacheBlobNFSTarget) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HPCCacheBlobNFSTarget +func (tr *HPCCacheBlobNFSTarget) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HPCCacheBlobNFSTarget using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HPCCacheBlobNFSTarget) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *HPCCacheBlobTarget) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HPCCacheBlobTarget +func (tr *HPCCacheBlobTarget) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HPCCacheBlobTarget using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HPCCacheBlobTarget) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *HPCCacheNFSTarget) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this HPCCacheNFSTarget +func (tr *HPCCacheNFSTarget) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this HPCCacheNFSTarget using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *HPCCacheNFSTarget) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/storagecache/v1beta1/zz_hpccache_types.go b/apis/storagecache/v1beta1/zz_hpccache_types.go index 0b0aa2f18..f2d5c3b58 100755 --- a/apis/storagecache/v1beta1/zz_hpccache_types.go +++ b/apis/storagecache/v1beta1/zz_hpccache_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AccessRuleInitParameters struct { + + // The access level for this rule. Possible values are: rw, ro, no. + Access *string `json:"access,omitempty" tf:"access,omitempty"` + + // The anonymous GID used when root_squash_enabled is true. + AnonymousGID *float64 `json:"anonymousGid,omitempty" tf:"anonymous_gid,omitempty"` + + // The anonymous UID used when root_squash_enabled is true. + AnonymousUID *float64 `json:"anonymousUid,omitempty" tf:"anonymous_uid,omitempty"` + + // The filter applied to the scope for this rule. The filter's format depends on its scope: default scope matches all clients and has no filter value; network scope takes a CIDR format; host takes an IP address or fully qualified domain name. If a client does not match any filter rule and there is no default rule, access is denied. + Filter *string `json:"filter,omitempty" tf:"filter,omitempty"` + + // Whether to enable root squash? + RootSquashEnabled *bool `json:"rootSquashEnabled,omitempty" tf:"root_squash_enabled,omitempty"` + + // The scope of this rule. The scope and (potentially) the filter determine which clients match the rule. Possible values are: default, network, host. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + + // Whether allow access to subdirectories under the root export? + SubmountAccessEnabled *bool `json:"submountAccessEnabled,omitempty" tf:"submount_access_enabled,omitempty"` + + // Whether SUID is allowed? + SuidEnabled *bool `json:"suidEnabled,omitempty" tf:"suid_enabled,omitempty"` +} + type AccessRuleObservation struct { // The access level for this rule. Possible values are: rw, ro, no. @@ -43,8 +70,8 @@ type AccessRuleObservation struct { type AccessRuleParameters struct { // The access level for this rule. Possible values are: rw, ro, no. - // +kubebuilder:validation:Required - Access *string `json:"access" tf:"access,omitempty"` + // +kubebuilder:validation:Optional + Access *string `json:"access,omitempty" tf:"access,omitempty"` // The anonymous GID used when root_squash_enabled is true. // +kubebuilder:validation:Optional @@ -63,8 +90,8 @@ type AccessRuleParameters struct { RootSquashEnabled *bool `json:"rootSquashEnabled,omitempty" tf:"root_squash_enabled,omitempty"` // The scope of this rule. The scope and (potentially) the filter determine which clients match the rule. Possible values are: default, network, host. - // +kubebuilder:validation:Required - Scope *string `json:"scope" tf:"scope,omitempty"` + // +kubebuilder:validation:Optional + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // Whether allow access to subdirectories under the root export? // +kubebuilder:validation:Optional @@ -75,6 +102,12 @@ type AccessRuleParameters struct { SuidEnabled *bool `json:"suidEnabled,omitempty" tf:"suid_enabled,omitempty"` } +type BindInitParameters struct { + + // The Bind Distinguished Name (DN) identity to be used in the secure LDAP connection. + Dn *string `json:"dn,omitempty" tf:"dn,omitempty"` +} + type BindObservation struct { // The Bind Distinguished Name (DN) identity to be used in the secure LDAP connection. @@ -84,14 +117,23 @@ type BindObservation struct { type BindParameters struct { // The Bind Distinguished Name (DN) identity to be used in the secure LDAP connection. - // +kubebuilder:validation:Required - Dn *string `json:"dn" tf:"dn,omitempty"` + // +kubebuilder:validation:Optional + Dn *string `json:"dn,omitempty" tf:"dn,omitempty"` // The password of the Active Directory domain administrator. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` } +type DNSInitParameters struct { + + // The DNS search domain for the HPC Cache. + SearchDomain *string `json:"searchDomain,omitempty" tf:"search_domain,omitempty"` + + // A list of DNS servers for the HPC Cache. At most three IP(s) are allowed to set. + Servers []*string `json:"servers,omitempty" tf:"servers,omitempty"` +} + type DNSObservation struct { // The DNS search domain for the HPC Cache. @@ -108,8 +150,14 @@ type DNSParameters struct { SearchDomain *string `json:"searchDomain,omitempty" tf:"search_domain,omitempty"` // A list of DNS servers for the HPC Cache. At most three IP(s) are allowed to set. - // +kubebuilder:validation:Required - Servers []*string `json:"servers" tf:"servers,omitempty"` + // +kubebuilder:validation:Optional + Servers []*string `json:"servers,omitempty" tf:"servers,omitempty"` +} + +type DefaultAccessPolicyInitParameters struct { + + // One to three access_rule blocks as defined above. + AccessRule []AccessRuleInitParameters `json:"accessRule,omitempty" tf:"access_rule,omitempty"` } type DefaultAccessPolicyObservation struct { @@ -121,8 +169,29 @@ type DefaultAccessPolicyObservation struct { type DefaultAccessPolicyParameters struct { // One to three access_rule blocks as defined above. - // +kubebuilder:validation:Required - AccessRule []AccessRuleParameters `json:"accessRule" tf:"access_rule,omitempty"` + // +kubebuilder:validation:Optional + AccessRule []AccessRuleParameters `json:"accessRule,omitempty" tf:"access_rule,omitempty"` +} + +type DirectoryActiveDirectoryInitParameters struct { + + // The NetBIOS name to assign to the HPC Cache when it joins the Active Directory domain as a server. + CacheNetbiosName *string `json:"cacheNetbiosName,omitempty" tf:"cache_netbios_name,omitempty"` + + // The primary DNS IP address used to resolve the Active Directory domain controller's FQDN. + DNSPrimaryIP *string `json:"dnsPrimaryIp,omitempty" tf:"dns_primary_ip,omitempty"` + + // The secondary DNS IP address used to resolve the Active Directory domain controller's FQDN. + DNSSecondaryIP *string `json:"dnsSecondaryIp,omitempty" tf:"dns_secondary_ip,omitempty"` + + // The fully qualified domain name of the Active Directory domain controller. + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` + + // The Active Directory domain's NetBIOS name. + DomainNetbiosName *string `json:"domainNetbiosName,omitempty" tf:"domain_netbios_name,omitempty"` + + // The username of the Active Directory domain administrator. + Username *string `json:"username,omitempty" tf:"username,omitempty"` } type DirectoryActiveDirectoryObservation struct { @@ -149,32 +218,41 @@ type DirectoryActiveDirectoryObservation struct { type DirectoryActiveDirectoryParameters struct { // The NetBIOS name to assign to the HPC Cache when it joins the Active Directory domain as a server. - // +kubebuilder:validation:Required - CacheNetbiosName *string `json:"cacheNetbiosName" tf:"cache_netbios_name,omitempty"` + // +kubebuilder:validation:Optional + CacheNetbiosName *string `json:"cacheNetbiosName,omitempty" tf:"cache_netbios_name,omitempty"` // The primary DNS IP address used to resolve the Active Directory domain controller's FQDN. - // +kubebuilder:validation:Required - DNSPrimaryIP *string `json:"dnsPrimaryIp" tf:"dns_primary_ip,omitempty"` + // +kubebuilder:validation:Optional + DNSPrimaryIP *string `json:"dnsPrimaryIp,omitempty" tf:"dns_primary_ip,omitempty"` // The secondary DNS IP address used to resolve the Active Directory domain controller's FQDN. // +kubebuilder:validation:Optional DNSSecondaryIP *string `json:"dnsSecondaryIp,omitempty" tf:"dns_secondary_ip,omitempty"` // The fully qualified domain name of the Active Directory domain controller. - // +kubebuilder:validation:Required - DomainName *string `json:"domainName" tf:"domain_name,omitempty"` + // +kubebuilder:validation:Optional + DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The Active Directory domain's NetBIOS name. - // +kubebuilder:validation:Required - DomainNetbiosName *string `json:"domainNetbiosName" tf:"domain_netbios_name,omitempty"` + // +kubebuilder:validation:Optional + DomainNetbiosName *string `json:"domainNetbiosName,omitempty" tf:"domain_netbios_name,omitempty"` // The password of the Active Directory domain administrator. // +kubebuilder:validation:Required PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username of the Active Directory domain administrator. - // +kubebuilder:validation:Required - Username *string `json:"username" tf:"username,omitempty"` + // +kubebuilder:validation:Optional + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + +type DirectoryFlatFileInitParameters struct { + + // The URI of the file containing group information (/etc/group file format in Unix-like OS). + GroupFileURI *string `json:"groupFileUri,omitempty" tf:"group_file_uri,omitempty"` + + // The URI of the file containing user information (/etc/passwd file format in Unix-like OS). + PasswordFileURI *string `json:"passwordFileUri,omitempty" tf:"password_file_uri,omitempty"` } type DirectoryFlatFileObservation struct { @@ -189,12 +267,33 @@ type DirectoryFlatFileObservation struct { type DirectoryFlatFileParameters struct { // The URI of the file containing group information (/etc/group file format in Unix-like OS). - // +kubebuilder:validation:Required - GroupFileURI *string `json:"groupFileUri" tf:"group_file_uri,omitempty"` + // +kubebuilder:validation:Optional + GroupFileURI *string `json:"groupFileUri,omitempty" tf:"group_file_uri,omitempty"` // The URI of the file containing user information (/etc/passwd file format in Unix-like OS). - // +kubebuilder:validation:Required - PasswordFileURI *string `json:"passwordFileUri" tf:"password_file_uri,omitempty"` + // +kubebuilder:validation:Optional + PasswordFileURI *string `json:"passwordFileUri,omitempty" tf:"password_file_uri,omitempty"` +} + +type DirectoryLdapInitParameters struct { + + // The base distinguished name (DN) for the LDAP domain. + BaseDn *string `json:"baseDn,omitempty" tf:"base_dn,omitempty"` + + // A bind block as defined above. + Bind []BindInitParameters `json:"bind,omitempty" tf:"bind,omitempty"` + + // The URI of the CA certificate to validate the LDAP secure connection. + CertificateValidationURI *string `json:"certificateValidationUri,omitempty" tf:"certificate_validation_uri,omitempty"` + + // Whether the certificate should be automatically downloaded. This can be set to true only when certificate_validation_uri is provided. + DownloadCertificateAutomatically *bool `json:"downloadCertificateAutomatically,omitempty" tf:"download_certificate_automatically,omitempty"` + + // Whether the LDAP connection should be encrypted? + Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` + + // The FQDN or IP address of the LDAP server. + Server *string `json:"server,omitempty" tf:"server,omitempty"` } type DirectoryLdapObservation struct { @@ -221,8 +320,8 @@ type DirectoryLdapObservation struct { type DirectoryLdapParameters struct { // The base distinguished name (DN) for the LDAP domain. - // +kubebuilder:validation:Required - BaseDn *string `json:"baseDn" tf:"base_dn,omitempty"` + // +kubebuilder:validation:Optional + BaseDn *string `json:"baseDn,omitempty" tf:"base_dn,omitempty"` // A bind block as defined above. // +kubebuilder:validation:Optional @@ -241,8 +340,53 @@ type DirectoryLdapParameters struct { Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` // The FQDN or IP address of the LDAP server. - // +kubebuilder:validation:Required - Server *string `json:"server" tf:"server,omitempty"` + // +kubebuilder:validation:Optional + Server *string `json:"server,omitempty" tf:"server,omitempty"` +} + +type HPCCacheInitParameters struct { + + // Specifies whether the HPC Cache automatically rotates Encryption Key to the latest version. + AutomaticallyRotateKeyToLatestEnabled *bool `json:"automaticallyRotateKeyToLatestEnabled,omitempty" tf:"automatically_rotate_key_to_latest_enabled,omitempty"` + + // The size of the HPC Cache, in GB. Possible values are 3072, 6144, 12288, 21623, 24576, 43246, 49152 and 86491. Changing this forces a new resource to be created. + CacheSizeInGb *float64 `json:"cacheSizeInGb,omitempty" tf:"cache_size_in_gb,omitempty"` + + // A dns block as defined below. + DNS []DNSInitParameters `json:"dns,omitempty" tf:"dns,omitempty"` + + // A default_access_policy block as defined below. + DefaultAccessPolicy []DefaultAccessPolicyInitParameters `json:"defaultAccessPolicy,omitempty" tf:"default_access_policy,omitempty"` + + // A directory_active_directory block as defined below. + DirectoryActiveDirectory []DirectoryActiveDirectoryInitParameters `json:"directoryActiveDirectory,omitempty" tf:"directory_active_directory,omitempty"` + + // A directory_flat_file block as defined below. + DirectoryFlatFile []DirectoryFlatFileInitParameters `json:"directoryFlatFile,omitempty" tf:"directory_flat_file,omitempty"` + + // A directory_ldap block as defined below. + DirectoryLdap []DirectoryLdapInitParameters `json:"directoryLdap,omitempty" tf:"directory_ldap,omitempty"` + + // An identity block as defined below. Changing this forces a new resource to be created. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The ID of the Key Vault Key which should be used to encrypt the data in this HPC Cache. + KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` + + // Specifies the supported Azure Region where the HPC Cache should be created. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The IPv4 maximum transmission unit configured for the subnet of the HPC Cache. Possible values range from 576 - 1500. Defaults to 1500. + Mtu *float64 `json:"mtu,omitempty" tf:"mtu,omitempty"` + + // The NTP server IP Address or FQDN for the HPC Cache. Defaults to time.windows.com. + NtpServer *string `json:"ntpServer,omitempty" tf:"ntp_server,omitempty"` + + // The SKU of HPC Cache to use. Possible values are (ReadWrite) - Standard_2G, Standard_4G Standard_8G or (ReadOnly) - Standard_L4_5G, Standard_L9G, and Standard_L16G. Changing this forces a new resource to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags to assign to the HPC Cache. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type HPCCacheObservation struct { @@ -388,6 +532,15 @@ type HPCCacheParameters struct { Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this HPC Cache. Changing this forces a new resource to be created. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this HPC Cache. Only possible value is UserAssigned. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this HPC Cache. Changing this forces a new resource to be created. @@ -400,18 +553,30 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this HPC Cache. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - IdentityIds []*string `json:"identityIds" tf:"identity_ids,omitempty"` + // +kubebuilder:validation:Optional + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this HPC Cache. Only possible value is UserAssigned. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // HPCCacheSpec defines the desired state of HPCCache type HPCCacheSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HPCCacheParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HPCCacheInitParameters `json:"initProvider,omitempty"` } // HPCCacheStatus defines the observed state of HPCCache. @@ -432,9 +597,9 @@ type HPCCacheStatus struct { type HPCCache struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.cacheSizeInGb)",message="cacheSizeInGb is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.cacheSizeInGb) || has(self.initProvider.cacheSizeInGb)",message="cacheSizeInGb is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec HPCCacheSpec `json:"spec"` Status HPCCacheStatus `json:"status,omitempty"` } diff --git a/apis/storagecache/v1beta1/zz_hpccacheaccesspolicy_types.go b/apis/storagecache/v1beta1/zz_hpccacheaccesspolicy_types.go index b499babaa..f06d29379 100755 --- a/apis/storagecache/v1beta1/zz_hpccacheaccesspolicy_types.go +++ b/apis/storagecache/v1beta1/zz_hpccacheaccesspolicy_types.go @@ -13,6 +13,33 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HPCCacheAccessPolicyAccessRuleInitParameters struct { + + // The access level for this rule. Possible values are: rw, ro, no. + Access *string `json:"access,omitempty" tf:"access,omitempty"` + + // The anonymous GID used when root_squash_enabled is true. + AnonymousGID *float64 `json:"anonymousGid,omitempty" tf:"anonymous_gid,omitempty"` + + // The anonymous UID used when root_squash_enabled is true. + AnonymousUID *float64 `json:"anonymousUid,omitempty" tf:"anonymous_uid,omitempty"` + + // The filter applied to the scope for this rule. The filter's format depends on its scope: default scope matches all clients and has no filter value; network scope takes a CIDR format; host takes an IP address or fully qualified domain name. If a client does not match any filter rule and there is no default rule, access is denied. + Filter *string `json:"filter,omitempty" tf:"filter,omitempty"` + + // Whether to enable root squash? + RootSquashEnabled *bool `json:"rootSquashEnabled,omitempty" tf:"root_squash_enabled,omitempty"` + + // The scope of this rule. The scope and (potentially) the filter determine which clients match the rule. Possible values are: default, network, host. + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` + + // Whether allow access to subdirectories under the root export? + SubmountAccessEnabled *bool `json:"submountAccessEnabled,omitempty" tf:"submount_access_enabled,omitempty"` + + // Whether SUID is allowed? + SuidEnabled *bool `json:"suidEnabled,omitempty" tf:"suid_enabled,omitempty"` +} + type HPCCacheAccessPolicyAccessRuleObservation struct { // The access level for this rule. Possible values are: rw, ro, no. @@ -43,8 +70,8 @@ type HPCCacheAccessPolicyAccessRuleObservation struct { type HPCCacheAccessPolicyAccessRuleParameters struct { // The access level for this rule. Possible values are: rw, ro, no. - // +kubebuilder:validation:Required - Access *string `json:"access" tf:"access,omitempty"` + // +kubebuilder:validation:Optional + Access *string `json:"access,omitempty" tf:"access,omitempty"` // The anonymous GID used when root_squash_enabled is true. // +kubebuilder:validation:Optional @@ -63,8 +90,8 @@ type HPCCacheAccessPolicyAccessRuleParameters struct { RootSquashEnabled *bool `json:"rootSquashEnabled,omitempty" tf:"root_squash_enabled,omitempty"` // The scope of this rule. The scope and (potentially) the filter determine which clients match the rule. Possible values are: default, network, host. - // +kubebuilder:validation:Required - Scope *string `json:"scope" tf:"scope,omitempty"` + // +kubebuilder:validation:Optional + Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // Whether allow access to subdirectories under the root export? // +kubebuilder:validation:Optional @@ -75,6 +102,12 @@ type HPCCacheAccessPolicyAccessRuleParameters struct { SuidEnabled *bool `json:"suidEnabled,omitempty" tf:"suid_enabled,omitempty"` } +type HPCCacheAccessPolicyInitParameters struct { + + // Up to three access_rule blocks as defined below. + AccessRule []HPCCacheAccessPolicyAccessRuleInitParameters `json:"accessRule,omitempty" tf:"access_rule,omitempty"` +} + type HPCCacheAccessPolicyObservation struct { // Up to three access_rule blocks as defined below. @@ -112,6 +145,18 @@ type HPCCacheAccessPolicyParameters struct { type HPCCacheAccessPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider HPCCacheAccessPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HPCCacheAccessPolicyInitParameters `json:"initProvider,omitempty"` } // HPCCacheAccessPolicyStatus defines the observed state of HPCCacheAccessPolicy. @@ -132,7 +177,7 @@ type HPCCacheAccessPolicyStatus struct { type HPCCacheAccessPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.accessRule)",message="accessRule is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.accessRule) || has(self.initProvider.accessRule)",message="accessRule is a required parameter" Spec HPCCacheAccessPolicySpec `json:"spec"` Status HPCCacheAccessPolicyStatus `json:"status,omitempty"` } diff --git a/apis/storagecache/v1beta1/zz_hpccacheblobnfstarget_types.go b/apis/storagecache/v1beta1/zz_hpccacheblobnfstarget_types.go index bace90ce5..60ec55cc4 100755 --- a/apis/storagecache/v1beta1/zz_hpccacheblobnfstarget_types.go +++ b/apis/storagecache/v1beta1/zz_hpccacheblobnfstarget_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HPCCacheBlobNFSTargetInitParameters struct { + + // The name of the access policy applied to this target. Defaults to default. + AccessPolicyName *string `json:"accessPolicyName,omitempty" tf:"access_policy_name,omitempty"` + + // The client-facing file path of the HPC Cache Blob NFS Target. + NamespacePath *string `json:"namespacePath,omitempty" tf:"namespace_path,omitempty"` + + // The Resource Manager ID of the Storage Container used as the HPC Cache Blob NFS Target. Changing this forces a new resource to be created. + StorageContainerID *string `json:"storageContainerId,omitempty" tf:"storage_container_id,omitempty"` + + // The type of usage of the HPC Cache Blob NFS Target. Possible values are: READ_HEAVY_INFREQ, READ_HEAVY_CHECK_180, WRITE_WORKLOAD_15, WRITE_AROUND, WRITE_WORKLOAD_CHECK_30, WRITE_WORKLOAD_CHECK_60 and WRITE_WORKLOAD_CLOUDWS. + UsageModel *string `json:"usageModel,omitempty" tf:"usage_model,omitempty"` +} + type HPCCacheBlobNFSTargetObservation struct { // The name of the access policy applied to this target. Defaults to default. @@ -86,6 +101,18 @@ type HPCCacheBlobNFSTargetParameters struct { type HPCCacheBlobNFSTargetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HPCCacheBlobNFSTargetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HPCCacheBlobNFSTargetInitParameters `json:"initProvider,omitempty"` } // HPCCacheBlobNFSTargetStatus defines the observed state of HPCCacheBlobNFSTarget. @@ -106,9 +133,9 @@ type HPCCacheBlobNFSTargetStatus struct { type HPCCacheBlobNFSTarget struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.namespacePath)",message="namespacePath is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageContainerId)",message="storageContainerId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.usageModel)",message="usageModel is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.namespacePath) || has(self.initProvider.namespacePath)",message="namespacePath is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageContainerId) || has(self.initProvider.storageContainerId)",message="storageContainerId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.usageModel) || has(self.initProvider.usageModel)",message="usageModel is a required parameter" Spec HPCCacheBlobNFSTargetSpec `json:"spec"` Status HPCCacheBlobNFSTargetStatus `json:"status,omitempty"` } diff --git a/apis/storagecache/v1beta1/zz_hpccacheblobtarget_types.go b/apis/storagecache/v1beta1/zz_hpccacheblobtarget_types.go index d6729c934..710876bb2 100755 --- a/apis/storagecache/v1beta1/zz_hpccacheblobtarget_types.go +++ b/apis/storagecache/v1beta1/zz_hpccacheblobtarget_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HPCCacheBlobTargetInitParameters struct { + + // The name of the access policy applied to this target. Defaults to default. + AccessPolicyName *string `json:"accessPolicyName,omitempty" tf:"access_policy_name,omitempty"` + + // The client-facing file path of the HPC Cache Blob Target. + NamespacePath *string `json:"namespacePath,omitempty" tf:"namespace_path,omitempty"` +} + type HPCCacheBlobTargetObservation struct { // The name of the access policy applied to this target. Defaults to default. @@ -89,6 +98,18 @@ type HPCCacheBlobTargetParameters struct { type HPCCacheBlobTargetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HPCCacheBlobTargetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HPCCacheBlobTargetInitParameters `json:"initProvider,omitempty"` } // HPCCacheBlobTargetStatus defines the observed state of HPCCacheBlobTarget. @@ -109,7 +130,7 @@ type HPCCacheBlobTargetStatus struct { type HPCCacheBlobTarget struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.namespacePath)",message="namespacePath is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.namespacePath) || has(self.initProvider.namespacePath)",message="namespacePath is a required parameter" Spec HPCCacheBlobTargetSpec `json:"spec"` Status HPCCacheBlobTargetStatus `json:"status,omitempty"` } diff --git a/apis/storagecache/v1beta1/zz_hpccachenfstarget_types.go b/apis/storagecache/v1beta1/zz_hpccachenfstarget_types.go index a6a0e5ed6..fd8c6e083 100755 --- a/apis/storagecache/v1beta1/zz_hpccachenfstarget_types.go +++ b/apis/storagecache/v1beta1/zz_hpccachenfstarget_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type HPCCacheNFSTargetInitParameters struct { + + // Can be specified multiple times to define multiple namespace_junction. Each namespace_juntion block supports fields documented below. + NamespaceJunction []NamespaceJunctionInitParameters `json:"namespaceJunction,omitempty" tf:"namespace_junction,omitempty"` + + // The IP address or fully qualified domain name (FQDN) of the HPC Cache NFS target. Changing this forces a new resource to be created. + TargetHostName *string `json:"targetHostName,omitempty" tf:"target_host_name,omitempty"` + + // The type of usage of the HPC Cache NFS Target. Possible values are: READ_HEAVY_INFREQ, READ_HEAVY_CHECK_180, WRITE_WORKLOAD_15, WRITE_AROUND, WRITE_WORKLOAD_CHECK_30, WRITE_WORKLOAD_CHECK_60 and WRITE_WORKLOAD_CLOUDWS. + UsageModel *string `json:"usageModel,omitempty" tf:"usage_model,omitempty"` +} + type HPCCacheNFSTargetObservation struct { // The name HPC Cache, which the HPC Cache NFS Target will be added to. Changing this forces a new resource to be created. @@ -75,6 +87,21 @@ type HPCCacheNFSTargetParameters struct { UsageModel *string `json:"usageModel,omitempty" tf:"usage_model,omitempty"` } +type NamespaceJunctionInitParameters struct { + + // The name of the access policy applied to this target. Defaults to default. + AccessPolicyName *string `json:"accessPolicyName,omitempty" tf:"access_policy_name,omitempty"` + + // The NFS export of this NFS target within the HPC Cache NFS Target. + NFSExport *string `json:"nfsExport,omitempty" tf:"nfs_export,omitempty"` + + // The client-facing file path of this NFS target within the HPC Cache NFS Target. + NamespacePath *string `json:"namespacePath,omitempty" tf:"namespace_path,omitempty"` + + // The relative subdirectory path from the nfs_export to map to the namespace_path. Defaults to "", in which case the whole nfs_export is exported. + TargetPath *string `json:"targetPath,omitempty" tf:"target_path,omitempty"` +} + type NamespaceJunctionObservation struct { // The name of the access policy applied to this target. Defaults to default. @@ -97,12 +124,12 @@ type NamespaceJunctionParameters struct { AccessPolicyName *string `json:"accessPolicyName,omitempty" tf:"access_policy_name,omitempty"` // The NFS export of this NFS target within the HPC Cache NFS Target. - // +kubebuilder:validation:Required - NFSExport *string `json:"nfsExport" tf:"nfs_export,omitempty"` + // +kubebuilder:validation:Optional + NFSExport *string `json:"nfsExport,omitempty" tf:"nfs_export,omitempty"` // The client-facing file path of this NFS target within the HPC Cache NFS Target. - // +kubebuilder:validation:Required - NamespacePath *string `json:"namespacePath" tf:"namespace_path,omitempty"` + // +kubebuilder:validation:Optional + NamespacePath *string `json:"namespacePath,omitempty" tf:"namespace_path,omitempty"` // The relative subdirectory path from the nfs_export to map to the namespace_path. Defaults to "", in which case the whole nfs_export is exported. // +kubebuilder:validation:Optional @@ -113,6 +140,18 @@ type NamespaceJunctionParameters struct { type HPCCacheNFSTargetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider HPCCacheNFSTargetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider HPCCacheNFSTargetInitParameters `json:"initProvider,omitempty"` } // HPCCacheNFSTargetStatus defines the observed state of HPCCacheNFSTarget. @@ -133,9 +172,9 @@ type HPCCacheNFSTargetStatus struct { type HPCCacheNFSTarget struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.namespaceJunction)",message="namespaceJunction is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetHostName)",message="targetHostName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.usageModel)",message="usageModel is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.namespaceJunction) || has(self.initProvider.namespaceJunction)",message="namespaceJunction is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.targetHostName) || has(self.initProvider.targetHostName)",message="targetHostName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.usageModel) || has(self.initProvider.usageModel)",message="usageModel is a required parameter" Spec HPCCacheNFSTargetSpec `json:"spec"` Status HPCCacheNFSTargetStatus `json:"status,omitempty"` } diff --git a/apis/storagepool/v1beta1/zz_diskpool_types.go b/apis/storagepool/v1beta1/zz_diskpool_types.go index 93e3ada56..5f960323a 100755 --- a/apis/storagepool/v1beta1/zz_diskpool_types.go +++ b/apis/storagepool/v1beta1/zz_diskpool_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type DiskPoolInitParameters struct { + + // The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The SKU of the Disk Pool. Possible values are Basic_B1, Standard_S1 and Premium_P1. Changing this forces a new Disk Pool to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags which should be assigned to the Disk Pool. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created. + Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` +} + type DiskPoolObservation struct { // The ID of the Disk Pool. @@ -87,6 +102,18 @@ type DiskPoolParameters struct { type DiskPoolSpec struct { v1.ResourceSpec `json:",inline"` ForProvider DiskPoolParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider DiskPoolInitParameters `json:"initProvider,omitempty"` } // DiskPoolStatus defines the observed state of DiskPool. @@ -107,9 +134,9 @@ type DiskPoolStatus struct { type DiskPool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.zones)",message="zones is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.zones) || has(self.initProvider.zones)",message="zones is a required parameter" Spec DiskPoolSpec `json:"spec"` Status DiskPoolStatus `json:"status,omitempty"` } diff --git a/apis/storagepool/v1beta1/zz_generated.deepcopy.go b/apis/storagepool/v1beta1/zz_generated.deepcopy.go index 8a9c26f6b..54395ae43 100644 --- a/apis/storagepool/v1beta1/zz_generated.deepcopy.go +++ b/apis/storagepool/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,57 @@ func (in *DiskPool) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DiskPoolInitParameters) DeepCopyInto(out *DiskPoolInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Zones != nil { + in, out := &in.Zones, &out.Zones + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskPoolInitParameters. +func (in *DiskPoolInitParameters) DeepCopy() *DiskPoolInitParameters { + if in == nil { + return nil + } + out := new(DiskPoolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DiskPoolList) DeepCopyInto(out *DiskPoolList) { *out = *in @@ -225,6 +276,7 @@ func (in *DiskPoolSpec) DeepCopyInto(out *DiskPoolSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskPoolSpec. diff --git a/apis/storagepool/v1beta1/zz_generated.managed.go b/apis/storagepool/v1beta1/zz_generated.managed.go index c1c1813ad..a469310ad 100644 --- a/apis/storagepool/v1beta1/zz_generated.managed.go +++ b/apis/storagepool/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *DiskPool) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this DiskPool. -func (mg *DiskPool) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this DiskPool. +func (mg *DiskPool) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this DiskPool. @@ -55,9 +55,9 @@ func (mg *DiskPool) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this DiskPool. -func (mg *DiskPool) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this DiskPool. +func (mg *DiskPool) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this DiskPool. diff --git a/apis/storagepool/v1beta1/zz_generated_terraformed.go b/apis/storagepool/v1beta1/zz_generated_terraformed.go index 85065be52..fb8556299 100755 --- a/apis/storagepool/v1beta1/zz_generated_terraformed.go +++ b/apis/storagepool/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *DiskPool) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this DiskPool +func (tr *DiskPool) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this DiskPool using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *DiskPool) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/storagesync/v1beta1/zz_generated.deepcopy.go b/apis/storagesync/v1beta1/zz_generated.deepcopy.go index 5aeb8e91b..907d2d547 100644 --- a/apis/storagesync/v1beta1/zz_generated.deepcopy.go +++ b/apis/storagesync/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,46 @@ func (in *StorageSync) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageSyncInitParameters) DeepCopyInto(out *StorageSyncInitParameters) { + *out = *in + if in.IncomingTrafficPolicy != nil { + in, out := &in.IncomingTrafficPolicy, &out.IncomingTrafficPolicy + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageSyncInitParameters. +func (in *StorageSyncInitParameters) DeepCopy() *StorageSyncInitParameters { + if in == nil { + return nil + } + out := new(StorageSyncInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageSyncList) DeepCopyInto(out *StorageSyncList) { *out = *in @@ -183,6 +223,7 @@ func (in *StorageSyncSpec) DeepCopyInto(out *StorageSyncSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageSyncSpec. diff --git a/apis/storagesync/v1beta1/zz_generated.managed.go b/apis/storagesync/v1beta1/zz_generated.managed.go index 06b43bfb5..e6cd1a056 100644 --- a/apis/storagesync/v1beta1/zz_generated.managed.go +++ b/apis/storagesync/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *StorageSync) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this StorageSync. -func (mg *StorageSync) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this StorageSync. +func (mg *StorageSync) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this StorageSync. @@ -55,9 +55,9 @@ func (mg *StorageSync) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this StorageSync. -func (mg *StorageSync) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this StorageSync. +func (mg *StorageSync) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this StorageSync. diff --git a/apis/storagesync/v1beta1/zz_generated_terraformed.go b/apis/storagesync/v1beta1/zz_generated_terraformed.go index d525a6dd4..8d8353cbe 100755 --- a/apis/storagesync/v1beta1/zz_generated_terraformed.go +++ b/apis/storagesync/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *StorageSync) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this StorageSync +func (tr *StorageSync) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this StorageSync using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *StorageSync) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/storagesync/v1beta1/zz_storagesync_types.go b/apis/storagesync/v1beta1/zz_storagesync_types.go index 171195da2..1522ef16a 100755 --- a/apis/storagesync/v1beta1/zz_storagesync_types.go +++ b/apis/storagesync/v1beta1/zz_storagesync_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type StorageSyncInitParameters struct { + + // Incoming traffic policy. Possible values are AllowAllTraffic and AllowVirtualNetworksOnly. + IncomingTrafficPolicy *string `json:"incomingTrafficPolicy,omitempty" tf:"incoming_traffic_policy,omitempty"` + + // The Azure Region where the Storage Sync should exist. Changing this forces a new Storage Sync to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Storage Sync. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type StorageSyncObservation struct { // The ID of the Storage Sync. @@ -63,6 +75,18 @@ type StorageSyncParameters struct { type StorageSyncSpec struct { v1.ResourceSpec `json:",inline"` ForProvider StorageSyncParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider StorageSyncInitParameters `json:"initProvider,omitempty"` } // StorageSyncStatus defines the observed state of StorageSync. @@ -83,7 +107,7 @@ type StorageSyncStatus struct { type StorageSync struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec StorageSyncSpec `json:"spec"` Status StorageSyncStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_cluster_types.go b/apis/streamanalytics/v1beta1/zz_cluster_types.go index b51acaaa5..fb62e80e8 100755 --- a/apis/streamanalytics/v1beta1/zz_cluster_types.go +++ b/apis/streamanalytics/v1beta1/zz_cluster_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ClusterInitParameters struct { + + // The Azure Region where the Stream Analytics Cluster should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The number of streaming units supported by the Cluster. Accepted values are multiples of 36 in the range of 36 to 216. + StreamingCapacity *float64 `json:"streamingCapacity,omitempty" tf:"streaming_capacity,omitempty"` + + // A mapping of tags which should be assigned to the Stream Analytics. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type ClusterObservation struct { // The ID of the Stream Analytics. @@ -63,6 +75,18 @@ type ClusterParameters struct { type ClusterSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ClusterParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ClusterInitParameters `json:"initProvider,omitempty"` } // ClusterStatus defines the observed state of Cluster. @@ -83,8 +107,8 @@ type ClusterStatus struct { type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.streamingCapacity)",message="streamingCapacity is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.streamingCapacity) || has(self.initProvider.streamingCapacity)",message="streamingCapacity is a required parameter" Spec ClusterSpec `json:"spec"` Status ClusterStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_functionjavascriptuda_types.go b/apis/streamanalytics/v1beta1/zz_functionjavascriptuda_types.go index 2f12ebea4..fb72b65e4 100755 --- a/apis/streamanalytics/v1beta1/zz_functionjavascriptuda_types.go +++ b/apis/streamanalytics/v1beta1/zz_functionjavascriptuda_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FunctionJavascriptUdaInitParameters struct { + + // One or more input blocks as defined below. + Input []InputInitParameters `json:"input,omitempty" tf:"input,omitempty"` + + // An output block as defined below. + Output []OutputInitParameters `json:"output,omitempty" tf:"output,omitempty"` + + // The JavaScript of this UDA Function. + Script *string `json:"script,omitempty" tf:"script,omitempty"` +} + type FunctionJavascriptUdaObservation struct { // The ID of the Stream Analytics JavaScript UDA Function. @@ -60,6 +72,15 @@ type FunctionJavascriptUdaParameters struct { StreamAnalyticsJobIDSelector *v1.Selector `json:"streamAnalyticsJobIdSelector,omitempty" tf:"-"` } +type InputInitParameters struct { + + // Is this input parameter a configuration parameter? Defaults to false. + ConfigurationParameter *bool `json:"configurationParameter,omitempty" tf:"configuration_parameter,omitempty"` + + // The input data type of this JavaScript Function. Possible values include any, array, bigint, datetime, float, nvarchar(max) and record. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type InputObservation struct { // Is this input parameter a configuration parameter? Defaults to false. @@ -76,8 +97,14 @@ type InputParameters struct { ConfigurationParameter *bool `json:"configurationParameter,omitempty" tf:"configuration_parameter,omitempty"` // The input data type of this JavaScript Function. Possible values include any, array, bigint, datetime, float, nvarchar(max) and record. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type OutputInitParameters struct { + + // The output data type from this JavaScript Function. Possible values include any, array, bigint, datetime, float, nvarchar(max) and record. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type OutputObservation struct { @@ -89,14 +116,26 @@ type OutputObservation struct { type OutputParameters struct { // The output data type from this JavaScript Function. Possible values include any, array, bigint, datetime, float, nvarchar(max) and record. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // FunctionJavascriptUdaSpec defines the desired state of FunctionJavascriptUda type FunctionJavascriptUdaSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FunctionJavascriptUdaParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FunctionJavascriptUdaInitParameters `json:"initProvider,omitempty"` } // FunctionJavascriptUdaStatus defines the observed state of FunctionJavascriptUda. @@ -117,9 +156,9 @@ type FunctionJavascriptUdaStatus struct { type FunctionJavascriptUda struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.input)",message="input is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.output)",message="output is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.script)",message="script is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.input) || has(self.initProvider.input)",message="input is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.output) || has(self.initProvider.output)",message="output is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.script) || has(self.initProvider.script)",message="script is a required parameter" Spec FunctionJavascriptUdaSpec `json:"spec"` Status FunctionJavascriptUdaStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_generated.deepcopy.go b/apis/streamanalytics/v1beta1/zz_generated.deepcopy.go index af009660f..edf8c9b18 100644 --- a/apis/streamanalytics/v1beta1/zz_generated.deepcopy.go +++ b/apis/streamanalytics/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,46 @@ func (in *Cluster) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterInitParameters) DeepCopyInto(out *ClusterInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.StreamingCapacity != nil { + in, out := &in.StreamingCapacity, &out.StreamingCapacity + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterInitParameters. +func (in *ClusterInitParameters) DeepCopy() *ClusterInitParameters { + if in == nil { + return nil + } + out := new(ClusterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ClusterList) DeepCopyInto(out *ClusterList) { *out = *in @@ -183,6 +223,7 @@ func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec. @@ -239,6 +280,40 @@ func (in *FunctionJavascriptUda) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionJavascriptUdaInitParameters) DeepCopyInto(out *FunctionJavascriptUdaInitParameters) { + *out = *in + if in.Input != nil { + in, out := &in.Input, &out.Input + *out = make([]InputInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Output != nil { + in, out := &in.Output, &out.Output + *out = make([]OutputInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Script != nil { + in, out := &in.Script, &out.Script + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionJavascriptUdaInitParameters. +func (in *FunctionJavascriptUdaInitParameters) DeepCopy() *FunctionJavascriptUdaInitParameters { + if in == nil { + return nil + } + out := new(FunctionJavascriptUdaInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FunctionJavascriptUdaList) DeepCopyInto(out *FunctionJavascriptUdaList) { *out = *in @@ -369,6 +444,7 @@ func (in *FunctionJavascriptUdaSpec) DeepCopyInto(out *FunctionJavascriptUdaSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionJavascriptUdaSpec. @@ -398,6 +474,26 @@ func (in *FunctionJavascriptUdaStatus) DeepCopy() *FunctionJavascriptUdaStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -448,6 +544,31 @@ func (in *IdentityParameters) DeepCopy() *IdentityParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *InputInitParameters) DeepCopyInto(out *InputInitParameters) { + *out = *in + if in.ConfigurationParameter != nil { + in, out := &in.ConfigurationParameter, &out.ConfigurationParameter + *out = new(bool) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InputInitParameters. +func (in *InputInitParameters) DeepCopy() *InputInitParameters { + if in == nil { + return nil + } + out := new(InputInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InputObservation) DeepCopyInto(out *InputObservation) { *out = *in @@ -525,6 +646,110 @@ func (in *Job) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *JobInitParameters) DeepCopyInto(out *JobInitParameters) { + *out = *in + if in.CompatibilityLevel != nil { + in, out := &in.CompatibilityLevel, &out.CompatibilityLevel + *out = new(string) + **out = **in + } + if in.ContentStoragePolicy != nil { + in, out := &in.ContentStoragePolicy, &out.ContentStoragePolicy + *out = new(string) + **out = **in + } + if in.DataLocale != nil { + in, out := &in.DataLocale, &out.DataLocale + *out = new(string) + **out = **in + } + if in.EventsLateArrivalMaxDelayInSeconds != nil { + in, out := &in.EventsLateArrivalMaxDelayInSeconds, &out.EventsLateArrivalMaxDelayInSeconds + *out = new(float64) + **out = **in + } + if in.EventsOutOfOrderMaxDelayInSeconds != nil { + in, out := &in.EventsOutOfOrderMaxDelayInSeconds, &out.EventsOutOfOrderMaxDelayInSeconds + *out = new(float64) + **out = **in + } + if in.EventsOutOfOrderPolicy != nil { + in, out := &in.EventsOutOfOrderPolicy, &out.EventsOutOfOrderPolicy + *out = new(string) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.JobStorageAccount != nil { + in, out := &in.JobStorageAccount, &out.JobStorageAccount + *out = make([]JobStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.OutputErrorPolicy != nil { + in, out := &in.OutputErrorPolicy, &out.OutputErrorPolicy + *out = new(string) + **out = **in + } + if in.StreamAnalyticsClusterID != nil { + in, out := &in.StreamAnalyticsClusterID, &out.StreamAnalyticsClusterID + *out = new(string) + **out = **in + } + if in.StreamingUnits != nil { + in, out := &in.StreamingUnits, &out.StreamingUnits + *out = new(float64) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TransformationQuery != nil { + in, out := &in.TransformationQuery, &out.TransformationQuery + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobInitParameters. +func (in *JobInitParameters) DeepCopy() *JobInitParameters { + if in == nil { + return nil + } + out := new(JobInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *JobList) DeepCopyInto(out *JobList) { *out = *in @@ -800,6 +1025,7 @@ func (in *JobSpec) DeepCopyInto(out *JobSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobSpec. @@ -829,6 +1055,31 @@ func (in *JobStatus) DeepCopy() *JobStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *JobStorageAccountInitParameters) DeepCopyInto(out *JobStorageAccountInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.AuthenticationMode != nil { + in, out := &in.AuthenticationMode, &out.AuthenticationMode + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobStorageAccountInitParameters. +func (in *JobStorageAccountInitParameters) DeepCopy() *JobStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(JobStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *JobStorageAccountObservation) DeepCopyInto(out *JobStorageAccountObservation) { *out = *in @@ -907,6 +1158,26 @@ func (in *ManagedPrivateEndpoint) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedPrivateEndpointInitParameters) DeepCopyInto(out *ManagedPrivateEndpointInitParameters) { + *out = *in + if in.SubresourceName != nil { + in, out := &in.SubresourceName, &out.SubresourceName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedPrivateEndpointInitParameters. +func (in *ManagedPrivateEndpointInitParameters) DeepCopy() *ManagedPrivateEndpointInitParameters { + if in == nil { + return nil + } + out := new(ManagedPrivateEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedPrivateEndpointList) DeepCopyInto(out *ManagedPrivateEndpointList) { *out = *in @@ -1049,6 +1320,7 @@ func (in *ManagedPrivateEndpointSpec) DeepCopyInto(out *ManagedPrivateEndpointSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedPrivateEndpointSpec. @@ -1102,7 +1374,59 @@ func (in *OutputBlob) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } - return nil + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputBlobInitParameters) DeepCopyInto(out *OutputBlobInitParameters) { + *out = *in + if in.AuthenticationMode != nil { + in, out := &in.AuthenticationMode, &out.AuthenticationMode + *out = new(string) + **out = **in + } + if in.BatchMaxWaitTime != nil { + in, out := &in.BatchMaxWaitTime, &out.BatchMaxWaitTime + *out = new(string) + **out = **in + } + if in.BatchMinRows != nil { + in, out := &in.BatchMinRows, &out.BatchMinRows + *out = new(float64) + **out = **in + } + if in.DateFormat != nil { + in, out := &in.DateFormat, &out.DateFormat + *out = new(string) + **out = **in + } + if in.PathPattern != nil { + in, out := &in.PathPattern, &out.PathPattern + *out = new(string) + **out = **in + } + if in.Serialization != nil { + in, out := &in.Serialization, &out.Serialization + *out = make([]SerializationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TimeFormat != nil { + in, out := &in.TimeFormat, &out.TimeFormat + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputBlobInitParameters. +func (in *OutputBlobInitParameters) DeepCopy() *OutputBlobInitParameters { + if in == nil { + return nil + } + out := new(OutputBlobInitParameters) + in.DeepCopyInto(out) + return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. @@ -1336,6 +1660,7 @@ func (in *OutputBlobSpec) DeepCopyInto(out *OutputBlobSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputBlobSpec. @@ -1392,6 +1717,54 @@ func (in *OutputEventHub) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputEventHubInitParameters) DeepCopyInto(out *OutputEventHubInitParameters) { + *out = *in + if in.AuthenticationMode != nil { + in, out := &in.AuthenticationMode, &out.AuthenticationMode + *out = new(string) + **out = **in + } + if in.PartitionKey != nil { + in, out := &in.PartitionKey, &out.PartitionKey + *out = new(string) + **out = **in + } + if in.PropertyColumns != nil { + in, out := &in.PropertyColumns, &out.PropertyColumns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Serialization != nil { + in, out := &in.Serialization, &out.Serialization + *out = make([]OutputEventHubSerializationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SharedAccessPolicyName != nil { + in, out := &in.SharedAccessPolicyName, &out.SharedAccessPolicyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputEventHubInitParameters. +func (in *OutputEventHubInitParameters) DeepCopy() *OutputEventHubInitParameters { + if in == nil { + return nil + } + out := new(OutputEventHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputEventHubList) DeepCopyInto(out *OutputEventHubList) { *out = *in @@ -1600,6 +1973,41 @@ func (in *OutputEventHubParameters) DeepCopy() *OutputEventHubParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputEventHubSerializationInitParameters) DeepCopyInto(out *OutputEventHubSerializationInitParameters) { + *out = *in + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.FieldDelimiter != nil { + in, out := &in.FieldDelimiter, &out.FieldDelimiter + *out = new(string) + **out = **in + } + if in.Format != nil { + in, out := &in.Format, &out.Format + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputEventHubSerializationInitParameters. +func (in *OutputEventHubSerializationInitParameters) DeepCopy() *OutputEventHubSerializationInitParameters { + if in == nil { + return nil + } + out := new(OutputEventHubSerializationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputEventHubSerializationObservation) DeepCopyInto(out *OutputEventHubSerializationObservation) { *out = *in @@ -1675,6 +2083,7 @@ func (in *OutputEventHubSpec) DeepCopyInto(out *OutputEventHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputEventHubSpec. @@ -1731,6 +2140,36 @@ func (in *OutputFunction) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputFunctionInitParameters) DeepCopyInto(out *OutputFunctionInitParameters) { + *out = *in + if in.BatchMaxCount != nil { + in, out := &in.BatchMaxCount, &out.BatchMaxCount + *out = new(float64) + **out = **in + } + if in.BatchMaxInBytes != nil { + in, out := &in.BatchMaxInBytes, &out.BatchMaxInBytes + *out = new(float64) + **out = **in + } + if in.FunctionName != nil { + in, out := &in.FunctionName, &out.FunctionName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputFunctionInitParameters. +func (in *OutputFunctionInitParameters) DeepCopy() *OutputFunctionInitParameters { + if in == nil { + return nil + } + out := new(OutputFunctionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputFunctionList) DeepCopyInto(out *OutputFunctionList) { *out = *in @@ -1894,6 +2333,7 @@ func (in *OutputFunctionSpec) DeepCopyInto(out *OutputFunctionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputFunctionSpec. @@ -1923,6 +2363,26 @@ func (in *OutputFunctionStatus) DeepCopy() *OutputFunctionStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputInitParameters) DeepCopyInto(out *OutputInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputInitParameters. +func (in *OutputInitParameters) DeepCopy() *OutputInitParameters { + if in == nil { + return nil + } + out := new(OutputInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputMSSQL) DeepCopyInto(out *OutputMSSQL) { *out = *in @@ -1950,6 +2410,51 @@ func (in *OutputMSSQL) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputMSSQLInitParameters) DeepCopyInto(out *OutputMSSQLInitParameters) { + *out = *in + if in.AuthenticationMode != nil { + in, out := &in.AuthenticationMode, &out.AuthenticationMode + *out = new(string) + **out = **in + } + if in.Database != nil { + in, out := &in.Database, &out.Database + *out = new(string) + **out = **in + } + if in.MaxBatchCount != nil { + in, out := &in.MaxBatchCount, &out.MaxBatchCount + *out = new(float64) + **out = **in + } + if in.MaxWriterCount != nil { + in, out := &in.MaxWriterCount, &out.MaxWriterCount + *out = new(float64) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.User != nil { + in, out := &in.User, &out.User + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputMSSQLInitParameters. +func (in *OutputMSSQLInitParameters) DeepCopy() *OutputMSSQLInitParameters { + if in == nil { + return nil + } + out := new(OutputMSSQLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputMSSQLList) DeepCopyInto(out *OutputMSSQLList) { *out = *in @@ -2167,6 +2672,7 @@ func (in *OutputMSSQLSpec) DeepCopyInto(out *OutputMSSQLSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputMSSQLSpec. @@ -2263,6 +2769,51 @@ func (in *OutputPowerBI) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputPowerBIInitParameters) DeepCopyInto(out *OutputPowerBIInitParameters) { + *out = *in + if in.DataSet != nil { + in, out := &in.DataSet, &out.DataSet + *out = new(string) + **out = **in + } + if in.GroupID != nil { + in, out := &in.GroupID, &out.GroupID + *out = new(string) + **out = **in + } + if in.GroupName != nil { + in, out := &in.GroupName, &out.GroupName + *out = new(string) + **out = **in + } + if in.Table != nil { + in, out := &in.Table, &out.Table + *out = new(string) + **out = **in + } + if in.TokenUserDisplayName != nil { + in, out := &in.TokenUserDisplayName, &out.TokenUserDisplayName + *out = new(string) + **out = **in + } + if in.TokenUserPrincipalName != nil { + in, out := &in.TokenUserPrincipalName, &out.TokenUserPrincipalName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputPowerBIInitParameters. +func (in *OutputPowerBIInitParameters) DeepCopy() *OutputPowerBIInitParameters { + if in == nil { + return nil + } + out := new(OutputPowerBIInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputPowerBIList) DeepCopyInto(out *OutputPowerBIList) { *out = *in @@ -2415,6 +2966,7 @@ func (in *OutputPowerBISpec) DeepCopyInto(out *OutputPowerBISpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputPowerBISpec. @@ -2468,7 +3020,70 @@ func (in *OutputServiceBusQueue) DeepCopyObject() runtime.Object { if c := in.DeepCopy(); c != nil { return c } - return nil + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputServiceBusQueueInitParameters) DeepCopyInto(out *OutputServiceBusQueueInitParameters) { + *out = *in + if in.AuthenticationMode != nil { + in, out := &in.AuthenticationMode, &out.AuthenticationMode + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PropertyColumns != nil { + in, out := &in.PropertyColumns, &out.PropertyColumns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Serialization != nil { + in, out := &in.Serialization, &out.Serialization + *out = make([]OutputServiceBusQueueSerializationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SharedAccessPolicyName != nil { + in, out := &in.SharedAccessPolicyName, &out.SharedAccessPolicyName + *out = new(string) + **out = **in + } + if in.SystemPropertyColumns != nil { + in, out := &in.SystemPropertyColumns, &out.SystemPropertyColumns + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputServiceBusQueueInitParameters. +func (in *OutputServiceBusQueueInitParameters) DeepCopy() *OutputServiceBusQueueInitParameters { + if in == nil { + return nil + } + out := new(OutputServiceBusQueueInitParameters) + in.DeepCopyInto(out) + return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. @@ -2719,6 +3334,41 @@ func (in *OutputServiceBusQueueParameters) DeepCopy() *OutputServiceBusQueuePara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputServiceBusQueueSerializationInitParameters) DeepCopyInto(out *OutputServiceBusQueueSerializationInitParameters) { + *out = *in + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.FieldDelimiter != nil { + in, out := &in.FieldDelimiter, &out.FieldDelimiter + *out = new(string) + **out = **in + } + if in.Format != nil { + in, out := &in.Format, &out.Format + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputServiceBusQueueSerializationInitParameters. +func (in *OutputServiceBusQueueSerializationInitParameters) DeepCopy() *OutputServiceBusQueueSerializationInitParameters { + if in == nil { + return nil + } + out := new(OutputServiceBusQueueSerializationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputServiceBusQueueSerializationObservation) DeepCopyInto(out *OutputServiceBusQueueSerializationObservation) { *out = *in @@ -2794,6 +3444,7 @@ func (in *OutputServiceBusQueueSpec) DeepCopyInto(out *OutputServiceBusQueueSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputServiceBusQueueSpec. @@ -2850,6 +3501,69 @@ func (in *OutputServiceBusTopic) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputServiceBusTopicInitParameters) DeepCopyInto(out *OutputServiceBusTopicInitParameters) { + *out = *in + if in.AuthenticationMode != nil { + in, out := &in.AuthenticationMode, &out.AuthenticationMode + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PropertyColumns != nil { + in, out := &in.PropertyColumns, &out.PropertyColumns + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Serialization != nil { + in, out := &in.Serialization, &out.Serialization + *out = make([]OutputServiceBusTopicSerializationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SharedAccessPolicyName != nil { + in, out := &in.SharedAccessPolicyName, &out.SharedAccessPolicyName + *out = new(string) + **out = **in + } + if in.SystemPropertyColumns != nil { + in, out := &in.SystemPropertyColumns, &out.SystemPropertyColumns + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputServiceBusTopicInitParameters. +func (in *OutputServiceBusTopicInitParameters) DeepCopy() *OutputServiceBusTopicInitParameters { + if in == nil { + return nil + } + out := new(OutputServiceBusTopicInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputServiceBusTopicList) DeepCopyInto(out *OutputServiceBusTopicList) { *out = *in @@ -3098,6 +3812,41 @@ func (in *OutputServiceBusTopicParameters) DeepCopy() *OutputServiceBusTopicPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputServiceBusTopicSerializationInitParameters) DeepCopyInto(out *OutputServiceBusTopicSerializationInitParameters) { + *out = *in + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.FieldDelimiter != nil { + in, out := &in.FieldDelimiter, &out.FieldDelimiter + *out = new(string) + **out = **in + } + if in.Format != nil { + in, out := &in.Format, &out.Format + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputServiceBusTopicSerializationInitParameters. +func (in *OutputServiceBusTopicSerializationInitParameters) DeepCopy() *OutputServiceBusTopicSerializationInitParameters { + if in == nil { + return nil + } + out := new(OutputServiceBusTopicSerializationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputServiceBusTopicSerializationObservation) DeepCopyInto(out *OutputServiceBusTopicSerializationObservation) { *out = *in @@ -3173,6 +3922,7 @@ func (in *OutputServiceBusTopicSpec) DeepCopyInto(out *OutputServiceBusTopicSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputServiceBusTopicSpec. @@ -3229,6 +3979,36 @@ func (in *OutputSynapse) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputSynapseInitParameters) DeepCopyInto(out *OutputSynapseInitParameters) { + *out = *in + if in.Database != nil { + in, out := &in.Database, &out.Database + *out = new(string) + **out = **in + } + if in.Server != nil { + in, out := &in.Server, &out.Server + *out = new(string) + **out = **in + } + if in.Table != nil { + in, out := &in.Table, &out.Table + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputSynapseInitParameters. +func (in *OutputSynapseInitParameters) DeepCopy() *OutputSynapseInitParameters { + if in == nil { + return nil + } + out := new(OutputSynapseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputSynapseList) DeepCopyInto(out *OutputSynapseList) { *out = *in @@ -3392,6 +4172,7 @@ func (in *OutputSynapseSpec) DeepCopyInto(out *OutputSynapseSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputSynapseSpec. @@ -3448,6 +4229,47 @@ func (in *OutputTable) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *OutputTableInitParameters) DeepCopyInto(out *OutputTableInitParameters) { + *out = *in + if in.BatchSize != nil { + in, out := &in.BatchSize, &out.BatchSize + *out = new(float64) + **out = **in + } + if in.ColumnsToRemove != nil { + in, out := &in.ColumnsToRemove, &out.ColumnsToRemove + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.PartitionKey != nil { + in, out := &in.PartitionKey, &out.PartitionKey + *out = new(string) + **out = **in + } + if in.RowKey != nil { + in, out := &in.RowKey, &out.RowKey + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputTableInitParameters. +func (in *OutputTableInitParameters) DeepCopy() *OutputTableInitParameters { + if in == nil { + return nil + } + out := new(OutputTableInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *OutputTableList) DeepCopyInto(out *OutputTableList) { *out = *in @@ -3643,6 +4465,7 @@ func (in *OutputTableSpec) DeepCopyInto(out *OutputTableSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OutputTableSpec. @@ -3699,6 +4522,53 @@ func (in *ReferenceInputBlob) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReferenceInputBlobInitParameters) DeepCopyInto(out *ReferenceInputBlobInitParameters) { + *out = *in + if in.AuthenticationMode != nil { + in, out := &in.AuthenticationMode, &out.AuthenticationMode + *out = new(string) + **out = **in + } + if in.DateFormat != nil { + in, out := &in.DateFormat, &out.DateFormat + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PathPattern != nil { + in, out := &in.PathPattern, &out.PathPattern + *out = new(string) + **out = **in + } + if in.Serialization != nil { + in, out := &in.Serialization, &out.Serialization + *out = make([]ReferenceInputBlobSerializationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TimeFormat != nil { + in, out := &in.TimeFormat, &out.TimeFormat + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReferenceInputBlobInitParameters. +func (in *ReferenceInputBlobInitParameters) DeepCopy() *ReferenceInputBlobInitParameters { + if in == nil { + return nil + } + out := new(ReferenceInputBlobInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ReferenceInputBlobList) DeepCopyInto(out *ReferenceInputBlobList) { *out = *in @@ -3915,6 +4785,36 @@ func (in *ReferenceInputBlobParameters) DeepCopy() *ReferenceInputBlobParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReferenceInputBlobSerializationInitParameters) DeepCopyInto(out *ReferenceInputBlobSerializationInitParameters) { + *out = *in + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.FieldDelimiter != nil { + in, out := &in.FieldDelimiter, &out.FieldDelimiter + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReferenceInputBlobSerializationInitParameters. +func (in *ReferenceInputBlobSerializationInitParameters) DeepCopy() *ReferenceInputBlobSerializationInitParameters { + if in == nil { + return nil + } + out := new(ReferenceInputBlobSerializationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ReferenceInputBlobSerializationObservation) DeepCopyInto(out *ReferenceInputBlobSerializationObservation) { *out = *in @@ -3980,6 +4880,7 @@ func (in *ReferenceInputBlobSpec) DeepCopyInto(out *ReferenceInputBlobSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReferenceInputBlobSpec. @@ -4036,6 +4937,51 @@ func (in *ReferenceInputMSSQL) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReferenceInputMSSQLInitParameters) DeepCopyInto(out *ReferenceInputMSSQLInitParameters) { + *out = *in + if in.DeltaSnapshotQuery != nil { + in, out := &in.DeltaSnapshotQuery, &out.DeltaSnapshotQuery + *out = new(string) + **out = **in + } + if in.FullSnapshotQuery != nil { + in, out := &in.FullSnapshotQuery, &out.FullSnapshotQuery + *out = new(string) + **out = **in + } + if in.RefreshIntervalDuration != nil { + in, out := &in.RefreshIntervalDuration, &out.RefreshIntervalDuration + *out = new(string) + **out = **in + } + if in.RefreshType != nil { + in, out := &in.RefreshType, &out.RefreshType + *out = new(string) + **out = **in + } + if in.Table != nil { + in, out := &in.Table, &out.Table + *out = new(string) + **out = **in + } + if in.Username != nil { + in, out := &in.Username, &out.Username + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReferenceInputMSSQLInitParameters. +func (in *ReferenceInputMSSQLInitParameters) DeepCopy() *ReferenceInputMSSQLInitParameters { + if in == nil { + return nil + } + out := new(ReferenceInputMSSQLInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ReferenceInputMSSQLList) DeepCopyInto(out *ReferenceInputMSSQLList) { *out = *in @@ -4239,6 +5185,7 @@ func (in *ReferenceInputMSSQLSpec) DeepCopyInto(out *ReferenceInputMSSQLSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReferenceInputMSSQLSpec. @@ -4268,6 +5215,41 @@ func (in *ReferenceInputMSSQLStatus) DeepCopy() *ReferenceInputMSSQLStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SerializationInitParameters) DeepCopyInto(out *SerializationInitParameters) { + *out = *in + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.FieldDelimiter != nil { + in, out := &in.FieldDelimiter, &out.FieldDelimiter + *out = new(string) + **out = **in + } + if in.Format != nil { + in, out := &in.Format, &out.Format + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SerializationInitParameters. +func (in *SerializationInitParameters) DeepCopy() *SerializationInitParameters { + if in == nil { + return nil + } + out := new(SerializationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SerializationObservation) DeepCopyInto(out *SerializationObservation) { *out = *in @@ -4365,6 +5347,48 @@ func (in *StreamInputBlob) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamInputBlobInitParameters) DeepCopyInto(out *StreamInputBlobInitParameters) { + *out = *in + if in.DateFormat != nil { + in, out := &in.DateFormat, &out.DateFormat + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PathPattern != nil { + in, out := &in.PathPattern, &out.PathPattern + *out = new(string) + **out = **in + } + if in.Serialization != nil { + in, out := &in.Serialization, &out.Serialization + *out = make([]StreamInputBlobSerializationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.TimeFormat != nil { + in, out := &in.TimeFormat, &out.TimeFormat + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamInputBlobInitParameters. +func (in *StreamInputBlobInitParameters) DeepCopy() *StreamInputBlobInitParameters { + if in == nil { + return nil + } + out := new(StreamInputBlobInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StreamInputBlobList) DeepCopyInto(out *StreamInputBlobList) { *out = *in @@ -4567,6 +5591,36 @@ func (in *StreamInputBlobParameters) DeepCopy() *StreamInputBlobParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamInputBlobSerializationInitParameters) DeepCopyInto(out *StreamInputBlobSerializationInitParameters) { + *out = *in + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.FieldDelimiter != nil { + in, out := &in.FieldDelimiter, &out.FieldDelimiter + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamInputBlobSerializationInitParameters. +func (in *StreamInputBlobSerializationInitParameters) DeepCopy() *StreamInputBlobSerializationInitParameters { + if in == nil { + return nil + } + out := new(StreamInputBlobSerializationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StreamInputBlobSerializationObservation) DeepCopyInto(out *StreamInputBlobSerializationObservation) { *out = *in @@ -4632,6 +5686,7 @@ func (in *StreamInputBlobSpec) DeepCopyInto(out *StreamInputBlobSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamInputBlobSpec. @@ -4688,6 +5743,48 @@ func (in *StreamInputEventHub) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamInputEventHubInitParameters) DeepCopyInto(out *StreamInputEventHubInitParameters) { + *out = *in + if in.AuthenticationMode != nil { + in, out := &in.AuthenticationMode, &out.AuthenticationMode + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PartitionKey != nil { + in, out := &in.PartitionKey, &out.PartitionKey + *out = new(string) + **out = **in + } + if in.Serialization != nil { + in, out := &in.Serialization, &out.Serialization + *out = make([]StreamInputEventHubSerializationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SharedAccessPolicyName != nil { + in, out := &in.SharedAccessPolicyName, &out.SharedAccessPolicyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamInputEventHubInitParameters. +func (in *StreamInputEventHubInitParameters) DeepCopy() *StreamInputEventHubInitParameters { + if in == nil { + return nil + } + out := new(StreamInputEventHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StreamInputEventHubList) DeepCopyInto(out *StreamInputEventHubList) { *out = *in @@ -4914,6 +6011,36 @@ func (in *StreamInputEventHubParameters) DeepCopy() *StreamInputEventHubParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamInputEventHubSerializationInitParameters) DeepCopyInto(out *StreamInputEventHubSerializationInitParameters) { + *out = *in + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.FieldDelimiter != nil { + in, out := &in.FieldDelimiter, &out.FieldDelimiter + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamInputEventHubSerializationInitParameters. +func (in *StreamInputEventHubSerializationInitParameters) DeepCopy() *StreamInputEventHubSerializationInitParameters { + if in == nil { + return nil + } + out := new(StreamInputEventHubSerializationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StreamInputEventHubSerializationObservation) DeepCopyInto(out *StreamInputEventHubSerializationObservation) { *out = *in @@ -4979,6 +6106,7 @@ func (in *StreamInputEventHubSpec) DeepCopyInto(out *StreamInputEventHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamInputEventHubSpec. @@ -5035,6 +6163,43 @@ func (in *StreamInputIOTHub) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamInputIOTHubInitParameters) DeepCopyInto(out *StreamInputIOTHubInitParameters) { + *out = *in + if in.Endpoint != nil { + in, out := &in.Endpoint, &out.Endpoint + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Serialization != nil { + in, out := &in.Serialization, &out.Serialization + *out = make([]StreamInputIOTHubSerializationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SharedAccessPolicyName != nil { + in, out := &in.SharedAccessPolicyName, &out.SharedAccessPolicyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamInputIOTHubInitParameters. +func (in *StreamInputIOTHubInitParameters) DeepCopy() *StreamInputIOTHubInitParameters { + if in == nil { + return nil + } + out := new(StreamInputIOTHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StreamInputIOTHubList) DeepCopyInto(out *StreamInputIOTHubList) { *out = *in @@ -5227,6 +6392,36 @@ func (in *StreamInputIOTHubParameters) DeepCopy() *StreamInputIOTHubParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StreamInputIOTHubSerializationInitParameters) DeepCopyInto(out *StreamInputIOTHubSerializationInitParameters) { + *out = *in + if in.Encoding != nil { + in, out := &in.Encoding, &out.Encoding + *out = new(string) + **out = **in + } + if in.FieldDelimiter != nil { + in, out := &in.FieldDelimiter, &out.FieldDelimiter + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamInputIOTHubSerializationInitParameters. +func (in *StreamInputIOTHubSerializationInitParameters) DeepCopy() *StreamInputIOTHubSerializationInitParameters { + if in == nil { + return nil + } + out := new(StreamInputIOTHubSerializationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StreamInputIOTHubSerializationObservation) DeepCopyInto(out *StreamInputIOTHubSerializationObservation) { *out = *in @@ -5292,6 +6487,7 @@ func (in *StreamInputIOTHubSpec) DeepCopyInto(out *StreamInputIOTHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StreamInputIOTHubSpec. diff --git a/apis/streamanalytics/v1beta1/zz_generated.managed.go b/apis/streamanalytics/v1beta1/zz_generated.managed.go index 46ec0e658..9da6be0e7 100644 --- a/apis/streamanalytics/v1beta1/zz_generated.managed.go +++ b/apis/streamanalytics/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *Cluster) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Cluster. -func (mg *Cluster) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Cluster. +func (mg *Cluster) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Cluster. @@ -55,9 +55,9 @@ func (mg *Cluster) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Cluster. -func (mg *Cluster) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Cluster. +func (mg *Cluster) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Cluster. @@ -93,9 +93,9 @@ func (mg *FunctionJavascriptUda) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FunctionJavascriptUda. -func (mg *FunctionJavascriptUda) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FunctionJavascriptUda. +func (mg *FunctionJavascriptUda) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FunctionJavascriptUda. @@ -131,9 +131,9 @@ func (mg *FunctionJavascriptUda) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FunctionJavascriptUda. -func (mg *FunctionJavascriptUda) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FunctionJavascriptUda. +func (mg *FunctionJavascriptUda) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FunctionJavascriptUda. @@ -169,9 +169,9 @@ func (mg *Job) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Job. -func (mg *Job) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Job. +func (mg *Job) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Job. @@ -207,9 +207,9 @@ func (mg *Job) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Job. -func (mg *Job) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Job. +func (mg *Job) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Job. @@ -245,9 +245,9 @@ func (mg *ManagedPrivateEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagedPrivateEndpoint. -func (mg *ManagedPrivateEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagedPrivateEndpoint. +func (mg *ManagedPrivateEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagedPrivateEndpoint. @@ -283,9 +283,9 @@ func (mg *ManagedPrivateEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagedPrivateEndpoint. -func (mg *ManagedPrivateEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagedPrivateEndpoint. +func (mg *ManagedPrivateEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagedPrivateEndpoint. @@ -321,9 +321,9 @@ func (mg *OutputBlob) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OutputBlob. -func (mg *OutputBlob) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OutputBlob. +func (mg *OutputBlob) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OutputBlob. @@ -359,9 +359,9 @@ func (mg *OutputBlob) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OutputBlob. -func (mg *OutputBlob) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OutputBlob. +func (mg *OutputBlob) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OutputBlob. @@ -397,9 +397,9 @@ func (mg *OutputEventHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OutputEventHub. -func (mg *OutputEventHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OutputEventHub. +func (mg *OutputEventHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OutputEventHub. @@ -435,9 +435,9 @@ func (mg *OutputEventHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OutputEventHub. -func (mg *OutputEventHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OutputEventHub. +func (mg *OutputEventHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OutputEventHub. @@ -473,9 +473,9 @@ func (mg *OutputFunction) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OutputFunction. -func (mg *OutputFunction) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OutputFunction. +func (mg *OutputFunction) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OutputFunction. @@ -511,9 +511,9 @@ func (mg *OutputFunction) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OutputFunction. -func (mg *OutputFunction) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OutputFunction. +func (mg *OutputFunction) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OutputFunction. @@ -549,9 +549,9 @@ func (mg *OutputMSSQL) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OutputMSSQL. -func (mg *OutputMSSQL) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OutputMSSQL. +func (mg *OutputMSSQL) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OutputMSSQL. @@ -587,9 +587,9 @@ func (mg *OutputMSSQL) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OutputMSSQL. -func (mg *OutputMSSQL) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OutputMSSQL. +func (mg *OutputMSSQL) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OutputMSSQL. @@ -625,9 +625,9 @@ func (mg *OutputPowerBI) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OutputPowerBI. -func (mg *OutputPowerBI) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OutputPowerBI. +func (mg *OutputPowerBI) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OutputPowerBI. @@ -663,9 +663,9 @@ func (mg *OutputPowerBI) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OutputPowerBI. -func (mg *OutputPowerBI) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OutputPowerBI. +func (mg *OutputPowerBI) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OutputPowerBI. @@ -701,9 +701,9 @@ func (mg *OutputServiceBusQueue) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OutputServiceBusQueue. -func (mg *OutputServiceBusQueue) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OutputServiceBusQueue. +func (mg *OutputServiceBusQueue) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OutputServiceBusQueue. @@ -739,9 +739,9 @@ func (mg *OutputServiceBusQueue) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OutputServiceBusQueue. -func (mg *OutputServiceBusQueue) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OutputServiceBusQueue. +func (mg *OutputServiceBusQueue) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OutputServiceBusQueue. @@ -777,9 +777,9 @@ func (mg *OutputServiceBusTopic) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OutputServiceBusTopic. -func (mg *OutputServiceBusTopic) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OutputServiceBusTopic. +func (mg *OutputServiceBusTopic) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OutputServiceBusTopic. @@ -815,9 +815,9 @@ func (mg *OutputServiceBusTopic) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OutputServiceBusTopic. -func (mg *OutputServiceBusTopic) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OutputServiceBusTopic. +func (mg *OutputServiceBusTopic) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OutputServiceBusTopic. @@ -853,9 +853,9 @@ func (mg *OutputSynapse) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OutputSynapse. -func (mg *OutputSynapse) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OutputSynapse. +func (mg *OutputSynapse) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OutputSynapse. @@ -891,9 +891,9 @@ func (mg *OutputSynapse) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OutputSynapse. -func (mg *OutputSynapse) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OutputSynapse. +func (mg *OutputSynapse) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OutputSynapse. @@ -929,9 +929,9 @@ func (mg *OutputTable) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this OutputTable. -func (mg *OutputTable) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this OutputTable. +func (mg *OutputTable) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this OutputTable. @@ -967,9 +967,9 @@ func (mg *OutputTable) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this OutputTable. -func (mg *OutputTable) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this OutputTable. +func (mg *OutputTable) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this OutputTable. @@ -1005,9 +1005,9 @@ func (mg *ReferenceInputBlob) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ReferenceInputBlob. -func (mg *ReferenceInputBlob) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ReferenceInputBlob. +func (mg *ReferenceInputBlob) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ReferenceInputBlob. @@ -1043,9 +1043,9 @@ func (mg *ReferenceInputBlob) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ReferenceInputBlob. -func (mg *ReferenceInputBlob) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ReferenceInputBlob. +func (mg *ReferenceInputBlob) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ReferenceInputBlob. @@ -1081,9 +1081,9 @@ func (mg *ReferenceInputMSSQL) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ReferenceInputMSSQL. -func (mg *ReferenceInputMSSQL) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ReferenceInputMSSQL. +func (mg *ReferenceInputMSSQL) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ReferenceInputMSSQL. @@ -1119,9 +1119,9 @@ func (mg *ReferenceInputMSSQL) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ReferenceInputMSSQL. -func (mg *ReferenceInputMSSQL) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ReferenceInputMSSQL. +func (mg *ReferenceInputMSSQL) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ReferenceInputMSSQL. @@ -1157,9 +1157,9 @@ func (mg *StreamInputBlob) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this StreamInputBlob. -func (mg *StreamInputBlob) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this StreamInputBlob. +func (mg *StreamInputBlob) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this StreamInputBlob. @@ -1195,9 +1195,9 @@ func (mg *StreamInputBlob) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this StreamInputBlob. -func (mg *StreamInputBlob) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this StreamInputBlob. +func (mg *StreamInputBlob) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this StreamInputBlob. @@ -1233,9 +1233,9 @@ func (mg *StreamInputEventHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this StreamInputEventHub. -func (mg *StreamInputEventHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this StreamInputEventHub. +func (mg *StreamInputEventHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this StreamInputEventHub. @@ -1271,9 +1271,9 @@ func (mg *StreamInputEventHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this StreamInputEventHub. -func (mg *StreamInputEventHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this StreamInputEventHub. +func (mg *StreamInputEventHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this StreamInputEventHub. @@ -1309,9 +1309,9 @@ func (mg *StreamInputIOTHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this StreamInputIOTHub. -func (mg *StreamInputIOTHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this StreamInputIOTHub. +func (mg *StreamInputIOTHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this StreamInputIOTHub. @@ -1347,9 +1347,9 @@ func (mg *StreamInputIOTHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this StreamInputIOTHub. -func (mg *StreamInputIOTHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this StreamInputIOTHub. +func (mg *StreamInputIOTHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this StreamInputIOTHub. diff --git a/apis/streamanalytics/v1beta1/zz_generated_terraformed.go b/apis/streamanalytics/v1beta1/zz_generated_terraformed.go index 6e30f03cb..7aadcae2a 100755 --- a/apis/streamanalytics/v1beta1/zz_generated_terraformed.go +++ b/apis/streamanalytics/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *Cluster) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Cluster +func (tr *Cluster) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Cluster using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Cluster) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *FunctionJavascriptUda) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FunctionJavascriptUda +func (tr *FunctionJavascriptUda) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FunctionJavascriptUda using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FunctionJavascriptUda) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *Job) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Job +func (tr *Job) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Job using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Job) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *ManagedPrivateEndpoint) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagedPrivateEndpoint +func (tr *ManagedPrivateEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagedPrivateEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagedPrivateEndpoint) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *OutputBlob) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OutputBlob +func (tr *OutputBlob) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OutputBlob using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OutputBlob) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *OutputEventHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OutputEventHub +func (tr *OutputEventHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OutputEventHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OutputEventHub) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *OutputFunction) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OutputFunction +func (tr *OutputFunction) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OutputFunction using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OutputFunction) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *OutputMSSQL) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OutputMSSQL +func (tr *OutputMSSQL) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OutputMSSQL using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OutputMSSQL) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *OutputPowerBI) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OutputPowerBI +func (tr *OutputPowerBI) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OutputPowerBI using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OutputPowerBI) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *OutputServiceBusQueue) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OutputServiceBusQueue +func (tr *OutputServiceBusQueue) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OutputServiceBusQueue using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OutputServiceBusQueue) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *OutputServiceBusTopic) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OutputServiceBusTopic +func (tr *OutputServiceBusTopic) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OutputServiceBusTopic using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OutputServiceBusTopic) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *OutputSynapse) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OutputSynapse +func (tr *OutputSynapse) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OutputSynapse using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OutputSynapse) LateInitialize(attrs []byte) (bool, error) { @@ -957,6 +1077,16 @@ func (tr *OutputTable) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this OutputTable +func (tr *OutputTable) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this OutputTable using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *OutputTable) LateInitialize(attrs []byte) (bool, error) { @@ -1031,6 +1161,16 @@ func (tr *ReferenceInputBlob) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ReferenceInputBlob +func (tr *ReferenceInputBlob) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ReferenceInputBlob using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ReferenceInputBlob) LateInitialize(attrs []byte) (bool, error) { @@ -1105,6 +1245,16 @@ func (tr *ReferenceInputMSSQL) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ReferenceInputMSSQL +func (tr *ReferenceInputMSSQL) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ReferenceInputMSSQL using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ReferenceInputMSSQL) LateInitialize(attrs []byte) (bool, error) { @@ -1179,6 +1329,16 @@ func (tr *StreamInputBlob) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this StreamInputBlob +func (tr *StreamInputBlob) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this StreamInputBlob using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *StreamInputBlob) LateInitialize(attrs []byte) (bool, error) { @@ -1253,6 +1413,16 @@ func (tr *StreamInputEventHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this StreamInputEventHub +func (tr *StreamInputEventHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this StreamInputEventHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *StreamInputEventHub) LateInitialize(attrs []byte) (bool, error) { @@ -1327,6 +1497,16 @@ func (tr *StreamInputIOTHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this StreamInputIOTHub +func (tr *StreamInputIOTHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this StreamInputIOTHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *StreamInputIOTHub) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/streamanalytics/v1beta1/zz_job_types.go b/apis/streamanalytics/v1beta1/zz_job_types.go index 25c9dc93b..f69d5e4a6 100755 --- a/apis/streamanalytics/v1beta1/zz_job_types.go +++ b/apis/streamanalytics/v1beta1/zz_job_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IdentityInitParameters struct { + + // Specifies the type of Managed Service Identity that should be configured on this Stream Analytics Job. The only possible value is SystemAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // The Principal ID associated with this Managed Service Identity. @@ -28,8 +34,56 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this Stream Analytics Job. The only possible value is SystemAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type JobInitParameters struct { + + // Specifies the compatibility level for this job - which controls certain runtime behaviours of the streaming job. Possible values are 1.0, 1.1 and 1.2. + CompatibilityLevel *string `json:"compatibilityLevel,omitempty" tf:"compatibility_level,omitempty"` + + // The policy for storing stream analytics content. Possible values are JobStorageAccount, SystemAccount. + ContentStoragePolicy *string `json:"contentStoragePolicy,omitempty" tf:"content_storage_policy,omitempty"` + + // Specifies the Data Locale of the Job, which should be a supported .NET Culture. + DataLocale *string `json:"dataLocale,omitempty" tf:"data_locale,omitempty"` + + // Specifies the maximum tolerable delay in seconds where events arriving late could be included. Supported range is -1 (indefinite) to 1814399 (20d 23h 59m 59s). Default is 0. + EventsLateArrivalMaxDelayInSeconds *float64 `json:"eventsLateArrivalMaxDelayInSeconds,omitempty" tf:"events_late_arrival_max_delay_in_seconds,omitempty"` + + // Specifies the maximum tolerable delay in seconds where out-of-order events can be adjusted to be back in order. Supported range is 0 to 599 (9m 59s). Default is 5. + EventsOutOfOrderMaxDelayInSeconds *float64 `json:"eventsOutOfOrderMaxDelayInSeconds,omitempty" tf:"events_out_of_order_max_delay_in_seconds,omitempty"` + + // Specifies the policy which should be applied to events which arrive out of order in the input event stream. Possible values are Adjust and Drop. Default is Adjust. + EventsOutOfOrderPolicy *string `json:"eventsOutOfOrderPolicy,omitempty" tf:"events_out_of_order_policy,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The details of the job storage account. A job_storage_account block as defined below. + JobStorageAccount []JobStorageAccountInitParameters `json:"jobStorageAccount,omitempty" tf:"job_storage_account,omitempty"` + + // The Azure Region in which the Resource Group exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the policy which should be applied to events which arrive at the output and cannot be written to the external storage due to being malformed (such as missing column values, column values of wrong type or size). Possible values are Drop and Stop. Default is Drop. + OutputErrorPolicy *string `json:"outputErrorPolicy,omitempty" tf:"output_error_policy,omitempty"` + + // The ID of an existing Stream Analytics Cluster where the Stream Analytics Job should run. + StreamAnalyticsClusterID *string `json:"streamAnalyticsClusterId,omitempty" tf:"stream_analytics_cluster_id,omitempty"` + + // Specifies the number of streaming units that the streaming job uses. Supported values are 1, 3, 6 and multiples of 6 up to 120. + StreamingUnits *float64 `json:"streamingUnits,omitempty" tf:"streaming_units,omitempty"` + + // A mapping of tags assigned to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the query that will be run in the streaming job, written in Stream Analytics Query Language (SAQL). + TransformationQuery *string `json:"transformationQuery,omitempty" tf:"transformation_query,omitempty"` + + // The type of the Stream Analytics Job. Possible values are Cloud and Edge. Defaults to Cloud. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type JobObservation struct { @@ -165,6 +219,15 @@ type JobParameters struct { Type *string `json:"type,omitempty" tf:"type,omitempty"` } +type JobStorageAccountInitParameters struct { + + // The name of the Azure storage account. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // The authentication mode of the storage account. The only supported value is ConnectionString. Defaults to ConnectionString. + AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` +} + type JobStorageAccountObservation struct { // The name of the Azure storage account. @@ -181,8 +244,8 @@ type JobStorageAccountParameters struct { AccountKeySecretRef v1.SecretKeySelector `json:"accountKeySecretRef" tf:"-"` // The name of the Azure storage account. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The authentication mode of the storage account. The only supported value is ConnectionString. Defaults to ConnectionString. // +kubebuilder:validation:Optional @@ -193,6 +256,18 @@ type JobStorageAccountParameters struct { type JobSpec struct { v1.ResourceSpec `json:",inline"` ForProvider JobParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider JobInitParameters `json:"initProvider,omitempty"` } // JobStatus defines the observed state of Job. @@ -213,8 +288,8 @@ type JobStatus struct { type Job struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.transformationQuery)",message="transformationQuery is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.transformationQuery) || has(self.initProvider.transformationQuery)",message="transformationQuery is a required parameter" Spec JobSpec `json:"spec"` Status JobStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_managedprivateendpoint_types.go b/apis/streamanalytics/v1beta1/zz_managedprivateendpoint_types.go index def534dd7..d2267aaaf 100755 --- a/apis/streamanalytics/v1beta1/zz_managedprivateendpoint_types.go +++ b/apis/streamanalytics/v1beta1/zz_managedprivateendpoint_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagedPrivateEndpointInitParameters struct { + + // Specifies the sub resource name which the Stream Analytics Private Endpoint is able to connect to. Changing this forces a new resource to be created. + SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` +} + type ManagedPrivateEndpointObservation struct { // The ID of the Stream Analytics. @@ -82,6 +88,18 @@ type ManagedPrivateEndpointParameters struct { type ManagedPrivateEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagedPrivateEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagedPrivateEndpointInitParameters `json:"initProvider,omitempty"` } // ManagedPrivateEndpointStatus defines the observed state of ManagedPrivateEndpoint. @@ -102,7 +120,7 @@ type ManagedPrivateEndpointStatus struct { type ManagedPrivateEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subresourceName)",message="subresourceName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subresourceName) || has(self.initProvider.subresourceName)",message="subresourceName is a required parameter" Spec ManagedPrivateEndpointSpec `json:"spec"` Status ManagedPrivateEndpointStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputblob_types.go b/apis/streamanalytics/v1beta1/zz_outputblob_types.go index 28f18c9c5..e5cae156a 100755 --- a/apis/streamanalytics/v1beta1/zz_outputblob_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputblob_types.go @@ -13,6 +13,30 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OutputBlobInitParameters struct { + + // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` + + // The maximum wait time per batch in hh:mm:ss e.g. 00:02:00 for two minutes. + BatchMaxWaitTime *string `json:"batchMaxWaitTime,omitempty" tf:"batch_max_wait_time,omitempty"` + + // The minimum number of rows per batch (must be between 0 and 10000). + BatchMinRows *float64 `json:"batchMinRows,omitempty" tf:"batch_min_rows,omitempty"` + + // The date format. Wherever {date} appears in path_pattern, the value of this property is used as the date format instead. + DateFormat *string `json:"dateFormat,omitempty" tf:"date_format,omitempty"` + + // The blob path pattern. Not a regular expression. It represents a pattern against which blob names will be matched to determine whether or not they should be included as input or output to the job. + PathPattern *string `json:"pathPattern,omitempty" tf:"path_pattern,omitempty"` + + // A serialization block as defined below. + Serialization []SerializationInitParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` + + // The time format. Wherever {time} appears in path_pattern, the value of this property is used as the time format instead. + TimeFormat *string `json:"timeFormat,omitempty" tf:"time_format,omitempty"` +} + type OutputBlobObservation struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. @@ -139,6 +163,21 @@ type OutputBlobParameters struct { TimeFormat *string `json:"timeFormat,omitempty" tf:"time_format,omitempty"` } +type SerializationInitParameters struct { + + // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` + + // Specifies the format of the JSON the output will be written in. Possible values are Array and LineSeparated. + Format *string `json:"format,omitempty" tf:"format,omitempty"` + + // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type SerializationObservation struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. @@ -169,14 +208,26 @@ type SerializationParameters struct { Format *string `json:"format,omitempty" tf:"format,omitempty"` // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // OutputBlobSpec defines the desired state of OutputBlob type OutputBlobSpec struct { v1.ResourceSpec `json:",inline"` ForProvider OutputBlobParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OutputBlobInitParameters `json:"initProvider,omitempty"` } // OutputBlobStatus defines the observed state of OutputBlob. @@ -197,10 +248,10 @@ type OutputBlobStatus struct { type OutputBlob struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dateFormat)",message="dateFormat is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.pathPattern)",message="pathPattern is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization)",message="serialization is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timeFormat)",message="timeFormat is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dateFormat) || has(self.initProvider.dateFormat)",message="dateFormat is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.pathPattern) || has(self.initProvider.pathPattern)",message="pathPattern is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serialization) || has(self.initProvider.serialization)",message="serialization is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.timeFormat) || has(self.initProvider.timeFormat)",message="timeFormat is a required parameter" Spec OutputBlobSpec `json:"spec"` Status OutputBlobStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputeventhub_types.go b/apis/streamanalytics/v1beta1/zz_outputeventhub_types.go index 15a5d8cc3..4d96285cb 100755 --- a/apis/streamanalytics/v1beta1/zz_outputeventhub_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputeventhub_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OutputEventHubInitParameters struct { + + // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` + + // The column that is used for the Event Hub partition key. + PartitionKey *string `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` + + // A list of property columns to add to the Event Hub output. + PropertyColumns []*string `json:"propertyColumns,omitempty" tf:"property_columns,omitempty"` + + // A serialization block as defined below. + Serialization []OutputEventHubSerializationInitParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` + + // The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. Required when authentication_mode is set to ConnectionString. + SharedAccessPolicyName *string `json:"sharedAccessPolicyName,omitempty" tf:"shared_access_policy_name,omitempty"` +} + type OutputEventHubObservation struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. @@ -116,6 +134,21 @@ type OutputEventHubParameters struct { StreamAnalyticsJobName *string `json:"streamAnalyticsJobName" tf:"stream_analytics_job_name,omitempty"` } +type OutputEventHubSerializationInitParameters struct { + + // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` + + // Specifies the format of the JSON the output will be written in. Possible values are Array and LineSeparated. + Format *string `json:"format,omitempty" tf:"format,omitempty"` + + // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type OutputEventHubSerializationObservation struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. @@ -146,14 +179,26 @@ type OutputEventHubSerializationParameters struct { Format *string `json:"format,omitempty" tf:"format,omitempty"` // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // OutputEventHubSpec defines the desired state of OutputEventHub type OutputEventHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider OutputEventHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OutputEventHubInitParameters `json:"initProvider,omitempty"` } // OutputEventHubStatus defines the observed state of OutputEventHub. @@ -174,7 +219,7 @@ type OutputEventHubStatus struct { type OutputEventHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization)",message="serialization is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serialization) || has(self.initProvider.serialization)",message="serialization is a required parameter" Spec OutputEventHubSpec `json:"spec"` Status OutputEventHubStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputfunction_types.go b/apis/streamanalytics/v1beta1/zz_outputfunction_types.go index f9867aa15..6ab5d8103 100755 --- a/apis/streamanalytics/v1beta1/zz_outputfunction_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputfunction_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OutputFunctionInitParameters struct { + + // The maximum number of events in each batch that's sent to the function. Defaults to 100. + BatchMaxCount *float64 `json:"batchMaxCount,omitempty" tf:"batch_max_count,omitempty"` + + // The maximum batch size in bytes that's sent to the function. Defaults to 262144 (256 kB). + BatchMaxInBytes *float64 `json:"batchMaxInBytes,omitempty" tf:"batch_max_in_bytes,omitempty"` + + // The name of the function in the Function App. + FunctionName *string `json:"functionName,omitempty" tf:"function_name,omitempty"` +} + type OutputFunctionObservation struct { // The maximum number of events in each batch that's sent to the function. Defaults to 100. @@ -100,6 +112,18 @@ type OutputFunctionParameters struct { type OutputFunctionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider OutputFunctionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OutputFunctionInitParameters `json:"initProvider,omitempty"` } // OutputFunctionStatus defines the observed state of OutputFunction. @@ -120,8 +144,8 @@ type OutputFunctionStatus struct { type OutputFunction struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.apiKeySecretRef)",message="apiKeySecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.functionName)",message="functionName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.apiKeySecretRef)",message="apiKeySecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.functionName) || has(self.initProvider.functionName)",message="functionName is a required parameter" Spec OutputFunctionSpec `json:"spec"` Status OutputFunctionStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputmssql_types.go b/apis/streamanalytics/v1beta1/zz_outputmssql_types.go index 8379fce18..ae26da057 100755 --- a/apis/streamanalytics/v1beta1/zz_outputmssql_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputmssql_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OutputMSSQLInitParameters struct { + + // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` + + // The MS SQL database name where the reference table exists. Changing this forces a new resource to be created. + Database *string `json:"database,omitempty" tf:"database,omitempty"` + + // The max batch count to write to the SQL Database. Defaults to 10000. Possible values are between 1 and 1073741824. + MaxBatchCount *float64 `json:"maxBatchCount,omitempty" tf:"max_batch_count,omitempty"` + + // The max writer count for the SQL Database. Defaults to 1. Possible values are 0 which bases the writer count on the query partition and 1 which corresponds to a single writer. + MaxWriterCount *float64 `json:"maxWriterCount,omitempty" tf:"max_writer_count,omitempty"` + + // The name of the Stream Output. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Username used to login to the Microsoft SQL Server. Changing this forces a new resource to be created. Required if authentication_mode is ConnectionString. + User *string `json:"user,omitempty" tf:"user,omitempty"` +} + type OutputMSSQLObservation struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. @@ -136,6 +157,18 @@ type OutputMSSQLParameters struct { type OutputMSSQLSpec struct { v1.ResourceSpec `json:",inline"` ForProvider OutputMSSQLParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OutputMSSQLInitParameters `json:"initProvider,omitempty"` } // OutputMSSQLStatus defines the observed state of OutputMSSQL. @@ -156,8 +189,8 @@ type OutputMSSQLStatus struct { type OutputMSSQL struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.database)",message="database is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.database) || has(self.initProvider.database)",message="database is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec OutputMSSQLSpec `json:"spec"` Status OutputMSSQLStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputpowerbi_types.go b/apis/streamanalytics/v1beta1/zz_outputpowerbi_types.go index 39a2badee..f39c430a1 100755 --- a/apis/streamanalytics/v1beta1/zz_outputpowerbi_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputpowerbi_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OutputPowerBIInitParameters struct { + + // The name of the Power BI dataset. + DataSet *string `json:"dataset,omitempty" tf:"dataset,omitempty"` + + // The ID of the Power BI group, this must be a valid UUID. + GroupID *string `json:"groupId,omitempty" tf:"group_id,omitempty"` + + // The name of the Power BI group. Use this property to help remember which specific Power BI group id was used. + GroupName *string `json:"groupName,omitempty" tf:"group_name,omitempty"` + + // The name of the Power BI table under the specified dataset. + Table *string `json:"table,omitempty" tf:"table,omitempty"` + + // The user display name of the user that was used to obtain the refresh token. + TokenUserDisplayName *string `json:"tokenUserDisplayName,omitempty" tf:"token_user_display_name,omitempty"` + + // The user principal name (UPN) of the user that was used to obtain the refresh token. + TokenUserPrincipalName *string `json:"tokenUserPrincipalName,omitempty" tf:"token_user_principal_name,omitempty"` +} + type OutputPowerBIObservation struct { // The name of the Power BI dataset. @@ -84,6 +105,18 @@ type OutputPowerBIParameters struct { type OutputPowerBISpec struct { v1.ResourceSpec `json:",inline"` ForProvider OutputPowerBIParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OutputPowerBIInitParameters `json:"initProvider,omitempty"` } // OutputPowerBIStatus defines the observed state of OutputPowerBI. @@ -104,10 +137,10 @@ type OutputPowerBIStatus struct { type OutputPowerBI struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dataset)",message="dataset is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.groupId)",message="groupId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.groupName)",message="groupName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.table)",message="table is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dataset) || has(self.initProvider.dataset)",message="dataset is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.groupId) || has(self.initProvider.groupId)",message="groupId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.groupName) || has(self.initProvider.groupName)",message="groupName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.table) || has(self.initProvider.table)",message="table is a required parameter" Spec OutputPowerBISpec `json:"spec"` Status OutputPowerBIStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputservicebusqueue_types.go b/apis/streamanalytics/v1beta1/zz_outputservicebusqueue_types.go index fa9f367b2..0313a9b33 100755 --- a/apis/streamanalytics/v1beta1/zz_outputservicebusqueue_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputservicebusqueue_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OutputServiceBusQueueInitParameters struct { + + // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` + + // The name of the Stream Output. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A list of property columns to add to the Service Bus Queue output. + PropertyColumns []*string `json:"propertyColumns,omitempty" tf:"property_columns,omitempty"` + + // A serialization block as defined below. + Serialization []OutputServiceBusQueueSerializationInitParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` + + // The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. Required if authentication_mode is ConnectionString. + SharedAccessPolicyName *string `json:"sharedAccessPolicyName,omitempty" tf:"shared_access_policy_name,omitempty"` + + // A key-value pair of system property columns that will be attached to the outgoing messages for the Service Bus Queue Output. + SystemPropertyColumns map[string]*string `json:"systemPropertyColumns,omitempty" tf:"system_property_columns,omitempty"` +} + type OutputServiceBusQueueObservation struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. @@ -132,6 +153,21 @@ type OutputServiceBusQueueParameters struct { SystemPropertyColumns map[string]*string `json:"systemPropertyColumns,omitempty" tf:"system_property_columns,omitempty"` } +type OutputServiceBusQueueSerializationInitParameters struct { + + // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` + + // Specifies the format of the JSON the output will be written in. Possible values are Array and LineSeparated. + Format *string `json:"format,omitempty" tf:"format,omitempty"` + + // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type OutputServiceBusQueueSerializationObservation struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. @@ -162,14 +198,26 @@ type OutputServiceBusQueueSerializationParameters struct { Format *string `json:"format,omitempty" tf:"format,omitempty"` // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // OutputServiceBusQueueSpec defines the desired state of OutputServiceBusQueue type OutputServiceBusQueueSpec struct { v1.ResourceSpec `json:",inline"` ForProvider OutputServiceBusQueueParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OutputServiceBusQueueInitParameters `json:"initProvider,omitempty"` } // OutputServiceBusQueueStatus defines the observed state of OutputServiceBusQueue. @@ -190,8 +238,8 @@ type OutputServiceBusQueueStatus struct { type OutputServiceBusQueue struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization)",message="serialization is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serialization) || has(self.initProvider.serialization)",message="serialization is a required parameter" Spec OutputServiceBusQueueSpec `json:"spec"` Status OutputServiceBusQueueStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputservicebustopic_types.go b/apis/streamanalytics/v1beta1/zz_outputservicebustopic_types.go index a92549820..b6a39f9f1 100755 --- a/apis/streamanalytics/v1beta1/zz_outputservicebustopic_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputservicebustopic_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OutputServiceBusTopicInitParameters struct { + + // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` + + // The name of the Stream Output. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A list of property columns to add to the Service Bus Topic output. + PropertyColumns []*string `json:"propertyColumns,omitempty" tf:"property_columns,omitempty"` + + // A serialization block as defined below. + Serialization []OutputServiceBusTopicSerializationInitParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` + + // The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. Required if authentication_mode is ConnectionString. + SharedAccessPolicyName *string `json:"sharedAccessPolicyName,omitempty" tf:"shared_access_policy_name,omitempty"` + + // A key-value pair of system property columns that will be attached to the outgoing messages for the Service Bus Topic Output. + SystemPropertyColumns map[string]*string `json:"systemPropertyColumns,omitempty" tf:"system_property_columns,omitempty"` +} + type OutputServiceBusTopicObservation struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. @@ -132,6 +153,21 @@ type OutputServiceBusTopicParameters struct { TopicNameSelector *v1.Selector `json:"topicNameSelector,omitempty" tf:"-"` } +type OutputServiceBusTopicSerializationInitParameters struct { + + // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` + + // Specifies the format of the JSON the output will be written in. Possible values are Array and LineSeparated. + Format *string `json:"format,omitempty" tf:"format,omitempty"` + + // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type OutputServiceBusTopicSerializationObservation struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. @@ -162,14 +198,26 @@ type OutputServiceBusTopicSerializationParameters struct { Format *string `json:"format,omitempty" tf:"format,omitempty"` // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // OutputServiceBusTopicSpec defines the desired state of OutputServiceBusTopic type OutputServiceBusTopicSpec struct { v1.ResourceSpec `json:",inline"` ForProvider OutputServiceBusTopicParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OutputServiceBusTopicInitParameters `json:"initProvider,omitempty"` } // OutputServiceBusTopicStatus defines the observed state of OutputServiceBusTopic. @@ -190,8 +238,8 @@ type OutputServiceBusTopicStatus struct { type OutputServiceBusTopic struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization)",message="serialization is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serialization) || has(self.initProvider.serialization)",message="serialization is a required parameter" Spec OutputServiceBusTopicSpec `json:"spec"` Status OutputServiceBusTopicStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputsynapse_types.go b/apis/streamanalytics/v1beta1/zz_outputsynapse_types.go index 5161bb6f5..91cf67d31 100755 --- a/apis/streamanalytics/v1beta1/zz_outputsynapse_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputsynapse_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OutputSynapseInitParameters struct { + + // The name of the Azure SQL database. Changing this forces a new resource to be created. + Database *string `json:"database,omitempty" tf:"database,omitempty"` + + // The name of the SQL server containing the Azure SQL database. Changing this forces a new resource to be created. + Server *string `json:"server,omitempty" tf:"server,omitempty"` + + // The name of the table in the Azure SQL database. Changing this forces a new resource to be created. + Table *string `json:"table,omitempty" tf:"table,omitempty"` +} + type OutputSynapseObservation struct { // The name of the Azure SQL database. Changing this forces a new resource to be created. @@ -100,6 +112,18 @@ type OutputSynapseParameters struct { type OutputSynapseSpec struct { v1.ResourceSpec `json:",inline"` ForProvider OutputSynapseParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OutputSynapseInitParameters `json:"initProvider,omitempty"` } // OutputSynapseStatus defines the observed state of OutputSynapse. @@ -120,10 +144,10 @@ type OutputSynapseStatus struct { type OutputSynapse struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.database)",message="database is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.server)",message="server is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.table)",message="table is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.database) || has(self.initProvider.database)",message="database is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.server) || has(self.initProvider.server)",message="server is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.table) || has(self.initProvider.table)",message="table is a required parameter" Spec OutputSynapseSpec `json:"spec"` Status OutputSynapseStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputtable_types.go b/apis/streamanalytics/v1beta1/zz_outputtable_types.go index 57738d073..932c9b664 100755 --- a/apis/streamanalytics/v1beta1/zz_outputtable_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputtable_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type OutputTableInitParameters struct { + + // The number of records for a batch operation. Must be between 1 and 100. + BatchSize *float64 `json:"batchSize,omitempty" tf:"batch_size,omitempty"` + + // A list of the column names to be removed from output event entities. + ColumnsToRemove []*string `json:"columnsToRemove,omitempty" tf:"columns_to_remove,omitempty"` + + // The name of the output column that contains the partition key. + PartitionKey *string `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` + + // The name of the output column that contains the row key. + RowKey *string `json:"rowKey,omitempty" tf:"row_key,omitempty"` +} + type OutputTableObservation struct { // The number of records for a batch operation. Must be between 1 and 100. @@ -114,6 +129,18 @@ type OutputTableParameters struct { type OutputTableSpec struct { v1.ResourceSpec `json:",inline"` ForProvider OutputTableParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider OutputTableInitParameters `json:"initProvider,omitempty"` } // OutputTableStatus defines the observed state of OutputTable. @@ -134,10 +161,10 @@ type OutputTableStatus struct { type OutputTable struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.batchSize)",message="batchSize is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partitionKey)",message="partitionKey is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rowKey)",message="rowKey is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountKeySecretRef)",message="storageAccountKeySecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.batchSize) || has(self.initProvider.batchSize)",message="batchSize is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.partitionKey) || has(self.initProvider.partitionKey)",message="partitionKey is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.rowKey) || has(self.initProvider.rowKey)",message="rowKey is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageAccountKeySecretRef)",message="storageAccountKeySecretRef is a required parameter" Spec OutputTableSpec `json:"spec"` Status OutputTableStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_referenceinputblob_types.go b/apis/streamanalytics/v1beta1/zz_referenceinputblob_types.go index 1c3768633..e42fa0d2c 100755 --- a/apis/streamanalytics/v1beta1/zz_referenceinputblob_types.go +++ b/apis/streamanalytics/v1beta1/zz_referenceinputblob_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ReferenceInputBlobInitParameters struct { + + // The authentication mode for the Stream Analytics Reference Input. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` + + // The date format. Wherever {date} appears in path_pattern, the value of this property is used as the date format instead. + DateFormat *string `json:"dateFormat,omitempty" tf:"date_format,omitempty"` + + // The name of the Reference Input Blob. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The blob path pattern. Not a regular expression. It represents a pattern against which blob names will be matched to determine whether or not they should be included as input or output to the job. + PathPattern *string `json:"pathPattern,omitempty" tf:"path_pattern,omitempty"` + + // A serialization block as defined below. + Serialization []ReferenceInputBlobSerializationInitParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` + + // The time format. Wherever {time} appears in path_pattern, the value of this property is used as the time format instead. + TimeFormat *string `json:"timeFormat,omitempty" tf:"time_format,omitempty"` +} + type ReferenceInputBlobObservation struct { // The authentication mode for the Stream Analytics Reference Input. Possible values are Msi and ConnectionString. Defaults to ConnectionString. @@ -132,6 +153,18 @@ type ReferenceInputBlobParameters struct { TimeFormat *string `json:"timeFormat,omitempty" tf:"time_format,omitempty"` } +type ReferenceInputBlobSerializationInitParameters struct { + + // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` + + // The serialization format used for the reference data. Possible values are Avro, Csv and Json. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ReferenceInputBlobSerializationObservation struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. @@ -155,14 +188,26 @@ type ReferenceInputBlobSerializationParameters struct { FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // The serialization format used for the reference data. Possible values are Avro, Csv and Json. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // ReferenceInputBlobSpec defines the desired state of ReferenceInputBlob type ReferenceInputBlobSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ReferenceInputBlobParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ReferenceInputBlobInitParameters `json:"initProvider,omitempty"` } // ReferenceInputBlobStatus defines the observed state of ReferenceInputBlob. @@ -183,11 +228,11 @@ type ReferenceInputBlobStatus struct { type ReferenceInputBlob struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dateFormat)",message="dateFormat is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.pathPattern)",message="pathPattern is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization)",message="serialization is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timeFormat)",message="timeFormat is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dateFormat) || has(self.initProvider.dateFormat)",message="dateFormat is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.pathPattern) || has(self.initProvider.pathPattern)",message="pathPattern is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serialization) || has(self.initProvider.serialization)",message="serialization is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.timeFormat) || has(self.initProvider.timeFormat)",message="timeFormat is a required parameter" Spec ReferenceInputBlobSpec `json:"spec"` Status ReferenceInputBlobStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_referenceinputmssql_types.go b/apis/streamanalytics/v1beta1/zz_referenceinputmssql_types.go index f6c9ca47f..246033062 100755 --- a/apis/streamanalytics/v1beta1/zz_referenceinputmssql_types.go +++ b/apis/streamanalytics/v1beta1/zz_referenceinputmssql_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ReferenceInputMSSQLInitParameters struct { + + // The query used to retrieve incremental changes in the reference data from the MS SQL database. Cannot be set when refresh_type is Static. + DeltaSnapshotQuery *string `json:"deltaSnapshotQuery,omitempty" tf:"delta_snapshot_query,omitempty"` + + // The query used to retrieve the reference data from the MS SQL database. + FullSnapshotQuery *string `json:"fullSnapshotQuery,omitempty" tf:"full_snapshot_query,omitempty"` + + // The frequency in hh:mm:ss with which the reference data should be retrieved from the MS SQL database e.g. 00:20:00 for every 20 minutes. Must be set when refresh_type is RefreshPeriodicallyWithFull or RefreshPeriodicallyWithDelta. + RefreshIntervalDuration *string `json:"refreshIntervalDuration,omitempty" tf:"refresh_interval_duration,omitempty"` + + // Defines whether and how the reference data should be refreshed. Accepted values are Static, RefreshPeriodicallyWithFull and RefreshPeriodicallyWithDelta. + RefreshType *string `json:"refreshType,omitempty" tf:"refresh_type,omitempty"` + + // The name of the table in the Azure SQL database. + Table *string `json:"table,omitempty" tf:"table,omitempty"` + + // The username to connect to the MS SQL database. + Username *string `json:"username,omitempty" tf:"username,omitempty"` +} + type ReferenceInputMSSQLObservation struct { // The MS SQL database name where the reference data exists. @@ -128,6 +149,18 @@ type ReferenceInputMSSQLParameters struct { type ReferenceInputMSSQLSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ReferenceInputMSSQLParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ReferenceInputMSSQLInitParameters `json:"initProvider,omitempty"` } // ReferenceInputMSSQLStatus defines the observed state of ReferenceInputMSSQL. @@ -148,10 +181,10 @@ type ReferenceInputMSSQLStatus struct { type ReferenceInputMSSQL struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.fullSnapshotQuery)",message="fullSnapshotQuery is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.refreshType)",message="refreshType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username)",message="username is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.fullSnapshotQuery) || has(self.initProvider.fullSnapshotQuery)",message="fullSnapshotQuery is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)",message="passwordSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.refreshType) || has(self.initProvider.refreshType)",message="refreshType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.username) || has(self.initProvider.username)",message="username is a required parameter" Spec ReferenceInputMSSQLSpec `json:"spec"` Status ReferenceInputMSSQLStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_streaminputblob_types.go b/apis/streamanalytics/v1beta1/zz_streaminputblob_types.go index 43edbfa72..15d8e3b45 100755 --- a/apis/streamanalytics/v1beta1/zz_streaminputblob_types.go +++ b/apis/streamanalytics/v1beta1/zz_streaminputblob_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type StreamInputBlobInitParameters struct { + + // The date format. Wherever {date} appears in path_pattern, the value of this property is used as the date format instead. + DateFormat *string `json:"dateFormat,omitempty" tf:"date_format,omitempty"` + + // The name of the Stream Input Blob. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The blob path pattern. Not a regular expression. It represents a pattern against which blob names will be matched to determine whether or not they should be included as input or output to the job. + PathPattern *string `json:"pathPattern,omitempty" tf:"path_pattern,omitempty"` + + // A serialization block as defined below. + Serialization []StreamInputBlobSerializationInitParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` + + // The time format. Wherever {time} appears in path_pattern, the value of this property is used as the time format instead. + TimeFormat *string `json:"timeFormat,omitempty" tf:"time_format,omitempty"` +} + type StreamInputBlobObservation struct { // The date format. Wherever {date} appears in path_pattern, the value of this property is used as the date format instead. @@ -125,6 +143,18 @@ type StreamInputBlobParameters struct { TimeFormat *string `json:"timeFormat,omitempty" tf:"time_format,omitempty"` } +type StreamInputBlobSerializationInitParameters struct { + + // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` + + // The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type StreamInputBlobSerializationObservation struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. @@ -148,14 +178,26 @@ type StreamInputBlobSerializationParameters struct { FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // StreamInputBlobSpec defines the desired state of StreamInputBlob type StreamInputBlobSpec struct { v1.ResourceSpec `json:",inline"` ForProvider StreamInputBlobParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider StreamInputBlobInitParameters `json:"initProvider,omitempty"` } // StreamInputBlobStatus defines the observed state of StreamInputBlob. @@ -176,12 +218,12 @@ type StreamInputBlobStatus struct { type StreamInputBlob struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dateFormat)",message="dateFormat is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.pathPattern)",message="pathPattern is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization)",message="serialization is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountKeySecretRef)",message="storageAccountKeySecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timeFormat)",message="timeFormat is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dateFormat) || has(self.initProvider.dateFormat)",message="dateFormat is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.pathPattern) || has(self.initProvider.pathPattern)",message="pathPattern is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serialization) || has(self.initProvider.serialization)",message="serialization is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageAccountKeySecretRef)",message="storageAccountKeySecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.timeFormat) || has(self.initProvider.timeFormat)",message="timeFormat is a required parameter" Spec StreamInputBlobSpec `json:"spec"` Status StreamInputBlobStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_streaminputeventhub_types.go b/apis/streamanalytics/v1beta1/zz_streaminputeventhub_types.go index d4d1a8a0c..4b211cf6f 100755 --- a/apis/streamanalytics/v1beta1/zz_streaminputeventhub_types.go +++ b/apis/streamanalytics/v1beta1/zz_streaminputeventhub_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type StreamInputEventHubInitParameters struct { + + // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` + + // The name of the Stream Input EventHub. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The property the input Event Hub has been partitioned by. + PartitionKey *string `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` + + // A serialization block as defined below. + Serialization []StreamInputEventHubSerializationInitParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` + + // The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. + SharedAccessPolicyName *string `json:"sharedAccessPolicyName,omitempty" tf:"shared_access_policy_name,omitempty"` +} + type StreamInputEventHubObservation struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. @@ -141,6 +159,18 @@ type StreamInputEventHubParameters struct { StreamAnalyticsJobNameSelector *v1.Selector `json:"streamAnalyticsJobNameSelector,omitempty" tf:"-"` } +type StreamInputEventHubSerializationInitParameters struct { + + // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` + + // The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type StreamInputEventHubSerializationObservation struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. @@ -164,14 +194,26 @@ type StreamInputEventHubSerializationParameters struct { FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // StreamInputEventHubSpec defines the desired state of StreamInputEventHub type StreamInputEventHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider StreamInputEventHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider StreamInputEventHubInitParameters `json:"initProvider,omitempty"` } // StreamInputEventHubStatus defines the observed state of StreamInputEventHub. @@ -192,8 +234,8 @@ type StreamInputEventHubStatus struct { type StreamInputEventHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization)",message="serialization is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serialization) || has(self.initProvider.serialization)",message="serialization is a required parameter" Spec StreamInputEventHubSpec `json:"spec"` Status StreamInputEventHubStatus `json:"status,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_streaminputiothub_types.go b/apis/streamanalytics/v1beta1/zz_streaminputiothub_types.go index 1bec8e73a..39ac97957 100755 --- a/apis/streamanalytics/v1beta1/zz_streaminputiothub_types.go +++ b/apis/streamanalytics/v1beta1/zz_streaminputiothub_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type StreamInputIOTHubInitParameters struct { + + // The IoT Hub endpoint to connect to (ie. messages/events, messages/operationsMonitoringEvents, etc.). + Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` + + // The name of the Stream Input IoTHub. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A serialization block as defined below. + Serialization []StreamInputIOTHubSerializationInitParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` + + // The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. + SharedAccessPolicyName *string `json:"sharedAccessPolicyName,omitempty" tf:"shared_access_policy_name,omitempty"` +} + type StreamInputIOTHubObservation struct { // The IoT Hub endpoint to connect to (ie. messages/events, messages/operationsMonitoringEvents, etc.). @@ -118,6 +133,18 @@ type StreamInputIOTHubParameters struct { StreamAnalyticsJobNameSelector *v1.Selector `json:"streamAnalyticsJobNameSelector,omitempty" tf:"-"` } +type StreamInputIOTHubSerializationInitParameters struct { + + // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` + + // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` + + // The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type StreamInputIOTHubSerializationObservation struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. @@ -141,14 +168,26 @@ type StreamInputIOTHubSerializationParameters struct { FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // StreamInputIOTHubSpec defines the desired state of StreamInputIOTHub type StreamInputIOTHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider StreamInputIOTHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider StreamInputIOTHubInitParameters `json:"initProvider,omitempty"` } // StreamInputIOTHubStatus defines the observed state of StreamInputIOTHub. @@ -169,11 +208,11 @@ type StreamInputIOTHubStatus struct { type StreamInputIOTHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endpoint)",message="endpoint is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization)",message="serialization is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sharedAccessPolicyKeySecretRef)",message="sharedAccessPolicyKeySecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sharedAccessPolicyName)",message="sharedAccessPolicyName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endpoint) || has(self.initProvider.endpoint)",message="endpoint is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.serialization) || has(self.initProvider.serialization)",message="serialization is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sharedAccessPolicyKeySecretRef)",message="sharedAccessPolicyKeySecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sharedAccessPolicyName) || has(self.initProvider.sharedAccessPolicyName)",message="sharedAccessPolicyName is a required parameter" Spec StreamInputIOTHubSpec `json:"spec"` Status StreamInputIOTHubStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_firewallrule_types.go b/apis/synapse/v1beta1/zz_firewallrule_types.go index 9e02d6345..d9b0be733 100755 --- a/apis/synapse/v1beta1/zz_firewallrule_types.go +++ b/apis/synapse/v1beta1/zz_firewallrule_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FirewallRuleInitParameters struct { + + // The ending IP address to allow through the firewall for this rule. + EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` + + // The starting IP address to allow through the firewall for this rule. + StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` +} + type FirewallRuleObservation struct { // The ending IP address to allow through the firewall for this rule. @@ -57,6 +66,18 @@ type FirewallRuleParameters struct { type FirewallRuleSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FirewallRuleParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FirewallRuleInitParameters `json:"initProvider,omitempty"` } // FirewallRuleStatus defines the observed state of FirewallRule. @@ -77,8 +98,8 @@ type FirewallRuleStatus struct { type FirewallRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress)",message="endIpAddress is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress)",message="startIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.endIpAddress) || has(self.initProvider.endIpAddress)",message="endIpAddress is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.startIpAddress) || has(self.initProvider.startIpAddress)",message="startIpAddress is a required parameter" Spec FirewallRuleSpec `json:"spec"` Status FirewallRuleStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_generated.deepcopy.go b/apis/synapse/v1beta1/zz_generated.deepcopy.go index dc79f3cd1..478ec70e8 100644 --- a/apis/synapse/v1beta1/zz_generated.deepcopy.go +++ b/apis/synapse/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,36 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AADAdminInitParameters) DeepCopyInto(out *AADAdminInitParameters) { + *out = *in + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = new(string) + **out = **in + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AADAdminInitParameters. +func (in *AADAdminInitParameters) DeepCopy() *AADAdminInitParameters { + if in == nil { + return nil + } + out := new(AADAdminInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AADAdminObservation) DeepCopyInto(out *AADAdminObservation) { *out = *in @@ -74,6 +104,26 @@ func (in *AADAdminParameters) DeepCopy() *AADAdminParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoPauseInitParameters) DeepCopyInto(out *AutoPauseInitParameters) { + *out = *in + if in.DelayInMinutes != nil { + in, out := &in.DelayInMinutes, &out.DelayInMinutes + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoPauseInitParameters. +func (in *AutoPauseInitParameters) DeepCopy() *AutoPauseInitParameters { + if in == nil { + return nil + } + out := new(AutoPauseInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoPauseObservation) DeepCopyInto(out *AutoPauseObservation) { *out = *in @@ -114,6 +164,31 @@ func (in *AutoPauseParameters) DeepCopy() *AutoPauseParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoScaleInitParameters) DeepCopyInto(out *AutoScaleInitParameters) { + *out = *in + if in.MaxNodeCount != nil { + in, out := &in.MaxNodeCount, &out.MaxNodeCount + *out = new(float64) + **out = **in + } + if in.MinNodeCount != nil { + in, out := &in.MinNodeCount, &out.MinNodeCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScaleInitParameters. +func (in *AutoScaleInitParameters) DeepCopy() *AutoScaleInitParameters { + if in == nil { + return nil + } + out := new(AutoScaleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoScaleObservation) DeepCopyInto(out *AutoScaleObservation) { *out = *in @@ -164,6 +239,56 @@ func (in *AutoScaleParameters) DeepCopy() *AutoScaleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureDevopsRepoInitParameters) DeepCopyInto(out *AzureDevopsRepoInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.BranchName != nil { + in, out := &in.BranchName, &out.BranchName + *out = new(string) + **out = **in + } + if in.LastCommitID != nil { + in, out := &in.LastCommitID, &out.LastCommitID + *out = new(string) + **out = **in + } + if in.ProjectName != nil { + in, out := &in.ProjectName, &out.ProjectName + *out = new(string) + **out = **in + } + if in.RepositoryName != nil { + in, out := &in.RepositoryName, &out.RepositoryName + *out = new(string) + **out = **in + } + if in.RootFolder != nil { + in, out := &in.RootFolder, &out.RootFolder + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureDevopsRepoInitParameters. +func (in *AzureDevopsRepoInitParameters) DeepCopy() *AzureDevopsRepoInitParameters { + if in == nil { + return nil + } + out := new(AzureDevopsRepoInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureDevopsRepoObservation) DeepCopyInto(out *AzureDevopsRepoObservation) { *out = *in @@ -264,6 +389,26 @@ func (in *AzureDevopsRepoParameters) DeepCopy() *AzureDevopsRepoParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomerManagedKeyInitParameters) DeepCopyInto(out *CustomerManagedKeyInitParameters) { + *out = *in + if in.KeyName != nil { + in, out := &in.KeyName, &out.KeyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomerManagedKeyInitParameters. +func (in *CustomerManagedKeyInitParameters) DeepCopy() *CustomerManagedKeyInitParameters { + if in == nil { + return nil + } + out := new(CustomerManagedKeyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomerManagedKeyObservation) DeepCopyInto(out *CustomerManagedKeyObservation) { *out = *in @@ -351,6 +496,31 @@ func (in *FirewallRule) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallRuleInitParameters) DeepCopyInto(out *FirewallRuleInitParameters) { + *out = *in + if in.EndIPAddress != nil { + in, out := &in.EndIPAddress, &out.EndIPAddress + *out = new(string) + **out = **in + } + if in.StartIPAddress != nil { + in, out := &in.StartIPAddress, &out.StartIPAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallRuleInitParameters. +func (in *FirewallRuleInitParameters) DeepCopy() *FirewallRuleInitParameters { + if in == nil { + return nil + } + out := new(FirewallRuleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FirewallRuleList) DeepCopyInto(out *FirewallRuleList) { *out = *in @@ -463,6 +633,7 @@ func (in *FirewallRuleSpec) DeepCopyInto(out *FirewallRuleSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallRuleSpec. @@ -492,6 +663,51 @@ func (in *FirewallRuleStatus) DeepCopy() *FirewallRuleStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GithubRepoInitParameters) DeepCopyInto(out *GithubRepoInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.BranchName != nil { + in, out := &in.BranchName, &out.BranchName + *out = new(string) + **out = **in + } + if in.GitURL != nil { + in, out := &in.GitURL, &out.GitURL + *out = new(string) + **out = **in + } + if in.LastCommitID != nil { + in, out := &in.LastCommitID, &out.LastCommitID + *out = new(string) + **out = **in + } + if in.RepositoryName != nil { + in, out := &in.RepositoryName, &out.RepositoryName + *out = new(string) + **out = **in + } + if in.RootFolder != nil { + in, out := &in.RootFolder, &out.RootFolder + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GithubRepoInitParameters. +func (in *GithubRepoInitParameters) DeepCopy() *GithubRepoInitParameters { + if in == nil { + return nil + } + out := new(GithubRepoInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GithubRepoObservation) DeepCopyInto(out *GithubRepoObservation) { *out = *in @@ -582,6 +798,37 @@ func (in *GithubRepoParameters) DeepCopy() *GithubRepoParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -681,6 +928,46 @@ func (in *IntegrationRuntimeAzure) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeAzureInitParameters) DeepCopyInto(out *IntegrationRuntimeAzureInitParameters) { + *out = *in + if in.ComputeType != nil { + in, out := &in.ComputeType, &out.ComputeType + *out = new(string) + **out = **in + } + if in.CoreCount != nil { + in, out := &in.CoreCount, &out.CoreCount + *out = new(float64) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.TimeToLiveMin != nil { + in, out := &in.TimeToLiveMin, &out.TimeToLiveMin + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeAzureInitParameters. +func (in *IntegrationRuntimeAzureInitParameters) DeepCopy() *IntegrationRuntimeAzureInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeAzureInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntegrationRuntimeAzureList) DeepCopyInto(out *IntegrationRuntimeAzureList) { *out = *in @@ -823,6 +1110,7 @@ func (in *IntegrationRuntimeAzureSpec) DeepCopyInto(out *IntegrationRuntimeAzure *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeAzureSpec. @@ -853,13 +1141,43 @@ func (in *IntegrationRuntimeAzureStatus) DeepCopy() *IntegrationRuntimeAzureStat } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *IntegrationRuntimeObservation) DeepCopyInto(out *IntegrationRuntimeObservation) { +func (in *IntegrationRuntimeInitParameters) DeepCopyInto(out *IntegrationRuntimeInitParameters) { *out = *in - if in.Name != nil { - in, out := &in.Name, &out.Name - *out = new(string) - **out = **in - } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeInitParameters. +func (in *IntegrationRuntimeInitParameters) DeepCopy() *IntegrationRuntimeInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeObservation) DeepCopyInto(out *IntegrationRuntimeObservation) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } if in.Parameters != nil { in, out := &in.Parameters, &out.Parameters *out = make(map[string]*string, len(*in)) @@ -959,6 +1277,26 @@ func (in *IntegrationRuntimeSelfHosted) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IntegrationRuntimeSelfHostedInitParameters) DeepCopyInto(out *IntegrationRuntimeSelfHostedInitParameters) { + *out = *in + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeSelfHostedInitParameters. +func (in *IntegrationRuntimeSelfHostedInitParameters) DeepCopy() *IntegrationRuntimeSelfHostedInitParameters { + if in == nil { + return nil + } + out := new(IntegrationRuntimeSelfHostedInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IntegrationRuntimeSelfHostedList) DeepCopyInto(out *IntegrationRuntimeSelfHostedList) { *out = *in @@ -1071,6 +1409,7 @@ func (in *IntegrationRuntimeSelfHostedSpec) DeepCopyInto(out *IntegrationRuntime *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IntegrationRuntimeSelfHostedSpec. @@ -1100,6 +1439,31 @@ func (in *IntegrationRuntimeSelfHostedStatus) DeepCopy() *IntegrationRuntimeSelf return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LibraryRequirementInitParameters) DeepCopyInto(out *LibraryRequirementInitParameters) { + *out = *in + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = new(string) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LibraryRequirementInitParameters. +func (in *LibraryRequirementInitParameters) DeepCopy() *LibraryRequirementInitParameters { + if in == nil { + return nil + } + out := new(LibraryRequirementInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LibraryRequirementObservation) DeepCopyInto(out *LibraryRequirementObservation) { *out = *in @@ -1177,6 +1541,84 @@ func (in *LinkedService) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinkedServiceInitParameters) DeepCopyInto(out *LinkedServiceInitParameters) { + *out = *in + if in.AdditionalProperties != nil { + in, out := &in.AdditionalProperties, &out.AdditionalProperties + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Annotations != nil { + in, out := &in.Annotations, &out.Annotations + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.IntegrationRuntime != nil { + in, out := &in.IntegrationRuntime, &out.IntegrationRuntime + *out = make([]IntegrationRuntimeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.TypePropertiesJSON != nil { + in, out := &in.TypePropertiesJSON, &out.TypePropertiesJSON + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceInitParameters. +func (in *LinkedServiceInitParameters) DeepCopy() *LinkedServiceInitParameters { + if in == nil { + return nil + } + out := new(LinkedServiceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinkedServiceList) DeepCopyInto(out *LinkedServiceList) { *out = *in @@ -1395,6 +1837,7 @@ func (in *LinkedServiceSpec) DeepCopyInto(out *LinkedServiceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinkedServiceSpec. @@ -1451,6 +1894,31 @@ func (in *ManagedPrivateEndpoint) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ManagedPrivateEndpointInitParameters) DeepCopyInto(out *ManagedPrivateEndpointInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SubresourceName != nil { + in, out := &in.SubresourceName, &out.SubresourceName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedPrivateEndpointInitParameters. +func (in *ManagedPrivateEndpointInitParameters) DeepCopy() *ManagedPrivateEndpointInitParameters { + if in == nil { + return nil + } + out := new(ManagedPrivateEndpointInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ManagedPrivateEndpointList) DeepCopyInto(out *ManagedPrivateEndpointList) { *out = *in @@ -1583,6 +2051,7 @@ func (in *ManagedPrivateEndpointSpec) DeepCopyInto(out *ManagedPrivateEndpointSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedPrivateEndpointSpec. @@ -1639,6 +2108,41 @@ func (in *PrivateLinkHub) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateLinkHubInitParameters) DeepCopyInto(out *PrivateLinkHubInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkHubInitParameters. +func (in *PrivateLinkHubInitParameters) DeepCopy() *PrivateLinkHubInitParameters { + if in == nil { + return nil + } + out := new(PrivateLinkHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *PrivateLinkHubList) DeepCopyInto(out *PrivateLinkHubList) { *out = *in @@ -1771,6 +2275,7 @@ func (in *PrivateLinkHubSpec) DeepCopyInto(out *PrivateLinkHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkHubSpec. @@ -1800,6 +2305,42 @@ func (in *PrivateLinkHubStatus) DeepCopy() *PrivateLinkHubStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RecurringScansInitParameters) DeepCopyInto(out *RecurringScansInitParameters) { + *out = *in + if in.EmailSubscriptionAdminsEnabled != nil { + in, out := &in.EmailSubscriptionAdminsEnabled, &out.EmailSubscriptionAdminsEnabled + *out = new(bool) + **out = **in + } + if in.Emails != nil { + in, out := &in.Emails, &out.Emails + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecurringScansInitParameters. +func (in *RecurringScansInitParameters) DeepCopy() *RecurringScansInitParameters { + if in == nil { + return nil + } + out := new(RecurringScansInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RecurringScansObservation) DeepCopyInto(out *RecurringScansObservation) { *out = *in @@ -1872,6 +2413,31 @@ func (in *RecurringScansParameters) DeepCopy() *RecurringScansParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RestoreInitParameters) DeepCopyInto(out *RestoreInitParameters) { + *out = *in + if in.PointInTime != nil { + in, out := &in.PointInTime, &out.PointInTime + *out = new(string) + **out = **in + } + if in.SourceDatabaseID != nil { + in, out := &in.SourceDatabaseID, &out.SourceDatabaseID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreInitParameters. +func (in *RestoreInitParameters) DeepCopy() *RestoreInitParameters { + if in == nil { + return nil + } + out := new(RestoreInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RestoreObservation) DeepCopyInto(out *RestoreObservation) { *out = *in @@ -1950,16 +2516,46 @@ func (in *RoleAssignment) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *RoleAssignmentList) DeepCopyInto(out *RoleAssignmentList) { +func (in *RoleAssignmentInitParameters) DeepCopyInto(out *RoleAssignmentInitParameters) { *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]RoleAssignment, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } + if in.PrincipalID != nil { + in, out := &in.PrincipalID, &out.PrincipalID + *out = new(string) + **out = **in + } + if in.RoleName != nil { + in, out := &in.RoleName, &out.RoleName + *out = new(string) + **out = **in + } + if in.SynapseSparkPoolID != nil { + in, out := &in.SynapseSparkPoolID, &out.SynapseSparkPoolID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleAssignmentInitParameters. +func (in *RoleAssignmentInitParameters) DeepCopy() *RoleAssignmentInitParameters { + if in == nil { + return nil + } + out := new(RoleAssignmentInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RoleAssignmentList) DeepCopyInto(out *RoleAssignmentList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]RoleAssignment, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } } } @@ -2071,6 +2667,7 @@ func (in *RoleAssignmentSpec) DeepCopyInto(out *RoleAssignmentSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleAssignmentSpec. @@ -2100,6 +2697,36 @@ func (in *RoleAssignmentStatus) DeepCopy() *RoleAssignmentStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLAADAdminInitParameters) DeepCopyInto(out *SQLAADAdminInitParameters) { + *out = *in + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = new(string) + **out = **in + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLAADAdminInitParameters. +func (in *SQLAADAdminInitParameters) DeepCopy() *SQLAADAdminInitParameters { + if in == nil { + return nil + } + out := new(SQLAADAdminInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLAADAdminObservation) DeepCopyInto(out *SQLAADAdminObservation) { *out = *in @@ -2214,6 +2841,36 @@ func (in *SQLPoolExtendedAuditingPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLPoolExtendedAuditingPolicyInitParameters) DeepCopyInto(out *SQLPoolExtendedAuditingPolicyInitParameters) { + *out = *in + if in.LogMonitoringEnabled != nil { + in, out := &in.LogMonitoringEnabled, &out.LogMonitoringEnabled + *out = new(bool) + **out = **in + } + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.StorageAccountAccessKeyIsSecondary != nil { + in, out := &in.StorageAccountAccessKeyIsSecondary, &out.StorageAccountAccessKeyIsSecondary + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLPoolExtendedAuditingPolicyInitParameters. +func (in *SQLPoolExtendedAuditingPolicyInitParameters) DeepCopy() *SQLPoolExtendedAuditingPolicyInitParameters { + if in == nil { + return nil + } + out := new(SQLPoolExtendedAuditingPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLPoolExtendedAuditingPolicyList) DeepCopyInto(out *SQLPoolExtendedAuditingPolicyList) { *out = *in @@ -2361,6 +3018,7 @@ func (in *SQLPoolExtendedAuditingPolicySpec) DeepCopyInto(out *SQLPoolExtendedAu *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLPoolExtendedAuditingPolicySpec. @@ -2390,6 +3048,73 @@ func (in *SQLPoolExtendedAuditingPolicyStatus) DeepCopy() *SQLPoolExtendedAuditi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLPoolInitParameters) DeepCopyInto(out *SQLPoolInitParameters) { + *out = *in + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(string) + **out = **in + } + if in.DataEncrypted != nil { + in, out := &in.DataEncrypted, &out.DataEncrypted + *out = new(bool) + **out = **in + } + if in.GeoBackupPolicyEnabled != nil { + in, out := &in.GeoBackupPolicyEnabled, &out.GeoBackupPolicyEnabled + *out = new(bool) + **out = **in + } + if in.RecoveryDatabaseID != nil { + in, out := &in.RecoveryDatabaseID, &out.RecoveryDatabaseID + *out = new(string) + **out = **in + } + if in.Restore != nil { + in, out := &in.Restore, &out.Restore + *out = make([]RestoreInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLPoolInitParameters. +func (in *SQLPoolInitParameters) DeepCopy() *SQLPoolInitParameters { + if in == nil { + return nil + } + out := new(SQLPoolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLPoolList) DeepCopyInto(out *SQLPoolList) { *out = *in @@ -2608,6 +3333,58 @@ func (in *SQLPoolSecurityAlertPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLPoolSecurityAlertPolicyInitParameters) DeepCopyInto(out *SQLPoolSecurityAlertPolicyInitParameters) { + *out = *in + if in.DisabledAlerts != nil { + in, out := &in.DisabledAlerts, &out.DisabledAlerts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EmailAccountAdminsEnabled != nil { + in, out := &in.EmailAccountAdminsEnabled, &out.EmailAccountAdminsEnabled + *out = new(bool) + **out = **in + } + if in.EmailAddresses != nil { + in, out := &in.EmailAddresses, &out.EmailAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.PolicyState != nil { + in, out := &in.PolicyState, &out.PolicyState + *out = new(string) + **out = **in + } + if in.RetentionDays != nil { + in, out := &in.RetentionDays, &out.RetentionDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLPoolSecurityAlertPolicyInitParameters. +func (in *SQLPoolSecurityAlertPolicyInitParameters) DeepCopy() *SQLPoolSecurityAlertPolicyInitParameters { + if in == nil { + return nil + } + out := new(SQLPoolSecurityAlertPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLPoolSecurityAlertPolicyList) DeepCopyInto(out *SQLPoolSecurityAlertPolicyList) { *out = *in @@ -2799,6 +3576,7 @@ func (in *SQLPoolSecurityAlertPolicySpec) DeepCopyInto(out *SQLPoolSecurityAlert *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLPoolSecurityAlertPolicySpec. @@ -2833,6 +3611,7 @@ func (in *SQLPoolSpec) DeepCopyInto(out *SQLPoolSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLPoolSpec. @@ -2889,6 +3668,51 @@ func (in *SQLPoolWorkloadClassifier) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLPoolWorkloadClassifierInitParameters) DeepCopyInto(out *SQLPoolWorkloadClassifierInitParameters) { + *out = *in + if in.Context != nil { + in, out := &in.Context, &out.Context + *out = new(string) + **out = **in + } + if in.EndTime != nil { + in, out := &in.EndTime, &out.EndTime + *out = new(string) + **out = **in + } + if in.Importance != nil { + in, out := &in.Importance, &out.Importance + *out = new(string) + **out = **in + } + if in.Label != nil { + in, out := &in.Label, &out.Label + *out = new(string) + **out = **in + } + if in.MemberName != nil { + in, out := &in.MemberName, &out.MemberName + *out = new(string) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLPoolWorkloadClassifierInitParameters. +func (in *SQLPoolWorkloadClassifierInitParameters) DeepCopy() *SQLPoolWorkloadClassifierInitParameters { + if in == nil { + return nil + } + out := new(SQLPoolWorkloadClassifierInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLPoolWorkloadClassifierList) DeepCopyInto(out *SQLPoolWorkloadClassifierList) { *out = *in @@ -3041,6 +3865,7 @@ func (in *SQLPoolWorkloadClassifierSpec) DeepCopyInto(out *SQLPoolWorkloadClassi *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLPoolWorkloadClassifierSpec. @@ -3097,6 +3922,51 @@ func (in *SQLPoolWorkloadGroup) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SQLPoolWorkloadGroupInitParameters) DeepCopyInto(out *SQLPoolWorkloadGroupInitParameters) { + *out = *in + if in.Importance != nil { + in, out := &in.Importance, &out.Importance + *out = new(string) + **out = **in + } + if in.MaxResourcePercent != nil { + in, out := &in.MaxResourcePercent, &out.MaxResourcePercent + *out = new(float64) + **out = **in + } + if in.MaxResourcePercentPerRequest != nil { + in, out := &in.MaxResourcePercentPerRequest, &out.MaxResourcePercentPerRequest + *out = new(float64) + **out = **in + } + if in.MinResourcePercent != nil { + in, out := &in.MinResourcePercent, &out.MinResourcePercent + *out = new(float64) + **out = **in + } + if in.MinResourcePercentPerRequest != nil { + in, out := &in.MinResourcePercentPerRequest, &out.MinResourcePercentPerRequest + *out = new(float64) + **out = **in + } + if in.QueryExecutionTimeoutInSeconds != nil { + in, out := &in.QueryExecutionTimeoutInSeconds, &out.QueryExecutionTimeoutInSeconds + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLPoolWorkloadGroupInitParameters. +func (in *SQLPoolWorkloadGroupInitParameters) DeepCopy() *SQLPoolWorkloadGroupInitParameters { + if in == nil { + return nil + } + out := new(SQLPoolWorkloadGroupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SQLPoolWorkloadGroupList) DeepCopyInto(out *SQLPoolWorkloadGroupList) { *out = *in @@ -3249,6 +4119,7 @@ func (in *SQLPoolWorkloadGroupSpec) DeepCopyInto(out *SQLPoolWorkloadGroupSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SQLPoolWorkloadGroupSpec. @@ -3278,6 +4149,31 @@ func (in *SQLPoolWorkloadGroupStatus) DeepCopy() *SQLPoolWorkloadGroupStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkConfigInitParameters) DeepCopyInto(out *SparkConfigInitParameters) { + *out = *in + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = new(string) + **out = **in + } + if in.Filename != nil { + in, out := &in.Filename, &out.Filename + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkConfigInitParameters. +func (in *SparkConfigInitParameters) DeepCopy() *SparkConfigInitParameters { + if in == nil { + return nil + } + out := new(SparkConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkConfigObservation) DeepCopyInto(out *SparkConfigObservation) { *out = *in @@ -3355,6 +4251,124 @@ func (in *SparkPool) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SparkPoolInitParameters) DeepCopyInto(out *SparkPoolInitParameters) { + *out = *in + if in.AutoPause != nil { + in, out := &in.AutoPause, &out.AutoPause + *out = make([]AutoPauseInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoScale != nil { + in, out := &in.AutoScale, &out.AutoScale + *out = make([]AutoScaleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CacheSize != nil { + in, out := &in.CacheSize, &out.CacheSize + *out = new(float64) + **out = **in + } + if in.ComputeIsolationEnabled != nil { + in, out := &in.ComputeIsolationEnabled, &out.ComputeIsolationEnabled + *out = new(bool) + **out = **in + } + if in.DynamicExecutorAllocationEnabled != nil { + in, out := &in.DynamicExecutorAllocationEnabled, &out.DynamicExecutorAllocationEnabled + *out = new(bool) + **out = **in + } + if in.LibraryRequirement != nil { + in, out := &in.LibraryRequirement, &out.LibraryRequirement + *out = make([]LibraryRequirementInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MaxExecutors != nil { + in, out := &in.MaxExecutors, &out.MaxExecutors + *out = new(float64) + **out = **in + } + if in.MinExecutors != nil { + in, out := &in.MinExecutors, &out.MinExecutors + *out = new(float64) + **out = **in + } + if in.NodeCount != nil { + in, out := &in.NodeCount, &out.NodeCount + *out = new(float64) + **out = **in + } + if in.NodeSize != nil { + in, out := &in.NodeSize, &out.NodeSize + *out = new(string) + **out = **in + } + if in.NodeSizeFamily != nil { + in, out := &in.NodeSizeFamily, &out.NodeSizeFamily + *out = new(string) + **out = **in + } + if in.SessionLevelPackagesEnabled != nil { + in, out := &in.SessionLevelPackagesEnabled, &out.SessionLevelPackagesEnabled + *out = new(bool) + **out = **in + } + if in.SparkConfig != nil { + in, out := &in.SparkConfig, &out.SparkConfig + *out = make([]SparkConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SparkEventsFolder != nil { + in, out := &in.SparkEventsFolder, &out.SparkEventsFolder + *out = new(string) + **out = **in + } + if in.SparkLogFolder != nil { + in, out := &in.SparkLogFolder, &out.SparkLogFolder + *out = new(string) + **out = **in + } + if in.SparkVersion != nil { + in, out := &in.SparkVersion, &out.SparkVersion + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkPoolInitParameters. +func (in *SparkPoolInitParameters) DeepCopy() *SparkPoolInitParameters { + if in == nil { + return nil + } + out := new(SparkPoolInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SparkPoolList) DeepCopyInto(out *SparkPoolList) { *out = *in @@ -3653,6 +4667,7 @@ func (in *SparkPoolSpec) DeepCopyInto(out *SparkPoolSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SparkPoolSpec. @@ -3736,6 +4751,36 @@ func (in *WorkspaceAADAdmin) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceAADAdminInitParameters) DeepCopyInto(out *WorkspaceAADAdminInitParameters) { + *out = *in + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = new(string) + **out = **in + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceAADAdminInitParameters. +func (in *WorkspaceAADAdminInitParameters) DeepCopy() *WorkspaceAADAdminInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceAADAdminInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceAADAdminList) DeepCopyInto(out *WorkspaceAADAdminList) { *out = *in @@ -3858,6 +4903,7 @@ func (in *WorkspaceAADAdminSpec) DeepCopyInto(out *WorkspaceAADAdminSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceAADAdminSpec. @@ -3914,6 +4960,36 @@ func (in *WorkspaceExtendedAuditingPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceExtendedAuditingPolicyInitParameters) DeepCopyInto(out *WorkspaceExtendedAuditingPolicyInitParameters) { + *out = *in + if in.LogMonitoringEnabled != nil { + in, out := &in.LogMonitoringEnabled, &out.LogMonitoringEnabled + *out = new(bool) + **out = **in + } + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.StorageAccountAccessKeyIsSecondary != nil { + in, out := &in.StorageAccountAccessKeyIsSecondary, &out.StorageAccountAccessKeyIsSecondary + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceExtendedAuditingPolicyInitParameters. +func (in *WorkspaceExtendedAuditingPolicyInitParameters) DeepCopy() *WorkspaceExtendedAuditingPolicyInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceExtendedAuditingPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceExtendedAuditingPolicyList) DeepCopyInto(out *WorkspaceExtendedAuditingPolicyList) { *out = *in @@ -4061,6 +5137,7 @@ func (in *WorkspaceExtendedAuditingPolicySpec) DeepCopyInto(out *WorkspaceExtend *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceExtendedAuditingPolicySpec. @@ -4090,6 +5167,124 @@ func (in *WorkspaceExtendedAuditingPolicyStatus) DeepCopy() *WorkspaceExtendedAu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceInitParameters) DeepCopyInto(out *WorkspaceInitParameters) { + *out = *in + if in.AADAdmin != nil { + in, out := &in.AADAdmin, &out.AADAdmin + *out = make([]AADAdminInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AzureDevopsRepo != nil { + in, out := &in.AzureDevopsRepo, &out.AzureDevopsRepo + *out = make([]AzureDevopsRepoInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.CustomerManagedKey != nil { + in, out := &in.CustomerManagedKey, &out.CustomerManagedKey + *out = make([]CustomerManagedKeyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DataExfiltrationProtectionEnabled != nil { + in, out := &in.DataExfiltrationProtectionEnabled, &out.DataExfiltrationProtectionEnabled + *out = new(bool) + **out = **in + } + if in.GithubRepo != nil { + in, out := &in.GithubRepo, &out.GithubRepo + *out = make([]GithubRepoInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LinkingAllowedForAADTenantIds != nil { + in, out := &in.LinkingAllowedForAADTenantIds, &out.LinkingAllowedForAADTenantIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.ManagedVirtualNetworkEnabled != nil { + in, out := &in.ManagedVirtualNetworkEnabled, &out.ManagedVirtualNetworkEnabled + *out = new(bool) + **out = **in + } + if in.PublicNetworkAccessEnabled != nil { + in, out := &in.PublicNetworkAccessEnabled, &out.PublicNetworkAccessEnabled + *out = new(bool) + **out = **in + } + if in.PurviewID != nil { + in, out := &in.PurviewID, &out.PurviewID + *out = new(string) + **out = **in + } + if in.SQLAADAdmin != nil { + in, out := &in.SQLAADAdmin, &out.SQLAADAdmin + *out = make([]SQLAADAdminInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SQLAdministratorLogin != nil { + in, out := &in.SQLAdministratorLogin, &out.SQLAdministratorLogin + *out = new(string) + **out = **in + } + if in.SQLIdentityControlEnabled != nil { + in, out := &in.SQLIdentityControlEnabled, &out.SQLIdentityControlEnabled + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceInitParameters. +func (in *WorkspaceInitParameters) DeepCopy() *WorkspaceInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceList) DeepCopyInto(out *WorkspaceList) { *out = *in @@ -4490,6 +5685,36 @@ func (in *WorkspaceSQLAADAdmin) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceSQLAADAdminInitParameters) DeepCopyInto(out *WorkspaceSQLAADAdminInitParameters) { + *out = *in + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = new(string) + **out = **in + } + if in.ObjectID != nil { + in, out := &in.ObjectID, &out.ObjectID + *out = new(string) + **out = **in + } + if in.TenantID != nil { + in, out := &in.TenantID, &out.TenantID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceSQLAADAdminInitParameters. +func (in *WorkspaceSQLAADAdminInitParameters) DeepCopy() *WorkspaceSQLAADAdminInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceSQLAADAdminInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceSQLAADAdminList) DeepCopyInto(out *WorkspaceSQLAADAdminList) { *out = *in @@ -4612,6 +5837,7 @@ func (in *WorkspaceSQLAADAdminSpec) DeepCopyInto(out *WorkspaceSQLAADAdminSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceSQLAADAdminSpec. @@ -4668,6 +5894,58 @@ func (in *WorkspaceSecurityAlertPolicy) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceSecurityAlertPolicyInitParameters) DeepCopyInto(out *WorkspaceSecurityAlertPolicyInitParameters) { + *out = *in + if in.DisabledAlerts != nil { + in, out := &in.DisabledAlerts, &out.DisabledAlerts + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.EmailAccountAdminsEnabled != nil { + in, out := &in.EmailAccountAdminsEnabled, &out.EmailAccountAdminsEnabled + *out = new(bool) + **out = **in + } + if in.EmailAddresses != nil { + in, out := &in.EmailAddresses, &out.EmailAddresses + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.PolicyState != nil { + in, out := &in.PolicyState, &out.PolicyState + *out = new(string) + **out = **in + } + if in.RetentionDays != nil { + in, out := &in.RetentionDays, &out.RetentionDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceSecurityAlertPolicyInitParameters. +func (in *WorkspaceSecurityAlertPolicyInitParameters) DeepCopy() *WorkspaceSecurityAlertPolicyInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceSecurityAlertPolicyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceSecurityAlertPolicyList) DeepCopyInto(out *WorkspaceSecurityAlertPolicyList) { *out = *in @@ -4859,6 +6137,7 @@ func (in *WorkspaceSecurityAlertPolicySpec) DeepCopyInto(out *WorkspaceSecurityA *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceSecurityAlertPolicySpec. @@ -4893,6 +6172,7 @@ func (in *WorkspaceSpec) DeepCopyInto(out *WorkspaceSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceSpec. @@ -4949,6 +6229,33 @@ func (in *WorkspaceVulnerabilityAssessment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WorkspaceVulnerabilityAssessmentInitParameters) DeepCopyInto(out *WorkspaceVulnerabilityAssessmentInitParameters) { + *out = *in + if in.RecurringScans != nil { + in, out := &in.RecurringScans, &out.RecurringScans + *out = make([]RecurringScansInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageContainerPath != nil { + in, out := &in.StorageContainerPath, &out.StorageContainerPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceVulnerabilityAssessmentInitParameters. +func (in *WorkspaceVulnerabilityAssessmentInitParameters) DeepCopy() *WorkspaceVulnerabilityAssessmentInitParameters { + if in == nil { + return nil + } + out := new(WorkspaceVulnerabilityAssessmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WorkspaceVulnerabilityAssessmentList) DeepCopyInto(out *WorkspaceVulnerabilityAssessmentList) { *out = *in @@ -5075,6 +6382,7 @@ func (in *WorkspaceVulnerabilityAssessmentSpec) DeepCopyInto(out *WorkspaceVulne *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceVulnerabilityAssessmentSpec. diff --git a/apis/synapse/v1beta1/zz_generated.managed.go b/apis/synapse/v1beta1/zz_generated.managed.go index 183925694..e48d3fbe4 100644 --- a/apis/synapse/v1beta1/zz_generated.managed.go +++ b/apis/synapse/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *FirewallRule) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FirewallRule. -func (mg *FirewallRule) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FirewallRule. +func (mg *FirewallRule) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FirewallRule. @@ -55,9 +55,9 @@ func (mg *FirewallRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FirewallRule. -func (mg *FirewallRule) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FirewallRule. +func (mg *FirewallRule) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FirewallRule. @@ -93,9 +93,9 @@ func (mg *IntegrationRuntimeAzure) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IntegrationRuntimeAzure. -func (mg *IntegrationRuntimeAzure) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IntegrationRuntimeAzure. +func (mg *IntegrationRuntimeAzure) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IntegrationRuntimeAzure. @@ -131,9 +131,9 @@ func (mg *IntegrationRuntimeAzure) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IntegrationRuntimeAzure. -func (mg *IntegrationRuntimeAzure) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IntegrationRuntimeAzure. +func (mg *IntegrationRuntimeAzure) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IntegrationRuntimeAzure. @@ -169,9 +169,9 @@ func (mg *IntegrationRuntimeSelfHosted) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this IntegrationRuntimeSelfHosted. -func (mg *IntegrationRuntimeSelfHosted) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this IntegrationRuntimeSelfHosted. +func (mg *IntegrationRuntimeSelfHosted) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this IntegrationRuntimeSelfHosted. @@ -207,9 +207,9 @@ func (mg *IntegrationRuntimeSelfHosted) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this IntegrationRuntimeSelfHosted. -func (mg *IntegrationRuntimeSelfHosted) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this IntegrationRuntimeSelfHosted. +func (mg *IntegrationRuntimeSelfHosted) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this IntegrationRuntimeSelfHosted. @@ -245,9 +245,9 @@ func (mg *LinkedService) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinkedService. -func (mg *LinkedService) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinkedService. +func (mg *LinkedService) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinkedService. @@ -283,9 +283,9 @@ func (mg *LinkedService) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinkedService. -func (mg *LinkedService) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinkedService. +func (mg *LinkedService) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinkedService. @@ -321,9 +321,9 @@ func (mg *ManagedPrivateEndpoint) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ManagedPrivateEndpoint. -func (mg *ManagedPrivateEndpoint) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ManagedPrivateEndpoint. +func (mg *ManagedPrivateEndpoint) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ManagedPrivateEndpoint. @@ -359,9 +359,9 @@ func (mg *ManagedPrivateEndpoint) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ManagedPrivateEndpoint. -func (mg *ManagedPrivateEndpoint) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ManagedPrivateEndpoint. +func (mg *ManagedPrivateEndpoint) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ManagedPrivateEndpoint. @@ -397,9 +397,9 @@ func (mg *PrivateLinkHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this PrivateLinkHub. -func (mg *PrivateLinkHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this PrivateLinkHub. +func (mg *PrivateLinkHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this PrivateLinkHub. @@ -435,9 +435,9 @@ func (mg *PrivateLinkHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this PrivateLinkHub. -func (mg *PrivateLinkHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this PrivateLinkHub. +func (mg *PrivateLinkHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this PrivateLinkHub. @@ -473,9 +473,9 @@ func (mg *RoleAssignment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this RoleAssignment. -func (mg *RoleAssignment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this RoleAssignment. +func (mg *RoleAssignment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this RoleAssignment. @@ -511,9 +511,9 @@ func (mg *RoleAssignment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this RoleAssignment. -func (mg *RoleAssignment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this RoleAssignment. +func (mg *RoleAssignment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this RoleAssignment. @@ -549,9 +549,9 @@ func (mg *SQLPool) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLPool. -func (mg *SQLPool) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLPool. +func (mg *SQLPool) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLPool. @@ -587,9 +587,9 @@ func (mg *SQLPool) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLPool. -func (mg *SQLPool) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLPool. +func (mg *SQLPool) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLPool. @@ -625,9 +625,9 @@ func (mg *SQLPoolExtendedAuditingPolicy) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLPoolExtendedAuditingPolicy. -func (mg *SQLPoolExtendedAuditingPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLPoolExtendedAuditingPolicy. +func (mg *SQLPoolExtendedAuditingPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLPoolExtendedAuditingPolicy. @@ -663,9 +663,9 @@ func (mg *SQLPoolExtendedAuditingPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLPoolExtendedAuditingPolicy. -func (mg *SQLPoolExtendedAuditingPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLPoolExtendedAuditingPolicy. +func (mg *SQLPoolExtendedAuditingPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLPoolExtendedAuditingPolicy. @@ -701,9 +701,9 @@ func (mg *SQLPoolSecurityAlertPolicy) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLPoolSecurityAlertPolicy. -func (mg *SQLPoolSecurityAlertPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLPoolSecurityAlertPolicy. +func (mg *SQLPoolSecurityAlertPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLPoolSecurityAlertPolicy. @@ -739,9 +739,9 @@ func (mg *SQLPoolSecurityAlertPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLPoolSecurityAlertPolicy. -func (mg *SQLPoolSecurityAlertPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLPoolSecurityAlertPolicy. +func (mg *SQLPoolSecurityAlertPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLPoolSecurityAlertPolicy. @@ -777,9 +777,9 @@ func (mg *SQLPoolWorkloadClassifier) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLPoolWorkloadClassifier. -func (mg *SQLPoolWorkloadClassifier) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLPoolWorkloadClassifier. +func (mg *SQLPoolWorkloadClassifier) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLPoolWorkloadClassifier. @@ -815,9 +815,9 @@ func (mg *SQLPoolWorkloadClassifier) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLPoolWorkloadClassifier. -func (mg *SQLPoolWorkloadClassifier) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLPoolWorkloadClassifier. +func (mg *SQLPoolWorkloadClassifier) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLPoolWorkloadClassifier. @@ -853,9 +853,9 @@ func (mg *SQLPoolWorkloadGroup) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SQLPoolWorkloadGroup. -func (mg *SQLPoolWorkloadGroup) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SQLPoolWorkloadGroup. +func (mg *SQLPoolWorkloadGroup) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SQLPoolWorkloadGroup. @@ -891,9 +891,9 @@ func (mg *SQLPoolWorkloadGroup) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SQLPoolWorkloadGroup. -func (mg *SQLPoolWorkloadGroup) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SQLPoolWorkloadGroup. +func (mg *SQLPoolWorkloadGroup) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SQLPoolWorkloadGroup. @@ -929,9 +929,9 @@ func (mg *SparkPool) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SparkPool. -func (mg *SparkPool) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SparkPool. +func (mg *SparkPool) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SparkPool. @@ -967,9 +967,9 @@ func (mg *SparkPool) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SparkPool. -func (mg *SparkPool) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SparkPool. +func (mg *SparkPool) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SparkPool. @@ -1005,9 +1005,9 @@ func (mg *Workspace) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Workspace. -func (mg *Workspace) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Workspace. +func (mg *Workspace) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Workspace. @@ -1043,9 +1043,9 @@ func (mg *Workspace) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Workspace. -func (mg *Workspace) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Workspace. +func (mg *Workspace) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Workspace. @@ -1081,9 +1081,9 @@ func (mg *WorkspaceAADAdmin) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WorkspaceAADAdmin. -func (mg *WorkspaceAADAdmin) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WorkspaceAADAdmin. +func (mg *WorkspaceAADAdmin) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WorkspaceAADAdmin. @@ -1119,9 +1119,9 @@ func (mg *WorkspaceAADAdmin) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WorkspaceAADAdmin. -func (mg *WorkspaceAADAdmin) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WorkspaceAADAdmin. +func (mg *WorkspaceAADAdmin) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WorkspaceAADAdmin. @@ -1157,9 +1157,9 @@ func (mg *WorkspaceExtendedAuditingPolicy) GetDeletionPolicy() xpv1.DeletionPoli return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WorkspaceExtendedAuditingPolicy. -func (mg *WorkspaceExtendedAuditingPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WorkspaceExtendedAuditingPolicy. +func (mg *WorkspaceExtendedAuditingPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WorkspaceExtendedAuditingPolicy. @@ -1195,9 +1195,9 @@ func (mg *WorkspaceExtendedAuditingPolicy) SetDeletionPolicy(r xpv1.DeletionPoli mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WorkspaceExtendedAuditingPolicy. -func (mg *WorkspaceExtendedAuditingPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WorkspaceExtendedAuditingPolicy. +func (mg *WorkspaceExtendedAuditingPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WorkspaceExtendedAuditingPolicy. @@ -1233,9 +1233,9 @@ func (mg *WorkspaceSQLAADAdmin) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WorkspaceSQLAADAdmin. -func (mg *WorkspaceSQLAADAdmin) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WorkspaceSQLAADAdmin. +func (mg *WorkspaceSQLAADAdmin) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WorkspaceSQLAADAdmin. @@ -1271,9 +1271,9 @@ func (mg *WorkspaceSQLAADAdmin) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WorkspaceSQLAADAdmin. -func (mg *WorkspaceSQLAADAdmin) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WorkspaceSQLAADAdmin. +func (mg *WorkspaceSQLAADAdmin) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WorkspaceSQLAADAdmin. @@ -1309,9 +1309,9 @@ func (mg *WorkspaceSecurityAlertPolicy) GetDeletionPolicy() xpv1.DeletionPolicy return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WorkspaceSecurityAlertPolicy. -func (mg *WorkspaceSecurityAlertPolicy) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WorkspaceSecurityAlertPolicy. +func (mg *WorkspaceSecurityAlertPolicy) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WorkspaceSecurityAlertPolicy. @@ -1347,9 +1347,9 @@ func (mg *WorkspaceSecurityAlertPolicy) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WorkspaceSecurityAlertPolicy. -func (mg *WorkspaceSecurityAlertPolicy) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WorkspaceSecurityAlertPolicy. +func (mg *WorkspaceSecurityAlertPolicy) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WorkspaceSecurityAlertPolicy. @@ -1385,9 +1385,9 @@ func (mg *WorkspaceVulnerabilityAssessment) GetDeletionPolicy() xpv1.DeletionPol return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WorkspaceVulnerabilityAssessment. -func (mg *WorkspaceVulnerabilityAssessment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WorkspaceVulnerabilityAssessment. +func (mg *WorkspaceVulnerabilityAssessment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WorkspaceVulnerabilityAssessment. @@ -1423,9 +1423,9 @@ func (mg *WorkspaceVulnerabilityAssessment) SetDeletionPolicy(r xpv1.DeletionPol mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WorkspaceVulnerabilityAssessment. -func (mg *WorkspaceVulnerabilityAssessment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WorkspaceVulnerabilityAssessment. +func (mg *WorkspaceVulnerabilityAssessment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WorkspaceVulnerabilityAssessment. diff --git a/apis/synapse/v1beta1/zz_generated_terraformed.go b/apis/synapse/v1beta1/zz_generated_terraformed.go index c463204c0..9e8a1c638 100755 --- a/apis/synapse/v1beta1/zz_generated_terraformed.go +++ b/apis/synapse/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *FirewallRule) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FirewallRule +func (tr *FirewallRule) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FirewallRule using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FirewallRule) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *IntegrationRuntimeAzure) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IntegrationRuntimeAzure +func (tr *IntegrationRuntimeAzure) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IntegrationRuntimeAzure using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IntegrationRuntimeAzure) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *IntegrationRuntimeSelfHosted) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this IntegrationRuntimeSelfHosted +func (tr *IntegrationRuntimeSelfHosted) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this IntegrationRuntimeSelfHosted using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *IntegrationRuntimeSelfHosted) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *LinkedService) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinkedService +func (tr *LinkedService) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinkedService using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinkedService) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *ManagedPrivateEndpoint) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ManagedPrivateEndpoint +func (tr *ManagedPrivateEndpoint) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ManagedPrivateEndpoint using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ManagedPrivateEndpoint) LateInitialize(attrs []byte) (bool, error) { @@ -439,6 +489,16 @@ func (tr *PrivateLinkHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this PrivateLinkHub +func (tr *PrivateLinkHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this PrivateLinkHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *PrivateLinkHub) LateInitialize(attrs []byte) (bool, error) { @@ -513,6 +573,16 @@ func (tr *RoleAssignment) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this RoleAssignment +func (tr *RoleAssignment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this RoleAssignment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *RoleAssignment) LateInitialize(attrs []byte) (bool, error) { @@ -587,6 +657,16 @@ func (tr *SparkPool) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SparkPool +func (tr *SparkPool) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SparkPool using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SparkPool) LateInitialize(attrs []byte) (bool, error) { @@ -661,6 +741,16 @@ func (tr *SQLPool) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLPool +func (tr *SQLPool) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLPool using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLPool) LateInitialize(attrs []byte) (bool, error) { @@ -735,6 +825,16 @@ func (tr *SQLPoolExtendedAuditingPolicy) SetParameters(params map[string]any) er return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLPoolExtendedAuditingPolicy +func (tr *SQLPoolExtendedAuditingPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLPoolExtendedAuditingPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLPoolExtendedAuditingPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -809,6 +909,16 @@ func (tr *SQLPoolSecurityAlertPolicy) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLPoolSecurityAlertPolicy +func (tr *SQLPoolSecurityAlertPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLPoolSecurityAlertPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLPoolSecurityAlertPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -883,6 +993,16 @@ func (tr *SQLPoolWorkloadClassifier) SetParameters(params map[string]any) error return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLPoolWorkloadClassifier +func (tr *SQLPoolWorkloadClassifier) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLPoolWorkloadClassifier using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLPoolWorkloadClassifier) LateInitialize(attrs []byte) (bool, error) { @@ -957,6 +1077,16 @@ func (tr *SQLPoolWorkloadGroup) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SQLPoolWorkloadGroup +func (tr *SQLPoolWorkloadGroup) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SQLPoolWorkloadGroup using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SQLPoolWorkloadGroup) LateInitialize(attrs []byte) (bool, error) { @@ -1031,6 +1161,16 @@ func (tr *Workspace) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Workspace +func (tr *Workspace) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Workspace using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Workspace) LateInitialize(attrs []byte) (bool, error) { @@ -1105,6 +1245,16 @@ func (tr *WorkspaceAADAdmin) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WorkspaceAADAdmin +func (tr *WorkspaceAADAdmin) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WorkspaceAADAdmin using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WorkspaceAADAdmin) LateInitialize(attrs []byte) (bool, error) { @@ -1179,6 +1329,16 @@ func (tr *WorkspaceExtendedAuditingPolicy) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WorkspaceExtendedAuditingPolicy +func (tr *WorkspaceExtendedAuditingPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WorkspaceExtendedAuditingPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WorkspaceExtendedAuditingPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -1253,6 +1413,16 @@ func (tr *WorkspaceSecurityAlertPolicy) SetParameters(params map[string]any) err return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WorkspaceSecurityAlertPolicy +func (tr *WorkspaceSecurityAlertPolicy) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WorkspaceSecurityAlertPolicy using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WorkspaceSecurityAlertPolicy) LateInitialize(attrs []byte) (bool, error) { @@ -1327,6 +1497,16 @@ func (tr *WorkspaceSQLAADAdmin) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WorkspaceSQLAADAdmin +func (tr *WorkspaceSQLAADAdmin) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WorkspaceSQLAADAdmin using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WorkspaceSQLAADAdmin) LateInitialize(attrs []byte) (bool, error) { @@ -1401,6 +1581,16 @@ func (tr *WorkspaceVulnerabilityAssessment) SetParameters(params map[string]any) return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WorkspaceVulnerabilityAssessment +func (tr *WorkspaceVulnerabilityAssessment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WorkspaceVulnerabilityAssessment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WorkspaceVulnerabilityAssessment) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/synapse/v1beta1/zz_integrationruntimeazure_types.go b/apis/synapse/v1beta1/zz_integrationruntimeazure_types.go index 0cb25febb..36ae151df 100755 --- a/apis/synapse/v1beta1/zz_integrationruntimeazure_types.go +++ b/apis/synapse/v1beta1/zz_integrationruntimeazure_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IntegrationRuntimeAzureInitParameters struct { + + // Compute type of the cluster which will execute data flow job. Valid values are General, ComputeOptimized and MemoryOptimized. Defaults to General. + ComputeType *string `json:"computeType,omitempty" tf:"compute_type,omitempty"` + + // Core count of the cluster which will execute data flow job. Valid values are 8, 16, 32, 48, 80, 144 and 272. Defaults to 8. + CoreCount *float64 `json:"coreCount,omitempty" tf:"core_count,omitempty"` + + // Integration runtime description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // The Azure Region where the Synapse Azure Integration Runtime should exist. Use AutoResolve to create an auto-resolve integration runtime. Changing this forces a new Synapse Azure Integration Runtime to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Time to live (in minutes) setting of the cluster which will execute data flow job. Defaults to 0. + TimeToLiveMin *float64 `json:"timeToLiveMin,omitempty" tf:"time_to_live_min,omitempty"` +} + type IntegrationRuntimeAzureObservation struct { // Compute type of the cluster which will execute data flow job. Valid values are General, ComputeOptimized and MemoryOptimized. Defaults to General. @@ -78,6 +96,18 @@ type IntegrationRuntimeAzureParameters struct { type IntegrationRuntimeAzureSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IntegrationRuntimeAzureParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IntegrationRuntimeAzureInitParameters `json:"initProvider,omitempty"` } // IntegrationRuntimeAzureStatus defines the observed state of IntegrationRuntimeAzure. @@ -98,7 +128,7 @@ type IntegrationRuntimeAzureStatus struct { type IntegrationRuntimeAzure struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec IntegrationRuntimeAzureSpec `json:"spec"` Status IntegrationRuntimeAzureStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_integrationruntimeselfhosted_types.go b/apis/synapse/v1beta1/zz_integrationruntimeselfhosted_types.go index f6008f0e3..0762bb1a5 100755 --- a/apis/synapse/v1beta1/zz_integrationruntimeselfhosted_types.go +++ b/apis/synapse/v1beta1/zz_integrationruntimeselfhosted_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IntegrationRuntimeSelfHostedInitParameters struct { + + // Integration runtime description. + Description *string `json:"description,omitempty" tf:"description,omitempty"` +} + type IntegrationRuntimeSelfHostedObservation struct { // The primary integration runtime authentication key. @@ -56,6 +62,18 @@ type IntegrationRuntimeSelfHostedParameters struct { type IntegrationRuntimeSelfHostedSpec struct { v1.ResourceSpec `json:",inline"` ForProvider IntegrationRuntimeSelfHostedParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider IntegrationRuntimeSelfHostedInitParameters `json:"initProvider,omitempty"` } // IntegrationRuntimeSelfHostedStatus defines the observed state of IntegrationRuntimeSelfHosted. diff --git a/apis/synapse/v1beta1/zz_linkedservice_types.go b/apis/synapse/v1beta1/zz_linkedservice_types.go index ef31c72b9..2e974e9e4 100755 --- a/apis/synapse/v1beta1/zz_linkedservice_types.go +++ b/apis/synapse/v1beta1/zz_linkedservice_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type IntegrationRuntimeInitParameters struct { + + // A map of parameters to associate with the integration runtime. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type IntegrationRuntimeObservation struct { // The integration runtime reference to associate with the Synapse Linked Service. @@ -42,6 +48,38 @@ type IntegrationRuntimeParameters struct { Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type LinkedServiceInitParameters struct { + + // A map of additional properties to associate with the Synapse Linked Service. + AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` + + // List of tags that can be used for describing the Synapse Linked Service. + Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` + + // The description for the Synapse Linked Service. + Description *string `json:"description,omitempty" tf:"description,omitempty"` + + // A integration_runtime block as defined below. + IntegrationRuntime []IntegrationRuntimeInitParameters `json:"integrationRuntime,omitempty" tf:"integration_runtime,omitempty"` + + // A map of parameters to associate with the Synapse Linked Service. + Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` + + // The type of data stores that will be connected to Synapse. Valid Values include AmazonMWS, AmazonRdsForOracle, AmazonRdsForSqlServer, AmazonRedshift, AmazonS3, AzureBatch. Changing this forces a new resource to be created. + // AzureBlobFS, AzureBlobStorage, AzureDataExplorer, AzureDataLakeAnalytics, AzureDataLakeStore, AzureDatabricks, AzureDatabricksDeltaLake, AzureFileStorage, AzureFunction, + // AzureKeyVault, AzureML, AzureMLService, AzureMariaDB, AzureMySql, AzurePostgreSql, AzureSqlDW, AzureSqlDatabase, AzureSqlMI, AzureSearch, AzureStorage, + // AzureTableStorage, Cassandra, CommonDataServiceForApps, Concur, CosmosDb, CosmosDbMongoDbApi, Couchbase, CustomDataSource, Db2, Drill, + // Dynamics, DynamicsAX, DynamicsCrm, Eloqua, FileServer, FtpServer, GoogleAdWords, GoogleBigQuery, GoogleCloudStorage, Greenplum, HBase, HDInsight, + // HDInsightOnDemand, HttpServer, Hdfs, Hive, Hubspot, Impala, Informix, Jira, LinkedService, Magento, MariaDB, Marketo, MicrosoftAccess, MongoDb, + // MongoDbAtlas, MongoDbV2, MySql, Netezza, OData, Odbc, Office365, Oracle, OracleServiceCloud, Paypal, Phoenix, PostgreSql, Presto, QuickBooks, + // Responsys, RestService, SqlServer, Salesforce, SalesforceMarketingCloud, SalesforceServiceCloud, SapBW, SapCloudForCustomer, SapEcc, SapHana, SapOpenHub, + // SapTable, ServiceNow, Sftp, SharePointOnlineList, Shopify, Snowflake, Spark, Square, Sybase, Teradata, Vertica, Web, Xero, Zoho. + Type *string `json:"type,omitempty" tf:"type,omitempty"` + + // A JSON object that contains the properties of the Synapse Linked Service. + TypePropertiesJSON *string `json:"typePropertiesJson,omitempty" tf:"type_properties_json,omitempty"` +} + type LinkedServiceObservation struct { // A map of additional properties to associate with the Synapse Linked Service. @@ -137,6 +175,18 @@ type LinkedServiceParameters struct { type LinkedServiceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinkedServiceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinkedServiceInitParameters `json:"initProvider,omitempty"` } // LinkedServiceStatus defines the observed state of LinkedService. @@ -157,8 +207,8 @@ type LinkedServiceStatus struct { type LinkedService struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.typePropertiesJson)",message="typePropertiesJson is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.typePropertiesJson) || has(self.initProvider.typePropertiesJson)",message="typePropertiesJson is a required parameter" Spec LinkedServiceSpec `json:"spec"` Status LinkedServiceStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_managedprivateendpoint_types.go b/apis/synapse/v1beta1/zz_managedprivateendpoint_types.go index 88ded8695..10b111fe7 100755 --- a/apis/synapse/v1beta1/zz_managedprivateendpoint_types.go +++ b/apis/synapse/v1beta1/zz_managedprivateendpoint_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ManagedPrivateEndpointInitParameters struct { + + // Specifies the name which should be used for this Managed Private Endpoint. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Specifies the sub resource name which the Synapse Private Endpoint is able to connect to. Changing this forces a new resource to be created. + SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` +} + type ManagedPrivateEndpointObservation struct { // The Synapse Managed Private Endpoint ID. @@ -74,6 +83,18 @@ type ManagedPrivateEndpointParameters struct { type ManagedPrivateEndpointSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ManagedPrivateEndpointParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ManagedPrivateEndpointInitParameters `json:"initProvider,omitempty"` } // ManagedPrivateEndpointStatus defines the observed state of ManagedPrivateEndpoint. @@ -94,8 +115,8 @@ type ManagedPrivateEndpointStatus struct { type ManagedPrivateEndpoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subresourceName)",message="subresourceName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subresourceName) || has(self.initProvider.subresourceName)",message="subresourceName is a required parameter" Spec ManagedPrivateEndpointSpec `json:"spec"` Status ManagedPrivateEndpointStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_privatelinkhub_types.go b/apis/synapse/v1beta1/zz_privatelinkhub_types.go index 140e6267a..a2fd6b3f3 100755 --- a/apis/synapse/v1beta1/zz_privatelinkhub_types.go +++ b/apis/synapse/v1beta1/zz_privatelinkhub_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type PrivateLinkHubInitParameters struct { + + // Specifies the Azure location where the Synapse Private Link Hub exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags which should be assigned to the Synapse Private Link Hub. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type PrivateLinkHubObservation struct { // The ID of the Synapse Private Link Hub. @@ -56,6 +65,18 @@ type PrivateLinkHubParameters struct { type PrivateLinkHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider PrivateLinkHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider PrivateLinkHubInitParameters `json:"initProvider,omitempty"` } // PrivateLinkHubStatus defines the observed state of PrivateLinkHub. @@ -76,7 +97,7 @@ type PrivateLinkHubStatus struct { type PrivateLinkHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec PrivateLinkHubSpec `json:"spec"` Status PrivateLinkHubStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_roleassignment_types.go b/apis/synapse/v1beta1/zz_roleassignment_types.go index 6e2308dd1..b8cf825d6 100755 --- a/apis/synapse/v1beta1/zz_roleassignment_types.go +++ b/apis/synapse/v1beta1/zz_roleassignment_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RoleAssignmentInitParameters struct { + + // The ID of the Principal (User, Group or Service Principal) to assign the Synapse Role Definition to. Changing this forces a new resource to be created. + PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` + + // The Role Name of the Synapse Built-In Role. Changing this forces a new resource to be created. + RoleName *string `json:"roleName,omitempty" tf:"role_name,omitempty"` + + // The Synapse Spark Pool which the Synapse Role Assignment applies to. Changing this forces a new resource to be created. + SynapseSparkPoolID *string `json:"synapseSparkPoolId,omitempty" tf:"synapse_spark_pool_id,omitempty"` +} + type RoleAssignmentObservation struct { // The Synapse Role Assignment ID. @@ -64,6 +76,18 @@ type RoleAssignmentParameters struct { type RoleAssignmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider RoleAssignmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider RoleAssignmentInitParameters `json:"initProvider,omitempty"` } // RoleAssignmentStatus defines the observed state of RoleAssignment. @@ -84,8 +108,8 @@ type RoleAssignmentStatus struct { type RoleAssignment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalId)",message="principalId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roleName)",message="roleName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.principalId) || has(self.initProvider.principalId)",message="principalId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.roleName) || has(self.initProvider.roleName)",message="roleName is a required parameter" Spec RoleAssignmentSpec `json:"spec"` Status RoleAssignmentStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_sparkpool_types.go b/apis/synapse/v1beta1/zz_sparkpool_types.go index 72b4bd47f..16b58df58 100755 --- a/apis/synapse/v1beta1/zz_sparkpool_types.go +++ b/apis/synapse/v1beta1/zz_sparkpool_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AutoPauseInitParameters struct { + + // Number of minutes of idle time before the Spark Pool is automatically paused. Must be between 5 and 10080. + DelayInMinutes *float64 `json:"delayInMinutes,omitempty" tf:"delay_in_minutes,omitempty"` +} + type AutoPauseObservation struct { // Number of minutes of idle time before the Spark Pool is automatically paused. Must be between 5 and 10080. @@ -22,8 +28,17 @@ type AutoPauseObservation struct { type AutoPauseParameters struct { // Number of minutes of idle time before the Spark Pool is automatically paused. Must be between 5 and 10080. - // +kubebuilder:validation:Required - DelayInMinutes *float64 `json:"delayInMinutes" tf:"delay_in_minutes,omitempty"` + // +kubebuilder:validation:Optional + DelayInMinutes *float64 `json:"delayInMinutes,omitempty" tf:"delay_in_minutes,omitempty"` +} + +type AutoScaleInitParameters struct { + + // The maximum number of nodes the Spark Pool can support. Must be between 3 and 200. + MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"` + + // The minimum number of nodes the Spark Pool can support. Must be between 3 and 200. + MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"` } type AutoScaleObservation struct { @@ -38,12 +53,21 @@ type AutoScaleObservation struct { type AutoScaleParameters struct { // The maximum number of nodes the Spark Pool can support. Must be between 3 and 200. - // +kubebuilder:validation:Required - MaxNodeCount *float64 `json:"maxNodeCount" tf:"max_node_count,omitempty"` + // +kubebuilder:validation:Optional + MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"` // The minimum number of nodes the Spark Pool can support. Must be between 3 and 200. - // +kubebuilder:validation:Required - MinNodeCount *float64 `json:"minNodeCount" tf:"min_node_count,omitempty"` + // +kubebuilder:validation:Optional + MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"` +} + +type LibraryRequirementInitParameters struct { + + // The content of library requirements. + Content *string `json:"content,omitempty" tf:"content,omitempty"` + + // The name of the library requirements file. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` } type LibraryRequirementObservation struct { @@ -58,12 +82,21 @@ type LibraryRequirementObservation struct { type LibraryRequirementParameters struct { // The content of library requirements. - // +kubebuilder:validation:Required - Content *string `json:"content" tf:"content,omitempty"` + // +kubebuilder:validation:Optional + Content *string `json:"content,omitempty" tf:"content,omitempty"` // The name of the library requirements file. - // +kubebuilder:validation:Required - Filename *string `json:"filename" tf:"filename,omitempty"` + // +kubebuilder:validation:Optional + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` +} + +type SparkConfigInitParameters struct { + + // The contents of a spark configuration. + Content *string `json:"content,omitempty" tf:"content,omitempty"` + + // The name of the file where the spark configuration content will be stored. + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` } type SparkConfigObservation struct { @@ -78,12 +111,66 @@ type SparkConfigObservation struct { type SparkConfigParameters struct { // The contents of a spark configuration. - // +kubebuilder:validation:Required - Content *string `json:"content" tf:"content,omitempty"` + // +kubebuilder:validation:Optional + Content *string `json:"content,omitempty" tf:"content,omitempty"` // The name of the file where the spark configuration content will be stored. - // +kubebuilder:validation:Required - Filename *string `json:"filename" tf:"filename,omitempty"` + // +kubebuilder:validation:Optional + Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` +} + +type SparkPoolInitParameters struct { + + // An auto_pause block as defined below. + AutoPause []AutoPauseInitParameters `json:"autoPause,omitempty" tf:"auto_pause,omitempty"` + + // An auto_scale block as defined below. Exactly one of node_count or auto_scale must be specified. + AutoScale []AutoScaleInitParameters `json:"autoScale,omitempty" tf:"auto_scale,omitempty"` + + // The cache size in the Spark Pool. + CacheSize *float64 `json:"cacheSize,omitempty" tf:"cache_size,omitempty"` + + // Indicates whether compute isolation is enabled or not. Defaults to false. + ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` + + // Indicates whether Dynamic Executor Allocation is enabled or not. Defaults to false. + DynamicExecutorAllocationEnabled *bool `json:"dynamicExecutorAllocationEnabled,omitempty" tf:"dynamic_executor_allocation_enabled,omitempty"` + + // A library_requirement block as defined below. + LibraryRequirement []LibraryRequirementInitParameters `json:"libraryRequirement,omitempty" tf:"library_requirement,omitempty"` + + // The maximum number of executors allocated only when dynamic_executor_allocation_enabled set to true. + MaxExecutors *float64 `json:"maxExecutors,omitempty" tf:"max_executors,omitempty"` + + // The minimum number of executors allocated only when dynamic_executor_allocation_enabled set to true. + MinExecutors *float64 `json:"minExecutors,omitempty" tf:"min_executors,omitempty"` + + // The number of nodes in the Spark Pool. Exactly one of node_count or auto_scale must be specified. + NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` + + // The level of node in the Spark Pool. Possible values are Small, Medium, Large, None, XLarge, XXLarge and XXXLarge. + NodeSize *string `json:"nodeSize,omitempty" tf:"node_size,omitempty"` + + // The kind of nodes that the Spark Pool provides. Possible values are MemoryOptimized and None. + NodeSizeFamily *string `json:"nodeSizeFamily,omitempty" tf:"node_size_family,omitempty"` + + // Indicates whether session level packages are enabled or not. Defaults to false. + SessionLevelPackagesEnabled *bool `json:"sessionLevelPackagesEnabled,omitempty" tf:"session_level_packages_enabled,omitempty"` + + // A spark_config block as defined below. + SparkConfig []SparkConfigInitParameters `json:"sparkConfig,omitempty" tf:"spark_config,omitempty"` + + // The Spark events folder. Defaults to /events. + SparkEventsFolder *string `json:"sparkEventsFolder,omitempty" tf:"spark_events_folder,omitempty"` + + // The default folder where Spark logs will be written. Defaults to /logs. + SparkLogFolder *string `json:"sparkLogFolder,omitempty" tf:"spark_log_folder,omitempty"` + + // The Apache Spark version. Possible values are 2.4 , 3.1 , 3.2 and 3.3. Defaults to 2.4. + SparkVersion *string `json:"sparkVersion,omitempty" tf:"spark_version,omitempty"` + + // A mapping of tags which should be assigned to the Synapse Spark Pool. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type SparkPoolObservation struct { @@ -235,6 +322,18 @@ type SparkPoolParameters struct { type SparkPoolSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SparkPoolParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SparkPoolInitParameters `json:"initProvider,omitempty"` } // SparkPoolStatus defines the observed state of SparkPool. @@ -255,8 +354,8 @@ type SparkPoolStatus struct { type SparkPool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nodeSize)",message="nodeSize is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nodeSizeFamily)",message="nodeSizeFamily is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.nodeSize) || has(self.initProvider.nodeSize)",message="nodeSize is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.nodeSizeFamily) || has(self.initProvider.nodeSizeFamily)",message="nodeSizeFamily is a required parameter" Spec SparkPoolSpec `json:"spec"` Status SparkPoolStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_sqlpool_types.go b/apis/synapse/v1beta1/zz_sqlpool_types.go index 5d2dc2671..8d4f6f387 100755 --- a/apis/synapse/v1beta1/zz_sqlpool_types.go +++ b/apis/synapse/v1beta1/zz_sqlpool_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RestoreInitParameters struct { + + // Specifies the Snapshot time to restore formatted as an RFC3339 date string. Changing this forces a new Synapse SQL Pool to be created. + PointInTime *string `json:"pointInTime,omitempty" tf:"point_in_time,omitempty"` + + // The ID of the Synapse SQL Pool or SQL Database which is to restore. Changing this forces a new Synapse SQL Pool to be created. + SourceDatabaseID *string `json:"sourceDatabaseId,omitempty" tf:"source_database_id,omitempty"` +} + type RestoreObservation struct { // Specifies the Snapshot time to restore formatted as an RFC3339 date string. Changing this forces a new Synapse SQL Pool to be created. @@ -25,12 +34,39 @@ type RestoreObservation struct { type RestoreParameters struct { // Specifies the Snapshot time to restore formatted as an RFC3339 date string. Changing this forces a new Synapse SQL Pool to be created. - // +kubebuilder:validation:Required - PointInTime *string `json:"pointInTime" tf:"point_in_time,omitempty"` + // +kubebuilder:validation:Optional + PointInTime *string `json:"pointInTime,omitempty" tf:"point_in_time,omitempty"` // The ID of the Synapse SQL Pool or SQL Database which is to restore. Changing this forces a new Synapse SQL Pool to be created. - // +kubebuilder:validation:Required - SourceDatabaseID *string `json:"sourceDatabaseId" tf:"source_database_id,omitempty"` + // +kubebuilder:validation:Optional + SourceDatabaseID *string `json:"sourceDatabaseId,omitempty" tf:"source_database_id,omitempty"` +} + +type SQLPoolInitParameters struct { + + // The name of the collation to use with this pool, only applicable when create_mode is set to Default. Azure default is SQL_LATIN1_GENERAL_CP1_CI_AS. Changing this forces a new resource to be created. + Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` + + // Specifies how to create the SQL Pool. Valid values are: Default, Recovery or PointInTimeRestore. Must be Default to create a new database. Defaults to Default. Changing this forces a new resource to be created. + CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` + + // Is transparent data encryption enabled? + DataEncrypted *bool `json:"dataEncrypted,omitempty" tf:"data_encrypted,omitempty"` + + // Is geo-backup policy enabled? Defaults to true. + GeoBackupPolicyEnabled *bool `json:"geoBackupPolicyEnabled,omitempty" tf:"geo_backup_policy_enabled,omitempty"` + + // The ID of the Synapse SQL Pool or SQL Database which is to back up, only applicable when create_mode is set to Recovery. Changing this forces a new Synapse SQL Pool to be created. + RecoveryDatabaseID *string `json:"recoveryDatabaseId,omitempty" tf:"recovery_database_id,omitempty"` + + // A restore block as defined below. only applicable when create_mode is set to PointInTimeRestore. Changing this forces a new resource to be created. + Restore []RestoreInitParameters `json:"restore,omitempty" tf:"restore,omitempty"` + + // Specifies the SKU Name for this Synapse SQL Pool. Possible values are DW100c, DW200c, DW300c, DW400c, DW500c, DW1000c, DW1500c, DW2000c, DW2500c, DW3000c, DW5000c, DW6000c, DW7500c, DW10000c, DW15000c or DW30000c. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags which should be assigned to the Synapse SQL Pool. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type SQLPoolObservation struct { @@ -119,6 +155,18 @@ type SQLPoolParameters struct { type SQLPoolSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLPoolParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLPoolInitParameters `json:"initProvider,omitempty"` } // SQLPoolStatus defines the observed state of SQLPool. @@ -139,7 +187,7 @@ type SQLPoolStatus struct { type SQLPool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec SQLPoolSpec `json:"spec"` Status SQLPoolStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_sqlpoolextendedauditingpolicy_types.go b/apis/synapse/v1beta1/zz_sqlpoolextendedauditingpolicy_types.go index 58699b9a4..562c0a453 100755 --- a/apis/synapse/v1beta1/zz_sqlpoolextendedauditingpolicy_types.go +++ b/apis/synapse/v1beta1/zz_sqlpoolextendedauditingpolicy_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SQLPoolExtendedAuditingPolicyInitParameters struct { + + // Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its master database audit events to Azure Monitor. Defaults to true. + LogMonitoringEnabled *bool `json:"logMonitoringEnabled,omitempty" tf:"log_monitoring_enabled,omitempty"` + + // The number of days to retain logs for in the storage account. Defaults to 0. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // Is storage_account_access_key value the storage's secondary key? + StorageAccountAccessKeyIsSecondary *bool `json:"storageAccountAccessKeyIsSecondary,omitempty" tf:"storage_account_access_key_is_secondary,omitempty"` +} + type SQLPoolExtendedAuditingPolicyObservation struct { // The ID of the Synapse SQL Pool Extended Auditing Policy. @@ -85,6 +97,18 @@ type SQLPoolExtendedAuditingPolicyParameters struct { type SQLPoolExtendedAuditingPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLPoolExtendedAuditingPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLPoolExtendedAuditingPolicyInitParameters `json:"initProvider,omitempty"` } // SQLPoolExtendedAuditingPolicyStatus defines the observed state of SQLPoolExtendedAuditingPolicy. diff --git a/apis/synapse/v1beta1/zz_sqlpoolsecurityalertpolicy_types.go b/apis/synapse/v1beta1/zz_sqlpoolsecurityalertpolicy_types.go index 486d19342..dc4b2085c 100755 --- a/apis/synapse/v1beta1/zz_sqlpoolsecurityalertpolicy_types.go +++ b/apis/synapse/v1beta1/zz_sqlpoolsecurityalertpolicy_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SQLPoolSecurityAlertPolicyInitParameters struct { + + // Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action. + DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` + + // Boolean flag which specifies if the alert is sent to the account administrators or not. Defaults to false. + EmailAccountAdminsEnabled *bool `json:"emailAccountAdminsEnabled,omitempty" tf:"email_account_admins_enabled,omitempty"` + + // Specifies an array of email addresses to which the alert is sent. + EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` + + // Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific SQL pool. Possible values are Disabled, Enabled and New. + PolicyState *string `json:"policyState,omitempty" tf:"policy_state,omitempty"` + + // Specifies the number of days to keep in the Threat Detection audit logs. Defaults to 0. + RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` +} + type SQLPoolSecurityAlertPolicyObservation struct { // Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action. @@ -99,6 +117,18 @@ type SQLPoolSecurityAlertPolicyParameters struct { type SQLPoolSecurityAlertPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLPoolSecurityAlertPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLPoolSecurityAlertPolicyInitParameters `json:"initProvider,omitempty"` } // SQLPoolSecurityAlertPolicyStatus defines the observed state of SQLPoolSecurityAlertPolicy. @@ -119,7 +149,7 @@ type SQLPoolSecurityAlertPolicyStatus struct { type SQLPoolSecurityAlertPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policyState)",message="policyState is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.policyState) || has(self.initProvider.policyState)",message="policyState is a required parameter" Spec SQLPoolSecurityAlertPolicySpec `json:"spec"` Status SQLPoolSecurityAlertPolicyStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_sqlpoolworkloadclassifier_types.go b/apis/synapse/v1beta1/zz_sqlpoolworkloadclassifier_types.go index 5551a8c89..f18f6e84e 100755 --- a/apis/synapse/v1beta1/zz_sqlpoolworkloadclassifier_types.go +++ b/apis/synapse/v1beta1/zz_sqlpoolworkloadclassifier_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SQLPoolWorkloadClassifierInitParameters struct { + + // Specifies the session context value that a request can be classified against. + Context *string `json:"context,omitempty" tf:"context,omitempty"` + + // The workload classifier end time for classification. It's of the HH:MM format in UTC time zone. + EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` + + // The workload classifier importance. The allowed values are low, below_normal, normal, above_normal and high. + Importance *string `json:"importance,omitempty" tf:"importance,omitempty"` + + // Specifies the label value that a request can be classified against. + Label *string `json:"label,omitempty" tf:"label,omitempty"` + + // The workload classifier member name used to classified against. + MemberName *string `json:"memberName,omitempty" tf:"member_name,omitempty"` + + // The workload classifier start time for classification. It's of the HH:MM format in UTC time zone. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type SQLPoolWorkloadClassifierObservation struct { // Specifies the session context value that a request can be classified against. @@ -85,6 +106,18 @@ type SQLPoolWorkloadClassifierParameters struct { type SQLPoolWorkloadClassifierSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLPoolWorkloadClassifierParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLPoolWorkloadClassifierInitParameters `json:"initProvider,omitempty"` } // SQLPoolWorkloadClassifierStatus defines the observed state of SQLPoolWorkloadClassifier. @@ -105,7 +138,7 @@ type SQLPoolWorkloadClassifierStatus struct { type SQLPoolWorkloadClassifier struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.memberName)",message="memberName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.memberName) || has(self.initProvider.memberName)",message="memberName is a required parameter" Spec SQLPoolWorkloadClassifierSpec `json:"spec"` Status SQLPoolWorkloadClassifierStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_sqlpoolworkloadgroup_types.go b/apis/synapse/v1beta1/zz_sqlpoolworkloadgroup_types.go index 28be8df1f..0bf262f2c 100755 --- a/apis/synapse/v1beta1/zz_sqlpoolworkloadgroup_types.go +++ b/apis/synapse/v1beta1/zz_sqlpoolworkloadgroup_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SQLPoolWorkloadGroupInitParameters struct { + + // The workload group importance level. Defaults to normal. + Importance *string `json:"importance,omitempty" tf:"importance,omitempty"` + + // The workload group cap percentage resource. + MaxResourcePercent *float64 `json:"maxResourcePercent,omitempty" tf:"max_resource_percent,omitempty"` + + // The workload group request maximum grant percentage. Defaults to 3. + MaxResourcePercentPerRequest *float64 `json:"maxResourcePercentPerRequest,omitempty" tf:"max_resource_percent_per_request,omitempty"` + + // The workload group minimum percentage resource. + MinResourcePercent *float64 `json:"minResourcePercent,omitempty" tf:"min_resource_percent,omitempty"` + + // The workload group request minimum grant percentage. + MinResourcePercentPerRequest *float64 `json:"minResourcePercentPerRequest,omitempty" tf:"min_resource_percent_per_request,omitempty"` + + // The workload group query execution timeout. + QueryExecutionTimeoutInSeconds *float64 `json:"queryExecutionTimeoutInSeconds,omitempty" tf:"query_execution_timeout_in_seconds,omitempty"` +} + type SQLPoolWorkloadGroupObservation struct { // The ID of the Synapse SQL Pool Workload Group. @@ -85,6 +106,18 @@ type SQLPoolWorkloadGroupParameters struct { type SQLPoolWorkloadGroupSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SQLPoolWorkloadGroupParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SQLPoolWorkloadGroupInitParameters `json:"initProvider,omitempty"` } // SQLPoolWorkloadGroupStatus defines the observed state of SQLPoolWorkloadGroup. @@ -105,8 +138,8 @@ type SQLPoolWorkloadGroupStatus struct { type SQLPoolWorkloadGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.maxResourcePercent)",message="maxResourcePercent is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.minResourcePercent)",message="minResourcePercent is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.maxResourcePercent) || has(self.initProvider.maxResourcePercent)",message="maxResourcePercent is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.minResourcePercent) || has(self.initProvider.minResourcePercent)",message="minResourcePercent is a required parameter" Spec SQLPoolWorkloadGroupSpec `json:"spec"` Status SQLPoolWorkloadGroupStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_workspace_types.go b/apis/synapse/v1beta1/zz_workspace_types.go index ecd7eee1e..3a18559dc 100755 --- a/apis/synapse/v1beta1/zz_workspace_types.go +++ b/apis/synapse/v1beta1/zz_workspace_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AADAdminInitParameters struct { + + // The login name of the Azure AD Administrator of this Synapse Workspace. + Login *string `json:"login,omitempty" tf:"login"` + + // The object id of the Azure AD Administrator of this Synapse Workspace. + ObjectID *string `json:"objectId,omitempty" tf:"object_id"` + + // The tenant id of the Azure AD Administrator of this Synapse Workspace. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id"` +} + type AADAdminObservation struct { // The login name of the Azure AD Administrator of this Synapse Workspace. @@ -40,6 +52,30 @@ type AADAdminParameters struct { TenantID *string `json:"tenantId,omitempty" tf:"tenant_id"` } +type AzureDevopsRepoInitParameters struct { + + // Specifies the Azure DevOps account name. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // Specifies the collaboration branch of the repository to get code from. + BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` + + // The last commit ID. + LastCommitID *string `json:"lastCommitId,omitempty" tf:"last_commit_id,omitempty"` + + // Specifies the name of the Azure DevOps project. + ProjectName *string `json:"projectName,omitempty" tf:"project_name,omitempty"` + + // Specifies the name of the git repository. + RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` + + // Specifies the root folder within the repository. Set to / for the top level. + RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` + + // the ID of the tenant for the Azure DevOps account. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type AzureDevopsRepoObservation struct { // Specifies the Azure DevOps account name. @@ -67,34 +103,40 @@ type AzureDevopsRepoObservation struct { type AzureDevopsRepoParameters struct { // Specifies the Azure DevOps account name. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // Specifies the collaboration branch of the repository to get code from. - // +kubebuilder:validation:Required - BranchName *string `json:"branchName" tf:"branch_name,omitempty"` + // +kubebuilder:validation:Optional + BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` // The last commit ID. // +kubebuilder:validation:Optional LastCommitID *string `json:"lastCommitId,omitempty" tf:"last_commit_id,omitempty"` // Specifies the name of the Azure DevOps project. - // +kubebuilder:validation:Required - ProjectName *string `json:"projectName" tf:"project_name,omitempty"` + // +kubebuilder:validation:Optional + ProjectName *string `json:"projectName,omitempty" tf:"project_name,omitempty"` // Specifies the name of the git repository. - // +kubebuilder:validation:Required - RepositoryName *string `json:"repositoryName" tf:"repository_name,omitempty"` + // +kubebuilder:validation:Optional + RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` // Specifies the root folder within the repository. Set to / for the top level. - // +kubebuilder:validation:Required - RootFolder *string `json:"rootFolder" tf:"root_folder,omitempty"` + // +kubebuilder:validation:Optional + RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` // the ID of the tenant for the Azure DevOps account. // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } +type CustomerManagedKeyInitParameters struct { + + // An identifier for the key. Name needs to match the name of the key used with the azurerm_synapse_workspace_key resource. Defaults to "cmk" if not specified. + KeyName *string `json:"keyName,omitempty" tf:"key_name,omitempty"` +} + type CustomerManagedKeyObservation struct { // An identifier for the key. Name needs to match the name of the key used with the azurerm_synapse_workspace_key resource. Defaults to "cmk" if not specified. @@ -125,6 +167,27 @@ type CustomerManagedKeyParameters struct { KeyVersionlessIDSelector *v1.Selector `json:"keyVersionlessIdSelector,omitempty" tf:"-"` } +type GithubRepoInitParameters struct { + + // Specifies the GitHub account name. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // Specifies the collaboration branch of the repository to get code from. + BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` + + // Specifies the GitHub Enterprise host name. For example: https://github.mydomain.com. + GitURL *string `json:"gitUrl,omitempty" tf:"git_url,omitempty"` + + // The last commit ID. + LastCommitID *string `json:"lastCommitId,omitempty" tf:"last_commit_id,omitempty"` + + // Specifies the name of the git repository. + RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` + + // Specifies the root folder within the repository. Set to / for the top level. + RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` +} + type GithubRepoObservation struct { // Specifies the GitHub account name. @@ -149,12 +212,12 @@ type GithubRepoObservation struct { type GithubRepoParameters struct { // Specifies the GitHub account name. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // Specifies the collaboration branch of the repository to get code from. - // +kubebuilder:validation:Required - BranchName *string `json:"branchName" tf:"branch_name,omitempty"` + // +kubebuilder:validation:Optional + BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` // Specifies the GitHub Enterprise host name. For example: https://github.mydomain.com. // +kubebuilder:validation:Optional @@ -165,12 +228,21 @@ type GithubRepoParameters struct { LastCommitID *string `json:"lastCommitId,omitempty" tf:"last_commit_id,omitempty"` // Specifies the name of the git repository. - // +kubebuilder:validation:Required - RepositoryName *string `json:"repositoryName" tf:"repository_name,omitempty"` + // +kubebuilder:validation:Optional + RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` // Specifies the root folder within the repository. Set to / for the top level. - // +kubebuilder:validation:Required - RootFolder *string `json:"rootFolder" tf:"root_folder,omitempty"` + // +kubebuilder:validation:Optional + RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` +} + +type IdentityInitParameters struct { + + // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Synapse Workspace. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be associated with this Synapse Workspace. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` } type IdentityObservation struct { @@ -195,8 +267,20 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be associated with this Synapse Workspace. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type SQLAADAdminInitParameters struct { + + // The login name of the Azure AD Administrator of this Synapse Workspace SQL. + Login *string `json:"login,omitempty" tf:"login"` + + // The object id of the Azure AD Administrator of this Synapse Workspace SQL. + ObjectID *string `json:"objectId,omitempty" tf:"object_id"` + + // The tenant id of the Azure AD Administrator of this Synapse Workspace SQL. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id"` } type SQLAADAdminObservation struct { @@ -226,6 +310,54 @@ type SQLAADAdminParameters struct { TenantID *string `json:"tenantId,omitempty" tf:"tenant_id"` } +type WorkspaceInitParameters struct { + + // An aad_admin block as defined below. Conflicts with customer_managed_key. + AADAdmin []AADAdminInitParameters `json:"aadAdmin,omitempty" tf:"aad_admin,omitempty"` + + // An azure_devops_repo block as defined below. + AzureDevopsRepo []AzureDevopsRepoInitParameters `json:"azureDevopsRepo,omitempty" tf:"azure_devops_repo,omitempty"` + + // A customer_managed_key block as defined below. Conflicts with aad_admin. + CustomerManagedKey []CustomerManagedKeyInitParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` + + // Is data exfiltration protection enabled in this workspace? If set to true, managed_virtual_network_enabled must also be set to true. Changing this forces a new resource to be created. + DataExfiltrationProtectionEnabled *bool `json:"dataExfiltrationProtectionEnabled,omitempty" tf:"data_exfiltration_protection_enabled,omitempty"` + + // A github_repo block as defined below. + GithubRepo []GithubRepoInitParameters `json:"githubRepo,omitempty" tf:"github_repo,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Allowed AAD Tenant Ids For Linking. + LinkingAllowedForAADTenantIds []*string `json:"linkingAllowedForAadTenantIds,omitempty" tf:"linking_allowed_for_aad_tenant_ids,omitempty"` + + // Specifies the Azure Region where the synapse Workspace should exist. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Is Virtual Network enabled for all computes in this workspace? Changing this forces a new resource to be created. + ManagedVirtualNetworkEnabled *bool `json:"managedVirtualNetworkEnabled,omitempty" tf:"managed_virtual_network_enabled,omitempty"` + + // Whether public network access is allowed for the Cognitive Account. Defaults to true. + PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` + + // The ID of purview account. + PurviewID *string `json:"purviewId,omitempty" tf:"purview_id,omitempty"` + + // An sql_aad_admin block as defined below. + SQLAADAdmin []SQLAADAdminInitParameters `json:"sqlAadAdmin,omitempty" tf:"sql_aad_admin,omitempty"` + + // Specifies The login name of the SQL administrator. Changing this forces a new resource to be created. If this is not provided aad_admin or customer_managed_key must be provided. + SQLAdministratorLogin *string `json:"sqlAdministratorLogin,omitempty" tf:"sql_administrator_login,omitempty"` + + // Are pipelines (running as workspace's system assigned identity) allowed to access SQL pools? + SQLIdentityControlEnabled *bool `json:"sqlIdentityControlEnabled,omitempty" tf:"sql_identity_control_enabled,omitempty"` + + // A mapping of tags which should be assigned to the Synapse Workspace. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type WorkspaceObservation struct { // An aad_admin block as defined below. Conflicts with customer_managed_key. @@ -417,6 +549,18 @@ type WorkspaceParameters struct { type WorkspaceSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WorkspaceParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WorkspaceInitParameters `json:"initProvider,omitempty"` } // WorkspaceStatus defines the observed state of Workspace. @@ -437,7 +581,7 @@ type WorkspaceStatus struct { type Workspace struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec WorkspaceSpec `json:"spec"` Status WorkspaceStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_workspaceaadadmin_types.go b/apis/synapse/v1beta1/zz_workspaceaadadmin_types.go index 2dd820a62..fa5c98a43 100755 --- a/apis/synapse/v1beta1/zz_workspaceaadadmin_types.go +++ b/apis/synapse/v1beta1/zz_workspaceaadadmin_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WorkspaceAADAdminInitParameters struct { + + // The login name of the Azure AD Administrator of this Synapse Workspace. + Login *string `json:"login,omitempty" tf:"login,omitempty"` + + // The object id of the Azure AD Administrator of this Synapse Workspace. + ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` + + // The tenant id of the Azure AD Administrator of this Synapse Workspace. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type WorkspaceAADAdminObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -62,6 +74,18 @@ type WorkspaceAADAdminParameters struct { type WorkspaceAADAdminSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WorkspaceAADAdminParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WorkspaceAADAdminInitParameters `json:"initProvider,omitempty"` } // WorkspaceAADAdminStatus defines the observed state of WorkspaceAADAdmin. @@ -82,9 +106,9 @@ type WorkspaceAADAdminStatus struct { type WorkspaceAADAdmin struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.login)",message="login is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId)",message="objectId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId)",message="tenantId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.login) || has(self.initProvider.login)",message="login is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.objectId) || has(self.initProvider.objectId)",message="objectId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantId) || has(self.initProvider.tenantId)",message="tenantId is a required parameter" Spec WorkspaceAADAdminSpec `json:"spec"` Status WorkspaceAADAdminStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_workspaceextendedauditingpolicy_types.go b/apis/synapse/v1beta1/zz_workspaceextendedauditingpolicy_types.go index 357ead1dd..2aaadd6bc 100755 --- a/apis/synapse/v1beta1/zz_workspaceextendedauditingpolicy_types.go +++ b/apis/synapse/v1beta1/zz_workspaceextendedauditingpolicy_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WorkspaceExtendedAuditingPolicyInitParameters struct { + + // Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its master database audit events to Azure Monitor. Defaults to true. + LogMonitoringEnabled *bool `json:"logMonitoringEnabled,omitempty" tf:"log_monitoring_enabled,omitempty"` + + // The number of days to retain logs for in the storage account. Defaults to 0. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // Is storage_account_access_key value the storage's secondary key? + StorageAccountAccessKeyIsSecondary *bool `json:"storageAccountAccessKeyIsSecondary,omitempty" tf:"storage_account_access_key_is_secondary,omitempty"` +} + type WorkspaceExtendedAuditingPolicyObservation struct { // The ID of the Synapse Workspace Extended Auditing Policy. @@ -85,6 +97,18 @@ type WorkspaceExtendedAuditingPolicyParameters struct { type WorkspaceExtendedAuditingPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider WorkspaceExtendedAuditingPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WorkspaceExtendedAuditingPolicyInitParameters `json:"initProvider,omitempty"` } // WorkspaceExtendedAuditingPolicyStatus defines the observed state of WorkspaceExtendedAuditingPolicy. diff --git a/apis/synapse/v1beta1/zz_workspacesecurityalertpolicy_types.go b/apis/synapse/v1beta1/zz_workspacesecurityalertpolicy_types.go index 9b73536e4..5a723eaff 100755 --- a/apis/synapse/v1beta1/zz_workspacesecurityalertpolicy_types.go +++ b/apis/synapse/v1beta1/zz_workspacesecurityalertpolicy_types.go @@ -13,6 +13,24 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WorkspaceSecurityAlertPolicyInitParameters struct { + + // Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action. + DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` + + // Boolean flag which specifies if the alert is sent to the account administrators or not. Defaults to false. + EmailAccountAdminsEnabled *bool `json:"emailAccountAdminsEnabled,omitempty" tf:"email_account_admins_enabled,omitempty"` + + // Specifies an array of email addresses to which the alert is sent. + EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` + + // Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific workspace. Possible values are Disabled, Enabled and New. + PolicyState *string `json:"policyState,omitempty" tf:"policy_state,omitempty"` + + // Specifies the number of days to keep in the Threat Detection audit logs. Defaults to 0. + RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` +} + type WorkspaceSecurityAlertPolicyObservation struct { // Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action. @@ -99,6 +117,18 @@ type WorkspaceSecurityAlertPolicyParameters struct { type WorkspaceSecurityAlertPolicySpec struct { v1.ResourceSpec `json:",inline"` ForProvider WorkspaceSecurityAlertPolicyParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WorkspaceSecurityAlertPolicyInitParameters `json:"initProvider,omitempty"` } // WorkspaceSecurityAlertPolicyStatus defines the observed state of WorkspaceSecurityAlertPolicy. @@ -119,7 +149,7 @@ type WorkspaceSecurityAlertPolicyStatus struct { type WorkspaceSecurityAlertPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policyState)",message="policyState is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.policyState) || has(self.initProvider.policyState)",message="policyState is a required parameter" Spec WorkspaceSecurityAlertPolicySpec `json:"spec"` Status WorkspaceSecurityAlertPolicyStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_workspacesqlaadadmin_types.go b/apis/synapse/v1beta1/zz_workspacesqlaadadmin_types.go index cbf8c5a2b..bb1c21371 100755 --- a/apis/synapse/v1beta1/zz_workspacesqlaadadmin_types.go +++ b/apis/synapse/v1beta1/zz_workspacesqlaadadmin_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WorkspaceSQLAADAdminInitParameters struct { + + // The login name of the Azure AD Administrator of this Synapse Workspace. + Login *string `json:"login,omitempty" tf:"login,omitempty"` + + // The object id of the Azure AD Administrator of this Synapse Workspace. + ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` + + // The tenant id of the Azure AD Administrator of this Synapse Workspace. + TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` +} + type WorkspaceSQLAADAdminObservation struct { ID *string `json:"id,omitempty" tf:"id,omitempty"` @@ -62,6 +74,18 @@ type WorkspaceSQLAADAdminParameters struct { type WorkspaceSQLAADAdminSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WorkspaceSQLAADAdminParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WorkspaceSQLAADAdminInitParameters `json:"initProvider,omitempty"` } // WorkspaceSQLAADAdminStatus defines the observed state of WorkspaceSQLAADAdmin. @@ -82,9 +106,9 @@ type WorkspaceSQLAADAdminStatus struct { type WorkspaceSQLAADAdmin struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.login)",message="login is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId)",message="objectId is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId)",message="tenantId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.login) || has(self.initProvider.login)",message="login is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.objectId) || has(self.initProvider.objectId)",message="objectId is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tenantId) || has(self.initProvider.tenantId)",message="tenantId is a required parameter" Spec WorkspaceSQLAADAdminSpec `json:"spec"` Status WorkspaceSQLAADAdminStatus `json:"status,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_workspacevulnerabilityassessment_types.go b/apis/synapse/v1beta1/zz_workspacevulnerabilityassessment_types.go index 8b96e56ae..ff39c699f 100755 --- a/apis/synapse/v1beta1/zz_workspacevulnerabilityassessment_types.go +++ b/apis/synapse/v1beta1/zz_workspacevulnerabilityassessment_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type RecurringScansInitParameters struct { + + // Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to false. + EmailSubscriptionAdminsEnabled *bool `json:"emailSubscriptionAdminsEnabled,omitempty" tf:"email_subscription_admins_enabled,omitempty"` + + // Specifies an array of email addresses to which the scan notification is sent. + Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"` + + // Boolean flag which specifies if recurring scans is enabled or disabled. Defaults to false. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` +} + type RecurringScansObservation struct { // Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to false. @@ -40,6 +52,15 @@ type RecurringScansParameters struct { Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } +type WorkspaceVulnerabilityAssessmentInitParameters struct { + + // The recurring scans settings. The recurring_scans block supports fields documented below. + RecurringScans []RecurringScansInitParameters `json:"recurringScans,omitempty" tf:"recurring_scans,omitempty"` + + // A blob storage container path to hold the scan results (e.g. https://example.blob.core.windows.net/VaScans/). + StorageContainerPath *string `json:"storageContainerPath,omitempty" tf:"storage_container_path,omitempty"` +} + type WorkspaceVulnerabilityAssessmentObservation struct { // The ID of the Synapse Workspace Vulnerability Assessment. @@ -92,6 +113,18 @@ type WorkspaceVulnerabilityAssessmentParameters struct { type WorkspaceVulnerabilityAssessmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WorkspaceVulnerabilityAssessmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WorkspaceVulnerabilityAssessmentInitParameters `json:"initProvider,omitempty"` } // WorkspaceVulnerabilityAssessmentStatus defines the observed state of WorkspaceVulnerabilityAssessment. @@ -112,7 +145,7 @@ type WorkspaceVulnerabilityAssessmentStatus struct { type WorkspaceVulnerabilityAssessment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageContainerPath)",message="storageContainerPath is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageContainerPath) || has(self.initProvider.storageContainerPath)",message="storageContainerPath is a required parameter" Spec WorkspaceVulnerabilityAssessmentSpec `json:"spec"` Status WorkspaceVulnerabilityAssessmentStatus `json:"status,omitempty"` } diff --git a/apis/timeseriesinsights/v1beta1/zz_eventsourceeventhub_types.go b/apis/timeseriesinsights/v1beta1/zz_eventsourceeventhub_types.go index 8ba38e160..dfe652e98 100755 --- a/apis/timeseriesinsights/v1beta1/zz_eventsourceeventhub_types.go +++ b/apis/timeseriesinsights/v1beta1/zz_eventsourceeventhub_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EventSourceEventHubInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the value that will be used as the event source's timestamp. This value defaults to the event creation time. + TimestampPropertyName *string `json:"timestampPropertyName,omitempty" tf:"timestamp_property_name,omitempty"` +} + type EventSourceEventHubObservation struct { // Specifies the name of the EventHub Consumer Group that holds the partitions from which events will be read. @@ -149,6 +161,18 @@ type EventSourceEventHubParameters struct { type EventSourceEventHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EventSourceEventHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EventSourceEventHubInitParameters `json:"initProvider,omitempty"` } // EventSourceEventHubStatus defines the observed state of EventSourceEventHub. @@ -169,8 +193,8 @@ type EventSourceEventHubStatus struct { type EventSourceEventHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sharedAccessKeySecretRef)",message="sharedAccessKeySecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sharedAccessKeySecretRef)",message="sharedAccessKeySecretRef is a required parameter" Spec EventSourceEventHubSpec `json:"spec"` Status EventSourceEventHubStatus `json:"status,omitempty"` } diff --git a/apis/timeseriesinsights/v1beta1/zz_eventsourceiothub_types.go b/apis/timeseriesinsights/v1beta1/zz_eventsourceiothub_types.go index 9c32bdd39..db5b49363 100755 --- a/apis/timeseriesinsights/v1beta1/zz_eventsourceiothub_types.go +++ b/apis/timeseriesinsights/v1beta1/zz_eventsourceiothub_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type EventSourceIOTHubInitParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name of the Shared Access key that grants the Event Source access to the IotHub. + SharedAccessKeyName *string `json:"sharedAccessKeyName,omitempty" tf:"shared_access_key_name,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the value that will be used as the event source's timestamp. This value defaults to the event creation time. + TimestampPropertyName *string `json:"timestampPropertyName,omitempty" tf:"timestamp_property_name,omitempty"` +} + type EventSourceIOTHubObservation struct { // Specifies the name of the IotHub Consumer Group that holds the partitions from which events will be read. @@ -124,6 +139,18 @@ type EventSourceIOTHubParameters struct { type EventSourceIOTHubSpec struct { v1.ResourceSpec `json:",inline"` ForProvider EventSourceIOTHubParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider EventSourceIOTHubInitParameters `json:"initProvider,omitempty"` } // EventSourceIOTHubStatus defines the observed state of EventSourceIOTHub. @@ -144,9 +171,9 @@ type EventSourceIOTHubStatus struct { type EventSourceIOTHub struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sharedAccessKeySecretRef)",message="sharedAccessKeySecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sharedAccessKeyName)",message="sharedAccessKeyName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sharedAccessKeySecretRef)",message="sharedAccessKeySecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sharedAccessKeyName) || has(self.initProvider.sharedAccessKeyName)",message="sharedAccessKeyName is a required parameter" Spec EventSourceIOTHubSpec `json:"spec"` Status EventSourceIOTHubStatus `json:"status,omitempty"` } diff --git a/apis/timeseriesinsights/v1beta1/zz_gen2environment_types.go b/apis/timeseriesinsights/v1beta1/zz_gen2environment_types.go index b9438060c..f4f871af1 100755 --- a/apis/timeseriesinsights/v1beta1/zz_gen2environment_types.go +++ b/apis/timeseriesinsights/v1beta1/zz_gen2environment_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type Gen2EnvironmentInitParameters struct { + + // A list of property ids for the Azure IoT Time Series Insights Gen2 Environment. Changing this forces a new resource to be created. + IDProperties []*string `json:"idProperties,omitempty" tf:"id_properties,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the SKU Name for this IoT Time Series Insights Gen2 Environment. Currently it supports only L1. For gen2, capacity cannot be specified. Changing this forces a new resource to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A storage block as defined below. + Storage []StorageInitParameters `json:"storage,omitempty" tf:"storage,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies the ISO8601 timespan specifying the minimum number of days the environment's events will be available for query. + WarmStoreDataRetentionTime *string `json:"warmStoreDataRetentionTime,omitempty" tf:"warm_store_data_retention_time,omitempty"` +} + type Gen2EnvironmentObservation struct { // The FQDN used to access the environment data. @@ -83,6 +104,9 @@ type Gen2EnvironmentParameters struct { WarmStoreDataRetentionTime *string `json:"warmStoreDataRetentionTime,omitempty" tf:"warm_store_data_retention_time,omitempty"` } +type StorageInitParameters struct { +} + type StorageObservation struct { // Name of storage account for Azure IoT Time Series Insights Gen2 Environment. Changing this forces a new resource to be created. @@ -113,6 +137,18 @@ type StorageParameters struct { type Gen2EnvironmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider Gen2EnvironmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider Gen2EnvironmentInitParameters `json:"initProvider,omitempty"` } // Gen2EnvironmentStatus defines the observed state of Gen2Environment. @@ -133,10 +169,10 @@ type Gen2EnvironmentStatus struct { type Gen2Environment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.idProperties)",message="idProperties is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storage)",message="storage is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.idProperties) || has(self.initProvider.idProperties)",message="idProperties is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storage) || has(self.initProvider.storage)",message="storage is a required parameter" Spec Gen2EnvironmentSpec `json:"spec"` Status Gen2EnvironmentStatus `json:"status,omitempty"` } diff --git a/apis/timeseriesinsights/v1beta1/zz_generated.deepcopy.go b/apis/timeseriesinsights/v1beta1/zz_generated.deepcopy.go index 48652e4e9..a59af76b5 100644 --- a/apis/timeseriesinsights/v1beta1/zz_generated.deepcopy.go +++ b/apis/timeseriesinsights/v1beta1/zz_generated.deepcopy.go @@ -41,6 +41,46 @@ func (in *EventSourceEventHub) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventSourceEventHubInitParameters) DeepCopyInto(out *EventSourceEventHubInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TimestampPropertyName != nil { + in, out := &in.TimestampPropertyName, &out.TimestampPropertyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventSourceEventHubInitParameters. +func (in *EventSourceEventHubInitParameters) DeepCopy() *EventSourceEventHubInitParameters { + if in == nil { + return nil + } + out := new(EventSourceEventHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventSourceEventHubList) DeepCopyInto(out *EventSourceEventHubList) { *out = *in @@ -284,6 +324,7 @@ func (in *EventSourceEventHubSpec) DeepCopyInto(out *EventSourceEventHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventSourceEventHubSpec. @@ -340,6 +381,51 @@ func (in *EventSourceIOTHub) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EventSourceIOTHubInitParameters) DeepCopyInto(out *EventSourceIOTHubInitParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SharedAccessKeyName != nil { + in, out := &in.SharedAccessKeyName, &out.SharedAccessKeyName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TimestampPropertyName != nil { + in, out := &in.TimestampPropertyName, &out.TimestampPropertyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventSourceIOTHubInitParameters. +func (in *EventSourceIOTHubInitParameters) DeepCopy() *EventSourceIOTHubInitParameters { + if in == nil { + return nil + } + out := new(EventSourceIOTHubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *EventSourceIOTHubList) DeepCopyInto(out *EventSourceIOTHubList) { *out = *in @@ -553,6 +639,7 @@ func (in *EventSourceIOTHubSpec) DeepCopyInto(out *EventSourceIOTHubSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventSourceIOTHubSpec. @@ -609,6 +696,67 @@ func (in *Gen2Environment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Gen2EnvironmentInitParameters) DeepCopyInto(out *Gen2EnvironmentInitParameters) { + *out = *in + if in.IDProperties != nil { + in, out := &in.IDProperties, &out.IDProperties + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Storage != nil { + in, out := &in.Storage, &out.Storage + *out = make([]StorageInitParameters, len(*in)) + copy(*out, *in) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.WarmStoreDataRetentionTime != nil { + in, out := &in.WarmStoreDataRetentionTime, &out.WarmStoreDataRetentionTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Gen2EnvironmentInitParameters. +func (in *Gen2EnvironmentInitParameters) DeepCopy() *Gen2EnvironmentInitParameters { + if in == nil { + return nil + } + out := new(Gen2EnvironmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Gen2EnvironmentList) DeepCopyInto(out *Gen2EnvironmentList) { *out = *in @@ -802,6 +950,7 @@ func (in *Gen2EnvironmentSpec) DeepCopyInto(out *Gen2EnvironmentSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Gen2EnvironmentSpec. @@ -831,6 +980,31 @@ func (in *Gen2EnvironmentStatus) DeepCopy() *Gen2EnvironmentStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *KeyPropertyInitParameters) DeepCopyInto(out *KeyPropertyInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KeyPropertyInitParameters. +func (in *KeyPropertyInitParameters) DeepCopy() *KeyPropertyInitParameters { + if in == nil { + return nil + } + out := new(KeyPropertyInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *KeyPropertyObservation) DeepCopyInto(out *KeyPropertyObservation) { *out = *in @@ -908,6 +1082,53 @@ func (in *ReferenceDataSet) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ReferenceDataSetInitParameters) DeepCopyInto(out *ReferenceDataSetInitParameters) { + *out = *in + if in.DataStringComparisonBehavior != nil { + in, out := &in.DataStringComparisonBehavior, &out.DataStringComparisonBehavior + *out = new(string) + **out = **in + } + if in.KeyProperty != nil { + in, out := &in.KeyProperty, &out.KeyProperty + *out = make([]KeyPropertyInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReferenceDataSetInitParameters. +func (in *ReferenceDataSetInitParameters) DeepCopy() *ReferenceDataSetInitParameters { + if in == nil { + return nil + } + out := new(ReferenceDataSetInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ReferenceDataSetList) DeepCopyInto(out *ReferenceDataSetList) { *out = *in @@ -1064,6 +1285,7 @@ func (in *ReferenceDataSetSpec) DeepCopyInto(out *ReferenceDataSetSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReferenceDataSetSpec. @@ -1120,6 +1342,61 @@ func (in *StandardEnvironment) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StandardEnvironmentInitParameters) DeepCopyInto(out *StandardEnvironmentInitParameters) { + *out = *in + if in.DataRetentionTime != nil { + in, out := &in.DataRetentionTime, &out.DataRetentionTime + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.PartitionKey != nil { + in, out := &in.PartitionKey, &out.PartitionKey + *out = new(string) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.StorageLimitExceededBehavior != nil { + in, out := &in.StorageLimitExceededBehavior, &out.StorageLimitExceededBehavior + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StandardEnvironmentInitParameters. +func (in *StandardEnvironmentInitParameters) DeepCopy() *StandardEnvironmentInitParameters { + if in == nil { + return nil + } + out := new(StandardEnvironmentInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StandardEnvironmentList) DeepCopyInto(out *StandardEnvironmentList) { *out = *in @@ -1292,6 +1569,7 @@ func (in *StandardEnvironmentSpec) DeepCopyInto(out *StandardEnvironmentSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StandardEnvironmentSpec. @@ -1321,6 +1599,21 @@ func (in *StandardEnvironmentStatus) DeepCopy() *StandardEnvironmentStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageInitParameters) DeepCopyInto(out *StorageInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageInitParameters. +func (in *StorageInitParameters) DeepCopy() *StorageInitParameters { + if in == nil { + return nil + } + out := new(StorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageObservation) DeepCopyInto(out *StorageObservation) { *out = *in diff --git a/apis/timeseriesinsights/v1beta1/zz_generated.managed.go b/apis/timeseriesinsights/v1beta1/zz_generated.managed.go index f35099867..db641346f 100644 --- a/apis/timeseriesinsights/v1beta1/zz_generated.managed.go +++ b/apis/timeseriesinsights/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *EventSourceEventHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this EventSourceEventHub. -func (mg *EventSourceEventHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this EventSourceEventHub. +func (mg *EventSourceEventHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this EventSourceEventHub. @@ -55,9 +55,9 @@ func (mg *EventSourceEventHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this EventSourceEventHub. -func (mg *EventSourceEventHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this EventSourceEventHub. +func (mg *EventSourceEventHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this EventSourceEventHub. @@ -93,9 +93,9 @@ func (mg *EventSourceIOTHub) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this EventSourceIOTHub. -func (mg *EventSourceIOTHub) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this EventSourceIOTHub. +func (mg *EventSourceIOTHub) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this EventSourceIOTHub. @@ -131,9 +131,9 @@ func (mg *EventSourceIOTHub) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this EventSourceIOTHub. -func (mg *EventSourceIOTHub) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this EventSourceIOTHub. +func (mg *EventSourceIOTHub) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this EventSourceIOTHub. @@ -169,9 +169,9 @@ func (mg *Gen2Environment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this Gen2Environment. -func (mg *Gen2Environment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this Gen2Environment. +func (mg *Gen2Environment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this Gen2Environment. @@ -207,9 +207,9 @@ func (mg *Gen2Environment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this Gen2Environment. -func (mg *Gen2Environment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this Gen2Environment. +func (mg *Gen2Environment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this Gen2Environment. @@ -245,9 +245,9 @@ func (mg *ReferenceDataSet) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ReferenceDataSet. -func (mg *ReferenceDataSet) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ReferenceDataSet. +func (mg *ReferenceDataSet) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ReferenceDataSet. @@ -283,9 +283,9 @@ func (mg *ReferenceDataSet) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ReferenceDataSet. -func (mg *ReferenceDataSet) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ReferenceDataSet. +func (mg *ReferenceDataSet) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ReferenceDataSet. @@ -321,9 +321,9 @@ func (mg *StandardEnvironment) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this StandardEnvironment. -func (mg *StandardEnvironment) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this StandardEnvironment. +func (mg *StandardEnvironment) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this StandardEnvironment. @@ -359,9 +359,9 @@ func (mg *StandardEnvironment) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this StandardEnvironment. -func (mg *StandardEnvironment) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this StandardEnvironment. +func (mg *StandardEnvironment) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this StandardEnvironment. diff --git a/apis/timeseriesinsights/v1beta1/zz_generated_terraformed.go b/apis/timeseriesinsights/v1beta1/zz_generated_terraformed.go index 31c72e0b1..d0d7ae904 100755 --- a/apis/timeseriesinsights/v1beta1/zz_generated_terraformed.go +++ b/apis/timeseriesinsights/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *EventSourceEventHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this EventSourceEventHub +func (tr *EventSourceEventHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this EventSourceEventHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *EventSourceEventHub) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *EventSourceIOTHub) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this EventSourceIOTHub +func (tr *EventSourceIOTHub) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this EventSourceIOTHub using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *EventSourceIOTHub) LateInitialize(attrs []byte) (bool, error) { @@ -217,6 +237,16 @@ func (tr *Gen2Environment) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this Gen2Environment +func (tr *Gen2Environment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this Gen2Environment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *Gen2Environment) LateInitialize(attrs []byte) (bool, error) { @@ -291,6 +321,16 @@ func (tr *ReferenceDataSet) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ReferenceDataSet +func (tr *ReferenceDataSet) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ReferenceDataSet using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ReferenceDataSet) LateInitialize(attrs []byte) (bool, error) { @@ -365,6 +405,16 @@ func (tr *StandardEnvironment) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this StandardEnvironment +func (tr *StandardEnvironment) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this StandardEnvironment using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *StandardEnvironment) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/timeseriesinsights/v1beta1/zz_referencedataset_types.go b/apis/timeseriesinsights/v1beta1/zz_referencedataset_types.go index 7cbb8119b..17ab153a9 100755 --- a/apis/timeseriesinsights/v1beta1/zz_referencedataset_types.go +++ b/apis/timeseriesinsights/v1beta1/zz_referencedataset_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type KeyPropertyInitParameters struct { + + // The name of the key property. Changing this forces a new resource to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The data type of the key property. Valid values include Bool, DateTime, Double, String. Changing this forces a new resource to be created. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type KeyPropertyObservation struct { // The name of the key property. Changing this forces a new resource to be created. @@ -25,12 +34,27 @@ type KeyPropertyObservation struct { type KeyPropertyParameters struct { // The name of the key property. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The data type of the key property. Valid values include Bool, DateTime, Double, String. Changing this forces a new resource to be created. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type ReferenceDataSetInitParameters struct { + + // The comparison behavior that will be used to compare keys. Valid values include Ordinal and OrdinalIgnoreCase. Defaults to Ordinal. Changing this forces a new resource to be created. + DataStringComparisonBehavior *string `json:"dataStringComparisonBehavior,omitempty" tf:"data_string_comparison_behavior,omitempty"` + + // A key_property block as defined below. Changing this forces a new resource to be created. + KeyProperty []KeyPropertyInitParameters `json:"keyProperty,omitempty" tf:"key_property,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type ReferenceDataSetObservation struct { @@ -91,6 +115,18 @@ type ReferenceDataSetParameters struct { type ReferenceDataSetSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ReferenceDataSetParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ReferenceDataSetInitParameters `json:"initProvider,omitempty"` } // ReferenceDataSetStatus defines the observed state of ReferenceDataSet. @@ -111,8 +147,8 @@ type ReferenceDataSetStatus struct { type ReferenceDataSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.keyProperty)",message="keyProperty is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.keyProperty) || has(self.initProvider.keyProperty)",message="keyProperty is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec ReferenceDataSetSpec `json:"spec"` Status ReferenceDataSetStatus `json:"status,omitempty"` } diff --git a/apis/timeseriesinsights/v1beta1/zz_standardenvironment_types.go b/apis/timeseriesinsights/v1beta1/zz_standardenvironment_types.go index 2e6129744..19eaa52e9 100755 --- a/apis/timeseriesinsights/v1beta1/zz_standardenvironment_types.go +++ b/apis/timeseriesinsights/v1beta1/zz_standardenvironment_types.go @@ -13,6 +13,27 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type StandardEnvironmentInitParameters struct { + + // Specifies the ISO8601 timespan specifying the minimum number of days the environment's events will be available for query. Changing this forces a new resource to be created. + DataRetentionTime *string `json:"dataRetentionTime,omitempty" tf:"data_retention_time,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name of the event property which will be used to partition data. Changing this forces a new resource to be created. + PartitionKey *string `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` + + // Specifies the SKU Name for this IoT Time Series Insights Standard Environment. It is string consisting of two parts separated by an underscore(_).The first part is the name, valid values include: S1 and S2. The second part is the capacity (e.g. the number of deployed units of the sku), which must be a positive integer (e.g. S1_1). Possible values are S1_1, S1_2, S1_3, S1_4, S1_5, S1_6, S1_7, S1_8, S1_9, S1_10, S2_1, S2_2, S2_3, S2_4, S2_5, S2_6, S2_7, S2_8, S2_9 and S2_10. Changing this forces a new resource to be created. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // Specifies the behaviour the IoT Time Series Insights service should take when the environment's capacity has been exceeded. Valid values include PauseIngress and PurgeOldData. Defaults to PurgeOldData. + StorageLimitExceededBehavior *string `json:"storageLimitExceededBehavior,omitempty" tf:"storage_limit_exceeded_behavior,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + type StandardEnvironmentObservation struct { // Specifies the ISO8601 timespan specifying the minimum number of days the environment's events will be available for query. Changing this forces a new resource to be created. @@ -84,6 +105,18 @@ type StandardEnvironmentParameters struct { type StandardEnvironmentSpec struct { v1.ResourceSpec `json:",inline"` ForProvider StandardEnvironmentParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider StandardEnvironmentInitParameters `json:"initProvider,omitempty"` } // StandardEnvironmentStatus defines the observed state of StandardEnvironment. @@ -104,9 +137,9 @@ type StandardEnvironmentStatus struct { type StandardEnvironment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dataRetentionTime)",message="dataRetentionTime is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.dataRetentionTime) || has(self.initProvider.dataRetentionTime)",message="dataRetentionTime is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec StandardEnvironmentSpec `json:"spec"` Status StandardEnvironmentStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_appactiveslot_types.go b/apis/web/v1beta1/zz_appactiveslot_types.go index 03f68c3b2..db44d8f3e 100755 --- a/apis/web/v1beta1/zz_appactiveslot_types.go +++ b/apis/web/v1beta1/zz_appactiveslot_types.go @@ -13,6 +13,13 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppActiveSlotInitParameters struct { + + // The swap action should overwrite the Production slot's network configuration with the configuration from this slot. Defaults to true. Changing this forces a new resource to be created. + // The swap action should overwrite the Production slot's network configuration with the configuration from this slot. Defaults to `true`. + OverwriteNetworkConfig *bool `json:"overwriteNetworkConfig,omitempty" tf:"overwrite_network_config,omitempty"` +} + type AppActiveSlotObservation struct { // The ID of the Web App Active Slot @@ -58,6 +65,18 @@ type AppActiveSlotParameters struct { type AppActiveSlotSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppActiveSlotParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppActiveSlotInitParameters `json:"initProvider,omitempty"` } // AppActiveSlotStatus defines the observed state of AppActiveSlot. diff --git a/apis/web/v1beta1/zz_apphybridconnection_types.go b/apis/web/v1beta1/zz_apphybridconnection_types.go index 46b71149a..1338f180f 100755 --- a/apis/web/v1beta1/zz_apphybridconnection_types.go +++ b/apis/web/v1beta1/zz_apphybridconnection_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppHybridConnectionInitParameters struct { + + // The hostname of the endpoint. + // The hostname of the endpoint. + HostName *string `json:"hostname,omitempty" tf:"hostname,omitempty"` + + // The port to use for the endpoint. + // The port to use for the endpoint + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // The name of the Relay key with Send permission to use. Defaults to RootManageSharedAccessKey + // The name of the Relay key with `Send` permission to use. Defaults to `RootManageSharedAccessKey` + SendKeyName *string `json:"sendKeyName,omitempty" tf:"send_key_name,omitempty"` +} + type AppHybridConnectionObservation struct { // The hostname of the endpoint. @@ -107,6 +122,18 @@ type AppHybridConnectionParameters struct { type AppHybridConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppHybridConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppHybridConnectionInitParameters `json:"initProvider,omitempty"` } // AppHybridConnectionStatus defines the observed state of AppHybridConnection. @@ -127,8 +154,8 @@ type AppHybridConnectionStatus struct { type AppHybridConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.hostname)",message="hostname is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.port)",message="port is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.hostname) || has(self.initProvider.hostname)",message="hostname is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.port) || has(self.initProvider.port)",message="port is a required parameter" Spec AppHybridConnectionSpec `json:"spec"` Status AppHybridConnectionStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_appserviceplan_types.go b/apis/web/v1beta1/zz_appserviceplan_types.go index 6b24302f2..035247f56 100755 --- a/apis/web/v1beta1/zz_appserviceplan_types.go +++ b/apis/web/v1beta1/zz_appserviceplan_types.go @@ -13,6 +13,39 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AppServicePlanInitParameters struct { + + // The ID of the App Service Environment where the App Service Plan should be located. Changing forces a new resource to be created. + AppServiceEnvironmentID *string `json:"appServiceEnvironmentId,omitempty" tf:"app_service_environment_id,omitempty"` + + // Whether to create a xenon App Service Plan. + IsXenon *bool `json:"isXenon,omitempty" tf:"is_xenon,omitempty"` + + // The kind of the App Service Plan to create. Possible values are Windows (also available as App), Linux, elastic (for Premium Consumption), xenon and FunctionApp (for a Consumption Plan). Defaults to Windows. Changing this forces a new resource to be created. + Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan. + MaximumElasticWorkerCount *float64 `json:"maximumElasticWorkerCount,omitempty" tf:"maximum_elastic_worker_count,omitempty"` + + // Can Apps assigned to this App Service Plan be scaled independently? If set to false apps assigned to this plan will scale to all instances of the plan. + PerSiteScaling *bool `json:"perSiteScaling,omitempty" tf:"per_site_scaling,omitempty"` + + // Is this App Service Plan Reserved. + Reserved *bool `json:"reserved,omitempty" tf:"reserved,omitempty"` + + // A sku block as documented below. + Sku []SkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // Specifies if the App Service Plan should be Zone Redundant. Changing this forces a new resource to be created. + ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` +} + type AppServicePlanObservation struct { // The ID of the App Service Environment where the App Service Plan should be located. Changing forces a new resource to be created. @@ -111,6 +144,18 @@ type AppServicePlanParameters struct { ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } +type SkuInitParameters struct { + + // Specifies the number of workers associated with this App Service Plan. + Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` + + // Specifies the plan's instance size. + Size *string `json:"size,omitempty" tf:"size,omitempty"` + + // Specifies the plan's pricing tier. + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` +} + type SkuObservation struct { // Specifies the number of workers associated with this App Service Plan. @@ -130,18 +175,30 @@ type SkuParameters struct { Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // Specifies the plan's instance size. - // +kubebuilder:validation:Required - Size *string `json:"size" tf:"size,omitempty"` + // +kubebuilder:validation:Optional + Size *string `json:"size,omitempty" tf:"size,omitempty"` // Specifies the plan's pricing tier. - // +kubebuilder:validation:Required - Tier *string `json:"tier" tf:"tier,omitempty"` + // +kubebuilder:validation:Optional + Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } // AppServicePlanSpec defines the desired state of AppServicePlan type AppServicePlanSpec struct { v1.ResourceSpec `json:",inline"` ForProvider AppServicePlanParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider AppServicePlanInitParameters `json:"initProvider,omitempty"` } // AppServicePlanStatus defines the observed state of AppServicePlan. @@ -162,8 +219,8 @@ type AppServicePlanStatus struct { type AppServicePlan struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku)",message="sku is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || has(self.initProvider.sku)",message="sku is a required parameter" Spec AppServicePlanSpec `json:"spec"` Status AppServicePlanStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_functionapp_types.go b/apis/web/v1beta1/zz_functionapp_types.go index 8746aef07..200e7adfd 100755 --- a/apis/web/v1beta1/zz_functionapp_types.go +++ b/apis/web/v1beta1/zz_functionapp_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActiveDirectoryInitParameters struct { + + // Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + type ActiveDirectoryObservation struct { // Allowed audience values to consider when validating JWTs issued by Azure Active Directory. @@ -29,14 +38,59 @@ type ActiveDirectoryParameters struct { AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. // +kubebuilder:validation:Optional ClientSecretSecretRef *v1.SecretKeySelector `json:"clientSecretSecretRef,omitempty" tf:"-"` } +type AuthSettingsInitParameters struct { + + // A active_directory block as defined below. + ActiveDirectory []ActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value". + AdditionalLoginParams map[string]*string `json:"additionalLoginParams,omitempty" tf:"additional_login_params,omitempty"` + + // External URLs that can be redirected to as part of logging in or logging out of the app. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The default provider to use when multiple providers have been set up. Possible values are AzureActiveDirectory, Facebook, Google, MicrosoftAccount and Twitter. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // Is Authentication enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A facebook block as defined below. + Facebook []FacebookInitParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` + + // A google block as defined below. + Google []GoogleInitParameters `json:"google,omitempty" tf:"google,omitempty"` + + // Issuer URI. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // A microsoft block as defined below. + Microsoft []MicrosoftInitParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` + + // The runtime version of the Authentication/Authorization module. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72. + TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` + + // If enabled the module will durably store platform-specific security tokens that are obtained during login flows. Defaults to false. + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // A twitter block as defined below. + Twitter []TwitterInitParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` + + // The action to take when an unauthenticated client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage. + UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` +} + type AuthSettingsObservation struct { // A active_directory block as defined below. @@ -101,8 +155,8 @@ type AuthSettingsParameters struct { DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Is Authentication enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. // +kubebuilder:validation:Optional @@ -141,6 +195,15 @@ type AuthSettingsParameters struct { UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } +type ConnectionStringInitParameters struct { + + // The name of the Connection String. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type ConnectionStringObservation struct { // The name of the Connection String. @@ -153,18 +216,27 @@ type ConnectionStringObservation struct { type ConnectionStringParameters struct { // The name of the Connection String. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The value for the Connection String. // +kubebuilder:validation:Required ValueSecretRef v1.SecretKeySelector `json:"valueSecretRef" tf:"-"` } +type CorsInitParameters struct { + + // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // Are credentials supported? + SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` +} + type CorsObservation struct { // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. @@ -177,14 +249,23 @@ type CorsObservation struct { type CorsParameters struct { // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. - // +kubebuilder:validation:Required - AllowedOrigins []*string `json:"allowedOrigins" tf:"allowed_origins,omitempty"` + // +kubebuilder:validation:Optional + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Are credentials supported? // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } +type FacebookInitParameters struct { + + // The App ID of the Facebook app used for login + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type FacebookObservation struct { // The App ID of the Facebook app used for login @@ -197,8 +278,8 @@ type FacebookObservation struct { type FacebookParameters struct { // The App ID of the Facebook app used for login - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. // +kubebuilder:validation:Required @@ -209,6 +290,60 @@ type FacebookParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type FunctionAppInitParameters struct { + + // A map of key-value pairs for App Settings and custom values. + AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` + + // A auth_settings block as defined below. + AuthSettings []AuthSettingsInitParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` + + // The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional. + ClientCertMode *string `json:"clientCertMode,omitempty" tf:"client_cert_mode,omitempty"` + + // An connection_string block as defined below. + ConnectionString []ConnectionStringInitParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan. + DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` + + // Should the built-in logging of this Function App be enabled? Defaults to true. + EnableBuiltinLogging *bool `json:"enableBuiltinLogging,omitempty" tf:"enable_builtin_logging,omitempty"` + + // Is the Function App enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Can the Function App only be accessed via HTTPS? Defaults to false. + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // An identity block as defined below. + Identity []IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information. + KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A string indicating the Operating System type for this function app. Possible values are linux and “(empty string). Changing this forces a new resource to be created. Defaults to "". + OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` + + // A site_config object as defined below. + SiteConfig []SiteConfigInitParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` + + // A source_control block, as defined below. + SourceControl []SourceControlInitParameters `json:"sourceControl,omitempty" tf:"source_control,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The runtime version associated with the Function App. Defaults to ~1. + Version *string `json:"version,omitempty" tf:"version,omitempty"` +} + type FunctionAppObservation struct { // The ID of the App Service Plan within which to create this Function App. @@ -408,6 +543,15 @@ type FunctionAppParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type GoogleInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type GoogleObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -420,8 +564,8 @@ type GoogleObservation struct { type GoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. // +kubebuilder:validation:Required @@ -432,6 +576,21 @@ type GoogleParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type HeadersInitParameters struct { + + // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // A list to allow the Azure FrontDoor health probe header. Only allowed value is "1". + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8 + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // A list of allowed 'X-Forwarded-Host' domains with a maximum of 8. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type HeadersObservation struct { // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. @@ -466,6 +625,27 @@ type HeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type IPRestrictionInitParameters struct { + + // Allow or Deny access for this IP range. Defaults to Allow. + Action *string `json:"action,omitempty" tf:"action"` + + // The headers for this specific scm_ip_restriction as defined below. + Headers []HeadersInitParameters `json:"headers,omitempty" tf:"headers"` + + // The IP Address used for this IP Restriction in CIDR notation. + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address"` + + // The name for this IP Restriction. + Name *string `json:"name,omitempty" tf:"name"` + + // The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified. + Priority *float64 `json:"priority,omitempty" tf:"priority"` + + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag"` +} + type IPRestrictionObservation struct { // Allow or Deny access for this IP range. Defaults to Allow. @@ -531,6 +711,15 @@ type IPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type IdentityInitParameters struct { + + // Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type IdentityObservation struct { // Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned. @@ -553,8 +742,17 @@ type IdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type MicrosoftInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } type MicrosoftObservation struct { @@ -569,8 +767,8 @@ type MicrosoftObservation struct { type MicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. // +kubebuilder:validation:Required @@ -581,6 +779,21 @@ type MicrosoftParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type ScmIPRestrictionHeadersInitParameters struct { + + // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // A list to allow the Azure FrontDoor health probe header. Only allowed value is "1". + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8 + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // A list of allowed 'X-Forwarded-Host' domains with a maximum of 8. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type ScmIPRestrictionHeadersObservation struct { // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. @@ -615,6 +828,27 @@ type ScmIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type ScmIPRestrictionInitParameters struct { + + // Allow or Deny access for this IP range. Defaults to Allow. + Action *string `json:"action,omitempty" tf:"action"` + + // The headers for this specific scm_ip_restriction as defined below. + Headers []ScmIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers"` + + // The IP Address used for this IP Restriction in CIDR notation. + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address"` + + // The name for this IP Restriction. + Name *string `json:"name,omitempty" tf:"name"` + + // The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified. + Priority *float64 `json:"priority,omitempty" tf:"priority"` + + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag"` +} + type ScmIPRestrictionObservation struct { // Allow or Deny access for this IP range. Defaults to Allow. @@ -680,6 +914,72 @@ type ScmIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type SiteConfigInitParameters struct { + + // Should the Function App be loaded at all times? Defaults to false. + AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` + + // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` + + // The name of the slot to automatically swap to during deployment + AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` + + // A cors block as defined below. + Cors []CorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // The version of the .NET framework's CLR used in this function app. Possible values are v4.0 (including .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information on which .NET Framework version to use based on the runtime version you're targeting - please see this table. Defaults to v4.0. + DotnetFrameworkVersion *string `json:"dotnetFrameworkVersion,omitempty" tf:"dotnet_framework_version,omitempty"` + + // The number of minimum instances for this function app. Only affects apps on the Premium plan. + ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` + + // State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to AllAllowed. + FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` + + // Path which will be checked for this function app health. + HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` + + // Specifies whether or not the HTTP2 protocol should be enabled. Defaults to false. + Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` + + // A List of objects representing IP restrictions as defined below. + IPRestriction []IPRestrictionInitParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` + + // Java version hosted by the function app in Azure. Possible values are 1.8, 11 & 17 (In-Preview). + JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` + + // Linux App Framework and version for the AppService, e.g. DOCKER|(golang:latest). + LinuxFxVersion *string `json:"linuxFxVersion,omitempty" tf:"linux_fx_version,omitempty"` + + // The minimum supported TLS version for the function app. Possible values are 1.0, 1.1, and 1.2. Defaults to 1.2 for new function apps. + MinTLSVersion *string `json:"minTlsVersion,omitempty" tf:"min_tls_version,omitempty"` + + // The number of pre-warmed instances for this function app. Only affects apps on the Premium plan. + PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` + + // Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults to false. + RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` + + // A List of objects representing IP restrictions as defined below. + ScmIPRestriction []ScmIPRestrictionInitParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` + + // The type of Source Control used by the Function App. Valid values include: BitBucketGit, BitBucketHg, CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, and VSTSRM. + ScmType *string `json:"scmType,omitempty" tf:"scm_type,omitempty"` + + // IP security restrictions for scm to use main. Defaults to false. + ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` + + // Should the Function App run in 32 bit mode, rather than 64 bit mode? Defaults to true. + Use32BitWorkerProcess *bool `json:"use32BitWorkerProcess,omitempty" tf:"use_32_bit_worker_process,omitempty"` + + // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to false. + VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` + + // Should WebSockets be enabled? + WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` +} + type SiteConfigObservation struct { // Should the Function App be loaded at all times? Defaults to false. @@ -833,6 +1133,9 @@ type SiteConfigParameters struct { WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` } +type SiteCredentialInitParameters struct { +} + type SiteCredentialObservation struct { // The password associated with the username, which can be used to publish to this App Service. @@ -845,6 +1148,24 @@ type SiteCredentialObservation struct { type SiteCredentialParameters struct { } +type SourceControlInitParameters struct { + + // The branch of the remote repository to use. Defaults to 'master'. + Branch *string `json:"branch,omitempty" tf:"branch,omitempty"` + + // Limits to manual integration. Defaults to false if not specified. + ManualIntegration *bool `json:"manualIntegration,omitempty" tf:"manual_integration,omitempty"` + + // The URL of the source code repository. + RepoURL *string `json:"repoUrl,omitempty" tf:"repo_url,omitempty"` + + // Enable roll-back for the repository. Defaults to false if not specified. + RollbackEnabled *bool `json:"rollbackEnabled,omitempty" tf:"rollback_enabled,omitempty"` + + // Use Mercurial if true, otherwise uses Git. + UseMercurial *bool `json:"useMercurial,omitempty" tf:"use_mercurial,omitempty"` +} + type SourceControlObservation struct { // The branch of the remote repository to use. Defaults to 'master'. @@ -886,6 +1207,12 @@ type SourceControlParameters struct { UseMercurial *bool `json:"useMercurial,omitempty" tf:"use_mercurial,omitempty"` } +type TwitterInitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` +} + type TwitterObservation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -895,8 +1222,8 @@ type TwitterObservation struct { type TwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. // +kubebuilder:validation:Required @@ -907,6 +1234,18 @@ type TwitterParameters struct { type FunctionAppSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FunctionAppParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FunctionAppInitParameters `json:"initProvider,omitempty"` } // FunctionAppStatus defines the observed state of FunctionApp. @@ -927,9 +1266,9 @@ type FunctionAppStatus struct { type FunctionApp struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountAccessKeySecretRef)",message="storageAccountAccessKeySecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageAccountAccessKeySecretRef)",message="storageAccountAccessKeySecretRef is a required parameter" Spec FunctionAppSpec `json:"spec"` Status FunctionAppStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_functionappactiveslot_types.go b/apis/web/v1beta1/zz_functionappactiveslot_types.go index cf0567854..31be9db4a 100755 --- a/apis/web/v1beta1/zz_functionappactiveslot_types.go +++ b/apis/web/v1beta1/zz_functionappactiveslot_types.go @@ -13,6 +13,13 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FunctionAppActiveSlotInitParameters struct { + + // The swap action should overwrite the Production slot's network configuration with the configuration from this slot. Defaults to true. Changing this forces a new resource to be created. + // The swap action should overwrite the Production slot's network configuration with the configuration from this slot. Defaults to `true`. + OverwriteNetworkConfig *bool `json:"overwriteNetworkConfig,omitempty" tf:"overwrite_network_config,omitempty"` +} + type FunctionAppActiveSlotObservation struct { // The ID of the Function App Active Slot @@ -58,6 +65,18 @@ type FunctionAppActiveSlotParameters struct { type FunctionAppActiveSlotSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FunctionAppActiveSlotParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FunctionAppActiveSlotInitParameters `json:"initProvider,omitempty"` } // FunctionAppActiveSlotStatus defines the observed state of FunctionAppActiveSlot. diff --git a/apis/web/v1beta1/zz_functionappfunction_types.go b/apis/web/v1beta1/zz_functionappfunction_types.go index 15ace76f8..e1c0f9641 100755 --- a/apis/web/v1beta1/zz_functionappfunction_types.go +++ b/apis/web/v1beta1/zz_functionappfunction_types.go @@ -13,6 +13,17 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FileInitParameters struct { + + // The content of the file. Changing this forces a new resource to be created. + // The content of the file. + Content *string `json:"content,omitempty" tf:"content,omitempty"` + + // The filename of the file to be uploaded. Changing this forces a new resource to be created. + // The filename of the file to be uploaded. + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + type FileObservation struct { // The content of the file. Changing this forces a new resource to be created. @@ -28,13 +39,39 @@ type FileParameters struct { // The content of the file. Changing this forces a new resource to be created. // The content of the file. - // +kubebuilder:validation:Required - Content *string `json:"content" tf:"content,omitempty"` + // +kubebuilder:validation:Optional + Content *string `json:"content,omitempty" tf:"content,omitempty"` // The filename of the file to be uploaded. Changing this forces a new resource to be created. // The filename of the file to be uploaded. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type FunctionAppFunctionInitParameters struct { + + // The config for this Function in JSON format. + // The config for this Function in JSON format. + ConfigJSON *string `json:"configJson,omitempty" tf:"config_json,omitempty"` + + // Should this function be enabled. Defaults to true. + // Should this function be enabled. Defaults to `true`. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A file block as detailed below. Changing this forces a new resource to be created. + File []FileInitParameters `json:"file,omitempty" tf:"file,omitempty"` + + // The language the Function is written in. Possible values are CSharp, Custom, Java, Javascript, Python, PowerShell, and TypeScript. + // The language the Function is written in. + Language *string `json:"language,omitempty" tf:"language,omitempty"` + + // The name of the function. Changing this forces a new resource to be created. + // The name of the function. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The test data for the function. + // The test data for the function. + TestData *string `json:"testData,omitempty" tf:"test_data,omitempty"` } type FunctionAppFunctionObservation struct { @@ -149,6 +186,18 @@ type FunctionAppFunctionParameters struct { type FunctionAppFunctionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FunctionAppFunctionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FunctionAppFunctionInitParameters `json:"initProvider,omitempty"` } // FunctionAppFunctionStatus defines the observed state of FunctionAppFunction. @@ -169,8 +218,8 @@ type FunctionAppFunctionStatus struct { type FunctionAppFunction struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.configJson)",message="configJson is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.configJson) || has(self.initProvider.configJson)",message="configJson is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" Spec FunctionAppFunctionSpec `json:"spec"` Status FunctionAppFunctionStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_functionapphybridconnection_types.go b/apis/web/v1beta1/zz_functionapphybridconnection_types.go index c4a328ddc..358fdf1aa 100755 --- a/apis/web/v1beta1/zz_functionapphybridconnection_types.go +++ b/apis/web/v1beta1/zz_functionapphybridconnection_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type FunctionAppHybridConnectionInitParameters struct { + + // The hostname of the endpoint. + // The hostname of the endpoint. + HostName *string `json:"hostname,omitempty" tf:"hostname,omitempty"` + + // The port to use for the endpoint + // The port to use for the endpoint + Port *float64 `json:"port,omitempty" tf:"port,omitempty"` + + // The name of the Relay key with Send permission to use. Defaults to RootManageSharedAccessKey + // The name of the Relay key with `Send` permission to use. Defaults to `RootManageSharedAccessKey` + SendKeyName *string `json:"sendKeyName,omitempty" tf:"send_key_name,omitempty"` +} + type FunctionAppHybridConnectionObservation struct { // The ID of the Function App for this Hybrid Connection. Changing this forces a new resource to be created. @@ -107,6 +122,18 @@ type FunctionAppHybridConnectionParameters struct { type FunctionAppHybridConnectionSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FunctionAppHybridConnectionParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FunctionAppHybridConnectionInitParameters `json:"initProvider,omitempty"` } // FunctionAppHybridConnectionStatus defines the observed state of FunctionAppHybridConnection. @@ -127,8 +154,8 @@ type FunctionAppHybridConnectionStatus struct { type FunctionAppHybridConnection struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.hostname)",message="hostname is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.port)",message="port is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.hostname) || has(self.initProvider.hostname)",message="hostname is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.port) || has(self.initProvider.port)",message="port is a required parameter" Spec FunctionAppHybridConnectionSpec `json:"spec"` Status FunctionAppHybridConnectionStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_functionappslot_types.go b/apis/web/v1beta1/zz_functionappslot_types.go index 65a730a9b..abe6dcf2f 100755 --- a/apis/web/v1beta1/zz_functionappslot_types.go +++ b/apis/web/v1beta1/zz_functionappslot_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AuthSettingsActiveDirectoryInitParameters struct { + + // Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + type AuthSettingsActiveDirectoryObservation struct { // Allowed audience values to consider when validating JWTs issued by Azure Active Directory. @@ -29,14 +38,23 @@ type AuthSettingsActiveDirectoryParameters struct { AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. // +kubebuilder:validation:Optional ClientSecretSecretRef *v1.SecretKeySelector `json:"clientSecretSecretRef,omitempty" tf:"-"` } +type AuthSettingsFacebookInitParameters struct { + + // The App ID of the Facebook app used for login + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type AuthSettingsFacebookObservation struct { // The App ID of the Facebook app used for login @@ -49,8 +67,8 @@ type AuthSettingsFacebookObservation struct { type AuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. // +kubebuilder:validation:Required @@ -61,6 +79,15 @@ type AuthSettingsFacebookParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type AuthSettingsGoogleInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type AuthSettingsGoogleObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -73,8 +100,8 @@ type AuthSettingsGoogleObservation struct { type AuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. // +kubebuilder:validation:Required @@ -85,6 +112,15 @@ type AuthSettingsGoogleParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type AuthSettingsMicrosoftInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type AuthSettingsMicrosoftObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -97,8 +133,8 @@ type AuthSettingsMicrosoftObservation struct { type AuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. // +kubebuilder:validation:Required @@ -109,6 +145,12 @@ type AuthSettingsMicrosoftParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type AuthSettingsTwitterInitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` +} + type AuthSettingsTwitterObservation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -118,14 +160,59 @@ type AuthSettingsTwitterObservation struct { type AuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. // +kubebuilder:validation:Required ConsumerSecretSecretRef v1.SecretKeySelector `json:"consumerSecretSecretRef" tf:"-"` } +type FunctionAppSlotAuthSettingsInitParameters struct { + + // An active_directory block as defined below. + ActiveDirectory []AuthSettingsActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value". + AdditionalLoginParams map[string]*string `json:"additionalLoginParams,omitempty" tf:"additional_login_params,omitempty"` + + // External URLs that can be redirected to as part of logging in or logging out of the app. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The default provider to use when multiple providers have been set up. Possible values are AzureActiveDirectory, Facebook, Google, MicrosoftAccount and Twitter. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // Is Authentication enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A facebook block as defined below. + Facebook []AuthSettingsFacebookInitParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` + + // A google block as defined below. + Google []AuthSettingsGoogleInitParameters `json:"google,omitempty" tf:"google,omitempty"` + + // Issuer URI. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // A microsoft block as defined below. + Microsoft []AuthSettingsMicrosoftInitParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` + + // The runtime version of the Authentication/Authorization module. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72. + TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` + + // If enabled the module will durably store platform-specific security tokens that are obtained during login flows. Defaults to false. + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // A twitter block as defined below. + Twitter []AuthSettingsTwitterInitParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` + + // The action to take when an unauthenticated client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage. + UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` +} + type FunctionAppSlotAuthSettingsObservation struct { // An active_directory block as defined below. @@ -190,8 +277,8 @@ type FunctionAppSlotAuthSettingsParameters struct { DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Is Authentication enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. // +kubebuilder:validation:Optional @@ -230,6 +317,15 @@ type FunctionAppSlotAuthSettingsParameters struct { UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } +type FunctionAppSlotConnectionStringInitParameters struct { + + // The name of the Connection String. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type FunctionAppSlotConnectionStringObservation struct { // The name of the Connection String. @@ -242,18 +338,27 @@ type FunctionAppSlotConnectionStringObservation struct { type FunctionAppSlotConnectionStringParameters struct { // The name of the Connection String. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The value for the Connection String. // +kubebuilder:validation:Required ValueSecretRef v1.SecretKeySelector `json:"valueSecretRef" tf:"-"` } +type FunctionAppSlotIdentityInitParameters struct { + + // Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type FunctionAppSlotIdentityObservation struct { // Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned. @@ -276,8 +381,50 @@ type FunctionAppSlotIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type FunctionAppSlotInitParameters struct { + + // A key-value pair of App Settings. + AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` + + // An auth_settings block as defined below. + AuthSettings []FunctionAppSlotAuthSettingsInitParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` + + // A connection_string block as defined below. + ConnectionString []FunctionAppSlotConnectionStringInitParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan. + DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` + + // Should the built-in logging of the Function App be enabled? Defaults to true. + EnableBuiltinLogging *bool `json:"enableBuiltinLogging,omitempty" tf:"enable_builtin_logging,omitempty"` + + // Is the Function App enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Can the Function App only be accessed via HTTPS? Defaults to false. + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // An identity block as defined below. + Identity []FunctionAppSlotIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A string indicating the Operating System type for this function app. The only possible value is linux. Changing this forces a new resource to be created. + OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` + + // A site_config object as defined below. + SiteConfig []FunctionAppSlotSiteConfigInitParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The runtime version associated with the Function App. Defaults to ~1. + Version *string `json:"version,omitempty" tf:"version,omitempty"` } type FunctionAppSlotObservation struct { @@ -465,6 +612,72 @@ type FunctionAppSlotParameters struct { Version *string `json:"version,omitempty" tf:"version,omitempty"` } +type FunctionAppSlotSiteConfigInitParameters struct { + + // Should the Function App be loaded at all times? Defaults to false. + AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` + + // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` + + // The name of the slot to automatically swap to during deployment + AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` + + // A cors block as defined below. + Cors []SiteConfigCorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // The version of the .NET framework's CLR used in this function app. Possible values are v4.0 (including .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information on which .NET Framework version to use based on the runtime version you're targeting - please see this table. Defaults to v4.0. + DotnetFrameworkVersion *string `json:"dotnetFrameworkVersion,omitempty" tf:"dotnet_framework_version,omitempty"` + + // The number of minimum instances for this function app. Only applicable to apps on the Premium plan. + ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` + + // State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. + FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` + + // Path which will be checked for this function app health. + HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` + + // Specifies whether or not the HTTP2 protocol should be enabled. Defaults to false. + Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` + + // A List of objects representing IP restrictions as defined below. + IPRestriction []SiteConfigIPRestrictionInitParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` + + // Java version hosted by the function app in Azure. Possible values are 1.8, 11 & 17 (In-Preview). + JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` + + // Linux App Framework and version for the AppService, e.g. DOCKER|(golang:latest). + LinuxFxVersion *string `json:"linuxFxVersion,omitempty" tf:"linux_fx_version,omitempty"` + + // The minimum supported TLS version for the function app. Possible values are 1.0, 1.1, and 1.2. Defaults to 1.2 for new function apps. + MinTLSVersion *string `json:"minTlsVersion,omitempty" tf:"min_tls_version,omitempty"` + + // The number of pre-warmed instances for this function app. Only affects apps on the Premium plan. + PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` + + // Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults to false. + RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` + + // A List of objects representing IP restrictions as defined below. + ScmIPRestriction []SiteConfigScmIPRestrictionInitParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` + + // The type of Source Control used by this function App. Valid values include: BitBucketGit, BitBucketHg, CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, and VSTSRM. + ScmType *string `json:"scmType,omitempty" tf:"scm_type,omitempty"` + + // IP security restrictions for scm to use main. Defaults to false. + ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` + + // Should the Function App run in 32 bit mode, rather than 64 bit mode? Defaults to true. + Use32BitWorkerProcess *bool `json:"use32BitWorkerProcess,omitempty" tf:"use_32_bit_worker_process,omitempty"` + + // Is the Function App enabled? Defaults to true. + VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` + + // Should WebSockets be enabled? + WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` +} + type FunctionAppSlotSiteConfigObservation struct { // Should the Function App be loaded at all times? Defaults to false. @@ -618,6 +831,9 @@ type FunctionAppSlotSiteConfigParameters struct { WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` } +type FunctionAppSlotSiteCredentialInitParameters struct { +} + type FunctionAppSlotSiteCredentialObservation struct { // The password associated with the username, which can be used to publish to this App Service. @@ -630,6 +846,21 @@ type FunctionAppSlotSiteCredentialObservation struct { type FunctionAppSlotSiteCredentialParameters struct { } +type IPRestrictionHeadersInitParameters struct { + + // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // A list to allow the Azure FrontDoor health probe header. Only allowed value is "1". + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8 + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // A list of allowed 'X-Forwarded-Host' domains with a maximum of 8. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type IPRestrictionHeadersObservation struct { // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. @@ -664,6 +895,15 @@ type IPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type SiteConfigCorsInitParameters struct { + + // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // Are credentials supported? + SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` +} + type SiteConfigCorsObservation struct { // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. @@ -676,14 +916,35 @@ type SiteConfigCorsObservation struct { type SiteConfigCorsParameters struct { // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. - // +kubebuilder:validation:Required - AllowedOrigins []*string `json:"allowedOrigins" tf:"allowed_origins,omitempty"` + // +kubebuilder:validation:Optional + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Are credentials supported? // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } +type SiteConfigIPRestrictionInitParameters struct { + + // Allow or Deny access for this IP range. Defaults to Allow. + Action *string `json:"action,omitempty" tf:"action"` + + // The headers for this specific scm_ip_restriction as defined below. + Headers []IPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers"` + + // The IP Address used for this IP Restriction in CIDR notation. + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address"` + + // The name for this IP Restriction. + Name *string `json:"name,omitempty" tf:"name"` + + // The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified. + Priority *float64 `json:"priority,omitempty" tf:"priority"` + + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag"` +} + type SiteConfigIPRestrictionObservation struct { // Allow or Deny access for this IP range. Defaults to Allow. @@ -749,6 +1010,21 @@ type SiteConfigIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type SiteConfigScmIPRestrictionHeadersInitParameters struct { + + // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // A list to allow the Azure FrontDoor health probe header. Only allowed value is "1". + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8 + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // A list of allowed 'X-Forwarded-Host' domains with a maximum of 8. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type SiteConfigScmIPRestrictionHeadersObservation struct { // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. @@ -783,6 +1059,27 @@ type SiteConfigScmIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type SiteConfigScmIPRestrictionInitParameters struct { + + // Allow or Deny access for this IP range. Defaults to Allow. + Action *string `json:"action,omitempty" tf:"action"` + + // The headers for this specific scm_ip_restriction as defined below. + Headers []SiteConfigScmIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers"` + + // The IP Address used for this IP Restriction in CIDR notation. + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address"` + + // The name for this IP Restriction. + Name *string `json:"name,omitempty" tf:"name"` + + // The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified. + Priority *float64 `json:"priority,omitempty" tf:"priority"` + + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag"` +} + type SiteConfigScmIPRestrictionObservation struct { // Allow or Deny access for this IP range. Defaults to Allow. @@ -852,6 +1149,18 @@ type SiteConfigScmIPRestrictionParameters struct { type FunctionAppSlotSpec struct { v1.ResourceSpec `json:",inline"` ForProvider FunctionAppSlotParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider FunctionAppSlotInitParameters `json:"initProvider,omitempty"` } // FunctionAppSlotStatus defines the observed state of FunctionAppSlot. @@ -872,8 +1181,8 @@ type FunctionAppSlotStatus struct { type FunctionAppSlot struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountAccessKeySecretRef)",message="storageAccountAccessKeySecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageAccountAccessKeySecretRef)",message="storageAccountAccessKeySecretRef is a required parameter" Spec FunctionAppSlotSpec `json:"spec"` Status FunctionAppSlotStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_generated.deepcopy.go b/apis/web/v1beta1/zz_generated.deepcopy.go index 06a4535b4..3ecaae3d8 100644 --- a/apis/web/v1beta1/zz_generated.deepcopy.go +++ b/apis/web/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,31 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionCustomActionInitParameters) DeepCopyInto(out *ActionCustomActionInitParameters) { + *out = *in + if in.Executable != nil { + in, out := &in.Executable, &out.Executable + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionCustomActionInitParameters. +func (in *ActionCustomActionInitParameters) DeepCopy() *ActionCustomActionInitParameters { + if in == nil { + return nil + } + out := new(ActionCustomActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionCustomActionObservation) DeepCopyInto(out *ActionCustomActionObservation) { *out = *in @@ -64,6 +89,31 @@ func (in *ActionCustomActionParameters) DeepCopy() *ActionCustomActionParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActionInitParameters) DeepCopyInto(out *ActionInitParameters) { + *out = *in + if in.ActionType != nil { + in, out := &in.ActionType, &out.ActionType + *out = new(string) + **out = **in + } + if in.MinimumProcessExecutionTime != nil { + in, out := &in.MinimumProcessExecutionTime, &out.MinimumProcessExecutionTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionInitParameters. +func (in *ActionInitParameters) DeepCopy() *ActionInitParameters { + if in == nil { + return nil + } + out := new(ActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActionObservation) DeepCopyInto(out *ActionObservation) { *out = *in @@ -114,6 +164,37 @@ func (in *ActionParameters) DeepCopy() *ActionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActiveDirectoryInitParameters) DeepCopyInto(out *ActiveDirectoryInitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryInitParameters. +func (in *ActiveDirectoryInitParameters) DeepCopy() *ActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(ActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActiveDirectoryObservation) DeepCopyInto(out *ActiveDirectoryObservation) { *out = *in @@ -181,6 +262,127 @@ func (in *ActiveDirectoryParameters) DeepCopy() *ActiveDirectoryParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ActiveDirectoryV2InitParameters) DeepCopyInto(out *ActiveDirectoryV2InitParameters) { + *out = *in + if in.AllowedApplications != nil { + in, out := &in.AllowedApplications, &out.AllowedApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedGroups != nil { + in, out := &in.AllowedGroups, &out.AllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedIdentities != nil { + in, out := &in.AllowedIdentities, &out.AllowedIdentities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretCertificateThumbprint != nil { + in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.JwtAllowedClientApplications != nil { + in, out := &in.JwtAllowedClientApplications, &out.JwtAllowedClientApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.JwtAllowedGroups != nil { + in, out := &in.JwtAllowedGroups, &out.JwtAllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoginParameters != nil { + in, out := &in.LoginParameters, &out.LoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantAuthEndpoint != nil { + in, out := &in.TenantAuthEndpoint, &out.TenantAuthEndpoint + *out = new(string) + **out = **in + } + if in.WwwAuthenticationDisabled != nil { + in, out := &in.WwwAuthenticationDisabled, &out.WwwAuthenticationDisabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveDirectoryV2InitParameters. +func (in *ActiveDirectoryV2InitParameters) DeepCopy() *ActiveDirectoryV2InitParameters { + if in == nil { + return nil + } + out := new(ActiveDirectoryV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ActiveDirectoryV2Observation) DeepCopyInto(out *ActiveDirectoryV2Observation) { *out = *in @@ -450,6 +652,26 @@ func (in *AppActiveSlot) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppActiveSlotInitParameters) DeepCopyInto(out *AppActiveSlotInitParameters) { + *out = *in + if in.OverwriteNetworkConfig != nil { + in, out := &in.OverwriteNetworkConfig, &out.OverwriteNetworkConfig + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppActiveSlotInitParameters. +func (in *AppActiveSlotInitParameters) DeepCopy() *AppActiveSlotInitParameters { + if in == nil { + return nil + } + out := new(AppActiveSlotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppActiveSlotList) DeepCopyInto(out *AppActiveSlotList) { *out = *in @@ -557,6 +779,7 @@ func (in *AppActiveSlotSpec) DeepCopyInto(out *AppActiveSlotSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppActiveSlotSpec. @@ -613,6 +836,36 @@ func (in *AppHybridConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppHybridConnectionInitParameters) DeepCopyInto(out *AppHybridConnectionInitParameters) { + *out = *in + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.SendKeyName != nil { + in, out := &in.SendKeyName, &out.SendKeyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppHybridConnectionInitParameters. +func (in *AppHybridConnectionInitParameters) DeepCopy() *AppHybridConnectionInitParameters { + if in == nil { + return nil + } + out := new(AppHybridConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppHybridConnectionList) DeepCopyInto(out *AppHybridConnectionList) { *out = *in @@ -775,6 +1028,7 @@ func (in *AppHybridConnectionSpec) DeepCopyInto(out *AppHybridConnectionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppHybridConnectionSpec. @@ -804,6 +1058,31 @@ func (in *AppHybridConnectionStatus) DeepCopy() *AppHybridConnectionStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppServiceLogsInitParameters) DeepCopyInto(out *AppServiceLogsInitParameters) { + *out = *in + if in.DiskQuotaMb != nil { + in, out := &in.DiskQuotaMb, &out.DiskQuotaMb + *out = new(float64) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppServiceLogsInitParameters. +func (in *AppServiceLogsInitParameters) DeepCopy() *AppServiceLogsInitParameters { + if in == nil { + return nil + } + out := new(AppServiceLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppServiceLogsObservation) DeepCopyInto(out *AppServiceLogsObservation) { *out = *in @@ -882,50 +1161,13 @@ func (in *AppServicePlan) DeepCopyObject() runtime.Object { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AppServicePlanList) DeepCopyInto(out *AppServicePlanList) { - *out = *in - out.TypeMeta = in.TypeMeta - in.ListMeta.DeepCopyInto(&out.ListMeta) - if in.Items != nil { - in, out := &in.Items, &out.Items - *out = make([]AppServicePlan, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppServicePlanList. -func (in *AppServicePlanList) DeepCopy() *AppServicePlanList { - if in == nil { - return nil - } - out := new(AppServicePlanList) - in.DeepCopyInto(out) - return out -} - -// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. -func (in *AppServicePlanList) DeepCopyObject() runtime.Object { - if c := in.DeepCopy(); c != nil { - return c - } - return nil -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AppServicePlanObservation) DeepCopyInto(out *AppServicePlanObservation) { +func (in *AppServicePlanInitParameters) DeepCopyInto(out *AppServicePlanInitParameters) { *out = *in if in.AppServiceEnvironmentID != nil { in, out := &in.AppServiceEnvironmentID, &out.AppServiceEnvironmentID *out = new(string) **out = **in } - if in.ID != nil { - in, out := &in.ID, &out.ID - *out = new(string) - **out = **in - } if in.IsXenon != nil { in, out := &in.IsXenon, &out.IsXenon *out = new(bool) @@ -946,11 +1188,6 @@ func (in *AppServicePlanObservation) DeepCopyInto(out *AppServicePlanObservation *out = new(float64) **out = **in } - if in.MaximumNumberOfWorkers != nil { - in, out := &in.MaximumNumberOfWorkers, &out.MaximumNumberOfWorkers - *out = new(float64) - **out = **in - } if in.PerSiteScaling != nil { in, out := &in.PerSiteScaling, &out.PerSiteScaling *out = new(bool) @@ -961,14 +1198,133 @@ func (in *AppServicePlanObservation) DeepCopyInto(out *AppServicePlanObservation *out = new(bool) **out = **in } - if in.ResourceGroupName != nil { - in, out := &in.ResourceGroupName, &out.ResourceGroupName - *out = new(string) - **out = **in - } if in.Sku != nil { in, out := &in.Sku, &out.Sku - *out = make([]SkuObservation, len(*in)) + *out = make([]SkuInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZoneRedundant != nil { + in, out := &in.ZoneRedundant, &out.ZoneRedundant + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppServicePlanInitParameters. +func (in *AppServicePlanInitParameters) DeepCopy() *AppServicePlanInitParameters { + if in == nil { + return nil + } + out := new(AppServicePlanInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppServicePlanList) DeepCopyInto(out *AppServicePlanList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]AppServicePlan, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppServicePlanList. +func (in *AppServicePlanList) DeepCopy() *AppServicePlanList { + if in == nil { + return nil + } + out := new(AppServicePlanList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *AppServicePlanList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppServicePlanObservation) DeepCopyInto(out *AppServicePlanObservation) { + *out = *in + if in.AppServiceEnvironmentID != nil { + in, out := &in.AppServiceEnvironmentID, &out.AppServiceEnvironmentID + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.IsXenon != nil { + in, out := &in.IsXenon, &out.IsXenon + *out = new(bool) + **out = **in + } + if in.Kind != nil { + in, out := &in.Kind, &out.Kind + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaximumElasticWorkerCount != nil { + in, out := &in.MaximumElasticWorkerCount, &out.MaximumElasticWorkerCount + *out = new(float64) + **out = **in + } + if in.MaximumNumberOfWorkers != nil { + in, out := &in.MaximumNumberOfWorkers, &out.MaximumNumberOfWorkers + *out = new(float64) + **out = **in + } + if in.PerSiteScaling != nil { + in, out := &in.PerSiteScaling, &out.PerSiteScaling + *out = new(bool) + **out = **in + } + if in.Reserved != nil { + in, out := &in.Reserved, &out.Reserved + *out = new(bool) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = make([]SkuObservation, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -1102,6 +1458,7 @@ func (in *AppServicePlanSpec) DeepCopyInto(out *AppServicePlanSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppServicePlanSpec. @@ -1131,6 +1488,31 @@ func (in *AppServicePlanStatus) DeepCopy() *AppServicePlanStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AppleV2InitParameters) DeepCopyInto(out *AppleV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppleV2InitParameters. +func (in *AppleV2InitParameters) DeepCopy() *AppleV2InitParameters { + if in == nil { + return nil + } + out := new(AppleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AppleV2Observation) DeepCopyInto(out *AppleV2Observation) { *out = *in @@ -1192,6 +1574,36 @@ func (in *AppleV2Parameters) DeepCopy() *AppleV2Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationLogsAzureBlobStorageInitParameters) DeepCopyInto(out *ApplicationLogsAzureBlobStorageInitParameters) { + *out = *in + if in.Level != nil { + in, out := &in.Level, &out.Level + *out = new(string) + **out = **in + } + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.SASURL != nil { + in, out := &in.SASURL, &out.SASURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLogsAzureBlobStorageInitParameters. +func (in *ApplicationLogsAzureBlobStorageInitParameters) DeepCopy() *ApplicationLogsAzureBlobStorageInitParameters { + if in == nil { + return nil + } + out := new(ApplicationLogsAzureBlobStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationLogsAzureBlobStorageObservation) DeepCopyInto(out *ApplicationLogsAzureBlobStorageObservation) { *out = *in @@ -1252,6 +1664,33 @@ func (in *ApplicationLogsAzureBlobStorageParameters) DeepCopy() *ApplicationLogs return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationLogsInitParameters) DeepCopyInto(out *ApplicationLogsInitParameters) { + *out = *in + if in.AzureBlobStorage != nil { + in, out := &in.AzureBlobStorage, &out.AzureBlobStorage + *out = make([]AzureBlobStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FileSystemLevel != nil { + in, out := &in.FileSystemLevel, &out.FileSystemLevel + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationLogsInitParameters. +func (in *ApplicationLogsInitParameters) DeepCopy() *ApplicationLogsInitParameters { + if in == nil { + return nil + } + out := new(ApplicationLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationLogsObservation) DeepCopyInto(out *ApplicationLogsObservation) { *out = *in @@ -1306,6 +1745,36 @@ func (in *ApplicationLogsParameters) DeepCopy() *ApplicationLogsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationStackDockerInitParameters) DeepCopyInto(out *ApplicationStackDockerInitParameters) { + *out = *in + if in.ImageName != nil { + in, out := &in.ImageName, &out.ImageName + *out = new(string) + **out = **in + } + if in.ImageTag != nil { + in, out := &in.ImageTag, &out.ImageTag + *out = new(string) + **out = **in + } + if in.RegistryURL != nil { + in, out := &in.RegistryURL, &out.RegistryURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationStackDockerInitParameters. +func (in *ApplicationStackDockerInitParameters) DeepCopy() *ApplicationStackDockerInitParameters { + if in == nil { + return nil + } + out := new(ApplicationStackDockerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationStackDockerObservation) DeepCopyInto(out *ApplicationStackDockerObservation) { *out = *in @@ -1376,6 +1845,63 @@ func (in *ApplicationStackDockerParameters) DeepCopy() *ApplicationStackDockerPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ApplicationStackInitParameters) DeepCopyInto(out *ApplicationStackInitParameters) { + *out = *in + if in.Docker != nil { + in, out := &in.Docker, &out.Docker + *out = make([]DockerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DotnetVersion != nil { + in, out := &in.DotnetVersion, &out.DotnetVersion + *out = new(string) + **out = **in + } + if in.JavaVersion != nil { + in, out := &in.JavaVersion, &out.JavaVersion + *out = new(string) + **out = **in + } + if in.NodeVersion != nil { + in, out := &in.NodeVersion, &out.NodeVersion + *out = new(string) + **out = **in + } + if in.PowershellCoreVersion != nil { + in, out := &in.PowershellCoreVersion, &out.PowershellCoreVersion + *out = new(string) + **out = **in + } + if in.PythonVersion != nil { + in, out := &in.PythonVersion, &out.PythonVersion + *out = new(string) + **out = **in + } + if in.UseCustomRuntime != nil { + in, out := &in.UseCustomRuntime, &out.UseCustomRuntime + *out = new(bool) + **out = **in + } + if in.UseDotnetIsolatedRuntime != nil { + in, out := &in.UseDotnetIsolatedRuntime, &out.UseDotnetIsolatedRuntime + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationStackInitParameters. +func (in *ApplicationStackInitParameters) DeepCopy() *ApplicationStackInitParameters { + if in == nil { + return nil + } + out := new(ApplicationStackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ApplicationStackObservation) DeepCopyInto(out *ApplicationStackObservation) { *out = *in @@ -1490,6 +2016,37 @@ func (in *ApplicationStackParameters) DeepCopy() *ApplicationStackParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsActiveDirectoryInitParameters) DeepCopyInto(out *AuthSettingsActiveDirectoryInitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsActiveDirectoryInitParameters. +func (in *AuthSettingsActiveDirectoryInitParameters) DeepCopy() *AuthSettingsActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsActiveDirectoryObservation) DeepCopyInto(out *AuthSettingsActiveDirectoryObservation) { *out = *in @@ -1557,6 +2114,37 @@ func (in *AuthSettingsActiveDirectoryParameters) DeepCopy() *AuthSettingsActiveD return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsFacebookInitParameters) DeepCopyInto(out *AuthSettingsFacebookInitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsFacebookInitParameters. +func (in *AuthSettingsFacebookInitParameters) DeepCopy() *AuthSettingsFacebookInitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsFacebookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsFacebookObservation) DeepCopyInto(out *AuthSettingsFacebookObservation) { *out = *in @@ -1621,7 +2209,43 @@ func (in *AuthSettingsFacebookParameters) DeepCopy() *AuthSettingsFacebookParame } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AuthSettingsGithubObservation) DeepCopyInto(out *AuthSettingsGithubObservation) { +func (in *AuthSettingsGithubInitParameters) DeepCopyInto(out *AuthSettingsGithubInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsGithubInitParameters. +func (in *AuthSettingsGithubInitParameters) DeepCopy() *AuthSettingsGithubInitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsGithubInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsGithubObservation) DeepCopyInto(out *AuthSettingsGithubObservation) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID @@ -1697,6 +2321,37 @@ func (in *AuthSettingsGithubParameters) DeepCopy() *AuthSettingsGithubParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsGoogleInitParameters) DeepCopyInto(out *AuthSettingsGoogleInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsGoogleInitParameters. +func (in *AuthSettingsGoogleInitParameters) DeepCopy() *AuthSettingsGoogleInitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsGoogleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsGoogleObservation) DeepCopyInto(out *AuthSettingsGoogleObservation) { *out = *in @@ -1760,6 +2415,148 @@ func (in *AuthSettingsGoogleParameters) DeepCopy() *AuthSettingsGoogleParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsInitParameters) DeepCopyInto(out *AuthSettingsInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]ActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalLoginParams != nil { + in, out := &in.AdditionalLoginParams, &out.AdditionalLoginParams + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Facebook != nil { + in, out := &in.Facebook, &out.Facebook + *out = make([]FacebookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Google != nil { + in, out := &in.Google, &out.Google + *out = make([]GoogleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Microsoft != nil { + in, out := &in.Microsoft, &out.Microsoft + *out = make([]MicrosoftInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TokenRefreshExtensionHours != nil { + in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.Twitter != nil { + in, out := &in.Twitter, &out.Twitter + *out = make([]TwitterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedClientAction != nil { + in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsInitParameters. +func (in *AuthSettingsInitParameters) DeepCopy() *AuthSettingsInitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsMicrosoftInitParameters) DeepCopyInto(out *AuthSettingsMicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsMicrosoftInitParameters. +func (in *AuthSettingsMicrosoftInitParameters) DeepCopy() *AuthSettingsMicrosoftInitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsMicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsMicrosoftObservation) DeepCopyInto(out *AuthSettingsMicrosoftObservation) { *out = *in @@ -2046,7 +2843,7 @@ func (in *AuthSettingsParameters) DeepCopy() *AuthSettingsParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AuthSettingsTwitterObservation) DeepCopyInto(out *AuthSettingsTwitterObservation) { +func (in *AuthSettingsTwitterInitParameters) DeepCopyInto(out *AuthSettingsTwitterInitParameters) { *out = *in if in.ConsumerKey != nil { in, out := &in.ConsumerKey, &out.ConsumerKey @@ -2055,160 +2852,301 @@ func (in *AuthSettingsTwitterObservation) DeepCopyInto(out *AuthSettingsTwitterO } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsTwitterObservation. -func (in *AuthSettingsTwitterObservation) DeepCopy() *AuthSettingsTwitterObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsTwitterInitParameters. +func (in *AuthSettingsTwitterInitParameters) DeepCopy() *AuthSettingsTwitterInitParameters { if in == nil { return nil } - out := new(AuthSettingsTwitterObservation) + out := new(AuthSettingsTwitterInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AuthSettingsTwitterParameters) DeepCopyInto(out *AuthSettingsTwitterParameters) { +func (in *AuthSettingsTwitterObservation) DeepCopyInto(out *AuthSettingsTwitterObservation) { *out = *in if in.ConsumerKey != nil { in, out := &in.ConsumerKey, &out.ConsumerKey *out = new(string) **out = **in } - out.ConsumerSecretSecretRef = in.ConsumerSecretSecretRef } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsTwitterParameters. -func (in *AuthSettingsTwitterParameters) DeepCopy() *AuthSettingsTwitterParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsTwitterObservation. +func (in *AuthSettingsTwitterObservation) DeepCopy() *AuthSettingsTwitterObservation { if in == nil { return nil } - out := new(AuthSettingsTwitterParameters) + out := new(AuthSettingsTwitterObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AuthSettingsV2ActiveDirectoryV2Observation) DeepCopyInto(out *AuthSettingsV2ActiveDirectoryV2Observation) { +func (in *AuthSettingsTwitterParameters) DeepCopyInto(out *AuthSettingsTwitterParameters) { *out = *in - if in.AllowedApplications != nil { - in, out := &in.AllowedApplications, &out.AllowedApplications - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.AllowedAudiences != nil { - in, out := &in.AllowedAudiences, &out.AllowedAudiences - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.AllowedGroups != nil { - in, out := &in.AllowedGroups, &out.AllowedGroups - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.AllowedIdentities != nil { - in, out := &in.AllowedIdentities, &out.AllowedIdentities - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.ClientID != nil { - in, out := &in.ClientID, &out.ClientID - *out = new(string) - **out = **in - } - if in.ClientSecretCertificateThumbprint != nil { - in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint - *out = new(string) - **out = **in - } - if in.ClientSecretSettingName != nil { - in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName - *out = new(string) - **out = **in - } - if in.JwtAllowedClientApplications != nil { - in, out := &in.JwtAllowedClientApplications, &out.JwtAllowedClientApplications - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.JwtAllowedGroups != nil { - in, out := &in.JwtAllowedGroups, &out.JwtAllowedGroups - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.LoginParameters != nil { - in, out := &in.LoginParameters, &out.LoginParameters - *out = make(map[string]*string, len(*in)) - for key, val := range *in { - var outVal *string - if val == nil { - (*out)[key] = nil - } else { - in, out := &val, &outVal - *out = new(string) - **out = **in - } - (*out)[key] = outVal - } - } - if in.TenantAuthEndpoint != nil { - in, out := &in.TenantAuthEndpoint, &out.TenantAuthEndpoint + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey *out = new(string) **out = **in } - if in.WwwAuthenticationDisabled != nil { - in, out := &in.WwwAuthenticationDisabled, &out.WwwAuthenticationDisabled - *out = new(bool) - **out = **in - } + out.ConsumerSecretSecretRef = in.ConsumerSecretSecretRef } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2ActiveDirectoryV2Observation. -func (in *AuthSettingsV2ActiveDirectoryV2Observation) DeepCopy() *AuthSettingsV2ActiveDirectoryV2Observation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsTwitterParameters. +func (in *AuthSettingsTwitterParameters) DeepCopy() *AuthSettingsTwitterParameters { if in == nil { return nil } - out := new(AuthSettingsV2ActiveDirectoryV2Observation) + out := new(AuthSettingsTwitterParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AuthSettingsV2ActiveDirectoryV2Parameters) DeepCopyInto(out *AuthSettingsV2ActiveDirectoryV2Parameters) { +func (in *AuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopyInto(out *AuthSettingsV2ActiveDirectoryV2InitParameters) { + *out = *in + if in.AllowedApplications != nil { + in, out := &in.AllowedApplications, &out.AllowedApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedGroups != nil { + in, out := &in.AllowedGroups, &out.AllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedIdentities != nil { + in, out := &in.AllowedIdentities, &out.AllowedIdentities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretCertificateThumbprint != nil { + in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.JwtAllowedClientApplications != nil { + in, out := &in.JwtAllowedClientApplications, &out.JwtAllowedClientApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.JwtAllowedGroups != nil { + in, out := &in.JwtAllowedGroups, &out.JwtAllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoginParameters != nil { + in, out := &in.LoginParameters, &out.LoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantAuthEndpoint != nil { + in, out := &in.TenantAuthEndpoint, &out.TenantAuthEndpoint + *out = new(string) + **out = **in + } + if in.WwwAuthenticationDisabled != nil { + in, out := &in.WwwAuthenticationDisabled, &out.WwwAuthenticationDisabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2ActiveDirectoryV2InitParameters. +func (in *AuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopy() *AuthSettingsV2ActiveDirectoryV2InitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsV2ActiveDirectoryV2InitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2ActiveDirectoryV2Observation) DeepCopyInto(out *AuthSettingsV2ActiveDirectoryV2Observation) { + *out = *in + if in.AllowedApplications != nil { + in, out := &in.AllowedApplications, &out.AllowedApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedGroups != nil { + in, out := &in.AllowedGroups, &out.AllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedIdentities != nil { + in, out := &in.AllowedIdentities, &out.AllowedIdentities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretCertificateThumbprint != nil { + in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.JwtAllowedClientApplications != nil { + in, out := &in.JwtAllowedClientApplications, &out.JwtAllowedClientApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.JwtAllowedGroups != nil { + in, out := &in.JwtAllowedGroups, &out.JwtAllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoginParameters != nil { + in, out := &in.LoginParameters, &out.LoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantAuthEndpoint != nil { + in, out := &in.TenantAuthEndpoint, &out.TenantAuthEndpoint + *out = new(string) + **out = **in + } + if in.WwwAuthenticationDisabled != nil { + in, out := &in.WwwAuthenticationDisabled, &out.WwwAuthenticationDisabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2ActiveDirectoryV2Observation. +func (in *AuthSettingsV2ActiveDirectoryV2Observation) DeepCopy() *AuthSettingsV2ActiveDirectoryV2Observation { + if in == nil { + return nil + } + out := new(AuthSettingsV2ActiveDirectoryV2Observation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2ActiveDirectoryV2Parameters) DeepCopyInto(out *AuthSettingsV2ActiveDirectoryV2Parameters) { *out = *in if in.AllowedApplications != nil { in, out := &in.AllowedApplications, &out.AllowedApplications @@ -2328,6 +3266,31 @@ func (in *AuthSettingsV2ActiveDirectoryV2Parameters) DeepCopy() *AuthSettingsV2A return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2AppleV2InitParameters) DeepCopyInto(out *AuthSettingsV2AppleV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2AppleV2InitParameters. +func (in *AuthSettingsV2AppleV2InitParameters) DeepCopy() *AuthSettingsV2AppleV2InitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsV2AppleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsV2AppleV2Observation) DeepCopyInto(out *AuthSettingsV2AppleV2Observation) { *out = *in @@ -2389,6 +3352,26 @@ func (in *AuthSettingsV2AppleV2Parameters) DeepCopy() *AuthSettingsV2AppleV2Para return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopyInto(out *AuthSettingsV2AzureStaticWebAppV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2AzureStaticWebAppV2InitParameters. +func (in *AuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopy() *AuthSettingsV2AzureStaticWebAppV2InitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsV2AzureStaticWebAppV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsV2AzureStaticWebAppV2Observation) DeepCopyInto(out *AuthSettingsV2AzureStaticWebAppV2Observation) { *out = *in @@ -2429,6 +3412,52 @@ func (in *AuthSettingsV2AzureStaticWebAppV2Parameters) DeepCopy() *AuthSettingsV return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2CustomOidcV2InitParameters) DeepCopyInto(out *AuthSettingsV2CustomOidcV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NameClaimType != nil { + in, out := &in.NameClaimType, &out.NameClaimType + *out = new(string) + **out = **in + } + if in.OpenIDConfigurationEndpoint != nil { + in, out := &in.OpenIDConfigurationEndpoint, &out.OpenIDConfigurationEndpoint + *out = new(string) + **out = **in + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2CustomOidcV2InitParameters. +func (in *AuthSettingsV2CustomOidcV2InitParameters) DeepCopy() *AuthSettingsV2CustomOidcV2InitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsV2CustomOidcV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsV2CustomOidcV2Observation) DeepCopyInto(out *AuthSettingsV2CustomOidcV2Observation) { *out = *in @@ -2551,6 +3580,47 @@ func (in *AuthSettingsV2CustomOidcV2Parameters) DeepCopy() *AuthSettingsV2Custom return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2FacebookV2InitParameters) DeepCopyInto(out *AuthSettingsV2FacebookV2InitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.GraphAPIVersion != nil { + in, out := &in.GraphAPIVersion, &out.GraphAPIVersion + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2FacebookV2InitParameters. +func (in *AuthSettingsV2FacebookV2InitParameters) DeepCopy() *AuthSettingsV2FacebookV2InitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsV2FacebookV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsV2FacebookV2Observation) DeepCopyInto(out *AuthSettingsV2FacebookV2Observation) { *out = *in @@ -2633,6 +3703,42 @@ func (in *AuthSettingsV2FacebookV2Parameters) DeepCopy() *AuthSettingsV2Facebook return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2GithubV2InitParameters) DeepCopyInto(out *AuthSettingsV2GithubV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2GithubV2InitParameters. +func (in *AuthSettingsV2GithubV2InitParameters) DeepCopy() *AuthSettingsV2GithubV2InitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsV2GithubV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsV2GithubV2Observation) DeepCopyInto(out *AuthSettingsV2GithubV2Observation) { *out = *in @@ -2706,7 +3812,7 @@ func (in *AuthSettingsV2GithubV2Parameters) DeepCopy() *AuthSettingsV2GithubV2Pa } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AuthSettingsV2GoogleV2Observation) DeepCopyInto(out *AuthSettingsV2GoogleV2Observation) { +func (in *AuthSettingsV2GoogleV2InitParameters) DeepCopyInto(out *AuthSettingsV2GoogleV2InitParameters) { *out = *in if in.AllowedAudiences != nil { in, out := &in.AllowedAudiences, &out.AllowedAudiences @@ -2742,18 +3848,18 @@ func (in *AuthSettingsV2GoogleV2Observation) DeepCopyInto(out *AuthSettingsV2Goo } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2GoogleV2Observation. -func (in *AuthSettingsV2GoogleV2Observation) DeepCopy() *AuthSettingsV2GoogleV2Observation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2GoogleV2InitParameters. +func (in *AuthSettingsV2GoogleV2InitParameters) DeepCopy() *AuthSettingsV2GoogleV2InitParameters { if in == nil { return nil } - out := new(AuthSettingsV2GoogleV2Observation) + out := new(AuthSettingsV2GoogleV2InitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *AuthSettingsV2GoogleV2Parameters) { +func (in *AuthSettingsV2GoogleV2Observation) DeepCopyInto(out *AuthSettingsV2GoogleV2Observation) { *out = *in if in.AllowedAudiences != nil { in, out := &in.AllowedAudiences, &out.AllowedAudiences @@ -2789,21 +3895,21 @@ func (in *AuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *AuthSettingsV2Goog } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2GoogleV2Parameters. -func (in *AuthSettingsV2GoogleV2Parameters) DeepCopy() *AuthSettingsV2GoogleV2Parameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2GoogleV2Observation. +func (in *AuthSettingsV2GoogleV2Observation) DeepCopy() *AuthSettingsV2GoogleV2Observation { if in == nil { return nil } - out := new(AuthSettingsV2GoogleV2Parameters) + out := new(AuthSettingsV2GoogleV2Observation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AuthSettingsV2LoginObservation) DeepCopyInto(out *AuthSettingsV2LoginObservation) { +func (in *AuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *AuthSettingsV2GoogleV2Parameters) { *out = *in - if in.AllowedExternalRedirectUrls != nil { - in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -2813,94 +3919,368 @@ func (in *AuthSettingsV2LoginObservation) DeepCopyInto(out *AuthSettingsV2LoginO } } } - if in.CookieExpirationConvention != nil { - in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention - *out = new(string) - **out = **in - } - if in.CookieExpirationTime != nil { - in, out := &in.CookieExpirationTime, &out.CookieExpirationTime - *out = new(string) - **out = **in - } - if in.LogoutEndpoint != nil { - in, out := &in.LogoutEndpoint, &out.LogoutEndpoint - *out = new(string) - **out = **in - } - if in.NonceExpirationTime != nil { - in, out := &in.NonceExpirationTime, &out.NonceExpirationTime - *out = new(string) - **out = **in - } - if in.PreserveURLFragmentsForLogins != nil { - in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins - *out = new(bool) - **out = **in - } - if in.TokenRefreshExtensionTime != nil { - in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime - *out = new(float64) - **out = **in - } - if in.TokenStoreEnabled != nil { - in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled - *out = new(bool) - **out = **in - } - if in.TokenStorePath != nil { - in, out := &in.TokenStorePath, &out.TokenStorePath + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID *out = new(string) **out = **in } - if in.TokenStoreSASSettingName != nil { - in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName *out = new(string) **out = **in } - if in.ValidateNonce != nil { - in, out := &in.ValidateNonce, &out.ValidateNonce - *out = new(bool) - **out = **in + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2LoginObservation. -func (in *AuthSettingsV2LoginObservation) DeepCopy() *AuthSettingsV2LoginObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2GoogleV2Parameters. +func (in *AuthSettingsV2GoogleV2Parameters) DeepCopy() *AuthSettingsV2GoogleV2Parameters { if in == nil { return nil } - out := new(AuthSettingsV2LoginObservation) + out := new(AuthSettingsV2GoogleV2Parameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AuthSettingsV2LoginParameters) DeepCopyInto(out *AuthSettingsV2LoginParameters) { +func (in *AuthSettingsV2InitParameters) DeepCopyInto(out *AuthSettingsV2InitParameters) { *out = *in - if in.AllowedExternalRedirectUrls != nil { - in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls - *out = make([]*string, len(*in)) + if in.ActiveDirectoryV2 != nil { + in, out := &in.ActiveDirectoryV2, &out.ActiveDirectoryV2 + *out = make([]ActiveDirectoryV2InitParameters, len(*in)) for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } + (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.CookieExpirationConvention != nil { - in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention - *out = new(string) + if in.AppleV2 != nil { + in, out := &in.AppleV2, &out.AppleV2 + *out = make([]AppleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthEnabled != nil { + in, out := &in.AuthEnabled, &out.AuthEnabled + *out = new(bool) **out = **in } - if in.CookieExpirationTime != nil { - in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + if in.AzureStaticWebAppV2 != nil { + in, out := &in.AzureStaticWebAppV2, &out.AzureStaticWebAppV2 + *out = make([]AzureStaticWebAppV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConfigFilePath != nil { + in, out := &in.ConfigFilePath, &out.ConfigFilePath *out = new(string) **out = **in } - if in.LogoutEndpoint != nil { - in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + if in.CustomOidcV2 != nil { + in, out := &in.CustomOidcV2, &out.CustomOidcV2 + *out = make([]CustomOidcV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.ExcludedPaths != nil { + in, out := &in.ExcludedPaths, &out.ExcludedPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FacebookV2 != nil { + in, out := &in.FacebookV2, &out.FacebookV2 + *out = make([]FacebookV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForwardProxyConvention != nil { + in, out := &in.ForwardProxyConvention, &out.ForwardProxyConvention + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomHostHeaderName != nil { + in, out := &in.ForwardProxyCustomHostHeaderName, &out.ForwardProxyCustomHostHeaderName + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomSchemeHeaderName != nil { + in, out := &in.ForwardProxyCustomSchemeHeaderName, &out.ForwardProxyCustomSchemeHeaderName + *out = new(string) + **out = **in + } + if in.GithubV2 != nil { + in, out := &in.GithubV2, &out.GithubV2 + *out = make([]GithubV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GoogleV2 != nil { + in, out := &in.GoogleV2, &out.GoogleV2 + *out = make([]GoogleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPRouteAPIPrefix != nil { + in, out := &in.HTTPRouteAPIPrefix, &out.HTTPRouteAPIPrefix + *out = new(string) + **out = **in + } + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = make([]LoginInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MicrosoftV2 != nil { + in, out := &in.MicrosoftV2, &out.MicrosoftV2 + *out = make([]MicrosoftV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequireAuthentication != nil { + in, out := &in.RequireAuthentication, &out.RequireAuthentication + *out = new(bool) + **out = **in + } + if in.RequireHTTPS != nil { + in, out := &in.RequireHTTPS, &out.RequireHTTPS + *out = new(bool) + **out = **in + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TwitterV2 != nil { + in, out := &in.TwitterV2, &out.TwitterV2 + *out = make([]TwitterV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedAction != nil { + in, out := &in.UnauthenticatedAction, &out.UnauthenticatedAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2InitParameters. +func (in *AuthSettingsV2InitParameters) DeepCopy() *AuthSettingsV2InitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsV2InitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2LoginInitParameters) DeepCopyInto(out *AuthSettingsV2LoginInitParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2LoginInitParameters. +func (in *AuthSettingsV2LoginInitParameters) DeepCopy() *AuthSettingsV2LoginInitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsV2LoginInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2LoginObservation) DeepCopyInto(out *AuthSettingsV2LoginObservation) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2LoginObservation. +func (in *AuthSettingsV2LoginObservation) DeepCopy() *AuthSettingsV2LoginObservation { + if in == nil { + return nil + } + out := new(AuthSettingsV2LoginObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2LoginParameters) DeepCopyInto(out *AuthSettingsV2LoginParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint *out = new(string) **out = **in } @@ -2951,6 +4331,53 @@ func (in *AuthSettingsV2LoginParameters) DeepCopy() *AuthSettingsV2LoginParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2MicrosoftV2InitParameters) DeepCopyInto(out *AuthSettingsV2MicrosoftV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2MicrosoftV2InitParameters. +func (in *AuthSettingsV2MicrosoftV2InitParameters) DeepCopy() *AuthSettingsV2MicrosoftV2InitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsV2MicrosoftV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsV2MicrosoftV2Observation) DeepCopyInto(out *AuthSettingsV2MicrosoftV2Observation) { *out = *in @@ -3347,6 +4774,31 @@ func (in *AuthSettingsV2Parameters) DeepCopy() *AuthSettingsV2Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthSettingsV2TwitterV2InitParameters) DeepCopyInto(out *AuthSettingsV2TwitterV2InitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthSettingsV2TwitterV2InitParameters. +func (in *AuthSettingsV2TwitterV2InitParameters) DeepCopy() *AuthSettingsV2TwitterV2InitParameters { + if in == nil { + return nil + } + out := new(AuthSettingsV2TwitterV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AuthSettingsV2TwitterV2Observation) DeepCopyInto(out *AuthSettingsV2TwitterV2Observation) { *out = *in @@ -3397,6 +4849,31 @@ func (in *AuthSettingsV2TwitterV2Parameters) DeepCopy() *AuthSettingsV2TwitterV2 return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoHealSettingActionInitParameters) DeepCopyInto(out *AutoHealSettingActionInitParameters) { + *out = *in + if in.ActionType != nil { + in, out := &in.ActionType, &out.ActionType + *out = new(string) + **out = **in + } + if in.MinimumProcessExecutionTime != nil { + in, out := &in.MinimumProcessExecutionTime, &out.MinimumProcessExecutionTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoHealSettingActionInitParameters. +func (in *AutoHealSettingActionInitParameters) DeepCopy() *AutoHealSettingActionInitParameters { + if in == nil { + return nil + } + out := new(AutoHealSettingActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoHealSettingActionObservation) DeepCopyInto(out *AutoHealSettingActionObservation) { *out = *in @@ -3447,6 +4924,35 @@ func (in *AutoHealSettingActionParameters) DeepCopy() *AutoHealSettingActionPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoHealSettingInitParameters) DeepCopyInto(out *AutoHealSettingInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]ActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Trigger != nil { + in, out := &in.Trigger, &out.Trigger + *out = make([]TriggerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoHealSettingInitParameters. +func (in *AutoHealSettingInitParameters) DeepCopy() *AutoHealSettingInitParameters { + if in == nil { + return nil + } + out := new(AutoHealSettingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoHealSettingObservation) DeepCopyInto(out *AutoHealSettingObservation) { *out = *in @@ -3505,6 +5011,42 @@ func (in *AutoHealSettingParameters) DeepCopy() *AutoHealSettingParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoHealSettingTriggerInitParameters) DeepCopyInto(out *AutoHealSettingTriggerInitParameters) { + *out = *in + if in.Requests != nil { + in, out := &in.Requests, &out.Requests + *out = make([]TriggerRequestsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SlowRequest != nil { + in, out := &in.SlowRequest, &out.SlowRequest + *out = make([]TriggerSlowRequestInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StatusCode != nil { + in, out := &in.StatusCode, &out.StatusCode + *out = make([]TriggerStatusCodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoHealSettingTriggerInitParameters. +func (in *AutoHealSettingTriggerInitParameters) DeepCopy() *AutoHealSettingTriggerInitParameters { + if in == nil { + return nil + } + out := new(AutoHealSettingTriggerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoHealSettingTriggerObservation) DeepCopyInto(out *AutoHealSettingTriggerObservation) { *out = *in @@ -3577,6 +5119,31 @@ func (in *AutoHealSettingTriggerParameters) DeepCopy() *AutoHealSettingTriggerPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoHealSettingTriggerRequestsInitParameters) DeepCopyInto(out *AutoHealSettingTriggerRequestsInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoHealSettingTriggerRequestsInitParameters. +func (in *AutoHealSettingTriggerRequestsInitParameters) DeepCopy() *AutoHealSettingTriggerRequestsInitParameters { + if in == nil { + return nil + } + out := new(AutoHealSettingTriggerRequestsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoHealSettingTriggerRequestsObservation) DeepCopyInto(out *AutoHealSettingTriggerRequestsObservation) { *out = *in @@ -3627,6 +5194,41 @@ func (in *AutoHealSettingTriggerRequestsParameters) DeepCopy() *AutoHealSettingT return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoHealSettingTriggerSlowRequestInitParameters) DeepCopyInto(out *AutoHealSettingTriggerSlowRequestInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.TimeTaken != nil { + in, out := &in.TimeTaken, &out.TimeTaken + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoHealSettingTriggerSlowRequestInitParameters. +func (in *AutoHealSettingTriggerSlowRequestInitParameters) DeepCopy() *AutoHealSettingTriggerSlowRequestInitParameters { + if in == nil { + return nil + } + out := new(AutoHealSettingTriggerSlowRequestInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoHealSettingTriggerSlowRequestObservation) DeepCopyInto(out *AutoHealSettingTriggerSlowRequestObservation) { *out = *in @@ -3697,6 +5299,51 @@ func (in *AutoHealSettingTriggerSlowRequestParameters) DeepCopy() *AutoHealSetti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AutoHealSettingTriggerStatusCodeInitParameters) DeepCopyInto(out *AutoHealSettingTriggerStatusCodeInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.StatusCodeRange != nil { + in, out := &in.StatusCodeRange, &out.StatusCodeRange + *out = new(string) + **out = **in + } + if in.SubStatus != nil { + in, out := &in.SubStatus, &out.SubStatus + *out = new(float64) + **out = **in + } + if in.Win32Status != nil { + in, out := &in.Win32Status, &out.Win32Status + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoHealSettingTriggerStatusCodeInitParameters. +func (in *AutoHealSettingTriggerStatusCodeInitParameters) DeepCopy() *AutoHealSettingTriggerStatusCodeInitParameters { + if in == nil { + return nil + } + out := new(AutoHealSettingTriggerStatusCodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AutoHealSettingTriggerStatusCodeObservation) DeepCopyInto(out *AutoHealSettingTriggerStatusCodeObservation) { *out = *in @@ -3788,7 +5435,7 @@ func (in *AutoHealSettingTriggerStatusCodeParameters) DeepCopy() *AutoHealSettin } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AzureBlobStorageObservation) DeepCopyInto(out *AzureBlobStorageObservation) { +func (in *AzureBlobStorageInitParameters) DeepCopyInto(out *AzureBlobStorageInitParameters) { *out = *in if in.Level != nil { in, out := &in.Level, &out.Level @@ -3807,18 +5454,18 @@ func (in *AzureBlobStorageObservation) DeepCopyInto(out *AzureBlobStorageObserva } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureBlobStorageObservation. -func (in *AzureBlobStorageObservation) DeepCopy() *AzureBlobStorageObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureBlobStorageInitParameters. +func (in *AzureBlobStorageInitParameters) DeepCopy() *AzureBlobStorageInitParameters { if in == nil { return nil } - out := new(AzureBlobStorageObservation) + out := new(AzureBlobStorageInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *AzureBlobStorageParameters) DeepCopyInto(out *AzureBlobStorageParameters) { +func (in *AzureBlobStorageObservation) DeepCopyInto(out *AzureBlobStorageObservation) { *out = *in if in.Level != nil { in, out := &in.Level, &out.Level @@ -3837,9 +5484,39 @@ func (in *AzureBlobStorageParameters) DeepCopyInto(out *AzureBlobStorageParamete } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureBlobStorageParameters. -func (in *AzureBlobStorageParameters) DeepCopy() *AzureBlobStorageParameters { - if in == nil { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureBlobStorageObservation. +func (in *AzureBlobStorageObservation) DeepCopy() *AzureBlobStorageObservation { + if in == nil { + return nil + } + out := new(AzureBlobStorageObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureBlobStorageParameters) DeepCopyInto(out *AzureBlobStorageParameters) { + *out = *in + if in.Level != nil { + in, out := &in.Level, &out.Level + *out = new(string) + **out = **in + } + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.SASURL != nil { + in, out := &in.SASURL, &out.SASURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureBlobStorageParameters. +func (in *AzureBlobStorageParameters) DeepCopy() *AzureBlobStorageParameters { + if in == nil { return nil } out := new(AzureBlobStorageParameters) @@ -3847,6 +5524,26 @@ func (in *AzureBlobStorageParameters) DeepCopy() *AzureBlobStorageParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AzureStaticWebAppV2InitParameters) DeepCopyInto(out *AzureStaticWebAppV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureStaticWebAppV2InitParameters. +func (in *AzureStaticWebAppV2InitParameters) DeepCopy() *AzureStaticWebAppV2InitParameters { + if in == nil { + return nil + } + out := new(AzureStaticWebAppV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AzureStaticWebAppV2Observation) DeepCopyInto(out *AzureStaticWebAppV2Observation) { *out = *in @@ -3887,6 +5584,38 @@ func (in *AzureStaticWebAppV2Parameters) DeepCopy() *AzureStaticWebAppV2Paramete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupInitParameters) DeepCopyInto(out *BackupInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]ScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupInitParameters. +func (in *BackupInitParameters) DeepCopy() *BackupInitParameters { + if in == nil { + return nil + } + out := new(BackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupObservation) DeepCopyInto(out *BackupObservation) { *out = *in @@ -3952,6 +5681,46 @@ func (in *BackupParameters) DeepCopy() *BackupParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BackupScheduleInitParameters) DeepCopyInto(out *BackupScheduleInitParameters) { + *out = *in + if in.FrequencyInterval != nil { + in, out := &in.FrequencyInterval, &out.FrequencyInterval + *out = new(float64) + **out = **in + } + if in.FrequencyUnit != nil { + in, out := &in.FrequencyUnit, &out.FrequencyUnit + *out = new(string) + **out = **in + } + if in.KeepAtLeastOneBackup != nil { + in, out := &in.KeepAtLeastOneBackup, &out.KeepAtLeastOneBackup + *out = new(bool) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupScheduleInitParameters. +func (in *BackupScheduleInitParameters) DeepCopy() *BackupScheduleInitParameters { + if in == nil { + return nil + } + out := new(BackupScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupScheduleObservation) DeepCopyInto(out *BackupScheduleObservation) { *out = *in @@ -4037,6 +5806,31 @@ func (in *BackupScheduleParameters) DeepCopy() *BackupScheduleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConnectionStringInitParameters) DeepCopyInto(out *ConnectionStringInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionStringInitParameters. +func (in *ConnectionStringInitParameters) DeepCopy() *ConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(ConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ConnectionStringObservation) DeepCopyInto(out *ConnectionStringObservation) { *out = *in @@ -4088,6 +5882,37 @@ func (in *ConnectionStringParameters) DeepCopy() *ConnectionStringParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CorsInitParameters) DeepCopyInto(out *CorsInitParameters) { + *out = *in + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportCredentials != nil { + in, out := &in.SupportCredentials, &out.SupportCredentials + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorsInitParameters. +func (in *CorsInitParameters) DeepCopy() *CorsInitParameters { + if in == nil { + return nil + } + out := new(CorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CorsObservation) DeepCopyInto(out *CorsObservation) { *out = *in @@ -4150,6 +5975,31 @@ func (in *CorsParameters) DeepCopy() *CorsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomActionInitParameters) DeepCopyInto(out *CustomActionInitParameters) { + *out = *in + if in.Executable != nil { + in, out := &in.Executable, &out.Executable + *out = new(string) + **out = **in + } + if in.Parameters != nil { + in, out := &in.Parameters, &out.Parameters + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomActionInitParameters. +func (in *CustomActionInitParameters) DeepCopy() *CustomActionInitParameters { + if in == nil { + return nil + } + out := new(CustomActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomActionObservation) DeepCopyInto(out *CustomActionObservation) { *out = *in @@ -4200,6 +6050,52 @@ func (in *CustomActionParameters) DeepCopy() *CustomActionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *CustomOidcV2InitParameters) DeepCopyInto(out *CustomOidcV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NameClaimType != nil { + in, out := &in.NameClaimType, &out.NameClaimType + *out = new(string) + **out = **in + } + if in.OpenIDConfigurationEndpoint != nil { + in, out := &in.OpenIDConfigurationEndpoint, &out.OpenIDConfigurationEndpoint + *out = new(string) + **out = **in + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomOidcV2InitParameters. +func (in *CustomOidcV2InitParameters) DeepCopy() *CustomOidcV2InitParameters { + if in == nil { + return nil + } + out := new(CustomOidcV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CustomOidcV2Observation) DeepCopyInto(out *CustomOidcV2Observation) { *out = *in @@ -4322,6 +6218,36 @@ func (in *CustomOidcV2Parameters) DeepCopy() *CustomOidcV2Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DockerInitParameters) DeepCopyInto(out *DockerInitParameters) { + *out = *in + if in.ImageName != nil { + in, out := &in.ImageName, &out.ImageName + *out = new(string) + **out = **in + } + if in.ImageTag != nil { + in, out := &in.ImageTag, &out.ImageTag + *out = new(string) + **out = **in + } + if in.RegistryURL != nil { + in, out := &in.RegistryURL, &out.RegistryURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DockerInitParameters. +func (in *DockerInitParameters) DeepCopy() *DockerInitParameters { + if in == nil { + return nil + } + out := new(DockerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *DockerObservation) DeepCopyInto(out *DockerObservation) { *out = *in @@ -4392,6 +6318,37 @@ func (in *DockerParameters) DeepCopy() *DockerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FacebookInitParameters) DeepCopyInto(out *FacebookInitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FacebookInitParameters. +func (in *FacebookInitParameters) DeepCopy() *FacebookInitParameters { + if in == nil { + return nil + } + out := new(FacebookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FacebookObservation) DeepCopyInto(out *FacebookObservation) { *out = *in @@ -4455,6 +6412,47 @@ func (in *FacebookParameters) DeepCopy() *FacebookParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FacebookV2InitParameters) DeepCopyInto(out *FacebookV2InitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.GraphAPIVersion != nil { + in, out := &in.GraphAPIVersion, &out.GraphAPIVersion + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FacebookV2InitParameters. +func (in *FacebookV2InitParameters) DeepCopy() *FacebookV2InitParameters { + if in == nil { + return nil + } + out := new(FacebookV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FacebookV2Observation) DeepCopyInto(out *FacebookV2Observation) { *out = *in @@ -4537,6 +6535,31 @@ func (in *FacebookV2Parameters) DeepCopy() *FacebookV2Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FileInitParameters) DeepCopyInto(out *FileInitParameters) { + *out = *in + if in.Content != nil { + in, out := &in.Content, &out.Content + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FileInitParameters. +func (in *FileInitParameters) DeepCopy() *FileInitParameters { + if in == nil { + return nil + } + out := new(FileInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FileObservation) DeepCopyInto(out *FileObservation) { *out = *in @@ -4587,6 +6610,31 @@ func (in *FileParameters) DeepCopy() *FileParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FileSystemInitParameters) DeepCopyInto(out *FileSystemInitParameters) { + *out = *in + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.RetentionInMb != nil { + in, out := &in.RetentionInMb, &out.RetentionInMb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FileSystemInitParameters. +func (in *FileSystemInitParameters) DeepCopy() *FileSystemInitParameters { + if in == nil { + return nil + } + out := new(FileSystemInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FileSystemObservation) DeepCopyInto(out *FileSystemObservation) { *out = *in @@ -4691,6 +6739,26 @@ func (in *FunctionAppActiveSlot) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionAppActiveSlotInitParameters) DeepCopyInto(out *FunctionAppActiveSlotInitParameters) { + *out = *in + if in.OverwriteNetworkConfig != nil { + in, out := &in.OverwriteNetworkConfig, &out.OverwriteNetworkConfig + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppActiveSlotInitParameters. +func (in *FunctionAppActiveSlotInitParameters) DeepCopy() *FunctionAppActiveSlotInitParameters { + if in == nil { + return nil + } + out := new(FunctionAppActiveSlotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FunctionAppActiveSlotList) DeepCopyInto(out *FunctionAppActiveSlotList) { *out = *in @@ -4798,6 +6866,7 @@ func (in *FunctionAppActiveSlotSpec) DeepCopyInto(out *FunctionAppActiveSlotSpec *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppActiveSlotSpec. @@ -4854,6 +6923,53 @@ func (in *FunctionAppFunction) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionAppFunctionInitParameters) DeepCopyInto(out *FunctionAppFunctionInitParameters) { + *out = *in + if in.ConfigJSON != nil { + in, out := &in.ConfigJSON, &out.ConfigJSON + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.File != nil { + in, out := &in.File, &out.File + *out = make([]FileInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Language != nil { + in, out := &in.Language, &out.Language + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.TestData != nil { + in, out := &in.TestData, &out.TestData + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppFunctionInitParameters. +func (in *FunctionAppFunctionInitParameters) DeepCopy() *FunctionAppFunctionInitParameters { + if in == nil { + return nil + } + out := new(FunctionAppFunctionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FunctionAppFunctionList) DeepCopyInto(out *FunctionAppFunctionList) { *out = *in @@ -5045,6 +7161,7 @@ func (in *FunctionAppFunctionSpec) DeepCopyInto(out *FunctionAppFunctionSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppFunctionSpec. @@ -5101,6 +7218,36 @@ func (in *FunctionAppHybridConnection) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionAppHybridConnectionInitParameters) DeepCopyInto(out *FunctionAppHybridConnectionInitParameters) { + *out = *in + if in.HostName != nil { + in, out := &in.HostName, &out.HostName + *out = new(string) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(float64) + **out = **in + } + if in.SendKeyName != nil { + in, out := &in.SendKeyName, &out.SendKeyName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppHybridConnectionInitParameters. +func (in *FunctionAppHybridConnectionInitParameters) DeepCopy() *FunctionAppHybridConnectionInitParameters { + if in == nil { + return nil + } + out := new(FunctionAppHybridConnectionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FunctionAppHybridConnectionList) DeepCopyInto(out *FunctionAppHybridConnectionList) { *out = *in @@ -5263,6 +7410,7 @@ func (in *FunctionAppHybridConnectionSpec) DeepCopyInto(out *FunctionAppHybridCo *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppHybridConnectionSpec. @@ -5292,6 +7440,136 @@ func (in *FunctionAppHybridConnectionStatus) DeepCopy() *FunctionAppHybridConnec return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionAppInitParameters) DeepCopyInto(out *FunctionAppInitParameters) { + *out = *in + if in.AppSettings != nil { + in, out := &in.AppSettings, &out.AppSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AuthSettings != nil { + in, out := &in.AuthSettings, &out.AuthSettings + *out = make([]AuthSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientCertMode != nil { + in, out := &in.ClientCertMode, &out.ClientCertMode + *out = new(string) + **out = **in + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = make([]ConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DailyMemoryTimeQuota != nil { + in, out := &in.DailyMemoryTimeQuota, &out.DailyMemoryTimeQuota + *out = new(float64) + **out = **in + } + if in.EnableBuiltinLogging != nil { + in, out := &in.EnableBuiltinLogging, &out.EnableBuiltinLogging + *out = new(bool) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]IdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultReferenceIdentityID != nil { + in, out := &in.KeyVaultReferenceIdentityID, &out.KeyVaultReferenceIdentityID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.OsType != nil { + in, out := &in.OsType, &out.OsType + *out = new(string) + **out = **in + } + if in.SiteConfig != nil { + in, out := &in.SiteConfig, &out.SiteConfig + *out = make([]SiteConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SourceControl != nil { + in, out := &in.SourceControl, &out.SourceControl + *out = make([]SourceControlInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppInitParameters. +func (in *FunctionAppInitParameters) DeepCopy() *FunctionAppInitParameters { + if in == nil { + return nil + } + out := new(FunctionAppInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FunctionAppList) DeepCopyInto(out *FunctionAppList) { *out = *in @@ -5709,6 +7987,117 @@ func (in *FunctionAppSlot) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionAppSlotAuthSettingsInitParameters) DeepCopyInto(out *FunctionAppSlotAuthSettingsInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]AuthSettingsActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalLoginParams != nil { + in, out := &in.AdditionalLoginParams, &out.AdditionalLoginParams + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Facebook != nil { + in, out := &in.Facebook, &out.Facebook + *out = make([]AuthSettingsFacebookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Google != nil { + in, out := &in.Google, &out.Google + *out = make([]AuthSettingsGoogleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Microsoft != nil { + in, out := &in.Microsoft, &out.Microsoft + *out = make([]AuthSettingsMicrosoftInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TokenRefreshExtensionHours != nil { + in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.Twitter != nil { + in, out := &in.Twitter, &out.Twitter + *out = make([]AuthSettingsTwitterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedClientAction != nil { + in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppSlotAuthSettingsInitParameters. +func (in *FunctionAppSlotAuthSettingsInitParameters) DeepCopy() *FunctionAppSlotAuthSettingsInitParameters { + if in == nil { + return nil + } + out := new(FunctionAppSlotAuthSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FunctionAppSlotAuthSettingsObservation) DeepCopyInto(out *FunctionAppSlotAuthSettingsObservation) { *out = *in @@ -5931,6 +8320,31 @@ func (in *FunctionAppSlotAuthSettingsParameters) DeepCopy() *FunctionAppSlotAuth return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionAppSlotConnectionStringInitParameters) DeepCopyInto(out *FunctionAppSlotConnectionStringInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppSlotConnectionStringInitParameters. +func (in *FunctionAppSlotConnectionStringInitParameters) DeepCopy() *FunctionAppSlotConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(FunctionAppSlotConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FunctionAppSlotConnectionStringObservation) DeepCopyInto(out *FunctionAppSlotConnectionStringObservation) { *out = *in @@ -5982,6 +8396,37 @@ func (in *FunctionAppSlotConnectionStringParameters) DeepCopy() *FunctionAppSlot return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionAppSlotIdentityInitParameters) DeepCopyInto(out *FunctionAppSlotIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppSlotIdentityInitParameters. +func (in *FunctionAppSlotIdentityInitParameters) DeepCopy() *FunctionAppSlotIdentityInitParameters { + if in == nil { + return nil + } + out := new(FunctionAppSlotIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FunctionAppSlotIdentityObservation) DeepCopyInto(out *FunctionAppSlotIdentityObservation) { *out = *in @@ -6054,6 +8499,114 @@ func (in *FunctionAppSlotIdentityParameters) DeepCopy() *FunctionAppSlotIdentity return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionAppSlotInitParameters) DeepCopyInto(out *FunctionAppSlotInitParameters) { + *out = *in + if in.AppSettings != nil { + in, out := &in.AppSettings, &out.AppSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AuthSettings != nil { + in, out := &in.AuthSettings, &out.AuthSettings + *out = make([]FunctionAppSlotAuthSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = make([]FunctionAppSlotConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DailyMemoryTimeQuota != nil { + in, out := &in.DailyMemoryTimeQuota, &out.DailyMemoryTimeQuota + *out = new(float64) + **out = **in + } + if in.EnableBuiltinLogging != nil { + in, out := &in.EnableBuiltinLogging, &out.EnableBuiltinLogging + *out = new(bool) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]FunctionAppSlotIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.OsType != nil { + in, out := &in.OsType, &out.OsType + *out = new(string) + **out = **in + } + if in.SiteConfig != nil { + in, out := &in.SiteConfig, &out.SiteConfig + *out = make([]FunctionAppSlotSiteConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppSlotInitParameters. +func (in *FunctionAppSlotInitParameters) DeepCopy() *FunctionAppSlotInitParameters { + if in == nil { + return nil + } + out := new(FunctionAppSlotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FunctionAppSlotList) DeepCopyInto(out *FunctionAppSlotList) { *out = *in @@ -6416,7 +8969,7 @@ func (in *FunctionAppSlotParameters) DeepCopy() *FunctionAppSlotParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FunctionAppSlotSiteConfigObservation) DeepCopyInto(out *FunctionAppSlotSiteConfigObservation) { +func (in *FunctionAppSlotSiteConfigInitParameters) DeepCopyInto(out *FunctionAppSlotSiteConfigInitParameters) { *out = *in if in.AlwaysOn != nil { in, out := &in.AlwaysOn, &out.AlwaysOn @@ -6435,7 +8988,7 @@ func (in *FunctionAppSlotSiteConfigObservation) DeepCopyInto(out *FunctionAppSlo } if in.Cors != nil { in, out := &in.Cors, &out.Cors - *out = make([]SiteConfigCorsObservation, len(*in)) + *out = make([]SiteConfigCorsInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -6467,7 +9020,7 @@ func (in *FunctionAppSlotSiteConfigObservation) DeepCopyInto(out *FunctionAppSlo } if in.IPRestriction != nil { in, out := &in.IPRestriction, &out.IPRestriction - *out = make([]SiteConfigIPRestrictionObservation, len(*in)) + *out = make([]SiteConfigIPRestrictionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -6499,7 +9052,7 @@ func (in *FunctionAppSlotSiteConfigObservation) DeepCopyInto(out *FunctionAppSlo } if in.ScmIPRestriction != nil { in, out := &in.ScmIPRestriction, &out.ScmIPRestriction - *out = make([]SiteConfigScmIPRestrictionObservation, len(*in)) + *out = make([]SiteConfigScmIPRestrictionInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -6531,18 +9084,18 @@ func (in *FunctionAppSlotSiteConfigObservation) DeepCopyInto(out *FunctionAppSlo } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppSlotSiteConfigObservation. -func (in *FunctionAppSlotSiteConfigObservation) DeepCopy() *FunctionAppSlotSiteConfigObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppSlotSiteConfigInitParameters. +func (in *FunctionAppSlotSiteConfigInitParameters) DeepCopy() *FunctionAppSlotSiteConfigInitParameters { if in == nil { return nil } - out := new(FunctionAppSlotSiteConfigObservation) + out := new(FunctionAppSlotSiteConfigInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *FunctionAppSlotSiteConfigParameters) DeepCopyInto(out *FunctionAppSlotSiteConfigParameters) { +func (in *FunctionAppSlotSiteConfigObservation) DeepCopyInto(out *FunctionAppSlotSiteConfigObservation) { *out = *in if in.AlwaysOn != nil { in, out := &in.AlwaysOn, &out.AlwaysOn @@ -6561,7 +9114,133 @@ func (in *FunctionAppSlotSiteConfigParameters) DeepCopyInto(out *FunctionAppSlot } if in.Cors != nil { in, out := &in.Cors, &out.Cors - *out = make([]SiteConfigCorsParameters, len(*in)) + *out = make([]SiteConfigCorsObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DotnetFrameworkVersion != nil { + in, out := &in.DotnetFrameworkVersion, &out.DotnetFrameworkVersion + *out = new(string) + **out = **in + } + if in.ElasticInstanceMinimum != nil { + in, out := &in.ElasticInstanceMinimum, &out.ElasticInstanceMinimum + *out = new(float64) + **out = **in + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]SiteConfigIPRestrictionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.JavaVersion != nil { + in, out := &in.JavaVersion, &out.JavaVersion + *out = new(string) + **out = **in + } + if in.LinuxFxVersion != nil { + in, out := &in.LinuxFxVersion, &out.LinuxFxVersion + *out = new(string) + **out = **in + } + if in.MinTLSVersion != nil { + in, out := &in.MinTLSVersion, &out.MinTLSVersion + *out = new(string) + **out = **in + } + if in.PreWarmedInstanceCount != nil { + in, out := &in.PreWarmedInstanceCount, &out.PreWarmedInstanceCount + *out = new(float64) + **out = **in + } + if in.RuntimeScaleMonitoringEnabled != nil { + in, out := &in.RuntimeScaleMonitoringEnabled, &out.RuntimeScaleMonitoringEnabled + *out = new(bool) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]SiteConfigScmIPRestrictionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmType != nil { + in, out := &in.ScmType, &out.ScmType + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorkerProcess != nil { + in, out := &in.Use32BitWorkerProcess, &out.Use32BitWorkerProcess + *out = new(bool) + **out = **in + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppSlotSiteConfigObservation. +func (in *FunctionAppSlotSiteConfigObservation) DeepCopy() *FunctionAppSlotSiteConfigObservation { + if in == nil { + return nil + } + out := new(FunctionAppSlotSiteConfigObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionAppSlotSiteConfigParameters) DeepCopyInto(out *FunctionAppSlotSiteConfigParameters) { + *out = *in + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppScaleLimit != nil { + in, out := &in.AppScaleLimit, &out.AppScaleLimit + *out = new(float64) + **out = **in + } + if in.AutoSwapSlotName != nil { + in, out := &in.AutoSwapSlotName, &out.AutoSwapSlotName + *out = new(string) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]SiteConfigCorsParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -6667,6 +9346,21 @@ func (in *FunctionAppSlotSiteConfigParameters) DeepCopy() *FunctionAppSlotSiteCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FunctionAppSlotSiteCredentialInitParameters) DeepCopyInto(out *FunctionAppSlotSiteCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppSlotSiteCredentialInitParameters. +func (in *FunctionAppSlotSiteCredentialInitParameters) DeepCopy() *FunctionAppSlotSiteCredentialInitParameters { + if in == nil { + return nil + } + out := new(FunctionAppSlotSiteCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *FunctionAppSlotSiteCredentialObservation) DeepCopyInto(out *FunctionAppSlotSiteCredentialObservation) { *out = *in @@ -6712,6 +9406,7 @@ func (in *FunctionAppSlotSpec) DeepCopyInto(out *FunctionAppSlotSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppSlotSpec. @@ -6746,6 +9441,7 @@ func (in *FunctionAppSpec) DeepCopyInto(out *FunctionAppSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionAppSpec. @@ -6775,6 +9471,42 @@ func (in *FunctionAppStatus) DeepCopy() *FunctionAppStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GithubInitParameters) DeepCopyInto(out *GithubInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GithubInitParameters. +func (in *GithubInitParameters) DeepCopy() *GithubInitParameters { + if in == nil { + return nil + } + out := new(GithubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GithubObservation) DeepCopyInto(out *GithubObservation) { *out = *in @@ -6852,6 +9584,42 @@ func (in *GithubParameters) DeepCopy() *GithubParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GithubV2InitParameters) DeepCopyInto(out *GithubV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GithubV2InitParameters. +func (in *GithubV2InitParameters) DeepCopy() *GithubV2InitParameters { + if in == nil { + return nil + } + out := new(GithubV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GithubV2Observation) DeepCopyInto(out *GithubV2Observation) { *out = *in @@ -6924,6 +9692,37 @@ func (in *GithubV2Parameters) DeepCopy() *GithubV2Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GoogleInitParameters) DeepCopyInto(out *GoogleInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoogleInitParameters. +func (in *GoogleInitParameters) DeepCopy() *GoogleInitParameters { + if in == nil { + return nil + } + out := new(GoogleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GoogleObservation) DeepCopyInto(out *GoogleObservation) { *out = *in @@ -6987,6 +9786,53 @@ func (in *GoogleParameters) DeepCopy() *GoogleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GoogleV2InitParameters) DeepCopyInto(out *GoogleV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoogleV2InitParameters. +func (in *GoogleV2InitParameters) DeepCopy() *GoogleV2InitParameters { + if in == nil { + return nil + } + out := new(GoogleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GoogleV2Observation) DeepCopyInto(out *GoogleV2Observation) { *out = *in @@ -7081,6 +9927,26 @@ func (in *GoogleV2Parameters) DeepCopy() *GoogleV2Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPLogsAzureBlobStorageInitParameters) DeepCopyInto(out *HTTPLogsAzureBlobStorageInitParameters) { + *out = *in + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPLogsAzureBlobStorageInitParameters. +func (in *HTTPLogsAzureBlobStorageInitParameters) DeepCopy() *HTTPLogsAzureBlobStorageInitParameters { + if in == nil { + return nil + } + out := new(HTTPLogsAzureBlobStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HTTPLogsAzureBlobStorageObservation) DeepCopyInto(out *HTTPLogsAzureBlobStorageObservation) { *out = *in @@ -7122,6 +9988,31 @@ func (in *HTTPLogsAzureBlobStorageParameters) DeepCopy() *HTTPLogsAzureBlobStora return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPLogsFileSystemInitParameters) DeepCopyInto(out *HTTPLogsFileSystemInitParameters) { + *out = *in + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.RetentionInMb != nil { + in, out := &in.RetentionInMb, &out.RetentionInMb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPLogsFileSystemInitParameters. +func (in *HTTPLogsFileSystemInitParameters) DeepCopy() *HTTPLogsFileSystemInitParameters { + if in == nil { + return nil + } + out := new(HTTPLogsFileSystemInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HTTPLogsFileSystemObservation) DeepCopyInto(out *HTTPLogsFileSystemObservation) { *out = *in @@ -7172,6 +10063,35 @@ func (in *HTTPLogsFileSystemParameters) DeepCopy() *HTTPLogsFileSystemParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HTTPLogsInitParameters) DeepCopyInto(out *HTTPLogsInitParameters) { + *out = *in + if in.AzureBlobStorage != nil { + in, out := &in.AzureBlobStorage, &out.AzureBlobStorage + *out = make([]HTTPLogsAzureBlobStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FileSystem != nil { + in, out := &in.FileSystem, &out.FileSystem + *out = make([]FileSystemInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPLogsInitParameters. +func (in *HTTPLogsInitParameters) DeepCopy() *HTTPLogsInitParameters { + if in == nil { + return nil + } + out := new(HTTPLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HTTPLogsObservation) DeepCopyInto(out *HTTPLogsObservation) { *out = *in @@ -7231,7 +10151,66 @@ func (in *HTTPLogsParameters) DeepCopy() *HTTPLogsParameters { } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *HeadersObservation) DeepCopyInto(out *HeadersObservation) { +func (in *HeadersInitParameters) DeepCopyInto(out *HeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeadersInitParameters. +func (in *HeadersInitParameters) DeepCopy() *HeadersInitParameters { + if in == nil { + return nil + } + out := new(HeadersInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HeadersObservation) DeepCopyInto(out *HeadersObservation) { *out = *in if in.XAzureFdid != nil { in, out := &in.XAzureFdid, &out.XAzureFdid @@ -7348,6 +10327,65 @@ func (in *HeadersParameters) DeepCopy() *HeadersParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPRestrictionHeadersInitParameters) DeepCopyInto(out *IPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRestrictionHeadersInitParameters. +func (in *IPRestrictionHeadersInitParameters) DeepCopy() *IPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(IPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPRestrictionHeadersObservation) DeepCopyInto(out *IPRestrictionHeadersObservation) { *out = *in @@ -7466,6 +10504,53 @@ func (in *IPRestrictionHeadersParameters) DeepCopy() *IPRestrictionHeadersParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IPRestrictionInitParameters) DeepCopyInto(out *IPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]HeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPRestrictionInitParameters. +func (in *IPRestrictionInitParameters) DeepCopy() *IPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(IPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IPRestrictionObservation) DeepCopyInto(out *IPRestrictionObservation) { *out = *in @@ -7580,6 +10665,37 @@ func (in *IPRestrictionParameters) DeepCopy() *IPRestrictionParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityInitParameters. +func (in *IdentityInitParameters) DeepCopy() *IdentityInitParameters { + if in == nil { + return nil + } + out := new(IdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation) { *out = *in @@ -7679,6 +10795,42 @@ func (in *LinuxFunctionApp) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppAuthSettingsActiveDirectoryInitParameters) DeepCopyInto(out *LinuxFunctionAppAuthSettingsActiveDirectoryInitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsActiveDirectoryInitParameters. +func (in *LinuxFunctionAppAuthSettingsActiveDirectoryInitParameters) DeepCopy() *LinuxFunctionAppAuthSettingsActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppAuthSettingsActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppAuthSettingsActiveDirectoryObservation) DeepCopyInto(out *LinuxFunctionAppAuthSettingsActiveDirectoryObservation) { *out = *in @@ -7757,7 +10909,7 @@ func (in *LinuxFunctionAppAuthSettingsActiveDirectoryParameters) DeepCopy() *Lin } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppAuthSettingsFacebookObservation) DeepCopyInto(out *LinuxFunctionAppAuthSettingsFacebookObservation) { +func (in *LinuxFunctionAppAuthSettingsFacebookInitParameters) DeepCopyInto(out *LinuxFunctionAppAuthSettingsFacebookInitParameters) { *out = *in if in.AppID != nil { in, out := &in.AppID, &out.AppID @@ -7782,29 +10934,24 @@ func (in *LinuxFunctionAppAuthSettingsFacebookObservation) DeepCopyInto(out *Lin } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsFacebookObservation. -func (in *LinuxFunctionAppAuthSettingsFacebookObservation) DeepCopy() *LinuxFunctionAppAuthSettingsFacebookObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsFacebookInitParameters. +func (in *LinuxFunctionAppAuthSettingsFacebookInitParameters) DeepCopy() *LinuxFunctionAppAuthSettingsFacebookInitParameters { if in == nil { return nil } - out := new(LinuxFunctionAppAuthSettingsFacebookObservation) + out := new(LinuxFunctionAppAuthSettingsFacebookInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppAuthSettingsFacebookParameters) DeepCopyInto(out *LinuxFunctionAppAuthSettingsFacebookParameters) { +func (in *LinuxFunctionAppAuthSettingsFacebookObservation) DeepCopyInto(out *LinuxFunctionAppAuthSettingsFacebookObservation) { *out = *in if in.AppID != nil { in, out := &in.AppID, &out.AppID *out = new(string) **out = **in } - if in.AppSecretSecretRef != nil { - in, out := &in.AppSecretSecretRef, &out.AppSecretSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } if in.AppSecretSettingName != nil { in, out := &in.AppSecretSettingName, &out.AppSecretSettingName *out = new(string) @@ -7823,26 +10970,31 @@ func (in *LinuxFunctionAppAuthSettingsFacebookParameters) DeepCopyInto(out *Linu } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsFacebookParameters. -func (in *LinuxFunctionAppAuthSettingsFacebookParameters) DeepCopy() *LinuxFunctionAppAuthSettingsFacebookParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsFacebookObservation. +func (in *LinuxFunctionAppAuthSettingsFacebookObservation) DeepCopy() *LinuxFunctionAppAuthSettingsFacebookObservation { if in == nil { return nil } - out := new(LinuxFunctionAppAuthSettingsFacebookParameters) + out := new(LinuxFunctionAppAuthSettingsFacebookObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppAuthSettingsGoogleObservation) DeepCopyInto(out *LinuxFunctionAppAuthSettingsGoogleObservation) { +func (in *LinuxFunctionAppAuthSettingsFacebookParameters) DeepCopyInto(out *LinuxFunctionAppAuthSettingsFacebookParameters) { *out = *in - if in.ClientID != nil { - in, out := &in.ClientID, &out.ClientID + if in.AppID != nil { + in, out := &in.AppID, &out.AppID *out = new(string) **out = **in } - if in.ClientSecretSettingName != nil { - in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + if in.AppSecretSecretRef != nil { + in, out := &in.AppSecretSecretRef, &out.AppSecretSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName *out = new(string) **out = **in } @@ -7859,29 +11011,24 @@ func (in *LinuxFunctionAppAuthSettingsGoogleObservation) DeepCopyInto(out *Linux } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsGoogleObservation. -func (in *LinuxFunctionAppAuthSettingsGoogleObservation) DeepCopy() *LinuxFunctionAppAuthSettingsGoogleObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsFacebookParameters. +func (in *LinuxFunctionAppAuthSettingsFacebookParameters) DeepCopy() *LinuxFunctionAppAuthSettingsFacebookParameters { if in == nil { return nil } - out := new(LinuxFunctionAppAuthSettingsGoogleObservation) + out := new(LinuxFunctionAppAuthSettingsFacebookParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppAuthSettingsGoogleParameters) DeepCopyInto(out *LinuxFunctionAppAuthSettingsGoogleParameters) { +func (in *LinuxFunctionAppAuthSettingsGoogleInitParameters) DeepCopyInto(out *LinuxFunctionAppAuthSettingsGoogleInitParameters) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID *out = new(string) **out = **in } - if in.ClientSecretSecretRef != nil { - in, out := &in.ClientSecretSecretRef, &out.ClientSecretSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } if in.ClientSecretSettingName != nil { in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName *out = new(string) @@ -7900,18 +11047,249 @@ func (in *LinuxFunctionAppAuthSettingsGoogleParameters) DeepCopyInto(out *LinuxF } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsGoogleParameters. -func (in *LinuxFunctionAppAuthSettingsGoogleParameters) DeepCopy() *LinuxFunctionAppAuthSettingsGoogleParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsGoogleInitParameters. +func (in *LinuxFunctionAppAuthSettingsGoogleInitParameters) DeepCopy() *LinuxFunctionAppAuthSettingsGoogleInitParameters { if in == nil { return nil } - out := new(LinuxFunctionAppAuthSettingsGoogleParameters) + out := new(LinuxFunctionAppAuthSettingsGoogleInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppAuthSettingsMicrosoftObservation) DeepCopyInto(out *LinuxFunctionAppAuthSettingsMicrosoftObservation) { +func (in *LinuxFunctionAppAuthSettingsGoogleObservation) DeepCopyInto(out *LinuxFunctionAppAuthSettingsGoogleObservation) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsGoogleObservation. +func (in *LinuxFunctionAppAuthSettingsGoogleObservation) DeepCopy() *LinuxFunctionAppAuthSettingsGoogleObservation { + if in == nil { + return nil + } + out := new(LinuxFunctionAppAuthSettingsGoogleObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppAuthSettingsGoogleParameters) DeepCopyInto(out *LinuxFunctionAppAuthSettingsGoogleParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSecretRef != nil { + in, out := &in.ClientSecretSecretRef, &out.ClientSecretSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsGoogleParameters. +func (in *LinuxFunctionAppAuthSettingsGoogleParameters) DeepCopy() *LinuxFunctionAppAuthSettingsGoogleParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppAuthSettingsGoogleParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppAuthSettingsInitParameters) DeepCopyInto(out *LinuxFunctionAppAuthSettingsInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]LinuxFunctionAppAuthSettingsActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalLoginParameters != nil { + in, out := &in.AdditionalLoginParameters, &out.AdditionalLoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Facebook != nil { + in, out := &in.Facebook, &out.Facebook + *out = make([]LinuxFunctionAppAuthSettingsFacebookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Github != nil { + in, out := &in.Github, &out.Github + *out = make([]GithubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Google != nil { + in, out := &in.Google, &out.Google + *out = make([]LinuxFunctionAppAuthSettingsGoogleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Microsoft != nil { + in, out := &in.Microsoft, &out.Microsoft + *out = make([]LinuxFunctionAppAuthSettingsMicrosoftInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TokenRefreshExtensionHours != nil { + in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.Twitter != nil { + in, out := &in.Twitter, &out.Twitter + *out = make([]LinuxFunctionAppAuthSettingsTwitterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedClientAction != nil { + in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsInitParameters. +func (in *LinuxFunctionAppAuthSettingsInitParameters) DeepCopy() *LinuxFunctionAppAuthSettingsInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppAuthSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppAuthSettingsMicrosoftInitParameters) DeepCopyInto(out *LinuxFunctionAppAuthSettingsMicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsMicrosoftInitParameters. +func (in *LinuxFunctionAppAuthSettingsMicrosoftInitParameters) DeepCopy() *LinuxFunctionAppAuthSettingsMicrosoftInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppAuthSettingsMicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppAuthSettingsMicrosoftObservation) DeepCopyInto(out *LinuxFunctionAppAuthSettingsMicrosoftObservation) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID @@ -8223,6 +11601,31 @@ func (in *LinuxFunctionAppAuthSettingsParameters) DeepCopy() *LinuxFunctionAppAu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppAuthSettingsTwitterInitParameters) DeepCopyInto(out *LinuxFunctionAppAuthSettingsTwitterInitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppAuthSettingsTwitterInitParameters. +func (in *LinuxFunctionAppAuthSettingsTwitterInitParameters) DeepCopy() *LinuxFunctionAppAuthSettingsTwitterInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppAuthSettingsTwitterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppAuthSettingsTwitterObservation) DeepCopyInto(out *LinuxFunctionAppAuthSettingsTwitterObservation) { *out = *in @@ -8278,6 +11681,31 @@ func (in *LinuxFunctionAppAuthSettingsTwitterParameters) DeepCopy() *LinuxFuncti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppConnectionStringInitParameters) DeepCopyInto(out *LinuxFunctionAppConnectionStringInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppConnectionStringInitParameters. +func (in *LinuxFunctionAppConnectionStringInitParameters) DeepCopy() *LinuxFunctionAppConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppConnectionStringObservation) DeepCopyInto(out *LinuxFunctionAppConnectionStringObservation) { *out = *in @@ -8329,6 +11757,37 @@ func (in *LinuxFunctionAppConnectionStringParameters) DeepCopy() *LinuxFunctionA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppIdentityInitParameters) DeepCopyInto(out *LinuxFunctionAppIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppIdentityInitParameters. +func (in *LinuxFunctionAppIdentityInitParameters) DeepCopy() *LinuxFunctionAppIdentityInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppIdentityObservation) DeepCopyInto(out *LinuxFunctionAppIdentityObservation) { *out = *in @@ -8401,6 +11860,182 @@ func (in *LinuxFunctionAppIdentityParameters) DeepCopy() *LinuxFunctionAppIdenti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppInitParameters) DeepCopyInto(out *LinuxFunctionAppInitParameters) { + *out = *in + if in.AppSettings != nil { + in, out := &in.AppSettings, &out.AppSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AuthSettings != nil { + in, out := &in.AuthSettings, &out.AuthSettings + *out = make([]LinuxFunctionAppAuthSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthSettingsV2 != nil { + in, out := &in.AuthSettingsV2, &out.AuthSettingsV2 + *out = make([]AuthSettingsV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]BackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BuiltinLoggingEnabled != nil { + in, out := &in.BuiltinLoggingEnabled, &out.BuiltinLoggingEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateEnabled != nil { + in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateExclusionPaths != nil { + in, out := &in.ClientCertificateExclusionPaths, &out.ClientCertificateExclusionPaths + *out = new(string) + **out = **in + } + if in.ClientCertificateMode != nil { + in, out := &in.ClientCertificateMode, &out.ClientCertificateMode + *out = new(string) + **out = **in + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = make([]LinuxFunctionAppConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ContentShareForceDisabled != nil { + in, out := &in.ContentShareForceDisabled, &out.ContentShareForceDisabled + *out = new(bool) + **out = **in + } + if in.DailyMemoryTimeQuota != nil { + in, out := &in.DailyMemoryTimeQuota, &out.DailyMemoryTimeQuota + *out = new(float64) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.FunctionsExtensionVersion != nil { + in, out := &in.FunctionsExtensionVersion, &out.FunctionsExtensionVersion + *out = new(string) + **out = **in + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]LinuxFunctionAppIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultReferenceIdentityID != nil { + in, out := &in.KeyVaultReferenceIdentityID, &out.KeyVaultReferenceIdentityID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.SiteConfig != nil { + in, out := &in.SiteConfig, &out.SiteConfig + *out = make([]LinuxFunctionAppSiteConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StickySettings != nil { + in, out := &in.StickySettings, &out.StickySettings + *out = make([]StickySettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]StorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageKeyVaultSecretID != nil { + in, out := &in.StorageKeyVaultSecretID, &out.StorageKeyVaultSecretID + *out = new(string) + **out = **in + } + if in.StorageUsesManagedIdentity != nil { + in, out := &in.StorageUsesManagedIdentity, &out.StorageUsesManagedIdentity + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZipDeployFile != nil { + in, out := &in.ZipDeployFile, &out.ZipDeployFile + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppInitParameters. +func (in *LinuxFunctionAppInitParameters) DeepCopy() *LinuxFunctionAppInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppList) DeepCopyInto(out *LinuxFunctionAppList) { *out = *in @@ -8922,6 +12557,37 @@ func (in *LinuxFunctionAppParameters) DeepCopy() *LinuxFunctionAppParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSiteConfigCorsInitParameters) DeepCopyInto(out *LinuxFunctionAppSiteConfigCorsInitParameters) { + *out = *in + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportCredentials != nil { + in, out := &in.SupportCredentials, &out.SupportCredentials + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSiteConfigCorsInitParameters. +func (in *LinuxFunctionAppSiteConfigCorsInitParameters) DeepCopy() *LinuxFunctionAppSiteConfigCorsInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSiteConfigCorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSiteConfigCorsObservation) DeepCopyInto(out *LinuxFunctionAppSiteConfigCorsObservation) { *out = *in @@ -8984,6 +12650,53 @@ func (in *LinuxFunctionAppSiteConfigCorsParameters) DeepCopy() *LinuxFunctionApp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSiteConfigIPRestrictionInitParameters) DeepCopyInto(out *LinuxFunctionAppSiteConfigIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]SiteConfigIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSiteConfigIPRestrictionInitParameters. +func (in *LinuxFunctionAppSiteConfigIPRestrictionInitParameters) DeepCopy() *LinuxFunctionAppSiteConfigIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSiteConfigIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSiteConfigIPRestrictionObservation) DeepCopyInto(out *LinuxFunctionAppSiteConfigIPRestrictionObservation) { *out = *in @@ -9098,6 +12811,192 @@ func (in *LinuxFunctionAppSiteConfigIPRestrictionParameters) DeepCopy() *LinuxFu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSiteConfigInitParameters) DeepCopyInto(out *LinuxFunctionAppSiteConfigInitParameters) { + *out = *in + if in.APIDefinitionURL != nil { + in, out := &in.APIDefinitionURL, &out.APIDefinitionURL + *out = new(string) + **out = **in + } + if in.APIManagementAPIID != nil { + in, out := &in.APIManagementAPIID, &out.APIManagementAPIID + *out = new(string) + **out = **in + } + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppCommandLine != nil { + in, out := &in.AppCommandLine, &out.AppCommandLine + *out = new(string) + **out = **in + } + if in.AppScaleLimit != nil { + in, out := &in.AppScaleLimit, &out.AppScaleLimit + *out = new(float64) + **out = **in + } + if in.AppServiceLogs != nil { + in, out := &in.AppServiceLogs, &out.AppServiceLogs + *out = make([]AppServiceLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ApplicationStack != nil { + in, out := &in.ApplicationStack, &out.ApplicationStack + *out = make([]ApplicationStackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ContainerRegistryManagedIdentityClientID != nil { + in, out := &in.ContainerRegistryManagedIdentityClientID, &out.ContainerRegistryManagedIdentityClientID + *out = new(string) + **out = **in + } + if in.ContainerRegistryUseManagedIdentity != nil { + in, out := &in.ContainerRegistryUseManagedIdentity, &out.ContainerRegistryUseManagedIdentity + *out = new(bool) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]LinuxFunctionAppSiteConfigCorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDocuments != nil { + in, out := &in.DefaultDocuments, &out.DefaultDocuments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ElasticInstanceMinimum != nil { + in, out := &in.ElasticInstanceMinimum, &out.ElasticInstanceMinimum + *out = new(float64) + **out = **in + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckEvictionTimeInMin != nil { + in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin + *out = new(float64) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]LinuxFunctionAppSiteConfigIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancingMode != nil { + in, out := &in.LoadBalancingMode, &out.LoadBalancingMode + *out = new(string) + **out = **in + } + if in.ManagedPipelineMode != nil { + in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.PreWarmedInstanceCount != nil { + in, out := &in.PreWarmedInstanceCount, &out.PreWarmedInstanceCount + *out = new(float64) + **out = **in + } + if in.RemoteDebuggingEnabled != nil { + in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled + *out = new(bool) + **out = **in + } + if in.RemoteDebuggingVersion != nil { + in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion + *out = new(string) + **out = **in + } + if in.RuntimeScaleMonitoringEnabled != nil { + in, out := &in.RuntimeScaleMonitoringEnabled, &out.RuntimeScaleMonitoringEnabled + *out = new(bool) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]LinuxFunctionAppSiteConfigScmIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmMinimumTLSVersion != nil { + in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorker != nil { + in, out := &in.Use32BitWorker, &out.Use32BitWorker + *out = new(bool) + **out = **in + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSiteConfigInitParameters. +func (in *LinuxFunctionAppSiteConfigInitParameters) DeepCopy() *LinuxFunctionAppSiteConfigInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSiteConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSiteConfigObservation) DeepCopyInto(out *LinuxFunctionAppSiteConfigObservation) { *out = *in @@ -9495,6 +13394,65 @@ func (in *LinuxFunctionAppSiteConfigParameters) DeepCopy() *LinuxFunctionAppSite return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopyInto(out *LinuxFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters. +func (in *LinuxFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopy() *LinuxFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSiteConfigScmIPRestrictionHeadersObservation) DeepCopyInto(out *LinuxFunctionAppSiteConfigScmIPRestrictionHeadersObservation) { *out = *in @@ -9613,6 +13571,53 @@ func (in *LinuxFunctionAppSiteConfigScmIPRestrictionHeadersParameters) DeepCopy( return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSiteConfigScmIPRestrictionInitParameters) DeepCopyInto(out *LinuxFunctionAppSiteConfigScmIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]LinuxFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSiteConfigScmIPRestrictionInitParameters. +func (in *LinuxFunctionAppSiteConfigScmIPRestrictionInitParameters) DeepCopy() *LinuxFunctionAppSiteConfigScmIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSiteConfigScmIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSiteConfigScmIPRestrictionObservation) DeepCopyInto(out *LinuxFunctionAppSiteConfigScmIPRestrictionObservation) { *out = *in @@ -9727,6 +13732,21 @@ func (in *LinuxFunctionAppSiteConfigScmIPRestrictionParameters) DeepCopy() *Linu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSiteCredentialInitParameters) DeepCopyInto(out *LinuxFunctionAppSiteCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSiteCredentialInitParameters. +func (in *LinuxFunctionAppSiteCredentialInitParameters) DeepCopy() *LinuxFunctionAppSiteCredentialInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSiteCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSiteCredentialObservation) DeepCopyInto(out *LinuxFunctionAppSiteCredentialObservation) { *out = *in @@ -9794,6 +13814,42 @@ func (in *LinuxFunctionAppSlot) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotAuthSettingsActiveDirectoryInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsActiveDirectoryInitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsActiveDirectoryInitParameters. +func (in *LinuxFunctionAppSlotAuthSettingsActiveDirectoryInitParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotAuthSettingsActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotAuthSettingsActiveDirectoryObservation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsActiveDirectoryObservation) { *out = *in @@ -9872,7 +13928,7 @@ func (in *LinuxFunctionAppSlotAuthSettingsActiveDirectoryParameters) DeepCopy() } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppSlotAuthSettingsFacebookObservation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsFacebookObservation) { +func (in *LinuxFunctionAppSlotAuthSettingsFacebookInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsFacebookInitParameters) { *out = *in if in.AppID != nil { in, out := &in.AppID, &out.AppID @@ -9897,29 +13953,24 @@ func (in *LinuxFunctionAppSlotAuthSettingsFacebookObservation) DeepCopyInto(out } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsFacebookObservation. -func (in *LinuxFunctionAppSlotAuthSettingsFacebookObservation) DeepCopy() *LinuxFunctionAppSlotAuthSettingsFacebookObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsFacebookInitParameters. +func (in *LinuxFunctionAppSlotAuthSettingsFacebookInitParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsFacebookInitParameters { if in == nil { return nil } - out := new(LinuxFunctionAppSlotAuthSettingsFacebookObservation) + out := new(LinuxFunctionAppSlotAuthSettingsFacebookInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppSlotAuthSettingsFacebookParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsFacebookParameters) { +func (in *LinuxFunctionAppSlotAuthSettingsFacebookObservation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsFacebookObservation) { *out = *in if in.AppID != nil { in, out := &in.AppID, &out.AppID *out = new(string) **out = **in } - if in.AppSecretSecretRef != nil { - in, out := &in.AppSecretSecretRef, &out.AppSecretSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } if in.AppSecretSettingName != nil { in, out := &in.AppSecretSettingName, &out.AppSecretSettingName *out = new(string) @@ -9938,26 +13989,31 @@ func (in *LinuxFunctionAppSlotAuthSettingsFacebookParameters) DeepCopyInto(out * } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsFacebookParameters. -func (in *LinuxFunctionAppSlotAuthSettingsFacebookParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsFacebookParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsFacebookObservation. +func (in *LinuxFunctionAppSlotAuthSettingsFacebookObservation) DeepCopy() *LinuxFunctionAppSlotAuthSettingsFacebookObservation { if in == nil { return nil } - out := new(LinuxFunctionAppSlotAuthSettingsFacebookParameters) + out := new(LinuxFunctionAppSlotAuthSettingsFacebookObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppSlotAuthSettingsGoogleObservation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsGoogleObservation) { +func (in *LinuxFunctionAppSlotAuthSettingsFacebookParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsFacebookParameters) { *out = *in - if in.ClientID != nil { - in, out := &in.ClientID, &out.ClientID + if in.AppID != nil { + in, out := &in.AppID, &out.AppID *out = new(string) **out = **in } - if in.ClientSecretSettingName != nil { - in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + if in.AppSecretSecretRef != nil { + in, out := &in.AppSecretSecretRef, &out.AppSecretSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName *out = new(string) **out = **in } @@ -9974,29 +14030,24 @@ func (in *LinuxFunctionAppSlotAuthSettingsGoogleObservation) DeepCopyInto(out *L } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsGoogleObservation. -func (in *LinuxFunctionAppSlotAuthSettingsGoogleObservation) DeepCopy() *LinuxFunctionAppSlotAuthSettingsGoogleObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsFacebookParameters. +func (in *LinuxFunctionAppSlotAuthSettingsFacebookParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsFacebookParameters { if in == nil { return nil } - out := new(LinuxFunctionAppSlotAuthSettingsGoogleObservation) + out := new(LinuxFunctionAppSlotAuthSettingsFacebookParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppSlotAuthSettingsGoogleParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsGoogleParameters) { +func (in *LinuxFunctionAppSlotAuthSettingsGoogleInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsGoogleInitParameters) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID *out = new(string) **out = **in } - if in.ClientSecretSecretRef != nil { - in, out := &in.ClientSecretSecretRef, &out.ClientSecretSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } if in.ClientSecretSettingName != nil { in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName *out = new(string) @@ -10015,18 +14066,18 @@ func (in *LinuxFunctionAppSlotAuthSettingsGoogleParameters) DeepCopyInto(out *Li } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsGoogleParameters. -func (in *LinuxFunctionAppSlotAuthSettingsGoogleParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsGoogleParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsGoogleInitParameters. +func (in *LinuxFunctionAppSlotAuthSettingsGoogleInitParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsGoogleInitParameters { if in == nil { return nil } - out := new(LinuxFunctionAppSlotAuthSettingsGoogleParameters) + out := new(LinuxFunctionAppSlotAuthSettingsGoogleInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftObservation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsMicrosoftObservation) { +func (in *LinuxFunctionAppSlotAuthSettingsGoogleObservation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsGoogleObservation) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID @@ -10051,18 +14102,18 @@ func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftObservation) DeepCopyInto(out } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsMicrosoftObservation. -func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftObservation) DeepCopy() *LinuxFunctionAppSlotAuthSettingsMicrosoftObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsGoogleObservation. +func (in *LinuxFunctionAppSlotAuthSettingsGoogleObservation) DeepCopy() *LinuxFunctionAppSlotAuthSettingsGoogleObservation { if in == nil { return nil } - out := new(LinuxFunctionAppSlotAuthSettingsMicrosoftObservation) + out := new(LinuxFunctionAppSlotAuthSettingsGoogleObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsMicrosoftParameters) { +func (in *LinuxFunctionAppSlotAuthSettingsGoogleParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsGoogleParameters) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID @@ -10092,22 +14143,22 @@ func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftParameters) DeepCopyInto(out } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsMicrosoftParameters. -func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsMicrosoftParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsGoogleParameters. +func (in *LinuxFunctionAppSlotAuthSettingsGoogleParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsGoogleParameters { if in == nil { return nil } - out := new(LinuxFunctionAppSlotAuthSettingsMicrosoftParameters) + out := new(LinuxFunctionAppSlotAuthSettingsGoogleParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppSlotAuthSettingsObservation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsObservation) { +func (in *LinuxFunctionAppSlotAuthSettingsInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsInitParameters) { *out = *in if in.ActiveDirectory != nil { in, out := &in.ActiveDirectory, &out.ActiveDirectory - *out = make([]LinuxFunctionAppSlotAuthSettingsActiveDirectoryObservation, len(*in)) + *out = make([]LinuxFunctionAppSlotAuthSettingsActiveDirectoryInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -10150,21 +14201,21 @@ func (in *LinuxFunctionAppSlotAuthSettingsObservation) DeepCopyInto(out *LinuxFu } if in.Facebook != nil { in, out := &in.Facebook, &out.Facebook - *out = make([]LinuxFunctionAppSlotAuthSettingsFacebookObservation, len(*in)) + *out = make([]LinuxFunctionAppSlotAuthSettingsFacebookInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.Github != nil { in, out := &in.Github, &out.Github - *out = make([]AuthSettingsGithubObservation, len(*in)) + *out = make([]AuthSettingsGithubInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } if in.Google != nil { in, out := &in.Google, &out.Google - *out = make([]LinuxFunctionAppSlotAuthSettingsGoogleObservation, len(*in)) + *out = make([]LinuxFunctionAppSlotAuthSettingsGoogleInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -10176,7 +14227,7 @@ func (in *LinuxFunctionAppSlotAuthSettingsObservation) DeepCopyInto(out *LinuxFu } if in.Microsoft != nil { in, out := &in.Microsoft, &out.Microsoft - *out = make([]LinuxFunctionAppSlotAuthSettingsMicrosoftObservation, len(*in)) + *out = make([]LinuxFunctionAppSlotAuthSettingsMicrosoftInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -10198,7 +14249,7 @@ func (in *LinuxFunctionAppSlotAuthSettingsObservation) DeepCopyInto(out *LinuxFu } if in.Twitter != nil { in, out := &in.Twitter, &out.Twitter - *out = make([]LinuxFunctionAppSlotAuthSettingsTwitterObservation, len(*in)) + *out = make([]LinuxFunctionAppSlotAuthSettingsTwitterInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -10210,22 +14261,253 @@ func (in *LinuxFunctionAppSlotAuthSettingsObservation) DeepCopyInto(out *LinuxFu } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsObservation. -func (in *LinuxFunctionAppSlotAuthSettingsObservation) DeepCopy() *LinuxFunctionAppSlotAuthSettingsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsInitParameters. +func (in *LinuxFunctionAppSlotAuthSettingsInitParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsInitParameters { if in == nil { return nil } - out := new(LinuxFunctionAppSlotAuthSettingsObservation) + out := new(LinuxFunctionAppSlotAuthSettingsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxFunctionAppSlotAuthSettingsParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsParameters) { +func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsMicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsMicrosoftInitParameters. +func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftInitParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsMicrosoftInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotAuthSettingsMicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftObservation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsMicrosoftObservation) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsMicrosoftObservation. +func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftObservation) DeepCopy() *LinuxFunctionAppSlotAuthSettingsMicrosoftObservation { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotAuthSettingsMicrosoftObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsMicrosoftParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSecretRef != nil { + in, out := &in.ClientSecretSecretRef, &out.ClientSecretSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsMicrosoftParameters. +func (in *LinuxFunctionAppSlotAuthSettingsMicrosoftParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsMicrosoftParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotAuthSettingsMicrosoftParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotAuthSettingsObservation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsObservation) { *out = *in if in.ActiveDirectory != nil { in, out := &in.ActiveDirectory, &out.ActiveDirectory - *out = make([]LinuxFunctionAppSlotAuthSettingsActiveDirectoryParameters, len(*in)) + *out = make([]LinuxFunctionAppSlotAuthSettingsActiveDirectoryObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalLoginParameters != nil { + in, out := &in.AdditionalLoginParameters, &out.AdditionalLoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Facebook != nil { + in, out := &in.Facebook, &out.Facebook + *out = make([]LinuxFunctionAppSlotAuthSettingsFacebookObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Github != nil { + in, out := &in.Github, &out.Github + *out = make([]AuthSettingsGithubObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Google != nil { + in, out := &in.Google, &out.Google + *out = make([]LinuxFunctionAppSlotAuthSettingsGoogleObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Microsoft != nil { + in, out := &in.Microsoft, &out.Microsoft + *out = make([]LinuxFunctionAppSlotAuthSettingsMicrosoftObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TokenRefreshExtensionHours != nil { + in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.Twitter != nil { + in, out := &in.Twitter, &out.Twitter + *out = make([]LinuxFunctionAppSlotAuthSettingsTwitterObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedClientAction != nil { + in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsObservation. +func (in *LinuxFunctionAppSlotAuthSettingsObservation) DeepCopy() *LinuxFunctionAppSlotAuthSettingsObservation { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotAuthSettingsObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotAuthSettingsParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]LinuxFunctionAppSlotAuthSettingsActiveDirectoryParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -10338,6 +14620,31 @@ func (in *LinuxFunctionAppSlotAuthSettingsParameters) DeepCopy() *LinuxFunctionA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotAuthSettingsTwitterInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsTwitterInitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsTwitterInitParameters. +func (in *LinuxFunctionAppSlotAuthSettingsTwitterInitParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsTwitterInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotAuthSettingsTwitterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotAuthSettingsTwitterObservation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsTwitterObservation) { *out = *in @@ -10393,6 +14700,157 @@ func (in *LinuxFunctionAppSlotAuthSettingsTwitterParameters) DeepCopy() *LinuxFu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotAuthSettingsV2InitParameters) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsV2InitParameters) { + *out = *in + if in.ActiveDirectoryV2 != nil { + in, out := &in.ActiveDirectoryV2, &out.ActiveDirectoryV2 + *out = make([]AuthSettingsV2ActiveDirectoryV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AppleV2 != nil { + in, out := &in.AppleV2, &out.AppleV2 + *out = make([]AuthSettingsV2AppleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthEnabled != nil { + in, out := &in.AuthEnabled, &out.AuthEnabled + *out = new(bool) + **out = **in + } + if in.AzureStaticWebAppV2 != nil { + in, out := &in.AzureStaticWebAppV2, &out.AzureStaticWebAppV2 + *out = make([]AuthSettingsV2AzureStaticWebAppV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConfigFilePath != nil { + in, out := &in.ConfigFilePath, &out.ConfigFilePath + *out = new(string) + **out = **in + } + if in.CustomOidcV2 != nil { + in, out := &in.CustomOidcV2, &out.CustomOidcV2 + *out = make([]AuthSettingsV2CustomOidcV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.ExcludedPaths != nil { + in, out := &in.ExcludedPaths, &out.ExcludedPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FacebookV2 != nil { + in, out := &in.FacebookV2, &out.FacebookV2 + *out = make([]AuthSettingsV2FacebookV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForwardProxyConvention != nil { + in, out := &in.ForwardProxyConvention, &out.ForwardProxyConvention + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomHostHeaderName != nil { + in, out := &in.ForwardProxyCustomHostHeaderName, &out.ForwardProxyCustomHostHeaderName + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomSchemeHeaderName != nil { + in, out := &in.ForwardProxyCustomSchemeHeaderName, &out.ForwardProxyCustomSchemeHeaderName + *out = new(string) + **out = **in + } + if in.GithubV2 != nil { + in, out := &in.GithubV2, &out.GithubV2 + *out = make([]AuthSettingsV2GithubV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GoogleV2 != nil { + in, out := &in.GoogleV2, &out.GoogleV2 + *out = make([]AuthSettingsV2GoogleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPRouteAPIPrefix != nil { + in, out := &in.HTTPRouteAPIPrefix, &out.HTTPRouteAPIPrefix + *out = new(string) + **out = **in + } + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = make([]AuthSettingsV2LoginInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MicrosoftV2 != nil { + in, out := &in.MicrosoftV2, &out.MicrosoftV2 + *out = make([]AuthSettingsV2MicrosoftV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequireAuthentication != nil { + in, out := &in.RequireAuthentication, &out.RequireAuthentication + *out = new(bool) + **out = **in + } + if in.RequireHTTPS != nil { + in, out := &in.RequireHTTPS, &out.RequireHTTPS + *out = new(bool) + **out = **in + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TwitterV2 != nil { + in, out := &in.TwitterV2, &out.TwitterV2 + *out = make([]AuthSettingsV2TwitterV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedAction != nil { + in, out := &in.UnauthenticatedAction, &out.UnauthenticatedAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotAuthSettingsV2InitParameters. +func (in *LinuxFunctionAppSlotAuthSettingsV2InitParameters) DeepCopy() *LinuxFunctionAppSlotAuthSettingsV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotAuthSettingsV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotAuthSettingsV2Observation) DeepCopyInto(out *LinuxFunctionAppSlotAuthSettingsV2Observation) { *out = *in @@ -10695,6 +15153,38 @@ func (in *LinuxFunctionAppSlotAuthSettingsV2Parameters) DeepCopy() *LinuxFunctio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotBackupInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotBackupInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]BackupScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotBackupInitParameters. +func (in *LinuxFunctionAppSlotBackupInitParameters) DeepCopy() *LinuxFunctionAppSlotBackupInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotBackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotBackupObservation) DeepCopyInto(out *LinuxFunctionAppSlotBackupObservation) { *out = *in @@ -10760,6 +15250,31 @@ func (in *LinuxFunctionAppSlotBackupParameters) DeepCopy() *LinuxFunctionAppSlot return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotConnectionStringInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotConnectionStringInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotConnectionStringInitParameters. +func (in *LinuxFunctionAppSlotConnectionStringInitParameters) DeepCopy() *LinuxFunctionAppSlotConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotConnectionStringObservation) DeepCopyInto(out *LinuxFunctionAppSlotConnectionStringObservation) { *out = *in @@ -10811,6 +15326,37 @@ func (in *LinuxFunctionAppSlotConnectionStringParameters) DeepCopy() *LinuxFunct return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotIdentityInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotIdentityInitParameters. +func (in *LinuxFunctionAppSlotIdentityInitParameters) DeepCopy() *LinuxFunctionAppSlotIdentityInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotIdentityObservation) DeepCopyInto(out *LinuxFunctionAppSlotIdentityObservation) { *out = *in @@ -10883,6 +15429,165 @@ func (in *LinuxFunctionAppSlotIdentityParameters) DeepCopy() *LinuxFunctionAppSl return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotInitParameters) { + *out = *in + if in.AppSettings != nil { + in, out := &in.AppSettings, &out.AppSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AuthSettings != nil { + in, out := &in.AuthSettings, &out.AuthSettings + *out = make([]LinuxFunctionAppSlotAuthSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthSettingsV2 != nil { + in, out := &in.AuthSettingsV2, &out.AuthSettingsV2 + *out = make([]LinuxFunctionAppSlotAuthSettingsV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]LinuxFunctionAppSlotBackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BuiltinLoggingEnabled != nil { + in, out := &in.BuiltinLoggingEnabled, &out.BuiltinLoggingEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateEnabled != nil { + in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateExclusionPaths != nil { + in, out := &in.ClientCertificateExclusionPaths, &out.ClientCertificateExclusionPaths + *out = new(string) + **out = **in + } + if in.ClientCertificateMode != nil { + in, out := &in.ClientCertificateMode, &out.ClientCertificateMode + *out = new(string) + **out = **in + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = make([]LinuxFunctionAppSlotConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ContentShareForceDisabled != nil { + in, out := &in.ContentShareForceDisabled, &out.ContentShareForceDisabled + *out = new(bool) + **out = **in + } + if in.DailyMemoryTimeQuota != nil { + in, out := &in.DailyMemoryTimeQuota, &out.DailyMemoryTimeQuota + *out = new(float64) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.FunctionsExtensionVersion != nil { + in, out := &in.FunctionsExtensionVersion, &out.FunctionsExtensionVersion + *out = new(string) + **out = **in + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]LinuxFunctionAppSlotIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultReferenceIdentityID != nil { + in, out := &in.KeyVaultReferenceIdentityID, &out.KeyVaultReferenceIdentityID + *out = new(string) + **out = **in + } + if in.ServicePlanID != nil { + in, out := &in.ServicePlanID, &out.ServicePlanID + *out = new(string) + **out = **in + } + if in.SiteConfig != nil { + in, out := &in.SiteConfig, &out.SiteConfig + *out = make([]LinuxFunctionAppSlotSiteConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]LinuxFunctionAppSlotStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageKeyVaultSecretID != nil { + in, out := &in.StorageKeyVaultSecretID, &out.StorageKeyVaultSecretID + *out = new(string) + **out = **in + } + if in.StorageUsesManagedIdentity != nil { + in, out := &in.StorageUsesManagedIdentity, &out.StorageUsesManagedIdentity + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotInitParameters. +func (in *LinuxFunctionAppSlotInitParameters) DeepCopy() *LinuxFunctionAppSlotInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotList) DeepCopyInto(out *LinuxFunctionAppSlotList) { *out = *in @@ -11350,6 +16055,37 @@ func (in *LinuxFunctionAppSlotParameters) DeepCopy() *LinuxFunctionAppSlotParame return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotSiteConfigCorsInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigCorsInitParameters) { + *out = *in + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportCredentials != nil { + in, out := &in.SupportCredentials, &out.SupportCredentials + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotSiteConfigCorsInitParameters. +func (in *LinuxFunctionAppSlotSiteConfigCorsInitParameters) DeepCopy() *LinuxFunctionAppSlotSiteConfigCorsInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotSiteConfigCorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotSiteConfigCorsObservation) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigCorsObservation) { *out = *in @@ -11412,6 +16148,65 @@ func (in *LinuxFunctionAppSlotSiteConfigCorsParameters) DeepCopy() *LinuxFunctio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters. +func (in *LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters) DeepCopy() *LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersObservation) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersObservation) { *out = *in @@ -11530,6 +16325,53 @@ func (in *LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersParameters) DeepCopy return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotSiteConfigIPRestrictionInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotSiteConfigIPRestrictionInitParameters. +func (in *LinuxFunctionAppSlotSiteConfigIPRestrictionInitParameters) DeepCopy() *LinuxFunctionAppSlotSiteConfigIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotSiteConfigIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotSiteConfigIPRestrictionObservation) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigIPRestrictionObservation) { *out = *in @@ -11644,6 +16486,197 @@ func (in *LinuxFunctionAppSlotSiteConfigIPRestrictionParameters) DeepCopy() *Lin return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotSiteConfigInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigInitParameters) { + *out = *in + if in.APIDefinitionURL != nil { + in, out := &in.APIDefinitionURL, &out.APIDefinitionURL + *out = new(string) + **out = **in + } + if in.APIManagementAPIID != nil { + in, out := &in.APIManagementAPIID, &out.APIManagementAPIID + *out = new(string) + **out = **in + } + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppCommandLine != nil { + in, out := &in.AppCommandLine, &out.AppCommandLine + *out = new(string) + **out = **in + } + if in.AppScaleLimit != nil { + in, out := &in.AppScaleLimit, &out.AppScaleLimit + *out = new(float64) + **out = **in + } + if in.AppServiceLogs != nil { + in, out := &in.AppServiceLogs, &out.AppServiceLogs + *out = make([]SiteConfigAppServiceLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ApplicationStack != nil { + in, out := &in.ApplicationStack, &out.ApplicationStack + *out = make([]SiteConfigApplicationStackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoSwapSlotName != nil { + in, out := &in.AutoSwapSlotName, &out.AutoSwapSlotName + *out = new(string) + **out = **in + } + if in.ContainerRegistryManagedIdentityClientID != nil { + in, out := &in.ContainerRegistryManagedIdentityClientID, &out.ContainerRegistryManagedIdentityClientID + *out = new(string) + **out = **in + } + if in.ContainerRegistryUseManagedIdentity != nil { + in, out := &in.ContainerRegistryUseManagedIdentity, &out.ContainerRegistryUseManagedIdentity + *out = new(bool) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]LinuxFunctionAppSlotSiteConfigCorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDocuments != nil { + in, out := &in.DefaultDocuments, &out.DefaultDocuments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ElasticInstanceMinimum != nil { + in, out := &in.ElasticInstanceMinimum, &out.ElasticInstanceMinimum + *out = new(float64) + **out = **in + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckEvictionTimeInMin != nil { + in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin + *out = new(float64) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]LinuxFunctionAppSlotSiteConfigIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancingMode != nil { + in, out := &in.LoadBalancingMode, &out.LoadBalancingMode + *out = new(string) + **out = **in + } + if in.ManagedPipelineMode != nil { + in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.PreWarmedInstanceCount != nil { + in, out := &in.PreWarmedInstanceCount, &out.PreWarmedInstanceCount + *out = new(float64) + **out = **in + } + if in.RemoteDebuggingEnabled != nil { + in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled + *out = new(bool) + **out = **in + } + if in.RemoteDebuggingVersion != nil { + in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion + *out = new(string) + **out = **in + } + if in.RuntimeScaleMonitoringEnabled != nil { + in, out := &in.RuntimeScaleMonitoringEnabled, &out.RuntimeScaleMonitoringEnabled + *out = new(bool) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]LinuxFunctionAppSlotSiteConfigScmIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmMinimumTLSVersion != nil { + in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorker != nil { + in, out := &in.Use32BitWorker, &out.Use32BitWorker + *out = new(bool) + **out = **in + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotSiteConfigInitParameters. +func (in *LinuxFunctionAppSlotSiteConfigInitParameters) DeepCopy() *LinuxFunctionAppSlotSiteConfigInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotSiteConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotSiteConfigObservation) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigObservation) { *out = *in @@ -12051,6 +17084,65 @@ func (in *LinuxFunctionAppSlotSiteConfigParameters) DeepCopy() *LinuxFunctionApp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters. +func (in *LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopy() *LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersObservation) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersObservation) { *out = *in @@ -12169,6 +17261,53 @@ func (in *LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersParameters) DeepC return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotSiteConfigScmIPRestrictionInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigScmIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotSiteConfigScmIPRestrictionInitParameters. +func (in *LinuxFunctionAppSlotSiteConfigScmIPRestrictionInitParameters) DeepCopy() *LinuxFunctionAppSlotSiteConfigScmIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotSiteConfigScmIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotSiteConfigScmIPRestrictionObservation) DeepCopyInto(out *LinuxFunctionAppSlotSiteConfigScmIPRestrictionObservation) { *out = *in @@ -12283,6 +17422,21 @@ func (in *LinuxFunctionAppSlotSiteConfigScmIPRestrictionParameters) DeepCopy() * return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotSiteCredentialInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotSiteCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotSiteCredentialInitParameters. +func (in *LinuxFunctionAppSlotSiteCredentialInitParameters) DeepCopy() *LinuxFunctionAppSlotSiteCredentialInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotSiteCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotSiteCredentialObservation) DeepCopyInto(out *LinuxFunctionAppSlotSiteCredentialObservation) { *out = *in @@ -12328,6 +17482,7 @@ func (in *LinuxFunctionAppSlotSpec) DeepCopyInto(out *LinuxFunctionAppSlotSpec) *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotSpec. @@ -12357,6 +17512,46 @@ func (in *LinuxFunctionAppSlotStatus) DeepCopy() *LinuxFunctionAppSlotStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxFunctionAppSlotStorageAccountInitParameters) DeepCopyInto(out *LinuxFunctionAppSlotStorageAccountInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.MountPath != nil { + in, out := &in.MountPath, &out.MountPath + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ShareName != nil { + in, out := &in.ShareName, &out.ShareName + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSlotStorageAccountInitParameters. +func (in *LinuxFunctionAppSlotStorageAccountInitParameters) DeepCopy() *LinuxFunctionAppSlotStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(LinuxFunctionAppSlotStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxFunctionAppSlotStorageAccountObservation) DeepCopyInto(out *LinuxFunctionAppSlotStorageAccountObservation) { *out = *in @@ -12443,6 +17638,7 @@ func (in *LinuxFunctionAppSpec) DeepCopyInto(out *LinuxFunctionAppSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxFunctionAppSpec. @@ -12499,6 +17695,42 @@ func (in *LinuxWebApp) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsActiveDirectoryInitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsActiveDirectoryInitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsActiveDirectoryInitParameters. +func (in *LinuxWebAppAuthSettingsActiveDirectoryInitParameters) DeepCopy() *LinuxWebAppAuthSettingsActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsActiveDirectoryObservation) DeepCopyInto(out *LinuxWebAppAuthSettingsActiveDirectoryObservation) { *out = *in @@ -12576,6 +17808,42 @@ func (in *LinuxWebAppAuthSettingsActiveDirectoryParameters) DeepCopy() *LinuxWeb return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsFacebookInitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsFacebookInitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsFacebookInitParameters. +func (in *LinuxWebAppAuthSettingsFacebookInitParameters) DeepCopy() *LinuxWebAppAuthSettingsFacebookInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsFacebookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsFacebookObservation) DeepCopyInto(out *LinuxWebAppAuthSettingsFacebookObservation) { *out = *in @@ -12654,7 +17922,7 @@ func (in *LinuxWebAppAuthSettingsFacebookParameters) DeepCopy() *LinuxWebAppAuth } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppAuthSettingsGithubObservation) DeepCopyInto(out *LinuxWebAppAuthSettingsGithubObservation) { +func (in *LinuxWebAppAuthSettingsGithubInitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsGithubInitParameters) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID @@ -12679,29 +17947,24 @@ func (in *LinuxWebAppAuthSettingsGithubObservation) DeepCopyInto(out *LinuxWebAp } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsGithubObservation. -func (in *LinuxWebAppAuthSettingsGithubObservation) DeepCopy() *LinuxWebAppAuthSettingsGithubObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsGithubInitParameters. +func (in *LinuxWebAppAuthSettingsGithubInitParameters) DeepCopy() *LinuxWebAppAuthSettingsGithubInitParameters { if in == nil { return nil } - out := new(LinuxWebAppAuthSettingsGithubObservation) + out := new(LinuxWebAppAuthSettingsGithubInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppAuthSettingsGithubParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsGithubParameters) { +func (in *LinuxWebAppAuthSettingsGithubObservation) DeepCopyInto(out *LinuxWebAppAuthSettingsGithubObservation) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID *out = new(string) **out = **in } - if in.ClientSecretSecretRef != nil { - in, out := &in.ClientSecretSecretRef, &out.ClientSecretSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } if in.ClientSecretSettingName != nil { in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName *out = new(string) @@ -12720,24 +17983,29 @@ func (in *LinuxWebAppAuthSettingsGithubParameters) DeepCopyInto(out *LinuxWebApp } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsGithubParameters. -func (in *LinuxWebAppAuthSettingsGithubParameters) DeepCopy() *LinuxWebAppAuthSettingsGithubParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsGithubObservation. +func (in *LinuxWebAppAuthSettingsGithubObservation) DeepCopy() *LinuxWebAppAuthSettingsGithubObservation { if in == nil { return nil } - out := new(LinuxWebAppAuthSettingsGithubParameters) + out := new(LinuxWebAppAuthSettingsGithubObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppAuthSettingsGoogleObservation) DeepCopyInto(out *LinuxWebAppAuthSettingsGoogleObservation) { +func (in *LinuxWebAppAuthSettingsGithubParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsGithubParameters) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID *out = new(string) **out = **in } + if in.ClientSecretSecretRef != nil { + in, out := &in.ClientSecretSecretRef, &out.ClientSecretSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } if in.ClientSecretSettingName != nil { in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName *out = new(string) @@ -12756,29 +18024,24 @@ func (in *LinuxWebAppAuthSettingsGoogleObservation) DeepCopyInto(out *LinuxWebAp } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsGoogleObservation. -func (in *LinuxWebAppAuthSettingsGoogleObservation) DeepCopy() *LinuxWebAppAuthSettingsGoogleObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsGithubParameters. +func (in *LinuxWebAppAuthSettingsGithubParameters) DeepCopy() *LinuxWebAppAuthSettingsGithubParameters { if in == nil { return nil } - out := new(LinuxWebAppAuthSettingsGoogleObservation) + out := new(LinuxWebAppAuthSettingsGithubParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppAuthSettingsGoogleParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsGoogleParameters) { +func (in *LinuxWebAppAuthSettingsGoogleInitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsGoogleInitParameters) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID *out = new(string) **out = **in } - if in.ClientSecretSecretRef != nil { - in, out := &in.ClientSecretSecretRef, &out.ClientSecretSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } if in.ClientSecretSettingName != nil { in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName *out = new(string) @@ -12797,18 +18060,18 @@ func (in *LinuxWebAppAuthSettingsGoogleParameters) DeepCopyInto(out *LinuxWebApp } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsGoogleParameters. -func (in *LinuxWebAppAuthSettingsGoogleParameters) DeepCopy() *LinuxWebAppAuthSettingsGoogleParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsGoogleInitParameters. +func (in *LinuxWebAppAuthSettingsGoogleInitParameters) DeepCopy() *LinuxWebAppAuthSettingsGoogleInitParameters { if in == nil { return nil } - out := new(LinuxWebAppAuthSettingsGoogleParameters) + out := new(LinuxWebAppAuthSettingsGoogleInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppAuthSettingsMicrosoftObservation) DeepCopyInto(out *LinuxWebAppAuthSettingsMicrosoftObservation) { +func (in *LinuxWebAppAuthSettingsGoogleObservation) DeepCopyInto(out *LinuxWebAppAuthSettingsGoogleObservation) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID @@ -12833,18 +18096,249 @@ func (in *LinuxWebAppAuthSettingsMicrosoftObservation) DeepCopyInto(out *LinuxWe } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsMicrosoftObservation. -func (in *LinuxWebAppAuthSettingsMicrosoftObservation) DeepCopy() *LinuxWebAppAuthSettingsMicrosoftObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsGoogleObservation. +func (in *LinuxWebAppAuthSettingsGoogleObservation) DeepCopy() *LinuxWebAppAuthSettingsGoogleObservation { if in == nil { return nil } - out := new(LinuxWebAppAuthSettingsMicrosoftObservation) + out := new(LinuxWebAppAuthSettingsGoogleObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppAuthSettingsMicrosoftParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsMicrosoftParameters) { +func (in *LinuxWebAppAuthSettingsGoogleParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsGoogleParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSecretRef != nil { + in, out := &in.ClientSecretSecretRef, &out.ClientSecretSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsGoogleParameters. +func (in *LinuxWebAppAuthSettingsGoogleParameters) DeepCopy() *LinuxWebAppAuthSettingsGoogleParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsGoogleParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsInitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]LinuxWebAppAuthSettingsActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalLoginParameters != nil { + in, out := &in.AdditionalLoginParameters, &out.AdditionalLoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Facebook != nil { + in, out := &in.Facebook, &out.Facebook + *out = make([]LinuxWebAppAuthSettingsFacebookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Github != nil { + in, out := &in.Github, &out.Github + *out = make([]LinuxWebAppAuthSettingsGithubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Google != nil { + in, out := &in.Google, &out.Google + *out = make([]LinuxWebAppAuthSettingsGoogleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Microsoft != nil { + in, out := &in.Microsoft, &out.Microsoft + *out = make([]LinuxWebAppAuthSettingsMicrosoftInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TokenRefreshExtensionHours != nil { + in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.Twitter != nil { + in, out := &in.Twitter, &out.Twitter + *out = make([]LinuxWebAppAuthSettingsTwitterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedClientAction != nil { + in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsInitParameters. +func (in *LinuxWebAppAuthSettingsInitParameters) DeepCopy() *LinuxWebAppAuthSettingsInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsMicrosoftInitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsMicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsMicrosoftInitParameters. +func (in *LinuxWebAppAuthSettingsMicrosoftInitParameters) DeepCopy() *LinuxWebAppAuthSettingsMicrosoftInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsMicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsMicrosoftObservation) DeepCopyInto(out *LinuxWebAppAuthSettingsMicrosoftObservation) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsMicrosoftObservation. +func (in *LinuxWebAppAuthSettingsMicrosoftObservation) DeepCopy() *LinuxWebAppAuthSettingsMicrosoftObservation { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsMicrosoftObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsMicrosoftParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsMicrosoftParameters) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID @@ -13120,6 +18614,31 @@ func (in *LinuxWebAppAuthSettingsParameters) DeepCopy() *LinuxWebAppAuthSettings return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsTwitterInitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsTwitterInitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsTwitterInitParameters. +func (in *LinuxWebAppAuthSettingsTwitterInitParameters) DeepCopy() *LinuxWebAppAuthSettingsTwitterInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsTwitterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsTwitterObservation) DeepCopyInto(out *LinuxWebAppAuthSettingsTwitterObservation) { *out = *in @@ -13175,6 +18694,127 @@ func (in *LinuxWebAppAuthSettingsTwitterParameters) DeepCopy() *LinuxWebAppAuthS return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2ActiveDirectoryV2InitParameters) { + *out = *in + if in.AllowedApplications != nil { + in, out := &in.AllowedApplications, &out.AllowedApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedGroups != nil { + in, out := &in.AllowedGroups, &out.AllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedIdentities != nil { + in, out := &in.AllowedIdentities, &out.AllowedIdentities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretCertificateThumbprint != nil { + in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.JwtAllowedClientApplications != nil { + in, out := &in.JwtAllowedClientApplications, &out.JwtAllowedClientApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.JwtAllowedGroups != nil { + in, out := &in.JwtAllowedGroups, &out.JwtAllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoginParameters != nil { + in, out := &in.LoginParameters, &out.LoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantAuthEndpoint != nil { + in, out := &in.TenantAuthEndpoint, &out.TenantAuthEndpoint + *out = new(string) + **out = **in + } + if in.WwwAuthenticationDisabled != nil { + in, out := &in.WwwAuthenticationDisabled, &out.WwwAuthenticationDisabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2ActiveDirectoryV2InitParameters. +func (in *LinuxWebAppAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2ActiveDirectoryV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2ActiveDirectoryV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsV2ActiveDirectoryV2Observation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2ActiveDirectoryV2Observation) { *out = *in @@ -13417,6 +19057,31 @@ func (in *LinuxWebAppAuthSettingsV2ActiveDirectoryV2Parameters) DeepCopy() *Linu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2AppleV2InitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2AppleV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2AppleV2InitParameters. +func (in *LinuxWebAppAuthSettingsV2AppleV2InitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2AppleV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2AppleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsV2AppleV2Observation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2AppleV2Observation) { *out = *in @@ -13478,6 +19143,26 @@ func (in *LinuxWebAppAuthSettingsV2AppleV2Parameters) DeepCopy() *LinuxWebAppAut return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters. +func (in *LinuxWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsV2AzureStaticWebAppV2Observation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2AzureStaticWebAppV2Observation) { *out = *in @@ -13518,6 +19203,52 @@ func (in *LinuxWebAppAuthSettingsV2AzureStaticWebAppV2Parameters) DeepCopy() *Li return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2CustomOidcV2InitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2CustomOidcV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NameClaimType != nil { + in, out := &in.NameClaimType, &out.NameClaimType + *out = new(string) + **out = **in + } + if in.OpenIDConfigurationEndpoint != nil { + in, out := &in.OpenIDConfigurationEndpoint, &out.OpenIDConfigurationEndpoint + *out = new(string) + **out = **in + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2CustomOidcV2InitParameters. +func (in *LinuxWebAppAuthSettingsV2CustomOidcV2InitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2CustomOidcV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2CustomOidcV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsV2CustomOidcV2Observation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2CustomOidcV2Observation) { *out = *in @@ -13640,6 +19371,47 @@ func (in *LinuxWebAppAuthSettingsV2CustomOidcV2Parameters) DeepCopy() *LinuxWebA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2FacebookV2InitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2FacebookV2InitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.GraphAPIVersion != nil { + in, out := &in.GraphAPIVersion, &out.GraphAPIVersion + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2FacebookV2InitParameters. +func (in *LinuxWebAppAuthSettingsV2FacebookV2InitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2FacebookV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2FacebookV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsV2FacebookV2Observation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2FacebookV2Observation) { *out = *in @@ -13722,6 +19494,42 @@ func (in *LinuxWebAppAuthSettingsV2FacebookV2Parameters) DeepCopy() *LinuxWebApp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2GithubV2InitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2GithubV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2GithubV2InitParameters. +func (in *LinuxWebAppAuthSettingsV2GithubV2InitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2GithubV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2GithubV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsV2GithubV2Observation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2GithubV2Observation) { *out = *in @@ -13795,7 +19603,7 @@ func (in *LinuxWebAppAuthSettingsV2GithubV2Parameters) DeepCopy() *LinuxWebAppAu } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppAuthSettingsV2GoogleV2Observation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2GoogleV2Observation) { +func (in *LinuxWebAppAuthSettingsV2GoogleV2InitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2GoogleV2InitParameters) { *out = *in if in.AllowedAudiences != nil { in, out := &in.AllowedAudiences, &out.AllowedAudiences @@ -13831,18 +19639,18 @@ func (in *LinuxWebAppAuthSettingsV2GoogleV2Observation) DeepCopyInto(out *LinuxW } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2GoogleV2Observation. -func (in *LinuxWebAppAuthSettingsV2GoogleV2Observation) DeepCopy() *LinuxWebAppAuthSettingsV2GoogleV2Observation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2GoogleV2InitParameters. +func (in *LinuxWebAppAuthSettingsV2GoogleV2InitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2GoogleV2InitParameters { if in == nil { return nil } - out := new(LinuxWebAppAuthSettingsV2GoogleV2Observation) + out := new(LinuxWebAppAuthSettingsV2GoogleV2InitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppAuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2GoogleV2Parameters) { +func (in *LinuxWebAppAuthSettingsV2GoogleV2Observation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2GoogleV2Observation) { *out = *in if in.AllowedAudiences != nil { in, out := &in.AllowedAudiences, &out.AllowedAudiences @@ -13878,9 +19686,56 @@ func (in *LinuxWebAppAuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *LinuxWe } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2GoogleV2Parameters. -func (in *LinuxWebAppAuthSettingsV2GoogleV2Parameters) DeepCopy() *LinuxWebAppAuthSettingsV2GoogleV2Parameters { - if in == nil { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2GoogleV2Observation. +func (in *LinuxWebAppAuthSettingsV2GoogleV2Observation) DeepCopy() *LinuxWebAppAuthSettingsV2GoogleV2Observation { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2GoogleV2Observation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2GoogleV2Parameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2GoogleV2Parameters. +func (in *LinuxWebAppAuthSettingsV2GoogleV2Parameters) DeepCopy() *LinuxWebAppAuthSettingsV2GoogleV2Parameters { + if in == nil { return nil } out := new(LinuxWebAppAuthSettingsV2GoogleV2Parameters) @@ -13888,6 +19743,233 @@ func (in *LinuxWebAppAuthSettingsV2GoogleV2Parameters) DeepCopy() *LinuxWebAppAu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2InitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2InitParameters) { + *out = *in + if in.ActiveDirectoryV2 != nil { + in, out := &in.ActiveDirectoryV2, &out.ActiveDirectoryV2 + *out = make([]LinuxWebAppAuthSettingsV2ActiveDirectoryV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AppleV2 != nil { + in, out := &in.AppleV2, &out.AppleV2 + *out = make([]LinuxWebAppAuthSettingsV2AppleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthEnabled != nil { + in, out := &in.AuthEnabled, &out.AuthEnabled + *out = new(bool) + **out = **in + } + if in.AzureStaticWebAppV2 != nil { + in, out := &in.AzureStaticWebAppV2, &out.AzureStaticWebAppV2 + *out = make([]LinuxWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConfigFilePath != nil { + in, out := &in.ConfigFilePath, &out.ConfigFilePath + *out = new(string) + **out = **in + } + if in.CustomOidcV2 != nil { + in, out := &in.CustomOidcV2, &out.CustomOidcV2 + *out = make([]LinuxWebAppAuthSettingsV2CustomOidcV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.ExcludedPaths != nil { + in, out := &in.ExcludedPaths, &out.ExcludedPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FacebookV2 != nil { + in, out := &in.FacebookV2, &out.FacebookV2 + *out = make([]LinuxWebAppAuthSettingsV2FacebookV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForwardProxyConvention != nil { + in, out := &in.ForwardProxyConvention, &out.ForwardProxyConvention + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomHostHeaderName != nil { + in, out := &in.ForwardProxyCustomHostHeaderName, &out.ForwardProxyCustomHostHeaderName + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomSchemeHeaderName != nil { + in, out := &in.ForwardProxyCustomSchemeHeaderName, &out.ForwardProxyCustomSchemeHeaderName + *out = new(string) + **out = **in + } + if in.GithubV2 != nil { + in, out := &in.GithubV2, &out.GithubV2 + *out = make([]LinuxWebAppAuthSettingsV2GithubV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GoogleV2 != nil { + in, out := &in.GoogleV2, &out.GoogleV2 + *out = make([]LinuxWebAppAuthSettingsV2GoogleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPRouteAPIPrefix != nil { + in, out := &in.HTTPRouteAPIPrefix, &out.HTTPRouteAPIPrefix + *out = new(string) + **out = **in + } + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = make([]LinuxWebAppAuthSettingsV2LoginInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MicrosoftV2 != nil { + in, out := &in.MicrosoftV2, &out.MicrosoftV2 + *out = make([]LinuxWebAppAuthSettingsV2MicrosoftV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequireAuthentication != nil { + in, out := &in.RequireAuthentication, &out.RequireAuthentication + *out = new(bool) + **out = **in + } + if in.RequireHTTPS != nil { + in, out := &in.RequireHTTPS, &out.RequireHTTPS + *out = new(bool) + **out = **in + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TwitterV2 != nil { + in, out := &in.TwitterV2, &out.TwitterV2 + *out = make([]LinuxWebAppAuthSettingsV2TwitterV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedAction != nil { + in, out := &in.UnauthenticatedAction, &out.UnauthenticatedAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2InitParameters. +func (in *LinuxWebAppAuthSettingsV2InitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2InitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2LoginInitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2LoginInitParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2LoginInitParameters. +func (in *LinuxWebAppAuthSettingsV2LoginInitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2LoginInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2LoginInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsV2LoginObservation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2LoginObservation) { *out = *in @@ -14040,6 +20122,53 @@ func (in *LinuxWebAppAuthSettingsV2LoginParameters) DeepCopy() *LinuxWebAppAuthS return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2MicrosoftV2InitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2MicrosoftV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2MicrosoftV2InitParameters. +func (in *LinuxWebAppAuthSettingsV2MicrosoftV2InitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2MicrosoftV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2MicrosoftV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsV2MicrosoftV2Observation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2MicrosoftV2Observation) { *out = *in @@ -14436,6 +20565,31 @@ func (in *LinuxWebAppAuthSettingsV2Parameters) DeepCopy() *LinuxWebAppAuthSettin return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppAuthSettingsV2TwitterV2InitParameters) DeepCopyInto(out *LinuxWebAppAuthSettingsV2TwitterV2InitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppAuthSettingsV2TwitterV2InitParameters. +func (in *LinuxWebAppAuthSettingsV2TwitterV2InitParameters) DeepCopy() *LinuxWebAppAuthSettingsV2TwitterV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppAuthSettingsV2TwitterV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppAuthSettingsV2TwitterV2Observation) DeepCopyInto(out *LinuxWebAppAuthSettingsV2TwitterV2Observation) { *out = *in @@ -14486,6 +20640,38 @@ func (in *LinuxWebAppAuthSettingsV2TwitterV2Parameters) DeepCopy() *LinuxWebAppA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppBackupInitParameters) DeepCopyInto(out *LinuxWebAppBackupInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]LinuxWebAppBackupScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppBackupInitParameters. +func (in *LinuxWebAppBackupInitParameters) DeepCopy() *LinuxWebAppBackupInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppBackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppBackupObservation) DeepCopyInto(out *LinuxWebAppBackupObservation) { *out = *in @@ -14551,6 +20737,46 @@ func (in *LinuxWebAppBackupParameters) DeepCopy() *LinuxWebAppBackupParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppBackupScheduleInitParameters) DeepCopyInto(out *LinuxWebAppBackupScheduleInitParameters) { + *out = *in + if in.FrequencyInterval != nil { + in, out := &in.FrequencyInterval, &out.FrequencyInterval + *out = new(float64) + **out = **in + } + if in.FrequencyUnit != nil { + in, out := &in.FrequencyUnit, &out.FrequencyUnit + *out = new(string) + **out = **in + } + if in.KeepAtLeastOneBackup != nil { + in, out := &in.KeepAtLeastOneBackup, &out.KeepAtLeastOneBackup + *out = new(bool) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppBackupScheduleInitParameters. +func (in *LinuxWebAppBackupScheduleInitParameters) DeepCopy() *LinuxWebAppBackupScheduleInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppBackupScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppBackupScheduleObservation) DeepCopyInto(out *LinuxWebAppBackupScheduleObservation) { *out = *in @@ -14636,6 +20862,31 @@ func (in *LinuxWebAppBackupScheduleParameters) DeepCopy() *LinuxWebAppBackupSche return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppConnectionStringInitParameters) DeepCopyInto(out *LinuxWebAppConnectionStringInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppConnectionStringInitParameters. +func (in *LinuxWebAppConnectionStringInitParameters) DeepCopy() *LinuxWebAppConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppConnectionStringObservation) DeepCopyInto(out *LinuxWebAppConnectionStringObservation) { *out = *in @@ -14687,6 +20938,37 @@ func (in *LinuxWebAppConnectionStringParameters) DeepCopy() *LinuxWebAppConnecti return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppIdentityInitParameters) DeepCopyInto(out *LinuxWebAppIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppIdentityInitParameters. +func (in *LinuxWebAppIdentityInitParameters) DeepCopy() *LinuxWebAppIdentityInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppIdentityObservation) DeepCopyInto(out *LinuxWebAppIdentityObservation) { *out = *in @@ -14759,6 +21041,159 @@ func (in *LinuxWebAppIdentityParameters) DeepCopy() *LinuxWebAppIdentityParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppInitParameters) DeepCopyInto(out *LinuxWebAppInitParameters) { + *out = *in + if in.AppSettings != nil { + in, out := &in.AppSettings, &out.AppSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AuthSettings != nil { + in, out := &in.AuthSettings, &out.AuthSettings + *out = make([]LinuxWebAppAuthSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthSettingsV2 != nil { + in, out := &in.AuthSettingsV2, &out.AuthSettingsV2 + *out = make([]LinuxWebAppAuthSettingsV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]LinuxWebAppBackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientAffinityEnabled != nil { + in, out := &in.ClientAffinityEnabled, &out.ClientAffinityEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateEnabled != nil { + in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateExclusionPaths != nil { + in, out := &in.ClientCertificateExclusionPaths, &out.ClientCertificateExclusionPaths + *out = new(string) + **out = **in + } + if in.ClientCertificateMode != nil { + in, out := &in.ClientCertificateMode, &out.ClientCertificateMode + *out = new(string) + **out = **in + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = make([]LinuxWebAppConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]LinuxWebAppIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultReferenceIdentityID != nil { + in, out := &in.KeyVaultReferenceIdentityID, &out.KeyVaultReferenceIdentityID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Logs != nil { + in, out := &in.Logs, &out.Logs + *out = make([]LogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SiteConfig != nil { + in, out := &in.SiteConfig, &out.SiteConfig + *out = make([]LinuxWebAppSiteConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StickySettings != nil { + in, out := &in.StickySettings, &out.StickySettings + *out = make([]LinuxWebAppStickySettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]LinuxWebAppStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZipDeployFile != nil { + in, out := &in.ZipDeployFile, &out.ZipDeployFile + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppInitParameters. +func (in *LinuxWebAppInitParameters) DeepCopy() *LinuxWebAppInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppList) DeepCopyInto(out *LinuxWebAppList) { *out = *in @@ -15209,6 +21644,76 @@ func (in *LinuxWebAppParameters) DeepCopy() *LinuxWebAppParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSiteConfigApplicationStackInitParameters) DeepCopyInto(out *LinuxWebAppSiteConfigApplicationStackInitParameters) { + *out = *in + if in.DockerImage != nil { + in, out := &in.DockerImage, &out.DockerImage + *out = new(string) + **out = **in + } + if in.DockerImageTag != nil { + in, out := &in.DockerImageTag, &out.DockerImageTag + *out = new(string) + **out = **in + } + if in.DotnetVersion != nil { + in, out := &in.DotnetVersion, &out.DotnetVersion + *out = new(string) + **out = **in + } + if in.GoVersion != nil { + in, out := &in.GoVersion, &out.GoVersion + *out = new(string) + **out = **in + } + if in.JavaServer != nil { + in, out := &in.JavaServer, &out.JavaServer + *out = new(string) + **out = **in + } + if in.JavaServerVersion != nil { + in, out := &in.JavaServerVersion, &out.JavaServerVersion + *out = new(string) + **out = **in + } + if in.JavaVersion != nil { + in, out := &in.JavaVersion, &out.JavaVersion + *out = new(string) + **out = **in + } + if in.NodeVersion != nil { + in, out := &in.NodeVersion, &out.NodeVersion + *out = new(string) + **out = **in + } + if in.PHPVersion != nil { + in, out := &in.PHPVersion, &out.PHPVersion + *out = new(string) + **out = **in + } + if in.PythonVersion != nil { + in, out := &in.PythonVersion, &out.PythonVersion + *out = new(string) + **out = **in + } + if in.RubyVersion != nil { + in, out := &in.RubyVersion, &out.RubyVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigApplicationStackInitParameters. +func (in *LinuxWebAppSiteConfigApplicationStackInitParameters) DeepCopy() *LinuxWebAppSiteConfigApplicationStackInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSiteConfigApplicationStackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSiteConfigApplicationStackObservation) DeepCopyInto(out *LinuxWebAppSiteConfigApplicationStackObservation) { *out = *in @@ -15350,7 +21855,7 @@ func (in *LinuxWebAppSiteConfigApplicationStackParameters) DeepCopy() *LinuxWebA } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSiteConfigCorsObservation) DeepCopyInto(out *LinuxWebAppSiteConfigCorsObservation) { +func (in *LinuxWebAppSiteConfigCorsInitParameters) DeepCopyInto(out *LinuxWebAppSiteConfigCorsInitParameters) { *out = *in if in.AllowedOrigins != nil { in, out := &in.AllowedOrigins, &out.AllowedOrigins @@ -15370,18 +21875,18 @@ func (in *LinuxWebAppSiteConfigCorsObservation) DeepCopyInto(out *LinuxWebAppSit } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigCorsObservation. -func (in *LinuxWebAppSiteConfigCorsObservation) DeepCopy() *LinuxWebAppSiteConfigCorsObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigCorsInitParameters. +func (in *LinuxWebAppSiteConfigCorsInitParameters) DeepCopy() *LinuxWebAppSiteConfigCorsInitParameters { if in == nil { return nil } - out := new(LinuxWebAppSiteConfigCorsObservation) + out := new(LinuxWebAppSiteConfigCorsInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSiteConfigCorsParameters) DeepCopyInto(out *LinuxWebAppSiteConfigCorsParameters) { +func (in *LinuxWebAppSiteConfigCorsObservation) DeepCopyInto(out *LinuxWebAppSiteConfigCorsObservation) { *out = *in if in.AllowedOrigins != nil { in, out := &in.AllowedOrigins, &out.AllowedOrigins @@ -15401,43 +21906,21 @@ func (in *LinuxWebAppSiteConfigCorsParameters) DeepCopyInto(out *LinuxWebAppSite } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigCorsParameters. -func (in *LinuxWebAppSiteConfigCorsParameters) DeepCopy() *LinuxWebAppSiteConfigCorsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigCorsObservation. +func (in *LinuxWebAppSiteConfigCorsObservation) DeepCopy() *LinuxWebAppSiteConfigCorsObservation { if in == nil { return nil } - out := new(LinuxWebAppSiteConfigCorsParameters) + out := new(LinuxWebAppSiteConfigCorsObservation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSiteConfigIPRestrictionHeadersObservation) DeepCopyInto(out *LinuxWebAppSiteConfigIPRestrictionHeadersObservation) { +func (in *LinuxWebAppSiteConfigCorsParameters) DeepCopyInto(out *LinuxWebAppSiteConfigCorsParameters) { *out = *in - if in.XAzureFdid != nil { - in, out := &in.XAzureFdid, &out.XAzureFdid - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.XFdHealthProbe != nil { - in, out := &in.XFdHealthProbe, &out.XFdHealthProbe - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.XForwardedFor != nil { - in, out := &in.XForwardedFor, &out.XForwardedFor + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -15447,31 +21930,143 @@ func (in *LinuxWebAppSiteConfigIPRestrictionHeadersObservation) DeepCopyInto(out } } } - if in.XForwardedHost != nil { - in, out := &in.XForwardedHost, &out.XForwardedHost - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } + if in.SupportCredentials != nil { + in, out := &in.SupportCredentials, &out.SupportCredentials + *out = new(bool) + **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigIPRestrictionHeadersObservation. -func (in *LinuxWebAppSiteConfigIPRestrictionHeadersObservation) DeepCopy() *LinuxWebAppSiteConfigIPRestrictionHeadersObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigCorsParameters. +func (in *LinuxWebAppSiteConfigCorsParameters) DeepCopy() *LinuxWebAppSiteConfigCorsParameters { if in == nil { return nil } - out := new(LinuxWebAppSiteConfigIPRestrictionHeadersObservation) + out := new(LinuxWebAppSiteConfigCorsParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSiteConfigIPRestrictionHeadersParameters) DeepCopyInto(out *LinuxWebAppSiteConfigIPRestrictionHeadersParameters) { +func (in *LinuxWebAppSiteConfigIPRestrictionHeadersInitParameters) DeepCopyInto(out *LinuxWebAppSiteConfigIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigIPRestrictionHeadersInitParameters. +func (in *LinuxWebAppSiteConfigIPRestrictionHeadersInitParameters) DeepCopy() *LinuxWebAppSiteConfigIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSiteConfigIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSiteConfigIPRestrictionHeadersObservation) DeepCopyInto(out *LinuxWebAppSiteConfigIPRestrictionHeadersObservation) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigIPRestrictionHeadersObservation. +func (in *LinuxWebAppSiteConfigIPRestrictionHeadersObservation) DeepCopy() *LinuxWebAppSiteConfigIPRestrictionHeadersObservation { + if in == nil { + return nil + } + out := new(LinuxWebAppSiteConfigIPRestrictionHeadersObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSiteConfigIPRestrictionHeadersParameters) DeepCopyInto(out *LinuxWebAppSiteConfigIPRestrictionHeadersParameters) { *out = *in if in.XAzureFdid != nil { in, out := &in.XAzureFdid, &out.XAzureFdid @@ -15529,6 +22124,53 @@ func (in *LinuxWebAppSiteConfigIPRestrictionHeadersParameters) DeepCopy() *Linux return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSiteConfigIPRestrictionInitParameters) DeepCopyInto(out *LinuxWebAppSiteConfigIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]LinuxWebAppSiteConfigIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigIPRestrictionInitParameters. +func (in *LinuxWebAppSiteConfigIPRestrictionInitParameters) DeepCopy() *LinuxWebAppSiteConfigIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSiteConfigIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSiteConfigIPRestrictionObservation) DeepCopyInto(out *LinuxWebAppSiteConfigIPRestrictionObservation) { *out = *in @@ -15643,6 +22285,182 @@ func (in *LinuxWebAppSiteConfigIPRestrictionParameters) DeepCopy() *LinuxWebAppS return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSiteConfigInitParameters) DeepCopyInto(out *LinuxWebAppSiteConfigInitParameters) { + *out = *in + if in.APIDefinitionURL != nil { + in, out := &in.APIDefinitionURL, &out.APIDefinitionURL + *out = new(string) + **out = **in + } + if in.APIManagementAPIID != nil { + in, out := &in.APIManagementAPIID, &out.APIManagementAPIID + *out = new(string) + **out = **in + } + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppCommandLine != nil { + in, out := &in.AppCommandLine, &out.AppCommandLine + *out = new(string) + **out = **in + } + if in.ApplicationStack != nil { + in, out := &in.ApplicationStack, &out.ApplicationStack + *out = make([]LinuxWebAppSiteConfigApplicationStackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoHealEnabled != nil { + in, out := &in.AutoHealEnabled, &out.AutoHealEnabled + *out = new(bool) + **out = **in + } + if in.AutoHealSetting != nil { + in, out := &in.AutoHealSetting, &out.AutoHealSetting + *out = make([]AutoHealSettingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ContainerRegistryManagedIdentityClientID != nil { + in, out := &in.ContainerRegistryManagedIdentityClientID, &out.ContainerRegistryManagedIdentityClientID + *out = new(string) + **out = **in + } + if in.ContainerRegistryUseManagedIdentity != nil { + in, out := &in.ContainerRegistryUseManagedIdentity, &out.ContainerRegistryUseManagedIdentity + *out = new(bool) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]LinuxWebAppSiteConfigCorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDocuments != nil { + in, out := &in.DefaultDocuments, &out.DefaultDocuments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckEvictionTimeInMin != nil { + in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin + *out = new(float64) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]LinuxWebAppSiteConfigIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancingMode != nil { + in, out := &in.LoadBalancingMode, &out.LoadBalancingMode + *out = new(string) + **out = **in + } + if in.LocalMySQLEnabled != nil { + in, out := &in.LocalMySQLEnabled, &out.LocalMySQLEnabled + *out = new(bool) + **out = **in + } + if in.ManagedPipelineMode != nil { + in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.RemoteDebuggingEnabled != nil { + in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled + *out = new(bool) + **out = **in + } + if in.RemoteDebuggingVersion != nil { + in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion + *out = new(string) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]LinuxWebAppSiteConfigScmIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmMinimumTLSVersion != nil { + in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorker != nil { + in, out := &in.Use32BitWorker, &out.Use32BitWorker + *out = new(bool) + **out = **in + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigInitParameters. +func (in *LinuxWebAppSiteConfigInitParameters) DeepCopy() *LinuxWebAppSiteConfigInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSiteConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSiteConfigObservation) DeepCopyInto(out *LinuxWebAppSiteConfigObservation) { *out = *in @@ -16010,6 +22828,65 @@ func (in *LinuxWebAppSiteConfigParameters) DeepCopy() *LinuxWebAppSiteConfigPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopyInto(out *LinuxWebAppSiteConfigScmIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigScmIPRestrictionHeadersInitParameters. +func (in *LinuxWebAppSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopy() *LinuxWebAppSiteConfigScmIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSiteConfigScmIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSiteConfigScmIPRestrictionHeadersObservation) DeepCopyInto(out *LinuxWebAppSiteConfigScmIPRestrictionHeadersObservation) { *out = *in @@ -16128,6 +23005,53 @@ func (in *LinuxWebAppSiteConfigScmIPRestrictionHeadersParameters) DeepCopy() *Li return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSiteConfigScmIPRestrictionInitParameters) DeepCopyInto(out *LinuxWebAppSiteConfigScmIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]LinuxWebAppSiteConfigScmIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteConfigScmIPRestrictionInitParameters. +func (in *LinuxWebAppSiteConfigScmIPRestrictionInitParameters) DeepCopy() *LinuxWebAppSiteConfigScmIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSiteConfigScmIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSiteConfigScmIPRestrictionObservation) DeepCopyInto(out *LinuxWebAppSiteConfigScmIPRestrictionObservation) { *out = *in @@ -16242,6 +23166,21 @@ func (in *LinuxWebAppSiteConfigScmIPRestrictionParameters) DeepCopy() *LinuxWebA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSiteCredentialInitParameters) DeepCopyInto(out *LinuxWebAppSiteCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSiteCredentialInitParameters. +func (in *LinuxWebAppSiteCredentialInitParameters) DeepCopy() *LinuxWebAppSiteCredentialInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSiteCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSiteCredentialObservation) DeepCopyInto(out *LinuxWebAppSiteCredentialObservation) { *out = *in @@ -16309,6 +23248,42 @@ func (in *LinuxWebAppSlot) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsActiveDirectoryInitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsActiveDirectoryInitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsActiveDirectoryInitParameters. +func (in *LinuxWebAppSlotAuthSettingsActiveDirectoryInitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotAuthSettingsActiveDirectoryObservation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsActiveDirectoryObservation) { *out = *in @@ -16386,6 +23361,42 @@ func (in *LinuxWebAppSlotAuthSettingsActiveDirectoryParameters) DeepCopy() *Linu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsFacebookInitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsFacebookInitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsFacebookInitParameters. +func (in *LinuxWebAppSlotAuthSettingsFacebookInitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsFacebookInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsFacebookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotAuthSettingsFacebookObservation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsFacebookObservation) { *out = *in @@ -16464,7 +23475,7 @@ func (in *LinuxWebAppSlotAuthSettingsFacebookParameters) DeepCopy() *LinuxWebApp } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsGithubObservation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsGithubObservation) { +func (in *LinuxWebAppSlotAuthSettingsGithubInitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsGithubInitParameters) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID @@ -16489,29 +23500,24 @@ func (in *LinuxWebAppSlotAuthSettingsGithubObservation) DeepCopyInto(out *LinuxW } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsGithubObservation. -func (in *LinuxWebAppSlotAuthSettingsGithubObservation) DeepCopy() *LinuxWebAppSlotAuthSettingsGithubObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsGithubInitParameters. +func (in *LinuxWebAppSlotAuthSettingsGithubInitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsGithubInitParameters { if in == nil { return nil } - out := new(LinuxWebAppSlotAuthSettingsGithubObservation) + out := new(LinuxWebAppSlotAuthSettingsGithubInitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsGithubParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsGithubParameters) { +func (in *LinuxWebAppSlotAuthSettingsGithubObservation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsGithubObservation) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID *out = new(string) **out = **in } - if in.ClientSecretSecretRef != nil { - in, out := &in.ClientSecretSecretRef, &out.ClientSecretSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } if in.ClientSecretSettingName != nil { in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName *out = new(string) @@ -16530,12 +23536,89 @@ func (in *LinuxWebAppSlotAuthSettingsGithubParameters) DeepCopyInto(out *LinuxWe } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsGithubParameters. -func (in *LinuxWebAppSlotAuthSettingsGithubParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsGithubParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsGithubObservation. +func (in *LinuxWebAppSlotAuthSettingsGithubObservation) DeepCopy() *LinuxWebAppSlotAuthSettingsGithubObservation { if in == nil { return nil } - out := new(LinuxWebAppSlotAuthSettingsGithubParameters) + out := new(LinuxWebAppSlotAuthSettingsGithubObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsGithubParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsGithubParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSecretRef != nil { + in, out := &in.ClientSecretSecretRef, &out.ClientSecretSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsGithubParameters. +func (in *LinuxWebAppSlotAuthSettingsGithubParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsGithubParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsGithubParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsGoogleInitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsGoogleInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsGoogleInitParameters. +func (in *LinuxWebAppSlotAuthSettingsGoogleInitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsGoogleInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsGoogleInitParameters) in.DeepCopyInto(out) return out } @@ -16617,6 +23700,160 @@ func (in *LinuxWebAppSlotAuthSettingsGoogleParameters) DeepCopy() *LinuxWebAppSl return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsInitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]LinuxWebAppSlotAuthSettingsActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalLoginParameters != nil { + in, out := &in.AdditionalLoginParameters, &out.AdditionalLoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Facebook != nil { + in, out := &in.Facebook, &out.Facebook + *out = make([]LinuxWebAppSlotAuthSettingsFacebookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Github != nil { + in, out := &in.Github, &out.Github + *out = make([]LinuxWebAppSlotAuthSettingsGithubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Google != nil { + in, out := &in.Google, &out.Google + *out = make([]LinuxWebAppSlotAuthSettingsGoogleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Microsoft != nil { + in, out := &in.Microsoft, &out.Microsoft + *out = make([]LinuxWebAppSlotAuthSettingsMicrosoftInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TokenRefreshExtensionHours != nil { + in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.Twitter != nil { + in, out := &in.Twitter, &out.Twitter + *out = make([]LinuxWebAppSlotAuthSettingsTwitterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedClientAction != nil { + in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsInitParameters. +func (in *LinuxWebAppSlotAuthSettingsInitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsMicrosoftInitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsMicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsMicrosoftInitParameters. +func (in *LinuxWebAppSlotAuthSettingsMicrosoftInitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsMicrosoftInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsMicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotAuthSettingsMicrosoftObservation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsMicrosoftObservation) { *out = *in @@ -16930,6 +24167,31 @@ func (in *LinuxWebAppSlotAuthSettingsParameters) DeepCopy() *LinuxWebAppSlotAuth return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsTwitterInitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsTwitterInitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsTwitterInitParameters. +func (in *LinuxWebAppSlotAuthSettingsTwitterInitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsTwitterInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsTwitterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotAuthSettingsTwitterObservation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsTwitterObservation) { *out = *in @@ -16985,6 +24247,127 @@ func (in *LinuxWebAppSlotAuthSettingsTwitterParameters) DeepCopy() *LinuxWebAppS return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) { + *out = *in + if in.AllowedApplications != nil { + in, out := &in.AllowedApplications, &out.AllowedApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedGroups != nil { + in, out := &in.AllowedGroups, &out.AllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedIdentities != nil { + in, out := &in.AllowedIdentities, &out.AllowedIdentities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretCertificateThumbprint != nil { + in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.JwtAllowedClientApplications != nil { + in, out := &in.JwtAllowedClientApplications, &out.JwtAllowedClientApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.JwtAllowedGroups != nil { + in, out := &in.JwtAllowedGroups, &out.JwtAllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoginParameters != nil { + in, out := &in.LoginParameters, &out.LoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantAuthEndpoint != nil { + in, out := &in.TenantAuthEndpoint, &out.TenantAuthEndpoint + *out = new(string) + **out = **in + } + if in.WwwAuthenticationDisabled != nil { + in, out := &in.WwwAuthenticationDisabled, &out.WwwAuthenticationDisabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2Observation) { *out = *in @@ -17227,6 +24610,31 @@ func (in *LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters) DeepCopy() * return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2AppleV2InitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2AppleV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2AppleV2InitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2AppleV2InitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2AppleV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2AppleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotAuthSettingsV2AppleV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2AppleV2Observation) { *out = *in @@ -17288,6 +24696,26 @@ func (in *LinuxWebAppSlotAuthSettingsV2AppleV2Parameters) DeepCopy() *LinuxWebAp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2Observation) { *out = *in @@ -17328,6 +24756,52 @@ func (in *LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2CustomOidcV2InitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2CustomOidcV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NameClaimType != nil { + in, out := &in.NameClaimType, &out.NameClaimType + *out = new(string) + **out = **in + } + if in.OpenIDConfigurationEndpoint != nil { + in, out := &in.OpenIDConfigurationEndpoint, &out.OpenIDConfigurationEndpoint + *out = new(string) + **out = **in + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2CustomOidcV2InitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2CustomOidcV2InitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2CustomOidcV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2CustomOidcV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotAuthSettingsV2CustomOidcV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2CustomOidcV2Observation) { *out = *in @@ -17451,7 +24925,7 @@ func (in *LinuxWebAppSlotAuthSettingsV2CustomOidcV2Parameters) DeepCopy() *Linux } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2FacebookV2Observation) { +func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2InitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2FacebookV2InitParameters) { *out = *in if in.AppID != nil { in, out := &in.AppID, &out.AppID @@ -17481,18 +24955,18 @@ func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2Observation) DeepCopyInto(out * } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2FacebookV2Observation. -func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2Observation) DeepCopy() *LinuxWebAppSlotAuthSettingsV2FacebookV2Observation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2FacebookV2InitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2InitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2FacebookV2InitParameters { if in == nil { return nil } - out := new(LinuxWebAppSlotAuthSettingsV2FacebookV2Observation) + out := new(LinuxWebAppSlotAuthSettingsV2FacebookV2InitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters) { +func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2FacebookV2Observation) { *out = *in if in.AppID != nil { in, out := &in.AppID, &out.AppID @@ -17522,26 +24996,31 @@ func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters) DeepCopyInto(out *L } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters. -func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2FacebookV2Observation. +func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2Observation) DeepCopy() *LinuxWebAppSlotAuthSettingsV2FacebookV2Observation { if in == nil { return nil } - out := new(LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters) + out := new(LinuxWebAppSlotAuthSettingsV2FacebookV2Observation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsV2GithubV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2GithubV2Observation) { +func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters) { *out = *in - if in.ClientID != nil { - in, out := &in.ClientID, &out.ClientID + if in.AppID != nil { + in, out := &in.AppID, &out.AppID *out = new(string) **out = **in } - if in.ClientSecretSettingName != nil { - in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.GraphAPIVersion != nil { + in, out := &in.GraphAPIVersion, &out.GraphAPIVersion *out = new(string) **out = **in } @@ -17558,18 +25037,18 @@ func (in *LinuxWebAppSlotAuthSettingsV2GithubV2Observation) DeepCopyInto(out *Li } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2GithubV2Observation. -func (in *LinuxWebAppSlotAuthSettingsV2GithubV2Observation) DeepCopy() *LinuxWebAppSlotAuthSettingsV2GithubV2Observation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters. +func (in *LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters { if in == nil { return nil } - out := new(LinuxWebAppSlotAuthSettingsV2GithubV2Observation) + out := new(LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsV2GithubV2Parameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2GithubV2Parameters) { +func (in *LinuxWebAppSlotAuthSettingsV2GithubV2InitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2GithubV2InitParameters) { *out = *in if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID @@ -17594,30 +25073,19 @@ func (in *LinuxWebAppSlotAuthSettingsV2GithubV2Parameters) DeepCopyInto(out *Lin } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2GithubV2Parameters. -func (in *LinuxWebAppSlotAuthSettingsV2GithubV2Parameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2GithubV2Parameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2GithubV2InitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2GithubV2InitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2GithubV2InitParameters { if in == nil { return nil } - out := new(LinuxWebAppSlotAuthSettingsV2GithubV2Parameters) + out := new(LinuxWebAppSlotAuthSettingsV2GithubV2InitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2GoogleV2Observation) { +func (in *LinuxWebAppSlotAuthSettingsV2GithubV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2GithubV2Observation) { *out = *in - if in.AllowedAudiences != nil { - in, out := &in.AllowedAudiences, &out.AllowedAudiences - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID *out = new(string) @@ -17641,30 +25109,19 @@ func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2Observation) DeepCopyInto(out *Li } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2GoogleV2Observation. -func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2Observation) DeepCopy() *LinuxWebAppSlotAuthSettingsV2GoogleV2Observation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2GithubV2Observation. +func (in *LinuxWebAppSlotAuthSettingsV2GithubV2Observation) DeepCopy() *LinuxWebAppSlotAuthSettingsV2GithubV2Observation { if in == nil { return nil } - out := new(LinuxWebAppSlotAuthSettingsV2GoogleV2Observation) + out := new(LinuxWebAppSlotAuthSettingsV2GithubV2Observation) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters) { +func (in *LinuxWebAppSlotAuthSettingsV2GithubV2Parameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2GithubV2Parameters) { *out = *in - if in.AllowedAudiences != nil { - in, out := &in.AllowedAudiences, &out.AllowedAudiences - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } if in.ClientID != nil { in, out := &in.ClientID, &out.ClientID *out = new(string) @@ -17688,21 +25145,21 @@ func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *Lin } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters. -func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2GithubV2Parameters. +func (in *LinuxWebAppSlotAuthSettingsV2GithubV2Parameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2GithubV2Parameters { if in == nil { return nil } - out := new(LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters) + out := new(LinuxWebAppSlotAuthSettingsV2GithubV2Parameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsV2LoginObservation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2LoginObservation) { +func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2InitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2GoogleV2InitParameters) { *out = *in - if in.AllowedExternalRedirectUrls != nil { - in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -17712,73 +25169,18 @@ func (in *LinuxWebAppSlotAuthSettingsV2LoginObservation) DeepCopyInto(out *Linux } } } - if in.CookieExpirationConvention != nil { - in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention - *out = new(string) - **out = **in - } - if in.CookieExpirationTime != nil { - in, out := &in.CookieExpirationTime, &out.CookieExpirationTime - *out = new(string) - **out = **in - } - if in.LogoutEndpoint != nil { - in, out := &in.LogoutEndpoint, &out.LogoutEndpoint - *out = new(string) - **out = **in - } - if in.NonceExpirationTime != nil { - in, out := &in.NonceExpirationTime, &out.NonceExpirationTime - *out = new(string) - **out = **in - } - if in.PreserveURLFragmentsForLogins != nil { - in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins - *out = new(bool) - **out = **in - } - if in.TokenRefreshExtensionTime != nil { - in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime - *out = new(float64) - **out = **in - } - if in.TokenStoreEnabled != nil { - in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled - *out = new(bool) - **out = **in - } - if in.TokenStorePath != nil { - in, out := &in.TokenStorePath, &out.TokenStorePath + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID *out = new(string) **out = **in } - if in.TokenStoreSASSettingName != nil { - in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName *out = new(string) **out = **in } - if in.ValidateNonce != nil { - in, out := &in.ValidateNonce, &out.ValidateNonce - *out = new(bool) - **out = **in - } -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2LoginObservation. -func (in *LinuxWebAppSlotAuthSettingsV2LoginObservation) DeepCopy() *LinuxWebAppSlotAuthSettingsV2LoginObservation { - if in == nil { - return nil - } - out := new(LinuxWebAppSlotAuthSettingsV2LoginObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsV2LoginParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2LoginParameters) { - *out = *in - if in.AllowedExternalRedirectUrls != nil { - in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -17788,70 +25190,540 @@ func (in *LinuxWebAppSlotAuthSettingsV2LoginParameters) DeepCopyInto(out *LinuxW } } } - if in.CookieExpirationConvention != nil { - in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention - *out = new(string) - **out = **in - } - if in.CookieExpirationTime != nil { - in, out := &in.CookieExpirationTime, &out.CookieExpirationTime - *out = new(string) - **out = **in - } - if in.LogoutEndpoint != nil { - in, out := &in.LogoutEndpoint, &out.LogoutEndpoint - *out = new(string) - **out = **in - } - if in.NonceExpirationTime != nil { - in, out := &in.NonceExpirationTime, &out.NonceExpirationTime - *out = new(string) - **out = **in - } - if in.PreserveURLFragmentsForLogins != nil { - in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins - *out = new(bool) - **out = **in - } - if in.TokenRefreshExtensionTime != nil { - in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime - *out = new(float64) - **out = **in - } - if in.TokenStoreEnabled != nil { - in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled - *out = new(bool) - **out = **in - } - if in.TokenStorePath != nil { - in, out := &in.TokenStorePath, &out.TokenStorePath - *out = new(string) - **out = **in - } - if in.TokenStoreSASSettingName != nil { - in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName - *out = new(string) - **out = **in - } - if in.ValidateNonce != nil { - in, out := &in.ValidateNonce, &out.ValidateNonce - *out = new(bool) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2LoginParameters. -func (in *LinuxWebAppSlotAuthSettingsV2LoginParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2LoginParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2GoogleV2InitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2InitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2GoogleV2InitParameters { if in == nil { return nil } - out := new(LinuxWebAppSlotAuthSettingsV2LoginParameters) + out := new(LinuxWebAppSlotAuthSettingsV2GoogleV2InitParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LinuxWebAppSlotAuthSettingsV2MicrosoftV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2MicrosoftV2Observation) { +func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2GoogleV2Observation) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2GoogleV2Observation. +func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2Observation) DeepCopy() *LinuxWebAppSlotAuthSettingsV2GoogleV2Observation { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2GoogleV2Observation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters. +func (in *LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2InitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2InitParameters) { + *out = *in + if in.ActiveDirectoryV2 != nil { + in, out := &in.ActiveDirectoryV2, &out.ActiveDirectoryV2 + *out = make([]LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AppleV2 != nil { + in, out := &in.AppleV2, &out.AppleV2 + *out = make([]LinuxWebAppSlotAuthSettingsV2AppleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthEnabled != nil { + in, out := &in.AuthEnabled, &out.AuthEnabled + *out = new(bool) + **out = **in + } + if in.AzureStaticWebAppV2 != nil { + in, out := &in.AzureStaticWebAppV2, &out.AzureStaticWebAppV2 + *out = make([]LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConfigFilePath != nil { + in, out := &in.ConfigFilePath, &out.ConfigFilePath + *out = new(string) + **out = **in + } + if in.CustomOidcV2 != nil { + in, out := &in.CustomOidcV2, &out.CustomOidcV2 + *out = make([]LinuxWebAppSlotAuthSettingsV2CustomOidcV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.ExcludedPaths != nil { + in, out := &in.ExcludedPaths, &out.ExcludedPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FacebookV2 != nil { + in, out := &in.FacebookV2, &out.FacebookV2 + *out = make([]LinuxWebAppSlotAuthSettingsV2FacebookV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForwardProxyConvention != nil { + in, out := &in.ForwardProxyConvention, &out.ForwardProxyConvention + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomHostHeaderName != nil { + in, out := &in.ForwardProxyCustomHostHeaderName, &out.ForwardProxyCustomHostHeaderName + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomSchemeHeaderName != nil { + in, out := &in.ForwardProxyCustomSchemeHeaderName, &out.ForwardProxyCustomSchemeHeaderName + *out = new(string) + **out = **in + } + if in.GithubV2 != nil { + in, out := &in.GithubV2, &out.GithubV2 + *out = make([]LinuxWebAppSlotAuthSettingsV2GithubV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GoogleV2 != nil { + in, out := &in.GoogleV2, &out.GoogleV2 + *out = make([]LinuxWebAppSlotAuthSettingsV2GoogleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPRouteAPIPrefix != nil { + in, out := &in.HTTPRouteAPIPrefix, &out.HTTPRouteAPIPrefix + *out = new(string) + **out = **in + } + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = make([]LinuxWebAppSlotAuthSettingsV2LoginInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MicrosoftV2 != nil { + in, out := &in.MicrosoftV2, &out.MicrosoftV2 + *out = make([]LinuxWebAppSlotAuthSettingsV2MicrosoftV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequireAuthentication != nil { + in, out := &in.RequireAuthentication, &out.RequireAuthentication + *out = new(bool) + **out = **in + } + if in.RequireHTTPS != nil { + in, out := &in.RequireHTTPS, &out.RequireHTTPS + *out = new(bool) + **out = **in + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TwitterV2 != nil { + in, out := &in.TwitterV2, &out.TwitterV2 + *out = make([]LinuxWebAppSlotAuthSettingsV2TwitterV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedAction != nil { + in, out := &in.UnauthenticatedAction, &out.UnauthenticatedAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2InitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2InitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2InitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2LoginInitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2LoginInitParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2LoginInitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2LoginInitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2LoginInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2LoginInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2LoginObservation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2LoginObservation) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2LoginObservation. +func (in *LinuxWebAppSlotAuthSettingsV2LoginObservation) DeepCopy() *LinuxWebAppSlotAuthSettingsV2LoginObservation { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2LoginObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2LoginParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2LoginParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2LoginParameters. +func (in *LinuxWebAppSlotAuthSettingsV2LoginParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2LoginParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2LoginParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2MicrosoftV2InitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2MicrosoftV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2MicrosoftV2InitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2MicrosoftV2InitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2MicrosoftV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2MicrosoftV2InitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2MicrosoftV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2MicrosoftV2Observation) { *out = *in if in.AllowedAudiences != nil { in, out := &in.AllowedAudiences, &out.AllowedAudiences @@ -18246,6 +26118,31 @@ func (in *LinuxWebAppSlotAuthSettingsV2Parameters) DeepCopy() *LinuxWebAppSlotAu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotAuthSettingsV2TwitterV2InitParameters) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2TwitterV2InitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotAuthSettingsV2TwitterV2InitParameters. +func (in *LinuxWebAppSlotAuthSettingsV2TwitterV2InitParameters) DeepCopy() *LinuxWebAppSlotAuthSettingsV2TwitterV2InitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotAuthSettingsV2TwitterV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotAuthSettingsV2TwitterV2Observation) DeepCopyInto(out *LinuxWebAppSlotAuthSettingsV2TwitterV2Observation) { *out = *in @@ -18296,6 +26193,38 @@ func (in *LinuxWebAppSlotAuthSettingsV2TwitterV2Parameters) DeepCopy() *LinuxWeb return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotBackupInitParameters) DeepCopyInto(out *LinuxWebAppSlotBackupInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]LinuxWebAppSlotBackupScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotBackupInitParameters. +func (in *LinuxWebAppSlotBackupInitParameters) DeepCopy() *LinuxWebAppSlotBackupInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotBackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotBackupObservation) DeepCopyInto(out *LinuxWebAppSlotBackupObservation) { *out = *in @@ -18361,6 +26290,46 @@ func (in *LinuxWebAppSlotBackupParameters) DeepCopy() *LinuxWebAppSlotBackupPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotBackupScheduleInitParameters) DeepCopyInto(out *LinuxWebAppSlotBackupScheduleInitParameters) { + *out = *in + if in.FrequencyInterval != nil { + in, out := &in.FrequencyInterval, &out.FrequencyInterval + *out = new(float64) + **out = **in + } + if in.FrequencyUnit != nil { + in, out := &in.FrequencyUnit, &out.FrequencyUnit + *out = new(string) + **out = **in + } + if in.KeepAtLeastOneBackup != nil { + in, out := &in.KeepAtLeastOneBackup, &out.KeepAtLeastOneBackup + *out = new(bool) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotBackupScheduleInitParameters. +func (in *LinuxWebAppSlotBackupScheduleInitParameters) DeepCopy() *LinuxWebAppSlotBackupScheduleInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotBackupScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotBackupScheduleObservation) DeepCopyInto(out *LinuxWebAppSlotBackupScheduleObservation) { *out = *in @@ -18446,6 +26415,31 @@ func (in *LinuxWebAppSlotBackupScheduleParameters) DeepCopy() *LinuxWebAppSlotBa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotConnectionStringInitParameters) DeepCopyInto(out *LinuxWebAppSlotConnectionStringInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotConnectionStringInitParameters. +func (in *LinuxWebAppSlotConnectionStringInitParameters) DeepCopy() *LinuxWebAppSlotConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotConnectionStringObservation) DeepCopyInto(out *LinuxWebAppSlotConnectionStringObservation) { *out = *in @@ -18497,6 +26491,37 @@ func (in *LinuxWebAppSlotConnectionStringParameters) DeepCopy() *LinuxWebAppSlot return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotIdentityInitParameters) DeepCopyInto(out *LinuxWebAppSlotIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotIdentityInitParameters. +func (in *LinuxWebAppSlotIdentityInitParameters) DeepCopy() *LinuxWebAppSlotIdentityInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotIdentityObservation) DeepCopyInto(out *LinuxWebAppSlotIdentityObservation) { *out = *in @@ -18569,6 +26594,157 @@ func (in *LinuxWebAppSlotIdentityParameters) DeepCopy() *LinuxWebAppSlotIdentity return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotInitParameters) DeepCopyInto(out *LinuxWebAppSlotInitParameters) { + *out = *in + if in.AppSettings != nil { + in, out := &in.AppSettings, &out.AppSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AuthSettings != nil { + in, out := &in.AuthSettings, &out.AuthSettings + *out = make([]LinuxWebAppSlotAuthSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthSettingsV2 != nil { + in, out := &in.AuthSettingsV2, &out.AuthSettingsV2 + *out = make([]LinuxWebAppSlotAuthSettingsV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]LinuxWebAppSlotBackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientAffinityEnabled != nil { + in, out := &in.ClientAffinityEnabled, &out.ClientAffinityEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateEnabled != nil { + in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateExclusionPaths != nil { + in, out := &in.ClientCertificateExclusionPaths, &out.ClientCertificateExclusionPaths + *out = new(string) + **out = **in + } + if in.ClientCertificateMode != nil { + in, out := &in.ClientCertificateMode, &out.ClientCertificateMode + *out = new(string) + **out = **in + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = make([]LinuxWebAppSlotConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]LinuxWebAppSlotIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultReferenceIdentityID != nil { + in, out := &in.KeyVaultReferenceIdentityID, &out.KeyVaultReferenceIdentityID + *out = new(string) + **out = **in + } + if in.Logs != nil { + in, out := &in.Logs, &out.Logs + *out = make([]LinuxWebAppSlotLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ServicePlanID != nil { + in, out := &in.ServicePlanID, &out.ServicePlanID + *out = new(string) + **out = **in + } + if in.SiteConfig != nil { + in, out := &in.SiteConfig, &out.SiteConfig + *out = make([]LinuxWebAppSlotSiteConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]LinuxWebAppSlotStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZipDeployFile != nil { + in, out := &in.ZipDeployFile, &out.ZipDeployFile + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotInitParameters. +func (in *LinuxWebAppSlotInitParameters) DeepCopy() *LinuxWebAppSlotInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotList) DeepCopyInto(out *LinuxWebAppSlotList) { *out = *in @@ -18601,6 +26777,45 @@ func (in *LinuxWebAppSlotList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotLogsInitParameters) DeepCopyInto(out *LinuxWebAppSlotLogsInitParameters) { + *out = *in + if in.ApplicationLogs != nil { + in, out := &in.ApplicationLogs, &out.ApplicationLogs + *out = make([]LogsApplicationLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DetailedErrorMessages != nil { + in, out := &in.DetailedErrorMessages, &out.DetailedErrorMessages + *out = new(bool) + **out = **in + } + if in.FailedRequestTracing != nil { + in, out := &in.FailedRequestTracing, &out.FailedRequestTracing + *out = new(bool) + **out = **in + } + if in.HTTPLogs != nil { + in, out := &in.HTTPLogs, &out.HTTPLogs + *out = make([]LogsHTTPLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotLogsInitParameters. +func (in *LinuxWebAppSlotLogsInitParameters) DeepCopy() *LinuxWebAppSlotLogsInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotLogsObservation) DeepCopyInto(out *LinuxWebAppSlotLogsObservation) { *out = *in @@ -19088,6 +27303,76 @@ func (in *LinuxWebAppSlotParameters) DeepCopy() *LinuxWebAppSlotParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotSiteConfigApplicationStackInitParameters) DeepCopyInto(out *LinuxWebAppSlotSiteConfigApplicationStackInitParameters) { + *out = *in + if in.DockerImage != nil { + in, out := &in.DockerImage, &out.DockerImage + *out = new(string) + **out = **in + } + if in.DockerImageTag != nil { + in, out := &in.DockerImageTag, &out.DockerImageTag + *out = new(string) + **out = **in + } + if in.DotnetVersion != nil { + in, out := &in.DotnetVersion, &out.DotnetVersion + *out = new(string) + **out = **in + } + if in.GoVersion != nil { + in, out := &in.GoVersion, &out.GoVersion + *out = new(string) + **out = **in + } + if in.JavaServer != nil { + in, out := &in.JavaServer, &out.JavaServer + *out = new(string) + **out = **in + } + if in.JavaServerVersion != nil { + in, out := &in.JavaServerVersion, &out.JavaServerVersion + *out = new(string) + **out = **in + } + if in.JavaVersion != nil { + in, out := &in.JavaVersion, &out.JavaVersion + *out = new(string) + **out = **in + } + if in.NodeVersion != nil { + in, out := &in.NodeVersion, &out.NodeVersion + *out = new(string) + **out = **in + } + if in.PHPVersion != nil { + in, out := &in.PHPVersion, &out.PHPVersion + *out = new(string) + **out = **in + } + if in.PythonVersion != nil { + in, out := &in.PythonVersion, &out.PythonVersion + *out = new(string) + **out = **in + } + if in.RubyVersion != nil { + in, out := &in.RubyVersion, &out.RubyVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotSiteConfigApplicationStackInitParameters. +func (in *LinuxWebAppSlotSiteConfigApplicationStackInitParameters) DeepCopy() *LinuxWebAppSlotSiteConfigApplicationStackInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotSiteConfigApplicationStackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotSiteConfigApplicationStackObservation) DeepCopyInto(out *LinuxWebAppSlotSiteConfigApplicationStackObservation) { *out = *in @@ -19228,6 +27513,37 @@ func (in *LinuxWebAppSlotSiteConfigApplicationStackParameters) DeepCopy() *Linux return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotSiteConfigCorsInitParameters) DeepCopyInto(out *LinuxWebAppSlotSiteConfigCorsInitParameters) { + *out = *in + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportCredentials != nil { + in, out := &in.SupportCredentials, &out.SupportCredentials + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotSiteConfigCorsInitParameters. +func (in *LinuxWebAppSlotSiteConfigCorsInitParameters) DeepCopy() *LinuxWebAppSlotSiteConfigCorsInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotSiteConfigCorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotSiteConfigCorsObservation) DeepCopyInto(out *LinuxWebAppSlotSiteConfigCorsObservation) { *out = *in @@ -19290,6 +27606,65 @@ func (in *LinuxWebAppSlotSiteConfigCorsParameters) DeepCopy() *LinuxWebAppSlotSi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotSiteConfigIPRestrictionHeadersInitParameters) DeepCopyInto(out *LinuxWebAppSlotSiteConfigIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotSiteConfigIPRestrictionHeadersInitParameters. +func (in *LinuxWebAppSlotSiteConfigIPRestrictionHeadersInitParameters) DeepCopy() *LinuxWebAppSlotSiteConfigIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotSiteConfigIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotSiteConfigIPRestrictionHeadersObservation) DeepCopyInto(out *LinuxWebAppSlotSiteConfigIPRestrictionHeadersObservation) { *out = *in @@ -19408,6 +27783,53 @@ func (in *LinuxWebAppSlotSiteConfigIPRestrictionHeadersParameters) DeepCopy() *L return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotSiteConfigIPRestrictionInitParameters) DeepCopyInto(out *LinuxWebAppSlotSiteConfigIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]LinuxWebAppSlotSiteConfigIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotSiteConfigIPRestrictionInitParameters. +func (in *LinuxWebAppSlotSiteConfigIPRestrictionInitParameters) DeepCopy() *LinuxWebAppSlotSiteConfigIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotSiteConfigIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotSiteConfigIPRestrictionObservation) DeepCopyInto(out *LinuxWebAppSlotSiteConfigIPRestrictionObservation) { *out = *in @@ -19522,6 +27944,187 @@ func (in *LinuxWebAppSlotSiteConfigIPRestrictionParameters) DeepCopy() *LinuxWeb return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotSiteConfigInitParameters) DeepCopyInto(out *LinuxWebAppSlotSiteConfigInitParameters) { + *out = *in + if in.APIDefinitionURL != nil { + in, out := &in.APIDefinitionURL, &out.APIDefinitionURL + *out = new(string) + **out = **in + } + if in.APIManagementAPIID != nil { + in, out := &in.APIManagementAPIID, &out.APIManagementAPIID + *out = new(string) + **out = **in + } + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppCommandLine != nil { + in, out := &in.AppCommandLine, &out.AppCommandLine + *out = new(string) + **out = **in + } + if in.ApplicationStack != nil { + in, out := &in.ApplicationStack, &out.ApplicationStack + *out = make([]LinuxWebAppSlotSiteConfigApplicationStackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoHealEnabled != nil { + in, out := &in.AutoHealEnabled, &out.AutoHealEnabled + *out = new(bool) + **out = **in + } + if in.AutoHealSetting != nil { + in, out := &in.AutoHealSetting, &out.AutoHealSetting + *out = make([]SiteConfigAutoHealSettingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoSwapSlotName != nil { + in, out := &in.AutoSwapSlotName, &out.AutoSwapSlotName + *out = new(string) + **out = **in + } + if in.ContainerRegistryManagedIdentityClientID != nil { + in, out := &in.ContainerRegistryManagedIdentityClientID, &out.ContainerRegistryManagedIdentityClientID + *out = new(string) + **out = **in + } + if in.ContainerRegistryUseManagedIdentity != nil { + in, out := &in.ContainerRegistryUseManagedIdentity, &out.ContainerRegistryUseManagedIdentity + *out = new(bool) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]LinuxWebAppSlotSiteConfigCorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDocuments != nil { + in, out := &in.DefaultDocuments, &out.DefaultDocuments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckEvictionTimeInMin != nil { + in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin + *out = new(float64) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]LinuxWebAppSlotSiteConfigIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancingMode != nil { + in, out := &in.LoadBalancingMode, &out.LoadBalancingMode + *out = new(string) + **out = **in + } + if in.LocalMySQLEnabled != nil { + in, out := &in.LocalMySQLEnabled, &out.LocalMySQLEnabled + *out = new(bool) + **out = **in + } + if in.ManagedPipelineMode != nil { + in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.RemoteDebuggingEnabled != nil { + in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled + *out = new(bool) + **out = **in + } + if in.RemoteDebuggingVersion != nil { + in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion + *out = new(string) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]LinuxWebAppSlotSiteConfigScmIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmMinimumTLSVersion != nil { + in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorker != nil { + in, out := &in.Use32BitWorker, &out.Use32BitWorker + *out = new(bool) + **out = **in + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotSiteConfigInitParameters. +func (in *LinuxWebAppSlotSiteConfigInitParameters) DeepCopy() *LinuxWebAppSlotSiteConfigInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotSiteConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotSiteConfigObservation) DeepCopyInto(out *LinuxWebAppSlotSiteConfigObservation) { *out = *in @@ -19899,6 +28502,65 @@ func (in *LinuxWebAppSlotSiteConfigParameters) DeepCopy() *LinuxWebAppSlotSiteCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopyInto(out *LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters. +func (in *LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopy() *LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersObservation) DeepCopyInto(out *LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersObservation) { *out = *in @@ -20017,6 +28679,53 @@ func (in *LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersParameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotSiteConfigScmIPRestrictionInitParameters) DeepCopyInto(out *LinuxWebAppSlotSiteConfigScmIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotSiteConfigScmIPRestrictionInitParameters. +func (in *LinuxWebAppSlotSiteConfigScmIPRestrictionInitParameters) DeepCopy() *LinuxWebAppSlotSiteConfigScmIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotSiteConfigScmIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotSiteConfigScmIPRestrictionObservation) DeepCopyInto(out *LinuxWebAppSlotSiteConfigScmIPRestrictionObservation) { *out = *in @@ -20131,6 +28840,21 @@ func (in *LinuxWebAppSlotSiteConfigScmIPRestrictionParameters) DeepCopy() *Linux return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotSiteCredentialInitParameters) DeepCopyInto(out *LinuxWebAppSlotSiteCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotSiteCredentialInitParameters. +func (in *LinuxWebAppSlotSiteCredentialInitParameters) DeepCopy() *LinuxWebAppSlotSiteCredentialInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotSiteCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotSiteCredentialObservation) DeepCopyInto(out *LinuxWebAppSlotSiteCredentialObservation) { *out = *in @@ -20176,6 +28900,7 @@ func (in *LinuxWebAppSlotSpec) DeepCopyInto(out *LinuxWebAppSlotSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotSpec. @@ -20205,6 +28930,46 @@ func (in *LinuxWebAppSlotStatus) DeepCopy() *LinuxWebAppSlotStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppSlotStorageAccountInitParameters) DeepCopyInto(out *LinuxWebAppSlotStorageAccountInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.MountPath != nil { + in, out := &in.MountPath, &out.MountPath + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ShareName != nil { + in, out := &in.ShareName, &out.ShareName + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSlotStorageAccountInitParameters. +func (in *LinuxWebAppSlotStorageAccountInitParameters) DeepCopy() *LinuxWebAppSlotStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppSlotStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppSlotStorageAccountObservation) DeepCopyInto(out *LinuxWebAppSlotStorageAccountObservation) { *out = *in @@ -20291,6 +29056,7 @@ func (in *LinuxWebAppSpec) DeepCopyInto(out *LinuxWebAppSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppSpec. @@ -20320,6 +29086,43 @@ func (in *LinuxWebAppStatus) DeepCopy() *LinuxWebAppStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppStickySettingsInitParameters) DeepCopyInto(out *LinuxWebAppStickySettingsInitParameters) { + *out = *in + if in.AppSettingNames != nil { + in, out := &in.AppSettingNames, &out.AppSettingNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionStringNames != nil { + in, out := &in.ConnectionStringNames, &out.ConnectionStringNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppStickySettingsInitParameters. +func (in *LinuxWebAppStickySettingsInitParameters) DeepCopy() *LinuxWebAppStickySettingsInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppStickySettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppStickySettingsObservation) DeepCopyInto(out *LinuxWebAppStickySettingsObservation) { *out = *in @@ -20394,6 +29197,46 @@ func (in *LinuxWebAppStickySettingsParameters) DeepCopy() *LinuxWebAppStickySett return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LinuxWebAppStorageAccountInitParameters) DeepCopyInto(out *LinuxWebAppStorageAccountInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.MountPath != nil { + in, out := &in.MountPath, &out.MountPath + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ShareName != nil { + in, out := &in.ShareName, &out.ShareName + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxWebAppStorageAccountInitParameters. +func (in *LinuxWebAppStorageAccountInitParameters) DeepCopy() *LinuxWebAppStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(LinuxWebAppStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LinuxWebAppStorageAccountObservation) DeepCopyInto(out *LinuxWebAppStorageAccountObservation) { *out = *in @@ -20475,6 +29318,82 @@ func (in *LinuxWebAppStorageAccountParameters) DeepCopy() *LinuxWebAppStorageAcc return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoginInitParameters) DeepCopyInto(out *LoginInitParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginInitParameters. +func (in *LoginInitParameters) DeepCopy() *LoginInitParameters { + if in == nil { + return nil + } + out := new(LoginInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LoginObservation) DeepCopyInto(out *LoginObservation) { *out = *in @@ -20541,88 +29460,118 @@ func (in *LoginObservation) DeepCopyInto(out *LoginObservation) { } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginObservation. -func (in *LoginObservation) DeepCopy() *LoginObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginObservation. +func (in *LoginObservation) DeepCopy() *LoginObservation { + if in == nil { + return nil + } + out := new(LoginObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LoginParameters) DeepCopyInto(out *LoginParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginParameters. +func (in *LoginParameters) DeepCopy() *LoginParameters { if in == nil { return nil } - out := new(LoginObservation) + out := new(LoginParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *LoginParameters) DeepCopyInto(out *LoginParameters) { +func (in *LogsApplicationLogsAzureBlobStorageInitParameters) DeepCopyInto(out *LogsApplicationLogsAzureBlobStorageInitParameters) { *out = *in - if in.AllowedExternalRedirectUrls != nil { - in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls - *out = make([]*string, len(*in)) - for i := range *in { - if (*in)[i] != nil { - in, out := &(*in)[i], &(*out)[i] - *out = new(string) - **out = **in - } - } - } - if in.CookieExpirationConvention != nil { - in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention - *out = new(string) - **out = **in - } - if in.CookieExpirationTime != nil { - in, out := &in.CookieExpirationTime, &out.CookieExpirationTime - *out = new(string) - **out = **in - } - if in.LogoutEndpoint != nil { - in, out := &in.LogoutEndpoint, &out.LogoutEndpoint - *out = new(string) - **out = **in - } - if in.NonceExpirationTime != nil { - in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + if in.Level != nil { + in, out := &in.Level, &out.Level *out = new(string) **out = **in } - if in.PreserveURLFragmentsForLogins != nil { - in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins - *out = new(bool) - **out = **in - } - if in.TokenRefreshExtensionTime != nil { - in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays *out = new(float64) **out = **in } - if in.TokenStoreEnabled != nil { - in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled - *out = new(bool) - **out = **in - } - if in.TokenStorePath != nil { - in, out := &in.TokenStorePath, &out.TokenStorePath - *out = new(string) - **out = **in - } - if in.TokenStoreSASSettingName != nil { - in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + if in.SASURL != nil { + in, out := &in.SASURL, &out.SASURL *out = new(string) **out = **in } - if in.ValidateNonce != nil { - in, out := &in.ValidateNonce, &out.ValidateNonce - *out = new(bool) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoginParameters. -func (in *LoginParameters) DeepCopy() *LoginParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogsApplicationLogsAzureBlobStorageInitParameters. +func (in *LogsApplicationLogsAzureBlobStorageInitParameters) DeepCopy() *LogsApplicationLogsAzureBlobStorageInitParameters { if in == nil { return nil } - out := new(LoginParameters) + out := new(LogsApplicationLogsAzureBlobStorageInitParameters) in.DeepCopyInto(out) return out } @@ -20687,6 +29636,33 @@ func (in *LogsApplicationLogsAzureBlobStorageParameters) DeepCopy() *LogsApplica return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogsApplicationLogsInitParameters) DeepCopyInto(out *LogsApplicationLogsInitParameters) { + *out = *in + if in.AzureBlobStorage != nil { + in, out := &in.AzureBlobStorage, &out.AzureBlobStorage + *out = make([]ApplicationLogsAzureBlobStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FileSystemLevel != nil { + in, out := &in.FileSystemLevel, &out.FileSystemLevel + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogsApplicationLogsInitParameters. +func (in *LogsApplicationLogsInitParameters) DeepCopy() *LogsApplicationLogsInitParameters { + if in == nil { + return nil + } + out := new(LogsApplicationLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogsApplicationLogsObservation) DeepCopyInto(out *LogsApplicationLogsObservation) { *out = *in @@ -20741,6 +29717,26 @@ func (in *LogsApplicationLogsParameters) DeepCopy() *LogsApplicationLogsParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogsHTTPLogsAzureBlobStorageInitParameters) DeepCopyInto(out *LogsHTTPLogsAzureBlobStorageInitParameters) { + *out = *in + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogsHTTPLogsAzureBlobStorageInitParameters. +func (in *LogsHTTPLogsAzureBlobStorageInitParameters) DeepCopy() *LogsHTTPLogsAzureBlobStorageInitParameters { + if in == nil { + return nil + } + out := new(LogsHTTPLogsAzureBlobStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogsHTTPLogsAzureBlobStorageObservation) DeepCopyInto(out *LogsHTTPLogsAzureBlobStorageObservation) { *out = *in @@ -20782,6 +29778,31 @@ func (in *LogsHTTPLogsAzureBlobStorageParameters) DeepCopy() *LogsHTTPLogsAzureB return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogsHTTPLogsFileSystemInitParameters) DeepCopyInto(out *LogsHTTPLogsFileSystemInitParameters) { + *out = *in + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.RetentionInMb != nil { + in, out := &in.RetentionInMb, &out.RetentionInMb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogsHTTPLogsFileSystemInitParameters. +func (in *LogsHTTPLogsFileSystemInitParameters) DeepCopy() *LogsHTTPLogsFileSystemInitParameters { + if in == nil { + return nil + } + out := new(LogsHTTPLogsFileSystemInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogsHTTPLogsFileSystemObservation) DeepCopyInto(out *LogsHTTPLogsFileSystemObservation) { *out = *in @@ -20832,6 +29853,35 @@ func (in *LogsHTTPLogsFileSystemParameters) DeepCopy() *LogsHTTPLogsFileSystemPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogsHTTPLogsInitParameters) DeepCopyInto(out *LogsHTTPLogsInitParameters) { + *out = *in + if in.AzureBlobStorage != nil { + in, out := &in.AzureBlobStorage, &out.AzureBlobStorage + *out = make([]LogsHTTPLogsAzureBlobStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FileSystem != nil { + in, out := &in.FileSystem, &out.FileSystem + *out = make([]HTTPLogsFileSystemInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogsHTTPLogsInitParameters. +func (in *LogsHTTPLogsInitParameters) DeepCopy() *LogsHTTPLogsInitParameters { + if in == nil { + return nil + } + out := new(LogsHTTPLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogsHTTPLogsObservation) DeepCopyInto(out *LogsHTTPLogsObservation) { *out = *in @@ -20890,6 +29940,45 @@ func (in *LogsHTTPLogsParameters) DeepCopy() *LogsHTTPLogsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogsInitParameters) DeepCopyInto(out *LogsInitParameters) { + *out = *in + if in.ApplicationLogs != nil { + in, out := &in.ApplicationLogs, &out.ApplicationLogs + *out = make([]ApplicationLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DetailedErrorMessages != nil { + in, out := &in.DetailedErrorMessages, &out.DetailedErrorMessages + *out = new(bool) + **out = **in + } + if in.FailedRequestTracing != nil { + in, out := &in.FailedRequestTracing, &out.FailedRequestTracing + *out = new(bool) + **out = **in + } + if in.HTTPLogs != nil { + in, out := &in.HTTPLogs, &out.HTTPLogs + *out = make([]HTTPLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogsInitParameters. +func (in *LogsInitParameters) DeepCopy() *LogsInitParameters { + if in == nil { + return nil + } + out := new(LogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LogsObservation) DeepCopyInto(out *LogsObservation) { *out = *in @@ -20968,6 +30057,37 @@ func (in *LogsParameters) DeepCopy() *LogsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MicrosoftInitParameters) DeepCopyInto(out *MicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrosoftInitParameters. +func (in *MicrosoftInitParameters) DeepCopy() *MicrosoftInitParameters { + if in == nil { + return nil + } + out := new(MicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MicrosoftObservation) DeepCopyInto(out *MicrosoftObservation) { *out = *in @@ -21031,6 +30151,53 @@ func (in *MicrosoftParameters) DeepCopy() *MicrosoftParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MicrosoftV2InitParameters) DeepCopyInto(out *MicrosoftV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicrosoftV2InitParameters. +func (in *MicrosoftV2InitParameters) DeepCopy() *MicrosoftV2InitParameters { + if in == nil { + return nil + } + out := new(MicrosoftV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *MicrosoftV2Observation) DeepCopyInto(out *MicrosoftV2Observation) { *out = *in @@ -21125,6 +30292,31 @@ func (in *MicrosoftV2Parameters) DeepCopy() *MicrosoftV2Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *RequestsInitParameters) DeepCopyInto(out *RequestsInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestsInitParameters. +func (in *RequestsInitParameters) DeepCopy() *RequestsInitParameters { + if in == nil { + return nil + } + out := new(RequestsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RequestsObservation) DeepCopyInto(out *RequestsObservation) { *out = *in @@ -21175,6 +30367,46 @@ func (in *RequestsParameters) DeepCopy() *RequestsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScheduleInitParameters) DeepCopyInto(out *ScheduleInitParameters) { + *out = *in + if in.FrequencyInterval != nil { + in, out := &in.FrequencyInterval, &out.FrequencyInterval + *out = new(float64) + **out = **in + } + if in.FrequencyUnit != nil { + in, out := &in.FrequencyUnit, &out.FrequencyUnit + *out = new(string) + **out = **in + } + if in.KeepAtLeastOneBackup != nil { + in, out := &in.KeepAtLeastOneBackup, &out.KeepAtLeastOneBackup + *out = new(bool) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScheduleInitParameters. +func (in *ScheduleInitParameters) DeepCopy() *ScheduleInitParameters { + if in == nil { + return nil + } + out := new(ScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScheduleObservation) DeepCopyInto(out *ScheduleObservation) { *out = *in @@ -21260,6 +30492,65 @@ func (in *ScheduleParameters) DeepCopy() *ScheduleParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScmIPRestrictionHeadersInitParameters) DeepCopyInto(out *ScmIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScmIPRestrictionHeadersInitParameters. +func (in *ScmIPRestrictionHeadersInitParameters) DeepCopy() *ScmIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(ScmIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScmIPRestrictionHeadersObservation) DeepCopyInto(out *ScmIPRestrictionHeadersObservation) { *out = *in @@ -21378,6 +30669,53 @@ func (in *ScmIPRestrictionHeadersParameters) DeepCopy() *ScmIPRestrictionHeaders return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ScmIPRestrictionInitParameters) DeepCopyInto(out *ScmIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]ScmIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScmIPRestrictionInitParameters. +func (in *ScmIPRestrictionInitParameters) DeepCopy() *ScmIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(ScmIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ScmIPRestrictionObservation) DeepCopyInto(out *ScmIPRestrictionObservation) { *out = *in @@ -21519,6 +30857,76 @@ func (in *ServicePlan) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServicePlanInitParameters) DeepCopyInto(out *ServicePlanInitParameters) { + *out = *in + if in.AppServiceEnvironmentID != nil { + in, out := &in.AppServiceEnvironmentID, &out.AppServiceEnvironmentID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaximumElasticWorkerCount != nil { + in, out := &in.MaximumElasticWorkerCount, &out.MaximumElasticWorkerCount + *out = new(float64) + **out = **in + } + if in.OsType != nil { + in, out := &in.OsType, &out.OsType + *out = new(string) + **out = **in + } + if in.PerSiteScalingEnabled != nil { + in, out := &in.PerSiteScalingEnabled, &out.PerSiteScalingEnabled + *out = new(bool) + **out = **in + } + if in.SkuName != nil { + in, out := &in.SkuName, &out.SkuName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } + if in.ZoneBalancingEnabled != nil { + in, out := &in.ZoneBalancingEnabled, &out.ZoneBalancingEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePlanInitParameters. +func (in *ServicePlanInitParameters) DeepCopy() *ServicePlanInitParameters { + if in == nil { + return nil + } + out := new(ServicePlanInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *ServicePlanList) DeepCopyInto(out *ServicePlanList) { *out = *in @@ -21731,6 +31139,7 @@ func (in *ServicePlanSpec) DeepCopyInto(out *ServicePlanSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePlanSpec. @@ -21760,6 +31169,31 @@ func (in *ServicePlanStatus) DeepCopy() *ServicePlanStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigAppServiceLogsInitParameters) DeepCopyInto(out *SiteConfigAppServiceLogsInitParameters) { + *out = *in + if in.DiskQuotaMb != nil { + in, out := &in.DiskQuotaMb, &out.DiskQuotaMb + *out = new(float64) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigAppServiceLogsInitParameters. +func (in *SiteConfigAppServiceLogsInitParameters) DeepCopy() *SiteConfigAppServiceLogsInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigAppServiceLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigAppServiceLogsObservation) DeepCopyInto(out *SiteConfigAppServiceLogsObservation) { *out = *in @@ -21810,6 +31244,63 @@ func (in *SiteConfigAppServiceLogsParameters) DeepCopy() *SiteConfigAppServiceLo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigApplicationStackInitParameters) DeepCopyInto(out *SiteConfigApplicationStackInitParameters) { + *out = *in + if in.Docker != nil { + in, out := &in.Docker, &out.Docker + *out = make([]ApplicationStackDockerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DotnetVersion != nil { + in, out := &in.DotnetVersion, &out.DotnetVersion + *out = new(string) + **out = **in + } + if in.JavaVersion != nil { + in, out := &in.JavaVersion, &out.JavaVersion + *out = new(string) + **out = **in + } + if in.NodeVersion != nil { + in, out := &in.NodeVersion, &out.NodeVersion + *out = new(string) + **out = **in + } + if in.PowershellCoreVersion != nil { + in, out := &in.PowershellCoreVersion, &out.PowershellCoreVersion + *out = new(string) + **out = **in + } + if in.PythonVersion != nil { + in, out := &in.PythonVersion, &out.PythonVersion + *out = new(string) + **out = **in + } + if in.UseCustomRuntime != nil { + in, out := &in.UseCustomRuntime, &out.UseCustomRuntime + *out = new(bool) + **out = **in + } + if in.UseDotnetIsolatedRuntime != nil { + in, out := &in.UseDotnetIsolatedRuntime, &out.UseDotnetIsolatedRuntime + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigApplicationStackInitParameters. +func (in *SiteConfigApplicationStackInitParameters) DeepCopy() *SiteConfigApplicationStackInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigApplicationStackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigApplicationStackObservation) DeepCopyInto(out *SiteConfigApplicationStackObservation) { *out = *in @@ -21924,6 +31415,38 @@ func (in *SiteConfigApplicationStackParameters) DeepCopy() *SiteConfigApplicatio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigAutoHealSettingActionInitParameters) DeepCopyInto(out *SiteConfigAutoHealSettingActionInitParameters) { + *out = *in + if in.ActionType != nil { + in, out := &in.ActionType, &out.ActionType + *out = new(string) + **out = **in + } + if in.CustomAction != nil { + in, out := &in.CustomAction, &out.CustomAction + *out = make([]CustomActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MinimumProcessExecutionTime != nil { + in, out := &in.MinimumProcessExecutionTime, &out.MinimumProcessExecutionTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigAutoHealSettingActionInitParameters. +func (in *SiteConfigAutoHealSettingActionInitParameters) DeepCopy() *SiteConfigAutoHealSettingActionInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigAutoHealSettingActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigAutoHealSettingActionObservation) DeepCopyInto(out *SiteConfigAutoHealSettingActionObservation) { *out = *in @@ -21988,6 +31511,35 @@ func (in *SiteConfigAutoHealSettingActionParameters) DeepCopy() *SiteConfigAutoH return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigAutoHealSettingInitParameters) DeepCopyInto(out *SiteConfigAutoHealSettingInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]AutoHealSettingActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Trigger != nil { + in, out := &in.Trigger, &out.Trigger + *out = make([]AutoHealSettingTriggerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigAutoHealSettingInitParameters. +func (in *SiteConfigAutoHealSettingInitParameters) DeepCopy() *SiteConfigAutoHealSettingInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigAutoHealSettingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigAutoHealSettingObservation) DeepCopyInto(out *SiteConfigAutoHealSettingObservation) { *out = *in @@ -22046,6 +31598,47 @@ func (in *SiteConfigAutoHealSettingParameters) DeepCopy() *SiteConfigAutoHealSet return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigAutoHealSettingTriggerInitParameters) DeepCopyInto(out *SiteConfigAutoHealSettingTriggerInitParameters) { + *out = *in + if in.PrivateMemoryKb != nil { + in, out := &in.PrivateMemoryKb, &out.PrivateMemoryKb + *out = new(float64) + **out = **in + } + if in.Requests != nil { + in, out := &in.Requests, &out.Requests + *out = make([]AutoHealSettingTriggerRequestsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SlowRequest != nil { + in, out := &in.SlowRequest, &out.SlowRequest + *out = make([]AutoHealSettingTriggerSlowRequestInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StatusCode != nil { + in, out := &in.StatusCode, &out.StatusCode + *out = make([]AutoHealSettingTriggerStatusCodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigAutoHealSettingTriggerInitParameters. +func (in *SiteConfigAutoHealSettingTriggerInitParameters) DeepCopy() *SiteConfigAutoHealSettingTriggerInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigAutoHealSettingTriggerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigAutoHealSettingTriggerObservation) DeepCopyInto(out *SiteConfigAutoHealSettingTriggerObservation) { *out = *in @@ -22128,6 +31721,31 @@ func (in *SiteConfigAutoHealSettingTriggerParameters) DeepCopy() *SiteConfigAuto return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigAutoHealSettingTriggerRequestsInitParameters) DeepCopyInto(out *SiteConfigAutoHealSettingTriggerRequestsInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigAutoHealSettingTriggerRequestsInitParameters. +func (in *SiteConfigAutoHealSettingTriggerRequestsInitParameters) DeepCopy() *SiteConfigAutoHealSettingTriggerRequestsInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigAutoHealSettingTriggerRequestsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigAutoHealSettingTriggerRequestsObservation) DeepCopyInto(out *SiteConfigAutoHealSettingTriggerRequestsObservation) { *out = *in @@ -22178,6 +31796,41 @@ func (in *SiteConfigAutoHealSettingTriggerRequestsParameters) DeepCopy() *SiteCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigAutoHealSettingTriggerSlowRequestInitParameters) DeepCopyInto(out *SiteConfigAutoHealSettingTriggerSlowRequestInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.TimeTaken != nil { + in, out := &in.TimeTaken, &out.TimeTaken + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigAutoHealSettingTriggerSlowRequestInitParameters. +func (in *SiteConfigAutoHealSettingTriggerSlowRequestInitParameters) DeepCopy() *SiteConfigAutoHealSettingTriggerSlowRequestInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigAutoHealSettingTriggerSlowRequestInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigAutoHealSettingTriggerSlowRequestObservation) DeepCopyInto(out *SiteConfigAutoHealSettingTriggerSlowRequestObservation) { *out = *in @@ -22248,6 +31901,51 @@ func (in *SiteConfigAutoHealSettingTriggerSlowRequestParameters) DeepCopy() *Sit return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigAutoHealSettingTriggerStatusCodeInitParameters) DeepCopyInto(out *SiteConfigAutoHealSettingTriggerStatusCodeInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.StatusCodeRange != nil { + in, out := &in.StatusCodeRange, &out.StatusCodeRange + *out = new(string) + **out = **in + } + if in.SubStatus != nil { + in, out := &in.SubStatus, &out.SubStatus + *out = new(float64) + **out = **in + } + if in.Win32Status != nil { + in, out := &in.Win32Status, &out.Win32Status + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigAutoHealSettingTriggerStatusCodeInitParameters. +func (in *SiteConfigAutoHealSettingTriggerStatusCodeInitParameters) DeepCopy() *SiteConfigAutoHealSettingTriggerStatusCodeInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigAutoHealSettingTriggerStatusCodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigAutoHealSettingTriggerStatusCodeObservation) DeepCopyInto(out *SiteConfigAutoHealSettingTriggerStatusCodeObservation) { *out = *in @@ -22338,6 +32036,37 @@ func (in *SiteConfigAutoHealSettingTriggerStatusCodeParameters) DeepCopy() *Site return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigCorsInitParameters) DeepCopyInto(out *SiteConfigCorsInitParameters) { + *out = *in + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportCredentials != nil { + in, out := &in.SupportCredentials, &out.SupportCredentials + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigCorsInitParameters. +func (in *SiteConfigCorsInitParameters) DeepCopy() *SiteConfigCorsInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigCorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigCorsObservation) DeepCopyInto(out *SiteConfigCorsObservation) { *out = *in @@ -22400,6 +32129,65 @@ func (in *SiteConfigCorsParameters) DeepCopy() *SiteConfigCorsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigIPRestrictionHeadersInitParameters) DeepCopyInto(out *SiteConfigIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigIPRestrictionHeadersInitParameters. +func (in *SiteConfigIPRestrictionHeadersInitParameters) DeepCopy() *SiteConfigIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigIPRestrictionHeadersObservation) DeepCopyInto(out *SiteConfigIPRestrictionHeadersObservation) { *out = *in @@ -22518,6 +32306,53 @@ func (in *SiteConfigIPRestrictionHeadersParameters) DeepCopy() *SiteConfigIPRest return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigIPRestrictionInitParameters) DeepCopyInto(out *SiteConfigIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]IPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigIPRestrictionInitParameters. +func (in *SiteConfigIPRestrictionInitParameters) DeepCopy() *SiteConfigIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigIPRestrictionObservation) DeepCopyInto(out *SiteConfigIPRestrictionObservation) { *out = *in @@ -22632,6 +32467,132 @@ func (in *SiteConfigIPRestrictionParameters) DeepCopy() *SiteConfigIPRestriction return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigInitParameters) DeepCopyInto(out *SiteConfigInitParameters) { + *out = *in + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppScaleLimit != nil { + in, out := &in.AppScaleLimit, &out.AppScaleLimit + *out = new(float64) + **out = **in + } + if in.AutoSwapSlotName != nil { + in, out := &in.AutoSwapSlotName, &out.AutoSwapSlotName + *out = new(string) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]CorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DotnetFrameworkVersion != nil { + in, out := &in.DotnetFrameworkVersion, &out.DotnetFrameworkVersion + *out = new(string) + **out = **in + } + if in.ElasticInstanceMinimum != nil { + in, out := &in.ElasticInstanceMinimum, &out.ElasticInstanceMinimum + *out = new(float64) + **out = **in + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]IPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.JavaVersion != nil { + in, out := &in.JavaVersion, &out.JavaVersion + *out = new(string) + **out = **in + } + if in.LinuxFxVersion != nil { + in, out := &in.LinuxFxVersion, &out.LinuxFxVersion + *out = new(string) + **out = **in + } + if in.MinTLSVersion != nil { + in, out := &in.MinTLSVersion, &out.MinTLSVersion + *out = new(string) + **out = **in + } + if in.PreWarmedInstanceCount != nil { + in, out := &in.PreWarmedInstanceCount, &out.PreWarmedInstanceCount + *out = new(float64) + **out = **in + } + if in.RuntimeScaleMonitoringEnabled != nil { + in, out := &in.RuntimeScaleMonitoringEnabled, &out.RuntimeScaleMonitoringEnabled + *out = new(bool) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]ScmIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmType != nil { + in, out := &in.ScmType, &out.ScmType + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorkerProcess != nil { + in, out := &in.Use32BitWorkerProcess, &out.Use32BitWorkerProcess + *out = new(bool) + **out = **in + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigInitParameters. +func (in *SiteConfigInitParameters) DeepCopy() *SiteConfigInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigObservation) DeepCopyInto(out *SiteConfigObservation) { *out = *in @@ -22884,6 +32845,65 @@ func (in *SiteConfigParameters) DeepCopy() *SiteConfigParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigScmIPRestrictionHeadersInitParameters) DeepCopyInto(out *SiteConfigScmIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigScmIPRestrictionHeadersInitParameters. +func (in *SiteConfigScmIPRestrictionHeadersInitParameters) DeepCopy() *SiteConfigScmIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigScmIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigScmIPRestrictionHeadersObservation) DeepCopyInto(out *SiteConfigScmIPRestrictionHeadersObservation) { *out = *in @@ -23002,6 +33022,53 @@ func (in *SiteConfigScmIPRestrictionHeadersParameters) DeepCopy() *SiteConfigScm return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigScmIPRestrictionInitParameters) DeepCopyInto(out *SiteConfigScmIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]SiteConfigScmIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigScmIPRestrictionInitParameters. +func (in *SiteConfigScmIPRestrictionInitParameters) DeepCopy() *SiteConfigScmIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigScmIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigScmIPRestrictionObservation) DeepCopyInto(out *SiteConfigScmIPRestrictionObservation) { *out = *in @@ -23116,6 +33183,43 @@ func (in *SiteConfigScmIPRestrictionParameters) DeepCopy() *SiteConfigScmIPRestr return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteConfigVirtualApplicationInitParameters) DeepCopyInto(out *SiteConfigVirtualApplicationInitParameters) { + *out = *in + if in.PhysicalPath != nil { + in, out := &in.PhysicalPath, &out.PhysicalPath + *out = new(string) + **out = **in + } + if in.Preload != nil { + in, out := &in.Preload, &out.Preload + *out = new(bool) + **out = **in + } + if in.VirtualDirectory != nil { + in, out := &in.VirtualDirectory, &out.VirtualDirectory + *out = make([]VirtualApplicationVirtualDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VirtualPath != nil { + in, out := &in.VirtualPath, &out.VirtualPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteConfigVirtualApplicationInitParameters. +func (in *SiteConfigVirtualApplicationInitParameters) DeepCopy() *SiteConfigVirtualApplicationInitParameters { + if in == nil { + return nil + } + out := new(SiteConfigVirtualApplicationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteConfigVirtualApplicationObservation) DeepCopyInto(out *SiteConfigVirtualApplicationObservation) { *out = *in @@ -23190,6 +33294,21 @@ func (in *SiteConfigVirtualApplicationParameters) DeepCopy() *SiteConfigVirtualA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SiteCredentialInitParameters) DeepCopyInto(out *SiteCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SiteCredentialInitParameters. +func (in *SiteCredentialInitParameters) DeepCopy() *SiteCredentialInitParameters { + if in == nil { + return nil + } + out := new(SiteCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SiteCredentialObservation) DeepCopyInto(out *SiteCredentialObservation) { *out = *in @@ -23230,6 +33349,36 @@ func (in *SiteCredentialParameters) DeepCopy() *SiteCredentialParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SkuInitParameters) DeepCopyInto(out *SkuInitParameters) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(float64) + **out = **in + } + if in.Size != nil { + in, out := &in.Size, &out.Size + *out = new(string) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuInitParameters. +func (in *SkuInitParameters) DeepCopy() *SkuInitParameters { + if in == nil { + return nil + } + out := new(SkuInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SkuObservation) DeepCopyInto(out *SkuObservation) { *out = *in @@ -23290,6 +33439,41 @@ func (in *SkuParameters) DeepCopy() *SkuParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SlowRequestInitParameters) DeepCopyInto(out *SlowRequestInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.TimeTaken != nil { + in, out := &in.TimeTaken, &out.TimeTaken + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SlowRequestInitParameters. +func (in *SlowRequestInitParameters) DeepCopy() *SlowRequestInitParameters { + if in == nil { + return nil + } + out := new(SlowRequestInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SlowRequestObservation) DeepCopyInto(out *SlowRequestObservation) { *out = *in @@ -23360,6 +33544,46 @@ func (in *SlowRequestParameters) DeepCopy() *SlowRequestParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceControlInitParameters) DeepCopyInto(out *SourceControlInitParameters) { + *out = *in + if in.Branch != nil { + in, out := &in.Branch, &out.Branch + *out = new(string) + **out = **in + } + if in.ManualIntegration != nil { + in, out := &in.ManualIntegration, &out.ManualIntegration + *out = new(bool) + **out = **in + } + if in.RepoURL != nil { + in, out := &in.RepoURL, &out.RepoURL + *out = new(string) + **out = **in + } + if in.RollbackEnabled != nil { + in, out := &in.RollbackEnabled, &out.RollbackEnabled + *out = new(bool) + **out = **in + } + if in.UseMercurial != nil { + in, out := &in.UseMercurial, &out.UseMercurial + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceControlInitParameters. +func (in *SourceControlInitParameters) DeepCopy() *SourceControlInitParameters { + if in == nil { + return nil + } + out := new(SourceControlInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SourceControlObservation) DeepCopyInto(out *SourceControlObservation) { *out = *in @@ -23467,6 +33691,26 @@ func (in *SourceControlToken) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceControlTokenInitParameters) DeepCopyInto(out *SourceControlTokenInitParameters) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceControlTokenInitParameters. +func (in *SourceControlTokenInitParameters) DeepCopy() *SourceControlTokenInitParameters { + if in == nil { + return nil + } + out := new(SourceControlTokenInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SourceControlTokenList) DeepCopyInto(out *SourceControlTokenList) { *out = *in @@ -23555,6 +33799,7 @@ func (in *SourceControlTokenSpec) DeepCopyInto(out *SourceControlTokenSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceControlTokenSpec. @@ -23611,6 +33856,37 @@ func (in *StaticSite) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StaticSiteIdentityInitParameters) DeepCopyInto(out *StaticSiteIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaticSiteIdentityInitParameters. +func (in *StaticSiteIdentityInitParameters) DeepCopy() *StaticSiteIdentityInitParameters { + if in == nil { + return nil + } + out := new(StaticSiteIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StaticSiteIdentityObservation) DeepCopyInto(out *StaticSiteIdentityObservation) { *out = *in @@ -23683,6 +33959,58 @@ func (in *StaticSiteIdentityParameters) DeepCopy() *StaticSiteIdentityParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StaticSiteInitParameters) DeepCopyInto(out *StaticSiteInitParameters) { + *out = *in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]StaticSiteIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SkuSize != nil { + in, out := &in.SkuSize, &out.SkuSize + *out = new(string) + **out = **in + } + if in.SkuTier != nil { + in, out := &in.SkuTier, &out.SkuTier + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaticSiteInitParameters. +func (in *StaticSiteInitParameters) DeepCopy() *StaticSiteInitParameters { + if in == nil { + return nil + } + out := new(StaticSiteInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StaticSiteList) DeepCopyInto(out *StaticSiteList) { *out = *in @@ -23854,6 +34182,7 @@ func (in *StaticSiteSpec) DeepCopyInto(out *StaticSiteSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaticSiteSpec. @@ -23883,6 +34212,51 @@ func (in *StaticSiteStatus) DeepCopy() *StaticSiteStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StatusCodeInitParameters) DeepCopyInto(out *StatusCodeInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.StatusCodeRange != nil { + in, out := &in.StatusCodeRange, &out.StatusCodeRange + *out = new(string) + **out = **in + } + if in.SubStatus != nil { + in, out := &in.SubStatus, &out.SubStatus + *out = new(float64) + **out = **in + } + if in.Win32Status != nil { + in, out := &in.Win32Status, &out.Win32Status + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatusCodeInitParameters. +func (in *StatusCodeInitParameters) DeepCopy() *StatusCodeInitParameters { + if in == nil { + return nil + } + out := new(StatusCodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StatusCodeObservation) DeepCopyInto(out *StatusCodeObservation) { *out = *in @@ -23973,6 +34347,43 @@ func (in *StatusCodeParameters) DeepCopy() *StatusCodeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StickySettingsInitParameters) DeepCopyInto(out *StickySettingsInitParameters) { + *out = *in + if in.AppSettingNames != nil { + in, out := &in.AppSettingNames, &out.AppSettingNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionStringNames != nil { + in, out := &in.ConnectionStringNames, &out.ConnectionStringNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StickySettingsInitParameters. +func (in *StickySettingsInitParameters) DeepCopy() *StickySettingsInitParameters { + if in == nil { + return nil + } + out := new(StickySettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StickySettingsObservation) DeepCopyInto(out *StickySettingsObservation) { *out = *in @@ -24047,6 +34458,46 @@ func (in *StickySettingsParameters) DeepCopy() *StickySettingsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *StorageAccountInitParameters) DeepCopyInto(out *StorageAccountInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.MountPath != nil { + in, out := &in.MountPath, &out.MountPath + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ShareName != nil { + in, out := &in.ShareName, &out.ShareName + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageAccountInitParameters. +func (in *StorageAccountInitParameters) DeepCopy() *StorageAccountInitParameters { + if in == nil { + return nil + } + out := new(StorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *StorageAccountObservation) DeepCopyInto(out *StorageAccountObservation) { *out = *in @@ -24128,6 +34579,42 @@ func (in *StorageAccountParameters) DeepCopy() *StorageAccountParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerInitParameters) DeepCopyInto(out *TriggerInitParameters) { + *out = *in + if in.Requests != nil { + in, out := &in.Requests, &out.Requests + *out = make([]RequestsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SlowRequest != nil { + in, out := &in.SlowRequest, &out.SlowRequest + *out = make([]SlowRequestInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StatusCode != nil { + in, out := &in.StatusCode, &out.StatusCode + *out = make([]StatusCodeInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerInitParameters. +func (in *TriggerInitParameters) DeepCopy() *TriggerInitParameters { + if in == nil { + return nil + } + out := new(TriggerInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerObservation) DeepCopyInto(out *TriggerObservation) { *out = *in @@ -24200,6 +34687,31 @@ func (in *TriggerParameters) DeepCopy() *TriggerParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerRequestsInitParameters) DeepCopyInto(out *TriggerRequestsInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerRequestsInitParameters. +func (in *TriggerRequestsInitParameters) DeepCopy() *TriggerRequestsInitParameters { + if in == nil { + return nil + } + out := new(TriggerRequestsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerRequestsObservation) DeepCopyInto(out *TriggerRequestsObservation) { *out = *in @@ -24250,6 +34762,41 @@ func (in *TriggerRequestsParameters) DeepCopy() *TriggerRequestsParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerSlowRequestInitParameters) DeepCopyInto(out *TriggerSlowRequestInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.TimeTaken != nil { + in, out := &in.TimeTaken, &out.TimeTaken + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerSlowRequestInitParameters. +func (in *TriggerSlowRequestInitParameters) DeepCopy() *TriggerSlowRequestInitParameters { + if in == nil { + return nil + } + out := new(TriggerSlowRequestInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerSlowRequestObservation) DeepCopyInto(out *TriggerSlowRequestObservation) { *out = *in @@ -24320,6 +34867,51 @@ func (in *TriggerSlowRequestParameters) DeepCopy() *TriggerSlowRequestParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TriggerStatusCodeInitParameters) DeepCopyInto(out *TriggerStatusCodeInitParameters) { + *out = *in + if in.Count != nil { + in, out := &in.Count, &out.Count + *out = new(float64) + **out = **in + } + if in.Interval != nil { + in, out := &in.Interval, &out.Interval + *out = new(string) + **out = **in + } + if in.Path != nil { + in, out := &in.Path, &out.Path + *out = new(string) + **out = **in + } + if in.StatusCodeRange != nil { + in, out := &in.StatusCodeRange, &out.StatusCodeRange + *out = new(string) + **out = **in + } + if in.SubStatus != nil { + in, out := &in.SubStatus, &out.SubStatus + *out = new(float64) + **out = **in + } + if in.Win32Status != nil { + in, out := &in.Win32Status, &out.Win32Status + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggerStatusCodeInitParameters. +func (in *TriggerStatusCodeInitParameters) DeepCopy() *TriggerStatusCodeInitParameters { + if in == nil { + return nil + } + out := new(TriggerStatusCodeInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TriggerStatusCodeObservation) DeepCopyInto(out *TriggerStatusCodeObservation) { *out = *in @@ -24410,6 +35002,26 @@ func (in *TriggerStatusCodeParameters) DeepCopy() *TriggerStatusCodeParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TwitterInitParameters) DeepCopyInto(out *TwitterInitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwitterInitParameters. +func (in *TwitterInitParameters) DeepCopy() *TwitterInitParameters { + if in == nil { + return nil + } + out := new(TwitterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TwitterObservation) DeepCopyInto(out *TwitterObservation) { *out = *in @@ -24451,6 +35063,31 @@ func (in *TwitterParameters) DeepCopy() *TwitterParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *TwitterV2InitParameters) DeepCopyInto(out *TwitterV2InitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwitterV2InitParameters. +func (in *TwitterV2InitParameters) DeepCopy() *TwitterV2InitParameters { + if in == nil { + return nil + } + out := new(TwitterV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *TwitterV2Observation) DeepCopyInto(out *TwitterV2Observation) { *out = *in @@ -24501,6 +35138,43 @@ func (in *TwitterV2Parameters) DeepCopy() *TwitterV2Parameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualApplicationInitParameters) DeepCopyInto(out *VirtualApplicationInitParameters) { + *out = *in + if in.PhysicalPath != nil { + in, out := &in.PhysicalPath, &out.PhysicalPath + *out = new(string) + **out = **in + } + if in.Preload != nil { + in, out := &in.Preload, &out.Preload + *out = new(bool) + **out = **in + } + if in.VirtualDirectory != nil { + in, out := &in.VirtualDirectory, &out.VirtualDirectory + *out = make([]VirtualDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VirtualPath != nil { + in, out := &in.VirtualPath, &out.VirtualPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualApplicationInitParameters. +func (in *VirtualApplicationInitParameters) DeepCopy() *VirtualApplicationInitParameters { + if in == nil { + return nil + } + out := new(VirtualApplicationInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualApplicationObservation) DeepCopyInto(out *VirtualApplicationObservation) { *out = *in @@ -24575,6 +35249,31 @@ func (in *VirtualApplicationParameters) DeepCopy() *VirtualApplicationParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualApplicationVirtualDirectoryInitParameters) DeepCopyInto(out *VirtualApplicationVirtualDirectoryInitParameters) { + *out = *in + if in.PhysicalPath != nil { + in, out := &in.PhysicalPath, &out.PhysicalPath + *out = new(string) + **out = **in + } + if in.VirtualPath != nil { + in, out := &in.VirtualPath, &out.VirtualPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualApplicationVirtualDirectoryInitParameters. +func (in *VirtualApplicationVirtualDirectoryInitParameters) DeepCopy() *VirtualApplicationVirtualDirectoryInitParameters { + if in == nil { + return nil + } + out := new(VirtualApplicationVirtualDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualApplicationVirtualDirectoryObservation) DeepCopyInto(out *VirtualApplicationVirtualDirectoryObservation) { *out = *in @@ -24625,6 +35324,31 @@ func (in *VirtualApplicationVirtualDirectoryParameters) DeepCopy() *VirtualAppli return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *VirtualDirectoryInitParameters) DeepCopyInto(out *VirtualDirectoryInitParameters) { + *out = *in + if in.PhysicalPath != nil { + in, out := &in.PhysicalPath, &out.PhysicalPath + *out = new(string) + **out = **in + } + if in.VirtualPath != nil { + in, out := &in.VirtualPath, &out.VirtualPath + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualDirectoryInitParameters. +func (in *VirtualDirectoryInitParameters) DeepCopy() *VirtualDirectoryInitParameters { + if in == nil { + return nil + } + out := new(VirtualDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *VirtualDirectoryObservation) DeepCopyInto(out *VirtualDirectoryObservation) { *out = *in @@ -24702,6 +35426,42 @@ func (in *WindowsFunctionApp) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsActiveDirectoryInitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsActiveDirectoryInitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsActiveDirectoryInitParameters. +func (in *WindowsFunctionAppAuthSettingsActiveDirectoryInitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsActiveDirectoryObservation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsActiveDirectoryObservation) { *out = *in @@ -24779,6 +35539,42 @@ func (in *WindowsFunctionAppAuthSettingsActiveDirectoryParameters) DeepCopy() *W return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsFacebookInitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsFacebookInitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsFacebookInitParameters. +func (in *WindowsFunctionAppAuthSettingsFacebookInitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsFacebookInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsFacebookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsFacebookObservation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsFacebookObservation) { *out = *in @@ -24856,6 +35652,42 @@ func (in *WindowsFunctionAppAuthSettingsFacebookParameters) DeepCopy() *WindowsF return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsGithubInitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsGithubInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsGithubInitParameters. +func (in *WindowsFunctionAppAuthSettingsGithubInitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsGithubInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsGithubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsGithubObservation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsGithubObservation) { *out = *in @@ -24933,6 +35765,42 @@ func (in *WindowsFunctionAppAuthSettingsGithubParameters) DeepCopy() *WindowsFun return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsGoogleInitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsGoogleInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsGoogleInitParameters. +func (in *WindowsFunctionAppAuthSettingsGoogleInitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsGoogleInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsGoogleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsGoogleObservation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsGoogleObservation) { *out = *in @@ -25010,6 +35878,160 @@ func (in *WindowsFunctionAppAuthSettingsGoogleParameters) DeepCopy() *WindowsFun return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsInitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]WindowsFunctionAppAuthSettingsActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalLoginParameters != nil { + in, out := &in.AdditionalLoginParameters, &out.AdditionalLoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Facebook != nil { + in, out := &in.Facebook, &out.Facebook + *out = make([]WindowsFunctionAppAuthSettingsFacebookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Github != nil { + in, out := &in.Github, &out.Github + *out = make([]WindowsFunctionAppAuthSettingsGithubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Google != nil { + in, out := &in.Google, &out.Google + *out = make([]WindowsFunctionAppAuthSettingsGoogleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Microsoft != nil { + in, out := &in.Microsoft, &out.Microsoft + *out = make([]WindowsFunctionAppAuthSettingsMicrosoftInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TokenRefreshExtensionHours != nil { + in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.Twitter != nil { + in, out := &in.Twitter, &out.Twitter + *out = make([]WindowsFunctionAppAuthSettingsTwitterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedClientAction != nil { + in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsInitParameters. +func (in *WindowsFunctionAppAuthSettingsInitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsMicrosoftInitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsMicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsMicrosoftInitParameters. +func (in *WindowsFunctionAppAuthSettingsMicrosoftInitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsMicrosoftInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsMicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsMicrosoftObservation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsMicrosoftObservation) { *out = *in @@ -25323,6 +36345,31 @@ func (in *WindowsFunctionAppAuthSettingsParameters) DeepCopy() *WindowsFunctionA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsTwitterInitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsTwitterInitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsTwitterInitParameters. +func (in *WindowsFunctionAppAuthSettingsTwitterInitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsTwitterInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsTwitterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsTwitterObservation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsTwitterObservation) { *out = *in @@ -25343,37 +36390,158 @@ func (in *WindowsFunctionAppAuthSettingsTwitterObservation) DeepCopy() *WindowsF if in == nil { return nil } - out := new(WindowsFunctionAppAuthSettingsTwitterObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsFunctionAppAuthSettingsTwitterParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsTwitterParameters) { - *out = *in - if in.ConsumerKey != nil { - in, out := &in.ConsumerKey, &out.ConsumerKey + out := new(WindowsFunctionAppAuthSettingsTwitterObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsTwitterParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsTwitterParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSecretRef != nil { + in, out := &in.ConsumerSecretSecretRef, &out.ConsumerSecretSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsTwitterParameters. +func (in *WindowsFunctionAppAuthSettingsTwitterParameters) DeepCopy() *WindowsFunctionAppAuthSettingsTwitterParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsTwitterParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2InitParameters) { + *out = *in + if in.AllowedApplications != nil { + in, out := &in.AllowedApplications, &out.AllowedApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedGroups != nil { + in, out := &in.AllowedGroups, &out.AllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedIdentities != nil { + in, out := &in.AllowedIdentities, &out.AllowedIdentities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretCertificateThumbprint != nil { + in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint *out = new(string) **out = **in } - if in.ConsumerSecretSecretRef != nil { - in, out := &in.ConsumerSecretSecretRef, &out.ConsumerSecretSecretRef - *out = new(v1.SecretKeySelector) + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) **out = **in } - if in.ConsumerSecretSettingName != nil { - in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + if in.JwtAllowedClientApplications != nil { + in, out := &in.JwtAllowedClientApplications, &out.JwtAllowedClientApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.JwtAllowedGroups != nil { + in, out := &in.JwtAllowedGroups, &out.JwtAllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoginParameters != nil { + in, out := &in.LoginParameters, &out.LoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantAuthEndpoint != nil { + in, out := &in.TenantAuthEndpoint, &out.TenantAuthEndpoint *out = new(string) **out = **in } + if in.WwwAuthenticationDisabled != nil { + in, out := &in.WwwAuthenticationDisabled, &out.WwwAuthenticationDisabled + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsTwitterParameters. -func (in *WindowsFunctionAppAuthSettingsTwitterParameters) DeepCopy() *WindowsFunctionAppAuthSettingsTwitterParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2InitParameters. +func (in *WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2InitParameters { if in == nil { return nil } - out := new(WindowsFunctionAppAuthSettingsTwitterParameters) + out := new(WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2InitParameters) in.DeepCopyInto(out) return out } @@ -25620,6 +36788,31 @@ func (in *WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2Parameters) DeepCopy( return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2AppleV2InitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2AppleV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2AppleV2InitParameters. +func (in *WindowsFunctionAppAuthSettingsV2AppleV2InitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2AppleV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsV2AppleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsV2AppleV2Observation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2AppleV2Observation) { *out = *in @@ -25681,6 +36874,26 @@ func (in *WindowsFunctionAppAuthSettingsV2AppleV2Parameters) DeepCopy() *Windows return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2InitParameters. +func (in *WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2Observation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2Observation) { *out = *in @@ -25721,6 +36934,52 @@ func (in *WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2Parameters) DeepCop return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2CustomOidcV2InitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2CustomOidcV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NameClaimType != nil { + in, out := &in.NameClaimType, &out.NameClaimType + *out = new(string) + **out = **in + } + if in.OpenIDConfigurationEndpoint != nil { + in, out := &in.OpenIDConfigurationEndpoint, &out.OpenIDConfigurationEndpoint + *out = new(string) + **out = **in + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2CustomOidcV2InitParameters. +func (in *WindowsFunctionAppAuthSettingsV2CustomOidcV2InitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2CustomOidcV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsV2CustomOidcV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsV2CustomOidcV2Observation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2CustomOidcV2Observation) { *out = *in @@ -25843,6 +37102,47 @@ func (in *WindowsFunctionAppAuthSettingsV2CustomOidcV2Parameters) DeepCopy() *Wi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2FacebookV2InitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2FacebookV2InitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.GraphAPIVersion != nil { + in, out := &in.GraphAPIVersion, &out.GraphAPIVersion + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2FacebookV2InitParameters. +func (in *WindowsFunctionAppAuthSettingsV2FacebookV2InitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2FacebookV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsV2FacebookV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsV2FacebookV2Observation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2FacebookV2Observation) { *out = *in @@ -25925,6 +37225,42 @@ func (in *WindowsFunctionAppAuthSettingsV2FacebookV2Parameters) DeepCopy() *Wind return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2GithubV2InitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2GithubV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2GithubV2InitParameters. +func (in *WindowsFunctionAppAuthSettingsV2GithubV2InitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2GithubV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsV2GithubV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsV2GithubV2Observation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2GithubV2Observation) { *out = *in @@ -25997,6 +37333,53 @@ func (in *WindowsFunctionAppAuthSettingsV2GithubV2Parameters) DeepCopy() *Window return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2GoogleV2InitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2GoogleV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2GoogleV2InitParameters. +func (in *WindowsFunctionAppAuthSettingsV2GoogleV2InitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2GoogleV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsV2GoogleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsV2GoogleV2Observation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2GoogleV2Observation) { *out = *in @@ -26091,6 +37474,233 @@ func (in *WindowsFunctionAppAuthSettingsV2GoogleV2Parameters) DeepCopy() *Window return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2InitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2InitParameters) { + *out = *in + if in.ActiveDirectoryV2 != nil { + in, out := &in.ActiveDirectoryV2, &out.ActiveDirectoryV2 + *out = make([]WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AppleV2 != nil { + in, out := &in.AppleV2, &out.AppleV2 + *out = make([]WindowsFunctionAppAuthSettingsV2AppleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthEnabled != nil { + in, out := &in.AuthEnabled, &out.AuthEnabled + *out = new(bool) + **out = **in + } + if in.AzureStaticWebAppV2 != nil { + in, out := &in.AzureStaticWebAppV2, &out.AzureStaticWebAppV2 + *out = make([]WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConfigFilePath != nil { + in, out := &in.ConfigFilePath, &out.ConfigFilePath + *out = new(string) + **out = **in + } + if in.CustomOidcV2 != nil { + in, out := &in.CustomOidcV2, &out.CustomOidcV2 + *out = make([]WindowsFunctionAppAuthSettingsV2CustomOidcV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.ExcludedPaths != nil { + in, out := &in.ExcludedPaths, &out.ExcludedPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FacebookV2 != nil { + in, out := &in.FacebookV2, &out.FacebookV2 + *out = make([]WindowsFunctionAppAuthSettingsV2FacebookV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForwardProxyConvention != nil { + in, out := &in.ForwardProxyConvention, &out.ForwardProxyConvention + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomHostHeaderName != nil { + in, out := &in.ForwardProxyCustomHostHeaderName, &out.ForwardProxyCustomHostHeaderName + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomSchemeHeaderName != nil { + in, out := &in.ForwardProxyCustomSchemeHeaderName, &out.ForwardProxyCustomSchemeHeaderName + *out = new(string) + **out = **in + } + if in.GithubV2 != nil { + in, out := &in.GithubV2, &out.GithubV2 + *out = make([]WindowsFunctionAppAuthSettingsV2GithubV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GoogleV2 != nil { + in, out := &in.GoogleV2, &out.GoogleV2 + *out = make([]WindowsFunctionAppAuthSettingsV2GoogleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPRouteAPIPrefix != nil { + in, out := &in.HTTPRouteAPIPrefix, &out.HTTPRouteAPIPrefix + *out = new(string) + **out = **in + } + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = make([]WindowsFunctionAppAuthSettingsV2LoginInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MicrosoftV2 != nil { + in, out := &in.MicrosoftV2, &out.MicrosoftV2 + *out = make([]WindowsFunctionAppAuthSettingsV2MicrosoftV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequireAuthentication != nil { + in, out := &in.RequireAuthentication, &out.RequireAuthentication + *out = new(bool) + **out = **in + } + if in.RequireHTTPS != nil { + in, out := &in.RequireHTTPS, &out.RequireHTTPS + *out = new(bool) + **out = **in + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TwitterV2 != nil { + in, out := &in.TwitterV2, &out.TwitterV2 + *out = make([]WindowsFunctionAppAuthSettingsV2TwitterV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedAction != nil { + in, out := &in.UnauthenticatedAction, &out.UnauthenticatedAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2InitParameters. +func (in *WindowsFunctionAppAuthSettingsV2InitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsV2InitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2LoginInitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2LoginInitParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2LoginInitParameters. +func (in *WindowsFunctionAppAuthSettingsV2LoginInitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2LoginInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsV2LoginInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsV2LoginObservation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2LoginObservation) { *out = *in @@ -26243,6 +37853,53 @@ func (in *WindowsFunctionAppAuthSettingsV2LoginParameters) DeepCopy() *WindowsFu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2MicrosoftV2InitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2MicrosoftV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2MicrosoftV2InitParameters. +func (in *WindowsFunctionAppAuthSettingsV2MicrosoftV2InitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2MicrosoftV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsV2MicrosoftV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsV2MicrosoftV2Observation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2MicrosoftV2Observation) { *out = *in @@ -26639,6 +38296,31 @@ func (in *WindowsFunctionAppAuthSettingsV2Parameters) DeepCopy() *WindowsFunctio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppAuthSettingsV2TwitterV2InitParameters) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2TwitterV2InitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppAuthSettingsV2TwitterV2InitParameters. +func (in *WindowsFunctionAppAuthSettingsV2TwitterV2InitParameters) DeepCopy() *WindowsFunctionAppAuthSettingsV2TwitterV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppAuthSettingsV2TwitterV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppAuthSettingsV2TwitterV2Observation) DeepCopyInto(out *WindowsFunctionAppAuthSettingsV2TwitterV2Observation) { *out = *in @@ -26689,6 +38371,38 @@ func (in *WindowsFunctionAppAuthSettingsV2TwitterV2Parameters) DeepCopy() *Windo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppBackupInitParameters) DeepCopyInto(out *WindowsFunctionAppBackupInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]WindowsFunctionAppBackupScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppBackupInitParameters. +func (in *WindowsFunctionAppBackupInitParameters) DeepCopy() *WindowsFunctionAppBackupInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppBackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppBackupObservation) DeepCopyInto(out *WindowsFunctionAppBackupObservation) { *out = *in @@ -26754,6 +38468,46 @@ func (in *WindowsFunctionAppBackupParameters) DeepCopy() *WindowsFunctionAppBack return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppBackupScheduleInitParameters) DeepCopyInto(out *WindowsFunctionAppBackupScheduleInitParameters) { + *out = *in + if in.FrequencyInterval != nil { + in, out := &in.FrequencyInterval, &out.FrequencyInterval + *out = new(float64) + **out = **in + } + if in.FrequencyUnit != nil { + in, out := &in.FrequencyUnit, &out.FrequencyUnit + *out = new(string) + **out = **in + } + if in.KeepAtLeastOneBackup != nil { + in, out := &in.KeepAtLeastOneBackup, &out.KeepAtLeastOneBackup + *out = new(bool) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppBackupScheduleInitParameters. +func (in *WindowsFunctionAppBackupScheduleInitParameters) DeepCopy() *WindowsFunctionAppBackupScheduleInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppBackupScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppBackupScheduleObservation) DeepCopyInto(out *WindowsFunctionAppBackupScheduleObservation) { *out = *in @@ -26839,6 +38593,31 @@ func (in *WindowsFunctionAppBackupScheduleParameters) DeepCopy() *WindowsFunctio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppConnectionStringInitParameters) DeepCopyInto(out *WindowsFunctionAppConnectionStringInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppConnectionStringInitParameters. +func (in *WindowsFunctionAppConnectionStringInitParameters) DeepCopy() *WindowsFunctionAppConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppConnectionStringObservation) DeepCopyInto(out *WindowsFunctionAppConnectionStringObservation) { *out = *in @@ -26890,6 +38669,37 @@ func (in *WindowsFunctionAppConnectionStringParameters) DeepCopy() *WindowsFunct return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppIdentityInitParameters) DeepCopyInto(out *WindowsFunctionAppIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppIdentityInitParameters. +func (in *WindowsFunctionAppIdentityInitParameters) DeepCopy() *WindowsFunctionAppIdentityInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppIdentityObservation) DeepCopyInto(out *WindowsFunctionAppIdentityObservation) { *out = *in @@ -26962,6 +38772,177 @@ func (in *WindowsFunctionAppIdentityParameters) DeepCopy() *WindowsFunctionAppId return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppInitParameters) DeepCopyInto(out *WindowsFunctionAppInitParameters) { + *out = *in + if in.AppSettings != nil { + in, out := &in.AppSettings, &out.AppSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AuthSettings != nil { + in, out := &in.AuthSettings, &out.AuthSettings + *out = make([]WindowsFunctionAppAuthSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthSettingsV2 != nil { + in, out := &in.AuthSettingsV2, &out.AuthSettingsV2 + *out = make([]WindowsFunctionAppAuthSettingsV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]WindowsFunctionAppBackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BuiltinLoggingEnabled != nil { + in, out := &in.BuiltinLoggingEnabled, &out.BuiltinLoggingEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateEnabled != nil { + in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateExclusionPaths != nil { + in, out := &in.ClientCertificateExclusionPaths, &out.ClientCertificateExclusionPaths + *out = new(string) + **out = **in + } + if in.ClientCertificateMode != nil { + in, out := &in.ClientCertificateMode, &out.ClientCertificateMode + *out = new(string) + **out = **in + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = make([]WindowsFunctionAppConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ContentShareForceDisabled != nil { + in, out := &in.ContentShareForceDisabled, &out.ContentShareForceDisabled + *out = new(bool) + **out = **in + } + if in.DailyMemoryTimeQuota != nil { + in, out := &in.DailyMemoryTimeQuota, &out.DailyMemoryTimeQuota + *out = new(float64) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.FunctionsExtensionVersion != nil { + in, out := &in.FunctionsExtensionVersion, &out.FunctionsExtensionVersion + *out = new(string) + **out = **in + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]WindowsFunctionAppIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultReferenceIdentityID != nil { + in, out := &in.KeyVaultReferenceIdentityID, &out.KeyVaultReferenceIdentityID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.SiteConfig != nil { + in, out := &in.SiteConfig, &out.SiteConfig + *out = make([]WindowsFunctionAppSiteConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StickySettings != nil { + in, out := &in.StickySettings, &out.StickySettings + *out = make([]WindowsFunctionAppStickySettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]WindowsFunctionAppStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageKeyVaultSecretID != nil { + in, out := &in.StorageKeyVaultSecretID, &out.StorageKeyVaultSecretID + *out = new(string) + **out = **in + } + if in.StorageUsesManagedIdentity != nil { + in, out := &in.StorageUsesManagedIdentity, &out.StorageUsesManagedIdentity + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZipDeployFile != nil { + in, out := &in.ZipDeployFile, &out.ZipDeployFile + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppInitParameters. +func (in *WindowsFunctionAppInitParameters) DeepCopy() *WindowsFunctionAppInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppList) DeepCopyInto(out *WindowsFunctionAppList) { *out = *in @@ -27473,6 +39454,31 @@ func (in *WindowsFunctionAppParameters) DeepCopy() *WindowsFunctionAppParameters return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSiteConfigAppServiceLogsInitParameters) DeepCopyInto(out *WindowsFunctionAppSiteConfigAppServiceLogsInitParameters) { + *out = *in + if in.DiskQuotaMb != nil { + in, out := &in.DiskQuotaMb, &out.DiskQuotaMb + *out = new(float64) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSiteConfigAppServiceLogsInitParameters. +func (in *WindowsFunctionAppSiteConfigAppServiceLogsInitParameters) DeepCopy() *WindowsFunctionAppSiteConfigAppServiceLogsInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSiteConfigAppServiceLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSiteConfigAppServiceLogsObservation) DeepCopyInto(out *WindowsFunctionAppSiteConfigAppServiceLogsObservation) { *out = *in @@ -27523,6 +39529,51 @@ func (in *WindowsFunctionAppSiteConfigAppServiceLogsParameters) DeepCopy() *Wind return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSiteConfigApplicationStackInitParameters) DeepCopyInto(out *WindowsFunctionAppSiteConfigApplicationStackInitParameters) { + *out = *in + if in.DotnetVersion != nil { + in, out := &in.DotnetVersion, &out.DotnetVersion + *out = new(string) + **out = **in + } + if in.JavaVersion != nil { + in, out := &in.JavaVersion, &out.JavaVersion + *out = new(string) + **out = **in + } + if in.NodeVersion != nil { + in, out := &in.NodeVersion, &out.NodeVersion + *out = new(string) + **out = **in + } + if in.PowershellCoreVersion != nil { + in, out := &in.PowershellCoreVersion, &out.PowershellCoreVersion + *out = new(string) + **out = **in + } + if in.UseCustomRuntime != nil { + in, out := &in.UseCustomRuntime, &out.UseCustomRuntime + *out = new(bool) + **out = **in + } + if in.UseDotnetIsolatedRuntime != nil { + in, out := &in.UseDotnetIsolatedRuntime, &out.UseDotnetIsolatedRuntime + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSiteConfigApplicationStackInitParameters. +func (in *WindowsFunctionAppSiteConfigApplicationStackInitParameters) DeepCopy() *WindowsFunctionAppSiteConfigApplicationStackInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSiteConfigApplicationStackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSiteConfigApplicationStackObservation) DeepCopyInto(out *WindowsFunctionAppSiteConfigApplicationStackObservation) { *out = *in @@ -27613,6 +39664,37 @@ func (in *WindowsFunctionAppSiteConfigApplicationStackParameters) DeepCopy() *Wi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSiteConfigCorsInitParameters) DeepCopyInto(out *WindowsFunctionAppSiteConfigCorsInitParameters) { + *out = *in + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportCredentials != nil { + in, out := &in.SupportCredentials, &out.SupportCredentials + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSiteConfigCorsInitParameters. +func (in *WindowsFunctionAppSiteConfigCorsInitParameters) DeepCopy() *WindowsFunctionAppSiteConfigCorsInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSiteConfigCorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSiteConfigCorsObservation) DeepCopyInto(out *WindowsFunctionAppSiteConfigCorsObservation) { *out = *in @@ -27675,6 +39757,65 @@ func (in *WindowsFunctionAppSiteConfigCorsParameters) DeepCopy() *WindowsFunctio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSiteConfigIPRestrictionHeadersInitParameters) DeepCopyInto(out *WindowsFunctionAppSiteConfigIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSiteConfigIPRestrictionHeadersInitParameters. +func (in *WindowsFunctionAppSiteConfigIPRestrictionHeadersInitParameters) DeepCopy() *WindowsFunctionAppSiteConfigIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSiteConfigIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSiteConfigIPRestrictionHeadersObservation) DeepCopyInto(out *WindowsFunctionAppSiteConfigIPRestrictionHeadersObservation) { *out = *in @@ -27793,6 +39934,53 @@ func (in *WindowsFunctionAppSiteConfigIPRestrictionHeadersParameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSiteConfigIPRestrictionInitParameters) DeepCopyInto(out *WindowsFunctionAppSiteConfigIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WindowsFunctionAppSiteConfigIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSiteConfigIPRestrictionInitParameters. +func (in *WindowsFunctionAppSiteConfigIPRestrictionInitParameters) DeepCopy() *WindowsFunctionAppSiteConfigIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSiteConfigIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSiteConfigIPRestrictionObservation) DeepCopyInto(out *WindowsFunctionAppSiteConfigIPRestrictionObservation) { *out = *in @@ -27907,6 +40095,182 @@ func (in *WindowsFunctionAppSiteConfigIPRestrictionParameters) DeepCopy() *Windo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSiteConfigInitParameters) DeepCopyInto(out *WindowsFunctionAppSiteConfigInitParameters) { + *out = *in + if in.APIDefinitionURL != nil { + in, out := &in.APIDefinitionURL, &out.APIDefinitionURL + *out = new(string) + **out = **in + } + if in.APIManagementAPIID != nil { + in, out := &in.APIManagementAPIID, &out.APIManagementAPIID + *out = new(string) + **out = **in + } + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppCommandLine != nil { + in, out := &in.AppCommandLine, &out.AppCommandLine + *out = new(string) + **out = **in + } + if in.AppScaleLimit != nil { + in, out := &in.AppScaleLimit, &out.AppScaleLimit + *out = new(float64) + **out = **in + } + if in.AppServiceLogs != nil { + in, out := &in.AppServiceLogs, &out.AppServiceLogs + *out = make([]WindowsFunctionAppSiteConfigAppServiceLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ApplicationStack != nil { + in, out := &in.ApplicationStack, &out.ApplicationStack + *out = make([]WindowsFunctionAppSiteConfigApplicationStackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]WindowsFunctionAppSiteConfigCorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDocuments != nil { + in, out := &in.DefaultDocuments, &out.DefaultDocuments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ElasticInstanceMinimum != nil { + in, out := &in.ElasticInstanceMinimum, &out.ElasticInstanceMinimum + *out = new(float64) + **out = **in + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckEvictionTimeInMin != nil { + in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin + *out = new(float64) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]WindowsFunctionAppSiteConfigIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancingMode != nil { + in, out := &in.LoadBalancingMode, &out.LoadBalancingMode + *out = new(string) + **out = **in + } + if in.ManagedPipelineMode != nil { + in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.PreWarmedInstanceCount != nil { + in, out := &in.PreWarmedInstanceCount, &out.PreWarmedInstanceCount + *out = new(float64) + **out = **in + } + if in.RemoteDebuggingEnabled != nil { + in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled + *out = new(bool) + **out = **in + } + if in.RemoteDebuggingVersion != nil { + in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion + *out = new(string) + **out = **in + } + if in.RuntimeScaleMonitoringEnabled != nil { + in, out := &in.RuntimeScaleMonitoringEnabled, &out.RuntimeScaleMonitoringEnabled + *out = new(bool) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]WindowsFunctionAppSiteConfigScmIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmMinimumTLSVersion != nil { + in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorker != nil { + in, out := &in.Use32BitWorker, &out.Use32BitWorker + *out = new(bool) + **out = **in + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSiteConfigInitParameters. +func (in *WindowsFunctionAppSiteConfigInitParameters) DeepCopy() *WindowsFunctionAppSiteConfigInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSiteConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSiteConfigObservation) DeepCopyInto(out *WindowsFunctionAppSiteConfigObservation) { *out = *in @@ -28284,6 +40648,65 @@ func (in *WindowsFunctionAppSiteConfigParameters) DeepCopy() *WindowsFunctionApp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopyInto(out *WindowsFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters. +func (in *WindowsFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopy() *WindowsFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSiteConfigScmIPRestrictionHeadersObservation) DeepCopyInto(out *WindowsFunctionAppSiteConfigScmIPRestrictionHeadersObservation) { *out = *in @@ -28402,6 +40825,53 @@ func (in *WindowsFunctionAppSiteConfigScmIPRestrictionHeadersParameters) DeepCop return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSiteConfigScmIPRestrictionInitParameters) DeepCopyInto(out *WindowsFunctionAppSiteConfigScmIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WindowsFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSiteConfigScmIPRestrictionInitParameters. +func (in *WindowsFunctionAppSiteConfigScmIPRestrictionInitParameters) DeepCopy() *WindowsFunctionAppSiteConfigScmIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSiteConfigScmIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSiteConfigScmIPRestrictionObservation) DeepCopyInto(out *WindowsFunctionAppSiteConfigScmIPRestrictionObservation) { *out = *in @@ -28516,6 +40986,21 @@ func (in *WindowsFunctionAppSiteConfigScmIPRestrictionParameters) DeepCopy() *Wi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSiteCredentialInitParameters) DeepCopyInto(out *WindowsFunctionAppSiteCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSiteCredentialInitParameters. +func (in *WindowsFunctionAppSiteCredentialInitParameters) DeepCopy() *WindowsFunctionAppSiteCredentialInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSiteCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSiteCredentialObservation) DeepCopyInto(out *WindowsFunctionAppSiteCredentialObservation) { *out = *in @@ -28583,6 +41068,42 @@ func (in *WindowsFunctionAppSlot) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsActiveDirectoryInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsActiveDirectoryInitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsActiveDirectoryInitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsActiveDirectoryInitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsActiveDirectoryObservation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsActiveDirectoryObservation) { *out = *in @@ -28660,6 +41181,42 @@ func (in *WindowsFunctionAppSlotAuthSettingsActiveDirectoryParameters) DeepCopy( return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsFacebookInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsFacebookInitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsFacebookInitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsFacebookInitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsFacebookInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsFacebookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsFacebookObservation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsFacebookObservation) { *out = *in @@ -28737,6 +41294,42 @@ func (in *WindowsFunctionAppSlotAuthSettingsFacebookParameters) DeepCopy() *Wind return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsGithubInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsGithubInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsGithubInitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsGithubInitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsGithubInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsGithubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsGithubObservation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsGithubObservation) { *out = *in @@ -28814,6 +41407,42 @@ func (in *WindowsFunctionAppSlotAuthSettingsGithubParameters) DeepCopy() *Window return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsGoogleInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsGoogleInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsGoogleInitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsGoogleInitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsGoogleInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsGoogleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsGoogleObservation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsGoogleObservation) { *out = *in @@ -28891,6 +41520,160 @@ func (in *WindowsFunctionAppSlotAuthSettingsGoogleParameters) DeepCopy() *Window return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]WindowsFunctionAppSlotAuthSettingsActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalLoginParameters != nil { + in, out := &in.AdditionalLoginParameters, &out.AdditionalLoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Facebook != nil { + in, out := &in.Facebook, &out.Facebook + *out = make([]WindowsFunctionAppSlotAuthSettingsFacebookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Github != nil { + in, out := &in.Github, &out.Github + *out = make([]WindowsFunctionAppSlotAuthSettingsGithubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Google != nil { + in, out := &in.Google, &out.Google + *out = make([]WindowsFunctionAppSlotAuthSettingsGoogleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Microsoft != nil { + in, out := &in.Microsoft, &out.Microsoft + *out = make([]WindowsFunctionAppSlotAuthSettingsMicrosoftInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TokenRefreshExtensionHours != nil { + in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.Twitter != nil { + in, out := &in.Twitter, &out.Twitter + *out = make([]WindowsFunctionAppSlotAuthSettingsTwitterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedClientAction != nil { + in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsInitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsInitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsMicrosoftInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsMicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsMicrosoftInitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsMicrosoftInitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsMicrosoftInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsMicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsMicrosoftObservation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsMicrosoftObservation) { *out = *in @@ -29204,6 +41987,31 @@ func (in *WindowsFunctionAppSlotAuthSettingsParameters) DeepCopy() *WindowsFunct return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsTwitterInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsTwitterInitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsTwitterInitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsTwitterInitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsTwitterInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsTwitterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsTwitterObservation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsTwitterObservation) { *out = *in @@ -29259,6 +42067,127 @@ func (in *WindowsFunctionAppSlotAuthSettingsTwitterParameters) DeepCopy() *Windo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) { + *out = *in + if in.AllowedApplications != nil { + in, out := &in.AllowedApplications, &out.AllowedApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedGroups != nil { + in, out := &in.AllowedGroups, &out.AllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedIdentities != nil { + in, out := &in.AllowedIdentities, &out.AllowedIdentities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretCertificateThumbprint != nil { + in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.JwtAllowedClientApplications != nil { + in, out := &in.JwtAllowedClientApplications, &out.JwtAllowedClientApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.JwtAllowedGroups != nil { + in, out := &in.JwtAllowedGroups, &out.JwtAllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoginParameters != nil { + in, out := &in.LoginParameters, &out.LoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantAuthEndpoint != nil { + in, out := &in.TenantAuthEndpoint, &out.TenantAuthEndpoint + *out = new(string) + **out = **in + } + if in.WwwAuthenticationDisabled != nil { + in, out := &in.WwwAuthenticationDisabled, &out.WwwAuthenticationDisabled + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2Observation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2Observation) { *out = *in @@ -29501,6 +42430,31 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2Parameters) DeepC return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2AppleV2InitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2AppleV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2AppleV2InitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2AppleV2InitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2AppleV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2AppleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsV2AppleV2Observation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2AppleV2Observation) { *out = *in @@ -29562,6 +42516,26 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2AppleV2Parameters) DeepCopy() *Win return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2Observation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2Observation) { *out = *in @@ -29602,6 +42576,52 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters) Dee return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2InitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NameClaimType != nil { + in, out := &in.NameClaimType, &out.NameClaimType + *out = new(string) + **out = **in + } + if in.OpenIDConfigurationEndpoint != nil { + in, out := &in.OpenIDConfigurationEndpoint, &out.OpenIDConfigurationEndpoint + *out = new(string) + **out = **in + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2InitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2InitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2Observation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2Observation) { *out = *in @@ -29724,6 +42744,47 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2Parameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2FacebookV2InitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2FacebookV2InitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.GraphAPIVersion != nil { + in, out := &in.GraphAPIVersion, &out.GraphAPIVersion + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2FacebookV2InitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2FacebookV2InitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2FacebookV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2FacebookV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsV2FacebookV2Observation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2FacebookV2Observation) { *out = *in @@ -29806,6 +42867,42 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2FacebookV2Parameters) DeepCopy() * return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2GithubV2InitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2GithubV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2GithubV2InitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2GithubV2InitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2GithubV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2GithubV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsV2GithubV2Observation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2GithubV2Observation) { *out = *in @@ -29878,6 +42975,53 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2GithubV2Parameters) DeepCopy() *Wi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2InitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2GoogleV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2GoogleV2InitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2InitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2GoogleV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2GoogleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation) { *out = *in @@ -29915,21 +43059,111 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation) DeepCopyInto( } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation. -func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation. +func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters { if in == nil { return nil } - out := new(WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation) + out := new(WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters) { +func (in *WindowsFunctionAppSlotAuthSettingsV2InitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2InitParameters) { *out = *in - if in.AllowedAudiences != nil { - in, out := &in.AllowedAudiences, &out.AllowedAudiences + if in.ActiveDirectoryV2 != nil { + in, out := &in.ActiveDirectoryV2, &out.ActiveDirectoryV2 + *out = make([]WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AppleV2 != nil { + in, out := &in.AppleV2, &out.AppleV2 + *out = make([]WindowsFunctionAppSlotAuthSettingsV2AppleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthEnabled != nil { + in, out := &in.AuthEnabled, &out.AuthEnabled + *out = new(bool) + **out = **in + } + if in.AzureStaticWebAppV2 != nil { + in, out := &in.AzureStaticWebAppV2, &out.AzureStaticWebAppV2 + *out = make([]WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConfigFilePath != nil { + in, out := &in.ConfigFilePath, &out.ConfigFilePath + *out = new(string) + **out = **in + } + if in.CustomOidcV2 != nil { + in, out := &in.CustomOidcV2, &out.CustomOidcV2 + *out = make([]WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.ExcludedPaths != nil { + in, out := &in.ExcludedPaths, &out.ExcludedPaths *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -29939,18 +43173,105 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopyInto(o } } } - if in.ClientID != nil { - in, out := &in.ClientID, &out.ClientID + if in.FacebookV2 != nil { + in, out := &in.FacebookV2, &out.FacebookV2 + *out = make([]WindowsFunctionAppSlotAuthSettingsV2FacebookV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForwardProxyConvention != nil { + in, out := &in.ForwardProxyConvention, &out.ForwardProxyConvention *out = new(string) **out = **in } - if in.ClientSecretSettingName != nil { - in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + if in.ForwardProxyCustomHostHeaderName != nil { + in, out := &in.ForwardProxyCustomHostHeaderName, &out.ForwardProxyCustomHostHeaderName *out = new(string) **out = **in } - if in.LoginScopes != nil { - in, out := &in.LoginScopes, &out.LoginScopes + if in.ForwardProxyCustomSchemeHeaderName != nil { + in, out := &in.ForwardProxyCustomSchemeHeaderName, &out.ForwardProxyCustomSchemeHeaderName + *out = new(string) + **out = **in + } + if in.GithubV2 != nil { + in, out := &in.GithubV2, &out.GithubV2 + *out = make([]WindowsFunctionAppSlotAuthSettingsV2GithubV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GoogleV2 != nil { + in, out := &in.GoogleV2, &out.GoogleV2 + *out = make([]WindowsFunctionAppSlotAuthSettingsV2GoogleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPRouteAPIPrefix != nil { + in, out := &in.HTTPRouteAPIPrefix, &out.HTTPRouteAPIPrefix + *out = new(string) + **out = **in + } + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = make([]WindowsFunctionAppSlotAuthSettingsV2LoginInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MicrosoftV2 != nil { + in, out := &in.MicrosoftV2, &out.MicrosoftV2 + *out = make([]WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequireAuthentication != nil { + in, out := &in.RequireAuthentication, &out.RequireAuthentication + *out = new(bool) + **out = **in + } + if in.RequireHTTPS != nil { + in, out := &in.RequireHTTPS, &out.RequireHTTPS + *out = new(bool) + **out = **in + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TwitterV2 != nil { + in, out := &in.TwitterV2, &out.TwitterV2 + *out = make([]WindowsFunctionAppSlotAuthSettingsV2TwitterV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedAction != nil { + in, out := &in.UnauthenticatedAction, &out.UnauthenticatedAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2InitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2InitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2InitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2LoginInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2LoginInitParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -29960,14 +43281,64 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopyInto(o } } } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters. -func (in *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2LoginInitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2LoginInitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2LoginInitParameters { if in == nil { return nil } - out := new(WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters) + out := new(WindowsFunctionAppSlotAuthSettingsV2LoginInitParameters) in.DeepCopyInto(out) return out } @@ -30124,6 +43495,53 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2LoginParameters) DeepCopy() *Windo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2InitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2InitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2InitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2Observation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2Observation) { *out = *in @@ -30520,6 +43938,31 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2Parameters) DeepCopy() *WindowsFun return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotAuthSettingsV2TwitterV2InitParameters) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2TwitterV2InitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotAuthSettingsV2TwitterV2InitParameters. +func (in *WindowsFunctionAppSlotAuthSettingsV2TwitterV2InitParameters) DeepCopy() *WindowsFunctionAppSlotAuthSettingsV2TwitterV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotAuthSettingsV2TwitterV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotAuthSettingsV2TwitterV2Observation) DeepCopyInto(out *WindowsFunctionAppSlotAuthSettingsV2TwitterV2Observation) { *out = *in @@ -30570,6 +44013,38 @@ func (in *WindowsFunctionAppSlotAuthSettingsV2TwitterV2Parameters) DeepCopy() *W return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotBackupInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotBackupInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]WindowsFunctionAppSlotBackupScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotBackupInitParameters. +func (in *WindowsFunctionAppSlotBackupInitParameters) DeepCopy() *WindowsFunctionAppSlotBackupInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotBackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotBackupObservation) DeepCopyInto(out *WindowsFunctionAppSlotBackupObservation) { *out = *in @@ -30635,6 +44110,46 @@ func (in *WindowsFunctionAppSlotBackupParameters) DeepCopy() *WindowsFunctionApp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotBackupScheduleInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotBackupScheduleInitParameters) { + *out = *in + if in.FrequencyInterval != nil { + in, out := &in.FrequencyInterval, &out.FrequencyInterval + *out = new(float64) + **out = **in + } + if in.FrequencyUnit != nil { + in, out := &in.FrequencyUnit, &out.FrequencyUnit + *out = new(string) + **out = **in + } + if in.KeepAtLeastOneBackup != nil { + in, out := &in.KeepAtLeastOneBackup, &out.KeepAtLeastOneBackup + *out = new(bool) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotBackupScheduleInitParameters. +func (in *WindowsFunctionAppSlotBackupScheduleInitParameters) DeepCopy() *WindowsFunctionAppSlotBackupScheduleInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotBackupScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotBackupScheduleObservation) DeepCopyInto(out *WindowsFunctionAppSlotBackupScheduleObservation) { *out = *in @@ -30720,6 +44235,31 @@ func (in *WindowsFunctionAppSlotBackupScheduleParameters) DeepCopy() *WindowsFun return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotConnectionStringInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotConnectionStringInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotConnectionStringInitParameters. +func (in *WindowsFunctionAppSlotConnectionStringInitParameters) DeepCopy() *WindowsFunctionAppSlotConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotConnectionStringObservation) DeepCopyInto(out *WindowsFunctionAppSlotConnectionStringObservation) { *out = *in @@ -30771,6 +44311,37 @@ func (in *WindowsFunctionAppSlotConnectionStringParameters) DeepCopy() *WindowsF return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotIdentityInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotIdentityInitParameters. +func (in *WindowsFunctionAppSlotIdentityInitParameters) DeepCopy() *WindowsFunctionAppSlotIdentityInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotIdentityObservation) DeepCopyInto(out *WindowsFunctionAppSlotIdentityObservation) { *out = *in @@ -30843,6 +44414,165 @@ func (in *WindowsFunctionAppSlotIdentityParameters) DeepCopy() *WindowsFunctionA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotInitParameters) { + *out = *in + if in.AppSettings != nil { + in, out := &in.AppSettings, &out.AppSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AuthSettings != nil { + in, out := &in.AuthSettings, &out.AuthSettings + *out = make([]WindowsFunctionAppSlotAuthSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthSettingsV2 != nil { + in, out := &in.AuthSettingsV2, &out.AuthSettingsV2 + *out = make([]WindowsFunctionAppSlotAuthSettingsV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]WindowsFunctionAppSlotBackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.BuiltinLoggingEnabled != nil { + in, out := &in.BuiltinLoggingEnabled, &out.BuiltinLoggingEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateEnabled != nil { + in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateExclusionPaths != nil { + in, out := &in.ClientCertificateExclusionPaths, &out.ClientCertificateExclusionPaths + *out = new(string) + **out = **in + } + if in.ClientCertificateMode != nil { + in, out := &in.ClientCertificateMode, &out.ClientCertificateMode + *out = new(string) + **out = **in + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = make([]WindowsFunctionAppSlotConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ContentShareForceDisabled != nil { + in, out := &in.ContentShareForceDisabled, &out.ContentShareForceDisabled + *out = new(bool) + **out = **in + } + if in.DailyMemoryTimeQuota != nil { + in, out := &in.DailyMemoryTimeQuota, &out.DailyMemoryTimeQuota + *out = new(float64) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.FunctionsExtensionVersion != nil { + in, out := &in.FunctionsExtensionVersion, &out.FunctionsExtensionVersion + *out = new(string) + **out = **in + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]WindowsFunctionAppSlotIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultReferenceIdentityID != nil { + in, out := &in.KeyVaultReferenceIdentityID, &out.KeyVaultReferenceIdentityID + *out = new(string) + **out = **in + } + if in.ServicePlanID != nil { + in, out := &in.ServicePlanID, &out.ServicePlanID + *out = new(string) + **out = **in + } + if in.SiteConfig != nil { + in, out := &in.SiteConfig, &out.SiteConfig + *out = make([]WindowsFunctionAppSlotSiteConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]WindowsFunctionAppSlotStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageKeyVaultSecretID != nil { + in, out := &in.StorageKeyVaultSecretID, &out.StorageKeyVaultSecretID + *out = new(string) + **out = **in + } + if in.StorageUsesManagedIdentity != nil { + in, out := &in.StorageUsesManagedIdentity, &out.StorageUsesManagedIdentity + *out = new(bool) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotInitParameters. +func (in *WindowsFunctionAppSlotInitParameters) DeepCopy() *WindowsFunctionAppSlotInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotList) DeepCopyInto(out *WindowsFunctionAppSlotList) { *out = *in @@ -31310,6 +45040,31 @@ func (in *WindowsFunctionAppSlotParameters) DeepCopy() *WindowsFunctionAppSlotPa return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotSiteConfigAppServiceLogsInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigAppServiceLogsInitParameters) { + *out = *in + if in.DiskQuotaMb != nil { + in, out := &in.DiskQuotaMb, &out.DiskQuotaMb + *out = new(float64) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigAppServiceLogsInitParameters. +func (in *WindowsFunctionAppSlotSiteConfigAppServiceLogsInitParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigAppServiceLogsInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotSiteConfigAppServiceLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotSiteConfigAppServiceLogsObservation) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigAppServiceLogsObservation) { *out = *in @@ -31343,19 +45098,64 @@ func (in *WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters) DeepCopyInto *out = new(float64) **out = **in } - if in.RetentionPeriodDays != nil { - in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays - *out = new(float64) + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters. +func (in *WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotSiteConfigApplicationStackInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigApplicationStackInitParameters) { + *out = *in + if in.DotnetVersion != nil { + in, out := &in.DotnetVersion, &out.DotnetVersion + *out = new(string) + **out = **in + } + if in.JavaVersion != nil { + in, out := &in.JavaVersion, &out.JavaVersion + *out = new(string) + **out = **in + } + if in.NodeVersion != nil { + in, out := &in.NodeVersion, &out.NodeVersion + *out = new(string) + **out = **in + } + if in.PowershellCoreVersion != nil { + in, out := &in.PowershellCoreVersion, &out.PowershellCoreVersion + *out = new(string) + **out = **in + } + if in.UseCustomRuntime != nil { + in, out := &in.UseCustomRuntime, &out.UseCustomRuntime + *out = new(bool) + **out = **in + } + if in.UseDotnetIsolatedRuntime != nil { + in, out := &in.UseDotnetIsolatedRuntime, &out.UseDotnetIsolatedRuntime + *out = new(bool) **out = **in } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters. -func (in *WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigApplicationStackInitParameters. +func (in *WindowsFunctionAppSlotSiteConfigApplicationStackInitParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigApplicationStackInitParameters { if in == nil { return nil } - out := new(WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters) + out := new(WindowsFunctionAppSlotSiteConfigApplicationStackInitParameters) in.DeepCopyInto(out) return out } @@ -31450,6 +45250,37 @@ func (in *WindowsFunctionAppSlotSiteConfigApplicationStackParameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotSiteConfigCorsInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigCorsInitParameters) { + *out = *in + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportCredentials != nil { + in, out := &in.SupportCredentials, &out.SupportCredentials + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigCorsInitParameters. +func (in *WindowsFunctionAppSlotSiteConfigCorsInitParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigCorsInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotSiteConfigCorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotSiteConfigCorsObservation) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigCorsObservation) { *out = *in @@ -31512,6 +45343,65 @@ func (in *WindowsFunctionAppSlotSiteConfigCorsParameters) DeepCopy() *WindowsFun return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters. +func (in *WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersObservation) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersObservation) { *out = *in @@ -31630,6 +45520,53 @@ func (in *WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersParameters) DeepCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotSiteConfigIPRestrictionInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigIPRestrictionInitParameters. +func (in *WindowsFunctionAppSlotSiteConfigIPRestrictionInitParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotSiteConfigIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotSiteConfigIPRestrictionObservation) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigIPRestrictionObservation) { *out = *in @@ -31744,6 +45681,187 @@ func (in *WindowsFunctionAppSlotSiteConfigIPRestrictionParameters) DeepCopy() *W return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotSiteConfigInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigInitParameters) { + *out = *in + if in.APIDefinitionURL != nil { + in, out := &in.APIDefinitionURL, &out.APIDefinitionURL + *out = new(string) + **out = **in + } + if in.APIManagementAPIID != nil { + in, out := &in.APIManagementAPIID, &out.APIManagementAPIID + *out = new(string) + **out = **in + } + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppCommandLine != nil { + in, out := &in.AppCommandLine, &out.AppCommandLine + *out = new(string) + **out = **in + } + if in.AppScaleLimit != nil { + in, out := &in.AppScaleLimit, &out.AppScaleLimit + *out = new(float64) + **out = **in + } + if in.AppServiceLogs != nil { + in, out := &in.AppServiceLogs, &out.AppServiceLogs + *out = make([]WindowsFunctionAppSlotSiteConfigAppServiceLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ApplicationStack != nil { + in, out := &in.ApplicationStack, &out.ApplicationStack + *out = make([]WindowsFunctionAppSlotSiteConfigApplicationStackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoSwapSlotName != nil { + in, out := &in.AutoSwapSlotName, &out.AutoSwapSlotName + *out = new(string) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]WindowsFunctionAppSlotSiteConfigCorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDocuments != nil { + in, out := &in.DefaultDocuments, &out.DefaultDocuments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ElasticInstanceMinimum != nil { + in, out := &in.ElasticInstanceMinimum, &out.ElasticInstanceMinimum + *out = new(float64) + **out = **in + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckEvictionTimeInMin != nil { + in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin + *out = new(float64) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]WindowsFunctionAppSlotSiteConfigIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancingMode != nil { + in, out := &in.LoadBalancingMode, &out.LoadBalancingMode + *out = new(string) + **out = **in + } + if in.ManagedPipelineMode != nil { + in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.PreWarmedInstanceCount != nil { + in, out := &in.PreWarmedInstanceCount, &out.PreWarmedInstanceCount + *out = new(float64) + **out = **in + } + if in.RemoteDebuggingEnabled != nil { + in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled + *out = new(bool) + **out = **in + } + if in.RemoteDebuggingVersion != nil { + in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion + *out = new(string) + **out = **in + } + if in.RuntimeScaleMonitoringEnabled != nil { + in, out := &in.RuntimeScaleMonitoringEnabled, &out.RuntimeScaleMonitoringEnabled + *out = new(bool) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]WindowsFunctionAppSlotSiteConfigScmIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmMinimumTLSVersion != nil { + in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorker != nil { + in, out := &in.Use32BitWorker, &out.Use32BitWorker + *out = new(bool) + **out = **in + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigInitParameters. +func (in *WindowsFunctionAppSlotSiteConfigInitParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotSiteConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotSiteConfigObservation) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigObservation) { *out = *in @@ -31918,11 +46036,202 @@ func (in *WindowsFunctionAppSlotSiteConfigObservation) DeepCopyInto(out *Windows *out = new(bool) **out = **in } - if in.WindowsFxVersion != nil { - in, out := &in.WindowsFxVersion, &out.WindowsFxVersion - *out = new(string) - **out = **in - } + if in.WindowsFxVersion != nil { + in, out := &in.WindowsFxVersion, &out.WindowsFxVersion + *out = new(string) + **out = **in + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigObservation. +func (in *WindowsFunctionAppSlotSiteConfigObservation) DeepCopy() *WindowsFunctionAppSlotSiteConfigObservation { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotSiteConfigObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotSiteConfigParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigParameters) { + *out = *in + if in.APIDefinitionURL != nil { + in, out := &in.APIDefinitionURL, &out.APIDefinitionURL + *out = new(string) + **out = **in + } + if in.APIManagementAPIID != nil { + in, out := &in.APIManagementAPIID, &out.APIManagementAPIID + *out = new(string) + **out = **in + } + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppCommandLine != nil { + in, out := &in.AppCommandLine, &out.AppCommandLine + *out = new(string) + **out = **in + } + if in.AppScaleLimit != nil { + in, out := &in.AppScaleLimit, &out.AppScaleLimit + *out = new(float64) + **out = **in + } + if in.AppServiceLogs != nil { + in, out := &in.AppServiceLogs, &out.AppServiceLogs + *out = make([]WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ApplicationInsightsConnectionStringSecretRef != nil { + in, out := &in.ApplicationInsightsConnectionStringSecretRef, &out.ApplicationInsightsConnectionStringSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ApplicationInsightsKeySecretRef != nil { + in, out := &in.ApplicationInsightsKeySecretRef, &out.ApplicationInsightsKeySecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ApplicationStack != nil { + in, out := &in.ApplicationStack, &out.ApplicationStack + *out = make([]WindowsFunctionAppSlotSiteConfigApplicationStackParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoSwapSlotName != nil { + in, out := &in.AutoSwapSlotName, &out.AutoSwapSlotName + *out = new(string) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]WindowsFunctionAppSlotSiteConfigCorsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDocuments != nil { + in, out := &in.DefaultDocuments, &out.DefaultDocuments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ElasticInstanceMinimum != nil { + in, out := &in.ElasticInstanceMinimum, &out.ElasticInstanceMinimum + *out = new(float64) + **out = **in + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckEvictionTimeInMin != nil { + in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin + *out = new(float64) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]WindowsFunctionAppSlotSiteConfigIPRestrictionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancingMode != nil { + in, out := &in.LoadBalancingMode, &out.LoadBalancingMode + *out = new(string) + **out = **in + } + if in.ManagedPipelineMode != nil { + in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.PreWarmedInstanceCount != nil { + in, out := &in.PreWarmedInstanceCount, &out.PreWarmedInstanceCount + *out = new(float64) + **out = **in + } + if in.RemoteDebuggingEnabled != nil { + in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled + *out = new(bool) + **out = **in + } + if in.RemoteDebuggingVersion != nil { + in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion + *out = new(string) + **out = **in + } + if in.RuntimeScaleMonitoringEnabled != nil { + in, out := &in.RuntimeScaleMonitoringEnabled, &out.RuntimeScaleMonitoringEnabled + *out = new(bool) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]WindowsFunctionAppSlotSiteConfigScmIPRestrictionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmMinimumTLSVersion != nil { + in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorker != nil { + in, out := &in.Use32BitWorker, &out.Use32BitWorker + *out = new(bool) + **out = **in + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } if in.WorkerCount != nil { in, out := &in.WorkerCount, &out.WorkerCount *out = new(float64) @@ -31930,82 +46239,32 @@ func (in *WindowsFunctionAppSlotSiteConfigObservation) DeepCopyInto(out *Windows } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigObservation. -func (in *WindowsFunctionAppSlotSiteConfigObservation) DeepCopy() *WindowsFunctionAppSlotSiteConfigObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigParameters. +func (in *WindowsFunctionAppSlotSiteConfigParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigParameters { if in == nil { return nil } - out := new(WindowsFunctionAppSlotSiteConfigObservation) + out := new(WindowsFunctionAppSlotSiteConfigParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsFunctionAppSlotSiteConfigParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigParameters) { +func (in *WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) { *out = *in - if in.APIDefinitionURL != nil { - in, out := &in.APIDefinitionURL, &out.APIDefinitionURL - *out = new(string) - **out = **in - } - if in.APIManagementAPIID != nil { - in, out := &in.APIManagementAPIID, &out.APIManagementAPIID - *out = new(string) - **out = **in - } - if in.AlwaysOn != nil { - in, out := &in.AlwaysOn, &out.AlwaysOn - *out = new(bool) - **out = **in - } - if in.AppCommandLine != nil { - in, out := &in.AppCommandLine, &out.AppCommandLine - *out = new(string) - **out = **in - } - if in.AppScaleLimit != nil { - in, out := &in.AppScaleLimit, &out.AppScaleLimit - *out = new(float64) - **out = **in - } - if in.AppServiceLogs != nil { - in, out := &in.AppServiceLogs, &out.AppServiceLogs - *out = make([]WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.ApplicationInsightsConnectionStringSecretRef != nil { - in, out := &in.ApplicationInsightsConnectionStringSecretRef, &out.ApplicationInsightsConnectionStringSecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } - if in.ApplicationInsightsKeySecretRef != nil { - in, out := &in.ApplicationInsightsKeySecretRef, &out.ApplicationInsightsKeySecretRef - *out = new(v1.SecretKeySelector) - **out = **in - } - if in.ApplicationStack != nil { - in, out := &in.ApplicationStack, &out.ApplicationStack - *out = make([]WindowsFunctionAppSlotSiteConfigApplicationStackParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AutoSwapSlotName != nil { - in, out := &in.AutoSwapSlotName, &out.AutoSwapSlotName - *out = new(string) - **out = **in - } - if in.Cors != nil { - in, out := &in.Cors, &out.Cors - *out = make([]WindowsFunctionAppSlotSiteConfigCorsParameters, len(*in)) + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.DefaultDocuments != nil { - in, out := &in.DefaultDocuments, &out.DefaultDocuments + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -32015,118 +46274,36 @@ func (in *WindowsFunctionAppSlotSiteConfigParameters) DeepCopyInto(out *WindowsF } } } - if in.ElasticInstanceMinimum != nil { - in, out := &in.ElasticInstanceMinimum, &out.ElasticInstanceMinimum - *out = new(float64) - **out = **in - } - if in.FtpsState != nil { - in, out := &in.FtpsState, &out.FtpsState - *out = new(string) - **out = **in - } - if in.HealthCheckEvictionTimeInMin != nil { - in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin - *out = new(float64) - **out = **in - } - if in.HealthCheckPath != nil { - in, out := &in.HealthCheckPath, &out.HealthCheckPath - *out = new(string) - **out = **in - } - if in.Http2Enabled != nil { - in, out := &in.Http2Enabled, &out.Http2Enabled - *out = new(bool) - **out = **in - } - if in.IPRestriction != nil { - in, out := &in.IPRestriction, &out.IPRestriction - *out = make([]WindowsFunctionAppSlotSiteConfigIPRestrictionParameters, len(*in)) + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.LoadBalancingMode != nil { - in, out := &in.LoadBalancingMode, &out.LoadBalancingMode - *out = new(string) - **out = **in - } - if in.ManagedPipelineMode != nil { - in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode - *out = new(string) - **out = **in - } - if in.MinimumTLSVersion != nil { - in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion - *out = new(string) - **out = **in - } - if in.PreWarmedInstanceCount != nil { - in, out := &in.PreWarmedInstanceCount, &out.PreWarmedInstanceCount - *out = new(float64) - **out = **in - } - if in.RemoteDebuggingEnabled != nil { - in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled - *out = new(bool) - **out = **in - } - if in.RemoteDebuggingVersion != nil { - in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion - *out = new(string) - **out = **in - } - if in.RuntimeScaleMonitoringEnabled != nil { - in, out := &in.RuntimeScaleMonitoringEnabled, &out.RuntimeScaleMonitoringEnabled - *out = new(bool) - **out = **in - } - if in.ScmIPRestriction != nil { - in, out := &in.ScmIPRestriction, &out.ScmIPRestriction - *out = make([]WindowsFunctionAppSlotSiteConfigScmIPRestrictionParameters, len(*in)) + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.ScmMinimumTLSVersion != nil { - in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion - *out = new(string) - **out = **in - } - if in.ScmUseMainIPRestriction != nil { - in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction - *out = new(bool) - **out = **in - } - if in.Use32BitWorker != nil { - in, out := &in.Use32BitWorker, &out.Use32BitWorker - *out = new(bool) - **out = **in - } - if in.VnetRouteAllEnabled != nil { - in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled - *out = new(bool) - **out = **in - } - if in.WebsocketsEnabled != nil { - in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled - *out = new(bool) - **out = **in - } - if in.WorkerCount != nil { - in, out := &in.WorkerCount, &out.WorkerCount - *out = new(float64) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigParameters. -func (in *WindowsFunctionAppSlotSiteConfigParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters. +func (in *WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters { if in == nil { return nil } - out := new(WindowsFunctionAppSlotSiteConfigParameters) + out := new(WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) in.DeepCopyInto(out) return out } @@ -32249,6 +46426,53 @@ func (in *WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersParameters) Dee return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotSiteConfigScmIPRestrictionInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigScmIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteConfigScmIPRestrictionInitParameters. +func (in *WindowsFunctionAppSlotSiteConfigScmIPRestrictionInitParameters) DeepCopy() *WindowsFunctionAppSlotSiteConfigScmIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotSiteConfigScmIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotSiteConfigScmIPRestrictionObservation) DeepCopyInto(out *WindowsFunctionAppSlotSiteConfigScmIPRestrictionObservation) { *out = *in @@ -32363,6 +46587,21 @@ func (in *WindowsFunctionAppSlotSiteConfigScmIPRestrictionParameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotSiteCredentialInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotSiteCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSiteCredentialInitParameters. +func (in *WindowsFunctionAppSlotSiteCredentialInitParameters) DeepCopy() *WindowsFunctionAppSlotSiteCredentialInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotSiteCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotSiteCredentialObservation) DeepCopyInto(out *WindowsFunctionAppSlotSiteCredentialObservation) { *out = *in @@ -32408,6 +46647,7 @@ func (in *WindowsFunctionAppSlotSpec) DeepCopyInto(out *WindowsFunctionAppSlotSp *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotSpec. @@ -32437,6 +46677,46 @@ func (in *WindowsFunctionAppSlotStatus) DeepCopy() *WindowsFunctionAppSlotStatus return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppSlotStorageAccountInitParameters) DeepCopyInto(out *WindowsFunctionAppSlotStorageAccountInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.MountPath != nil { + in, out := &in.MountPath, &out.MountPath + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ShareName != nil { + in, out := &in.ShareName, &out.ShareName + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSlotStorageAccountInitParameters. +func (in *WindowsFunctionAppSlotStorageAccountInitParameters) DeepCopy() *WindowsFunctionAppSlotStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppSlotStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppSlotStorageAccountObservation) DeepCopyInto(out *WindowsFunctionAppSlotStorageAccountObservation) { *out = *in @@ -32523,6 +46803,7 @@ func (in *WindowsFunctionAppSpec) DeepCopyInto(out *WindowsFunctionAppSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppSpec. @@ -32552,6 +46833,43 @@ func (in *WindowsFunctionAppStatus) DeepCopy() *WindowsFunctionAppStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppStickySettingsInitParameters) DeepCopyInto(out *WindowsFunctionAppStickySettingsInitParameters) { + *out = *in + if in.AppSettingNames != nil { + in, out := &in.AppSettingNames, &out.AppSettingNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionStringNames != nil { + in, out := &in.ConnectionStringNames, &out.ConnectionStringNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppStickySettingsInitParameters. +func (in *WindowsFunctionAppStickySettingsInitParameters) DeepCopy() *WindowsFunctionAppStickySettingsInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppStickySettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppStickySettingsObservation) DeepCopyInto(out *WindowsFunctionAppStickySettingsObservation) { *out = *in @@ -32626,6 +46944,46 @@ func (in *WindowsFunctionAppStickySettingsParameters) DeepCopy() *WindowsFunctio return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsFunctionAppStorageAccountInitParameters) DeepCopyInto(out *WindowsFunctionAppStorageAccountInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.MountPath != nil { + in, out := &in.MountPath, &out.MountPath + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ShareName != nil { + in, out := &in.ShareName, &out.ShareName + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsFunctionAppStorageAccountInitParameters. +func (in *WindowsFunctionAppStorageAccountInitParameters) DeepCopy() *WindowsFunctionAppStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(WindowsFunctionAppStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsFunctionAppStorageAccountObservation) DeepCopyInto(out *WindowsFunctionAppStorageAccountObservation) { *out = *in @@ -32734,6 +47092,42 @@ func (in *WindowsWebApp) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsActiveDirectoryInitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsActiveDirectoryInitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsActiveDirectoryInitParameters. +func (in *WindowsWebAppAuthSettingsActiveDirectoryInitParameters) DeepCopy() *WindowsWebAppAuthSettingsActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsActiveDirectoryObservation) DeepCopyInto(out *WindowsWebAppAuthSettingsActiveDirectoryObservation) { *out = *in @@ -32811,6 +47205,42 @@ func (in *WindowsWebAppAuthSettingsActiveDirectoryParameters) DeepCopy() *Window return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsFacebookInitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsFacebookInitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsFacebookInitParameters. +func (in *WindowsWebAppAuthSettingsFacebookInitParameters) DeepCopy() *WindowsWebAppAuthSettingsFacebookInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsFacebookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsFacebookObservation) DeepCopyInto(out *WindowsWebAppAuthSettingsFacebookObservation) { *out = *in @@ -32888,6 +47318,42 @@ func (in *WindowsWebAppAuthSettingsFacebookParameters) DeepCopy() *WindowsWebApp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsGithubInitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsGithubInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsGithubInitParameters. +func (in *WindowsWebAppAuthSettingsGithubInitParameters) DeepCopy() *WindowsWebAppAuthSettingsGithubInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsGithubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsGithubObservation) DeepCopyInto(out *WindowsWebAppAuthSettingsGithubObservation) { *out = *in @@ -32965,6 +47431,42 @@ func (in *WindowsWebAppAuthSettingsGithubParameters) DeepCopy() *WindowsWebAppAu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsGoogleInitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsGoogleInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsGoogleInitParameters. +func (in *WindowsWebAppAuthSettingsGoogleInitParameters) DeepCopy() *WindowsWebAppAuthSettingsGoogleInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsGoogleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsGoogleObservation) DeepCopyInto(out *WindowsWebAppAuthSettingsGoogleObservation) { *out = *in @@ -33042,6 +47544,160 @@ func (in *WindowsWebAppAuthSettingsGoogleParameters) DeepCopy() *WindowsWebAppAu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsInitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]WindowsWebAppAuthSettingsActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalLoginParameters != nil { + in, out := &in.AdditionalLoginParameters, &out.AdditionalLoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Facebook != nil { + in, out := &in.Facebook, &out.Facebook + *out = make([]WindowsWebAppAuthSettingsFacebookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Github != nil { + in, out := &in.Github, &out.Github + *out = make([]WindowsWebAppAuthSettingsGithubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Google != nil { + in, out := &in.Google, &out.Google + *out = make([]WindowsWebAppAuthSettingsGoogleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Microsoft != nil { + in, out := &in.Microsoft, &out.Microsoft + *out = make([]WindowsWebAppAuthSettingsMicrosoftInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TokenRefreshExtensionHours != nil { + in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.Twitter != nil { + in, out := &in.Twitter, &out.Twitter + *out = make([]WindowsWebAppAuthSettingsTwitterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedClientAction != nil { + in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsInitParameters. +func (in *WindowsWebAppAuthSettingsInitParameters) DeepCopy() *WindowsWebAppAuthSettingsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsMicrosoftInitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsMicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsMicrosoftInitParameters. +func (in *WindowsWebAppAuthSettingsMicrosoftInitParameters) DeepCopy() *WindowsWebAppAuthSettingsMicrosoftInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsMicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsMicrosoftObservation) DeepCopyInto(out *WindowsWebAppAuthSettingsMicrosoftObservation) { *out = *in @@ -33355,6 +48011,31 @@ func (in *WindowsWebAppAuthSettingsParameters) DeepCopy() *WindowsWebAppAuthSett return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsTwitterInitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsTwitterInitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsTwitterInitParameters. +func (in *WindowsWebAppAuthSettingsTwitterInitParameters) DeepCopy() *WindowsWebAppAuthSettingsTwitterInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsTwitterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsTwitterObservation) DeepCopyInto(out *WindowsWebAppAuthSettingsTwitterObservation) { *out = *in @@ -33375,37 +48056,158 @@ func (in *WindowsWebAppAuthSettingsTwitterObservation) DeepCopy() *WindowsWebApp if in == nil { return nil } - out := new(WindowsWebAppAuthSettingsTwitterObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsWebAppAuthSettingsTwitterParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsTwitterParameters) { - *out = *in - if in.ConsumerKey != nil { - in, out := &in.ConsumerKey, &out.ConsumerKey + out := new(WindowsWebAppAuthSettingsTwitterObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsTwitterParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsTwitterParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSecretRef != nil { + in, out := &in.ConsumerSecretSecretRef, &out.ConsumerSecretSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsTwitterParameters. +func (in *WindowsWebAppAuthSettingsTwitterParameters) DeepCopy() *WindowsWebAppAuthSettingsTwitterParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsTwitterParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2ActiveDirectoryV2InitParameters) { + *out = *in + if in.AllowedApplications != nil { + in, out := &in.AllowedApplications, &out.AllowedApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedGroups != nil { + in, out := &in.AllowedGroups, &out.AllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedIdentities != nil { + in, out := &in.AllowedIdentities, &out.AllowedIdentities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretCertificateThumbprint != nil { + in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint *out = new(string) **out = **in } - if in.ConsumerSecretSecretRef != nil { - in, out := &in.ConsumerSecretSecretRef, &out.ConsumerSecretSecretRef - *out = new(v1.SecretKeySelector) + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) **out = **in } - if in.ConsumerSecretSettingName != nil { - in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + if in.JwtAllowedClientApplications != nil { + in, out := &in.JwtAllowedClientApplications, &out.JwtAllowedClientApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.JwtAllowedGroups != nil { + in, out := &in.JwtAllowedGroups, &out.JwtAllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoginParameters != nil { + in, out := &in.LoginParameters, &out.LoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantAuthEndpoint != nil { + in, out := &in.TenantAuthEndpoint, &out.TenantAuthEndpoint *out = new(string) **out = **in } + if in.WwwAuthenticationDisabled != nil { + in, out := &in.WwwAuthenticationDisabled, &out.WwwAuthenticationDisabled + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsTwitterParameters. -func (in *WindowsWebAppAuthSettingsTwitterParameters) DeepCopy() *WindowsWebAppAuthSettingsTwitterParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2ActiveDirectoryV2InitParameters. +func (in *WindowsWebAppAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2ActiveDirectoryV2InitParameters { if in == nil { return nil } - out := new(WindowsWebAppAuthSettingsTwitterParameters) + out := new(WindowsWebAppAuthSettingsV2ActiveDirectoryV2InitParameters) in.DeepCopyInto(out) return out } @@ -33652,6 +48454,31 @@ func (in *WindowsWebAppAuthSettingsV2ActiveDirectoryV2Parameters) DeepCopy() *Wi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2AppleV2InitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2AppleV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2AppleV2InitParameters. +func (in *WindowsWebAppAuthSettingsV2AppleV2InitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2AppleV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsV2AppleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsV2AppleV2Observation) DeepCopyInto(out *WindowsWebAppAuthSettingsV2AppleV2Observation) { *out = *in @@ -33713,6 +48540,26 @@ func (in *WindowsWebAppAuthSettingsV2AppleV2Parameters) DeepCopy() *WindowsWebAp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters. +func (in *WindowsWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsV2AzureStaticWebAppV2Observation) DeepCopyInto(out *WindowsWebAppAuthSettingsV2AzureStaticWebAppV2Observation) { *out = *in @@ -33753,6 +48600,52 @@ func (in *WindowsWebAppAuthSettingsV2AzureStaticWebAppV2Parameters) DeepCopy() * return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2CustomOidcV2InitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2CustomOidcV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NameClaimType != nil { + in, out := &in.NameClaimType, &out.NameClaimType + *out = new(string) + **out = **in + } + if in.OpenIDConfigurationEndpoint != nil { + in, out := &in.OpenIDConfigurationEndpoint, &out.OpenIDConfigurationEndpoint + *out = new(string) + **out = **in + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2CustomOidcV2InitParameters. +func (in *WindowsWebAppAuthSettingsV2CustomOidcV2InitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2CustomOidcV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsV2CustomOidcV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsV2CustomOidcV2Observation) DeepCopyInto(out *WindowsWebAppAuthSettingsV2CustomOidcV2Observation) { *out = *in @@ -33875,6 +48768,47 @@ func (in *WindowsWebAppAuthSettingsV2CustomOidcV2Parameters) DeepCopy() *Windows return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2FacebookV2InitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2FacebookV2InitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.GraphAPIVersion != nil { + in, out := &in.GraphAPIVersion, &out.GraphAPIVersion + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2FacebookV2InitParameters. +func (in *WindowsWebAppAuthSettingsV2FacebookV2InitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2FacebookV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsV2FacebookV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsV2FacebookV2Observation) DeepCopyInto(out *WindowsWebAppAuthSettingsV2FacebookV2Observation) { *out = *in @@ -33957,6 +48891,42 @@ func (in *WindowsWebAppAuthSettingsV2FacebookV2Parameters) DeepCopy() *WindowsWe return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2GithubV2InitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2GithubV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2GithubV2InitParameters. +func (in *WindowsWebAppAuthSettingsV2GithubV2InitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2GithubV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsV2GithubV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsV2GithubV2Observation) DeepCopyInto(out *WindowsWebAppAuthSettingsV2GithubV2Observation) { *out = *in @@ -34029,6 +48999,53 @@ func (in *WindowsWebAppAuthSettingsV2GithubV2Parameters) DeepCopy() *WindowsWebA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2GoogleV2InitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2GoogleV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2GoogleV2InitParameters. +func (in *WindowsWebAppAuthSettingsV2GoogleV2InitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2GoogleV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsV2GoogleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsV2GoogleV2Observation) DeepCopyInto(out *WindowsWebAppAuthSettingsV2GoogleV2Observation) { *out = *in @@ -34123,6 +49140,233 @@ func (in *WindowsWebAppAuthSettingsV2GoogleV2Parameters) DeepCopy() *WindowsWebA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2InitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2InitParameters) { + *out = *in + if in.ActiveDirectoryV2 != nil { + in, out := &in.ActiveDirectoryV2, &out.ActiveDirectoryV2 + *out = make([]WindowsWebAppAuthSettingsV2ActiveDirectoryV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AppleV2 != nil { + in, out := &in.AppleV2, &out.AppleV2 + *out = make([]WindowsWebAppAuthSettingsV2AppleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthEnabled != nil { + in, out := &in.AuthEnabled, &out.AuthEnabled + *out = new(bool) + **out = **in + } + if in.AzureStaticWebAppV2 != nil { + in, out := &in.AzureStaticWebAppV2, &out.AzureStaticWebAppV2 + *out = make([]WindowsWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConfigFilePath != nil { + in, out := &in.ConfigFilePath, &out.ConfigFilePath + *out = new(string) + **out = **in + } + if in.CustomOidcV2 != nil { + in, out := &in.CustomOidcV2, &out.CustomOidcV2 + *out = make([]WindowsWebAppAuthSettingsV2CustomOidcV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.ExcludedPaths != nil { + in, out := &in.ExcludedPaths, &out.ExcludedPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FacebookV2 != nil { + in, out := &in.FacebookV2, &out.FacebookV2 + *out = make([]WindowsWebAppAuthSettingsV2FacebookV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForwardProxyConvention != nil { + in, out := &in.ForwardProxyConvention, &out.ForwardProxyConvention + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomHostHeaderName != nil { + in, out := &in.ForwardProxyCustomHostHeaderName, &out.ForwardProxyCustomHostHeaderName + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomSchemeHeaderName != nil { + in, out := &in.ForwardProxyCustomSchemeHeaderName, &out.ForwardProxyCustomSchemeHeaderName + *out = new(string) + **out = **in + } + if in.GithubV2 != nil { + in, out := &in.GithubV2, &out.GithubV2 + *out = make([]WindowsWebAppAuthSettingsV2GithubV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GoogleV2 != nil { + in, out := &in.GoogleV2, &out.GoogleV2 + *out = make([]WindowsWebAppAuthSettingsV2GoogleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPRouteAPIPrefix != nil { + in, out := &in.HTTPRouteAPIPrefix, &out.HTTPRouteAPIPrefix + *out = new(string) + **out = **in + } + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = make([]WindowsWebAppAuthSettingsV2LoginInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MicrosoftV2 != nil { + in, out := &in.MicrosoftV2, &out.MicrosoftV2 + *out = make([]WindowsWebAppAuthSettingsV2MicrosoftV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequireAuthentication != nil { + in, out := &in.RequireAuthentication, &out.RequireAuthentication + *out = new(bool) + **out = **in + } + if in.RequireHTTPS != nil { + in, out := &in.RequireHTTPS, &out.RequireHTTPS + *out = new(bool) + **out = **in + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TwitterV2 != nil { + in, out := &in.TwitterV2, &out.TwitterV2 + *out = make([]WindowsWebAppAuthSettingsV2TwitterV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedAction != nil { + in, out := &in.UnauthenticatedAction, &out.UnauthenticatedAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2InitParameters. +func (in *WindowsWebAppAuthSettingsV2InitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsV2InitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2LoginInitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2LoginInitParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2LoginInitParameters. +func (in *WindowsWebAppAuthSettingsV2LoginInitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2LoginInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsV2LoginInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsV2LoginObservation) DeepCopyInto(out *WindowsWebAppAuthSettingsV2LoginObservation) { *out = *in @@ -34275,6 +49519,53 @@ func (in *WindowsWebAppAuthSettingsV2LoginParameters) DeepCopy() *WindowsWebAppA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2MicrosoftV2InitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2MicrosoftV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2MicrosoftV2InitParameters. +func (in *WindowsWebAppAuthSettingsV2MicrosoftV2InitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2MicrosoftV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsV2MicrosoftV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsV2MicrosoftV2Observation) DeepCopyInto(out *WindowsWebAppAuthSettingsV2MicrosoftV2Observation) { *out = *in @@ -34671,6 +49962,31 @@ func (in *WindowsWebAppAuthSettingsV2Parameters) DeepCopy() *WindowsWebAppAuthSe return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppAuthSettingsV2TwitterV2InitParameters) DeepCopyInto(out *WindowsWebAppAuthSettingsV2TwitterV2InitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppAuthSettingsV2TwitterV2InitParameters. +func (in *WindowsWebAppAuthSettingsV2TwitterV2InitParameters) DeepCopy() *WindowsWebAppAuthSettingsV2TwitterV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppAuthSettingsV2TwitterV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppAuthSettingsV2TwitterV2Observation) DeepCopyInto(out *WindowsWebAppAuthSettingsV2TwitterV2Observation) { *out = *in @@ -34721,6 +50037,38 @@ func (in *WindowsWebAppAuthSettingsV2TwitterV2Parameters) DeepCopy() *WindowsWeb return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppBackupInitParameters) DeepCopyInto(out *WindowsWebAppBackupInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]WindowsWebAppBackupScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppBackupInitParameters. +func (in *WindowsWebAppBackupInitParameters) DeepCopy() *WindowsWebAppBackupInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppBackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppBackupObservation) DeepCopyInto(out *WindowsWebAppBackupObservation) { *out = *in @@ -34786,6 +50134,46 @@ func (in *WindowsWebAppBackupParameters) DeepCopy() *WindowsWebAppBackupParamete return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppBackupScheduleInitParameters) DeepCopyInto(out *WindowsWebAppBackupScheduleInitParameters) { + *out = *in + if in.FrequencyInterval != nil { + in, out := &in.FrequencyInterval, &out.FrequencyInterval + *out = new(float64) + **out = **in + } + if in.FrequencyUnit != nil { + in, out := &in.FrequencyUnit, &out.FrequencyUnit + *out = new(string) + **out = **in + } + if in.KeepAtLeastOneBackup != nil { + in, out := &in.KeepAtLeastOneBackup, &out.KeepAtLeastOneBackup + *out = new(bool) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppBackupScheduleInitParameters. +func (in *WindowsWebAppBackupScheduleInitParameters) DeepCopy() *WindowsWebAppBackupScheduleInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppBackupScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppBackupScheduleObservation) DeepCopyInto(out *WindowsWebAppBackupScheduleObservation) { *out = *in @@ -34871,6 +50259,31 @@ func (in *WindowsWebAppBackupScheduleParameters) DeepCopy() *WindowsWebAppBackup return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppConnectionStringInitParameters) DeepCopyInto(out *WindowsWebAppConnectionStringInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppConnectionStringInitParameters. +func (in *WindowsWebAppConnectionStringInitParameters) DeepCopy() *WindowsWebAppConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppConnectionStringObservation) DeepCopyInto(out *WindowsWebAppConnectionStringObservation) { *out = *in @@ -34922,6 +50335,37 @@ func (in *WindowsWebAppConnectionStringParameters) DeepCopy() *WindowsWebAppConn return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppIdentityInitParameters) DeepCopyInto(out *WindowsWebAppIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppIdentityInitParameters. +func (in *WindowsWebAppIdentityInitParameters) DeepCopy() *WindowsWebAppIdentityInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppIdentityObservation) DeepCopyInto(out *WindowsWebAppIdentityObservation) { *out = *in @@ -34994,6 +50438,159 @@ func (in *WindowsWebAppIdentityParameters) DeepCopy() *WindowsWebAppIdentityPara return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppInitParameters) DeepCopyInto(out *WindowsWebAppInitParameters) { + *out = *in + if in.AppSettings != nil { + in, out := &in.AppSettings, &out.AppSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AuthSettings != nil { + in, out := &in.AuthSettings, &out.AuthSettings + *out = make([]WindowsWebAppAuthSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthSettingsV2 != nil { + in, out := &in.AuthSettingsV2, &out.AuthSettingsV2 + *out = make([]WindowsWebAppAuthSettingsV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]WindowsWebAppBackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientAffinityEnabled != nil { + in, out := &in.ClientAffinityEnabled, &out.ClientAffinityEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateEnabled != nil { + in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateExclusionPaths != nil { + in, out := &in.ClientCertificateExclusionPaths, &out.ClientCertificateExclusionPaths + *out = new(string) + **out = **in + } + if in.ClientCertificateMode != nil { + in, out := &in.ClientCertificateMode, &out.ClientCertificateMode + *out = new(string) + **out = **in + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = make([]WindowsWebAppConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]WindowsWebAppIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultReferenceIdentityID != nil { + in, out := &in.KeyVaultReferenceIdentityID, &out.KeyVaultReferenceIdentityID + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Logs != nil { + in, out := &in.Logs, &out.Logs + *out = make([]WindowsWebAppLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SiteConfig != nil { + in, out := &in.SiteConfig, &out.SiteConfig + *out = make([]WindowsWebAppSiteConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StickySettings != nil { + in, out := &in.StickySettings, &out.StickySettings + *out = make([]WindowsWebAppStickySettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]WindowsWebAppStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZipDeployFile != nil { + in, out := &in.ZipDeployFile, &out.ZipDeployFile + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppInitParameters. +func (in *WindowsWebAppInitParameters) DeepCopy() *WindowsWebAppInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppList) DeepCopyInto(out *WindowsWebAppList) { *out = *in @@ -35026,6 +50623,33 @@ func (in *WindowsWebAppList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppLogsApplicationLogsInitParameters) DeepCopyInto(out *WindowsWebAppLogsApplicationLogsInitParameters) { + *out = *in + if in.AzureBlobStorage != nil { + in, out := &in.AzureBlobStorage, &out.AzureBlobStorage + *out = make([]LogsApplicationLogsAzureBlobStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FileSystemLevel != nil { + in, out := &in.FileSystemLevel, &out.FileSystemLevel + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppLogsApplicationLogsInitParameters. +func (in *WindowsWebAppLogsApplicationLogsInitParameters) DeepCopy() *WindowsWebAppLogsApplicationLogsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppLogsApplicationLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppLogsApplicationLogsObservation) DeepCopyInto(out *WindowsWebAppLogsApplicationLogsObservation) { *out = *in @@ -35080,6 +50704,26 @@ func (in *WindowsWebAppLogsApplicationLogsParameters) DeepCopy() *WindowsWebAppL return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppLogsHTTPLogsAzureBlobStorageInitParameters) DeepCopyInto(out *WindowsWebAppLogsHTTPLogsAzureBlobStorageInitParameters) { + *out = *in + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppLogsHTTPLogsAzureBlobStorageInitParameters. +func (in *WindowsWebAppLogsHTTPLogsAzureBlobStorageInitParameters) DeepCopy() *WindowsWebAppLogsHTTPLogsAzureBlobStorageInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppLogsHTTPLogsAzureBlobStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppLogsHTTPLogsAzureBlobStorageObservation) DeepCopyInto(out *WindowsWebAppLogsHTTPLogsAzureBlobStorageObservation) { *out = *in @@ -35121,6 +50765,35 @@ func (in *WindowsWebAppLogsHTTPLogsAzureBlobStorageParameters) DeepCopy() *Windo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppLogsHTTPLogsInitParameters) DeepCopyInto(out *WindowsWebAppLogsHTTPLogsInitParameters) { + *out = *in + if in.AzureBlobStorage != nil { + in, out := &in.AzureBlobStorage, &out.AzureBlobStorage + *out = make([]WindowsWebAppLogsHTTPLogsAzureBlobStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FileSystem != nil { + in, out := &in.FileSystem, &out.FileSystem + *out = make([]LogsHTTPLogsFileSystemInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppLogsHTTPLogsInitParameters. +func (in *WindowsWebAppLogsHTTPLogsInitParameters) DeepCopy() *WindowsWebAppLogsHTTPLogsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppLogsHTTPLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppLogsHTTPLogsObservation) DeepCopyInto(out *WindowsWebAppLogsHTTPLogsObservation) { *out = *in @@ -35179,6 +50852,45 @@ func (in *WindowsWebAppLogsHTTPLogsParameters) DeepCopy() *WindowsWebAppLogsHTTP return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppLogsInitParameters) DeepCopyInto(out *WindowsWebAppLogsInitParameters) { + *out = *in + if in.ApplicationLogs != nil { + in, out := &in.ApplicationLogs, &out.ApplicationLogs + *out = make([]WindowsWebAppLogsApplicationLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DetailedErrorMessages != nil { + in, out := &in.DetailedErrorMessages, &out.DetailedErrorMessages + *out = new(bool) + **out = **in + } + if in.FailedRequestTracing != nil { + in, out := &in.FailedRequestTracing, &out.FailedRequestTracing + *out = new(bool) + **out = **in + } + if in.HTTPLogs != nil { + in, out := &in.HTTPLogs, &out.HTTPLogs + *out = make([]WindowsWebAppLogsHTTPLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppLogsInitParameters. +func (in *WindowsWebAppLogsInitParameters) DeepCopy() *WindowsWebAppLogsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppLogsObservation) DeepCopyInto(out *WindowsWebAppLogsObservation) { *out = *in @@ -35675,6 +51387,96 @@ func (in *WindowsWebAppParameters) DeepCopy() *WindowsWebAppParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSiteConfigApplicationStackInitParameters) DeepCopyInto(out *WindowsWebAppSiteConfigApplicationStackInitParameters) { + *out = *in + if in.CurrentStack != nil { + in, out := &in.CurrentStack, &out.CurrentStack + *out = new(string) + **out = **in + } + if in.DockerContainerName != nil { + in, out := &in.DockerContainerName, &out.DockerContainerName + *out = new(string) + **out = **in + } + if in.DockerContainerRegistry != nil { + in, out := &in.DockerContainerRegistry, &out.DockerContainerRegistry + *out = new(string) + **out = **in + } + if in.DockerContainerTag != nil { + in, out := &in.DockerContainerTag, &out.DockerContainerTag + *out = new(string) + **out = **in + } + if in.DotnetCoreVersion != nil { + in, out := &in.DotnetCoreVersion, &out.DotnetCoreVersion + *out = new(string) + **out = **in + } + if in.DotnetVersion != nil { + in, out := &in.DotnetVersion, &out.DotnetVersion + *out = new(string) + **out = **in + } + if in.JavaContainer != nil { + in, out := &in.JavaContainer, &out.JavaContainer + *out = new(string) + **out = **in + } + if in.JavaContainerVersion != nil { + in, out := &in.JavaContainerVersion, &out.JavaContainerVersion + *out = new(string) + **out = **in + } + if in.JavaEmbeddedServerEnabled != nil { + in, out := &in.JavaEmbeddedServerEnabled, &out.JavaEmbeddedServerEnabled + *out = new(bool) + **out = **in + } + if in.JavaVersion != nil { + in, out := &in.JavaVersion, &out.JavaVersion + *out = new(string) + **out = **in + } + if in.NodeVersion != nil { + in, out := &in.NodeVersion, &out.NodeVersion + *out = new(string) + **out = **in + } + if in.PHPVersion != nil { + in, out := &in.PHPVersion, &out.PHPVersion + *out = new(string) + **out = **in + } + if in.Python != nil { + in, out := &in.Python, &out.Python + *out = new(bool) + **out = **in + } + if in.PythonVersion != nil { + in, out := &in.PythonVersion, &out.PythonVersion + *out = new(string) + **out = **in + } + if in.TomcatVersion != nil { + in, out := &in.TomcatVersion, &out.TomcatVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSiteConfigApplicationStackInitParameters. +func (in *WindowsWebAppSiteConfigApplicationStackInitParameters) DeepCopy() *WindowsWebAppSiteConfigApplicationStackInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSiteConfigApplicationStackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSiteConfigApplicationStackObservation) DeepCopyInto(out *WindowsWebAppSiteConfigApplicationStackObservation) { *out = *in @@ -35855,6 +51657,35 @@ func (in *WindowsWebAppSiteConfigApplicationStackParameters) DeepCopy() *Windows return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSiteConfigAutoHealSettingInitParameters) DeepCopyInto(out *WindowsWebAppSiteConfigAutoHealSettingInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]SiteConfigAutoHealSettingActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Trigger != nil { + in, out := &in.Trigger, &out.Trigger + *out = make([]SiteConfigAutoHealSettingTriggerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSiteConfigAutoHealSettingInitParameters. +func (in *WindowsWebAppSiteConfigAutoHealSettingInitParameters) DeepCopy() *WindowsWebAppSiteConfigAutoHealSettingInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSiteConfigAutoHealSettingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSiteConfigAutoHealSettingObservation) DeepCopyInto(out *WindowsWebAppSiteConfigAutoHealSettingObservation) { *out = *in @@ -35913,6 +51744,37 @@ func (in *WindowsWebAppSiteConfigAutoHealSettingParameters) DeepCopy() *WindowsW return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSiteConfigCorsInitParameters) DeepCopyInto(out *WindowsWebAppSiteConfigCorsInitParameters) { + *out = *in + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportCredentials != nil { + in, out := &in.SupportCredentials, &out.SupportCredentials + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSiteConfigCorsInitParameters. +func (in *WindowsWebAppSiteConfigCorsInitParameters) DeepCopy() *WindowsWebAppSiteConfigCorsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSiteConfigCorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSiteConfigCorsObservation) DeepCopyInto(out *WindowsWebAppSiteConfigCorsObservation) { *out = *in @@ -35975,6 +51837,65 @@ func (in *WindowsWebAppSiteConfigCorsParameters) DeepCopy() *WindowsWebAppSiteCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSiteConfigIPRestrictionHeadersInitParameters) DeepCopyInto(out *WindowsWebAppSiteConfigIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSiteConfigIPRestrictionHeadersInitParameters. +func (in *WindowsWebAppSiteConfigIPRestrictionHeadersInitParameters) DeepCopy() *WindowsWebAppSiteConfigIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSiteConfigIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSiteConfigIPRestrictionHeadersObservation) DeepCopyInto(out *WindowsWebAppSiteConfigIPRestrictionHeadersObservation) { *out = *in @@ -36093,6 +52014,53 @@ func (in *WindowsWebAppSiteConfigIPRestrictionHeadersParameters) DeepCopy() *Win return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSiteConfigIPRestrictionInitParameters) DeepCopyInto(out *WindowsWebAppSiteConfigIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WindowsWebAppSiteConfigIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSiteConfigIPRestrictionInitParameters. +func (in *WindowsWebAppSiteConfigIPRestrictionInitParameters) DeepCopy() *WindowsWebAppSiteConfigIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSiteConfigIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSiteConfigIPRestrictionObservation) DeepCopyInto(out *WindowsWebAppSiteConfigIPRestrictionObservation) { *out = *in @@ -36207,6 +52175,189 @@ func (in *WindowsWebAppSiteConfigIPRestrictionParameters) DeepCopy() *WindowsWeb return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSiteConfigInitParameters) DeepCopyInto(out *WindowsWebAppSiteConfigInitParameters) { + *out = *in + if in.APIDefinitionURL != nil { + in, out := &in.APIDefinitionURL, &out.APIDefinitionURL + *out = new(string) + **out = **in + } + if in.APIManagementAPIID != nil { + in, out := &in.APIManagementAPIID, &out.APIManagementAPIID + *out = new(string) + **out = **in + } + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppCommandLine != nil { + in, out := &in.AppCommandLine, &out.AppCommandLine + *out = new(string) + **out = **in + } + if in.ApplicationStack != nil { + in, out := &in.ApplicationStack, &out.ApplicationStack + *out = make([]WindowsWebAppSiteConfigApplicationStackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoHealEnabled != nil { + in, out := &in.AutoHealEnabled, &out.AutoHealEnabled + *out = new(bool) + **out = **in + } + if in.AutoHealSetting != nil { + in, out := &in.AutoHealSetting, &out.AutoHealSetting + *out = make([]WindowsWebAppSiteConfigAutoHealSettingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ContainerRegistryManagedIdentityClientID != nil { + in, out := &in.ContainerRegistryManagedIdentityClientID, &out.ContainerRegistryManagedIdentityClientID + *out = new(string) + **out = **in + } + if in.ContainerRegistryUseManagedIdentity != nil { + in, out := &in.ContainerRegistryUseManagedIdentity, &out.ContainerRegistryUseManagedIdentity + *out = new(bool) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]WindowsWebAppSiteConfigCorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDocuments != nil { + in, out := &in.DefaultDocuments, &out.DefaultDocuments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckEvictionTimeInMin != nil { + in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin + *out = new(float64) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]WindowsWebAppSiteConfigIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancingMode != nil { + in, out := &in.LoadBalancingMode, &out.LoadBalancingMode + *out = new(string) + **out = **in + } + if in.LocalMySQLEnabled != nil { + in, out := &in.LocalMySQLEnabled, &out.LocalMySQLEnabled + *out = new(bool) + **out = **in + } + if in.ManagedPipelineMode != nil { + in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.RemoteDebuggingEnabled != nil { + in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled + *out = new(bool) + **out = **in + } + if in.RemoteDebuggingVersion != nil { + in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion + *out = new(string) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]WindowsWebAppSiteConfigScmIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmMinimumTLSVersion != nil { + in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorker != nil { + in, out := &in.Use32BitWorker, &out.Use32BitWorker + *out = new(bool) + **out = **in + } + if in.VirtualApplication != nil { + in, out := &in.VirtualApplication, &out.VirtualApplication + *out = make([]VirtualApplicationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSiteConfigInitParameters. +func (in *WindowsWebAppSiteConfigInitParameters) DeepCopy() *WindowsWebAppSiteConfigInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSiteConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSiteConfigObservation) DeepCopyInto(out *WindowsWebAppSiteConfigObservation) { *out = *in @@ -36593,6 +52744,65 @@ func (in *WindowsWebAppSiteConfigParameters) DeepCopy() *WindowsWebAppSiteConfig return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopyInto(out *WindowsWebAppSiteConfigScmIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSiteConfigScmIPRestrictionHeadersInitParameters. +func (in *WindowsWebAppSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopy() *WindowsWebAppSiteConfigScmIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSiteConfigScmIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSiteConfigScmIPRestrictionHeadersObservation) DeepCopyInto(out *WindowsWebAppSiteConfigScmIPRestrictionHeadersObservation) { *out = *in @@ -36711,6 +52921,53 @@ func (in *WindowsWebAppSiteConfigScmIPRestrictionHeadersParameters) DeepCopy() * return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSiteConfigScmIPRestrictionInitParameters) DeepCopyInto(out *WindowsWebAppSiteConfigScmIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WindowsWebAppSiteConfigScmIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSiteConfigScmIPRestrictionInitParameters. +func (in *WindowsWebAppSiteConfigScmIPRestrictionInitParameters) DeepCopy() *WindowsWebAppSiteConfigScmIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSiteConfigScmIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSiteConfigScmIPRestrictionObservation) DeepCopyInto(out *WindowsWebAppSiteConfigScmIPRestrictionObservation) { *out = *in @@ -36825,6 +53082,21 @@ func (in *WindowsWebAppSiteConfigScmIPRestrictionParameters) DeepCopy() *Windows return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSiteCredentialInitParameters) DeepCopyInto(out *WindowsWebAppSiteCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSiteCredentialInitParameters. +func (in *WindowsWebAppSiteCredentialInitParameters) DeepCopy() *WindowsWebAppSiteCredentialInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSiteCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSiteCredentialObservation) DeepCopyInto(out *WindowsWebAppSiteCredentialObservation) { *out = *in @@ -36892,6 +53164,42 @@ func (in *WindowsWebAppSlot) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsActiveDirectoryInitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsActiveDirectoryInitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsActiveDirectoryInitParameters. +func (in *WindowsWebAppSlotAuthSettingsActiveDirectoryInitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsActiveDirectoryInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsActiveDirectoryInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsActiveDirectoryObservation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsActiveDirectoryObservation) { *out = *in @@ -36969,6 +53277,42 @@ func (in *WindowsWebAppSlotAuthSettingsActiveDirectoryParameters) DeepCopy() *Wi return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsFacebookInitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsFacebookInitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsFacebookInitParameters. +func (in *WindowsWebAppSlotAuthSettingsFacebookInitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsFacebookInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsFacebookInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsFacebookObservation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsFacebookObservation) { *out = *in @@ -37046,6 +53390,42 @@ func (in *WindowsWebAppSlotAuthSettingsFacebookParameters) DeepCopy() *WindowsWe return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsGithubInitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsGithubInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsGithubInitParameters. +func (in *WindowsWebAppSlotAuthSettingsGithubInitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsGithubInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsGithubInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsGithubObservation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsGithubObservation) { *out = *in @@ -37123,6 +53503,42 @@ func (in *WindowsWebAppSlotAuthSettingsGithubParameters) DeepCopy() *WindowsWebA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsGoogleInitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsGoogleInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsGoogleInitParameters. +func (in *WindowsWebAppSlotAuthSettingsGoogleInitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsGoogleInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsGoogleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsGoogleObservation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsGoogleObservation) { *out = *in @@ -37200,6 +53616,160 @@ func (in *WindowsWebAppSlotAuthSettingsGoogleParameters) DeepCopy() *WindowsWebA return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsInitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsInitParameters) { + *out = *in + if in.ActiveDirectory != nil { + in, out := &in.ActiveDirectory, &out.ActiveDirectory + *out = make([]WindowsWebAppSlotAuthSettingsActiveDirectoryInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AdditionalLoginParameters != nil { + in, out := &in.AdditionalLoginParameters, &out.AdditionalLoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Facebook != nil { + in, out := &in.Facebook, &out.Facebook + *out = make([]WindowsWebAppSlotAuthSettingsFacebookInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Github != nil { + in, out := &in.Github, &out.Github + *out = make([]WindowsWebAppSlotAuthSettingsGithubInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Google != nil { + in, out := &in.Google, &out.Google + *out = make([]WindowsWebAppSlotAuthSettingsGoogleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Issuer != nil { + in, out := &in.Issuer, &out.Issuer + *out = new(string) + **out = **in + } + if in.Microsoft != nil { + in, out := &in.Microsoft, &out.Microsoft + *out = make([]WindowsWebAppSlotAuthSettingsMicrosoftInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TokenRefreshExtensionHours != nil { + in, out := &in.TokenRefreshExtensionHours, &out.TokenRefreshExtensionHours + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.Twitter != nil { + in, out := &in.Twitter, &out.Twitter + *out = make([]WindowsWebAppSlotAuthSettingsTwitterInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedClientAction != nil { + in, out := &in.UnauthenticatedClientAction, &out.UnauthenticatedClientAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsInitParameters. +func (in *WindowsWebAppSlotAuthSettingsInitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsInitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsMicrosoftInitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsMicrosoftInitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.OauthScopes != nil { + in, out := &in.OauthScopes, &out.OauthScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsMicrosoftInitParameters. +func (in *WindowsWebAppSlotAuthSettingsMicrosoftInitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsMicrosoftInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsMicrosoftInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsMicrosoftObservation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsMicrosoftObservation) { *out = *in @@ -37513,6 +54083,31 @@ func (in *WindowsWebAppSlotAuthSettingsParameters) DeepCopy() *WindowsWebAppSlot return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsTwitterInitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsTwitterInitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsTwitterInitParameters. +func (in *WindowsWebAppSlotAuthSettingsTwitterInitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsTwitterInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsTwitterInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsTwitterObservation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsTwitterObservation) { *out = *in @@ -37533,37 +54128,158 @@ func (in *WindowsWebAppSlotAuthSettingsTwitterObservation) DeepCopy() *WindowsWe if in == nil { return nil } - out := new(WindowsWebAppSlotAuthSettingsTwitterObservation) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsWebAppSlotAuthSettingsTwitterParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsTwitterParameters) { - *out = *in - if in.ConsumerKey != nil { - in, out := &in.ConsumerKey, &out.ConsumerKey + out := new(WindowsWebAppSlotAuthSettingsTwitterObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsTwitterParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsTwitterParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSecretRef != nil { + in, out := &in.ConsumerSecretSecretRef, &out.ConsumerSecretSecretRef + *out = new(v1.SecretKeySelector) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsTwitterParameters. +func (in *WindowsWebAppSlotAuthSettingsTwitterParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsTwitterParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsTwitterParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) { + *out = *in + if in.AllowedApplications != nil { + in, out := &in.AllowedApplications, &out.AllowedApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedGroups != nil { + in, out := &in.AllowedGroups, &out.AllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.AllowedIdentities != nil { + in, out := &in.AllowedIdentities, &out.AllowedIdentities + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretCertificateThumbprint != nil { + in, out := &in.ClientSecretCertificateThumbprint, &out.ClientSecretCertificateThumbprint *out = new(string) **out = **in } - if in.ConsumerSecretSecretRef != nil { - in, out := &in.ConsumerSecretSecretRef, &out.ConsumerSecretSecretRef - *out = new(v1.SecretKeySelector) + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) **out = **in } - if in.ConsumerSecretSettingName != nil { - in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + if in.JwtAllowedClientApplications != nil { + in, out := &in.JwtAllowedClientApplications, &out.JwtAllowedClientApplications + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.JwtAllowedGroups != nil { + in, out := &in.JwtAllowedGroups, &out.JwtAllowedGroups + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LoginParameters != nil { + in, out := &in.LoginParameters, &out.LoginParameters + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.TenantAuthEndpoint != nil { + in, out := &in.TenantAuthEndpoint, &out.TenantAuthEndpoint *out = new(string) **out = **in } + if in.WwwAuthenticationDisabled != nil { + in, out := &in.WwwAuthenticationDisabled, &out.WwwAuthenticationDisabled + *out = new(bool) + **out = **in + } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsTwitterParameters. -func (in *WindowsWebAppSlotAuthSettingsTwitterParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsTwitterParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters { if in == nil { return nil } - out := new(WindowsWebAppSlotAuthSettingsTwitterParameters) + out := new(WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters) in.DeepCopyInto(out) return out } @@ -37810,6 +54526,31 @@ func (in *WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2AppleV2InitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2AppleV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2AppleV2InitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2AppleV2InitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2AppleV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsV2AppleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsV2AppleV2Observation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2AppleV2Observation) { *out = *in @@ -37871,6 +54612,26 @@ func (in *WindowsWebAppSlotAuthSettingsV2AppleV2Parameters) DeepCopy() *WindowsW return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2Observation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2Observation) { *out = *in @@ -37911,6 +54672,52 @@ func (in *WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters) DeepCopy return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2CustomOidcV2InitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2CustomOidcV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.NameClaimType != nil { + in, out := &in.NameClaimType, &out.NameClaimType + *out = new(string) + **out = **in + } + if in.OpenIDConfigurationEndpoint != nil { + in, out := &in.OpenIDConfigurationEndpoint, &out.OpenIDConfigurationEndpoint + *out = new(string) + **out = **in + } + if in.Scopes != nil { + in, out := &in.Scopes, &out.Scopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2CustomOidcV2InitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2CustomOidcV2InitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2CustomOidcV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsV2CustomOidcV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsV2CustomOidcV2Observation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2CustomOidcV2Observation) { *out = *in @@ -38033,6 +54840,47 @@ func (in *WindowsWebAppSlotAuthSettingsV2CustomOidcV2Parameters) DeepCopy() *Win return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2FacebookV2InitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2FacebookV2InitParameters) { + *out = *in + if in.AppID != nil { + in, out := &in.AppID, &out.AppID + *out = new(string) + **out = **in + } + if in.AppSecretSettingName != nil { + in, out := &in.AppSecretSettingName, &out.AppSecretSettingName + *out = new(string) + **out = **in + } + if in.GraphAPIVersion != nil { + in, out := &in.GraphAPIVersion, &out.GraphAPIVersion + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2FacebookV2InitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2FacebookV2InitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2FacebookV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsV2FacebookV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsV2FacebookV2Observation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2FacebookV2Observation) { *out = *in @@ -38115,6 +54963,42 @@ func (in *WindowsWebAppSlotAuthSettingsV2FacebookV2Parameters) DeepCopy() *Windo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2GithubV2InitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2GithubV2InitParameters) { + *out = *in + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2GithubV2InitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2GithubV2InitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2GithubV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsV2GithubV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsV2GithubV2Observation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2GithubV2Observation) { *out = *in @@ -38187,6 +55071,53 @@ func (in *WindowsWebAppSlotAuthSettingsV2GithubV2Parameters) DeepCopy() *Windows return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2GoogleV2InitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2GoogleV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2GoogleV2InitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2GoogleV2InitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2GoogleV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsV2GoogleV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsV2GoogleV2Observation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2GoogleV2Observation) { *out = *in @@ -38281,6 +55212,233 @@ func (in *WindowsWebAppSlotAuthSettingsV2GoogleV2Parameters) DeepCopy() *Windows return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2InitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2InitParameters) { + *out = *in + if in.ActiveDirectoryV2 != nil { + in, out := &in.ActiveDirectoryV2, &out.ActiveDirectoryV2 + *out = make([]WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AppleV2 != nil { + in, out := &in.AppleV2, &out.AppleV2 + *out = make([]WindowsWebAppSlotAuthSettingsV2AppleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthEnabled != nil { + in, out := &in.AuthEnabled, &out.AuthEnabled + *out = new(bool) + **out = **in + } + if in.AzureStaticWebAppV2 != nil { + in, out := &in.AzureStaticWebAppV2, &out.AzureStaticWebAppV2 + *out = make([]WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ConfigFilePath != nil { + in, out := &in.ConfigFilePath, &out.ConfigFilePath + *out = new(string) + **out = **in + } + if in.CustomOidcV2 != nil { + in, out := &in.CustomOidcV2, &out.CustomOidcV2 + *out = make([]WindowsWebAppSlotAuthSettingsV2CustomOidcV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultProvider != nil { + in, out := &in.DefaultProvider, &out.DefaultProvider + *out = new(string) + **out = **in + } + if in.ExcludedPaths != nil { + in, out := &in.ExcludedPaths, &out.ExcludedPaths + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FacebookV2 != nil { + in, out := &in.FacebookV2, &out.FacebookV2 + *out = make([]WindowsWebAppSlotAuthSettingsV2FacebookV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ForwardProxyConvention != nil { + in, out := &in.ForwardProxyConvention, &out.ForwardProxyConvention + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomHostHeaderName != nil { + in, out := &in.ForwardProxyCustomHostHeaderName, &out.ForwardProxyCustomHostHeaderName + *out = new(string) + **out = **in + } + if in.ForwardProxyCustomSchemeHeaderName != nil { + in, out := &in.ForwardProxyCustomSchemeHeaderName, &out.ForwardProxyCustomSchemeHeaderName + *out = new(string) + **out = **in + } + if in.GithubV2 != nil { + in, out := &in.GithubV2, &out.GithubV2 + *out = make([]WindowsWebAppSlotAuthSettingsV2GithubV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.GoogleV2 != nil { + in, out := &in.GoogleV2, &out.GoogleV2 + *out = make([]WindowsWebAppSlotAuthSettingsV2GoogleV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.HTTPRouteAPIPrefix != nil { + in, out := &in.HTTPRouteAPIPrefix, &out.HTTPRouteAPIPrefix + *out = new(string) + **out = **in + } + if in.Login != nil { + in, out := &in.Login, &out.Login + *out = make([]WindowsWebAppSlotAuthSettingsV2LoginInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MicrosoftV2 != nil { + in, out := &in.MicrosoftV2, &out.MicrosoftV2 + *out = make([]WindowsWebAppSlotAuthSettingsV2MicrosoftV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.RequireAuthentication != nil { + in, out := &in.RequireAuthentication, &out.RequireAuthentication + *out = new(bool) + **out = **in + } + if in.RequireHTTPS != nil { + in, out := &in.RequireHTTPS, &out.RequireHTTPS + *out = new(bool) + **out = **in + } + if in.RuntimeVersion != nil { + in, out := &in.RuntimeVersion, &out.RuntimeVersion + *out = new(string) + **out = **in + } + if in.TwitterV2 != nil { + in, out := &in.TwitterV2, &out.TwitterV2 + *out = make([]WindowsWebAppSlotAuthSettingsV2TwitterV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.UnauthenticatedAction != nil { + in, out := &in.UnauthenticatedAction, &out.UnauthenticatedAction + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2InitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2InitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsV2InitParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2LoginInitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2LoginInitParameters) { + *out = *in + if in.AllowedExternalRedirectUrls != nil { + in, out := &in.AllowedExternalRedirectUrls, &out.AllowedExternalRedirectUrls + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.CookieExpirationConvention != nil { + in, out := &in.CookieExpirationConvention, &out.CookieExpirationConvention + *out = new(string) + **out = **in + } + if in.CookieExpirationTime != nil { + in, out := &in.CookieExpirationTime, &out.CookieExpirationTime + *out = new(string) + **out = **in + } + if in.LogoutEndpoint != nil { + in, out := &in.LogoutEndpoint, &out.LogoutEndpoint + *out = new(string) + **out = **in + } + if in.NonceExpirationTime != nil { + in, out := &in.NonceExpirationTime, &out.NonceExpirationTime + *out = new(string) + **out = **in + } + if in.PreserveURLFragmentsForLogins != nil { + in, out := &in.PreserveURLFragmentsForLogins, &out.PreserveURLFragmentsForLogins + *out = new(bool) + **out = **in + } + if in.TokenRefreshExtensionTime != nil { + in, out := &in.TokenRefreshExtensionTime, &out.TokenRefreshExtensionTime + *out = new(float64) + **out = **in + } + if in.TokenStoreEnabled != nil { + in, out := &in.TokenStoreEnabled, &out.TokenStoreEnabled + *out = new(bool) + **out = **in + } + if in.TokenStorePath != nil { + in, out := &in.TokenStorePath, &out.TokenStorePath + *out = new(string) + **out = **in + } + if in.TokenStoreSASSettingName != nil { + in, out := &in.TokenStoreSASSettingName, &out.TokenStoreSASSettingName + *out = new(string) + **out = **in + } + if in.ValidateNonce != nil { + in, out := &in.ValidateNonce, &out.ValidateNonce + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2LoginInitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2LoginInitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2LoginInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsV2LoginInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsV2LoginObservation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2LoginObservation) { *out = *in @@ -38433,6 +55591,53 @@ func (in *WindowsWebAppSlotAuthSettingsV2LoginParameters) DeepCopy() *WindowsWeb return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2MicrosoftV2InitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2MicrosoftV2InitParameters) { + *out = *in + if in.AllowedAudiences != nil { + in, out := &in.AllowedAudiences, &out.AllowedAudiences + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ClientID != nil { + in, out := &in.ClientID, &out.ClientID + *out = new(string) + **out = **in + } + if in.ClientSecretSettingName != nil { + in, out := &in.ClientSecretSettingName, &out.ClientSecretSettingName + *out = new(string) + **out = **in + } + if in.LoginScopes != nil { + in, out := &in.LoginScopes, &out.LoginScopes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2MicrosoftV2InitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2MicrosoftV2InitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2MicrosoftV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsV2MicrosoftV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsV2MicrosoftV2Observation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2MicrosoftV2Observation) { *out = *in @@ -38829,6 +56034,31 @@ func (in *WindowsWebAppSlotAuthSettingsV2Parameters) DeepCopy() *WindowsWebAppSl return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotAuthSettingsV2TwitterV2InitParameters) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2TwitterV2InitParameters) { + *out = *in + if in.ConsumerKey != nil { + in, out := &in.ConsumerKey, &out.ConsumerKey + *out = new(string) + **out = **in + } + if in.ConsumerSecretSettingName != nil { + in, out := &in.ConsumerSecretSettingName, &out.ConsumerSecretSettingName + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotAuthSettingsV2TwitterV2InitParameters. +func (in *WindowsWebAppSlotAuthSettingsV2TwitterV2InitParameters) DeepCopy() *WindowsWebAppSlotAuthSettingsV2TwitterV2InitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotAuthSettingsV2TwitterV2InitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotAuthSettingsV2TwitterV2Observation) DeepCopyInto(out *WindowsWebAppSlotAuthSettingsV2TwitterV2Observation) { *out = *in @@ -38879,6 +56109,38 @@ func (in *WindowsWebAppSlotAuthSettingsV2TwitterV2Parameters) DeepCopy() *Window return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotBackupInitParameters) DeepCopyInto(out *WindowsWebAppSlotBackupInitParameters) { + *out = *in + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Schedule != nil { + in, out := &in.Schedule, &out.Schedule + *out = make([]WindowsWebAppSlotBackupScheduleInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotBackupInitParameters. +func (in *WindowsWebAppSlotBackupInitParameters) DeepCopy() *WindowsWebAppSlotBackupInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotBackupInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotBackupObservation) DeepCopyInto(out *WindowsWebAppSlotBackupObservation) { *out = *in @@ -38944,6 +56206,46 @@ func (in *WindowsWebAppSlotBackupParameters) DeepCopy() *WindowsWebAppSlotBackup return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotBackupScheduleInitParameters) DeepCopyInto(out *WindowsWebAppSlotBackupScheduleInitParameters) { + *out = *in + if in.FrequencyInterval != nil { + in, out := &in.FrequencyInterval, &out.FrequencyInterval + *out = new(float64) + **out = **in + } + if in.FrequencyUnit != nil { + in, out := &in.FrequencyUnit, &out.FrequencyUnit + *out = new(string) + **out = **in + } + if in.KeepAtLeastOneBackup != nil { + in, out := &in.KeepAtLeastOneBackup, &out.KeepAtLeastOneBackup + *out = new(bool) + **out = **in + } + if in.RetentionPeriodDays != nil { + in, out := &in.RetentionPeriodDays, &out.RetentionPeriodDays + *out = new(float64) + **out = **in + } + if in.StartTime != nil { + in, out := &in.StartTime, &out.StartTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotBackupScheduleInitParameters. +func (in *WindowsWebAppSlotBackupScheduleInitParameters) DeepCopy() *WindowsWebAppSlotBackupScheduleInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotBackupScheduleInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotBackupScheduleObservation) DeepCopyInto(out *WindowsWebAppSlotBackupScheduleObservation) { *out = *in @@ -39029,6 +56331,31 @@ func (in *WindowsWebAppSlotBackupScheduleParameters) DeepCopy() *WindowsWebAppSl return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotConnectionStringInitParameters) DeepCopyInto(out *WindowsWebAppSlotConnectionStringInitParameters) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotConnectionStringInitParameters. +func (in *WindowsWebAppSlotConnectionStringInitParameters) DeepCopy() *WindowsWebAppSlotConnectionStringInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotConnectionStringInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotConnectionStringObservation) DeepCopyInto(out *WindowsWebAppSlotConnectionStringObservation) { *out = *in @@ -39080,6 +56407,37 @@ func (in *WindowsWebAppSlotConnectionStringParameters) DeepCopy() *WindowsWebApp return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotIdentityInitParameters) DeepCopyInto(out *WindowsWebAppSlotIdentityInitParameters) { + *out = *in + if in.IdentityIds != nil { + in, out := &in.IdentityIds, &out.IdentityIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotIdentityInitParameters. +func (in *WindowsWebAppSlotIdentityInitParameters) DeepCopy() *WindowsWebAppSlotIdentityInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotIdentityInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotIdentityObservation) DeepCopyInto(out *WindowsWebAppSlotIdentityObservation) { *out = *in @@ -39152,6 +56510,152 @@ func (in *WindowsWebAppSlotIdentityParameters) DeepCopy() *WindowsWebAppSlotIden return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotInitParameters) DeepCopyInto(out *WindowsWebAppSlotInitParameters) { + *out = *in + if in.AppSettings != nil { + in, out := &in.AppSettings, &out.AppSettings + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.AuthSettings != nil { + in, out := &in.AuthSettings, &out.AuthSettings + *out = make([]WindowsWebAppSlotAuthSettingsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AuthSettingsV2 != nil { + in, out := &in.AuthSettingsV2, &out.AuthSettingsV2 + *out = make([]WindowsWebAppSlotAuthSettingsV2InitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = make([]WindowsWebAppSlotBackupInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ClientAffinityEnabled != nil { + in, out := &in.ClientAffinityEnabled, &out.ClientAffinityEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateEnabled != nil { + in, out := &in.ClientCertificateEnabled, &out.ClientCertificateEnabled + *out = new(bool) + **out = **in + } + if in.ClientCertificateExclusionPaths != nil { + in, out := &in.ClientCertificateExclusionPaths, &out.ClientCertificateExclusionPaths + *out = new(string) + **out = **in + } + if in.ClientCertificateMode != nil { + in, out := &in.ClientCertificateMode, &out.ClientCertificateMode + *out = new(string) + **out = **in + } + if in.ConnectionString != nil { + in, out := &in.ConnectionString, &out.ConnectionString + *out = make([]WindowsWebAppSlotConnectionStringInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.HTTPSOnly != nil { + in, out := &in.HTTPSOnly, &out.HTTPSOnly + *out = new(bool) + **out = **in + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = make([]WindowsWebAppSlotIdentityInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.KeyVaultReferenceIdentityID != nil { + in, out := &in.KeyVaultReferenceIdentityID, &out.KeyVaultReferenceIdentityID + *out = new(string) + **out = **in + } + if in.Logs != nil { + in, out := &in.Logs, &out.Logs + *out = make([]WindowsWebAppSlotLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ServicePlanID != nil { + in, out := &in.ServicePlanID, &out.ServicePlanID + *out = new(string) + **out = **in + } + if in.SiteConfig != nil { + in, out := &in.SiteConfig, &out.SiteConfig + *out = make([]WindowsWebAppSlotSiteConfigInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccount != nil { + in, out := &in.StorageAccount, &out.StorageAccount + *out = make([]WindowsWebAppSlotStorageAccountInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.ZipDeployFile != nil { + in, out := &in.ZipDeployFile, &out.ZipDeployFile + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotInitParameters. +func (in *WindowsWebAppSlotInitParameters) DeepCopy() *WindowsWebAppSlotInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotList) DeepCopyInto(out *WindowsWebAppSlotList) { *out = *in @@ -39184,6 +56688,36 @@ func (in *WindowsWebAppSlotList) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageInitParameters) DeepCopyInto(out *WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageInitParameters) { + *out = *in + if in.Level != nil { + in, out := &in.Level, &out.Level + *out = new(string) + **out = **in + } + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.SASURL != nil { + in, out := &in.SASURL, &out.SASURL + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageInitParameters. +func (in *WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageInitParameters) DeepCopy() *WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageObservation) DeepCopyInto(out *WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageObservation) { *out = *in @@ -39244,6 +56778,33 @@ func (in *WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageParameters) DeepCo return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotLogsApplicationLogsInitParameters) DeepCopyInto(out *WindowsWebAppSlotLogsApplicationLogsInitParameters) { + *out = *in + if in.AzureBlobStorage != nil { + in, out := &in.AzureBlobStorage, &out.AzureBlobStorage + *out = make([]WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FileSystemLevel != nil { + in, out := &in.FileSystemLevel, &out.FileSystemLevel + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotLogsApplicationLogsInitParameters. +func (in *WindowsWebAppSlotLogsApplicationLogsInitParameters) DeepCopy() *WindowsWebAppSlotLogsApplicationLogsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotLogsApplicationLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotLogsApplicationLogsObservation) DeepCopyInto(out *WindowsWebAppSlotLogsApplicationLogsObservation) { *out = *in @@ -39298,6 +56859,26 @@ func (in *WindowsWebAppSlotLogsApplicationLogsParameters) DeepCopy() *WindowsWeb return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageInitParameters) DeepCopyInto(out *WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageInitParameters) { + *out = *in + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageInitParameters. +func (in *WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageInitParameters) DeepCopy() *WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageObservation) DeepCopyInto(out *WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageObservation) { *out = *in @@ -39339,6 +56920,31 @@ func (in *WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageParameters) DeepCopy() *W return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotLogsHTTPLogsFileSystemInitParameters) DeepCopyInto(out *WindowsWebAppSlotLogsHTTPLogsFileSystemInitParameters) { + *out = *in + if in.RetentionInDays != nil { + in, out := &in.RetentionInDays, &out.RetentionInDays + *out = new(float64) + **out = **in + } + if in.RetentionInMb != nil { + in, out := &in.RetentionInMb, &out.RetentionInMb + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotLogsHTTPLogsFileSystemInitParameters. +func (in *WindowsWebAppSlotLogsHTTPLogsFileSystemInitParameters) DeepCopy() *WindowsWebAppSlotLogsHTTPLogsFileSystemInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotLogsHTTPLogsFileSystemInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotLogsHTTPLogsFileSystemObservation) DeepCopyInto(out *WindowsWebAppSlotLogsHTTPLogsFileSystemObservation) { *out = *in @@ -39389,6 +56995,35 @@ func (in *WindowsWebAppSlotLogsHTTPLogsFileSystemParameters) DeepCopy() *Windows return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotLogsHTTPLogsInitParameters) DeepCopyInto(out *WindowsWebAppSlotLogsHTTPLogsInitParameters) { + *out = *in + if in.AzureBlobStorage != nil { + in, out := &in.AzureBlobStorage, &out.AzureBlobStorage + *out = make([]WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.FileSystem != nil { + in, out := &in.FileSystem, &out.FileSystem + *out = make([]WindowsWebAppSlotLogsHTTPLogsFileSystemInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotLogsHTTPLogsInitParameters. +func (in *WindowsWebAppSlotLogsHTTPLogsInitParameters) DeepCopy() *WindowsWebAppSlotLogsHTTPLogsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotLogsHTTPLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotLogsHTTPLogsObservation) DeepCopyInto(out *WindowsWebAppSlotLogsHTTPLogsObservation) { *out = *in @@ -39447,6 +57082,45 @@ func (in *WindowsWebAppSlotLogsHTTPLogsParameters) DeepCopy() *WindowsWebAppSlot return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotLogsInitParameters) DeepCopyInto(out *WindowsWebAppSlotLogsInitParameters) { + *out = *in + if in.ApplicationLogs != nil { + in, out := &in.ApplicationLogs, &out.ApplicationLogs + *out = make([]WindowsWebAppSlotLogsApplicationLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DetailedErrorMessages != nil { + in, out := &in.DetailedErrorMessages, &out.DetailedErrorMessages + *out = new(bool) + **out = **in + } + if in.FailedRequestTracing != nil { + in, out := &in.FailedRequestTracing, &out.FailedRequestTracing + *out = new(bool) + **out = **in + } + if in.HTTPLogs != nil { + in, out := &in.HTTPLogs, &out.HTTPLogs + *out = make([]WindowsWebAppSlotLogsHTTPLogsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotLogsInitParameters. +func (in *WindowsWebAppSlotLogsInitParameters) DeepCopy() *WindowsWebAppSlotLogsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotLogsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotLogsObservation) DeepCopyInto(out *WindowsWebAppSlotLogsObservation) { *out = *in @@ -39909,6 +57583,96 @@ func (in *WindowsWebAppSlotParameters) DeepCopy() *WindowsWebAppSlotParameters { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteConfigApplicationStackInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigApplicationStackInitParameters) { + *out = *in + if in.CurrentStack != nil { + in, out := &in.CurrentStack, &out.CurrentStack + *out = new(string) + **out = **in + } + if in.DockerContainerName != nil { + in, out := &in.DockerContainerName, &out.DockerContainerName + *out = new(string) + **out = **in + } + if in.DockerContainerRegistry != nil { + in, out := &in.DockerContainerRegistry, &out.DockerContainerRegistry + *out = new(string) + **out = **in + } + if in.DockerContainerTag != nil { + in, out := &in.DockerContainerTag, &out.DockerContainerTag + *out = new(string) + **out = **in + } + if in.DotnetCoreVersion != nil { + in, out := &in.DotnetCoreVersion, &out.DotnetCoreVersion + *out = new(string) + **out = **in + } + if in.DotnetVersion != nil { + in, out := &in.DotnetVersion, &out.DotnetVersion + *out = new(string) + **out = **in + } + if in.JavaContainer != nil { + in, out := &in.JavaContainer, &out.JavaContainer + *out = new(string) + **out = **in + } + if in.JavaContainerVersion != nil { + in, out := &in.JavaContainerVersion, &out.JavaContainerVersion + *out = new(string) + **out = **in + } + if in.JavaEmbeddedServerEnabled != nil { + in, out := &in.JavaEmbeddedServerEnabled, &out.JavaEmbeddedServerEnabled + *out = new(bool) + **out = **in + } + if in.JavaVersion != nil { + in, out := &in.JavaVersion, &out.JavaVersion + *out = new(string) + **out = **in + } + if in.NodeVersion != nil { + in, out := &in.NodeVersion, &out.NodeVersion + *out = new(string) + **out = **in + } + if in.PHPVersion != nil { + in, out := &in.PHPVersion, &out.PHPVersion + *out = new(string) + **out = **in + } + if in.Python != nil { + in, out := &in.Python, &out.Python + *out = new(bool) + **out = **in + } + if in.PythonVersion != nil { + in, out := &in.PythonVersion, &out.PythonVersion + *out = new(string) + **out = **in + } + if in.TomcatVersion != nil { + in, out := &in.TomcatVersion, &out.TomcatVersion + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigApplicationStackInitParameters. +func (in *WindowsWebAppSlotSiteConfigApplicationStackInitParameters) DeepCopy() *WindowsWebAppSlotSiteConfigApplicationStackInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteConfigApplicationStackInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotSiteConfigApplicationStackObservation) DeepCopyInto(out *WindowsWebAppSlotSiteConfigApplicationStackObservation) { *out = *in @@ -40089,6 +57853,38 @@ func (in *WindowsWebAppSlotSiteConfigApplicationStackParameters) DeepCopy() *Win return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteConfigAutoHealSettingActionInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigAutoHealSettingActionInitParameters) { + *out = *in + if in.ActionType != nil { + in, out := &in.ActionType, &out.ActionType + *out = new(string) + **out = **in + } + if in.CustomAction != nil { + in, out := &in.CustomAction, &out.CustomAction + *out = make([]ActionCustomActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MinimumProcessExecutionTime != nil { + in, out := &in.MinimumProcessExecutionTime, &out.MinimumProcessExecutionTime + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigAutoHealSettingActionInitParameters. +func (in *WindowsWebAppSlotSiteConfigAutoHealSettingActionInitParameters) DeepCopy() *WindowsWebAppSlotSiteConfigAutoHealSettingActionInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteConfigAutoHealSettingActionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotSiteConfigAutoHealSettingActionObservation) DeepCopyInto(out *WindowsWebAppSlotSiteConfigAutoHealSettingActionObservation) { *out = *in @@ -40153,6 +57949,35 @@ func (in *WindowsWebAppSlotSiteConfigAutoHealSettingActionParameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteConfigAutoHealSettingInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigAutoHealSettingInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = make([]WindowsWebAppSlotSiteConfigAutoHealSettingActionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Trigger != nil { + in, out := &in.Trigger, &out.Trigger + *out = make([]WindowsWebAppSlotSiteConfigAutoHealSettingTriggerInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigAutoHealSettingInitParameters. +func (in *WindowsWebAppSlotSiteConfigAutoHealSettingInitParameters) DeepCopy() *WindowsWebAppSlotSiteConfigAutoHealSettingInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteConfigAutoHealSettingInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotSiteConfigAutoHealSettingObservation) DeepCopyInto(out *WindowsWebAppSlotSiteConfigAutoHealSettingObservation) { *out = *in @@ -40192,21 +58017,62 @@ func (in *WindowsWebAppSlotSiteConfigAutoHealSettingParameters) DeepCopyInto(out (*in)[i].DeepCopyInto(&(*out)[i]) } } - if in.Trigger != nil { - in, out := &in.Trigger, &out.Trigger - *out = make([]WindowsWebAppSlotSiteConfigAutoHealSettingTriggerParameters, len(*in)) + if in.Trigger != nil { + in, out := &in.Trigger, &out.Trigger + *out = make([]WindowsWebAppSlotSiteConfigAutoHealSettingTriggerParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigAutoHealSettingParameters. +func (in *WindowsWebAppSlotSiteConfigAutoHealSettingParameters) DeepCopy() *WindowsWebAppSlotSiteConfigAutoHealSettingParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteConfigAutoHealSettingParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteConfigAutoHealSettingTriggerInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigAutoHealSettingTriggerInitParameters) { + *out = *in + if in.PrivateMemoryKb != nil { + in, out := &in.PrivateMemoryKb, &out.PrivateMemoryKb + *out = new(float64) + **out = **in + } + if in.Requests != nil { + in, out := &in.Requests, &out.Requests + *out = make([]SiteConfigAutoHealSettingTriggerRequestsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.SlowRequest != nil { + in, out := &in.SlowRequest, &out.SlowRequest + *out = make([]SiteConfigAutoHealSettingTriggerSlowRequestInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StatusCode != nil { + in, out := &in.StatusCode, &out.StatusCode + *out = make([]SiteConfigAutoHealSettingTriggerStatusCodeInitParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigAutoHealSettingParameters. -func (in *WindowsWebAppSlotSiteConfigAutoHealSettingParameters) DeepCopy() *WindowsWebAppSlotSiteConfigAutoHealSettingParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigAutoHealSettingTriggerInitParameters. +func (in *WindowsWebAppSlotSiteConfigAutoHealSettingTriggerInitParameters) DeepCopy() *WindowsWebAppSlotSiteConfigAutoHealSettingTriggerInitParameters { if in == nil { return nil } - out := new(WindowsWebAppSlotSiteConfigAutoHealSettingParameters) + out := new(WindowsWebAppSlotSiteConfigAutoHealSettingTriggerInitParameters) in.DeepCopyInto(out) return out } @@ -40293,6 +58159,37 @@ func (in *WindowsWebAppSlotSiteConfigAutoHealSettingTriggerParameters) DeepCopy( return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteConfigCorsInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigCorsInitParameters) { + *out = *in + if in.AllowedOrigins != nil { + in, out := &in.AllowedOrigins, &out.AllowedOrigins + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.SupportCredentials != nil { + in, out := &in.SupportCredentials, &out.SupportCredentials + *out = new(bool) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigCorsInitParameters. +func (in *WindowsWebAppSlotSiteConfigCorsInitParameters) DeepCopy() *WindowsWebAppSlotSiteConfigCorsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteConfigCorsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotSiteConfigCorsObservation) DeepCopyInto(out *WindowsWebAppSlotSiteConfigCorsObservation) { *out = *in @@ -40355,6 +58252,65 @@ func (in *WindowsWebAppSlotSiteConfigCorsParameters) DeepCopy() *WindowsWebAppSl return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteConfigIPRestrictionHeadersInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigIPRestrictionHeadersInitParameters) { + *out = *in + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigIPRestrictionHeadersInitParameters. +func (in *WindowsWebAppSlotSiteConfigIPRestrictionHeadersInitParameters) DeepCopy() *WindowsWebAppSlotSiteConfigIPRestrictionHeadersInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteConfigIPRestrictionHeadersInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotSiteConfigIPRestrictionHeadersObservation) DeepCopyInto(out *WindowsWebAppSlotSiteConfigIPRestrictionHeadersObservation) { *out = *in @@ -40473,6 +58429,53 @@ func (in *WindowsWebAppSlotSiteConfigIPRestrictionHeadersParameters) DeepCopy() return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteConfigIPRestrictionInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WindowsWebAppSlotSiteConfigIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigIPRestrictionInitParameters. +func (in *WindowsWebAppSlotSiteConfigIPRestrictionInitParameters) DeepCopy() *WindowsWebAppSlotSiteConfigIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteConfigIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotSiteConfigIPRestrictionObservation) DeepCopyInto(out *WindowsWebAppSlotSiteConfigIPRestrictionObservation) { *out = *in @@ -40587,6 +58590,194 @@ func (in *WindowsWebAppSlotSiteConfigIPRestrictionParameters) DeepCopy() *Window return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteConfigInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigInitParameters) { + *out = *in + if in.APIDefinitionURL != nil { + in, out := &in.APIDefinitionURL, &out.APIDefinitionURL + *out = new(string) + **out = **in + } + if in.APIManagementAPIID != nil { + in, out := &in.APIManagementAPIID, &out.APIManagementAPIID + *out = new(string) + **out = **in + } + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppCommandLine != nil { + in, out := &in.AppCommandLine, &out.AppCommandLine + *out = new(string) + **out = **in + } + if in.ApplicationStack != nil { + in, out := &in.ApplicationStack, &out.ApplicationStack + *out = make([]WindowsWebAppSlotSiteConfigApplicationStackInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoHealEnabled != nil { + in, out := &in.AutoHealEnabled, &out.AutoHealEnabled + *out = new(bool) + **out = **in + } + if in.AutoHealSetting != nil { + in, out := &in.AutoHealSetting, &out.AutoHealSetting + *out = make([]WindowsWebAppSlotSiteConfigAutoHealSettingInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoSwapSlotName != nil { + in, out := &in.AutoSwapSlotName, &out.AutoSwapSlotName + *out = new(string) + **out = **in + } + if in.ContainerRegistryManagedIdentityClientID != nil { + in, out := &in.ContainerRegistryManagedIdentityClientID, &out.ContainerRegistryManagedIdentityClientID + *out = new(string) + **out = **in + } + if in.ContainerRegistryUseManagedIdentity != nil { + in, out := &in.ContainerRegistryUseManagedIdentity, &out.ContainerRegistryUseManagedIdentity + *out = new(bool) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]WindowsWebAppSlotSiteConfigCorsInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDocuments != nil { + in, out := &in.DefaultDocuments, &out.DefaultDocuments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckEvictionTimeInMin != nil { + in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin + *out = new(float64) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]WindowsWebAppSlotSiteConfigIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancingMode != nil { + in, out := &in.LoadBalancingMode, &out.LoadBalancingMode + *out = new(string) + **out = **in + } + if in.LocalMySQLEnabled != nil { + in, out := &in.LocalMySQLEnabled, &out.LocalMySQLEnabled + *out = new(bool) + **out = **in + } + if in.ManagedPipelineMode != nil { + in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.RemoteDebuggingEnabled != nil { + in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled + *out = new(bool) + **out = **in + } + if in.RemoteDebuggingVersion != nil { + in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion + *out = new(string) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]WindowsWebAppSlotSiteConfigScmIPRestrictionInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmMinimumTLSVersion != nil { + in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorker != nil { + in, out := &in.Use32BitWorker, &out.Use32BitWorker + *out = new(bool) + **out = **in + } + if in.VirtualApplication != nil { + in, out := &in.VirtualApplication, &out.VirtualApplication + *out = make([]SiteConfigVirtualApplicationInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigInitParameters. +func (in *WindowsWebAppSlotSiteConfigInitParameters) DeepCopy() *WindowsWebAppSlotSiteConfigInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteConfigInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotSiteConfigObservation) DeepCopyInto(out *WindowsWebAppSlotSiteConfigObservation) { *out = *in @@ -40726,7 +58917,205 @@ func (in *WindowsWebAppSlotSiteConfigObservation) DeepCopyInto(out *WindowsWebAp } if in.ScmIPRestriction != nil { in, out := &in.ScmIPRestriction, &out.ScmIPRestriction - *out = make([]WindowsWebAppSlotSiteConfigScmIPRestrictionObservation, len(*in)) + *out = make([]WindowsWebAppSlotSiteConfigScmIPRestrictionObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ScmMinimumTLSVersion != nil { + in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion + *out = new(string) + **out = **in + } + if in.ScmType != nil { + in, out := &in.ScmType, &out.ScmType + *out = new(string) + **out = **in + } + if in.ScmUseMainIPRestriction != nil { + in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction + *out = new(bool) + **out = **in + } + if in.Use32BitWorker != nil { + in, out := &in.Use32BitWorker, &out.Use32BitWorker + *out = new(bool) + **out = **in + } + if in.VirtualApplication != nil { + in, out := &in.VirtualApplication, &out.VirtualApplication + *out = make([]SiteConfigVirtualApplicationObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.VnetRouteAllEnabled != nil { + in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled + *out = new(bool) + **out = **in + } + if in.WebsocketsEnabled != nil { + in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled + *out = new(bool) + **out = **in + } + if in.WindowsFxVersion != nil { + in, out := &in.WindowsFxVersion, &out.WindowsFxVersion + *out = new(string) + **out = **in + } + if in.WorkerCount != nil { + in, out := &in.WorkerCount, &out.WorkerCount + *out = new(float64) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigObservation. +func (in *WindowsWebAppSlotSiteConfigObservation) DeepCopy() *WindowsWebAppSlotSiteConfigObservation { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteConfigObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteConfigParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigParameters) { + *out = *in + if in.APIDefinitionURL != nil { + in, out := &in.APIDefinitionURL, &out.APIDefinitionURL + *out = new(string) + **out = **in + } + if in.APIManagementAPIID != nil { + in, out := &in.APIManagementAPIID, &out.APIManagementAPIID + *out = new(string) + **out = **in + } + if in.AlwaysOn != nil { + in, out := &in.AlwaysOn, &out.AlwaysOn + *out = new(bool) + **out = **in + } + if in.AppCommandLine != nil { + in, out := &in.AppCommandLine, &out.AppCommandLine + *out = new(string) + **out = **in + } + if in.ApplicationStack != nil { + in, out := &in.ApplicationStack, &out.ApplicationStack + *out = make([]WindowsWebAppSlotSiteConfigApplicationStackParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoHealEnabled != nil { + in, out := &in.AutoHealEnabled, &out.AutoHealEnabled + *out = new(bool) + **out = **in + } + if in.AutoHealSetting != nil { + in, out := &in.AutoHealSetting, &out.AutoHealSetting + *out = make([]WindowsWebAppSlotSiteConfigAutoHealSettingParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.AutoSwapSlotName != nil { + in, out := &in.AutoSwapSlotName, &out.AutoSwapSlotName + *out = new(string) + **out = **in + } + if in.ContainerRegistryManagedIdentityClientID != nil { + in, out := &in.ContainerRegistryManagedIdentityClientID, &out.ContainerRegistryManagedIdentityClientID + *out = new(string) + **out = **in + } + if in.ContainerRegistryUseManagedIdentity != nil { + in, out := &in.ContainerRegistryUseManagedIdentity, &out.ContainerRegistryUseManagedIdentity + *out = new(bool) + **out = **in + } + if in.Cors != nil { + in, out := &in.Cors, &out.Cors + *out = make([]WindowsWebAppSlotSiteConfigCorsParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.DefaultDocuments != nil { + in, out := &in.DefaultDocuments, &out.DefaultDocuments + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.FtpsState != nil { + in, out := &in.FtpsState, &out.FtpsState + *out = new(string) + **out = **in + } + if in.HealthCheckEvictionTimeInMin != nil { + in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin + *out = new(float64) + **out = **in + } + if in.HealthCheckPath != nil { + in, out := &in.HealthCheckPath, &out.HealthCheckPath + *out = new(string) + **out = **in + } + if in.Http2Enabled != nil { + in, out := &in.Http2Enabled, &out.Http2Enabled + *out = new(bool) + **out = **in + } + if in.IPRestriction != nil { + in, out := &in.IPRestriction, &out.IPRestriction + *out = make([]WindowsWebAppSlotSiteConfigIPRestrictionParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.LoadBalancingMode != nil { + in, out := &in.LoadBalancingMode, &out.LoadBalancingMode + *out = new(string) + **out = **in + } + if in.LocalMySQLEnabled != nil { + in, out := &in.LocalMySQLEnabled, &out.LocalMySQLEnabled + *out = new(bool) + **out = **in + } + if in.ManagedPipelineMode != nil { + in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode + *out = new(string) + **out = **in + } + if in.MinimumTLSVersion != nil { + in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion + *out = new(string) + **out = **in + } + if in.RemoteDebuggingEnabled != nil { + in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled + *out = new(bool) + **out = **in + } + if in.RemoteDebuggingVersion != nil { + in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion + *out = new(string) + **out = **in + } + if in.ScmIPRestriction != nil { + in, out := &in.ScmIPRestriction, &out.ScmIPRestriction + *out = make([]WindowsWebAppSlotSiteConfigScmIPRestrictionParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -40736,11 +59125,6 @@ func (in *WindowsWebAppSlotSiteConfigObservation) DeepCopyInto(out *WindowsWebAp *out = new(string) **out = **in } - if in.ScmType != nil { - in, out := &in.ScmType, &out.ScmType - *out = new(string) - **out = **in - } if in.ScmUseMainIPRestriction != nil { in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction *out = new(bool) @@ -40753,7 +59137,7 @@ func (in *WindowsWebAppSlotSiteConfigObservation) DeepCopyInto(out *WindowsWebAp } if in.VirtualApplication != nil { in, out := &in.VirtualApplication, &out.VirtualApplication - *out = make([]SiteConfigVirtualApplicationObservation, len(*in)) + *out = make([]SiteConfigVirtualApplicationParameters, len(*in)) for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } @@ -40768,11 +59152,6 @@ func (in *WindowsWebAppSlotSiteConfigObservation) DeepCopyInto(out *WindowsWebAp *out = new(bool) **out = **in } - if in.WindowsFxVersion != nil { - in, out := &in.WindowsFxVersion, &out.WindowsFxVersion - *out = new(string) - **out = **in - } if in.WorkerCount != nil { in, out := &in.WorkerCount, &out.WorkerCount *out = new(float64) @@ -40780,82 +59159,21 @@ func (in *WindowsWebAppSlotSiteConfigObservation) DeepCopyInto(out *WindowsWebAp } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigObservation. -func (in *WindowsWebAppSlotSiteConfigObservation) DeepCopy() *WindowsWebAppSlotSiteConfigObservation { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigParameters. +func (in *WindowsWebAppSlotSiteConfigParameters) DeepCopy() *WindowsWebAppSlotSiteConfigParameters { if in == nil { return nil } - out := new(WindowsWebAppSlotSiteConfigObservation) + out := new(WindowsWebAppSlotSiteConfigParameters) in.DeepCopyInto(out) return out } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *WindowsWebAppSlotSiteConfigParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigParameters) { +func (in *WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) { *out = *in - if in.APIDefinitionURL != nil { - in, out := &in.APIDefinitionURL, &out.APIDefinitionURL - *out = new(string) - **out = **in - } - if in.APIManagementAPIID != nil { - in, out := &in.APIManagementAPIID, &out.APIManagementAPIID - *out = new(string) - **out = **in - } - if in.AlwaysOn != nil { - in, out := &in.AlwaysOn, &out.AlwaysOn - *out = new(bool) - **out = **in - } - if in.AppCommandLine != nil { - in, out := &in.AppCommandLine, &out.AppCommandLine - *out = new(string) - **out = **in - } - if in.ApplicationStack != nil { - in, out := &in.ApplicationStack, &out.ApplicationStack - *out = make([]WindowsWebAppSlotSiteConfigApplicationStackParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AutoHealEnabled != nil { - in, out := &in.AutoHealEnabled, &out.AutoHealEnabled - *out = new(bool) - **out = **in - } - if in.AutoHealSetting != nil { - in, out := &in.AutoHealSetting, &out.AutoHealSetting - *out = make([]WindowsWebAppSlotSiteConfigAutoHealSettingParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.AutoSwapSlotName != nil { - in, out := &in.AutoSwapSlotName, &out.AutoSwapSlotName - *out = new(string) - **out = **in - } - if in.ContainerRegistryManagedIdentityClientID != nil { - in, out := &in.ContainerRegistryManagedIdentityClientID, &out.ContainerRegistryManagedIdentityClientID - *out = new(string) - **out = **in - } - if in.ContainerRegistryUseManagedIdentity != nil { - in, out := &in.ContainerRegistryUseManagedIdentity, &out.ContainerRegistryUseManagedIdentity - *out = new(bool) - **out = **in - } - if in.Cors != nil { - in, out := &in.Cors, &out.Cors - *out = make([]WindowsWebAppSlotSiteConfigCorsParameters, len(*in)) - for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) - } - } - if in.DefaultDocuments != nil { - in, out := &in.DefaultDocuments, &out.DefaultDocuments + if in.XAzureFdid != nil { + in, out := &in.XAzureFdid, &out.XAzureFdid *out = make([]*string, len(*in)) for i := range *in { if (*in)[i] != nil { @@ -40865,115 +59183,47 @@ func (in *WindowsWebAppSlotSiteConfigParameters) DeepCopyInto(out *WindowsWebApp } } } - if in.FtpsState != nil { - in, out := &in.FtpsState, &out.FtpsState - *out = new(string) - **out = **in - } - if in.HealthCheckEvictionTimeInMin != nil { - in, out := &in.HealthCheckEvictionTimeInMin, &out.HealthCheckEvictionTimeInMin - *out = new(float64) - **out = **in - } - if in.HealthCheckPath != nil { - in, out := &in.HealthCheckPath, &out.HealthCheckPath - *out = new(string) - **out = **in - } - if in.Http2Enabled != nil { - in, out := &in.Http2Enabled, &out.Http2Enabled - *out = new(bool) - **out = **in - } - if in.IPRestriction != nil { - in, out := &in.IPRestriction, &out.IPRestriction - *out = make([]WindowsWebAppSlotSiteConfigIPRestrictionParameters, len(*in)) + if in.XFdHealthProbe != nil { + in, out := &in.XFdHealthProbe, &out.XFdHealthProbe + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.LoadBalancingMode != nil { - in, out := &in.LoadBalancingMode, &out.LoadBalancingMode - *out = new(string) - **out = **in - } - if in.LocalMySQLEnabled != nil { - in, out := &in.LocalMySQLEnabled, &out.LocalMySQLEnabled - *out = new(bool) - **out = **in - } - if in.ManagedPipelineMode != nil { - in, out := &in.ManagedPipelineMode, &out.ManagedPipelineMode - *out = new(string) - **out = **in - } - if in.MinimumTLSVersion != nil { - in, out := &in.MinimumTLSVersion, &out.MinimumTLSVersion - *out = new(string) - **out = **in - } - if in.RemoteDebuggingEnabled != nil { - in, out := &in.RemoteDebuggingEnabled, &out.RemoteDebuggingEnabled - *out = new(bool) - **out = **in - } - if in.RemoteDebuggingVersion != nil { - in, out := &in.RemoteDebuggingVersion, &out.RemoteDebuggingVersion - *out = new(string) - **out = **in - } - if in.ScmIPRestriction != nil { - in, out := &in.ScmIPRestriction, &out.ScmIPRestriction - *out = make([]WindowsWebAppSlotSiteConfigScmIPRestrictionParameters, len(*in)) + if in.XForwardedFor != nil { + in, out := &in.XForwardedFor, &out.XForwardedFor + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.ScmMinimumTLSVersion != nil { - in, out := &in.ScmMinimumTLSVersion, &out.ScmMinimumTLSVersion - *out = new(string) - **out = **in - } - if in.ScmUseMainIPRestriction != nil { - in, out := &in.ScmUseMainIPRestriction, &out.ScmUseMainIPRestriction - *out = new(bool) - **out = **in - } - if in.Use32BitWorker != nil { - in, out := &in.Use32BitWorker, &out.Use32BitWorker - *out = new(bool) - **out = **in - } - if in.VirtualApplication != nil { - in, out := &in.VirtualApplication, &out.VirtualApplication - *out = make([]SiteConfigVirtualApplicationParameters, len(*in)) + if in.XForwardedHost != nil { + in, out := &in.XForwardedHost, &out.XForwardedHost + *out = make([]*string, len(*in)) for i := range *in { - (*in)[i].DeepCopyInto(&(*out)[i]) + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } } } - if in.VnetRouteAllEnabled != nil { - in, out := &in.VnetRouteAllEnabled, &out.VnetRouteAllEnabled - *out = new(bool) - **out = **in - } - if in.WebsocketsEnabled != nil { - in, out := &in.WebsocketsEnabled, &out.WebsocketsEnabled - *out = new(bool) - **out = **in - } - if in.WorkerCount != nil { - in, out := &in.WorkerCount, &out.WorkerCount - *out = new(float64) - **out = **in - } } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigParameters. -func (in *WindowsWebAppSlotSiteConfigParameters) DeepCopy() *WindowsWebAppSlotSiteConfigParameters { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters. +func (in *WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) DeepCopy() *WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters { if in == nil { return nil } - out := new(WindowsWebAppSlotSiteConfigParameters) + out := new(WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters) in.DeepCopyInto(out) return out } @@ -41096,6 +59346,53 @@ func (in *WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersParameters) DeepCopy return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteConfigScmIPRestrictionInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteConfigScmIPRestrictionInitParameters) { + *out = *in + if in.Action != nil { + in, out := &in.Action, &out.Action + *out = new(string) + **out = **in + } + if in.Headers != nil { + in, out := &in.Headers, &out.Headers + *out = make([]WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.IPAddress != nil { + in, out := &in.IPAddress, &out.IPAddress + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Priority != nil { + in, out := &in.Priority, &out.Priority + *out = new(float64) + **out = **in + } + if in.ServiceTag != nil { + in, out := &in.ServiceTag, &out.ServiceTag + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteConfigScmIPRestrictionInitParameters. +func (in *WindowsWebAppSlotSiteConfigScmIPRestrictionInitParameters) DeepCopy() *WindowsWebAppSlotSiteConfigScmIPRestrictionInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteConfigScmIPRestrictionInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotSiteConfigScmIPRestrictionObservation) DeepCopyInto(out *WindowsWebAppSlotSiteConfigScmIPRestrictionObservation) { *out = *in @@ -41210,6 +59507,21 @@ func (in *WindowsWebAppSlotSiteConfigScmIPRestrictionParameters) DeepCopy() *Win return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotSiteCredentialInitParameters) DeepCopyInto(out *WindowsWebAppSlotSiteCredentialInitParameters) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSiteCredentialInitParameters. +func (in *WindowsWebAppSlotSiteCredentialInitParameters) DeepCopy() *WindowsWebAppSlotSiteCredentialInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotSiteCredentialInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotSiteCredentialObservation) DeepCopyInto(out *WindowsWebAppSlotSiteCredentialObservation) { *out = *in @@ -41255,6 +59567,7 @@ func (in *WindowsWebAppSlotSpec) DeepCopyInto(out *WindowsWebAppSlotSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotSpec. @@ -41284,6 +59597,46 @@ func (in *WindowsWebAppSlotStatus) DeepCopy() *WindowsWebAppSlotStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppSlotStorageAccountInitParameters) DeepCopyInto(out *WindowsWebAppSlotStorageAccountInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.MountPath != nil { + in, out := &in.MountPath, &out.MountPath + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ShareName != nil { + in, out := &in.ShareName, &out.ShareName + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSlotStorageAccountInitParameters. +func (in *WindowsWebAppSlotStorageAccountInitParameters) DeepCopy() *WindowsWebAppSlotStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppSlotStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppSlotStorageAccountObservation) DeepCopyInto(out *WindowsWebAppSlotStorageAccountObservation) { *out = *in @@ -41370,6 +59723,7 @@ func (in *WindowsWebAppSpec) DeepCopyInto(out *WindowsWebAppSpec) { *out = *in in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) in.ForProvider.DeepCopyInto(&out.ForProvider) + in.InitProvider.DeepCopyInto(&out.InitProvider) } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppSpec. @@ -41399,6 +59753,43 @@ func (in *WindowsWebAppStatus) DeepCopy() *WindowsWebAppStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppStickySettingsInitParameters) DeepCopyInto(out *WindowsWebAppStickySettingsInitParameters) { + *out = *in + if in.AppSettingNames != nil { + in, out := &in.AppSettingNames, &out.AppSettingNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ConnectionStringNames != nil { + in, out := &in.ConnectionStringNames, &out.ConnectionStringNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppStickySettingsInitParameters. +func (in *WindowsWebAppStickySettingsInitParameters) DeepCopy() *WindowsWebAppStickySettingsInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppStickySettingsInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppStickySettingsObservation) DeepCopyInto(out *WindowsWebAppStickySettingsObservation) { *out = *in @@ -41473,6 +59864,46 @@ func (in *WindowsWebAppStickySettingsParameters) DeepCopy() *WindowsWebAppSticky return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *WindowsWebAppStorageAccountInitParameters) DeepCopyInto(out *WindowsWebAppStorageAccountInitParameters) { + *out = *in + if in.AccountName != nil { + in, out := &in.AccountName, &out.AccountName + *out = new(string) + **out = **in + } + if in.MountPath != nil { + in, out := &in.MountPath, &out.MountPath + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ShareName != nil { + in, out := &in.ShareName, &out.ShareName + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsWebAppStorageAccountInitParameters. +func (in *WindowsWebAppStorageAccountInitParameters) DeepCopy() *WindowsWebAppStorageAccountInitParameters { + if in == nil { + return nil + } + out := new(WindowsWebAppStorageAccountInitParameters) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *WindowsWebAppStorageAccountObservation) DeepCopyInto(out *WindowsWebAppStorageAccountObservation) { *out = *in diff --git a/apis/web/v1beta1/zz_generated.managed.go b/apis/web/v1beta1/zz_generated.managed.go index 48ebb457d..aa5e325ea 100644 --- a/apis/web/v1beta1/zz_generated.managed.go +++ b/apis/web/v1beta1/zz_generated.managed.go @@ -17,9 +17,9 @@ func (mg *AppActiveSlot) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppActiveSlot. -func (mg *AppActiveSlot) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppActiveSlot. +func (mg *AppActiveSlot) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppActiveSlot. @@ -55,9 +55,9 @@ func (mg *AppActiveSlot) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppActiveSlot. -func (mg *AppActiveSlot) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppActiveSlot. +func (mg *AppActiveSlot) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppActiveSlot. @@ -93,9 +93,9 @@ func (mg *AppHybridConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppHybridConnection. -func (mg *AppHybridConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppHybridConnection. +func (mg *AppHybridConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppHybridConnection. @@ -131,9 +131,9 @@ func (mg *AppHybridConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppHybridConnection. -func (mg *AppHybridConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppHybridConnection. +func (mg *AppHybridConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppHybridConnection. @@ -169,9 +169,9 @@ func (mg *AppServicePlan) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this AppServicePlan. -func (mg *AppServicePlan) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this AppServicePlan. +func (mg *AppServicePlan) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this AppServicePlan. @@ -207,9 +207,9 @@ func (mg *AppServicePlan) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this AppServicePlan. -func (mg *AppServicePlan) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this AppServicePlan. +func (mg *AppServicePlan) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this AppServicePlan. @@ -245,9 +245,9 @@ func (mg *FunctionApp) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FunctionApp. -func (mg *FunctionApp) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FunctionApp. +func (mg *FunctionApp) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FunctionApp. @@ -283,9 +283,9 @@ func (mg *FunctionApp) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FunctionApp. -func (mg *FunctionApp) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FunctionApp. +func (mg *FunctionApp) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FunctionApp. @@ -321,9 +321,9 @@ func (mg *FunctionAppActiveSlot) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FunctionAppActiveSlot. -func (mg *FunctionAppActiveSlot) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FunctionAppActiveSlot. +func (mg *FunctionAppActiveSlot) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FunctionAppActiveSlot. @@ -359,9 +359,9 @@ func (mg *FunctionAppActiveSlot) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FunctionAppActiveSlot. -func (mg *FunctionAppActiveSlot) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FunctionAppActiveSlot. +func (mg *FunctionAppActiveSlot) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FunctionAppActiveSlot. @@ -397,9 +397,9 @@ func (mg *FunctionAppFunction) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FunctionAppFunction. -func (mg *FunctionAppFunction) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FunctionAppFunction. +func (mg *FunctionAppFunction) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FunctionAppFunction. @@ -435,9 +435,9 @@ func (mg *FunctionAppFunction) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FunctionAppFunction. -func (mg *FunctionAppFunction) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FunctionAppFunction. +func (mg *FunctionAppFunction) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FunctionAppFunction. @@ -473,9 +473,9 @@ func (mg *FunctionAppHybridConnection) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FunctionAppHybridConnection. -func (mg *FunctionAppHybridConnection) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FunctionAppHybridConnection. +func (mg *FunctionAppHybridConnection) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FunctionAppHybridConnection. @@ -511,9 +511,9 @@ func (mg *FunctionAppHybridConnection) SetDeletionPolicy(r xpv1.DeletionPolicy) mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FunctionAppHybridConnection. -func (mg *FunctionAppHybridConnection) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FunctionAppHybridConnection. +func (mg *FunctionAppHybridConnection) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FunctionAppHybridConnection. @@ -549,9 +549,9 @@ func (mg *FunctionAppSlot) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this FunctionAppSlot. -func (mg *FunctionAppSlot) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this FunctionAppSlot. +func (mg *FunctionAppSlot) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this FunctionAppSlot. @@ -587,9 +587,9 @@ func (mg *FunctionAppSlot) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this FunctionAppSlot. -func (mg *FunctionAppSlot) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this FunctionAppSlot. +func (mg *FunctionAppSlot) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this FunctionAppSlot. @@ -625,9 +625,9 @@ func (mg *LinuxFunctionApp) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinuxFunctionApp. -func (mg *LinuxFunctionApp) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinuxFunctionApp. +func (mg *LinuxFunctionApp) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinuxFunctionApp. @@ -663,9 +663,9 @@ func (mg *LinuxFunctionApp) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinuxFunctionApp. -func (mg *LinuxFunctionApp) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinuxFunctionApp. +func (mg *LinuxFunctionApp) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinuxFunctionApp. @@ -701,9 +701,9 @@ func (mg *LinuxFunctionAppSlot) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinuxFunctionAppSlot. -func (mg *LinuxFunctionAppSlot) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinuxFunctionAppSlot. +func (mg *LinuxFunctionAppSlot) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinuxFunctionAppSlot. @@ -739,9 +739,9 @@ func (mg *LinuxFunctionAppSlot) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinuxFunctionAppSlot. -func (mg *LinuxFunctionAppSlot) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinuxFunctionAppSlot. +func (mg *LinuxFunctionAppSlot) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinuxFunctionAppSlot. @@ -777,9 +777,9 @@ func (mg *LinuxWebApp) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinuxWebApp. -func (mg *LinuxWebApp) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinuxWebApp. +func (mg *LinuxWebApp) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinuxWebApp. @@ -815,9 +815,9 @@ func (mg *LinuxWebApp) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinuxWebApp. -func (mg *LinuxWebApp) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinuxWebApp. +func (mg *LinuxWebApp) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinuxWebApp. @@ -853,9 +853,9 @@ func (mg *LinuxWebAppSlot) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this LinuxWebAppSlot. -func (mg *LinuxWebAppSlot) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this LinuxWebAppSlot. +func (mg *LinuxWebAppSlot) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this LinuxWebAppSlot. @@ -891,9 +891,9 @@ func (mg *LinuxWebAppSlot) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this LinuxWebAppSlot. -func (mg *LinuxWebAppSlot) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this LinuxWebAppSlot. +func (mg *LinuxWebAppSlot) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this LinuxWebAppSlot. @@ -929,9 +929,9 @@ func (mg *ServicePlan) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this ServicePlan. -func (mg *ServicePlan) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this ServicePlan. +func (mg *ServicePlan) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this ServicePlan. @@ -967,9 +967,9 @@ func (mg *ServicePlan) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this ServicePlan. -func (mg *ServicePlan) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this ServicePlan. +func (mg *ServicePlan) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this ServicePlan. @@ -1005,9 +1005,9 @@ func (mg *SourceControlToken) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this SourceControlToken. -func (mg *SourceControlToken) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this SourceControlToken. +func (mg *SourceControlToken) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this SourceControlToken. @@ -1043,9 +1043,9 @@ func (mg *SourceControlToken) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this SourceControlToken. -func (mg *SourceControlToken) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this SourceControlToken. +func (mg *SourceControlToken) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this SourceControlToken. @@ -1081,9 +1081,9 @@ func (mg *StaticSite) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this StaticSite. -func (mg *StaticSite) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this StaticSite. +func (mg *StaticSite) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this StaticSite. @@ -1119,9 +1119,9 @@ func (mg *StaticSite) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this StaticSite. -func (mg *StaticSite) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this StaticSite. +func (mg *StaticSite) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this StaticSite. @@ -1157,9 +1157,9 @@ func (mg *WindowsFunctionApp) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WindowsFunctionApp. -func (mg *WindowsFunctionApp) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WindowsFunctionApp. +func (mg *WindowsFunctionApp) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WindowsFunctionApp. @@ -1195,9 +1195,9 @@ func (mg *WindowsFunctionApp) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WindowsFunctionApp. -func (mg *WindowsFunctionApp) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WindowsFunctionApp. +func (mg *WindowsFunctionApp) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WindowsFunctionApp. @@ -1233,9 +1233,9 @@ func (mg *WindowsFunctionAppSlot) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WindowsFunctionAppSlot. -func (mg *WindowsFunctionAppSlot) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WindowsFunctionAppSlot. +func (mg *WindowsFunctionAppSlot) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WindowsFunctionAppSlot. @@ -1271,9 +1271,9 @@ func (mg *WindowsFunctionAppSlot) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WindowsFunctionAppSlot. -func (mg *WindowsFunctionAppSlot) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WindowsFunctionAppSlot. +func (mg *WindowsFunctionAppSlot) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WindowsFunctionAppSlot. @@ -1309,9 +1309,9 @@ func (mg *WindowsWebApp) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WindowsWebApp. -func (mg *WindowsWebApp) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WindowsWebApp. +func (mg *WindowsWebApp) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WindowsWebApp. @@ -1347,9 +1347,9 @@ func (mg *WindowsWebApp) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WindowsWebApp. -func (mg *WindowsWebApp) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WindowsWebApp. +func (mg *WindowsWebApp) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WindowsWebApp. @@ -1385,9 +1385,9 @@ func (mg *WindowsWebAppSlot) GetDeletionPolicy() xpv1.DeletionPolicy { return mg.Spec.DeletionPolicy } -// GetManagementPolicy of this WindowsWebAppSlot. -func (mg *WindowsWebAppSlot) GetManagementPolicy() xpv1.ManagementPolicy { - return mg.Spec.ManagementPolicy +// GetManagementPolicies of this WindowsWebAppSlot. +func (mg *WindowsWebAppSlot) GetManagementPolicies() xpv1.ManagementPolicies { + return mg.Spec.ManagementPolicies } // GetProviderConfigReference of this WindowsWebAppSlot. @@ -1423,9 +1423,9 @@ func (mg *WindowsWebAppSlot) SetDeletionPolicy(r xpv1.DeletionPolicy) { mg.Spec.DeletionPolicy = r } -// SetManagementPolicy of this WindowsWebAppSlot. -func (mg *WindowsWebAppSlot) SetManagementPolicy(r xpv1.ManagementPolicy) { - mg.Spec.ManagementPolicy = r +// SetManagementPolicies of this WindowsWebAppSlot. +func (mg *WindowsWebAppSlot) SetManagementPolicies(r xpv1.ManagementPolicies) { + mg.Spec.ManagementPolicies = r } // SetProviderConfigReference of this WindowsWebAppSlot. diff --git a/apis/web/v1beta1/zz_generated_terraformed.go b/apis/web/v1beta1/zz_generated_terraformed.go index 7e9f24d0c..3d7d5f2b6 100755 --- a/apis/web/v1beta1/zz_generated_terraformed.go +++ b/apis/web/v1beta1/zz_generated_terraformed.go @@ -69,6 +69,16 @@ func (tr *AppServicePlan) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppServicePlan +func (tr *AppServicePlan) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppServicePlan using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppServicePlan) LateInitialize(attrs []byte) (bool, error) { @@ -143,6 +153,16 @@ func (tr *FunctionApp) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FunctionApp +func (tr *FunctionApp) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FunctionApp using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FunctionApp) LateInitialize(attrs []byte) (bool, error) { @@ -218,6 +238,16 @@ func (tr *FunctionAppActiveSlot) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FunctionAppActiveSlot +func (tr *FunctionAppActiveSlot) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FunctionAppActiveSlot using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FunctionAppActiveSlot) LateInitialize(attrs []byte) (bool, error) { @@ -292,6 +322,16 @@ func (tr *FunctionAppFunction) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FunctionAppFunction +func (tr *FunctionAppFunction) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FunctionAppFunction using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FunctionAppFunction) LateInitialize(attrs []byte) (bool, error) { @@ -366,6 +406,16 @@ func (tr *FunctionAppHybridConnection) SetParameters(params map[string]any) erro return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FunctionAppHybridConnection +func (tr *FunctionAppHybridConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FunctionAppHybridConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FunctionAppHybridConnection) LateInitialize(attrs []byte) (bool, error) { @@ -440,6 +490,16 @@ func (tr *FunctionAppSlot) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this FunctionAppSlot +func (tr *FunctionAppSlot) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this FunctionAppSlot using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *FunctionAppSlot) LateInitialize(attrs []byte) (bool, error) { @@ -514,6 +574,16 @@ func (tr *LinuxFunctionApp) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinuxFunctionApp +func (tr *LinuxFunctionApp) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinuxFunctionApp using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinuxFunctionApp) LateInitialize(attrs []byte) (bool, error) { @@ -589,6 +659,16 @@ func (tr *LinuxFunctionAppSlot) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinuxFunctionAppSlot +func (tr *LinuxFunctionAppSlot) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinuxFunctionAppSlot using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinuxFunctionAppSlot) LateInitialize(attrs []byte) (bool, error) { @@ -664,6 +744,16 @@ func (tr *LinuxWebApp) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinuxWebApp +func (tr *LinuxWebApp) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinuxWebApp using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinuxWebApp) LateInitialize(attrs []byte) (bool, error) { @@ -739,6 +829,16 @@ func (tr *LinuxWebAppSlot) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this LinuxWebAppSlot +func (tr *LinuxWebAppSlot) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this LinuxWebAppSlot using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *LinuxWebAppSlot) LateInitialize(attrs []byte) (bool, error) { @@ -814,6 +914,16 @@ func (tr *ServicePlan) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this ServicePlan +func (tr *ServicePlan) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this ServicePlan using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *ServicePlan) LateInitialize(attrs []byte) (bool, error) { @@ -888,6 +998,16 @@ func (tr *SourceControlToken) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this SourceControlToken +func (tr *SourceControlToken) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this SourceControlToken using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *SourceControlToken) LateInitialize(attrs []byte) (bool, error) { @@ -962,6 +1082,16 @@ func (tr *StaticSite) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this StaticSite +func (tr *StaticSite) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this StaticSite using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *StaticSite) LateInitialize(attrs []byte) (bool, error) { @@ -1036,6 +1166,16 @@ func (tr *AppActiveSlot) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppActiveSlot +func (tr *AppActiveSlot) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppActiveSlot using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppActiveSlot) LateInitialize(attrs []byte) (bool, error) { @@ -1110,6 +1250,16 @@ func (tr *AppHybridConnection) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this AppHybridConnection +func (tr *AppHybridConnection) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this AppHybridConnection using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *AppHybridConnection) LateInitialize(attrs []byte) (bool, error) { @@ -1184,6 +1334,16 @@ func (tr *WindowsFunctionApp) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WindowsFunctionApp +func (tr *WindowsFunctionApp) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WindowsFunctionApp using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WindowsFunctionApp) LateInitialize(attrs []byte) (bool, error) { @@ -1259,6 +1419,16 @@ func (tr *WindowsFunctionAppSlot) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WindowsFunctionAppSlot +func (tr *WindowsFunctionAppSlot) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WindowsFunctionAppSlot using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WindowsFunctionAppSlot) LateInitialize(attrs []byte) (bool, error) { @@ -1334,6 +1504,16 @@ func (tr *WindowsWebApp) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WindowsWebApp +func (tr *WindowsWebApp) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WindowsWebApp using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WindowsWebApp) LateInitialize(attrs []byte) (bool, error) { @@ -1409,6 +1589,16 @@ func (tr *WindowsWebAppSlot) SetParameters(params map[string]any) error { return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) } +// GetInitParameters of this WindowsWebAppSlot +func (tr *WindowsWebAppSlot) GetInitParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.InitProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + // LateInitialize this WindowsWebAppSlot using its observed tfState. // returns True if there are any spec changes for the resource. func (tr *WindowsWebAppSlot) LateInitialize(attrs []byte) (bool, error) { diff --git a/apis/web/v1beta1/zz_linuxfunctionapp_types.go b/apis/web/v1beta1/zz_linuxfunctionapp_types.go index 5cf716712..7eed2de62 100755 --- a/apis/web/v1beta1/zz_linuxfunctionapp_types.go +++ b/apis/web/v1beta1/zz_linuxfunctionapp_types.go @@ -13,6 +13,57 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActiveDirectoryV2InitParameters struct { + + // The list of allowed Applications for the Default Authorisation Policy. + // The list of allowed Applications for the Default Authorisation Policy. + AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The list of allowed Group Names for the Default Authorisation Policy. + // The list of allowed Group Names for the Default Authorisation Policy. + AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` + + // The list of allowed Identities for the Default Authorisation Policy. + // The list of allowed Identities for the Default Authorisation Policy. + AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The thumbprint of the certificate used for signing purposes. + // The thumbprint of the certificate used for signing purposes. + ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // A list of Allowed Client Applications in the JWT Claim. + // A list of Allowed Client Applications in the JWT Claim. + JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` + + // A list of Allowed Groups in the JWT Claim. + // A list of Allowed Groups in the JWT Claim. + JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` + + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` + + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` + + // Should the www-authenticate provider should be omitted from the request? Defaults to false + // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` +} + type ActiveDirectoryV2Observation struct { // The list of allowed Applications for the Default Authorisation Policy. @@ -88,8 +139,8 @@ type ActiveDirectoryV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. @@ -118,8 +169,8 @@ type ActiveDirectoryV2Parameters struct { // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. - // +kubebuilder:validation:Required - TenantAuthEndpoint *string `json:"tenantAuthEndpoint" tf:"tenant_auth_endpoint,omitempty"` + // +kubebuilder:validation:Optional + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` @@ -127,6 +178,17 @@ type ActiveDirectoryV2Parameters struct { WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } +type AppServiceLogsInitParameters struct { + + // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. + // The amount of disk space to use for logs. Valid values are between `25` and `100`. + DiskQuotaMb *float64 `json:"diskQuotaMb,omitempty" tf:"disk_quota_mb,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // The retention period for logs in days. Valid values are between `0` and `99999`. Defaults to `0` (never delete). + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` +} + type AppServiceLogsObservation struct { // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. @@ -151,6 +213,17 @@ type AppServiceLogsParameters struct { RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` } +type AppleV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type AppleV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -169,13 +242,47 @@ type AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + +type ApplicationStackInitParameters struct { + + // One or more docker blocks as defined below. + // A docker block + Docker []DockerInitParameters `json:"docker,omitempty" tf:"docker,omitempty"` + + // The version of .NET to use. Possible values include 3.1, 6.0 and 7.0. + // The version of .Net. Possible values are `3.1`, `6.0` and `7.0` + DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` + + // The Version of Java to use. Supported versions include 8, 11 & 17. + // The version of Java to use. Possible values are `8`, `11`, and `17` + JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` + + // The version of Node to run. Possible values include 12, 14, 16 and 18. + // The version of Node to use. Possible values include `12`, `14`, `16` and `18` + NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` + + // The version of PowerShell Core to run. Possible values are 7, and 7.2. + // The version of PowerShell Core to use. Possibles values are `7`, and `7.2` + PowershellCoreVersion *string `json:"powershellCoreVersion,omitempty" tf:"powershell_core_version,omitempty"` + + // The version of Python to run. Possible values are 3.10, 3.9, 3.8 and 3.7. + // The version of Python to use. Possible values include `3.10`, `3.9`, `3.8`, and `3.7`. + PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` + + // Should the Linux Function App use a custom runtime? + UseCustomRuntime *bool `json:"useCustomRuntime,omitempty" tf:"use_custom_runtime,omitempty"` + + // Should the DotNet process use an isolated runtime. Defaults to false. + // Should the DotNet process use an isolated runtime. Defaults to `false`. + UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` } type ApplicationStackObservation struct { @@ -254,6 +361,87 @@ type ApplicationStackParameters struct { UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` } +type AuthSettingsV2InitParameters struct { + + // An active_directory_v2 block as defined below. + ActiveDirectoryV2 []ActiveDirectoryV2InitParameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` + + // An apple_v2 block as defined below. + AppleV2 []AppleV2InitParameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` + + // Should the AuthV2 Settings be enabled. Defaults to false. + // Should the AuthV2 Settings be enabled. Defaults to `false` + AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` + + // An azure_static_web_app_v2 block as defined below. + AzureStaticWebAppV2 []AzureStaticWebAppV2InitParameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` + + // The path to the App Auth settings. + // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` + + // Zero or more custom_oidc_v2 blocks as defined below. + CustomOidcV2 []CustomOidcV2InitParameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` + + // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. + // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. + // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` + + // A facebook_v2 block as defined below. + FacebookV2 []FacebookV2InitParameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` + + // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. + // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` + + // The name of the custom header containing the host of the request. + // The name of the header containing the host of the request. + ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` + + // The name of the custom header containing the scheme of the request. + // The name of the header containing the scheme of the request. + ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` + + // A github_v2 block as defined below. + GithubV2 []GithubV2InitParameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` + + // A google_v2 block as defined below. + GoogleV2 []GoogleV2InitParameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` + + // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. + // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` + + // A login block as defined below. + Login []LoginInitParameters `json:"login,omitempty" tf:"login,omitempty"` + + // A microsoft_v2 block as defined below. + MicrosoftV2 []MicrosoftV2InitParameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` + + // Should the authentication flow be used for all requests. + // Should the authentication flow be used for all requests. + RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` + + // Should HTTPS be required on connections? Defaults to true. + // Should HTTPS be required on connections? Defaults to true. + RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` + + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // A twitter_v2 block as defined below. + TwitterV2 []TwitterV2InitParameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` + + // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. + // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` +} + type AuthSettingsV2Observation struct { // An active_directory_v2 block as defined below. @@ -406,8 +594,8 @@ type AuthSettingsV2Parameters struct { HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. - // +kubebuilder:validation:Required - Login []LoginParameters `json:"login" tf:"login,omitempty"` + // +kubebuilder:validation:Optional + Login []LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. // +kubebuilder:validation:Optional @@ -438,6 +626,13 @@ type AuthSettingsV2Parameters struct { UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } +type AzureStaticWebAppV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + type AzureStaticWebAppV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -449,8 +644,22 @@ type AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + +type BackupInitParameters struct { + + // Should this backup job be enabled? Defaults to true. + // Should this backup job be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name which should be used for this Backup. + // The name which should be used for this Backup. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A schedule block as defined below. + Schedule []ScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` } type BackupObservation struct { @@ -476,12 +685,12 @@ type BackupParameters struct { // The name which should be used for this Backup. // The name which should be used for this Backup. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A schedule block as defined below. - // +kubebuilder:validation:Required - Schedule []ScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []ScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. // The SAS URL to the container. @@ -489,6 +698,29 @@ type BackupParameters struct { StorageAccountURLSecretRef v1.SecretKeySelector `json:"storageAccountUrlSecretRef" tf:"-"` } +type CustomOidcV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with this Custom OIDC. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The name which should be used for this Storage Account. + // The name of the Custom OIDC Authentication Provider. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The name of the claim that contains the users name. + // The name of the claim that contains the users name. + NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` + + // The app setting name that contains the client_secret value used for the Custom OIDC Login. + // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` + + // The list of the scopes that should be requested while authenticating. + // The list of the scopes that should be requested while authenticating. + Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` +} + type CustomOidcV2Observation struct { // The endpoint to make the Authorisation Request as supplied by openid_configuration_endpoint response. @@ -540,13 +772,13 @@ type CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. @@ -555,8 +787,8 @@ type CustomOidcV2Parameters struct { // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. - // +kubebuilder:validation:Required - OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint" tf:"openid_configuration_endpoint,omitempty"` + // +kubebuilder:validation:Optional + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. @@ -564,7 +796,7 @@ type CustomOidcV2Parameters struct { Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } -type DockerObservation struct { +type DockerInitParameters struct { // The name of the Docker image to use. // The name of the Docker image to use. @@ -579,27 +811,42 @@ type DockerObservation struct { RegistryURL *string `json:"registryUrl,omitempty" tf:"registry_url,omitempty"` } -type DockerParameters struct { +type DockerObservation struct { // The name of the Docker image to use. // The name of the Docker image to use. - // +kubebuilder:validation:Required - ImageName *string `json:"imageName" tf:"image_name,omitempty"` + ImageName *string `json:"imageName,omitempty" tf:"image_name,omitempty"` // The image tag of the image to use. // The image tag of the image to use. - // +kubebuilder:validation:Required - ImageTag *string `json:"imageTag" tf:"image_tag,omitempty"` - - // The password for the account to use to connect to the registry. - // The password for the account to use to connect to the registry. - // +kubebuilder:validation:Optional - RegistryPasswordSecretRef *v1.SecretKeySelector `json:"registryPasswordSecretRef,omitempty" tf:"-"` + ImageTag *string `json:"imageTag,omitempty" tf:"image_tag,omitempty"` // The URL of the docker registry. // The URL of the docker registry. - // +kubebuilder:validation:Required - RegistryURL *string `json:"registryUrl" tf:"registry_url,omitempty"` + RegistryURL *string `json:"registryUrl,omitempty" tf:"registry_url,omitempty"` +} + +type DockerParameters struct { + + // The name of the Docker image to use. + // The name of the Docker image to use. + // +kubebuilder:validation:Optional + ImageName *string `json:"imageName,omitempty" tf:"image_name,omitempty"` + + // The image tag of the image to use. + // The image tag of the image to use. + // +kubebuilder:validation:Optional + ImageTag *string `json:"imageTag,omitempty" tf:"image_tag,omitempty"` + + // The password for the account to use to connect to the registry. + // The password for the account to use to connect to the registry. + // +kubebuilder:validation:Optional + RegistryPasswordSecretRef *v1.SecretKeySelector `json:"registryPasswordSecretRef,omitempty" tf:"-"` + + // The URL of the docker registry. + // The URL of the docker registry. + // +kubebuilder:validation:Optional + RegistryURL *string `json:"registryUrl,omitempty" tf:"registry_url,omitempty"` // The username to use for connections to the registry. // The username to use for connections to the registry. @@ -607,6 +854,25 @@ type DockerParameters struct { RegistryUsernameSecretRef *v1.SecretKeySelector `json:"registryUsernameSecretRef,omitempty" tf:"-"` } +type FacebookV2InitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // The version of the Facebook API to be used while logging in. + // The version of the Facebook API to be used while logging in. + GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of scopes to be requested as part of Facebook Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type FacebookV2Observation struct { // The App ID of the Facebook app used for login. @@ -630,13 +896,13 @@ type FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. - // +kubebuilder:validation:Required - AppSecretSettingName *string `json:"appSecretSettingName" tf:"app_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. @@ -649,6 +915,21 @@ type FacebookV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type GithubInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type GithubObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -668,8 +949,8 @@ type GithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret of the GitHub app used for GitHub Login. Cannot be specified with `client_secret_setting_name`. @@ -687,6 +968,21 @@ type GithubParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type GithubV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type GithubV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -706,13 +1002,13 @@ type GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. @@ -720,6 +1016,25 @@ type GithubV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type GoogleV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type GoogleV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -748,13 +1063,13 @@ type GoogleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. @@ -762,6 +1077,21 @@ type GoogleV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type LinuxFunctionAppAuthSettingsActiveDirectoryInitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type LinuxFunctionAppAuthSettingsActiveDirectoryObservation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -786,8 +1116,8 @@ type LinuxFunctionAppAuthSettingsActiveDirectoryParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret for the Client ID. Cannot be used with `client_secret_setting_name`. @@ -800,6 +1130,21 @@ type LinuxFunctionAppAuthSettingsActiveDirectoryParameters struct { ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } +type LinuxFunctionAppAuthSettingsFacebookInitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxFunctionAppAuthSettingsFacebookObservation struct { // The App ID of the Facebook app used for login. @@ -819,8 +1164,8 @@ type LinuxFunctionAppAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. // The App Secret of the Facebook app used for Facebook Login. Cannot be specified with `app_secret_setting_name`. @@ -838,6 +1183,21 @@ type LinuxFunctionAppAuthSettingsFacebookParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type LinuxFunctionAppAuthSettingsGoogleInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxFunctionAppAuthSettingsGoogleObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -857,8 +1217,8 @@ type LinuxFunctionAppAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. @@ -876,6 +1236,78 @@ type LinuxFunctionAppAuthSettingsGoogleParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type LinuxFunctionAppAuthSettingsInitParameters struct { + + // An active_directory block as defined above. + ActiveDirectory []LinuxFunctionAppAuthSettingsActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` + + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Linux Web App. + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github + // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // Should the Authentication / Authorization feature be enabled for the Linux Web App? + // Should the Authentication / Authorization feature be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A facebook block as defined below. + Facebook []LinuxFunctionAppAuthSettingsFacebookInitParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` + + // A github block as defined below. + Github []GithubInitParameters `json:"github,omitempty" tf:"github,omitempty"` + + // A google block as defined below. + Google []LinuxFunctionAppAuthSettingsGoogleInitParameters `json:"google,omitempty" tf:"google,omitempty"` + + // The OpenID Connect Issuer URI that represents the entity which issues access tokens for this Linux Web App. + // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // A microsoft block as defined below. + Microsoft []LinuxFunctionAppAuthSettingsMicrosoftInitParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` + + // The RuntimeVersion of the Authentication / Authorization feature in use for the Linux Web App. + // The RuntimeVersion of the Authentication / Authorization feature in use. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` + + // Should the Linux Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. + // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // A twitter block as defined below. + Twitter []LinuxFunctionAppAuthSettingsTwitterInitParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` + + // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. + // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` +} + +type LinuxFunctionAppAuthSettingsMicrosoftInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxFunctionAppAuthSettingsMicrosoftObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -895,8 +1327,8 @@ type LinuxFunctionAppAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret_setting_name`. @@ -994,8 +1426,8 @@ type LinuxFunctionAppAuthSettingsParameters struct { // Should the Authentication / Authorization feature be enabled for the Linux Web App? // Should the Authentication / Authorization feature be enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. // +kubebuilder:validation:Optional @@ -1043,6 +1475,17 @@ type LinuxFunctionAppAuthSettingsParameters struct { UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } +type LinuxFunctionAppAuthSettingsTwitterInitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type LinuxFunctionAppAuthSettingsTwitterObservation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -1058,8 +1501,8 @@ type LinuxFunctionAppAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret_setting_name`. @@ -1072,6 +1515,17 @@ type LinuxFunctionAppAuthSettingsTwitterParameters struct { ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } +type LinuxFunctionAppConnectionStringInitParameters struct { + + // The name which should be used for this Connection. + // The name which should be used for this Connection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of database. Possible values include: MySQL, SQLServer, SQLAzure, Custom, NotificationHub, ServiceBus, EventHub, APIHub, DocDb, RedisCache, and PostgreSQL. + // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxFunctionAppConnectionStringObservation struct { // The name which should be used for this Connection. @@ -1087,13 +1541,13 @@ type LinuxFunctionAppConnectionStringParameters struct { // The name which should be used for this Connection. // The name which should be used for this Connection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: MySQL, SQLServer, SQLAzure, Custom, NotificationHub, ServiceBus, EventHub, APIHub, DocDb, RedisCache, and PostgreSQL. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. // The connection string value. @@ -1101,6 +1555,15 @@ type LinuxFunctionAppConnectionStringParameters struct { ValueSecretRef v1.SecretKeySelector `json:"valueSecretRef" tf:"-"` } +type LinuxFunctionAppIdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Linux Function App. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Linux Function App. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxFunctionAppIdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this Linux Function App. @@ -1123,8 +1586,101 @@ type LinuxFunctionAppIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Function App. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LinuxFunctionAppInitParameters struct { + + // A map of key-value pairs for App Settings and custom values. + // A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) and custom values. + AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` + + // A auth_settings block as defined below. + AuthSettings []LinuxFunctionAppAuthSettingsInitParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` + + // An auth_settings_v2 block as defined below. + AuthSettingsV2 []AuthSettingsV2InitParameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` + + // A backup block as defined below. + Backup []BackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // Should built in logging be enabled. Configures AzureWebJobsDashboard app setting based on the configured storage setting. Defaults to true. + // Should built in logging be enabled. Configures `AzureWebJobsDashboard` app setting based on the configured storage setting + BuiltinLoggingEnabled *bool `json:"builtinLoggingEnabled,omitempty" tf:"builtin_logging_enabled,omitempty"` + + // Should the function app use Client Certificates. + // Should the function app use Client Certificates + ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` + + // Paths to exclude when using client certificates, separated by ; + // Paths to exclude when using client certificates, separated by ; + ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` + + // The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required, Optional, and OptionalInteractiveUser. + // The mode of the Function App's client certificates requirement for incoming requests. Possible values are `Required`, `Optional`, and `OptionalInteractiveUser` + ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` + + // One or more connection_string blocks as defined below. + ConnectionString []LinuxFunctionAppConnectionStringInitParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // Should the settings for linking the Function App to storage be suppressed. + // Force disable the content share settings. + ContentShareForceDisabled *bool `json:"contentShareForceDisabled,omitempty" tf:"content_share_force_disabled,omitempty"` + + // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan. Defaults to 0. + // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. + DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` + + // Is the Function App enabled? Defaults to true. + // Is the Linux Function App enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The runtime version associated with the Function App. Defaults to ~4. + // The runtime version associated with the Function App. + FunctionsExtensionVersion *string `json:"functionsExtensionVersion,omitempty" tf:"functions_extension_version,omitempty"` + + // Can the Function App only be accessed via HTTPS? Defaults to false. + // Can the Function App only be accessed via HTTPS? + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // A identity block as defined below. + Identity []LinuxFunctionAppIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity + // The User Assigned Identity to use for Key Vault access. + KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` + + // The Azure Region where the Linux Function App should exist. Changing this forces a new Linux Function App to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The name which should be used for this Linux Function App. Changing this forces a new Linux Function App to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule and Host ID Collisions + // Specifies the name of the Function App. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A site_config block as defined below. + SiteConfig []LinuxFunctionAppSiteConfigInitParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` + + // A sticky_settings block as defined below. + StickySettings []StickySettingsInitParameters `json:"stickySettings,omitempty" tf:"sticky_settings,omitempty"` + + // One or more storage_account blocks as defined below. + StorageAccount []StorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // The Key Vault Secret ID, optionally including version, that contains the Connection String to connect to the storage account for this Function App. + // The Key Vault Secret ID, including version, that contains the Connection String to connect to the storage account for this Function App. + StorageKeyVaultSecretID *string `json:"storageKeyVaultSecretId,omitempty" tf:"storage_key_vault_secret_id,omitempty"` + + // Should the Function App use Managed Identity to access the storage account. Conflicts with storage_account_access_key. + // Should the Function App use its Managed Identity to access storage? + StorageUsesManagedIdentity *bool `json:"storageUsesManagedIdentity,omitempty" tf:"storage_uses_managed_identity,omitempty"` + + // A mapping of tags which should be assigned to the Linux Function App. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The local path and filename of the Zip packaged application to deploy to this Linux Function App. + // The local path and filename of the Zip packaged application to deploy to this Linux Function App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App in `app_settings`. + ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } type LinuxFunctionAppObservation struct { @@ -1437,6 +1993,17 @@ type LinuxFunctionAppParameters struct { ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } +type LinuxFunctionAppSiteConfigCorsInitParameters struct { + + // Specifies a list of origins that should be allowed to make cross-origin calls. + // Specifies a list of origins that should be allowed to make cross-origin calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // Are credentials allowed in CORS requests? Defaults to false. + // Are credentials allowed in CORS requests? Defaults to `false`. + SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` +} + type LinuxFunctionAppSiteConfigCorsObservation struct { // Specifies a list of origins that should be allowed to make cross-origin calls. @@ -1461,6 +2028,32 @@ type LinuxFunctionAppSiteConfigCorsParameters struct { SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } +type LinuxFunctionAppSiteConfigIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []SiteConfigIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type LinuxFunctionAppSiteConfigIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -1502,40 +2095,162 @@ type LinuxFunctionAppSiteConfigIPRestrictionParameters struct { // +kubebuilder:validation:Optional Headers []SiteConfigIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` - // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 - // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` - // +kubebuilder:validation:Optional - IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` + + // The subnet id which will be used by this Function App for regional virtual network integration. + // The Virtual Network Subnet ID used for this IP Restriction. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID() + // +kubebuilder:validation:Optional + VirtualNetworkSubnetID *string `json:"virtualNetworkSubnetId,omitempty" tf:"virtual_network_subnet_id,omitempty"` + + // Reference to a Subnet in network to populate virtualNetworkSubnetId. + // +kubebuilder:validation:Optional + VirtualNetworkSubnetIDRef *v1.Reference `json:"virtualNetworkSubnetIdRef,omitempty" tf:"-"` + + // Selector for a Subnet in network to populate virtualNetworkSubnetId. + // +kubebuilder:validation:Optional + VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` +} + +type LinuxFunctionAppSiteConfigInitParameters struct { + + // The URL of the API definition that describes this Linux Function App. + // The URL of the API definition that describes this Linux Function App. + APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` + + // The ID of the API Management API for this Linux Function App. + // The ID of the API Management API for this Linux Function App. + APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` + + // If this Linux Web App is Always On enabled. Defaults to false. + // If this Linux Web App is Always On enabled. Defaults to `false`. + AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` + + // The App command line to launch. + // The program and any arguments used to launch this app via the command line. (Example `node myapp.js`). + AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` + + // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` + + // An app_service_logs block as defined above. + AppServiceLogs []AppServiceLogsInitParameters `json:"appServiceLogs,omitempty" tf:"app_service_logs,omitempty"` + + // An application_stack block as defined above. + ApplicationStack []ApplicationStackInitParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` + + // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` + + // Should connections for Azure Container Registry use Managed Identity. + // Should connections for Azure Container Registry use Managed Identity. + ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` + + // A cors block as defined above. + Cors []LinuxFunctionAppSiteConfigCorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // Specifies a list of Default Documents for the Linux Web App. + // Specifies a list of Default Documents for the Linux Web App. + DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` + + // The number of minimum instances for this Linux Function App. Only affects apps on Elastic Premium plans. + // The number of minimum instances for this Linux Function App. Only affects apps on Elastic Premium plans. + ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` + + // State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to Disabled. + // State of FTP / FTPS service for this function app. Possible values include: `AllAllowed`, `FtpsOnly` and `Disabled`. Defaults to `Disabled`. + FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` + + // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. + // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` + + // The path to be checked for this function app health. + // The path to be checked for this function app health. + HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` + + // Specifies if the HTTP2 protocol should be enabled. Defaults to false. + // Specifies if the http2 protocol should be enabled. Defaults to `false`. + Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` + + // One or more ip_restriction blocks as defined above. + IPRestriction []LinuxFunctionAppSiteConfigIPRestrictionInitParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` + + // The Site load balancing mode. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + // The Site load balancing mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted. + LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` + + // Managed pipeline mode. Possible values include: Integrated, Classic. Defaults to Integrated. + // The Managed Pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`. + ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` + + // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` + + // Should Remote Debugging be enabled. Defaults to false. + // Should Remote Debugging be enabled. Defaults to `false`. + RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` + + // The Remote Debugging Version. Possible values include VS2017, VS2019, and VS2022. + // The Remote Debugging Version. Possible values include `VS2017`, `VS2019`, and `VS2022“ + RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` + + // Should Scale Monitoring of the Functions Runtime be enabled? + // Should Functions Runtime Scale Monitoring be enabled. + RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` - // The name which should be used for this Storage Account. - // The name which should be used for this `ip_restriction`. - // +kubebuilder:validation:Optional - Name *string `json:"name,omitempty" tf:"name,omitempty"` + // One or more scm_ip_restriction blocks as defined above. + ScmIPRestriction []LinuxFunctionAppSiteConfigScmIPRestrictionInitParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` - // The priority value of this ip_restriction. Defaults to 65000. - // The priority value of this `ip_restriction`. - // +kubebuilder:validation:Optional - Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` - // The Service Tag used for this IP Restriction. - // The Service Tag used for this IP Restriction. - // +kubebuilder:validation:Optional - ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` + // Should the Linux Function App ip_restriction configuration be used for the SCM also. + // Should the Linux Function App `ip_restriction` configuration be used for the SCM also. + ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` - // The subnet id which will be used by this Function App for regional virtual network integration. - // The Virtual Network Subnet ID used for this IP Restriction. - // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet - // +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID() - // +kubebuilder:validation:Optional - VirtualNetworkSubnetID *string `json:"virtualNetworkSubnetId,omitempty" tf:"virtual_network_subnet_id,omitempty"` + // Should the Linux Web App use a 32-bit worker process. Defaults to true. + // Should the Linux Web App use a 32-bit worker. + Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` - // Reference to a Subnet in network to populate virtualNetworkSubnetId. - // +kubebuilder:validation:Optional - VirtualNetworkSubnetIDRef *v1.Reference `json:"virtualNetworkSubnetIdRef,omitempty" tf:"-"` + // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. + // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` - // Selector for a Subnet in network to populate virtualNetworkSubnetId. - // +kubebuilder:validation:Optional - VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` + // Should Web Sockets be enabled. Defaults to false. + // Should Web Sockets be enabled. Defaults to `false`. + WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` + + // The number of Workers for this Linux Function App. + // The number of Workers for this Linux Function App. + WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } type LinuxFunctionAppSiteConfigObservation struct { @@ -1833,6 +2548,21 @@ type LinuxFunctionAppSiteConfigParameters struct { WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } +type LinuxFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type LinuxFunctionAppSiteConfigScmIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -1867,6 +2597,32 @@ type LinuxFunctionAppSiteConfigScmIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type LinuxFunctionAppSiteConfigScmIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []LinuxFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type LinuxFunctionAppSiteConfigScmIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -1944,6 +2700,9 @@ type LinuxFunctionAppSiteConfigScmIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type LinuxFunctionAppSiteCredentialInitParameters struct { +} + type LinuxFunctionAppSiteCredentialObservation struct { // The Site Credentials Username used for publishing. @@ -1956,6 +2715,53 @@ type LinuxFunctionAppSiteCredentialObservation struct { type LinuxFunctionAppSiteCredentialParameters struct { } +type LoginInitParameters struct { + + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. + // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` + + // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. + // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` + + // The endpoint to which logout requests should be made. + // The endpoint to which logout requests should be made. + LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` + + // The time after the request is made when the nonce should expire. Defaults to 00:05:00. + // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` + + // Should the fragments from the request be preserved after the login request is made. Defaults to false. + // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` + + // Should the Token Store configuration Enabled. Defaults to false + // Should the Token Store configuration Enabled. Defaults to `false` + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // The directory path in the App Filesystem in which the tokens will be stored. + // The directory path in the App Filesystem in which the tokens will be stored. + TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` + + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` + + // Should the nonce be validated while completing the login flow. Defaults to true. + // Should the nonce be validated while completing the login flow. Defaults to `true`. + ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` +} + type LoginObservation struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. @@ -2061,6 +2867,25 @@ type LoginParameters struct { ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } +type MicrosoftV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // The list of Login scopes that will be requested as part of Microsoft Account authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type MicrosoftV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -2089,13 +2914,13 @@ type MicrosoftV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. @@ -2103,6 +2928,29 @@ type MicrosoftV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type ScheduleInitParameters struct { + + // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). + // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` + + // The unit of time for how often the backup should take place. Possible values include: Day and Hour. + // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` + + // Should the service keep at least one backup, regardless of age of backup. Defaults to false. + // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // After how many days backups should be deleted. + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` + + // When the schedule should start working in RFC-3339 format. + // When the schedule should start working in RFC-3339 format. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type ScheduleObservation struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). @@ -2133,13 +2981,13 @@ type ScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). - // +kubebuilder:validation:Required - FrequencyInterval *float64 `json:"frequencyInterval" tf:"frequency_interval,omitempty"` + // +kubebuilder:validation:Optional + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day and Hour. // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. - // +kubebuilder:validation:Required - FrequencyUnit *string `json:"frequencyUnit" tf:"frequency_unit,omitempty"` + // +kubebuilder:validation:Optional + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. @@ -2157,6 +3005,21 @@ type ScheduleParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type SiteConfigIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type SiteConfigIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -2191,6 +3054,15 @@ type SiteConfigIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type StickySettingsInitParameters struct { + + // A list of app_setting names that the Linux Function App will not swap between Slots when a swap operation is triggered. + AppSettingNames []*string `json:"appSettingNames,omitempty" tf:"app_setting_names,omitempty"` + + // A list of connection_string names that the Linux Function App will not swap between Slots when a swap operation is triggered. + ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` +} + type StickySettingsObservation struct { // A list of app_setting names that the Linux Function App will not swap between Slots when a swap operation is triggered. @@ -2211,6 +3083,24 @@ type StickySettingsParameters struct { ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` } +type StorageAccountInitParameters struct { + + // The Name of the Storage Account. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // The path at which to mount the storage share. + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` + + // The name which should be used for this Storage Account. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Name of the File Share or Container Name for Blob storage. + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` + + // The Azure Storage Type. Possible values include AzureFiles and AzureBlob. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type StorageAccountObservation struct { // The Name of the Storage Account. @@ -2236,24 +3126,35 @@ type StorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. - // +kubebuilder:validation:Required - ShareName *string `json:"shareName" tf:"share_name,omitempty"` + // +kubebuilder:validation:Optional + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type TwitterV2InitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } type TwitterV2Observation struct { @@ -2271,19 +3172,31 @@ type TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerSecretSettingName *string `json:"consumerSecretSettingName" tf:"consumer_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } // LinuxFunctionAppSpec defines the desired state of LinuxFunctionApp type LinuxFunctionAppSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinuxFunctionAppParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinuxFunctionAppInitParameters `json:"initProvider,omitempty"` } // LinuxFunctionAppStatus defines the observed state of LinuxFunctionApp. @@ -2304,9 +3217,9 @@ type LinuxFunctionAppStatus struct { type LinuxFunctionApp struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig)",message="siteConfig is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.siteConfig) || has(self.initProvider.siteConfig)",message="siteConfig is a required parameter" Spec LinuxFunctionAppSpec `json:"spec"` Status LinuxFunctionAppStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_linuxfunctionappslot_types.go b/apis/web/v1beta1/zz_linuxfunctionappslot_types.go index af6f64ba2..0a348e102 100755 --- a/apis/web/v1beta1/zz_linuxfunctionappslot_types.go +++ b/apis/web/v1beta1/zz_linuxfunctionappslot_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationStackDockerInitParameters struct { + + // The name of the Docker image to use. + // The name of the Docker image to use. + ImageName *string `json:"imageName,omitempty" tf:"image_name,omitempty"` + + // The image tag of the image to use. + // The image tag of the image to use. + ImageTag *string `json:"imageTag,omitempty" tf:"image_tag,omitempty"` + + // The URL of the docker registry. + // The URL of the docker registry. + RegistryURL *string `json:"registryUrl,omitempty" tf:"registry_url,omitempty"` +} + type ApplicationStackDockerObservation struct { // The name of the Docker image to use. @@ -32,13 +47,13 @@ type ApplicationStackDockerParameters struct { // The name of the Docker image to use. // The name of the Docker image to use. - // +kubebuilder:validation:Required - ImageName *string `json:"imageName" tf:"image_name,omitempty"` + // +kubebuilder:validation:Optional + ImageName *string `json:"imageName,omitempty" tf:"image_name,omitempty"` // The image tag of the image to use. // The image tag of the image to use. - // +kubebuilder:validation:Required - ImageTag *string `json:"imageTag" tf:"image_tag,omitempty"` + // +kubebuilder:validation:Optional + ImageTag *string `json:"imageTag,omitempty" tf:"image_tag,omitempty"` // The password for the account to use to connect to the registry. // The password for the account to use to connect to the registry. @@ -47,8 +62,8 @@ type ApplicationStackDockerParameters struct { // The URL of the docker registry. // The URL of the docker registry. - // +kubebuilder:validation:Required - RegistryURL *string `json:"registryUrl" tf:"registry_url,omitempty"` + // +kubebuilder:validation:Optional + RegistryURL *string `json:"registryUrl,omitempty" tf:"registry_url,omitempty"` // The username to use for connections to the registry. // The username to use for connections to the registry. @@ -56,6 +71,21 @@ type ApplicationStackDockerParameters struct { RegistryUsernameSecretRef *v1.SecretKeySelector `json:"registryUsernameSecretRef,omitempty" tf:"-"` } +type AuthSettingsGithubInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type AuthSettingsGithubObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -75,8 +105,8 @@ type AuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret of the GitHub app used for GitHub Login. Cannot be specified with `client_secret_setting_name`. @@ -94,6 +124,57 @@ type AuthSettingsGithubParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type AuthSettingsV2ActiveDirectoryV2InitParameters struct { + + // The list of allowed Applications for the Default Authorisation Policy. + // The list of allowed Applications for the Default Authorisation Policy. + AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The list of allowed Group Names for the Default Authorisation Policy. + // The list of allowed Group Names for the Default Authorisation Policy. + AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` + + // The list of allowed Identities for the Default Authorisation Policy. + // The list of allowed Identities for the Default Authorisation Policy. + AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The thumbprint of the certificate used for signing purposes. + // The thumbprint of the certificate used for signing purposes. + ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // A list of Allowed Client Applications in the JWT Claim. + // A list of Allowed Client Applications in the JWT Claim. + JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` + + // A list of Allowed Groups in the JWT Claim. + // A list of Allowed Groups in the JWT Claim. + JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` + + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` + + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` + + // Should the www-authenticate provider should be omitted from the request? Defaults to false + // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` +} + type AuthSettingsV2ActiveDirectoryV2Observation struct { // The list of allowed Applications for the Default Authorisation Policy. @@ -169,8 +250,8 @@ type AuthSettingsV2ActiveDirectoryV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. @@ -199,8 +280,8 @@ type AuthSettingsV2ActiveDirectoryV2Parameters struct { // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. - // +kubebuilder:validation:Required - TenantAuthEndpoint *string `json:"tenantAuthEndpoint" tf:"tenant_auth_endpoint,omitempty"` + // +kubebuilder:validation:Optional + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` @@ -208,6 +289,17 @@ type AuthSettingsV2ActiveDirectoryV2Parameters struct { WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } +type AuthSettingsV2AppleV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type AuthSettingsV2AppleV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -226,13 +318,20 @@ type AuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + +type AuthSettingsV2AzureStaticWebAppV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } type AuthSettingsV2AzureStaticWebAppV2Observation struct { @@ -246,8 +345,31 @@ type AuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + +type AuthSettingsV2CustomOidcV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with this Custom OIDC. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The name which should be used for this Storage Account. + // The name of the Custom OIDC Authentication Provider. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The name of the claim that contains the users name. + // The name of the claim that contains the users name. + NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` + + // The app setting name that contains the client_secret value used for the Custom OIDC Login. + // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` + + // The list of the scopes that should be requested while authenticating. + // The list of the scopes that should be requested while authenticating. + Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } type AuthSettingsV2CustomOidcV2Observation struct { @@ -301,13 +423,13 @@ type AuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. @@ -316,8 +438,8 @@ type AuthSettingsV2CustomOidcV2Parameters struct { // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. - // +kubebuilder:validation:Required - OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint" tf:"openid_configuration_endpoint,omitempty"` + // +kubebuilder:validation:Optional + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. @@ -325,6 +447,25 @@ type AuthSettingsV2CustomOidcV2Parameters struct { Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } +type AuthSettingsV2FacebookV2InitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // The version of the Facebook API to be used while logging in. + // The version of the Facebook API to be used while logging in. + GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of scopes to be requested as part of Facebook Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type AuthSettingsV2FacebookV2Observation struct { // The App ID of the Facebook app used for login. @@ -348,13 +489,13 @@ type AuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. - // +kubebuilder:validation:Required - AppSecretSettingName *string `json:"appSecretSettingName" tf:"app_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. @@ -367,6 +508,21 @@ type AuthSettingsV2FacebookV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type AuthSettingsV2GithubV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type AuthSettingsV2GithubV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -386,13 +542,13 @@ type AuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. @@ -400,6 +556,25 @@ type AuthSettingsV2GithubV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type AuthSettingsV2GoogleV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type AuthSettingsV2GoogleV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -428,13 +603,13 @@ type AuthSettingsV2GoogleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. @@ -442,6 +617,53 @@ type AuthSettingsV2GoogleV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type AuthSettingsV2LoginInitParameters struct { + + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. + // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` + + // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. + // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` + + // The endpoint to which logout requests should be made. + // The endpoint to which logout requests should be made. + LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` + + // The time after the request is made when the nonce should expire. Defaults to 00:05:00. + // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` + + // Should the fragments from the request be preserved after the login request is made. Defaults to false. + // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` + + // Should the Token Store configuration Enabled. Defaults to false + // Should the Token Store configuration Enabled. Defaults to `false` + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // The directory path in the App Filesystem in which the tokens will be stored. + // The directory path in the App Filesystem in which the tokens will be stored. + TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` + + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` + + // Should the nonce be validated while completing the login flow. Defaults to true. + // Should the nonce be validated while completing the login flow. Defaults to `true`. + ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` +} + type AuthSettingsV2LoginObservation struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. @@ -547,6 +769,25 @@ type AuthSettingsV2LoginParameters struct { ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } +type AuthSettingsV2MicrosoftV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // The list of Login scopes that will be requested as part of Microsoft Account authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type AuthSettingsV2MicrosoftV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -575,13 +816,13 @@ type AuthSettingsV2MicrosoftV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. @@ -589,6 +830,17 @@ type AuthSettingsV2MicrosoftV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type AuthSettingsV2TwitterV2InitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type AuthSettingsV2TwitterV2Observation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -604,13 +856,36 @@ type AuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerSecretSettingName *string `json:"consumerSecretSettingName" tf:"consumer_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + +type BackupScheduleInitParameters struct { + + // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). + // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` + + // The unit of time for how often the backup should take place. Possible values include: Day and Hour. + // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` + + // Should the service keep at least one backup, regardless of age of backup. Defaults to false. + // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // After how many days backups should be deleted. + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` + + // When the schedule should start working in RFC-3339 format. + // When the schedule should start working in RFC-3339 format. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } type BackupScheduleObservation struct { @@ -644,13 +919,13 @@ type BackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). - // +kubebuilder:validation:Required - FrequencyInterval *float64 `json:"frequencyInterval" tf:"frequency_interval,omitempty"` + // +kubebuilder:validation:Optional + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day and Hour. // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. - // +kubebuilder:validation:Required - FrequencyUnit *string `json:"frequencyUnit" tf:"frequency_unit,omitempty"` + // +kubebuilder:validation:Optional + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. @@ -668,6 +943,21 @@ type BackupScheduleParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type LinuxFunctionAppSlotAuthSettingsActiveDirectoryInitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type LinuxFunctionAppSlotAuthSettingsActiveDirectoryObservation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -692,8 +982,8 @@ type LinuxFunctionAppSlotAuthSettingsActiveDirectoryParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret for the Client ID. Cannot be used with `client_secret_setting_name`. @@ -706,6 +996,21 @@ type LinuxFunctionAppSlotAuthSettingsActiveDirectoryParameters struct { ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } +type LinuxFunctionAppSlotAuthSettingsFacebookInitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxFunctionAppSlotAuthSettingsFacebookObservation struct { // The App ID of the Facebook app used for login. @@ -725,8 +1030,8 @@ type LinuxFunctionAppSlotAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. // The App Secret of the Facebook app used for Facebook Login. Cannot be specified with `app_secret_setting_name`. @@ -744,6 +1049,21 @@ type LinuxFunctionAppSlotAuthSettingsFacebookParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type LinuxFunctionAppSlotAuthSettingsGoogleInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxFunctionAppSlotAuthSettingsGoogleObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -754,31 +1074,103 @@ type LinuxFunctionAppSlotAuthSettingsGoogleObservation struct { // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` - // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. - // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. - OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + +type LinuxFunctionAppSlotAuthSettingsGoogleParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. + // The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. + // +kubebuilder:validation:Optional + ClientSecretSecretRef *v1.SecretKeySelector `json:"clientSecretSecretRef,omitempty" tf:"-"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + // +kubebuilder:validation:Optional + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + +type LinuxFunctionAppSlotAuthSettingsInitParameters struct { + + // an active_directory block as detailed below. + ActiveDirectory []LinuxFunctionAppSlotAuthSettingsActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` + + // an allowed_external_redirect_urls block as detailed below. + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github. + // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // Should the Authentication / Authorization feature be enabled? + // Should the Authentication / Authorization feature be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // a facebook block as detailed below. + Facebook []LinuxFunctionAppSlotAuthSettingsFacebookInitParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` + + // a github block as detailed below. + Github []AuthSettingsGithubInitParameters `json:"github,omitempty" tf:"github,omitempty"` + + // a google block as detailed below. + Google []LinuxFunctionAppSlotAuthSettingsGoogleInitParameters `json:"google,omitempty" tf:"google,omitempty"` + + // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // a microsoft block as detailed below. + Microsoft []LinuxFunctionAppSlotAuthSettingsMicrosoftInitParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` + + // The RuntimeVersion of the Authentication / Authorization feature in use. + // The RuntimeVersion of the Authentication / Authorization feature in use. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` + + // Should the Linux Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. + // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // a twitter block as detailed below. + Twitter []LinuxFunctionAppSlotAuthSettingsTwitterInitParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` + + // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. + // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } -type LinuxFunctionAppSlotAuthSettingsGoogleParameters struct { +type LinuxFunctionAppSlotAuthSettingsMicrosoftInitParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. - // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` - - // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. - // The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. - // +kubebuilder:validation:Optional - ClientSecretSecretRef *v1.SecretKeySelector `json:"clientSecretSecretRef,omitempty" tf:"-"` + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. - // +kubebuilder:validation:Optional + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. - // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. - // +kubebuilder:validation:Optional + // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -801,8 +1193,8 @@ type LinuxFunctionAppSlotAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret_setting_name`. @@ -900,8 +1292,8 @@ type LinuxFunctionAppSlotAuthSettingsParameters struct { // Should the Authentication / Authorization feature be enabled? // Should the Authentication / Authorization feature be enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // a facebook block as detailed below. // +kubebuilder:validation:Optional @@ -949,6 +1341,17 @@ type LinuxFunctionAppSlotAuthSettingsParameters struct { UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } +type LinuxFunctionAppSlotAuthSettingsTwitterInitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type LinuxFunctionAppSlotAuthSettingsTwitterObservation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -964,8 +1367,8 @@ type LinuxFunctionAppSlotAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret_setting_name`. @@ -978,6 +1381,87 @@ type LinuxFunctionAppSlotAuthSettingsTwitterParameters struct { ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } +type LinuxFunctionAppSlotAuthSettingsV2InitParameters struct { + + // An active_directory_v2 block as defined below. + ActiveDirectoryV2 []AuthSettingsV2ActiveDirectoryV2InitParameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` + + // An apple_v2 block as defined below. + AppleV2 []AuthSettingsV2AppleV2InitParameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` + + // Should the AuthV2 Settings be enabled. Defaults to false. + // Should the AuthV2 Settings be enabled. Defaults to `false` + AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` + + // An azure_static_web_app_v2 block as defined below. + AzureStaticWebAppV2 []AuthSettingsV2AzureStaticWebAppV2InitParameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` + + // The path to the App Auth settings. + // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` + + // Zero or more custom_oidc_v2 blocks as defined below. + CustomOidcV2 []AuthSettingsV2CustomOidcV2InitParameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` + + // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. + // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. + // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` + + // A facebook_v2 block as defined below. + FacebookV2 []AuthSettingsV2FacebookV2InitParameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` + + // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. + // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` + + // The name of the custom header containing the host of the request. + // The name of the header containing the host of the request. + ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` + + // The name of the custom header containing the scheme of the request. + // The name of the header containing the scheme of the request. + ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` + + // A github_v2 block as defined below. + GithubV2 []AuthSettingsV2GithubV2InitParameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` + + // A google_v2 block as defined below. + GoogleV2 []AuthSettingsV2GoogleV2InitParameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` + + // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. + // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` + + // A login block as defined below. + Login []AuthSettingsV2LoginInitParameters `json:"login,omitempty" tf:"login,omitempty"` + + // A microsoft_v2 block as defined below. + MicrosoftV2 []AuthSettingsV2MicrosoftV2InitParameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` + + // Should the authentication flow be used for all requests. + // Should the authentication flow be used for all requests. + RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` + + // Should HTTPS be required on connections? Defaults to true. + // Should HTTPS be required on connections? Defaults to true. + RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` + + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // A twitter_v2 block as defined below. + TwitterV2 []AuthSettingsV2TwitterV2InitParameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` + + // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. + // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` +} + type LinuxFunctionAppSlotAuthSettingsV2Observation struct { // An active_directory_v2 block as defined below. @@ -1130,8 +1614,8 @@ type LinuxFunctionAppSlotAuthSettingsV2Parameters struct { HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. - // +kubebuilder:validation:Required - Login []AuthSettingsV2LoginParameters `json:"login" tf:"login,omitempty"` + // +kubebuilder:validation:Optional + Login []AuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. // +kubebuilder:validation:Optional @@ -1162,6 +1646,20 @@ type LinuxFunctionAppSlotAuthSettingsV2Parameters struct { UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } +type LinuxFunctionAppSlotBackupInitParameters struct { + + // Should this backup job be enabled? Defaults to true. + // Should this backup job be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name which should be used for this Backup. + // The name which should be used for this Backup. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // a schedule block as detailed below. + Schedule []BackupScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` +} + type LinuxFunctionAppSlotBackupObservation struct { // Should this backup job be enabled? Defaults to true. @@ -1185,12 +1683,12 @@ type LinuxFunctionAppSlotBackupParameters struct { // The name which should be used for this Backup. // The name which should be used for this Backup. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // a schedule block as detailed below. - // +kubebuilder:validation:Required - Schedule []BackupScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []BackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. // The SAS URL to the container. @@ -1198,6 +1696,17 @@ type LinuxFunctionAppSlotBackupParameters struct { StorageAccountURLSecretRef v1.SecretKeySelector `json:"storageAccountUrlSecretRef" tf:"-"` } +type LinuxFunctionAppSlotConnectionStringInitParameters struct { + + // The name which should be used for this Connection. + // The name which should be used for this Connection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxFunctionAppSlotConnectionStringObservation struct { // The name which should be used for this Connection. @@ -1213,13 +1722,13 @@ type LinuxFunctionAppSlotConnectionStringParameters struct { // The name which should be used for this Connection. // The name which should be used for this Connection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. // The connection string value. @@ -1227,6 +1736,15 @@ type LinuxFunctionAppSlotConnectionStringParameters struct { ValueSecretRef v1.SecretKeySelector `json:"valueSecretRef" tf:"-"` } +type LinuxFunctionAppSlotIdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Linux Function App Slot. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Linux Function App Slot. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxFunctionAppSlotIdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this Linux Function App Slot. @@ -1249,8 +1767,90 @@ type LinuxFunctionAppSlotIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Function App Slot. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LinuxFunctionAppSlotInitParameters struct { + + // A map of key-value pairs for App Settings and custom values. + // A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) and custom values. + AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` + + // an auth_settings block as detailed below. + AuthSettings []LinuxFunctionAppSlotAuthSettingsInitParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` + + // an auth_settings_v2 block as detailed below. + AuthSettingsV2 []LinuxFunctionAppSlotAuthSettingsV2InitParameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` + + // a backup block as detailed below. + Backup []LinuxFunctionAppSlotBackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // Should built in logging be enabled. Configures AzureWebJobsDashboard app setting based on the configured storage setting. Defaults to true. + // Should built in logging be enabled. Configures `AzureWebJobsDashboard` app setting based on the configured storage setting. + BuiltinLoggingEnabled *bool `json:"builtinLoggingEnabled,omitempty" tf:"builtin_logging_enabled,omitempty"` + + // Should the Function App Slot use Client Certificates. + // Should the Function App Slot use Client Certificates. + ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` + + // Paths to exclude when using client certificates, separated by ; + // Paths to exclude when using client certificates, separated by ; + ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` + + // The mode of the Function App Slot's client certificates requirement for incoming requests. Possible values are Required, Optional, and OptionalInteractiveUser. + // The mode of the Function App Slot's client certificates requirement for incoming requests. Possible values are `Required`, `Optional`, and `OptionalInteractiveUser`. + ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` + + // a connection_string block as detailed below. + ConnectionString []LinuxFunctionAppSlotConnectionStringInitParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // Force disable the content share settings. + // Force disable the content share settings. + ContentShareForceDisabled *bool `json:"contentShareForceDisabled,omitempty" tf:"content_share_force_disabled,omitempty"` + + // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. Defaults to 0. + // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. + DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` + + // Is the Linux Function App Slot enabled. Defaults to true. + // Is the Linux Function App Slot enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The runtime version associated with the Function App Slot. Defaults to ~4. + // The runtime version associated with the Function App Slot. + FunctionsExtensionVersion *string `json:"functionsExtensionVersion,omitempty" tf:"functions_extension_version,omitempty"` + + // Can the Function App Slot only be accessed via HTTPS? + // Can the Function App Slot only be accessed via HTTPS? + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // An identity block as detailed below. + Identity []LinuxFunctionAppSlotIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity + // The User Assigned Identity to use for Key Vault access. + KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` + + // The ID of the Service Plan in which to run this slot. If not specified the same Service Plan as the Linux Function App will be used. + ServicePlanID *string `json:"servicePlanId,omitempty" tf:"service_plan_id,omitempty"` + + // a site_config block as detailed below. + SiteConfig []LinuxFunctionAppSlotSiteConfigInitParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` + + // One or more storage_account blocks as defined below. + StorageAccount []LinuxFunctionAppSlotStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // The Key Vault Secret ID, optionally including version, that contains the Connection String to connect to the storage account for this Function App. + // The Key Vault Secret ID, including version, that contains the Connection String to connect to the storage account for this Function App. + StorageKeyVaultSecretID *string `json:"storageKeyVaultSecretId,omitempty" tf:"storage_key_vault_secret_id,omitempty"` + + // Should the Function App Slot use its Managed Identity to access storage. + // Should the Function App Slot use its Managed Identity to access storage? + StorageUsesManagedIdentity *bool `json:"storageUsesManagedIdentity,omitempty" tf:"storage_uses_managed_identity,omitempty"` + + // A mapping of tags which should be assigned to the Linux Function App. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type LinuxFunctionAppSlotObservation struct { @@ -1522,6 +2122,17 @@ type LinuxFunctionAppSlotParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type LinuxFunctionAppSlotSiteConfigCorsInitParameters struct { + + // an allowed_origins block as detailed below. + // Specifies a list of origins that should be allowed to make cross-origin calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // Are credentials allowed in CORS requests? Defaults to false. + // Are credentials allowed in CORS requests? Defaults to `false`. + SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` +} + type LinuxFunctionAppSlotSiteConfigCorsObservation struct { // an allowed_origins block as detailed below. @@ -1546,6 +2157,21 @@ type LinuxFunctionAppSlotSiteConfigCorsParameters struct { SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } +type LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -1580,6 +2206,32 @@ type LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type LinuxFunctionAppSlotSiteConfigIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // a headers block as detailed below. + Headers []LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type LinuxFunctionAppSlotSiteConfigIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -1657,6 +2309,131 @@ type LinuxFunctionAppSlotSiteConfigIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type LinuxFunctionAppSlotSiteConfigInitParameters struct { + + // The URL of the API definition that describes this Linux Function App. + // The URL of the API definition that describes this Linux Function App. + APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` + + // The ID of the API Management API for this Linux Function App. + // The ID of the API Management API for this Linux Function App. + APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` + + // If this Linux Web App is Always On enabled. Defaults to false. + // If this Linux Web App is Always On enabled. Defaults to `false`. + AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` + + // The program and any arguments used to launch this app via the command line. (Example node myapp.js). + // The program and any arguments used to launch this app via the command line. (Example `node myapp.js`). + AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` + + // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` + + // an app_service_logs block as detailed below. + AppServiceLogs []SiteConfigAppServiceLogsInitParameters `json:"appServiceLogs,omitempty" tf:"app_service_logs,omitempty"` + + // an application_stack block as detailed below. + ApplicationStack []SiteConfigApplicationStackInitParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` + + // The name of the slot to automatically swap with when this slot is successfully deployed. + AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` + + // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` + + // Should connections for Azure Container Registry use Managed Identity. + // Should connections for Azure Container Registry use Managed Identity. + ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` + + // a cors block as detailed below. + Cors []LinuxFunctionAppSlotSiteConfigCorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // a default_documents block as detailed below. + // Specifies a list of Default Documents for the Linux Web App. + DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` + + // The number of minimum instances for this Linux Function App. Only affects apps on Elastic Premium plans. + // The number of minimum instances for this Linux Function App. Only affects apps on Elastic Premium plans. + ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` + + // State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to Disabled. + // State of FTP / FTPS service for this function app. Possible values include: `AllAllowed`, `FtpsOnly` and `Disabled`. Defaults to `Disabled`. + FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` + + // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Defaults to 10. Only valid in conjunction with health_check_path + // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` + + // The path to be checked for this function app health. + // The path to be checked for this function app health. + HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` + + // Specifies if the HTTP2 protocol should be enabled. Defaults to false. + // Specifies if the http2 protocol should be enabled. Defaults to `false`. + Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` + + // an ip_restriction block as detailed below. + IPRestriction []LinuxFunctionAppSlotSiteConfigIPRestrictionInitParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` + + // The Site load balancing mode. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + // The Site load balancing mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted. + LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` + + // The Managed Pipeline mode. Possible values include: Integrated, Classic. Defaults to Integrated. + // The Managed Pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`. + ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` + + // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` + + // Should Remote Debugging be enabled. Defaults to false. + // Should Remote Debugging be enabled. Defaults to `false`. + RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` + + // The Remote Debugging Version. Possible values include VS2017, VS2019, and VS2022 + // The Remote Debugging Version. Possible values include `VS2017`, `VS2019`, and `VS2022` + RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` + + // Should Functions Runtime Scale Monitoring be enabled. + // Should Functions Runtime Scale Monitoring be enabled. + RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` + + // a scm_ip_restriction block as detailed below. + ScmIPRestriction []LinuxFunctionAppSlotSiteConfigScmIPRestrictionInitParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` + + // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` + + // Should the Linux Function App ip_restriction configuration be used for the SCM also. + // Should the Linux Function App `ip_restriction` configuration be used for the SCM also. + ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` + + // Should the Linux Web App use a 32-bit worker. + // Should the Linux Web App use a 32-bit worker. + Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` + + // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. + // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` + + // Should Web Sockets be enabled. Defaults to false. + // Should Web Sockets be enabled. Defaults to `false`. + WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` + + // The number of Workers for this Linux Function App. + // The number of Workers for this Linux Function App. + WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` +} + type LinuxFunctionAppSlotSiteConfigObservation struct { // The URL of the API definition that describes this Linux Function App. @@ -1961,6 +2738,21 @@ type LinuxFunctionAppSlotSiteConfigParameters struct { WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } +type LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -1995,6 +2787,32 @@ type LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type LinuxFunctionAppSlotSiteConfigScmIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // a headers block as detailed below. + Headers []LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type LinuxFunctionAppSlotSiteConfigScmIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -2072,6 +2890,9 @@ type LinuxFunctionAppSlotSiteConfigScmIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type LinuxFunctionAppSlotSiteCredentialInitParameters struct { +} + type LinuxFunctionAppSlotSiteCredentialObservation struct { // The Site Credentials Username used for publishing. @@ -2084,6 +2905,24 @@ type LinuxFunctionAppSlotSiteCredentialObservation struct { type LinuxFunctionAppSlotSiteCredentialParameters struct { } +type LinuxFunctionAppSlotStorageAccountInitParameters struct { + + // The Name of the Storage Account. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // The path at which to mount the storage share. + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` + + // The name which should be used for this Storage Account. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Name of the File Share or Container Name for Blob storage. + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` + + // The Azure Storage Type. Possible values include AzureFiles and AzureBlob. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxFunctionAppSlotStorageAccountObservation struct { // The Name of the Storage Account. @@ -2109,24 +2948,35 @@ type LinuxFunctionAppSlotStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. - // +kubebuilder:validation:Required - ShareName *string `json:"shareName" tf:"share_name,omitempty"` + // +kubebuilder:validation:Optional + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type SiteConfigAppServiceLogsInitParameters struct { + + // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. + // The amount of disk space to use for logs. Valid values are between `25` and `100`. + DiskQuotaMb *float64 `json:"diskQuotaMb,omitempty" tf:"disk_quota_mb,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // The retention period for logs in days. Valid values are between `0` and `99999`. Defaults to `0` (never delete). + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` } type SiteConfigAppServiceLogsObservation struct { @@ -2153,6 +3003,40 @@ type SiteConfigAppServiceLogsParameters struct { RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` } +type SiteConfigApplicationStackInitParameters struct { + + // a docker block as detailed below. + // A docker block + Docker []ApplicationStackDockerInitParameters `json:"docker,omitempty" tf:"docker,omitempty"` + + // The version of .Net. Possible values are 3.1, 6.0 and 7.0. + // The version of .Net. Possible values are `3.1`, `6.0` and `7.0` + DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` + + // The version of Java to use. Possible values are 8, 11 & 17 (In-Preview). + // The version of Java to use. Possible values are `8`, `11`, and `17` + JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` + + // The version of Node to use. Possible values include 12, 14, 16 and 18 + // The version of Node to use. Possible values include `12`, `14`, `16` and `18` + NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` + + // The version of PowerShell Core to use. Possibles values are 7 , and 7.2. + // The version of PowerShell Core to use. Possibles values are `7`, and `7.2` + PowershellCoreVersion *string `json:"powershellCoreVersion,omitempty" tf:"powershell_core_version,omitempty"` + + // The version of Python to use. Possible values are 3.10, 3.9, 3.8 and 3.7. + // The version of Python to use. Possible values include `3.10`, `3.9`, `3.8`, and `3.7`. + PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` + + // Should the Linux Function App use a custom runtime? + UseCustomRuntime *bool `json:"useCustomRuntime,omitempty" tf:"use_custom_runtime,omitempty"` + + // Should the DotNet process use an isolated runtime. Defaults to false. + // Should the DotNet process use an isolated runtime. Defaults to `false`. + UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` +} + type SiteConfigApplicationStackObservation struct { // a docker block as detailed below. @@ -2233,6 +3117,18 @@ type SiteConfigApplicationStackParameters struct { type LinuxFunctionAppSlotSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinuxFunctionAppSlotParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinuxFunctionAppSlotInitParameters `json:"initProvider,omitempty"` } // LinuxFunctionAppSlotStatus defines the observed state of LinuxFunctionAppSlot. @@ -2253,7 +3149,7 @@ type LinuxFunctionAppSlotStatus struct { type LinuxFunctionAppSlot struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig)",message="siteConfig is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.siteConfig) || has(self.initProvider.siteConfig)",message="siteConfig is a required parameter" Spec LinuxFunctionAppSlotSpec `json:"spec"` Status LinuxFunctionAppSlotStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_linuxwebapp_types.go b/apis/web/v1beta1/zz_linuxwebapp_types.go index 41ea94892..0fb0e129f 100755 --- a/apis/web/v1beta1/zz_linuxwebapp_types.go +++ b/apis/web/v1beta1/zz_linuxwebapp_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActionInitParameters struct { + + // Predefined action to be taken to an Auto Heal trigger. Possible values include: Recycle. + ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` + + // The minimum amount of time in hh:mm:ss the Linux Web App must have been running before the defined action will be run in the event of a trigger. + MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` +} + type ActionObservation struct { // Predefined action to be taken to an Auto Heal trigger. Possible values include: Recycle. @@ -25,14 +34,23 @@ type ActionObservation struct { type ActionParameters struct { // Predefined action to be taken to an Auto Heal trigger. Possible values include: Recycle. - // +kubebuilder:validation:Required - ActionType *string `json:"actionType" tf:"action_type,omitempty"` + // +kubebuilder:validation:Optional + ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` // The minimum amount of time in hh:mm:ss the Linux Web App must have been running before the defined action will be run in the event of a trigger. // +kubebuilder:validation:Optional MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` } +type ApplicationLogsInitParameters struct { + + // A azure_blob_storage_http block as defined below. + AzureBlobStorage []AzureBlobStorageInitParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` + + // Log level. Possible values include: Verbose, Information, Warning, and Error. + FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` +} + type ApplicationLogsObservation struct { // A azure_blob_storage_http block as defined below. @@ -49,8 +67,17 @@ type ApplicationLogsParameters struct { AzureBlobStorage []AzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // Log level. Possible values include: Verbose, Information, Warning, and Error. - // +kubebuilder:validation:Required - FileSystemLevel *string `json:"fileSystemLevel" tf:"file_system_level,omitempty"` + // +kubebuilder:validation:Optional + FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` +} + +type AutoHealSettingInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + Action []ActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // A trigger block as defined below. + Trigger []TriggerInitParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } type AutoHealSettingObservation struct { @@ -73,6 +100,18 @@ type AutoHealSettingParameters struct { Trigger []TriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } +type AzureBlobStorageInitParameters struct { + + // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs + Level *string `json:"level,omitempty" tf:"level,omitempty"` + + // The retention period in days. A value of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // SAS url to an Azure blob container with read/write/list/delete permissions. + SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` +} + type AzureBlobStorageObservation struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs @@ -88,16 +127,25 @@ type AzureBlobStorageObservation struct { type AzureBlobStorageParameters struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs - // +kubebuilder:validation:Required - Level *string `json:"level" tf:"level,omitempty"` + // +kubebuilder:validation:Optional + Level *string `json:"level,omitempty" tf:"level,omitempty"` // The retention period in days. A value of 0 means no retention. - // +kubebuilder:validation:Required - RetentionInDays *float64 `json:"retentionInDays" tf:"retention_in_days,omitempty"` + // +kubebuilder:validation:Optional + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. - // +kubebuilder:validation:Required - SASURL *string `json:"sasUrl" tf:"sas_url,omitempty"` + // +kubebuilder:validation:Optional + SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` +} + +type FileSystemInitParameters struct { + + // The retention period in days. A value of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // The maximum size in megabytes that log files can use. + RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` } type FileSystemObservation struct { @@ -112,12 +160,18 @@ type FileSystemObservation struct { type FileSystemParameters struct { // The retention period in days. A value of 0 means no retention. - // +kubebuilder:validation:Required - RetentionInDays *float64 `json:"retentionInDays" tf:"retention_in_days,omitempty"` + // +kubebuilder:validation:Optional + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // The maximum size in megabytes that log files can use. - // +kubebuilder:validation:Required - RetentionInMb *float64 `json:"retentionInMb" tf:"retention_in_mb,omitempty"` + // +kubebuilder:validation:Optional + RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` +} + +type HTTPLogsAzureBlobStorageInitParameters struct { + + // The retention period in days. A value of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` } type HTTPLogsAzureBlobStorageObservation struct { @@ -137,6 +191,15 @@ type HTTPLogsAzureBlobStorageParameters struct { SASURLSecretRef v1.SecretKeySelector `json:"sasurlSecretRef" tf:"-"` } +type HTTPLogsInitParameters struct { + + // A azure_blob_storage_http block as defined below. + AzureBlobStorage []HTTPLogsAzureBlobStorageInitParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` + + // A file_system block as defined above. + FileSystem []FileSystemInitParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` +} + type HTTPLogsObservation struct { // A azure_blob_storage_http block as defined below. @@ -157,6 +220,21 @@ type HTTPLogsParameters struct { FileSystem []FileSystemParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` } +type LinuxWebAppAuthSettingsActiveDirectoryInitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type LinuxWebAppAuthSettingsActiveDirectoryObservation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -181,8 +259,8 @@ type LinuxWebAppAuthSettingsActiveDirectoryParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret for the Client ID. Cannot be used with `client_secret_setting_name`. @@ -195,6 +273,21 @@ type LinuxWebAppAuthSettingsActiveDirectoryParameters struct { ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } +type LinuxWebAppAuthSettingsFacebookInitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxWebAppAuthSettingsFacebookObservation struct { // The App ID of the Facebook app used for login. @@ -214,8 +307,8 @@ type LinuxWebAppAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. // The App Secret of the Facebook app used for Facebook Login. Cannot be specified with `app_secret_setting_name`. @@ -233,6 +326,21 @@ type LinuxWebAppAuthSettingsFacebookParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type LinuxWebAppAuthSettingsGithubInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxWebAppAuthSettingsGithubObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -252,8 +360,8 @@ type LinuxWebAppAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret of the GitHub app used for GitHub Login. Cannot be specified with `client_secret_setting_name`. @@ -271,6 +379,21 @@ type LinuxWebAppAuthSettingsGithubParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type LinuxWebAppAuthSettingsGoogleInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxWebAppAuthSettingsGoogleObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -290,8 +413,8 @@ type LinuxWebAppAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. @@ -309,6 +432,78 @@ type LinuxWebAppAuthSettingsGoogleParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type LinuxWebAppAuthSettingsInitParameters struct { + + // An active_directory block as defined above. + ActiveDirectory []LinuxWebAppAuthSettingsActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` + + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Linux Web App. + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The default authentication provider to use when multiple providers are configured. Possible values include: BuiltInAuthenticationProviderAzureActiveDirectory, BuiltInAuthenticationProviderFacebook, BuiltInAuthenticationProviderGoogle, BuiltInAuthenticationProviderMicrosoftAccount, BuiltInAuthenticationProviderTwitter, BuiltInAuthenticationProviderGithub + // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // Should the Authentication / Authorization feature be enabled for the Linux Web App? + // Should the Authentication / Authorization feature be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A facebook block as defined below. + Facebook []LinuxWebAppAuthSettingsFacebookInitParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` + + // A github block as defined below. + Github []LinuxWebAppAuthSettingsGithubInitParameters `json:"github,omitempty" tf:"github,omitempty"` + + // A google block as defined below. + Google []LinuxWebAppAuthSettingsGoogleInitParameters `json:"google,omitempty" tf:"google,omitempty"` + + // The OpenID Connect Issuer URI that represents the entity that issues access tokens for this Linux Web App. + // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // A microsoft block as defined below. + Microsoft []LinuxWebAppAuthSettingsMicrosoftInitParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` + + // The RuntimeVersion of the Authentication / Authorization feature in use for the Linux Web App. + // The RuntimeVersion of the Authentication / Authorization feature in use. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` + + // Should the Linux Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. + // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // A twitter block as defined below. + Twitter []LinuxWebAppAuthSettingsTwitterInitParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` + + // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. + // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` +} + +type LinuxWebAppAuthSettingsMicrosoftInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxWebAppAuthSettingsMicrosoftObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -328,8 +523,8 @@ type LinuxWebAppAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret_setting_name`. @@ -427,8 +622,8 @@ type LinuxWebAppAuthSettingsParameters struct { // Should the Authentication / Authorization feature be enabled for the Linux Web App? // Should the Authentication / Authorization feature be enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. // +kubebuilder:validation:Optional @@ -476,6 +671,17 @@ type LinuxWebAppAuthSettingsParameters struct { UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } +type LinuxWebAppAuthSettingsTwitterInitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type LinuxWebAppAuthSettingsTwitterObservation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -491,8 +697,8 @@ type LinuxWebAppAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret_setting_name`. @@ -505,7 +711,7 @@ type LinuxWebAppAuthSettingsTwitterParameters struct { ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } -type LinuxWebAppAuthSettingsV2ActiveDirectoryV2Observation struct { +type LinuxWebAppAuthSettingsV2ActiveDirectoryV2InitParameters struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. @@ -556,78 +762,140 @@ type LinuxWebAppAuthSettingsV2ActiveDirectoryV2Observation struct { WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } -type LinuxWebAppAuthSettingsV2ActiveDirectoryV2Parameters struct { +type LinuxWebAppAuthSettingsV2ActiveDirectoryV2Observation struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. - // +kubebuilder:validation:Optional AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. - // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The list of allowed Group Names for the Default Authorisation Policy. // The list of allowed Group Names for the Default Authorisation Policy. - // +kubebuilder:validation:Optional AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` // The list of allowed Identities for the Default Authorisation Policy. // The list of allowed Identities for the Default Authorisation Policy. - // +kubebuilder:validation:Optional AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. - // +kubebuilder:validation:Optional ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. - // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // A list of Allowed Client Applications in the JWT Claim. // A list of Allowed Client Applications in the JWT Claim. - // +kubebuilder:validation:Optional JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` // A list of Allowed Groups in the JWT Claim. // A list of Allowed Groups in the JWT Claim. - // +kubebuilder:validation:Optional JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. - // +kubebuilder:validation:Optional LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. - // +kubebuilder:validation:Required - TenantAuthEndpoint *string `json:"tenantAuthEndpoint" tf:"tenant_auth_endpoint,omitempty"` + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` - // +kubebuilder:validation:Optional WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } -type LinuxWebAppAuthSettingsV2AppleV2Observation struct { +type LinuxWebAppAuthSettingsV2ActiveDirectoryV2Parameters struct { - // The OAuth 2.0 client ID that was created for the app used for authentication. - // The OpenID Connect Client ID for the Apple web application. - ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + // The list of allowed Applications for the Default Authorisation Policy. + // The list of allowed Applications for the Default Authorisation Policy. + // +kubebuilder:validation:Optional + AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` - // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // The app setting name that contains the `client_secret` value used for Apple Login. - ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The list of allowed Group Names for the Default Authorisation Policy. + // The list of allowed Group Names for the Default Authorisation Policy. + // +kubebuilder:validation:Optional + AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` + + // The list of allowed Identities for the Default Authorisation Policy. + // The list of allowed Identities for the Default Authorisation Policy. + // +kubebuilder:validation:Optional + AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The thumbprint of the certificate used for signing purposes. + // The thumbprint of the certificate used for signing purposes. + // +kubebuilder:validation:Optional + ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // A list of Allowed Client Applications in the JWT Claim. + // A list of Allowed Client Applications in the JWT Claim. + // +kubebuilder:validation:Optional + JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` + + // A list of Allowed Groups in the JWT Claim. + // A list of Allowed Groups in the JWT Claim. + // +kubebuilder:validation:Optional + JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` + + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // +kubebuilder:validation:Optional + LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` + + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + // +kubebuilder:validation:Optional + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` + + // Should the www-authenticate provider should be omitted from the request? Defaults to false + // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + // +kubebuilder:validation:Optional + WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` +} + +type LinuxWebAppAuthSettingsV2AppleV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + +type LinuxWebAppAuthSettingsV2AppleV2Observation struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` @@ -637,13 +905,20 @@ type LinuxWebAppAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + +type LinuxWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } type LinuxWebAppAuthSettingsV2AzureStaticWebAppV2Observation struct { @@ -657,8 +932,31 @@ type LinuxWebAppAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + +type LinuxWebAppAuthSettingsV2CustomOidcV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with this Custom OIDC. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The name which should be used for this Storage Account. + // The name of the Custom OIDC Authentication Provider. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The name of the claim that contains the users name. + // The name of the claim that contains the users name. + NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` + + // Specifies the endpoint used for OpenID Connect Discovery. For example https://example.com/.well-known/openid-configuration. + // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` + + // The list of the scopes that should be requested while authenticating. + // The list of the scopes that should be requested while authenticating. + Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } type LinuxWebAppAuthSettingsV2CustomOidcV2Observation struct { @@ -712,13 +1010,13 @@ type LinuxWebAppAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. @@ -727,8 +1025,8 @@ type LinuxWebAppAuthSettingsV2CustomOidcV2Parameters struct { // Specifies the endpoint used for OpenID Connect Discovery. For example https://example.com/.well-known/openid-configuration. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. - // +kubebuilder:validation:Required - OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint" tf:"openid_configuration_endpoint,omitempty"` + // +kubebuilder:validation:Optional + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. @@ -736,6 +1034,25 @@ type LinuxWebAppAuthSettingsV2CustomOidcV2Parameters struct { Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } +type LinuxWebAppAuthSettingsV2FacebookV2InitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // The version of the Facebook API to be used while logging in. + // The version of the Facebook API to be used while logging in. + GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of scopes to be requested as part of Facebook Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type LinuxWebAppAuthSettingsV2FacebookV2Observation struct { // The App ID of the Facebook app used for login. @@ -759,13 +1076,13 @@ type LinuxWebAppAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. - // +kubebuilder:validation:Required - AppSecretSettingName *string `json:"appSecretSettingName" tf:"app_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. @@ -778,6 +1095,21 @@ type LinuxWebAppAuthSettingsV2FacebookV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type LinuxWebAppAuthSettingsV2GithubV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type LinuxWebAppAuthSettingsV2GithubV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -797,13 +1129,13 @@ type LinuxWebAppAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. @@ -811,6 +1143,25 @@ type LinuxWebAppAuthSettingsV2GithubV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type LinuxWebAppAuthSettingsV2GoogleV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type LinuxWebAppAuthSettingsV2GoogleV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -839,13 +1190,13 @@ type LinuxWebAppAuthSettingsV2GoogleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. @@ -853,6 +1204,134 @@ type LinuxWebAppAuthSettingsV2GoogleV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type LinuxWebAppAuthSettingsV2InitParameters struct { + + // An active_directory_v2 block as defined below. + ActiveDirectoryV2 []LinuxWebAppAuthSettingsV2ActiveDirectoryV2InitParameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` + + // An apple_v2 block as defined below. + AppleV2 []LinuxWebAppAuthSettingsV2AppleV2InitParameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` + + // Should the AuthV2 Settings be enabled. Defaults to false. + // Should the AuthV2 Settings be enabled. Defaults to `false` + AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` + + // An azure_static_web_app_v2 block as defined below. + AzureStaticWebAppV2 []LinuxWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` + + // The path to the App Auth settings. + // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` + + // Zero or more custom_oidc_v2 blocks as defined below. + CustomOidcV2 []LinuxWebAppAuthSettingsV2CustomOidcV2InitParameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` + + // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. + // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. + // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` + + // A facebook_v2 block as defined below. + FacebookV2 []LinuxWebAppAuthSettingsV2FacebookV2InitParameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` + + // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. + // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` + + // The name of the custom header containing the host of the request. + // The name of the header containing the host of the request. + ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` + + // The name of the custom header containing the scheme of the request. + // The name of the header containing the scheme of the request. + ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` + + // A github_v2 block as defined below. + GithubV2 []LinuxWebAppAuthSettingsV2GithubV2InitParameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` + + // A google_v2 block as defined below. + GoogleV2 []LinuxWebAppAuthSettingsV2GoogleV2InitParameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` + + // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. + // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` + + // A login block as defined below. + Login []LinuxWebAppAuthSettingsV2LoginInitParameters `json:"login,omitempty" tf:"login,omitempty"` + + // A microsoft_v2 block as defined below. + MicrosoftV2 []LinuxWebAppAuthSettingsV2MicrosoftV2InitParameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` + + // Should the authentication flow be used for all requests. + // Should the authentication flow be used for all requests. + RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` + + // Should HTTPS be required on connections? Defaults to true. + // Should HTTPS be required on connections? Defaults to true. + RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` + + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // A twitter_v2 block as defined below. + TwitterV2 []LinuxWebAppAuthSettingsV2TwitterV2InitParameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` + + // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. + // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` +} + +type LinuxWebAppAuthSettingsV2LoginInitParameters struct { + + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. + // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` + + // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. + // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` + + // The endpoint to which logout requests should be made. + // The endpoint to which logout requests should be made. + LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` + + // The time after the request is made when the nonce should expire. Defaults to 00:05:00. + // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` + + // Should the fragments from the request be preserved after the login request is made. Defaults to false. + // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` + + // Should the Token Store configuration Enabled. Defaults to false + // Should the Token Store configuration Enabled. Defaults to `false` + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // The directory path in the App Filesystem in which the tokens will be stored. + // The directory path in the App Filesystem in which the tokens will be stored. + TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` + + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` + + // Should the nonce be validated while completing the login flow. Defaults to true. + // Should the nonce be validated while completing the login flow. Defaults to `true`. + ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` +} + type LinuxWebAppAuthSettingsV2LoginObservation struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. @@ -958,6 +1437,25 @@ type LinuxWebAppAuthSettingsV2LoginParameters struct { ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } +type LinuxWebAppAuthSettingsV2MicrosoftV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // The list of Login scopes that will be requested as part of Microsoft Account authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type LinuxWebAppAuthSettingsV2MicrosoftV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -986,13 +1484,13 @@ type LinuxWebAppAuthSettingsV2MicrosoftV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. @@ -1152,8 +1650,8 @@ type LinuxWebAppAuthSettingsV2Parameters struct { HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. - // +kubebuilder:validation:Required - Login []LinuxWebAppAuthSettingsV2LoginParameters `json:"login" tf:"login,omitempty"` + // +kubebuilder:validation:Optional + Login []LinuxWebAppAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. // +kubebuilder:validation:Optional @@ -1184,6 +1682,17 @@ type LinuxWebAppAuthSettingsV2Parameters struct { UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } +type LinuxWebAppAuthSettingsV2TwitterV2InitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type LinuxWebAppAuthSettingsV2TwitterV2Observation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -1199,13 +1708,27 @@ type LinuxWebAppAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerSecretSettingName *string `json:"consumerSecretSettingName" tf:"consumer_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + +type LinuxWebAppBackupInitParameters struct { + + // Should this backup job be enabled? Defaults to true. + // Should this backup job be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name which should be used for this Backup. + // The name which should be used for this Backup. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A schedule block as defined below. + Schedule []LinuxWebAppBackupScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` } type LinuxWebAppBackupObservation struct { @@ -1231,12 +1754,12 @@ type LinuxWebAppBackupParameters struct { // The name which should be used for this Backup. // The name which should be used for this Backup. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A schedule block as defined below. - // +kubebuilder:validation:Required - Schedule []LinuxWebAppBackupScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []LinuxWebAppBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. // The SAS URL to the container. @@ -1244,6 +1767,29 @@ type LinuxWebAppBackupParameters struct { StorageAccountURLSecretRef v1.SecretKeySelector `json:"storageAccountUrlSecretRef" tf:"-"` } +type LinuxWebAppBackupScheduleInitParameters struct { + + // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). + // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` + + // The unit of time for how often the backup should take place. Possible values include: Day, Hour + // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` + + // Should the service keep at least one backup, regardless of the age of backup? Defaults to false. + // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // After how many days backups should be deleted. + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` + + // When the schedule should start working in RFC-3339 format. + // When the schedule should start working in RFC-3339 format. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type LinuxWebAppBackupScheduleObservation struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). @@ -1274,13 +1820,13 @@ type LinuxWebAppBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). - // +kubebuilder:validation:Required - FrequencyInterval *float64 `json:"frequencyInterval" tf:"frequency_interval,omitempty"` + // +kubebuilder:validation:Optional + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day, Hour // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. - // +kubebuilder:validation:Required - FrequencyUnit *string `json:"frequencyUnit" tf:"frequency_unit,omitempty"` + // +kubebuilder:validation:Optional + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of the age of backup? Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. @@ -1298,6 +1844,17 @@ type LinuxWebAppBackupScheduleParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type LinuxWebAppConnectionStringInitParameters struct { + + // The name of the Connection String. + // The name which should be used for this Connection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of database. Possible values include: MySQL, SQLServer, SQLAzure, Custom, NotificationHub, ServiceBus, EventHub, APIHub, DocDb, RedisCache, and PostgreSQL. + // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxWebAppConnectionStringObservation struct { // The name of the Connection String. @@ -1313,13 +1870,13 @@ type LinuxWebAppConnectionStringParameters struct { // The name of the Connection String. // The name which should be used for this Connection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: MySQL, SQLServer, SQLAzure, Custom, NotificationHub, ServiceBus, EventHub, APIHub, DocDb, RedisCache, and PostgreSQL. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. // The connection string value. @@ -1327,6 +1884,15 @@ type LinuxWebAppConnectionStringParameters struct { ValueSecretRef v1.SecretKeySelector `json:"valueSecretRef" tf:"-"` } +type LinuxWebAppIdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Linux Web App. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Linux Web App. Possible values are SystemAssigned, UserAssigned, and SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxWebAppIdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this Linux Web App. @@ -1349,8 +1915,73 @@ type LinuxWebAppIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Web App. Possible values are SystemAssigned, UserAssigned, and SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LinuxWebAppInitParameters struct { + + // A map of key-value pairs of App Settings. + AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` + + // A auth_settings block as defined below. + AuthSettings []LinuxWebAppAuthSettingsInitParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` + + // An auth_settings_v2 block as defined below. + AuthSettingsV2 []LinuxWebAppAuthSettingsV2InitParameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` + + // A backup block as defined below. + Backup []LinuxWebAppBackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // Should Client Affinity be enabled? + ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty" tf:"client_affinity_enabled,omitempty"` + + // Should Client Certificates be enabled? + ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` + + // Paths to exclude when using client certificates, separated by ; + // Paths to exclude when using client certificates, separated by ; + ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` + + // The Client Certificate mode. Possible values are Required, Optional, and OptionalInteractiveUser. This property has no effect when client_certificate_enabled is false + ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` + + // One or more connection_string blocks as defined below. + ConnectionString []LinuxWebAppConnectionStringInitParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // Should the Linux Web App be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Should the Linux Web App require HTTPS connections. + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // An identity block as defined below. + Identity []LinuxWebAppIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity. + KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` + + // The Azure Region where the Linux Web App should exist. Changing this forces a new Linux Web App to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A logs block as defined below. + Logs []LogsInitParameters `json:"logs,omitempty" tf:"logs,omitempty"` + + // A site_config block as defined below. + SiteConfig []LinuxWebAppSiteConfigInitParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` + + // A sticky_settings block as defined below. + StickySettings []LinuxWebAppStickySettingsInitParameters `json:"stickySettings,omitempty" tf:"sticky_settings,omitempty"` + + // One or more storage_account blocks as defined below. + StorageAccount []LinuxWebAppStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // A mapping of tags which should be assigned to the Linux Web App. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The local path and filename of the Zip packaged application to deploy to this Linux Web App. + // The local path and filename of the Zip packaged application to deploy to this Linux Web App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App in `app_settings`. + ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } type LinuxWebAppObservation struct { @@ -1577,6 +2208,42 @@ type LinuxWebAppParameters struct { ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } +type LinuxWebAppSiteConfigApplicationStackInitParameters struct { + + // The Docker image reference, including repository host as needed. + DockerImage *string `json:"dockerImage,omitempty" tf:"docker_image,omitempty"` + + // The image Tag to use. e.g. latest. + DockerImageTag *string `json:"dockerImageTag,omitempty" tf:"docker_image_tag,omitempty"` + + // The version of .NET to use. Possible values include 3.1, 5.0, 6.0 and 7.0. + DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` + + // The version of Go to use. Possible values include 1.18, and 1.19. + GoVersion *string `json:"goVersion,omitempty" tf:"go_version,omitempty"` + + // The Java server type. Possible values include JAVA, TOMCAT, and JBOSSEAP. + JavaServer *string `json:"javaServer,omitempty" tf:"java_server,omitempty"` + + // The Version of the java_server to use. + JavaServerVersion *string `json:"javaServerVersion,omitempty" tf:"java_server_version,omitempty"` + + // The Version of Java to use. Possible values include 8, 11, and 17. + JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` + + // The version of Node to run. Possible values include 12-lts, 14-lts, 16-lts, and 18-lts. This property conflicts with java_version. + NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` + + // The version of PHP to run. Possible values are 8.0, 8.1 and 8.2. + PHPVersion *string `json:"phpVersion,omitempty" tf:"php_version,omitempty"` + + // The version of Python to run. Possible values include 3.7, 3.8, 3.9, 3.10 and 3.11. + PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` + + // Te version of Ruby to run. Possible values include 2.6 and 2.7. + RubyVersion *string `json:"rubyVersion,omitempty" tf:"ruby_version,omitempty"` +} + type LinuxWebAppSiteConfigApplicationStackObservation struct { // The Docker image reference, including repository host as needed. @@ -1660,6 +2327,17 @@ type LinuxWebAppSiteConfigApplicationStackParameters struct { RubyVersion *string `json:"rubyVersion,omitempty" tf:"ruby_version,omitempty"` } +type LinuxWebAppSiteConfigCorsInitParameters struct { + + // Specifies a list of origins that should be allowed to make cross-origin calls. + // Specifies a list of origins that should be allowed to make cross-origin calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // Whether CORS requests with credentials are allowed. Defaults to false + // Are credentials allowed in CORS requests? Defaults to `false`. + SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` +} + type LinuxWebAppSiteConfigCorsObservation struct { // Specifies a list of origins that should be allowed to make cross-origin calls. @@ -1684,6 +2362,21 @@ type LinuxWebAppSiteConfigCorsParameters struct { SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } +type LinuxWebAppSiteConfigIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type LinuxWebAppSiteConfigIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -1713,9 +2406,35 @@ type LinuxWebAppSiteConfigIPRestrictionHeadersParameters struct { // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` - // Specifies a list of Hosts for which matching should be applied. - // +kubebuilder:validation:Optional - XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` + // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + +type LinuxWebAppSiteConfigIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []LinuxWebAppSiteConfigIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` } type LinuxWebAppSiteConfigIPRestrictionObservation struct { @@ -1795,6 +2514,98 @@ type LinuxWebAppSiteConfigIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type LinuxWebAppSiteConfigInitParameters struct { + + // The URL to the API Definition for this Linux Web App. + APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` + + // The API Management API ID this Linux Web App is associated with. + APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` + + // If this Linux Web App is Always On enabled. Defaults to true. + AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` + + // The App command line to launch. + AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` + + // A application_stack block as defined above. + ApplicationStack []LinuxWebAppSiteConfigApplicationStackInitParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` + + // Should Auto heal rules be enabled? Required with auto_heal_setting. + AutoHealEnabled *bool `json:"autoHealEnabled,omitempty" tf:"auto_heal_enabled,omitempty"` + + // A auto_heal_setting block as defined above. Required with auto_heal. + AutoHealSetting []AutoHealSettingInitParameters `json:"autoHealSetting,omitempty" tf:"auto_heal_setting,omitempty"` + + // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` + + // Should connections for Azure Container Registry use Managed Identity. + ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` + + // A cors block as defined above. + Cors []LinuxWebAppSiteConfigCorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // Specifies a list of Default Documents for the Linux Web App. + DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` + + // The State of FTP / FTPS service. Possible values include AllAllowed, FtpsOnly, and Disabled. + FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` + + // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. + // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` + + // The path to the Health Check. + HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` + + // Should the HTTP2 be enabled? + Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` + + // One or more ip_restriction blocks as defined above. + IPRestriction []LinuxWebAppSiteConfigIPRestrictionInitParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` + + // The Site load balancing. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` + + // Use Local MySQL. Defaults to false. + LocalMySQLEnabled *bool `json:"localMysqlEnabled,omitempty" tf:"local_mysql_enabled,omitempty"` + + // Managed pipeline mode. Possible values include Integrated, and Classic. + ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` + + // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // Should Remote Debugging be enabled? Defaults to false. + RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` + + // The Remote Debugging Version. Possible values include VS2017 and VS2019 + RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` + + // One or more scm_ip_restriction blocks as defined above. + ScmIPRestriction []LinuxWebAppSiteConfigScmIPRestrictionInitParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` + + // The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` + + // Should the Linux Web App ip_restriction configuration be used for the SCM also. + ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` + + // Should the Linux Web App use a 32-bit worker? Defaults to true. + Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` + + // Should all outbound traffic have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. + // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` + + // Should Web Sockets be enabled? Defaults to false. + WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` + + // The number of Workers for this Linux App Service. + WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` +} + type LinuxWebAppSiteConfigObservation struct { // The URL to the API Definition for this Linux Web App. @@ -2015,6 +2826,21 @@ type LinuxWebAppSiteConfigParameters struct { WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } +type LinuxWebAppSiteConfigScmIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type LinuxWebAppSiteConfigScmIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -2049,6 +2875,32 @@ type LinuxWebAppSiteConfigScmIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type LinuxWebAppSiteConfigScmIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []LinuxWebAppSiteConfigScmIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type LinuxWebAppSiteConfigScmIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -2126,6 +2978,9 @@ type LinuxWebAppSiteConfigScmIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type LinuxWebAppSiteCredentialInitParameters struct { +} + type LinuxWebAppSiteCredentialObservation struct { // The Site Credentials Username used for publishing. @@ -2138,6 +2993,15 @@ type LinuxWebAppSiteCredentialObservation struct { type LinuxWebAppSiteCredentialParameters struct { } +type LinuxWebAppStickySettingsInitParameters struct { + + // A list of app_setting names that the Linux Web App will not swap between Slots when a swap operation is triggered. + AppSettingNames []*string `json:"appSettingNames,omitempty" tf:"app_setting_names,omitempty"` + + // A list of connection_string names that the Linux Web App will not swap between Slots when a swap operation is triggered. + ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` +} + type LinuxWebAppStickySettingsObservation struct { // A list of app_setting names that the Linux Web App will not swap between Slots when a swap operation is triggered. @@ -2158,6 +3022,24 @@ type LinuxWebAppStickySettingsParameters struct { ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` } +type LinuxWebAppStorageAccountInitParameters struct { + + // The Name of the Storage Account. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // The path at which to mount the storage share. + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` + + // The name which should be used for this Storage Account. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Name of the File Share or Container Name for Blob storage. + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` + + // The Azure Storage Type. Possible values include AzureFiles and AzureBlob + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxWebAppStorageAccountObservation struct { // The Name of the Storage Account. @@ -2183,24 +3065,39 @@ type LinuxWebAppStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. - // +kubebuilder:validation:Required - ShareName *string `json:"shareName" tf:"share_name,omitempty"` + // +kubebuilder:validation:Optional + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LogsInitParameters struct { + + // A application_logs block as defined above. + ApplicationLogs []ApplicationLogsInitParameters `json:"applicationLogs,omitempty" tf:"application_logs,omitempty"` + + // Should detailed error messages be enabled? + DetailedErrorMessages *bool `json:"detailedErrorMessages,omitempty" tf:"detailed_error_messages,omitempty"` + + // Should the failed request tracing be enabled? + FailedRequestTracing *bool `json:"failedRequestTracing,omitempty" tf:"failed_request_tracing,omitempty"` + + // An http_logs block as defined above. + HTTPLogs []HTTPLogsInitParameters `json:"httpLogs,omitempty" tf:"http_logs,omitempty"` } type LogsObservation struct { @@ -2237,6 +3134,15 @@ type LogsParameters struct { HTTPLogs []HTTPLogsParameters `json:"httpLogs,omitempty" tf:"http_logs,omitempty"` } +type RequestsInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` +} + type RequestsObservation struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. @@ -2249,12 +3155,27 @@ type RequestsObservation struct { type RequestsParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` +} + +type SlowRequestInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` + + // The path to which this rule status code applies. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. + TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` } type SlowRequestObservation struct { @@ -2275,20 +3196,41 @@ type SlowRequestObservation struct { type SlowRequestParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. - // +kubebuilder:validation:Required - TimeTaken *string `json:"timeTaken" tf:"time_taken,omitempty"` + // +kubebuilder:validation:Optional + TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` +} + +type StatusCodeInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` + + // The path to which this rule status code applies. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 + StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` + + // The Request Sub Status of the Status Code. + SubStatus *float64 `json:"subStatus,omitempty" tf:"sub_status,omitempty"` + + // The Win32 Status Code of the Request. + Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } type StatusCodeObservation struct { @@ -2315,20 +3257,20 @@ type StatusCodeObservation struct { type StatusCodeParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 - // +kubebuilder:validation:Required - StatusCodeRange *string `json:"statusCodeRange" tf:"status_code_range,omitempty"` + // +kubebuilder:validation:Optional + StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` // The Request Sub Status of the Status Code. // +kubebuilder:validation:Optional @@ -2339,6 +3281,18 @@ type StatusCodeParameters struct { Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } +type TriggerInitParameters struct { + + // A requests block as defined above. + Requests []RequestsInitParameters `json:"requests,omitempty" tf:"requests,omitempty"` + + // One or more slow_request blocks as defined above. + SlowRequest []SlowRequestInitParameters `json:"slowRequest,omitempty" tf:"slow_request,omitempty"` + + // One or more status_code blocks as defined above. + StatusCode []StatusCodeInitParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` +} + type TriggerObservation struct { // A requests block as defined above. @@ -2370,6 +3324,18 @@ type TriggerParameters struct { type LinuxWebAppSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinuxWebAppParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinuxWebAppInitParameters `json:"initProvider,omitempty"` } // LinuxWebAppStatus defines the observed state of LinuxWebApp. @@ -2390,8 +3356,8 @@ type LinuxWebAppStatus struct { type LinuxWebApp struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig)",message="siteConfig is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.siteConfig) || has(self.initProvider.siteConfig)",message="siteConfig is a required parameter" Spec LinuxWebAppSpec `json:"spec"` Status LinuxWebAppStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_linuxwebappslot_types.go b/apis/web/v1beta1/zz_linuxwebappslot_types.go index 78474e3de..3dec1f8bb 100755 --- a/apis/web/v1beta1/zz_linuxwebappslot_types.go +++ b/apis/web/v1beta1/zz_linuxwebappslot_types.go @@ -13,6 +13,18 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ApplicationLogsAzureBlobStorageInitParameters struct { + + // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs + Level *string `json:"level,omitempty" tf:"level,omitempty"` + + // The retention period in days. A values of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // SAS url to an Azure blob container with read/write/list/delete permissions. + SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` +} + type ApplicationLogsAzureBlobStorageObservation struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs @@ -28,16 +40,25 @@ type ApplicationLogsAzureBlobStorageObservation struct { type ApplicationLogsAzureBlobStorageParameters struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs - // +kubebuilder:validation:Required - Level *string `json:"level" tf:"level,omitempty"` + // +kubebuilder:validation:Optional + Level *string `json:"level,omitempty" tf:"level,omitempty"` // The retention period in days. A values of 0 means no retention. - // +kubebuilder:validation:Required - RetentionInDays *float64 `json:"retentionInDays" tf:"retention_in_days,omitempty"` + // +kubebuilder:validation:Optional + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. - // +kubebuilder:validation:Required - SASURL *string `json:"sasUrl" tf:"sas_url,omitempty"` + // +kubebuilder:validation:Optional + SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` +} + +type AutoHealSettingActionInitParameters struct { + + // Predefined action to be taken to an Auto Heal trigger. Possible values include: Recycle. + ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` + + // The minimum amount of time in hh:mm:ss the Linux Web App must have been running before the defined action will be run in the event of a trigger. + MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` } type AutoHealSettingActionObservation struct { @@ -52,14 +73,26 @@ type AutoHealSettingActionObservation struct { type AutoHealSettingActionParameters struct { // Predefined action to be taken to an Auto Heal trigger. Possible values include: Recycle. - // +kubebuilder:validation:Required - ActionType *string `json:"actionType" tf:"action_type,omitempty"` + // +kubebuilder:validation:Optional + ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` // The minimum amount of time in hh:mm:ss the Linux Web App must have been running before the defined action will be run in the event of a trigger. // +kubebuilder:validation:Optional MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` } +type AutoHealSettingTriggerInitParameters struct { + + // A requests block as defined above. + Requests []TriggerRequestsInitParameters `json:"requests,omitempty" tf:"requests,omitempty"` + + // One or more slow_request blocks as defined above. + SlowRequest []TriggerSlowRequestInitParameters `json:"slowRequest,omitempty" tf:"slow_request,omitempty"` + + // One or more status_code blocks as defined above. + StatusCode []TriggerStatusCodeInitParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` +} + type AutoHealSettingTriggerObservation struct { // A requests block as defined above. @@ -87,6 +120,15 @@ type AutoHealSettingTriggerParameters struct { StatusCode []TriggerStatusCodeParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` } +type HTTPLogsFileSystemInitParameters struct { + + // The retention period in days. A values of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // The maximum size in megabytes that log files can use. + RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` +} + type HTTPLogsFileSystemObservation struct { // The retention period in days. A values of 0 means no retention. @@ -99,12 +141,27 @@ type HTTPLogsFileSystemObservation struct { type HTTPLogsFileSystemParameters struct { // The retention period in days. A values of 0 means no retention. - // +kubebuilder:validation:Required - RetentionInDays *float64 `json:"retentionInDays" tf:"retention_in_days,omitempty"` + // +kubebuilder:validation:Optional + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // The maximum size in megabytes that log files can use. - // +kubebuilder:validation:Required - RetentionInMb *float64 `json:"retentionInMb" tf:"retention_in_mb,omitempty"` + // +kubebuilder:validation:Optional + RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` +} + +type LinuxWebAppSlotAuthSettingsActiveDirectoryInitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } type LinuxWebAppSlotAuthSettingsActiveDirectoryObservation struct { @@ -131,8 +188,8 @@ type LinuxWebAppSlotAuthSettingsActiveDirectoryParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret for the Client ID. Cannot be used with `client_secret_setting_name`. @@ -145,6 +202,21 @@ type LinuxWebAppSlotAuthSettingsActiveDirectoryParameters struct { ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } +type LinuxWebAppSlotAuthSettingsFacebookInitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxWebAppSlotAuthSettingsFacebookObservation struct { // The App ID of the Facebook app used for login. @@ -164,8 +236,8 @@ type LinuxWebAppSlotAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. // The App Secret of the Facebook app used for Facebook Login. Cannot be specified with `app_secret_setting_name`. @@ -183,6 +255,21 @@ type LinuxWebAppSlotAuthSettingsFacebookParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type LinuxWebAppSlotAuthSettingsGithubInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxWebAppSlotAuthSettingsGithubObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -202,8 +289,8 @@ type LinuxWebAppSlotAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret of the GitHub app used for GitHub Login. Cannot be specified with `client_secret_setting_name`. @@ -221,6 +308,21 @@ type LinuxWebAppSlotAuthSettingsGithubParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type LinuxWebAppSlotAuthSettingsGoogleInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxWebAppSlotAuthSettingsGoogleObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -240,8 +342,8 @@ type LinuxWebAppSlotAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. @@ -259,6 +361,78 @@ type LinuxWebAppSlotAuthSettingsGoogleParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type LinuxWebAppSlotAuthSettingsInitParameters struct { + + // An active_directory block as defined above. + ActiveDirectory []LinuxWebAppSlotAuthSettingsActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` + + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Linux Web App. + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The default authentication provider to use when multiple providers are configured. Possible values include: BuiltInAuthenticationProviderAzureActiveDirectory, BuiltInAuthenticationProviderFacebook, BuiltInAuthenticationProviderGoogle, BuiltInAuthenticationProviderMicrosoftAccount, BuiltInAuthenticationProviderTwitter, BuiltInAuthenticationProviderGithub + // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // Should the Authentication / Authorization feature be enabled for the Linux Web App? + // Should the Authentication / Authorization feature be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A facebook block as defined below. + Facebook []LinuxWebAppSlotAuthSettingsFacebookInitParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` + + // A github block as defined below. + Github []LinuxWebAppSlotAuthSettingsGithubInitParameters `json:"github,omitempty" tf:"github,omitempty"` + + // A google block as defined below. + Google []LinuxWebAppSlotAuthSettingsGoogleInitParameters `json:"google,omitempty" tf:"google,omitempty"` + + // The OpenID Connect Issuer URI that represents the entity that issues access tokens for this Linux Web App. + // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // A microsoft block as defined below. + Microsoft []LinuxWebAppSlotAuthSettingsMicrosoftInitParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` + + // The RuntimeVersion of the Authentication / Authorization feature in use for the Linux Web App. + // The RuntimeVersion of the Authentication / Authorization feature in use. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` + + // Should the Linux Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. + // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // A twitter block as defined below. + Twitter []LinuxWebAppSlotAuthSettingsTwitterInitParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` + + // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. + // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` +} + +type LinuxWebAppSlotAuthSettingsMicrosoftInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type LinuxWebAppSlotAuthSettingsMicrosoftObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -278,8 +452,8 @@ type LinuxWebAppSlotAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret_setting_name`. @@ -377,8 +551,8 @@ type LinuxWebAppSlotAuthSettingsParameters struct { // Should the Authentication / Authorization feature be enabled for the Linux Web App? // Should the Authentication / Authorization feature be enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. // +kubebuilder:validation:Optional @@ -426,6 +600,17 @@ type LinuxWebAppSlotAuthSettingsParameters struct { UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } +type LinuxWebAppSlotAuthSettingsTwitterInitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type LinuxWebAppSlotAuthSettingsTwitterObservation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -441,8 +626,8 @@ type LinuxWebAppSlotAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret_setting_name`. @@ -455,7 +640,7 @@ type LinuxWebAppSlotAuthSettingsTwitterParameters struct { ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } -type LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2Observation struct { +type LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. @@ -506,94 +691,163 @@ type LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2Observation struct { WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } -type LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { +type LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2Observation struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. - // +kubebuilder:validation:Optional AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. - // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The list of allowed Group Names for the Default Authorisation Policy. // The list of allowed Group Names for the Default Authorisation Policy. - // +kubebuilder:validation:Optional AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` // The list of allowed Identities for the Default Authorisation Policy. // The list of allowed Identities for the Default Authorisation Policy. - // +kubebuilder:validation:Optional AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. - // +kubebuilder:validation:Optional ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. - // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // A list of Allowed Client Applications in the JWT Claim. // A list of Allowed Client Applications in the JWT Claim. - // +kubebuilder:validation:Optional JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` // A list of Allowed Groups in the JWT Claim. // A list of Allowed Groups in the JWT Claim. - // +kubebuilder:validation:Optional JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. - // +kubebuilder:validation:Optional LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. - // +kubebuilder:validation:Required - TenantAuthEndpoint *string `json:"tenantAuthEndpoint" tf:"tenant_auth_endpoint,omitempty"` + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` - // +kubebuilder:validation:Optional WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } -type LinuxWebAppSlotAuthSettingsV2AppleV2Observation struct { +type LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { - // The OAuth 2.0 client ID that was created for the app used for authentication. - // The OpenID Connect Client ID for the Apple web application. - ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + // The list of allowed Applications for the Default Authorisation Policy. + // The list of allowed Applications for the Default Authorisation Policy. + // +kubebuilder:validation:Optional + AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` - // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // The app setting name that contains the `client_secret` value used for Apple Login. - ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` - // The list of Login scopes that should be requested as part of Microsoft Account authentication. - LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` -} + // The list of allowed Group Names for the Default Authorisation Policy. + // The list of allowed Group Names for the Default Authorisation Policy. + // +kubebuilder:validation:Optional + AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` -type LinuxWebAppSlotAuthSettingsV2AppleV2Parameters struct { + // The list of allowed Identities for the Default Authorisation Policy. + // The list of allowed Identities for the Default Authorisation Policy. + // +kubebuilder:validation:Optional + AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. - // The OpenID Connect Client ID for the Apple web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` - // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // The app setting name that contains the `client_secret` value used for Apple Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // The thumbprint of the certificate used for signing purposes. + // The thumbprint of the certificate used for signing purposes. + // +kubebuilder:validation:Optional + ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // A list of Allowed Client Applications in the JWT Claim. + // A list of Allowed Client Applications in the JWT Claim. + // +kubebuilder:validation:Optional + JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` + + // A list of Allowed Groups in the JWT Claim. + // A list of Allowed Groups in the JWT Claim. + // +kubebuilder:validation:Optional + JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` + + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // +kubebuilder:validation:Optional + LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` + + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + // +kubebuilder:validation:Optional + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` + + // Should the www-authenticate provider should be omitted from the request? Defaults to false + // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + // +kubebuilder:validation:Optional + WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` +} + +type LinuxWebAppSlotAuthSettingsV2AppleV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + +type LinuxWebAppSlotAuthSettingsV2AppleV2Observation struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + +type LinuxWebAppSlotAuthSettingsV2AppleV2Parameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + +type LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } type LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2Observation struct { @@ -607,8 +861,31 @@ type LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + +type LinuxWebAppSlotAuthSettingsV2CustomOidcV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with this Custom OIDC. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The name which should be used for this Storage Account. + // The name of the Custom OIDC Authentication Provider. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The name of the claim that contains the users name. + // The name of the claim that contains the users name. + NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` + + // The app setting name that contains the client_secret value used for the Custom OIDC Login. + // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` + + // The list of the scopes that should be requested while authenticating. + // The list of the scopes that should be requested while authenticating. + Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } type LinuxWebAppSlotAuthSettingsV2CustomOidcV2Observation struct { @@ -662,13 +939,13 @@ type LinuxWebAppSlotAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. @@ -677,8 +954,8 @@ type LinuxWebAppSlotAuthSettingsV2CustomOidcV2Parameters struct { // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. - // +kubebuilder:validation:Required - OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint" tf:"openid_configuration_endpoint,omitempty"` + // +kubebuilder:validation:Optional + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. @@ -686,6 +963,25 @@ type LinuxWebAppSlotAuthSettingsV2CustomOidcV2Parameters struct { Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } +type LinuxWebAppSlotAuthSettingsV2FacebookV2InitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // The version of the Facebook API to be used while logging in. + // The version of the Facebook API to be used while logging in. + GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of scopes to be requested as part of Facebook Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type LinuxWebAppSlotAuthSettingsV2FacebookV2Observation struct { // The App ID of the Facebook app used for login. @@ -709,13 +1005,13 @@ type LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. - // +kubebuilder:validation:Required - AppSecretSettingName *string `json:"appSecretSettingName" tf:"app_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. @@ -728,6 +1024,21 @@ type LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type LinuxWebAppSlotAuthSettingsV2GithubV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type LinuxWebAppSlotAuthSettingsV2GithubV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -747,13 +1058,13 @@ type LinuxWebAppSlotAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. @@ -761,6 +1072,25 @@ type LinuxWebAppSlotAuthSettingsV2GithubV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type LinuxWebAppSlotAuthSettingsV2GoogleV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type LinuxWebAppSlotAuthSettingsV2GoogleV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -789,13 +1119,13 @@ type LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. @@ -803,6 +1133,134 @@ type LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type LinuxWebAppSlotAuthSettingsV2InitParameters struct { + + // An active_directory_v2 block as defined below. + ActiveDirectoryV2 []LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` + + // An apple_v2 block as defined below. + AppleV2 []LinuxWebAppSlotAuthSettingsV2AppleV2InitParameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` + + // Should the AuthV2 Settings be enabled. Defaults to false. + // Should the AuthV2 Settings be enabled. Defaults to `false` + AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` + + // An azure_static_web_app_v2 block as defined below. + AzureStaticWebAppV2 []LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` + + // The path to the App Auth settings. + // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` + + // Zero or more custom_oidc_v2 blocks as defined below. + CustomOidcV2 []LinuxWebAppSlotAuthSettingsV2CustomOidcV2InitParameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` + + // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. + // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. + // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` + + // A facebook_v2 block as defined below. + FacebookV2 []LinuxWebAppSlotAuthSettingsV2FacebookV2InitParameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` + + // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. + // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` + + // The name of the custom header containing the host of the request. + // The name of the header containing the host of the request. + ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` + + // The name of the custom header containing the scheme of the request. + // The name of the header containing the scheme of the request. + ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` + + // A github_v2 block as defined below. + GithubV2 []LinuxWebAppSlotAuthSettingsV2GithubV2InitParameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` + + // A google_v2 block as defined below. + GoogleV2 []LinuxWebAppSlotAuthSettingsV2GoogleV2InitParameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` + + // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. + // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` + + // A login block as defined below. + Login []LinuxWebAppSlotAuthSettingsV2LoginInitParameters `json:"login,omitempty" tf:"login,omitempty"` + + // A microsoft_v2 block as defined below. + MicrosoftV2 []LinuxWebAppSlotAuthSettingsV2MicrosoftV2InitParameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` + + // Should the authentication flow be used for all requests. + // Should the authentication flow be used for all requests. + RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` + + // Should HTTPS be required on connections? Defaults to true. + // Should HTTPS be required on connections? Defaults to true. + RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` + + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // A twitter_v2 block as defined below. + TwitterV2 []LinuxWebAppSlotAuthSettingsV2TwitterV2InitParameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` + + // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. + // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` +} + +type LinuxWebAppSlotAuthSettingsV2LoginInitParameters struct { + + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. + // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` + + // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. + // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` + + // The endpoint to which logout requests should be made. + // The endpoint to which logout requests should be made. + LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` + + // The time after the request is made when the nonce should expire. Defaults to 00:05:00. + // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` + + // Should the fragments from the request be preserved after the login request is made. Defaults to false. + // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` + + // Should the Token Store configuration Enabled. Defaults to false + // Should the Token Store configuration Enabled. Defaults to `false` + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // The directory path in the App Filesystem in which the tokens will be stored. + // The directory path in the App Filesystem in which the tokens will be stored. + TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` + + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` + + // Should the nonce be validated while completing the login flow. Defaults to true. + // Should the nonce be validated while completing the login flow. Defaults to `true`. + ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` +} + type LinuxWebAppSlotAuthSettingsV2LoginObservation struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. @@ -897,15 +1355,34 @@ type LinuxWebAppSlotAuthSettingsV2LoginParameters struct { // +kubebuilder:validation:Optional TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` - // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. - // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. - // +kubebuilder:validation:Optional - TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // +kubebuilder:validation:Optional + TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` + + // Should the nonce be validated while completing the login flow. Defaults to true. + // Should the nonce be validated while completing the login flow. Defaults to `true`. + // +kubebuilder:validation:Optional + ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` +} + +type LinuxWebAppSlotAuthSettingsV2MicrosoftV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` - // Should the nonce be validated while completing the login flow. Defaults to true. - // Should the nonce be validated while completing the login flow. Defaults to `true`. - // +kubebuilder:validation:Optional - ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // The list of Login scopes that will be requested as part of Microsoft Account authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } type LinuxWebAppSlotAuthSettingsV2MicrosoftV2Observation struct { @@ -936,13 +1413,13 @@ type LinuxWebAppSlotAuthSettingsV2MicrosoftV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. @@ -1102,8 +1579,8 @@ type LinuxWebAppSlotAuthSettingsV2Parameters struct { HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. - // +kubebuilder:validation:Required - Login []LinuxWebAppSlotAuthSettingsV2LoginParameters `json:"login" tf:"login,omitempty"` + // +kubebuilder:validation:Optional + Login []LinuxWebAppSlotAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. // +kubebuilder:validation:Optional @@ -1134,6 +1611,17 @@ type LinuxWebAppSlotAuthSettingsV2Parameters struct { UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } +type LinuxWebAppSlotAuthSettingsV2TwitterV2InitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type LinuxWebAppSlotAuthSettingsV2TwitterV2Observation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -1149,13 +1637,27 @@ type LinuxWebAppSlotAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerSecretSettingName *string `json:"consumerSecretSettingName" tf:"consumer_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + +type LinuxWebAppSlotBackupInitParameters struct { + + // Should this backup job be enabled? Defaults to true. + // Should this backup job be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name which should be used for this Backup. + // The name which should be used for this Backup. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // An schedule block as defined below. + Schedule []LinuxWebAppSlotBackupScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` } type LinuxWebAppSlotBackupObservation struct { @@ -1181,12 +1683,12 @@ type LinuxWebAppSlotBackupParameters struct { // The name which should be used for this Backup. // The name which should be used for this Backup. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // An schedule block as defined below. - // +kubebuilder:validation:Required - Schedule []LinuxWebAppSlotBackupScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []LinuxWebAppSlotBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. // The SAS URL to the container. @@ -1194,6 +1696,29 @@ type LinuxWebAppSlotBackupParameters struct { StorageAccountURLSecretRef v1.SecretKeySelector `json:"storageAccountUrlSecretRef" tf:"-"` } +type LinuxWebAppSlotBackupScheduleInitParameters struct { + + // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). + // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` + + // The unit of time for how often the backup should take place. Possible values include: Day, Hour + // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` + + // Should the service keep at least one backup, regardless of the age of backup? Defaults to false. + // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // After how many days backups should be deleted. + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` + + // When the schedule should start working in RFC-3339 format. + // When the schedule should start working in RFC-3339 format. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type LinuxWebAppSlotBackupScheduleObservation struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). @@ -1224,13 +1749,13 @@ type LinuxWebAppSlotBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). - // +kubebuilder:validation:Required - FrequencyInterval *float64 `json:"frequencyInterval" tf:"frequency_interval,omitempty"` + // +kubebuilder:validation:Optional + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day, Hour // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. - // +kubebuilder:validation:Required - FrequencyUnit *string `json:"frequencyUnit" tf:"frequency_unit,omitempty"` + // +kubebuilder:validation:Optional + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of the age of backup? Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. @@ -1248,6 +1773,17 @@ type LinuxWebAppSlotBackupScheduleParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type LinuxWebAppSlotConnectionStringInitParameters struct { + + // The name of the Connection String. + // The name which should be used for this Connection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of database. Possible values include APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxWebAppSlotConnectionStringObservation struct { // The name of the Connection String. @@ -1263,13 +1799,13 @@ type LinuxWebAppSlotConnectionStringParameters struct { // The name of the Connection String. // The name which should be used for this Connection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. // The connection string value. @@ -1277,6 +1813,15 @@ type LinuxWebAppSlotConnectionStringParameters struct { ValueSecretRef v1.SecretKeySelector `json:"valueSecretRef" tf:"-"` } +type LinuxWebAppSlotIdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Linux Web App Slot. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Linux Web App Slot. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxWebAppSlotIdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this Linux Web App Slot. @@ -1299,8 +1844,88 @@ type LinuxWebAppSlotIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Web App Slot. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LinuxWebAppSlotInitParameters struct { + + // A map of key-value pairs of App Settings. + AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` + + // An auth_settings block as defined below. + AuthSettings []LinuxWebAppSlotAuthSettingsInitParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` + + // An auth_settings_v2 block as defined below. + AuthSettingsV2 []LinuxWebAppSlotAuthSettingsV2InitParameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` + + // A backup block as defined below. + Backup []LinuxWebAppSlotBackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // Should Client Affinity be enabled? + ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty" tf:"client_affinity_enabled,omitempty"` + + // Should Client Certificates be enabled? + ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` + + // Paths to exclude when using client certificates, separated by ; + // Paths to exclude when using client certificates, separated by ; + ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` + + // The Client Certificate mode. Possible values are Required, Optional, and OptionalInteractiveUser. This property has no effect when client_cert_enabled is false + ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` + + // One or more connection_string blocks as defined below. + ConnectionString []LinuxWebAppSlotConnectionStringInitParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // Should the Linux Web App be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Should the Linux Web App require HTTPS connections. + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // An identity block as defined below. + Identity []LinuxWebAppSlotIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity. + KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` + + // A logs block as defined below. + Logs []LinuxWebAppSlotLogsInitParameters `json:"logs,omitempty" tf:"logs,omitempty"` + + // The name which should be used for this Linux Web App Slot. Changing this forces a new Linux Web App Slot to be created. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The ID of the Service Plan in which to run this slot. If not specified the same Service Plan as the Linux Web App will be used. + ServicePlanID *string `json:"servicePlanId,omitempty" tf:"service_plan_id,omitempty"` + + // A site_config block as defined below. + SiteConfig []LinuxWebAppSlotSiteConfigInitParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` + + // One or more storage_account blocks as defined below. + StorageAccount []LinuxWebAppSlotStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // A mapping of tags that should be assigned to the Linux Web App. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The local path and filename of the Zip packaged application to deploy to this Linux Web App. + // The local path and filename of the Zip packaged application to deploy to this Windows Web App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` on the App in `app_settings`. + ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` +} + +type LinuxWebAppSlotLogsInitParameters struct { + + // A application_logs block as defined above. + ApplicationLogs []LogsApplicationLogsInitParameters `json:"applicationLogs,omitempty" tf:"application_logs,omitempty"` + + // Should detailed error messages be enabled? + DetailedErrorMessages *bool `json:"detailedErrorMessages,omitempty" tf:"detailed_error_messages,omitempty"` + + // Should the failed request tracing be enabled? + FailedRequestTracing *bool `json:"failedRequestTracing,omitempty" tf:"failed_request_tracing,omitempty"` + + // An http_logs block as defined above. + HTTPLogs []LogsHTTPLogsInitParameters `json:"httpLogs,omitempty" tf:"http_logs,omitempty"` } type LinuxWebAppSlotLogsObservation struct { @@ -1548,6 +2173,42 @@ type LinuxWebAppSlotParameters struct { ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } +type LinuxWebAppSlotSiteConfigApplicationStackInitParameters struct { + + // The Docker image reference, including repository host as needed. + DockerImage *string `json:"dockerImage,omitempty" tf:"docker_image,omitempty"` + + // The image Tag to use. e.g. latest. + DockerImageTag *string `json:"dockerImageTag,omitempty" tf:"docker_image_tag,omitempty"` + + // The version of .NET to use. Possible values include 3.1, 5.0, 6.0 and 7.0. + DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` + + // The version of Go to use. Possible values include 1.18, and 1.19. + GoVersion *string `json:"goVersion,omitempty" tf:"go_version,omitempty"` + + // The Java server type. Possible values include JAVA, TOMCAT, and JBOSSEAP. + JavaServer *string `json:"javaServer,omitempty" tf:"java_server,omitempty"` + + // The Version of the java_server to use. + JavaServerVersion *string `json:"javaServerVersion,omitempty" tf:"java_server_version,omitempty"` + + // The Version of Java to use. Possible values include 8, 11, and 17. + JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` + + // The version of Node to run. Possible values include 12-lts, 14-lts, 16-lts, and 18-lts. This property conflicts with java_version. + NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` + + // The version of PHP to run. Possible values are 8.0, 8.1 and 8.2. + PHPVersion *string `json:"phpVersion,omitempty" tf:"php_version,omitempty"` + + // The version of Python to run. Possible values include 3.7, 3.8, 3.9, 3.10 and 3.11. + PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` + + // Te version of Ruby to run. Possible values include 2.6 and 2.7. + RubyVersion *string `json:"rubyVersion,omitempty" tf:"ruby_version,omitempty"` +} + type LinuxWebAppSlotSiteConfigApplicationStackObservation struct { // The Docker image reference, including repository host as needed. @@ -1631,6 +2292,17 @@ type LinuxWebAppSlotSiteConfigApplicationStackParameters struct { RubyVersion *string `json:"rubyVersion,omitempty" tf:"ruby_version,omitempty"` } +type LinuxWebAppSlotSiteConfigCorsInitParameters struct { + + // Specifies a list of origins that should be allowed to make cross-origin calls. + // Specifies a list of origins that should be allowed to make cross-origin calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // Whether CORS requests with credentials are allowed. Defaults to false + // Are credentials allowed in CORS requests? Defaults to `false`. + SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` +} + type LinuxWebAppSlotSiteConfigCorsObservation struct { // Specifies a list of origins that should be allowed to make cross-origin calls. @@ -1655,6 +2327,21 @@ type LinuxWebAppSlotSiteConfigCorsParameters struct { SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } +type LinuxWebAppSlotSiteConfigIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type LinuxWebAppSlotSiteConfigIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -1689,6 +2376,32 @@ type LinuxWebAppSlotSiteConfigIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type LinuxWebAppSlotSiteConfigIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []LinuxWebAppSlotSiteConfigIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type LinuxWebAppSlotSiteConfigIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -1766,6 +2479,101 @@ type LinuxWebAppSlotSiteConfigIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type LinuxWebAppSlotSiteConfigInitParameters struct { + + // The URL to the API Definition for this Linux Web App Slot. + APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` + + // The API Management API ID this Linux Web App Slot is associated with. + APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` + + // If this Linux Web App is Always On enabled. Defaults to true. + AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` + + // The App command line to launch. + AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` + + // A application_stack block as defined above. + ApplicationStack []LinuxWebAppSlotSiteConfigApplicationStackInitParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` + + // Should Auto heal rules be enabled? Required with auto_heal_setting. + AutoHealEnabled *bool `json:"autoHealEnabled,omitempty" tf:"auto_heal_enabled,omitempty"` + + // A auto_heal_setting block as defined above. Required with auto_heal. + AutoHealSetting []SiteConfigAutoHealSettingInitParameters `json:"autoHealSetting,omitempty" tf:"auto_heal_setting,omitempty"` + + // The Linux Web App Slot Name to automatically swap to when deployment to that slot is successfully completed. + AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` + + // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` + + // Should connections for Azure Container Registry use Managed Identity. + ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` + + // A cors block as defined above. + Cors []LinuxWebAppSlotSiteConfigCorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // Specifies a list of Default Documents for the Linux Web App. + DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` + + // The State of FTP / FTPS service. Possible values include AllAllowed, FtpsOnly, and Disabled. + FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` + + // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. + // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` + + // The path to the Health Check. + HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` + + // Should the HTTP2 be enabled? + Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` + + // One or more ip_restriction blocks as defined above. + IPRestriction []LinuxWebAppSlotSiteConfigIPRestrictionInitParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` + + // The Site load balancing. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` + + // Use Local MySQL. Defaults to false. + LocalMySQLEnabled *bool `json:"localMysqlEnabled,omitempty" tf:"local_mysql_enabled,omitempty"` + + // Managed pipeline mode. Possible values include: Integrated, Classic. + ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` + + // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // Should Remote Debugging be enabled? Defaults to false. + RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` + + // The Remote Debugging Version. Possible values include VS2017 and VS2019 + RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` + + // One or more scm_ip_restriction blocks as defined above. + ScmIPRestriction []LinuxWebAppSlotSiteConfigScmIPRestrictionInitParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` + + // The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` + + // Should the Linux Web App ip_restriction configuration be used for the SCM also. + ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` + + // Should the Linux Web App use a 32-bit worker? Defaults to true. + Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` + + // Should all outbound traffic have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. + // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` + + // Should Web Sockets be enabled? Defaults to false. + WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` + + // The number of Workers for this Linux App Service Slot. + WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` +} + type LinuxWebAppSlotSiteConfigObservation struct { // The URL to the API Definition for this Linux Web App Slot. @@ -1993,6 +2801,21 @@ type LinuxWebAppSlotSiteConfigParameters struct { WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } +type LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -2027,6 +2850,32 @@ type LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type LinuxWebAppSlotSiteConfigScmIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type LinuxWebAppSlotSiteConfigScmIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -2104,6 +2953,9 @@ type LinuxWebAppSlotSiteConfigScmIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type LinuxWebAppSlotSiteCredentialInitParameters struct { +} + type LinuxWebAppSlotSiteCredentialObservation struct { // The Site Credentials Username used for publishing. @@ -2116,6 +2968,24 @@ type LinuxWebAppSlotSiteCredentialObservation struct { type LinuxWebAppSlotSiteCredentialParameters struct { } +type LinuxWebAppSlotStorageAccountInitParameters struct { + + // The Name of the Storage Account. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // The path at which to mount the storage share. + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` + + // The name which should be used for this Storage Account. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Name of the File Share or Container Name for Blob storage. + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` + + // The Azure Storage Type. Possible values include AzureFiles and AzureBlob + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type LinuxWebAppSlotStorageAccountObservation struct { // The Name of the Storage Account. @@ -2141,24 +3011,33 @@ type LinuxWebAppSlotStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. - // +kubebuilder:validation:Required - ShareName *string `json:"shareName" tf:"share_name,omitempty"` + // +kubebuilder:validation:Optional + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type LogsApplicationLogsInitParameters struct { + + // A azure_blob_storage_http block as defined above. + AzureBlobStorage []ApplicationLogsAzureBlobStorageInitParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` + + // Log level. Possible values include Verbose, Information, Warning, and Error. + FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` } type LogsApplicationLogsObservation struct { @@ -2177,8 +3056,14 @@ type LogsApplicationLogsParameters struct { AzureBlobStorage []ApplicationLogsAzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // Log level. Possible values include Verbose, Information, Warning, and Error. - // +kubebuilder:validation:Required - FileSystemLevel *string `json:"fileSystemLevel" tf:"file_system_level,omitempty"` + // +kubebuilder:validation:Optional + FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` +} + +type LogsHTTPLogsAzureBlobStorageInitParameters struct { + + // The retention period in days. A values of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` } type LogsHTTPLogsAzureBlobStorageObservation struct { @@ -2198,6 +3083,15 @@ type LogsHTTPLogsAzureBlobStorageParameters struct { SASURLSecretRef v1.SecretKeySelector `json:"sasurlSecretRef" tf:"-"` } +type LogsHTTPLogsInitParameters struct { + + // A azure_blob_storage_http block as defined above. + AzureBlobStorage []LogsHTTPLogsAzureBlobStorageInitParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` + + // A file_system block as defined above. + FileSystem []HTTPLogsFileSystemInitParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` +} + type LogsHTTPLogsObservation struct { // A azure_blob_storage_http block as defined above. @@ -2218,6 +3112,15 @@ type LogsHTTPLogsParameters struct { FileSystem []HTTPLogsFileSystemParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` } +type SiteConfigAutoHealSettingInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + Action []AutoHealSettingActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // A trigger block as defined below. + Trigger []AutoHealSettingTriggerInitParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` +} + type SiteConfigAutoHealSettingObservation struct { // The action to take. Possible values are Allow or Deny. @@ -2238,6 +3141,15 @@ type SiteConfigAutoHealSettingParameters struct { Trigger []AutoHealSettingTriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } +type TriggerRequestsInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` +} + type TriggerRequestsObservation struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. @@ -2250,12 +3162,27 @@ type TriggerRequestsObservation struct { type TriggerRequestsParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` +} + +type TriggerSlowRequestInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` + + // The path to which this rule status code applies. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. + TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` } type TriggerSlowRequestObservation struct { @@ -2276,20 +3203,41 @@ type TriggerSlowRequestObservation struct { type TriggerSlowRequestParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. - // +kubebuilder:validation:Required - TimeTaken *string `json:"timeTaken" tf:"time_taken,omitempty"` + // +kubebuilder:validation:Optional + TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` +} + +type TriggerStatusCodeInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` + + // The path to which this rule status code applies. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 + StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` + + // The Request Sub Status of the Status Code. + SubStatus *float64 `json:"subStatus,omitempty" tf:"sub_status,omitempty"` + + // The Win32 Status Code of the Request. + Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } type TriggerStatusCodeObservation struct { @@ -2316,20 +3264,20 @@ type TriggerStatusCodeObservation struct { type TriggerStatusCodeParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 - // +kubebuilder:validation:Required - StatusCodeRange *string `json:"statusCodeRange" tf:"status_code_range,omitempty"` + // +kubebuilder:validation:Optional + StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` // The Request Sub Status of the Status Code. // +kubebuilder:validation:Optional @@ -2344,6 +3292,18 @@ type TriggerStatusCodeParameters struct { type LinuxWebAppSlotSpec struct { v1.ResourceSpec `json:",inline"` ForProvider LinuxWebAppSlotParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider LinuxWebAppSlotInitParameters `json:"initProvider,omitempty"` } // LinuxWebAppSlotStatus defines the observed state of LinuxWebAppSlot. @@ -2364,8 +3324,8 @@ type LinuxWebAppSlotStatus struct { type LinuxWebAppSlot struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig)",message="siteConfig is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.siteConfig) || has(self.initProvider.siteConfig)",message="siteConfig is a required parameter" Spec LinuxWebAppSlotSpec `json:"spec"` Status LinuxWebAppSlotStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_serviceplan_types.go b/apis/web/v1beta1/zz_serviceplan_types.go index fbe029da9..8efdb00e6 100755 --- a/apis/web/v1beta1/zz_serviceplan_types.go +++ b/apis/web/v1beta1/zz_serviceplan_types.go @@ -13,6 +13,36 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ServicePlanInitParameters struct { + + // The ID of the App Service Environment to create this Service Plan in. + AppServiceEnvironmentID *string `json:"appServiceEnvironmentId,omitempty" tf:"app_service_environment_id,omitempty"` + + // The Azure Region where the Service Plan should exist. Changing this forces a new AppService to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // The maximum number of workers to use in an Elastic SKU Plan. Cannot be set unless using an Elastic SKU. + MaximumElasticWorkerCount *float64 `json:"maximumElasticWorkerCount,omitempty" tf:"maximum_elastic_worker_count,omitempty"` + + // The O/S type for the App Services to be hosted in this plan. Possible values include Windows, Linux, and WindowsContainer. Changing this forces a new resource to be created. + OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` + + // Should Per Site Scaling be enabled. Defaults to false. + PerSiteScalingEnabled *bool `json:"perSiteScalingEnabled,omitempty" tf:"per_site_scaling_enabled,omitempty"` + + // The SKU for the plan. Possible values include B1, B2, B3, D1, F1, I1, I2, I3, I1v2, I2v2, I3v2, I4v2, I5v2, I6v2, P1v2, P2v2, P3v2, P1v3, P2v3, P3v3, P1mv3, P2mv3, P3mv3, P4mv3, P5mv3, S1, S2, S3, SHARED, EP1, EP2, EP3, WS1, WS2, WS3, and Y1. + SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` + + // A mapping of tags which should be assigned to the AppService. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The number of Workers (instances) to be allocated. + WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` + + // Should the Service Plan balance across Availability Zones in the region. Changing this forces a new resource to be created. + ZoneBalancingEnabled *bool `json:"zoneBalancingEnabled,omitempty" tf:"zone_balancing_enabled,omitempty"` +} + type ServicePlanObservation struct { // The ID of the App Service Environment to create this Service Plan in. @@ -111,6 +141,18 @@ type ServicePlanParameters struct { type ServicePlanSpec struct { v1.ResourceSpec `json:",inline"` ForProvider ServicePlanParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider ServicePlanInitParameters `json:"initProvider,omitempty"` } // ServicePlanStatus defines the observed state of ServicePlan. @@ -131,9 +173,9 @@ type ServicePlanStatus struct { type ServicePlan struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osType)",message="osType is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName)",message="skuName is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.osType) || has(self.initProvider.osType)",message="osType is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.skuName) || has(self.initProvider.skuName)",message="skuName is a required parameter" Spec ServicePlanSpec `json:"spec"` Status ServicePlanStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_sourcecontroltoken_types.go b/apis/web/v1beta1/zz_sourcecontroltoken_types.go index 617b79db8..a989e3e38 100755 --- a/apis/web/v1beta1/zz_sourcecontroltoken_types.go +++ b/apis/web/v1beta1/zz_sourcecontroltoken_types.go @@ -13,6 +13,12 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type SourceControlTokenInitParameters struct { + + // The Token type. Possible values include Bitbucket, Dropbox, Github, and OneDrive. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type SourceControlTokenObservation struct { // The ID of the App Service Source GitHub Token. @@ -41,6 +47,18 @@ type SourceControlTokenParameters struct { type SourceControlTokenSpec struct { v1.ResourceSpec `json:",inline"` ForProvider SourceControlTokenParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider SourceControlTokenInitParameters `json:"initProvider,omitempty"` } // SourceControlTokenStatus defines the observed state of SourceControlToken. @@ -61,8 +79,8 @@ type SourceControlTokenStatus struct { type SourceControlToken struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tokenSecretRef)",message="tokenSecretRef is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type)",message="type is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.tokenSecretRef)",message="tokenSecretRef is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || has(self.initProvider.type)",message="type is a required parameter" Spec SourceControlTokenSpec `json:"spec"` Status SourceControlTokenStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_staticsite_types.go b/apis/web/v1beta1/zz_staticsite_types.go index 7edd982c3..8af79bfd5 100755 --- a/apis/web/v1beta1/zz_staticsite_types.go +++ b/apis/web/v1beta1/zz_staticsite_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type StaticSiteIdentityInitParameters struct { + + // A list of Managed Identity IDs which should be assigned to this Static Site resource. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // The Type of Managed Identity assigned to this Static Site resource. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type StaticSiteIdentityObservation struct { // A list of Managed Identity IDs which should be assigned to this Static Site resource. @@ -35,8 +44,26 @@ type StaticSiteIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The Type of Managed Identity assigned to this Static Site resource. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type StaticSiteInitParameters struct { + + // An identity block as defined below. + Identity []StaticSiteIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The Azure Region where the Static Web App should exist. Changing this forces a new Static Web App to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // Specifies the SKU size of the Static Web App. Possible values are Free or Standard. Defaults to Free. + SkuSize *string `json:"skuSize,omitempty" tf:"sku_size,omitempty"` + + // Specifies the SKU tier of the Static Web App. Possible values are Free or Standard. Defaults to Free. + SkuTier *string `json:"skuTier,omitempty" tf:"sku_tier,omitempty"` + + // A mapping of tags to assign to the resource. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type StaticSiteObservation struct { @@ -106,6 +133,18 @@ type StaticSiteParameters struct { type StaticSiteSpec struct { v1.ResourceSpec `json:",inline"` ForProvider StaticSiteParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider StaticSiteInitParameters `json:"initProvider,omitempty"` } // StaticSiteStatus defines the observed state of StaticSite. @@ -126,7 +165,7 @@ type StaticSiteStatus struct { type StaticSite struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" Spec StaticSiteSpec `json:"spec"` Status StaticSiteStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_windowsfunctionapp_types.go b/apis/web/v1beta1/zz_windowsfunctionapp_types.go index a20ee5a8a..a6696238e 100755 --- a/apis/web/v1beta1/zz_windowsfunctionapp_types.go +++ b/apis/web/v1beta1/zz_windowsfunctionapp_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WindowsFunctionAppAuthSettingsActiveDirectoryInitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type WindowsFunctionAppAuthSettingsActiveDirectoryObservation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -37,8 +52,8 @@ type WindowsFunctionAppAuthSettingsActiveDirectoryParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret for the Client ID. Cannot be used with `client_secret_setting_name`. @@ -51,6 +66,21 @@ type WindowsFunctionAppAuthSettingsActiveDirectoryParameters struct { ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } +type WindowsFunctionAppAuthSettingsFacebookInitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsFunctionAppAuthSettingsFacebookObservation struct { // The App ID of the Facebook app used for login. @@ -70,8 +100,8 @@ type WindowsFunctionAppAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. // The App Secret of the Facebook app used for Facebook Login. Cannot be specified with `app_secret_setting_name`. @@ -89,6 +119,21 @@ type WindowsFunctionAppAuthSettingsFacebookParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type WindowsFunctionAppAuthSettingsGithubInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsFunctionAppAuthSettingsGithubObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -108,8 +153,8 @@ type WindowsFunctionAppAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret of the GitHub app used for GitHub Login. Cannot be specified with `client_secret_setting_name`. @@ -127,6 +172,21 @@ type WindowsFunctionAppAuthSettingsGithubParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type WindowsFunctionAppAuthSettingsGoogleInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsFunctionAppAuthSettingsGoogleObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -146,8 +206,8 @@ type WindowsFunctionAppAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. @@ -165,6 +225,78 @@ type WindowsFunctionAppAuthSettingsGoogleParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type WindowsFunctionAppAuthSettingsInitParameters struct { + + // An active_directory block as defined above. + ActiveDirectory []WindowsFunctionAppAuthSettingsActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` + + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Function App. + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github + // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // Should the Authentication / Authorization feature be enabled for the Windows Function App? + // Should the Authentication / Authorization feature be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A facebook block as defined below. + Facebook []WindowsFunctionAppAuthSettingsFacebookInitParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` + + // A github block as defined below. + Github []WindowsFunctionAppAuthSettingsGithubInitParameters `json:"github,omitempty" tf:"github,omitempty"` + + // A google block as defined below. + Google []WindowsFunctionAppAuthSettingsGoogleInitParameters `json:"google,omitempty" tf:"google,omitempty"` + + // The OpenID Connect Issuer URI that represents the entity which issues access tokens for this Windows Function App. + // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // A microsoft block as defined below. + Microsoft []WindowsFunctionAppAuthSettingsMicrosoftInitParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` + + // The Runtime Version of the Authentication / Authorization feature in use for the Windows Function App. + // The RuntimeVersion of the Authentication / Authorization feature in use. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` + + // Should the Windows Function App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. + // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // A twitter block as defined below. + Twitter []WindowsFunctionAppAuthSettingsTwitterInitParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` + + // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. + // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` +} + +type WindowsFunctionAppAuthSettingsMicrosoftInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsFunctionAppAuthSettingsMicrosoftObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -184,8 +316,8 @@ type WindowsFunctionAppAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret_setting_name`. @@ -283,8 +415,8 @@ type WindowsFunctionAppAuthSettingsParameters struct { // Should the Authentication / Authorization feature be enabled for the Windows Function App? // Should the Authentication / Authorization feature be enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. // +kubebuilder:validation:Optional @@ -332,6 +464,17 @@ type WindowsFunctionAppAuthSettingsParameters struct { UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } +type WindowsFunctionAppAuthSettingsTwitterInitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type WindowsFunctionAppAuthSettingsTwitterObservation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -347,8 +490,8 @@ type WindowsFunctionAppAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret_setting_name`. @@ -361,6 +504,57 @@ type WindowsFunctionAppAuthSettingsTwitterParameters struct { ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } +type WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2InitParameters struct { + + // The list of allowed Applications for the Default Authorisation Policy. + // The list of allowed Applications for the Default Authorisation Policy. + AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The list of allowed Group Names for the Default Authorisation Policy. + // The list of allowed Group Names for the Default Authorisation Policy. + AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` + + // The list of allowed Identities for the Default Authorisation Policy. + // The list of allowed Identities for the Default Authorisation Policy. + AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The thumbprint of the certificate used for signing purposes. + // The thumbprint of the certificate used for signing purposes. + ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // A list of Allowed Client Applications in the JWT Claim. + // A list of Allowed Client Applications in the JWT Claim. + JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` + + // A list of Allowed Groups in the JWT Claim. + // A list of Allowed Groups in the JWT Claim. + JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` + + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` + + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` + + // Should the www-authenticate provider should be omitted from the request? Defaults to false + // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` +} + type WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2Observation struct { // The list of allowed Applications for the Default Authorisation Policy. @@ -436,8 +630,8 @@ type WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. @@ -466,8 +660,8 @@ type WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2Parameters struct { // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. - // +kubebuilder:validation:Required - TenantAuthEndpoint *string `json:"tenantAuthEndpoint" tf:"tenant_auth_endpoint,omitempty"` + // +kubebuilder:validation:Optional + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` @@ -475,6 +669,17 @@ type WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2Parameters struct { WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } +type WindowsFunctionAppAuthSettingsV2AppleV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type WindowsFunctionAppAuthSettingsV2AppleV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -493,13 +698,20 @@ type WindowsFunctionAppAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + +type WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } type WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2Observation struct { @@ -513,8 +725,31 @@ type WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + +type WindowsFunctionAppAuthSettingsV2CustomOidcV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with this Custom OIDC. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The name which should be used for this Storage Account. + // The name of the Custom OIDC Authentication Provider. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The name of the claim that contains the users name. + // The name of the claim that contains the users name. + NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` + + // The app setting name that contains the client_secret value used for the Custom OIDC Login. + // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` + + // The list of the scopes that should be requested while authenticating. + // The list of the scopes that should be requested while authenticating. + Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } type WindowsFunctionAppAuthSettingsV2CustomOidcV2Observation struct { @@ -568,13 +803,13 @@ type WindowsFunctionAppAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. @@ -583,8 +818,8 @@ type WindowsFunctionAppAuthSettingsV2CustomOidcV2Parameters struct { // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. - // +kubebuilder:validation:Required - OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint" tf:"openid_configuration_endpoint,omitempty"` + // +kubebuilder:validation:Optional + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. @@ -592,6 +827,25 @@ type WindowsFunctionAppAuthSettingsV2CustomOidcV2Parameters struct { Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } +type WindowsFunctionAppAuthSettingsV2FacebookV2InitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // The version of the Facebook API to be used while logging in. + // The version of the Facebook API to be used while logging in. + GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of scopes to be requested as part of Facebook Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsFunctionAppAuthSettingsV2FacebookV2Observation struct { // The App ID of the Facebook app used for login. @@ -615,13 +869,13 @@ type WindowsFunctionAppAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. - // +kubebuilder:validation:Required - AppSecretSettingName *string `json:"appSecretSettingName" tf:"app_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. @@ -634,6 +888,21 @@ type WindowsFunctionAppAuthSettingsV2FacebookV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type WindowsFunctionAppAuthSettingsV2GithubV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsFunctionAppAuthSettingsV2GithubV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -653,13 +922,13 @@ type WindowsFunctionAppAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. @@ -667,6 +936,25 @@ type WindowsFunctionAppAuthSettingsV2GithubV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type WindowsFunctionAppAuthSettingsV2GoogleV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsFunctionAppAuthSettingsV2GoogleV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -686,27 +974,155 @@ type WindowsFunctionAppAuthSettingsV2GoogleV2Observation struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } -type WindowsFunctionAppAuthSettingsV2GoogleV2Parameters struct { +type WindowsFunctionAppAuthSettingsV2GoogleV2Parameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + +type WindowsFunctionAppAuthSettingsV2InitParameters struct { + + // An active_directory_v2 block as defined below. + ActiveDirectoryV2 []WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2InitParameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` + + // An apple_v2 block as defined below. + AppleV2 []WindowsFunctionAppAuthSettingsV2AppleV2InitParameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` + + // Should the AuthV2 Settings be enabled. Defaults to false. + // Should the AuthV2 Settings be enabled. Defaults to `false` + AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` + + // An azure_static_web_app_v2 block as defined below. + AzureStaticWebAppV2 []WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2InitParameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` + + // The path to the App Auth settings. + // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` + + // Zero or more custom_oidc_v2 blocks as defined below. + CustomOidcV2 []WindowsFunctionAppAuthSettingsV2CustomOidcV2InitParameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` + + // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. + // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. + // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` + + // A facebook_v2 block as defined below. + FacebookV2 []WindowsFunctionAppAuthSettingsV2FacebookV2InitParameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` + + // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. + // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` + + // The name of the custom header containing the host of the request. + // The name of the header containing the host of the request. + ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` + + // The name of the custom header containing the scheme of the request. + // The name of the header containing the scheme of the request. + ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` + + // A github_v2 block as defined below. + GithubV2 []WindowsFunctionAppAuthSettingsV2GithubV2InitParameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` + + // A google_v2 block as defined below. + GoogleV2 []WindowsFunctionAppAuthSettingsV2GoogleV2InitParameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` + + // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. + // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` + + // A login block as defined below. + Login []WindowsFunctionAppAuthSettingsV2LoginInitParameters `json:"login,omitempty" tf:"login,omitempty"` + + // A microsoft_v2 block as defined below. + MicrosoftV2 []WindowsFunctionAppAuthSettingsV2MicrosoftV2InitParameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` + + // Should the authentication flow be used for all requests. + // Should the authentication flow be used for all requests. + RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` + + // Should HTTPS be required on connections? Defaults to true. + // Should HTTPS be required on connections? Defaults to true. + RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` + + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // A twitter_v2 block as defined below. + TwitterV2 []WindowsFunctionAppAuthSettingsV2TwitterV2InitParameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` + + // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. + // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` +} + +type WindowsFunctionAppAuthSettingsV2LoginInitParameters struct { + + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. + // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` + + // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. + // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` + + // The endpoint to which logout requests should be made. + // The endpoint to which logout requests should be made. + LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` + + // The time after the request is made when the nonce should expire. Defaults to 00:05:00. + // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` + + // Should the fragments from the request be preserved after the login request is made. Defaults to false. + // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` - // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. - // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. - // +kubebuilder:validation:Optional - AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + // Should the Token Store configuration Enabled. Defaults to false + // Should the Token Store configuration Enabled. Defaults to `false` + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` - // The OAuth 2.0 client ID that was created for the app used for authentication. - // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // The directory path in the App Filesystem in which the tokens will be stored. + // The directory path in the App Filesystem in which the tokens will be stored. + TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` - // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // The app setting name that contains the `client_secret` value used for Google Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` - // The list of Login scopes that should be requested as part of Microsoft Account authentication. - // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. - // +kubebuilder:validation:Optional - LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` + // Should the nonce be validated while completing the login flow. Defaults to true. + // Should the nonce be validated while completing the login flow. Defaults to `true`. + ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } type WindowsFunctionAppAuthSettingsV2LoginObservation struct { @@ -814,6 +1230,25 @@ type WindowsFunctionAppAuthSettingsV2LoginParameters struct { ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } +type WindowsFunctionAppAuthSettingsV2MicrosoftV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // The list of Login scopes that will be requested as part of Microsoft Account authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsFunctionAppAuthSettingsV2MicrosoftV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -842,13 +1277,13 @@ type WindowsFunctionAppAuthSettingsV2MicrosoftV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. @@ -1008,8 +1443,8 @@ type WindowsFunctionAppAuthSettingsV2Parameters struct { HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. - // +kubebuilder:validation:Required - Login []WindowsFunctionAppAuthSettingsV2LoginParameters `json:"login" tf:"login,omitempty"` + // +kubebuilder:validation:Optional + Login []WindowsFunctionAppAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. // +kubebuilder:validation:Optional @@ -1040,6 +1475,17 @@ type WindowsFunctionAppAuthSettingsV2Parameters struct { UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } +type WindowsFunctionAppAuthSettingsV2TwitterV2InitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type WindowsFunctionAppAuthSettingsV2TwitterV2Observation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -1055,13 +1501,27 @@ type WindowsFunctionAppAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerSecretSettingName *string `json:"consumerSecretSettingName" tf:"consumer_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + +type WindowsFunctionAppBackupInitParameters struct { + + // Should this backup job be enabled? Defaults to true. + // Should this backup job be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name which should be used for this Backup. + // The name which should be used for this Backup. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A schedule block as defined below. + Schedule []WindowsFunctionAppBackupScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` } type WindowsFunctionAppBackupObservation struct { @@ -1087,12 +1547,12 @@ type WindowsFunctionAppBackupParameters struct { // The name which should be used for this Backup. // The name which should be used for this Backup. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A schedule block as defined below. - // +kubebuilder:validation:Required - Schedule []WindowsFunctionAppBackupScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []WindowsFunctionAppBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. // The SAS URL to the container. @@ -1100,6 +1560,29 @@ type WindowsFunctionAppBackupParameters struct { StorageAccountURLSecretRef v1.SecretKeySelector `json:"storageAccountUrlSecretRef" tf:"-"` } +type WindowsFunctionAppBackupScheduleInitParameters struct { + + // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). + // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` + + // The unit of time for how often the backup should take place. Possible values include: Day and Hour. + // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` + + // Should the service keep at least one backup, regardless of age of backup. Defaults to false. + // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // After how many days backups should be deleted. + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` + + // When the schedule should start working in RFC-3339 format. + // When the schedule should start working in RFC-3339 format. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type WindowsFunctionAppBackupScheduleObservation struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). @@ -1130,13 +1613,13 @@ type WindowsFunctionAppBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). - // +kubebuilder:validation:Required - FrequencyInterval *float64 `json:"frequencyInterval" tf:"frequency_interval,omitempty"` + // +kubebuilder:validation:Optional + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day and Hour. // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. - // +kubebuilder:validation:Required - FrequencyUnit *string `json:"frequencyUnit" tf:"frequency_unit,omitempty"` + // +kubebuilder:validation:Optional + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. @@ -1154,6 +1637,17 @@ type WindowsFunctionAppBackupScheduleParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type WindowsFunctionAppConnectionStringInitParameters struct { + + // The name which should be used for this Connection. + // The name which should be used for this Connection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsFunctionAppConnectionStringObservation struct { // The name which should be used for this Connection. @@ -1169,13 +1663,13 @@ type WindowsFunctionAppConnectionStringParameters struct { // The name which should be used for this Connection. // The name which should be used for this Connection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. // The connection string value. @@ -1183,6 +1677,15 @@ type WindowsFunctionAppConnectionStringParameters struct { ValueSecretRef v1.SecretKeySelector `json:"valueSecretRef" tf:"-"` } +type WindowsFunctionAppIdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Windows Function App. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Windows Function App. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsFunctionAppIdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this Windows Function App. @@ -1205,8 +1708,97 @@ type WindowsFunctionAppIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Function App. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WindowsFunctionAppInitParameters struct { + + // A map of key-value pairs for App Settings and custom values. + // A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) and custom values. + AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` + + // A auth_settings block as defined below. + AuthSettings []WindowsFunctionAppAuthSettingsInitParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` + + // A auth_settings_v2 block as defined below. + AuthSettingsV2 []WindowsFunctionAppAuthSettingsV2InitParameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` + + // A backup block as defined below. + Backup []WindowsFunctionAppBackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // Should built in logging be enabled. Configures AzureWebJobsDashboard app setting based on the configured storage setting. Defaults to true. + // Should built in logging be enabled. Configures `AzureWebJobsDashboard` app setting based on the configured storage setting + BuiltinLoggingEnabled *bool `json:"builtinLoggingEnabled,omitempty" tf:"builtin_logging_enabled,omitempty"` + + // Should the function app use Client Certificates. + // Should the function app use Client Certificates + ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` + + // Paths to exclude when using client certificates, separated by ; + // Paths to exclude when using client certificates, separated by ; + ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` + + // The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required, Optional, and OptionalInteractiveUser. + // The mode of the Function App's client certificates requirement for incoming requests. Possible values are `Required`, `Optional`, and `OptionalInteractiveUser` + ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` + + // One or more connection_string blocks as defined below. + ConnectionString []WindowsFunctionAppConnectionStringInitParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // Should Content Share Settings be disabled. Defaults to false. + // Force disable the content share settings. + ContentShareForceDisabled *bool `json:"contentShareForceDisabled,omitempty" tf:"content_share_force_disabled,omitempty"` + + // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan. Defaults to 0. + // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. + DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` + + // Is the Function App enabled? Defaults to true. + // Is the Windows Function App enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The runtime version associated with the Function App. Defaults to ~4. + // The runtime version associated with the Function App. + FunctionsExtensionVersion *string `json:"functionsExtensionVersion,omitempty" tf:"functions_extension_version,omitempty"` + + // Can the Function App only be accessed via HTTPS? Defaults to false. + // Can the Function App only be accessed via HTTPS? + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // A identity block as defined below. + Identity []WindowsFunctionAppIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity + // The User Assigned Identity to use for Key Vault access. + KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` + + // The Azure Region where the Windows Function App should exist. Changing this forces a new Windows Function App to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A site_config block as defined below. + SiteConfig []WindowsFunctionAppSiteConfigInitParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` + + // A sticky_settings block as defined below. + StickySettings []WindowsFunctionAppStickySettingsInitParameters `json:"stickySettings,omitempty" tf:"sticky_settings,omitempty"` + + // One or more storage_account blocks as defined below. + StorageAccount []WindowsFunctionAppStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // The Key Vault Secret ID, optionally including version, that contains the Connection String to connect to the storage account for this Function App. + // The Key Vault Secret ID, including version, that contains the Connection String to connect to the storage account for this Function App. + StorageKeyVaultSecretID *string `json:"storageKeyVaultSecretId,omitempty" tf:"storage_key_vault_secret_id,omitempty"` + + // Should the Function App use Managed Identity to access the storage account. Conflicts with storage_account_access_key. + // Should the Function App use its Managed Identity to access storage? + StorageUsesManagedIdentity *bool `json:"storageUsesManagedIdentity,omitempty" tf:"storage_uses_managed_identity,omitempty"` + + // A mapping of tags which should be assigned to the Windows Function App. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The local path and filename of the Zip packaged application to deploy to this Windows Function App. + // The local path and filename of the Zip packaged application to deploy to this Windows Function App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` to be set on the App in `app_settings`. + ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } type WindowsFunctionAppObservation struct { @@ -1510,6 +2102,17 @@ type WindowsFunctionAppParameters struct { ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } +type WindowsFunctionAppSiteConfigAppServiceLogsInitParameters struct { + + // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. + // The amount of disk space to use for logs. Valid values are between `25` and `100`. + DiskQuotaMb *float64 `json:"diskQuotaMb,omitempty" tf:"disk_quota_mb,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // The retention period for logs in days. Valid values are between `0` and `99999`. Defaults to `0` (never delete). + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` +} + type WindowsFunctionAppSiteConfigAppServiceLogsObservation struct { // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. @@ -1521,17 +2124,44 @@ type WindowsFunctionAppSiteConfigAppServiceLogsObservation struct { RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` } -type WindowsFunctionAppSiteConfigAppServiceLogsParameters struct { +type WindowsFunctionAppSiteConfigAppServiceLogsParameters struct { + + // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. + // The amount of disk space to use for logs. Valid values are between `25` and `100`. + // +kubebuilder:validation:Optional + DiskQuotaMb *float64 `json:"diskQuotaMb,omitempty" tf:"disk_quota_mb,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // The retention period for logs in days. Valid values are between `0` and `99999`. Defaults to `0` (never delete). + // +kubebuilder:validation:Optional + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` +} + +type WindowsFunctionAppSiteConfigApplicationStackInitParameters struct { + + // The version of .NET to use. Possible values include v3.0, v4.0 v6.0 and v7.0. + // The version of .Net. Possible values are `v3.0`, `v4.0`, `v6.0` and `v7.0` + DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` + + // The Version of Java to use. Supported versions include 1.8, 11 & 17 (In-Preview). + // The version of Java to use. Possible values are `1.8`, `11` and `17` + JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` + + // The version of Node to run. Possible values include ~12, ~14, ~16 and ~18. + // The version of Node to use. Possible values include `12`, `14`, `16` and `18` + NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` - // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. - // The amount of disk space to use for logs. Valid values are between `25` and `100`. - // +kubebuilder:validation:Optional - DiskQuotaMb *float64 `json:"diskQuotaMb,omitempty" tf:"disk_quota_mb,omitempty"` + // The version of PowerShell Core to run. Possible values are 7, and 7.2. + // The PowerShell Core version to use. Possible values are `7`, and `7.2` + PowershellCoreVersion *string `json:"powershellCoreVersion,omitempty" tf:"powershell_core_version,omitempty"` - // After how many days backups should be deleted. Defaults to 30. - // The retention period for logs in days. Valid values are between `0` and `99999`. Defaults to `0` (never delete). - // +kubebuilder:validation:Optional - RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` + // Should the Windows Function App use a custom runtime? + // Does the Function App use a custom Application Stack? + UseCustomRuntime *bool `json:"useCustomRuntime,omitempty" tf:"use_custom_runtime,omitempty"` + + // Should the DotNet process use an isolated runtime. Defaults to false. + // Should the DotNet process use an isolated runtime. Defaults to `false`. + UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` } type WindowsFunctionAppSiteConfigApplicationStackObservation struct { @@ -1594,6 +2224,17 @@ type WindowsFunctionAppSiteConfigApplicationStackParameters struct { UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` } +type WindowsFunctionAppSiteConfigCorsInitParameters struct { + + // Specifies a list of origins that should be allowed to make cross-origin calls. + // Specifies a list of origins that should be allowed to make cross-origin calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // Are credentials allowed in CORS requests? Defaults to false. + // Are credentials allowed in CORS requests? Defaults to `false`. + SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` +} + type WindowsFunctionAppSiteConfigCorsObservation struct { // Specifies a list of origins that should be allowed to make cross-origin calls. @@ -1618,6 +2259,21 @@ type WindowsFunctionAppSiteConfigCorsParameters struct { SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } +type WindowsFunctionAppSiteConfigIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type WindowsFunctionAppSiteConfigIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -1652,6 +2308,32 @@ type WindowsFunctionAppSiteConfigIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type WindowsFunctionAppSiteConfigIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []WindowsFunctionAppSiteConfigIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type WindowsFunctionAppSiteConfigIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -1729,6 +2411,120 @@ type WindowsFunctionAppSiteConfigIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type WindowsFunctionAppSiteConfigInitParameters struct { + + // The URL of the API definition that describes this Windows Function App. + // The URL of the API definition that describes this Windows Function App. + APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` + + // The ID of the API Management API for this Windows Function App. + // The ID of the API Management API for this Windows Function App. + APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` + + // If this Windows Function App is Always On enabled. Defaults to false. + // If this Windows Web App is Always On enabled. Defaults to `false`. + AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` + + // The App command line to launch. + // The program and any arguments used to launch this app via the command line. (Example `node myapp.js`). + AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` + + // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` + + // An app_service_logs block as defined above. + AppServiceLogs []WindowsFunctionAppSiteConfigAppServiceLogsInitParameters `json:"appServiceLogs,omitempty" tf:"app_service_logs,omitempty"` + + // An application_stack block as defined above. + ApplicationStack []WindowsFunctionAppSiteConfigApplicationStackInitParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` + + // A cors block as defined above. + Cors []WindowsFunctionAppSiteConfigCorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // Specifies a list of Default Documents for the Windows Function App. + // Specifies a list of Default Documents for the Windows Web App. + DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` + + // The number of minimum instances for this Windows Function App. Only affects apps on Elastic Premium plans. + // The number of minimum instances for this Windows Function App. Only affects apps on Elastic Premium plans. + ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` + + // State of FTP / FTPS service for this Windows Function App. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to Disabled. + // State of FTP / FTPS service for this function app. Possible values include: `AllAllowed`, `FtpsOnly` and `Disabled`. Defaults to `Disabled`. + FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` + + // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. + // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` + + // The path to be checked for this Windows Function App health. + // The path to be checked for this function app health. + HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` + + // Specifies if the HTTP2 protocol should be enabled. Defaults to false. + // Specifies if the http2 protocol should be enabled. Defaults to `false`. + Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` + + // One or more ip_restriction blocks as defined above. + IPRestriction []WindowsFunctionAppSiteConfigIPRestrictionInitParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` + + // The Site load balancing mode. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + // The Site load balancing mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted. + LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` + + // Managed pipeline mode. Possible values include: Integrated, Classic. Defaults to Integrated. + // The Managed Pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`. + ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` + + // Configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // The number of pre-warmed instances for this Windows Function App. Only affects apps on an Elastic Premium plan. + // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` + + // Should Remote Debugging be enabled. Defaults to false. + // Should Remote Debugging be enabled. Defaults to `false`. + RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` + + // The Remote Debugging Version. Possible values include VS2017, VS2019, and VS2022. + // The Remote Debugging Version. Possible values include `VS2017`, `VS2019`, and `VS2022` + RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` + + // Should Scale Monitoring of the Functions Runtime be enabled? + // Should Functions Runtime Scale Monitoring be enabled. + RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` + + // One or more scm_ip_restriction blocks as defined above. + ScmIPRestriction []WindowsFunctionAppSiteConfigScmIPRestrictionInitParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` + + // Configures the minimum version of TLS required for SSL requests to the SCM site. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` + + // Should the Windows Function App ip_restriction configuration be used for the SCM also. + // Should the Windows Function App `ip_restriction` configuration be used for the SCM also. + ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` + + // Should the Windows Function App use a 32-bit worker process. Defaults to true. + // Should the Windows Web App use a 32-bit worker. + Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` + + // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. + // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` + + // Should Web Sockets be enabled. Defaults to false. + // Should Web Sockets be enabled. Defaults to `false`. + WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` + + // The number of Workers for this Windows Function App. + // The number of Workers for this Windows Function App. + WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` +} + type WindowsFunctionAppSiteConfigObservation struct { // The URL of the API definition that describes this Windows Function App. @@ -2006,6 +2802,21 @@ type WindowsFunctionAppSiteConfigParameters struct { WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } +type WindowsFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type WindowsFunctionAppSiteConfigScmIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -2040,6 +2851,32 @@ type WindowsFunctionAppSiteConfigScmIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type WindowsFunctionAppSiteConfigScmIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []WindowsFunctionAppSiteConfigScmIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type WindowsFunctionAppSiteConfigScmIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -2117,6 +2954,9 @@ type WindowsFunctionAppSiteConfigScmIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type WindowsFunctionAppSiteCredentialInitParameters struct { +} + type WindowsFunctionAppSiteCredentialObservation struct { // The Site Credentials Username used for publishing. @@ -2129,6 +2969,15 @@ type WindowsFunctionAppSiteCredentialObservation struct { type WindowsFunctionAppSiteCredentialParameters struct { } +type WindowsFunctionAppStickySettingsInitParameters struct { + + // A list of app_setting names that the Windows Function App will not swap between Slots when a swap operation is triggered. + AppSettingNames []*string `json:"appSettingNames,omitempty" tf:"app_setting_names,omitempty"` + + // A list of connection_string names that the Windows Function App will not swap between Slots when a swap operation is triggered. + ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` +} + type WindowsFunctionAppStickySettingsObservation struct { // A list of app_setting names that the Windows Function App will not swap between Slots when a swap operation is triggered. @@ -2149,6 +2998,24 @@ type WindowsFunctionAppStickySettingsParameters struct { ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` } +type WindowsFunctionAppStorageAccountInitParameters struct { + + // The Name of the Storage Account. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // The path at which to mount the storage share. + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` + + // The name which should be used for this Storage Account. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Name of the File Share or Container Name for Blob storage. + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` + + // The Azure Storage Type. Possible values include AzureFiles. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsFunctionAppStorageAccountObservation struct { // The Name of the Storage Account. @@ -2174,30 +3041,42 @@ type WindowsFunctionAppStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. - // +kubebuilder:validation:Required - ShareName *string `json:"shareName" tf:"share_name,omitempty"` + // +kubebuilder:validation:Optional + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // WindowsFunctionAppSpec defines the desired state of WindowsFunctionApp type WindowsFunctionAppSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WindowsFunctionAppParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WindowsFunctionAppInitParameters `json:"initProvider,omitempty"` } // WindowsFunctionAppStatus defines the observed state of WindowsFunctionApp. @@ -2218,8 +3097,8 @@ type WindowsFunctionAppStatus struct { type WindowsFunctionApp struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig)",message="siteConfig is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.siteConfig) || has(self.initProvider.siteConfig)",message="siteConfig is a required parameter" Spec WindowsFunctionAppSpec `json:"spec"` Status WindowsFunctionAppStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_windowsfunctionappslot_types.go b/apis/web/v1beta1/zz_windowsfunctionappslot_types.go index 01c8b9478..c7ae1331d 100755 --- a/apis/web/v1beta1/zz_windowsfunctionappslot_types.go +++ b/apis/web/v1beta1/zz_windowsfunctionappslot_types.go @@ -13,6 +13,21 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type WindowsFunctionAppSlotAuthSettingsActiveDirectoryInitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsActiveDirectoryObservation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -37,8 +52,8 @@ type WindowsFunctionAppSlotAuthSettingsActiveDirectoryParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret for the Client ID. Cannot be used with `client_secret_setting_name`. @@ -51,6 +66,21 @@ type WindowsFunctionAppSlotAuthSettingsActiveDirectoryParameters struct { ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsFacebookInitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsFacebookObservation struct { // The App ID of the Facebook app used for login. @@ -70,8 +100,8 @@ type WindowsFunctionAppSlotAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. // The App Secret of the Facebook app used for Facebook Login. Cannot be specified with `app_secret_setting_name`. @@ -89,6 +119,21 @@ type WindowsFunctionAppSlotAuthSettingsFacebookParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsGithubInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsGithubObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -108,8 +153,8 @@ type WindowsFunctionAppSlotAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret of the GitHub app used for GitHub Login. Cannot be specified with `client_secret_setting_name`. @@ -127,6 +172,21 @@ type WindowsFunctionAppSlotAuthSettingsGithubParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsGoogleInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsGoogleObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -146,8 +206,8 @@ type WindowsFunctionAppSlotAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. @@ -165,6 +225,78 @@ type WindowsFunctionAppSlotAuthSettingsGoogleParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsInitParameters struct { + + // an active_directory block as detailed below. + ActiveDirectory []WindowsFunctionAppSlotAuthSettingsActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` + + // an allowed_external_redirect_urls block as detailed below. + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github. + // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // Should the Authentication / Authorization feature be enabled? + // Should the Authentication / Authorization feature be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // a facebook block as detailed below. + Facebook []WindowsFunctionAppSlotAuthSettingsFacebookInitParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` + + // a github block as detailed below. + Github []WindowsFunctionAppSlotAuthSettingsGithubInitParameters `json:"github,omitempty" tf:"github,omitempty"` + + // a google block as detailed below. + Google []WindowsFunctionAppSlotAuthSettingsGoogleInitParameters `json:"google,omitempty" tf:"google,omitempty"` + + // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // a microsoft block as detailed below. + Microsoft []WindowsFunctionAppSlotAuthSettingsMicrosoftInitParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` + + // The RuntimeVersion of the Authentication / Authorization feature in use. + // The RuntimeVersion of the Authentication / Authorization feature in use. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` + + // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. + // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // a twitter block as detailed below. + Twitter []WindowsFunctionAppSlotAuthSettingsTwitterInitParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` + + // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. + // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` +} + +type WindowsFunctionAppSlotAuthSettingsMicrosoftInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. + // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsMicrosoftObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -184,8 +316,8 @@ type WindowsFunctionAppSlotAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret_setting_name`. @@ -283,8 +415,8 @@ type WindowsFunctionAppSlotAuthSettingsParameters struct { // Should the Authentication / Authorization feature be enabled? // Should the Authentication / Authorization feature be enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // a facebook block as detailed below. // +kubebuilder:validation:Optional @@ -332,6 +464,17 @@ type WindowsFunctionAppSlotAuthSettingsParameters struct { UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsTwitterInitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsTwitterObservation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -347,8 +490,8 @@ type WindowsFunctionAppSlotAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret_setting_name`. @@ -361,6 +504,57 @@ type WindowsFunctionAppSlotAuthSettingsTwitterParameters struct { ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters struct { + + // The list of allowed Applications for the Default Authorisation Policy. + // The list of allowed Applications for the Default Authorisation Policy. + AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The list of allowed Group Names for the Default Authorisation Policy. + // The list of allowed Group Names for the Default Authorisation Policy. + AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` + + // The list of allowed Identities for the Default Authorisation Policy. + // The list of allowed Identities for the Default Authorisation Policy. + AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The thumbprint of the certificate used for signing purposes. + // The thumbprint of the certificate used for signing purposes. + ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // A list of Allowed Client Applications in the JWT Claim. + // A list of Allowed Client Applications in the JWT Claim. + JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` + + // A list of Allowed Groups in the JWT Claim. + // A list of Allowed Groups in the JWT Claim. + JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` + + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` + + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` + + // Should the www-authenticate provider should be omitted from the request? Defaults to false + // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2Observation struct { // The list of allowed Applications for the Default Authorisation Policy. @@ -436,8 +630,8 @@ type WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. @@ -466,8 +660,8 @@ type WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. - // +kubebuilder:validation:Required - TenantAuthEndpoint *string `json:"tenantAuthEndpoint" tf:"tenant_auth_endpoint,omitempty"` + // +kubebuilder:validation:Optional + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` @@ -475,6 +669,17 @@ type WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsV2AppleV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsV2AppleV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -493,13 +698,20 @@ type WindowsFunctionAppSlotAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + +type WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } type WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2Observation struct { @@ -513,8 +725,31 @@ type WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + +type WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with this Custom OIDC. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The name which should be used for this Storage Account. + // The name of the Custom OIDC Authentication Provider. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The name of the claim that contains the users name. + // The name of the claim that contains the users name. + NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` + + // The app setting name that contains the client_secret value used for the Custom OIDC Login. + // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` + + // The list of the scopes that should be requested while authenticating. + // The list of the scopes that should be requested while authenticating. + Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } type WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2Observation struct { @@ -568,13 +803,13 @@ type WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. @@ -583,8 +818,8 @@ type WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2Parameters struct { // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. - // +kubebuilder:validation:Required - OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint" tf:"openid_configuration_endpoint,omitempty"` + // +kubebuilder:validation:Optional + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. @@ -592,6 +827,25 @@ type WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2Parameters struct { Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsV2FacebookV2InitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // The version of the Facebook API to be used while logging in. + // The version of the Facebook API to be used while logging in. + GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of scopes to be requested as part of Facebook Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsV2FacebookV2Observation struct { // The App ID of the Facebook app used for login. @@ -615,13 +869,13 @@ type WindowsFunctionAppSlotAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. - // +kubebuilder:validation:Required - AppSecretSettingName *string `json:"appSecretSettingName" tf:"app_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. @@ -634,6 +888,21 @@ type WindowsFunctionAppSlotAuthSettingsV2FacebookV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsV2GithubV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsV2GithubV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -653,13 +922,13 @@ type WindowsFunctionAppSlotAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. @@ -667,46 +936,193 @@ type WindowsFunctionAppSlotAuthSettingsV2GithubV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } -type WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation struct { +type WindowsFunctionAppSlotAuthSettingsV2GoogleV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + +type WindowsFunctionAppSlotAuthSettingsV2GoogleV2Observation struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + +type WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + +type WindowsFunctionAppSlotAuthSettingsV2InitParameters struct { + + // An active_directory_v2 block as defined below. + ActiveDirectoryV2 []WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` + + // An apple_v2 block as defined below. + AppleV2 []WindowsFunctionAppSlotAuthSettingsV2AppleV2InitParameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` + + // Should the AuthV2 Settings be enabled. Defaults to false. + // Should the AuthV2 Settings be enabled. Defaults to `false` + AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` + + // An azure_static_web_app_v2 block as defined below. + AzureStaticWebAppV2 []WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` + + // The path to the App Auth settings. + // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` + + // Zero or more custom_oidc_v2 blocks as defined below. + CustomOidcV2 []WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2InitParameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` + + // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. + // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. + // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` + + // A facebook_v2 block as defined below. + FacebookV2 []WindowsFunctionAppSlotAuthSettingsV2FacebookV2InitParameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` + + // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. + // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` + + // The name of the custom header containing the host of the request. + // The name of the header containing the host of the request. + ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` + + // The name of the custom header containing the scheme of the request. + // The name of the header containing the scheme of the request. + ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` + + // A github_v2 block as defined below. + GithubV2 []WindowsFunctionAppSlotAuthSettingsV2GithubV2InitParameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` + + // A google_v2 block as defined below. + GoogleV2 []WindowsFunctionAppSlotAuthSettingsV2GoogleV2InitParameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` + + // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. + // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` + + // A login block as defined below. + Login []WindowsFunctionAppSlotAuthSettingsV2LoginInitParameters `json:"login,omitempty" tf:"login,omitempty"` + + // A microsoft_v2 block as defined below. + MicrosoftV2 []WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2InitParameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` + + // Should the authentication flow be used for all requests. + // Should the authentication flow be used for all requests. + RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` + + // Should HTTPS be required on connections? Defaults to true. + // Should HTTPS be required on connections? Defaults to true. + RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` + + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // A twitter_v2 block as defined below. + TwitterV2 []WindowsFunctionAppSlotAuthSettingsV2TwitterV2InitParameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` + + // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. + // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` +} + +type WindowsFunctionAppSlotAuthSettingsV2LoginInitParameters struct { + + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. + // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` - // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. - // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. - AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. + // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` - // The OAuth 2.0 client ID that was created for the app used for authentication. - // The OpenID Connect Client ID for the Google web application. - ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + // The endpoint to which logout requests should be made. + // The endpoint to which logout requests should be made. + LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` - // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // The app setting name that contains the `client_secret` value used for Google Login. - ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + // The time after the request is made when the nonce should expire. Defaults to 00:05:00. + // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` - // The list of Login scopes that should be requested as part of Microsoft Account authentication. - // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. - LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` -} + // Should the fragments from the request be preserved after the login request is made. Defaults to false. + // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` -type WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters struct { + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` - // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. - // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. - // +kubebuilder:validation:Optional - AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + // Should the Token Store configuration Enabled. Defaults to false + // Should the Token Store configuration Enabled. Defaults to `false` + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` - // The OAuth 2.0 client ID that was created for the app used for authentication. - // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // The directory path in the App Filesystem in which the tokens will be stored. + // The directory path in the App Filesystem in which the tokens will be stored. + TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` - // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // The app setting name that contains the `client_secret` value used for Google Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` - // The list of Login scopes that should be requested as part of Microsoft Account authentication. - // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. - // +kubebuilder:validation:Optional - LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` + // Should the nonce be validated while completing the login flow. Defaults to true. + // Should the nonce be validated while completing the login flow. Defaults to `true`. + ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } type WindowsFunctionAppSlotAuthSettingsV2LoginObservation struct { @@ -814,6 +1230,25 @@ type WindowsFunctionAppSlotAuthSettingsV2LoginParameters struct { ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // The list of Login scopes that will be requested as part of Microsoft Account authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -842,13 +1277,13 @@ type WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. @@ -1008,8 +1443,8 @@ type WindowsFunctionAppSlotAuthSettingsV2Parameters struct { HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. - // +kubebuilder:validation:Required - Login []WindowsFunctionAppSlotAuthSettingsV2LoginParameters `json:"login" tf:"login,omitempty"` + // +kubebuilder:validation:Optional + Login []WindowsFunctionAppSlotAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. // +kubebuilder:validation:Optional @@ -1040,6 +1475,17 @@ type WindowsFunctionAppSlotAuthSettingsV2Parameters struct { UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } +type WindowsFunctionAppSlotAuthSettingsV2TwitterV2InitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type WindowsFunctionAppSlotAuthSettingsV2TwitterV2Observation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -1055,13 +1501,27 @@ type WindowsFunctionAppSlotAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerSecretSettingName *string `json:"consumerSecretSettingName" tf:"consumer_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + +type WindowsFunctionAppSlotBackupInitParameters struct { + + // Should this backup job be enabled? Defaults to true. + // Should this backup job be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name which should be used for this Backup. + // The name which should be used for this Backup. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // a schedule block as detailed below. + Schedule []WindowsFunctionAppSlotBackupScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` } type WindowsFunctionAppSlotBackupObservation struct { @@ -1087,12 +1547,12 @@ type WindowsFunctionAppSlotBackupParameters struct { // The name which should be used for this Backup. // The name which should be used for this Backup. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // a schedule block as detailed below. - // +kubebuilder:validation:Required - Schedule []WindowsFunctionAppSlotBackupScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []WindowsFunctionAppSlotBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. // The SAS URL to the container. @@ -1100,6 +1560,29 @@ type WindowsFunctionAppSlotBackupParameters struct { StorageAccountURLSecretRef v1.SecretKeySelector `json:"storageAccountUrlSecretRef" tf:"-"` } +type WindowsFunctionAppSlotBackupScheduleInitParameters struct { + + // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). + // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` + + // The unit of time for how often the backup should take place. Possible values include: Day and Hour. + // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` + + // Should the service keep at least one backup, regardless of age of backup. Defaults to false. + // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // After how many days backups should be deleted. + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` + + // When the schedule should start working in RFC-3339 format. + // When the schedule should start working in RFC-3339 format. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type WindowsFunctionAppSlotBackupScheduleObservation struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). @@ -1131,13 +1614,13 @@ type WindowsFunctionAppSlotBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). - // +kubebuilder:validation:Required - FrequencyInterval *float64 `json:"frequencyInterval" tf:"frequency_interval,omitempty"` + // +kubebuilder:validation:Optional + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day and Hour. // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. - // +kubebuilder:validation:Required - FrequencyUnit *string `json:"frequencyUnit" tf:"frequency_unit,omitempty"` + // +kubebuilder:validation:Optional + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. @@ -1155,6 +1638,17 @@ type WindowsFunctionAppSlotBackupScheduleParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type WindowsFunctionAppSlotConnectionStringInitParameters struct { + + // The name which should be used for this Connection. + // The name which should be used for this Connection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsFunctionAppSlotConnectionStringObservation struct { // The name which should be used for this Connection. @@ -1170,13 +1664,13 @@ type WindowsFunctionAppSlotConnectionStringParameters struct { // The name which should be used for this Connection. // The name which should be used for this Connection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. // The connection string value. @@ -1184,6 +1678,15 @@ type WindowsFunctionAppSlotConnectionStringParameters struct { ValueSecretRef v1.SecretKeySelector `json:"valueSecretRef" tf:"-"` } +type WindowsFunctionAppSlotIdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Windows Function App Slot. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Windows Function App Slot. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsFunctionAppSlotIdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this Windows Function App Slot. @@ -1206,8 +1709,90 @@ type WindowsFunctionAppSlotIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Function App Slot. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WindowsFunctionAppSlotInitParameters struct { + + // A map of key-value pairs for App Settings and custom values. + // A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) and custom values. + AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` + + // an auth_settings block as detailed below. + AuthSettings []WindowsFunctionAppSlotAuthSettingsInitParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` + + // an auth_settings_v2 block as detailed below. + AuthSettingsV2 []WindowsFunctionAppSlotAuthSettingsV2InitParameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` + + // a backup block as detailed below. + Backup []WindowsFunctionAppSlotBackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // Should built-in logging be enabled. Configures AzureWebJobsDashboard app setting based on the configured storage setting. Defaults to true. + // Should built in logging be enabled. Configures `AzureWebJobsDashboard` app setting based on the configured storage setting. + BuiltinLoggingEnabled *bool `json:"builtinLoggingEnabled,omitempty" tf:"builtin_logging_enabled,omitempty"` + + // Should the Function App Slot use Client Certificates. + // Should the Function App Slot use Client Certificates. + ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` + + // Paths to exclude when using client certificates, separated by ; + // Paths to exclude when using client certificates, separated by ; + ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` + + // The mode of the Function App Slot's client certificates requirement for incoming requests. Possible values are Required, Optional, and OptionalInteractiveUser. + // The mode of the Function App Slot's client certificates requirement for incoming requests. Possible values are `Required`, `Optional`, and `OptionalInteractiveUser`. + ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` + + // a connection_string block as detailed below. + ConnectionString []WindowsFunctionAppSlotConnectionStringInitParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // Force disable the content share settings. + // Force disable the content share settings. + ContentShareForceDisabled *bool `json:"contentShareForceDisabled,omitempty" tf:"content_share_force_disabled,omitempty"` + + // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. Defaults to 0. + // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. + DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` + + // Is the Windows Function App Slot enabled. Defaults to true. + // Is the Windows Function App Slot enabled. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The runtime version associated with the Function App Slot. Defaults to ~4. + // The runtime version associated with the Function App Slot. + FunctionsExtensionVersion *string `json:"functionsExtensionVersion,omitempty" tf:"functions_extension_version,omitempty"` + + // Can the Function App Slot only be accessed via HTTPS? + // Can the Function App Slot only be accessed via HTTPS? + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // an identity block as detailed below. + Identity []WindowsFunctionAppSlotIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity + // The User Assigned Identity to use for Key Vault access. + KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` + + // The ID of the Service Plan in which to run this slot. If not specified the same Service Plan as the Windows Function App will be used. + ServicePlanID *string `json:"servicePlanId,omitempty" tf:"service_plan_id,omitempty"` + + // a site_config block as detailed below. + SiteConfig []WindowsFunctionAppSlotSiteConfigInitParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` + + // One or more storage_account blocks as defined below. + StorageAccount []WindowsFunctionAppSlotStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // The Key Vault Secret ID, optionally including version, that contains the Connection String to connect to the storage account for this Function App Slot. + // The Key Vault Secret ID, including version, that contains the Connection String to connect to the storage account for this Function App. + StorageKeyVaultSecretID *string `json:"storageKeyVaultSecretId,omitempty" tf:"storage_key_vault_secret_id,omitempty"` + + // Should the Function App Slot use its Managed Identity to access storage. + // Should the Function App Slot use its Managed Identity to access storage? + StorageUsesManagedIdentity *bool `json:"storageUsesManagedIdentity,omitempty" tf:"storage_uses_managed_identity,omitempty"` + + // A mapping of tags which should be assigned to the Windows Function App Slot. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } type WindowsFunctionAppSlotObservation struct { @@ -1485,6 +2070,17 @@ type WindowsFunctionAppSlotParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type WindowsFunctionAppSlotSiteConfigAppServiceLogsInitParameters struct { + + // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. + // The amount of disk space to use for logs. Valid values are between `25` and `100`. + DiskQuotaMb *float64 `json:"diskQuotaMb,omitempty" tf:"disk_quota_mb,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // The retention period for logs in days. Valid values are between `0` and `99999`. Defaults to `0` (never delete). + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` +} + type WindowsFunctionAppSlotSiteConfigAppServiceLogsObservation struct { // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. @@ -1509,6 +2105,33 @@ type WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters struct { RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` } +type WindowsFunctionAppSlotSiteConfigApplicationStackInitParameters struct { + + // The version of .Net. Possible values are v3.0, v4.0, v6.0 and v7.0. Defaults to v4.0. + // The version of .Net. Possible values are `v3.0`, `v4.0`, `v6.0` and `v7.0` + DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` + + // The version of Java to use. Possible values are 1.8, 11 and 17 (In-Preview). + // The version of Java to use. Possible values are `1.8`, `11` and `17` + JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` + + // The version of Node to use. Possible values are ~12, ~14, ~16 and ~18. + // The version of Node to use. Possible values include `12`, `14`, `16` and `18` + NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` + + // The PowerShell Core version to use. Possible values are 7, and 7.2. + // The PowerShell Core version to use. Possible values are `7`, and `7.2` + PowershellCoreVersion *string `json:"powershellCoreVersion,omitempty" tf:"powershell_core_version,omitempty"` + + // Does the Function App use a custom Application Stack? + // Does the Function App use a custom Application Stack? + UseCustomRuntime *bool `json:"useCustomRuntime,omitempty" tf:"use_custom_runtime,omitempty"` + + // Should the DotNet process use an isolated runtime. Defaults to false. + // Should the DotNet process use an isolated runtime. Defaults to `false`. + UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` +} + type WindowsFunctionAppSlotSiteConfigApplicationStackObservation struct { // The version of .Net. Possible values are v3.0, v4.0, v6.0 and v7.0. Defaults to v4.0. @@ -1569,6 +2192,17 @@ type WindowsFunctionAppSlotSiteConfigApplicationStackParameters struct { UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` } +type WindowsFunctionAppSlotSiteConfigCorsInitParameters struct { + + // an allowed_origins block as detailed below. + // Specifies a list of origins that should be allowed to make cross-origin calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // Are credentials allowed in CORS requests? Defaults to false. + // Are credentials allowed in CORS requests? Defaults to `false`. + SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` +} + type WindowsFunctionAppSlotSiteConfigCorsObservation struct { // an allowed_origins block as detailed below. @@ -1593,6 +2227,21 @@ type WindowsFunctionAppSlotSiteConfigCorsParameters struct { SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } +type WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -1627,6 +2276,32 @@ type WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type WindowsFunctionAppSlotSiteConfigIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // a headers block as detailed below. + Headers []WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type WindowsFunctionAppSlotSiteConfigIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -1704,6 +2379,123 @@ type WindowsFunctionAppSlotSiteConfigIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type WindowsFunctionAppSlotSiteConfigInitParameters struct { + + // The URL of the API definition that describes this Windows Function App. + // The URL of the API definition that describes this Windows Function App. + APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` + + // The ID of the API Management API for this Windows Function App. + // The ID of the API Management API for this Windows Function App. + APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` + + // If this Windows Web App is Always On enabled. Defaults to false. + // If this Windows Web App is Always On enabled. Defaults to `false`. + AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` + + // The program and any arguments used to launch this app via the command line. (Example node myapp.js). + // The program and any arguments used to launch this app via the command line. (Example `node myapp.js`). + AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` + + // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` + + // an app_service_logs block as detailed below. + AppServiceLogs []WindowsFunctionAppSlotSiteConfigAppServiceLogsInitParameters `json:"appServiceLogs,omitempty" tf:"app_service_logs,omitempty"` + + // an application_stack block as detailed below. + ApplicationStack []WindowsFunctionAppSlotSiteConfigApplicationStackInitParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` + + // The name of the slot to automatically swap with when this slot is successfully deployed. + AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` + + // a cors block as detailed below. + Cors []WindowsFunctionAppSlotSiteConfigCorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // a default_documents block as detailed below. + // Specifies a list of Default Documents for the Windows Web App. + DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` + + // The number of minimum instances for this Windows Function App. Only affects apps on Elastic Premium plans. + // The number of minimum instances for this Windows Function App. Only affects apps on Elastic Premium plans. + ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` + + // State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to Disabled. + // State of FTP / FTPS service for this function app. Possible values include: `AllAllowed`, `FtpsOnly` and `Disabled`. Defaults to `Disabled`. + FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` + + // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Defaults to 10. Only valid in conjunction with health_check_path + // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` + + // The path to be checked for this function app health. + // The path to be checked for this function app health. + HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` + + // Specifies if the HTTP2 protocol should be enabled. Defaults to false. + // Specifies if the http2 protocol should be enabled. Defaults to `false`. + Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` + + // an ip_restriction block as detailed below. + IPRestriction []WindowsFunctionAppSlotSiteConfigIPRestrictionInitParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` + + // The Site load balancing mode. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + // The Site load balancing mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted. + LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` + + // The Managed Pipeline mode. Possible values include: Integrated, Classic. Defaults to Integrated. + // The Managed Pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`. + ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` + + // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` + + // Should Remote Debugging be enabled. Defaults to false. + // Should Remote Debugging be enabled. Defaults to `false`. + RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` + + // The Remote Debugging Version. Possible values include VS2017, VS2019, and VS2022 + // The Remote Debugging Version. Possible values include `VS2017`, `VS2019`, and `VS2022` + RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` + + // Should Scale Monitoring of the Functions Runtime be enabled? + // Should Functions Runtime Scale Monitoring be enabled. + RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` + + // a scm_ip_restriction block as detailed below. + ScmIPRestriction []WindowsFunctionAppSlotSiteConfigScmIPRestrictionInitParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` + + // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` + + // Should the Windows Function App ip_restriction configuration be used for the SCM also. + // Should the Windows Function App `ip_restriction` configuration be used for the SCM also. + ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` + + // Should the Windows Web App use a 32-bit worker. Defaults to true. + // Should the Windows Web App use a 32-bit worker. + Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` + + // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. + // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` + + // Should Web Sockets be enabled. Defaults to false. + // Should Web Sockets be enabled. Defaults to `false`. + WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` + + // The number of Workers for this Windows Function App. + // The number of Workers for this Windows Function App. + WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` +} + type WindowsFunctionAppSlotSiteConfigObservation struct { // The URL of the API definition that describes this Windows Function App. @@ -1990,6 +2782,21 @@ type WindowsFunctionAppSlotSiteConfigParameters struct { WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } +type WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -2024,6 +2831,32 @@ type WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type WindowsFunctionAppSlotSiteConfigScmIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // a headers block as detailed below. + Headers []WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type WindowsFunctionAppSlotSiteConfigScmIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -2101,6 +2934,9 @@ type WindowsFunctionAppSlotSiteConfigScmIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type WindowsFunctionAppSlotSiteCredentialInitParameters struct { +} + type WindowsFunctionAppSlotSiteCredentialObservation struct { // The Site Credentials Username used for publishing. @@ -2113,6 +2949,24 @@ type WindowsFunctionAppSlotSiteCredentialObservation struct { type WindowsFunctionAppSlotSiteCredentialParameters struct { } +type WindowsFunctionAppSlotStorageAccountInitParameters struct { + + // The Name of the Storage Account. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // The path at which to mount the storage share. + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` + + // The name which should be used for this Storage Account. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Name of the File Share or Container Name for Blob storage. + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` + + // The Azure Storage Type. Possible values include AzureFiles. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsFunctionAppSlotStorageAccountObservation struct { // The Name of the Storage Account. @@ -2138,30 +2992,42 @@ type WindowsFunctionAppSlotStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. - // +kubebuilder:validation:Required - ShareName *string `json:"shareName" tf:"share_name,omitempty"` + // +kubebuilder:validation:Optional + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // WindowsFunctionAppSlotSpec defines the desired state of WindowsFunctionAppSlot type WindowsFunctionAppSlotSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WindowsFunctionAppSlotParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WindowsFunctionAppSlotInitParameters `json:"initProvider,omitempty"` } // WindowsFunctionAppSlotStatus defines the observed state of WindowsFunctionAppSlot. @@ -2182,7 +3048,7 @@ type WindowsFunctionAppSlotStatus struct { type WindowsFunctionAppSlot struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig)",message="siteConfig is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.siteConfig) || has(self.initProvider.siteConfig)",message="siteConfig is a required parameter" Spec WindowsFunctionAppSlotSpec `json:"spec"` Status WindowsFunctionAppSlotStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_windowswebapp_types.go b/apis/web/v1beta1/zz_windowswebapp_types.go index 95c0af8c6..f277bbda5 100755 --- a/apis/web/v1beta1/zz_windowswebapp_types.go +++ b/apis/web/v1beta1/zz_windowswebapp_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type AutoHealSettingTriggerRequestsInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` +} + type AutoHealSettingTriggerRequestsObservation struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. @@ -25,12 +34,27 @@ type AutoHealSettingTriggerRequestsObservation struct { type AutoHealSettingTriggerRequestsParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` +} + +type AutoHealSettingTriggerSlowRequestInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` + + // The path to which this rule status code applies. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. + TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` } type AutoHealSettingTriggerSlowRequestObservation struct { @@ -51,20 +75,41 @@ type AutoHealSettingTriggerSlowRequestObservation struct { type AutoHealSettingTriggerSlowRequestParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. - // +kubebuilder:validation:Required - TimeTaken *string `json:"timeTaken" tf:"time_taken,omitempty"` + // +kubebuilder:validation:Optional + TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` +} + +type AutoHealSettingTriggerStatusCodeInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` + + // The path to which this rule status code applies. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 + StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` + + // The Request Sub Status of the Status Code. + SubStatus *float64 `json:"subStatus,omitempty" tf:"sub_status,omitempty"` + + // The Win32 Status Code of the Request. + Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } type AutoHealSettingTriggerStatusCodeObservation struct { @@ -91,20 +136,20 @@ type AutoHealSettingTriggerStatusCodeObservation struct { type AutoHealSettingTriggerStatusCodeParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 - // +kubebuilder:validation:Required - StatusCodeRange *string `json:"statusCodeRange" tf:"status_code_range,omitempty"` + // +kubebuilder:validation:Optional + StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` // The Request Sub Status of the Status Code. // +kubebuilder:validation:Optional @@ -115,6 +160,15 @@ type AutoHealSettingTriggerStatusCodeParameters struct { Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } +type CustomActionInitParameters struct { + + // The executable to run for the custom_action. + Executable *string `json:"executable,omitempty" tf:"executable,omitempty"` + + // The parameters to pass to the specified executable. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type CustomActionObservation struct { // The executable to run for the custom_action. @@ -127,14 +181,26 @@ type CustomActionObservation struct { type CustomActionParameters struct { // The executable to run for the custom_action. - // +kubebuilder:validation:Required - Executable *string `json:"executable" tf:"executable,omitempty"` + // +kubebuilder:validation:Optional + Executable *string `json:"executable,omitempty" tf:"executable,omitempty"` // The parameters to pass to the specified executable. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type LogsApplicationLogsAzureBlobStorageInitParameters struct { + + // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs + Level *string `json:"level,omitempty" tf:"level,omitempty"` + + // The retention period in days. A values of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // SAS url to an Azure blob container with read/write/list/delete permissions. + SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` +} + type LogsApplicationLogsAzureBlobStorageObservation struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs @@ -150,16 +216,25 @@ type LogsApplicationLogsAzureBlobStorageObservation struct { type LogsApplicationLogsAzureBlobStorageParameters struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs - // +kubebuilder:validation:Required - Level *string `json:"level" tf:"level,omitempty"` + // +kubebuilder:validation:Optional + Level *string `json:"level,omitempty" tf:"level,omitempty"` // The retention period in days. A values of 0 means no retention. - // +kubebuilder:validation:Required - RetentionInDays *float64 `json:"retentionInDays" tf:"retention_in_days,omitempty"` + // +kubebuilder:validation:Optional + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. - // +kubebuilder:validation:Required - SASURL *string `json:"sasUrl" tf:"sas_url,omitempty"` + // +kubebuilder:validation:Optional + SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` +} + +type LogsHTTPLogsFileSystemInitParameters struct { + + // The retention period in days. A values of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // The maximum size in megabytes that log files can use. + RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` } type LogsHTTPLogsFileSystemObservation struct { @@ -174,12 +249,24 @@ type LogsHTTPLogsFileSystemObservation struct { type LogsHTTPLogsFileSystemParameters struct { // The retention period in days. A values of 0 means no retention. - // +kubebuilder:validation:Required - RetentionInDays *float64 `json:"retentionInDays" tf:"retention_in_days,omitempty"` + // +kubebuilder:validation:Optional + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // The maximum size in megabytes that log files can use. - // +kubebuilder:validation:Required - RetentionInMb *float64 `json:"retentionInMb" tf:"retention_in_mb,omitempty"` + // +kubebuilder:validation:Optional + RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` +} + +type SiteConfigAutoHealSettingActionInitParameters struct { + + // Predefined action to be taken to an Auto Heal trigger. Possible values include: Recycle, LogEvent, and CustomAction. + ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` + + // A custom_action block as defined below. + CustomAction []CustomActionInitParameters `json:"customAction,omitempty" tf:"custom_action,omitempty"` + + // The minimum amount of time in hh:mm:ss the Windows Web App must have been running before the defined action will be run in the event of a trigger. + MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` } type SiteConfigAutoHealSettingActionObservation struct { @@ -197,8 +284,8 @@ type SiteConfigAutoHealSettingActionObservation struct { type SiteConfigAutoHealSettingActionParameters struct { // Predefined action to be taken to an Auto Heal trigger. Possible values include: Recycle, LogEvent, and CustomAction. - // +kubebuilder:validation:Required - ActionType *string `json:"actionType" tf:"action_type,omitempty"` + // +kubebuilder:validation:Optional + ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` // A custom_action block as defined below. // +kubebuilder:validation:Optional @@ -209,6 +296,21 @@ type SiteConfigAutoHealSettingActionParameters struct { MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` } +type SiteConfigAutoHealSettingTriggerInitParameters struct { + + // The amount of Private Memory to be consumed for this rule to trigger. Possible values are between 102400 and 13631488. + PrivateMemoryKb *float64 `json:"privateMemoryKb,omitempty" tf:"private_memory_kb,omitempty"` + + // A requests block as defined above. + Requests []AutoHealSettingTriggerRequestsInitParameters `json:"requests,omitempty" tf:"requests,omitempty"` + + // One or more slow_request blocks as defined above. + SlowRequest []AutoHealSettingTriggerSlowRequestInitParameters `json:"slowRequest,omitempty" tf:"slow_request,omitempty"` + + // One or more status_code blocks as defined above. + StatusCode []AutoHealSettingTriggerStatusCodeInitParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` +} + type SiteConfigAutoHealSettingTriggerObservation struct { // The amount of Private Memory to be consumed for this rule to trigger. Possible values are between 102400 and 13631488. @@ -243,6 +345,21 @@ type SiteConfigAutoHealSettingTriggerParameters struct { StatusCode []AutoHealSettingTriggerStatusCodeParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` } +type VirtualApplicationInitParameters struct { + + // The physical path for the Virtual Application. + PhysicalPath *string `json:"physicalPath,omitempty" tf:"physical_path,omitempty"` + + // Should pre-loading be enabled. + Preload *bool `json:"preload,omitempty" tf:"preload,omitempty"` + + // One or more virtual_directory blocks as defined below. + VirtualDirectory []VirtualDirectoryInitParameters `json:"virtualDirectory,omitempty" tf:"virtual_directory,omitempty"` + + // The Virtual Path for the Virtual Application. + VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` +} + type VirtualApplicationObservation struct { // The physical path for the Virtual Application. @@ -261,20 +378,29 @@ type VirtualApplicationObservation struct { type VirtualApplicationParameters struct { // The physical path for the Virtual Application. - // +kubebuilder:validation:Required - PhysicalPath *string `json:"physicalPath" tf:"physical_path,omitempty"` + // +kubebuilder:validation:Optional + PhysicalPath *string `json:"physicalPath,omitempty" tf:"physical_path,omitempty"` // Should pre-loading be enabled. - // +kubebuilder:validation:Required - Preload *bool `json:"preload" tf:"preload,omitempty"` + // +kubebuilder:validation:Optional + Preload *bool `json:"preload,omitempty" tf:"preload,omitempty"` // One or more virtual_directory blocks as defined below. // +kubebuilder:validation:Optional VirtualDirectory []VirtualDirectoryParameters `json:"virtualDirectory,omitempty" tf:"virtual_directory,omitempty"` // The Virtual Path for the Virtual Application. - // +kubebuilder:validation:Required - VirtualPath *string `json:"virtualPath" tf:"virtual_path,omitempty"` + // +kubebuilder:validation:Optional + VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` +} + +type VirtualDirectoryInitParameters struct { + + // The physical path for the Virtual Application. + PhysicalPath *string `json:"physicalPath,omitempty" tf:"physical_path,omitempty"` + + // The Virtual Path for the Virtual Application. + VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` } type VirtualDirectoryObservation struct { @@ -297,6 +423,21 @@ type VirtualDirectoryParameters struct { VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` } +type WindowsWebAppAuthSettingsActiveDirectoryInitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type WindowsWebAppAuthSettingsActiveDirectoryObservation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -321,8 +462,8 @@ type WindowsWebAppAuthSettingsActiveDirectoryParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret for the Client ID. Cannot be used with `client_secret_setting_name`. @@ -335,6 +476,21 @@ type WindowsWebAppAuthSettingsActiveDirectoryParameters struct { ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } +type WindowsWebAppAuthSettingsFacebookInitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsWebAppAuthSettingsFacebookObservation struct { // The App ID of the Facebook app used for login. @@ -354,8 +510,8 @@ type WindowsWebAppAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. // The App Secret of the Facebook app used for Facebook Login. Cannot be specified with `app_secret_setting_name`. @@ -373,6 +529,21 @@ type WindowsWebAppAuthSettingsFacebookParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type WindowsWebAppAuthSettingsGithubInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsWebAppAuthSettingsGithubObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -392,8 +563,8 @@ type WindowsWebAppAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret of the GitHub app used for GitHub Login. Cannot be specified with `client_secret_setting_name`. @@ -411,7 +582,7 @@ type WindowsWebAppAuthSettingsGithubParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } -type WindowsWebAppAuthSettingsGoogleObservation struct { +type WindowsWebAppAuthSettingsGoogleInitParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. @@ -426,71 +597,158 @@ type WindowsWebAppAuthSettingsGoogleObservation struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } -type WindowsWebAppAuthSettingsGoogleParameters struct { +type WindowsWebAppAuthSettingsGoogleObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` - - // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. - // The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. - // +kubebuilder:validation:Optional - ClientSecretSecretRef *v1.SecretKeySelector `json:"clientSecretSecretRef,omitempty" tf:"-"` + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. - // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. - // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } -type WindowsWebAppAuthSettingsMicrosoftObservation struct { +type WindowsWebAppAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. - // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` - // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. - ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` - - // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. - // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. - OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` -} - -type WindowsWebAppAuthSettingsMicrosoftParameters struct { - - // The OAuth 2.0 client ID that was created for the app used for authentication. - // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` - // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. - // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret_setting_name`. + // The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. // +kubebuilder:validation:Optional ClientSecretSecretRef *v1.SecretKeySelector `json:"clientSecretSecretRef,omitempty" tf:"-"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. - // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } -type WindowsWebAppAuthSettingsObservation struct { +type WindowsWebAppAuthSettingsInitParameters struct { // An active_directory block as defined above. - ActiveDirectory []WindowsWebAppAuthSettingsActiveDirectoryObservation `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + ActiveDirectory []WindowsWebAppAuthSettingsActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` + + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github + // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // Should the Authentication / Authorization feature is enabled for the Windows Web App be enabled? + // Should the Authentication / Authorization feature be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A facebook block as defined below. + Facebook []WindowsWebAppAuthSettingsFacebookInitParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` + + // A github block as defined below. + Github []WindowsWebAppAuthSettingsGithubInitParameters `json:"github,omitempty" tf:"github,omitempty"` + + // A google block as defined below. + Google []WindowsWebAppAuthSettingsGoogleInitParameters `json:"google,omitempty" tf:"google,omitempty"` + + // The OpenID Connect Issuer URI that represents the entity which issues access tokens for this Windows Web App. + // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // A microsoft block as defined below. + Microsoft []WindowsWebAppAuthSettingsMicrosoftInitParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` + + // The RuntimeVersion of the Authentication / Authorization feature in use for the Windows Web App. + // The RuntimeVersion of the Authentication / Authorization feature in use. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` + + // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. + // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // A twitter block as defined below. + Twitter []WindowsWebAppAuthSettingsTwitterInitParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` + + // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. + // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` +} + +type WindowsWebAppAuthSettingsMicrosoftInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + +type WindowsWebAppAuthSettingsMicrosoftObservation struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + +type WindowsWebAppAuthSettingsMicrosoftParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. + // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret_setting_name`. + // +kubebuilder:validation:Optional + ClientSecretSecretRef *v1.SecretKeySelector `json:"clientSecretSecretRef,omitempty" tf:"-"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + // +kubebuilder:validation:Optional + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + +type WindowsWebAppAuthSettingsObservation struct { + + // An active_directory block as defined above. + ActiveDirectory []WindowsWebAppAuthSettingsActiveDirectoryObservation `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. @@ -567,8 +825,8 @@ type WindowsWebAppAuthSettingsParameters struct { // Should the Authentication / Authorization feature is enabled for the Windows Web App be enabled? // Should the Authentication / Authorization feature be enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. // +kubebuilder:validation:Optional @@ -616,6 +874,17 @@ type WindowsWebAppAuthSettingsParameters struct { UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } +type WindowsWebAppAuthSettingsTwitterInitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type WindowsWebAppAuthSettingsTwitterObservation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -631,8 +900,8 @@ type WindowsWebAppAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret_setting_name`. @@ -645,6 +914,57 @@ type WindowsWebAppAuthSettingsTwitterParameters struct { ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } +type WindowsWebAppAuthSettingsV2ActiveDirectoryV2InitParameters struct { + + // The list of allowed Applications for the Default Authorisation Policy. + // The list of allowed Applications for the Default Authorisation Policy. + AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The list of allowed Group Names for the Default Authorisation Policy. + // The list of allowed Group Names for the Default Authorisation Policy. + AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` + + // The list of allowed Identities for the Default Authorisation Policy. + // The list of allowed Identities for the Default Authorisation Policy. + AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The thumbprint of the certificate used for signing purposes. + // The thumbprint of the certificate used for signing purposes. + ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // A list of Allowed Client Applications in the JWT Claim. + // A list of Allowed Client Applications in the JWT Claim. + JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` + + // A list of Allowed Groups in the JWT Claim. + // A list of Allowed Groups in the JWT Claim. + JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` + + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` + + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` + + // Should the www-authenticate provider should be omitted from the request? Defaults to false + // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` +} + type WindowsWebAppAuthSettingsV2ActiveDirectoryV2Observation struct { // The list of allowed Applications for the Default Authorisation Policy. @@ -720,8 +1040,8 @@ type WindowsWebAppAuthSettingsV2ActiveDirectoryV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. @@ -750,8 +1070,8 @@ type WindowsWebAppAuthSettingsV2ActiveDirectoryV2Parameters struct { // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. - // +kubebuilder:validation:Required - TenantAuthEndpoint *string `json:"tenantAuthEndpoint" tf:"tenant_auth_endpoint,omitempty"` + // +kubebuilder:validation:Optional + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` @@ -759,6 +1079,17 @@ type WindowsWebAppAuthSettingsV2ActiveDirectoryV2Parameters struct { WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } +type WindowsWebAppAuthSettingsV2AppleV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type WindowsWebAppAuthSettingsV2AppleV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -777,13 +1108,20 @@ type WindowsWebAppAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + +type WindowsWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } type WindowsWebAppAuthSettingsV2AzureStaticWebAppV2Observation struct { @@ -797,8 +1135,31 @@ type WindowsWebAppAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + +type WindowsWebAppAuthSettingsV2CustomOidcV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with this Custom OIDC. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The name which should be used for this TODO. + // The name of the Custom OIDC Authentication Provider. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The name of the claim that contains the users name. + // The name of the claim that contains the users name. + NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` + + // The app setting name that contains the client_secret value used for the Custom OIDC Login. + // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` + + // The list of the scopes that should be requested while authenticating. + // The list of the scopes that should be requested while authenticating. + Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } type WindowsWebAppAuthSettingsV2CustomOidcV2Observation struct { @@ -852,13 +1213,13 @@ type WindowsWebAppAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this TODO. // The name of the Custom OIDC Authentication Provider. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. @@ -867,8 +1228,8 @@ type WindowsWebAppAuthSettingsV2CustomOidcV2Parameters struct { // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. - // +kubebuilder:validation:Required - OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint" tf:"openid_configuration_endpoint,omitempty"` + // +kubebuilder:validation:Optional + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. @@ -876,6 +1237,25 @@ type WindowsWebAppAuthSettingsV2CustomOidcV2Parameters struct { Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } +type WindowsWebAppAuthSettingsV2FacebookV2InitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // The version of the Facebook API to be used while logging in. + // The version of the Facebook API to be used while logging in. + GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of scopes to be requested as part of Facebook Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsWebAppAuthSettingsV2FacebookV2Observation struct { // The App ID of the Facebook app used for login. @@ -899,13 +1279,13 @@ type WindowsWebAppAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. - // +kubebuilder:validation:Required - AppSecretSettingName *string `json:"appSecretSettingName" tf:"app_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. @@ -918,6 +1298,21 @@ type WindowsWebAppAuthSettingsV2FacebookV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type WindowsWebAppAuthSettingsV2GithubV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsWebAppAuthSettingsV2GithubV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -937,13 +1332,13 @@ type WindowsWebAppAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. @@ -951,6 +1346,25 @@ type WindowsWebAppAuthSettingsV2GithubV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type WindowsWebAppAuthSettingsV2GoogleV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsWebAppAuthSettingsV2GoogleV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -979,13 +1393,13 @@ type WindowsWebAppAuthSettingsV2GoogleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. @@ -993,6 +1407,134 @@ type WindowsWebAppAuthSettingsV2GoogleV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type WindowsWebAppAuthSettingsV2InitParameters struct { + + // An active_directory_v2 block as defined below. + ActiveDirectoryV2 []WindowsWebAppAuthSettingsV2ActiveDirectoryV2InitParameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` + + // An apple_v2 block as defined below. + AppleV2 []WindowsWebAppAuthSettingsV2AppleV2InitParameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` + + // Should the AuthV2 Settings be enabled. Defaults to false. + // Should the AuthV2 Settings be enabled. Defaults to `false` + AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` + + // An azure_static_web_app_v2 block as defined below. + AzureStaticWebAppV2 []WindowsWebAppAuthSettingsV2AzureStaticWebAppV2InitParameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` + + // The path to the App Auth settings. + // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` + + // Zero or more custom_oidc_v2 blocks as defined below. + CustomOidcV2 []WindowsWebAppAuthSettingsV2CustomOidcV2InitParameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` + + // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. + // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. + // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` + + // A facebook_v2 block as defined below. + FacebookV2 []WindowsWebAppAuthSettingsV2FacebookV2InitParameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` + + // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. + // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` + + // The name of the custom header containing the host of the request. + // The name of the header containing the host of the request. + ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` + + // The name of the custom header containing the scheme of the request. + // The name of the header containing the scheme of the request. + ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` + + // A github_v2 block as defined below. + GithubV2 []WindowsWebAppAuthSettingsV2GithubV2InitParameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` + + // A google_v2 block as defined below. + GoogleV2 []WindowsWebAppAuthSettingsV2GoogleV2InitParameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` + + // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. + // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` + + // A login block as defined below. + Login []WindowsWebAppAuthSettingsV2LoginInitParameters `json:"login,omitempty" tf:"login,omitempty"` + + // A microsoft_v2 block as defined below. + MicrosoftV2 []WindowsWebAppAuthSettingsV2MicrosoftV2InitParameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` + + // Should the authentication flow be used for all requests. + // Should the authentication flow be used for all requests. + RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` + + // Should HTTPS be required on connections? Defaults to true. + // Should HTTPS be required on connections? Defaults to true. + RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` + + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // A twitter_v2 block as defined below. + TwitterV2 []WindowsWebAppAuthSettingsV2TwitterV2InitParameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` + + // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. + // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` +} + +type WindowsWebAppAuthSettingsV2LoginInitParameters struct { + + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. + // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` + + // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. + // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` + + // The endpoint to which logout requests should be made. + // The endpoint to which logout requests should be made. + LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` + + // The time after the request is made when the nonce should expire. Defaults to 00:05:00. + // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` + + // Should the fragments from the request be preserved after the login request is made. Defaults to false. + // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` + + // Should the Token Store configuration Enabled. Defaults to false + // Should the Token Store configuration Enabled. Defaults to `false` + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // The directory path in the App Filesystem in which the tokens will be stored. + // The directory path in the App Filesystem in which the tokens will be stored. + TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` + + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` + + // Should the nonce be validated while completing the login flow. Defaults to true. + // Should the nonce be validated while completing the login flow. Defaults to `true`. + ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` +} + type WindowsWebAppAuthSettingsV2LoginObservation struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. @@ -1087,15 +1629,34 @@ type WindowsWebAppAuthSettingsV2LoginParameters struct { // +kubebuilder:validation:Optional TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` - // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. - // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. - // +kubebuilder:validation:Optional - TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // +kubebuilder:validation:Optional + TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` + + // Should the nonce be validated while completing the login flow. Defaults to true. + // Should the nonce be validated while completing the login flow. Defaults to `true`. + // +kubebuilder:validation:Optional + ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` +} + +type WindowsWebAppAuthSettingsV2MicrosoftV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` - // Should the nonce be validated while completing the login flow. Defaults to true. - // Should the nonce be validated while completing the login flow. Defaults to `true`. - // +kubebuilder:validation:Optional - ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // The list of Login scopes that will be requested as part of Microsoft Account authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } type WindowsWebAppAuthSettingsV2MicrosoftV2Observation struct { @@ -1126,13 +1687,13 @@ type WindowsWebAppAuthSettingsV2MicrosoftV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. @@ -1292,8 +1853,8 @@ type WindowsWebAppAuthSettingsV2Parameters struct { HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. - // +kubebuilder:validation:Required - Login []WindowsWebAppAuthSettingsV2LoginParameters `json:"login" tf:"login,omitempty"` + // +kubebuilder:validation:Optional + Login []WindowsWebAppAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. // +kubebuilder:validation:Optional @@ -1324,6 +1885,17 @@ type WindowsWebAppAuthSettingsV2Parameters struct { UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } +type WindowsWebAppAuthSettingsV2TwitterV2InitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type WindowsWebAppAuthSettingsV2TwitterV2Observation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -1339,13 +1911,27 @@ type WindowsWebAppAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerSecretSettingName *string `json:"consumerSecretSettingName" tf:"consumer_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + +type WindowsWebAppBackupInitParameters struct { + + // Should this backup job be enabled? Defaults to true. + // Should this backup job be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name which should be used for this Backup. + // The name which should be used for this Backup. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A schedule block as defined below. + Schedule []WindowsWebAppBackupScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` } type WindowsWebAppBackupObservation struct { @@ -1371,12 +1957,12 @@ type WindowsWebAppBackupParameters struct { // The name which should be used for this Backup. // The name which should be used for this Backup. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A schedule block as defined below. - // +kubebuilder:validation:Required - Schedule []WindowsWebAppBackupScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []WindowsWebAppBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. // The SAS URL to the container. @@ -1384,6 +1970,29 @@ type WindowsWebAppBackupParameters struct { StorageAccountURLSecretRef v1.SecretKeySelector `json:"storageAccountUrlSecretRef" tf:"-"` } +type WindowsWebAppBackupScheduleInitParameters struct { + + // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). + // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` + + // The unit of time for how often the backup should take place. Possible values include: Day, Hour + // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` + + // Should the service keep at least one backup, regardless of age of backup. Defaults to false. + // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // After how many days backups should be deleted. + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` + + // When the schedule should start working in RFC-3339 format. + // When the schedule should start working in RFC-3339 format. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type WindowsWebAppBackupScheduleObservation struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). @@ -1414,13 +2023,13 @@ type WindowsWebAppBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). - // +kubebuilder:validation:Required - FrequencyInterval *float64 `json:"frequencyInterval" tf:"frequency_interval,omitempty"` + // +kubebuilder:validation:Optional + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day, Hour // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. - // +kubebuilder:validation:Required - FrequencyUnit *string `json:"frequencyUnit" tf:"frequency_unit,omitempty"` + // +kubebuilder:validation:Optional + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. @@ -1438,6 +2047,17 @@ type WindowsWebAppBackupScheduleParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type WindowsWebAppConnectionStringInitParameters struct { + + // The name of the Connection String. + // The name which should be used for this Connection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsWebAppConnectionStringObservation struct { // The name of the Connection String. @@ -1453,13 +2073,13 @@ type WindowsWebAppConnectionStringParameters struct { // The name of the Connection String. // The name which should be used for this Connection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. // The connection string value. @@ -1467,6 +2087,15 @@ type WindowsWebAppConnectionStringParameters struct { ValueSecretRef v1.SecretKeySelector `json:"valueSecretRef" tf:"-"` } +type WindowsWebAppIdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Windows Web App. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Windows Web App. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsWebAppIdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this Windows Web App. @@ -1489,8 +2118,82 @@ type WindowsWebAppIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Web App. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WindowsWebAppInitParameters struct { + + // A map of key-value pairs of App Settings. + AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` + + // An auth_settings block as defined below. + AuthSettings []WindowsWebAppAuthSettingsInitParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` + + // An auth_settings_v2 block as defined below. + AuthSettingsV2 []WindowsWebAppAuthSettingsV2InitParameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` + + // A backup block as defined below. + Backup []WindowsWebAppBackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // Should Client Affinity be enabled? + ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty" tf:"client_affinity_enabled,omitempty"` + + // Should Client Certificates be enabled? + ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` + + // Paths to exclude when using client certificates, separated by ; + // Paths to exclude when using client certificates, separated by ; + ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` + + // The Client Certificate mode. Possible values are Required, Optional, and OptionalInteractiveUser. This property has no effect when client_cert_enabled is false + ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` + + // One or more connection_string blocks as defined below. + ConnectionString []WindowsWebAppConnectionStringInitParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // Should the Windows Web App be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Should the Windows Web App require HTTPS connections. + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // An identity block as defined below. + Identity []WindowsWebAppIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity + KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` + + // The Azure Region where the Windows Web App should exist. Changing this forces a new Windows Web App to be created. + Location *string `json:"location,omitempty" tf:"location,omitempty"` + + // A logs block as defined below. + Logs []WindowsWebAppLogsInitParameters `json:"logs,omitempty" tf:"logs,omitempty"` + + // A site_config block as defined below. + SiteConfig []WindowsWebAppSiteConfigInitParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` + + // A sticky_settings block as defined below. + StickySettings []WindowsWebAppStickySettingsInitParameters `json:"stickySettings,omitempty" tf:"sticky_settings,omitempty"` + + // One or more storage_account blocks as defined below. + StorageAccount []WindowsWebAppStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // A mapping of tags which should be assigned to the Windows Web App. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The local path and filename of the Zip packaged application to deploy to this Windows Web App. + // The local path and filename of the Zip packaged application to deploy to this Windows Web App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App in `app_settings`. + ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` +} + +type WindowsWebAppLogsApplicationLogsInitParameters struct { + + // A azure_blob_storage_http block as defined above. + AzureBlobStorage []LogsApplicationLogsAzureBlobStorageInitParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` + + // Log level. Possible values include: Verbose, Information, Warning, and Error. + FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` } type WindowsWebAppLogsApplicationLogsObservation struct { @@ -1509,8 +2212,14 @@ type WindowsWebAppLogsApplicationLogsParameters struct { AzureBlobStorage []LogsApplicationLogsAzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // Log level. Possible values include: Verbose, Information, Warning, and Error. - // +kubebuilder:validation:Required - FileSystemLevel *string `json:"fileSystemLevel" tf:"file_system_level,omitempty"` + // +kubebuilder:validation:Optional + FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` +} + +type WindowsWebAppLogsHTTPLogsAzureBlobStorageInitParameters struct { + + // The retention period in days. A values of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` } type WindowsWebAppLogsHTTPLogsAzureBlobStorageObservation struct { @@ -1530,6 +2239,15 @@ type WindowsWebAppLogsHTTPLogsAzureBlobStorageParameters struct { SASURLSecretRef v1.SecretKeySelector `json:"sasurlSecretRef" tf:"-"` } +type WindowsWebAppLogsHTTPLogsInitParameters struct { + + // A azure_blob_storage_http block as defined above. + AzureBlobStorage []WindowsWebAppLogsHTTPLogsAzureBlobStorageInitParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` + + // A file_system block as defined above. + FileSystem []LogsHTTPLogsFileSystemInitParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` +} + type WindowsWebAppLogsHTTPLogsObservation struct { // A azure_blob_storage_http block as defined above. @@ -1550,6 +2268,21 @@ type WindowsWebAppLogsHTTPLogsParameters struct { FileSystem []LogsHTTPLogsFileSystemParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` } +type WindowsWebAppLogsInitParameters struct { + + // A application_logs block as defined above. + ApplicationLogs []WindowsWebAppLogsApplicationLogsInitParameters `json:"applicationLogs,omitempty" tf:"application_logs,omitempty"` + + // Should detailed error messages be enabled. + DetailedErrorMessages *bool `json:"detailedErrorMessages,omitempty" tf:"detailed_error_messages,omitempty"` + + // Should tracing be enabled for failed requests. + FailedRequestTracing *bool `json:"failedRequestTracing,omitempty" tf:"failed_request_tracing,omitempty"` + + // A http_logs block as defined above. + HTTPLogs []WindowsWebAppLogsHTTPLogsInitParameters `json:"httpLogs,omitempty" tf:"http_logs,omitempty"` +} + type WindowsWebAppLogsObservation struct { // A application_logs block as defined above. @@ -1780,32 +2513,79 @@ type WindowsWebAppParameters struct { // +kubebuilder:validation:Optional StickySettings []WindowsWebAppStickySettingsParameters `json:"stickySettings,omitempty" tf:"sticky_settings,omitempty"` - // One or more storage_account blocks as defined below. - // +kubebuilder:validation:Optional - StorageAccount []WindowsWebAppStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + // One or more storage_account blocks as defined below. + // +kubebuilder:validation:Optional + StorageAccount []WindowsWebAppStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // A mapping of tags which should be assigned to the Windows Web App. + // +kubebuilder:validation:Optional + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The subnet id which will be used by this Web App for regional virtual network integration. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet + // +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID() + // +kubebuilder:validation:Optional + VirtualNetworkSubnetID *string `json:"virtualNetworkSubnetId,omitempty" tf:"virtual_network_subnet_id,omitempty"` + + // Reference to a Subnet in network to populate virtualNetworkSubnetId. + // +kubebuilder:validation:Optional + VirtualNetworkSubnetIDRef *v1.Reference `json:"virtualNetworkSubnetIdRef,omitempty" tf:"-"` + + // Selector for a Subnet in network to populate virtualNetworkSubnetId. + // +kubebuilder:validation:Optional + VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` + + // The local path and filename of the Zip packaged application to deploy to this Windows Web App. + // The local path and filename of the Zip packaged application to deploy to this Windows Web App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App in `app_settings`. + // +kubebuilder:validation:Optional + ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` +} + +type WindowsWebAppSiteConfigApplicationStackInitParameters struct { + + // The Application Stack for the Windows Web App. Possible values include dotnet, dotnetcore, node, python, php, and java. + CurrentStack *string `json:"currentStack,omitempty" tf:"current_stack,omitempty"` + + // The name of the Docker Container. For example azure-app-service/samples/aspnethelloworld + DockerContainerName *string `json:"dockerContainerName,omitempty" tf:"docker_container_name,omitempty"` + + // The registry Host on which the specified Docker Container can be located. For example mcr.microsoft.com + DockerContainerRegistry *string `json:"dockerContainerRegistry,omitempty" tf:"docker_container_registry,omitempty"` + + // The Image Tag of the specified Docker Container to use. For example latest + DockerContainerTag *string `json:"dockerContainerTag,omitempty" tf:"docker_container_tag,omitempty"` + + // The version of .NET to use when current_stack is set to dotnetcore. Possible values include v4.0. + // The version of DotNetCore to use. + DotnetCoreVersion *string `json:"dotnetCoreVersion,omitempty" tf:"dotnet_core_version,omitempty"` + + // The version of .NET to use when current_stack is set to dotnet. Possible values include v2.0,v3.0, v4.0, v5.0, v6.0 and v7.0. + DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` + + JavaContainer *string `json:"javaContainer,omitempty" tf:"java_container,omitempty"` + + JavaContainerVersion *string `json:"javaContainerVersion,omitempty" tf:"java_container_version,omitempty"` + + // Should the Java Embedded Server (Java SE) be used to run the app. + // Should the application use the embedded web server for the version of Java in use. + JavaEmbeddedServerEnabled *bool `json:"javaEmbeddedServerEnabled,omitempty" tf:"java_embedded_server_enabled,omitempty"` + + // The version of Java to use when current_stack is set to java. + JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` - // A mapping of tags which should be assigned to the Windows Web App. - // +kubebuilder:validation:Optional - Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + // The version of node to use when current_stack is set to node. Possible values are ~12, ~14, ~16, and ~18. + NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` - // The subnet id which will be used by this Web App for regional virtual network integration. - // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet - // +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID() - // +kubebuilder:validation:Optional - VirtualNetworkSubnetID *string `json:"virtualNetworkSubnetId,omitempty" tf:"virtual_network_subnet_id,omitempty"` + // The version of PHP to use when current_stack is set to php. Possible values are 7.1, 7.4 and Off. + PHPVersion *string `json:"phpVersion,omitempty" tf:"php_version,omitempty"` - // Reference to a Subnet in network to populate virtualNetworkSubnetId. - // +kubebuilder:validation:Optional - VirtualNetworkSubnetIDRef *v1.Reference `json:"virtualNetworkSubnetIdRef,omitempty" tf:"-"` + // Specifies whether this is a Python app. Defaults to false. + Python *bool `json:"python,omitempty" tf:"python,omitempty"` - // Selector for a Subnet in network to populate virtualNetworkSubnetId. - // +kubebuilder:validation:Optional - VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` + PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` - // The local path and filename of the Zip packaged application to deploy to this Windows Web App. - // The local path and filename of the Zip packaged application to deploy to this Windows Web App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App in `app_settings`. - // +kubebuilder:validation:Optional - ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` + // The version of Tomcat the Java App should use. Conflicts with java_embedded_server_enabled + TomcatVersion *string `json:"tomcatVersion,omitempty" tf:"tomcat_version,omitempty"` } type WindowsWebAppSiteConfigApplicationStackObservation struct { @@ -1917,6 +2697,15 @@ type WindowsWebAppSiteConfigApplicationStackParameters struct { TomcatVersion *string `json:"tomcatVersion,omitempty" tf:"tomcat_version,omitempty"` } +type WindowsWebAppSiteConfigAutoHealSettingInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + Action []SiteConfigAutoHealSettingActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // A trigger block as defined below. + Trigger []SiteConfigAutoHealSettingTriggerInitParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` +} + type WindowsWebAppSiteConfigAutoHealSettingObservation struct { // The action to take. Possible values are Allow or Deny. @@ -1929,12 +2718,23 @@ type WindowsWebAppSiteConfigAutoHealSettingObservation struct { type WindowsWebAppSiteConfigAutoHealSettingParameters struct { // The action to take. Possible values are Allow or Deny. - // +kubebuilder:validation:Required - Action []SiteConfigAutoHealSettingActionParameters `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action []SiteConfigAutoHealSettingActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A trigger block as defined below. - // +kubebuilder:validation:Required - Trigger []SiteConfigAutoHealSettingTriggerParameters `json:"trigger" tf:"trigger,omitempty"` + // +kubebuilder:validation:Optional + Trigger []SiteConfigAutoHealSettingTriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` +} + +type WindowsWebAppSiteConfigCorsInitParameters struct { + + // Specifies a list of origins that should be allowed to make cross-origin calls. + // Specifies a list of origins that should be allowed to make cross-origin calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // Whether CORS requests with credentials are allowed. Defaults to false + // Are credentials allowed in CORS requests? Defaults to `false`. + SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } type WindowsWebAppSiteConfigCorsObservation struct { @@ -1961,6 +2761,21 @@ type WindowsWebAppSiteConfigCorsParameters struct { SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } +type WindowsWebAppSiteConfigIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type WindowsWebAppSiteConfigIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -1995,6 +2810,32 @@ type WindowsWebAppSiteConfigIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type WindowsWebAppSiteConfigIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []WindowsWebAppSiteConfigIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this TODO. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type WindowsWebAppSiteConfigIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -2072,6 +2913,101 @@ type WindowsWebAppSiteConfigIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type WindowsWebAppSiteConfigInitParameters struct { + + // The URL to the API Definition for this Windows Web App. + APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` + + // The API Management API ID this Windows Web App Slot is associated with. + APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` + + // If this Windows Web App is Always On enabled. Defaults to true. + AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` + + // The App command line to launch. + AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` + + // A application_stack block as defined above. + ApplicationStack []WindowsWebAppSiteConfigApplicationStackInitParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` + + // Should Auto heal rules be enabled. Required with auto_heal_setting. + AutoHealEnabled *bool `json:"autoHealEnabled,omitempty" tf:"auto_heal_enabled,omitempty"` + + // A auto_heal_setting block as defined above. Required with auto_heal. + AutoHealSetting []WindowsWebAppSiteConfigAutoHealSettingInitParameters `json:"autoHealSetting,omitempty" tf:"auto_heal_setting,omitempty"` + + // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` + + // Should connections for Azure Container Registry use Managed Identity. + ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` + + // A cors block as defined above. + Cors []WindowsWebAppSiteConfigCorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // Specifies a list of Default Documents for the Windows Web App. + DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` + + // The State of FTP / FTPS service. Possible values include: AllAllowed, FtpsOnly, Disabled. + FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` + + // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. + // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` + + // The path to the Health Check. + HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` + + // Should the HTTP2 be enabled? + Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` + + // One or more ip_restriction blocks as defined above. + IPRestriction []WindowsWebAppSiteConfigIPRestrictionInitParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` + + // The Site load balancing. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` + + // Use Local MySQL. Defaults to false. + LocalMySQLEnabled *bool `json:"localMysqlEnabled,omitempty" tf:"local_mysql_enabled,omitempty"` + + // Managed pipeline mode. Possible values include: Integrated, Classic. + ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` + + // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // Should Remote Debugging be enabled. Defaults to false. + RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` + + // The Remote Debugging Version. Possible values include VS2017 and VS2019 + RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` + + // One or more scm_ip_restriction blocks as defined above. + ScmIPRestriction []WindowsWebAppSiteConfigScmIPRestrictionInitParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` + + // The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` + + // Should the Windows Web App ip_restriction configuration be used for the SCM also. + ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` + + // Should the Windows Web App use a 32-bit worker. Defaults to true. + Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` + + // One or more virtual_application blocks as defined below. + VirtualApplication []VirtualApplicationInitParameters `json:"virtualApplication,omitempty" tf:"virtual_application,omitempty"` + + // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. + // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` + + // Should Web Sockets be enabled. Defaults to false. + WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` + + // The number of Workers for this Windows App Service. + WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` +} + type WindowsWebAppSiteConfigObservation struct { // The URL to the API Definition for this Windows Web App. @@ -2301,6 +3237,21 @@ type WindowsWebAppSiteConfigParameters struct { WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } +type WindowsWebAppSiteConfigScmIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type WindowsWebAppSiteConfigScmIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -2335,6 +3286,32 @@ type WindowsWebAppSiteConfigScmIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type WindowsWebAppSiteConfigScmIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []WindowsWebAppSiteConfigScmIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this TODO. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type WindowsWebAppSiteConfigScmIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -2412,6 +3389,9 @@ type WindowsWebAppSiteConfigScmIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type WindowsWebAppSiteCredentialInitParameters struct { +} + type WindowsWebAppSiteCredentialObservation struct { // The Site Credentials Username used for publishing. @@ -2424,6 +3404,15 @@ type WindowsWebAppSiteCredentialObservation struct { type WindowsWebAppSiteCredentialParameters struct { } +type WindowsWebAppStickySettingsInitParameters struct { + + // A list of app_setting names that the Windows Web App will not swap between Slots when a swap operation is triggered. + AppSettingNames []*string `json:"appSettingNames,omitempty" tf:"app_setting_names,omitempty"` + + // A list of connection_string names that the Windows Web App will not swap between Slots when a swap operation is triggered. + ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` +} + type WindowsWebAppStickySettingsObservation struct { // A list of app_setting names that the Windows Web App will not swap between Slots when a swap operation is triggered. @@ -2444,6 +3433,24 @@ type WindowsWebAppStickySettingsParameters struct { ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` } +type WindowsWebAppStorageAccountInitParameters struct { + + // The Name of the Storage Account. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // The path at which to mount the storage share. + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` + + // The name which should be used for this TODO. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Name of the File Share or Container Name for Blob storage. + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` + + // The Azure Storage Type. Possible values include AzureFiles and AzureBlob + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsWebAppStorageAccountObservation struct { // The Name of the Storage Account. @@ -2469,30 +3476,42 @@ type WindowsWebAppStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this TODO. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. - // +kubebuilder:validation:Required - ShareName *string `json:"shareName" tf:"share_name,omitempty"` + // +kubebuilder:validation:Optional + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // WindowsWebAppSpec defines the desired state of WindowsWebApp type WindowsWebAppSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WindowsWebAppParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WindowsWebAppInitParameters `json:"initProvider,omitempty"` } // WindowsWebAppStatus defines the observed state of WindowsWebApp. @@ -2513,8 +3532,8 @@ type WindowsWebAppStatus struct { type WindowsWebApp struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location)",message="location is a required parameter" - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig)",message="siteConfig is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || has(self.initProvider.location)",message="location is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.siteConfig) || has(self.initProvider.siteConfig)",message="siteConfig is a required parameter" Spec WindowsWebAppSpec `json:"spec"` Status WindowsWebAppStatus `json:"status,omitempty"` } diff --git a/apis/web/v1beta1/zz_windowswebappslot_types.go b/apis/web/v1beta1/zz_windowswebappslot_types.go index 7d8e676e3..e0ab29891 100755 --- a/apis/web/v1beta1/zz_windowswebappslot_types.go +++ b/apis/web/v1beta1/zz_windowswebappslot_types.go @@ -13,6 +13,15 @@ import ( v1 "github.com/crossplane/crossplane-runtime/apis/common/v1" ) +type ActionCustomActionInitParameters struct { + + // The executable to run for the custom_action. + Executable *string `json:"executable,omitempty" tf:"executable,omitempty"` + + // The parameters to pass to the specified executable. + Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` +} + type ActionCustomActionObservation struct { // The executable to run for the custom_action. @@ -25,14 +34,23 @@ type ActionCustomActionObservation struct { type ActionCustomActionParameters struct { // The executable to run for the custom_action. - // +kubebuilder:validation:Required - Executable *string `json:"executable" tf:"executable,omitempty"` + // +kubebuilder:validation:Optional + Executable *string `json:"executable,omitempty" tf:"executable,omitempty"` // The parameters to pass to the specified executable. // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` } +type SiteConfigAutoHealSettingTriggerRequestsInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` +} + type SiteConfigAutoHealSettingTriggerRequestsObservation struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. @@ -45,12 +63,27 @@ type SiteConfigAutoHealSettingTriggerRequestsObservation struct { type SiteConfigAutoHealSettingTriggerRequestsParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` +} + +type SiteConfigAutoHealSettingTriggerSlowRequestInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` + + // The path to which this rule status code applies. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. + TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` } type SiteConfigAutoHealSettingTriggerSlowRequestObservation struct { @@ -71,20 +104,41 @@ type SiteConfigAutoHealSettingTriggerSlowRequestObservation struct { type SiteConfigAutoHealSettingTriggerSlowRequestParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. - // +kubebuilder:validation:Required - TimeTaken *string `json:"timeTaken" tf:"time_taken,omitempty"` + // +kubebuilder:validation:Optional + TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` +} + +type SiteConfigAutoHealSettingTriggerStatusCodeInitParameters struct { + + // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` + + // The time interval in the form hh:mm:ss. + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` + + // The path to which this rule status code applies. + Path *string `json:"path,omitempty" tf:"path,omitempty"` + + // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 + StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` + + // The Request Sub Status of the Status Code. + SubStatus *float64 `json:"subStatus,omitempty" tf:"sub_status,omitempty"` + + // The Win32 Status Code of the Request. + Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } type SiteConfigAutoHealSettingTriggerStatusCodeObservation struct { @@ -111,20 +165,20 @@ type SiteConfigAutoHealSettingTriggerStatusCodeObservation struct { type SiteConfigAutoHealSettingTriggerStatusCodeParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. - // +kubebuilder:validation:Required - Count *float64 `json:"count" tf:"count,omitempty"` + // +kubebuilder:validation:Optional + Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. - // +kubebuilder:validation:Required - Interval *string `json:"interval" tf:"interval,omitempty"` + // +kubebuilder:validation:Optional + Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 - // +kubebuilder:validation:Required - StatusCodeRange *string `json:"statusCodeRange" tf:"status_code_range,omitempty"` + // +kubebuilder:validation:Optional + StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` // The Request Sub Status of the Status Code. // +kubebuilder:validation:Optional @@ -135,6 +189,21 @@ type SiteConfigAutoHealSettingTriggerStatusCodeParameters struct { Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } +type SiteConfigVirtualApplicationInitParameters struct { + + // The physical path for the Virtual Application. + PhysicalPath *string `json:"physicalPath,omitempty" tf:"physical_path,omitempty"` + + // Should pre-loading be enabled. + Preload *bool `json:"preload,omitempty" tf:"preload,omitempty"` + + // One or more virtual_directory blocks as defined below. + VirtualDirectory []VirtualApplicationVirtualDirectoryInitParameters `json:"virtualDirectory,omitempty" tf:"virtual_directory,omitempty"` + + // The Virtual Path for the Virtual Application. + VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` +} + type SiteConfigVirtualApplicationObservation struct { // The physical path for the Virtual Application. @@ -153,20 +222,29 @@ type SiteConfigVirtualApplicationObservation struct { type SiteConfigVirtualApplicationParameters struct { // The physical path for the Virtual Application. - // +kubebuilder:validation:Required - PhysicalPath *string `json:"physicalPath" tf:"physical_path,omitempty"` + // +kubebuilder:validation:Optional + PhysicalPath *string `json:"physicalPath,omitempty" tf:"physical_path,omitempty"` // Should pre-loading be enabled. - // +kubebuilder:validation:Required - Preload *bool `json:"preload" tf:"preload,omitempty"` + // +kubebuilder:validation:Optional + Preload *bool `json:"preload,omitempty" tf:"preload,omitempty"` // One or more virtual_directory blocks as defined below. // +kubebuilder:validation:Optional VirtualDirectory []VirtualApplicationVirtualDirectoryParameters `json:"virtualDirectory,omitempty" tf:"virtual_directory,omitempty"` // The Virtual Path for the Virtual Application. - // +kubebuilder:validation:Required - VirtualPath *string `json:"virtualPath" tf:"virtual_path,omitempty"` + // +kubebuilder:validation:Optional + VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` +} + +type VirtualApplicationVirtualDirectoryInitParameters struct { + + // The physical path for the Virtual Application. + PhysicalPath *string `json:"physicalPath,omitempty" tf:"physical_path,omitempty"` + + // The Virtual Path for the Virtual Application. + VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` } type VirtualApplicationVirtualDirectoryObservation struct { @@ -189,6 +267,21 @@ type VirtualApplicationVirtualDirectoryParameters struct { VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` } +type WindowsWebAppSlotAuthSettingsActiveDirectoryInitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type WindowsWebAppSlotAuthSettingsActiveDirectoryObservation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -213,8 +306,8 @@ type WindowsWebAppSlotAuthSettingsActiveDirectoryParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret for the Client ID. Cannot be used with `client_secret_setting_name`. @@ -227,6 +320,21 @@ type WindowsWebAppSlotAuthSettingsActiveDirectoryParameters struct { ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } +type WindowsWebAppSlotAuthSettingsFacebookInitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsWebAppSlotAuthSettingsFacebookObservation struct { // The App ID of the Facebook app used for login. @@ -246,8 +354,8 @@ type WindowsWebAppSlotAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. // The App Secret of the Facebook app used for Facebook Login. Cannot be specified with `app_secret_setting_name`. @@ -265,6 +373,21 @@ type WindowsWebAppSlotAuthSettingsFacebookParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type WindowsWebAppSlotAuthSettingsGithubInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsWebAppSlotAuthSettingsGithubObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -284,8 +407,8 @@ type WindowsWebAppSlotAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The Client Secret of the GitHub app used for GitHub Login. Cannot be specified with `client_secret_setting_name`. @@ -303,6 +426,21 @@ type WindowsWebAppSlotAuthSettingsGithubParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type WindowsWebAppSlotAuthSettingsGoogleInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsWebAppSlotAuthSettingsGoogleObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -322,8 +460,8 @@ type WindowsWebAppSlotAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The client secret associated with the Google web application. Cannot be specified with `client_secret_setting_name`. @@ -341,6 +479,78 @@ type WindowsWebAppSlotAuthSettingsGoogleParameters struct { OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } +type WindowsWebAppSlotAuthSettingsInitParameters struct { + + // An active_directory block as defined above. + ActiveDirectory []WindowsWebAppSlotAuthSettingsActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` + + // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` + + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App Slot. + // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github. + // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // Should the Authentication / Authorization feature be enabled for the Windows Web App? + // Should the Authentication / Authorization feature be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // A facebook block as defined below. + Facebook []WindowsWebAppSlotAuthSettingsFacebookInitParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` + + // A github block as defined below. + Github []WindowsWebAppSlotAuthSettingsGithubInitParameters `json:"github,omitempty" tf:"github,omitempty"` + + // A google block as defined below. + Google []WindowsWebAppSlotAuthSettingsGoogleInitParameters `json:"google,omitempty" tf:"google,omitempty"` + + // The OpenID Connect Issuer URI that represents the entity which issues access tokens for this Windows Web App Slot. + // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` + + // A microsoft block as defined below. + Microsoft []WindowsWebAppSlotAuthSettingsMicrosoftInitParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` + + // The RuntimeVersion of the Authentication / Authorization feature in use for the Windows Web App Slot. + // The RuntimeVersion of the Authentication / Authorization feature in use. + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` + + // Should the Windows Web App Slot durably store platform-specific security tokens that are obtained during login flows? Defaults to false. + // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // A twitter block as defined below. + Twitter []WindowsWebAppSlotAuthSettingsTwitterInitParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` + + // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. + // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` +} + +type WindowsWebAppSlotAuthSettingsMicrosoftInitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. + // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` +} + type WindowsWebAppSlotAuthSettingsMicrosoftObservation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -360,8 +570,8 @@ type WindowsWebAppSlotAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret_setting_name`. @@ -459,8 +669,8 @@ type WindowsWebAppSlotAuthSettingsParameters struct { // Should the Authentication / Authorization feature be enabled for the Windows Web App? // Should the Authentication / Authorization feature be enabled? - // +kubebuilder:validation:Required - Enabled *bool `json:"enabled" tf:"enabled,omitempty"` + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. // +kubebuilder:validation:Optional @@ -508,7 +718,7 @@ type WindowsWebAppSlotAuthSettingsParameters struct { UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } -type WindowsWebAppSlotAuthSettingsTwitterObservation struct { +type WindowsWebAppSlotAuthSettingsTwitterInitParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -519,24 +729,86 @@ type WindowsWebAppSlotAuthSettingsTwitterObservation struct { ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } -type WindowsWebAppSlotAuthSettingsTwitterParameters struct { +type WindowsWebAppSlotAuthSettingsTwitterObservation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` - - // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. - // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret_setting_name`. - // +kubebuilder:validation:Optional - ConsumerSecretSecretRef *v1.SecretKeySelector `json:"consumerSecretSecretRef,omitempty" tf:"-"` + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. - // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } +type WindowsWebAppSlotAuthSettingsTwitterParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. + // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret_setting_name`. + // +kubebuilder:validation:Optional + ConsumerSecretSecretRef *v1.SecretKeySelector `json:"consumerSecretSecretRef,omitempty" tf:"-"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + // +kubebuilder:validation:Optional + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + +type WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters struct { + + // The list of allowed Applications for the Default Authorisation Policy. + // The list of allowed Applications for the Default Authorisation Policy. + AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The list of allowed Group Names for the Default Authorisation Policy. + // The list of allowed Group Names for the Default Authorisation Policy. + AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` + + // The list of allowed Identities for the Default Authorisation Policy. + // The list of allowed Identities for the Default Authorisation Policy. + AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Active Directory. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The thumbprint of the certificate used for signing purposes. + // The thumbprint of the certificate used for signing purposes. + ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The App Setting name that contains the client secret of the Client. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // A list of Allowed Client Applications in the JWT Claim. + // A list of Allowed Client Applications in the JWT Claim. + JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` + + // A list of Allowed Groups in the JWT Claim. + // A list of Allowed Groups in the JWT Claim. + JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` + + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` + + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` + + // Should the www-authenticate provider should be omitted from the request? Defaults to false + // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` +} + type WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2Observation struct { // The list of allowed Applications for the Default Authorisation Policy. @@ -612,8 +884,8 @@ type WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. @@ -642,8 +914,8 @@ type WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. - // +kubebuilder:validation:Required - TenantAuthEndpoint *string `json:"tenantAuthEndpoint" tf:"tenant_auth_endpoint,omitempty"` + // +kubebuilder:validation:Optional + TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` @@ -651,6 +923,17 @@ type WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } +type WindowsWebAppSlotAuthSettingsV2AppleV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Apple web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Apple Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + type WindowsWebAppSlotAuthSettingsV2AppleV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -669,13 +952,20 @@ type WindowsWebAppSlotAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` +} + +type WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } type WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2Observation struct { @@ -689,8 +979,31 @@ type WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` +} + +type WindowsWebAppSlotAuthSettingsV2CustomOidcV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the Client to use to authenticate with this Custom OIDC. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The name which should be used for this Storage Account. + // The name of the Custom OIDC Authentication Provider. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The name of the claim that contains the users name. + // The name of the claim that contains the users name. + NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` + + // The app setting name that contains the client_secret value used for the Custom OIDC Login. + // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` + + // The list of the scopes that should be requested while authenticating. + // The list of the scopes that should be requested while authenticating. + Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } type WindowsWebAppSlotAuthSettingsV2CustomOidcV2Observation struct { @@ -744,13 +1057,13 @@ type WindowsWebAppSlotAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. @@ -759,8 +1072,8 @@ type WindowsWebAppSlotAuthSettingsV2CustomOidcV2Parameters struct { // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. - // +kubebuilder:validation:Required - OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint" tf:"openid_configuration_endpoint,omitempty"` + // +kubebuilder:validation:Optional + OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. @@ -768,6 +1081,25 @@ type WindowsWebAppSlotAuthSettingsV2CustomOidcV2Parameters struct { Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } +type WindowsWebAppSlotAuthSettingsV2FacebookV2InitParameters struct { + + // The App ID of the Facebook app used for login. + // The App ID of the Facebook app used for login. + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` + + // The app setting name that contains the app_secret value used for Facebook Login. + // The app setting name that contains the `app_secret` value used for Facebook Login. + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` + + // The version of the Facebook API to be used while logging in. + // The version of the Facebook API to be used while logging in. + GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of scopes to be requested as part of Facebook Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsWebAppSlotAuthSettingsV2FacebookV2Observation struct { // The App ID of the Facebook app used for login. @@ -791,13 +1123,13 @@ type WindowsWebAppSlotAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. - // +kubebuilder:validation:Required - AppID *string `json:"appId" tf:"app_id,omitempty"` + // +kubebuilder:validation:Optional + AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. - // +kubebuilder:validation:Required - AppSecretSettingName *string `json:"appSecretSettingName" tf:"app_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. @@ -810,6 +1142,21 @@ type WindowsWebAppSlotAuthSettingsV2FacebookV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type WindowsWebAppSlotAuthSettingsV2GithubV2InitParameters struct { + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The ID of the GitHub app used for login. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for GitHub Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsWebAppSlotAuthSettingsV2GithubV2Observation struct { // The OAuth 2.0 client ID that was created for the app used for authentication. @@ -829,13 +1176,13 @@ type WindowsWebAppSlotAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. @@ -843,6 +1190,25 @@ type WindowsWebAppSlotAuthSettingsV2GithubV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type WindowsWebAppSlotAuthSettingsV2GoogleV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OpenID Connect Client ID for the Google web application. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name that contains the `client_secret` value used for Google Login. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsWebAppSlotAuthSettingsV2GoogleV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -871,13 +1237,13 @@ type WindowsWebAppSlotAuthSettingsV2GoogleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. @@ -885,6 +1251,134 @@ type WindowsWebAppSlotAuthSettingsV2GoogleV2Parameters struct { LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } +type WindowsWebAppSlotAuthSettingsV2InitParameters struct { + + // An active_directory_v2 block as defined below. + ActiveDirectoryV2 []WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2InitParameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` + + // An apple_v2 block as defined below. + AppleV2 []WindowsWebAppSlotAuthSettingsV2AppleV2InitParameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` + + // Should the AuthV2 Settings be enabled. Defaults to false. + // Should the AuthV2 Settings be enabled. Defaults to `false` + AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` + + // An azure_static_web_app_v2 block as defined below. + AzureStaticWebAppV2 []WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2InitParameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` + + // The path to the App Auth settings. + // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` + + // Zero or more custom_oidc_v2 blocks as defined below. + CustomOidcV2 []WindowsWebAppSlotAuthSettingsV2CustomOidcV2InitParameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` + + // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. + // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` + + // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. + // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` + + // A facebook_v2 block as defined below. + FacebookV2 []WindowsWebAppSlotAuthSettingsV2FacebookV2InitParameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` + + // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. + // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` + + // The name of the custom header containing the host of the request. + // The name of the header containing the host of the request. + ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` + + // The name of the custom header containing the scheme of the request. + // The name of the header containing the scheme of the request. + ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` + + // A github_v2 block as defined below. + GithubV2 []WindowsWebAppSlotAuthSettingsV2GithubV2InitParameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` + + // A google_v2 block as defined below. + GoogleV2 []WindowsWebAppSlotAuthSettingsV2GoogleV2InitParameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` + + // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. + // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` + + // A login block as defined below. + Login []WindowsWebAppSlotAuthSettingsV2LoginInitParameters `json:"login,omitempty" tf:"login,omitempty"` + + // A microsoft_v2 block as defined below. + MicrosoftV2 []WindowsWebAppSlotAuthSettingsV2MicrosoftV2InitParameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` + + // Should the authentication flow be used for all requests. + // Should the authentication flow be used for all requests. + RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` + + // Should HTTPS be required on connections? Defaults to true. + // Should HTTPS be required on connections? Defaults to true. + RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` + + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. + // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` + + // A twitter_v2 block as defined below. + TwitterV2 []WindowsWebAppSlotAuthSettingsV2TwitterV2InitParameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` + + // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. + // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` +} + +type WindowsWebAppSlotAuthSettingsV2LoginInitParameters struct { + + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. + // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` + + // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. + // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` + + // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. + // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` + + // The endpoint to which logout requests should be made. + // The endpoint to which logout requests should be made. + LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` + + // The time after the request is made when the nonce should expire. Defaults to 00:05:00. + // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` + + // Should the fragments from the request be preserved after the login request is made. Defaults to false. + // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` + + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. + // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` + + // Should the Token Store configuration Enabled. Defaults to false + // Should the Token Store configuration Enabled. Defaults to `false` + TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` + + // The directory path in the App Filesystem in which the tokens will be stored. + // The directory path in the App Filesystem in which the tokens will be stored. + TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` + + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` + + // Should the nonce be validated while completing the login flow. Defaults to true. + // Should the nonce be validated while completing the login flow. Defaults to `true`. + ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` +} + type WindowsWebAppSlotAuthSettingsV2LoginObservation struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. @@ -990,6 +1484,25 @@ type WindowsWebAppSlotAuthSettingsV2LoginParameters struct { ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } +type WindowsWebAppSlotAuthSettingsV2MicrosoftV2InitParameters struct { + + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` + + // The OAuth 2.0 client ID that was created for the app used for authentication. + // The OAuth 2.0 client ID that was created for the app used for authentication. + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` + + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` + + // The list of Login scopes that should be requested as part of Microsoft Account authentication. + // The list of Login scopes that will be requested as part of Microsoft Account authentication. + LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` +} + type WindowsWebAppSlotAuthSettingsV2MicrosoftV2Observation struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. @@ -1018,13 +1531,13 @@ type WindowsWebAppSlotAuthSettingsV2MicrosoftV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientID *string `json:"clientId" tf:"client_id,omitempty"` + // +kubebuilder:validation:Optional + ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. - // +kubebuilder:validation:Required - ClientSecretSettingName *string `json:"clientSecretSettingName" tf:"client_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. @@ -1184,8 +1697,8 @@ type WindowsWebAppSlotAuthSettingsV2Parameters struct { HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. - // +kubebuilder:validation:Required - Login []WindowsWebAppSlotAuthSettingsV2LoginParameters `json:"login" tf:"login,omitempty"` + // +kubebuilder:validation:Optional + Login []WindowsWebAppSlotAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. // +kubebuilder:validation:Optional @@ -1216,6 +1729,17 @@ type WindowsWebAppSlotAuthSettingsV2Parameters struct { UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } +type WindowsWebAppSlotAuthSettingsV2TwitterV2InitParameters struct { + + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` + + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + type WindowsWebAppSlotAuthSettingsV2TwitterV2Observation struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. @@ -1231,13 +1755,27 @@ type WindowsWebAppSlotAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerKey *string `json:"consumerKey" tf:"consumer_key,omitempty"` + // +kubebuilder:validation:Optional + ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. - // +kubebuilder:validation:Required - ConsumerSecretSettingName *string `json:"consumerSecretSettingName" tf:"consumer_secret_setting_name,omitempty"` + // +kubebuilder:validation:Optional + ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` +} + +type WindowsWebAppSlotBackupInitParameters struct { + + // Should this backup job be enabled? Defaults to true. + // Should this backup job be enabled? + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name which should be used for this Backup. + // The name which should be used for this Backup. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // A schedule block as defined below. + Schedule []WindowsWebAppSlotBackupScheduleInitParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` } type WindowsWebAppSlotBackupObservation struct { @@ -1263,12 +1801,12 @@ type WindowsWebAppSlotBackupParameters struct { // The name which should be used for this Backup. // The name which should be used for this Backup. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // A schedule block as defined below. - // +kubebuilder:validation:Required - Schedule []WindowsWebAppSlotBackupScheduleParameters `json:"schedule" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional + Schedule []WindowsWebAppSlotBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. // The SAS URL to the container. @@ -1276,6 +1814,29 @@ type WindowsWebAppSlotBackupParameters struct { StorageAccountURLSecretRef v1.SecretKeySelector `json:"storageAccountUrlSecretRef" tf:"-"` } +type WindowsWebAppSlotBackupScheduleInitParameters struct { + + // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). + // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` + + // The unit of time for how often the backup should take place. Possible values include: Day, Hour + // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` + + // Should the service keep at least one backup, regardless of age of backup. Defaults to false. + // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` + + // After how many days backups should be deleted. Defaults to 30. + // After how many days backups should be deleted. + RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` + + // When the schedule should start working in RFC-3339 format. + // When the schedule should start working in RFC-3339 format. + StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` +} + type WindowsWebAppSlotBackupScheduleObservation struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). @@ -1306,13 +1867,13 @@ type WindowsWebAppSlotBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). - // +kubebuilder:validation:Required - FrequencyInterval *float64 `json:"frequencyInterval" tf:"frequency_interval,omitempty"` + // +kubebuilder:validation:Optional + FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day, Hour // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. - // +kubebuilder:validation:Required - FrequencyUnit *string `json:"frequencyUnit" tf:"frequency_unit,omitempty"` + // +kubebuilder:validation:Optional + FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. @@ -1330,6 +1891,17 @@ type WindowsWebAppSlotBackupScheduleParameters struct { StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } +type WindowsWebAppSlotConnectionStringInitParameters struct { + + // The name of the connection String. + // The name which should be used for this Connection. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsWebAppSlotConnectionStringObservation struct { // The name of the connection String. @@ -1345,13 +1917,13 @@ type WindowsWebAppSlotConnectionStringParameters struct { // The name of the connection String. // The name which should be used for this Connection. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. // The connection string value. @@ -1359,6 +1931,15 @@ type WindowsWebAppSlotConnectionStringParameters struct { ValueSecretRef v1.SecretKeySelector `json:"valueSecretRef" tf:"-"` } +type WindowsWebAppSlotIdentityInitParameters struct { + + // A list of User Assigned Managed Identity IDs to be assigned to this Windows Web App Slot. + IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` + + // Specifies the type of Managed Service Identity that should be configured on this Windows Web App Slot. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsWebAppSlotIdentityObservation struct { // A list of User Assigned Managed Identity IDs to be assigned to this Windows Web App Slot. @@ -1381,8 +1962,82 @@ type WindowsWebAppSlotIdentityParameters struct { IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Web App Slot. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + +type WindowsWebAppSlotInitParameters struct { + + // A map of key-value pairs of App Settings. + AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` + + // An auth_settings block as defined below. + AuthSettings []WindowsWebAppSlotAuthSettingsInitParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` + + // An auth_settings_v2 block as defined below. + AuthSettingsV2 []WindowsWebAppSlotAuthSettingsV2InitParameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` + + // A backup block as defined below. + Backup []WindowsWebAppSlotBackupInitParameters `json:"backup,omitempty" tf:"backup,omitempty"` + + // Should Client Affinity be enabled? + ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty" tf:"client_affinity_enabled,omitempty"` + + // Should Client Certificates be enabled? + ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` + + // Paths to exclude when using client certificates, separated by ; + // Paths to exclude when using client certificates, separated by ; + ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` + + // The Client Certificate mode. Possible values are Required, Optional, and OptionalInteractiveUser. This property has no effect when client_cert_enabled is false + ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` + + // One or more connection_string blocks as defined below. + ConnectionString []WindowsWebAppSlotConnectionStringInitParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` + + // Should the Windows Web App Slot be enabled? Defaults to true. + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // Should the Windows Web App Slot require HTTPS connections. + HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` + + // An identity block as defined below. + Identity []WindowsWebAppSlotIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"` + + // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity + KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` + + // A logs block as defined below. + Logs []WindowsWebAppSlotLogsInitParameters `json:"logs,omitempty" tf:"logs,omitempty"` + + // The ID of the Service Plan in which to run this slot. If not specified the same Service Plan as the Windows Web App will be used. + ServicePlanID *string `json:"servicePlanId,omitempty" tf:"service_plan_id,omitempty"` + + // A site_config block as defined below. + SiteConfig []WindowsWebAppSlotSiteConfigInitParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` + + // One or more storage_account blocks as defined below. + StorageAccount []WindowsWebAppSlotStorageAccountInitParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` + + // A mapping of tags which should be assigned to the Windows Web App Slot. + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The local path and filename of the Zip packaged application to deploy to this Windows Web App. + // The local path and filename of the Zip packaged application to deploy to this Windows Web App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` on the App in `app_settings`. + ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` +} + +type WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageInitParameters struct { + + // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs + Level *string `json:"level,omitempty" tf:"level,omitempty"` + + // The retention period in days. A values of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // SAS url to an Azure blob container with read/write/list/delete permissions. + SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` } type WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageObservation struct { @@ -1400,16 +2055,25 @@ type WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageObservation struct { type WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageParameters struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs - // +kubebuilder:validation:Required - Level *string `json:"level" tf:"level,omitempty"` + // +kubebuilder:validation:Optional + Level *string `json:"level,omitempty" tf:"level,omitempty"` // The retention period in days. A values of 0 means no retention. - // +kubebuilder:validation:Required - RetentionInDays *float64 `json:"retentionInDays" tf:"retention_in_days,omitempty"` + // +kubebuilder:validation:Optional + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. - // +kubebuilder:validation:Required - SASURL *string `json:"sasUrl" tf:"sas_url,omitempty"` + // +kubebuilder:validation:Optional + SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` +} + +type WindowsWebAppSlotLogsApplicationLogsInitParameters struct { + + // A azure_blob_storage_http block as defined above. + AzureBlobStorage []WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageInitParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` + + // Log level. Possible values include: Verbose, Information, Warning, and Error. + FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` } type WindowsWebAppSlotLogsApplicationLogsObservation struct { @@ -1428,8 +2092,14 @@ type WindowsWebAppSlotLogsApplicationLogsParameters struct { AzureBlobStorage []WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // Log level. Possible values include: Verbose, Information, Warning, and Error. - // +kubebuilder:validation:Required - FileSystemLevel *string `json:"fileSystemLevel" tf:"file_system_level,omitempty"` + // +kubebuilder:validation:Optional + FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` +} + +type WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageInitParameters struct { + + // The retention period in days. A values of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` } type WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageObservation struct { @@ -1449,6 +2119,15 @@ type WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageParameters struct { SASURLSecretRef v1.SecretKeySelector `json:"sasurlSecretRef" tf:"-"` } +type WindowsWebAppSlotLogsHTTPLogsFileSystemInitParameters struct { + + // The retention period in days. A values of 0 means no retention. + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` + + // The maximum size in megabytes that log files can use. + RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` +} + type WindowsWebAppSlotLogsHTTPLogsFileSystemObservation struct { // The retention period in days. A values of 0 means no retention. @@ -1461,12 +2140,21 @@ type WindowsWebAppSlotLogsHTTPLogsFileSystemObservation struct { type WindowsWebAppSlotLogsHTTPLogsFileSystemParameters struct { // The retention period in days. A values of 0 means no retention. - // +kubebuilder:validation:Required - RetentionInDays *float64 `json:"retentionInDays" tf:"retention_in_days,omitempty"` + // +kubebuilder:validation:Optional + RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // The maximum size in megabytes that log files can use. - // +kubebuilder:validation:Required - RetentionInMb *float64 `json:"retentionInMb" tf:"retention_in_mb,omitempty"` + // +kubebuilder:validation:Optional + RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` +} + +type WindowsWebAppSlotLogsHTTPLogsInitParameters struct { + + // A azure_blob_storage_http block as defined above. + AzureBlobStorage []WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageInitParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` + + // A file_system block as defined above. + FileSystem []WindowsWebAppSlotLogsHTTPLogsFileSystemInitParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` } type WindowsWebAppSlotLogsHTTPLogsObservation struct { @@ -1489,6 +2177,21 @@ type WindowsWebAppSlotLogsHTTPLogsParameters struct { FileSystem []WindowsWebAppSlotLogsHTTPLogsFileSystemParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` } +type WindowsWebAppSlotLogsInitParameters struct { + + // A application_logs block as defined above. + ApplicationLogs []WindowsWebAppSlotLogsApplicationLogsInitParameters `json:"applicationLogs,omitempty" tf:"application_logs,omitempty"` + + // Should detailed error messages be enabled. + DetailedErrorMessages *bool `json:"detailedErrorMessages,omitempty" tf:"detailed_error_messages,omitempty"` + + // Should failed request tracing be enabled. + FailedRequestTracing *bool `json:"failedRequestTracing,omitempty" tf:"failed_request_tracing,omitempty"` + + // An http_logs block as defined above. + HTTPLogs []WindowsWebAppSlotLogsHTTPLogsInitParameters `json:"httpLogs,omitempty" tf:"http_logs,omitempty"` +} + type WindowsWebAppSlotLogsObservation struct { // A application_logs block as defined above. @@ -1714,14 +2417,61 @@ type WindowsWebAppSlotParameters struct { // +kubebuilder:validation:Optional VirtualNetworkSubnetIDRef *v1.Reference `json:"virtualNetworkSubnetIdRef,omitempty" tf:"-"` - // Selector for a Subnet in network to populate virtualNetworkSubnetId. - // +kubebuilder:validation:Optional - VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` + // Selector for a Subnet in network to populate virtualNetworkSubnetId. + // +kubebuilder:validation:Optional + VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` + + // The local path and filename of the Zip packaged application to deploy to this Windows Web App. + // The local path and filename of the Zip packaged application to deploy to this Windows Web App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` on the App in `app_settings`. + // +kubebuilder:validation:Optional + ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` +} + +type WindowsWebAppSlotSiteConfigApplicationStackInitParameters struct { + + // The Application Stack for the Windows Web App. Possible values include dotnet, dotnetcore, node, python, php, and java. + CurrentStack *string `json:"currentStack,omitempty" tf:"current_stack,omitempty"` + + // The name of the Docker Container. For example azure-app-service/samples/aspnethelloworld + DockerContainerName *string `json:"dockerContainerName,omitempty" tf:"docker_container_name,omitempty"` + + // The registry Host on which the specified Docker Container can be located. For example mcr.microsoft.com + DockerContainerRegistry *string `json:"dockerContainerRegistry,omitempty" tf:"docker_container_registry,omitempty"` + + // The Image Tag of the specified Docker Container to use. For example latest + DockerContainerTag *string `json:"dockerContainerTag,omitempty" tf:"docker_container_tag,omitempty"` + + // The version of .NET to use when current_stack is set to dotnetcore. Possible values include v4.0. + // The version of DotNetCore to use. + DotnetCoreVersion *string `json:"dotnetCoreVersion,omitempty" tf:"dotnet_core_version,omitempty"` + + // The version of .NET to use when current_stack is set to dotnet. Possible values include v2.0,v3.0, v4.0, v5.0, v6.0 and v7.0. + DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` + + JavaContainer *string `json:"javaContainer,omitempty" tf:"java_container,omitempty"` + + JavaContainerVersion *string `json:"javaContainerVersion,omitempty" tf:"java_container_version,omitempty"` + + // Should the Java Embedded Server (Java SE) be used to run the app. + // Should the application use the embedded web server for the version of Java in use. + JavaEmbeddedServerEnabled *bool `json:"javaEmbeddedServerEnabled,omitempty" tf:"java_embedded_server_enabled,omitempty"` + + // The version of Java to use when current_stack is set to java. Possible values include 1.7, 1.8, 11 and 17. Required with java_container and java_container_version. + JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` + + // The version of node to use when current_stack is set to node. Possible values include ~12, ~14, ~16, and ~18. + NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` + + // The version of PHP to use when current_stack is set to php. Possible values are 7.1, 7.4 and Off. + PHPVersion *string `json:"phpVersion,omitempty" tf:"php_version,omitempty"` + + // The app is a Python app. Defaults to false. + Python *bool `json:"python,omitempty" tf:"python,omitempty"` - // The local path and filename of the Zip packaged application to deploy to this Windows Web App. - // The local path and filename of the Zip packaged application to deploy to this Windows Web App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` on the App in `app_settings`. - // +kubebuilder:validation:Optional - ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` + PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` + + // The version of Tomcat the Java App should use. + TomcatVersion *string `json:"tomcatVersion,omitempty" tf:"tomcat_version,omitempty"` } type WindowsWebAppSlotSiteConfigApplicationStackObservation struct { @@ -1833,6 +2583,18 @@ type WindowsWebAppSlotSiteConfigApplicationStackParameters struct { TomcatVersion *string `json:"tomcatVersion,omitempty" tf:"tomcat_version,omitempty"` } +type WindowsWebAppSlotSiteConfigAutoHealSettingActionInitParameters struct { + + // Predefined action to be taken to an Auto Heal trigger. Possible values are CustomAction, LogEvent and Recycle. + ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` + + // A custom_action block as defined below. + CustomAction []ActionCustomActionInitParameters `json:"customAction,omitempty" tf:"custom_action,omitempty"` + + // The minimum amount of time in hh:mm:ss the Windows Web App Slot must have been running before the defined action will be run in the event of a trigger. + MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` +} + type WindowsWebAppSlotSiteConfigAutoHealSettingActionObservation struct { // Predefined action to be taken to an Auto Heal trigger. Possible values are CustomAction, LogEvent and Recycle. @@ -1848,8 +2610,8 @@ type WindowsWebAppSlotSiteConfigAutoHealSettingActionObservation struct { type WindowsWebAppSlotSiteConfigAutoHealSettingActionParameters struct { // Predefined action to be taken to an Auto Heal trigger. Possible values are CustomAction, LogEvent and Recycle. - // +kubebuilder:validation:Required - ActionType *string `json:"actionType" tf:"action_type,omitempty"` + // +kubebuilder:validation:Optional + ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` // A custom_action block as defined below. // +kubebuilder:validation:Optional @@ -1860,6 +2622,15 @@ type WindowsWebAppSlotSiteConfigAutoHealSettingActionParameters struct { MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` } +type WindowsWebAppSlotSiteConfigAutoHealSettingInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + Action []WindowsWebAppSlotSiteConfigAutoHealSettingActionInitParameters `json:"action,omitempty" tf:"action,omitempty"` + + // A trigger block as defined below. + Trigger []WindowsWebAppSlotSiteConfigAutoHealSettingTriggerInitParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` +} + type WindowsWebAppSlotSiteConfigAutoHealSettingObservation struct { // The action to take. Possible values are Allow or Deny. @@ -1872,12 +2643,27 @@ type WindowsWebAppSlotSiteConfigAutoHealSettingObservation struct { type WindowsWebAppSlotSiteConfigAutoHealSettingParameters struct { // The action to take. Possible values are Allow or Deny. - // +kubebuilder:validation:Required - Action []WindowsWebAppSlotSiteConfigAutoHealSettingActionParameters `json:"action" tf:"action,omitempty"` + // +kubebuilder:validation:Optional + Action []WindowsWebAppSlotSiteConfigAutoHealSettingActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A trigger block as defined below. - // +kubebuilder:validation:Required - Trigger []WindowsWebAppSlotSiteConfigAutoHealSettingTriggerParameters `json:"trigger" tf:"trigger,omitempty"` + // +kubebuilder:validation:Optional + Trigger []WindowsWebAppSlotSiteConfigAutoHealSettingTriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` +} + +type WindowsWebAppSlotSiteConfigAutoHealSettingTriggerInitParameters struct { + + // The amount of Private Memory to be consumed for this rule to trigger. Possible values are between 102400 and 13631488. + PrivateMemoryKb *float64 `json:"privateMemoryKb,omitempty" tf:"private_memory_kb,omitempty"` + + // A requests block as defined above. + Requests []SiteConfigAutoHealSettingTriggerRequestsInitParameters `json:"requests,omitempty" tf:"requests,omitempty"` + + // One or more slow_request blocks as defined above. + SlowRequest []SiteConfigAutoHealSettingTriggerSlowRequestInitParameters `json:"slowRequest,omitempty" tf:"slow_request,omitempty"` + + // One or more status_code blocks as defined above. + StatusCode []SiteConfigAutoHealSettingTriggerStatusCodeInitParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` } type WindowsWebAppSlotSiteConfigAutoHealSettingTriggerObservation struct { @@ -1914,6 +2700,17 @@ type WindowsWebAppSlotSiteConfigAutoHealSettingTriggerParameters struct { StatusCode []SiteConfigAutoHealSettingTriggerStatusCodeParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` } +type WindowsWebAppSlotSiteConfigCorsInitParameters struct { + + // Specifies a list of origins that should be allowed to make cross-origin calls. + // Specifies a list of origins that should be allowed to make cross-origin calls. + AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` + + // Whether CORS requests with credentials are allowed. Defaults to false + // Are credentials allowed in CORS requests? Defaults to `false`. + SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` +} + type WindowsWebAppSlotSiteConfigCorsObservation struct { // Specifies a list of origins that should be allowed to make cross-origin calls. @@ -1938,6 +2735,21 @@ type WindowsWebAppSlotSiteConfigCorsParameters struct { SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } +type WindowsWebAppSlotSiteConfigIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type WindowsWebAppSlotSiteConfigIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -1972,6 +2784,32 @@ type WindowsWebAppSlotSiteConfigIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type WindowsWebAppSlotSiteConfigIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []WindowsWebAppSlotSiteConfigIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type WindowsWebAppSlotSiteConfigIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -2049,6 +2887,104 @@ type WindowsWebAppSlotSiteConfigIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type WindowsWebAppSlotSiteConfigInitParameters struct { + + // The URL to the API Definition for this Windows Web App Slot. + APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` + + // The API Management API ID this Windows Web App Slot os associated with. + APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` + + // If this Windows Web App Slot is Always On enabled. Defaults to true. + AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` + + // The App command line to launch. + AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` + + // A application_stack block as defined above. + ApplicationStack []WindowsWebAppSlotSiteConfigApplicationStackInitParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` + + // Should Auto heal rules be enabled. Required with auto_heal_setting. + AutoHealEnabled *bool `json:"autoHealEnabled,omitempty" tf:"auto_heal_enabled,omitempty"` + + // A auto_heal_setting block as defined above. Required with auto_heal. + AutoHealSetting []WindowsWebAppSlotSiteConfigAutoHealSettingInitParameters `json:"autoHealSetting,omitempty" tf:"auto_heal_setting,omitempty"` + + // The Windows Web App Slot Name to automatically swap to when deployment to that slot is successfully completed. + AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` + + // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` + + // Should connections for Azure Container Registry use Managed Identity. + ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` + + // A cors block as defined above. + Cors []WindowsWebAppSlotSiteConfigCorsInitParameters `json:"cors,omitempty" tf:"cors,omitempty"` + + // Specifies a list of Default Documents for the Windows Web App Slot. + DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` + + // The State of FTP / FTPS service. Possible values include: AllAllowed, FtpsOnly, Disabled. + FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` + + // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. + // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` + + // The path to the Health Check. + HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` + + // Should the HTTP2 be enabled? + Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` + + // One or more ip_restriction blocks as defined above. + IPRestriction []WindowsWebAppSlotSiteConfigIPRestrictionInitParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` + + // The Site load balancing. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` + + // Use Local MySQL. Defaults to false. + LocalMySQLEnabled *bool `json:"localMysqlEnabled,omitempty" tf:"local_mysql_enabled,omitempty"` + + // Managed pipeline mode. Possible values include: Integrated, Classic. + ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` + + // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` + + // Should Remote Debugging be enabled. Defaults to false. + RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` + + // The Remote Debugging Version. Possible values include VS2017 and VS2019 + RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` + + // One or more scm_ip_restriction blocks as defined above. + ScmIPRestriction []WindowsWebAppSlotSiteConfigScmIPRestrictionInitParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` + + // The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` + + // Should the Windows Web App Slot ip_restriction configuration be used for the SCM also. + ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` + + // Should the Windows Web App Slotuse a 32-bit worker. Defaults to true. + Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` + + // One or more virtual_application blocks as defined below. + VirtualApplication []SiteConfigVirtualApplicationInitParameters `json:"virtualApplication,omitempty" tf:"virtual_application,omitempty"` + + // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. + // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` + + // Should Web Sockets be enabled. Defaults to false. + WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` + + // The number of Workers for this Windows App Service Slot. + WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` +} + type WindowsWebAppSlotSiteConfigObservation struct { // The URL to the API Definition for this Windows Web App Slot. @@ -2283,6 +3219,21 @@ type WindowsWebAppSlotSiteConfigParameters struct { WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } +type WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters struct { + + // Specifies a list of Azure Front Door IDs. + XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` + + // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` + + // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` + + // Specifies a list of Hosts for which matching should be applied. + XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` +} + type WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersObservation struct { // Specifies a list of Azure Front Door IDs. @@ -2317,6 +3268,32 @@ type WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersParameters struct { XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } +type WindowsWebAppSlotSiteConfigScmIPRestrictionInitParameters struct { + + // The action to take. Possible values are Allow or Deny. + // The action to take. Possible values are `Allow` or `Deny`. + Action *string `json:"action,omitempty" tf:"action,omitempty"` + + // A headers block as defined above. + Headers []WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersInitParameters `json:"headers,omitempty" tf:"headers,omitempty"` + + // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` + + // The name which should be used for this Storage Account. + // The name which should be used for this `ip_restriction`. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The priority value of this ip_restriction. Defaults to 65000. + // The priority value of this `ip_restriction`. + Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` + + // The Service Tag used for this IP Restriction. + // The Service Tag used for this IP Restriction. + ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` +} + type WindowsWebAppSlotSiteConfigScmIPRestrictionObservation struct { // The action to take. Possible values are Allow or Deny. @@ -2394,6 +3371,9 @@ type WindowsWebAppSlotSiteConfigScmIPRestrictionParameters struct { VirtualNetworkSubnetIDSelector *v1.Selector `json:"virtualNetworkSubnetIdSelector,omitempty" tf:"-"` } +type WindowsWebAppSlotSiteCredentialInitParameters struct { +} + type WindowsWebAppSlotSiteCredentialObservation struct { // The Site Credentials Username used for publishing. @@ -2406,6 +3386,24 @@ type WindowsWebAppSlotSiteCredentialObservation struct { type WindowsWebAppSlotSiteCredentialParameters struct { } +type WindowsWebAppSlotStorageAccountInitParameters struct { + + // The Name of the Storage Account. + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` + + // The path at which to mount the storage share. + MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` + + // The name which should be used for this Storage Account. + Name *string `json:"name,omitempty" tf:"name,omitempty"` + + // The Name of the File Share or Container Name for Blob storage. + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` + + // The Azure Storage Type. Possible values include AzureFiles and AzureBlob + Type *string `json:"type,omitempty" tf:"type,omitempty"` +} + type WindowsWebAppSlotStorageAccountObservation struct { // The Name of the Storage Account. @@ -2431,30 +3429,42 @@ type WindowsWebAppSlotStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. - // +kubebuilder:validation:Required - AccountName *string `json:"accountName" tf:"account_name,omitempty"` + // +kubebuilder:validation:Optional + AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. - // +kubebuilder:validation:Required - Name *string `json:"name" tf:"name,omitempty"` + // +kubebuilder:validation:Optional + Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. - // +kubebuilder:validation:Required - ShareName *string `json:"shareName" tf:"share_name,omitempty"` + // +kubebuilder:validation:Optional + ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob - // +kubebuilder:validation:Required - Type *string `json:"type" tf:"type,omitempty"` + // +kubebuilder:validation:Optional + Type *string `json:"type,omitempty" tf:"type,omitempty"` } // WindowsWebAppSlotSpec defines the desired state of WindowsWebAppSlot type WindowsWebAppSlotSpec struct { v1.ResourceSpec `json:",inline"` ForProvider WindowsWebAppSlotParameters `json:"forProvider"` + // THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored + // unless the relevant Crossplane feature flag is enabled, and may be + // changed or removed without notice. + // InitProvider holds the same fields as ForProvider, with the exception + // of Identifier and other resource reference fields. The fields that are + // in InitProvider are merged into ForProvider when the resource is created. + // The same fields are also added to the terraform ignore_changes hook, to + // avoid updating them after creation. This is useful for fields that are + // required on creation, but we do not desire to update them after creation, + // for example because of an external controller is managing them, like an + // autoscaler. + InitProvider WindowsWebAppSlotInitParameters `json:"initProvider,omitempty"` } // WindowsWebAppSlotStatus defines the observed state of WindowsWebAppSlot. @@ -2475,7 +3485,7 @@ type WindowsWebAppSlotStatus struct { type WindowsWebAppSlot struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` - // +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig)",message="siteConfig is a required parameter" + // +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.siteConfig) || has(self.initProvider.siteConfig)",message="siteConfig is a required parameter" Spec WindowsWebAppSlotSpec `json:"spec"` Status WindowsWebAppSlotStatus `json:"status,omitempty"` } diff --git a/cmd/provider/alertsmanagement/zz_main.go b/cmd/provider/alertsmanagement/zz_main.go index d00416222..f8368f048 100644 --- a/cmd/provider/alertsmanagement/zz_main.go +++ b/cmd/provider/alertsmanagement/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-alertsmanagement", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/analysisservices/zz_main.go b/cmd/provider/analysisservices/zz_main.go index ac04addcd..9df661a9d 100644 --- a/cmd/provider/analysisservices/zz_main.go +++ b/cmd/provider/analysisservices/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-analysisservices", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/apimanagement/zz_main.go b/cmd/provider/apimanagement/zz_main.go index 54ae1d1fc..6f691ce25 100644 --- a/cmd/provider/apimanagement/zz_main.go +++ b/cmd/provider/apimanagement/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-apimanagement", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/appconfiguration/zz_main.go b/cmd/provider/appconfiguration/zz_main.go index 7cffe5ee3..f2d38a1ed 100644 --- a/cmd/provider/appconfiguration/zz_main.go +++ b/cmd/provider/appconfiguration/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-appconfiguration", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/appplatform/zz_main.go b/cmd/provider/appplatform/zz_main.go index 175155a13..b5bebaa17 100644 --- a/cmd/provider/appplatform/zz_main.go +++ b/cmd/provider/appplatform/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-appplatform", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/attestation/zz_main.go b/cmd/provider/attestation/zz_main.go index 62342ee01..238ef75a1 100644 --- a/cmd/provider/attestation/zz_main.go +++ b/cmd/provider/attestation/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-attestation", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/authorization/zz_main.go b/cmd/provider/authorization/zz_main.go index 011211691..4ae5573db 100644 --- a/cmd/provider/authorization/zz_main.go +++ b/cmd/provider/authorization/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-authorization", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/automation/zz_main.go b/cmd/provider/automation/zz_main.go index 655434f0f..2fe4dc501 100644 --- a/cmd/provider/automation/zz_main.go +++ b/cmd/provider/automation/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-automation", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/azure/zz_main.go b/cmd/provider/azure/zz_main.go index d8bc95272..2c216f762 100644 --- a/cmd/provider/azure/zz_main.go +++ b/cmd/provider/azure/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-azure", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/azurestackhci/zz_main.go b/cmd/provider/azurestackhci/zz_main.go index f21be612e..9960048f8 100644 --- a/cmd/provider/azurestackhci/zz_main.go +++ b/cmd/provider/azurestackhci/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-azurestackhci", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/botservice/zz_main.go b/cmd/provider/botservice/zz_main.go index 552fc590f..9dbc1479b 100644 --- a/cmd/provider/botservice/zz_main.go +++ b/cmd/provider/botservice/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-botservice", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/cache/zz_main.go b/cmd/provider/cache/zz_main.go index 6a21280de..c76b1fa4f 100644 --- a/cmd/provider/cache/zz_main.go +++ b/cmd/provider/cache/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-cache", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/cdn/zz_main.go b/cmd/provider/cdn/zz_main.go index f762984fa..ece430545 100644 --- a/cmd/provider/cdn/zz_main.go +++ b/cmd/provider/cdn/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-cdn", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/certificateregistration/zz_main.go b/cmd/provider/certificateregistration/zz_main.go index 00354651b..be518f8c5 100644 --- a/cmd/provider/certificateregistration/zz_main.go +++ b/cmd/provider/certificateregistration/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-certificateregistration", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/cognitiveservices/zz_main.go b/cmd/provider/cognitiveservices/zz_main.go index abde466be..b36aa9524 100644 --- a/cmd/provider/cognitiveservices/zz_main.go +++ b/cmd/provider/cognitiveservices/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-cognitiveservices", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/communication/zz_main.go b/cmd/provider/communication/zz_main.go index 857826c5e..2239f92d1 100644 --- a/cmd/provider/communication/zz_main.go +++ b/cmd/provider/communication/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-communication", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/compute/zz_main.go b/cmd/provider/compute/zz_main.go index ee5741747..2d28d7fbe 100644 --- a/cmd/provider/compute/zz_main.go +++ b/cmd/provider/compute/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-compute", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/confidentialledger/zz_main.go b/cmd/provider/confidentialledger/zz_main.go index b81ad8652..6050d954c 100644 --- a/cmd/provider/confidentialledger/zz_main.go +++ b/cmd/provider/confidentialledger/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-confidentialledger", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/config/zz_main.go b/cmd/provider/config/zz_main.go index 29cc7c957..8aa20603e 100644 --- a/cmd/provider/config/zz_main.go +++ b/cmd/provider/config/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-config", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/consumption/zz_main.go b/cmd/provider/consumption/zz_main.go index de537ff16..af038a636 100644 --- a/cmd/provider/consumption/zz_main.go +++ b/cmd/provider/consumption/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-consumption", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/containerregistry/zz_main.go b/cmd/provider/containerregistry/zz_main.go index 20dea433c..89e5ddc7e 100644 --- a/cmd/provider/containerregistry/zz_main.go +++ b/cmd/provider/containerregistry/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-containerregistry", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/containerservice/zz_main.go b/cmd/provider/containerservice/zz_main.go index 5b8232f00..e9f5eb3a9 100644 --- a/cmd/provider/containerservice/zz_main.go +++ b/cmd/provider/containerservice/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-containerservice", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/cosmosdb/zz_main.go b/cmd/provider/cosmosdb/zz_main.go index 046929a8b..8ee4ae407 100644 --- a/cmd/provider/cosmosdb/zz_main.go +++ b/cmd/provider/cosmosdb/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-cosmosdb", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/costmanagement/zz_main.go b/cmd/provider/costmanagement/zz_main.go index 4109211bc..62d3e2dad 100644 --- a/cmd/provider/costmanagement/zz_main.go +++ b/cmd/provider/costmanagement/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-costmanagement", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/customproviders/zz_main.go b/cmd/provider/customproviders/zz_main.go index f2a978154..11b606ef9 100644 --- a/cmd/provider/customproviders/zz_main.go +++ b/cmd/provider/customproviders/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-customproviders", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/databoxedge/zz_main.go b/cmd/provider/databoxedge/zz_main.go index 4d59ce22c..7ab38c3cc 100644 --- a/cmd/provider/databoxedge/zz_main.go +++ b/cmd/provider/databoxedge/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-databoxedge", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/databricks/zz_main.go b/cmd/provider/databricks/zz_main.go index e5502ed8b..fbab771ab 100644 --- a/cmd/provider/databricks/zz_main.go +++ b/cmd/provider/databricks/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-databricks", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/datafactory/zz_main.go b/cmd/provider/datafactory/zz_main.go index 5debfde18..2bf98dd79 100644 --- a/cmd/provider/datafactory/zz_main.go +++ b/cmd/provider/datafactory/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-datafactory", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/datamigration/zz_main.go b/cmd/provider/datamigration/zz_main.go index a842b48fb..1012bdd2c 100644 --- a/cmd/provider/datamigration/zz_main.go +++ b/cmd/provider/datamigration/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-datamigration", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/dataprotection/zz_main.go b/cmd/provider/dataprotection/zz_main.go index ca36461fb..7c26e92a8 100644 --- a/cmd/provider/dataprotection/zz_main.go +++ b/cmd/provider/dataprotection/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-dataprotection", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/datashare/zz_main.go b/cmd/provider/datashare/zz_main.go index 3fd833447..141ba7092 100644 --- a/cmd/provider/datashare/zz_main.go +++ b/cmd/provider/datashare/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-datashare", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/dbformariadb/zz_main.go b/cmd/provider/dbformariadb/zz_main.go index 6c2cfc8a2..03b04c24d 100644 --- a/cmd/provider/dbformariadb/zz_main.go +++ b/cmd/provider/dbformariadb/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-dbformariadb", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/dbformysql/zz_main.go b/cmd/provider/dbformysql/zz_main.go index eb3e3d8cb..8fe89f5ce 100644 --- a/cmd/provider/dbformysql/zz_main.go +++ b/cmd/provider/dbformysql/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-dbformysql", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/dbforpostgresql/zz_main.go b/cmd/provider/dbforpostgresql/zz_main.go index 4e37721c3..a4da7ddbb 100644 --- a/cmd/provider/dbforpostgresql/zz_main.go +++ b/cmd/provider/dbforpostgresql/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-dbforpostgresql", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/devices/zz_main.go b/cmd/provider/devices/zz_main.go index 4a11b2774..470fe53c6 100644 --- a/cmd/provider/devices/zz_main.go +++ b/cmd/provider/devices/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-devices", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/deviceupdate/zz_main.go b/cmd/provider/deviceupdate/zz_main.go index 89a997c6f..7503dacfb 100644 --- a/cmd/provider/deviceupdate/zz_main.go +++ b/cmd/provider/deviceupdate/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-deviceupdate", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/devtestlab/zz_main.go b/cmd/provider/devtestlab/zz_main.go index be1f9c0a2..93a4d7d20 100644 --- a/cmd/provider/devtestlab/zz_main.go +++ b/cmd/provider/devtestlab/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-devtestlab", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/digitaltwins/zz_main.go b/cmd/provider/digitaltwins/zz_main.go index e6782c708..47f493392 100644 --- a/cmd/provider/digitaltwins/zz_main.go +++ b/cmd/provider/digitaltwins/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-digitaltwins", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/elastic/zz_main.go b/cmd/provider/elastic/zz_main.go index efd9a845c..8f38934d6 100644 --- a/cmd/provider/elastic/zz_main.go +++ b/cmd/provider/elastic/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-elastic", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/eventgrid/zz_main.go b/cmd/provider/eventgrid/zz_main.go index 9efacf516..2d253c060 100644 --- a/cmd/provider/eventgrid/zz_main.go +++ b/cmd/provider/eventgrid/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-eventgrid", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/eventhub/zz_main.go b/cmd/provider/eventhub/zz_main.go index 3da925c5d..e0c4a6bc2 100644 --- a/cmd/provider/eventhub/zz_main.go +++ b/cmd/provider/eventhub/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-eventhub", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/fluidrelay/zz_main.go b/cmd/provider/fluidrelay/zz_main.go index f5f624534..33e566721 100644 --- a/cmd/provider/fluidrelay/zz_main.go +++ b/cmd/provider/fluidrelay/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-fluidrelay", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/guestconfiguration/zz_main.go b/cmd/provider/guestconfiguration/zz_main.go index 885ac3ae9..9edffc049 100644 --- a/cmd/provider/guestconfiguration/zz_main.go +++ b/cmd/provider/guestconfiguration/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-guestconfiguration", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/hdinsight/zz_main.go b/cmd/provider/hdinsight/zz_main.go index b749326d4..740482319 100644 --- a/cmd/provider/hdinsight/zz_main.go +++ b/cmd/provider/hdinsight/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-hdinsight", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/healthbot/zz_main.go b/cmd/provider/healthbot/zz_main.go index e31468dcc..7080e295a 100644 --- a/cmd/provider/healthbot/zz_main.go +++ b/cmd/provider/healthbot/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-healthbot", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/healthcareapis/zz_main.go b/cmd/provider/healthcareapis/zz_main.go index d4579bfec..1cc0033a9 100644 --- a/cmd/provider/healthcareapis/zz_main.go +++ b/cmd/provider/healthcareapis/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-healthcareapis", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/insights/zz_main.go b/cmd/provider/insights/zz_main.go index 95fecc764..1920510e8 100644 --- a/cmd/provider/insights/zz_main.go +++ b/cmd/provider/insights/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-insights", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/iotcentral/zz_main.go b/cmd/provider/iotcentral/zz_main.go index 5c73afb11..225e63503 100644 --- a/cmd/provider/iotcentral/zz_main.go +++ b/cmd/provider/iotcentral/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-iotcentral", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/keyvault/zz_main.go b/cmd/provider/keyvault/zz_main.go index ee8cb8804..3674e33ac 100644 --- a/cmd/provider/keyvault/zz_main.go +++ b/cmd/provider/keyvault/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-keyvault", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/kusto/zz_main.go b/cmd/provider/kusto/zz_main.go index 520305871..9e6f21e9e 100644 --- a/cmd/provider/kusto/zz_main.go +++ b/cmd/provider/kusto/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-kusto", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/labservices/zz_main.go b/cmd/provider/labservices/zz_main.go index 587225d40..845903030 100644 --- a/cmd/provider/labservices/zz_main.go +++ b/cmd/provider/labservices/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-labservices", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/logic/zz_main.go b/cmd/provider/logic/zz_main.go index 631e8df89..b8093db1f 100644 --- a/cmd/provider/logic/zz_main.go +++ b/cmd/provider/logic/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-logic", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/logz/zz_main.go b/cmd/provider/logz/zz_main.go index d43d86645..af503a56b 100644 --- a/cmd/provider/logz/zz_main.go +++ b/cmd/provider/logz/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-logz", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/machinelearningservices/zz_main.go b/cmd/provider/machinelearningservices/zz_main.go index b96766021..a23b5ee11 100644 --- a/cmd/provider/machinelearningservices/zz_main.go +++ b/cmd/provider/machinelearningservices/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-machinelearningservices", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/maintenance/zz_main.go b/cmd/provider/maintenance/zz_main.go index 7f85b3020..22c194e33 100644 --- a/cmd/provider/maintenance/zz_main.go +++ b/cmd/provider/maintenance/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-maintenance", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/managedidentity/zz_main.go b/cmd/provider/managedidentity/zz_main.go index 04f103094..f1b0d0b86 100644 --- a/cmd/provider/managedidentity/zz_main.go +++ b/cmd/provider/managedidentity/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-managedidentity", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/management/zz_main.go b/cmd/provider/management/zz_main.go index 1ab9ee5bf..ae580da84 100644 --- a/cmd/provider/management/zz_main.go +++ b/cmd/provider/management/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-management", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/maps/zz_main.go b/cmd/provider/maps/zz_main.go index abaed3250..f955f9e1b 100644 --- a/cmd/provider/maps/zz_main.go +++ b/cmd/provider/maps/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-maps", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/marketplaceordering/zz_main.go b/cmd/provider/marketplaceordering/zz_main.go index b7f54c2e0..f2388b7d2 100644 --- a/cmd/provider/marketplaceordering/zz_main.go +++ b/cmd/provider/marketplaceordering/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-marketplaceordering", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/media/zz_main.go b/cmd/provider/media/zz_main.go index ee7c323b4..97ebc163a 100644 --- a/cmd/provider/media/zz_main.go +++ b/cmd/provider/media/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-media", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/mixedreality/zz_main.go b/cmd/provider/mixedreality/zz_main.go index 230a3eac2..4488c27de 100644 --- a/cmd/provider/mixedreality/zz_main.go +++ b/cmd/provider/mixedreality/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-mixedreality", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/monolith/zz_main.go b/cmd/provider/monolith/zz_main.go index fa528e931..c51cfe1ee 100644 --- a/cmd/provider/monolith/zz_main.go +++ b/cmd/provider/monolith/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/netapp/zz_main.go b/cmd/provider/netapp/zz_main.go index bc4836250..b32febb95 100644 --- a/cmd/provider/netapp/zz_main.go +++ b/cmd/provider/netapp/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-netapp", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/network/zz_main.go b/cmd/provider/network/zz_main.go index 00aa4cd41..7637cf166 100644 --- a/cmd/provider/network/zz_main.go +++ b/cmd/provider/network/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-network", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/notificationhubs/zz_main.go b/cmd/provider/notificationhubs/zz_main.go index e8c716ce2..65e8d2b13 100644 --- a/cmd/provider/notificationhubs/zz_main.go +++ b/cmd/provider/notificationhubs/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-notificationhubs", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/operationalinsights/zz_main.go b/cmd/provider/operationalinsights/zz_main.go index 4460a6f61..21d8190a7 100644 --- a/cmd/provider/operationalinsights/zz_main.go +++ b/cmd/provider/operationalinsights/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-operationalinsights", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/operationsmanagement/zz_main.go b/cmd/provider/operationsmanagement/zz_main.go index eccb9af25..1c3a8dccb 100644 --- a/cmd/provider/operationsmanagement/zz_main.go +++ b/cmd/provider/operationsmanagement/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-operationsmanagement", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/orbital/zz_main.go b/cmd/provider/orbital/zz_main.go index 45654ee5b..281bcc325 100644 --- a/cmd/provider/orbital/zz_main.go +++ b/cmd/provider/orbital/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-orbital", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/policyinsights/zz_main.go b/cmd/provider/policyinsights/zz_main.go index c2435ca97..3f760fa8d 100644 --- a/cmd/provider/policyinsights/zz_main.go +++ b/cmd/provider/policyinsights/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-policyinsights", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/portal/zz_main.go b/cmd/provider/portal/zz_main.go index cdeb37eaa..03e586a9d 100644 --- a/cmd/provider/portal/zz_main.go +++ b/cmd/provider/portal/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-portal", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/powerbidedicated/zz_main.go b/cmd/provider/powerbidedicated/zz_main.go index be5c40d0b..544097fd3 100644 --- a/cmd/provider/powerbidedicated/zz_main.go +++ b/cmd/provider/powerbidedicated/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-powerbidedicated", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/purview/zz_main.go b/cmd/provider/purview/zz_main.go index 1b565f655..e24e4b7f8 100644 --- a/cmd/provider/purview/zz_main.go +++ b/cmd/provider/purview/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-purview", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/recoveryservices/zz_main.go b/cmd/provider/recoveryservices/zz_main.go index 513e57323..6ac7e4a68 100644 --- a/cmd/provider/recoveryservices/zz_main.go +++ b/cmd/provider/recoveryservices/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-recoveryservices", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/relay/zz_main.go b/cmd/provider/relay/zz_main.go index 38368ccb8..565572a6a 100644 --- a/cmd/provider/relay/zz_main.go +++ b/cmd/provider/relay/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-relay", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/resources/zz_main.go b/cmd/provider/resources/zz_main.go index 633c1127a..32f6a3d0a 100644 --- a/cmd/provider/resources/zz_main.go +++ b/cmd/provider/resources/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-resources", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/search/zz_main.go b/cmd/provider/search/zz_main.go index 3e66e160a..36db42363 100644 --- a/cmd/provider/search/zz_main.go +++ b/cmd/provider/search/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-search", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/security/zz_main.go b/cmd/provider/security/zz_main.go index 5d1ea133a..9f0c285bc 100644 --- a/cmd/provider/security/zz_main.go +++ b/cmd/provider/security/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-security", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/securityinsights/zz_main.go b/cmd/provider/securityinsights/zz_main.go index 43923e473..a953f3f1d 100644 --- a/cmd/provider/securityinsights/zz_main.go +++ b/cmd/provider/securityinsights/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-securityinsights", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/servicebus/zz_main.go b/cmd/provider/servicebus/zz_main.go index 6ad96aa57..f8e96b122 100644 --- a/cmd/provider/servicebus/zz_main.go +++ b/cmd/provider/servicebus/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-servicebus", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/servicefabric/zz_main.go b/cmd/provider/servicefabric/zz_main.go index ce71650a2..15c7457a8 100644 --- a/cmd/provider/servicefabric/zz_main.go +++ b/cmd/provider/servicefabric/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-servicefabric", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/servicelinker/zz_main.go b/cmd/provider/servicelinker/zz_main.go index 2d698b9ec..198575394 100644 --- a/cmd/provider/servicelinker/zz_main.go +++ b/cmd/provider/servicelinker/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-servicelinker", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/signalrservice/zz_main.go b/cmd/provider/signalrservice/zz_main.go index 52e5904c6..fc69354d7 100644 --- a/cmd/provider/signalrservice/zz_main.go +++ b/cmd/provider/signalrservice/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-signalrservice", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/solutions/zz_main.go b/cmd/provider/solutions/zz_main.go index db2e3e4bf..76bdafb06 100644 --- a/cmd/provider/solutions/zz_main.go +++ b/cmd/provider/solutions/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-solutions", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/spring/zz_main.go b/cmd/provider/spring/zz_main.go index 0cd71d03c..2160c1eb5 100644 --- a/cmd/provider/spring/zz_main.go +++ b/cmd/provider/spring/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-spring", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/sql/zz_main.go b/cmd/provider/sql/zz_main.go index 6b87efbbb..66a69fd3a 100644 --- a/cmd/provider/sql/zz_main.go +++ b/cmd/provider/sql/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-sql", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/storage/zz_main.go b/cmd/provider/storage/zz_main.go index 4e2242272..fad7de0df 100644 --- a/cmd/provider/storage/zz_main.go +++ b/cmd/provider/storage/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-storage", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/storagecache/zz_main.go b/cmd/provider/storagecache/zz_main.go index 3cc2be178..b1b0b20b0 100644 --- a/cmd/provider/storagecache/zz_main.go +++ b/cmd/provider/storagecache/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-storagecache", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/storagepool/zz_main.go b/cmd/provider/storagepool/zz_main.go index 43e872dda..d9c9bd885 100644 --- a/cmd/provider/storagepool/zz_main.go +++ b/cmd/provider/storagepool/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-storagepool", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/storagesync/zz_main.go b/cmd/provider/storagesync/zz_main.go index c66e1d909..4c23020e8 100644 --- a/cmd/provider/storagesync/zz_main.go +++ b/cmd/provider/storagesync/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-storagesync", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/streamanalytics/zz_main.go b/cmd/provider/streamanalytics/zz_main.go index d9a8271dd..e96fe74b6 100644 --- a/cmd/provider/streamanalytics/zz_main.go +++ b/cmd/provider/streamanalytics/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-streamanalytics", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/synapse/zz_main.go b/cmd/provider/synapse/zz_main.go index 19d93a2aa..fc111ff64 100644 --- a/cmd/provider/synapse/zz_main.go +++ b/cmd/provider/synapse/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-synapse", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/timeseriesinsights/zz_main.go b/cmd/provider/timeseriesinsights/zz_main.go index a76f7f098..0b073ba56 100644 --- a/cmd/provider/timeseriesinsights/zz_main.go +++ b/cmd/provider/timeseriesinsights/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-timeseriesinsights", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/cmd/provider/web/zz_main.go b/cmd/provider/web/zz_main.go index f8e55f70c..395fedc4b 100644 --- a/cmd/provider/web/zz_main.go +++ b/cmd/provider/web/zz_main.go @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure-web", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/config/provider.go b/config/provider.go index 6c04a12e1..25ed6ed07 100644 --- a/config/provider.go +++ b/config/provider.go @@ -159,14 +159,6 @@ var skipList = []string{ // GetProvider returns provider configuration func GetProvider() *tjconfig.Provider { - // "azure" group contains resources that actually do not have a specific - // group, e.g. ResourceGroup with APIVersion "azure.upbound.io/v1beta1". - // We need to include the controllers for this group into the base packages - // list to get their controllers packaged together with the config package - // controllers. - basePackages := tjconfig.DefaultBasePackages - basePackages.Controller = append(basePackages.Controller, "internal/controller/azure/resourcegroup", "internal/controller/azure/resourceproviderregistration", "internal/controller/azure/subscription") - pc := tjconfig.NewProvider([]byte(providerSchema), resourcePrefix, modulePath, providerMetadata, tjconfig.WithShortName("azure"), tjconfig.WithRootGroup("azure.upbound.io"), @@ -178,8 +170,15 @@ func GetProvider() *tjconfig.Provider { tjconfig.WithReferenceInjectors([]tjconfig.ReferenceInjector{reference.NewInjector(modulePath)}), tjconfig.WithFeaturesPackage("internal/features"), tjconfig.WithMainTemplate(hack.MainTemplate), - tjconfig.WithBasePackages(basePackages), ) + // "azure" group contains resources that actually do not have a specific + // group, e.g. ResourceGroup with APIVersion "azure.upbound.io/v1beta1". + // We need to include the controllers for this group into the base packages + // list to get their controllers packaged together with the config package + // controllers (provider family config package). + for _, c := range []string{"internal/controller/azure/resourcegroup", "internal/controller/azure/resourceproviderregistration", "internal/controller/azure/subscription"} { + pc.BasePackages.ControllerMap[c] = "config" + } // API group overrides from Terraform import statements for _, r := range pc.Resources { diff --git a/examples-generated/alertsmanagement/monitoractionruleactiongroup.yaml b/examples-generated/alertsmanagement/monitoractionruleactiongroup.yaml index 05c98196f..10512f8df 100644 --- a/examples-generated/alertsmanagement/monitoractionruleactiongroup.yaml +++ b/examples-generated/alertsmanagement/monitoractionruleactiongroup.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/alertsmanagement/monitoractionrulesuppression.yaml b/examples-generated/alertsmanagement/monitoractionrulesuppression.yaml index 7b4449a84..b55282053 100644 --- a/examples-generated/alertsmanagement/monitoractionrulesuppression.yaml +++ b/examples-generated/alertsmanagement/monitoractionrulesuppression.yaml @@ -41,6 +41,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/alertsmanagement/monitoralertprocessingruleactiongroup.yaml b/examples-generated/alertsmanagement/monitoralertprocessingruleactiongroup.yaml index 992d80d52..4ad396f12 100644 --- a/examples-generated/alertsmanagement/monitoralertprocessingruleactiongroup.yaml +++ b/examples-generated/alertsmanagement/monitoralertprocessingruleactiongroup.yaml @@ -71,6 +71,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/alertsmanagement/monitoralertprocessingrulesuppression.yaml b/examples-generated/alertsmanagement/monitoralertprocessingrulesuppression.yaml index 7caa5746d..0f56b4203 100644 --- a/examples-generated/alertsmanagement/monitoralertprocessingrulesuppression.yaml +++ b/examples-generated/alertsmanagement/monitoralertprocessingrulesuppression.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/alertsmanagement/monitorsmartdetectoralertrule.yaml b/examples-generated/alertsmanagement/monitorsmartdetectoralertrule.yaml index 32c2ec1bb..fc333277b 100644 --- a/examples-generated/alertsmanagement/monitorsmartdetectoralertrule.yaml +++ b/examples-generated/alertsmanagement/monitorsmartdetectoralertrule.yaml @@ -69,6 +69,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/analysisservices/server.yaml b/examples-generated/analysisservices/server.yaml index 1890f91de..197b9b284 100644 --- a/examples-generated/analysisservices/server.yaml +++ b/examples-generated/analysisservices/server.yaml @@ -37,6 +37,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/api.yaml b/examples-generated/apimanagement/api.yaml index 290a23fc5..10dc1f710 100644 --- a/examples-generated/apimanagement/api.yaml +++ b/examples-generated/apimanagement/api.yaml @@ -56,6 +56,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/apidiagnostic.yaml b/examples-generated/apimanagement/apidiagnostic.yaml index fa84edaba..441f822a9 100644 --- a/examples-generated/apimanagement/apidiagnostic.yaml +++ b/examples-generated/apimanagement/apidiagnostic.yaml @@ -152,6 +152,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/apioperation.yaml b/examples-generated/apimanagement/apioperation.yaml index 74c868a9a..50d36f547 100644 --- a/examples-generated/apimanagement/apioperation.yaml +++ b/examples-generated/apimanagement/apioperation.yaml @@ -23,6 +23,3 @@ spec: response: - statusCode: 200 urlTemplate: /users/{id}/delete - ---- - diff --git a/examples-generated/apimanagement/apioperationpolicy.yaml b/examples-generated/apimanagement/apioperationpolicy.yaml index d0191616a..8f5204f33 100644 --- a/examples-generated/apimanagement/apioperationpolicy.yaml +++ b/examples-generated/apimanagement/apioperationpolicy.yaml @@ -105,6 +105,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/apioperationtag.yaml b/examples-generated/apimanagement/apioperationtag.yaml index 6897acb56..be3b0ad54 100644 --- a/examples-generated/apimanagement/apioperationtag.yaml +++ b/examples-generated/apimanagement/apioperationtag.yaml @@ -40,6 +40,3 @@ spec: response: - statusCode: 200 urlTemplate: /users/{id}/delete - ---- - diff --git a/examples-generated/apimanagement/apipolicy.yaml b/examples-generated/apimanagement/apipolicy.yaml index db2ba0a92..7a38b36f2 100644 --- a/examples-generated/apimanagement/apipolicy.yaml +++ b/examples-generated/apimanagement/apipolicy.yaml @@ -23,6 +23,3 @@ spec: - ---- - diff --git a/examples-generated/apimanagement/apirelease.yaml b/examples-generated/apimanagement/apirelease.yaml index b22b90ad0..1d8f8de0e 100644 --- a/examples-generated/apimanagement/apirelease.yaml +++ b/examples-generated/apimanagement/apirelease.yaml @@ -72,6 +72,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/apischema.yaml b/examples-generated/apimanagement/apischema.yaml index 73dc26c19..602d8f8e1 100644 --- a/examples-generated/apimanagement/apischema.yaml +++ b/examples-generated/apimanagement/apischema.yaml @@ -19,6 +19,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_api_management_api value: ${file("api_management_api_schema.xml")} - ---- - diff --git a/examples-generated/apimanagement/apitag.yaml b/examples-generated/apimanagement/apitag.yaml index 7bf06b9a0..067078083 100644 --- a/examples-generated/apimanagement/apitag.yaml +++ b/examples-generated/apimanagement/apitag.yaml @@ -61,6 +61,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/apiversionset.yaml b/examples-generated/apimanagement/apiversionset.yaml index c93f4c371..ccbda0534 100644 --- a/examples-generated/apimanagement/apiversionset.yaml +++ b/examples-generated/apimanagement/apiversionset.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/authorizationserver.yaml b/examples-generated/apimanagement/authorizationserver.yaml index e9942af68..4e873e554 100644 --- a/examples-generated/apimanagement/authorizationserver.yaml +++ b/examples-generated/apimanagement/authorizationserver.yaml @@ -22,6 +22,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: azurerm_api_management - ---- - diff --git a/examples-generated/apimanagement/backend.yaml b/examples-generated/apimanagement/backend.yaml index f1fc6cd0b..01e244b43 100644 --- a/examples-generated/apimanagement/backend.yaml +++ b/examples-generated/apimanagement/backend.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/certificate.yaml b/examples-generated/apimanagement/certificate.yaml index 17d47f3b3..6fd4b3bad 100644 --- a/examples-generated/apimanagement/certificate.yaml +++ b/examples-generated/apimanagement/certificate.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/diagnostic.yaml b/examples-generated/apimanagement/diagnostic.yaml index 7f8099450..ab78cf645 100644 --- a/examples-generated/apimanagement/diagnostic.yaml +++ b/examples-generated/apimanagement/diagnostic.yaml @@ -122,6 +122,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/emailtemplate.yaml b/examples-generated/apimanagement/emailtemplate.yaml index b1bc75368..35bdec8ae 100644 --- a/examples-generated/apimanagement/emailtemplate.yaml +++ b/examples-generated/apimanagement/emailtemplate.yaml @@ -61,6 +61,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/gateway.yaml b/examples-generated/apimanagement/gateway.yaml index 63a5aff79..b852d738f 100644 --- a/examples-generated/apimanagement/gateway.yaml +++ b/examples-generated/apimanagement/gateway.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/gatewayapi.yaml b/examples-generated/apimanagement/gatewayapi.yaml index c54640e1b..1a2e1ae57 100644 --- a/examples-generated/apimanagement/gatewayapi.yaml +++ b/examples-generated/apimanagement/gatewayapi.yaml @@ -14,6 +14,3 @@ spec: gatewayIdSelector: matchLabels: testing.upbound.io/example-name: azurerm_api_management_gateway - ---- - diff --git a/examples-generated/apimanagement/globalschema.yaml b/examples-generated/apimanagement/globalschema.yaml index 973479547..58183a396 100644 --- a/examples-generated/apimanagement/globalschema.yaml +++ b/examples-generated/apimanagement/globalschema.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/identityprovideraad.yaml b/examples-generated/apimanagement/identityprovideraad.yaml index fe3819863..4195c07a4 100644 --- a/examples-generated/apimanagement/identityprovideraad.yaml +++ b/examples-generated/apimanagement/identityprovideraad.yaml @@ -55,6 +55,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/identityproviderfacebook.yaml b/examples-generated/apimanagement/identityproviderfacebook.yaml index b420411f8..3d3b42f25 100644 --- a/examples-generated/apimanagement/identityproviderfacebook.yaml +++ b/examples-generated/apimanagement/identityproviderfacebook.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/identityprovidergoogle.yaml b/examples-generated/apimanagement/identityprovidergoogle.yaml index 121747675..5406ef5c0 100644 --- a/examples-generated/apimanagement/identityprovidergoogle.yaml +++ b/examples-generated/apimanagement/identityprovidergoogle.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/identityprovidermicrosoft.yaml b/examples-generated/apimanagement/identityprovidermicrosoft.yaml index 4b783468d..2111a50f0 100644 --- a/examples-generated/apimanagement/identityprovidermicrosoft.yaml +++ b/examples-generated/apimanagement/identityprovidermicrosoft.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/identityprovidertwitter.yaml b/examples-generated/apimanagement/identityprovidertwitter.yaml index 583f42ced..5d676d9c7 100644 --- a/examples-generated/apimanagement/identityprovidertwitter.yaml +++ b/examples-generated/apimanagement/identityprovidertwitter.yaml @@ -56,6 +56,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/logger.yaml b/examples-generated/apimanagement/logger.yaml index be3f01f99..28307a8d7 100644 --- a/examples-generated/apimanagement/logger.yaml +++ b/examples-generated/apimanagement/logger.yaml @@ -74,6 +74,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/management.yaml b/examples-generated/apimanagement/management.yaml index 5b4c4823e..c409e584b 100644 --- a/examples-generated/apimanagement/management.yaml +++ b/examples-generated/apimanagement/management.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/namedvalue.yaml b/examples-generated/apimanagement/namedvalue.yaml index e754b027e..ac646edbc 100644 --- a/examples-generated/apimanagement/namedvalue.yaml +++ b/examples-generated/apimanagement/namedvalue.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/notificationrecipientemail.yaml b/examples-generated/apimanagement/notificationrecipientemail.yaml index 416454eb7..f16278b4a 100644 --- a/examples-generated/apimanagement/notificationrecipientemail.yaml +++ b/examples-generated/apimanagement/notificationrecipientemail.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/notificationrecipientuser.yaml b/examples-generated/apimanagement/notificationrecipientuser.yaml index 1513f44ac..9ded259e0 100644 --- a/examples-generated/apimanagement/notificationrecipientuser.yaml +++ b/examples-generated/apimanagement/notificationrecipientuser.yaml @@ -72,6 +72,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/openidconnectprovider.yaml b/examples-generated/apimanagement/openidconnectprovider.yaml index a4c6bb3a0..da7881303 100644 --- a/examples-generated/apimanagement/openidconnectprovider.yaml +++ b/examples-generated/apimanagement/openidconnectprovider.yaml @@ -58,6 +58,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/policy.yaml b/examples-generated/apimanagement/policy.yaml index 6a04042f7..3e7ae7955 100644 --- a/examples-generated/apimanagement/policy.yaml +++ b/examples-generated/apimanagement/policy.yaml @@ -70,6 +70,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/product.yaml b/examples-generated/apimanagement/product.yaml index 9d74194b8..943c99701 100644 --- a/examples-generated/apimanagement/product.yaml +++ b/examples-generated/apimanagement/product.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/productapi.yaml b/examples-generated/apimanagement/productapi.yaml index a6b7d1e27..b55230eaf 100644 --- a/examples-generated/apimanagement/productapi.yaml +++ b/examples-generated/apimanagement/productapi.yaml @@ -20,6 +20,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: azurerm_api_management - ---- - diff --git a/examples-generated/apimanagement/productpolicy.yaml b/examples-generated/apimanagement/productpolicy.yaml index cfd40ada3..309058ae1 100644 --- a/examples-generated/apimanagement/productpolicy.yaml +++ b/examples-generated/apimanagement/productpolicy.yaml @@ -23,6 +23,3 @@ spec: - ---- - diff --git a/examples-generated/apimanagement/producttag.yaml b/examples-generated/apimanagement/producttag.yaml index dea43de51..4ef5bd7b7 100644 --- a/examples-generated/apimanagement/producttag.yaml +++ b/examples-generated/apimanagement/producttag.yaml @@ -93,6 +93,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/rediscache.yaml b/examples-generated/apimanagement/rediscache.yaml index 0186475cf..c3c334983 100644 --- a/examples-generated/apimanagement/rediscache.yaml +++ b/examples-generated/apimanagement/rediscache.yaml @@ -78,6 +78,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/subscription.yaml b/examples-generated/apimanagement/subscription.yaml index 25081ba8a..2f3e46791 100644 --- a/examples-generated/apimanagement/subscription.yaml +++ b/examples-generated/apimanagement/subscription.yaml @@ -20,6 +20,3 @@ spec: userIdSelector: matchLabels: testing.upbound.io/example-name: azurerm_api_management_user - ---- - diff --git a/examples-generated/apimanagement/tag.yaml b/examples-generated/apimanagement/tag.yaml index 4466f42fb..8eb817806 100644 --- a/examples-generated/apimanagement/tag.yaml +++ b/examples-generated/apimanagement/tag.yaml @@ -45,6 +45,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/apimanagement/user.yaml b/examples-generated/apimanagement/user.yaml index 660137184..55fe437d6 100644 --- a/examples-generated/apimanagement/user.yaml +++ b/examples-generated/apimanagement/user.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/appconfiguration/configuration.yaml b/examples-generated/appconfiguration/configuration.yaml index aa29f251d..020e888c0 100644 --- a/examples-generated/appconfiguration/configuration.yaml +++ b/examples-generated/appconfiguration/configuration.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/appplatform/springcloudaccelerator.yaml b/examples-generated/appplatform/springcloudaccelerator.yaml index 397fd4675..67af8faf9 100644 --- a/examples-generated/appplatform/springcloudaccelerator.yaml +++ b/examples-generated/appplatform/springcloudaccelerator.yaml @@ -44,6 +44,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudactivedeployment.yaml b/examples-generated/appplatform/springcloudactivedeployment.yaml index 1d476b601..992193330 100644 --- a/examples-generated/appplatform/springcloudactivedeployment.yaml +++ b/examples-generated/appplatform/springcloudactivedeployment.yaml @@ -90,6 +90,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/appplatform/springcloudapiportal.yaml b/examples-generated/appplatform/springcloudapiportal.yaml index 3ada0b2cf..f877e6174 100644 --- a/examples-generated/appplatform/springcloudapiportal.yaml +++ b/examples-generated/appplatform/springcloudapiportal.yaml @@ -70,6 +70,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudapiportalcustomdomain.yaml b/examples-generated/appplatform/springcloudapiportalcustomdomain.yaml index 6ff3af83a..d486de3bb 100644 --- a/examples-generated/appplatform/springcloudapiportalcustomdomain.yaml +++ b/examples-generated/appplatform/springcloudapiportalcustomdomain.yaml @@ -78,6 +78,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudapp.yaml b/examples-generated/appplatform/springcloudapp.yaml index 5571b456d..8fe4b7464 100644 --- a/examples-generated/appplatform/springcloudapp.yaml +++ b/examples-generated/appplatform/springcloudapp.yaml @@ -47,6 +47,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/appplatform/springcloudappcosmosdbassociation.yaml b/examples-generated/appplatform/springcloudappcosmosdbassociation.yaml index 0a56b9176..6d5c64ceb 100644 --- a/examples-generated/appplatform/springcloudappcosmosdbassociation.yaml +++ b/examples-generated/appplatform/springcloudappcosmosdbassociation.yaml @@ -92,6 +92,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/appplatform/springcloudappmysqlassociation.yaml b/examples-generated/appplatform/springcloudappmysqlassociation.yaml index b1ad15200..541807714 100644 --- a/examples-generated/appplatform/springcloudappmysqlassociation.yaml +++ b/examples-generated/appplatform/springcloudappmysqlassociation.yaml @@ -123,6 +123,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/appplatform/springcloudappredisassociation.yaml b/examples-generated/appplatform/springcloudappredisassociation.yaml index bd0ed8f2b..1944b8283 100644 --- a/examples-generated/appplatform/springcloudappredisassociation.yaml +++ b/examples-generated/appplatform/springcloudappredisassociation.yaml @@ -89,6 +89,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/appplatform/springcloudbuilddeployment.yaml b/examples-generated/appplatform/springcloudbuilddeployment.yaml index 968fce8f0..668b5fd02 100644 --- a/examples-generated/appplatform/springcloudbuilddeployment.yaml +++ b/examples-generated/appplatform/springcloudbuilddeployment.yaml @@ -70,6 +70,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudbuilder.yaml b/examples-generated/appplatform/springcloudbuilder.yaml index 39d775b03..50c359a86 100644 --- a/examples-generated/appplatform/springcloudbuilder.yaml +++ b/examples-generated/appplatform/springcloudbuilder.yaml @@ -51,6 +51,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudbuildpackbinding.yaml b/examples-generated/appplatform/springcloudbuildpackbinding.yaml index 46f08bd57..028b8743b 100644 --- a/examples-generated/appplatform/springcloudbuildpackbinding.yaml +++ b/examples-generated/appplatform/springcloudbuildpackbinding.yaml @@ -75,6 +75,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudcertificate.yaml b/examples-generated/appplatform/springcloudcertificate.yaml index b16d59bfb..7223a0e92 100644 --- a/examples-generated/appplatform/springcloudcertificate.yaml +++ b/examples-generated/appplatform/springcloudcertificate.yaml @@ -108,6 +108,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/appplatform/springcloudconfigurationservice.yaml b/examples-generated/appplatform/springcloudconfigurationservice.yaml index f72a82199..a00291ab0 100644 --- a/examples-generated/appplatform/springcloudconfigurationservice.yaml +++ b/examples-generated/appplatform/springcloudconfigurationservice.yaml @@ -58,6 +58,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudcontainerdeployment.yaml b/examples-generated/appplatform/springcloudcontainerdeployment.yaml index 5f9283f4a..c4749b9ed 100644 --- a/examples-generated/appplatform/springcloudcontainerdeployment.yaml +++ b/examples-generated/appplatform/springcloudcontainerdeployment.yaml @@ -75,6 +75,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudcustomdomain.yaml b/examples-generated/appplatform/springcloudcustomdomain.yaml index 9e491dd9d..6dd0a0e49 100644 --- a/examples-generated/appplatform/springcloudcustomdomain.yaml +++ b/examples-generated/appplatform/springcloudcustomdomain.yaml @@ -83,6 +83,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/appplatform/springcloudcustomizedaccelerator.yaml b/examples-generated/appplatform/springcloudcustomizedaccelerator.yaml index 9542465e4..ddd443ae3 100644 --- a/examples-generated/appplatform/springcloudcustomizedaccelerator.yaml +++ b/examples-generated/appplatform/springcloudcustomizedaccelerator.yaml @@ -70,6 +70,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springclouddevtoolportal.yaml b/examples-generated/appplatform/springclouddevtoolportal.yaml index b676d2d39..d8ddb0b4b 100644 --- a/examples-generated/appplatform/springclouddevtoolportal.yaml +++ b/examples-generated/appplatform/springclouddevtoolportal.yaml @@ -55,6 +55,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudgateway.yaml b/examples-generated/appplatform/springcloudgateway.yaml index 8d23057bf..08a9b925a 100644 --- a/examples-generated/appplatform/springcloudgateway.yaml +++ b/examples-generated/appplatform/springcloudgateway.yaml @@ -72,6 +72,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudgatewaycustomdomain.yaml b/examples-generated/appplatform/springcloudgatewaycustomdomain.yaml index e4a47c5a9..3d6675308 100644 --- a/examples-generated/appplatform/springcloudgatewaycustomdomain.yaml +++ b/examples-generated/appplatform/springcloudgatewaycustomdomain.yaml @@ -60,6 +60,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/appplatform/springcloudjavadeployment.yaml b/examples-generated/appplatform/springcloudjavadeployment.yaml index 4c3b792e5..38843b6ed 100644 --- a/examples-generated/appplatform/springcloudjavadeployment.yaml +++ b/examples-generated/appplatform/springcloudjavadeployment.yaml @@ -72,6 +72,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/appplatform/springcloudservice.yaml b/examples-generated/appplatform/springcloudservice.yaml index 1c658bf4a..e0abf6ad8 100644 --- a/examples-generated/appplatform/springcloudservice.yaml +++ b/examples-generated/appplatform/springcloudservice.yaml @@ -58,6 +58,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/appplatform/springcloudstorage.yaml b/examples-generated/appplatform/springcloudstorage.yaml index 2d2472e49..1b2ce4b91 100644 --- a/examples-generated/appplatform/springcloudstorage.yaml +++ b/examples-generated/appplatform/springcloudstorage.yaml @@ -67,6 +67,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/attestation/provider.yaml b/examples-generated/attestation/provider.yaml index 17a58dbe2..71c0302dd 100644 --- a/examples-generated/attestation/provider.yaml +++ b/examples-generated/attestation/provider.yaml @@ -27,6 +27,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/authorization/managementlock.yaml b/examples-generated/authorization/managementlock.yaml index 7a9d1a55d..de1d1ea1f 100644 --- a/examples-generated/authorization/managementlock.yaml +++ b/examples-generated/authorization/managementlock.yaml @@ -14,6 +14,3 @@ spec: scopeSelector: matchLabels: testing.upbound.io/example-name: azurerm_subscription - ---- - diff --git a/examples-generated/authorization/policydefinition.yaml b/examples-generated/authorization/policydefinition.yaml index 05b744026..49d73ceac 100644 --- a/examples-generated/authorization/policydefinition.yaml +++ b/examples-generated/authorization/policydefinition.yaml @@ -39,6 +39,3 @@ spec: } } policyType: Custom - ---- - diff --git a/examples-generated/authorization/resourcegrouppolicyassignment.yaml b/examples-generated/authorization/resourcegrouppolicyassignment.yaml index 6dac978df..d58b1d311 100644 --- a/examples-generated/authorization/resourcegrouppolicyassignment.yaml +++ b/examples-generated/authorization/resourcegrouppolicyassignment.yaml @@ -65,6 +65,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/authorization/resourcepolicyassignment.yaml b/examples-generated/authorization/resourcepolicyassignment.yaml index d68351a0c..85d2c9cc4 100644 --- a/examples-generated/authorization/resourcepolicyassignment.yaml +++ b/examples-generated/authorization/resourcepolicyassignment.yaml @@ -40,6 +40,3 @@ spec: } } policyType: Custom - ---- - diff --git a/examples-generated/authorization/resourcepolicyexemption.yaml b/examples-generated/authorization/resourcepolicyexemption.yaml index ce6aa509f..2ae17ca61 100644 --- a/examples-generated/authorization/resourcepolicyexemption.yaml +++ b/examples-generated/authorization/resourcepolicyexemption.yaml @@ -70,6 +70,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/authorization/roleassignment.yaml b/examples-generated/authorization/roleassignment.yaml index 008da04c2..bc5ebf86f 100644 --- a/examples-generated/authorization/roleassignment.yaml +++ b/examples-generated/authorization/roleassignment.yaml @@ -11,6 +11,3 @@ spec: principalId: ${data.azurerm_client_config.example.object_id} roleDefinitionName: Reader scope: ${data.azurerm_subscription.primary.id} - ---- - diff --git a/examples-generated/authorization/roledefinition.yaml b/examples-generated/authorization/roledefinition.yaml index f5583d4ad..15d2bb9ed 100644 --- a/examples-generated/authorization/roledefinition.yaml +++ b/examples-generated/authorization/roledefinition.yaml @@ -17,6 +17,3 @@ spec: - '*' notActions: [] scope: ${data.azurerm_subscription.primary.id} - ---- - diff --git a/examples-generated/authorization/subscriptionpolicyassignment.yaml b/examples-generated/authorization/subscriptionpolicyassignment.yaml index 86276f599..b416ddd15 100644 --- a/examples-generated/authorization/subscriptionpolicyassignment.yaml +++ b/examples-generated/authorization/subscriptionpolicyassignment.yaml @@ -40,6 +40,3 @@ spec: } } policyType: Custom - ---- - diff --git a/examples-generated/authorization/subscriptionpolicyexemption.yaml b/examples-generated/authorization/subscriptionpolicyexemption.yaml index 2edd645a5..9647c4303 100644 --- a/examples-generated/authorization/subscriptionpolicyexemption.yaml +++ b/examples-generated/authorization/subscriptionpolicyexemption.yaml @@ -33,6 +33,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_policy_set_definition subscriptionId: ${data.azurerm_subscription.example.id} - ---- - diff --git a/examples-generated/automation/account.yaml b/examples-generated/automation/account.yaml index ea2510510..0a141f1ed 100644 --- a/examples-generated/automation/account.yaml +++ b/examples-generated/automation/account.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/connection.yaml b/examples-generated/automation/connection.yaml index 0a188e250..4b1bd773b 100644 --- a/examples-generated/automation/connection.yaml +++ b/examples-generated/automation/connection.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/connectionclassiccertificate.yaml b/examples-generated/automation/connectionclassiccertificate.yaml index baf5b42e0..b836237b2 100644 --- a/examples-generated/automation/connectionclassiccertificate.yaml +++ b/examples-generated/automation/connectionclassiccertificate.yaml @@ -49,6 +49,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/connectiontype.yaml b/examples-generated/automation/connectiontype.yaml index 72957d295..f1b9667d1 100644 --- a/examples-generated/automation/connectiontype.yaml +++ b/examples-generated/automation/connectiontype.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/credential.yaml b/examples-generated/automation/credential.yaml index d909e4f18..a86efb4bf 100644 --- a/examples-generated/automation/credential.yaml +++ b/examples-generated/automation/credential.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/hybridrunbookworkergroup.yaml b/examples-generated/automation/hybridrunbookworkergroup.yaml index 55efdb124..733ff6c40 100644 --- a/examples-generated/automation/hybridrunbookworkergroup.yaml +++ b/examples-generated/automation/hybridrunbookworkergroup.yaml @@ -13,6 +13,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/automation/module.yaml b/examples-generated/automation/module.yaml index 6d2de9577..c4ec4cd03 100644 --- a/examples-generated/automation/module.yaml +++ b/examples-generated/automation/module.yaml @@ -48,6 +48,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/runbook.yaml b/examples-generated/automation/runbook.yaml index 510a28262..f40133d25 100644 --- a/examples-generated/automation/runbook.yaml +++ b/examples-generated/automation/runbook.yaml @@ -54,6 +54,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/schedule.yaml b/examples-generated/automation/schedule.yaml index 1318ddd2a..b842d13c4 100644 --- a/examples-generated/automation/schedule.yaml +++ b/examples-generated/automation/schedule.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/variablebool.yaml b/examples-generated/automation/variablebool.yaml index 770e7a269..8d90bdc90 100644 --- a/examples-generated/automation/variablebool.yaml +++ b/examples-generated/automation/variablebool.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/variabledatetime.yaml b/examples-generated/automation/variabledatetime.yaml index 70db4c93b..568f4fdeb 100644 --- a/examples-generated/automation/variabledatetime.yaml +++ b/examples-generated/automation/variabledatetime.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/variableint.yaml b/examples-generated/automation/variableint.yaml index 7ff12914c..23158510c 100644 --- a/examples-generated/automation/variableint.yaml +++ b/examples-generated/automation/variableint.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/variablestring.yaml b/examples-generated/automation/variablestring.yaml index 02165640f..b072119a9 100644 --- a/examples-generated/automation/variablestring.yaml +++ b/examples-generated/automation/variablestring.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/automation/webhook.yaml b/examples-generated/automation/webhook.yaml index 475258b34..dffc35525 100644 --- a/examples-generated/automation/webhook.yaml +++ b/examples-generated/automation/webhook.yaml @@ -81,6 +81,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/azure/resourcegroup.yaml b/examples-generated/azure/resourcegroup.yaml index 4d4052e02..3676b5a6b 100644 --- a/examples-generated/azure/resourcegroup.yaml +++ b/examples-generated/azure/resourcegroup.yaml @@ -9,6 +9,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/azure/resourceproviderregistration.yaml b/examples-generated/azure/resourceproviderregistration.yaml index d8db28346..a524fb171 100644 --- a/examples-generated/azure/resourceproviderregistration.yaml +++ b/examples-generated/azure/resourceproviderregistration.yaml @@ -9,6 +9,3 @@ metadata: spec: forProvider: name: Microsoft.PolicyInsights - ---- - diff --git a/examples-generated/azure/subscription.yaml b/examples-generated/azure/subscription.yaml index 17d627a2e..bdd4cc2ea 100644 --- a/examples-generated/azure/subscription.yaml +++ b/examples-generated/azure/subscription.yaml @@ -10,6 +10,3 @@ spec: forProvider: billingScopeId: ${data.azurerm_billing_enrollment_account_scope.example.id} subscriptionName: My Example EA Subscription - ---- - diff --git a/examples-generated/azurestackhci/cluster.yaml b/examples-generated/azurestackhci/cluster.yaml index acd7babb1..5ed148f79 100644 --- a/examples-generated/azurestackhci/cluster.yaml +++ b/examples-generated/azurestackhci/cluster.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/botservice/botchannelalexa.yaml b/examples-generated/botservice/botchannelalexa.yaml index 2c9b7ec27..c543bcf35 100644 --- a/examples-generated/botservice/botchannelalexa.yaml +++ b/examples-generated/botservice/botchannelalexa.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/botservice/botchanneldirectline.yaml b/examples-generated/botservice/botchanneldirectline.yaml index bb7d5f344..9195b1892 100644 --- a/examples-generated/botservice/botchanneldirectline.yaml +++ b/examples-generated/botservice/botchanneldirectline.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/botservice/botchannelline.yaml b/examples-generated/botservice/botchannelline.yaml index 9fbc1638e..3025b2de5 100644 --- a/examples-generated/botservice/botchannelline.yaml +++ b/examples-generated/botservice/botchannelline.yaml @@ -58,6 +58,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/botservice/botchannelmsteams.yaml b/examples-generated/botservice/botchannelmsteams.yaml index 04059bc2a..b33694bbb 100644 --- a/examples-generated/botservice/botchannelmsteams.yaml +++ b/examples-generated/botservice/botchannelmsteams.yaml @@ -49,6 +49,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/botservice/botchannelslack.yaml b/examples-generated/botservice/botchannelslack.yaml index f20fc5bd5..b17d7b75e 100644 --- a/examples-generated/botservice/botchannelslack.yaml +++ b/examples-generated/botservice/botchannelslack.yaml @@ -58,6 +58,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/botservice/botchannelsms.yaml b/examples-generated/botservice/botchannelsms.yaml index 4c9d3a2d8..970be1829 100644 --- a/examples-generated/botservice/botchannelsms.yaml +++ b/examples-generated/botservice/botchannelsms.yaml @@ -55,6 +55,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/botservice/botchannelsregistration.yaml b/examples-generated/botservice/botchannelsregistration.yaml index 85eafab3b..388e18b39 100644 --- a/examples-generated/botservice/botchannelsregistration.yaml +++ b/examples-generated/botservice/botchannelsregistration.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/botservice/botchannelwebchat.yaml b/examples-generated/botservice/botchannelwebchat.yaml index f32178c6c..ce6e6e3b0 100644 --- a/examples-generated/botservice/botchannelwebchat.yaml +++ b/examples-generated/botservice/botchannelwebchat.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/botservice/botconnection.yaml b/examples-generated/botservice/botconnection.yaml index 8e870f03c..6cb495d5a 100644 --- a/examples-generated/botservice/botconnection.yaml +++ b/examples-generated/botservice/botconnection.yaml @@ -55,6 +55,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/botservice/botwebapp.yaml b/examples-generated/botservice/botwebapp.yaml index bf6dbbd61..48d661e13 100644 --- a/examples-generated/botservice/botwebapp.yaml +++ b/examples-generated/botservice/botwebapp.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cache/rediscache.yaml b/examples-generated/cache/rediscache.yaml index b7e74f4ff..cc01c2b03 100644 --- a/examples-generated/cache/rediscache.yaml +++ b/examples-generated/cache/rediscache.yaml @@ -33,6 +33,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cache/redisenterprisecluster.yaml b/examples-generated/cache/redisenterprisecluster.yaml index 47104aade..7f4030090 100644 --- a/examples-generated/cache/redisenterprisecluster.yaml +++ b/examples-generated/cache/redisenterprisecluster.yaml @@ -27,6 +27,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cache/redisenterprisedatabase.yaml b/examples-generated/cache/redisenterprisedatabase.yaml index 8c6ad14f8..e5d6c5945 100644 --- a/examples-generated/cache/redisenterprisedatabase.yaml +++ b/examples-generated/cache/redisenterprisedatabase.yaml @@ -72,6 +72,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cache/redisfirewallrule.yaml b/examples-generated/cache/redisfirewallrule.yaml index e6363ceb0..18fad14e0 100644 --- a/examples-generated/cache/redisfirewallrule.yaml +++ b/examples-generated/cache/redisfirewallrule.yaml @@ -55,6 +55,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cache/redislinkedserver.yaml b/examples-generated/cache/redislinkedserver.yaml index 3a480b681..be6cac0be 100644 --- a/examples-generated/cache/redislinkedserver.yaml +++ b/examples-generated/cache/redislinkedserver.yaml @@ -97,6 +97,3 @@ metadata: spec: forProvider: location: West US - ---- - diff --git a/examples-generated/cdn/endpoint.yaml b/examples-generated/cdn/endpoint.yaml index 8d8a1610e..baf1d8c0e 100644 --- a/examples-generated/cdn/endpoint.yaml +++ b/examples-generated/cdn/endpoint.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cdn/frontdoorcustomdomain.yaml b/examples-generated/cdn/frontdoorcustomdomain.yaml index 4d75a24da..4eb8bdf17 100644 --- a/examples-generated/cdn/frontdoorcustomdomain.yaml +++ b/examples-generated/cdn/frontdoorcustomdomain.yaml @@ -65,6 +65,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cdn/frontdoorcustomdomainassociation.yaml b/examples-generated/cdn/frontdoorcustomdomainassociation.yaml index 1fc592a62..0988a7284 100644 --- a/examples-generated/cdn/frontdoorcustomdomainassociation.yaml +++ b/examples-generated/cdn/frontdoorcustomdomainassociation.yaml @@ -14,6 +14,3 @@ spec: cdnFrontdoorRouteIdsRefs: - name: contoso - name: fabrikam - ---- - diff --git a/examples-generated/cdn/frontdoorendpoint.yaml b/examples-generated/cdn/frontdoorendpoint.yaml index d7794659c..adf4f79ed 100644 --- a/examples-generated/cdn/frontdoorendpoint.yaml +++ b/examples-generated/cdn/frontdoorendpoint.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cdn/frontdoororigin.yaml b/examples-generated/cdn/frontdoororigin.yaml index 4b27743bc..64175366c 100644 --- a/examples-generated/cdn/frontdoororigin.yaml +++ b/examples-generated/cdn/frontdoororigin.yaml @@ -72,6 +72,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cdn/frontdoororigingroup.yaml b/examples-generated/cdn/frontdoororigingroup.yaml index 0562b80af..8ac5a0f57 100644 --- a/examples-generated/cdn/frontdoororigingroup.yaml +++ b/examples-generated/cdn/frontdoororigingroup.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cdn/frontdoorprofile.yaml b/examples-generated/cdn/frontdoorprofile.yaml index 319f9ebe9..7b38bd3df 100644 --- a/examples-generated/cdn/frontdoorprofile.yaml +++ b/examples-generated/cdn/frontdoorprofile.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cdn/frontdoorroute.yaml b/examples-generated/cdn/frontdoorroute.yaml index 9d9d78add..bc8535d37 100644 --- a/examples-generated/cdn/frontdoorroute.yaml +++ b/examples-generated/cdn/frontdoorroute.yaml @@ -212,6 +212,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cdn/frontdoorrule.yaml b/examples-generated/cdn/frontdoorrule.yaml index 8cc19ed4f..99e48b802 100644 --- a/examples-generated/cdn/frontdoorrule.yaml +++ b/examples-generated/cdn/frontdoorrule.yaml @@ -190,6 +190,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cdn/frontdoorruleset.yaml b/examples-generated/cdn/frontdoorruleset.yaml index 9ccca6438..c20c8189b 100644 --- a/examples-generated/cdn/frontdoorruleset.yaml +++ b/examples-generated/cdn/frontdoorruleset.yaml @@ -42,6 +42,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cdn/profile.yaml b/examples-generated/cdn/profile.yaml index c6bffb1da..e870f063f 100644 --- a/examples-generated/cdn/profile.yaml +++ b/examples-generated/cdn/profile.yaml @@ -30,6 +30,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/certificateregistration/appservicecertificateorder.yaml b/examples-generated/certificateregistration/appservicecertificateorder.yaml index bef7a93e5..a52d82d81 100644 --- a/examples-generated/certificateregistration/appservicecertificateorder.yaml +++ b/examples-generated/certificateregistration/appservicecertificateorder.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cognitiveservices/account.yaml b/examples-generated/cognitiveservices/account.yaml index 4f088dbc3..5351d2653 100644 --- a/examples-generated/cognitiveservices/account.yaml +++ b/examples-generated/cognitiveservices/account.yaml @@ -30,6 +30,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/communication/service.yaml b/examples-generated/communication/service.yaml index cd0cd60f9..dedf6f44c 100644 --- a/examples-generated/communication/service.yaml +++ b/examples-generated/communication/service.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/availabilityset.yaml b/examples-generated/compute/availabilityset.yaml index 5a5e4c48a..a429c5237 100644 --- a/examples-generated/compute/availabilityset.yaml +++ b/examples-generated/compute/availabilityset.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/capacityreservation.yaml b/examples-generated/compute/capacityreservation.yaml index 5bc7259ed..cfb54f0bf 100644 --- a/examples-generated/compute/capacityreservation.yaml +++ b/examples-generated/compute/capacityreservation.yaml @@ -45,6 +45,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/capacityreservationgroup.yaml b/examples-generated/compute/capacityreservationgroup.yaml index 72b541370..f79ba2e1f 100644 --- a/examples-generated/compute/capacityreservationgroup.yaml +++ b/examples-generated/compute/capacityreservationgroup.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/dedicatedhost.yaml b/examples-generated/compute/dedicatedhost.yaml index 485a9c08a..1dc6ad6d2 100644 --- a/examples-generated/compute/dedicatedhost.yaml +++ b/examples-generated/compute/dedicatedhost.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/diskaccess.yaml b/examples-generated/compute/diskaccess.yaml index adaf50556..270a2c609 100644 --- a/examples-generated/compute/diskaccess.yaml +++ b/examples-generated/compute/diskaccess.yaml @@ -12,6 +12,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/compute/diskencryptionset.yaml b/examples-generated/compute/diskencryptionset.yaml index 8526cce0b..255863379 100644 --- a/examples-generated/compute/diskencryptionset.yaml +++ b/examples-generated/compute/diskencryptionset.yaml @@ -150,6 +150,3 @@ spec: principalId: ${azurerm_disk_encryption_set.example.identity.0.principal_id} roleDefinitionName: Key Vault Crypto Service Encryption User scope: ${azurerm_key_vault.example.id} - ---- - diff --git a/examples-generated/compute/galleryapplication.yaml b/examples-generated/compute/galleryapplication.yaml index fb9c64ca0..752a60544 100644 --- a/examples-generated/compute/galleryapplication.yaml +++ b/examples-generated/compute/galleryapplication.yaml @@ -44,6 +44,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/compute/galleryapplicationversion.yaml b/examples-generated/compute/galleryapplicationversion.yaml index be9de3ed3..5dfba5ad0 100644 --- a/examples-generated/compute/galleryapplicationversion.yaml +++ b/examples-generated/compute/galleryapplicationversion.yaml @@ -131,6 +131,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/compute/image.yaml b/examples-generated/compute/image.yaml index e8411d967..909131c26 100644 --- a/examples-generated/compute/image.yaml +++ b/examples-generated/compute/image.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/linuxvirtualmachine.yaml b/examples-generated/compute/linuxvirtualmachine.yaml index e885bc0a2..6743cb494 100644 --- a/examples-generated/compute/linuxvirtualmachine.yaml +++ b/examples-generated/compute/linuxvirtualmachine.yaml @@ -104,6 +104,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/compute/linuxvirtualmachinescaleset.yaml b/examples-generated/compute/linuxvirtualmachinescaleset.yaml index 80796722e..c2568139a 100644 --- a/examples-generated/compute/linuxvirtualmachinescaleset.yaml +++ b/examples-generated/compute/linuxvirtualmachinescaleset.yaml @@ -89,6 +89,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/compute/manageddisk.yaml b/examples-generated/compute/manageddisk.yaml index 813ee6b15..17030ce8c 100644 --- a/examples-generated/compute/manageddisk.yaml +++ b/examples-generated/compute/manageddisk.yaml @@ -31,6 +31,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/manageddisksastoken.yaml b/examples-generated/compute/manageddisksastoken.yaml index 0121d3df0..3db15d019 100644 --- a/examples-generated/compute/manageddisksastoken.yaml +++ b/examples-generated/compute/manageddisksastoken.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/orchestratedvirtualmachinescaleset.yaml b/examples-generated/compute/orchestratedvirtualmachinescaleset.yaml index c38e971a7..9bdb8f8f0 100644 --- a/examples-generated/compute/orchestratedvirtualmachinescaleset.yaml +++ b/examples-generated/compute/orchestratedvirtualmachinescaleset.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/proximityplacementgroup.yaml b/examples-generated/compute/proximityplacementgroup.yaml index a4185529d..0a4f7e567 100644 --- a/examples-generated/compute/proximityplacementgroup.yaml +++ b/examples-generated/compute/proximityplacementgroup.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/sharedimage.yaml b/examples-generated/compute/sharedimage.yaml index aa07c34ab..b29bb434c 100644 --- a/examples-generated/compute/sharedimage.yaml +++ b/examples-generated/compute/sharedimage.yaml @@ -55,6 +55,3 @@ spec: tags: Hello: There World: Example - ---- - diff --git a/examples-generated/compute/sharedimagegallery.yaml b/examples-generated/compute/sharedimagegallery.yaml index d1a1b8b65..5db95c51b 100644 --- a/examples-generated/compute/sharedimagegallery.yaml +++ b/examples-generated/compute/sharedimagegallery.yaml @@ -30,6 +30,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/snapshot.yaml b/examples-generated/compute/snapshot.yaml index 946c607b6..720c798de 100644 --- a/examples-generated/compute/snapshot.yaml +++ b/examples-generated/compute/snapshot.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/compute/sshpublickey.yaml b/examples-generated/compute/sshpublickey.yaml index 4dc59f78b..b568d6ba7 100644 --- a/examples-generated/compute/sshpublickey.yaml +++ b/examples-generated/compute/sshpublickey.yaml @@ -13,6 +13,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/compute/windowsvirtualmachine.yaml b/examples-generated/compute/windowsvirtualmachine.yaml index f24cee157..7321ba402 100644 --- a/examples-generated/compute/windowsvirtualmachine.yaml +++ b/examples-generated/compute/windowsvirtualmachine.yaml @@ -105,6 +105,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/compute/windowsvirtualmachinescaleset.yaml b/examples-generated/compute/windowsvirtualmachinescaleset.yaml index b31448063..dd7b20171 100644 --- a/examples-generated/compute/windowsvirtualmachinescaleset.yaml +++ b/examples-generated/compute/windowsvirtualmachinescaleset.yaml @@ -90,6 +90,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/confidentialledger/ledger.yaml b/examples-generated/confidentialledger/ledger.yaml index 6de074324..e111c340d 100644 --- a/examples-generated/confidentialledger/ledger.yaml +++ b/examples-generated/confidentialledger/ledger.yaml @@ -31,6 +31,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/consumption/budgetmanagementgroup.yaml b/examples-generated/consumption/budgetmanagementgroup.yaml index 58ba38ec1..81d7dd2db 100644 --- a/examples-generated/consumption/budgetmanagementgroup.yaml +++ b/examples-generated/consumption/budgetmanagementgroup.yaml @@ -69,6 +69,3 @@ metadata: spec: forProvider: location: eastus - ---- - diff --git a/examples-generated/consumption/budgetresourcegroup.yaml b/examples-generated/consumption/budgetresourcegroup.yaml index 2514d3738..2004287af 100644 --- a/examples-generated/consumption/budgetresourcegroup.yaml +++ b/examples-generated/consumption/budgetresourcegroup.yaml @@ -76,6 +76,3 @@ metadata: spec: forProvider: location: eastus - ---- - diff --git a/examples-generated/consumption/budgetsubscription.yaml b/examples-generated/consumption/budgetsubscription.yaml index 3a96877b0..ea2bf0228 100644 --- a/examples-generated/consumption/budgetsubscription.yaml +++ b/examples-generated/consumption/budgetsubscription.yaml @@ -73,6 +73,3 @@ metadata: spec: forProvider: location: eastus - ---- - diff --git a/examples-generated/containerregistry/agentpool.yaml b/examples-generated/containerregistry/agentpool.yaml index e974fc0f0..aa261e53d 100644 --- a/examples-generated/containerregistry/agentpool.yaml +++ b/examples-generated/containerregistry/agentpool.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europ - ---- - diff --git a/examples-generated/containerregistry/containerconnectedregistry.yaml b/examples-generated/containerregistry/containerconnectedregistry.yaml index e1a6bb840..3c017bfc2 100644 --- a/examples-generated/containerregistry/containerconnectedregistry.yaml +++ b/examples-generated/containerregistry/containerconnectedregistry.yaml @@ -98,6 +98,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/containerregistry/registry.yaml b/examples-generated/containerregistry/registry.yaml index 61b71a7d0..0e3c2b41f 100644 --- a/examples-generated/containerregistry/registry.yaml +++ b/examples-generated/containerregistry/registry.yaml @@ -35,6 +35,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/containerregistry/scopemap.yaml b/examples-generated/containerregistry/scopemap.yaml index 29144795e..e9b2909a9 100644 --- a/examples-generated/containerregistry/scopemap.yaml +++ b/examples-generated/containerregistry/scopemap.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/containerregistry/token.yaml b/examples-generated/containerregistry/token.yaml index 1b384fff4..3b721df49 100644 --- a/examples-generated/containerregistry/token.yaml +++ b/examples-generated/containerregistry/token.yaml @@ -75,6 +75,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/containerregistry/tokenpassword.yaml b/examples-generated/containerregistry/tokenpassword.yaml index f115da129..c1b8049aa 100644 --- a/examples-generated/containerregistry/tokenpassword.yaml +++ b/examples-generated/containerregistry/tokenpassword.yaml @@ -93,6 +93,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/containerregistry/webhook.yaml b/examples-generated/containerregistry/webhook.yaml index 97fe89bde..a17e8d8df 100644 --- a/examples-generated/containerregistry/webhook.yaml +++ b/examples-generated/containerregistry/webhook.yaml @@ -55,6 +55,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/containerservice/kubernetescluster.yaml b/examples-generated/containerservice/kubernetescluster.yaml index dc42b2e30..5fdaee776 100644 --- a/examples-generated/containerservice/kubernetescluster.yaml +++ b/examples-generated/containerservice/kubernetescluster.yaml @@ -35,6 +35,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/containerservice/kubernetesclusternodepool.yaml b/examples-generated/containerservice/kubernetesclusternodepool.yaml index 3c42e226a..d678a8f81 100644 --- a/examples-generated/containerservice/kubernetesclusternodepool.yaml +++ b/examples-generated/containerservice/kubernetesclusternodepool.yaml @@ -57,6 +57,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/containerservice/kubernetesfleetmanager.yaml b/examples-generated/containerservice/kubernetesfleetmanager.yaml index c3e662699..acfbd5cb2 100644 --- a/examples-generated/containerservice/kubernetesfleetmanager.yaml +++ b/examples-generated/containerservice/kubernetesfleetmanager.yaml @@ -14,6 +14,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/cosmosdb/account.yaml b/examples-generated/cosmosdb/account.yaml index afc85638e..65ae589ff 100644 --- a/examples-generated/cosmosdb/account.yaml +++ b/examples-generated/cosmosdb/account.yaml @@ -43,6 +43,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cosmosdb/cassandracluster.yaml b/examples-generated/cosmosdb/cassandracluster.yaml index 0461040a1..b22c13a61 100644 --- a/examples-generated/cosmosdb/cassandracluster.yaml +++ b/examples-generated/cosmosdb/cassandracluster.yaml @@ -89,6 +89,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/cosmosdb/cassandradatacenter.yaml b/examples-generated/cosmosdb/cassandradatacenter.yaml index b995dd16c..9b42e8ad7 100644 --- a/examples-generated/cosmosdb/cassandradatacenter.yaml +++ b/examples-generated/cosmosdb/cassandradatacenter.yaml @@ -113,6 +113,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/cosmosdb/cassandrakeyspace.yaml b/examples-generated/cosmosdb/cassandrakeyspace.yaml index 07d72bcf4..3a493cfd8 100644 --- a/examples-generated/cosmosdb/cassandrakeyspace.yaml +++ b/examples-generated/cosmosdb/cassandrakeyspace.yaml @@ -54,6 +54,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cosmosdb/cassandratable.yaml b/examples-generated/cosmosdb/cassandratable.yaml index 03a950016..7b2e142b7 100644 --- a/examples-generated/cosmosdb/cassandratable.yaml +++ b/examples-generated/cosmosdb/cassandratable.yaml @@ -78,6 +78,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cosmosdb/gremlindatabase.yaml b/examples-generated/cosmosdb/gremlindatabase.yaml index bd803614f..3c50e645e 100644 --- a/examples-generated/cosmosdb/gremlindatabase.yaml +++ b/examples-generated/cosmosdb/gremlindatabase.yaml @@ -15,6 +15,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_cosmosdb_account throughput: 400 - ---- - diff --git a/examples-generated/cosmosdb/gremlingraph.yaml b/examples-generated/cosmosdb/gremlingraph.yaml index 2f4791b69..8c4d8e9e6 100644 --- a/examples-generated/cosmosdb/gremlingraph.yaml +++ b/examples-generated/cosmosdb/gremlingraph.yaml @@ -52,6 +52,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: azurerm_cosmosdb_account - ---- - diff --git a/examples-generated/cosmosdb/mongocollection.yaml b/examples-generated/cosmosdb/mongocollection.yaml index 7697e7819..d10e34f91 100644 --- a/examples-generated/cosmosdb/mongocollection.yaml +++ b/examples-generated/cosmosdb/mongocollection.yaml @@ -43,6 +43,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: azurerm_cosmosdb_account - ---- - diff --git a/examples-generated/cosmosdb/mongodatabase.yaml b/examples-generated/cosmosdb/mongodatabase.yaml index 84b08cb57..2fe1aed9a 100644 --- a/examples-generated/cosmosdb/mongodatabase.yaml +++ b/examples-generated/cosmosdb/mongodatabase.yaml @@ -15,6 +15,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_cosmosdb_account throughput: 400 - ---- - diff --git a/examples-generated/cosmosdb/sqlcontainer.yaml b/examples-generated/cosmosdb/sqlcontainer.yaml index 0e702efe8..030968846 100644 --- a/examples-generated/cosmosdb/sqlcontainer.yaml +++ b/examples-generated/cosmosdb/sqlcontainer.yaml @@ -50,6 +50,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: azurerm_cosmosdb_account - ---- - diff --git a/examples-generated/cosmosdb/sqldatabase.yaml b/examples-generated/cosmosdb/sqldatabase.yaml index 76f0a149b..9332669d6 100644 --- a/examples-generated/cosmosdb/sqldatabase.yaml +++ b/examples-generated/cosmosdb/sqldatabase.yaml @@ -15,6 +15,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_cosmosdb_account throughput: 400 - ---- - diff --git a/examples-generated/cosmosdb/sqldedicatedgateway.yaml b/examples-generated/cosmosdb/sqldedicatedgateway.yaml index bda3c1baa..8a14c8213 100644 --- a/examples-generated/cosmosdb/sqldedicatedgateway.yaml +++ b/examples-generated/cosmosdb/sqldedicatedgateway.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cosmosdb/sqlfunction.yaml b/examples-generated/cosmosdb/sqlfunction.yaml index de5374a03..802659401 100644 --- a/examples-generated/cosmosdb/sqlfunction.yaml +++ b/examples-generated/cosmosdb/sqlfunction.yaml @@ -55,6 +55,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_cosmosdb_account throughput: 400 - ---- - diff --git a/examples-generated/cosmosdb/sqlroleassignment.yaml b/examples-generated/cosmosdb/sqlroleassignment.yaml index 7b87d3ec2..980e033ee 100644 --- a/examples-generated/cosmosdb/sqlroleassignment.yaml +++ b/examples-generated/cosmosdb/sqlroleassignment.yaml @@ -86,6 +86,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cosmosdb/sqlroledefinition.yaml b/examples-generated/cosmosdb/sqlroledefinition.yaml index 4a5dde1aa..9222f71d2 100644 --- a/examples-generated/cosmosdb/sqlroledefinition.yaml +++ b/examples-generated/cosmosdb/sqlroledefinition.yaml @@ -59,6 +59,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/cosmosdb/sqlstoredprocedure.yaml b/examples-generated/cosmosdb/sqlstoredprocedure.yaml index 7348111c1..6441b9af0 100644 --- a/examples-generated/cosmosdb/sqlstoredprocedure.yaml +++ b/examples-generated/cosmosdb/sqlstoredprocedure.yaml @@ -65,6 +65,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_cosmosdb_account throughput: 400 - ---- - diff --git a/examples-generated/cosmosdb/sqltrigger.yaml b/examples-generated/cosmosdb/sqltrigger.yaml index baa77add6..e07452074 100644 --- a/examples-generated/cosmosdb/sqltrigger.yaml +++ b/examples-generated/cosmosdb/sqltrigger.yaml @@ -57,6 +57,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_cosmosdb_account throughput: 400 - ---- - diff --git a/examples-generated/cosmosdb/table.yaml b/examples-generated/cosmosdb/table.yaml index cfd778001..9f0b4a23a 100644 --- a/examples-generated/cosmosdb/table.yaml +++ b/examples-generated/cosmosdb/table.yaml @@ -15,6 +15,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_cosmosdb_account throughput: 400 - ---- - diff --git a/examples-generated/costmanagement/costanomalyalert.yaml b/examples-generated/costmanagement/costanomalyalert.yaml index 4251773fc..534c59ec0 100644 --- a/examples-generated/costmanagement/costanomalyalert.yaml +++ b/examples-generated/costmanagement/costanomalyalert.yaml @@ -12,6 +12,3 @@ spec: emailAddresses: - example@test.net emailSubject: My Test Anomaly Alert - ---- - diff --git a/examples-generated/costmanagement/resourcegroupcostmanagementexport.yaml b/examples-generated/costmanagement/resourcegroupcostmanagementexport.yaml index 14054d0f6..5f050550b 100644 --- a/examples-generated/costmanagement/resourcegroupcostmanagementexport.yaml +++ b/examples-generated/costmanagement/resourcegroupcostmanagementexport.yaml @@ -71,6 +71,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/costmanagement/subscriptioncostmanagementexport.yaml b/examples-generated/costmanagement/subscriptioncostmanagementexport.yaml index fe80f315b..e07532cf0 100644 --- a/examples-generated/costmanagement/subscriptioncostmanagementexport.yaml +++ b/examples-generated/costmanagement/subscriptioncostmanagementexport.yaml @@ -72,6 +72,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/customproviders/customprovider.yaml b/examples-generated/customproviders/customprovider.yaml index 0da62edf9..bc702f2cf 100644 --- a/examples-generated/customproviders/customprovider.yaml +++ b/examples-generated/customproviders/customprovider.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/databoxedge/device.yaml b/examples-generated/databoxedge/device.yaml index 0ba3f7349..b8a3bf6a6 100644 --- a/examples-generated/databoxedge/device.yaml +++ b/examples-generated/databoxedge/device.yaml @@ -27,6 +27,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/databricks/accessconnector.yaml b/examples-generated/databricks/accessconnector.yaml index b90bdac25..155a61653 100644 --- a/examples-generated/databricks/accessconnector.yaml +++ b/examples-generated/databricks/accessconnector.yaml @@ -30,6 +30,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/databricks/workspace.yaml b/examples-generated/databricks/workspace.yaml index f396542ec..b1a125d75 100644 --- a/examples-generated/databricks/workspace.yaml +++ b/examples-generated/databricks/workspace.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/databricks/workspacecustomermanagedkey.yaml b/examples-generated/databricks/workspacecustomermanagedkey.yaml index ac90c8451..bc30ceaf2 100644 --- a/examples-generated/databricks/workspacecustomermanagedkey.yaml +++ b/examples-generated/databricks/workspacecustomermanagedkey.yaml @@ -151,6 +151,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/customdataset.yaml b/examples-generated/datafactory/customdataset.yaml index 9c1410800..01103cb0a 100644 --- a/examples-generated/datafactory/customdataset.yaml +++ b/examples-generated/datafactory/customdataset.yaml @@ -151,6 +151,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/datafactory/dataflow.yaml b/examples-generated/datafactory/dataflow.yaml index f9aeca8ae..8fe806122 100644 --- a/examples-generated/datafactory/dataflow.yaml +++ b/examples-generated/datafactory/dataflow.yaml @@ -154,6 +154,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/datafactory/datasetazureblob.yaml b/examples-generated/datafactory/datasetazureblob.yaml index 518b862cb..d9d22f5dc 100644 --- a/examples-generated/datafactory/datasetazureblob.yaml +++ b/examples-generated/datafactory/datasetazureblob.yaml @@ -67,6 +67,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/datasetbinary.yaml b/examples-generated/datafactory/datasetbinary.yaml index 08a211041..88548509c 100644 --- a/examples-generated/datafactory/datasetbinary.yaml +++ b/examples-generated/datafactory/datasetbinary.yaml @@ -72,6 +72,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/datasetcosmosdbsqlapi.yaml b/examples-generated/datafactory/datasetcosmosdbsqlapi.yaml index da02cc825..4a7333e57 100644 --- a/examples-generated/datafactory/datasetcosmosdbsqlapi.yaml +++ b/examples-generated/datafactory/datasetcosmosdbsqlapi.yaml @@ -64,6 +64,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/datasetdelimitedtext.yaml b/examples-generated/datafactory/datasetdelimitedtext.yaml index 5949d6871..84d9d7879 100644 --- a/examples-generated/datafactory/datasetdelimitedtext.yaml +++ b/examples-generated/datafactory/datasetdelimitedtext.yaml @@ -74,6 +74,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/datasethttp.yaml b/examples-generated/datafactory/datasethttp.yaml index c1191fd56..9e08f460c 100644 --- a/examples-generated/datafactory/datasethttp.yaml +++ b/examples-generated/datafactory/datasethttp.yaml @@ -66,6 +66,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/datasetjson.yaml b/examples-generated/datafactory/datasetjson.yaml index 02f7ecddf..30cec2e7d 100644 --- a/examples-generated/datafactory/datasetjson.yaml +++ b/examples-generated/datafactory/datasetjson.yaml @@ -68,6 +68,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/datasetmysql.yaml b/examples-generated/datafactory/datasetmysql.yaml index d25d4bb0b..8e952b0d0 100644 --- a/examples-generated/datafactory/datasetmysql.yaml +++ b/examples-generated/datafactory/datasetmysql.yaml @@ -62,6 +62,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/datasetparquet.yaml b/examples-generated/datafactory/datasetparquet.yaml index f8dd8b725..8ab7c41ff 100644 --- a/examples-generated/datafactory/datasetparquet.yaml +++ b/examples-generated/datafactory/datasetparquet.yaml @@ -67,6 +67,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/datasetpostgresql.yaml b/examples-generated/datafactory/datasetpostgresql.yaml index 288eeff12..d881c2994 100644 --- a/examples-generated/datafactory/datasetpostgresql.yaml +++ b/examples-generated/datafactory/datasetpostgresql.yaml @@ -62,6 +62,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/datasetsnowflake.yaml b/examples-generated/datafactory/datasetsnowflake.yaml index b1dc52d8f..e7680de4f 100644 --- a/examples-generated/datafactory/datasetsnowflake.yaml +++ b/examples-generated/datafactory/datasetsnowflake.yaml @@ -64,6 +64,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/datasetsqlservertable.yaml b/examples-generated/datafactory/datasetsqlservertable.yaml index 2671b841b..7add05736 100644 --- a/examples-generated/datafactory/datasetsqlservertable.yaml +++ b/examples-generated/datafactory/datasetsqlservertable.yaml @@ -63,6 +63,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/factory.yaml b/examples-generated/datafactory/factory.yaml index d2b38fece..0c67777d7 100644 --- a/examples-generated/datafactory/factory.yaml +++ b/examples-generated/datafactory/factory.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/integrationruntimeazure.yaml b/examples-generated/datafactory/integrationruntimeazure.yaml index 07c0ae876..29bb9b956 100644 --- a/examples-generated/datafactory/integrationruntimeazure.yaml +++ b/examples-generated/datafactory/integrationruntimeazure.yaml @@ -43,6 +43,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/integrationruntimeazuressis.yaml b/examples-generated/datafactory/integrationruntimeazuressis.yaml index eb6e8e5e4..314989aee 100644 --- a/examples-generated/datafactory/integrationruntimeazuressis.yaml +++ b/examples-generated/datafactory/integrationruntimeazuressis.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/integrationruntimemanaged.yaml b/examples-generated/datafactory/integrationruntimemanaged.yaml index fe97d89af..5d1f45da9 100644 --- a/examples-generated/datafactory/integrationruntimemanaged.yaml +++ b/examples-generated/datafactory/integrationruntimemanaged.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/integrationruntimeselfhosted.yaml b/examples-generated/datafactory/integrationruntimeselfhosted.yaml index 4cb7f7556..acb8f3479 100644 --- a/examples-generated/datafactory/integrationruntimeselfhosted.yaml +++ b/examples-generated/datafactory/integrationruntimeselfhosted.yaml @@ -42,6 +42,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedcustomservice.yaml b/examples-generated/datafactory/linkedcustomservice.yaml index c354fc8c7..86176d6bc 100644 --- a/examples-generated/datafactory/linkedcustomservice.yaml +++ b/examples-generated/datafactory/linkedcustomservice.yaml @@ -77,6 +77,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/datafactory/linkedserviceazureblobstorage.yaml b/examples-generated/datafactory/linkedserviceazureblobstorage.yaml index 35082cc29..80b90e77b 100644 --- a/examples-generated/datafactory/linkedserviceazureblobstorage.yaml +++ b/examples-generated/datafactory/linkedserviceazureblobstorage.yaml @@ -46,6 +46,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedserviceazuredatabricks.yaml b/examples-generated/datafactory/linkedserviceazuredatabricks.yaml index 4c6f5f04f..f8036816b 100644 --- a/examples-generated/datafactory/linkedserviceazuredatabricks.yaml +++ b/examples-generated/datafactory/linkedserviceazuredatabricks.yaml @@ -86,6 +86,3 @@ metadata: spec: forProvider: location: East US - ---- - diff --git a/examples-generated/datafactory/linkedserviceazurefilestorage.yaml b/examples-generated/datafactory/linkedserviceazurefilestorage.yaml index 8122c00fe..bd0bad045 100644 --- a/examples-generated/datafactory/linkedserviceazurefilestorage.yaml +++ b/examples-generated/datafactory/linkedserviceazurefilestorage.yaml @@ -46,6 +46,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedserviceazurefunction.yaml b/examples-generated/datafactory/linkedserviceazurefunction.yaml index 1c35a2ba7..b02b24427 100644 --- a/examples-generated/datafactory/linkedserviceazurefunction.yaml +++ b/examples-generated/datafactory/linkedserviceazurefunction.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedserviceazuresearch.yaml b/examples-generated/datafactory/linkedserviceazuresearch.yaml index 26997ad91..766cafcd1 100644 --- a/examples-generated/datafactory/linkedserviceazuresearch.yaml +++ b/examples-generated/datafactory/linkedserviceazuresearch.yaml @@ -64,6 +64,3 @@ spec: matchLabels: testing.upbound.io/example-name: example sku: standard - ---- - diff --git a/examples-generated/datafactory/linkedserviceazuresqldatabase.yaml b/examples-generated/datafactory/linkedserviceazuresqldatabase.yaml index 93c65afda..cee621d5e 100644 --- a/examples-generated/datafactory/linkedserviceazuresqldatabase.yaml +++ b/examples-generated/datafactory/linkedserviceazuresqldatabase.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedserviceazuretablestorage.yaml b/examples-generated/datafactory/linkedserviceazuretablestorage.yaml index 2f3ac49e9..6eba914db 100644 --- a/examples-generated/datafactory/linkedserviceazuretablestorage.yaml +++ b/examples-generated/datafactory/linkedserviceazuretablestorage.yaml @@ -46,6 +46,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicecosmosdb.yaml b/examples-generated/datafactory/linkedservicecosmosdb.yaml index ce158e5c8..5e1368e0b 100644 --- a/examples-generated/datafactory/linkedservicecosmosdb.yaml +++ b/examples-generated/datafactory/linkedservicecosmosdb.yaml @@ -48,6 +48,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicecosmosdbmongoapi.yaml b/examples-generated/datafactory/linkedservicecosmosdbmongoapi.yaml index addb2c971..7bc37422d 100644 --- a/examples-generated/datafactory/linkedservicecosmosdbmongoapi.yaml +++ b/examples-generated/datafactory/linkedservicecosmosdbmongoapi.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicedatalakestoragegen2.yaml b/examples-generated/datafactory/linkedservicedatalakestoragegen2.yaml index cb4379b48..661b10a6e 100644 --- a/examples-generated/datafactory/linkedservicedatalakestoragegen2.yaml +++ b/examples-generated/datafactory/linkedservicedatalakestoragegen2.yaml @@ -46,6 +46,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicekeyvault.yaml b/examples-generated/datafactory/linkedservicekeyvault.yaml index 99f2a6674..8b6c21b24 100644 --- a/examples-generated/datafactory/linkedservicekeyvault.yaml +++ b/examples-generated/datafactory/linkedservicekeyvault.yaml @@ -64,6 +64,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicekusto.yaml b/examples-generated/datafactory/linkedservicekusto.yaml index b4baa2aad..4bd49071e 100644 --- a/examples-generated/datafactory/linkedservicekusto.yaml +++ b/examples-generated/datafactory/linkedservicekusto.yaml @@ -117,6 +117,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicemysql.yaml b/examples-generated/datafactory/linkedservicemysql.yaml index 2c68845d3..5cc460d88 100644 --- a/examples-generated/datafactory/linkedservicemysql.yaml +++ b/examples-generated/datafactory/linkedservicemysql.yaml @@ -43,6 +43,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedserviceodata.yaml b/examples-generated/datafactory/linkedserviceodata.yaml index 31dd5ac65..c71274f66 100644 --- a/examples-generated/datafactory/linkedserviceodata.yaml +++ b/examples-generated/datafactory/linkedserviceodata.yaml @@ -43,6 +43,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedserviceodbc.yaml b/examples-generated/datafactory/linkedserviceodbc.yaml index 9ff2bce63..b4690a1df 100644 --- a/examples-generated/datafactory/linkedserviceodbc.yaml +++ b/examples-generated/datafactory/linkedserviceodbc.yaml @@ -43,6 +43,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicepostgresql.yaml b/examples-generated/datafactory/linkedservicepostgresql.yaml index 86a13d503..8eff98341 100644 --- a/examples-generated/datafactory/linkedservicepostgresql.yaml +++ b/examples-generated/datafactory/linkedservicepostgresql.yaml @@ -43,6 +43,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicesftp.yaml b/examples-generated/datafactory/linkedservicesftp.yaml index 4e114670a..00e9d5d3d 100644 --- a/examples-generated/datafactory/linkedservicesftp.yaml +++ b/examples-generated/datafactory/linkedservicesftp.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicesnowflake.yaml b/examples-generated/datafactory/linkedservicesnowflake.yaml index 910cbcbe3..45ff22e65 100644 --- a/examples-generated/datafactory/linkedservicesnowflake.yaml +++ b/examples-generated/datafactory/linkedservicesnowflake.yaml @@ -43,6 +43,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicesqlserver.yaml b/examples-generated/datafactory/linkedservicesqlserver.yaml index 3f6be679f..249b74dfb 100644 --- a/examples-generated/datafactory/linkedservicesqlserver.yaml +++ b/examples-generated/datafactory/linkedservicesqlserver.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedservicesynapse.yaml b/examples-generated/datafactory/linkedservicesynapse.yaml index ebf7763a2..d05ecf625 100644 --- a/examples-generated/datafactory/linkedservicesynapse.yaml +++ b/examples-generated/datafactory/linkedservicesynapse.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/linkedserviceweb.yaml b/examples-generated/datafactory/linkedserviceweb.yaml index e03c37ce7..38b1fd31e 100644 --- a/examples-generated/datafactory/linkedserviceweb.yaml +++ b/examples-generated/datafactory/linkedserviceweb.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/managedprivateendpoint.yaml b/examples-generated/datafactory/managedprivateendpoint.yaml index caba44eed..93a95daee 100644 --- a/examples-generated/datafactory/managedprivateendpoint.yaml +++ b/examples-generated/datafactory/managedprivateendpoint.yaml @@ -68,6 +68,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/datafactory/pipeline.yaml b/examples-generated/datafactory/pipeline.yaml index c2b6ff908..884eafb02 100644 --- a/examples-generated/datafactory/pipeline.yaml +++ b/examples-generated/datafactory/pipeline.yaml @@ -42,6 +42,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/triggerblobevent.yaml b/examples-generated/datafactory/triggerblobevent.yaml index 016e64c74..95586d438 100644 --- a/examples-generated/datafactory/triggerblobevent.yaml +++ b/examples-generated/datafactory/triggerblobevent.yaml @@ -100,6 +100,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/datafactory/triggercustomevent.yaml b/examples-generated/datafactory/triggercustomevent.yaml index 15825b8f1..0a72b370e 100644 --- a/examples-generated/datafactory/triggercustomevent.yaml +++ b/examples-generated/datafactory/triggercustomevent.yaml @@ -97,6 +97,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datafactory/triggerschedule.yaml b/examples-generated/datafactory/triggerschedule.yaml index 81c925b09..6eacf8d79 100644 --- a/examples-generated/datafactory/triggerschedule.yaml +++ b/examples-generated/datafactory/triggerschedule.yaml @@ -63,6 +63,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datamigration/databasemigrationproject.yaml b/examples-generated/datamigration/databasemigrationproject.yaml index 0cdbe3917..b25bea2dd 100644 --- a/examples-generated/datamigration/databasemigrationproject.yaml +++ b/examples-generated/datamigration/databasemigrationproject.yaml @@ -94,6 +94,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/datamigration/databasemigrationservice.yaml b/examples-generated/datamigration/databasemigrationservice.yaml index a83723024..85a0de2b4 100644 --- a/examples-generated/datamigration/databasemigrationservice.yaml +++ b/examples-generated/datamigration/databasemigrationservice.yaml @@ -71,6 +71,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/dataprotection/backupinstanceblobstorage.yaml b/examples-generated/dataprotection/backupinstanceblobstorage.yaml index e28a02eb5..c8d9ff043 100644 --- a/examples-generated/dataprotection/backupinstanceblobstorage.yaml +++ b/examples-generated/dataprotection/backupinstanceblobstorage.yaml @@ -105,6 +105,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/dataprotection/backupinstancedisk.yaml b/examples-generated/dataprotection/backupinstancedisk.yaml index 6c4bac63f..ce0eaf872 100644 --- a/examples-generated/dataprotection/backupinstancedisk.yaml +++ b/examples-generated/dataprotection/backupinstancedisk.yaml @@ -127,6 +127,3 @@ spec: principalId: ${azurerm_data_protection_backup_vault.example.identity[0].principal_id} roleDefinitionName: Disk Backup Reader scope: ${azurerm_managed_disk.example.id} - ---- - diff --git a/examples-generated/dataprotection/backupinstancepostgresql.yaml b/examples-generated/dataprotection/backupinstancepostgresql.yaml index 58d7700d1..5a1e0145d 100644 --- a/examples-generated/dataprotection/backupinstancepostgresql.yaml +++ b/examples-generated/dataprotection/backupinstancepostgresql.yaml @@ -205,6 +205,3 @@ spec: principalId: ${azurerm_data_protection_backup_vault.example.identity.0.principal_id} roleDefinitionName: Reader scope: ${azurerm_postgresql_server.example.id} - ---- - diff --git a/examples-generated/dataprotection/backuppolicyblobstorage.yaml b/examples-generated/dataprotection/backuppolicyblobstorage.yaml index 5e1147da5..54389f60c 100644 --- a/examples-generated/dataprotection/backuppolicyblobstorage.yaml +++ b/examples-generated/dataprotection/backuppolicyblobstorage.yaml @@ -45,6 +45,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dataprotection/backuppolicydisk.yaml b/examples-generated/dataprotection/backuppolicydisk.yaml index 135a18efb..f95cda88e 100644 --- a/examples-generated/dataprotection/backuppolicydisk.yaml +++ b/examples-generated/dataprotection/backuppolicydisk.yaml @@ -58,6 +58,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dataprotection/backuppolicypostgresql.yaml b/examples-generated/dataprotection/backuppolicypostgresql.yaml index 5bbf87084..430510852 100644 --- a/examples-generated/dataprotection/backuppolicypostgresql.yaml +++ b/examples-generated/dataprotection/backuppolicypostgresql.yaml @@ -75,6 +75,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dataprotection/backupvault.yaml b/examples-generated/dataprotection/backupvault.yaml index a2b19a77e..49dd460c0 100644 --- a/examples-generated/dataprotection/backupvault.yaml +++ b/examples-generated/dataprotection/backupvault.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dataprotection/resourceguard.yaml b/examples-generated/dataprotection/resourceguard.yaml index 5412feafe..fa382ce0c 100644 --- a/examples-generated/dataprotection/resourceguard.yaml +++ b/examples-generated/dataprotection/resourceguard.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datashare/account.yaml b/examples-generated/datashare/account.yaml index f1235c39d..b7d54727e 100644 --- a/examples-generated/datashare/account.yaml +++ b/examples-generated/datashare/account.yaml @@ -30,6 +30,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/datashare/datasetblobstorage.yaml b/examples-generated/datashare/datasetblobstorage.yaml index 8084bb3ae..81f68a819 100644 --- a/examples-generated/datashare/datasetblobstorage.yaml +++ b/examples-generated/datashare/datasetblobstorage.yaml @@ -125,6 +125,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/datashare/datasetdatalakegen2.yaml b/examples-generated/datashare/datasetdatalakegen2.yaml index 64e70f009..47ea174cf 100644 --- a/examples-generated/datashare/datasetdatalakegen2.yaml +++ b/examples-generated/datashare/datasetdatalakegen2.yaml @@ -120,6 +120,3 @@ spec: storageAccountIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/datashare/datasetkustocluster.yaml b/examples-generated/datashare/datasetkustocluster.yaml index 7a21eae45..5f22bec47 100644 --- a/examples-generated/datashare/datasetkustocluster.yaml +++ b/examples-generated/datashare/datasetkustocluster.yaml @@ -100,6 +100,3 @@ spec: principalId: ${azurerm_data_share_account.example.identity.0.principal_id} roleDefinitionName: Contributor scope: ${azurerm_kusto_cluster.example.id} - ---- - diff --git a/examples-generated/datashare/datasetkustodatabase.yaml b/examples-generated/datashare/datasetkustodatabase.yaml index 84c84adb0..65d4cd03e 100644 --- a/examples-generated/datashare/datasetkustodatabase.yaml +++ b/examples-generated/datashare/datasetkustodatabase.yaml @@ -120,6 +120,3 @@ spec: principalId: ${azurerm_data_share_account.example.identity.0.principal_id} roleDefinitionName: Contributor scope: ${azurerm_kusto_cluster.example.id} - ---- - diff --git a/examples-generated/datashare/datashare.yaml b/examples-generated/datashare/datashare.yaml index 48720f0e4..e53c4da34 100644 --- a/examples-generated/datashare/datashare.yaml +++ b/examples-generated/datashare/datashare.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformariadb/configuration.yaml b/examples-generated/dbformariadb/configuration.yaml index 44d24a6bc..9df31794c 100644 --- a/examples-generated/dbformariadb/configuration.yaml +++ b/examples-generated/dbformariadb/configuration.yaml @@ -55,6 +55,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformariadb/database.yaml b/examples-generated/dbformariadb/database.yaml index 9bcfb4d4c..c91ba208f 100644 --- a/examples-generated/dbformariadb/database.yaml +++ b/examples-generated/dbformariadb/database.yaml @@ -58,6 +58,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformariadb/firewallrule.yaml b/examples-generated/dbformariadb/firewallrule.yaml index f9671cdf8..19b63bd3d 100644 --- a/examples-generated/dbformariadb/firewallrule.yaml +++ b/examples-generated/dbformariadb/firewallrule.yaml @@ -16,6 +16,3 @@ spec: matchLabels: testing.upbound.io/example-name: example startIpAddress: 40.112.8.12 - ---- - diff --git a/examples-generated/dbformariadb/server.yaml b/examples-generated/dbformariadb/server.yaml index 754f2e015..a6c2fd181 100644 --- a/examples-generated/dbformariadb/server.yaml +++ b/examples-generated/dbformariadb/server.yaml @@ -40,6 +40,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformariadb/virtualnetworkrule.yaml b/examples-generated/dbformariadb/virtualnetworkrule.yaml index 7d89b9172..fbe82fd5f 100644 --- a/examples-generated/dbformariadb/virtualnetworkrule.yaml +++ b/examples-generated/dbformariadb/virtualnetworkrule.yaml @@ -98,6 +98,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/dbformysql/activedirectoryadministrator.yaml b/examples-generated/dbformysql/activedirectoryadministrator.yaml index 8ca6c390f..6a00e45fc 100644 --- a/examples-generated/dbformysql/activedirectoryadministrator.yaml +++ b/examples-generated/dbformysql/activedirectoryadministrator.yaml @@ -58,6 +58,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformysql/configuration.yaml b/examples-generated/dbformysql/configuration.yaml index 11d3fe2c9..82c07b317 100644 --- a/examples-generated/dbformysql/configuration.yaml +++ b/examples-generated/dbformysql/configuration.yaml @@ -63,6 +63,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformysql/database.yaml b/examples-generated/dbformysql/database.yaml index 5036e48a0..bf266ccc2 100644 --- a/examples-generated/dbformysql/database.yaml +++ b/examples-generated/dbformysql/database.yaml @@ -63,6 +63,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformysql/firewallrule.yaml b/examples-generated/dbformysql/firewallrule.yaml index 79e6e0468..89e7c3923 100644 --- a/examples-generated/dbformysql/firewallrule.yaml +++ b/examples-generated/dbformysql/firewallrule.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformysql/flexibledatabase.yaml b/examples-generated/dbformysql/flexibledatabase.yaml index 9b85ea328..849db648b 100644 --- a/examples-generated/dbformysql/flexibledatabase.yaml +++ b/examples-generated/dbformysql/flexibledatabase.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformysql/flexibleserver.yaml b/examples-generated/dbformysql/flexibleserver.yaml index 5723ecce2..cd6b57622 100644 --- a/examples-generated/dbformysql/flexibleserver.yaml +++ b/examples-generated/dbformysql/flexibleserver.yaml @@ -125,6 +125,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/dbformysql/flexibleserverconfiguration.yaml b/examples-generated/dbformysql/flexibleserverconfiguration.yaml index fe9381c69..7d2d2aa13 100644 --- a/examples-generated/dbformysql/flexibleserverconfiguration.yaml +++ b/examples-generated/dbformysql/flexibleserverconfiguration.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformysql/flexibleserverfirewallrule.yaml b/examples-generated/dbformysql/flexibleserverfirewallrule.yaml index 308483cdc..7a761e07b 100644 --- a/examples-generated/dbformysql/flexibleserverfirewallrule.yaml +++ b/examples-generated/dbformysql/flexibleserverfirewallrule.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformysql/server.yaml b/examples-generated/dbformysql/server.yaml index d503e170c..d6bbaf8aa 100644 --- a/examples-generated/dbformysql/server.yaml +++ b/examples-generated/dbformysql/server.yaml @@ -42,6 +42,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbformysql/virtualnetworkrule.yaml b/examples-generated/dbformysql/virtualnetworkrule.yaml index 1ce56e6a2..20d4e3251 100644 --- a/examples-generated/dbformysql/virtualnetworkrule.yaml +++ b/examples-generated/dbformysql/virtualnetworkrule.yaml @@ -102,6 +102,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/dbforpostgresql/activedirectoryadministrator.yaml b/examples-generated/dbforpostgresql/activedirectoryadministrator.yaml index f383d44ea..9a45dc6c9 100644 --- a/examples-generated/dbforpostgresql/activedirectoryadministrator.yaml +++ b/examples-generated/dbforpostgresql/activedirectoryadministrator.yaml @@ -56,6 +56,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbforpostgresql/configuration.yaml b/examples-generated/dbforpostgresql/configuration.yaml index 78cd3c128..79ef12bc7 100644 --- a/examples-generated/dbforpostgresql/configuration.yaml +++ b/examples-generated/dbforpostgresql/configuration.yaml @@ -59,6 +59,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbforpostgresql/database.yaml b/examples-generated/dbforpostgresql/database.yaml index 989ba23f9..de34a7fb7 100644 --- a/examples-generated/dbforpostgresql/database.yaml +++ b/examples-generated/dbforpostgresql/database.yaml @@ -59,6 +59,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbforpostgresql/firewallrule.yaml b/examples-generated/dbforpostgresql/firewallrule.yaml index e8c15a6e1..cbfe3244b 100644 --- a/examples-generated/dbforpostgresql/firewallrule.yaml +++ b/examples-generated/dbforpostgresql/firewallrule.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbforpostgresql/flexibleserver.yaml b/examples-generated/dbforpostgresql/flexibleserver.yaml index 331958511..e06395935 100644 --- a/examples-generated/dbforpostgresql/flexibleserver.yaml +++ b/examples-generated/dbforpostgresql/flexibleserver.yaml @@ -127,6 +127,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/dbforpostgresql/flexibleserverconfiguration.yaml b/examples-generated/dbforpostgresql/flexibleserverconfiguration.yaml index 207236a8a..78a5eb352 100644 --- a/examples-generated/dbforpostgresql/flexibleserverconfiguration.yaml +++ b/examples-generated/dbforpostgresql/flexibleserverconfiguration.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbforpostgresql/flexibleserverdatabase.yaml b/examples-generated/dbforpostgresql/flexibleserverdatabase.yaml index ab3a0c3aa..8f175614a 100644 --- a/examples-generated/dbforpostgresql/flexibleserverdatabase.yaml +++ b/examples-generated/dbforpostgresql/flexibleserverdatabase.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbforpostgresql/flexibleserverfirewallrule.yaml b/examples-generated/dbforpostgresql/flexibleserverfirewallrule.yaml index 199d39023..d8de738e7 100644 --- a/examples-generated/dbforpostgresql/flexibleserverfirewallrule.yaml +++ b/examples-generated/dbforpostgresql/flexibleserverfirewallrule.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbforpostgresql/server.yaml b/examples-generated/dbforpostgresql/server.yaml index dd9ae9244..851ef904d 100644 --- a/examples-generated/dbforpostgresql/server.yaml +++ b/examples-generated/dbforpostgresql/server.yaml @@ -40,6 +40,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbforpostgresql/serverkey.yaml b/examples-generated/dbforpostgresql/serverkey.yaml index ea87b656e..c69edb044 100644 --- a/examples-generated/dbforpostgresql/serverkey.yaml +++ b/examples-generated/dbforpostgresql/serverkey.yaml @@ -160,6 +160,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/dbforpostgresql/virtualnetworkrule.yaml b/examples-generated/dbforpostgresql/virtualnetworkrule.yaml index 0a5fef36c..16ea7f361 100644 --- a/examples-generated/dbforpostgresql/virtualnetworkrule.yaml +++ b/examples-generated/dbforpostgresql/virtualnetworkrule.yaml @@ -101,6 +101,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/devices/iothub.yaml b/examples-generated/devices/iothub.yaml index 6a5bb243a..0ea6bb1e0 100644 --- a/examples-generated/devices/iothub.yaml +++ b/examples-generated/devices/iothub.yaml @@ -136,6 +136,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/devices/iothubcertificate.yaml b/examples-generated/devices/iothubcertificate.yaml index ec44d9b42..62a5b679d 100644 --- a/examples-generated/devices/iothubcertificate.yaml +++ b/examples-generated/devices/iothubcertificate.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devices/iothubconsumergroup.yaml b/examples-generated/devices/iothubconsumergroup.yaml index d21a50b78..7fa97d942 100644 --- a/examples-generated/devices/iothubconsumergroup.yaml +++ b/examples-generated/devices/iothubconsumergroup.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devices/iothubdps.yaml b/examples-generated/devices/iothubdps.yaml index bd4f75d2c..ba5e12b7a 100644 --- a/examples-generated/devices/iothubdps.yaml +++ b/examples-generated/devices/iothubdps.yaml @@ -30,6 +30,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devices/iothubdpscertificate.yaml b/examples-generated/devices/iothubdpscertificate.yaml index db7ce1d8c..167eddf0d 100644 --- a/examples-generated/devices/iothubdpscertificate.yaml +++ b/examples-generated/devices/iothubdpscertificate.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devices/iothubdpssharedaccesspolicy.yaml b/examples-generated/devices/iothubdpssharedaccesspolicy.yaml index bdd2bb27d..3b3317d73 100644 --- a/examples-generated/devices/iothubdpssharedaccesspolicy.yaml +++ b/examples-generated/devices/iothubdpssharedaccesspolicy.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devices/iothubendpointeventhub.yaml b/examples-generated/devices/iothubendpointeventhub.yaml index 64768e8d6..c762ce6be 100644 --- a/examples-generated/devices/iothubendpointeventhub.yaml +++ b/examples-generated/devices/iothubendpointeventhub.yaml @@ -118,6 +118,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devices/iothubendpointservicebusqueue.yaml b/examples-generated/devices/iothubendpointservicebusqueue.yaml index 22f36a3a1..1e52bd378 100644 --- a/examples-generated/devices/iothubendpointservicebusqueue.yaml +++ b/examples-generated/devices/iothubendpointservicebusqueue.yaml @@ -108,6 +108,3 @@ spec: matchLabels: testing.upbound.io/example-name: example send: true - ---- - diff --git a/examples-generated/devices/iothubendpointservicebustopic.yaml b/examples-generated/devices/iothubendpointservicebustopic.yaml index f23413c24..104bbcf2e 100644 --- a/examples-generated/devices/iothubendpointservicebustopic.yaml +++ b/examples-generated/devices/iothubendpointservicebustopic.yaml @@ -107,6 +107,3 @@ spec: topicIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/devices/iothubendpointstoragecontainer.yaml b/examples-generated/devices/iothubendpointstoragecontainer.yaml index f0353f56d..fe5214968 100644 --- a/examples-generated/devices/iothubendpointstoragecontainer.yaml +++ b/examples-generated/devices/iothubendpointstoragecontainer.yaml @@ -95,6 +95,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/devices/iothubenrichment.yaml b/examples-generated/devices/iothubenrichment.yaml index 58b741576..d3db2a4b4 100644 --- a/examples-generated/devices/iothubenrichment.yaml +++ b/examples-generated/devices/iothubenrichment.yaml @@ -144,6 +144,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/devices/iothubfallbackroute.yaml b/examples-generated/devices/iothubfallbackroute.yaml index 83ceb35fc..212194c6a 100644 --- a/examples-generated/devices/iothubfallbackroute.yaml +++ b/examples-generated/devices/iothubfallbackroute.yaml @@ -120,6 +120,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/devices/iothubroute.yaml b/examples-generated/devices/iothubroute.yaml index b39abc388..c0dc7c94c 100644 --- a/examples-generated/devices/iothubroute.yaml +++ b/examples-generated/devices/iothubroute.yaml @@ -121,6 +121,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/devices/iothubsharedaccesspolicy.yaml b/examples-generated/devices/iothubsharedaccesspolicy.yaml index da4f1a0cb..e5440778f 100644 --- a/examples-generated/devices/iothubsharedaccesspolicy.yaml +++ b/examples-generated/devices/iothubsharedaccesspolicy.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/deviceupdate/iothubdeviceupdateaccount.yaml b/examples-generated/deviceupdate/iothubdeviceupdateaccount.yaml index 00326e263..c42bb37e1 100644 --- a/examples-generated/deviceupdate/iothubdeviceupdateaccount.yaml +++ b/examples-generated/deviceupdate/iothubdeviceupdateaccount.yaml @@ -30,6 +30,3 @@ metadata: spec: forProvider: location: East US - ---- - diff --git a/examples-generated/deviceupdate/iothubdeviceupdateinstance.yaml b/examples-generated/deviceupdate/iothubdeviceupdateinstance.yaml index 1637d3429..f1837ad76 100644 --- a/examples-generated/deviceupdate/iothubdeviceupdateinstance.yaml +++ b/examples-generated/deviceupdate/iothubdeviceupdateinstance.yaml @@ -95,6 +95,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/devtestlab/globalvmshutdownschedule.yaml b/examples-generated/devtestlab/globalvmshutdownschedule.yaml index 3982bcb66..1b5156825 100644 --- a/examples-generated/devtestlab/globalvmshutdownschedule.yaml +++ b/examples-generated/devtestlab/globalvmshutdownschedule.yaml @@ -131,6 +131,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/devtestlab/lab.yaml b/examples-generated/devtestlab/lab.yaml index f782669ef..31c6f1874 100644 --- a/examples-generated/devtestlab/lab.yaml +++ b/examples-generated/devtestlab/lab.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devtestlab/linuxvirtualmachine.yaml b/examples-generated/devtestlab/linuxvirtualmachine.yaml index 1b299123b..3c92ac841 100644 --- a/examples-generated/devtestlab/linuxvirtualmachine.yaml +++ b/examples-generated/devtestlab/linuxvirtualmachine.yaml @@ -88,6 +88,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devtestlab/policy.yaml b/examples-generated/devtestlab/policy.yaml index 7bae12320..889be6927 100644 --- a/examples-generated/devtestlab/policy.yaml +++ b/examples-generated/devtestlab/policy.yaml @@ -54,6 +54,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devtestlab/schedule.yaml b/examples-generated/devtestlab/schedule.yaml index c907e24f5..d35196ec8 100644 --- a/examples-generated/devtestlab/schedule.yaml +++ b/examples-generated/devtestlab/schedule.yaml @@ -57,6 +57,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devtestlab/virtualnetwork.yaml b/examples-generated/devtestlab/virtualnetwork.yaml index b03413032..86b000658 100644 --- a/examples-generated/devtestlab/virtualnetwork.yaml +++ b/examples-generated/devtestlab/virtualnetwork.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/devtestlab/windowsvirtualmachine.yaml b/examples-generated/devtestlab/windowsvirtualmachine.yaml index 1e5bd1037..a409b8211 100644 --- a/examples-generated/devtestlab/windowsvirtualmachine.yaml +++ b/examples-generated/devtestlab/windowsvirtualmachine.yaml @@ -91,6 +91,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/digitaltwins/instance.yaml b/examples-generated/digitaltwins/instance.yaml index 939a7ff6c..25c1af604 100644 --- a/examples-generated/digitaltwins/instance.yaml +++ b/examples-generated/digitaltwins/instance.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/elastic/cloudelasticsearch.yaml b/examples-generated/elastic/cloudelasticsearch.yaml index dbdd3b826..c4fff9103 100644 --- a/examples-generated/elastic/cloudelasticsearch.yaml +++ b/examples-generated/elastic/cloudelasticsearch.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/eventgrid/domain.yaml b/examples-generated/eventgrid/domain.yaml index 9b31d8341..77cc54bfc 100644 --- a/examples-generated/eventgrid/domain.yaml +++ b/examples-generated/eventgrid/domain.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/eventgrid/domaintopic.yaml b/examples-generated/eventgrid/domaintopic.yaml index 193deaec5..de095facc 100644 --- a/examples-generated/eventgrid/domaintopic.yaml +++ b/examples-generated/eventgrid/domaintopic.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/eventgrid/eventsubscription.yaml b/examples-generated/eventgrid/eventsubscription.yaml index d818c4726..451da73b8 100644 --- a/examples-generated/eventgrid/eventsubscription.yaml +++ b/examples-generated/eventgrid/eventsubscription.yaml @@ -70,6 +70,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/eventgrid/systemtopic.yaml b/examples-generated/eventgrid/systemtopic.yaml index bb00794b6..beefe0b35 100644 --- a/examples-generated/eventgrid/systemtopic.yaml +++ b/examples-generated/eventgrid/systemtopic.yaml @@ -51,6 +51,3 @@ spec: testing.upbound.io/example-name: example tags: environment: staging - ---- - diff --git a/examples-generated/eventgrid/topic.yaml b/examples-generated/eventgrid/topic.yaml index ac33f0b92..8953a106c 100644 --- a/examples-generated/eventgrid/topic.yaml +++ b/examples-generated/eventgrid/topic.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/eventhub/authorizationrule.yaml b/examples-generated/eventhub/authorizationrule.yaml index a18342428..c98b58540 100644 --- a/examples-generated/eventhub/authorizationrule.yaml +++ b/examples-generated/eventhub/authorizationrule.yaml @@ -76,6 +76,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/eventhub/consumergroup.yaml b/examples-generated/eventhub/consumergroup.yaml index 6d7bb76ac..c202d0058 100644 --- a/examples-generated/eventhub/consumergroup.yaml +++ b/examples-generated/eventhub/consumergroup.yaml @@ -74,6 +74,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/eventhub/eventhub.yaml b/examples-generated/eventhub/eventhub.yaml index 6a9d254a8..76119ae2b 100644 --- a/examples-generated/eventhub/eventhub.yaml +++ b/examples-generated/eventhub/eventhub.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/eventhub/eventhubnamespace.yaml b/examples-generated/eventhub/eventhubnamespace.yaml index 236ec642d..864f4bbc9 100644 --- a/examples-generated/eventhub/eventhubnamespace.yaml +++ b/examples-generated/eventhub/eventhubnamespace.yaml @@ -30,6 +30,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/eventhub/namespaceauthorizationrule.yaml b/examples-generated/eventhub/namespaceauthorizationrule.yaml index c50e4287f..2a1b8a1a3 100644 --- a/examples-generated/eventhub/namespaceauthorizationrule.yaml +++ b/examples-generated/eventhub/namespaceauthorizationrule.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/eventhub/namespacedisasterrecoveryconfig.yaml b/examples-generated/eventhub/namespacedisasterrecoveryconfig.yaml index e46a46855..66c6ddbe7 100644 --- a/examples-generated/eventhub/namespacedisasterrecoveryconfig.yaml +++ b/examples-generated/eventhub/namespacedisasterrecoveryconfig.yaml @@ -67,6 +67,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/eventhub/namespaceschemagroup.yaml b/examples-generated/eventhub/namespaceschemagroup.yaml index 80083c342..da0918df7 100644 --- a/examples-generated/eventhub/namespaceschemagroup.yaml +++ b/examples-generated/eventhub/namespaceschemagroup.yaml @@ -45,6 +45,3 @@ metadata: spec: forProvider: location: East US - ---- - diff --git a/examples-generated/fluidrelay/server.yaml b/examples-generated/fluidrelay/server.yaml index 330959a44..f69cd9449 100644 --- a/examples-generated/fluidrelay/server.yaml +++ b/examples-generated/fluidrelay/server.yaml @@ -27,6 +27,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/guestconfiguration/policyvirtualmachineconfigurationassignment.yaml b/examples-generated/guestconfiguration/policyvirtualmachineconfigurationassignment.yaml index 50e67593d..2ad93d940 100644 --- a/examples-generated/guestconfiguration/policyvirtualmachineconfigurationassignment.yaml +++ b/examples-generated/guestconfiguration/policyvirtualmachineconfigurationassignment.yaml @@ -138,6 +138,3 @@ spec: publisher: MicrosoftWindowsServer sku: 2019-Datacenter version: latest - ---- - diff --git a/examples-generated/hdinsight/hadoopcluster.yaml b/examples-generated/hdinsight/hadoopcluster.yaml index 90d241782..6c337b0a4 100644 --- a/examples-generated/hdinsight/hadoopcluster.yaml +++ b/examples-generated/hdinsight/hadoopcluster.yaml @@ -104,6 +104,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/hdinsight/hbasecluster.yaml b/examples-generated/hdinsight/hbasecluster.yaml index 7f9aeefe5..2a9347b40 100644 --- a/examples-generated/hdinsight/hbasecluster.yaml +++ b/examples-generated/hdinsight/hbasecluster.yaml @@ -104,6 +104,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/hdinsight/interactivequerycluster.yaml b/examples-generated/hdinsight/interactivequerycluster.yaml index 316fd99dd..01549d2d7 100644 --- a/examples-generated/hdinsight/interactivequerycluster.yaml +++ b/examples-generated/hdinsight/interactivequerycluster.yaml @@ -104,6 +104,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/hdinsight/kafkacluster.yaml b/examples-generated/hdinsight/kafkacluster.yaml index f0a97742c..358320bf2 100644 --- a/examples-generated/hdinsight/kafkacluster.yaml +++ b/examples-generated/hdinsight/kafkacluster.yaml @@ -105,6 +105,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/hdinsight/sparkcluster.yaml b/examples-generated/hdinsight/sparkcluster.yaml index 18174e017..871b16802 100644 --- a/examples-generated/hdinsight/sparkcluster.yaml +++ b/examples-generated/hdinsight/sparkcluster.yaml @@ -104,6 +104,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/healthbot/healthbot.yaml b/examples-generated/healthbot/healthbot.yaml index a984cdc22..57459c59a 100644 --- a/examples-generated/healthbot/healthbot.yaml +++ b/examples-generated/healthbot/healthbot.yaml @@ -27,6 +27,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/healthcareapis/healthcaredicomservice.yaml b/examples-generated/healthcareapis/healthcaredicomservice.yaml index 828fcb328..bd5540b04 100644 --- a/examples-generated/healthcareapis/healthcaredicomservice.yaml +++ b/examples-generated/healthcareapis/healthcaredicomservice.yaml @@ -33,6 +33,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/healthcareapis/healthcarefhirservice.yaml b/examples-generated/healthcareapis/healthcarefhirservice.yaml index 4286cd31a..3ea41248e 100644 --- a/examples-generated/healthcareapis/healthcarefhirservice.yaml +++ b/examples-generated/healthcareapis/healthcarefhirservice.yaml @@ -69,6 +69,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/healthcareapis/healthcaremedtechservice.yaml b/examples-generated/healthcareapis/healthcaremedtechservice.yaml index 0c4b5d64f..eaac96764 100644 --- a/examples-generated/healthcareapis/healthcaremedtechservice.yaml +++ b/examples-generated/healthcareapis/healthcaremedtechservice.yaml @@ -45,6 +45,3 @@ spec: workspaceIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/healthcareapis/healthcaremedtechservicefhirdestination.yaml b/examples-generated/healthcareapis/healthcaremedtechservicefhirdestination.yaml index b66776017..c6b643dbe 100644 --- a/examples-generated/healthcareapis/healthcaremedtechservicefhirdestination.yaml +++ b/examples-generated/healthcareapis/healthcaremedtechservicefhirdestination.yaml @@ -42,6 +42,3 @@ spec: medtechServiceIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/healthcareapis/healthcareservice.yaml b/examples-generated/healthcareapis/healthcareservice.yaml index d60a18e4c..0f7e87c59 100644 --- a/examples-generated/healthcareapis/healthcareservice.yaml +++ b/examples-generated/healthcareapis/healthcareservice.yaml @@ -34,6 +34,3 @@ spec: tags: environment: testenv purpose: AcceptanceTests - ---- - diff --git a/examples-generated/healthcareapis/healthcareworkspace.yaml b/examples-generated/healthcareapis/healthcareworkspace.yaml index 19d9e1f9c..e025eef84 100644 --- a/examples-generated/healthcareapis/healthcareworkspace.yaml +++ b/examples-generated/healthcareapis/healthcareworkspace.yaml @@ -12,6 +12,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/insights/applicationinsights.yaml b/examples-generated/insights/applicationinsights.yaml index 030bde283..4aafed5fd 100644 --- a/examples-generated/insights/applicationinsights.yaml +++ b/examples-generated/insights/applicationinsights.yaml @@ -27,6 +27,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/applicationinsightsanalyticsitem.yaml b/examples-generated/insights/applicationinsightsanalyticsitem.yaml index 4c9c9efab..2067fb14a 100644 --- a/examples-generated/insights/applicationinsightsanalyticsitem.yaml +++ b/examples-generated/insights/applicationinsightsanalyticsitem.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/applicationinsightsapikey.yaml b/examples-generated/insights/applicationinsightsapikey.yaml index 9c6b26eb2..1886cae7c 100644 --- a/examples-generated/insights/applicationinsightsapikey.yaml +++ b/examples-generated/insights/applicationinsightsapikey.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/applicationinsightssmartdetectionrule.yaml b/examples-generated/insights/applicationinsightssmartdetectionrule.yaml index 210110c93..8f763cb2a 100644 --- a/examples-generated/insights/applicationinsightssmartdetectionrule.yaml +++ b/examples-generated/insights/applicationinsightssmartdetectionrule.yaml @@ -45,6 +45,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/applicationinsightsstandardwebtest.yaml b/examples-generated/insights/applicationinsightsstandardwebtest.yaml index 52c9262c7..b3d290975 100644 --- a/examples-generated/insights/applicationinsightsstandardwebtest.yaml +++ b/examples-generated/insights/applicationinsightsstandardwebtest.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/applicationinsightswebtest.yaml b/examples-generated/insights/applicationinsightswebtest.yaml index 8d880799c..9786a79e6 100644 --- a/examples-generated/insights/applicationinsightswebtest.yaml +++ b/examples-generated/insights/applicationinsightswebtest.yaml @@ -61,6 +61,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/applicationinsightsworkbook.yaml b/examples-generated/insights/applicationinsightsworkbook.yaml index 222e85caa..2b4d5e27e 100644 --- a/examples-generated/insights/applicationinsightsworkbook.yaml +++ b/examples-generated/insights/applicationinsightsworkbook.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/applicationinsightsworkbooktemplate.yaml b/examples-generated/insights/applicationinsightsworkbooktemplate.yaml index ba38acb57..96602f028 100644 --- a/examples-generated/insights/applicationinsightsworkbooktemplate.yaml +++ b/examples-generated/insights/applicationinsightsworkbooktemplate.yaml @@ -82,6 +82,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/monitoractiongroup.yaml b/examples-generated/insights/monitoractiongroup.yaml index 72c0a7802..3724a0fe0 100644 --- a/examples-generated/insights/monitoractiongroup.yaml +++ b/examples-generated/insights/monitoractiongroup.yaml @@ -99,6 +99,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/monitoractivitylogalert.yaml b/examples-generated/insights/monitoractivitylogalert.yaml index 141143864..72e716aa8 100644 --- a/examples-generated/insights/monitoractivitylogalert.yaml +++ b/examples-generated/insights/monitoractivitylogalert.yaml @@ -80,6 +80,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/insights/monitorautoscalesetting.yaml b/examples-generated/insights/monitorautoscalesetting.yaml index e0ee8d6c9..9c187a895 100644 --- a/examples-generated/insights/monitorautoscalesetting.yaml +++ b/examples-generated/insights/monitorautoscalesetting.yaml @@ -163,6 +163,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/insights/monitordatacollectionendpoint.yaml b/examples-generated/insights/monitordatacollectionendpoint.yaml index cb2efa884..0468a7cb1 100644 --- a/examples-generated/insights/monitordatacollectionendpoint.yaml +++ b/examples-generated/insights/monitordatacollectionendpoint.yaml @@ -31,6 +31,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/monitordatacollectionrule.yaml b/examples-generated/insights/monitordatacollectionrule.yaml index fdce26f2b..1f82c99b3 100644 --- a/examples-generated/insights/monitordatacollectionrule.yaml +++ b/examples-generated/insights/monitordatacollectionrule.yaml @@ -287,6 +287,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/insights/monitordatacollectionruleassociation.yaml b/examples-generated/insights/monitordatacollectionruleassociation.yaml index 096ff4722..d2a08b0c9 100644 --- a/examples-generated/insights/monitordatacollectionruleassociation.yaml +++ b/examples-generated/insights/monitordatacollectionruleassociation.yaml @@ -168,6 +168,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/insights/monitormetricalert.yaml b/examples-generated/insights/monitormetricalert.yaml index 79e3797d3..92a331a89 100644 --- a/examples-generated/insights/monitormetricalert.yaml +++ b/examples-generated/insights/monitormetricalert.yaml @@ -83,6 +83,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/insights/monitorprivatelinkscope.yaml b/examples-generated/insights/monitorprivatelinkscope.yaml index 1b44c3061..97ae03b4e 100644 --- a/examples-generated/insights/monitorprivatelinkscope.yaml +++ b/examples-generated/insights/monitorprivatelinkscope.yaml @@ -25,6 +25,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/monitorprivatelinkscopedservice.yaml b/examples-generated/insights/monitorprivatelinkscopedservice.yaml index a64465660..a0cc7bc4e 100644 --- a/examples-generated/insights/monitorprivatelinkscopedservice.yaml +++ b/examples-generated/insights/monitorprivatelinkscopedservice.yaml @@ -65,6 +65,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/monitorscheduledqueryrulesalert.yaml b/examples-generated/insights/monitorscheduledqueryrulesalert.yaml index 7598ee3c1..604d208cf 100644 --- a/examples-generated/insights/monitorscheduledqueryrulesalert.yaml +++ b/examples-generated/insights/monitorscheduledqueryrulesalert.yaml @@ -84,6 +84,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/monitorscheduledqueryrulesalertv2.yaml b/examples-generated/insights/monitorscheduledqueryrulesalertv2.yaml index 3f53fd8d5..8e83f7edf 100644 --- a/examples-generated/insights/monitorscheduledqueryrulesalertv2.yaml +++ b/examples-generated/insights/monitorscheduledqueryrulesalertv2.yaml @@ -99,6 +99,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/insights/monitorscheduledqueryruleslog.yaml b/examples-generated/insights/monitorscheduledqueryruleslog.yaml index 853fca2a7..6f0ce95a2 100644 --- a/examples-generated/insights/monitorscheduledqueryruleslog.yaml +++ b/examples-generated/insights/monitorscheduledqueryruleslog.yaml @@ -112,6 +112,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/iotcentral/application.yaml b/examples-generated/iotcentral/application.yaml index 1df7e5f0a..d6deaf2c7 100644 --- a/examples-generated/iotcentral/application.yaml +++ b/examples-generated/iotcentral/application.yaml @@ -33,6 +33,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/iotcentral/applicationnetworkruleset.yaml b/examples-generated/iotcentral/applicationnetworkruleset.yaml index 554b75dbf..bdf0ba7b6 100644 --- a/examples-generated/iotcentral/applicationnetworkruleset.yaml +++ b/examples-generated/iotcentral/applicationnetworkruleset.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/keyvault/accesspolicy.yaml b/examples-generated/keyvault/accesspolicy.yaml index 111c29315..4441f06bd 100644 --- a/examples-generated/keyvault/accesspolicy.yaml +++ b/examples-generated/keyvault/accesspolicy.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/keyvault/certificate.yaml b/examples-generated/keyvault/certificate.yaml index b82402015..75f23564e 100644 --- a/examples-generated/keyvault/certificate.yaml +++ b/examples-generated/keyvault/certificate.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/keyvault/certificatecontacts.yaml b/examples-generated/keyvault/certificatecontacts.yaml index 43bdf28da..f62c3a667 100644 --- a/examples-generated/keyvault/certificatecontacts.yaml +++ b/examples-generated/keyvault/certificatecontacts.yaml @@ -73,6 +73,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/keyvault/certificateissuer.yaml b/examples-generated/keyvault/certificateissuer.yaml index 2bedcc76a..e8bf49409 100644 --- a/examples-generated/keyvault/certificateissuer.yaml +++ b/examples-generated/keyvault/certificateissuer.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/keyvault/key.yaml b/examples-generated/keyvault/key.yaml index 13a0685be..692eb8eec 100644 --- a/examples-generated/keyvault/key.yaml +++ b/examples-generated/keyvault/key.yaml @@ -59,6 +59,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/keyvault/managedhardwaresecuritymodule.yaml b/examples-generated/keyvault/managedhardwaresecuritymodule.yaml index a4c638666..7877a8dae 100644 --- a/examples-generated/keyvault/managedhardwaresecuritymodule.yaml +++ b/examples-generated/keyvault/managedhardwaresecuritymodule.yaml @@ -34,6 +34,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/keyvault/managedstorageaccount.yaml b/examples-generated/keyvault/managedstorageaccount.yaml index 4719ec0ab..5af39c017 100644 --- a/examples-generated/keyvault/managedstorageaccount.yaml +++ b/examples-generated/keyvault/managedstorageaccount.yaml @@ -69,6 +69,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/keyvault/managedstorageaccountsastokendefinition.yaml b/examples-generated/keyvault/managedstorageaccountsastokendefinition.yaml index 7984d26a5..4525606b8 100644 --- a/examples-generated/keyvault/managedstorageaccountsastokendefinition.yaml +++ b/examples-generated/keyvault/managedstorageaccountsastokendefinition.yaml @@ -88,6 +88,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/keyvault/secret.yaml b/examples-generated/keyvault/secret.yaml index 1fa4d6ebf..afe69dd74 100644 --- a/examples-generated/keyvault/secret.yaml +++ b/examples-generated/keyvault/secret.yaml @@ -49,6 +49,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/keyvault/vault.yaml b/examples-generated/keyvault/vault.yaml index 16426c676..8f758511d 100644 --- a/examples-generated/keyvault/vault.yaml +++ b/examples-generated/keyvault/vault.yaml @@ -31,6 +31,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/kusto/attacheddatabaseconfiguration.yaml b/examples-generated/kusto/attacheddatabaseconfiguration.yaml index 3940b5b87..5ac5b74f0 100644 --- a/examples-generated/kusto/attacheddatabaseconfiguration.yaml +++ b/examples-generated/kusto/attacheddatabaseconfiguration.yaml @@ -129,6 +129,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/kusto/cluster.yaml b/examples-generated/kusto/cluster.yaml index 3559234b0..70e4b65a0 100644 --- a/examples-generated/kusto/cluster.yaml +++ b/examples-generated/kusto/cluster.yaml @@ -31,6 +31,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/kusto/clustermanagedprivateendpoint.yaml b/examples-generated/kusto/clustermanagedprivateendpoint.yaml index 403283161..10a026aa3 100644 --- a/examples-generated/kusto/clustermanagedprivateendpoint.yaml +++ b/examples-generated/kusto/clustermanagedprivateendpoint.yaml @@ -75,6 +75,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/kusto/clusterprincipalassignment.yaml b/examples-generated/kusto/clusterprincipalassignment.yaml index 3cbd8e71e..7413dbf31 100644 --- a/examples-generated/kusto/clusterprincipalassignment.yaml +++ b/examples-generated/kusto/clusterprincipalassignment.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/kusto/database.yaml b/examples-generated/kusto/database.yaml index 1dbbc431c..4879924c9 100644 --- a/examples-generated/kusto/database.yaml +++ b/examples-generated/kusto/database.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/kusto/databaseprincipalassignment.yaml b/examples-generated/kusto/databaseprincipalassignment.yaml index ac51b91c5..e39404d77 100644 --- a/examples-generated/kusto/databaseprincipalassignment.yaml +++ b/examples-generated/kusto/databaseprincipalassignment.yaml @@ -77,6 +77,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/kusto/eventgriddataconnection.yaml b/examples-generated/kusto/eventgriddataconnection.yaml index ac27b2b9b..da400f9e9 100644 --- a/examples-generated/kusto/eventgriddataconnection.yaml +++ b/examples-generated/kusto/eventgriddataconnection.yaml @@ -191,6 +191,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/kusto/eventhubdataconnection.yaml b/examples-generated/kusto/eventhubdataconnection.yaml index dca2e0b36..f4547430c 100644 --- a/examples-generated/kusto/eventhubdataconnection.yaml +++ b/examples-generated/kusto/eventhubdataconnection.yaml @@ -144,6 +144,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/kusto/iothubdataconnection.yaml b/examples-generated/kusto/iothubdataconnection.yaml index 2baa74bd1..a6dea3e75 100644 --- a/examples-generated/kusto/iothubdataconnection.yaml +++ b/examples-generated/kusto/iothubdataconnection.yaml @@ -151,6 +151,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/labservices/labservicelab.yaml b/examples-generated/labservices/labservicelab.yaml index bc0d09d74..d0ecb192b 100644 --- a/examples-generated/labservices/labservicelab.yaml +++ b/examples-generated/labservices/labservicelab.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/labservices/labserviceplan.yaml b/examples-generated/labservices/labserviceplan.yaml index da017d06b..a50d185ac 100644 --- a/examples-generated/labservices/labserviceplan.yaml +++ b/examples-generated/labservices/labserviceplan.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/appactioncustom.yaml b/examples-generated/logic/appactioncustom.yaml index 86a305154..4c3e1e645 100644 --- a/examples-generated/logic/appactioncustom.yaml +++ b/examples-generated/logic/appactioncustom.yaml @@ -57,6 +57,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/appactionhttp.yaml b/examples-generated/logic/appactionhttp.yaml index dfe1ba176..73e5d2c9b 100644 --- a/examples-generated/logic/appactionhttp.yaml +++ b/examples-generated/logic/appactionhttp.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/appintegrationaccount.yaml b/examples-generated/logic/appintegrationaccount.yaml index d9a3a31ed..96e1a911e 100644 --- a/examples-generated/logic/appintegrationaccount.yaml +++ b/examples-generated/logic/appintegrationaccount.yaml @@ -30,6 +30,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/appintegrationaccountbatchconfiguration.yaml b/examples-generated/logic/appintegrationaccountbatchconfiguration.yaml index 848cae77a..90a86f4f8 100644 --- a/examples-generated/logic/appintegrationaccountbatchconfiguration.yaml +++ b/examples-generated/logic/appintegrationaccountbatchconfiguration.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/appintegrationaccountpartner.yaml b/examples-generated/logic/appintegrationaccountpartner.yaml index 1ae575e81..e3a833486 100644 --- a/examples-generated/logic/appintegrationaccountpartner.yaml +++ b/examples-generated/logic/appintegrationaccountpartner.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/appintegrationaccountschema.yaml b/examples-generated/logic/appintegrationaccountschema.yaml index e3586b482..bcc9b5eb9 100644 --- a/examples-generated/logic/appintegrationaccountschema.yaml +++ b/examples-generated/logic/appintegrationaccountschema.yaml @@ -48,6 +48,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/appintegrationaccountsession.yaml b/examples-generated/logic/appintegrationaccountsession.yaml index 155fae326..d7e2003a4 100644 --- a/examples-generated/logic/appintegrationaccountsession.yaml +++ b/examples-generated/logic/appintegrationaccountsession.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/apptriggercustom.yaml b/examples-generated/logic/apptriggercustom.yaml index 2645fb789..ec7ea6d34 100644 --- a/examples-generated/logic/apptriggercustom.yaml +++ b/examples-generated/logic/apptriggercustom.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/apptriggerhttprequest.yaml b/examples-generated/logic/apptriggerhttprequest.yaml index 5a03fd2d5..fe6651050 100644 --- a/examples-generated/logic/apptriggerhttprequest.yaml +++ b/examples-generated/logic/apptriggerhttprequest.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/apptriggerrecurrence.yaml b/examples-generated/logic/apptriggerrecurrence.yaml index 5db1d0b32..107e1e56b 100644 --- a/examples-generated/logic/apptriggerrecurrence.yaml +++ b/examples-generated/logic/apptriggerrecurrence.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/appworkflow.yaml b/examples-generated/logic/appworkflow.yaml index e2b898591..b783d35ba 100644 --- a/examples-generated/logic/appworkflow.yaml +++ b/examples-generated/logic/appworkflow.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logic/integrationserviceenvironment.yaml b/examples-generated/logic/integrationserviceenvironment.yaml index 8ba32347d..06ed9b077 100644 --- a/examples-generated/logic/integrationserviceenvironment.yaml +++ b/examples-generated/logic/integrationserviceenvironment.yaml @@ -142,6 +142,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/logz/monitor.yaml b/examples-generated/logz/monitor.yaml index 81b3cbf4e..8bea776a3 100644 --- a/examples-generated/logz/monitor.yaml +++ b/examples-generated/logz/monitor.yaml @@ -35,6 +35,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logz/subaccount.yaml b/examples-generated/logz/subaccount.yaml index c74f5e675..31d7e2219 100644 --- a/examples-generated/logz/subaccount.yaml +++ b/examples-generated/logz/subaccount.yaml @@ -56,6 +56,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logz/subaccounttagrule.yaml b/examples-generated/logz/subaccounttagrule.yaml index 5635fa68a..96e215ef2 100644 --- a/examples-generated/logz/subaccounttagrule.yaml +++ b/examples-generated/logz/subaccounttagrule.yaml @@ -82,6 +82,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/logz/tagrule.yaml b/examples-generated/logz/tagrule.yaml index 34643eb53..c66806727 100644 --- a/examples-generated/logz/tagrule.yaml +++ b/examples-generated/logz/tagrule.yaml @@ -61,6 +61,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/machinelearningservices/computecluster.yaml b/examples-generated/machinelearningservices/computecluster.yaml index df0e1a645..8b6717419 100644 --- a/examples-generated/machinelearningservices/computecluster.yaml +++ b/examples-generated/machinelearningservices/computecluster.yaml @@ -165,6 +165,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/machinelearningservices/computeinstance.yaml b/examples-generated/machinelearningservices/computeinstance.yaml index ef8ea758b..ec096dd85 100644 --- a/examples-generated/machinelearningservices/computeinstance.yaml +++ b/examples-generated/machinelearningservices/computeinstance.yaml @@ -163,6 +163,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/machinelearningservices/synapsespark.yaml b/examples-generated/machinelearningservices/synapsespark.yaml index 872ec6a52..23cac1c65 100644 --- a/examples-generated/machinelearningservices/synapsespark.yaml +++ b/examples-generated/machinelearningservices/synapsespark.yaml @@ -180,6 +180,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/machinelearningservices/workspace.yaml b/examples-generated/machinelearningservices/workspace.yaml index 5fd18e101..64e41f29b 100644 --- a/examples-generated/machinelearningservices/workspace.yaml +++ b/examples-generated/machinelearningservices/workspace.yaml @@ -93,6 +93,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/maintenance/maintenanceassignmentdedicatedhost.yaml b/examples-generated/maintenance/maintenanceassignmentdedicatedhost.yaml index 46c264e9d..4de3efed2 100644 --- a/examples-generated/maintenance/maintenanceassignmentdedicatedhost.yaml +++ b/examples-generated/maintenance/maintenanceassignmentdedicatedhost.yaml @@ -64,6 +64,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/maintenance/maintenanceassignmentvirtualmachine.yaml b/examples-generated/maintenance/maintenanceassignmentvirtualmachine.yaml index 1eaadb494..63f19a28f 100644 --- a/examples-generated/maintenance/maintenanceassignmentvirtualmachine.yaml +++ b/examples-generated/maintenance/maintenanceassignmentvirtualmachine.yaml @@ -142,6 +142,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/maintenance/maintenanceconfiguration.yaml b/examples-generated/maintenance/maintenanceconfiguration.yaml index c374e1a2a..32fe132b7 100644 --- a/examples-generated/maintenance/maintenanceconfiguration.yaml +++ b/examples-generated/maintenance/maintenanceconfiguration.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/managedidentity/federatedidentitycredential.yaml b/examples-generated/managedidentity/federatedidentitycredential.yaml index e035b013d..951c02c89 100644 --- a/examples-generated/managedidentity/federatedidentitycredential.yaml +++ b/examples-generated/managedidentity/federatedidentitycredential.yaml @@ -50,6 +50,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/managedidentity/userassignedidentity.yaml b/examples-generated/managedidentity/userassignedidentity.yaml index bfa7e81a6..87bcd79d8 100644 --- a/examples-generated/managedidentity/userassignedidentity.yaml +++ b/examples-generated/managedidentity/userassignedidentity.yaml @@ -13,6 +13,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/management/managementgroup.yaml b/examples-generated/management/managementgroup.yaml index 9ef63f614..adf8701bd 100644 --- a/examples-generated/management/managementgroup.yaml +++ b/examples-generated/management/managementgroup.yaml @@ -11,6 +11,3 @@ spec: displayName: ParentGroup subscriptionIds: - ${data.azurerm_subscription.current.subscription_id} - ---- - diff --git a/examples-generated/management/managementgroupsubscriptionassociation.yaml b/examples-generated/management/managementgroupsubscriptionassociation.yaml index 77c5cc856..7dc645230 100644 --- a/examples-generated/management/managementgroupsubscriptionassociation.yaml +++ b/examples-generated/management/managementgroupsubscriptionassociation.yaml @@ -14,6 +14,3 @@ spec: subscriptionIdSelector: matchLabels: testing.upbound.io/example-name: azurerm_subscription - ---- - diff --git a/examples-generated/maps/account.yaml b/examples-generated/maps/account.yaml index afc00a388..3858c5b5f 100644 --- a/examples-generated/maps/account.yaml +++ b/examples-generated/maps/account.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/maps/creator.yaml b/examples-generated/maps/creator.yaml index b2bb924ee..3d97d3905 100644 --- a/examples-generated/maps/creator.yaml +++ b/examples-generated/maps/creator.yaml @@ -48,6 +48,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/marketplaceordering/marketplaceagreement.yaml b/examples-generated/marketplaceordering/marketplaceagreement.yaml index 8f61d0a67..2e9559272 100644 --- a/examples-generated/marketplaceordering/marketplaceagreement.yaml +++ b/examples-generated/marketplaceordering/marketplaceagreement.yaml @@ -11,6 +11,3 @@ spec: offer: waf plan: hourly publisher: barracudanetworks - ---- - diff --git a/examples-generated/media/asset.yaml b/examples-generated/media/asset.yaml index 06d88b0b4..892c5fe36 100644 --- a/examples-generated/media/asset.yaml +++ b/examples-generated/media/asset.yaml @@ -70,6 +70,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/assetfilter.yaml b/examples-generated/media/assetfilter.yaml index 59d3fda52..ae3f8ee9a 100644 --- a/examples-generated/media/assetfilter.yaml +++ b/examples-generated/media/assetfilter.yaml @@ -112,6 +112,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/contentkeypolicy.yaml b/examples-generated/media/contentkeypolicy.yaml index 47a54f66e..02c83f1f3 100644 --- a/examples-generated/media/contentkeypolicy.yaml +++ b/examples-generated/media/contentkeypolicy.yaml @@ -151,6 +151,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/job.yaml b/examples-generated/media/job.yaml index 528e54907..5e2891cba 100644 --- a/examples-generated/media/job.yaml +++ b/examples-generated/media/job.yaml @@ -147,6 +147,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/liveevent.yaml b/examples-generated/media/liveevent.yaml index 182e20deb..493353ad4 100644 --- a/examples-generated/media/liveevent.yaml +++ b/examples-generated/media/liveevent.yaml @@ -93,6 +93,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/liveeventoutput.yaml b/examples-generated/media/liveeventoutput.yaml index f9c0267cd..3caf86dc2 100644 --- a/examples-generated/media/liveeventoutput.yaml +++ b/examples-generated/media/liveeventoutput.yaml @@ -122,6 +122,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/servicesaccount.yaml b/examples-generated/media/servicesaccount.yaml index a7da87cff..c11a39630 100644 --- a/examples-generated/media/servicesaccount.yaml +++ b/examples-generated/media/servicesaccount.yaml @@ -50,6 +50,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/servicesaccountfilter.yaml b/examples-generated/media/servicesaccountfilter.yaml index 544e12dae..4a907e44f 100644 --- a/examples-generated/media/servicesaccountfilter.yaml +++ b/examples-generated/media/servicesaccountfilter.yaml @@ -95,6 +95,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/streamingendpoint.yaml b/examples-generated/media/streamingendpoint.yaml index 84db724d7..2f52596c0 100644 --- a/examples-generated/media/streamingendpoint.yaml +++ b/examples-generated/media/streamingendpoint.yaml @@ -71,6 +71,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/streaminglocator.yaml b/examples-generated/media/streaminglocator.yaml index 5f5dc2733..bd6cd0d27 100644 --- a/examples-generated/media/streaminglocator.yaml +++ b/examples-generated/media/streaminglocator.yaml @@ -114,6 +114,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/streamingpolicy.yaml b/examples-generated/media/streamingpolicy.yaml index e6dc2ec21..b78c52f54 100644 --- a/examples-generated/media/streamingpolicy.yaml +++ b/examples-generated/media/streamingpolicy.yaml @@ -135,6 +135,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/media/transform.yaml b/examples-generated/media/transform.yaml index 1f570622e..7babf8c4d 100644 --- a/examples-generated/media/transform.yaml +++ b/examples-generated/media/transform.yaml @@ -75,6 +75,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/mixedreality/spatialanchorsaccount.yaml b/examples-generated/mixedreality/spatialanchorsaccount.yaml index 300b1e709..1de39e29c 100644 --- a/examples-generated/mixedreality/spatialanchorsaccount.yaml +++ b/examples-generated/mixedreality/spatialanchorsaccount.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/netapp/account.yaml b/examples-generated/netapp/account.yaml index ef54aaee2..49317bd27 100644 --- a/examples-generated/netapp/account.yaml +++ b/examples-generated/netapp/account.yaml @@ -37,6 +37,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/netapp/pool.yaml b/examples-generated/netapp/pool.yaml index fc0607a9b..ac2ef9fe0 100644 --- a/examples-generated/netapp/pool.yaml +++ b/examples-generated/netapp/pool.yaml @@ -48,6 +48,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/netapp/snapshot.yaml b/examples-generated/netapp/snapshot.yaml index d8240b0f9..e814927ba 100644 --- a/examples-generated/netapp/snapshot.yaml +++ b/examples-generated/netapp/snapshot.yaml @@ -150,6 +150,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/netapp/snapshotpolicy.yaml b/examples-generated/netapp/snapshotpolicy.yaml index 042a522c0..1f1f15cac 100644 --- a/examples-generated/netapp/snapshotpolicy.yaml +++ b/examples-generated/netapp/snapshotpolicy.yaml @@ -70,6 +70,3 @@ metadata: spec: forProvider: location: East US - ---- - diff --git a/examples-generated/netapp/volume.yaml b/examples-generated/netapp/volume.yaml index 8df7d5690..791f32565 100644 --- a/examples-generated/netapp/volume.yaml +++ b/examples-generated/netapp/volume.yaml @@ -144,6 +144,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/applicationgateway.yaml b/examples-generated/network/applicationgateway.yaml index 3a488b91b..f299533e6 100644 --- a/examples-generated/network/applicationgateway.yaml +++ b/examples-generated/network/applicationgateway.yaml @@ -142,6 +142,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/applicationsecuritygroup.yaml b/examples-generated/network/applicationsecuritygroup.yaml index 1a4bdb309..410a6ee02 100644 --- a/examples-generated/network/applicationsecuritygroup.yaml +++ b/examples-generated/network/applicationsecuritygroup.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/connectionmonitor.yaml b/examples-generated/network/connectionmonitor.yaml index af7258209..9d10467ea 100644 --- a/examples-generated/network/connectionmonitor.yaml +++ b/examples-generated/network/connectionmonitor.yaml @@ -151,6 +151,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/ddosprotectionplan.yaml b/examples-generated/network/ddosprotectionplan.yaml index 48fa3f44e..fda45a9f7 100644 --- a/examples-generated/network/ddosprotectionplan.yaml +++ b/examples-generated/network/ddosprotectionplan.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/dnsaaaarecord.yaml b/examples-generated/network/dnsaaaarecord.yaml index 902dbef44..a28cf1039 100644 --- a/examples-generated/network/dnsaaaarecord.yaml +++ b/examples-generated/network/dnsaaaarecord.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/dnsarecord.yaml b/examples-generated/network/dnsarecord.yaml index 78e6535e8..ea5fc2127 100644 --- a/examples-generated/network/dnsarecord.yaml +++ b/examples-generated/network/dnsarecord.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/dnscaarecord.yaml b/examples-generated/network/dnscaarecord.yaml index c872e7c41..2bb9b96ea 100644 --- a/examples-generated/network/dnscaarecord.yaml +++ b/examples-generated/network/dnscaarecord.yaml @@ -60,6 +60,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/dnscnamerecord.yaml b/examples-generated/network/dnscnamerecord.yaml index 607d6dbe1..801d59887 100644 --- a/examples-generated/network/dnscnamerecord.yaml +++ b/examples-generated/network/dnscnamerecord.yaml @@ -46,6 +46,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/dnsmxrecord.yaml b/examples-generated/network/dnsmxrecord.yaml index 7339b7b64..9ef9d70e6 100644 --- a/examples-generated/network/dnsmxrecord.yaml +++ b/examples-generated/network/dnsmxrecord.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/dnsnsrecord.yaml b/examples-generated/network/dnsnsrecord.yaml index 18fc356a1..d479fc835 100644 --- a/examples-generated/network/dnsnsrecord.yaml +++ b/examples-generated/network/dnsnsrecord.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/dnsptrrecord.yaml b/examples-generated/network/dnsptrrecord.yaml index 11077bea3..6a020aaed 100644 --- a/examples-generated/network/dnsptrrecord.yaml +++ b/examples-generated/network/dnsptrrecord.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/dnssrvrecord.yaml b/examples-generated/network/dnssrvrecord.yaml index 86d8a1d72..933c9190b 100644 --- a/examples-generated/network/dnssrvrecord.yaml +++ b/examples-generated/network/dnssrvrecord.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/dnstxtrecord.yaml b/examples-generated/network/dnstxtrecord.yaml index 42b6d948c..589d4db6a 100644 --- a/examples-generated/network/dnstxtrecord.yaml +++ b/examples-generated/network/dnstxtrecord.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/dnszone.yaml b/examples-generated/network/dnszone.yaml index 4a0f52ae0..c841d6951 100644 --- a/examples-generated/network/dnszone.yaml +++ b/examples-generated/network/dnszone.yaml @@ -25,6 +25,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/expressroutecircuit.yaml b/examples-generated/network/expressroutecircuit.yaml index 6adc41831..55dd6cff1 100644 --- a/examples-generated/network/expressroutecircuit.yaml +++ b/examples-generated/network/expressroutecircuit.yaml @@ -34,6 +34,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/expressroutecircuitauthorization.yaml b/examples-generated/network/expressroutecircuitauthorization.yaml index 48df9d400..6c7abdc31 100644 --- a/examples-generated/network/expressroutecircuitauthorization.yaml +++ b/examples-generated/network/expressroutecircuitauthorization.yaml @@ -54,6 +54,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/expressroutecircuitconnection.yaml b/examples-generated/network/expressroutecircuitconnection.yaml index 2532a3144..921e18282 100644 --- a/examples-generated/network/expressroutecircuitconnection.yaml +++ b/examples-generated/network/expressroutecircuitconnection.yaml @@ -171,6 +171,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/expressroutecircuitpeering.yaml b/examples-generated/network/expressroutecircuitpeering.yaml index 547d3229c..00ce90be5 100644 --- a/examples-generated/network/expressroutecircuitpeering.yaml +++ b/examples-generated/network/expressroutecircuitpeering.yaml @@ -69,6 +69,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/expressrouteconnection.yaml b/examples-generated/network/expressrouteconnection.yaml index 44a777a75..9e6a30435 100644 --- a/examples-generated/network/expressrouteconnection.yaml +++ b/examples-generated/network/expressrouteconnection.yaml @@ -156,6 +156,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/expressroutegateway.yaml b/examples-generated/network/expressroutegateway.yaml index 546d58b1a..f834363c0 100644 --- a/examples-generated/network/expressroutegateway.yaml +++ b/examples-generated/network/expressroutegateway.yaml @@ -70,6 +70,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/expressrouteport.yaml b/examples-generated/network/expressrouteport.yaml index 1a949f2c3..52fa8de07 100644 --- a/examples-generated/network/expressrouteport.yaml +++ b/examples-generated/network/expressrouteport.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West US - ---- - diff --git a/examples-generated/network/firewall.yaml b/examples-generated/network/firewall.yaml index c46c10937..de1400f56 100644 --- a/examples-generated/network/firewall.yaml +++ b/examples-generated/network/firewall.yaml @@ -95,6 +95,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/firewallapplicationrulecollection.yaml b/examples-generated/network/firewallapplicationrulecollection.yaml index bfb3c59bf..4dfb298cd 100644 --- a/examples-generated/network/firewallapplicationrulecollection.yaml +++ b/examples-generated/network/firewallapplicationrulecollection.yaml @@ -125,6 +125,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/firewallnatrulecollection.yaml b/examples-generated/network/firewallnatrulecollection.yaml index 19cb1b3f5..3966f07d8 100644 --- a/examples-generated/network/firewallnatrulecollection.yaml +++ b/examples-generated/network/firewallnatrulecollection.yaml @@ -129,6 +129,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/firewallnetworkrulecollection.yaml b/examples-generated/network/firewallnetworkrulecollection.yaml index 36980c908..f572e4835 100644 --- a/examples-generated/network/firewallnetworkrulecollection.yaml +++ b/examples-generated/network/firewallnetworkrulecollection.yaml @@ -128,6 +128,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/firewallpolicy.yaml b/examples-generated/network/firewallpolicy.yaml index 212270bb6..83ab99d80 100644 --- a/examples-generated/network/firewallpolicy.yaml +++ b/examples-generated/network/firewallpolicy.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/firewallpolicyrulecollectiongroup.yaml b/examples-generated/network/firewallpolicyrulecollectiongroup.yaml index b917fbf46..9bbf4ec6a 100644 --- a/examples-generated/network/firewallpolicyrulecollectiongroup.yaml +++ b/examples-generated/network/firewallpolicyrulecollectiongroup.yaml @@ -92,6 +92,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/frontdoor.yaml b/examples-generated/network/frontdoor.yaml index c3773bb40..bb86715e4 100644 --- a/examples-generated/network/frontdoor.yaml +++ b/examples-generated/network/frontdoor.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/frontdoorcustomhttpsconfiguration.yaml b/examples-generated/network/frontdoorcustomhttpsconfiguration.yaml index da8cca793..11df21b6d 100644 --- a/examples-generated/network/frontdoorcustomhttpsconfiguration.yaml +++ b/examples-generated/network/frontdoorcustomhttpsconfiguration.yaml @@ -70,6 +70,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/frontdoorfirewallpolicy.yaml b/examples-generated/network/frontdoorfirewallpolicy.yaml index 946951833..c714234bd 100644 --- a/examples-generated/network/frontdoorfirewallpolicy.yaml +++ b/examples-generated/network/frontdoorfirewallpolicy.yaml @@ -94,6 +94,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/frontdoorrulesengine.yaml b/examples-generated/network/frontdoorrulesengine.yaml index 296028bd9..f332c8be8 100644 --- a/examples-generated/network/frontdoorrulesengine.yaml +++ b/examples-generated/network/frontdoorrulesengine.yaml @@ -93,6 +93,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/ipgroup.yaml b/examples-generated/network/ipgroup.yaml index a7aa51fd6..a29ce76b4 100644 --- a/examples-generated/network/ipgroup.yaml +++ b/examples-generated/network/ipgroup.yaml @@ -32,6 +32,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/loadbalancer.yaml b/examples-generated/network/loadbalancer.yaml index fead54ef2..5349cd848 100644 --- a/examples-generated/network/loadbalancer.yaml +++ b/examples-generated/network/loadbalancer.yaml @@ -49,6 +49,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/loadbalancerbackendaddresspool.yaml b/examples-generated/network/loadbalancerbackendaddresspool.yaml index edc404ffc..f7f7f574a 100644 --- a/examples-generated/network/loadbalancerbackendaddresspool.yaml +++ b/examples-generated/network/loadbalancerbackendaddresspool.yaml @@ -65,6 +65,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/loadbalancerbackendaddresspooladdress.yaml b/examples-generated/network/loadbalancerbackendaddresspooladdress.yaml index 812060c45..4f1bf757e 100644 --- a/examples-generated/network/loadbalancerbackendaddresspooladdress.yaml +++ b/examples-generated/network/loadbalancerbackendaddresspooladdress.yaml @@ -15,6 +15,3 @@ spec: virtualNetworkIdSelector: matchLabels: testing.upbound.io/example-name: azurerm_virtual_network - ---- - diff --git a/examples-generated/network/loadbalancernatpool.yaml b/examples-generated/network/loadbalancernatpool.yaml index b6256a9ed..063f659d3 100644 --- a/examples-generated/network/loadbalancernatpool.yaml +++ b/examples-generated/network/loadbalancernatpool.yaml @@ -73,6 +73,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/loadbalancernatrule.yaml b/examples-generated/network/loadbalancernatrule.yaml index d42f5e314..1d47d4822 100644 --- a/examples-generated/network/loadbalancernatrule.yaml +++ b/examples-generated/network/loadbalancernatrule.yaml @@ -89,6 +89,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/loadbalanceroutboundrule.yaml b/examples-generated/network/loadbalanceroutboundrule.yaml index 2061b65a5..13090d8df 100644 --- a/examples-generated/network/loadbalanceroutboundrule.yaml +++ b/examples-generated/network/loadbalanceroutboundrule.yaml @@ -87,6 +87,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/loadbalancerprobe.yaml b/examples-generated/network/loadbalancerprobe.yaml index 23fdf6cd9..5dd309d53 100644 --- a/examples-generated/network/loadbalancerprobe.yaml +++ b/examples-generated/network/loadbalancerprobe.yaml @@ -66,6 +66,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/loadbalancerrule.yaml b/examples-generated/network/loadbalancerrule.yaml index 182fce59d..55e23aa25 100644 --- a/examples-generated/network/loadbalancerrule.yaml +++ b/examples-generated/network/loadbalancerrule.yaml @@ -69,6 +69,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/localnetworkgateway.yaml b/examples-generated/network/localnetworkgateway.yaml index eab919ea3..049b67697 100644 --- a/examples-generated/network/localnetworkgateway.yaml +++ b/examples-generated/network/localnetworkgateway.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/manager.yaml b/examples-generated/network/manager.yaml index 85b720bf1..913ac3a52 100644 --- a/examples-generated/network/manager.yaml +++ b/examples-generated/network/manager.yaml @@ -35,6 +35,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/managermanagementgroupconnection.yaml b/examples-generated/network/managermanagementgroupconnection.yaml index 2485a9e55..3becd586f 100644 --- a/examples-generated/network/managermanagementgroupconnection.yaml +++ b/examples-generated/network/managermanagementgroupconnection.yaml @@ -99,6 +99,3 @@ spec: principalId: ${data.azurerm_client_config.current.object_id} roleDefinitionName: Network Contributor scope: ${azurerm_management_group.example.id} - ---- - diff --git a/examples-generated/network/managernetworkgroup.yaml b/examples-generated/network/managernetworkgroup.yaml index ce99c4776..352c0d041 100644 --- a/examples-generated/network/managernetworkgroup.yaml +++ b/examples-generated/network/managernetworkgroup.yaml @@ -49,6 +49,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/managerstaticmember.yaml b/examples-generated/network/managerstaticmember.yaml index 1ac7e9d44..53842ccc3 100644 --- a/examples-generated/network/managerstaticmember.yaml +++ b/examples-generated/network/managerstaticmember.yaml @@ -69,6 +69,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/managersubscriptionconnection.yaml b/examples-generated/network/managersubscriptionconnection.yaml index db56a0e24..78decb3b4 100644 --- a/examples-generated/network/managersubscriptionconnection.yaml +++ b/examples-generated/network/managersubscriptionconnection.yaml @@ -49,6 +49,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/natgateway.yaml b/examples-generated/network/natgateway.yaml index fca0dcb8e..3fd79dbf2 100644 --- a/examples-generated/network/natgateway.yaml +++ b/examples-generated/network/natgateway.yaml @@ -71,6 +71,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/natgatewaypublicipassociation.yaml b/examples-generated/network/natgatewaypublicipassociation.yaml index f9a37dfe2..064d91869 100644 --- a/examples-generated/network/natgatewaypublicipassociation.yaml +++ b/examples-generated/network/natgatewaypublicipassociation.yaml @@ -65,6 +65,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/natgatewaypublicipprefixassociation.yaml b/examples-generated/network/natgatewaypublicipprefixassociation.yaml index d2edb05c8..dca5795ff 100644 --- a/examples-generated/network/natgatewaypublicipprefixassociation.yaml +++ b/examples-generated/network/natgatewaypublicipprefixassociation.yaml @@ -66,6 +66,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/networkinterface.yaml b/examples-generated/network/networkinterface.yaml index 6a858a71f..699f61c76 100644 --- a/examples-generated/network/networkinterface.yaml +++ b/examples-generated/network/networkinterface.yaml @@ -72,6 +72,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/networkinterfaceapplicationsecuritygroupassociation.yaml b/examples-generated/network/networkinterfaceapplicationsecuritygroupassociation.yaml index 7163f3cf4..e554931b7 100644 --- a/examples-generated/network/networkinterfaceapplicationsecuritygroupassociation.yaml +++ b/examples-generated/network/networkinterfaceapplicationsecuritygroupassociation.yaml @@ -108,6 +108,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/networkinterfacebackendaddresspoolassociation.yaml b/examples-generated/network/networkinterfacebackendaddresspoolassociation.yaml index d682307bc..91e698849 100644 --- a/examples-generated/network/networkinterfacebackendaddresspoolassociation.yaml +++ b/examples-generated/network/networkinterfacebackendaddresspoolassociation.yaml @@ -148,6 +148,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/networkinterfacenatruleassociation.yaml b/examples-generated/network/networkinterfacenatruleassociation.yaml index f5246decb..f7fb3b7f8 100644 --- a/examples-generated/network/networkinterfacenatruleassociation.yaml +++ b/examples-generated/network/networkinterfacenatruleassociation.yaml @@ -155,6 +155,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/networkinterfacesecuritygroupassociation.yaml b/examples-generated/network/networkinterfacesecuritygroupassociation.yaml index 107523069..ab3821e01 100644 --- a/examples-generated/network/networkinterfacesecuritygroupassociation.yaml +++ b/examples-generated/network/networkinterfacesecuritygroupassociation.yaml @@ -108,6 +108,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/packetcapture.yaml b/examples-generated/network/packetcapture.yaml index da4253e8b..7cdc34b8c 100644 --- a/examples-generated/network/packetcapture.yaml +++ b/examples-generated/network/packetcapture.yaml @@ -132,6 +132,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/pointtositevpngateway.yaml b/examples-generated/network/pointtositevpngateway.yaml index 12256bcc6..d3effb2e9 100644 --- a/examples-generated/network/pointtositevpngateway.yaml +++ b/examples-generated/network/pointtositevpngateway.yaml @@ -118,6 +118,3 @@ spec: testing.upbound.io/example-name: example vpnAuthenticationTypes: - Certificate - ---- - diff --git a/examples-generated/network/privatednsaaaarecord.yaml b/examples-generated/network/privatednsaaaarecord.yaml index 9ea5b72f3..d22adaa61 100644 --- a/examples-generated/network/privatednsaaaarecord.yaml +++ b/examples-generated/network/privatednsaaaarecord.yaml @@ -48,6 +48,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/privatednsarecord.yaml b/examples-generated/network/privatednsarecord.yaml index 8a4204cb4..068e6b9a0 100644 --- a/examples-generated/network/privatednsarecord.yaml +++ b/examples-generated/network/privatednsarecord.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/privatednscnamerecord.yaml b/examples-generated/network/privatednscnamerecord.yaml index 992b39175..e2b9b972e 100644 --- a/examples-generated/network/privatednscnamerecord.yaml +++ b/examples-generated/network/privatednscnamerecord.yaml @@ -46,6 +46,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/privatednsmxrecord.yaml b/examples-generated/network/privatednsmxrecord.yaml index f3ffd1154..ece4d48be 100644 --- a/examples-generated/network/privatednsmxrecord.yaml +++ b/examples-generated/network/privatednsmxrecord.yaml @@ -52,6 +52,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/privatednsptrrecord.yaml b/examples-generated/network/privatednsptrrecord.yaml index 34fe926a9..3cb234d6d 100644 --- a/examples-generated/network/privatednsptrrecord.yaml +++ b/examples-generated/network/privatednsptrrecord.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/privatednsresolver.yaml b/examples-generated/network/privatednsresolver.yaml index c9a33de1f..c816be7da 100644 --- a/examples-generated/network/privatednsresolver.yaml +++ b/examples-generated/network/privatednsresolver.yaml @@ -48,6 +48,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/privatednssrvrecord.yaml b/examples-generated/network/privatednssrvrecord.yaml index bc07465c3..a1a76408c 100644 --- a/examples-generated/network/privatednssrvrecord.yaml +++ b/examples-generated/network/privatednssrvrecord.yaml @@ -56,6 +56,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/privatednstxtrecord.yaml b/examples-generated/network/privatednstxtrecord.yaml index ce53c49f7..92da671ad 100644 --- a/examples-generated/network/privatednstxtrecord.yaml +++ b/examples-generated/network/privatednstxtrecord.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/privatednszone.yaml b/examples-generated/network/privatednszone.yaml index 63c2dcae9..69efe9946 100644 --- a/examples-generated/network/privatednszone.yaml +++ b/examples-generated/network/privatednszone.yaml @@ -25,6 +25,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/privatednszonevirtualnetworklink.yaml b/examples-generated/network/privatednszonevirtualnetworklink.yaml index 0d3a23614..dc0e29acf 100644 --- a/examples-generated/network/privatednszonevirtualnetworklink.yaml +++ b/examples-generated/network/privatednszonevirtualnetworklink.yaml @@ -66,6 +66,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/privateendpoint.yaml b/examples-generated/network/privateendpoint.yaml index 34e9fb002..8e0722a26 100644 --- a/examples-generated/network/privateendpoint.yaml +++ b/examples-generated/network/privateendpoint.yaml @@ -163,6 +163,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/privateendpointapplicationsecuritygroupassociation.yaml b/examples-generated/network/privateendpointapplicationsecuritygroupassociation.yaml index 890e618e8..37914c578 100644 --- a/examples-generated/network/privateendpointapplicationsecuritygroupassociation.yaml +++ b/examples-generated/network/privateendpointapplicationsecuritygroupassociation.yaml @@ -203,6 +203,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/privatelinkservice.yaml b/examples-generated/network/privatelinkservice.yaml index d1bba8dfc..86a30a4a7 100644 --- a/examples-generated/network/privatelinkservice.yaml +++ b/examples-generated/network/privatelinkservice.yaml @@ -130,6 +130,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/profile.yaml b/examples-generated/network/profile.yaml index 6acf44c40..bf2b984ec 100644 --- a/examples-generated/network/profile.yaml +++ b/examples-generated/network/profile.yaml @@ -79,6 +79,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/publicip.yaml b/examples-generated/network/publicip.yaml index 1a22fb541..ce8e61e2a 100644 --- a/examples-generated/network/publicip.yaml +++ b/examples-generated/network/publicip.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/publicipprefix.yaml b/examples-generated/network/publicipprefix.yaml index 36aebe389..47f0da17e 100644 --- a/examples-generated/network/publicipprefix.yaml +++ b/examples-generated/network/publicipprefix.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/route.yaml b/examples-generated/network/route.yaml index 74afef568..dae164fdc 100644 --- a/examples-generated/network/route.yaml +++ b/examples-generated/network/route.yaml @@ -47,6 +47,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/routefilter.yaml b/examples-generated/network/routefilter.yaml index 4b201bad4..126b37b16 100644 --- a/examples-generated/network/routefilter.yaml +++ b/examples-generated/network/routefilter.yaml @@ -18,6 +18,3 @@ spec: - 12076:52004 name: rule ruleType: Community - ---- - diff --git a/examples-generated/network/routemap.yaml b/examples-generated/network/routemap.yaml index 146054d85..36f93da71 100644 --- a/examples-generated/network/routemap.yaml +++ b/examples-generated/network/routemap.yaml @@ -75,6 +75,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/routeserver.yaml b/examples-generated/network/routeserver.yaml index 668361aeb..738a5bd7c 100644 --- a/examples-generated/network/routeserver.yaml +++ b/examples-generated/network/routeserver.yaml @@ -95,6 +95,3 @@ spec: testing.upbound.io/example-name: example tags: environment: Production - ---- - diff --git a/examples-generated/network/routeserverbgpconnection.yaml b/examples-generated/network/routeserverbgpconnection.yaml index 63d07d302..1f406ce47 100644 --- a/examples-generated/network/routeserverbgpconnection.yaml +++ b/examples-generated/network/routeserverbgpconnection.yaml @@ -13,6 +13,3 @@ spec: routeServerIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/routetable.yaml b/examples-generated/network/routetable.yaml index 5de656203..880290a89 100644 --- a/examples-generated/network/routetable.yaml +++ b/examples-generated/network/routetable.yaml @@ -33,6 +33,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/securitygroup.yaml b/examples-generated/network/securitygroup.yaml index f1ca1334f..f6d1b18b2 100644 --- a/examples-generated/network/securitygroup.yaml +++ b/examples-generated/network/securitygroup.yaml @@ -38,6 +38,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/securityrule.yaml b/examples-generated/network/securityrule.yaml index f8aab2a81..03170bcff 100644 --- a/examples-generated/network/securityrule.yaml +++ b/examples-generated/network/securityrule.yaml @@ -53,6 +53,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/subnet.yaml b/examples-generated/network/subnet.yaml index b3c8b5c99..33ff9528b 100644 --- a/examples-generated/network/subnet.yaml +++ b/examples-generated/network/subnet.yaml @@ -56,6 +56,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/subnetnatgatewayassociation.yaml b/examples-generated/network/subnetnatgatewayassociation.yaml index 910695fe1..4fa5bcd79 100644 --- a/examples-generated/network/subnetnatgatewayassociation.yaml +++ b/examples-generated/network/subnetnatgatewayassociation.yaml @@ -85,6 +85,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/subnetnetworksecuritygroupassociation.yaml b/examples-generated/network/subnetnetworksecuritygroupassociation.yaml index e488150d7..908ad8581 100644 --- a/examples-generated/network/subnetnetworksecuritygroupassociation.yaml +++ b/examples-generated/network/subnetnetworksecuritygroupassociation.yaml @@ -95,6 +95,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/subnetroutetableassociation.yaml b/examples-generated/network/subnetroutetableassociation.yaml index a470106ed..28e91fcc9 100644 --- a/examples-generated/network/subnetroutetableassociation.yaml +++ b/examples-generated/network/subnetroutetableassociation.yaml @@ -90,6 +90,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/subnetserviceendpointstoragepolicy.yaml b/examples-generated/network/subnetserviceendpointstoragepolicy.yaml index 236558e24..758ccf06a 100644 --- a/examples-generated/network/subnetserviceendpointstoragepolicy.yaml +++ b/examples-generated/network/subnetserviceendpointstoragepolicy.yaml @@ -51,6 +51,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/trafficmanagerazureendpoint.yaml b/examples-generated/network/trafficmanagerazureendpoint.yaml index f7c20778c..08df73e00 100644 --- a/examples-generated/network/trafficmanagerazureendpoint.yaml +++ b/examples-generated/network/trafficmanagerazureendpoint.yaml @@ -77,6 +77,3 @@ spec: tags: environment: Production trafficRoutingMethod: Weighted - ---- - diff --git a/examples-generated/network/trafficmanagerexternalendpoint.yaml b/examples-generated/network/trafficmanagerexternalendpoint.yaml index e26f1ed12..f0455bb71 100644 --- a/examples-generated/network/trafficmanagerexternalendpoint.yaml +++ b/examples-generated/network/trafficmanagerexternalendpoint.yaml @@ -56,6 +56,3 @@ spec: tags: environment: Production trafficRoutingMethod: Weighted - ---- - diff --git a/examples-generated/network/trafficmanagernestedendpoint.yaml b/examples-generated/network/trafficmanagernestedendpoint.yaml index 5946ca0de..c06c89f2b 100644 --- a/examples-generated/network/trafficmanagernestedendpoint.yaml +++ b/examples-generated/network/trafficmanagernestedendpoint.yaml @@ -103,6 +103,3 @@ spec: tags: environment: Production trafficRoutingMethod: Weighted - ---- - diff --git a/examples-generated/network/trafficmanagerprofile.yaml b/examples-generated/network/trafficmanagerprofile.yaml index 7c3ce36f1..147078031 100644 --- a/examples-generated/network/trafficmanagerprofile.yaml +++ b/examples-generated/network/trafficmanagerprofile.yaml @@ -38,6 +38,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/virtualhub.yaml b/examples-generated/network/virtualhub.yaml index dce4cfdbc..c7cfcf582 100644 --- a/examples-generated/network/virtualhub.yaml +++ b/examples-generated/network/virtualhub.yaml @@ -47,6 +47,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/virtualhubconnection.yaml b/examples-generated/network/virtualhubconnection.yaml index 3b63e488a..868c7f16e 100644 --- a/examples-generated/network/virtualhubconnection.yaml +++ b/examples-generated/network/virtualhubconnection.yaml @@ -85,6 +85,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/virtualhubip.yaml b/examples-generated/network/virtualhubip.yaml index f11b30265..2c87e6c10 100644 --- a/examples-generated/network/virtualhubip.yaml +++ b/examples-generated/network/virtualhubip.yaml @@ -110,6 +110,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/virtualhubroutetable.yaml b/examples-generated/network/virtualhubroutetable.yaml index ac72092af..0c804da52 100644 --- a/examples-generated/network/virtualhubroutetable.yaml +++ b/examples-generated/network/virtualhubroutetable.yaml @@ -169,6 +169,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/virtualhubroutetableroute.yaml b/examples-generated/network/virtualhubroutetableroute.yaml index b86030ea7..80f439dc6 100644 --- a/examples-generated/network/virtualhubroutetableroute.yaml +++ b/examples-generated/network/virtualhubroutetableroute.yaml @@ -187,6 +187,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/virtualhubsecuritypartnerprovider.yaml b/examples-generated/network/virtualhubsecuritypartnerprovider.yaml index 19f03501b..ad044952d 100644 --- a/examples-generated/network/virtualhubsecuritypartnerprovider.yaml +++ b/examples-generated/network/virtualhubsecuritypartnerprovider.yaml @@ -90,6 +90,3 @@ spec: virtualHubIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/virtualnetwork.yaml b/examples-generated/network/virtualnetwork.yaml index debaf620f..4dfc3e09c 100644 --- a/examples-generated/network/virtualnetwork.yaml +++ b/examples-generated/network/virtualnetwork.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/virtualnetworkgateway.yaml b/examples-generated/network/virtualnetworkgateway.yaml index 634521335..24d982697 100644 --- a/examples-generated/network/virtualnetworkgateway.yaml +++ b/examples-generated/network/virtualnetworkgateway.yaml @@ -127,6 +127,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/virtualnetworkgatewayconnection.yaml b/examples-generated/network/virtualnetworkgatewayconnection.yaml index 077a82456..d8e604e29 100644 --- a/examples-generated/network/virtualnetworkgatewayconnection.yaml +++ b/examples-generated/network/virtualnetworkgatewayconnection.yaml @@ -145,6 +145,3 @@ spec: sku: Basic type: Vpn vpnType: RouteBased - ---- - diff --git a/examples-generated/network/virtualnetworkpeering.yaml b/examples-generated/network/virtualnetworkpeering.yaml index 4004238ac..b5e81ead8 100644 --- a/examples-generated/network/virtualnetworkpeering.yaml +++ b/examples-generated/network/virtualnetworkpeering.yaml @@ -69,6 +69,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/virtualwan.yaml b/examples-generated/network/virtualwan.yaml index 87f073f52..6b575ac9b 100644 --- a/examples-generated/network/virtualwan.yaml +++ b/examples-generated/network/virtualwan.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/vpngateway.yaml b/examples-generated/network/vpngateway.yaml index f363466ec..d3f40977c 100644 --- a/examples-generated/network/vpngateway.yaml +++ b/examples-generated/network/vpngateway.yaml @@ -86,6 +86,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/vpngatewayconnection.yaml b/examples-generated/network/vpngatewayconnection.yaml index 163fe5f6c..45b519bc7 100644 --- a/examples-generated/network/vpngatewayconnection.yaml +++ b/examples-generated/network/vpngatewayconnection.yaml @@ -116,6 +116,3 @@ spec: virtualWanIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/vpnserverconfiguration.yaml b/examples-generated/network/vpnserverconfiguration.yaml index 99e091b31..e9779f317 100644 --- a/examples-generated/network/vpnserverconfiguration.yaml +++ b/examples-generated/network/vpnserverconfiguration.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/vpnserverconfigurationpolicygroup.yaml b/examples-generated/network/vpnserverconfigurationpolicygroup.yaml index 0d781e2dd..3590d14d2 100644 --- a/examples-generated/network/vpnserverconfigurationpolicygroup.yaml +++ b/examples-generated/network/vpnserverconfigurationpolicygroup.yaml @@ -56,6 +56,3 @@ spec: testing.upbound.io/example-name: example vpnAuthenticationTypes: - Radius - ---- - diff --git a/examples-generated/network/vpnsite.yaml b/examples-generated/network/vpnsite.yaml index 14d24062e..f7265648b 100644 --- a/examples-generated/network/vpnsite.yaml +++ b/examples-generated/network/vpnsite.yaml @@ -51,6 +51,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/watcher.yaml b/examples-generated/network/watcher.yaml index 229750933..f3156784c 100644 --- a/examples-generated/network/watcher.yaml +++ b/examples-generated/network/watcher.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/network/watcherflowlog.yaml b/examples-generated/network/watcherflowlog.yaml index 9952333e9..322784117 100644 --- a/examples-generated/network/watcherflowlog.yaml +++ b/examples-generated/network/watcherflowlog.yaml @@ -121,6 +121,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/network/webapplicationfirewallpolicy.yaml b/examples-generated/network/webapplicationfirewallpolicy.yaml index 0f2486d4e..ac4defa84 100644 --- a/examples-generated/network/webapplicationfirewallpolicy.yaml +++ b/examples-generated/network/webapplicationfirewallpolicy.yaml @@ -83,6 +83,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/notificationhubs/authorizationrule.yaml b/examples-generated/notificationhubs/authorizationrule.yaml index 615e801b7..e4c65562c 100644 --- a/examples-generated/notificationhubs/authorizationrule.yaml +++ b/examples-generated/notificationhubs/authorizationrule.yaml @@ -73,6 +73,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/notificationhubs/notificationhub.yaml b/examples-generated/notificationhubs/notificationhub.yaml index bb3c6e0dd..c4efb3c6c 100644 --- a/examples-generated/notificationhubs/notificationhub.yaml +++ b/examples-generated/notificationhubs/notificationhub.yaml @@ -48,6 +48,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/notificationhubs/notificationhubnamespace.yaml b/examples-generated/notificationhubs/notificationhubnamespace.yaml index fc4ad291f..1a692be94 100644 --- a/examples-generated/notificationhubs/notificationhubnamespace.yaml +++ b/examples-generated/notificationhubs/notificationhubnamespace.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/operationalinsights/loganalyticsdataexportrule.yaml b/examples-generated/operationalinsights/loganalyticsdataexportrule.yaml index 0d20696a0..b647c3954 100644 --- a/examples-generated/operationalinsights/loganalyticsdataexportrule.yaml +++ b/examples-generated/operationalinsights/loganalyticsdataexportrule.yaml @@ -72,6 +72,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/operationalinsights/loganalyticsdatasourcewindowsevent.yaml b/examples-generated/operationalinsights/loganalyticsdatasourcewindowsevent.yaml index 5ad6cd31c..5b1990036 100644 --- a/examples-generated/operationalinsights/loganalyticsdatasourcewindowsevent.yaml +++ b/examples-generated/operationalinsights/loganalyticsdatasourcewindowsevent.yaml @@ -49,6 +49,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/operationalinsights/loganalyticsdatasourcewindowsperformancecounter.yaml b/examples-generated/operationalinsights/loganalyticsdatasourcewindowsperformancecounter.yaml index c4a9adb67..0d7607368 100644 --- a/examples-generated/operationalinsights/loganalyticsdatasourcewindowsperformancecounter.yaml +++ b/examples-generated/operationalinsights/loganalyticsdatasourcewindowsperformancecounter.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/operationalinsights/loganalyticslinkedservice.yaml b/examples-generated/operationalinsights/loganalyticslinkedservice.yaml index be0aaa33c..f5c7a1544 100644 --- a/examples-generated/operationalinsights/loganalyticslinkedservice.yaml +++ b/examples-generated/operationalinsights/loganalyticslinkedservice.yaml @@ -70,6 +70,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/operationalinsights/loganalyticslinkedstorageaccount.yaml b/examples-generated/operationalinsights/loganalyticslinkedstorageaccount.yaml index 51965a6e9..c48365d7f 100644 --- a/examples-generated/operationalinsights/loganalyticslinkedstorageaccount.yaml +++ b/examples-generated/operationalinsights/loganalyticslinkedstorageaccount.yaml @@ -68,6 +68,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/operationalinsights/loganalyticsquerypack.yaml b/examples-generated/operationalinsights/loganalyticsquerypack.yaml index 9507f0ffb..3c86ac7cb 100644 --- a/examples-generated/operationalinsights/loganalyticsquerypack.yaml +++ b/examples-generated/operationalinsights/loganalyticsquerypack.yaml @@ -26,6 +26,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/operationalinsights/loganalyticsquerypackquery.yaml b/examples-generated/operationalinsights/loganalyticsquerypackquery.yaml index ab1d51b76..f805a86a3 100644 --- a/examples-generated/operationalinsights/loganalyticsquerypackquery.yaml +++ b/examples-generated/operationalinsights/loganalyticsquerypackquery.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/operationalinsights/loganalyticssavedsearch.yaml b/examples-generated/operationalinsights/loganalyticssavedsearch.yaml index 55d976fb4..f72a7bdd9 100644 --- a/examples-generated/operationalinsights/loganalyticssavedsearch.yaml +++ b/examples-generated/operationalinsights/loganalyticssavedsearch.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/operationalinsights/workspace.yaml b/examples-generated/operationalinsights/workspace.yaml index 4b567848f..622ea57b1 100644 --- a/examples-generated/operationalinsights/workspace.yaml +++ b/examples-generated/operationalinsights/workspace.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/operationsmanagement/loganalyticssolution.yaml b/examples-generated/operationsmanagement/loganalyticssolution.yaml index e5e39f66f..4c5925557 100644 --- a/examples-generated/operationsmanagement/loganalyticssolution.yaml +++ b/examples-generated/operationsmanagement/loganalyticssolution.yaml @@ -54,6 +54,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/orbital/contactprofile.yaml b/examples-generated/orbital/contactprofile.yaml index 10c7cb62f..405fa3675 100644 --- a/examples-generated/orbital/contactprofile.yaml +++ b/examples-generated/orbital/contactprofile.yaml @@ -93,6 +93,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: test - ---- - diff --git a/examples-generated/orbital/spacecraft.yaml b/examples-generated/orbital/spacecraft.yaml index 8c6d7754c..df7f9245d 100644 --- a/examples-generated/orbital/spacecraft.yaml +++ b/examples-generated/orbital/spacecraft.yaml @@ -39,6 +39,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/policyinsights/resourcepolicyremediation.yaml b/examples-generated/policyinsights/resourcepolicyremediation.yaml index ce2d05fbe..e689aed31 100644 --- a/examples-generated/policyinsights/resourcepolicyremediation.yaml +++ b/examples-generated/policyinsights/resourcepolicyremediation.yaml @@ -107,6 +107,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/policyinsights/subscriptionpolicyremediation.yaml b/examples-generated/policyinsights/subscriptionpolicyremediation.yaml index 3dfb3650e..d947d5870 100644 --- a/examples-generated/policyinsights/subscriptionpolicyremediation.yaml +++ b/examples-generated/policyinsights/subscriptionpolicyremediation.yaml @@ -35,6 +35,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_policy_definition subscriptionId: ${data.azurerm_subscription.example.id} - ---- - diff --git a/examples-generated/portal/dashboard.yaml b/examples-generated/portal/dashboard.yaml index bb96a8ae7..46fc93536 100644 --- a/examples-generated/portal/dashboard.yaml +++ b/examples-generated/portal/dashboard.yaml @@ -74,6 +74,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/powerbidedicated/powerbiembedded.yaml b/examples-generated/powerbidedicated/powerbiembedded.yaml index 9342a5ae7..83a4b0f0c 100644 --- a/examples-generated/powerbidedicated/powerbiembedded.yaml +++ b/examples-generated/powerbidedicated/powerbiembedded.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/purview/account.yaml b/examples-generated/purview/account.yaml index e613f51d9..9ae93e424 100644 --- a/examples-generated/purview/account.yaml +++ b/examples-generated/purview/account.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/recoveryservices/backupcontainerstorageaccount.yaml b/examples-generated/recoveryservices/backupcontainerstorageaccount.yaml index 2d6ce47f1..aa1e41963 100644 --- a/examples-generated/recoveryservices/backupcontainerstorageaccount.yaml +++ b/examples-generated/recoveryservices/backupcontainerstorageaccount.yaml @@ -68,6 +68,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/recoveryservices/backuppolicyfileshare.yaml b/examples-generated/recoveryservices/backuppolicyfileshare.yaml index 0a5381745..68f6e9f12 100644 --- a/examples-generated/recoveryservices/backuppolicyfileshare.yaml +++ b/examples-generated/recoveryservices/backuppolicyfileshare.yaml @@ -75,6 +75,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/recoveryservices/backuppolicyvm.yaml b/examples-generated/recoveryservices/backuppolicyvm.yaml index e89afc53f..3672dffa6 100644 --- a/examples-generated/recoveryservices/backuppolicyvm.yaml +++ b/examples-generated/recoveryservices/backuppolicyvm.yaml @@ -75,6 +75,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/recoveryservices/backuppolicyvmworkload.yaml b/examples-generated/recoveryservices/backuppolicyvmworkload.yaml index c6f0d10be..7b687b6e8 100644 --- a/examples-generated/recoveryservices/backuppolicyvmworkload.yaml +++ b/examples-generated/recoveryservices/backuppolicyvmworkload.yaml @@ -63,6 +63,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/recoveryservices/backupprotectedfileshare.yaml b/examples-generated/recoveryservices/backupprotectedfileshare.yaml index 75ea11e44..a6318ce0c 100644 --- a/examples-generated/recoveryservices/backupprotectedfileshare.yaml +++ b/examples-generated/recoveryservices/backupprotectedfileshare.yaml @@ -137,6 +137,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/recoveryservices/backupprotectedvm.yaml b/examples-generated/recoveryservices/backupprotectedvm.yaml index 76a67d76d..7c7276801 100644 --- a/examples-generated/recoveryservices/backupprotectedvm.yaml +++ b/examples-generated/recoveryservices/backupprotectedvm.yaml @@ -74,6 +74,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/recoveryservices/siterecoveryfabric.yaml b/examples-generated/recoveryservices/siterecoveryfabric.yaml index 2918bc598..be7cd7b92 100644 --- a/examples-generated/recoveryservices/siterecoveryfabric.yaml +++ b/examples-generated/recoveryservices/siterecoveryfabric.yaml @@ -61,6 +61,3 @@ metadata: spec: forProvider: location: East US - ---- - diff --git a/examples-generated/recoveryservices/siterecoverynetworkmapping.yaml b/examples-generated/recoveryservices/siterecoverynetworkmapping.yaml index ff817a3df..e079eb8fe 100644 --- a/examples-generated/recoveryservices/siterecoverynetworkmapping.yaml +++ b/examples-generated/recoveryservices/siterecoverynetworkmapping.yaml @@ -147,6 +147,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/recoveryservices/siterecoveryprotectioncontainer.yaml b/examples-generated/recoveryservices/siterecoveryprotectioncontainer.yaml index 855d574ea..30702822a 100644 --- a/examples-generated/recoveryservices/siterecoveryprotectioncontainer.yaml +++ b/examples-generated/recoveryservices/siterecoveryprotectioncontainer.yaml @@ -83,6 +83,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/recoveryservices/siterecoveryprotectioncontainermapping.yaml b/examples-generated/recoveryservices/siterecoveryprotectioncontainermapping.yaml index 48781ced1..b5c02f1c1 100644 --- a/examples-generated/recoveryservices/siterecoveryprotectioncontainermapping.yaml +++ b/examples-generated/recoveryservices/siterecoveryprotectioncontainermapping.yaml @@ -177,6 +177,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/recoveryservices/siterecoveryreplicationpolicy.yaml b/examples-generated/recoveryservices/siterecoveryreplicationpolicy.yaml index 33602d4bd..d4e3522fe 100644 --- a/examples-generated/recoveryservices/siterecoveryreplicationpolicy.yaml +++ b/examples-generated/recoveryservices/siterecoveryreplicationpolicy.yaml @@ -48,6 +48,3 @@ metadata: spec: forProvider: location: East US - ---- - diff --git a/examples-generated/recoveryservices/vault.yaml b/examples-generated/recoveryservices/vault.yaml index 1f8e934b9..acdd9be7f 100644 --- a/examples-generated/recoveryservices/vault.yaml +++ b/examples-generated/recoveryservices/vault.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/relay/eventrelaynamespace.yaml b/examples-generated/relay/eventrelaynamespace.yaml index 824bb8ee9..499f42fd3 100644 --- a/examples-generated/relay/eventrelaynamespace.yaml +++ b/examples-generated/relay/eventrelaynamespace.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/relay/hybridconnection.yaml b/examples-generated/relay/hybridconnection.yaml index c58680f42..b540bf4f2 100644 --- a/examples-generated/relay/hybridconnection.yaml +++ b/examples-generated/relay/hybridconnection.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/relay/hybridconnectionauthorizationrule.yaml b/examples-generated/relay/hybridconnectionauthorizationrule.yaml index efc332220..18e595865 100644 --- a/examples-generated/relay/hybridconnectionauthorizationrule.yaml +++ b/examples-generated/relay/hybridconnectionauthorizationrule.yaml @@ -76,6 +76,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/relay/namespaceauthorizationrule.yaml b/examples-generated/relay/namespaceauthorizationrule.yaml index f2a9f1a73..356d44c5b 100644 --- a/examples-generated/relay/namespaceauthorizationrule.yaml +++ b/examples-generated/relay/namespaceauthorizationrule.yaml @@ -51,6 +51,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/resources/resourcedeploymentscriptazurecli.yaml b/examples-generated/resources/resourcedeploymentscriptazurecli.yaml index 24e594df0..44661c741 100644 --- a/examples-generated/resources/resourcedeploymentscriptazurecli.yaml +++ b/examples-generated/resources/resourcedeploymentscriptazurecli.yaml @@ -59,6 +59,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/resources/resourcedeploymentscriptazurepowershell.yaml b/examples-generated/resources/resourcedeploymentscriptazurepowershell.yaml index be1bf63bc..9b90a9e13 100644 --- a/examples-generated/resources/resourcedeploymentscriptazurepowershell.yaml +++ b/examples-generated/resources/resourcedeploymentscriptazurepowershell.yaml @@ -63,6 +63,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/resources/resourcegrouptemplatedeployment.yaml b/examples-generated/resources/resourcegrouptemplatedeployment.yaml index 4a6bebc80..929bb0697 100644 --- a/examples-generated/resources/resourcegrouptemplatedeployment.yaml +++ b/examples-generated/resources/resourcegrouptemplatedeployment.yaml @@ -53,6 +53,3 @@ spec: } } } - ---- - diff --git a/examples-generated/resources/subscriptiontemplatedeployment.yaml b/examples-generated/resources/subscriptiontemplatedeployment.yaml index 39fe7880a..da568e603 100644 --- a/examples-generated/resources/subscriptiontemplatedeployment.yaml +++ b/examples-generated/resources/subscriptiontemplatedeployment.yaml @@ -25,6 +25,3 @@ spec: } ] } - ---- - diff --git a/examples-generated/search/service.yaml b/examples-generated/search/service.yaml index 23065ce0f..56a501540 100644 --- a/examples-generated/search/service.yaml +++ b/examples-generated/search/service.yaml @@ -27,6 +27,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/search/sharedprivatelinkservice.yaml b/examples-generated/search/sharedprivatelinkservice.yaml index 689bad24b..20df3a154 100644 --- a/examples-generated/search/sharedprivatelinkservice.yaml +++ b/examples-generated/search/sharedprivatelinkservice.yaml @@ -67,6 +67,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/security/advancedthreatprotection.yaml b/examples-generated/security/advancedthreatprotection.yaml index 936e6642c..2c7a878e3 100644 --- a/examples-generated/security/advancedthreatprotection.yaml +++ b/examples-generated/security/advancedthreatprotection.yaml @@ -45,6 +45,3 @@ spec: testing.upbound.io/example-name: example tags: environment: example - ---- - diff --git a/examples-generated/security/iotsecuritydevicegroup.yaml b/examples-generated/security/iotsecuritydevicegroup.yaml index c08507639..b501b16ec 100644 --- a/examples-generated/security/iotsecuritydevicegroup.yaml +++ b/examples-generated/security/iotsecuritydevicegroup.yaml @@ -75,6 +75,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/security/iotsecuritysolution.yaml b/examples-generated/security/iotsecuritysolution.yaml index dc195ee1f..2939a8c3c 100644 --- a/examples-generated/security/iotsecuritysolution.yaml +++ b/examples-generated/security/iotsecuritysolution.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/security/securitycenterassessment.yaml b/examples-generated/security/securitycenterassessment.yaml index fde7861b8..633f1e395 100644 --- a/examples-generated/security/securitycenterassessment.yaml +++ b/examples-generated/security/securitycenterassessment.yaml @@ -126,6 +126,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/security/securitycenterassessmentpolicy.yaml b/examples-generated/security/securitycenterassessmentpolicy.yaml index e42cdcdaf..6376d007e 100644 --- a/examples-generated/security/securitycenterassessmentpolicy.yaml +++ b/examples-generated/security/securitycenterassessmentpolicy.yaml @@ -11,6 +11,3 @@ spec: description: Test Description displayName: Test Display Name severity: Medium - ---- - diff --git a/examples-generated/security/securitycenterautoprovisioning.yaml b/examples-generated/security/securitycenterautoprovisioning.yaml index e3d5b5d1c..12280fdee 100644 --- a/examples-generated/security/securitycenterautoprovisioning.yaml +++ b/examples-generated/security/securitycenterautoprovisioning.yaml @@ -9,6 +9,3 @@ metadata: spec: forProvider: autoProvision: "On" - ---- - diff --git a/examples-generated/security/securitycentercontact.yaml b/examples-generated/security/securitycentercontact.yaml index 711792611..f26d8f4de 100644 --- a/examples-generated/security/securitycentercontact.yaml +++ b/examples-generated/security/securitycentercontact.yaml @@ -13,6 +13,3 @@ spec: email: contact@example.com name: contact phone: +1-555-555-5555 - ---- - diff --git a/examples-generated/security/securitycenterservervulnerabilityassessment.yaml b/examples-generated/security/securitycenterservervulnerabilityassessment.yaml index 5db911c8a..4e106c979 100644 --- a/examples-generated/security/securitycenterservervulnerabilityassessment.yaml +++ b/examples-generated/security/securitycenterservervulnerabilityassessment.yaml @@ -122,6 +122,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/security/securitycenterservervulnerabilityassessmentvirtualmachine.yaml b/examples-generated/security/securitycenterservervulnerabilityassessmentvirtualmachine.yaml index 1f66e1bc6..1a2cc7d0f 100644 --- a/examples-generated/security/securitycenterservervulnerabilityassessmentvirtualmachine.yaml +++ b/examples-generated/security/securitycenterservervulnerabilityassessmentvirtualmachine.yaml @@ -122,6 +122,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/security/securitycentersetting.yaml b/examples-generated/security/securitycentersetting.yaml index 1ac828119..ee6b132f4 100644 --- a/examples-generated/security/securitycentersetting.yaml +++ b/examples-generated/security/securitycentersetting.yaml @@ -10,6 +10,3 @@ spec: forProvider: enabled: true settingName: MCAS - ---- - diff --git a/examples-generated/security/securitycentersubscriptionpricing.yaml b/examples-generated/security/securitycentersubscriptionpricing.yaml index df60f01fb..874232ad0 100644 --- a/examples-generated/security/securitycentersubscriptionpricing.yaml +++ b/examples-generated/security/securitycentersubscriptionpricing.yaml @@ -10,6 +10,3 @@ spec: forProvider: resourceType: VirtualMachines tier: Standard - ---- - diff --git a/examples-generated/security/securitycenterworkspace.yaml b/examples-generated/security/securitycenterworkspace.yaml index c21c5d07e..2773aba0b 100644 --- a/examples-generated/security/securitycenterworkspace.yaml +++ b/examples-generated/security/securitycenterworkspace.yaml @@ -44,6 +44,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/securityinsights/sentinelalertrulefusion.yaml b/examples-generated/securityinsights/sentinelalertrulefusion.yaml index 39697c4c2..af7c44e23 100644 --- a/examples-generated/securityinsights/sentinelalertrulefusion.yaml +++ b/examples-generated/securityinsights/sentinelalertrulefusion.yaml @@ -72,6 +72,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/securityinsights/sentinelalertrulemachinelearningbehavioranalytics.yaml b/examples-generated/securityinsights/sentinelalertrulemachinelearningbehavioranalytics.yaml index b66726e08..eec0d3b2e 100644 --- a/examples-generated/securityinsights/sentinelalertrulemachinelearningbehavioranalytics.yaml +++ b/examples-generated/securityinsights/sentinelalertrulemachinelearningbehavioranalytics.yaml @@ -59,6 +59,3 @@ metadata: spec: forProvider: workspaceId: ${azurerm_log_analytics_workspace.example.id} - ---- - diff --git a/examples-generated/securityinsights/sentinelalertrulemssecurityincident.yaml b/examples-generated/securityinsights/sentinelalertrulemssecurityincident.yaml index 6102a1d93..7278810fd 100644 --- a/examples-generated/securityinsights/sentinelalertrulemssecurityincident.yaml +++ b/examples-generated/securityinsights/sentinelalertrulemssecurityincident.yaml @@ -61,6 +61,3 @@ metadata: spec: forProvider: workspaceId: ${azurerm_log_analytics_workspace.example.id} - ---- - diff --git a/examples-generated/securityinsights/sentinelautomationrule.yaml b/examples-generated/securityinsights/sentinelautomationrule.yaml index 5578e68a9..8eb24b958 100644 --- a/examples-generated/securityinsights/sentinelautomationrule.yaml +++ b/examples-generated/securityinsights/sentinelautomationrule.yaml @@ -63,6 +63,3 @@ metadata: spec: forProvider: workspaceId: ${azurerm_log_analytics_workspace.example.id} - ---- - diff --git a/examples-generated/securityinsights/sentineldataconnectoriot.yaml b/examples-generated/securityinsights/sentineldataconnectoriot.yaml index 36b02688e..2982ec01f 100644 --- a/examples-generated/securityinsights/sentineldataconnectoriot.yaml +++ b/examples-generated/securityinsights/sentineldataconnectoriot.yaml @@ -57,6 +57,3 @@ metadata: spec: forProvider: workspaceId: ${azurerm_log_analytics_workspace.example.id} - ---- - diff --git a/examples-generated/securityinsights/sentinelloganalyticsworkspaceonboarding.yaml b/examples-generated/securityinsights/sentinelloganalyticsworkspaceonboarding.yaml index ffcdd8aa5..8c270474a 100644 --- a/examples-generated/securityinsights/sentinelloganalyticsworkspaceonboarding.yaml +++ b/examples-generated/securityinsights/sentinelloganalyticsworkspaceonboarding.yaml @@ -47,6 +47,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/securityinsights/sentinelwatchlist.yaml b/examples-generated/securityinsights/sentinelwatchlist.yaml index 720218982..3be93546a 100644 --- a/examples-generated/securityinsights/sentinelwatchlist.yaml +++ b/examples-generated/securityinsights/sentinelwatchlist.yaml @@ -59,6 +59,3 @@ metadata: spec: forProvider: workspaceId: ${azurerm_log_analytics_workspace.example.id} - ---- - diff --git a/examples-generated/servicebus/namespaceauthorizationrule.yaml b/examples-generated/servicebus/namespaceauthorizationrule.yaml index 0ba60dae0..71710bd01 100644 --- a/examples-generated/servicebus/namespaceauthorizationrule.yaml +++ b/examples-generated/servicebus/namespaceauthorizationrule.yaml @@ -48,6 +48,3 @@ spec: sku: Standard tags: source: terraform - ---- - diff --git a/examples-generated/servicebus/namespacedisasterrecoveryconfig.yaml b/examples-generated/servicebus/namespacedisasterrecoveryconfig.yaml index 29dbbdbf4..165920d84 100644 --- a/examples-generated/servicebus/namespacedisasterrecoveryconfig.yaml +++ b/examples-generated/servicebus/namespacedisasterrecoveryconfig.yaml @@ -88,6 +88,3 @@ spec: matchLabels: testing.upbound.io/example-name: example send: true - ---- - diff --git a/examples-generated/servicebus/namespacenetworkruleset.yaml b/examples-generated/servicebus/namespacenetworkruleset.yaml index 448c78bdc..ce2684f84 100644 --- a/examples-generated/servicebus/namespacenetworkruleset.yaml +++ b/examples-generated/servicebus/namespacenetworkruleset.yaml @@ -98,6 +98,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/servicebus/queue.yaml b/examples-generated/servicebus/queue.yaml index 9b3be6129..db2d3fe73 100644 --- a/examples-generated/servicebus/queue.yaml +++ b/examples-generated/servicebus/queue.yaml @@ -46,6 +46,3 @@ spec: sku: Standard tags: source: terraform - ---- - diff --git a/examples-generated/servicebus/queueauthorizationrule.yaml b/examples-generated/servicebus/queueauthorizationrule.yaml index 5f6a13c0a..95b7228ec 100644 --- a/examples-generated/servicebus/queueauthorizationrule.yaml +++ b/examples-generated/servicebus/queueauthorizationrule.yaml @@ -65,6 +65,3 @@ spec: namespaceIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/servicebus/servicebusnamespace.yaml b/examples-generated/servicebus/servicebusnamespace.yaml index 9dcca0329..a14e428ff 100644 --- a/examples-generated/servicebus/servicebusnamespace.yaml +++ b/examples-generated/servicebus/servicebusnamespace.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/servicebus/subscription.yaml b/examples-generated/servicebus/subscription.yaml index 70ab215d5..4726e9b16 100644 --- a/examples-generated/servicebus/subscription.yaml +++ b/examples-generated/servicebus/subscription.yaml @@ -63,6 +63,3 @@ spec: namespaceIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/servicebus/subscriptionrule.yaml b/examples-generated/servicebus/subscriptionrule.yaml index 89dd5bb15..815dcb385 100644 --- a/examples-generated/servicebus/subscriptionrule.yaml +++ b/examples-generated/servicebus/subscriptionrule.yaml @@ -81,6 +81,3 @@ spec: namespaceIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/servicebus/topic.yaml b/examples-generated/servicebus/topic.yaml index 8b7737d0e..8e62ae8ba 100644 --- a/examples-generated/servicebus/topic.yaml +++ b/examples-generated/servicebus/topic.yaml @@ -46,6 +46,3 @@ spec: sku: Standard tags: source: terraform - ---- - diff --git a/examples-generated/servicebus/topicauthorizationrule.yaml b/examples-generated/servicebus/topicauthorizationrule.yaml index a8bebe6df..74e6e1def 100644 --- a/examples-generated/servicebus/topicauthorizationrule.yaml +++ b/examples-generated/servicebus/topicauthorizationrule.yaml @@ -64,6 +64,3 @@ spec: namespaceIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/servicefabric/cluster.yaml b/examples-generated/servicefabric/cluster.yaml index 5509e08e1..c055492f3 100644 --- a/examples-generated/servicefabric/cluster.yaml +++ b/examples-generated/servicefabric/cluster.yaml @@ -37,6 +37,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/servicefabric/managedcluster.yaml b/examples-generated/servicefabric/managedcluster.yaml index 43955ab3d..a9357b7cf 100644 --- a/examples-generated/servicefabric/managedcluster.yaml +++ b/examples-generated/servicefabric/managedcluster.yaml @@ -32,6 +32,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/servicelinker/springcloudconnection.yaml b/examples-generated/servicelinker/springcloudconnection.yaml index 23a2db132..44f5af9c9 100644 --- a/examples-generated/servicelinker/springcloudconnection.yaml +++ b/examples-generated/servicelinker/springcloudconnection.yaml @@ -154,6 +154,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/signalrservice/networkacl.yaml b/examples-generated/signalrservice/networkacl.yaml index 5058d525e..056230a3f 100644 --- a/examples-generated/signalrservice/networkacl.yaml +++ b/examples-generated/signalrservice/networkacl.yaml @@ -122,6 +122,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/signalrservice/service.yaml b/examples-generated/signalrservice/service.yaml index 058524fa8..46834b746 100644 --- a/examples-generated/signalrservice/service.yaml +++ b/examples-generated/signalrservice/service.yaml @@ -45,6 +45,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/signalrservice/signalrsharedprivatelinkresource.yaml b/examples-generated/signalrservice/signalrsharedprivatelinkresource.yaml index 982b0bffa..ff0b54b3b 100644 --- a/examples-generated/signalrservice/signalrsharedprivatelinkresource.yaml +++ b/examples-generated/signalrservice/signalrsharedprivatelinkresource.yaml @@ -70,6 +70,3 @@ spec: sku: - capacity: 1 name: Standard_S1 - ---- - diff --git a/examples-generated/signalrservice/webpubsub.yaml b/examples-generated/signalrservice/webpubsub.yaml index 2b6847592..0a9b52cc7 100644 --- a/examples-generated/signalrservice/webpubsub.yaml +++ b/examples-generated/signalrservice/webpubsub.yaml @@ -36,6 +36,3 @@ metadata: spec: forProvider: location: east us - ---- - diff --git a/examples-generated/signalrservice/webpubsubhub.yaml b/examples-generated/signalrservice/webpubsubhub.yaml index a297907fa..65359194b 100644 --- a/examples-generated/signalrservice/webpubsubhub.yaml +++ b/examples-generated/signalrservice/webpubsubhub.yaml @@ -111,6 +111,3 @@ spec: matchLabels: testing.upbound.io/example-name: example sku: Standard_S1 - ---- - diff --git a/examples-generated/signalrservice/webpubsubnetworkacl.yaml b/examples-generated/signalrservice/webpubsubnetworkacl.yaml index 6c9e1cd09..f0ffcb6b0 100644 --- a/examples-generated/signalrservice/webpubsubnetworkacl.yaml +++ b/examples-generated/signalrservice/webpubsubnetworkacl.yaml @@ -123,6 +123,3 @@ spec: matchLabels: testing.upbound.io/example-name: example sku: Standard_S1 - ---- - diff --git a/examples-generated/solutions/managedapplicationdefinition.yaml b/examples-generated/solutions/managedapplicationdefinition.yaml index 51107d94d..be76a716c 100644 --- a/examples-generated/solutions/managedapplicationdefinition.yaml +++ b/examples-generated/solutions/managedapplicationdefinition.yaml @@ -34,6 +34,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/spring/cloudapplicationliveview.yaml b/examples-generated/spring/cloudapplicationliveview.yaml index bec99458e..dd5e5347a 100644 --- a/examples-generated/spring/cloudapplicationliveview.yaml +++ b/examples-generated/spring/cloudapplicationliveview.yaml @@ -43,6 +43,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: E0 - ---- - diff --git a/examples-generated/sql/mssqldatabase.yaml b/examples-generated/sql/mssqldatabase.yaml index c346e0553..29a1f8de3 100644 --- a/examples-generated/sql/mssqldatabase.yaml +++ b/examples-generated/sql/mssqldatabase.yaml @@ -75,6 +75,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqldatabaseextendedauditingpolicy.yaml b/examples-generated/sql/mssqldatabaseextendedauditingpolicy.yaml index d382b990b..d956c18ae 100644 --- a/examples-generated/sql/mssqldatabaseextendedauditingpolicy.yaml +++ b/examples-generated/sql/mssqldatabaseextendedauditingpolicy.yaml @@ -92,6 +92,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqldatabasevulnerabilityassessmentrulebaseline.yaml b/examples-generated/sql/mssqldatabasevulnerabilityassessmentrulebaseline.yaml index 5fa32ecf3..2efe9c5a3 100644 --- a/examples-generated/sql/mssqldatabasevulnerabilityassessmentrulebaseline.yaml +++ b/examples-generated/sql/mssqldatabasevulnerabilityassessmentrulebaseline.yaml @@ -116,6 +116,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqlelasticpool.yaml b/examples-generated/sql/mssqlelasticpool.yaml index 108fc044d..42c09cfdb 100644 --- a/examples-generated/sql/mssqlelasticpool.yaml +++ b/examples-generated/sql/mssqlelasticpool.yaml @@ -39,6 +39,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/sql/mssqlfailovergroup.yaml b/examples-generated/sql/mssqlfailovergroup.yaml index d1d77096b..1c546d1c8 100644 --- a/examples-generated/sql/mssqlfailovergroup.yaml +++ b/examples-generated/sql/mssqlfailovergroup.yaml @@ -102,6 +102,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/sql/mssqlfirewallrule.yaml b/examples-generated/sql/mssqlfirewallrule.yaml index 0604cf843..d08a80b29 100644 --- a/examples-generated/sql/mssqlfirewallrule.yaml +++ b/examples-generated/sql/mssqlfirewallrule.yaml @@ -50,6 +50,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/sql/mssqljobagent.yaml b/examples-generated/sql/mssqljobagent.yaml index 05510f390..34e5b67ac 100644 --- a/examples-generated/sql/mssqljobagent.yaml +++ b/examples-generated/sql/mssqljobagent.yaml @@ -68,6 +68,3 @@ metadata: spec: forProvider: location: northeurope - ---- - diff --git a/examples-generated/sql/mssqljobcredential.yaml b/examples-generated/sql/mssqljobcredential.yaml index b6d2f0035..78aca0e53 100644 --- a/examples-generated/sql/mssqljobcredential.yaml +++ b/examples-generated/sql/mssqljobcredential.yaml @@ -89,6 +89,3 @@ metadata: spec: forProvider: location: northeurope - ---- - diff --git a/examples-generated/sql/mssqlmanageddatabase.yaml b/examples-generated/sql/mssqlmanageddatabase.yaml index f6c649fc4..045963a30 100644 --- a/examples-generated/sql/mssqlmanageddatabase.yaml +++ b/examples-generated/sql/mssqlmanageddatabase.yaml @@ -94,6 +94,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqlmanagedinstance.yaml b/examples-generated/sql/mssqlmanagedinstance.yaml index 097013d2a..4116e87b6 100644 --- a/examples-generated/sql/mssqlmanagedinstance.yaml +++ b/examples-generated/sql/mssqlmanagedinstance.yaml @@ -383,6 +383,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqlmanagedinstanceactivedirectoryadministrator.yaml b/examples-generated/sql/mssqlmanagedinstanceactivedirectoryadministrator.yaml index 737b0efdb..dbdcfeed4 100644 --- a/examples-generated/sql/mssqlmanagedinstanceactivedirectoryadministrator.yaml +++ b/examples-generated/sql/mssqlmanagedinstanceactivedirectoryadministrator.yaml @@ -99,6 +99,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqlmanagedinstancefailovergroup.yaml b/examples-generated/sql/mssqlmanagedinstancefailovergroup.yaml index 44b852c80..28ccce65e 100644 --- a/examples-generated/sql/mssqlmanagedinstancefailovergroup.yaml +++ b/examples-generated/sql/mssqlmanagedinstancefailovergroup.yaml @@ -206,6 +206,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqlmanagedinstancevulnerabilityassessment.yaml b/examples-generated/sql/mssqlmanagedinstancevulnerabilityassessment.yaml index 56f0c2f42..2235e1181 100644 --- a/examples-generated/sql/mssqlmanagedinstancevulnerabilityassessment.yaml +++ b/examples-generated/sql/mssqlmanagedinstancevulnerabilityassessment.yaml @@ -141,6 +141,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqloutboundfirewallrule.yaml b/examples-generated/sql/mssqloutboundfirewallrule.yaml index e9bb35186..e4b4ca081 100644 --- a/examples-generated/sql/mssqloutboundfirewallrule.yaml +++ b/examples-generated/sql/mssqloutboundfirewallrule.yaml @@ -49,6 +49,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/sql/mssqlserver.yaml b/examples-generated/sql/mssqlserver.yaml index 133ecc40e..89ac34ae0 100644 --- a/examples-generated/sql/mssqlserver.yaml +++ b/examples-generated/sql/mssqlserver.yaml @@ -42,6 +42,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/sql/mssqlserverdnsalias.yaml b/examples-generated/sql/mssqlserverdnsalias.yaml index e3f227ac0..8ccd3e02d 100644 --- a/examples-generated/sql/mssqlserverdnsalias.yaml +++ b/examples-generated/sql/mssqlserverdnsalias.yaml @@ -48,6 +48,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/sql/mssqlservermicrosoftsupportauditingpolicy.yaml b/examples-generated/sql/mssqlservermicrosoftsupportauditingpolicy.yaml index d23abaad3..e972653d5 100644 --- a/examples-generated/sql/mssqlservermicrosoftsupportauditingpolicy.yaml +++ b/examples-generated/sql/mssqlservermicrosoftsupportauditingpolicy.yaml @@ -74,6 +74,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqlserversecurityalertpolicy.yaml b/examples-generated/sql/mssqlserversecurityalertpolicy.yaml index 06d93b201..fa7303a3d 100644 --- a/examples-generated/sql/mssqlserversecurityalertpolicy.yaml +++ b/examples-generated/sql/mssqlserversecurityalertpolicy.yaml @@ -59,6 +59,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqlservertransparentdataencryption.yaml b/examples-generated/sql/mssqlservertransparentdataencryption.yaml index dfcd0ef7f..08d048ce2 100644 --- a/examples-generated/sql/mssqlservertransparentdataencryption.yaml +++ b/examples-generated/sql/mssqlservertransparentdataencryption.yaml @@ -58,6 +58,3 @@ metadata: spec: forProvider: location: EastUs - ---- - diff --git a/examples-generated/sql/mssqlservervulnerabilityassessment.yaml b/examples-generated/sql/mssqlservervulnerabilityassessment.yaml index 82970b23b..2db1a32ef 100644 --- a/examples-generated/sql/mssqlservervulnerabilityassessment.yaml +++ b/examples-generated/sql/mssqlservervulnerabilityassessment.yaml @@ -92,6 +92,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/sql/mssqlvirtualnetworkrule.yaml b/examples-generated/sql/mssqlvirtualnetworkrule.yaml index 4c8eaf6d0..6144a9ad9 100644 --- a/examples-generated/sql/mssqlvirtualnetworkrule.yaml +++ b/examples-generated/sql/mssqlvirtualnetworkrule.yaml @@ -93,6 +93,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/account.yaml b/examples-generated/storage/account.yaml index 16c23f957..12599edd8 100644 --- a/examples-generated/storage/account.yaml +++ b/examples-generated/storage/account.yaml @@ -30,6 +30,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/storage/accountlocaluser.yaml b/examples-generated/storage/accountlocaluser.yaml index 3359ecd9b..b7746872a 100644 --- a/examples-generated/storage/accountlocaluser.yaml +++ b/examples-generated/storage/accountlocaluser.yaml @@ -78,6 +78,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/accountnetworkrules.yaml b/examples-generated/storage/accountnetworkrules.yaml index 35dfea889..d46dceab5 100644 --- a/examples-generated/storage/accountnetworkrules.yaml +++ b/examples-generated/storage/accountnetworkrules.yaml @@ -95,6 +95,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/blob.yaml b/examples-generated/storage/blob.yaml index 8a1ba0506..70ac08084 100644 --- a/examples-generated/storage/blob.yaml +++ b/examples-generated/storage/blob.yaml @@ -66,6 +66,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/blobinventorypolicy.yaml b/examples-generated/storage/blobinventorypolicy.yaml index 8420a05d8..f732b33b5 100644 --- a/examples-generated/storage/blobinventorypolicy.yaml +++ b/examples-generated/storage/blobinventorypolicy.yaml @@ -74,6 +74,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/container.yaml b/examples-generated/storage/container.yaml index d634a8317..78b627e4e 100644 --- a/examples-generated/storage/container.yaml +++ b/examples-generated/storage/container.yaml @@ -47,6 +47,3 @@ spec: testing.upbound.io/example-name: example tags: environment: staging - ---- - diff --git a/examples-generated/storage/datalakegen2filesystem.yaml b/examples-generated/storage/datalakegen2filesystem.yaml index 386ce3372..dfc9e3067 100644 --- a/examples-generated/storage/datalakegen2filesystem.yaml +++ b/examples-generated/storage/datalakegen2filesystem.yaml @@ -48,6 +48,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/datalakegen2path.yaml b/examples-generated/storage/datalakegen2path.yaml index 88ce978f9..9d8056e03 100644 --- a/examples-generated/storage/datalakegen2path.yaml +++ b/examples-generated/storage/datalakegen2path.yaml @@ -67,6 +67,3 @@ spec: storageAccountIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/encryptionscope.yaml b/examples-generated/storage/encryptionscope.yaml index 87559e25c..4cfeba6f1 100644 --- a/examples-generated/storage/encryptionscope.yaml +++ b/examples-generated/storage/encryptionscope.yaml @@ -47,6 +47,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/managementpolicy.yaml b/examples-generated/storage/managementpolicy.yaml index 9f6f1d799..50e166fc6 100644 --- a/examples-generated/storage/managementpolicy.yaml +++ b/examples-generated/storage/managementpolicy.yaml @@ -85,6 +85,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/objectreplication.yaml b/examples-generated/storage/objectreplication.yaml index a7445464d..763379594 100644 --- a/examples-generated/storage/objectreplication.yaml +++ b/examples-generated/storage/objectreplication.yaml @@ -127,6 +127,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/queue.yaml b/examples-generated/storage/queue.yaml index d2920b6db..4b0453502 100644 --- a/examples-generated/storage/queue.yaml +++ b/examples-generated/storage/queue.yaml @@ -44,6 +44,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/share.yaml b/examples-generated/storage/share.yaml index 13ceb9456..e6d0be684 100644 --- a/examples-generated/storage/share.yaml +++ b/examples-generated/storage/share.yaml @@ -51,6 +51,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/sharedirectory.yaml b/examples-generated/storage/sharedirectory.yaml index f89ad672e..59e345896 100644 --- a/examples-generated/storage/sharedirectory.yaml +++ b/examples-generated/storage/sharedirectory.yaml @@ -65,6 +65,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/table.yaml b/examples-generated/storage/table.yaml index 3d88ef94c..879da753d 100644 --- a/examples-generated/storage/table.yaml +++ b/examples-generated/storage/table.yaml @@ -45,6 +45,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storage/tableentity.yaml b/examples-generated/storage/tableentity.yaml index ce445ef10..c2c2f18ac 100644 --- a/examples-generated/storage/tableentity.yaml +++ b/examples-generated/storage/tableentity.yaml @@ -68,6 +68,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storagecache/hpccache.yaml b/examples-generated/storagecache/hpccache.yaml index 0afe56ccf..e786a6f04 100644 --- a/examples-generated/storagecache/hpccache.yaml +++ b/examples-generated/storagecache/hpccache.yaml @@ -71,6 +71,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storagecache/hpccacheaccesspolicy.yaml b/examples-generated/storagecache/hpccacheaccesspolicy.yaml index 79cd2badf..61d8655cd 100644 --- a/examples-generated/storagecache/hpccacheaccesspolicy.yaml +++ b/examples-generated/storagecache/hpccacheaccesspolicy.yaml @@ -90,6 +90,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storagecache/hpccacheblobnfstarget.yaml b/examples-generated/storagecache/hpccacheblobnfstarget.yaml index 848b863cc..70d66c7a0 100644 --- a/examples-generated/storagecache/hpccacheblobnfstarget.yaml +++ b/examples-generated/storagecache/hpccacheblobnfstarget.yaml @@ -232,6 +232,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storagecache/hpccacheblobtarget.yaml b/examples-generated/storagecache/hpccacheblobtarget.yaml index 48311f7a5..91e738ca2 100644 --- a/examples-generated/storagecache/hpccacheblobtarget.yaml +++ b/examples-generated/storagecache/hpccacheblobtarget.yaml @@ -161,6 +161,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storagecache/hpccachenfstarget.yaml b/examples-generated/storagecache/hpccachenfstarget.yaml index 9bef8b337..0fd9059dc 100644 --- a/examples-generated/storagecache/hpccachenfstarget.yaml +++ b/examples-generated/storagecache/hpccachenfstarget.yaml @@ -178,6 +178,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storagepool/diskpool.yaml b/examples-generated/storagepool/diskpool.yaml index 188ec80cd..f8a2f4676 100644 --- a/examples-generated/storagepool/diskpool.yaml +++ b/examples-generated/storagepool/diskpool.yaml @@ -78,6 +78,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/storagesync/storagesync.yaml b/examples-generated/storagesync/storagesync.yaml index a350f5d7a..938e51d14 100644 --- a/examples-generated/storagesync/storagesync.yaml +++ b/examples-generated/storagesync/storagesync.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/streamanalytics/cluster.yaml b/examples-generated/streamanalytics/cluster.yaml index 6d81c4da4..0b986c154 100644 --- a/examples-generated/streamanalytics/cluster.yaml +++ b/examples-generated/streamanalytics/cluster.yaml @@ -27,6 +27,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/streamanalytics/functionjavascriptuda.yaml b/examples-generated/streamanalytics/functionjavascriptuda.yaml index a9ff64529..c4fb1ede9 100644 --- a/examples-generated/streamanalytics/functionjavascriptuda.yaml +++ b/examples-generated/streamanalytics/functionjavascriptuda.yaml @@ -29,6 +29,3 @@ spec: streamAnalyticsJobIdSelector: matchLabels: testing.upbound.io/example-name: azurerm_stream_analytics_job - ---- - diff --git a/examples-generated/streamanalytics/job.yaml b/examples-generated/streamanalytics/job.yaml index 30f7d5a65..daf527620 100644 --- a/examples-generated/streamanalytics/job.yaml +++ b/examples-generated/streamanalytics/job.yaml @@ -39,6 +39,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/streamanalytics/managedprivateendpoint.yaml b/examples-generated/streamanalytics/managedprivateendpoint.yaml index ea51da206..de439e5b6 100644 --- a/examples-generated/streamanalytics/managedprivateendpoint.yaml +++ b/examples-generated/streamanalytics/managedprivateendpoint.yaml @@ -71,6 +71,3 @@ spec: matchLabels: testing.upbound.io/example-name: example streamingCapacity: 36 - ---- - diff --git a/examples-generated/streamanalytics/outputblob.yaml b/examples-generated/streamanalytics/outputblob.yaml index a64dc5493..86d3816f3 100644 --- a/examples-generated/streamanalytics/outputblob.yaml +++ b/examples-generated/streamanalytics/outputblob.yaml @@ -81,6 +81,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/streamanalytics/outputeventhub.yaml b/examples-generated/streamanalytics/outputeventhub.yaml index 268c07ea5..5cd968445 100644 --- a/examples-generated/streamanalytics/outputeventhub.yaml +++ b/examples-generated/streamanalytics/outputeventhub.yaml @@ -79,6 +79,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/streamanalytics/outputfunction.yaml b/examples-generated/streamanalytics/outputfunction.yaml index 71d470791..ab84c8df6 100644 --- a/examples-generated/streamanalytics/outputfunction.yaml +++ b/examples-generated/streamanalytics/outputfunction.yaml @@ -129,6 +129,3 @@ spec: SELECT * INTO [YourOutputAlias] FROM [YourInputAlias] - ---- - diff --git a/examples-generated/streamanalytics/outputmssql.yaml b/examples-generated/streamanalytics/outputmssql.yaml index e07a1628b..c6028cc0b 100644 --- a/examples-generated/streamanalytics/outputmssql.yaml +++ b/examples-generated/streamanalytics/outputmssql.yaml @@ -41,6 +41,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/streamanalytics/outputpowerbi.yaml b/examples-generated/streamanalytics/outputpowerbi.yaml index f7d9c0396..2331ee127 100644 --- a/examples-generated/streamanalytics/outputpowerbi.yaml +++ b/examples-generated/streamanalytics/outputpowerbi.yaml @@ -15,6 +15,3 @@ spec: matchLabels: testing.upbound.io/example-name: azurerm_stream_analytics_job table: example-table - ---- - diff --git a/examples-generated/streamanalytics/outputservicebusqueue.yaml b/examples-generated/streamanalytics/outputservicebusqueue.yaml index 422a4b2d9..4879a1389 100644 --- a/examples-generated/streamanalytics/outputservicebusqueue.yaml +++ b/examples-generated/streamanalytics/outputservicebusqueue.yaml @@ -78,6 +78,3 @@ spec: namespaceIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/streamanalytics/outputservicebustopic.yaml b/examples-generated/streamanalytics/outputservicebustopic.yaml index 382c158a2..28c6065e0 100644 --- a/examples-generated/streamanalytics/outputservicebustopic.yaml +++ b/examples-generated/streamanalytics/outputservicebustopic.yaml @@ -81,6 +81,3 @@ spec: namespaceIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/streamanalytics/outputsynapse.yaml b/examples-generated/streamanalytics/outputsynapse.yaml index ebcf38934..55409e1bd 100644 --- a/examples-generated/streamanalytics/outputsynapse.yaml +++ b/examples-generated/streamanalytics/outputsynapse.yaml @@ -102,6 +102,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/streamanalytics/outputtable.yaml b/examples-generated/streamanalytics/outputtable.yaml index 3e7196fbd..bba4104f3 100644 --- a/examples-generated/streamanalytics/outputtable.yaml +++ b/examples-generated/streamanalytics/outputtable.yaml @@ -75,6 +75,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/streamanalytics/referenceinputblob.yaml b/examples-generated/streamanalytics/referenceinputblob.yaml index 75e0fe3a6..5d6e60265 100644 --- a/examples-generated/streamanalytics/referenceinputblob.yaml +++ b/examples-generated/streamanalytics/referenceinputblob.yaml @@ -81,6 +81,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/streamanalytics/referenceinputmssql.yaml b/examples-generated/streamanalytics/referenceinputmssql.yaml index f744f650d..84765ec15 100644 --- a/examples-generated/streamanalytics/referenceinputmssql.yaml +++ b/examples-generated/streamanalytics/referenceinputmssql.yaml @@ -82,6 +82,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/streamanalytics/streaminputblob.yaml b/examples-generated/streamanalytics/streaminputblob.yaml index 999a412a1..c0e3e0e6a 100644 --- a/examples-generated/streamanalytics/streaminputblob.yaml +++ b/examples-generated/streamanalytics/streaminputblob.yaml @@ -81,6 +81,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/streamanalytics/streaminputeventhub.yaml b/examples-generated/streamanalytics/streaminputeventhub.yaml index 11c574c7b..a485043e5 100644 --- a/examples-generated/streamanalytics/streaminputeventhub.yaml +++ b/examples-generated/streamanalytics/streaminputeventhub.yaml @@ -108,6 +108,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/streamanalytics/streaminputiothub.yaml b/examples-generated/streamanalytics/streaminputiothub.yaml index 38c5e4024..7a630e100 100644 --- a/examples-generated/streamanalytics/streaminputiothub.yaml +++ b/examples-generated/streamanalytics/streaminputiothub.yaml @@ -64,6 +64,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/synapse/firewallrule.yaml b/examples-generated/synapse/firewallrule.yaml index a2b2165eb..05e5c2916 100644 --- a/examples-generated/synapse/firewallrule.yaml +++ b/examples-generated/synapse/firewallrule.yaml @@ -91,6 +91,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/integrationruntimeazure.yaml b/examples-generated/synapse/integrationruntimeazure.yaml index e3bda1108..18711dcb4 100644 --- a/examples-generated/synapse/integrationruntimeazure.yaml +++ b/examples-generated/synapse/integrationruntimeazure.yaml @@ -124,6 +124,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/integrationruntimeselfhosted.yaml b/examples-generated/synapse/integrationruntimeselfhosted.yaml index da6dc393b..3531b5c15 100644 --- a/examples-generated/synapse/integrationruntimeselfhosted.yaml +++ b/examples-generated/synapse/integrationruntimeselfhosted.yaml @@ -123,6 +123,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/linkedservice.yaml b/examples-generated/synapse/linkedservice.yaml index fed8a67b1..3c191811e 100644 --- a/examples-generated/synapse/linkedservice.yaml +++ b/examples-generated/synapse/linkedservice.yaml @@ -133,6 +133,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/managedprivateendpoint.yaml b/examples-generated/synapse/managedprivateendpoint.yaml index 25361d861..3d9af4624 100644 --- a/examples-generated/synapse/managedprivateendpoint.yaml +++ b/examples-generated/synapse/managedprivateendpoint.yaml @@ -133,6 +133,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/privatelinkhub.yaml b/examples-generated/synapse/privatelinkhub.yaml index cb25098f2..3820f97a7 100644 --- a/examples-generated/synapse/privatelinkhub.yaml +++ b/examples-generated/synapse/privatelinkhub.yaml @@ -12,6 +12,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/roleassignment.yaml b/examples-generated/synapse/roleassignment.yaml index 338a1cfbc..8ea240ecd 100644 --- a/examples-generated/synapse/roleassignment.yaml +++ b/examples-generated/synapse/roleassignment.yaml @@ -109,6 +109,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/sparkpool.yaml b/examples-generated/synapse/sparkpool.yaml index f838d22a5..e17d8405e 100644 --- a/examples-generated/synapse/sparkpool.yaml +++ b/examples-generated/synapse/sparkpool.yaml @@ -108,6 +108,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/sqlpool.yaml b/examples-generated/synapse/sqlpool.yaml index ed6bd95e4..63945988a 100644 --- a/examples-generated/synapse/sqlpool.yaml +++ b/examples-generated/synapse/sqlpool.yaml @@ -90,6 +90,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/sqlpoolextendedauditingpolicy.yaml b/examples-generated/synapse/sqlpoolextendedauditingpolicy.yaml index c73c2b1c3..e2b039984 100644 --- a/examples-generated/synapse/sqlpoolextendedauditingpolicy.yaml +++ b/examples-generated/synapse/sqlpoolextendedauditingpolicy.yaml @@ -134,6 +134,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/sqlpoolsecurityalertpolicy.yaml b/examples-generated/synapse/sqlpoolsecurityalertpolicy.yaml index 1c460d526..5603c0e83 100644 --- a/examples-generated/synapse/sqlpoolsecurityalertpolicy.yaml +++ b/examples-generated/synapse/sqlpoolsecurityalertpolicy.yaml @@ -144,6 +144,3 @@ spec: testing.upbound.io/example-name: example tags: Env: production - ---- - diff --git a/examples-generated/synapse/sqlpoolworkloadclassifier.yaml b/examples-generated/synapse/sqlpoolworkloadclassifier.yaml index 2a05e47e1..0376a831c 100644 --- a/examples-generated/synapse/sqlpoolworkloadclassifier.yaml +++ b/examples-generated/synapse/sqlpoolworkloadclassifier.yaml @@ -134,6 +134,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/sqlpoolworkloadgroup.yaml b/examples-generated/synapse/sqlpoolworkloadgroup.yaml index c17e731fa..f0cfce57b 100644 --- a/examples-generated/synapse/sqlpoolworkloadgroup.yaml +++ b/examples-generated/synapse/sqlpoolworkloadgroup.yaml @@ -112,6 +112,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/workspace.yaml b/examples-generated/synapse/workspace.yaml index 655cc8eb7..8df472411 100644 --- a/examples-generated/synapse/workspace.yaml +++ b/examples-generated/synapse/workspace.yaml @@ -79,6 +79,3 @@ spec: storageAccountIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/workspaceaadadmin.yaml b/examples-generated/synapse/workspaceaadadmin.yaml index 0e062e2e2..cb5b0db71 100644 --- a/examples-generated/synapse/workspaceaadadmin.yaml +++ b/examples-generated/synapse/workspaceaadadmin.yaml @@ -159,6 +159,3 @@ spec: testing.upbound.io/example-name: example tags: Env: production - ---- - diff --git a/examples-generated/synapse/workspaceextendedauditingpolicy.yaml b/examples-generated/synapse/workspaceextendedauditingpolicy.yaml index c26f39058..fade0c7da 100644 --- a/examples-generated/synapse/workspaceextendedauditingpolicy.yaml +++ b/examples-generated/synapse/workspaceextendedauditingpolicy.yaml @@ -116,6 +116,3 @@ spec: storageDataLakeGen2FilesystemIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/synapse/workspacesecurityalertpolicy.yaml b/examples-generated/synapse/workspacesecurityalertpolicy.yaml index 354024d19..d7e63b7f5 100644 --- a/examples-generated/synapse/workspacesecurityalertpolicy.yaml +++ b/examples-generated/synapse/workspacesecurityalertpolicy.yaml @@ -126,6 +126,3 @@ spec: testing.upbound.io/example-name: example tags: Env: production - ---- - diff --git a/examples-generated/synapse/workspacesqlaadadmin.yaml b/examples-generated/synapse/workspacesqlaadadmin.yaml index 82f673388..6649ebd2d 100644 --- a/examples-generated/synapse/workspacesqlaadadmin.yaml +++ b/examples-generated/synapse/workspacesqlaadadmin.yaml @@ -159,6 +159,3 @@ spec: testing.upbound.io/example-name: example tags: Env: production - ---- - diff --git a/examples-generated/synapse/workspacevulnerabilityassessment.yaml b/examples-generated/synapse/workspacevulnerabilityassessment.yaml index 4e25c9914..57f9ad224 100644 --- a/examples-generated/synapse/workspacevulnerabilityassessment.yaml +++ b/examples-generated/synapse/workspacevulnerabilityassessment.yaml @@ -169,6 +169,3 @@ spec: synapseWorkspaceIdSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/timeseriesinsights/eventsourceeventhub.yaml b/examples-generated/timeseriesinsights/eventsourceeventhub.yaml index 355ef1125..897fbe9c1 100644 --- a/examples-generated/timeseriesinsights/eventsourceeventhub.yaml +++ b/examples-generated/timeseriesinsights/eventsourceeventhub.yaml @@ -178,6 +178,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/timeseriesinsights/eventsourceiothub.yaml b/examples-generated/timeseriesinsights/eventsourceiothub.yaml index cbb20c0d1..a0ed8fc2e 100644 --- a/examples-generated/timeseriesinsights/eventsourceiothub.yaml +++ b/examples-generated/timeseriesinsights/eventsourceiothub.yaml @@ -127,6 +127,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/timeseriesinsights/gen2environment.yaml b/examples-generated/timeseriesinsights/gen2environment.yaml index 2e6f2928a..a63a7117d 100644 --- a/examples-generated/timeseriesinsights/gen2environment.yaml +++ b/examples-generated/timeseriesinsights/gen2environment.yaml @@ -57,6 +57,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/timeseriesinsights/referencedataset.yaml b/examples-generated/timeseriesinsights/referencedataset.yaml index 6fea5818d..81a03110a 100644 --- a/examples-generated/timeseriesinsights/referencedataset.yaml +++ b/examples-generated/timeseriesinsights/referencedataset.yaml @@ -48,6 +48,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/timeseriesinsights/standardenvironment.yaml b/examples-generated/timeseriesinsights/standardenvironment.yaml index 4b71b1c80..c34705e51 100644 --- a/examples-generated/timeseriesinsights/standardenvironment.yaml +++ b/examples-generated/timeseriesinsights/standardenvironment.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/web/appactiveslot.yaml b/examples-generated/web/appactiveslot.yaml index 2d8570cf6..6efb40a8d 100644 --- a/examples-generated/web/appactiveslot.yaml +++ b/examples-generated/web/appactiveslot.yaml @@ -84,6 +84,3 @@ spec: testing.upbound.io/example-name: example siteConfig: - {} - ---- - diff --git a/examples-generated/web/apphybridconnection.yaml b/examples-generated/web/apphybridconnection.yaml index c427f0636..c8de30b10 100644 --- a/examples-generated/web/apphybridconnection.yaml +++ b/examples-generated/web/apphybridconnection.yaml @@ -109,6 +109,3 @@ spec: testing.upbound.io/example-name: example siteConfig: - {} - ---- - diff --git a/examples-generated/web/appserviceplan.yaml b/examples-generated/web/appserviceplan.yaml index e5f72a6c0..c4df2e03c 100644 --- a/examples-generated/web/appserviceplan.yaml +++ b/examples-generated/web/appserviceplan.yaml @@ -29,6 +29,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/web/functionapp.yaml b/examples-generated/web/functionapp.yaml index 5abd81381..afa3789f2 100644 --- a/examples-generated/web/functionapp.yaml +++ b/examples-generated/web/functionapp.yaml @@ -76,6 +76,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/web/functionappactiveslot.yaml b/examples-generated/web/functionappactiveslot.yaml index 336346d93..0c2c57337 100644 --- a/examples-generated/web/functionappactiveslot.yaml +++ b/examples-generated/web/functionappactiveslot.yaml @@ -109,6 +109,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/web/functionappfunction.yaml b/examples-generated/web/functionappfunction.yaml index 1ef312fd6..b5ec2b2b7 100644 --- a/examples-generated/web/functionappfunction.yaml +++ b/examples-generated/web/functionappfunction.yaml @@ -120,6 +120,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/web/functionapphybridconnection.yaml b/examples-generated/web/functionapphybridconnection.yaml index 2cba9ccdc..d4c00a5b7 100644 --- a/examples-generated/web/functionapphybridconnection.yaml +++ b/examples-generated/web/functionapphybridconnection.yaml @@ -157,6 +157,3 @@ spec: testing.upbound.io/example-name: example siteConfig: - {} - ---- - diff --git a/examples-generated/web/functionappslot.yaml b/examples-generated/web/functionappslot.yaml index 2b22fe26a..395d7635f 100644 --- a/examples-generated/web/functionappslot.yaml +++ b/examples-generated/web/functionappslot.yaml @@ -106,6 +106,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/web/linuxfunctionapp.yaml b/examples-generated/web/linuxfunctionapp.yaml index 2d4379a87..d3bd88e49 100644 --- a/examples-generated/web/linuxfunctionapp.yaml +++ b/examples-generated/web/linuxfunctionapp.yaml @@ -77,6 +77,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/web/linuxfunctionappslot.yaml b/examples-generated/web/linuxfunctionappslot.yaml index e45782d9c..4b980b9cd 100644 --- a/examples-generated/web/linuxfunctionappslot.yaml +++ b/examples-generated/web/linuxfunctionappslot.yaml @@ -94,6 +94,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/web/linuxwebapp.yaml b/examples-generated/web/linuxwebapp.yaml index 0b35cde2f..5e497b0da 100644 --- a/examples-generated/web/linuxwebapp.yaml +++ b/examples-generated/web/linuxwebapp.yaml @@ -50,6 +50,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: P1v2 - ---- - diff --git a/examples-generated/web/linuxwebappslot.yaml b/examples-generated/web/linuxwebappslot.yaml index 51d851846..11f4a396e 100644 --- a/examples-generated/web/linuxwebappslot.yaml +++ b/examples-generated/web/linuxwebappslot.yaml @@ -69,6 +69,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: P1v2 - ---- - diff --git a/examples-generated/web/serviceplan.yaml b/examples-generated/web/serviceplan.yaml index 15dfc9a75..93a4c2b5c 100644 --- a/examples-generated/web/serviceplan.yaml +++ b/examples-generated/web/serviceplan.yaml @@ -28,6 +28,3 @@ metadata: spec: forProvider: location: West Europe - ---- - diff --git a/examples-generated/web/sourcecontroltoken.yaml b/examples-generated/web/sourcecontroltoken.yaml index 126ae6bf5..b3d935b66 100644 --- a/examples-generated/web/sourcecontroltoken.yaml +++ b/examples-generated/web/sourcecontroltoken.yaml @@ -13,6 +13,3 @@ spec: name: example-secret namespace: upbound-system type: GitHub - ---- - diff --git a/examples-generated/web/staticsite.yaml b/examples-generated/web/staticsite.yaml index 737d8f924..32e9da182 100644 --- a/examples-generated/web/staticsite.yaml +++ b/examples-generated/web/staticsite.yaml @@ -12,6 +12,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/web/windowsfunctionapp.yaml b/examples-generated/web/windowsfunctionapp.yaml index 0e4c569de..a8fd42aea 100644 --- a/examples-generated/web/windowsfunctionapp.yaml +++ b/examples-generated/web/windowsfunctionapp.yaml @@ -76,6 +76,3 @@ spec: resourceGroupNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/web/windowsfunctionappslot.yaml b/examples-generated/web/windowsfunctionappslot.yaml index 7b9327b16..096747775 100644 --- a/examples-generated/web/windowsfunctionappslot.yaml +++ b/examples-generated/web/windowsfunctionappslot.yaml @@ -93,6 +93,3 @@ spec: storageAccountNameSelector: matchLabels: testing.upbound.io/example-name: example - ---- - diff --git a/examples-generated/web/windowswebapp.yaml b/examples-generated/web/windowswebapp.yaml index 99b000b90..f307e0020 100644 --- a/examples-generated/web/windowswebapp.yaml +++ b/examples-generated/web/windowswebapp.yaml @@ -50,6 +50,3 @@ spec: matchLabels: testing.upbound.io/example-name: example skuName: P1v2 - ---- - diff --git a/examples-generated/web/windowswebappslot.yaml b/examples-generated/web/windowswebappslot.yaml index 7f0bb47e6..935d80323 100644 --- a/examples-generated/web/windowswebappslot.yaml +++ b/examples-generated/web/windowswebappslot.yaml @@ -68,6 +68,3 @@ spec: testing.upbound.io/example-name: example siteConfig: - {} - ---- - diff --git a/go.mod b/go.mod index 9624933ec..5e77090f8 100644 --- a/go.mod +++ b/go.mod @@ -3,48 +3,47 @@ module github.com/upbound/provider-azure go 1.19 require ( - github.com/crossplane/crossplane-runtime v0.20.0-rc.0.0.20230406155702-4e1673b7141f - github.com/crossplane/crossplane-tools v0.0.0-20230327091744-4236bf732aa5 + github.com/crossplane/crossplane-runtime v0.20.0 + github.com/crossplane/crossplane-tools v0.0.0-20230714144037-2684f4bc7638 github.com/hashicorp/terraform-plugin-sdk/v2 v2.24.0 github.com/pkg/errors v0.9.1 - github.com/upbound/upjet v0.9.0-rc.0.0.20230427131841-1d0b7b0c08f8 + github.com/upbound/upjet v0.9.0-rc.0.0.20230731131908-7fb82a477111 gopkg.in/alecthomas/kingpin.v2 v2.2.6 - k8s.io/apimachinery v0.26.3 - k8s.io/client-go v0.26.3 - sigs.k8s.io/controller-runtime v0.14.6 - sigs.k8s.io/controller-tools v0.11.3 + k8s.io/apimachinery v0.27.3 + k8s.io/client-go v0.27.3 + sigs.k8s.io/controller-runtime v0.15.0 + sigs.k8s.io/controller-tools v0.12.1 ) require ( + dario.cat/mergo v1.0.0 // indirect github.com/agext/levenshtein v1.2.3 // indirect github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 // indirect github.com/antchfx/htmlquery v1.2.4 // indirect github.com/antchfx/xpath v1.2.0 // indirect github.com/apparentlymart/go-textseg/v13 v13.0.0 // indirect - github.com/armon/go-metrics v0.3.9 // indirect - github.com/armon/go-radix v1.0.0 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/cenkalti/backoff/v3 v3.0.0 // indirect - github.com/cespare/xxhash/v2 v2.1.2 // indirect + github.com/cespare/xxhash/v2 v2.2.0 // indirect github.com/dave/jennifer v1.4.1 // indirect github.com/davecgh/go-spew v1.1.1 // indirect - github.com/emicklei/go-restful/v3 v3.9.0 // indirect + github.com/emicklei/go-restful/v3 v3.10.2 // indirect github.com/evanphx/json-patch/v5 v5.6.0 // indirect github.com/fatih/camelcase v1.0.0 // indirect - github.com/fatih/color v1.13.0 // indirect + github.com/fatih/color v1.15.0 // indirect github.com/fsnotify/fsnotify v1.6.0 // indirect - github.com/go-logr/logr v1.2.3 // indirect - github.com/go-logr/zapr v1.2.3 // indirect - github.com/go-openapi/jsonpointer v0.19.5 // indirect - github.com/go-openapi/jsonreference v0.20.0 // indirect - github.com/go-openapi/swag v0.21.1 // indirect - github.com/gobuffalo/flect v0.3.0 // indirect + github.com/go-jose/go-jose/v3 v3.0.0 // indirect + github.com/go-logr/logr v1.2.4 // indirect + github.com/go-logr/zapr v1.2.4 // indirect + github.com/go-openapi/jsonpointer v0.19.6 // indirect + github.com/go-openapi/jsonreference v0.20.2 // indirect + github.com/go-openapi/swag v0.22.3 // indirect + github.com/gobuffalo/flect v1.0.2 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/mock v1.6.0 // indirect - github.com/golang/protobuf v1.5.2 // indirect - github.com/golang/snappy v0.0.4 // indirect + github.com/golang/protobuf v1.5.3 // indirect github.com/google/gnostic v0.6.9 // indirect github.com/google/go-cmp v0.5.9 // indirect github.com/google/gofuzz v1.2.0 // indirect @@ -53,35 +52,29 @@ require ( github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320 // indirect github.com/hashicorp/go-hclog v1.2.1 // indirect - github.com/hashicorp/go-immutable-radix v1.3.1 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/hashicorp/go-plugin v1.4.4 // indirect github.com/hashicorp/go-retryablehttp v0.7.1 // indirect github.com/hashicorp/go-rootcerts v1.0.2 // indirect - github.com/hashicorp/go-secure-stdlib/mlock v0.1.1 // indirect - github.com/hashicorp/go-secure-stdlib/parseutil v0.1.1 // indirect - github.com/hashicorp/go-secure-stdlib/strutil v0.1.1 // indirect + github.com/hashicorp/go-secure-stdlib/parseutil v0.1.6 // indirect + github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 // indirect github.com/hashicorp/go-sockaddr v1.0.2 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect github.com/hashicorp/go-version v1.6.0 // indirect - github.com/hashicorp/golang-lru v0.5.4 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/hashicorp/hcl/v2 v2.14.1 // indirect github.com/hashicorp/logutils v1.0.0 // indirect github.com/hashicorp/terraform-json v0.14.0 // indirect github.com/hashicorp/terraform-plugin-go v0.14.0 // indirect github.com/hashicorp/terraform-plugin-log v0.7.0 // indirect - github.com/hashicorp/vault/api v1.5.0 // indirect - github.com/hashicorp/vault/sdk v0.4.1 // indirect - github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d // indirect + github.com/hashicorp/vault/api v1.9.2 // indirect github.com/iancoleman/strcase v0.2.0 // indirect - github.com/imdario/mergo v0.3.12 // indirect - github.com/inconshreveable/mousetrap v1.0.1 // indirect + github.com/imdario/mergo v0.3.16 // indirect + github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/mailru/easyjson v0.7.7 // indirect - github.com/mattn/go-colorable v0.1.12 // indirect - github.com/mattn/go-isatty v0.0.16 // indirect + github.com/mattn/go-colorable v0.1.13 // indirect + github.com/mattn/go-isatty v0.0.17 // indirect github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect @@ -94,15 +87,13 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/muvaf/typewriter v0.0.0-20220131201631-921e94e8e8d7 // indirect - github.com/oklog/run v1.0.0 // indirect - github.com/pierrec/lz4 v2.5.2+incompatible // indirect - github.com/prometheus/client_golang v1.14.0 // indirect - github.com/prometheus/client_model v0.3.0 // indirect - github.com/prometheus/common v0.37.0 // indirect - github.com/prometheus/procfs v0.8.0 // indirect + github.com/prometheus/client_golang v1.15.1 // indirect + github.com/prometheus/client_model v0.4.0 // indirect + github.com/prometheus/common v0.44.0 // indirect + github.com/prometheus/procfs v0.10.0 // indirect github.com/ryanuber/go-glob v1.0.0 // indirect - github.com/spf13/afero v1.9.2 // indirect - github.com/spf13/cobra v1.6.1 // indirect + github.com/spf13/afero v1.9.5 // indirect + github.com/spf13/cobra v1.7.0 // indirect github.com/spf13/pflag v1.0.5 // indirect github.com/tmccombs/hcl2json v0.3.3 // indirect github.com/vmihailenco/msgpack v4.0.4+incompatible // indirect @@ -110,34 +101,33 @@ require ( github.com/vmihailenco/tagparser v0.1.1 // indirect github.com/yuin/goldmark v1.4.13 // indirect github.com/zclconf/go-cty v1.11.0 // indirect - go.uber.org/atomic v1.10.0 // indirect - go.uber.org/multierr v1.8.0 // indirect + go.uber.org/atomic v1.11.0 // indirect + go.uber.org/multierr v1.11.0 // indirect go.uber.org/zap v1.24.0 // indirect - golang.org/x/crypto v0.2.0 // indirect - golang.org/x/mod v0.7.0 // indirect - golang.org/x/net v0.7.0 // indirect - golang.org/x/oauth2 v0.1.0 // indirect - golang.org/x/sys v0.5.0 // indirect - golang.org/x/term v0.5.0 // indirect - golang.org/x/text v0.7.0 // indirect + golang.org/x/crypto v0.11.0 // indirect + golang.org/x/mod v0.12.0 // indirect + golang.org/x/net v0.12.0 // indirect + golang.org/x/oauth2 v0.8.0 // indirect + golang.org/x/sys v0.10.0 // indirect + golang.org/x/term v0.10.0 // indirect + golang.org/x/text v0.11.0 // indirect golang.org/x/time v0.3.0 // indirect - golang.org/x/tools v0.4.0 // indirect - gomodules.xyz/jsonpatch/v2 v2.2.0 // indirect + golang.org/x/tools v0.11.0 // indirect + gomodules.xyz/jsonpatch/v2 v2.3.0 // indirect google.golang.org/appengine v1.6.7 // indirect - google.golang.org/genproto v0.0.0-20221202195650-67e5cbc046fd // indirect - google.golang.org/grpc v1.50.1 // indirect - google.golang.org/protobuf v1.28.2-0.20220831092852-f930b1dc76e8 // indirect + google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 // indirect + google.golang.org/grpc v1.56.2 // indirect + google.golang.org/protobuf v1.31.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect - gopkg.in/square/go-jose.v2 v2.5.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/api v0.26.3 // indirect - k8s.io/apiextensions-apiserver v0.26.3 // indirect - k8s.io/component-base v0.26.3 // indirect - k8s.io/klog/v2 v2.80.1 // indirect - k8s.io/kube-openapi v0.0.0-20221012153701-172d655c2280 // indirect - k8s.io/utils v0.0.0-20221128185143-99ec85e7a448 // indirect - sigs.k8s.io/json v0.0.0-20220713155537-f223a00ba0e2 // indirect + k8s.io/api v0.27.3 // indirect + k8s.io/apiextensions-apiserver v0.27.3 // indirect + k8s.io/component-base v0.27.3 // indirect + k8s.io/klog/v2 v2.100.1 // indirect + k8s.io/kube-openapi v0.0.0-20230525220651-2546d827e515 // indirect + k8s.io/utils v0.0.0-20230505201702-9f6742963106 // indirect + sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect sigs.k8s.io/yaml v1.3.0 // indirect ) diff --git a/go.sum b/go.sum index a88a1c0cf..3f6015b70 100644 --- a/go.sum +++ b/go.sum @@ -35,21 +35,18 @@ cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohl cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo= +dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= +dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= -github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/agext/levenshtein v1.2.1/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/alecthomas/kong v0.2.16/go.mod h1:kQOmtJgV+Lb4aj+I2LEn40cbtawdWJ9Y8QLq+lElKxE= -github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 h1:JYp7IbQjafoB+tBA3gMyHYHrpOtNuDiK/uB5uXxq5wM= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= -github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= -github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= -github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 h1:s6gZFSlWYmbqAuRjVTiNNhvNRfY2Wxp9nhfyel4rklc= github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137/go.mod h1:OMCwj8VM1Kc9e19TLln2VL61YJF0x1XFtfdL4JdbSyE= github.com/antchfx/htmlquery v1.2.4 h1:qLteofCMe/KGovBI6SQgmou2QNyedFUW+pE+BpeZ494= @@ -63,15 +60,9 @@ github.com/apparentlymart/go-textseg v1.0.0/go.mod h1:z96Txxhf3xSFMPmb5X/1W05FF/ github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec= github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw= github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo= -github.com/armon/go-metrics v0.3.9 h1:O2sNqxBdvq8Eq5xmzljcYzAORli6RWCvEym4cJf9m18= -github.com/armon/go-metrics v0.3.9/go.mod h1:4O98XIr/9W0sxpJ8UaYkvjk10Iff7SnFrb4QAOwNTFc= github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= -github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI= -github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8= github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= -github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= -github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= @@ -80,96 +71,72 @@ github.com/cenkalti/backoff/v3 v3.0.0 h1:ske+9nBpD9qZsTBoF41nW5L+AIuFBKMeze18XQ3 github.com/cenkalti/backoff/v3 v3.0.0/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= -github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/cespare/xxhash/v2 v2.1.2 h1:YRXhKfTDauu4ajMg1TPgFO5jnlC2HCbmLXMcTG5cbYE= -github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= +github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= -github.com/circonus-labs/circonus-gometrics v2.3.1+incompatible/go.mod h1:nmEj6Dob7S7YxXgwXpfOuvO54S+tGdZdw9fuRZt25Ag= -github.com/circonus-labs/circonusllhist v0.1.3/go.mod h1:kMXHVDlOchFAehlya5ePtbp5jckzBHf4XRpQvBOLI+I= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= -github.com/crossplane/crossplane-runtime v0.20.0-rc.0.0.20230406155702-4e1673b7141f h1:wDRr6gaoiQstEdddrn0B5SSSgzdXreOQAbdmRH+9JeI= -github.com/crossplane/crossplane-runtime v0.20.0-rc.0.0.20230406155702-4e1673b7141f/go.mod h1:ebtUpmconMy8RKUEhrCXTUFSOpfGQqbKM2E+rjCCYJo= -github.com/crossplane/crossplane-tools v0.0.0-20230327091744-4236bf732aa5 h1:K9H55wcwfXcGroZApIgPmIGRGuZLszsLDCYB12p2yMo= -github.com/crossplane/crossplane-tools v0.0.0-20230327091744-4236bf732aa5/go.mod h1:+e4OaFlOcmr0JvINHl/yvEYBrZawzTgj6pQumOH1SS0= +github.com/crossplane/crossplane-runtime v0.20.0 h1:MlPNrK6ELKLQdeHaIdKxQpZW2LSivSYXxHKVfU32auU= +github.com/crossplane/crossplane-runtime v0.20.0/go.mod h1:FuKIC8Mg8hE2gIAMyf2wCPkxkFPz+VnMQiYWBq1/p5A= +github.com/crossplane/crossplane-tools v0.0.0-20230714144037-2684f4bc7638 h1:NPbGG7jLyM+LbSMFQXilM70EOxbxk4z2CFvdSRtxc1s= +github.com/crossplane/crossplane-tools v0.0.0-20230714144037-2684f4bc7638/go.mod h1:+e4OaFlOcmr0JvINHl/yvEYBrZawzTgj6pQumOH1SS0= github.com/dave/jennifer v1.4.1 h1:XyqG6cn5RQsTj3qlWQTKlRGAyrTcsk1kUmWdZBzRjDw= github.com/dave/jennifer v1.4.1/go.mod h1:7jEdnm+qBcxl8PC0zyp7vxcpSRnzXSt9r39tpTVGlwA= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= -github.com/emicklei/go-restful/v3 v3.9.0 h1:XwGDlfxEnQZzuopoqxwSEllNcCOM9DhhFyhFIIGKwxE= -github.com/emicklei/go-restful/v3 v3.9.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= +github.com/emicklei/go-restful/v3 v3.10.2 h1:hIovbnmBTLjHXkqEBUz3HGpXZdM7ZrE9fJIZIqlJLqE= +github.com/emicklei/go-restful/v3 v3.10.2/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= -github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/evanphx/json-patch v0.5.2/go.mod h1:ZWS5hhDbVDyob71nXKNL0+PWn6ToqBHMikGIFbs31qQ= github.com/evanphx/json-patch v4.12.0+incompatible h1:4onqiflcdA9EOZ4RxV643DvftH5pOlLGNtQ5lPWQu84= -github.com/evanphx/json-patch/v5 v5.5.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2VvlbKOFpnXhI9Bw4= github.com/evanphx/json-patch/v5 v5.6.0 h1:b91NhWfaz02IuVxO9faSllyAtNXHMPkC5J8sJCLunww= github.com/evanphx/json-patch/v5 v5.6.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2VvlbKOFpnXhI9Bw4= github.com/fatih/camelcase v1.0.0 h1:hxNvNX/xYBp0ovncs8WyWZrOrpBNub/JfaMvbURyft8= github.com/fatih/camelcase v1.0.0/go.mod h1:yN2Sb0lFhZJUdVvtELVWefmrXpuZESvPmqwoZc+/fpc= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= -github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= -github.com/fatih/structs v1.1.0 h1:Q7juDM0QtcnhCpeyLGQKyg4TOIghuNXrkL32pHAUMxo= -github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= +github.com/fatih/color v1.15.0 h1:kOqh6YHBtK8aywxGerMG2Eq3H6Qgoqeo13Bk2Mv/nBs= +github.com/fatih/color v1.15.0/go.mod h1:0h5ZqXfHYED7Bhv2ZJamyIOUej9KtShiJESRwBDUSsw= github.com/flowstack/go-jsonschema v0.1.1/go.mod h1:yL7fNggx1o8rm9RlgXv7hTBWxdBM0rVwpMwimd3F3N0= -github.com/frankban/quicktest v1.10.0/go.mod h1:ui7WezCLWMWxVWr1GETZY3smRy0G4KWq9vcPtJmFl7Y= -github.com/frankban/quicktest v1.13.0 h1:yNZif1OkDfNoDfb9zZa9aXIpejNR4F23Wely0c+Qdqk= -github.com/frankban/quicktest v1.13.0/go.mod h1:qLE0fzW0VuyUAJgPU19zByoIr0HtCHN/r/VLSOOIySU= github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= -github.com/go-asn1-ber/asn1-ber v1.3.1/go.mod h1:hEBeB/ic+5LoWskz+yKT7vGhhPYkProFKoKdwZRWMe0= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= -github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= -github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= -github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= -github.com/go-kit/log v0.2.0/go.mod h1:NwTd00d/i8cPZ3xOwwiv2PO5MOcx78fFErGNcVmBjv0= -github.com/go-ldap/ldap/v3 v3.1.10/go.mod h1:5Zun81jBTabRaI8lzN7E1JjyEl1g6zI6u9pd8luAK4Q= -github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= -github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= -github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= -github.com/go-logfmt/logfmt v0.5.1/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs= +github.com/go-jose/go-jose/v3 v3.0.0 h1:s6rrhirfEP/CGIoc6p+PZAeogN2SxKav6Wp7+dyMWVo= +github.com/go-jose/go-jose/v3 v3.0.0/go.mod h1:RNkWWRld676jZEYoV3+XK8L2ZnNSvIsxFMht0mSX+u8= github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.3 h1:2DntVwHkVopvECVRSlL5PSo9eG+cAkDCuckLubN+rq0= -github.com/go-logr/logr v1.2.3/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/zapr v1.2.3 h1:a9vnzlIBPQBBkeaR9IuMUfmVOrQlkoC4YfPoFkX3T7A= -github.com/go-logr/zapr v1.2.3/go.mod h1:eIauM6P8qSvTw5o2ez6UEAfGjQKrxQTl5EoK+Qa2oG4= -github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= -github.com/go-openapi/jsonpointer v0.19.5 h1:gZr+CIYByUqjcgeLXnQu2gHYQC9o73G2XUeOFYEICuY= -github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= -github.com/go-openapi/jsonreference v0.20.0 h1:MYlu0sBgChmCfJxxUKZ8g1cPWFOB37YSZqewK7OKeyA= -github.com/go-openapi/jsonreference v0.20.0/go.mod h1:Ag74Ico3lPc+zR+qjn4XBUmXymS4zJbYVCZmcgkasdo= -github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= -github.com/go-openapi/swag v0.21.1 h1:wm0rhTb5z7qpJRHBdPOMuY4QjVUMbF6/kwoYeRAOrKU= -github.com/go-openapi/swag v0.21.1/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= -github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-test/deep v1.0.2/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= +github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ= +github.com/go-logr/logr v1.2.4/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/zapr v1.2.4 h1:QHVo+6stLbfJmYGkQ7uGHUCu5hnAFAj6mDe6Ea0SeOo= +github.com/go-logr/zapr v1.2.4/go.mod h1:FyHWQIzQORZ0QVE1BtVHv3cKtNLuXsbNLtpuhNapBOA= +github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE= +github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs= +github.com/go-openapi/jsonreference v0.20.2 h1:3sVjiK66+uXK/6oQ8xgcRKcFgQ5KXa2KvnJRumpMGbE= +github.com/go-openapi/jsonreference v0.20.2/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= +github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g= +github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= +github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= github.com/go-test/deep v1.0.3/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= github.com/go-test/deep v1.0.7 h1:/VSMRlnY/JSyqxQUzQLKVMAskpY/NZKFA5j2P+0pP2M= github.com/go-test/deep v1.0.7/go.mod h1:QV8Hv/iy04NyLBxAdO9njL0iVPN1S4d/A3NVv1V36o8= -github.com/gobuffalo/flect v0.3.0 h1:erfPWM+K1rFNIQeRPdeEXxo8yFr/PO17lhRnS8FUrtk= -github.com/gobuffalo/flect v0.3.0/go.mod h1:5pf3aGnsvqvCj50AVni7mJJF8ICxGZ8HomberC3pXLE= -github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gobuffalo/flect v1.0.2 h1:eqjPGSo2WmjgY2XlpGwo2NXgL3RucAKo4k4qQMNA5sA= +github.com/gobuffalo/flect v1.0.2/go.mod h1:A5msMlrHtLqh9umBSnvabjsMrCcCpAyzglnDvkbYKHs= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= @@ -203,10 +170,9 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= -github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= -github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= +github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/google/addlicense v0.0.0-20210428195630-6d92264d7170/go.mod h1:EMjYTRimagHs1FwlIqKyX3wAM0u3rA+McvlIIWmSamA= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= @@ -241,6 +207,7 @@ github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hf github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20230705174524-200ffdc848b8 h1:n6vlPhxsA+BW/XsS5+uqi7GyzaLa5MH7qlSLBZtRdiA= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= @@ -252,56 +219,35 @@ github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFb github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= -github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ= github.com/hashicorp/go-cleanhttp v0.5.2/go.mod h1:kO/YDlP8L1346E6Sodw+PrpBSV4/SoxCXGY6BqNFT48= github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320 h1:1/D3zfFHttUKaCaGKZ/dR2roBXv0vKbSCnssIldfQdI= github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320/go.mod h1:EiZBMaudVLy8fmjf9Npq1dq9RalhveqZG5w/yz3mHWs= github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= -github.com/hashicorp/go-hclog v0.14.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= -github.com/hashicorp/go-hclog v0.16.2/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= github.com/hashicorp/go-hclog v1.2.1 h1:YQsLlGDJgwhXFpucSPyVbCBviQtjlHv3jLTlp8YmtEw= github.com/hashicorp/go-hclog v1.2.1/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= -github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= -github.com/hashicorp/go-immutable-radix v1.3.1 h1:DKHmCUm2hRBK510BaiZlwvpD40f8bJFeZnpfm2KLowc= -github.com/hashicorp/go-immutable-radix v1.3.1/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= -github.com/hashicorp/go-kms-wrapping/entropy v0.1.0/go.mod h1:d1g9WGtAunDNpek8jUIEJnBlbgKS1N2Q61QkHiZyR1g= github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= -github.com/hashicorp/go-plugin v1.4.3/go.mod h1:5fGEH17QVwTTcR0zV7yhDPLLmFX9YSZ38b18Udy6vYQ= -github.com/hashicorp/go-plugin v1.4.4 h1:NVdrSdFRt3SkZtNckJ6tog7gbpRrcbOjQi/rgF7JYWQ= -github.com/hashicorp/go-plugin v1.4.4/go.mod h1:viDMjcLJuDui6pXb8U4HVfb8AamCWhHGUjr2IrTF67s= -github.com/hashicorp/go-retryablehttp v0.5.3/go.mod h1:9B5zBasrRhHXnJnui7y6sL7es7NDiJgTc6Er0maI1Xs= -github.com/hashicorp/go-retryablehttp v0.6.6/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= github.com/hashicorp/go-retryablehttp v0.7.1 h1:sUiuQAnLlbvmExtFQs72iFW/HXeUn8Z1aJLQ4LJJbTQ= github.com/hashicorp/go-retryablehttp v0.7.1/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= github.com/hashicorp/go-rootcerts v1.0.2 h1:jzhAVGtqPKbwpyCPELlgNWhE1znq+qwJtW5Oi2viEzc= github.com/hashicorp/go-rootcerts v1.0.2/go.mod h1:pqUvnprVnM5bf7AOirdbb01K4ccR319Vf4pU3K5EGc8= -github.com/hashicorp/go-secure-stdlib/base62 v0.1.1/go.mod h1:EdWO6czbmthiwZ3/PUsDV+UD1D5IRU4ActiaWGwt0Yw= -github.com/hashicorp/go-secure-stdlib/mlock v0.1.1 h1:cCRo8gK7oq6A2L6LICkUZ+/a5rLiRXFMf1Qd4xSwxTc= -github.com/hashicorp/go-secure-stdlib/mlock v0.1.1/go.mod h1:zq93CJChV6L9QTfGKtfBxKqD7BqqXx5O04A/ns2p5+I= -github.com/hashicorp/go-secure-stdlib/parseutil v0.1.1 h1:78ki3QBevHwYrVxnyVeaEz+7WtifHhauYF23es/0KlI= -github.com/hashicorp/go-secure-stdlib/parseutil v0.1.1/go.mod h1:QmrqtbKuxxSWTN3ETMPuB+VtEiBJ/A9XhoYGv8E1uD8= -github.com/hashicorp/go-secure-stdlib/password v0.1.1/go.mod h1:9hH302QllNwu1o2TGYtSk8I8kTAN0ca1EHpwhm5Mmzo= -github.com/hashicorp/go-secure-stdlib/strutil v0.1.1 h1:nd0HIW15E6FG1MsnArYaHfuw9C2zgzM8LxkG5Ty/788= +github.com/hashicorp/go-secure-stdlib/parseutil v0.1.6 h1:om4Al8Oy7kCm/B86rLCLah4Dt5Aa0Fr5rYBG60OzwHQ= +github.com/hashicorp/go-secure-stdlib/parseutil v0.1.6/go.mod h1:QmrqtbKuxxSWTN3ETMPuB+VtEiBJ/A9XhoYGv8E1uD8= github.com/hashicorp/go-secure-stdlib/strutil v0.1.1/go.mod h1:gKOamz3EwoIoJq7mlMIRBpVTAUn8qPCrEclOKKWhD3U= -github.com/hashicorp/go-secure-stdlib/tlsutil v0.1.1/go.mod h1:l8slYwnJA26yBz+ErHpp2IRCLr0vuOMGBORIz4rRiAs= +github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 h1:kes8mmyCpxJsI7FTwtzRqEy9CdjCtrXrXGuOpxEA7Ts= +github.com/hashicorp/go-secure-stdlib/strutil v0.1.2/go.mod h1:Gou2R9+il93BqX25LAKCLuM+y9U2T4hlwvT1yprcna4= github.com/hashicorp/go-sockaddr v1.0.2 h1:ztczhD1jLxIRjVejw8gFomI1BQZOe2WoVOu0SyteCQc= github.com/hashicorp/go-sockaddr v1.0.2/go.mod h1:rB4wwRAUzs07qva3c5SdrY/NEtAUjGlgmH/UkBUC97A= -github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= -github.com/hashicorp/go-uuid v1.0.2/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/Co8= github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= -github.com/hashicorp/go-version v1.2.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/go-version v1.5.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= -github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc= -github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/hashicorp/hcl/v2 v2.9.1/go.mod h1:FwWsfWEjyV/CMj8s/gqAuiviY72rJ1/oayI9WftqcKg= @@ -317,47 +263,30 @@ github.com/hashicorp/terraform-plugin-log v0.7.0 h1:SDxJUyT8TwN4l5b5/VkiTIaQgY6R github.com/hashicorp/terraform-plugin-log v0.7.0/go.mod h1:p4R1jWBXRTvL4odmEkFfDdhUjHf9zcs/BCoNHAc7IK4= github.com/hashicorp/terraform-plugin-sdk/v2 v2.24.0 h1:FtCLTiTcykdsURXPt/ku7fYXm3y19nbzbZcUxHx9RbI= github.com/hashicorp/terraform-plugin-sdk/v2 v2.24.0/go.mod h1:80wf5oad1tW+oLnbXS4UTYmDCrl7BuN1Q+IA91X1a4Y= -github.com/hashicorp/vault/api v1.5.0 h1:Bp6yc2bn7CWkOrVIzFT/Qurzx528bdavF3nz590eu28= -github.com/hashicorp/vault/api v1.5.0/go.mod h1:LkMdrZnWNrFaQyYYazWVn7KshilfDidgVBq6YiTq/bM= -github.com/hashicorp/vault/sdk v0.4.1 h1:3SaHOJY687jY1fnB61PtL0cOkKItphrbLmux7T92HBo= -github.com/hashicorp/vault/sdk v0.4.1/go.mod h1:aZ3fNuL5VNydQk8GcLJ2TV8YCRVvyaakYkhZRoVuhj0= -github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM= -github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d h1:kJCB4vdITiW1eC1vq2e6IsrXKrZit1bv/TDYFGMp4BQ= -github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM= +github.com/hashicorp/vault/api v1.9.2 h1:YjkZLJ7K3inKgMZ0wzCU9OHqc+UqMQyXsPXnf3Cl2as= +github.com/hashicorp/vault/api v1.9.2/go.mod h1:jo5Y/ET+hNyz+JnKDt8XLAdKs+AM0G5W0Vp1IrFI8N8= github.com/iancoleman/strcase v0.2.0 h1:05I4QRnGpI0m37iZQRuskXh+w77mr6Z41lwQzuHLwW0= github.com/iancoleman/strcase v0.2.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= -github.com/imdario/mergo v0.3.12 h1:b6R2BslTbIEToALKP7LxUvijTsNI9TAe80pLWN2g/HU= -github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= -github.com/inconshreveable/mousetrap v1.0.1 h1:U3uMjPSQEBMNp1lFxmllqCPM6P5u/Xq7Pgzkat/bFNc= -github.com/inconshreveable/mousetrap v1.0.1/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= +github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= +github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= +github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= +github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= -github.com/jhump/protoreflect v1.6.0 h1:h5jfMVslIg6l29nsMs0D8Wj17RDVdNYti0vDN/PZZoE= -github.com/jhump/protoreflect v1.6.0/go.mod h1:eaTn3RZAmMBcV0fifFvlm6VHNz3wSkYyXYWUh7ymB74= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= -github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= -github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= -github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= -github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= -github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= -github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= @@ -365,37 +294,28 @@ github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348/go.mod h1:B69LEHPfb2qLo0BaaOLcbitczOKLWTsrBG9LczfCD4k= github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= -github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= -github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= -github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= -github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= -github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= -github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= +github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= -github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= -github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcMEpPG5Rm84= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= -github.com/mattn/go-isatty v0.0.16 h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ= github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= -github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/mattn/go-isatty v0.0.17 h1:BTarxUcIeDqL27Mc+vyvdWYSL28zpIhv3RoTdsLMPng= +github.com/mattn/go-isatty v0.0.17/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= -github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw= github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s= github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/go-ps v1.0.0 h1:i6ampVEEF4wQFF+bkYfwYgY+F/uYJDktmvLPf7qIgjc= github.com/mitchellh/go-ps v1.0.0/go.mod h1:J4lOc8z8yJs6vUwklHw2XEIiT4z4C40KtWVN3nvg8Pg= -github.com/mitchellh/go-testing-interface v0.0.0-20171004221916-a61a99592b77/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= -github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= github.com/mitchellh/go-testing-interface v1.14.1 h1:jrgshOhYAUVNMAJiKbEu7EqAwgJJ2JqpQmpLJOu07cU= github.com/mitchellh/go-testing-interface v1.14.1/go.mod h1:gfgS7OtZj6MA4U1UrDRp04twqAjfvlZyCfX3sDjEym8= github.com/mitchellh/go-wordwrap v0.0.0-20150314170334-ad45545899c7/go.mod h1:ZXFpozHsX6DPmq2I0TCekCxypsnAUbP2oI0UX1GXzOo= @@ -403,38 +323,24 @@ github.com/mitchellh/go-wordwrap v1.0.0/go.mod h1:ZXFpozHsX6DPmq2I0TCekCxypsnAUb github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= github.com/mitchellh/go-wordwrap v1.0.1/go.mod h1:R62XHJLzvMFRBbcrT7m7WgmE1eOyTSsCt+hzestvNj0= github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= -github.com/mitchellh/mapstructure v1.4.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= -github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ= github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/muvaf/typewriter v0.0.0-20220131201631-921e94e8e8d7 h1:CxRHKnh1YJXgNKxcos9rrKL6AcmOl1AS/fygmxFDzh4= github.com/muvaf/typewriter v0.0.0-20220131201631-921e94e8e8d7/go.mod h1:SAAdeMEiFXR8LcHffvIdiLI1w243DCH2DuHq7UrA5YQ= -github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/nsf/jsondiff v0.0.0-20200515183724-f29ed568f4ce h1:RPclfga2SEJmgMmz2k+Mg7cowZ8yv4Trqw9UsJby758= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= -github.com/oklog/run v1.0.0 h1:Ru7dDtJNOyC66gQ5dQmaCa0qIsAUFY3sFpK1Xk8igrw= -github.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA= github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= -github.com/onsi/ginkgo/v2 v2.6.0 h1:9t9b9vRUbFq3C4qKFCGkVuq/fIHji802N1nrtkh1mNc= -github.com/onsi/gomega v1.24.2 h1:J/tulyYK6JwBldPViHJReihxxZ+22FHs0piGjQAvoUE= -github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0MwY= -github.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= -github.com/pierrec/lz4 v2.5.2+incompatible h1:WCjObylUIOlKy/+7Abdn34TLIkXiA4UWUMhxq9m9ZXI= -github.com/pierrec/lz4 v2.5.2+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= -github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/onsi/ginkgo/v2 v2.9.5 h1:+6Hr4uxzP4XIUyAkg61dWBw8lb/gc4/X5luuxN/EC+Q= +github.com/onsi/gomega v1.27.7 h1:fVih9JD6ogIiHUN6ePK7HJidyEDpWGVB5mzM7cWNXoU= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -442,59 +348,36 @@ github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qR github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= -github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= -github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= -github.com/prometheus/client_golang v1.4.0/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU= -github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= -github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= -github.com/prometheus/client_golang v1.12.1/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= -github.com/prometheus/client_golang v1.14.0 h1:nJdhIvne2eSX/XRAFV9PcvFFRbrjbcTUj0VP62TMhnw= -github.com/prometheus/client_golang v1.14.0/go.mod h1:8vpkKitgIVNcqrRBWh1C4TIUQgYNtG/XQE4E/Zae36Y= -github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= -github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_golang v1.15.1 h1:8tXpTmJbyH5lydzFPoxSIJ0J46jdh3tylbvM1xCv0LI= +github.com/prometheus/client_golang v1.15.1/go.mod h1:e9yaBhRPU2pPNsZwE+JdQl0KEt1N9XgF6zxWmaC0xOk= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.3.0 h1:UBgGFHqYdG/TPFD1B1ogZywDqEkwp3fBMvqdiQ7Xew4= -github.com/prometheus/client_model v0.3.0/go.mod h1:LDGWKZIo7rky3hgvBe+caln+Dr3dPggB5dvjtD7w9+w= -github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= -github.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4= -github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= -github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= -github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= -github.com/prometheus/common v0.37.0 h1:ccBbHCgIiT9uSoFY0vX8H3zsNR5eLt17/RQLUvn8pXE= -github.com/prometheus/common v0.37.0/go.mod h1:phzohg0JFMnBEFGxTDbfu3QyL5GI8gTQJFhYO5B3mfA= -github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= -github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= -github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= -github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= -github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= -github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= -github.com/prometheus/procfs v0.8.0 h1:ODq8ZFEaYeCaZOJlZZdJA2AbQR98dSHSM1KW/You5mo= -github.com/prometheus/procfs v0.8.0/go.mod h1:z7EfXMXOkbkqb9IINtpCn86r/to3BnA0uaxHdg830/4= +github.com/prometheus/client_model v0.4.0 h1:5lQXD3cAg1OXBf4Wq03gTrXHeaV0TQvGfUooCfx1yqY= +github.com/prometheus/client_model v0.4.0/go.mod h1:oMQmHW1/JoDwqLtg57MGgP/Fb1CJEYF2imWWhWtMkYU= +github.com/prometheus/common v0.44.0 h1:+5BrQJwiBB9xsMygAB3TNvpQKOwlkc25LbISbrdOOfY= +github.com/prometheus/common v0.44.0/go.mod h1:ofAIvZbQ1e/nugmZGz4/qCb9Ap1VoSTIO7x0VV9VvuY= +github.com/prometheus/procfs v0.10.0 h1:UkG7GPYkO4UZyLnyXjaWYcgOSONqwdBqFUT95ugmt6I= +github.com/prometheus/procfs v0.10.0/go.mod h1:nwNm2aOCAYw8uTR/9bWRREkZFxAUcWzPHWJq+XBB/FM= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/ryanuber/columnize v2.1.0+incompatible/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc= github.com/sebdah/goldie v1.0.0/go.mod h1:jXP4hmWywNEwZzhMuv2ccnqTSFpuq8iyQhtQdkkZBH4= github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= -github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= -github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= -github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= -github.com/spf13/afero v1.9.2 h1:j49Hj62F0n+DaZ1dDCvhABaPNSGNkt32oRFxI33IEMw= -github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= -github.com/spf13/cobra v1.6.1 h1:o94oiPyS4KD1mPy2fmcYYHHfCxLqYjJOhGsCHFZtEzA= -github.com/spf13/cobra v1.6.1/go.mod h1:IOw/AERYS7UzyrGinqmz6HLUo219MORXGxhbaJUqzrY= +github.com/spf13/afero v1.9.5 h1:stMpOSZFs//0Lv29HduCmli3GUfpFoF3Y1Q/aXj/wVM= +github.com/spf13/afero v1.9.5/go.mod h1:UBogFpq8E9Hx+xc5CNTTEpTnuHVmXDwZcZcE1eb/UhQ= +github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= +github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= github.com/spf13/pflag v1.0.2/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.4.0 h1:M2gUjqZET1qApGOWNSnZ49BAIMX4F/1plDv3+l31EJ4= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= @@ -503,13 +386,13 @@ github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= -github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/tmccombs/hcl2json v0.3.3 h1:+DLNYqpWE0CsOQiEZu+OZm5ZBImake3wtITYxQ8uLFQ= github.com/tmccombs/hcl2json v0.3.3/go.mod h1:Y2chtz2x9bAeRTvSibVRVgbLJhLJXKlUeIvjeVdnm4w= -github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqriFuLhtthL60Sar/7RFoluCcXsuvEwTV5KM= -github.com/upbound/upjet v0.9.0-rc.0.0.20230427131841-1d0b7b0c08f8 h1:dFGXjvdaPxZe/Zs/5wNZ+t0lACy9WpAfEsemURfmGK0= -github.com/upbound/upjet v0.9.0-rc.0.0.20230427131841-1d0b7b0c08f8/go.mod h1:CWxJ9YTMy7q+bDc2W504ocL/ZzBmWabwwcRjIaP7CKc= +github.com/upbound/upjet v0.9.0-rc.0.0.20230731131908-7fb82a477111 h1:N8yfcxi+GYbgiMEW+J5JTqlY7rMJ5FEZoeRy5sYqaAc= +github.com/upbound/upjet v0.9.0-rc.0.0.20230731131908-7fb82a477111/go.mod h1:2RXHgpIugCL/S/Use1QJAeVaev901RBeUByQh5gUtGk= github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= github.com/vmihailenco/msgpack v4.0.4+incompatible h1:dSLoQfGFAo3F6OoNhwUmLwVgaUXK79GlxNBwueZn0xI= github.com/vmihailenco/msgpack v4.0.4+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= @@ -542,29 +425,26 @@ go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= -go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= -go.uber.org/atomic v1.10.0 h1:9qC72Qh0+3MqyJbAn8YU5xVq1frD8bn3JtD2oXtafVQ= -go.uber.org/atomic v1.10.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= -go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= -go.uber.org/goleak v1.2.0 h1:xqgm/S+aQvhWFTtR0XK3Jvg7z8kGV8P4X14IzwN3Eqk= +go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= +go.uber.org/atomic v1.11.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= +go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= +go.uber.org/goleak v1.2.1 h1:NBol2c7O1ZokfZ0LEU9K6Whx/KnwvepVetCUhtKja4A= go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= -go.uber.org/multierr v1.8.0 h1:dg6GjLku4EH+249NNmoIciG9N/jURbDG+pFlTkhzIC8= -go.uber.org/multierr v1.8.0/go.mod h1:7EAYxJLBy9rStEaz58O2t4Uvip6FSURkq8/ppBp95ak= -go.uber.org/zap v1.19.0/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= +go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= +go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= go.uber.org/zap v1.24.0 h1:FiJd5l1UOLj0wCgbSE0rwwXHzEdAZS6hiiSnxJN/D60= go.uber.org/zap v1.24.0/go.mod h1:2kMP+WWQ8aoFoedH3T2sq6iJ2yDWpHbP0f6MQbS9Gkg= -golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190911031432-227b76d455e7/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= -golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.2.0 h1:BRXPfhNivWL5Yq0BGQ39a2sW6t44aODpfxkWjYdzewE= -golang.org/x/crypto v0.2.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= +golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.11.0 h1:6Ewdq3tDic1mg5xRO4milcWCfMVQhI4NkqWWvqejpuA= +golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -599,13 +479,11 @@ golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.7.0 h1:LapD9S96VoQRhi/GrNTqeBJFrUjs5UHCAtTlgwA5oZA= -golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/net v0.0.0-20180530234432-1e491301e022/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/mod v0.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc= +golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= @@ -613,7 +491,6 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= -golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -638,12 +515,10 @@ golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= -golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= -golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.12.0 h1:cfawfvKITfUsFCeJIHJrbSxpeu/E81khclypR0GVT50= +golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -653,10 +528,8 @@ golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= -golang.org/x/oauth2 v0.1.0 h1:isLCZuhj4v+tYv7eskaN4v/TM+A1begWWgyVJDdl1+Y= -golang.org/x/oauth2 v0.1.0/go.mod h1:G9FE4dLTsbXUu90h/Pf85g4w1D+SSAgR+q46nJZ8M4A= +golang.org/x/oauth2 v0.8.0 h1:6dkIjl3j3LtZ/O3sTgZTMsLKSftL/B8Zgq4huOIIUu8= +golang.org/x/oauth2 v0.8.0/go.mod h1:yr7u4HXZRm1R1kBWqr/xKNqewf0plRYoB7sla+BCIXE= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -668,16 +541,12 @@ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= +golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190502175342-a43fa875dd82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -685,10 +554,8 @@ golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191008105621-543471e840be/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -702,8 +569,6 @@ golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -711,27 +576,22 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.10.0 h1:SqMFp9UcQJZa+pmYuAKjd9xq1f0j5rLcDIk0mj4qAsA= +golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.5.0 h1:n2a8QNdAb0sZNpU9R1ALUXBbY+w51fCQDN+7EdxNBsY= -golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.10.0 h1:3R7pNqamzBraeqj/Tj8qt1aQ2HpmlC+Cx/qL/7hn4/c= +golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -741,12 +601,11 @@ golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.7.0 h1:4BRB4x83lYWy72KwLD/qYDuTu7q9PjSagHvijDw7cLo= -golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.11.0 h1:LAntKIrcmeSKERyiOh0XMV39LXS8IE9UL2yP7+f5ij4= +golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -764,7 +623,6 @@ golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgw golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -800,14 +658,15 @@ golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.4.0 h1:7mTAgkunk3fr4GAloyyCasadO6h9zSsQZbwvcaIciV4= -golang.org/x/tools v0.4.0/go.mod h1:UE5sM2OK9E/d67R0ANs2xJizIymRP5gJU295PvKXxjQ= +golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.11.0 h1:EMCa6U9S2LtZXLAMoWiR/R8dAQFRqbAitmbJ2UKhoi8= +golang.org/x/tools v0.11.0/go.mod h1:anzJrxPjNtfgiYQYirP2CPGzGLxrH2u2QBhn6Bf3qY8= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -gomodules.xyz/jsonpatch/v2 v2.2.0 h1:4pT439QV83L+G9FkcCriY6EkpcK6r6bK+A5FBUMI7qY= -gomodules.xyz/jsonpatch/v2 v2.2.0/go.mod h1:WXp+iVDkoLQqPudfQ9GBlwB2eZ5DKOnjQZCYdOS8GPY= +gomodules.xyz/jsonpatch/v2 v2.3.0 h1:8NFhfS6gzxNqjLIYnZxg319wZ5Qjnx4m/CcX+Klzazc= +gomodules.xyz/jsonpatch/v2 v2.3.0/go.mod h1:AH3dM2RI6uoBZxn3LVrfvJ3E0/9dG4cSrbuBJT4moAY= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= @@ -835,7 +694,6 @@ google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCID google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/genproto v0.0.0-20170818010345-ee236bd376b0/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= @@ -874,9 +732,8 @@ google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6D google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20220107163113-42d7afdf6368/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20221202195650-67e5cbc046fd h1:OjndDrsik+Gt+e6fs45z9AxiewiKyLKYpA45W5Kpkks= -google.golang.org/genproto v0.0.0-20221202195650-67e5cbc046fd/go.mod h1:cTsE614GARnxrLsqKREzmNYJACSWWpAWdNMwnD7c2BE= -google.golang.org/grpc v1.8.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= +google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 h1:KpwkzHKEF7B9Zxg18WzOa7djJ+Ha5DzthMyZYQfEn2A= +google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1/go.mod h1:nKE/iIaLqn2bQwXBg8f1g2Ylh6r5MN5CmZvuzZCgsCU= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= @@ -896,9 +753,8 @@ google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA5 google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= -google.golang.org/grpc v1.41.0/go.mod h1:U3l9uK9J0sini8mHphKoXyaqDA/8VyGnDee1zzIUK6k= -google.golang.org/grpc v1.50.1 h1:DS/BukOZWp8s6p4Dt/tOaJaTQyPyOoCcrjroHuCeLzY= -google.golang.org/grpc v1.50.1/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= +google.golang.org/grpc v1.56.2 h1:fVRFRnXvU+x6C4IlHZewvJOVHoOv1TUuQyoRsYnB4bI= +google.golang.org/grpc v1.56.2/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -912,33 +768,26 @@ google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlba google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.28.2-0.20220831092852-f930b1dc76e8 h1:KR8+MyP7/qOlV+8Af01LtjL04bu7on42eVsxT4EyBQk= -google.golang.org/protobuf v1.28.2-0.20220831092852-f930b1dc76e8/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8= +google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= gopkg.in/alecthomas/kingpin.v2 v2.2.6 h1:jMFz6MfLP0/4fUyZle81rXUoxOBFi19VUFKVDOQfozc= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= -gopkg.in/square/go-jose.v2 v2.5.1 h1:7odma5RETjNHWJnR32wx8t+Io4djHE1PqxCFx3iiZ2w= -gopkg.in/square/go-jose.v2 v2.5.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= -gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= @@ -948,31 +797,31 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -k8s.io/api v0.26.3 h1:emf74GIQMTik01Aum9dPP0gAypL8JTLl/lHa4V9RFSU= -k8s.io/api v0.26.3/go.mod h1:PXsqwPMXBSBcL1lJ9CYDKy7kIReUydukS5JiRlxC3qE= -k8s.io/apiextensions-apiserver v0.26.3 h1:5PGMm3oEzdB1W/FTMgGIDmm100vn7IaUP5er36dB+YE= -k8s.io/apiextensions-apiserver v0.26.3/go.mod h1:jdA5MdjNWGP+njw1EKMZc64xAT5fIhN6VJrElV3sfpQ= -k8s.io/apimachinery v0.26.3 h1:dQx6PNETJ7nODU3XPtrwkfuubs6w7sX0M8n61zHIV/k= -k8s.io/apimachinery v0.26.3/go.mod h1:ats7nN1LExKHvJ9TmwootT00Yz05MuYqPXEXaVeOy5I= -k8s.io/client-go v0.26.3 h1:k1UY+KXfkxV2ScEL3gilKcF7761xkYsSD6BC9szIu8s= -k8s.io/client-go v0.26.3/go.mod h1:ZPNu9lm8/dbRIPAgteN30RSXea6vrCpFvq+MateTUuQ= -k8s.io/component-base v0.26.3 h1:oC0WMK/ggcbGDTkdcqefI4wIZRYdK3JySx9/HADpV0g= -k8s.io/component-base v0.26.3/go.mod h1:5kj1kZYwSC6ZstHJN7oHBqcJC6yyn41eR+Sqa/mQc8E= -k8s.io/klog/v2 v2.80.1 h1:atnLQ121W371wYYFawwYx1aEY2eUfs4l3J72wtgAwV4= -k8s.io/klog/v2 v2.80.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= -k8s.io/kube-openapi v0.0.0-20221012153701-172d655c2280 h1:+70TFaan3hfJzs+7VK2o+OGxg8HsuBr/5f6tVAjDu6E= -k8s.io/kube-openapi v0.0.0-20221012153701-172d655c2280/go.mod h1:+Axhij7bCpeqhklhUTe3xmOn6bWxolyZEeyaFpjGtl4= -k8s.io/utils v0.0.0-20221128185143-99ec85e7a448 h1:KTgPnR10d5zhztWptI952TNtt/4u5h3IzDXkdIMuo2Y= -k8s.io/utils v0.0.0-20221128185143-99ec85e7a448/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/api v0.27.3 h1:yR6oQXXnUEBWEWcvPWS0jQL575KoAboQPfJAuKNrw5Y= +k8s.io/api v0.27.3/go.mod h1:C4BNvZnQOF7JA/0Xed2S+aUyJSfTGkGFxLXz9MnpIpg= +k8s.io/apiextensions-apiserver v0.27.3 h1:xAwC1iYabi+TDfpRhxh4Eapl14Hs2OftM2DN5MpgKX4= +k8s.io/apiextensions-apiserver v0.27.3/go.mod h1:BH3wJ5NsB9XE1w+R6SSVpKmYNyIiyIz9xAmBl8Mb+84= +k8s.io/apimachinery v0.27.3 h1:Ubye8oBufD04l9QnNtW05idcOe9Z3GQN8+7PqmuVcUM= +k8s.io/apimachinery v0.27.3/go.mod h1:XNfZ6xklnMCOGGFNqXG7bUrQCoR04dh/E7FprV6pb+E= +k8s.io/client-go v0.27.3 h1:7dnEGHZEJld3lYwxvLl7WoehK6lAq7GvgjxpA3nv1E8= +k8s.io/client-go v0.27.3/go.mod h1:2MBEKuTo6V1lbKy3z1euEGnhPfGZLKTS9tiJ2xodM48= +k8s.io/component-base v0.27.3 h1:g078YmdcdTfrCE4fFobt7qmVXwS8J/3cI1XxRi/2+6k= +k8s.io/component-base v0.27.3/go.mod h1:JNiKYcGImpQ44iwSYs6dysxzR9SxIIgQalk4HaCNVUY= +k8s.io/klog/v2 v2.100.1 h1:7WCHKK6K8fNhTqfBhISHQ97KrnJNFZMcQvKp7gP/tmg= +k8s.io/klog/v2 v2.100.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/kube-openapi v0.0.0-20230525220651-2546d827e515 h1:OmK1d0WrkD3IPfkskvroRykOulHVHf0s0ZIFRjyt+UI= +k8s.io/kube-openapi v0.0.0-20230525220651-2546d827e515/go.mod h1:kzo02I3kQ4BTtEfVLaPbjvCkX97YqGve33wzlb3fofQ= +k8s.io/utils v0.0.0-20230505201702-9f6742963106 h1:EObNQ3TW2D+WptiYXlApGNLVy0zm/JIBVY9i+M4wpAU= +k8s.io/utils v0.0.0-20230505201702-9f6742963106/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= -sigs.k8s.io/controller-runtime v0.14.6 h1:oxstGVvXGNnMvY7TAESYk+lzr6S3V5VFxQ6d92KcwQA= -sigs.k8s.io/controller-runtime v0.14.6/go.mod h1:WqIdsAY6JBsjfc/CqO0CORmNtoCtE4S6qbPc9s68h+0= -sigs.k8s.io/controller-tools v0.11.3 h1:T1xzLkog9saiyQSLz1XOImu4OcbdXWytc5cmYsBeBiE= -sigs.k8s.io/controller-tools v0.11.3/go.mod h1:qcfX7jfcfYD/b7lAhvqAyTbt/px4GpvN88WKLFFv7p8= -sigs.k8s.io/json v0.0.0-20220713155537-f223a00ba0e2 h1:iXTIw73aPyC+oRdyqqvVJuloN1p0AC/kzH07hu3NE+k= -sigs.k8s.io/json v0.0.0-20220713155537-f223a00ba0e2/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= +sigs.k8s.io/controller-runtime v0.15.0 h1:ML+5Adt3qZnMSYxZ7gAverBLNPSMQEibtzAgp0UPojU= +sigs.k8s.io/controller-runtime v0.15.0/go.mod h1:7ngYvp1MLT+9GeZ+6lH3LOlcHkp/+tzA/fmHa4iq9kk= +sigs.k8s.io/controller-tools v0.12.1 h1:GyQqxzH5wksa4n3YDIJdJJOopztR5VDM+7qsyg5yE4U= +sigs.k8s.io/controller-tools v0.12.1/go.mod h1:rXlpTfFHZMpZA8aGq9ejArgZiieHd+fkk/fTatY8A2M= +sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= +sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= sigs.k8s.io/structured-merge-diff/v4 v4.2.3 h1:PRbqxJClWWYMNV1dhaG4NsibJbArud9kFxnAMREiWFE= sigs.k8s.io/structured-merge-diff/v4 v4.2.3/go.mod h1:qjx8mGObPmV2aSZepjQjbmb2ihdVs8cGKBraizNC69E= sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= diff --git a/hack/main.go.tmpl b/hack/main.go.tmpl index abaea4051..2ce89b08c 100644 --- a/hack/main.go.tmpl +++ b/hack/main.go.tmpl @@ -37,6 +37,7 @@ import ( "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" "github.com/crossplane/crossplane-runtime/pkg/resource" tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/controller/handler" "github.com/upbound/upjet/pkg/terraform" "github.com/upbound/provider-azure/apis" @@ -84,6 +85,7 @@ func main() { cfg, err := ctrl.GetConfig() kingpin.FatalIfError(err, "Cannot get API server rest config") + eventHandler := handler.NewEventHandler() mgr, err := ctrl.NewManager(cfg, ctrl.Options{ LeaderElection: *leaderElection, LeaderElectionID: "crossplane-leader-election-provider-azure{{ if ne .Group "monolith" }}-{{ .Group }}{{ end }}", @@ -117,6 +119,7 @@ func main() { Provider: config.GetProvider(), WorkspaceStore: terraform.NewWorkspaceStore(log, terraform.WithDisableInit(len(*nativeProviderPath) != 0), terraform.WithProcessReportInterval(*pollInterval)), SetupFn: clients.TerraformSetupBuilder(*terraformVersion, *providerSource, *providerVersion, scheduler), + EventHandler: eventHandler, } if *enableExternalSecretStores { diff --git a/internal/controller/alertsmanagement/monitoractionruleactiongroup/zz_controller.go b/internal/controller/alertsmanagement/monitoractionruleactiongroup/zz_controller.go index ef7e48508..476980f6d 100755 --- a/internal/controller/alertsmanagement/monitoractionruleactiongroup/zz_controller.go +++ b/internal/controller/alertsmanagement/monitoractionruleactiongroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorActionRuleActionGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_action_rule_action_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorActionRuleActionGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorActionRuleActionGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorActionRuleActionGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/alertsmanagement/monitoractionrulesuppression/zz_controller.go b/internal/controller/alertsmanagement/monitoractionrulesuppression/zz_controller.go index dfdb0a560..3a205fd17 100755 --- a/internal/controller/alertsmanagement/monitoractionrulesuppression/zz_controller.go +++ b/internal/controller/alertsmanagement/monitoractionrulesuppression/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorActionRuleSuppression_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_action_rule_suppression"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorActionRuleSuppression_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorActionRuleSuppression{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorActionRuleSuppression{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/alertsmanagement/monitoralertprocessingruleactiongroup/zz_controller.go b/internal/controller/alertsmanagement/monitoralertprocessingruleactiongroup/zz_controller.go index 0a7214675..5cfa054c3 100755 --- a/internal/controller/alertsmanagement/monitoralertprocessingruleactiongroup/zz_controller.go +++ b/internal/controller/alertsmanagement/monitoralertprocessingruleactiongroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorAlertProcessingRuleActionGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_alert_processing_rule_action_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorAlertProcessingRuleActionGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorAlertProcessingRuleActionGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorAlertProcessingRuleActionGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/alertsmanagement/monitoralertprocessingrulesuppression/zz_controller.go b/internal/controller/alertsmanagement/monitoralertprocessingrulesuppression/zz_controller.go index bc4fcfa17..4652bb3cf 100755 --- a/internal/controller/alertsmanagement/monitoralertprocessingrulesuppression/zz_controller.go +++ b/internal/controller/alertsmanagement/monitoralertprocessingrulesuppression/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorAlertProcessingRuleSuppression_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_alert_processing_rule_suppression"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorAlertProcessingRuleSuppression_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorAlertProcessingRuleSuppression{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorAlertProcessingRuleSuppression{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/alertsmanagement/monitorsmartdetectoralertrule/zz_controller.go b/internal/controller/alertsmanagement/monitorsmartdetectoralertrule/zz_controller.go index 701a4d9c6..564cda5d9 100755 --- a/internal/controller/alertsmanagement/monitorsmartdetectoralertrule/zz_controller.go +++ b/internal/controller/alertsmanagement/monitorsmartdetectoralertrule/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorSmartDetectorAlertRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_smart_detector_alert_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorSmartDetectorAlertRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorSmartDetectorAlertRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorSmartDetectorAlertRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/analysisservices/server/zz_controller.go b/internal/controller/analysisservices/server/zz_controller.go index b1306540f..deb0638bb 100755 --- a/internal/controller/analysisservices/server/zz_controller.go +++ b/internal/controller/analysisservices/server/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Server_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_analysis_services_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Server_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Server{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Server{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/api/zz_controller.go b/internal/controller/apimanagement/api/zz_controller.go index 3f069405f..42a8f8c82 100755 --- a/internal/controller/apimanagement/api/zz_controller.go +++ b/internal/controller/apimanagement/api/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.API_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_api"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.API_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.API{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.API{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/apidiagnostic/zz_controller.go b/internal/controller/apimanagement/apidiagnostic/zz_controller.go index ccfb38abd..72b66e155 100755 --- a/internal/controller/apimanagement/apidiagnostic/zz_controller.go +++ b/internal/controller/apimanagement/apidiagnostic/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIDiagnostic_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_api_diagnostic"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIDiagnostic_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.APIDiagnostic{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.APIDiagnostic{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/apioperation/zz_controller.go b/internal/controller/apimanagement/apioperation/zz_controller.go index d82ab7b69..0b16c4a53 100755 --- a/internal/controller/apimanagement/apioperation/zz_controller.go +++ b/internal/controller/apimanagement/apioperation/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIOperation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_api_operation"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIOperation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.APIOperation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.APIOperation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/apioperationpolicy/zz_controller.go b/internal/controller/apimanagement/apioperationpolicy/zz_controller.go index 74cd58e15..516c2f797 100755 --- a/internal/controller/apimanagement/apioperationpolicy/zz_controller.go +++ b/internal/controller/apimanagement/apioperationpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIOperationPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_api_operation_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIOperationPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.APIOperationPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.APIOperationPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/apioperationtag/zz_controller.go b/internal/controller/apimanagement/apioperationtag/zz_controller.go index 91ca4a8d8..2184fb56a 100755 --- a/internal/controller/apimanagement/apioperationtag/zz_controller.go +++ b/internal/controller/apimanagement/apioperationtag/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIOperationTag_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_api_operation_tag"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIOperationTag_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.APIOperationTag{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.APIOperationTag{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/apipolicy/zz_controller.go b/internal/controller/apimanagement/apipolicy/zz_controller.go index 293e810b5..1b1d2b6e4 100755 --- a/internal/controller/apimanagement/apipolicy/zz_controller.go +++ b/internal/controller/apimanagement/apipolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_api_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.APIPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.APIPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/apirelease/zz_controller.go b/internal/controller/apimanagement/apirelease/zz_controller.go index 4f2dd0db5..d782f2b0b 100755 --- a/internal/controller/apimanagement/apirelease/zz_controller.go +++ b/internal/controller/apimanagement/apirelease/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIRelease_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_api_release"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIRelease_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.APIRelease{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.APIRelease{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/apischema/zz_controller.go b/internal/controller/apimanagement/apischema/zz_controller.go index 4604c3adf..7b6cd08fb 100755 --- a/internal/controller/apimanagement/apischema/zz_controller.go +++ b/internal/controller/apimanagement/apischema/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APISchema_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_api_schema"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APISchema_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.APISchema{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.APISchema{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/apitag/zz_controller.go b/internal/controller/apimanagement/apitag/zz_controller.go index 1ece7f601..23976f5ed 100755 --- a/internal/controller/apimanagement/apitag/zz_controller.go +++ b/internal/controller/apimanagement/apitag/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APITag_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_api_tag"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APITag_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.APITag{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.APITag{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/apiversionset/zz_controller.go b/internal/controller/apimanagement/apiversionset/zz_controller.go index c25949e06..2f817e4a9 100755 --- a/internal/controller/apimanagement/apiversionset/zz_controller.go +++ b/internal/controller/apimanagement/apiversionset/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIVersionSet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_api_version_set"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.APIVersionSet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.APIVersionSet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.APIVersionSet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/authorizationserver/zz_controller.go b/internal/controller/apimanagement/authorizationserver/zz_controller.go index 3a8b29ec2..5f4779456 100755 --- a/internal/controller/apimanagement/authorizationserver/zz_controller.go +++ b/internal/controller/apimanagement/authorizationserver/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AuthorizationServer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_authorization_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AuthorizationServer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AuthorizationServer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AuthorizationServer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/backend/zz_controller.go b/internal/controller/apimanagement/backend/zz_controller.go index f129b5c4b..9162593fe 100755 --- a/internal/controller/apimanagement/backend/zz_controller.go +++ b/internal/controller/apimanagement/backend/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Backend_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_backend"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Backend_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Backend{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Backend{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/certificate/zz_controller.go b/internal/controller/apimanagement/certificate/zz_controller.go index 68bed35ee..054894872 100755 --- a/internal/controller/apimanagement/certificate/zz_controller.go +++ b/internal/controller/apimanagement/certificate/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Certificate_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_certificate"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Certificate_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Certificate{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Certificate{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/diagnostic/zz_controller.go b/internal/controller/apimanagement/diagnostic/zz_controller.go index 83538f2a5..abc4af6b9 100755 --- a/internal/controller/apimanagement/diagnostic/zz_controller.go +++ b/internal/controller/apimanagement/diagnostic/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Diagnostic_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_diagnostic"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Diagnostic_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Diagnostic{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Diagnostic{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/emailtemplate/zz_controller.go b/internal/controller/apimanagement/emailtemplate/zz_controller.go index 60a623779..06019e4a0 100755 --- a/internal/controller/apimanagement/emailtemplate/zz_controller.go +++ b/internal/controller/apimanagement/emailtemplate/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EmailTemplate_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_email_template"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EmailTemplate_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.EmailTemplate{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.EmailTemplate{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/gateway/zz_controller.go b/internal/controller/apimanagement/gateway/zz_controller.go index 9013a1d18..428b2e61b 100755 --- a/internal/controller/apimanagement/gateway/zz_controller.go +++ b/internal/controller/apimanagement/gateway/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Gateway_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_gateway"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Gateway_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Gateway{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Gateway{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/gatewayapi/zz_controller.go b/internal/controller/apimanagement/gatewayapi/zz_controller.go index c37fb3fcd..54759a946 100755 --- a/internal/controller/apimanagement/gatewayapi/zz_controller.go +++ b/internal/controller/apimanagement/gatewayapi/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GatewayAPI_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_gateway_api"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GatewayAPI_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.GatewayAPI{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.GatewayAPI{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/globalschema/zz_controller.go b/internal/controller/apimanagement/globalschema/zz_controller.go index 87a2e81c7..5c583c574 100755 --- a/internal/controller/apimanagement/globalschema/zz_controller.go +++ b/internal/controller/apimanagement/globalschema/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GlobalSchema_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_global_schema"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GlobalSchema_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.GlobalSchema{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.GlobalSchema{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/identityprovideraad/zz_controller.go b/internal/controller/apimanagement/identityprovideraad/zz_controller.go index 79a0a44e3..3c9f6adfc 100755 --- a/internal/controller/apimanagement/identityprovideraad/zz_controller.go +++ b/internal/controller/apimanagement/identityprovideraad/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IdentityProviderAAD_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_identity_provider_aad"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IdentityProviderAAD_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IdentityProviderAAD{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IdentityProviderAAD{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/identityproviderfacebook/zz_controller.go b/internal/controller/apimanagement/identityproviderfacebook/zz_controller.go index eb66ac0e2..cc81973fb 100755 --- a/internal/controller/apimanagement/identityproviderfacebook/zz_controller.go +++ b/internal/controller/apimanagement/identityproviderfacebook/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IdentityProviderFacebook_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_identity_provider_facebook"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IdentityProviderFacebook_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IdentityProviderFacebook{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IdentityProviderFacebook{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/identityprovidergoogle/zz_controller.go b/internal/controller/apimanagement/identityprovidergoogle/zz_controller.go index 33119e2af..6934245ee 100755 --- a/internal/controller/apimanagement/identityprovidergoogle/zz_controller.go +++ b/internal/controller/apimanagement/identityprovidergoogle/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IdentityProviderGoogle_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_identity_provider_google"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IdentityProviderGoogle_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IdentityProviderGoogle{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IdentityProviderGoogle{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/identityprovidermicrosoft/zz_controller.go b/internal/controller/apimanagement/identityprovidermicrosoft/zz_controller.go index a69bdc60e..1558033b6 100755 --- a/internal/controller/apimanagement/identityprovidermicrosoft/zz_controller.go +++ b/internal/controller/apimanagement/identityprovidermicrosoft/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IdentityProviderMicrosoft_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_identity_provider_microsoft"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IdentityProviderMicrosoft_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IdentityProviderMicrosoft{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IdentityProviderMicrosoft{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/identityprovidertwitter/zz_controller.go b/internal/controller/apimanagement/identityprovidertwitter/zz_controller.go index c32bda1fd..90326252f 100755 --- a/internal/controller/apimanagement/identityprovidertwitter/zz_controller.go +++ b/internal/controller/apimanagement/identityprovidertwitter/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IdentityProviderTwitter_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_identity_provider_twitter"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IdentityProviderTwitter_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IdentityProviderTwitter{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IdentityProviderTwitter{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/logger/zz_controller.go b/internal/controller/apimanagement/logger/zz_controller.go index ab6c2e68a..5d830f5d5 100755 --- a/internal/controller/apimanagement/logger/zz_controller.go +++ b/internal/controller/apimanagement/logger/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Logger_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_logger"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Logger_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Logger{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Logger{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/management/zz_controller.go b/internal/controller/apimanagement/management/zz_controller.go index 7b95a02d9..075d526b3 100755 --- a/internal/controller/apimanagement/management/zz_controller.go +++ b/internal/controller/apimanagement/management/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Management{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Management{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/namedvalue/zz_controller.go b/internal/controller/apimanagement/namedvalue/zz_controller.go index 9fbbfdabc..95f6ea690 100755 --- a/internal/controller/apimanagement/namedvalue/zz_controller.go +++ b/internal/controller/apimanagement/namedvalue/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamedValue_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_named_value"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamedValue_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NamedValue{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NamedValue{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/notificationrecipientemail/zz_controller.go b/internal/controller/apimanagement/notificationrecipientemail/zz_controller.go index 33591a54c..e2493fee3 100755 --- a/internal/controller/apimanagement/notificationrecipientemail/zz_controller.go +++ b/internal/controller/apimanagement/notificationrecipientemail/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NotificationRecipientEmail_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_notification_recipient_email"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NotificationRecipientEmail_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NotificationRecipientEmail{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NotificationRecipientEmail{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/notificationrecipientuser/zz_controller.go b/internal/controller/apimanagement/notificationrecipientuser/zz_controller.go index 594ee0ef6..9d1a48bf6 100755 --- a/internal/controller/apimanagement/notificationrecipientuser/zz_controller.go +++ b/internal/controller/apimanagement/notificationrecipientuser/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NotificationRecipientUser_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_notification_recipient_user"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NotificationRecipientUser_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NotificationRecipientUser{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NotificationRecipientUser{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/openidconnectprovider/zz_controller.go b/internal/controller/apimanagement/openidconnectprovider/zz_controller.go index 17a3b7b2e..8e07c6e63 100755 --- a/internal/controller/apimanagement/openidconnectprovider/zz_controller.go +++ b/internal/controller/apimanagement/openidconnectprovider/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OpenIDConnectProvider_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_openid_connect_provider"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OpenIDConnectProvider_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OpenIDConnectProvider{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OpenIDConnectProvider{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/policy/zz_controller.go b/internal/controller/apimanagement/policy/zz_controller.go index f027904b8..e9c5b575e 100755 --- a/internal/controller/apimanagement/policy/zz_controller.go +++ b/internal/controller/apimanagement/policy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Policy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Policy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Policy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Policy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/product/zz_controller.go b/internal/controller/apimanagement/product/zz_controller.go index e4852346f..3e71edb96 100755 --- a/internal/controller/apimanagement/product/zz_controller.go +++ b/internal/controller/apimanagement/product/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Product_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_product"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Product_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Product{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Product{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/productapi/zz_controller.go b/internal/controller/apimanagement/productapi/zz_controller.go index c52bd9f7c..575ec47cc 100755 --- a/internal/controller/apimanagement/productapi/zz_controller.go +++ b/internal/controller/apimanagement/productapi/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ProductAPI_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_product_api"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ProductAPI_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ProductAPI{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ProductAPI{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/productpolicy/zz_controller.go b/internal/controller/apimanagement/productpolicy/zz_controller.go index 98e4f11ce..158adf9b5 100755 --- a/internal/controller/apimanagement/productpolicy/zz_controller.go +++ b/internal/controller/apimanagement/productpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ProductPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_product_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ProductPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ProductPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ProductPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/producttag/zz_controller.go b/internal/controller/apimanagement/producttag/zz_controller.go index 93264b579..b7d3a6a25 100755 --- a/internal/controller/apimanagement/producttag/zz_controller.go +++ b/internal/controller/apimanagement/producttag/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ProductTag_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_product_tag"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ProductTag_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ProductTag{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ProductTag{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/rediscache/zz_controller.go b/internal/controller/apimanagement/rediscache/zz_controller.go index 3b18685f4..e762033e3 100755 --- a/internal/controller/apimanagement/rediscache/zz_controller.go +++ b/internal/controller/apimanagement/rediscache/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisCache_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_redis_cache"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisCache_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RedisCache{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RedisCache{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/subscription/zz_controller.go b/internal/controller/apimanagement/subscription/zz_controller.go index b7ddd682d..4afaba45f 100755 --- a/internal/controller/apimanagement/subscription/zz_controller.go +++ b/internal/controller/apimanagement/subscription/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Subscription_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_subscription"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Subscription_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Subscription{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Subscription{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/tag/zz_controller.go b/internal/controller/apimanagement/tag/zz_controller.go index a1e0c415e..6edb8fb28 100755 --- a/internal/controller/apimanagement/tag/zz_controller.go +++ b/internal/controller/apimanagement/tag/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Tag_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_tag"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Tag_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Tag{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Tag{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/apimanagement/user/zz_controller.go b/internal/controller/apimanagement/user/zz_controller.go index 890230838..39659b0b3 100755 --- a/internal/controller/apimanagement/user/zz_controller.go +++ b/internal/controller/apimanagement/user/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.User_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_api_management_user"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.User_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.User{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.User{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appconfiguration/configuration/zz_controller.go b/internal/controller/appconfiguration/configuration/zz_controller.go index 4711950e4..cfb9dc631 100755 --- a/internal/controller/appconfiguration/configuration/zz_controller.go +++ b/internal/controller/appconfiguration/configuration/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Configuration_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_app_configuration"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Configuration_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Configuration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Configuration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudaccelerator/zz_controller.go b/internal/controller/appplatform/springcloudaccelerator/zz_controller.go index f54aef6dc..0e486fb55 100755 --- a/internal/controller/appplatform/springcloudaccelerator/zz_controller.go +++ b/internal/controller/appplatform/springcloudaccelerator/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAccelerator_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_accelerator"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAccelerator_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudAccelerator{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudAccelerator{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudactivedeployment/zz_controller.go b/internal/controller/appplatform/springcloudactivedeployment/zz_controller.go index e4cad685e..c53a36ec2 100755 --- a/internal/controller/appplatform/springcloudactivedeployment/zz_controller.go +++ b/internal/controller/appplatform/springcloudactivedeployment/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudActiveDeployment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_active_deployment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudActiveDeployment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudActiveDeployment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudActiveDeployment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudapiportal/zz_controller.go b/internal/controller/appplatform/springcloudapiportal/zz_controller.go index 17340fa6a..ac7d711d2 100755 --- a/internal/controller/appplatform/springcloudapiportal/zz_controller.go +++ b/internal/controller/appplatform/springcloudapiportal/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAPIPortal_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_api_portal"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAPIPortal_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudAPIPortal{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudAPIPortal{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudapiportalcustomdomain/zz_controller.go b/internal/controller/appplatform/springcloudapiportalcustomdomain/zz_controller.go index 96163ba51..476a95af1 100755 --- a/internal/controller/appplatform/springcloudapiportalcustomdomain/zz_controller.go +++ b/internal/controller/appplatform/springcloudapiportalcustomdomain/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAPIPortalCustomDomain_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_api_portal_custom_domain"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAPIPortalCustomDomain_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudAPIPortalCustomDomain{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudAPIPortalCustomDomain{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudapp/zz_controller.go b/internal/controller/appplatform/springcloudapp/zz_controller.go index 3825c7561..6f7c36f01 100755 --- a/internal/controller/appplatform/springcloudapp/zz_controller.go +++ b/internal/controller/appplatform/springcloudapp/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudApp_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_app"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudApp_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudApp{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudApp{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudappcosmosdbassociation/zz_controller.go b/internal/controller/appplatform/springcloudappcosmosdbassociation/zz_controller.go index 5c01b0a92..32b6085d1 100755 --- a/internal/controller/appplatform/springcloudappcosmosdbassociation/zz_controller.go +++ b/internal/controller/appplatform/springcloudappcosmosdbassociation/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAppCosmosDBAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_app_cosmosdb_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAppCosmosDBAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudAppCosmosDBAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudAppCosmosDBAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudappmysqlassociation/zz_controller.go b/internal/controller/appplatform/springcloudappmysqlassociation/zz_controller.go index 0f11dff73..8485ac77a 100755 --- a/internal/controller/appplatform/springcloudappmysqlassociation/zz_controller.go +++ b/internal/controller/appplatform/springcloudappmysqlassociation/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAppMySQLAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_app_mysql_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAppMySQLAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudAppMySQLAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudAppMySQLAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudappredisassociation/zz_controller.go b/internal/controller/appplatform/springcloudappredisassociation/zz_controller.go index 6b5559e00..d29d6a40e 100755 --- a/internal/controller/appplatform/springcloudappredisassociation/zz_controller.go +++ b/internal/controller/appplatform/springcloudappredisassociation/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAppRedisAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_app_redis_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudAppRedisAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudAppRedisAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudAppRedisAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudbuilddeployment/zz_controller.go b/internal/controller/appplatform/springcloudbuilddeployment/zz_controller.go index 1a16e0183..251bb1403 100755 --- a/internal/controller/appplatform/springcloudbuilddeployment/zz_controller.go +++ b/internal/controller/appplatform/springcloudbuilddeployment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudBuildDeployment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_build_deployment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudBuildDeployment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudBuildDeployment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudBuildDeployment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudbuilder/zz_controller.go b/internal/controller/appplatform/springcloudbuilder/zz_controller.go index fc8b70209..305fd22d2 100755 --- a/internal/controller/appplatform/springcloudbuilder/zz_controller.go +++ b/internal/controller/appplatform/springcloudbuilder/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudBuilder_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_builder"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudBuilder_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudBuilder{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudBuilder{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudbuildpackbinding/zz_controller.go b/internal/controller/appplatform/springcloudbuildpackbinding/zz_controller.go index e1ec868d8..3ca939c03 100755 --- a/internal/controller/appplatform/springcloudbuildpackbinding/zz_controller.go +++ b/internal/controller/appplatform/springcloudbuildpackbinding/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudBuildPackBinding_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_build_pack_binding"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudBuildPackBinding_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudBuildPackBinding{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudBuildPackBinding{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudcertificate/zz_controller.go b/internal/controller/appplatform/springcloudcertificate/zz_controller.go index a2834d6f5..78812d4c5 100755 --- a/internal/controller/appplatform/springcloudcertificate/zz_controller.go +++ b/internal/controller/appplatform/springcloudcertificate/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudCertificate_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_certificate"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudCertificate_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudCertificate{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudCertificate{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudconfigurationservice/zz_controller.go b/internal/controller/appplatform/springcloudconfigurationservice/zz_controller.go index 5dd2c3dcc..4dbc584bd 100755 --- a/internal/controller/appplatform/springcloudconfigurationservice/zz_controller.go +++ b/internal/controller/appplatform/springcloudconfigurationservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudConfigurationService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_configuration_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudConfigurationService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudConfigurationService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudConfigurationService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudcontainerdeployment/zz_controller.go b/internal/controller/appplatform/springcloudcontainerdeployment/zz_controller.go index 5bd5b166e..ebc62e58f 100755 --- a/internal/controller/appplatform/springcloudcontainerdeployment/zz_controller.go +++ b/internal/controller/appplatform/springcloudcontainerdeployment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudContainerDeployment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_container_deployment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudContainerDeployment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudContainerDeployment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudContainerDeployment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudcustomdomain/zz_controller.go b/internal/controller/appplatform/springcloudcustomdomain/zz_controller.go index c6672b428..6e7d0fd3a 100755 --- a/internal/controller/appplatform/springcloudcustomdomain/zz_controller.go +++ b/internal/controller/appplatform/springcloudcustomdomain/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudCustomDomain_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_custom_domain"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudCustomDomain_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudCustomDomain{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudCustomDomain{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudcustomizedaccelerator/zz_controller.go b/internal/controller/appplatform/springcloudcustomizedaccelerator/zz_controller.go index 5836126fc..c0e4344c3 100755 --- a/internal/controller/appplatform/springcloudcustomizedaccelerator/zz_controller.go +++ b/internal/controller/appplatform/springcloudcustomizedaccelerator/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudCustomizedAccelerator_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_customized_accelerator"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudCustomizedAccelerator_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudCustomizedAccelerator{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudCustomizedAccelerator{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springclouddevtoolportal/zz_controller.go b/internal/controller/appplatform/springclouddevtoolportal/zz_controller.go index 6ca8f7474..fbbd8228e 100755 --- a/internal/controller/appplatform/springclouddevtoolportal/zz_controller.go +++ b/internal/controller/appplatform/springclouddevtoolportal/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudDevToolPortal_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_dev_tool_portal"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudDevToolPortal_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudDevToolPortal{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudDevToolPortal{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudgateway/zz_controller.go b/internal/controller/appplatform/springcloudgateway/zz_controller.go index 4ced88c2d..ea047e19d 100755 --- a/internal/controller/appplatform/springcloudgateway/zz_controller.go +++ b/internal/controller/appplatform/springcloudgateway/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudGateway_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_gateway"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudGateway_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudGateway{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudGateway{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudgatewaycustomdomain/zz_controller.go b/internal/controller/appplatform/springcloudgatewaycustomdomain/zz_controller.go index 94b0eef0f..42bea9c18 100755 --- a/internal/controller/appplatform/springcloudgatewaycustomdomain/zz_controller.go +++ b/internal/controller/appplatform/springcloudgatewaycustomdomain/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudGatewayCustomDomain_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_gateway_custom_domain"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudGatewayCustomDomain_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudGatewayCustomDomain{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudGatewayCustomDomain{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudjavadeployment/zz_controller.go b/internal/controller/appplatform/springcloudjavadeployment/zz_controller.go index ed0992708..fb19958c6 100755 --- a/internal/controller/appplatform/springcloudjavadeployment/zz_controller.go +++ b/internal/controller/appplatform/springcloudjavadeployment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudJavaDeployment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_java_deployment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudJavaDeployment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudJavaDeployment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudJavaDeployment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudservice/zz_controller.go b/internal/controller/appplatform/springcloudservice/zz_controller.go index f837112ba..3f636b0bd 100755 --- a/internal/controller/appplatform/springcloudservice/zz_controller.go +++ b/internal/controller/appplatform/springcloudservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/appplatform/springcloudstorage/zz_controller.go b/internal/controller/appplatform/springcloudstorage/zz_controller.go index e1e5fb198..de7e6ef99 100755 --- a/internal/controller/appplatform/springcloudstorage/zz_controller.go +++ b/internal/controller/appplatform/springcloudstorage/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudStorage_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_storage"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudStorage_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudStorage{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudStorage{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/attestation/provider/zz_controller.go b/internal/controller/attestation/provider/zz_controller.go index f418dfcf8..380aa7bd0 100755 --- a/internal/controller/attestation/provider/zz_controller.go +++ b/internal/controller/attestation/provider/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Provider_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_attestation_provider"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Provider_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Provider{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Provider{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/authorization/managementlock/zz_controller.go b/internal/controller/authorization/managementlock/zz_controller.go index 1130c7a54..182e6bf8a 100755 --- a/internal/controller/authorization/managementlock/zz_controller.go +++ b/internal/controller/authorization/managementlock/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagementLock_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_management_lock"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagementLock_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagementLock{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagementLock{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/authorization/policydefinition/zz_controller.go b/internal/controller/authorization/policydefinition/zz_controller.go index e8fd963a8..66258dc24 100755 --- a/internal/controller/authorization/policydefinition/zz_controller.go +++ b/internal/controller/authorization/policydefinition/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PolicyDefinition_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_policy_definition"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PolicyDefinition_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PolicyDefinition{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PolicyDefinition{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/authorization/resourcegrouppolicyassignment/zz_controller.go b/internal/controller/authorization/resourcegrouppolicyassignment/zz_controller.go index 2e79faf4c..16af2fdc6 100755 --- a/internal/controller/authorization/resourcegrouppolicyassignment/zz_controller.go +++ b/internal/controller/authorization/resourcegrouppolicyassignment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceGroupPolicyAssignment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_resource_group_policy_assignment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceGroupPolicyAssignment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourceGroupPolicyAssignment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourceGroupPolicyAssignment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/authorization/resourcepolicyassignment/zz_controller.go b/internal/controller/authorization/resourcepolicyassignment/zz_controller.go index 6a02218c4..3d34a805d 100755 --- a/internal/controller/authorization/resourcepolicyassignment/zz_controller.go +++ b/internal/controller/authorization/resourcepolicyassignment/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourcePolicyAssignment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_resource_policy_assignment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourcePolicyAssignment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourcePolicyAssignment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourcePolicyAssignment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/authorization/resourcepolicyexemption/zz_controller.go b/internal/controller/authorization/resourcepolicyexemption/zz_controller.go index 4cba970c6..1ce762ffb 100755 --- a/internal/controller/authorization/resourcepolicyexemption/zz_controller.go +++ b/internal/controller/authorization/resourcepolicyexemption/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourcePolicyExemption_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_resource_policy_exemption"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourcePolicyExemption_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourcePolicyExemption{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourcePolicyExemption{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/authorization/roleassignment/zz_controller.go b/internal/controller/authorization/roleassignment/zz_controller.go index 7d166a228..550fa8731 100755 --- a/internal/controller/authorization/roleassignment/zz_controller.go +++ b/internal/controller/authorization/roleassignment/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RoleAssignment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_role_assignment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RoleAssignment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RoleAssignment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RoleAssignment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/authorization/roledefinition/zz_controller.go b/internal/controller/authorization/roledefinition/zz_controller.go index 8dd812294..ec8c1bc1f 100755 --- a/internal/controller/authorization/roledefinition/zz_controller.go +++ b/internal/controller/authorization/roledefinition/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RoleDefinition_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_role_definition"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RoleDefinition_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RoleDefinition{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RoleDefinition{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/authorization/subscriptionpolicyassignment/zz_controller.go b/internal/controller/authorization/subscriptionpolicyassignment/zz_controller.go index a625ed837..0864bb9b9 100755 --- a/internal/controller/authorization/subscriptionpolicyassignment/zz_controller.go +++ b/internal/controller/authorization/subscriptionpolicyassignment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionPolicyAssignment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_subscription_policy_assignment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionPolicyAssignment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubscriptionPolicyAssignment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubscriptionPolicyAssignment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/authorization/subscriptionpolicyexemption/zz_controller.go b/internal/controller/authorization/subscriptionpolicyexemption/zz_controller.go index 8bbf0652f..07f93c47f 100755 --- a/internal/controller/authorization/subscriptionpolicyexemption/zz_controller.go +++ b/internal/controller/authorization/subscriptionpolicyexemption/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionPolicyExemption_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_subscription_policy_exemption"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionPolicyExemption_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubscriptionPolicyExemption{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubscriptionPolicyExemption{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/account/zz_controller.go b/internal/controller/automation/account/zz_controller.go index f7f9f3f95..57f050d5d 100755 --- a/internal/controller/automation/account/zz_controller.go +++ b/internal/controller/automation/account/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Account{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Account{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/connection/zz_controller.go b/internal/controller/automation/connection/zz_controller.go index d0814e98f..3c07ab7f9 100755 --- a/internal/controller/automation/connection/zz_controller.go +++ b/internal/controller/automation/connection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Connection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Connection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Connection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Connection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/connectionclassiccertificate/zz_controller.go b/internal/controller/automation/connectionclassiccertificate/zz_controller.go index a3206f819..ff2edfc19 100755 --- a/internal/controller/automation/connectionclassiccertificate/zz_controller.go +++ b/internal/controller/automation/connectionclassiccertificate/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ConnectionClassicCertificate_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_connection_classic_certificate"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ConnectionClassicCertificate_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ConnectionClassicCertificate{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ConnectionClassicCertificate{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/connectiontype/zz_controller.go b/internal/controller/automation/connectiontype/zz_controller.go index 890d1215a..35481485f 100755 --- a/internal/controller/automation/connectiontype/zz_controller.go +++ b/internal/controller/automation/connectiontype/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ConnectionType_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_connection_type"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ConnectionType_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ConnectionType{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ConnectionType{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/credential/zz_controller.go b/internal/controller/automation/credential/zz_controller.go index 0934f8bd5..f3df9a259 100755 --- a/internal/controller/automation/credential/zz_controller.go +++ b/internal/controller/automation/credential/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Credential_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_credential"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Credential_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Credential{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Credential{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/hybridrunbookworkergroup/zz_controller.go b/internal/controller/automation/hybridrunbookworkergroup/zz_controller.go index e2f021fad..0b48aeafd 100755 --- a/internal/controller/automation/hybridrunbookworkergroup/zz_controller.go +++ b/internal/controller/automation/hybridrunbookworkergroup/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HybridRunBookWorkerGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_hybrid_runbook_worker_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HybridRunBookWorkerGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HybridRunBookWorkerGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HybridRunBookWorkerGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/module/zz_controller.go b/internal/controller/automation/module/zz_controller.go index e2ec8850c..10b0a8ea1 100755 --- a/internal/controller/automation/module/zz_controller.go +++ b/internal/controller/automation/module/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Module_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_module"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Module_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Module{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Module{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/runbook/zz_controller.go b/internal/controller/automation/runbook/zz_controller.go index 2bd960e15..1f8d64e8c 100755 --- a/internal/controller/automation/runbook/zz_controller.go +++ b/internal/controller/automation/runbook/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RunBook_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_runbook"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RunBook_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RunBook{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RunBook{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/schedule/zz_controller.go b/internal/controller/automation/schedule/zz_controller.go index df6b0809f..77a356849 100755 --- a/internal/controller/automation/schedule/zz_controller.go +++ b/internal/controller/automation/schedule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Schedule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_schedule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Schedule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Schedule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Schedule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/variablebool/zz_controller.go b/internal/controller/automation/variablebool/zz_controller.go index 0cecb17db..9fb56d092 100755 --- a/internal/controller/automation/variablebool/zz_controller.go +++ b/internal/controller/automation/variablebool/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VariableBool_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_variable_bool"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VariableBool_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VariableBool{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VariableBool{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/variabledatetime/zz_controller.go b/internal/controller/automation/variabledatetime/zz_controller.go index 7d61df944..6ab317e99 100755 --- a/internal/controller/automation/variabledatetime/zz_controller.go +++ b/internal/controller/automation/variabledatetime/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VariableDateTime_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_variable_datetime"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VariableDateTime_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VariableDateTime{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VariableDateTime{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/variableint/zz_controller.go b/internal/controller/automation/variableint/zz_controller.go index 1ab693db8..2d49f8cab 100755 --- a/internal/controller/automation/variableint/zz_controller.go +++ b/internal/controller/automation/variableint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VariableInt_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_variable_int"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VariableInt_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VariableInt{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VariableInt{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/variablestring/zz_controller.go b/internal/controller/automation/variablestring/zz_controller.go index 7886c7a9f..11660bc15 100755 --- a/internal/controller/automation/variablestring/zz_controller.go +++ b/internal/controller/automation/variablestring/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VariableString_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_variable_string"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VariableString_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VariableString{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VariableString{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/automation/webhook/zz_controller.go b/internal/controller/automation/webhook/zz_controller.go index 5e86785ff..e68138777 100755 --- a/internal/controller/automation/webhook/zz_controller.go +++ b/internal/controller/automation/webhook/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Webhook_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_automation_webhook"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Webhook_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Webhook{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Webhook{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/azure/resourcegroup/zz_controller.go b/internal/controller/azure/resourcegroup/zz_controller.go index 98f2b20f5..4936f7391 100755 --- a/internal/controller/azure/resourcegroup/zz_controller.go +++ b/internal/controller/azure/resourcegroup/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourceGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourceGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/azure/resourceproviderregistration/zz_controller.go b/internal/controller/azure/resourceproviderregistration/zz_controller.go index 7e1564893..cf2fa3b80 100755 --- a/internal/controller/azure/resourceproviderregistration/zz_controller.go +++ b/internal/controller/azure/resourceproviderregistration/zz_controller.go @@ -48,6 +48,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourceProviderRegistration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourceProviderRegistration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/azure/subscription/zz_controller.go b/internal/controller/azure/subscription/zz_controller.go index 3b7867700..fb8af0485 100755 --- a/internal/controller/azure/subscription/zz_controller.go +++ b/internal/controller/azure/subscription/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Subscription{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Subscription{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/azurestackhci/cluster/zz_controller.go b/internal/controller/azurestackhci/cluster/zz_controller.go index 0a974771b..ec14cafae 100755 --- a/internal/controller/azurestackhci/cluster/zz_controller.go +++ b/internal/controller/azurestackhci/cluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Cluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stack_hci_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Cluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Cluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Cluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/botservice/botchannelalexa/zz_controller.go b/internal/controller/botservice/botchannelalexa/zz_controller.go index c3b70d21b..c9d2450f3 100755 --- a/internal/controller/botservice/botchannelalexa/zz_controller.go +++ b/internal/controller/botservice/botchannelalexa/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelAlexa_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_bot_channel_alexa"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelAlexa_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BotChannelAlexa{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BotChannelAlexa{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/botservice/botchanneldirectline/zz_controller.go b/internal/controller/botservice/botchanneldirectline/zz_controller.go index 108d8d9fc..93daddd3e 100755 --- a/internal/controller/botservice/botchanneldirectline/zz_controller.go +++ b/internal/controller/botservice/botchanneldirectline/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelDirectLine_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_bot_channel_directline"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelDirectLine_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BotChannelDirectLine{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BotChannelDirectLine{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/botservice/botchannelline/zz_controller.go b/internal/controller/botservice/botchannelline/zz_controller.go index 3ea42de79..0bd182702 100755 --- a/internal/controller/botservice/botchannelline/zz_controller.go +++ b/internal/controller/botservice/botchannelline/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelLine_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_bot_channel_line"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelLine_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BotChannelLine{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BotChannelLine{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/botservice/botchannelmsteams/zz_controller.go b/internal/controller/botservice/botchannelmsteams/zz_controller.go index 8bc93faa4..a5db08c2b 100755 --- a/internal/controller/botservice/botchannelmsteams/zz_controller.go +++ b/internal/controller/botservice/botchannelmsteams/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelMSTeams_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_bot_channel_ms_teams"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelMSTeams_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BotChannelMSTeams{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BotChannelMSTeams{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/botservice/botchannelslack/zz_controller.go b/internal/controller/botservice/botchannelslack/zz_controller.go index ba9ef0795..546dda023 100755 --- a/internal/controller/botservice/botchannelslack/zz_controller.go +++ b/internal/controller/botservice/botchannelslack/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelSlack_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_bot_channel_slack"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelSlack_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BotChannelSlack{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BotChannelSlack{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/botservice/botchannelsms/zz_controller.go b/internal/controller/botservice/botchannelsms/zz_controller.go index f4e5f5649..8afff142d 100755 --- a/internal/controller/botservice/botchannelsms/zz_controller.go +++ b/internal/controller/botservice/botchannelsms/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelSMS_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_bot_channel_sms"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelSMS_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BotChannelSMS{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BotChannelSMS{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/botservice/botchannelsregistration/zz_controller.go b/internal/controller/botservice/botchannelsregistration/zz_controller.go index 3ec2a0cdc..3f22ad3a1 100755 --- a/internal/controller/botservice/botchannelsregistration/zz_controller.go +++ b/internal/controller/botservice/botchannelsregistration/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelsRegistration_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_bot_channels_registration"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelsRegistration_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BotChannelsRegistration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BotChannelsRegistration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/botservice/botchannelwebchat/zz_controller.go b/internal/controller/botservice/botchannelwebchat/zz_controller.go index 7d2a13d13..199caae7a 100755 --- a/internal/controller/botservice/botchannelwebchat/zz_controller.go +++ b/internal/controller/botservice/botchannelwebchat/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelWebChat_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_bot_channel_web_chat"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotChannelWebChat_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BotChannelWebChat{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BotChannelWebChat{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/botservice/botconnection/zz_controller.go b/internal/controller/botservice/botconnection/zz_controller.go index 298670e34..7f74445c2 100755 --- a/internal/controller/botservice/botconnection/zz_controller.go +++ b/internal/controller/botservice/botconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_bot_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BotConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BotConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/botservice/botwebapp/zz_controller.go b/internal/controller/botservice/botwebapp/zz_controller.go index adb089899..4641e2404 100755 --- a/internal/controller/botservice/botwebapp/zz_controller.go +++ b/internal/controller/botservice/botwebapp/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotWebApp_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_bot_web_app"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BotWebApp_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BotWebApp{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BotWebApp{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cache/rediscache/zz_controller.go b/internal/controller/cache/rediscache/zz_controller.go index f7ee3a2eb..652278e74 100755 --- a/internal/controller/cache/rediscache/zz_controller.go +++ b/internal/controller/cache/rediscache/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisCache_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_redis_cache"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisCache_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RedisCache{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RedisCache{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cache/redisenterprisecluster/zz_controller.go b/internal/controller/cache/redisenterprisecluster/zz_controller.go index 3507e6e5b..c3fd47289 100755 --- a/internal/controller/cache/redisenterprisecluster/zz_controller.go +++ b/internal/controller/cache/redisenterprisecluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisEnterpriseCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_redis_enterprise_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisEnterpriseCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RedisEnterpriseCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RedisEnterpriseCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cache/redisenterprisedatabase/zz_controller.go b/internal/controller/cache/redisenterprisedatabase/zz_controller.go index 8074bc2a8..85f28359c 100755 --- a/internal/controller/cache/redisenterprisedatabase/zz_controller.go +++ b/internal/controller/cache/redisenterprisedatabase/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisEnterpriseDatabase_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_redis_enterprise_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisEnterpriseDatabase_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RedisEnterpriseDatabase{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RedisEnterpriseDatabase{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cache/redisfirewallrule/zz_controller.go b/internal/controller/cache/redisfirewallrule/zz_controller.go index f0f3f8392..6ba8de7ee 100755 --- a/internal/controller/cache/redisfirewallrule/zz_controller.go +++ b/internal/controller/cache/redisfirewallrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisFirewallRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_redis_firewall_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisFirewallRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RedisFirewallRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RedisFirewallRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cache/redislinkedserver/zz_controller.go b/internal/controller/cache/redislinkedserver/zz_controller.go index c50628f65..f80e25205 100755 --- a/internal/controller/cache/redislinkedserver/zz_controller.go +++ b/internal/controller/cache/redislinkedserver/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisLinkedServer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_redis_linked_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RedisLinkedServer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RedisLinkedServer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RedisLinkedServer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/endpoint/zz_controller.go b/internal/controller/cdn/endpoint/zz_controller.go index 7d57f1faf..7a40df163 100755 --- a/internal/controller/cdn/endpoint/zz_controller.go +++ b/internal/controller/cdn/endpoint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Endpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Endpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Endpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Endpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/frontdoorcustomdomain/zz_controller.go b/internal/controller/cdn/frontdoorcustomdomain/zz_controller.go index 7b95463ed..677cef575 100755 --- a/internal/controller/cdn/frontdoorcustomdomain/zz_controller.go +++ b/internal/controller/cdn/frontdoorcustomdomain/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorCustomDomain_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_frontdoor_custom_domain"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorCustomDomain_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorCustomDomain{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorCustomDomain{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/frontdoorcustomdomainassociation/zz_controller.go b/internal/controller/cdn/frontdoorcustomdomainassociation/zz_controller.go index bf57ac051..5825e95b9 100755 --- a/internal/controller/cdn/frontdoorcustomdomainassociation/zz_controller.go +++ b/internal/controller/cdn/frontdoorcustomdomainassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorCustomDomainAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_frontdoor_custom_domain_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorCustomDomainAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorCustomDomainAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorCustomDomainAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/frontdoorendpoint/zz_controller.go b/internal/controller/cdn/frontdoorendpoint/zz_controller.go index eebd2e118..e2943dc15 100755 --- a/internal/controller/cdn/frontdoorendpoint/zz_controller.go +++ b/internal/controller/cdn/frontdoorendpoint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_frontdoor_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/frontdoororigin/zz_controller.go b/internal/controller/cdn/frontdoororigin/zz_controller.go index 934f68716..e08753570 100755 --- a/internal/controller/cdn/frontdoororigin/zz_controller.go +++ b/internal/controller/cdn/frontdoororigin/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorOrigin_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_frontdoor_origin"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorOrigin_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorOrigin{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorOrigin{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/frontdoororigingroup/zz_controller.go b/internal/controller/cdn/frontdoororigingroup/zz_controller.go index b5dba9fb7..d1cc30e37 100755 --- a/internal/controller/cdn/frontdoororigingroup/zz_controller.go +++ b/internal/controller/cdn/frontdoororigingroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorOriginGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_frontdoor_origin_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorOriginGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorOriginGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorOriginGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/frontdoorprofile/zz_controller.go b/internal/controller/cdn/frontdoorprofile/zz_controller.go index 2a897f6d6..e7e679906 100755 --- a/internal/controller/cdn/frontdoorprofile/zz_controller.go +++ b/internal/controller/cdn/frontdoorprofile/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorProfile_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_frontdoor_profile"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorProfile_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorProfile{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorProfile{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/frontdoorroute/zz_controller.go b/internal/controller/cdn/frontdoorroute/zz_controller.go index 86a0bdaf5..163cba66b 100755 --- a/internal/controller/cdn/frontdoorroute/zz_controller.go +++ b/internal/controller/cdn/frontdoorroute/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorRoute_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_frontdoor_route"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorRoute_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorRoute{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorRoute{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/frontdoorrule/zz_controller.go b/internal/controller/cdn/frontdoorrule/zz_controller.go index 1b2514219..1fb53a87b 100755 --- a/internal/controller/cdn/frontdoorrule/zz_controller.go +++ b/internal/controller/cdn/frontdoorrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_frontdoor_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/frontdoorruleset/zz_controller.go b/internal/controller/cdn/frontdoorruleset/zz_controller.go index d8ae2c1aa..de3d76ebc 100755 --- a/internal/controller/cdn/frontdoorruleset/zz_controller.go +++ b/internal/controller/cdn/frontdoorruleset/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorRuleSet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_frontdoor_rule_set"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorRuleSet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorRuleSet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorRuleSet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cdn/profile/zz_controller.go b/internal/controller/cdn/profile/zz_controller.go index 2e604413d..495706f71 100755 --- a/internal/controller/cdn/profile/zz_controller.go +++ b/internal/controller/cdn/profile/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Profile_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cdn_profile"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Profile_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Profile{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Profile{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/certificateregistration/appservicecertificateorder/zz_controller.go b/internal/controller/certificateregistration/appservicecertificateorder/zz_controller.go index 3d6d87366..fc29a1123 100755 --- a/internal/controller/certificateregistration/appservicecertificateorder/zz_controller.go +++ b/internal/controller/certificateregistration/appservicecertificateorder/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppServiceCertificateOrder_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_app_service_certificate_order"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppServiceCertificateOrder_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppServiceCertificateOrder{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppServiceCertificateOrder{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cognitiveservices/account/zz_controller.go b/internal/controller/cognitiveservices/account/zz_controller.go index 91ca4a3be..0d35588be 100755 --- a/internal/controller/cognitiveservices/account/zz_controller.go +++ b/internal/controller/cognitiveservices/account/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cognitive_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Account{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Account{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/communication/service/zz_controller.go b/internal/controller/communication/service/zz_controller.go index 8c06fe965..7429a1815 100755 --- a/internal/controller/communication/service/zz_controller.go +++ b/internal/controller/communication/service/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Service_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_communication_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Service_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Service{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Service{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/availabilityset/zz_controller.go b/internal/controller/compute/availabilityset/zz_controller.go index ee8867e1a..58840490d 100755 --- a/internal/controller/compute/availabilityset/zz_controller.go +++ b/internal/controller/compute/availabilityset/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AvailabilitySet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_availability_set"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AvailabilitySet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AvailabilitySet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AvailabilitySet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/capacityreservation/zz_controller.go b/internal/controller/compute/capacityreservation/zz_controller.go index e56c154fb..e2e6881f6 100755 --- a/internal/controller/compute/capacityreservation/zz_controller.go +++ b/internal/controller/compute/capacityreservation/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CapacityReservation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_capacity_reservation"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CapacityReservation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CapacityReservation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CapacityReservation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/capacityreservationgroup/zz_controller.go b/internal/controller/compute/capacityreservationgroup/zz_controller.go index 1b7d02f2c..f5202bd88 100755 --- a/internal/controller/compute/capacityreservationgroup/zz_controller.go +++ b/internal/controller/compute/capacityreservationgroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CapacityReservationGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_capacity_reservation_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CapacityReservationGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CapacityReservationGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CapacityReservationGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/dedicatedhost/zz_controller.go b/internal/controller/compute/dedicatedhost/zz_controller.go index 9ddf05114..cdaa53aa1 100755 --- a/internal/controller/compute/dedicatedhost/zz_controller.go +++ b/internal/controller/compute/dedicatedhost/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DedicatedHost_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dedicated_host"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DedicatedHost_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DedicatedHost{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DedicatedHost{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/diskaccess/zz_controller.go b/internal/controller/compute/diskaccess/zz_controller.go index d1056ebb2..3f99a1e6e 100755 --- a/internal/controller/compute/diskaccess/zz_controller.go +++ b/internal/controller/compute/diskaccess/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DiskAccess_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_disk_access"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DiskAccess_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DiskAccess{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DiskAccess{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/diskencryptionset/zz_controller.go b/internal/controller/compute/diskencryptionset/zz_controller.go index 7f71dabe7..dad21add7 100755 --- a/internal/controller/compute/diskencryptionset/zz_controller.go +++ b/internal/controller/compute/diskencryptionset/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DiskEncryptionSet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_disk_encryption_set"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DiskEncryptionSet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DiskEncryptionSet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DiskEncryptionSet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/galleryapplication/zz_controller.go b/internal/controller/compute/galleryapplication/zz_controller.go index 41857c311..01831fd00 100755 --- a/internal/controller/compute/galleryapplication/zz_controller.go +++ b/internal/controller/compute/galleryapplication/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GalleryApplication_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_gallery_application"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GalleryApplication_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.GalleryApplication{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.GalleryApplication{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/galleryapplicationversion/zz_controller.go b/internal/controller/compute/galleryapplicationversion/zz_controller.go index da5772443..366dbe6da 100755 --- a/internal/controller/compute/galleryapplicationversion/zz_controller.go +++ b/internal/controller/compute/galleryapplicationversion/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GalleryApplicationVersion_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_gallery_application_version"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GalleryApplicationVersion_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.GalleryApplicationVersion{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.GalleryApplicationVersion{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/image/zz_controller.go b/internal/controller/compute/image/zz_controller.go index 01544b3ee..9f054367b 100755 --- a/internal/controller/compute/image/zz_controller.go +++ b/internal/controller/compute/image/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Image_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_image"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Image_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Image{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Image{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/linuxvirtualmachine/zz_controller.go b/internal/controller/compute/linuxvirtualmachine/zz_controller.go index c709f64bd..346ad811f 100755 --- a/internal/controller/compute/linuxvirtualmachine/zz_controller.go +++ b/internal/controller/compute/linuxvirtualmachine/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxVirtualMachine_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_linux_virtual_machine"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxVirtualMachine_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinuxVirtualMachine{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinuxVirtualMachine{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/linuxvirtualmachinescaleset/zz_controller.go b/internal/controller/compute/linuxvirtualmachinescaleset/zz_controller.go index f93cf7be2..50289afe0 100755 --- a/internal/controller/compute/linuxvirtualmachinescaleset/zz_controller.go +++ b/internal/controller/compute/linuxvirtualmachinescaleset/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxVirtualMachineScaleSet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_linux_virtual_machine_scale_set"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxVirtualMachineScaleSet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinuxVirtualMachineScaleSet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinuxVirtualMachineScaleSet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/manageddisk/zz_controller.go b/internal/controller/compute/manageddisk/zz_controller.go index 1b7eaf49f..7db810c81 100755 --- a/internal/controller/compute/manageddisk/zz_controller.go +++ b/internal/controller/compute/manageddisk/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedDisk_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_managed_disk"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedDisk_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagedDisk{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagedDisk{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/manageddisksastoken/zz_controller.go b/internal/controller/compute/manageddisksastoken/zz_controller.go index 608685eb5..822f9dea2 100755 --- a/internal/controller/compute/manageddisksastoken/zz_controller.go +++ b/internal/controller/compute/manageddisksastoken/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedDiskSASToken_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_managed_disk_sas_token"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedDiskSASToken_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagedDiskSASToken{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagedDiskSASToken{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/orchestratedvirtualmachinescaleset/zz_controller.go b/internal/controller/compute/orchestratedvirtualmachinescaleset/zz_controller.go index 07231ddf3..8fbbb8f3b 100755 --- a/internal/controller/compute/orchestratedvirtualmachinescaleset/zz_controller.go +++ b/internal/controller/compute/orchestratedvirtualmachinescaleset/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OrchestratedVirtualMachineScaleSet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_orchestrated_virtual_machine_scale_set"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OrchestratedVirtualMachineScaleSet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OrchestratedVirtualMachineScaleSet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OrchestratedVirtualMachineScaleSet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/proximityplacementgroup/zz_controller.go b/internal/controller/compute/proximityplacementgroup/zz_controller.go index 56930d079..ade6cc1e4 100755 --- a/internal/controller/compute/proximityplacementgroup/zz_controller.go +++ b/internal/controller/compute/proximityplacementgroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ProximityPlacementGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_proximity_placement_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ProximityPlacementGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ProximityPlacementGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ProximityPlacementGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/sharedimage/zz_controller.go b/internal/controller/compute/sharedimage/zz_controller.go index c7bcacf11..0c3118efc 100755 --- a/internal/controller/compute/sharedimage/zz_controller.go +++ b/internal/controller/compute/sharedimage/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SharedImage_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_shared_image"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SharedImage_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SharedImage{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SharedImage{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/sharedimagegallery/zz_controller.go b/internal/controller/compute/sharedimagegallery/zz_controller.go index 7dd6973f2..0a41e89f7 100755 --- a/internal/controller/compute/sharedimagegallery/zz_controller.go +++ b/internal/controller/compute/sharedimagegallery/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SharedImageGallery_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_shared_image_gallery"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SharedImageGallery_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SharedImageGallery{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SharedImageGallery{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/snapshot/zz_controller.go b/internal/controller/compute/snapshot/zz_controller.go index 45800cedf..a7e2be21a 100755 --- a/internal/controller/compute/snapshot/zz_controller.go +++ b/internal/controller/compute/snapshot/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Snapshot_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_snapshot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Snapshot_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Snapshot{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Snapshot{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/sshpublickey/zz_controller.go b/internal/controller/compute/sshpublickey/zz_controller.go index 857d61117..16939fb43 100755 --- a/internal/controller/compute/sshpublickey/zz_controller.go +++ b/internal/controller/compute/sshpublickey/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SSHPublicKey_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_ssh_public_key"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SSHPublicKey_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SSHPublicKey{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SSHPublicKey{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/windowsvirtualmachine/zz_controller.go b/internal/controller/compute/windowsvirtualmachine/zz_controller.go index 5b647806b..3a7e81f5b 100755 --- a/internal/controller/compute/windowsvirtualmachine/zz_controller.go +++ b/internal/controller/compute/windowsvirtualmachine/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsVirtualMachine_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_windows_virtual_machine"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsVirtualMachine_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WindowsVirtualMachine{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WindowsVirtualMachine{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/compute/windowsvirtualmachinescaleset/zz_controller.go b/internal/controller/compute/windowsvirtualmachinescaleset/zz_controller.go index 24003e16f..69df36af8 100755 --- a/internal/controller/compute/windowsvirtualmachinescaleset/zz_controller.go +++ b/internal/controller/compute/windowsvirtualmachinescaleset/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsVirtualMachineScaleSet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_windows_virtual_machine_scale_set"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsVirtualMachineScaleSet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WindowsVirtualMachineScaleSet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WindowsVirtualMachineScaleSet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/confidentialledger/ledger/zz_controller.go b/internal/controller/confidentialledger/ledger/zz_controller.go index 303a485e6..e31a6b6aa 100755 --- a/internal/controller/confidentialledger/ledger/zz_controller.go +++ b/internal/controller/confidentialledger/ledger/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Ledger_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_confidential_ledger"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Ledger_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Ledger{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Ledger{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/consumption/budgetmanagementgroup/zz_controller.go b/internal/controller/consumption/budgetmanagementgroup/zz_controller.go index 706915b94..b873133e4 100755 --- a/internal/controller/consumption/budgetmanagementgroup/zz_controller.go +++ b/internal/controller/consumption/budgetmanagementgroup/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BudgetManagementGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_consumption_budget_management_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BudgetManagementGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BudgetManagementGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BudgetManagementGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/consumption/budgetresourcegroup/zz_controller.go b/internal/controller/consumption/budgetresourcegroup/zz_controller.go index e62604ead..6d50840cf 100755 --- a/internal/controller/consumption/budgetresourcegroup/zz_controller.go +++ b/internal/controller/consumption/budgetresourcegroup/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BudgetResourceGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_consumption_budget_resource_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BudgetResourceGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BudgetResourceGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BudgetResourceGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/consumption/budgetsubscription/zz_controller.go b/internal/controller/consumption/budgetsubscription/zz_controller.go index 5492c8d8b..564c7120a 100755 --- a/internal/controller/consumption/budgetsubscription/zz_controller.go +++ b/internal/controller/consumption/budgetsubscription/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BudgetSubscription_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_consumption_budget_subscription"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BudgetSubscription_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BudgetSubscription{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BudgetSubscription{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/containerregistry/agentpool/zz_controller.go b/internal/controller/containerregistry/agentpool/zz_controller.go index 4629c9907..b62f15d85 100755 --- a/internal/controller/containerregistry/agentpool/zz_controller.go +++ b/internal/controller/containerregistry/agentpool/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AgentPool_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_container_registry_agent_pool"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AgentPool_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AgentPool{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AgentPool{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/containerregistry/containerconnectedregistry/zz_controller.go b/internal/controller/containerregistry/containerconnectedregistry/zz_controller.go index 87b4f3b41..9b3f0ba76 100755 --- a/internal/controller/containerregistry/containerconnectedregistry/zz_controller.go +++ b/internal/controller/containerregistry/containerconnectedregistry/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ContainerConnectedRegistry_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_container_connected_registry"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ContainerConnectedRegistry_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ContainerConnectedRegistry{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ContainerConnectedRegistry{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/containerregistry/registry/zz_controller.go b/internal/controller/containerregistry/registry/zz_controller.go index 3e88d7f1c..1f40cd3c4 100755 --- a/internal/controller/containerregistry/registry/zz_controller.go +++ b/internal/controller/containerregistry/registry/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Registry_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_container_registry"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Registry_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Registry{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Registry{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/containerregistry/scopemap/zz_controller.go b/internal/controller/containerregistry/scopemap/zz_controller.go index f960ac475..51f5816ee 100755 --- a/internal/controller/containerregistry/scopemap/zz_controller.go +++ b/internal/controller/containerregistry/scopemap/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ScopeMap_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_container_registry_scope_map"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ScopeMap_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ScopeMap{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ScopeMap{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/containerregistry/token/zz_controller.go b/internal/controller/containerregistry/token/zz_controller.go index c5b3b328e..2138a6ff6 100755 --- a/internal/controller/containerregistry/token/zz_controller.go +++ b/internal/controller/containerregistry/token/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Token_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_container_registry_token"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Token_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Token{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Token{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/containerregistry/tokenpassword/zz_controller.go b/internal/controller/containerregistry/tokenpassword/zz_controller.go index 8263ad21c..f627420cd 100755 --- a/internal/controller/containerregistry/tokenpassword/zz_controller.go +++ b/internal/controller/containerregistry/tokenpassword/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TokenPassword_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_container_registry_token_password"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TokenPassword_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TokenPassword{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TokenPassword{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/containerregistry/webhook/zz_controller.go b/internal/controller/containerregistry/webhook/zz_controller.go index e2dc8bf3b..c93cc1082 100755 --- a/internal/controller/containerregistry/webhook/zz_controller.go +++ b/internal/controller/containerregistry/webhook/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Webhook_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_container_registry_webhook"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Webhook_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Webhook{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Webhook{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/containerservice/kubernetescluster/zz_controller.go b/internal/controller/containerservice/kubernetescluster/zz_controller.go index f1df66a48..6a9cd3fd7 100755 --- a/internal/controller/containerservice/kubernetescluster/zz_controller.go +++ b/internal/controller/containerservice/kubernetescluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.KubernetesCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kubernetes_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.KubernetesCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.KubernetesCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.KubernetesCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/containerservice/kubernetesclusternodepool/zz_controller.go b/internal/controller/containerservice/kubernetesclusternodepool/zz_controller.go index 6406c1842..5eb10e25a 100755 --- a/internal/controller/containerservice/kubernetesclusternodepool/zz_controller.go +++ b/internal/controller/containerservice/kubernetesclusternodepool/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.KubernetesClusterNodePool_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kubernetes_cluster_node_pool"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.KubernetesClusterNodePool_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.KubernetesClusterNodePool{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.KubernetesClusterNodePool{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/containerservice/kubernetesfleetmanager/zz_controller.go b/internal/controller/containerservice/kubernetesfleetmanager/zz_controller.go index 86161b314..7ce2f8d67 100755 --- a/internal/controller/containerservice/kubernetesfleetmanager/zz_controller.go +++ b/internal/controller/containerservice/kubernetesfleetmanager/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.KubernetesFleetManager_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kubernetes_fleet_manager"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.KubernetesFleetManager_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.KubernetesFleetManager{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.KubernetesFleetManager{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/account/zz_controller.go b/internal/controller/cosmosdb/account/zz_controller.go index 3cae0c638..b191d8e19 100755 --- a/internal/controller/cosmosdb/account/zz_controller.go +++ b/internal/controller/cosmosdb/account/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Account{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Account{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/cassandracluster/zz_controller.go b/internal/controller/cosmosdb/cassandracluster/zz_controller.go index ea018b1bd..da7ba318b 100755 --- a/internal/controller/cosmosdb/cassandracluster/zz_controller.go +++ b/internal/controller/cosmosdb/cassandracluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CassandraCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_cassandra_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CassandraCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CassandraCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CassandraCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/cassandradatacenter/zz_controller.go b/internal/controller/cosmosdb/cassandradatacenter/zz_controller.go index 422101c08..cac969ad5 100755 --- a/internal/controller/cosmosdb/cassandradatacenter/zz_controller.go +++ b/internal/controller/cosmosdb/cassandradatacenter/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CassandraDatacenter_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_cassandra_datacenter"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CassandraDatacenter_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CassandraDatacenter{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CassandraDatacenter{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/cassandrakeyspace/zz_controller.go b/internal/controller/cosmosdb/cassandrakeyspace/zz_controller.go index 0efff3bad..08a8098dc 100755 --- a/internal/controller/cosmosdb/cassandrakeyspace/zz_controller.go +++ b/internal/controller/cosmosdb/cassandrakeyspace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CassandraKeySpace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_cassandra_keyspace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CassandraKeySpace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CassandraKeySpace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CassandraKeySpace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/cassandratable/zz_controller.go b/internal/controller/cosmosdb/cassandratable/zz_controller.go index 9b0653e63..87131929e 100755 --- a/internal/controller/cosmosdb/cassandratable/zz_controller.go +++ b/internal/controller/cosmosdb/cassandratable/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CassandraTable_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_cassandra_table"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CassandraTable_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CassandraTable{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CassandraTable{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/gremlindatabase/zz_controller.go b/internal/controller/cosmosdb/gremlindatabase/zz_controller.go index edf25f655..50b33baf1 100755 --- a/internal/controller/cosmosdb/gremlindatabase/zz_controller.go +++ b/internal/controller/cosmosdb/gremlindatabase/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GremlinDatabase_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_gremlin_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GremlinDatabase_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.GremlinDatabase{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.GremlinDatabase{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/gremlingraph/zz_controller.go b/internal/controller/cosmosdb/gremlingraph/zz_controller.go index afad44f6a..da6c443e5 100755 --- a/internal/controller/cosmosdb/gremlingraph/zz_controller.go +++ b/internal/controller/cosmosdb/gremlingraph/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GremlinGraph_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_gremlin_graph"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GremlinGraph_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.GremlinGraph{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.GremlinGraph{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/mongocollection/zz_controller.go b/internal/controller/cosmosdb/mongocollection/zz_controller.go index 39e3580b2..f0620a8a5 100755 --- a/internal/controller/cosmosdb/mongocollection/zz_controller.go +++ b/internal/controller/cosmosdb/mongocollection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MongoCollection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_mongo_collection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MongoCollection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MongoCollection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MongoCollection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/mongodatabase/zz_controller.go b/internal/controller/cosmosdb/mongodatabase/zz_controller.go index dc623de11..15e258567 100755 --- a/internal/controller/cosmosdb/mongodatabase/zz_controller.go +++ b/internal/controller/cosmosdb/mongodatabase/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MongoDatabase_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_mongo_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MongoDatabase_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MongoDatabase{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MongoDatabase{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/sqlcontainer/zz_controller.go b/internal/controller/cosmosdb/sqlcontainer/zz_controller.go index ab0c683a5..fcb6fa229 100755 --- a/internal/controller/cosmosdb/sqlcontainer/zz_controller.go +++ b/internal/controller/cosmosdb/sqlcontainer/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLContainer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_sql_container"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLContainer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLContainer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLContainer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/sqldatabase/zz_controller.go b/internal/controller/cosmosdb/sqldatabase/zz_controller.go index 30e6c3e5f..55fd7e674 100755 --- a/internal/controller/cosmosdb/sqldatabase/zz_controller.go +++ b/internal/controller/cosmosdb/sqldatabase/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLDatabase_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_sql_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLDatabase_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLDatabase{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLDatabase{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/sqldedicatedgateway/zz_controller.go b/internal/controller/cosmosdb/sqldedicatedgateway/zz_controller.go index c576da66d..d0bc71a42 100755 --- a/internal/controller/cosmosdb/sqldedicatedgateway/zz_controller.go +++ b/internal/controller/cosmosdb/sqldedicatedgateway/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLDedicatedGateway_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_sql_dedicated_gateway"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLDedicatedGateway_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLDedicatedGateway{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLDedicatedGateway{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/sqlfunction/zz_controller.go b/internal/controller/cosmosdb/sqlfunction/zz_controller.go index 3a9baa25c..c41df2ddb 100755 --- a/internal/controller/cosmosdb/sqlfunction/zz_controller.go +++ b/internal/controller/cosmosdb/sqlfunction/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLFunction_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_sql_function"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLFunction_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLFunction{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLFunction{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/sqlroleassignment/zz_controller.go b/internal/controller/cosmosdb/sqlroleassignment/zz_controller.go index d20ed98cd..f86b95479 100755 --- a/internal/controller/cosmosdb/sqlroleassignment/zz_controller.go +++ b/internal/controller/cosmosdb/sqlroleassignment/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLRoleAssignment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_sql_role_assignment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLRoleAssignment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLRoleAssignment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLRoleAssignment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/sqlroledefinition/zz_controller.go b/internal/controller/cosmosdb/sqlroledefinition/zz_controller.go index 6e7b812ed..2c7094772 100755 --- a/internal/controller/cosmosdb/sqlroledefinition/zz_controller.go +++ b/internal/controller/cosmosdb/sqlroledefinition/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLRoleDefinition_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_sql_role_definition"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLRoleDefinition_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLRoleDefinition{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLRoleDefinition{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/sqlstoredprocedure/zz_controller.go b/internal/controller/cosmosdb/sqlstoredprocedure/zz_controller.go index 82c4f3850..446de3d98 100755 --- a/internal/controller/cosmosdb/sqlstoredprocedure/zz_controller.go +++ b/internal/controller/cosmosdb/sqlstoredprocedure/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLStoredProcedure_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_sql_stored_procedure"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLStoredProcedure_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLStoredProcedure{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLStoredProcedure{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/sqltrigger/zz_controller.go b/internal/controller/cosmosdb/sqltrigger/zz_controller.go index ab7914b3e..452c58b7f 100755 --- a/internal/controller/cosmosdb/sqltrigger/zz_controller.go +++ b/internal/controller/cosmosdb/sqltrigger/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLTrigger_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_sql_trigger"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLTrigger_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLTrigger{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLTrigger{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/cosmosdb/table/zz_controller.go b/internal/controller/cosmosdb/table/zz_controller.go index f369480c7..05d3e2c91 100755 --- a/internal/controller/cosmosdb/table/zz_controller.go +++ b/internal/controller/cosmosdb/table/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Table_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cosmosdb_table"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Table_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Table{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Table{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/costmanagement/costanomalyalert/zz_controller.go b/internal/controller/costmanagement/costanomalyalert/zz_controller.go index d172f6b6e..9aba259bf 100755 --- a/internal/controller/costmanagement/costanomalyalert/zz_controller.go +++ b/internal/controller/costmanagement/costanomalyalert/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CostAnomalyAlert_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_cost_anomaly_alert"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CostAnomalyAlert_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CostAnomalyAlert{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CostAnomalyAlert{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/costmanagement/resourcegroupcostmanagementexport/zz_controller.go b/internal/controller/costmanagement/resourcegroupcostmanagementexport/zz_controller.go index 6eb7b2b17..2213cd7a1 100755 --- a/internal/controller/costmanagement/resourcegroupcostmanagementexport/zz_controller.go +++ b/internal/controller/costmanagement/resourcegroupcostmanagementexport/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceGroupCostManagementExport_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_resource_group_cost_management_export"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceGroupCostManagementExport_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourceGroupCostManagementExport{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourceGroupCostManagementExport{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/costmanagement/subscriptioncostmanagementexport/zz_controller.go b/internal/controller/costmanagement/subscriptioncostmanagementexport/zz_controller.go index 5f2a74734..87185237a 100755 --- a/internal/controller/costmanagement/subscriptioncostmanagementexport/zz_controller.go +++ b/internal/controller/costmanagement/subscriptioncostmanagementexport/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionCostManagementExport_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_subscription_cost_management_export"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionCostManagementExport_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubscriptionCostManagementExport{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubscriptionCostManagementExport{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/customproviders/customprovider/zz_controller.go b/internal/controller/customproviders/customprovider/zz_controller.go index a0f6e6429..9efbbf3f7 100755 --- a/internal/controller/customproviders/customprovider/zz_controller.go +++ b/internal/controller/customproviders/customprovider/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CustomProvider_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_custom_provider"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CustomProvider_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CustomProvider{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CustomProvider{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/databoxedge/device/zz_controller.go b/internal/controller/databoxedge/device/zz_controller.go index 00734c25b..ee1cea6d8 100755 --- a/internal/controller/databoxedge/device/zz_controller.go +++ b/internal/controller/databoxedge/device/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Device_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_databox_edge_device"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Device_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Device{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Device{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/databricks/accessconnector/zz_controller.go b/internal/controller/databricks/accessconnector/zz_controller.go index 4e83aad16..adb308b90 100755 --- a/internal/controller/databricks/accessconnector/zz_controller.go +++ b/internal/controller/databricks/accessconnector/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AccessConnector_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_databricks_access_connector"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AccessConnector_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AccessConnector{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AccessConnector{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/databricks/workspace/zz_controller.go b/internal/controller/databricks/workspace/zz_controller.go index 23f982f1b..e8c5b1fe8 100755 --- a/internal/controller/databricks/workspace/zz_controller.go +++ b/internal/controller/databricks/workspace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Workspace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_databricks_workspace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Workspace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Workspace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Workspace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/databricks/workspacecustomermanagedkey/zz_controller.go b/internal/controller/databricks/workspacecustomermanagedkey/zz_controller.go index 5478666c4..30c9d82f7 100755 --- a/internal/controller/databricks/workspacecustomermanagedkey/zz_controller.go +++ b/internal/controller/databricks/workspacecustomermanagedkey/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceCustomerManagedKey_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_databricks_workspace_customer_managed_key"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceCustomerManagedKey_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WorkspaceCustomerManagedKey{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WorkspaceCustomerManagedKey{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/customdataset/zz_controller.go b/internal/controller/datafactory/customdataset/zz_controller.go index 54be56d1f..d7241e9ab 100755 --- a/internal/controller/datafactory/customdataset/zz_controller.go +++ b/internal/controller/datafactory/customdataset/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CustomDataSet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_custom_dataset"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CustomDataSet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CustomDataSet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CustomDataSet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/dataflow/zz_controller.go b/internal/controller/datafactory/dataflow/zz_controller.go index 4646f9ac2..b8e4418f4 100755 --- a/internal/controller/datafactory/dataflow/zz_controller.go +++ b/internal/controller/datafactory/dataflow/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataFlow_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_data_flow"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataFlow_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataFlow{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataFlow{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasetazureblob/zz_controller.go b/internal/controller/datafactory/datasetazureblob/zz_controller.go index 2e9d08b6a..3bf62ccba 100755 --- a/internal/controller/datafactory/datasetazureblob/zz_controller.go +++ b/internal/controller/datafactory/datasetazureblob/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetAzureBlob_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_azure_blob"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetAzureBlob_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetAzureBlob{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetAzureBlob{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasetbinary/zz_controller.go b/internal/controller/datafactory/datasetbinary/zz_controller.go index d667cb543..d205317c4 100755 --- a/internal/controller/datafactory/datasetbinary/zz_controller.go +++ b/internal/controller/datafactory/datasetbinary/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetBinary_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_binary"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetBinary_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetBinary{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetBinary{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasetcosmosdbsqlapi/zz_controller.go b/internal/controller/datafactory/datasetcosmosdbsqlapi/zz_controller.go index c7fd06321..8bf6c226d 100755 --- a/internal/controller/datafactory/datasetcosmosdbsqlapi/zz_controller.go +++ b/internal/controller/datafactory/datasetcosmosdbsqlapi/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetCosmosDBSQLAPI_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_cosmosdb_sqlapi"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetCosmosDBSQLAPI_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetCosmosDBSQLAPI{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetCosmosDBSQLAPI{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasetdelimitedtext/zz_controller.go b/internal/controller/datafactory/datasetdelimitedtext/zz_controller.go index 9f6b18380..b5088ea53 100755 --- a/internal/controller/datafactory/datasetdelimitedtext/zz_controller.go +++ b/internal/controller/datafactory/datasetdelimitedtext/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetDelimitedText_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_delimited_text"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetDelimitedText_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetDelimitedText{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetDelimitedText{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasethttp/zz_controller.go b/internal/controller/datafactory/datasethttp/zz_controller.go index a04e423a9..355b28253 100755 --- a/internal/controller/datafactory/datasethttp/zz_controller.go +++ b/internal/controller/datafactory/datasethttp/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetHTTP_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_http"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetHTTP_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetHTTP{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetHTTP{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasetjson/zz_controller.go b/internal/controller/datafactory/datasetjson/zz_controller.go index 97f47c9f1..95ecbf520 100755 --- a/internal/controller/datafactory/datasetjson/zz_controller.go +++ b/internal/controller/datafactory/datasetjson/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetJSON_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_json"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetJSON_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetJSON{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetJSON{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasetmysql/zz_controller.go b/internal/controller/datafactory/datasetmysql/zz_controller.go index 2a506000b..de11e0927 100755 --- a/internal/controller/datafactory/datasetmysql/zz_controller.go +++ b/internal/controller/datafactory/datasetmysql/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetMySQL_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_mysql"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetMySQL_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetMySQL{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetMySQL{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasetparquet/zz_controller.go b/internal/controller/datafactory/datasetparquet/zz_controller.go index 0e6dbf414..f96984b32 100755 --- a/internal/controller/datafactory/datasetparquet/zz_controller.go +++ b/internal/controller/datafactory/datasetparquet/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetParquet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_parquet"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetParquet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetParquet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetParquet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasetpostgresql/zz_controller.go b/internal/controller/datafactory/datasetpostgresql/zz_controller.go index fcf2b43fb..dd2c2a222 100755 --- a/internal/controller/datafactory/datasetpostgresql/zz_controller.go +++ b/internal/controller/datafactory/datasetpostgresql/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetPostgreSQL_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_postgresql"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetPostgreSQL_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetPostgreSQL{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetPostgreSQL{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasetsnowflake/zz_controller.go b/internal/controller/datafactory/datasetsnowflake/zz_controller.go index 1623ce4d5..8d410db61 100755 --- a/internal/controller/datafactory/datasetsnowflake/zz_controller.go +++ b/internal/controller/datafactory/datasetsnowflake/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetSnowflake_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_snowflake"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetSnowflake_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetSnowflake{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetSnowflake{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/datasetsqlservertable/zz_controller.go b/internal/controller/datafactory/datasetsqlservertable/zz_controller.go index 0ae2a0b1c..61d67b2ff 100755 --- a/internal/controller/datafactory/datasetsqlservertable/zz_controller.go +++ b/internal/controller/datafactory/datasetsqlservertable/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetSQLServerTable_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_dataset_sql_server_table"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetSQLServerTable_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetSQLServerTable{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetSQLServerTable{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/factory/zz_controller.go b/internal/controller/datafactory/factory/zz_controller.go index e47440962..699420190 100755 --- a/internal/controller/datafactory/factory/zz_controller.go +++ b/internal/controller/datafactory/factory/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Factory_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Factory_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Factory{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Factory{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/integrationruntimeazure/zz_controller.go b/internal/controller/datafactory/integrationruntimeazure/zz_controller.go index cb4fe71a3..f0116f2f4 100755 --- a/internal/controller/datafactory/integrationruntimeazure/zz_controller.go +++ b/internal/controller/datafactory/integrationruntimeazure/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeAzure_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_integration_runtime_azure"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeAzure_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IntegrationRuntimeAzure{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IntegrationRuntimeAzure{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/integrationruntimeazuressis/zz_controller.go b/internal/controller/datafactory/integrationruntimeazuressis/zz_controller.go index ad2e4a3a6..c7e25f3c4 100755 --- a/internal/controller/datafactory/integrationruntimeazuressis/zz_controller.go +++ b/internal/controller/datafactory/integrationruntimeazuressis/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeAzureSSIS_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_integration_runtime_azure_ssis"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeAzureSSIS_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IntegrationRuntimeAzureSSIS{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IntegrationRuntimeAzureSSIS{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/integrationruntimemanaged/zz_controller.go b/internal/controller/datafactory/integrationruntimemanaged/zz_controller.go index fbfe65174..4b5348829 100755 --- a/internal/controller/datafactory/integrationruntimemanaged/zz_controller.go +++ b/internal/controller/datafactory/integrationruntimemanaged/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeManaged_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_integration_runtime_managed"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeManaged_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IntegrationRuntimeManaged{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IntegrationRuntimeManaged{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/integrationruntimeselfhosted/zz_controller.go b/internal/controller/datafactory/integrationruntimeselfhosted/zz_controller.go index a43c64f9c..c3bed3ba1 100755 --- a/internal/controller/datafactory/integrationruntimeselfhosted/zz_controller.go +++ b/internal/controller/datafactory/integrationruntimeselfhosted/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeSelfHosted_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_integration_runtime_self_hosted"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeSelfHosted_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IntegrationRuntimeSelfHosted{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IntegrationRuntimeSelfHosted{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedcustomservice/zz_controller.go b/internal/controller/datafactory/linkedcustomservice/zz_controller.go index c12fb26fc..42fd02212 100755 --- a/internal/controller/datafactory/linkedcustomservice/zz_controller.go +++ b/internal/controller/datafactory/linkedcustomservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedCustomService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_custom_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedCustomService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedCustomService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedCustomService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedserviceazureblobstorage/zz_controller.go b/internal/controller/datafactory/linkedserviceazureblobstorage/zz_controller.go index dc243567e..f70a34ac5 100755 --- a/internal/controller/datafactory/linkedserviceazureblobstorage/zz_controller.go +++ b/internal/controller/datafactory/linkedserviceazureblobstorage/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureBlobStorage_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_azure_blob_storage"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureBlobStorage_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceAzureBlobStorage{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceAzureBlobStorage{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedserviceazuredatabricks/zz_controller.go b/internal/controller/datafactory/linkedserviceazuredatabricks/zz_controller.go index f7d029a9f..83a96bb39 100755 --- a/internal/controller/datafactory/linkedserviceazuredatabricks/zz_controller.go +++ b/internal/controller/datafactory/linkedserviceazuredatabricks/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureDatabricks_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_azure_databricks"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureDatabricks_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceAzureDatabricks{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceAzureDatabricks{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedserviceazurefilestorage/zz_controller.go b/internal/controller/datafactory/linkedserviceazurefilestorage/zz_controller.go index 01924c262..bea8dc27c 100755 --- a/internal/controller/datafactory/linkedserviceazurefilestorage/zz_controller.go +++ b/internal/controller/datafactory/linkedserviceazurefilestorage/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureFileStorage_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_azure_file_storage"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureFileStorage_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceAzureFileStorage{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceAzureFileStorage{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedserviceazurefunction/zz_controller.go b/internal/controller/datafactory/linkedserviceazurefunction/zz_controller.go index 5ec93b7d3..2d52803b2 100755 --- a/internal/controller/datafactory/linkedserviceazurefunction/zz_controller.go +++ b/internal/controller/datafactory/linkedserviceazurefunction/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureFunction_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_azure_function"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureFunction_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceAzureFunction{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceAzureFunction{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedserviceazuresearch/zz_controller.go b/internal/controller/datafactory/linkedserviceazuresearch/zz_controller.go index a59326afa..0f63b8ddc 100755 --- a/internal/controller/datafactory/linkedserviceazuresearch/zz_controller.go +++ b/internal/controller/datafactory/linkedserviceazuresearch/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureSearch_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_azure_search"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureSearch_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceAzureSearch{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceAzureSearch{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedserviceazuresqldatabase/zz_controller.go b/internal/controller/datafactory/linkedserviceazuresqldatabase/zz_controller.go index 2ca6cd855..c6b2a91a3 100755 --- a/internal/controller/datafactory/linkedserviceazuresqldatabase/zz_controller.go +++ b/internal/controller/datafactory/linkedserviceazuresqldatabase/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureSQLDatabase_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_azure_sql_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureSQLDatabase_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceAzureSQLDatabase{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceAzureSQLDatabase{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedserviceazuretablestorage/zz_controller.go b/internal/controller/datafactory/linkedserviceazuretablestorage/zz_controller.go index 7cbbfd590..c68ef2dbd 100755 --- a/internal/controller/datafactory/linkedserviceazuretablestorage/zz_controller.go +++ b/internal/controller/datafactory/linkedserviceazuretablestorage/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureTableStorage_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_azure_table_storage"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceAzureTableStorage_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceAzureTableStorage{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceAzureTableStorage{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicecosmosdb/zz_controller.go b/internal/controller/datafactory/linkedservicecosmosdb/zz_controller.go index fe0428f5c..147e63bee 100755 --- a/internal/controller/datafactory/linkedservicecosmosdb/zz_controller.go +++ b/internal/controller/datafactory/linkedservicecosmosdb/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceCosmosDB_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_cosmosdb"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceCosmosDB_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceCosmosDB{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceCosmosDB{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicecosmosdbmongoapi/zz_controller.go b/internal/controller/datafactory/linkedservicecosmosdbmongoapi/zz_controller.go index a4017e110..6cdf70167 100755 --- a/internal/controller/datafactory/linkedservicecosmosdbmongoapi/zz_controller.go +++ b/internal/controller/datafactory/linkedservicecosmosdbmongoapi/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceCosmosDBMongoapi_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_cosmosdb_mongoapi"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceCosmosDBMongoapi_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceCosmosDBMongoapi{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceCosmosDBMongoapi{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicedatalakestoragegen2/zz_controller.go b/internal/controller/datafactory/linkedservicedatalakestoragegen2/zz_controller.go index df8dfa045..1828c2409 100755 --- a/internal/controller/datafactory/linkedservicedatalakestoragegen2/zz_controller.go +++ b/internal/controller/datafactory/linkedservicedatalakestoragegen2/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceDataLakeStorageGen2_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_data_lake_storage_gen2"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceDataLakeStorageGen2_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceDataLakeStorageGen2{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceDataLakeStorageGen2{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicekeyvault/zz_controller.go b/internal/controller/datafactory/linkedservicekeyvault/zz_controller.go index 68ed173e9..d69c51e3c 100755 --- a/internal/controller/datafactory/linkedservicekeyvault/zz_controller.go +++ b/internal/controller/datafactory/linkedservicekeyvault/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceKeyVault_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_key_vault"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceKeyVault_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceKeyVault{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceKeyVault{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicekusto/zz_controller.go b/internal/controller/datafactory/linkedservicekusto/zz_controller.go index 5800bd0fb..2f8b89e31 100755 --- a/internal/controller/datafactory/linkedservicekusto/zz_controller.go +++ b/internal/controller/datafactory/linkedservicekusto/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceKusto_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_kusto"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceKusto_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceKusto{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceKusto{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicemysql/zz_controller.go b/internal/controller/datafactory/linkedservicemysql/zz_controller.go index 1de797f5d..b0bd7405b 100755 --- a/internal/controller/datafactory/linkedservicemysql/zz_controller.go +++ b/internal/controller/datafactory/linkedservicemysql/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceMySQL_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_mysql"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceMySQL_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceMySQL{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceMySQL{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedserviceodata/zz_controller.go b/internal/controller/datafactory/linkedserviceodata/zz_controller.go index 854544d07..1391f90b0 100755 --- a/internal/controller/datafactory/linkedserviceodata/zz_controller.go +++ b/internal/controller/datafactory/linkedserviceodata/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceOData_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_odata"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceOData_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceOData{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceOData{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedserviceodbc/zz_controller.go b/internal/controller/datafactory/linkedserviceodbc/zz_controller.go index 43687389e..1b328f069 100755 --- a/internal/controller/datafactory/linkedserviceodbc/zz_controller.go +++ b/internal/controller/datafactory/linkedserviceodbc/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceOdbc_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_odbc"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceOdbc_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceOdbc{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceOdbc{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicepostgresql/zz_controller.go b/internal/controller/datafactory/linkedservicepostgresql/zz_controller.go index fd6be08fc..1fdbf57f1 100755 --- a/internal/controller/datafactory/linkedservicepostgresql/zz_controller.go +++ b/internal/controller/datafactory/linkedservicepostgresql/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServicePostgreSQL_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_postgresql"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServicePostgreSQL_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServicePostgreSQL{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServicePostgreSQL{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicesftp/zz_controller.go b/internal/controller/datafactory/linkedservicesftp/zz_controller.go index 658fe287e..edda5abd4 100755 --- a/internal/controller/datafactory/linkedservicesftp/zz_controller.go +++ b/internal/controller/datafactory/linkedservicesftp/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceSFTP_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_sftp"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceSFTP_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceSFTP{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceSFTP{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicesnowflake/zz_controller.go b/internal/controller/datafactory/linkedservicesnowflake/zz_controller.go index f54d83195..f910f396d 100755 --- a/internal/controller/datafactory/linkedservicesnowflake/zz_controller.go +++ b/internal/controller/datafactory/linkedservicesnowflake/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceSnowflake_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_snowflake"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceSnowflake_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceSnowflake{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceSnowflake{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicesqlserver/zz_controller.go b/internal/controller/datafactory/linkedservicesqlserver/zz_controller.go index 6909a1a28..537a10d52 100755 --- a/internal/controller/datafactory/linkedservicesqlserver/zz_controller.go +++ b/internal/controller/datafactory/linkedservicesqlserver/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceSQLServer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_sql_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceSQLServer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceSQLServer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceSQLServer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedservicesynapse/zz_controller.go b/internal/controller/datafactory/linkedservicesynapse/zz_controller.go index e9188d7c8..f4fecd4bb 100755 --- a/internal/controller/datafactory/linkedservicesynapse/zz_controller.go +++ b/internal/controller/datafactory/linkedservicesynapse/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceSynapse_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_synapse"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceSynapse_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceSynapse{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceSynapse{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/linkedserviceweb/zz_controller.go b/internal/controller/datafactory/linkedserviceweb/zz_controller.go index 0bbc8867d..221c59192 100755 --- a/internal/controller/datafactory/linkedserviceweb/zz_controller.go +++ b/internal/controller/datafactory/linkedserviceweb/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceWeb_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_linked_service_web"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedServiceWeb_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedServiceWeb{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedServiceWeb{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/managedprivateendpoint/zz_controller.go b/internal/controller/datafactory/managedprivateendpoint/zz_controller.go index a8669dcfe..1032ab311 100755 --- a/internal/controller/datafactory/managedprivateendpoint/zz_controller.go +++ b/internal/controller/datafactory/managedprivateendpoint/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedPrivateEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_managed_private_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedPrivateEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagedPrivateEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagedPrivateEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/pipeline/zz_controller.go b/internal/controller/datafactory/pipeline/zz_controller.go index b3e68b483..412d9d8f7 100755 --- a/internal/controller/datafactory/pipeline/zz_controller.go +++ b/internal/controller/datafactory/pipeline/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Pipeline_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_pipeline"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Pipeline_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Pipeline{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Pipeline{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/triggerblobevent/zz_controller.go b/internal/controller/datafactory/triggerblobevent/zz_controller.go index 5059fdc31..a28532f08 100755 --- a/internal/controller/datafactory/triggerblobevent/zz_controller.go +++ b/internal/controller/datafactory/triggerblobevent/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TriggerBlobEvent_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_trigger_blob_event"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TriggerBlobEvent_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TriggerBlobEvent{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TriggerBlobEvent{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/triggercustomevent/zz_controller.go b/internal/controller/datafactory/triggercustomevent/zz_controller.go index 9d50d6d02..50cf427d4 100755 --- a/internal/controller/datafactory/triggercustomevent/zz_controller.go +++ b/internal/controller/datafactory/triggercustomevent/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TriggerCustomEvent_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_trigger_custom_event"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TriggerCustomEvent_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TriggerCustomEvent{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TriggerCustomEvent{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datafactory/triggerschedule/zz_controller.go b/internal/controller/datafactory/triggerschedule/zz_controller.go index 64dd10f95..e9190d59c 100755 --- a/internal/controller/datafactory/triggerschedule/zz_controller.go +++ b/internal/controller/datafactory/triggerschedule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TriggerSchedule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_factory_trigger_schedule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TriggerSchedule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TriggerSchedule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TriggerSchedule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datamigration/databasemigrationproject/zz_controller.go b/internal/controller/datamigration/databasemigrationproject/zz_controller.go index 3ed7a5aa6..bb4a2a842 100755 --- a/internal/controller/datamigration/databasemigrationproject/zz_controller.go +++ b/internal/controller/datamigration/databasemigrationproject/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DatabaseMigrationProject_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_database_migration_project"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DatabaseMigrationProject_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DatabaseMigrationProject{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DatabaseMigrationProject{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datamigration/databasemigrationservice/zz_controller.go b/internal/controller/datamigration/databasemigrationservice/zz_controller.go index c53d72cb7..bb99bf7cd 100755 --- a/internal/controller/datamigration/databasemigrationservice/zz_controller.go +++ b/internal/controller/datamigration/databasemigrationservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DatabaseMigrationService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_database_migration_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DatabaseMigrationService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DatabaseMigrationService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DatabaseMigrationService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dataprotection/backupinstanceblobstorage/zz_controller.go b/internal/controller/dataprotection/backupinstanceblobstorage/zz_controller.go index 479933c84..c9f48597f 100755 --- a/internal/controller/dataprotection/backupinstanceblobstorage/zz_controller.go +++ b/internal/controller/dataprotection/backupinstanceblobstorage/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupInstanceBlobStorage_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_protection_backup_instance_blob_storage"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupInstanceBlobStorage_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupInstanceBlobStorage{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupInstanceBlobStorage{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dataprotection/backupinstancedisk/zz_controller.go b/internal/controller/dataprotection/backupinstancedisk/zz_controller.go index 6c57acddf..21ce60c7c 100755 --- a/internal/controller/dataprotection/backupinstancedisk/zz_controller.go +++ b/internal/controller/dataprotection/backupinstancedisk/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupInstanceDisk_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_protection_backup_instance_disk"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupInstanceDisk_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupInstanceDisk{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupInstanceDisk{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dataprotection/backupinstancepostgresql/zz_controller.go b/internal/controller/dataprotection/backupinstancepostgresql/zz_controller.go index dca5a1dd3..0e8f3969d 100755 --- a/internal/controller/dataprotection/backupinstancepostgresql/zz_controller.go +++ b/internal/controller/dataprotection/backupinstancepostgresql/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupInstancePostgreSQL_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_protection_backup_instance_postgresql"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupInstancePostgreSQL_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupInstancePostgreSQL{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupInstancePostgreSQL{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dataprotection/backuppolicyblobstorage/zz_controller.go b/internal/controller/dataprotection/backuppolicyblobstorage/zz_controller.go index f2993b92a..e33903841 100755 --- a/internal/controller/dataprotection/backuppolicyblobstorage/zz_controller.go +++ b/internal/controller/dataprotection/backuppolicyblobstorage/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyBlobStorage_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_protection_backup_policy_blob_storage"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyBlobStorage_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupPolicyBlobStorage{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupPolicyBlobStorage{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dataprotection/backuppolicydisk/zz_controller.go b/internal/controller/dataprotection/backuppolicydisk/zz_controller.go index d25ab474b..86f5bef6e 100755 --- a/internal/controller/dataprotection/backuppolicydisk/zz_controller.go +++ b/internal/controller/dataprotection/backuppolicydisk/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyDisk_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_protection_backup_policy_disk"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyDisk_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupPolicyDisk{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupPolicyDisk{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dataprotection/backuppolicypostgresql/zz_controller.go b/internal/controller/dataprotection/backuppolicypostgresql/zz_controller.go index 8962c62fa..c6b0a90d2 100755 --- a/internal/controller/dataprotection/backuppolicypostgresql/zz_controller.go +++ b/internal/controller/dataprotection/backuppolicypostgresql/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyPostgreSQL_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_protection_backup_policy_postgresql"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyPostgreSQL_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupPolicyPostgreSQL{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupPolicyPostgreSQL{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dataprotection/backupvault/zz_controller.go b/internal/controller/dataprotection/backupvault/zz_controller.go index 2b3ba34a9..02d4b2adb 100755 --- a/internal/controller/dataprotection/backupvault/zz_controller.go +++ b/internal/controller/dataprotection/backupvault/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupVault_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_protection_backup_vault"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupVault_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupVault{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupVault{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dataprotection/resourceguard/zz_controller.go b/internal/controller/dataprotection/resourceguard/zz_controller.go index 4f77e82c7..49761e799 100755 --- a/internal/controller/dataprotection/resourceguard/zz_controller.go +++ b/internal/controller/dataprotection/resourceguard/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceGuard_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_protection_resource_guard"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceGuard_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourceGuard{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourceGuard{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datashare/account/zz_controller.go b/internal/controller/datashare/account/zz_controller.go index 72ac19773..76bc0093b 100755 --- a/internal/controller/datashare/account/zz_controller.go +++ b/internal/controller/datashare/account/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_share_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Account{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Account{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datashare/datasetblobstorage/zz_controller.go b/internal/controller/datashare/datasetblobstorage/zz_controller.go index e55123cbe..c1bc8ab4f 100755 --- a/internal/controller/datashare/datasetblobstorage/zz_controller.go +++ b/internal/controller/datashare/datasetblobstorage/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetBlobStorage_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_share_dataset_blob_storage"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetBlobStorage_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetBlobStorage{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetBlobStorage{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datashare/datasetdatalakegen2/zz_controller.go b/internal/controller/datashare/datasetdatalakegen2/zz_controller.go index 46da29284..5e56b63af 100755 --- a/internal/controller/datashare/datasetdatalakegen2/zz_controller.go +++ b/internal/controller/datashare/datasetdatalakegen2/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetDataLakeGen2_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_share_dataset_data_lake_gen2"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetDataLakeGen2_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetDataLakeGen2{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetDataLakeGen2{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datashare/datasetkustocluster/zz_controller.go b/internal/controller/datashare/datasetkustocluster/zz_controller.go index 918b807fb..850c6d4ea 100755 --- a/internal/controller/datashare/datasetkustocluster/zz_controller.go +++ b/internal/controller/datashare/datasetkustocluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetKustoCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_share_dataset_kusto_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetKustoCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetKustoCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetKustoCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datashare/datasetkustodatabase/zz_controller.go b/internal/controller/datashare/datasetkustodatabase/zz_controller.go index c767b78a0..02797eb67 100755 --- a/internal/controller/datashare/datasetkustodatabase/zz_controller.go +++ b/internal/controller/datashare/datasetkustodatabase/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetKustoDatabase_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_share_dataset_kusto_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataSetKustoDatabase_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataSetKustoDatabase{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataSetKustoDatabase{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/datashare/datashare/zz_controller.go b/internal/controller/datashare/datashare/zz_controller.go index eed1e5307..256c93da1 100755 --- a/internal/controller/datashare/datashare/zz_controller.go +++ b/internal/controller/datashare/datashare/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataShare_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_data_share"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataShare_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataShare{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataShare{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformariadb/configuration/zz_controller.go b/internal/controller/dbformariadb/configuration/zz_controller.go index 1b20ca0b3..77da293ca 100755 --- a/internal/controller/dbformariadb/configuration/zz_controller.go +++ b/internal/controller/dbformariadb/configuration/zz_controller.go @@ -48,6 +48,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Configuration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Configuration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformariadb/database/zz_controller.go b/internal/controller/dbformariadb/database/zz_controller.go index 8c0540f09..273dce2df 100755 --- a/internal/controller/dbformariadb/database/zz_controller.go +++ b/internal/controller/dbformariadb/database/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Database_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mariadb_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Database_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Database{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Database{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformariadb/firewallrule/zz_controller.go b/internal/controller/dbformariadb/firewallrule/zz_controller.go index 155139e84..b4b063d7e 100755 --- a/internal/controller/dbformariadb/firewallrule/zz_controller.go +++ b/internal/controller/dbformariadb/firewallrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mariadb_firewall_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FirewallRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FirewallRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformariadb/server/zz_controller.go b/internal/controller/dbformariadb/server/zz_controller.go index 028d2c9c4..1f81043bc 100755 --- a/internal/controller/dbformariadb/server/zz_controller.go +++ b/internal/controller/dbformariadb/server/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Server_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mariadb_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Server_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Server{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Server{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformariadb/virtualnetworkrule/zz_controller.go b/internal/controller/dbformariadb/virtualnetworkrule/zz_controller.go index 0900374f8..b18987529 100755 --- a/internal/controller/dbformariadb/virtualnetworkrule/zz_controller.go +++ b/internal/controller/dbformariadb/virtualnetworkrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mariadb_virtual_network_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualNetworkRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualNetworkRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformysql/activedirectoryadministrator/zz_controller.go b/internal/controller/dbformysql/activedirectoryadministrator/zz_controller.go index d0da80eee..17b0868a7 100755 --- a/internal/controller/dbformysql/activedirectoryadministrator/zz_controller.go +++ b/internal/controller/dbformysql/activedirectoryadministrator/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ActiveDirectoryAdministrator_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mysql_active_directory_administrator"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ActiveDirectoryAdministrator_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ActiveDirectoryAdministrator{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ActiveDirectoryAdministrator{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformysql/configuration/zz_controller.go b/internal/controller/dbformysql/configuration/zz_controller.go index 5c4825a18..2cd0fea68 100755 --- a/internal/controller/dbformysql/configuration/zz_controller.go +++ b/internal/controller/dbformysql/configuration/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Configuration_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mysql_configuration"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Configuration_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Configuration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Configuration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformysql/database/zz_controller.go b/internal/controller/dbformysql/database/zz_controller.go index d0c019d9a..2f5bf589e 100755 --- a/internal/controller/dbformysql/database/zz_controller.go +++ b/internal/controller/dbformysql/database/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Database_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mysql_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Database_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Database{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Database{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformysql/firewallrule/zz_controller.go b/internal/controller/dbformysql/firewallrule/zz_controller.go index bddc61fd6..edeaae196 100755 --- a/internal/controller/dbformysql/firewallrule/zz_controller.go +++ b/internal/controller/dbformysql/firewallrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mysql_firewall_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FirewallRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FirewallRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformysql/flexibledatabase/zz_controller.go b/internal/controller/dbformysql/flexibledatabase/zz_controller.go index a9d20550d..bb98a1b40 100755 --- a/internal/controller/dbformysql/flexibledatabase/zz_controller.go +++ b/internal/controller/dbformysql/flexibledatabase/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleDatabase_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mysql_flexible_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleDatabase_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FlexibleDatabase{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FlexibleDatabase{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformysql/flexibleserver/zz_controller.go b/internal/controller/dbformysql/flexibleserver/zz_controller.go index ae33e0635..e2614c09e 100755 --- a/internal/controller/dbformysql/flexibleserver/zz_controller.go +++ b/internal/controller/dbformysql/flexibleserver/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mysql_flexible_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FlexibleServer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FlexibleServer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformysql/flexibleserverconfiguration/zz_controller.go b/internal/controller/dbformysql/flexibleserverconfiguration/zz_controller.go index 55d3d60c8..f4453b308 100755 --- a/internal/controller/dbformysql/flexibleserverconfiguration/zz_controller.go +++ b/internal/controller/dbformysql/flexibleserverconfiguration/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServerConfiguration_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mysql_flexible_server_configuration"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServerConfiguration_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FlexibleServerConfiguration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FlexibleServerConfiguration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformysql/flexibleserverfirewallrule/zz_controller.go b/internal/controller/dbformysql/flexibleserverfirewallrule/zz_controller.go index f76f2cce7..e8e2c8bd9 100755 --- a/internal/controller/dbformysql/flexibleserverfirewallrule/zz_controller.go +++ b/internal/controller/dbformysql/flexibleserverfirewallrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServerFirewallRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mysql_flexible_server_firewall_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServerFirewallRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FlexibleServerFirewallRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FlexibleServerFirewallRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformysql/server/zz_controller.go b/internal/controller/dbformysql/server/zz_controller.go index e5762d895..6c156b78a 100755 --- a/internal/controller/dbformysql/server/zz_controller.go +++ b/internal/controller/dbformysql/server/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Server_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mysql_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Server_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Server{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Server{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbformysql/virtualnetworkrule/zz_controller.go b/internal/controller/dbformysql/virtualnetworkrule/zz_controller.go index 78290cc3b..177174711 100755 --- a/internal/controller/dbformysql/virtualnetworkrule/zz_controller.go +++ b/internal/controller/dbformysql/virtualnetworkrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mysql_virtual_network_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualNetworkRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualNetworkRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/activedirectoryadministrator/zz_controller.go b/internal/controller/dbforpostgresql/activedirectoryadministrator/zz_controller.go index c3331219e..b25ad7284 100755 --- a/internal/controller/dbforpostgresql/activedirectoryadministrator/zz_controller.go +++ b/internal/controller/dbforpostgresql/activedirectoryadministrator/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ActiveDirectoryAdministrator_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_postgresql_active_directory_administrator"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ActiveDirectoryAdministrator_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ActiveDirectoryAdministrator{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ActiveDirectoryAdministrator{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/configuration/zz_controller.go b/internal/controller/dbforpostgresql/configuration/zz_controller.go index c8eb14ffe..f5b627405 100755 --- a/internal/controller/dbforpostgresql/configuration/zz_controller.go +++ b/internal/controller/dbforpostgresql/configuration/zz_controller.go @@ -48,6 +48,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Configuration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Configuration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/database/zz_controller.go b/internal/controller/dbforpostgresql/database/zz_controller.go index 61fc74802..a353c5b13 100755 --- a/internal/controller/dbforpostgresql/database/zz_controller.go +++ b/internal/controller/dbforpostgresql/database/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Database_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_postgresql_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Database_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Database{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Database{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/firewallrule/zz_controller.go b/internal/controller/dbforpostgresql/firewallrule/zz_controller.go index b550d2352..21454c7c1 100755 --- a/internal/controller/dbforpostgresql/firewallrule/zz_controller.go +++ b/internal/controller/dbforpostgresql/firewallrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_postgresql_firewall_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FirewallRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FirewallRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/flexibleserver/zz_controller.go b/internal/controller/dbforpostgresql/flexibleserver/zz_controller.go index f27ecf5ae..f691a125c 100755 --- a/internal/controller/dbforpostgresql/flexibleserver/zz_controller.go +++ b/internal/controller/dbforpostgresql/flexibleserver/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_postgresql_flexible_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FlexibleServer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FlexibleServer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/flexibleserverconfiguration/zz_controller.go b/internal/controller/dbforpostgresql/flexibleserverconfiguration/zz_controller.go index 784c1797d..43c010b5f 100755 --- a/internal/controller/dbforpostgresql/flexibleserverconfiguration/zz_controller.go +++ b/internal/controller/dbforpostgresql/flexibleserverconfiguration/zz_controller.go @@ -48,6 +48,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FlexibleServerConfiguration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FlexibleServerConfiguration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/flexibleserverdatabase/zz_controller.go b/internal/controller/dbforpostgresql/flexibleserverdatabase/zz_controller.go index 6452c9895..d75597253 100755 --- a/internal/controller/dbforpostgresql/flexibleserverdatabase/zz_controller.go +++ b/internal/controller/dbforpostgresql/flexibleserverdatabase/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServerDatabase_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_postgresql_flexible_server_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServerDatabase_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FlexibleServerDatabase{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FlexibleServerDatabase{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/flexibleserverfirewallrule/zz_controller.go b/internal/controller/dbforpostgresql/flexibleserverfirewallrule/zz_controller.go index e1eddd40c..883005fc8 100755 --- a/internal/controller/dbforpostgresql/flexibleserverfirewallrule/zz_controller.go +++ b/internal/controller/dbforpostgresql/flexibleserverfirewallrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServerFirewallRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_postgresql_flexible_server_firewall_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FlexibleServerFirewallRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FlexibleServerFirewallRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FlexibleServerFirewallRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/server/zz_controller.go b/internal/controller/dbforpostgresql/server/zz_controller.go index f4c405f62..160786fe9 100755 --- a/internal/controller/dbforpostgresql/server/zz_controller.go +++ b/internal/controller/dbforpostgresql/server/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Server_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_postgresql_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Server_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Server{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Server{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/serverkey/zz_controller.go b/internal/controller/dbforpostgresql/serverkey/zz_controller.go index 941c2a1af..a30a4d7a3 100755 --- a/internal/controller/dbforpostgresql/serverkey/zz_controller.go +++ b/internal/controller/dbforpostgresql/serverkey/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ServerKey_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_postgresql_server_key"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ServerKey_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ServerKey{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ServerKey{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/dbforpostgresql/virtualnetworkrule/zz_controller.go b/internal/controller/dbforpostgresql/virtualnetworkrule/zz_controller.go index 0c8abce98..3d0c3f891 100755 --- a/internal/controller/dbforpostgresql/virtualnetworkrule/zz_controller.go +++ b/internal/controller/dbforpostgresql/virtualnetworkrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_postgresql_virtual_network_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualNetworkRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualNetworkRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothub/zz_controller.go b/internal/controller/devices/iothub/zz_controller.go index d722f83a0..7ecf084cf 100755 --- a/internal/controller/devices/iothub/zz_controller.go +++ b/internal/controller/devices/iothub/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubcertificate/zz_controller.go b/internal/controller/devices/iothubcertificate/zz_controller.go index 1d140807d..41c164f79 100755 --- a/internal/controller/devices/iothubcertificate/zz_controller.go +++ b/internal/controller/devices/iothubcertificate/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubCertificate_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_certificate"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubCertificate_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubCertificate{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubCertificate{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubconsumergroup/zz_controller.go b/internal/controller/devices/iothubconsumergroup/zz_controller.go index ebe9963c1..54198b7fe 100755 --- a/internal/controller/devices/iothubconsumergroup/zz_controller.go +++ b/internal/controller/devices/iothubconsumergroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubConsumerGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_consumer_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubConsumerGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubConsumerGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubConsumerGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubdps/zz_controller.go b/internal/controller/devices/iothubdps/zz_controller.go index 437b4bf6a..7d1ee8d28 100755 --- a/internal/controller/devices/iothubdps/zz_controller.go +++ b/internal/controller/devices/iothubdps/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDPS_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_dps"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDPS_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubDPS{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubDPS{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubdpscertificate/zz_controller.go b/internal/controller/devices/iothubdpscertificate/zz_controller.go index 2bcb8bc05..738500982 100755 --- a/internal/controller/devices/iothubdpscertificate/zz_controller.go +++ b/internal/controller/devices/iothubdpscertificate/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDPSCertificate_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_dps_certificate"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDPSCertificate_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubDPSCertificate{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubDPSCertificate{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubdpssharedaccesspolicy/zz_controller.go b/internal/controller/devices/iothubdpssharedaccesspolicy/zz_controller.go index 5fbdc1f78..707539fc4 100755 --- a/internal/controller/devices/iothubdpssharedaccesspolicy/zz_controller.go +++ b/internal/controller/devices/iothubdpssharedaccesspolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDPSSharedAccessPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_dps_shared_access_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDPSSharedAccessPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubDPSSharedAccessPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubDPSSharedAccessPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubendpointeventhub/zz_controller.go b/internal/controller/devices/iothubendpointeventhub/zz_controller.go index e176eaaa5..a69f9d140 100755 --- a/internal/controller/devices/iothubendpointeventhub/zz_controller.go +++ b/internal/controller/devices/iothubendpointeventhub/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubEndpointEventHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_endpoint_eventhub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubEndpointEventHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubEndpointEventHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubEndpointEventHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubendpointservicebusqueue/zz_controller.go b/internal/controller/devices/iothubendpointservicebusqueue/zz_controller.go index 771bccad8..3d32d6e67 100755 --- a/internal/controller/devices/iothubendpointservicebusqueue/zz_controller.go +++ b/internal/controller/devices/iothubendpointservicebusqueue/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubEndpointServiceBusQueue_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_endpoint_servicebus_queue"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubEndpointServiceBusQueue_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubEndpointServiceBusQueue{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubEndpointServiceBusQueue{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubendpointservicebustopic/zz_controller.go b/internal/controller/devices/iothubendpointservicebustopic/zz_controller.go index 69d44024b..382c7bbf4 100755 --- a/internal/controller/devices/iothubendpointservicebustopic/zz_controller.go +++ b/internal/controller/devices/iothubendpointservicebustopic/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubEndpointServiceBusTopic_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_endpoint_servicebus_topic"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubEndpointServiceBusTopic_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubEndpointServiceBusTopic{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubEndpointServiceBusTopic{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubendpointstoragecontainer/zz_controller.go b/internal/controller/devices/iothubendpointstoragecontainer/zz_controller.go index 5048556d6..1bd6d67ba 100755 --- a/internal/controller/devices/iothubendpointstoragecontainer/zz_controller.go +++ b/internal/controller/devices/iothubendpointstoragecontainer/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubEndpointStorageContainer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_endpoint_storage_container"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubEndpointStorageContainer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubEndpointStorageContainer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubEndpointStorageContainer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubenrichment/zz_controller.go b/internal/controller/devices/iothubenrichment/zz_controller.go index ac95393e7..c85d74153 100755 --- a/internal/controller/devices/iothubenrichment/zz_controller.go +++ b/internal/controller/devices/iothubenrichment/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubEnrichment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_enrichment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubEnrichment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubEnrichment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubEnrichment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubfallbackroute/zz_controller.go b/internal/controller/devices/iothubfallbackroute/zz_controller.go index 0693fbfca..6520af5e3 100755 --- a/internal/controller/devices/iothubfallbackroute/zz_controller.go +++ b/internal/controller/devices/iothubfallbackroute/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubFallbackRoute_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_fallback_route"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubFallbackRoute_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubFallbackRoute{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubFallbackRoute{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubroute/zz_controller.go b/internal/controller/devices/iothubroute/zz_controller.go index fec35330e..cf39200ba 100755 --- a/internal/controller/devices/iothubroute/zz_controller.go +++ b/internal/controller/devices/iothubroute/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubRoute_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_route"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubRoute_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubRoute{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubRoute{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devices/iothubsharedaccesspolicy/zz_controller.go b/internal/controller/devices/iothubsharedaccesspolicy/zz_controller.go index f33483e3f..8cb98583b 100755 --- a/internal/controller/devices/iothubsharedaccesspolicy/zz_controller.go +++ b/internal/controller/devices/iothubsharedaccesspolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubSharedAccessPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_shared_access_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubSharedAccessPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubSharedAccessPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubSharedAccessPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/deviceupdate/iothubdeviceupdateaccount/zz_controller.go b/internal/controller/deviceupdate/iothubdeviceupdateaccount/zz_controller.go index 0156f8ea2..cebbc35c8 100755 --- a/internal/controller/deviceupdate/iothubdeviceupdateaccount/zz_controller.go +++ b/internal/controller/deviceupdate/iothubdeviceupdateaccount/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDeviceUpdateAccount_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_device_update_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDeviceUpdateAccount_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubDeviceUpdateAccount{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubDeviceUpdateAccount{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/deviceupdate/iothubdeviceupdateinstance/zz_controller.go b/internal/controller/deviceupdate/iothubdeviceupdateinstance/zz_controller.go index 377081445..2f5f634b4 100755 --- a/internal/controller/deviceupdate/iothubdeviceupdateinstance/zz_controller.go +++ b/internal/controller/deviceupdate/iothubdeviceupdateinstance/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDeviceUpdateInstance_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iothub_device_update_instance"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDeviceUpdateInstance_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubDeviceUpdateInstance{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubDeviceUpdateInstance{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devtestlab/globalvmshutdownschedule/zz_controller.go b/internal/controller/devtestlab/globalvmshutdownschedule/zz_controller.go index 5816260e3..969278be4 100755 --- a/internal/controller/devtestlab/globalvmshutdownschedule/zz_controller.go +++ b/internal/controller/devtestlab/globalvmshutdownschedule/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GlobalVMShutdownSchedule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dev_test_global_vm_shutdown_schedule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.GlobalVMShutdownSchedule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.GlobalVMShutdownSchedule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.GlobalVMShutdownSchedule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devtestlab/lab/zz_controller.go b/internal/controller/devtestlab/lab/zz_controller.go index 70f220079..c4b5e6e88 100755 --- a/internal/controller/devtestlab/lab/zz_controller.go +++ b/internal/controller/devtestlab/lab/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Lab_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dev_test_lab"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Lab_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Lab{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Lab{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devtestlab/linuxvirtualmachine/zz_controller.go b/internal/controller/devtestlab/linuxvirtualmachine/zz_controller.go index dd400d3ab..45fef4ef9 100755 --- a/internal/controller/devtestlab/linuxvirtualmachine/zz_controller.go +++ b/internal/controller/devtestlab/linuxvirtualmachine/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxVirtualMachine_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dev_test_linux_virtual_machine"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxVirtualMachine_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinuxVirtualMachine{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinuxVirtualMachine{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devtestlab/policy/zz_controller.go b/internal/controller/devtestlab/policy/zz_controller.go index 7ed7805c0..646c76fd0 100755 --- a/internal/controller/devtestlab/policy/zz_controller.go +++ b/internal/controller/devtestlab/policy/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Policy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dev_test_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Policy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Policy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Policy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devtestlab/schedule/zz_controller.go b/internal/controller/devtestlab/schedule/zz_controller.go index 55b39a9ce..4ec5b520a 100755 --- a/internal/controller/devtestlab/schedule/zz_controller.go +++ b/internal/controller/devtestlab/schedule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Schedule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dev_test_schedule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Schedule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Schedule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Schedule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devtestlab/virtualnetwork/zz_controller.go b/internal/controller/devtestlab/virtualnetwork/zz_controller.go index 95a191887..4f15d4f47 100755 --- a/internal/controller/devtestlab/virtualnetwork/zz_controller.go +++ b/internal/controller/devtestlab/virtualnetwork/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetwork_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dev_test_virtual_network"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetwork_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualNetwork{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualNetwork{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/devtestlab/windowsvirtualmachine/zz_controller.go b/internal/controller/devtestlab/windowsvirtualmachine/zz_controller.go index 5544f58bc..63bf1057e 100755 --- a/internal/controller/devtestlab/windowsvirtualmachine/zz_controller.go +++ b/internal/controller/devtestlab/windowsvirtualmachine/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsVirtualMachine_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dev_test_windows_virtual_machine"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsVirtualMachine_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WindowsVirtualMachine{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WindowsVirtualMachine{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/digitaltwins/instance/zz_controller.go b/internal/controller/digitaltwins/instance/zz_controller.go index bd4519588..0efcaafda 100755 --- a/internal/controller/digitaltwins/instance/zz_controller.go +++ b/internal/controller/digitaltwins/instance/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Instance_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_digital_twins_instance"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Instance_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Instance{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Instance{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/elastic/cloudelasticsearch/zz_controller.go b/internal/controller/elastic/cloudelasticsearch/zz_controller.go index 454e30d52..427861d82 100755 --- a/internal/controller/elastic/cloudelasticsearch/zz_controller.go +++ b/internal/controller/elastic/cloudelasticsearch/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CloudElasticsearch_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_elastic_cloud_elasticsearch"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CloudElasticsearch_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CloudElasticsearch{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CloudElasticsearch{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventgrid/domain/zz_controller.go b/internal/controller/eventgrid/domain/zz_controller.go index bd055d182..ec2d0a9bd 100755 --- a/internal/controller/eventgrid/domain/zz_controller.go +++ b/internal/controller/eventgrid/domain/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Domain_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventgrid_domain"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Domain_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Domain{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Domain{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventgrid/domaintopic/zz_controller.go b/internal/controller/eventgrid/domaintopic/zz_controller.go index 79ba59b49..83689a66c 100755 --- a/internal/controller/eventgrid/domaintopic/zz_controller.go +++ b/internal/controller/eventgrid/domaintopic/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DomainTopic_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventgrid_domain_topic"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DomainTopic_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DomainTopic{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DomainTopic{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventgrid/eventsubscription/zz_controller.go b/internal/controller/eventgrid/eventsubscription/zz_controller.go index ebc6f0cae..80c802856 100755 --- a/internal/controller/eventgrid/eventsubscription/zz_controller.go +++ b/internal/controller/eventgrid/eventsubscription/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventSubscription_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventgrid_event_subscription"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventSubscription_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.EventSubscription{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.EventSubscription{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventgrid/systemtopic/zz_controller.go b/internal/controller/eventgrid/systemtopic/zz_controller.go index 605382225..508865232 100755 --- a/internal/controller/eventgrid/systemtopic/zz_controller.go +++ b/internal/controller/eventgrid/systemtopic/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SystemTopic_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventgrid_system_topic"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SystemTopic_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SystemTopic{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SystemTopic{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventgrid/topic/zz_controller.go b/internal/controller/eventgrid/topic/zz_controller.go index 928d26be7..9f531a96c 100755 --- a/internal/controller/eventgrid/topic/zz_controller.go +++ b/internal/controller/eventgrid/topic/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Topic_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventgrid_topic"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Topic_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Topic{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Topic{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventhub/authorizationrule/zz_controller.go b/internal/controller/eventhub/authorizationrule/zz_controller.go index 1b78b189f..2c0dfb8e7 100755 --- a/internal/controller/eventhub/authorizationrule/zz_controller.go +++ b/internal/controller/eventhub/authorizationrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AuthorizationRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventhub_authorization_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AuthorizationRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AuthorizationRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AuthorizationRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventhub/consumergroup/zz_controller.go b/internal/controller/eventhub/consumergroup/zz_controller.go index cecaa8422..44bcebb07 100755 --- a/internal/controller/eventhub/consumergroup/zz_controller.go +++ b/internal/controller/eventhub/consumergroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ConsumerGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventhub_consumer_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ConsumerGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ConsumerGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ConsumerGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventhub/eventhub/zz_controller.go b/internal/controller/eventhub/eventhub/zz_controller.go index b919069c6..d26e4bae5 100755 --- a/internal/controller/eventhub/eventhub/zz_controller.go +++ b/internal/controller/eventhub/eventhub/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventhub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.EventHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.EventHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventhub/eventhubnamespace/zz_controller.go b/internal/controller/eventhub/eventhubnamespace/zz_controller.go index cb4e78c2d..a45ebd685 100755 --- a/internal/controller/eventhub/eventhubnamespace/zz_controller.go +++ b/internal/controller/eventhub/eventhubnamespace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventHubNamespace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventhub_namespace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventHubNamespace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.EventHubNamespace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.EventHubNamespace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventhub/namespaceauthorizationrule/zz_controller.go b/internal/controller/eventhub/namespaceauthorizationrule/zz_controller.go index ae627b4f6..d4c89cff4 100755 --- a/internal/controller/eventhub/namespaceauthorizationrule/zz_controller.go +++ b/internal/controller/eventhub/namespaceauthorizationrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceAuthorizationRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventhub_namespace_authorization_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceAuthorizationRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NamespaceAuthorizationRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NamespaceAuthorizationRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventhub/namespacedisasterrecoveryconfig/zz_controller.go b/internal/controller/eventhub/namespacedisasterrecoveryconfig/zz_controller.go index 4b8e752a6..d6e532254 100755 --- a/internal/controller/eventhub/namespacedisasterrecoveryconfig/zz_controller.go +++ b/internal/controller/eventhub/namespacedisasterrecoveryconfig/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceDisasterRecoveryConfig_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventhub_namespace_disaster_recovery_config"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceDisasterRecoveryConfig_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NamespaceDisasterRecoveryConfig{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NamespaceDisasterRecoveryConfig{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/eventhub/namespaceschemagroup/zz_controller.go b/internal/controller/eventhub/namespaceschemagroup/zz_controller.go index 2601b1a50..639e8aa4b 100755 --- a/internal/controller/eventhub/namespaceschemagroup/zz_controller.go +++ b/internal/controller/eventhub/namespaceschemagroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceSchemaGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_eventhub_namespace_schema_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceSchemaGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NamespaceSchemaGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NamespaceSchemaGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/fluidrelay/server/zz_controller.go b/internal/controller/fluidrelay/server/zz_controller.go index ec3208dde..cfd05f657 100755 --- a/internal/controller/fluidrelay/server/zz_controller.go +++ b/internal/controller/fluidrelay/server/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Server_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_fluid_relay_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Server_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Server{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Server{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/guestconfiguration/policyvirtualmachineconfigurationassignment/zz_controller.go b/internal/controller/guestconfiguration/policyvirtualmachineconfigurationassignment/zz_controller.go index 85e22bab1..074646900 100755 --- a/internal/controller/guestconfiguration/policyvirtualmachineconfigurationassignment/zz_controller.go +++ b/internal/controller/guestconfiguration/policyvirtualmachineconfigurationassignment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PolicyVirtualMachineConfigurationAssignment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_policy_virtual_machine_configuration_assignment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PolicyVirtualMachineConfigurationAssignment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PolicyVirtualMachineConfigurationAssignment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PolicyVirtualMachineConfigurationAssignment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/hdinsight/hadoopcluster/zz_controller.go b/internal/controller/hdinsight/hadoopcluster/zz_controller.go index a94482367..5f2f04bb7 100755 --- a/internal/controller/hdinsight/hadoopcluster/zz_controller.go +++ b/internal/controller/hdinsight/hadoopcluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HadoopCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_hdinsight_hadoop_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HadoopCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HadoopCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HadoopCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/hdinsight/hbasecluster/zz_controller.go b/internal/controller/hdinsight/hbasecluster/zz_controller.go index aac631a69..8702a7fec 100755 --- a/internal/controller/hdinsight/hbasecluster/zz_controller.go +++ b/internal/controller/hdinsight/hbasecluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HBaseCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_hdinsight_hbase_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HBaseCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HBaseCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HBaseCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/hdinsight/interactivequerycluster/zz_controller.go b/internal/controller/hdinsight/interactivequerycluster/zz_controller.go index 2338def27..8bc11eb78 100755 --- a/internal/controller/hdinsight/interactivequerycluster/zz_controller.go +++ b/internal/controller/hdinsight/interactivequerycluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.InteractiveQueryCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_hdinsight_interactive_query_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.InteractiveQueryCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.InteractiveQueryCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.InteractiveQueryCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/hdinsight/kafkacluster/zz_controller.go b/internal/controller/hdinsight/kafkacluster/zz_controller.go index a25620638..4636adca9 100755 --- a/internal/controller/hdinsight/kafkacluster/zz_controller.go +++ b/internal/controller/hdinsight/kafkacluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.KafkaCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_hdinsight_kafka_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.KafkaCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.KafkaCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.KafkaCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/hdinsight/sparkcluster/zz_controller.go b/internal/controller/hdinsight/sparkcluster/zz_controller.go index cdc3f7299..3e4c29605 100755 --- a/internal/controller/hdinsight/sparkcluster/zz_controller.go +++ b/internal/controller/hdinsight/sparkcluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SparkCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_hdinsight_spark_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SparkCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SparkCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SparkCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/healthbot/healthbot/zz_controller.go b/internal/controller/healthbot/healthbot/zz_controller.go index ed2475a66..990e2d058 100755 --- a/internal/controller/healthbot/healthbot/zz_controller.go +++ b/internal/controller/healthbot/healthbot/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthBot_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_healthbot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthBot_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HealthBot{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HealthBot{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/healthcareapis/healthcaredicomservice/zz_controller.go b/internal/controller/healthcareapis/healthcaredicomservice/zz_controller.go index 7901ee5a8..df5553640 100755 --- a/internal/controller/healthcareapis/healthcaredicomservice/zz_controller.go +++ b/internal/controller/healthcareapis/healthcaredicomservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareDICOMService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_healthcare_dicom_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareDICOMService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HealthcareDICOMService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HealthcareDICOMService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/healthcareapis/healthcarefhirservice/zz_controller.go b/internal/controller/healthcareapis/healthcarefhirservice/zz_controller.go index 4bc711c8a..b9f0338f5 100755 --- a/internal/controller/healthcareapis/healthcarefhirservice/zz_controller.go +++ b/internal/controller/healthcareapis/healthcarefhirservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareFHIRService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_healthcare_fhir_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareFHIRService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HealthcareFHIRService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HealthcareFHIRService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/healthcareapis/healthcaremedtechservice/zz_controller.go b/internal/controller/healthcareapis/healthcaremedtechservice/zz_controller.go index d0063559d..54dff6072 100755 --- a/internal/controller/healthcareapis/healthcaremedtechservice/zz_controller.go +++ b/internal/controller/healthcareapis/healthcaremedtechservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareMedtechService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_healthcare_medtech_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareMedtechService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HealthcareMedtechService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HealthcareMedtechService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/healthcareapis/healthcaremedtechservicefhirdestination/zz_controller.go b/internal/controller/healthcareapis/healthcaremedtechservicefhirdestination/zz_controller.go index fabdfdcc6..46728ff67 100755 --- a/internal/controller/healthcareapis/healthcaremedtechservicefhirdestination/zz_controller.go +++ b/internal/controller/healthcareapis/healthcaremedtechservicefhirdestination/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareMedtechServiceFHIRDestination_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_healthcare_medtech_service_fhir_destination"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareMedtechServiceFHIRDestination_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HealthcareMedtechServiceFHIRDestination{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HealthcareMedtechServiceFHIRDestination{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/healthcareapis/healthcareservice/zz_controller.go b/internal/controller/healthcareapis/healthcareservice/zz_controller.go index 242399be3..0dc753df9 100755 --- a/internal/controller/healthcareapis/healthcareservice/zz_controller.go +++ b/internal/controller/healthcareapis/healthcareservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_healthcare_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HealthcareService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HealthcareService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/healthcareapis/healthcareworkspace/zz_controller.go b/internal/controller/healthcareapis/healthcareworkspace/zz_controller.go index cea4fb422..01e0ecf40 100755 --- a/internal/controller/healthcareapis/healthcareworkspace/zz_controller.go +++ b/internal/controller/healthcareapis/healthcareworkspace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareWorkspace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_healthcare_workspace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HealthcareWorkspace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HealthcareWorkspace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HealthcareWorkspace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/applicationinsights/zz_controller.go b/internal/controller/insights/applicationinsights/zz_controller.go index 0dec692fe..432445fe5 100755 --- a/internal/controller/insights/applicationinsights/zz_controller.go +++ b/internal/controller/insights/applicationinsights/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsights_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_application_insights"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsights_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationInsights{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationInsights{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/applicationinsightsanalyticsitem/zz_controller.go b/internal/controller/insights/applicationinsightsanalyticsitem/zz_controller.go index 03a1738ed..5a0170653 100755 --- a/internal/controller/insights/applicationinsightsanalyticsitem/zz_controller.go +++ b/internal/controller/insights/applicationinsightsanalyticsitem/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsAnalyticsItem_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_application_insights_analytics_item"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsAnalyticsItem_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationInsightsAnalyticsItem{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationInsightsAnalyticsItem{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/applicationinsightsapikey/zz_controller.go b/internal/controller/insights/applicationinsightsapikey/zz_controller.go index 48b18f1a0..5e155ff8f 100755 --- a/internal/controller/insights/applicationinsightsapikey/zz_controller.go +++ b/internal/controller/insights/applicationinsightsapikey/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsAPIKey_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_application_insights_api_key"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsAPIKey_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationInsightsAPIKey{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationInsightsAPIKey{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/applicationinsightssmartdetectionrule/zz_controller.go b/internal/controller/insights/applicationinsightssmartdetectionrule/zz_controller.go index 697ba5ddb..225b3cf67 100755 --- a/internal/controller/insights/applicationinsightssmartdetectionrule/zz_controller.go +++ b/internal/controller/insights/applicationinsightssmartdetectionrule/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsSmartDetectionRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_application_insights_smart_detection_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsSmartDetectionRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationInsightsSmartDetectionRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationInsightsSmartDetectionRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/applicationinsightsstandardwebtest/zz_controller.go b/internal/controller/insights/applicationinsightsstandardwebtest/zz_controller.go index 4da80365c..77ea8a3ae 100755 --- a/internal/controller/insights/applicationinsightsstandardwebtest/zz_controller.go +++ b/internal/controller/insights/applicationinsightsstandardwebtest/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsStandardWebTest_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_application_insights_standard_web_test"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsStandardWebTest_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationInsightsStandardWebTest{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationInsightsStandardWebTest{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/applicationinsightswebtest/zz_controller.go b/internal/controller/insights/applicationinsightswebtest/zz_controller.go index ce1a268c0..79c174b13 100755 --- a/internal/controller/insights/applicationinsightswebtest/zz_controller.go +++ b/internal/controller/insights/applicationinsightswebtest/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsWebTest_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_application_insights_web_test"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsWebTest_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationInsightsWebTest{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationInsightsWebTest{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/applicationinsightsworkbook/zz_controller.go b/internal/controller/insights/applicationinsightsworkbook/zz_controller.go index 0870a9d62..05e62f215 100755 --- a/internal/controller/insights/applicationinsightsworkbook/zz_controller.go +++ b/internal/controller/insights/applicationinsightsworkbook/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsWorkbook_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_application_insights_workbook"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsWorkbook_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationInsightsWorkbook{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationInsightsWorkbook{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/applicationinsightsworkbooktemplate/zz_controller.go b/internal/controller/insights/applicationinsightsworkbooktemplate/zz_controller.go index b46cc77d2..5db80ee5c 100755 --- a/internal/controller/insights/applicationinsightsworkbooktemplate/zz_controller.go +++ b/internal/controller/insights/applicationinsightsworkbooktemplate/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsWorkbookTemplate_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_application_insights_workbook_template"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationInsightsWorkbookTemplate_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationInsightsWorkbookTemplate{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationInsightsWorkbookTemplate{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitoractiongroup/zz_controller.go b/internal/controller/insights/monitoractiongroup/zz_controller.go index 364c3a08c..a038de1bc 100755 --- a/internal/controller/insights/monitoractiongroup/zz_controller.go +++ b/internal/controller/insights/monitoractiongroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorActionGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_action_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorActionGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorActionGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorActionGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitoractivitylogalert/zz_controller.go b/internal/controller/insights/monitoractivitylogalert/zz_controller.go index 03b78651e..b7609b863 100755 --- a/internal/controller/insights/monitoractivitylogalert/zz_controller.go +++ b/internal/controller/insights/monitoractivitylogalert/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorActivityLogAlert_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_activity_log_alert"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorActivityLogAlert_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorActivityLogAlert{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorActivityLogAlert{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitorautoscalesetting/zz_controller.go b/internal/controller/insights/monitorautoscalesetting/zz_controller.go index 1d83eb7f0..a156041e0 100755 --- a/internal/controller/insights/monitorautoscalesetting/zz_controller.go +++ b/internal/controller/insights/monitorautoscalesetting/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorAutoscaleSetting_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_autoscale_setting"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorAutoscaleSetting_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorAutoscaleSetting{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorAutoscaleSetting{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitordatacollectionendpoint/zz_controller.go b/internal/controller/insights/monitordatacollectionendpoint/zz_controller.go index d0fb53ceb..52c8a8b76 100755 --- a/internal/controller/insights/monitordatacollectionendpoint/zz_controller.go +++ b/internal/controller/insights/monitordatacollectionendpoint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorDataCollectionEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_data_collection_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorDataCollectionEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorDataCollectionEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorDataCollectionEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitordatacollectionrule/zz_controller.go b/internal/controller/insights/monitordatacollectionrule/zz_controller.go index 6e06b8e70..f1c3fbaa8 100755 --- a/internal/controller/insights/monitordatacollectionrule/zz_controller.go +++ b/internal/controller/insights/monitordatacollectionrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorDataCollectionRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_data_collection_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorDataCollectionRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorDataCollectionRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorDataCollectionRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitordatacollectionruleassociation/zz_controller.go b/internal/controller/insights/monitordatacollectionruleassociation/zz_controller.go index 0045329d1..eb4832815 100755 --- a/internal/controller/insights/monitordatacollectionruleassociation/zz_controller.go +++ b/internal/controller/insights/monitordatacollectionruleassociation/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorDataCollectionRuleAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_data_collection_rule_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorDataCollectionRuleAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorDataCollectionRuleAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorDataCollectionRuleAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitormetricalert/zz_controller.go b/internal/controller/insights/monitormetricalert/zz_controller.go index 93315029e..f752c1426 100755 --- a/internal/controller/insights/monitormetricalert/zz_controller.go +++ b/internal/controller/insights/monitormetricalert/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorMetricAlert_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_metric_alert"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorMetricAlert_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorMetricAlert{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorMetricAlert{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitorprivatelinkscope/zz_controller.go b/internal/controller/insights/monitorprivatelinkscope/zz_controller.go index b24a138d8..33329cf37 100755 --- a/internal/controller/insights/monitorprivatelinkscope/zz_controller.go +++ b/internal/controller/insights/monitorprivatelinkscope/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorPrivateLinkScope_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_private_link_scope"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorPrivateLinkScope_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorPrivateLinkScope{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorPrivateLinkScope{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitorprivatelinkscopedservice/zz_controller.go b/internal/controller/insights/monitorprivatelinkscopedservice/zz_controller.go index 3257faaa0..de7565eb2 100755 --- a/internal/controller/insights/monitorprivatelinkscopedservice/zz_controller.go +++ b/internal/controller/insights/monitorprivatelinkscopedservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorPrivateLinkScopedService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_private_link_scoped_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorPrivateLinkScopedService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorPrivateLinkScopedService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorPrivateLinkScopedService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitorscheduledqueryrulesalert/zz_controller.go b/internal/controller/insights/monitorscheduledqueryrulesalert/zz_controller.go index 6c05cf25d..67dff6c48 100755 --- a/internal/controller/insights/monitorscheduledqueryrulesalert/zz_controller.go +++ b/internal/controller/insights/monitorscheduledqueryrulesalert/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorScheduledQueryRulesAlert_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_scheduled_query_rules_alert"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorScheduledQueryRulesAlert_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorScheduledQueryRulesAlert{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorScheduledQueryRulesAlert{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitorscheduledqueryrulesalertv2/zz_controller.go b/internal/controller/insights/monitorscheduledqueryrulesalertv2/zz_controller.go index 7e2715f6e..b793178c4 100755 --- a/internal/controller/insights/monitorscheduledqueryrulesalertv2/zz_controller.go +++ b/internal/controller/insights/monitorscheduledqueryrulesalertv2/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorScheduledQueryRulesAlertV2_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_scheduled_query_rules_alert_v2"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorScheduledQueryRulesAlertV2_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorScheduledQueryRulesAlertV2{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorScheduledQueryRulesAlertV2{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/insights/monitorscheduledqueryruleslog/zz_controller.go b/internal/controller/insights/monitorscheduledqueryruleslog/zz_controller.go index 6c65cc064..ce47346d1 100755 --- a/internal/controller/insights/monitorscheduledqueryruleslog/zz_controller.go +++ b/internal/controller/insights/monitorscheduledqueryruleslog/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorScheduledQueryRulesLog_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_monitor_scheduled_query_rules_log"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MonitorScheduledQueryRulesLog_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MonitorScheduledQueryRulesLog{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MonitorScheduledQueryRulesLog{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/iotcentral/application/zz_controller.go b/internal/controller/iotcentral/application/zz_controller.go index 145294a31..760093673 100755 --- a/internal/controller/iotcentral/application/zz_controller.go +++ b/internal/controller/iotcentral/application/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Application_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iotcentral_application"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Application_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Application{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Application{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/iotcentral/applicationnetworkruleset/zz_controller.go b/internal/controller/iotcentral/applicationnetworkruleset/zz_controller.go index 607ce9331..ed3cecfa9 100755 --- a/internal/controller/iotcentral/applicationnetworkruleset/zz_controller.go +++ b/internal/controller/iotcentral/applicationnetworkruleset/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationNetworkRuleSet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iotcentral_application_network_rule_set"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationNetworkRuleSet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationNetworkRuleSet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationNetworkRuleSet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/keyvault/accesspolicy/zz_controller.go b/internal/controller/keyvault/accesspolicy/zz_controller.go index 9695e9588..392310433 100755 --- a/internal/controller/keyvault/accesspolicy/zz_controller.go +++ b/internal/controller/keyvault/accesspolicy/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AccessPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_key_vault_access_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AccessPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AccessPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AccessPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/keyvault/certificate/zz_controller.go b/internal/controller/keyvault/certificate/zz_controller.go index f71b82938..dfdf551e3 100755 --- a/internal/controller/keyvault/certificate/zz_controller.go +++ b/internal/controller/keyvault/certificate/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Certificate_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_key_vault_certificate"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Certificate_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Certificate{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Certificate{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/keyvault/certificatecontacts/zz_controller.go b/internal/controller/keyvault/certificatecontacts/zz_controller.go index 1f963387a..62dbf7d3b 100755 --- a/internal/controller/keyvault/certificatecontacts/zz_controller.go +++ b/internal/controller/keyvault/certificatecontacts/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CertificateContacts_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_key_vault_certificate_contacts"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CertificateContacts_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CertificateContacts{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CertificateContacts{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/keyvault/certificateissuer/zz_controller.go b/internal/controller/keyvault/certificateissuer/zz_controller.go index fbb1326bf..17b987add 100755 --- a/internal/controller/keyvault/certificateissuer/zz_controller.go +++ b/internal/controller/keyvault/certificateissuer/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CertificateIssuer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_key_vault_certificate_issuer"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CertificateIssuer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CertificateIssuer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CertificateIssuer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/keyvault/key/zz_controller.go b/internal/controller/keyvault/key/zz_controller.go index 72f2cee89..d03ccaba8 100755 --- a/internal/controller/keyvault/key/zz_controller.go +++ b/internal/controller/keyvault/key/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Key_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_key_vault_key"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Key_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Key{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Key{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/keyvault/managedhardwaresecuritymodule/zz_controller.go b/internal/controller/keyvault/managedhardwaresecuritymodule/zz_controller.go index 3e0531b34..a088af2bb 100755 --- a/internal/controller/keyvault/managedhardwaresecuritymodule/zz_controller.go +++ b/internal/controller/keyvault/managedhardwaresecuritymodule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedHardwareSecurityModule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_key_vault_managed_hardware_security_module"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedHardwareSecurityModule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagedHardwareSecurityModule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagedHardwareSecurityModule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/keyvault/managedstorageaccount/zz_controller.go b/internal/controller/keyvault/managedstorageaccount/zz_controller.go index 140bdb283..e5027d10c 100755 --- a/internal/controller/keyvault/managedstorageaccount/zz_controller.go +++ b/internal/controller/keyvault/managedstorageaccount/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedStorageAccount_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_key_vault_managed_storage_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedStorageAccount_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagedStorageAccount{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagedStorageAccount{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/keyvault/managedstorageaccountsastokendefinition/zz_controller.go b/internal/controller/keyvault/managedstorageaccountsastokendefinition/zz_controller.go index 72baf1813..56c1215fd 100755 --- a/internal/controller/keyvault/managedstorageaccountsastokendefinition/zz_controller.go +++ b/internal/controller/keyvault/managedstorageaccountsastokendefinition/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedStorageAccountSASTokenDefinition_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_key_vault_managed_storage_account_sas_token_definition"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedStorageAccountSASTokenDefinition_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagedStorageAccountSASTokenDefinition{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagedStorageAccountSASTokenDefinition{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/keyvault/secret/zz_controller.go b/internal/controller/keyvault/secret/zz_controller.go index f2c821ae0..c716aef7f 100755 --- a/internal/controller/keyvault/secret/zz_controller.go +++ b/internal/controller/keyvault/secret/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Secret_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_key_vault_secret"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Secret_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Secret{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Secret{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/keyvault/vault/zz_controller.go b/internal/controller/keyvault/vault/zz_controller.go index fa67bf4b6..9c30b0868 100755 --- a/internal/controller/keyvault/vault/zz_controller.go +++ b/internal/controller/keyvault/vault/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Vault_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_key_vault"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Vault_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Vault{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Vault{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/kusto/attacheddatabaseconfiguration/zz_controller.go b/internal/controller/kusto/attacheddatabaseconfiguration/zz_controller.go index 947ba041b..e192f5d04 100755 --- a/internal/controller/kusto/attacheddatabaseconfiguration/zz_controller.go +++ b/internal/controller/kusto/attacheddatabaseconfiguration/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AttachedDatabaseConfiguration_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kusto_attached_database_configuration"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AttachedDatabaseConfiguration_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AttachedDatabaseConfiguration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AttachedDatabaseConfiguration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/kusto/cluster/zz_controller.go b/internal/controller/kusto/cluster/zz_controller.go index 09e3b9b7b..f8b426099 100755 --- a/internal/controller/kusto/cluster/zz_controller.go +++ b/internal/controller/kusto/cluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Cluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kusto_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Cluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Cluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Cluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/kusto/clustermanagedprivateendpoint/zz_controller.go b/internal/controller/kusto/clustermanagedprivateendpoint/zz_controller.go index 22e31f545..ad5b95571 100755 --- a/internal/controller/kusto/clustermanagedprivateendpoint/zz_controller.go +++ b/internal/controller/kusto/clustermanagedprivateendpoint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ClusterManagedPrivateEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kusto_cluster_managed_private_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ClusterManagedPrivateEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ClusterManagedPrivateEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ClusterManagedPrivateEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/kusto/clusterprincipalassignment/zz_controller.go b/internal/controller/kusto/clusterprincipalassignment/zz_controller.go index 56fea79b2..183031a00 100755 --- a/internal/controller/kusto/clusterprincipalassignment/zz_controller.go +++ b/internal/controller/kusto/clusterprincipalassignment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ClusterPrincipalAssignment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kusto_cluster_principal_assignment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ClusterPrincipalAssignment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ClusterPrincipalAssignment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ClusterPrincipalAssignment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/kusto/database/zz_controller.go b/internal/controller/kusto/database/zz_controller.go index 78217b868..f9a52cdfe 100755 --- a/internal/controller/kusto/database/zz_controller.go +++ b/internal/controller/kusto/database/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Database_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kusto_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Database_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Database{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Database{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/kusto/databaseprincipalassignment/zz_controller.go b/internal/controller/kusto/databaseprincipalassignment/zz_controller.go index ba754f2cc..cf52da2e8 100755 --- a/internal/controller/kusto/databaseprincipalassignment/zz_controller.go +++ b/internal/controller/kusto/databaseprincipalassignment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DatabasePrincipalAssignment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kusto_database_principal_assignment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DatabasePrincipalAssignment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DatabasePrincipalAssignment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DatabasePrincipalAssignment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/kusto/eventgriddataconnection/zz_controller.go b/internal/controller/kusto/eventgriddataconnection/zz_controller.go index 27a36391b..b28ca8ecd 100755 --- a/internal/controller/kusto/eventgriddataconnection/zz_controller.go +++ b/internal/controller/kusto/eventgriddataconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventGridDataConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kusto_eventgrid_data_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventGridDataConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.EventGridDataConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.EventGridDataConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/kusto/eventhubdataconnection/zz_controller.go b/internal/controller/kusto/eventhubdataconnection/zz_controller.go index ba0ec7f38..3e1ca6f23 100755 --- a/internal/controller/kusto/eventhubdataconnection/zz_controller.go +++ b/internal/controller/kusto/eventhubdataconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventHubDataConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kusto_eventhub_data_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventHubDataConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.EventHubDataConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.EventHubDataConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/kusto/iothubdataconnection/zz_controller.go b/internal/controller/kusto/iothubdataconnection/zz_controller.go index f426cc9a9..159a2c661 100755 --- a/internal/controller/kusto/iothubdataconnection/zz_controller.go +++ b/internal/controller/kusto/iothubdataconnection/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDataConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_kusto_iothub_data_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTHubDataConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTHubDataConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTHubDataConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/labservices/labservicelab/zz_controller.go b/internal/controller/labservices/labservicelab/zz_controller.go index d85126e0d..71633e8ce 100755 --- a/internal/controller/labservices/labservicelab/zz_controller.go +++ b/internal/controller/labservices/labservicelab/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LabServiceLab_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_lab_service_lab"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LabServiceLab_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LabServiceLab{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LabServiceLab{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/labservices/labserviceplan/zz_controller.go b/internal/controller/labservices/labserviceplan/zz_controller.go index 0134446d0..c0f923da8 100755 --- a/internal/controller/labservices/labserviceplan/zz_controller.go +++ b/internal/controller/labservices/labserviceplan/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LabServicePlan_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_lab_service_plan"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LabServicePlan_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LabServicePlan{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LabServicePlan{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/appactioncustom/zz_controller.go b/internal/controller/logic/appactioncustom/zz_controller.go index fa578882e..b59b0d90e 100755 --- a/internal/controller/logic/appactioncustom/zz_controller.go +++ b/internal/controller/logic/appactioncustom/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppActionCustom_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_action_custom"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppActionCustom_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppActionCustom{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppActionCustom{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/appactionhttp/zz_controller.go b/internal/controller/logic/appactionhttp/zz_controller.go index 5879fee3c..05730be9d 100755 --- a/internal/controller/logic/appactionhttp/zz_controller.go +++ b/internal/controller/logic/appactionhttp/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppActionHTTP_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_action_http"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppActionHTTP_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppActionHTTP{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppActionHTTP{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/appintegrationaccount/zz_controller.go b/internal/controller/logic/appintegrationaccount/zz_controller.go index 923e37c16..23168d31e 100755 --- a/internal/controller/logic/appintegrationaccount/zz_controller.go +++ b/internal/controller/logic/appintegrationaccount/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppIntegrationAccount_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_integration_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppIntegrationAccount_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppIntegrationAccount{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppIntegrationAccount{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/appintegrationaccountbatchconfiguration/zz_controller.go b/internal/controller/logic/appintegrationaccountbatchconfiguration/zz_controller.go index 855edb8e1..e775289cf 100755 --- a/internal/controller/logic/appintegrationaccountbatchconfiguration/zz_controller.go +++ b/internal/controller/logic/appintegrationaccountbatchconfiguration/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppIntegrationAccountBatchConfiguration_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_integration_account_batch_configuration"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppIntegrationAccountBatchConfiguration_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppIntegrationAccountBatchConfiguration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppIntegrationAccountBatchConfiguration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/appintegrationaccountpartner/zz_controller.go b/internal/controller/logic/appintegrationaccountpartner/zz_controller.go index e34fd37a6..09ab90480 100755 --- a/internal/controller/logic/appintegrationaccountpartner/zz_controller.go +++ b/internal/controller/logic/appintegrationaccountpartner/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppIntegrationAccountPartner_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_integration_account_partner"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppIntegrationAccountPartner_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppIntegrationAccountPartner{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppIntegrationAccountPartner{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/appintegrationaccountschema/zz_controller.go b/internal/controller/logic/appintegrationaccountschema/zz_controller.go index ea6e5b85a..2e49cedb2 100755 --- a/internal/controller/logic/appintegrationaccountschema/zz_controller.go +++ b/internal/controller/logic/appintegrationaccountschema/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppIntegrationAccountSchema_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_integration_account_schema"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppIntegrationAccountSchema_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppIntegrationAccountSchema{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppIntegrationAccountSchema{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/appintegrationaccountsession/zz_controller.go b/internal/controller/logic/appintegrationaccountsession/zz_controller.go index fe9640d30..da89853f1 100755 --- a/internal/controller/logic/appintegrationaccountsession/zz_controller.go +++ b/internal/controller/logic/appintegrationaccountsession/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppIntegrationAccountSession_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_integration_account_session"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppIntegrationAccountSession_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppIntegrationAccountSession{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppIntegrationAccountSession{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/apptriggercustom/zz_controller.go b/internal/controller/logic/apptriggercustom/zz_controller.go index 67865c9f1..1c6d2280c 100755 --- a/internal/controller/logic/apptriggercustom/zz_controller.go +++ b/internal/controller/logic/apptriggercustom/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppTriggerCustom_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_trigger_custom"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppTriggerCustom_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppTriggerCustom{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppTriggerCustom{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/apptriggerhttprequest/zz_controller.go b/internal/controller/logic/apptriggerhttprequest/zz_controller.go index 5175988c6..1d309f044 100755 --- a/internal/controller/logic/apptriggerhttprequest/zz_controller.go +++ b/internal/controller/logic/apptriggerhttprequest/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppTriggerHTTPRequest_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_trigger_http_request"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppTriggerHTTPRequest_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppTriggerHTTPRequest{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppTriggerHTTPRequest{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/apptriggerrecurrence/zz_controller.go b/internal/controller/logic/apptriggerrecurrence/zz_controller.go index 7df1c72c0..cbada4cd1 100755 --- a/internal/controller/logic/apptriggerrecurrence/zz_controller.go +++ b/internal/controller/logic/apptriggerrecurrence/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppTriggerRecurrence_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_trigger_recurrence"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppTriggerRecurrence_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppTriggerRecurrence{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppTriggerRecurrence{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/appworkflow/zz_controller.go b/internal/controller/logic/appworkflow/zz_controller.go index e8643911c..2d5a0ac85 100755 --- a/internal/controller/logic/appworkflow/zz_controller.go +++ b/internal/controller/logic/appworkflow/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppWorkflow_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logic_app_workflow"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppWorkflow_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppWorkflow{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppWorkflow{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logic/integrationserviceenvironment/zz_controller.go b/internal/controller/logic/integrationserviceenvironment/zz_controller.go index 59112feeb..7225e6bda 100755 --- a/internal/controller/logic/integrationserviceenvironment/zz_controller.go +++ b/internal/controller/logic/integrationserviceenvironment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationServiceEnvironment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_integration_service_environment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationServiceEnvironment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IntegrationServiceEnvironment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IntegrationServiceEnvironment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logz/monitor/zz_controller.go b/internal/controller/logz/monitor/zz_controller.go index ed96efb7f..68c9617f5 100755 --- a/internal/controller/logz/monitor/zz_controller.go +++ b/internal/controller/logz/monitor/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Monitor_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logz_monitor"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Monitor_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Monitor{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Monitor{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logz/subaccount/zz_controller.go b/internal/controller/logz/subaccount/zz_controller.go index 5dfadd4e7..2c5afcfae 100755 --- a/internal/controller/logz/subaccount/zz_controller.go +++ b/internal/controller/logz/subaccount/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubAccount_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logz_sub_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubAccount_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubAccount{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubAccount{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logz/subaccounttagrule/zz_controller.go b/internal/controller/logz/subaccounttagrule/zz_controller.go index 775dc9644..1302d3ab1 100755 --- a/internal/controller/logz/subaccounttagrule/zz_controller.go +++ b/internal/controller/logz/subaccounttagrule/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubAccountTagRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logz_sub_account_tag_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubAccountTagRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubAccountTagRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubAccountTagRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/logz/tagrule/zz_controller.go b/internal/controller/logz/tagrule/zz_controller.go index 37dcc195b..9a8214f21 100755 --- a/internal/controller/logz/tagrule/zz_controller.go +++ b/internal/controller/logz/tagrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TagRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_logz_tag_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TagRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TagRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TagRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/machinelearningservices/computecluster/zz_controller.go b/internal/controller/machinelearningservices/computecluster/zz_controller.go index 5e3b74450..77cb88a1f 100755 --- a/internal/controller/machinelearningservices/computecluster/zz_controller.go +++ b/internal/controller/machinelearningservices/computecluster/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ComputeCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_machine_learning_compute_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ComputeCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ComputeCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ComputeCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/machinelearningservices/computeinstance/zz_controller.go b/internal/controller/machinelearningservices/computeinstance/zz_controller.go index 547b02d94..174f5f64c 100755 --- a/internal/controller/machinelearningservices/computeinstance/zz_controller.go +++ b/internal/controller/machinelearningservices/computeinstance/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ComputeInstance_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_machine_learning_compute_instance"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ComputeInstance_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ComputeInstance{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ComputeInstance{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/machinelearningservices/synapsespark/zz_controller.go b/internal/controller/machinelearningservices/synapsespark/zz_controller.go index e9ee7752a..3e362e161 100755 --- a/internal/controller/machinelearningservices/synapsespark/zz_controller.go +++ b/internal/controller/machinelearningservices/synapsespark/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SynapseSpark_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_machine_learning_synapse_spark"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SynapseSpark_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SynapseSpark{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SynapseSpark{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/machinelearningservices/workspace/zz_controller.go b/internal/controller/machinelearningservices/workspace/zz_controller.go index 2414f647c..07dc8579a 100755 --- a/internal/controller/machinelearningservices/workspace/zz_controller.go +++ b/internal/controller/machinelearningservices/workspace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Workspace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_machine_learning_workspace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Workspace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Workspace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Workspace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/maintenance/maintenanceassignmentdedicatedhost/zz_controller.go b/internal/controller/maintenance/maintenanceassignmentdedicatedhost/zz_controller.go index 1409499c1..fafd2cb06 100755 --- a/internal/controller/maintenance/maintenanceassignmentdedicatedhost/zz_controller.go +++ b/internal/controller/maintenance/maintenanceassignmentdedicatedhost/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MaintenanceAssignmentDedicatedHost_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_maintenance_assignment_dedicated_host"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MaintenanceAssignmentDedicatedHost_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MaintenanceAssignmentDedicatedHost{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MaintenanceAssignmentDedicatedHost{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/maintenance/maintenanceassignmentvirtualmachine/zz_controller.go b/internal/controller/maintenance/maintenanceassignmentvirtualmachine/zz_controller.go index a5c1fce31..6079a201e 100755 --- a/internal/controller/maintenance/maintenanceassignmentvirtualmachine/zz_controller.go +++ b/internal/controller/maintenance/maintenanceassignmentvirtualmachine/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MaintenanceAssignmentVirtualMachine_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_maintenance_assignment_virtual_machine"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MaintenanceAssignmentVirtualMachine_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MaintenanceAssignmentVirtualMachine{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MaintenanceAssignmentVirtualMachine{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/maintenance/maintenanceconfiguration/zz_controller.go b/internal/controller/maintenance/maintenanceconfiguration/zz_controller.go index 82d240d4e..1689d710e 100755 --- a/internal/controller/maintenance/maintenanceconfiguration/zz_controller.go +++ b/internal/controller/maintenance/maintenanceconfiguration/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MaintenanceConfiguration_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_maintenance_configuration"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MaintenanceConfiguration_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MaintenanceConfiguration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MaintenanceConfiguration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/managedidentity/federatedidentitycredential/zz_controller.go b/internal/controller/managedidentity/federatedidentitycredential/zz_controller.go index ec0d35ed2..53e019649 100755 --- a/internal/controller/managedidentity/federatedidentitycredential/zz_controller.go +++ b/internal/controller/managedidentity/federatedidentitycredential/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FederatedIdentityCredential_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_federated_identity_credential"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FederatedIdentityCredential_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FederatedIdentityCredential{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FederatedIdentityCredential{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/managedidentity/userassignedidentity/zz_controller.go b/internal/controller/managedidentity/userassignedidentity/zz_controller.go index d27f6d392..b003c1821 100755 --- a/internal/controller/managedidentity/userassignedidentity/zz_controller.go +++ b/internal/controller/managedidentity/userassignedidentity/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.UserAssignedIdentity_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_user_assigned_identity"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.UserAssignedIdentity_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.UserAssignedIdentity{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.UserAssignedIdentity{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/management/managementgroup/zz_controller.go b/internal/controller/management/managementgroup/zz_controller.go index d8da0c997..48d0fc0a7 100755 --- a/internal/controller/management/managementgroup/zz_controller.go +++ b/internal/controller/management/managementgroup/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagementGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagementGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/management/managementgroupsubscriptionassociation/zz_controller.go b/internal/controller/management/managementgroupsubscriptionassociation/zz_controller.go index d9d3c6c33..f140688b0 100755 --- a/internal/controller/management/managementgroupsubscriptionassociation/zz_controller.go +++ b/internal/controller/management/managementgroupsubscriptionassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagementGroupSubscriptionAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_management_group_subscription_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagementGroupSubscriptionAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagementGroupSubscriptionAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagementGroupSubscriptionAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/maps/account/zz_controller.go b/internal/controller/maps/account/zz_controller.go index 95504aafd..8337443e3 100755 --- a/internal/controller/maps/account/zz_controller.go +++ b/internal/controller/maps/account/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_maps_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Account{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Account{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/maps/creator/zz_controller.go b/internal/controller/maps/creator/zz_controller.go index 44ab3e5e2..c67317113 100755 --- a/internal/controller/maps/creator/zz_controller.go +++ b/internal/controller/maps/creator/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Creator_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_maps_creator"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Creator_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Creator{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Creator{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/marketplaceordering/marketplaceagreement/zz_controller.go b/internal/controller/marketplaceordering/marketplaceagreement/zz_controller.go index 7c79b0a26..bb3b5d3e4 100755 --- a/internal/controller/marketplaceordering/marketplaceagreement/zz_controller.go +++ b/internal/controller/marketplaceordering/marketplaceagreement/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MarketplaceAgreement_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_marketplace_agreement"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MarketplaceAgreement_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MarketplaceAgreement{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MarketplaceAgreement{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/asset/zz_controller.go b/internal/controller/media/asset/zz_controller.go index e545cd61c..8695a8194 100755 --- a/internal/controller/media/asset/zz_controller.go +++ b/internal/controller/media/asset/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Asset_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_asset"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Asset_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Asset{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Asset{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/assetfilter/zz_controller.go b/internal/controller/media/assetfilter/zz_controller.go index 308b5a20d..5ae1d62a5 100755 --- a/internal/controller/media/assetfilter/zz_controller.go +++ b/internal/controller/media/assetfilter/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AssetFilter_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_asset_filter"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AssetFilter_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AssetFilter{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AssetFilter{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/contentkeypolicy/zz_controller.go b/internal/controller/media/contentkeypolicy/zz_controller.go index 8404e7daf..918eba6f6 100755 --- a/internal/controller/media/contentkeypolicy/zz_controller.go +++ b/internal/controller/media/contentkeypolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ContentKeyPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_content_key_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ContentKeyPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ContentKeyPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ContentKeyPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/job/zz_controller.go b/internal/controller/media/job/zz_controller.go index b34938faa..831c10200 100755 --- a/internal/controller/media/job/zz_controller.go +++ b/internal/controller/media/job/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Job_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_job"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Job_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Job{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Job{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/liveevent/zz_controller.go b/internal/controller/media/liveevent/zz_controller.go index 7003c4561..93d48d769 100755 --- a/internal/controller/media/liveevent/zz_controller.go +++ b/internal/controller/media/liveevent/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LiveEvent_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_live_event"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LiveEvent_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LiveEvent{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LiveEvent{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/liveeventoutput/zz_controller.go b/internal/controller/media/liveeventoutput/zz_controller.go index 69b57bcdb..c7fead022 100755 --- a/internal/controller/media/liveeventoutput/zz_controller.go +++ b/internal/controller/media/liveeventoutput/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LiveEventOutput_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_live_event_output"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LiveEventOutput_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LiveEventOutput{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LiveEventOutput{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/servicesaccount/zz_controller.go b/internal/controller/media/servicesaccount/zz_controller.go index d594cb7c3..e2329389b 100755 --- a/internal/controller/media/servicesaccount/zz_controller.go +++ b/internal/controller/media/servicesaccount/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ServicesAccount_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_services_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ServicesAccount_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ServicesAccount{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ServicesAccount{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/servicesaccountfilter/zz_controller.go b/internal/controller/media/servicesaccountfilter/zz_controller.go index 1c211107f..15c8c7d93 100755 --- a/internal/controller/media/servicesaccountfilter/zz_controller.go +++ b/internal/controller/media/servicesaccountfilter/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ServicesAccountFilter_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_services_account_filter"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ServicesAccountFilter_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ServicesAccountFilter{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ServicesAccountFilter{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/streamingendpoint/zz_controller.go b/internal/controller/media/streamingendpoint/zz_controller.go index 3855a0706..fa5593603 100755 --- a/internal/controller/media/streamingendpoint/zz_controller.go +++ b/internal/controller/media/streamingendpoint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamingEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_streaming_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamingEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.StreamingEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.StreamingEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/streaminglocator/zz_controller.go b/internal/controller/media/streaminglocator/zz_controller.go index 5169dfd2a..12c40963d 100755 --- a/internal/controller/media/streaminglocator/zz_controller.go +++ b/internal/controller/media/streaminglocator/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamingLocator_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_streaming_locator"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamingLocator_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.StreamingLocator{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.StreamingLocator{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/streamingpolicy/zz_controller.go b/internal/controller/media/streamingpolicy/zz_controller.go index 62597b3d9..fbd4495de 100755 --- a/internal/controller/media/streamingpolicy/zz_controller.go +++ b/internal/controller/media/streamingpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamingPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_streaming_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamingPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.StreamingPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.StreamingPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/media/transform/zz_controller.go b/internal/controller/media/transform/zz_controller.go index cca974761..b4cad0c34 100755 --- a/internal/controller/media/transform/zz_controller.go +++ b/internal/controller/media/transform/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Transform_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_media_transform"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Transform_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Transform{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Transform{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/mixedreality/spatialanchorsaccount/zz_controller.go b/internal/controller/mixedreality/spatialanchorsaccount/zz_controller.go index b31d42413..5c51f62a4 100755 --- a/internal/controller/mixedreality/spatialanchorsaccount/zz_controller.go +++ b/internal/controller/mixedreality/spatialanchorsaccount/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpatialAnchorsAccount_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spatial_anchors_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpatialAnchorsAccount_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpatialAnchorsAccount{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpatialAnchorsAccount{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/netapp/account/zz_controller.go b/internal/controller/netapp/account/zz_controller.go index 13f59985a..c715e7134 100755 --- a/internal/controller/netapp/account/zz_controller.go +++ b/internal/controller/netapp/account/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_netapp_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Account{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Account{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/netapp/pool/zz_controller.go b/internal/controller/netapp/pool/zz_controller.go index e62763499..75eb94dc6 100755 --- a/internal/controller/netapp/pool/zz_controller.go +++ b/internal/controller/netapp/pool/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Pool_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_netapp_pool"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Pool_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Pool{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Pool{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/netapp/snapshot/zz_controller.go b/internal/controller/netapp/snapshot/zz_controller.go index cc5d78ba3..195ac5a24 100755 --- a/internal/controller/netapp/snapshot/zz_controller.go +++ b/internal/controller/netapp/snapshot/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Snapshot_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_netapp_snapshot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Snapshot_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Snapshot{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Snapshot{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/netapp/snapshotpolicy/zz_controller.go b/internal/controller/netapp/snapshotpolicy/zz_controller.go index 90202b3c0..d0be70c92 100755 --- a/internal/controller/netapp/snapshotpolicy/zz_controller.go +++ b/internal/controller/netapp/snapshotpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SnapshotPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_netapp_snapshot_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SnapshotPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SnapshotPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SnapshotPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/netapp/volume/zz_controller.go b/internal/controller/netapp/volume/zz_controller.go index dc3cdb057..1dba31b30 100755 --- a/internal/controller/netapp/volume/zz_controller.go +++ b/internal/controller/netapp/volume/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Volume_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_netapp_volume"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Volume_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Volume{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Volume{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/applicationgateway/zz_controller.go b/internal/controller/network/applicationgateway/zz_controller.go index 9970b904e..8b1cbb6a9 100755 --- a/internal/controller/network/applicationgateway/zz_controller.go +++ b/internal/controller/network/applicationgateway/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationGateway_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_application_gateway"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ApplicationGateway_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationGateway{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationGateway{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/applicationsecuritygroup/zz_controller.go b/internal/controller/network/applicationsecuritygroup/zz_controller.go index e417d437f..8d3e50f2a 100755 --- a/internal/controller/network/applicationsecuritygroup/zz_controller.go +++ b/internal/controller/network/applicationsecuritygroup/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ApplicationSecurityGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ApplicationSecurityGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/connectionmonitor/zz_controller.go b/internal/controller/network/connectionmonitor/zz_controller.go index 0c86cb29e..6f5823839 100755 --- a/internal/controller/network/connectionmonitor/zz_controller.go +++ b/internal/controller/network/connectionmonitor/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ConnectionMonitor{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ConnectionMonitor{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/ddosprotectionplan/zz_controller.go b/internal/controller/network/ddosprotectionplan/zz_controller.go index 33fa7447d..4750799b1 100755 --- a/internal/controller/network/ddosprotectionplan/zz_controller.go +++ b/internal/controller/network/ddosprotectionplan/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DDoSProtectionPlan{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DDoSProtectionPlan{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/dnsaaaarecord/zz_controller.go b/internal/controller/network/dnsaaaarecord/zz_controller.go index 16e714e87..a5cd4920a 100755 --- a/internal/controller/network/dnsaaaarecord/zz_controller.go +++ b/internal/controller/network/dnsaaaarecord/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSAAAARecord_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dns_aaaa_record"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSAAAARecord_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DNSAAAARecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DNSAAAARecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/dnsarecord/zz_controller.go b/internal/controller/network/dnsarecord/zz_controller.go index dc1acce49b..a1d70d442 100755 --- a/internal/controller/network/dnsarecord/zz_controller.go +++ b/internal/controller/network/dnsarecord/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSARecord_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dns_a_record"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSARecord_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DNSARecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DNSARecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/dnscaarecord/zz_controller.go b/internal/controller/network/dnscaarecord/zz_controller.go index 6f655a799..d9db77273 100755 --- a/internal/controller/network/dnscaarecord/zz_controller.go +++ b/internal/controller/network/dnscaarecord/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSCAARecord_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dns_caa_record"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSCAARecord_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DNSCAARecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DNSCAARecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/dnscnamerecord/zz_controller.go b/internal/controller/network/dnscnamerecord/zz_controller.go index de606d987..eefb9e2ed 100755 --- a/internal/controller/network/dnscnamerecord/zz_controller.go +++ b/internal/controller/network/dnscnamerecord/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSCNAMERecord_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dns_cname_record"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSCNAMERecord_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DNSCNAMERecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DNSCNAMERecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/dnsmxrecord/zz_controller.go b/internal/controller/network/dnsmxrecord/zz_controller.go index 01f664d10..a8b54833d 100755 --- a/internal/controller/network/dnsmxrecord/zz_controller.go +++ b/internal/controller/network/dnsmxrecord/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSMXRecord_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dns_mx_record"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSMXRecord_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DNSMXRecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DNSMXRecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/dnsnsrecord/zz_controller.go b/internal/controller/network/dnsnsrecord/zz_controller.go index 625a0d107..f0fb681eb 100755 --- a/internal/controller/network/dnsnsrecord/zz_controller.go +++ b/internal/controller/network/dnsnsrecord/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSNSRecord_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dns_ns_record"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSNSRecord_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DNSNSRecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DNSNSRecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/dnsptrrecord/zz_controller.go b/internal/controller/network/dnsptrrecord/zz_controller.go index 4be311033..bf5444861 100755 --- a/internal/controller/network/dnsptrrecord/zz_controller.go +++ b/internal/controller/network/dnsptrrecord/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSPTRRecord_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dns_ptr_record"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSPTRRecord_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DNSPTRRecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DNSPTRRecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/dnssrvrecord/zz_controller.go b/internal/controller/network/dnssrvrecord/zz_controller.go index 862035e3c..23f0f2a99 100755 --- a/internal/controller/network/dnssrvrecord/zz_controller.go +++ b/internal/controller/network/dnssrvrecord/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSSRVRecord_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dns_srv_record"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSSRVRecord_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DNSSRVRecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DNSSRVRecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/dnstxtrecord/zz_controller.go b/internal/controller/network/dnstxtrecord/zz_controller.go index 20034306e..bd9626fab 100755 --- a/internal/controller/network/dnstxtrecord/zz_controller.go +++ b/internal/controller/network/dnstxtrecord/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSTXTRecord_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dns_txt_record"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSTXTRecord_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DNSTXTRecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DNSTXTRecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/dnszone/zz_controller.go b/internal/controller/network/dnszone/zz_controller.go index 947e74224..fb54eff0f 100755 --- a/internal/controller/network/dnszone/zz_controller.go +++ b/internal/controller/network/dnszone/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSZone_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_dns_zone"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DNSZone_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DNSZone{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DNSZone{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/expressroutecircuit/zz_controller.go b/internal/controller/network/expressroutecircuit/zz_controller.go index 2136b10d1..f8c30c3bd 100755 --- a/internal/controller/network/expressroutecircuit/zz_controller.go +++ b/internal/controller/network/expressroutecircuit/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteCircuit_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_express_route_circuit"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteCircuit_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ExpressRouteCircuit{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ExpressRouteCircuit{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/expressroutecircuitauthorization/zz_controller.go b/internal/controller/network/expressroutecircuitauthorization/zz_controller.go index 0dcf28bc9..586235930 100755 --- a/internal/controller/network/expressroutecircuitauthorization/zz_controller.go +++ b/internal/controller/network/expressroutecircuitauthorization/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteCircuitAuthorization_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_express_route_circuit_authorization"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteCircuitAuthorization_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ExpressRouteCircuitAuthorization{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ExpressRouteCircuitAuthorization{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/expressroutecircuitconnection/zz_controller.go b/internal/controller/network/expressroutecircuitconnection/zz_controller.go index e1b745eb5..d0a0859c0 100755 --- a/internal/controller/network/expressroutecircuitconnection/zz_controller.go +++ b/internal/controller/network/expressroutecircuitconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteCircuitConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_express_route_circuit_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteCircuitConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ExpressRouteCircuitConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ExpressRouteCircuitConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/expressroutecircuitpeering/zz_controller.go b/internal/controller/network/expressroutecircuitpeering/zz_controller.go index f19bcf786..e79aba0d2 100755 --- a/internal/controller/network/expressroutecircuitpeering/zz_controller.go +++ b/internal/controller/network/expressroutecircuitpeering/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteCircuitPeering_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_express_route_circuit_peering"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteCircuitPeering_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ExpressRouteCircuitPeering{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ExpressRouteCircuitPeering{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/expressrouteconnection/zz_controller.go b/internal/controller/network/expressrouteconnection/zz_controller.go index f0db69f93..926de2a38 100755 --- a/internal/controller/network/expressrouteconnection/zz_controller.go +++ b/internal/controller/network/expressrouteconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_express_route_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ExpressRouteConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ExpressRouteConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/expressroutegateway/zz_controller.go b/internal/controller/network/expressroutegateway/zz_controller.go index 7ac000b6e..a7ab1f0ce 100755 --- a/internal/controller/network/expressroutegateway/zz_controller.go +++ b/internal/controller/network/expressroutegateway/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteGateway_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_express_route_gateway"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRouteGateway_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ExpressRouteGateway{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ExpressRouteGateway{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/expressrouteport/zz_controller.go b/internal/controller/network/expressrouteport/zz_controller.go index 0223de009..a467bc6e0 100755 --- a/internal/controller/network/expressrouteport/zz_controller.go +++ b/internal/controller/network/expressrouteport/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRoutePort_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_express_route_port"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ExpressRoutePort_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ExpressRoutePort{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ExpressRoutePort{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/firewall/zz_controller.go b/internal/controller/network/firewall/zz_controller.go index 2991f0747..5999d53a0 100755 --- a/internal/controller/network/firewall/zz_controller.go +++ b/internal/controller/network/firewall/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Firewall_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_firewall"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Firewall_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Firewall{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Firewall{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/firewallapplicationrulecollection/zz_controller.go b/internal/controller/network/firewallapplicationrulecollection/zz_controller.go index 3ced0a322..115f90924 100755 --- a/internal/controller/network/firewallapplicationrulecollection/zz_controller.go +++ b/internal/controller/network/firewallapplicationrulecollection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallApplicationRuleCollection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_firewall_application_rule_collection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallApplicationRuleCollection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FirewallApplicationRuleCollection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FirewallApplicationRuleCollection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/firewallnatrulecollection/zz_controller.go b/internal/controller/network/firewallnatrulecollection/zz_controller.go index ca8acb783..3bfa3ec0d 100755 --- a/internal/controller/network/firewallnatrulecollection/zz_controller.go +++ b/internal/controller/network/firewallnatrulecollection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallNATRuleCollection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_firewall_nat_rule_collection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallNATRuleCollection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FirewallNATRuleCollection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FirewallNATRuleCollection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/firewallnetworkrulecollection/zz_controller.go b/internal/controller/network/firewallnetworkrulecollection/zz_controller.go index b48535116..bd236166e 100755 --- a/internal/controller/network/firewallnetworkrulecollection/zz_controller.go +++ b/internal/controller/network/firewallnetworkrulecollection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallNetworkRuleCollection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_firewall_network_rule_collection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallNetworkRuleCollection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FirewallNetworkRuleCollection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FirewallNetworkRuleCollection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/firewallpolicy/zz_controller.go b/internal/controller/network/firewallpolicy/zz_controller.go index 47aca03f0..d32856cba 100755 --- a/internal/controller/network/firewallpolicy/zz_controller.go +++ b/internal/controller/network/firewallpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_firewall_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FirewallPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FirewallPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/firewallpolicyrulecollectiongroup/zz_controller.go b/internal/controller/network/firewallpolicyrulecollectiongroup/zz_controller.go index d7e58466d..f8ea0ac89 100755 --- a/internal/controller/network/firewallpolicyrulecollectiongroup/zz_controller.go +++ b/internal/controller/network/firewallpolicyrulecollectiongroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallPolicyRuleCollectionGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_firewall_policy_rule_collection_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallPolicyRuleCollectionGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FirewallPolicyRuleCollectionGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FirewallPolicyRuleCollectionGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/frontdoor/zz_controller.go b/internal/controller/network/frontdoor/zz_controller.go index 6c37a123d..8df71a111 100755 --- a/internal/controller/network/frontdoor/zz_controller.go +++ b/internal/controller/network/frontdoor/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontDoor{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontDoor{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/frontdoorcustomhttpsconfiguration/zz_controller.go b/internal/controller/network/frontdoorcustomhttpsconfiguration/zz_controller.go index 6b18cc5b8..3d0abc57c 100755 --- a/internal/controller/network/frontdoorcustomhttpsconfiguration/zz_controller.go +++ b/internal/controller/network/frontdoorcustomhttpsconfiguration/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorCustomHTTPSConfiguration_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_frontdoor_custom_https_configuration"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorCustomHTTPSConfiguration_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorCustomHTTPSConfiguration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorCustomHTTPSConfiguration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/frontdoorfirewallpolicy/zz_controller.go b/internal/controller/network/frontdoorfirewallpolicy/zz_controller.go index 54789bde5..d98ec816e 100755 --- a/internal/controller/network/frontdoorfirewallpolicy/zz_controller.go +++ b/internal/controller/network/frontdoorfirewallpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorFirewallPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_frontdoor_firewall_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorFirewallPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorFirewallPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorFirewallPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/frontdoorrulesengine/zz_controller.go b/internal/controller/network/frontdoorrulesengine/zz_controller.go index f77648df6..a7f76350c 100755 --- a/internal/controller/network/frontdoorrulesengine/zz_controller.go +++ b/internal/controller/network/frontdoorrulesengine/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorRulesEngine_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_frontdoor_rules_engine"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FrontdoorRulesEngine_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FrontdoorRulesEngine{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FrontdoorRulesEngine{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/ipgroup/zz_controller.go b/internal/controller/network/ipgroup/zz_controller.go index 874d5b53b..53078e6b9 100755 --- a/internal/controller/network/ipgroup/zz_controller.go +++ b/internal/controller/network/ipgroup/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IPGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IPGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/loadbalancer/zz_controller.go b/internal/controller/network/loadbalancer/zz_controller.go index a6400feda..89bfda64e 100755 --- a/internal/controller/network/loadbalancer/zz_controller.go +++ b/internal/controller/network/loadbalancer/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_lb"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LoadBalancer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LoadBalancer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/loadbalancerbackendaddresspool/zz_controller.go b/internal/controller/network/loadbalancerbackendaddresspool/zz_controller.go index ca730387c..54b77cd93 100755 --- a/internal/controller/network/loadbalancerbackendaddresspool/zz_controller.go +++ b/internal/controller/network/loadbalancerbackendaddresspool/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerBackendAddressPool_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_lb_backend_address_pool"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerBackendAddressPool_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LoadBalancerBackendAddressPool{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LoadBalancerBackendAddressPool{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/loadbalancerbackendaddresspooladdress/zz_controller.go b/internal/controller/network/loadbalancerbackendaddresspooladdress/zz_controller.go index f637068b9..952c68195 100755 --- a/internal/controller/network/loadbalancerbackendaddresspooladdress/zz_controller.go +++ b/internal/controller/network/loadbalancerbackendaddresspooladdress/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerBackendAddressPoolAddress_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_lb_backend_address_pool_address"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerBackendAddressPoolAddress_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LoadBalancerBackendAddressPoolAddress{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LoadBalancerBackendAddressPoolAddress{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/loadbalancernatpool/zz_controller.go b/internal/controller/network/loadbalancernatpool/zz_controller.go index 58f22c51a..d9ebaf69f 100755 --- a/internal/controller/network/loadbalancernatpool/zz_controller.go +++ b/internal/controller/network/loadbalancernatpool/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerNatPool_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_lb_nat_pool"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerNatPool_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LoadBalancerNatPool{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LoadBalancerNatPool{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/loadbalancernatrule/zz_controller.go b/internal/controller/network/loadbalancernatrule/zz_controller.go index ec6f5bc2f..f7dfd7ab7 100755 --- a/internal/controller/network/loadbalancernatrule/zz_controller.go +++ b/internal/controller/network/loadbalancernatrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerNatRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_lb_nat_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerNatRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LoadBalancerNatRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LoadBalancerNatRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/loadbalanceroutboundrule/zz_controller.go b/internal/controller/network/loadbalanceroutboundrule/zz_controller.go index 478da693e..13b22a5b0 100755 --- a/internal/controller/network/loadbalanceroutboundrule/zz_controller.go +++ b/internal/controller/network/loadbalanceroutboundrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerOutboundRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_lb_outbound_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerOutboundRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LoadBalancerOutboundRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LoadBalancerOutboundRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/loadbalancerprobe/zz_controller.go b/internal/controller/network/loadbalancerprobe/zz_controller.go index 1a7f8bb89..cbca29d0c 100755 --- a/internal/controller/network/loadbalancerprobe/zz_controller.go +++ b/internal/controller/network/loadbalancerprobe/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerProbe_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_lb_probe"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerProbe_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LoadBalancerProbe{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LoadBalancerProbe{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/loadbalancerrule/zz_controller.go b/internal/controller/network/loadbalancerrule/zz_controller.go index 4ec491c11..d6fe1d6d7 100755 --- a/internal/controller/network/loadbalancerrule/zz_controller.go +++ b/internal/controller/network/loadbalancerrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_lb_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LoadBalancerRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LoadBalancerRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LoadBalancerRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/localnetworkgateway/zz_controller.go b/internal/controller/network/localnetworkgateway/zz_controller.go index 2940528b1..ea1e14bca 100755 --- a/internal/controller/network/localnetworkgateway/zz_controller.go +++ b/internal/controller/network/localnetworkgateway/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LocalNetworkGateway_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_local_network_gateway"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LocalNetworkGateway_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LocalNetworkGateway{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LocalNetworkGateway{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/manager/zz_controller.go b/internal/controller/network/manager/zz_controller.go index 45d8c7894..626211b2e 100755 --- a/internal/controller/network/manager/zz_controller.go +++ b/internal/controller/network/manager/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Manager_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_network_manager"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Manager_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Manager{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Manager{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/managermanagementgroupconnection/zz_controller.go b/internal/controller/network/managermanagementgroupconnection/zz_controller.go index 1ac12a9c9..5a00092b2 100755 --- a/internal/controller/network/managermanagementgroupconnection/zz_controller.go +++ b/internal/controller/network/managermanagementgroupconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagerManagementGroupConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_network_manager_management_group_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagerManagementGroupConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagerManagementGroupConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagerManagementGroupConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/managernetworkgroup/zz_controller.go b/internal/controller/network/managernetworkgroup/zz_controller.go index fbcee8f9b..6081d975e 100755 --- a/internal/controller/network/managernetworkgroup/zz_controller.go +++ b/internal/controller/network/managernetworkgroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagerNetworkGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_network_manager_network_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagerNetworkGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagerNetworkGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagerNetworkGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/managerstaticmember/zz_controller.go b/internal/controller/network/managerstaticmember/zz_controller.go index d888eecdf..74fac1d0c 100755 --- a/internal/controller/network/managerstaticmember/zz_controller.go +++ b/internal/controller/network/managerstaticmember/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagerStaticMember_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_network_manager_static_member"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagerStaticMember_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagerStaticMember{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagerStaticMember{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/managersubscriptionconnection/zz_controller.go b/internal/controller/network/managersubscriptionconnection/zz_controller.go index 7ce768693..c029c609c 100755 --- a/internal/controller/network/managersubscriptionconnection/zz_controller.go +++ b/internal/controller/network/managersubscriptionconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagerSubscriptionConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_network_manager_subscription_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagerSubscriptionConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagerSubscriptionConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagerSubscriptionConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/natgateway/zz_controller.go b/internal/controller/network/natgateway/zz_controller.go index 701ca09f3..945ef9d65 100755 --- a/internal/controller/network/natgateway/zz_controller.go +++ b/internal/controller/network/natgateway/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NATGateway_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_nat_gateway"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NATGateway_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NATGateway{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NATGateway{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/natgatewaypublicipassociation/zz_controller.go b/internal/controller/network/natgatewaypublicipassociation/zz_controller.go index 0b974e361..e9fe8fa31 100755 --- a/internal/controller/network/natgatewaypublicipassociation/zz_controller.go +++ b/internal/controller/network/natgatewaypublicipassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NATGatewayPublicIPAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_nat_gateway_public_ip_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NATGatewayPublicIPAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NATGatewayPublicIPAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NATGatewayPublicIPAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/natgatewaypublicipprefixassociation/zz_controller.go b/internal/controller/network/natgatewaypublicipprefixassociation/zz_controller.go index 4659cc7bf..1d9c39cec 100755 --- a/internal/controller/network/natgatewaypublicipprefixassociation/zz_controller.go +++ b/internal/controller/network/natgatewaypublicipprefixassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NATGatewayPublicIPPrefixAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_nat_gateway_public_ip_prefix_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NATGatewayPublicIPPrefixAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NATGatewayPublicIPPrefixAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NATGatewayPublicIPPrefixAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/networkinterface/zz_controller.go b/internal/controller/network/networkinterface/zz_controller.go index b970de39c..27b8c4bbc 100755 --- a/internal/controller/network/networkinterface/zz_controller.go +++ b/internal/controller/network/networkinterface/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NetworkInterface{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NetworkInterface{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/networkinterfaceapplicationsecuritygroupassociation/zz_controller.go b/internal/controller/network/networkinterfaceapplicationsecuritygroupassociation/zz_controller.go index ac719ac97..a9642b2ed 100755 --- a/internal/controller/network/networkinterfaceapplicationsecuritygroupassociation/zz_controller.go +++ b/internal/controller/network/networkinterfaceapplicationsecuritygroupassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NetworkInterfaceApplicationSecurityGroupAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_network_interface_application_security_group_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NetworkInterfaceApplicationSecurityGroupAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NetworkInterfaceApplicationSecurityGroupAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NetworkInterfaceApplicationSecurityGroupAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/networkinterfacebackendaddresspoolassociation/zz_controller.go b/internal/controller/network/networkinterfacebackendaddresspoolassociation/zz_controller.go index 2a8f67950..f30024cea 100755 --- a/internal/controller/network/networkinterfacebackendaddresspoolassociation/zz_controller.go +++ b/internal/controller/network/networkinterfacebackendaddresspoolassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NetworkInterfaceBackendAddressPoolAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_network_interface_backend_address_pool_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NetworkInterfaceBackendAddressPoolAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NetworkInterfaceBackendAddressPoolAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NetworkInterfaceBackendAddressPoolAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/networkinterfacenatruleassociation/zz_controller.go b/internal/controller/network/networkinterfacenatruleassociation/zz_controller.go index 64f8afa6d..6d9af419e 100755 --- a/internal/controller/network/networkinterfacenatruleassociation/zz_controller.go +++ b/internal/controller/network/networkinterfacenatruleassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NetworkInterfaceNatRuleAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_network_interface_nat_rule_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NetworkInterfaceNatRuleAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NetworkInterfaceNatRuleAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NetworkInterfaceNatRuleAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/networkinterfacesecuritygroupassociation/zz_controller.go b/internal/controller/network/networkinterfacesecuritygroupassociation/zz_controller.go index bf1ee0b78..5b0df78b9 100755 --- a/internal/controller/network/networkinterfacesecuritygroupassociation/zz_controller.go +++ b/internal/controller/network/networkinterfacesecuritygroupassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NetworkInterfaceSecurityGroupAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_network_interface_security_group_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NetworkInterfaceSecurityGroupAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NetworkInterfaceSecurityGroupAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NetworkInterfaceSecurityGroupAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/packetcapture/zz_controller.go b/internal/controller/network/packetcapture/zz_controller.go index 284a6353d..4fa5c7191 100755 --- a/internal/controller/network/packetcapture/zz_controller.go +++ b/internal/controller/network/packetcapture/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PacketCapture_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_network_packet_capture"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PacketCapture_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PacketCapture{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PacketCapture{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/pointtositevpngateway/zz_controller.go b/internal/controller/network/pointtositevpngateway/zz_controller.go index 941912860..839f3b930 100755 --- a/internal/controller/network/pointtositevpngateway/zz_controller.go +++ b/internal/controller/network/pointtositevpngateway/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PointToSiteVPNGateway_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_point_to_site_vpn_gateway"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PointToSiteVPNGateway_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PointToSiteVPNGateway{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PointToSiteVPNGateway{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatednsaaaarecord/zz_controller.go b/internal/controller/network/privatednsaaaarecord/zz_controller.go index bfda44801..8c30d0e03 100755 --- a/internal/controller/network/privatednsaaaarecord/zz_controller.go +++ b/internal/controller/network/privatednsaaaarecord/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateDNSAAAARecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateDNSAAAARecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatednsarecord/zz_controller.go b/internal/controller/network/privatednsarecord/zz_controller.go index aed4e5e64..3bf806eb3 100755 --- a/internal/controller/network/privatednsarecord/zz_controller.go +++ b/internal/controller/network/privatednsarecord/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateDNSARecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateDNSARecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatednscnamerecord/zz_controller.go b/internal/controller/network/privatednscnamerecord/zz_controller.go index 0c4c2def2..537c5dd5f 100755 --- a/internal/controller/network/privatednscnamerecord/zz_controller.go +++ b/internal/controller/network/privatednscnamerecord/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateDNSCNAMERecord_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_private_dns_cname_record"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateDNSCNAMERecord_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateDNSCNAMERecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateDNSCNAMERecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatednsmxrecord/zz_controller.go b/internal/controller/network/privatednsmxrecord/zz_controller.go index 06fe2c598..cea555960 100755 --- a/internal/controller/network/privatednsmxrecord/zz_controller.go +++ b/internal/controller/network/privatednsmxrecord/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateDNSMXRecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateDNSMXRecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatednsptrrecord/zz_controller.go b/internal/controller/network/privatednsptrrecord/zz_controller.go index 8b0ef7857..d6450f9f6 100755 --- a/internal/controller/network/privatednsptrrecord/zz_controller.go +++ b/internal/controller/network/privatednsptrrecord/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateDNSPTRRecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateDNSPTRRecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatednsresolver/zz_controller.go b/internal/controller/network/privatednsresolver/zz_controller.go index 8d199f014..f06472d53 100755 --- a/internal/controller/network/privatednsresolver/zz_controller.go +++ b/internal/controller/network/privatednsresolver/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateDNSResolver_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_private_dns_resolver"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateDNSResolver_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateDNSResolver{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateDNSResolver{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatednssrvrecord/zz_controller.go b/internal/controller/network/privatednssrvrecord/zz_controller.go index a58b117a4..051508db5 100755 --- a/internal/controller/network/privatednssrvrecord/zz_controller.go +++ b/internal/controller/network/privatednssrvrecord/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateDNSSRVRecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateDNSSRVRecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatednstxtrecord/zz_controller.go b/internal/controller/network/privatednstxtrecord/zz_controller.go index 8241c4efc..eb11b69f7 100755 --- a/internal/controller/network/privatednstxtrecord/zz_controller.go +++ b/internal/controller/network/privatednstxtrecord/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateDNSTXTRecord{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateDNSTXTRecord{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatednszone/zz_controller.go b/internal/controller/network/privatednszone/zz_controller.go index 7eb148380..f3ac02717 100755 --- a/internal/controller/network/privatednszone/zz_controller.go +++ b/internal/controller/network/privatednszone/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateDNSZone{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateDNSZone{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatednszonevirtualnetworklink/zz_controller.go b/internal/controller/network/privatednszonevirtualnetworklink/zz_controller.go index 8fc81b9b7..aae934cb7 100755 --- a/internal/controller/network/privatednszonevirtualnetworklink/zz_controller.go +++ b/internal/controller/network/privatednszonevirtualnetworklink/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateDNSZoneVirtualNetworkLink_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_private_dns_zone_virtual_network_link"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateDNSZoneVirtualNetworkLink_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateDNSZoneVirtualNetworkLink{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateDNSZoneVirtualNetworkLink{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privateendpoint/zz_controller.go b/internal/controller/network/privateendpoint/zz_controller.go index 7875e5da7..2587eb818 100755 --- a/internal/controller/network/privateendpoint/zz_controller.go +++ b/internal/controller/network/privateendpoint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_private_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privateendpointapplicationsecuritygroupassociation/zz_controller.go b/internal/controller/network/privateendpointapplicationsecuritygroupassociation/zz_controller.go index ef1b6bb39..345c5bf15 100755 --- a/internal/controller/network/privateendpointapplicationsecuritygroupassociation/zz_controller.go +++ b/internal/controller/network/privateendpointapplicationsecuritygroupassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateEndpointApplicationSecurityGroupAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_private_endpoint_application_security_group_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateEndpointApplicationSecurityGroupAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateEndpointApplicationSecurityGroupAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateEndpointApplicationSecurityGroupAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/privatelinkservice/zz_controller.go b/internal/controller/network/privatelinkservice/zz_controller.go index fa312306e..fa133a565 100755 --- a/internal/controller/network/privatelinkservice/zz_controller.go +++ b/internal/controller/network/privatelinkservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateLinkService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_private_link_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateLinkService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateLinkService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateLinkService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/profile/zz_controller.go b/internal/controller/network/profile/zz_controller.go index c09fbd02f..eb9cb48c4 100755 --- a/internal/controller/network/profile/zz_controller.go +++ b/internal/controller/network/profile/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Profile{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Profile{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/publicip/zz_controller.go b/internal/controller/network/publicip/zz_controller.go index e8235d5fc..5504492b2 100755 --- a/internal/controller/network/publicip/zz_controller.go +++ b/internal/controller/network/publicip/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PublicIP{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PublicIP{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/publicipprefix/zz_controller.go b/internal/controller/network/publicipprefix/zz_controller.go index ee5c53967..9eef34042 100755 --- a/internal/controller/network/publicipprefix/zz_controller.go +++ b/internal/controller/network/publicipprefix/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PublicIPPrefix{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PublicIPPrefix{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/route/zz_controller.go b/internal/controller/network/route/zz_controller.go index 3121d0881..27821958c 100755 --- a/internal/controller/network/route/zz_controller.go +++ b/internal/controller/network/route/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Route_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_route"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Route_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Route{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Route{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/routefilter/zz_controller.go b/internal/controller/network/routefilter/zz_controller.go index 24dfd7526..055140fce 100755 --- a/internal/controller/network/routefilter/zz_controller.go +++ b/internal/controller/network/routefilter/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RouteFilter_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_route_filter"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RouteFilter_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RouteFilter{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RouteFilter{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/routemap/zz_controller.go b/internal/controller/network/routemap/zz_controller.go index 9e14a6204..ebe1288d9 100755 --- a/internal/controller/network/routemap/zz_controller.go +++ b/internal/controller/network/routemap/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RouteMap_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_route_map"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RouteMap_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RouteMap{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RouteMap{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/routeserver/zz_controller.go b/internal/controller/network/routeserver/zz_controller.go index e53e33fe4..baff919bb 100755 --- a/internal/controller/network/routeserver/zz_controller.go +++ b/internal/controller/network/routeserver/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RouteServer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_route_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RouteServer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RouteServer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RouteServer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/routeserverbgpconnection/zz_controller.go b/internal/controller/network/routeserverbgpconnection/zz_controller.go index e13de29e8..4c68901b8 100755 --- a/internal/controller/network/routeserverbgpconnection/zz_controller.go +++ b/internal/controller/network/routeserverbgpconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RouteServerBGPConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_route_server_bgp_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RouteServerBGPConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RouteServerBGPConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RouteServerBGPConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/routetable/zz_controller.go b/internal/controller/network/routetable/zz_controller.go index 50abd8ec2..36c0ddb11 100755 --- a/internal/controller/network/routetable/zz_controller.go +++ b/internal/controller/network/routetable/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RouteTable_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_route_table"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RouteTable_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RouteTable{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RouteTable{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/securitygroup/zz_controller.go b/internal/controller/network/securitygroup/zz_controller.go index 3c4962cb5..cae39b7e9 100755 --- a/internal/controller/network/securitygroup/zz_controller.go +++ b/internal/controller/network/securitygroup/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/securityrule/zz_controller.go b/internal/controller/network/securityrule/zz_controller.go index c262de6c2..6af179f7e 100755 --- a/internal/controller/network/securityrule/zz_controller.go +++ b/internal/controller/network/securityrule/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/subnet/zz_controller.go b/internal/controller/network/subnet/zz_controller.go index 5363de78c..33418cc4b 100755 --- a/internal/controller/network/subnet/zz_controller.go +++ b/internal/controller/network/subnet/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Subnet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_subnet"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Subnet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Subnet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Subnet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/subnetnatgatewayassociation/zz_controller.go b/internal/controller/network/subnetnatgatewayassociation/zz_controller.go index 4a1d0e514..31fadea65 100755 --- a/internal/controller/network/subnetnatgatewayassociation/zz_controller.go +++ b/internal/controller/network/subnetnatgatewayassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubnetNATGatewayAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_subnet_nat_gateway_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubnetNATGatewayAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubnetNATGatewayAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubnetNATGatewayAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/subnetnetworksecuritygroupassociation/zz_controller.go b/internal/controller/network/subnetnetworksecuritygroupassociation/zz_controller.go index e450ef3be..a4da1076b 100755 --- a/internal/controller/network/subnetnetworksecuritygroupassociation/zz_controller.go +++ b/internal/controller/network/subnetnetworksecuritygroupassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubnetNetworkSecurityGroupAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_subnet_network_security_group_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubnetNetworkSecurityGroupAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubnetNetworkSecurityGroupAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubnetNetworkSecurityGroupAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/subnetroutetableassociation/zz_controller.go b/internal/controller/network/subnetroutetableassociation/zz_controller.go index 5e6ac07ce..260a04dee 100755 --- a/internal/controller/network/subnetroutetableassociation/zz_controller.go +++ b/internal/controller/network/subnetroutetableassociation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubnetRouteTableAssociation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_subnet_route_table_association"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubnetRouteTableAssociation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubnetRouteTableAssociation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubnetRouteTableAssociation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/subnetserviceendpointstoragepolicy/zz_controller.go b/internal/controller/network/subnetserviceendpointstoragepolicy/zz_controller.go index b04504fd3..4d4352125 100755 --- a/internal/controller/network/subnetserviceendpointstoragepolicy/zz_controller.go +++ b/internal/controller/network/subnetserviceendpointstoragepolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubnetServiceEndpointStoragePolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_subnet_service_endpoint_storage_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubnetServiceEndpointStoragePolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubnetServiceEndpointStoragePolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubnetServiceEndpointStoragePolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/trafficmanagerazureendpoint/zz_controller.go b/internal/controller/network/trafficmanagerazureendpoint/zz_controller.go index 5a4e3265d..5fbc299e4 100755 --- a/internal/controller/network/trafficmanagerazureendpoint/zz_controller.go +++ b/internal/controller/network/trafficmanagerazureendpoint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TrafficManagerAzureEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_traffic_manager_azure_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TrafficManagerAzureEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TrafficManagerAzureEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TrafficManagerAzureEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/trafficmanagerexternalendpoint/zz_controller.go b/internal/controller/network/trafficmanagerexternalendpoint/zz_controller.go index d42e9f8c4..0165b5c81 100755 --- a/internal/controller/network/trafficmanagerexternalendpoint/zz_controller.go +++ b/internal/controller/network/trafficmanagerexternalendpoint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TrafficManagerExternalEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_traffic_manager_external_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TrafficManagerExternalEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TrafficManagerExternalEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TrafficManagerExternalEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/trafficmanagernestedendpoint/zz_controller.go b/internal/controller/network/trafficmanagernestedendpoint/zz_controller.go index db852aef8..1404bdc1a 100755 --- a/internal/controller/network/trafficmanagernestedendpoint/zz_controller.go +++ b/internal/controller/network/trafficmanagernestedendpoint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TrafficManagerNestedEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_traffic_manager_nested_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TrafficManagerNestedEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TrafficManagerNestedEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TrafficManagerNestedEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/trafficmanagerprofile/zz_controller.go b/internal/controller/network/trafficmanagerprofile/zz_controller.go index de5337a73..e03a05960 100755 --- a/internal/controller/network/trafficmanagerprofile/zz_controller.go +++ b/internal/controller/network/trafficmanagerprofile/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TrafficManagerProfile_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_traffic_manager_profile"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TrafficManagerProfile_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TrafficManagerProfile{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TrafficManagerProfile{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualhub/zz_controller.go b/internal/controller/network/virtualhub/zz_controller.go index a10efdf02..7dddebd80 100755 --- a/internal/controller/network/virtualhub/zz_controller.go +++ b/internal/controller/network/virtualhub/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_virtual_hub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualhubconnection/zz_controller.go b/internal/controller/network/virtualhubconnection/zz_controller.go index 6a584c551..000a47297 100755 --- a/internal/controller/network/virtualhubconnection/zz_controller.go +++ b/internal/controller/network/virtualhubconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHubConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_virtual_hub_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHubConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualHubConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualHubConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualhubip/zz_controller.go b/internal/controller/network/virtualhubip/zz_controller.go index 0c94c1583..5065c013a 100755 --- a/internal/controller/network/virtualhubip/zz_controller.go +++ b/internal/controller/network/virtualhubip/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHubIP_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_virtual_hub_ip"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHubIP_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualHubIP{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualHubIP{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualhubroutetable/zz_controller.go b/internal/controller/network/virtualhubroutetable/zz_controller.go index bfa9a8266..3300655b3 100755 --- a/internal/controller/network/virtualhubroutetable/zz_controller.go +++ b/internal/controller/network/virtualhubroutetable/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHubRouteTable_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_virtual_hub_route_table"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHubRouteTable_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualHubRouteTable{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualHubRouteTable{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualhubroutetableroute/zz_controller.go b/internal/controller/network/virtualhubroutetableroute/zz_controller.go index d107c78b0..08ac07eb9 100755 --- a/internal/controller/network/virtualhubroutetableroute/zz_controller.go +++ b/internal/controller/network/virtualhubroutetableroute/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHubRouteTableRoute_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_virtual_hub_route_table_route"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHubRouteTableRoute_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualHubRouteTableRoute{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualHubRouteTableRoute{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualhubsecuritypartnerprovider/zz_controller.go b/internal/controller/network/virtualhubsecuritypartnerprovider/zz_controller.go index f63599256..b0d0f7faa 100755 --- a/internal/controller/network/virtualhubsecuritypartnerprovider/zz_controller.go +++ b/internal/controller/network/virtualhubsecuritypartnerprovider/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHubSecurityPartnerProvider_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_virtual_hub_security_partner_provider"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualHubSecurityPartnerProvider_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualHubSecurityPartnerProvider{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualHubSecurityPartnerProvider{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualnetwork/zz_controller.go b/internal/controller/network/virtualnetwork/zz_controller.go index a20b3a48d..5bb8a0dd8 100755 --- a/internal/controller/network/virtualnetwork/zz_controller.go +++ b/internal/controller/network/virtualnetwork/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualNetwork{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualNetwork{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualnetworkgateway/zz_controller.go b/internal/controller/network/virtualnetworkgateway/zz_controller.go index 4f3eb492b..a92adbc94 100755 --- a/internal/controller/network/virtualnetworkgateway/zz_controller.go +++ b/internal/controller/network/virtualnetworkgateway/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkGateway_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_virtual_network_gateway"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkGateway_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualNetworkGateway{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualNetworkGateway{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualnetworkgatewayconnection/zz_controller.go b/internal/controller/network/virtualnetworkgatewayconnection/zz_controller.go index 4bc1685d1..7b281f46f 100755 --- a/internal/controller/network/virtualnetworkgatewayconnection/zz_controller.go +++ b/internal/controller/network/virtualnetworkgatewayconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkGatewayConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_virtual_network_gateway_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkGatewayConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualNetworkGatewayConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualNetworkGatewayConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualnetworkpeering/zz_controller.go b/internal/controller/network/virtualnetworkpeering/zz_controller.go index 7c769f300..e680f6333 100755 --- a/internal/controller/network/virtualnetworkpeering/zz_controller.go +++ b/internal/controller/network/virtualnetworkpeering/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkPeering_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_virtual_network_peering"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualNetworkPeering_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualNetworkPeering{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualNetworkPeering{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/virtualwan/zz_controller.go b/internal/controller/network/virtualwan/zz_controller.go index 4e78c68c6..379a18f1e 100755 --- a/internal/controller/network/virtualwan/zz_controller.go +++ b/internal/controller/network/virtualwan/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualWAN_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_virtual_wan"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VirtualWAN_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VirtualWAN{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VirtualWAN{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/vpngateway/zz_controller.go b/internal/controller/network/vpngateway/zz_controller.go index c286a08b5..c5bafedc7 100755 --- a/internal/controller/network/vpngateway/zz_controller.go +++ b/internal/controller/network/vpngateway/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VPNGateway_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_vpn_gateway"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VPNGateway_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VPNGateway{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VPNGateway{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/vpngatewayconnection/zz_controller.go b/internal/controller/network/vpngatewayconnection/zz_controller.go index 73ba1dd45..f3cb6b1f5 100755 --- a/internal/controller/network/vpngatewayconnection/zz_controller.go +++ b/internal/controller/network/vpngatewayconnection/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VPNGatewayConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_vpn_gateway_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VPNGatewayConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VPNGatewayConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VPNGatewayConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/vpnserverconfiguration/zz_controller.go b/internal/controller/network/vpnserverconfiguration/zz_controller.go index ca20ada53..ef3d953d4 100755 --- a/internal/controller/network/vpnserverconfiguration/zz_controller.go +++ b/internal/controller/network/vpnserverconfiguration/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VPNServerConfiguration_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_vpn_server_configuration"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VPNServerConfiguration_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VPNServerConfiguration{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VPNServerConfiguration{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/vpnserverconfigurationpolicygroup/zz_controller.go b/internal/controller/network/vpnserverconfigurationpolicygroup/zz_controller.go index b2b62d87e..ed6ef13ab 100755 --- a/internal/controller/network/vpnserverconfigurationpolicygroup/zz_controller.go +++ b/internal/controller/network/vpnserverconfigurationpolicygroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VPNServerConfigurationPolicyGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_vpn_server_configuration_policy_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VPNServerConfigurationPolicyGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VPNServerConfigurationPolicyGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VPNServerConfigurationPolicyGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/vpnsite/zz_controller.go b/internal/controller/network/vpnsite/zz_controller.go index b2fc8710f..167fb53b9 100755 --- a/internal/controller/network/vpnsite/zz_controller.go +++ b/internal/controller/network/vpnsite/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VPNSite_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_vpn_site"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.VPNSite_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.VPNSite{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.VPNSite{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/watcher/zz_controller.go b/internal/controller/network/watcher/zz_controller.go index dea187862..0e01c0052 100755 --- a/internal/controller/network/watcher/zz_controller.go +++ b/internal/controller/network/watcher/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Watcher{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Watcher{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/watcherflowlog/zz_controller.go b/internal/controller/network/watcherflowlog/zz_controller.go index 6cf096e5f..dfedfc343 100755 --- a/internal/controller/network/watcherflowlog/zz_controller.go +++ b/internal/controller/network/watcherflowlog/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WatcherFlowLog{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WatcherFlowLog{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/network/webapplicationfirewallpolicy/zz_controller.go b/internal/controller/network/webapplicationfirewallpolicy/zz_controller.go index 47b94f5c1..1254b1c45 100755 --- a/internal/controller/network/webapplicationfirewallpolicy/zz_controller.go +++ b/internal/controller/network/webapplicationfirewallpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WebApplicationFirewallPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_web_application_firewall_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WebApplicationFirewallPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WebApplicationFirewallPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WebApplicationFirewallPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/notificationhubs/authorizationrule/zz_controller.go b/internal/controller/notificationhubs/authorizationrule/zz_controller.go index 9f51a26a3..2363118ca 100755 --- a/internal/controller/notificationhubs/authorizationrule/zz_controller.go +++ b/internal/controller/notificationhubs/authorizationrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AuthorizationRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_notification_hub_authorization_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AuthorizationRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AuthorizationRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AuthorizationRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/notificationhubs/notificationhub/zz_controller.go b/internal/controller/notificationhubs/notificationhub/zz_controller.go index f1ea97fa9..222306297 100755 --- a/internal/controller/notificationhubs/notificationhub/zz_controller.go +++ b/internal/controller/notificationhubs/notificationhub/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NotificationHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_notification_hub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NotificationHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NotificationHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NotificationHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/notificationhubs/notificationhubnamespace/zz_controller.go b/internal/controller/notificationhubs/notificationhubnamespace/zz_controller.go index 618a5ceb3..fcc177532 100755 --- a/internal/controller/notificationhubs/notificationhubnamespace/zz_controller.go +++ b/internal/controller/notificationhubs/notificationhubnamespace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NotificationHubNamespace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_notification_hub_namespace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NotificationHubNamespace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NotificationHubNamespace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NotificationHubNamespace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/operationalinsights/loganalyticsdataexportrule/zz_controller.go b/internal/controller/operationalinsights/loganalyticsdataexportrule/zz_controller.go index 265ddb28f..c4547d0dc 100755 --- a/internal/controller/operationalinsights/loganalyticsdataexportrule/zz_controller.go +++ b/internal/controller/operationalinsights/loganalyticsdataexportrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsDataExportRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_data_export_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsDataExportRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LogAnalyticsDataExportRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LogAnalyticsDataExportRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/operationalinsights/loganalyticsdatasourcewindowsevent/zz_controller.go b/internal/controller/operationalinsights/loganalyticsdatasourcewindowsevent/zz_controller.go index 6fb0e5ac7..27a7eafd4 100755 --- a/internal/controller/operationalinsights/loganalyticsdatasourcewindowsevent/zz_controller.go +++ b/internal/controller/operationalinsights/loganalyticsdatasourcewindowsevent/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsDataSourceWindowsEvent_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_datasource_windows_event"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsDataSourceWindowsEvent_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LogAnalyticsDataSourceWindowsEvent{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LogAnalyticsDataSourceWindowsEvent{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/operationalinsights/loganalyticsdatasourcewindowsperformancecounter/zz_controller.go b/internal/controller/operationalinsights/loganalyticsdatasourcewindowsperformancecounter/zz_controller.go index 8a6050cb7..404e337ba 100755 --- a/internal/controller/operationalinsights/loganalyticsdatasourcewindowsperformancecounter/zz_controller.go +++ b/internal/controller/operationalinsights/loganalyticsdatasourcewindowsperformancecounter/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsDataSourceWindowsPerformanceCounter_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_datasource_windows_performance_counter"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsDataSourceWindowsPerformanceCounter_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LogAnalyticsDataSourceWindowsPerformanceCounter{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LogAnalyticsDataSourceWindowsPerformanceCounter{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/operationalinsights/loganalyticslinkedservice/zz_controller.go b/internal/controller/operationalinsights/loganalyticslinkedservice/zz_controller.go index f32594778..b6b4bb59c 100755 --- a/internal/controller/operationalinsights/loganalyticslinkedservice/zz_controller.go +++ b/internal/controller/operationalinsights/loganalyticslinkedservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsLinkedService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_linked_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsLinkedService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LogAnalyticsLinkedService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LogAnalyticsLinkedService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/operationalinsights/loganalyticslinkedstorageaccount/zz_controller.go b/internal/controller/operationalinsights/loganalyticslinkedstorageaccount/zz_controller.go index ea11839a8..d6447b1ca 100755 --- a/internal/controller/operationalinsights/loganalyticslinkedstorageaccount/zz_controller.go +++ b/internal/controller/operationalinsights/loganalyticslinkedstorageaccount/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsLinkedStorageAccount_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_linked_storage_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsLinkedStorageAccount_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LogAnalyticsLinkedStorageAccount{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LogAnalyticsLinkedStorageAccount{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/operationalinsights/loganalyticsquerypack/zz_controller.go b/internal/controller/operationalinsights/loganalyticsquerypack/zz_controller.go index 09353bd50..63a6e2b5b 100755 --- a/internal/controller/operationalinsights/loganalyticsquerypack/zz_controller.go +++ b/internal/controller/operationalinsights/loganalyticsquerypack/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsQueryPack_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_query_pack"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsQueryPack_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LogAnalyticsQueryPack{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LogAnalyticsQueryPack{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/operationalinsights/loganalyticsquerypackquery/zz_controller.go b/internal/controller/operationalinsights/loganalyticsquerypackquery/zz_controller.go index 7f10d5e61..afc6cfa03 100755 --- a/internal/controller/operationalinsights/loganalyticsquerypackquery/zz_controller.go +++ b/internal/controller/operationalinsights/loganalyticsquerypackquery/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsQueryPackQuery_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_query_pack_query"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsQueryPackQuery_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LogAnalyticsQueryPackQuery{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LogAnalyticsQueryPackQuery{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/operationalinsights/loganalyticssavedsearch/zz_controller.go b/internal/controller/operationalinsights/loganalyticssavedsearch/zz_controller.go index 685751d15..4af059834 100755 --- a/internal/controller/operationalinsights/loganalyticssavedsearch/zz_controller.go +++ b/internal/controller/operationalinsights/loganalyticssavedsearch/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsSavedSearch_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_saved_search"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsSavedSearch_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LogAnalyticsSavedSearch{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LogAnalyticsSavedSearch{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/operationalinsights/workspace/zz_controller.go b/internal/controller/operationalinsights/workspace/zz_controller.go index a965541a3..dd2eafde9 100755 --- a/internal/controller/operationalinsights/workspace/zz_controller.go +++ b/internal/controller/operationalinsights/workspace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Workspace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_workspace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Workspace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Workspace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Workspace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/operationsmanagement/loganalyticssolution/zz_controller.go b/internal/controller/operationsmanagement/loganalyticssolution/zz_controller.go index 833ab60d1..2933bc316 100755 --- a/internal/controller/operationsmanagement/loganalyticssolution/zz_controller.go +++ b/internal/controller/operationsmanagement/loganalyticssolution/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsSolution_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_solution"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsSolution_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LogAnalyticsSolution{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LogAnalyticsSolution{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/orbital/contactprofile/zz_controller.go b/internal/controller/orbital/contactprofile/zz_controller.go index deaa18fed..8cbe214d3 100755 --- a/internal/controller/orbital/contactprofile/zz_controller.go +++ b/internal/controller/orbital/contactprofile/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ContactProfile_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_orbital_contact_profile"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ContactProfile_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ContactProfile{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ContactProfile{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/orbital/spacecraft/zz_controller.go b/internal/controller/orbital/spacecraft/zz_controller.go index 6c22caec9..8eb7bd077 100755 --- a/internal/controller/orbital/spacecraft/zz_controller.go +++ b/internal/controller/orbital/spacecraft/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Spacecraft_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_orbital_spacecraft"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Spacecraft_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Spacecraft{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Spacecraft{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/policyinsights/resourcepolicyremediation/zz_controller.go b/internal/controller/policyinsights/resourcepolicyremediation/zz_controller.go index ba558b37f..c8b438be1 100755 --- a/internal/controller/policyinsights/resourcepolicyremediation/zz_controller.go +++ b/internal/controller/policyinsights/resourcepolicyremediation/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourcePolicyRemediation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_resource_policy_remediation"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourcePolicyRemediation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourcePolicyRemediation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourcePolicyRemediation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/policyinsights/subscriptionpolicyremediation/zz_controller.go b/internal/controller/policyinsights/subscriptionpolicyremediation/zz_controller.go index 00fe2d431..ab77fdbec 100755 --- a/internal/controller/policyinsights/subscriptionpolicyremediation/zz_controller.go +++ b/internal/controller/policyinsights/subscriptionpolicyremediation/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionPolicyRemediation_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_subscription_policy_remediation"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionPolicyRemediation_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubscriptionPolicyRemediation{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubscriptionPolicyRemediation{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/portal/dashboard/zz_controller.go b/internal/controller/portal/dashboard/zz_controller.go index fd956c144..93027e747 100755 --- a/internal/controller/portal/dashboard/zz_controller.go +++ b/internal/controller/portal/dashboard/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Dashboard_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_portal_dashboard"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Dashboard_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Dashboard{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Dashboard{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/powerbidedicated/powerbiembedded/zz_controller.go b/internal/controller/powerbidedicated/powerbiembedded/zz_controller.go index 161f390e1..41e7f4190 100755 --- a/internal/controller/powerbidedicated/powerbiembedded/zz_controller.go +++ b/internal/controller/powerbidedicated/powerbiembedded/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PowerBIEmbedded_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_powerbi_embedded"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PowerBIEmbedded_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PowerBIEmbedded{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PowerBIEmbedded{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/providerconfig/config.go b/internal/controller/providerconfig/config.go index 8e6ad2684..8793814e7 100644 --- a/internal/controller/providerconfig/config.go +++ b/internal/controller/providerconfig/config.go @@ -17,13 +17,11 @@ limitations under the License. package providerconfig import ( - tjcontroller "github.com/upbound/upjet/pkg/controller" - ctrl "sigs.k8s.io/controller-runtime" - "sigs.k8s.io/controller-runtime/pkg/source" - "github.com/crossplane/crossplane-runtime/pkg/event" "github.com/crossplane/crossplane-runtime/pkg/reconciler/providerconfig" "github.com/crossplane/crossplane-runtime/pkg/resource" + tjcontroller "github.com/upbound/upjet/pkg/controller" + ctrl "sigs.k8s.io/controller-runtime" "github.com/upbound/provider-azure/apis/v1beta1" ) @@ -41,7 +39,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { Named(name). WithOptions(o.ForControllerRuntime()). For(&v1beta1.ProviderConfig{}). - Watches(&source.Kind{Type: &v1beta1.ProviderConfigUsage{}}, &resource.EnqueueRequestForProviderConfig{}). + Watches(&v1beta1.ProviderConfigUsage{}, &resource.EnqueueRequestForProviderConfig{}). Complete(providerconfig.NewReconciler(mgr, of, providerconfig.WithLogger(o.Logger.WithValues("controller", name)), providerconfig.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))))) diff --git a/internal/controller/purview/account/zz_controller.go b/internal/controller/purview/account/zz_controller.go index 2ed0e1041..75770e096 100755 --- a/internal/controller/purview/account/zz_controller.go +++ b/internal/controller/purview/account/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_purview_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Account{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Account{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/backupcontainerstorageaccount/zz_controller.go b/internal/controller/recoveryservices/backupcontainerstorageaccount/zz_controller.go index fd97ecfb3..4bcd03521 100755 --- a/internal/controller/recoveryservices/backupcontainerstorageaccount/zz_controller.go +++ b/internal/controller/recoveryservices/backupcontainerstorageaccount/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupContainerStorageAccount_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_backup_container_storage_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupContainerStorageAccount_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupContainerStorageAccount{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupContainerStorageAccount{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/backuppolicyfileshare/zz_controller.go b/internal/controller/recoveryservices/backuppolicyfileshare/zz_controller.go index d2a002ed6..d900d8207 100755 --- a/internal/controller/recoveryservices/backuppolicyfileshare/zz_controller.go +++ b/internal/controller/recoveryservices/backuppolicyfileshare/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyFileShare_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_backup_policy_file_share"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyFileShare_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupPolicyFileShare{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupPolicyFileShare{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/backuppolicyvm/zz_controller.go b/internal/controller/recoveryservices/backuppolicyvm/zz_controller.go index dc40b93fb..2508563e7 100755 --- a/internal/controller/recoveryservices/backuppolicyvm/zz_controller.go +++ b/internal/controller/recoveryservices/backuppolicyvm/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyVM_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_backup_policy_vm"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyVM_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupPolicyVM{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupPolicyVM{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/backuppolicyvmworkload/zz_controller.go b/internal/controller/recoveryservices/backuppolicyvmworkload/zz_controller.go index 91c8542bd..709c9bad8 100755 --- a/internal/controller/recoveryservices/backuppolicyvmworkload/zz_controller.go +++ b/internal/controller/recoveryservices/backuppolicyvmworkload/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyVMWorkload_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_backup_policy_vm_workload"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupPolicyVMWorkload_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupPolicyVMWorkload{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupPolicyVMWorkload{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/backupprotectedfileshare/zz_controller.go b/internal/controller/recoveryservices/backupprotectedfileshare/zz_controller.go index f1aa9412e..2945b045d 100755 --- a/internal/controller/recoveryservices/backupprotectedfileshare/zz_controller.go +++ b/internal/controller/recoveryservices/backupprotectedfileshare/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupProtectedFileShare_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_backup_protected_file_share"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupProtectedFileShare_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupProtectedFileShare{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupProtectedFileShare{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/backupprotectedvm/zz_controller.go b/internal/controller/recoveryservices/backupprotectedvm/zz_controller.go index 6a6ac83d9..6584f7cad 100755 --- a/internal/controller/recoveryservices/backupprotectedvm/zz_controller.go +++ b/internal/controller/recoveryservices/backupprotectedvm/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupProtectedVM_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_backup_protected_vm"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BackupProtectedVM_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BackupProtectedVM{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BackupProtectedVM{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/siterecoveryfabric/zz_controller.go b/internal/controller/recoveryservices/siterecoveryfabric/zz_controller.go index 9b8138a01..9d62a1313 100755 --- a/internal/controller/recoveryservices/siterecoveryfabric/zz_controller.go +++ b/internal/controller/recoveryservices/siterecoveryfabric/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SiteRecoveryFabric_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_site_recovery_fabric"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SiteRecoveryFabric_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SiteRecoveryFabric{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SiteRecoveryFabric{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/siterecoverynetworkmapping/zz_controller.go b/internal/controller/recoveryservices/siterecoverynetworkmapping/zz_controller.go index ff16dbaf8..0dbafe7e2 100755 --- a/internal/controller/recoveryservices/siterecoverynetworkmapping/zz_controller.go +++ b/internal/controller/recoveryservices/siterecoverynetworkmapping/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SiteRecoveryNetworkMapping_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_site_recovery_network_mapping"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SiteRecoveryNetworkMapping_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SiteRecoveryNetworkMapping{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SiteRecoveryNetworkMapping{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/siterecoveryprotectioncontainer/zz_controller.go b/internal/controller/recoveryservices/siterecoveryprotectioncontainer/zz_controller.go index af42c3518..bfb7fdc28 100755 --- a/internal/controller/recoveryservices/siterecoveryprotectioncontainer/zz_controller.go +++ b/internal/controller/recoveryservices/siterecoveryprotectioncontainer/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SiteRecoveryProtectionContainer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_site_recovery_protection_container"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SiteRecoveryProtectionContainer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SiteRecoveryProtectionContainer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SiteRecoveryProtectionContainer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/siterecoveryprotectioncontainermapping/zz_controller.go b/internal/controller/recoveryservices/siterecoveryprotectioncontainermapping/zz_controller.go index e82ceba0a..ababf22a2 100755 --- a/internal/controller/recoveryservices/siterecoveryprotectioncontainermapping/zz_controller.go +++ b/internal/controller/recoveryservices/siterecoveryprotectioncontainermapping/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SiteRecoveryProtectionContainerMapping_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_site_recovery_protection_container_mapping"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SiteRecoveryProtectionContainerMapping_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SiteRecoveryProtectionContainerMapping{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SiteRecoveryProtectionContainerMapping{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/siterecoveryreplicationpolicy/zz_controller.go b/internal/controller/recoveryservices/siterecoveryreplicationpolicy/zz_controller.go index 9531a901e..30bf085dd 100755 --- a/internal/controller/recoveryservices/siterecoveryreplicationpolicy/zz_controller.go +++ b/internal/controller/recoveryservices/siterecoveryreplicationpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SiteRecoveryReplicationPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_site_recovery_replication_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SiteRecoveryReplicationPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SiteRecoveryReplicationPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SiteRecoveryReplicationPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/recoveryservices/vault/zz_controller.go b/internal/controller/recoveryservices/vault/zz_controller.go index d4c955ca4..cf3831620 100755 --- a/internal/controller/recoveryservices/vault/zz_controller.go +++ b/internal/controller/recoveryservices/vault/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Vault_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_recovery_services_vault"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Vault_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Vault{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Vault{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/relay/eventrelaynamespace/zz_controller.go b/internal/controller/relay/eventrelaynamespace/zz_controller.go index 79ccd969a..f5c296e7a 100755 --- a/internal/controller/relay/eventrelaynamespace/zz_controller.go +++ b/internal/controller/relay/eventrelaynamespace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventRelayNamespace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_relay_namespace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventRelayNamespace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.EventRelayNamespace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.EventRelayNamespace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/relay/hybridconnection/zz_controller.go b/internal/controller/relay/hybridconnection/zz_controller.go index 6ec1637fa..b287a802d 100755 --- a/internal/controller/relay/hybridconnection/zz_controller.go +++ b/internal/controller/relay/hybridconnection/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HybridConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_relay_hybrid_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HybridConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HybridConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HybridConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/relay/hybridconnectionauthorizationrule/zz_controller.go b/internal/controller/relay/hybridconnectionauthorizationrule/zz_controller.go index c13edfa73..981b29174 100755 --- a/internal/controller/relay/hybridconnectionauthorizationrule/zz_controller.go +++ b/internal/controller/relay/hybridconnectionauthorizationrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HybridConnectionAuthorizationRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_relay_hybrid_connection_authorization_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HybridConnectionAuthorizationRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HybridConnectionAuthorizationRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HybridConnectionAuthorizationRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/relay/namespaceauthorizationrule/zz_controller.go b/internal/controller/relay/namespaceauthorizationrule/zz_controller.go index 9fe7a6d6f..d486ef3a7 100755 --- a/internal/controller/relay/namespaceauthorizationrule/zz_controller.go +++ b/internal/controller/relay/namespaceauthorizationrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceAuthorizationRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_relay_namespace_authorization_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceAuthorizationRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NamespaceAuthorizationRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NamespaceAuthorizationRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/resources/resourcedeploymentscriptazurecli/zz_controller.go b/internal/controller/resources/resourcedeploymentscriptazurecli/zz_controller.go index e922ea6e1..cbf2669b9 100755 --- a/internal/controller/resources/resourcedeploymentscriptazurecli/zz_controller.go +++ b/internal/controller/resources/resourcedeploymentscriptazurecli/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceDeploymentScriptAzureCli_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_resource_deployment_script_azure_cli"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceDeploymentScriptAzureCli_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourceDeploymentScriptAzureCli{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourceDeploymentScriptAzureCli{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/resources/resourcedeploymentscriptazurepowershell/zz_controller.go b/internal/controller/resources/resourcedeploymentscriptazurepowershell/zz_controller.go index 4a2c4ca37..a6a11956a 100755 --- a/internal/controller/resources/resourcedeploymentscriptazurepowershell/zz_controller.go +++ b/internal/controller/resources/resourcedeploymentscriptazurepowershell/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceDeploymentScriptAzurePowerShell_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_resource_deployment_script_azure_power_shell"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceDeploymentScriptAzurePowerShell_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourceDeploymentScriptAzurePowerShell{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourceDeploymentScriptAzurePowerShell{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/resources/resourcegrouptemplatedeployment/zz_controller.go b/internal/controller/resources/resourcegrouptemplatedeployment/zz_controller.go index f365e509e..f68294375 100755 --- a/internal/controller/resources/resourcegrouptemplatedeployment/zz_controller.go +++ b/internal/controller/resources/resourcegrouptemplatedeployment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceGroupTemplateDeployment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_resource_group_template_deployment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ResourceGroupTemplateDeployment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ResourceGroupTemplateDeployment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ResourceGroupTemplateDeployment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/resources/subscriptiontemplatedeployment/zz_controller.go b/internal/controller/resources/subscriptiontemplatedeployment/zz_controller.go index 276b9dda7..526a81424 100755 --- a/internal/controller/resources/subscriptiontemplatedeployment/zz_controller.go +++ b/internal/controller/resources/subscriptiontemplatedeployment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionTemplateDeployment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_subscription_template_deployment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionTemplateDeployment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubscriptionTemplateDeployment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubscriptionTemplateDeployment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/search/service/zz_controller.go b/internal/controller/search/service/zz_controller.go index af0f67a50..df1154ce4 100755 --- a/internal/controller/search/service/zz_controller.go +++ b/internal/controller/search/service/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Service_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_search_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Service_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Service{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Service{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/search/sharedprivatelinkservice/zz_controller.go b/internal/controller/search/sharedprivatelinkservice/zz_controller.go index 7185d0213..5d7855544 100755 --- a/internal/controller/search/sharedprivatelinkservice/zz_controller.go +++ b/internal/controller/search/sharedprivatelinkservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SharedPrivateLinkService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_search_shared_private_link_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SharedPrivateLinkService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SharedPrivateLinkService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SharedPrivateLinkService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/advancedthreatprotection/zz_controller.go b/internal/controller/security/advancedthreatprotection/zz_controller.go index 33f95e8c9..9988f5a11 100755 --- a/internal/controller/security/advancedthreatprotection/zz_controller.go +++ b/internal/controller/security/advancedthreatprotection/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AdvancedThreatProtection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_advanced_threat_protection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AdvancedThreatProtection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AdvancedThreatProtection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AdvancedThreatProtection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/iotsecuritydevicegroup/zz_controller.go b/internal/controller/security/iotsecuritydevicegroup/zz_controller.go index b7e18b1a3..2a74b88ea 100755 --- a/internal/controller/security/iotsecuritydevicegroup/zz_controller.go +++ b/internal/controller/security/iotsecuritydevicegroup/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTSecurityDeviceGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iot_security_device_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTSecurityDeviceGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTSecurityDeviceGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTSecurityDeviceGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/iotsecuritysolution/zz_controller.go b/internal/controller/security/iotsecuritysolution/zz_controller.go index 52279a9b4..d26ef0da2 100755 --- a/internal/controller/security/iotsecuritysolution/zz_controller.go +++ b/internal/controller/security/iotsecuritysolution/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTSecuritySolution_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iot_security_solution"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IOTSecuritySolution_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IOTSecuritySolution{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IOTSecuritySolution{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/securitycenterassessment/zz_controller.go b/internal/controller/security/securitycenterassessment/zz_controller.go index 7f317be3b..c175757e3 100755 --- a/internal/controller/security/securitycenterassessment/zz_controller.go +++ b/internal/controller/security/securitycenterassessment/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterAssessment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_security_center_assessment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterAssessment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityCenterAssessment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityCenterAssessment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/securitycenterassessmentpolicy/zz_controller.go b/internal/controller/security/securitycenterassessmentpolicy/zz_controller.go index 29fa0dbb6..17e43c304 100755 --- a/internal/controller/security/securitycenterassessmentpolicy/zz_controller.go +++ b/internal/controller/security/securitycenterassessmentpolicy/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterAssessmentPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_security_center_assessment_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterAssessmentPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityCenterAssessmentPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityCenterAssessmentPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/securitycenterautoprovisioning/zz_controller.go b/internal/controller/security/securitycenterautoprovisioning/zz_controller.go index e129ff3f7..402fcd58d 100755 --- a/internal/controller/security/securitycenterautoprovisioning/zz_controller.go +++ b/internal/controller/security/securitycenterautoprovisioning/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterAutoProvisioning_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_security_center_auto_provisioning"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterAutoProvisioning_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityCenterAutoProvisioning{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityCenterAutoProvisioning{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/securitycentercontact/zz_controller.go b/internal/controller/security/securitycentercontact/zz_controller.go index 7f3b80163..84d267357 100755 --- a/internal/controller/security/securitycentercontact/zz_controller.go +++ b/internal/controller/security/securitycentercontact/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterContact_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_security_center_contact"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterContact_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityCenterContact{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityCenterContact{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/securitycenterservervulnerabilityassessment/zz_controller.go b/internal/controller/security/securitycenterservervulnerabilityassessment/zz_controller.go index d7f1bcd57..b1ed5abae 100755 --- a/internal/controller/security/securitycenterservervulnerabilityassessment/zz_controller.go +++ b/internal/controller/security/securitycenterservervulnerabilityassessment/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterServerVulnerabilityAssessment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_security_center_server_vulnerability_assessment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterServerVulnerabilityAssessment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityCenterServerVulnerabilityAssessment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityCenterServerVulnerabilityAssessment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/securitycenterservervulnerabilityassessmentvirtualmachine/zz_controller.go b/internal/controller/security/securitycenterservervulnerabilityassessmentvirtualmachine/zz_controller.go index 9913bcf1d..6adc00ae2 100755 --- a/internal/controller/security/securitycenterservervulnerabilityassessmentvirtualmachine/zz_controller.go +++ b/internal/controller/security/securitycenterservervulnerabilityassessmentvirtualmachine/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterServerVulnerabilityAssessmentVirtualMachine_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_security_center_server_vulnerability_assessment_virtual_machine"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterServerVulnerabilityAssessmentVirtualMachine_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityCenterServerVulnerabilityAssessmentVirtualMachine{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityCenterServerVulnerabilityAssessmentVirtualMachine{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/securitycentersetting/zz_controller.go b/internal/controller/security/securitycentersetting/zz_controller.go index 0a48b0107..89610e5db 100755 --- a/internal/controller/security/securitycentersetting/zz_controller.go +++ b/internal/controller/security/securitycentersetting/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterSetting_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_security_center_setting"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterSetting_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityCenterSetting{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityCenterSetting{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/securitycentersubscriptionpricing/zz_controller.go b/internal/controller/security/securitycentersubscriptionpricing/zz_controller.go index b9b809abe..13afb5a5f 100755 --- a/internal/controller/security/securitycentersubscriptionpricing/zz_controller.go +++ b/internal/controller/security/securitycentersubscriptionpricing/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterSubscriptionPricing_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_security_center_subscription_pricing"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterSubscriptionPricing_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityCenterSubscriptionPricing{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityCenterSubscriptionPricing{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/security/securitycenterworkspace/zz_controller.go b/internal/controller/security/securitycenterworkspace/zz_controller.go index 87e593d64..50e7433e9 100755 --- a/internal/controller/security/securitycenterworkspace/zz_controller.go +++ b/internal/controller/security/securitycenterworkspace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterWorkspace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_security_center_workspace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SecurityCenterWorkspace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SecurityCenterWorkspace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SecurityCenterWorkspace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/securityinsights/sentinelalertrulefusion/zz_controller.go b/internal/controller/securityinsights/sentinelalertrulefusion/zz_controller.go index ddbccee0b..870b30543 100755 --- a/internal/controller/securityinsights/sentinelalertrulefusion/zz_controller.go +++ b/internal/controller/securityinsights/sentinelalertrulefusion/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelAlertRuleFusion_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_sentinel_alert_rule_fusion"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelAlertRuleFusion_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SentinelAlertRuleFusion{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SentinelAlertRuleFusion{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/securityinsights/sentinelalertrulemachinelearningbehavioranalytics/zz_controller.go b/internal/controller/securityinsights/sentinelalertrulemachinelearningbehavioranalytics/zz_controller.go index 41c9bd936..cc8479128 100755 --- a/internal/controller/securityinsights/sentinelalertrulemachinelearningbehavioranalytics/zz_controller.go +++ b/internal/controller/securityinsights/sentinelalertrulemachinelearningbehavioranalytics/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelAlertRuleMachineLearningBehaviorAnalytics_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_sentinel_alert_rule_machine_learning_behavior_analytics"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelAlertRuleMachineLearningBehaviorAnalytics_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SentinelAlertRuleMachineLearningBehaviorAnalytics{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SentinelAlertRuleMachineLearningBehaviorAnalytics{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/securityinsights/sentinelalertrulemssecurityincident/zz_controller.go b/internal/controller/securityinsights/sentinelalertrulemssecurityincident/zz_controller.go index faacd8320..2c2809c31 100755 --- a/internal/controller/securityinsights/sentinelalertrulemssecurityincident/zz_controller.go +++ b/internal/controller/securityinsights/sentinelalertrulemssecurityincident/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelAlertRuleMSSecurityIncident_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_sentinel_alert_rule_ms_security_incident"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelAlertRuleMSSecurityIncident_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SentinelAlertRuleMSSecurityIncident{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SentinelAlertRuleMSSecurityIncident{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/securityinsights/sentinelautomationrule/zz_controller.go b/internal/controller/securityinsights/sentinelautomationrule/zz_controller.go index bb4498795..b43d16a27 100755 --- a/internal/controller/securityinsights/sentinelautomationrule/zz_controller.go +++ b/internal/controller/securityinsights/sentinelautomationrule/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelAutomationRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_sentinel_automation_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelAutomationRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SentinelAutomationRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SentinelAutomationRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/securityinsights/sentineldataconnectoriot/zz_controller.go b/internal/controller/securityinsights/sentineldataconnectoriot/zz_controller.go index 52665f9f0..51f4d4b4e 100755 --- a/internal/controller/securityinsights/sentineldataconnectoriot/zz_controller.go +++ b/internal/controller/securityinsights/sentineldataconnectoriot/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelDataConnectorIOT_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_sentinel_data_connector_iot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelDataConnectorIOT_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SentinelDataConnectorIOT{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SentinelDataConnectorIOT{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/securityinsights/sentinelloganalyticsworkspaceonboarding/zz_controller.go b/internal/controller/securityinsights/sentinelloganalyticsworkspaceonboarding/zz_controller.go index 34f7c5c37..7d0ed6c1b 100755 --- a/internal/controller/securityinsights/sentinelloganalyticsworkspaceonboarding/zz_controller.go +++ b/internal/controller/securityinsights/sentinelloganalyticsworkspaceonboarding/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelLogAnalyticsWorkspaceOnboarding_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_sentinel_log_analytics_workspace_onboarding"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelLogAnalyticsWorkspaceOnboarding_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SentinelLogAnalyticsWorkspaceOnboarding{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SentinelLogAnalyticsWorkspaceOnboarding{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/securityinsights/sentinelwatchlist/zz_controller.go b/internal/controller/securityinsights/sentinelwatchlist/zz_controller.go index b538b1e04..89b94c007 100755 --- a/internal/controller/securityinsights/sentinelwatchlist/zz_controller.go +++ b/internal/controller/securityinsights/sentinelwatchlist/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelWatchlist_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_sentinel_watchlist"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SentinelWatchlist_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SentinelWatchlist{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SentinelWatchlist{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicebus/namespaceauthorizationrule/zz_controller.go b/internal/controller/servicebus/namespaceauthorizationrule/zz_controller.go index 53a1d2f28..d6964c2c7 100755 --- a/internal/controller/servicebus/namespaceauthorizationrule/zz_controller.go +++ b/internal/controller/servicebus/namespaceauthorizationrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceAuthorizationRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_servicebus_namespace_authorization_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceAuthorizationRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NamespaceAuthorizationRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NamespaceAuthorizationRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicebus/namespacedisasterrecoveryconfig/zz_controller.go b/internal/controller/servicebus/namespacedisasterrecoveryconfig/zz_controller.go index 657e65569..01e3858a6 100755 --- a/internal/controller/servicebus/namespacedisasterrecoveryconfig/zz_controller.go +++ b/internal/controller/servicebus/namespacedisasterrecoveryconfig/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceDisasterRecoveryConfig_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_servicebus_namespace_disaster_recovery_config"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceDisasterRecoveryConfig_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NamespaceDisasterRecoveryConfig{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NamespaceDisasterRecoveryConfig{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicebus/namespacenetworkruleset/zz_controller.go b/internal/controller/servicebus/namespacenetworkruleset/zz_controller.go index 666ff597c..2268a3193 100755 --- a/internal/controller/servicebus/namespacenetworkruleset/zz_controller.go +++ b/internal/controller/servicebus/namespacenetworkruleset/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceNetworkRuleSet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_servicebus_namespace_network_rule_set"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NamespaceNetworkRuleSet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NamespaceNetworkRuleSet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NamespaceNetworkRuleSet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicebus/queue/zz_controller.go b/internal/controller/servicebus/queue/zz_controller.go index c88921f59..f64109894 100755 --- a/internal/controller/servicebus/queue/zz_controller.go +++ b/internal/controller/servicebus/queue/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Queue_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_servicebus_queue"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Queue_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Queue{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Queue{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicebus/queueauthorizationrule/zz_controller.go b/internal/controller/servicebus/queueauthorizationrule/zz_controller.go index 430630bdc..f6f852f74 100755 --- a/internal/controller/servicebus/queueauthorizationrule/zz_controller.go +++ b/internal/controller/servicebus/queueauthorizationrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.QueueAuthorizationRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_servicebus_queue_authorization_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.QueueAuthorizationRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.QueueAuthorizationRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.QueueAuthorizationRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicebus/servicebusnamespace/zz_controller.go b/internal/controller/servicebus/servicebusnamespace/zz_controller.go index 5e163e6a8..32c07a058 100755 --- a/internal/controller/servicebus/servicebusnamespace/zz_controller.go +++ b/internal/controller/servicebus/servicebusnamespace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ServiceBusNamespace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_servicebus_namespace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ServiceBusNamespace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ServiceBusNamespace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ServiceBusNamespace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicebus/subscription/zz_controller.go b/internal/controller/servicebus/subscription/zz_controller.go index 6fe6ef4df..bd0b94274 100755 --- a/internal/controller/servicebus/subscription/zz_controller.go +++ b/internal/controller/servicebus/subscription/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Subscription_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_servicebus_subscription"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Subscription_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Subscription{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Subscription{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicebus/subscriptionrule/zz_controller.go b/internal/controller/servicebus/subscriptionrule/zz_controller.go index 8314f0558..39291dac9 100755 --- a/internal/controller/servicebus/subscriptionrule/zz_controller.go +++ b/internal/controller/servicebus/subscriptionrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_servicebus_subscription_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SubscriptionRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SubscriptionRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SubscriptionRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicebus/topic/zz_controller.go b/internal/controller/servicebus/topic/zz_controller.go index 0da37ca91..21c0441c7 100755 --- a/internal/controller/servicebus/topic/zz_controller.go +++ b/internal/controller/servicebus/topic/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Topic_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_servicebus_topic"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Topic_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Topic{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Topic{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicebus/topicauthorizationrule/zz_controller.go b/internal/controller/servicebus/topicauthorizationrule/zz_controller.go index 43702404d..125966793 100755 --- a/internal/controller/servicebus/topicauthorizationrule/zz_controller.go +++ b/internal/controller/servicebus/topicauthorizationrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TopicAuthorizationRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_servicebus_topic_authorization_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TopicAuthorizationRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TopicAuthorizationRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TopicAuthorizationRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicefabric/cluster/zz_controller.go b/internal/controller/servicefabric/cluster/zz_controller.go index 2284de02d..21b08aacf 100755 --- a/internal/controller/servicefabric/cluster/zz_controller.go +++ b/internal/controller/servicefabric/cluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Cluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_service_fabric_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Cluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Cluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Cluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicefabric/managedcluster/zz_controller.go b/internal/controller/servicefabric/managedcluster/zz_controller.go index b7fcbce7c..da2223466 100755 --- a/internal/controller/servicefabric/managedcluster/zz_controller.go +++ b/internal/controller/servicefabric/managedcluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedCluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_service_fabric_managed_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedCluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagedCluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagedCluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/servicelinker/springcloudconnection/zz_controller.go b/internal/controller/servicelinker/springcloudconnection/zz_controller.go index e7fd145c7..82de45be9 100755 --- a/internal/controller/servicelinker/springcloudconnection/zz_controller.go +++ b/internal/controller/servicelinker/springcloudconnection/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SpringCloudConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SpringCloudConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SpringCloudConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/signalrservice/networkacl/zz_controller.go b/internal/controller/signalrservice/networkacl/zz_controller.go index 1f1eaf3d2..8adf8d203 100755 --- a/internal/controller/signalrservice/networkacl/zz_controller.go +++ b/internal/controller/signalrservice/networkacl/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NetworkACL_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_signalr_service_network_acl"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.NetworkACL_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.NetworkACL{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.NetworkACL{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/signalrservice/service/zz_controller.go b/internal/controller/signalrservice/service/zz_controller.go index a9f04157b..c10d4c08e 100755 --- a/internal/controller/signalrservice/service/zz_controller.go +++ b/internal/controller/signalrservice/service/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Service_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_signalr_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Service_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Service{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Service{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/signalrservice/signalrsharedprivatelinkresource/zz_controller.go b/internal/controller/signalrservice/signalrsharedprivatelinkresource/zz_controller.go index a5868e700..0fe1dfdbd 100755 --- a/internal/controller/signalrservice/signalrsharedprivatelinkresource/zz_controller.go +++ b/internal/controller/signalrservice/signalrsharedprivatelinkresource/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SignalrSharedPrivateLinkResource_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_signalr_shared_private_link_resource"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SignalrSharedPrivateLinkResource_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SignalrSharedPrivateLinkResource{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SignalrSharedPrivateLinkResource{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/signalrservice/webpubsub/zz_controller.go b/internal/controller/signalrservice/webpubsub/zz_controller.go index ee46590ad..e8334291e 100755 --- a/internal/controller/signalrservice/webpubsub/zz_controller.go +++ b/internal/controller/signalrservice/webpubsub/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WebPubsub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_web_pubsub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WebPubsub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WebPubsub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WebPubsub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/signalrservice/webpubsubhub/zz_controller.go b/internal/controller/signalrservice/webpubsubhub/zz_controller.go index 9f69c87e4..5aa53ca63 100755 --- a/internal/controller/signalrservice/webpubsubhub/zz_controller.go +++ b/internal/controller/signalrservice/webpubsubhub/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WebPubsubHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_web_pubsub_hub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WebPubsubHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WebPubsubHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WebPubsubHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/signalrservice/webpubsubnetworkacl/zz_controller.go b/internal/controller/signalrservice/webpubsubnetworkacl/zz_controller.go index 1a9a0502c..e645923bd 100755 --- a/internal/controller/signalrservice/webpubsubnetworkacl/zz_controller.go +++ b/internal/controller/signalrservice/webpubsubnetworkacl/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WebPubsubNetworkACL_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_web_pubsub_network_acl"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WebPubsubNetworkACL_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WebPubsubNetworkACL{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WebPubsubNetworkACL{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/solutions/managedapplicationdefinition/zz_controller.go b/internal/controller/solutions/managedapplicationdefinition/zz_controller.go index dbff99c18..82c0b989c 100755 --- a/internal/controller/solutions/managedapplicationdefinition/zz_controller.go +++ b/internal/controller/solutions/managedapplicationdefinition/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedApplicationDefinition_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_managed_application_definition"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedApplicationDefinition_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagedApplicationDefinition{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagedApplicationDefinition{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/spring/cloudapplicationliveview/zz_controller.go b/internal/controller/spring/cloudapplicationliveview/zz_controller.go index 4808f7ced..c268d4b15 100755 --- a/internal/controller/spring/cloudapplicationliveview/zz_controller.go +++ b/internal/controller/spring/cloudapplicationliveview/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CloudApplicationLiveView_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_spring_cloud_application_live_view"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.CloudApplicationLiveView_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.CloudApplicationLiveView{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.CloudApplicationLiveView{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqldatabase/zz_controller.go b/internal/controller/sql/mssqldatabase/zz_controller.go index 16ce715a4..24d3008c5 100755 --- a/internal/controller/sql/mssqldatabase/zz_controller.go +++ b/internal/controller/sql/mssqldatabase/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLDatabase_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLDatabase_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLDatabase{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLDatabase{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqldatabaseextendedauditingpolicy/zz_controller.go b/internal/controller/sql/mssqldatabaseextendedauditingpolicy/zz_controller.go index 7de90ce56..9e5602ce9 100755 --- a/internal/controller/sql/mssqldatabaseextendedauditingpolicy/zz_controller.go +++ b/internal/controller/sql/mssqldatabaseextendedauditingpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLDatabaseExtendedAuditingPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_database_extended_auditing_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLDatabaseExtendedAuditingPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLDatabaseExtendedAuditingPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLDatabaseExtendedAuditingPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqldatabasevulnerabilityassessmentrulebaseline/zz_controller.go b/internal/controller/sql/mssqldatabasevulnerabilityassessmentrulebaseline/zz_controller.go index cae05d66b..1a28634e9 100755 --- a/internal/controller/sql/mssqldatabasevulnerabilityassessmentrulebaseline/zz_controller.go +++ b/internal/controller/sql/mssqldatabasevulnerabilityassessmentrulebaseline/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLDatabaseVulnerabilityAssessmentRuleBaseline_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_database_vulnerability_assessment_rule_baseline"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLDatabaseVulnerabilityAssessmentRuleBaseline_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLDatabaseVulnerabilityAssessmentRuleBaseline{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLDatabaseVulnerabilityAssessmentRuleBaseline{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlelasticpool/zz_controller.go b/internal/controller/sql/mssqlelasticpool/zz_controller.go index c2b00a4f4..46f193a6d 100755 --- a/internal/controller/sql/mssqlelasticpool/zz_controller.go +++ b/internal/controller/sql/mssqlelasticpool/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLElasticPool_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_elasticpool"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLElasticPool_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLElasticPool{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLElasticPool{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlfailovergroup/zz_controller.go b/internal/controller/sql/mssqlfailovergroup/zz_controller.go index 0ae060ec3..7a8f5ec94 100755 --- a/internal/controller/sql/mssqlfailovergroup/zz_controller.go +++ b/internal/controller/sql/mssqlfailovergroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLFailoverGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_failover_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLFailoverGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLFailoverGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLFailoverGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlfirewallrule/zz_controller.go b/internal/controller/sql/mssqlfirewallrule/zz_controller.go index 58ae0140c..0a289fb0d 100755 --- a/internal/controller/sql/mssqlfirewallrule/zz_controller.go +++ b/internal/controller/sql/mssqlfirewallrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLFirewallRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_firewall_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLFirewallRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLFirewallRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLFirewallRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqljobagent/zz_controller.go b/internal/controller/sql/mssqljobagent/zz_controller.go index 27415127f..d939d2c4d 100755 --- a/internal/controller/sql/mssqljobagent/zz_controller.go +++ b/internal/controller/sql/mssqljobagent/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLJobAgent_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_job_agent"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLJobAgent_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLJobAgent{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLJobAgent{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqljobcredential/zz_controller.go b/internal/controller/sql/mssqljobcredential/zz_controller.go index 8dfe1f500..4e8c72b5d 100755 --- a/internal/controller/sql/mssqljobcredential/zz_controller.go +++ b/internal/controller/sql/mssqljobcredential/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLJobCredential_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_job_credential"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLJobCredential_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLJobCredential{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLJobCredential{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlmanageddatabase/zz_controller.go b/internal/controller/sql/mssqlmanageddatabase/zz_controller.go index 30ab201d1..90f566a30 100755 --- a/internal/controller/sql/mssqlmanageddatabase/zz_controller.go +++ b/internal/controller/sql/mssqlmanageddatabase/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLManagedDatabase_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_managed_database"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLManagedDatabase_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLManagedDatabase{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLManagedDatabase{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlmanagedinstance/zz_controller.go b/internal/controller/sql/mssqlmanagedinstance/zz_controller.go index d34e4a7a7..fc0824b24 100755 --- a/internal/controller/sql/mssqlmanagedinstance/zz_controller.go +++ b/internal/controller/sql/mssqlmanagedinstance/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLManagedInstance_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_managed_instance"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLManagedInstance_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLManagedInstance{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLManagedInstance{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlmanagedinstanceactivedirectoryadministrator/zz_controller.go b/internal/controller/sql/mssqlmanagedinstanceactivedirectoryadministrator/zz_controller.go index 5a9019d38..ab29c0a71 100755 --- a/internal/controller/sql/mssqlmanagedinstanceactivedirectoryadministrator/zz_controller.go +++ b/internal/controller/sql/mssqlmanagedinstanceactivedirectoryadministrator/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLManagedInstanceActiveDirectoryAdministrator_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_managed_instance_active_directory_administrator"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLManagedInstanceActiveDirectoryAdministrator_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLManagedInstanceActiveDirectoryAdministrator{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLManagedInstanceActiveDirectoryAdministrator{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlmanagedinstancefailovergroup/zz_controller.go b/internal/controller/sql/mssqlmanagedinstancefailovergroup/zz_controller.go index dcc558eca..87a0724fe 100755 --- a/internal/controller/sql/mssqlmanagedinstancefailovergroup/zz_controller.go +++ b/internal/controller/sql/mssqlmanagedinstancefailovergroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLManagedInstanceFailoverGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_managed_instance_failover_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLManagedInstanceFailoverGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLManagedInstanceFailoverGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLManagedInstanceFailoverGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlmanagedinstancevulnerabilityassessment/zz_controller.go b/internal/controller/sql/mssqlmanagedinstancevulnerabilityassessment/zz_controller.go index 9f66dd74e..1045e1557 100755 --- a/internal/controller/sql/mssqlmanagedinstancevulnerabilityassessment/zz_controller.go +++ b/internal/controller/sql/mssqlmanagedinstancevulnerabilityassessment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLManagedInstanceVulnerabilityAssessment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_managed_instance_vulnerability_assessment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLManagedInstanceVulnerabilityAssessment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLManagedInstanceVulnerabilityAssessment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLManagedInstanceVulnerabilityAssessment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqloutboundfirewallrule/zz_controller.go b/internal/controller/sql/mssqloutboundfirewallrule/zz_controller.go index 07aa043b4..859e55f4f 100755 --- a/internal/controller/sql/mssqloutboundfirewallrule/zz_controller.go +++ b/internal/controller/sql/mssqloutboundfirewallrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLOutboundFirewallRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_outbound_firewall_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLOutboundFirewallRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLOutboundFirewallRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLOutboundFirewallRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlserver/zz_controller.go b/internal/controller/sql/mssqlserver/zz_controller.go index 510a709e2..feb2f799d 100755 --- a/internal/controller/sql/mssqlserver/zz_controller.go +++ b/internal/controller/sql/mssqlserver/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLServer_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_server"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLServer_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLServer{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLServer{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlserverdnsalias/zz_controller.go b/internal/controller/sql/mssqlserverdnsalias/zz_controller.go index 1ab7a9c21..ae0688ddb 100755 --- a/internal/controller/sql/mssqlserverdnsalias/zz_controller.go +++ b/internal/controller/sql/mssqlserverdnsalias/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLServerDNSAlias_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_server_dns_alias"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLServerDNSAlias_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLServerDNSAlias{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLServerDNSAlias{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlservermicrosoftsupportauditingpolicy/zz_controller.go b/internal/controller/sql/mssqlservermicrosoftsupportauditingpolicy/zz_controller.go index 7638294b5..cb09b6b71 100755 --- a/internal/controller/sql/mssqlservermicrosoftsupportauditingpolicy/zz_controller.go +++ b/internal/controller/sql/mssqlservermicrosoftsupportauditingpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLServerMicrosoftSupportAuditingPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_server_microsoft_support_auditing_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLServerMicrosoftSupportAuditingPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLServerMicrosoftSupportAuditingPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLServerMicrosoftSupportAuditingPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlserversecurityalertpolicy/zz_controller.go b/internal/controller/sql/mssqlserversecurityalertpolicy/zz_controller.go index 6a8632837..29e94e9ae 100755 --- a/internal/controller/sql/mssqlserversecurityalertpolicy/zz_controller.go +++ b/internal/controller/sql/mssqlserversecurityalertpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLServerSecurityAlertPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_server_security_alert_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLServerSecurityAlertPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLServerSecurityAlertPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLServerSecurityAlertPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlservertransparentdataencryption/zz_controller.go b/internal/controller/sql/mssqlservertransparentdataencryption/zz_controller.go index e4aeea0bf..52e2f6e3c 100755 --- a/internal/controller/sql/mssqlservertransparentdataencryption/zz_controller.go +++ b/internal/controller/sql/mssqlservertransparentdataencryption/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLServerTransparentDataEncryption{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLServerTransparentDataEncryption{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlservervulnerabilityassessment/zz_controller.go b/internal/controller/sql/mssqlservervulnerabilityassessment/zz_controller.go index 46fd6bea8..7e33d14c4 100755 --- a/internal/controller/sql/mssqlservervulnerabilityassessment/zz_controller.go +++ b/internal/controller/sql/mssqlservervulnerabilityassessment/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLServerVulnerabilityAssessment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_server_vulnerability_assessment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLServerVulnerabilityAssessment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLServerVulnerabilityAssessment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLServerVulnerabilityAssessment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/sql/mssqlvirtualnetworkrule/zz_controller.go b/internal/controller/sql/mssqlvirtualnetworkrule/zz_controller.go index 255d578a5..df3247695 100755 --- a/internal/controller/sql/mssqlvirtualnetworkrule/zz_controller.go +++ b/internal/controller/sql/mssqlvirtualnetworkrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLVirtualNetworkRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_mssql_virtual_network_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.MSSQLVirtualNetworkRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.MSSQLVirtualNetworkRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.MSSQLVirtualNetworkRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/account/zz_controller.go b/internal/controller/storage/account/zz_controller.go index be0a28c58..1fd559378 100755 --- a/internal/controller/storage/account/zz_controller.go +++ b/internal/controller/storage/account/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_account"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Account_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Account{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Account{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/accountlocaluser/zz_controller.go b/internal/controller/storage/accountlocaluser/zz_controller.go index 728f70d27..96987d433 100755 --- a/internal/controller/storage/accountlocaluser/zz_controller.go +++ b/internal/controller/storage/accountlocaluser/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AccountLocalUser_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_account_local_user"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AccountLocalUser_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AccountLocalUser{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AccountLocalUser{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/accountnetworkrules/zz_controller.go b/internal/controller/storage/accountnetworkrules/zz_controller.go index 398a9fa46..09b853fd0 100755 --- a/internal/controller/storage/accountnetworkrules/zz_controller.go +++ b/internal/controller/storage/accountnetworkrules/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AccountNetworkRules_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_account_network_rules"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AccountNetworkRules_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AccountNetworkRules{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AccountNetworkRules{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/blob/zz_controller.go b/internal/controller/storage/blob/zz_controller.go index 968e9060a..5683d0da9 100755 --- a/internal/controller/storage/blob/zz_controller.go +++ b/internal/controller/storage/blob/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Blob_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_blob"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Blob_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Blob{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Blob{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/blobinventorypolicy/zz_controller.go b/internal/controller/storage/blobinventorypolicy/zz_controller.go index 84b7681a5..afbd996a3 100755 --- a/internal/controller/storage/blobinventorypolicy/zz_controller.go +++ b/internal/controller/storage/blobinventorypolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BlobInventoryPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_blob_inventory_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.BlobInventoryPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.BlobInventoryPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.BlobInventoryPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/container/zz_controller.go b/internal/controller/storage/container/zz_controller.go index 75c0ba1cd..4cb4ee278 100755 --- a/internal/controller/storage/container/zz_controller.go +++ b/internal/controller/storage/container/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Container_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_container"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Container_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Container{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Container{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/datalakegen2filesystem/zz_controller.go b/internal/controller/storage/datalakegen2filesystem/zz_controller.go index d02c1f98d..0f02e4ab7 100755 --- a/internal/controller/storage/datalakegen2filesystem/zz_controller.go +++ b/internal/controller/storage/datalakegen2filesystem/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataLakeGen2FileSystem_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_data_lake_gen2_filesystem"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataLakeGen2FileSystem_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataLakeGen2FileSystem{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataLakeGen2FileSystem{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/datalakegen2path/zz_controller.go b/internal/controller/storage/datalakegen2path/zz_controller.go index 9984a983d..a8e726c31 100755 --- a/internal/controller/storage/datalakegen2path/zz_controller.go +++ b/internal/controller/storage/datalakegen2path/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataLakeGen2Path_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_data_lake_gen2_path"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DataLakeGen2Path_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DataLakeGen2Path{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DataLakeGen2Path{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/encryptionscope/zz_controller.go b/internal/controller/storage/encryptionscope/zz_controller.go index 237a351b0..15f6d7f6e 100755 --- a/internal/controller/storage/encryptionscope/zz_controller.go +++ b/internal/controller/storage/encryptionscope/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EncryptionScope_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_encryption_scope"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EncryptionScope_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.EncryptionScope{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.EncryptionScope{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/managementpolicy/zz_controller.go b/internal/controller/storage/managementpolicy/zz_controller.go index c341b5861..08e6f4203 100755 --- a/internal/controller/storage/managementpolicy/zz_controller.go +++ b/internal/controller/storage/managementpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagementPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_management_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagementPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagementPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagementPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/objectreplication/zz_controller.go b/internal/controller/storage/objectreplication/zz_controller.go index 98b06c06c..1b876dc0c 100755 --- a/internal/controller/storage/objectreplication/zz_controller.go +++ b/internal/controller/storage/objectreplication/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ObjectReplication_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_object_replication"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ObjectReplication_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ObjectReplication{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ObjectReplication{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/queue/zz_controller.go b/internal/controller/storage/queue/zz_controller.go index afaf1f927..1c1746758 100755 --- a/internal/controller/storage/queue/zz_controller.go +++ b/internal/controller/storage/queue/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Queue_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_queue"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Queue_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Queue{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Queue{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/share/zz_controller.go b/internal/controller/storage/share/zz_controller.go index 3014643fd..37ba157e0 100755 --- a/internal/controller/storage/share/zz_controller.go +++ b/internal/controller/storage/share/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Share_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_share"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Share_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Share{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Share{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/sharedirectory/zz_controller.go b/internal/controller/storage/sharedirectory/zz_controller.go index e282d18d5..d4ad649d8 100755 --- a/internal/controller/storage/sharedirectory/zz_controller.go +++ b/internal/controller/storage/sharedirectory/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ShareDirectory_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_share_directory"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ShareDirectory_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ShareDirectory{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ShareDirectory{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/table/zz_controller.go b/internal/controller/storage/table/zz_controller.go index 938ccc721..56ba939bd 100755 --- a/internal/controller/storage/table/zz_controller.go +++ b/internal/controller/storage/table/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Table_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_table"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Table_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Table{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Table{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storage/tableentity/zz_controller.go b/internal/controller/storage/tableentity/zz_controller.go index 15a6ce148..c442e82c2 100755 --- a/internal/controller/storage/tableentity/zz_controller.go +++ b/internal/controller/storage/tableentity/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TableEntity_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_storage_table_entity"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.TableEntity_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.TableEntity{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.TableEntity{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storagecache/hpccache/zz_controller.go b/internal/controller/storagecache/hpccache/zz_controller.go index 6cccc831e..d76e90d0a 100755 --- a/internal/controller/storagecache/hpccache/zz_controller.go +++ b/internal/controller/storagecache/hpccache/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HPCCache_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_hpc_cache"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HPCCache_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HPCCache{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HPCCache{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storagecache/hpccacheaccesspolicy/zz_controller.go b/internal/controller/storagecache/hpccacheaccesspolicy/zz_controller.go index b3d8b4b9f..7fc25fca8 100755 --- a/internal/controller/storagecache/hpccacheaccesspolicy/zz_controller.go +++ b/internal/controller/storagecache/hpccacheaccesspolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HPCCacheAccessPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_hpc_cache_access_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HPCCacheAccessPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HPCCacheAccessPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HPCCacheAccessPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storagecache/hpccacheblobnfstarget/zz_controller.go b/internal/controller/storagecache/hpccacheblobnfstarget/zz_controller.go index 742ba8390..9d9ecd02d 100755 --- a/internal/controller/storagecache/hpccacheblobnfstarget/zz_controller.go +++ b/internal/controller/storagecache/hpccacheblobnfstarget/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HPCCacheBlobNFSTarget_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_hpc_cache_blob_nfs_target"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HPCCacheBlobNFSTarget_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HPCCacheBlobNFSTarget{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HPCCacheBlobNFSTarget{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storagecache/hpccacheblobtarget/zz_controller.go b/internal/controller/storagecache/hpccacheblobtarget/zz_controller.go index a1f3abe7a..e989470a9 100755 --- a/internal/controller/storagecache/hpccacheblobtarget/zz_controller.go +++ b/internal/controller/storagecache/hpccacheblobtarget/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HPCCacheBlobTarget_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_hpc_cache_blob_target"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HPCCacheBlobTarget_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HPCCacheBlobTarget{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HPCCacheBlobTarget{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storagecache/hpccachenfstarget/zz_controller.go b/internal/controller/storagecache/hpccachenfstarget/zz_controller.go index 162fde7f2..5fbceaf2b 100755 --- a/internal/controller/storagecache/hpccachenfstarget/zz_controller.go +++ b/internal/controller/storagecache/hpccachenfstarget/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HPCCacheNFSTarget_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_hpc_cache_nfs_target"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.HPCCacheNFSTarget_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.HPCCacheNFSTarget{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.HPCCacheNFSTarget{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storagepool/diskpool/zz_controller.go b/internal/controller/storagepool/diskpool/zz_controller.go index 36ca7acd3..83c7a19ab 100755 --- a/internal/controller/storagepool/diskpool/zz_controller.go +++ b/internal/controller/storagepool/diskpool/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DiskPool_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_disk_pool"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.DiskPool_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.DiskPool{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.DiskPool{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/storagesync/storagesync/zz_controller.go b/internal/controller/storagesync/storagesync/zz_controller.go index 5208065c2..c6d5c8dce 100755 --- a/internal/controller/storagesync/storagesync/zz_controller.go +++ b/internal/controller/storagesync/storagesync/zz_controller.go @@ -49,6 +49,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.StorageSync{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.StorageSync{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/cluster/zz_controller.go b/internal/controller/streamanalytics/cluster/zz_controller.go index bd7574310..07055f6f6 100755 --- a/internal/controller/streamanalytics/cluster/zz_controller.go +++ b/internal/controller/streamanalytics/cluster/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Cluster_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_cluster"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Cluster_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Cluster{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Cluster{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/functionjavascriptuda/zz_controller.go b/internal/controller/streamanalytics/functionjavascriptuda/zz_controller.go index b1ee86d59..c74354867 100755 --- a/internal/controller/streamanalytics/functionjavascriptuda/zz_controller.go +++ b/internal/controller/streamanalytics/functionjavascriptuda/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionJavascriptUda_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_function_javascript_uda"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionJavascriptUda_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FunctionJavascriptUda{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FunctionJavascriptUda{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/job/zz_controller.go b/internal/controller/streamanalytics/job/zz_controller.go index fe7336370..1259459e2 100755 --- a/internal/controller/streamanalytics/job/zz_controller.go +++ b/internal/controller/streamanalytics/job/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Job_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_job"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Job_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Job{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Job{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/managedprivateendpoint/zz_controller.go b/internal/controller/streamanalytics/managedprivateendpoint/zz_controller.go index 93cb290d2..d083a1acb 100755 --- a/internal/controller/streamanalytics/managedprivateendpoint/zz_controller.go +++ b/internal/controller/streamanalytics/managedprivateendpoint/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedPrivateEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_managed_private_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedPrivateEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagedPrivateEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagedPrivateEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/outputblob/zz_controller.go b/internal/controller/streamanalytics/outputblob/zz_controller.go index 6aa1618a1..5ff3cdf0f 100755 --- a/internal/controller/streamanalytics/outputblob/zz_controller.go +++ b/internal/controller/streamanalytics/outputblob/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputBlob_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_output_blob"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputBlob_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OutputBlob{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OutputBlob{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/outputeventhub/zz_controller.go b/internal/controller/streamanalytics/outputeventhub/zz_controller.go index 49a624481..ed0037fc8 100755 --- a/internal/controller/streamanalytics/outputeventhub/zz_controller.go +++ b/internal/controller/streamanalytics/outputeventhub/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputEventHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_output_eventhub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputEventHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OutputEventHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OutputEventHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/outputfunction/zz_controller.go b/internal/controller/streamanalytics/outputfunction/zz_controller.go index 196c5c694..efe8a7349 100755 --- a/internal/controller/streamanalytics/outputfunction/zz_controller.go +++ b/internal/controller/streamanalytics/outputfunction/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputFunction_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_output_function"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputFunction_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OutputFunction{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OutputFunction{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/outputmssql/zz_controller.go b/internal/controller/streamanalytics/outputmssql/zz_controller.go index 9bbf8e71c..1cee8ede6 100755 --- a/internal/controller/streamanalytics/outputmssql/zz_controller.go +++ b/internal/controller/streamanalytics/outputmssql/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputMSSQL_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_output_mssql"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputMSSQL_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OutputMSSQL{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OutputMSSQL{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/outputpowerbi/zz_controller.go b/internal/controller/streamanalytics/outputpowerbi/zz_controller.go index 1a1e7051f..a95cbfa7a 100755 --- a/internal/controller/streamanalytics/outputpowerbi/zz_controller.go +++ b/internal/controller/streamanalytics/outputpowerbi/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputPowerBI_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_output_powerbi"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputPowerBI_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OutputPowerBI{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OutputPowerBI{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/outputservicebusqueue/zz_controller.go b/internal/controller/streamanalytics/outputservicebusqueue/zz_controller.go index 06b332b6a..7b4e09300 100755 --- a/internal/controller/streamanalytics/outputservicebusqueue/zz_controller.go +++ b/internal/controller/streamanalytics/outputservicebusqueue/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputServiceBusQueue_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_output_servicebus_queue"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputServiceBusQueue_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OutputServiceBusQueue{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OutputServiceBusQueue{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/outputservicebustopic/zz_controller.go b/internal/controller/streamanalytics/outputservicebustopic/zz_controller.go index 5f34de5fd..b2dd2ce21 100755 --- a/internal/controller/streamanalytics/outputservicebustopic/zz_controller.go +++ b/internal/controller/streamanalytics/outputservicebustopic/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputServiceBusTopic_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_output_servicebus_topic"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputServiceBusTopic_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OutputServiceBusTopic{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OutputServiceBusTopic{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/outputsynapse/zz_controller.go b/internal/controller/streamanalytics/outputsynapse/zz_controller.go index b74e18605..e6aec6583 100755 --- a/internal/controller/streamanalytics/outputsynapse/zz_controller.go +++ b/internal/controller/streamanalytics/outputsynapse/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputSynapse_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_output_synapse"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputSynapse_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OutputSynapse{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OutputSynapse{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/outputtable/zz_controller.go b/internal/controller/streamanalytics/outputtable/zz_controller.go index 323563131..6555e7af1 100755 --- a/internal/controller/streamanalytics/outputtable/zz_controller.go +++ b/internal/controller/streamanalytics/outputtable/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputTable_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_output_table"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.OutputTable_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.OutputTable{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.OutputTable{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/referenceinputblob/zz_controller.go b/internal/controller/streamanalytics/referenceinputblob/zz_controller.go index 517178fe8..ea2d01168 100755 --- a/internal/controller/streamanalytics/referenceinputblob/zz_controller.go +++ b/internal/controller/streamanalytics/referenceinputblob/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ReferenceInputBlob_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_reference_input_blob"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ReferenceInputBlob_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ReferenceInputBlob{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ReferenceInputBlob{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/referenceinputmssql/zz_controller.go b/internal/controller/streamanalytics/referenceinputmssql/zz_controller.go index f15cdb92f..e24e125ec 100755 --- a/internal/controller/streamanalytics/referenceinputmssql/zz_controller.go +++ b/internal/controller/streamanalytics/referenceinputmssql/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ReferenceInputMSSQL_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_reference_input_mssql"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ReferenceInputMSSQL_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ReferenceInputMSSQL{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ReferenceInputMSSQL{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/streaminputblob/zz_controller.go b/internal/controller/streamanalytics/streaminputblob/zz_controller.go index 079ae8285..d5f2daf08 100755 --- a/internal/controller/streamanalytics/streaminputblob/zz_controller.go +++ b/internal/controller/streamanalytics/streaminputblob/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamInputBlob_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_stream_input_blob"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamInputBlob_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.StreamInputBlob{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.StreamInputBlob{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/streaminputeventhub/zz_controller.go b/internal/controller/streamanalytics/streaminputeventhub/zz_controller.go index 60a1cc2b6..137f018fa 100755 --- a/internal/controller/streamanalytics/streaminputeventhub/zz_controller.go +++ b/internal/controller/streamanalytics/streaminputeventhub/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamInputEventHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_stream_input_eventhub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamInputEventHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.StreamInputEventHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.StreamInputEventHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/streamanalytics/streaminputiothub/zz_controller.go b/internal/controller/streamanalytics/streaminputiothub/zz_controller.go index 33c47ba43..7bc850b19 100755 --- a/internal/controller/streamanalytics/streaminputiothub/zz_controller.go +++ b/internal/controller/streamanalytics/streaminputiothub/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamInputIOTHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_stream_analytics_stream_input_iothub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StreamInputIOTHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.StreamInputIOTHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.StreamInputIOTHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/firewallrule/zz_controller.go b/internal/controller/synapse/firewallrule/zz_controller.go index be38eea7b..b58bbd797 100755 --- a/internal/controller/synapse/firewallrule/zz_controller.go +++ b/internal/controller/synapse/firewallrule/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallRule_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_firewall_rule"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FirewallRule_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FirewallRule{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FirewallRule{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/integrationruntimeazure/zz_controller.go b/internal/controller/synapse/integrationruntimeazure/zz_controller.go index 64af44f99..5d522d0cf 100755 --- a/internal/controller/synapse/integrationruntimeazure/zz_controller.go +++ b/internal/controller/synapse/integrationruntimeazure/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeAzure_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_integration_runtime_azure"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeAzure_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IntegrationRuntimeAzure{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IntegrationRuntimeAzure{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/integrationruntimeselfhosted/zz_controller.go b/internal/controller/synapse/integrationruntimeselfhosted/zz_controller.go index 1f7b0278a..907143c8d 100755 --- a/internal/controller/synapse/integrationruntimeselfhosted/zz_controller.go +++ b/internal/controller/synapse/integrationruntimeselfhosted/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeSelfHosted_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_integration_runtime_self_hosted"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.IntegrationRuntimeSelfHosted_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.IntegrationRuntimeSelfHosted{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.IntegrationRuntimeSelfHosted{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/linkedservice/zz_controller.go b/internal/controller/synapse/linkedservice/zz_controller.go index 157e1cedc..9a66ae61f 100755 --- a/internal/controller/synapse/linkedservice/zz_controller.go +++ b/internal/controller/synapse/linkedservice/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedService_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_linked_service"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinkedService_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinkedService{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinkedService{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/managedprivateendpoint/zz_controller.go b/internal/controller/synapse/managedprivateendpoint/zz_controller.go index 968591df8..820d45d8f 100755 --- a/internal/controller/synapse/managedprivateendpoint/zz_controller.go +++ b/internal/controller/synapse/managedprivateendpoint/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedPrivateEndpoint_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_managed_private_endpoint"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ManagedPrivateEndpoint_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ManagedPrivateEndpoint{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ManagedPrivateEndpoint{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/privatelinkhub/zz_controller.go b/internal/controller/synapse/privatelinkhub/zz_controller.go index ea13440ab..b33fe85b1 100755 --- a/internal/controller/synapse/privatelinkhub/zz_controller.go +++ b/internal/controller/synapse/privatelinkhub/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateLinkHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_private_link_hub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.PrivateLinkHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.PrivateLinkHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.PrivateLinkHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/roleassignment/zz_controller.go b/internal/controller/synapse/roleassignment/zz_controller.go index 8b020cf1c..4c84504e4 100755 --- a/internal/controller/synapse/roleassignment/zz_controller.go +++ b/internal/controller/synapse/roleassignment/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RoleAssignment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_role_assignment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.RoleAssignment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.RoleAssignment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.RoleAssignment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/sparkpool/zz_controller.go b/internal/controller/synapse/sparkpool/zz_controller.go index 51fac5247..c732d4ab8 100755 --- a/internal/controller/synapse/sparkpool/zz_controller.go +++ b/internal/controller/synapse/sparkpool/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SparkPool_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_spark_pool"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SparkPool_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SparkPool{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SparkPool{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/sqlpool/zz_controller.go b/internal/controller/synapse/sqlpool/zz_controller.go index d502af1b9..41ec84b72 100755 --- a/internal/controller/synapse/sqlpool/zz_controller.go +++ b/internal/controller/synapse/sqlpool/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLPool_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_sql_pool"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLPool_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLPool{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLPool{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/sqlpoolextendedauditingpolicy/zz_controller.go b/internal/controller/synapse/sqlpoolextendedauditingpolicy/zz_controller.go index c0adb7e28..cc49c6189 100755 --- a/internal/controller/synapse/sqlpoolextendedauditingpolicy/zz_controller.go +++ b/internal/controller/synapse/sqlpoolextendedauditingpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLPoolExtendedAuditingPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_sql_pool_extended_auditing_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLPoolExtendedAuditingPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLPoolExtendedAuditingPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLPoolExtendedAuditingPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/sqlpoolsecurityalertpolicy/zz_controller.go b/internal/controller/synapse/sqlpoolsecurityalertpolicy/zz_controller.go index d2344c3dd..16b7bb769 100755 --- a/internal/controller/synapse/sqlpoolsecurityalertpolicy/zz_controller.go +++ b/internal/controller/synapse/sqlpoolsecurityalertpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLPoolSecurityAlertPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_sql_pool_security_alert_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLPoolSecurityAlertPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLPoolSecurityAlertPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLPoolSecurityAlertPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/sqlpoolworkloadclassifier/zz_controller.go b/internal/controller/synapse/sqlpoolworkloadclassifier/zz_controller.go index 45c730766..c161a7271 100755 --- a/internal/controller/synapse/sqlpoolworkloadclassifier/zz_controller.go +++ b/internal/controller/synapse/sqlpoolworkloadclassifier/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLPoolWorkloadClassifier_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_sql_pool_workload_classifier"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLPoolWorkloadClassifier_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLPoolWorkloadClassifier{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLPoolWorkloadClassifier{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/sqlpoolworkloadgroup/zz_controller.go b/internal/controller/synapse/sqlpoolworkloadgroup/zz_controller.go index afbff3640..0e91b2006 100755 --- a/internal/controller/synapse/sqlpoolworkloadgroup/zz_controller.go +++ b/internal/controller/synapse/sqlpoolworkloadgroup/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLPoolWorkloadGroup_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_sql_pool_workload_group"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SQLPoolWorkloadGroup_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SQLPoolWorkloadGroup{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SQLPoolWorkloadGroup{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/workspace/zz_controller.go b/internal/controller/synapse/workspace/zz_controller.go index e89f1e730..bbe3a395e 100755 --- a/internal/controller/synapse/workspace/zz_controller.go +++ b/internal/controller/synapse/workspace/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Workspace_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_workspace"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Workspace_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Workspace{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Workspace{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/workspaceaadadmin/zz_controller.go b/internal/controller/synapse/workspaceaadadmin/zz_controller.go index 43f1f86f3..7c386862f 100755 --- a/internal/controller/synapse/workspaceaadadmin/zz_controller.go +++ b/internal/controller/synapse/workspaceaadadmin/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceAADAdmin_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_workspace_aad_admin"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceAADAdmin_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WorkspaceAADAdmin{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WorkspaceAADAdmin{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/workspaceextendedauditingpolicy/zz_controller.go b/internal/controller/synapse/workspaceextendedauditingpolicy/zz_controller.go index 09e8223d3..858925a3e 100755 --- a/internal/controller/synapse/workspaceextendedauditingpolicy/zz_controller.go +++ b/internal/controller/synapse/workspaceextendedauditingpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceExtendedAuditingPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_workspace_extended_auditing_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceExtendedAuditingPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WorkspaceExtendedAuditingPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WorkspaceExtendedAuditingPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/workspacesecurityalertpolicy/zz_controller.go b/internal/controller/synapse/workspacesecurityalertpolicy/zz_controller.go index e9a0b9775..b4fe3532f 100755 --- a/internal/controller/synapse/workspacesecurityalertpolicy/zz_controller.go +++ b/internal/controller/synapse/workspacesecurityalertpolicy/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceSecurityAlertPolicy_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_workspace_security_alert_policy"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceSecurityAlertPolicy_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WorkspaceSecurityAlertPolicy{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WorkspaceSecurityAlertPolicy{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/workspacesqlaadadmin/zz_controller.go b/internal/controller/synapse/workspacesqlaadadmin/zz_controller.go index 6be9cd0b8..aa87689f0 100755 --- a/internal/controller/synapse/workspacesqlaadadmin/zz_controller.go +++ b/internal/controller/synapse/workspacesqlaadadmin/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceSQLAADAdmin_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_workspace_sql_aad_admin"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceSQLAADAdmin_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WorkspaceSQLAADAdmin{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WorkspaceSQLAADAdmin{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/synapse/workspacevulnerabilityassessment/zz_controller.go b/internal/controller/synapse/workspacevulnerabilityassessment/zz_controller.go index 6f40047c0..029742618 100755 --- a/internal/controller/synapse/workspacevulnerabilityassessment/zz_controller.go +++ b/internal/controller/synapse/workspacevulnerabilityassessment/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceVulnerabilityAssessment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_synapse_workspace_vulnerability_assessment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WorkspaceVulnerabilityAssessment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WorkspaceVulnerabilityAssessment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WorkspaceVulnerabilityAssessment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/timeseriesinsights/eventsourceeventhub/zz_controller.go b/internal/controller/timeseriesinsights/eventsourceeventhub/zz_controller.go index bbdcf9e4f..ed67a08f5 100755 --- a/internal/controller/timeseriesinsights/eventsourceeventhub/zz_controller.go +++ b/internal/controller/timeseriesinsights/eventsourceeventhub/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventSourceEventHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iot_time_series_insights_event_source_eventhub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventSourceEventHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.EventSourceEventHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.EventSourceEventHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/timeseriesinsights/eventsourceiothub/zz_controller.go b/internal/controller/timeseriesinsights/eventsourceiothub/zz_controller.go index ccfbc4dd1..39acbe856 100755 --- a/internal/controller/timeseriesinsights/eventsourceiothub/zz_controller.go +++ b/internal/controller/timeseriesinsights/eventsourceiothub/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventSourceIOTHub_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iot_time_series_insights_event_source_iothub"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.EventSourceIOTHub_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.EventSourceIOTHub{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.EventSourceIOTHub{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/timeseriesinsights/gen2environment/zz_controller.go b/internal/controller/timeseriesinsights/gen2environment/zz_controller.go index c0c7c533b..11edb0933 100755 --- a/internal/controller/timeseriesinsights/gen2environment/zz_controller.go +++ b/internal/controller/timeseriesinsights/gen2environment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Gen2Environment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iot_time_series_insights_gen2_environment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Gen2Environment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.Gen2Environment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.Gen2Environment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/timeseriesinsights/referencedataset/zz_controller.go b/internal/controller/timeseriesinsights/referencedataset/zz_controller.go index 207bd00e6..644467461 100755 --- a/internal/controller/timeseriesinsights/referencedataset/zz_controller.go +++ b/internal/controller/timeseriesinsights/referencedataset/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ReferenceDataSet_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iot_time_series_insights_reference_data_set"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ReferenceDataSet_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ReferenceDataSet{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ReferenceDataSet{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/timeseriesinsights/standardenvironment/zz_controller.go b/internal/controller/timeseriesinsights/standardenvironment/zz_controller.go index d6c0a0a3c..68bdfed98 100755 --- a/internal/controller/timeseriesinsights/standardenvironment/zz_controller.go +++ b/internal/controller/timeseriesinsights/standardenvironment/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StandardEnvironment_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_iot_time_series_insights_standard_environment"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StandardEnvironment_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.StandardEnvironment{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.StandardEnvironment{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/appactiveslot/zz_controller.go b/internal/controller/web/appactiveslot/zz_controller.go index 6d52ecc4e..1d65b01dc 100755 --- a/internal/controller/web/appactiveslot/zz_controller.go +++ b/internal/controller/web/appactiveslot/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppActiveSlot_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_web_app_active_slot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppActiveSlot_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppActiveSlot{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppActiveSlot{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/apphybridconnection/zz_controller.go b/internal/controller/web/apphybridconnection/zz_controller.go index 1a8837806..7a940872a 100755 --- a/internal/controller/web/apphybridconnection/zz_controller.go +++ b/internal/controller/web/apphybridconnection/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppHybridConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_web_app_hybrid_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppHybridConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppHybridConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppHybridConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/appserviceplan/zz_controller.go b/internal/controller/web/appserviceplan/zz_controller.go index eda6e5904..69a2b57c7 100755 --- a/internal/controller/web/appserviceplan/zz_controller.go +++ b/internal/controller/web/appserviceplan/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppServicePlan_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_app_service_plan"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.AppServicePlan_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.AppServicePlan{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.AppServicePlan{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/functionapp/zz_controller.go b/internal/controller/web/functionapp/zz_controller.go index 9cb0b81d9..64c0859c4 100755 --- a/internal/controller/web/functionapp/zz_controller.go +++ b/internal/controller/web/functionapp/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionApp_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_function_app"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionApp_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FunctionApp{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FunctionApp{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/functionappactiveslot/zz_controller.go b/internal/controller/web/functionappactiveslot/zz_controller.go index c1494c368..3677fc9b7 100755 --- a/internal/controller/web/functionappactiveslot/zz_controller.go +++ b/internal/controller/web/functionappactiveslot/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionAppActiveSlot_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_function_app_active_slot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionAppActiveSlot_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FunctionAppActiveSlot{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FunctionAppActiveSlot{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/functionappfunction/zz_controller.go b/internal/controller/web/functionappfunction/zz_controller.go index 98c08cda6..1dfdc6fdf 100755 --- a/internal/controller/web/functionappfunction/zz_controller.go +++ b/internal/controller/web/functionappfunction/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionAppFunction_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_function_app_function"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionAppFunction_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FunctionAppFunction{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FunctionAppFunction{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/functionapphybridconnection/zz_controller.go b/internal/controller/web/functionapphybridconnection/zz_controller.go index 6b9ae8c53..8f26a762a 100755 --- a/internal/controller/web/functionapphybridconnection/zz_controller.go +++ b/internal/controller/web/functionapphybridconnection/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionAppHybridConnection_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_function_app_hybrid_connection"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionAppHybridConnection_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FunctionAppHybridConnection{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FunctionAppHybridConnection{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/functionappslot/zz_controller.go b/internal/controller/web/functionappslot/zz_controller.go index 992f0f590..3e49d1701 100755 --- a/internal/controller/web/functionappslot/zz_controller.go +++ b/internal/controller/web/functionappslot/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionAppSlot_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_function_app_slot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.FunctionAppSlot_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.FunctionAppSlot{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.FunctionAppSlot{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/linuxfunctionapp/zz_controller.go b/internal/controller/web/linuxfunctionapp/zz_controller.go index 46d34aeb8..f330f5a71 100755 --- a/internal/controller/web/linuxfunctionapp/zz_controller.go +++ b/internal/controller/web/linuxfunctionapp/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxFunctionApp_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_linux_function_app"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxFunctionApp_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinuxFunctionApp{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinuxFunctionApp{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/linuxfunctionappslot/zz_controller.go b/internal/controller/web/linuxfunctionappslot/zz_controller.go index 79bf66fa3..6a8b42301 100755 --- a/internal/controller/web/linuxfunctionappslot/zz_controller.go +++ b/internal/controller/web/linuxfunctionappslot/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxFunctionAppSlot_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_linux_function_app_slot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxFunctionAppSlot_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinuxFunctionAppSlot{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinuxFunctionAppSlot{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/linuxwebapp/zz_controller.go b/internal/controller/web/linuxwebapp/zz_controller.go index a173b7a38..316859c34 100755 --- a/internal/controller/web/linuxwebapp/zz_controller.go +++ b/internal/controller/web/linuxwebapp/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxWebApp_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_linux_web_app"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxWebApp_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinuxWebApp{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinuxWebApp{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/linuxwebappslot/zz_controller.go b/internal/controller/web/linuxwebappslot/zz_controller.go index 6750506f0..fc47f4dd8 100755 --- a/internal/controller/web/linuxwebappslot/zz_controller.go +++ b/internal/controller/web/linuxwebappslot/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxWebAppSlot_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_linux_web_app_slot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LinuxWebAppSlot_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.LinuxWebAppSlot{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.LinuxWebAppSlot{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/serviceplan/zz_controller.go b/internal/controller/web/serviceplan/zz_controller.go index aa18b0b71..33942d527 100755 --- a/internal/controller/web/serviceplan/zz_controller.go +++ b/internal/controller/web/serviceplan/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ServicePlan_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_service_plan"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.ServicePlan_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.ServicePlan{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.ServicePlan{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/sourcecontroltoken/zz_controller.go b/internal/controller/web/sourcecontroltoken/zz_controller.go index b3c64cb12..dc410ef0c 100755 --- a/internal/controller/web/sourcecontroltoken/zz_controller.go +++ b/internal/controller/web/sourcecontroltoken/zz_controller.go @@ -30,9 +30,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SourceControlToken_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_source_control_token"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.SourceControlToken_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -50,6 +51,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.SourceControlToken{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.SourceControlToken{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/staticsite/zz_controller.go b/internal/controller/web/staticsite/zz_controller.go index 5875fcffc..44217a0f5 100755 --- a/internal/controller/web/staticsite/zz_controller.go +++ b/internal/controller/web/staticsite/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StaticSite_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_static_site"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.StaticSite_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.StaticSite{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.StaticSite{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/windowsfunctionapp/zz_controller.go b/internal/controller/web/windowsfunctionapp/zz_controller.go index d6df1a669..b867eac60 100755 --- a/internal/controller/web/windowsfunctionapp/zz_controller.go +++ b/internal/controller/web/windowsfunctionapp/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsFunctionApp_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_windows_function_app"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsFunctionApp_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WindowsFunctionApp{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WindowsFunctionApp{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/windowsfunctionappslot/zz_controller.go b/internal/controller/web/windowsfunctionappslot/zz_controller.go index 0a26a1dc4..0854e6321 100755 --- a/internal/controller/web/windowsfunctionappslot/zz_controller.go +++ b/internal/controller/web/windowsfunctionappslot/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsFunctionAppSlot_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_windows_function_app_slot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsFunctionAppSlot_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WindowsFunctionAppSlot{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WindowsFunctionAppSlot{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/windowswebapp/zz_controller.go b/internal/controller/web/windowswebapp/zz_controller.go index 032b2bc02..ebda1217b 100755 --- a/internal/controller/web/windowswebapp/zz_controller.go +++ b/internal/controller/web/windowswebapp/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsWebApp_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_windows_web_app"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsWebApp_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WindowsWebApp{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WindowsWebApp{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/internal/controller/web/windowswebappslot/zz_controller.go b/internal/controller/web/windowswebappslot/zz_controller.go index 3b6ff0973..5b81c713c 100755 --- a/internal/controller/web/windowswebappslot/zz_controller.go +++ b/internal/controller/web/windowswebappslot/zz_controller.go @@ -31,9 +31,10 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { if o.SecretStoreConfigGVK != nil { cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK, connection.WithTLSConfig(o.ESSOptions.TLSConfig))) } + ac := tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsWebAppSlot_GroupVersionKind), tjcontroller.WithEventHandler(o.EventHandler)) opts := []managed.ReconcilerOption{ managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_windows_web_app_slot"], tjcontroller.WithLogger(o.Logger), - tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.WindowsWebAppSlot_GroupVersionKind))), + tjcontroller.WithCallbackProvider(ac), )), managed.WithLogger(o.Logger.WithValues("controller", name)), managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), @@ -51,6 +52,7 @@ func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { return ctrl.NewControllerManagedBy(mgr). Named(name). WithOptions(o.ForControllerRuntime()). - For(&v1beta1.WindowsWebAppSlot{}). + WithEventFilter(xpresource.DesiredStateChanged()). + Watches(&v1beta1.WindowsWebAppSlot{}, o.EventHandler). Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) } diff --git a/package/crds/alertsmanagement.azure.upbound.io_monitoractionruleactiongroups.yaml b/package/crds/alertsmanagement.azure.upbound.io_monitoractionruleactiongroups.yaml index 39421b32c..8cd6d8f57 100644 --- a/package/crds/alertsmanagement.azure.upbound.io_monitoractionruleactiongroups.yaml +++ b/package/crds/alertsmanagement.azure.upbound.io_monitoractionruleactiongroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitoractionruleactiongroups.alertsmanagement.azure.upbound.io spec: group: alertsmanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -165,9 +164,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array alertRuleId: @@ -184,9 +180,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array description: @@ -203,9 +196,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array monitor: @@ -222,9 +212,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array monitorService: @@ -241,9 +228,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array severity: @@ -260,9 +244,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array targetResourceType: @@ -279,9 +260,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array type: object @@ -386,9 +364,6 @@ spec: description: Specifies the type of target scope. Possible values are ResourceGroup and Resource. type: string - required: - - resourceIds - - type type: object type: array tags: @@ -397,21 +372,191 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + condition: + description: A condition block as defined below. + items: + properties: + alertContext: + description: A alert_context block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + alertRuleId: + description: A alert_rule_id block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + description: + description: A description block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + monitor: + description: A monitor block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + monitorService: + description: A monitor_service as block defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + severity: + description: A severity block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + targetResourceType: + description: A target_resource_type block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + type: object + type: array + description: + description: Specifies a description for the Action Rule. + type: string + enabled: + description: Is the Action Rule enabled? Defaults to true. + type: boolean + scope: + description: A scope block as defined below. + items: + properties: + resourceIds: + description: A list of resource IDs of the given scope type + which will be the target of action rule. + items: + type: string + type: array + type: + description: Specifies the type of target scope. Possible + values are ResourceGroup and Resource. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/alertsmanagement.azure.upbound.io_monitoractionrulesuppressions.yaml b/package/crds/alertsmanagement.azure.upbound.io_monitoractionrulesuppressions.yaml index 8d21420d8..3361c2fd4 100644 --- a/package/crds/alertsmanagement.azure.upbound.io_monitoractionrulesuppressions.yaml +++ b/package/crds/alertsmanagement.azure.upbound.io_monitoractionrulesuppressions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitoractionrulesuppressions.alertsmanagement.azure.upbound.io spec: group: alertsmanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -87,9 +86,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array alertRuleId: @@ -106,9 +102,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array description: @@ -125,9 +118,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array monitor: @@ -144,9 +134,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array monitorService: @@ -163,9 +150,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array severity: @@ -182,9 +166,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array targetResourceType: @@ -201,9 +182,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array type: object @@ -308,9 +286,6 @@ spec: description: Specifies the type of target scope. Possible values are ResourceGroup and Resource. type: string - required: - - resourceIds - - type type: object type: array suppression: @@ -348,13 +323,8 @@ spec: description: specifies the recurrence UTC start datetime (Y-m-d'T'H:M:S'Z'). type: string - required: - - endDateUtc - - startDateUtc type: object type: array - required: - - recurrenceType type: object type: array tags: @@ -363,21 +333,230 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + condition: + description: A condition block as defined below. + items: + properties: + alertContext: + description: A alert_context block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + alertRuleId: + description: A alert_rule_id block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + description: + description: A description block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + monitor: + description: A monitor block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + monitorService: + description: A monitor_service as block defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + severity: + description: A severity block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + targetResourceType: + description: A target_resource_type block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals and NotEquals. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + items: + type: string + type: array + type: object + type: array + type: object + type: array + description: + description: Specifies a description for the Action Rule. + type: string + enabled: + description: Is the Action Rule enabled? Defaults to true. + type: boolean + scope: + description: A scope block as defined below. + items: + properties: + resourceIds: + description: A list of resource IDs of the given scope type + which will be the target of action rule. + items: + type: string + type: array + type: + description: Specifies the type of target scope. Possible + values are ResourceGroup and Resource. + type: string + type: object + type: array + suppression: + description: A suppression block as defined below. + items: + properties: + recurrenceType: + description: Specifies the type of suppression. Possible + values are Always, Daily, Monthly, Once, and Weekly. + type: string + schedule: + description: A schedule block as defined below. Required + if recurrence_type is Daily, Monthly, Once or Weekly. + items: + properties: + endDateUtc: + description: specifies the recurrence UTC end datetime + (Y-m-d'T'H:M:S'Z'). + type: string + recurrenceMonthly: + description: specifies the list of dayOfMonth to recurrence. + Possible values are between 1 - 31. Required if + recurrence_type is Monthly. + items: + type: number + type: array + recurrenceWeekly: + description: specifies the list of dayOfWeek to recurrence. + Possible values are Sunday, Monday, Tuesday, Wednesday, + Thursday, Friday and Saturday. + items: + type: string + type: array + startDateUtc: + description: specifies the recurrence UTC start datetime + (Y-m-d'T'H:M:S'Z'). + type: string + type: object + type: array + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -551,7 +730,9 @@ spec: type: object x-kubernetes-validations: - message: suppression is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.suppression) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.suppression) + || has(self.initProvider.suppression)' status: description: MonitorActionRuleSuppressionStatus defines the observed state of MonitorActionRuleSuppression. diff --git a/package/crds/alertsmanagement.azure.upbound.io_monitoralertprocessingruleactiongroups.yaml b/package/crds/alertsmanagement.azure.upbound.io_monitoralertprocessingruleactiongroups.yaml index 8405f461e..9c793e73b 100644 --- a/package/crds/alertsmanagement.azure.upbound.io_monitoralertprocessingruleactiongroups.yaml +++ b/package/crds/alertsmanagement.azure.upbound.io_monitoralertprocessingruleactiongroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitoralertprocessingruleactiongroups.alertsmanagement.azure.upbound.io spec: group: alertsmanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -171,9 +170,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array alertRuleId: @@ -191,9 +187,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array alertRuleName: @@ -211,9 +204,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array description: @@ -231,9 +221,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array monitorCondition: @@ -251,9 +238,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array monitorService: @@ -271,9 +255,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array severity: @@ -291,9 +272,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array signalType: @@ -311,9 +289,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array targetResource: @@ -331,9 +306,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array targetResourceGroup: @@ -351,9 +323,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array targetResourceType: @@ -371,9 +340,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array type: object @@ -494,9 +460,6 @@ spec: description: Specifies the recurrence start time (H:M:S). type: string - required: - - endTime - - startTime type: object type: array monthly: @@ -519,8 +482,6 @@ spec: description: Specifies the recurrence start time (H:M:S). type: string - required: - - daysOfMonth type: object type: array weekly: @@ -544,8 +505,6 @@ spec: description: Specifies the recurrence start time (H:M:S). type: string - required: - - daysOfWeek type: object type: array type: object @@ -648,21 +607,337 @@ spec: Alert Processing Rule. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + condition: + description: A condition block as defined below. + items: + properties: + alertContext: + description: A alert_context block as defined above. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + alertRuleId: + description: A alert_rule_id block as defined above. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + alertRuleName: + description: A alert_rule_name block as defined above. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + description: + description: A description block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + monitorCondition: + description: A monitor_condition block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + monitorService: + description: A monitor_service block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + severity: + description: A severity block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + signalType: + description: A signal_type block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + targetResource: + description: A target_resource block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + targetResourceGroup: + description: A target_resource_group block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + targetResourceType: + description: A target_resource_type block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + type: object + type: array + description: + description: Specifies a description for the Alert Processing + Rule. + type: string + enabled: + description: Should the Alert Processing Rule be enabled? Defaults + to true. + type: boolean + schedule: + description: A schedule block as defined below. + items: + properties: + effectiveFrom: + description: Specifies the Alert Processing Rule effective + start time (Y-m-d'T'H:M:S). + type: string + effectiveUntil: + description: Specifies the Alert Processing Rule effective + end time (Y-m-d'T'H:M:S). + type: string + recurrence: + description: A recurrence block as defined above. + items: + properties: + daily: + description: One or more daily blocks as defined above. + items: + properties: + endTime: + description: Specifies the recurrence end time + (H:M:S). + type: string + startTime: + description: Specifies the recurrence start + time (H:M:S). + type: string + type: object + type: array + monthly: + description: One or more monthly blocks as defined + above. + items: + properties: + daysOfMonth: + description: Specifies a list of dayOfMonth + to recurrence. Possible values are integers + between 1 - 31. + items: + type: number + type: array + endTime: + description: Specifies the recurrence end time + (H:M:S). + type: string + startTime: + description: Specifies the recurrence start + time (H:M:S). + type: string + type: object + type: array + weekly: + description: One or more weekly blocks as defined + below. + items: + properties: + daysOfWeek: + description: Specifies a list of dayOfWeek to + recurrence. Possible values are Sunday, Monday, + Tuesday, Wednesday, Thursday, Friday, and + Saturday. + items: + type: string + type: array + endTime: + description: Specifies the recurrence end time + (H:M:S). + type: string + startTime: + description: Specifies the recurrence start + time (H:M:S). + type: string + type: object + type: array + type: object + type: array + timeZone: + description: The time zone (e.g. Pacific Standard time, + Eastern Standard Time). Defaults to UTC. possible values + are defined here. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Alert Processing Rule. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/alertsmanagement.azure.upbound.io_monitoralertprocessingrulesuppressions.yaml b/package/crds/alertsmanagement.azure.upbound.io_monitoralertprocessingrulesuppressions.yaml index 6e8cbb2c9..bc69a26cc 100644 --- a/package/crds/alertsmanagement.azure.upbound.io_monitoralertprocessingrulesuppressions.yaml +++ b/package/crds/alertsmanagement.azure.upbound.io_monitoralertprocessingrulesuppressions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitoralertprocessingrulesuppressions.alertsmanagement.azure.upbound.io spec: group: alertsmanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -88,9 +87,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array alertRuleId: @@ -108,9 +104,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array alertRuleName: @@ -128,9 +121,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array description: @@ -148,9 +138,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array monitorCondition: @@ -168,9 +155,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array monitorService: @@ -188,9 +172,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array severity: @@ -208,9 +189,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array signalType: @@ -228,9 +206,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array targetResource: @@ -248,9 +223,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array targetResourceGroup: @@ -268,9 +240,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array targetResourceType: @@ -288,9 +257,6 @@ spec: items: type: string type: array - required: - - operator - - values type: object type: array type: object @@ -411,9 +377,6 @@ spec: description: Specifies the recurrence start time (H:M:S). type: string - required: - - endTime - - startTime type: object type: array monthly: @@ -436,8 +399,6 @@ spec: description: Specifies the recurrence start time (H:M:S). type: string - required: - - daysOfMonth type: object type: array weekly: @@ -461,8 +422,6 @@ spec: description: Specifies the recurrence start time (H:M:S). type: string - required: - - daysOfWeek type: object type: array type: object @@ -565,21 +524,337 @@ spec: Alert Processing Rule. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + condition: + description: A condition block as defined below. + items: + properties: + alertContext: + description: A alert_context block as defined above. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + alertRuleId: + description: A alert_rule_id block as defined above. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + alertRuleName: + description: A alert_rule_name block as defined above. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + description: + description: A description block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + monitorCondition: + description: A monitor_condition block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + monitorService: + description: A monitor_service block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + severity: + description: A severity block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + signalType: + description: A signal_type block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + targetResource: + description: A target_resource block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + targetResourceGroup: + description: A target_resource_group block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + targetResourceType: + description: A target_resource_type block as defined below. + items: + properties: + operator: + description: The operator for a given condition. Possible + values are Equals, NotEquals, Contains, and DoesNotContain. + type: string + values: + description: A list of values to match for a given + condition. The values should be valid resource types. + (e.g. Microsoft.Compute/VirtualMachines) + items: + type: string + type: array + type: object + type: array + type: object + type: array + description: + description: Specifies a description for the Alert Processing + Rule. + type: string + enabled: + description: Should the Alert Processing Rule be enabled? Defaults + to true. + type: boolean + schedule: + description: A schedule block as defined below. + items: + properties: + effectiveFrom: + description: Specifies the Alert Processing Rule effective + start time (Y-m-d'T'H:M:S). + type: string + effectiveUntil: + description: Specifies the Alert Processing Rule effective + end time (Y-m-d'T'H:M:S). + type: string + recurrence: + description: A recurrence block as defined above. + items: + properties: + daily: + description: One or more daily blocks as defined above. + items: + properties: + endTime: + description: Specifies the recurrence end time + (H:M:S). + type: string + startTime: + description: Specifies the recurrence start + time (H:M:S). + type: string + type: object + type: array + monthly: + description: One or more monthly blocks as defined + above. + items: + properties: + daysOfMonth: + description: Specifies a list of dayOfMonth + to recurrence. Possible values are integers + between 1 - 31. + items: + type: number + type: array + endTime: + description: Specifies the recurrence end time + (H:M:S). + type: string + startTime: + description: Specifies the recurrence start + time (H:M:S). + type: string + type: object + type: array + weekly: + description: One or more weekly blocks as defined + below. + items: + properties: + daysOfWeek: + description: Specifies a list of dayOfWeek to + recurrence. Possible values are Sunday, Monday, + Tuesday, Wednesday, Thursday, Friday, and + Saturday. + items: + type: string + type: array + endTime: + description: Specifies the recurrence end time + (H:M:S). + type: string + startTime: + description: Specifies the recurrence start + time (H:M:S). + type: string + type: object + type: array + type: object + type: array + timeZone: + description: The time zone (e.g. Pacific Standard time, + Eastern Standard Time). Defaults to UTC. possible values + are defined here. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Alert Processing Rule. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/alertsmanagement.azure.upbound.io_monitorsmartdetectoralertrules.yaml b/package/crds/alertsmanagement.azure.upbound.io_monitorsmartdetectoralertrules.yaml index 9051ee4e5..22c0a52c7 100644 --- a/package/crds/alertsmanagement.azure.upbound.io_monitorsmartdetectoralertrules.yaml +++ b/package/crds/alertsmanagement.azure.upbound.io_monitorsmartdetectoralertrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitorsmartdetectoralertrules.alertsmanagement.azure.upbound.io spec: group: alertsmanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -372,21 +371,97 @@ spec: before notifying on the alert rule again. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + actionGroup: + description: An action_group block as defined below. + items: + properties: + emailSubject: + description: Specifies a custom email subject if Email Receiver + is specified in Monitor Action Group resource. + type: string + webhookPayload: + description: A JSON String which Specifies the custom webhook + payload if Webhook Receiver is specified in Monitor Action + Group resource. + type: string + type: object + type: array + description: + description: Specifies a description for the Smart Detector Alert + Rule. + type: string + detectorType: + description: Specifies the Built-In Smart Detector type that this + alert rule will use. Currently the only possible values are + FailureAnomaliesDetector, RequestPerformanceDegradationDetector, + DependencyPerformanceDegradationDetector, ExceptionVolumeChangedDetector, + TraceSeverityDetector, MemoryLeakDetector. + type: string + enabled: + description: Is the Smart Detector Alert Rule enabled? Defaults + to true. + type: boolean + frequency: + description: Specifies the frequency of this Smart Detector Alert + Rule in ISO8601 format. + type: string + name: + description: Specifies the name of the Monitor Smart Detector + Alert Rule. Changing this forces a new resource to be created. + type: string + severity: + description: Specifies the severity of this Smart Detector Alert + Rule. Possible values are Sev0, Sev1, Sev2, Sev3 or Sev4. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + throttlingDuration: + description: Specifies the duration (in ISO8601 format) to wait + before notifying on the alert rule again. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -560,15 +635,25 @@ spec: type: object x-kubernetes-validations: - message: actionGroup is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.actionGroup) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.actionGroup) + || has(self.initProvider.actionGroup)' - message: detectorType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.detectorType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.detectorType) + || has(self.initProvider.detectorType)' - message: frequency is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frequency) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frequency) + || has(self.initProvider.frequency)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: severity is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.severity) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.severity) + || has(self.initProvider.severity)' status: description: MonitorSmartDetectorAlertRuleStatus defines the observed state of MonitorSmartDetectorAlertRule. diff --git a/package/crds/analysisservices.azure.upbound.io_servers.yaml b/package/crds/analysisservices.azure.upbound.io_servers.yaml index 184fd73dd..85cd1d943 100644 --- a/package/crds/analysisservices.azure.upbound.io_servers.yaml +++ b/package/crds/analysisservices.azure.upbound.io_servers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: servers.analysisservices.azure.upbound.io spec: group: analysisservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -108,10 +107,6 @@ spec: rangeStart: description: Start of the firewall rule range as IPv4 address. type: string - required: - - name - - rangeEnd - - rangeStart type: object type: array location: @@ -219,21 +214,95 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + adminUsers: + description: List of email addresses of admin users. + items: + type: string + type: array + enablePowerBiService: + description: Indicates if the Power BI service is allowed to access + or not. + type: boolean + ipv4FirewallRule: + description: One or more ipv4_firewall_rule block(s) as defined + below. + items: + properties: + name: + description: Specifies the name of the firewall rule. + type: string + rangeEnd: + description: End of the firewall rule range as IPv4 address. + type: string + rangeStart: + description: Start of the firewall rule range as IPv4 address. + type: string + type: object + type: array + location: + description: The Azure location where the Analysis Services Server + exists. Changing this forces a new resource to be created. + type: string + name: + description: The name of the Analysis Services Server. Only lowercase + Alphanumeric characters allowed, starting with a letter. Changing + this forces a new resource to be created. + type: string + querypoolConnectionMode: + description: Controls how the read-write server is used in the + query pool. If this value is set to All then read-write servers + are also used for queries. Otherwise with ReadOnly these servers + do not participate in query operations. + type: string + sku: + description: 'SKU for the Analysis Services Server. Possible values + are: D1, B1, B2, S0, S1, S2, S4, S8, S9, S8v2 and S9v2.' + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -407,11 +476,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: ServerStatus defines the observed state of Server. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_apidiagnostics.yaml b/package/crds/apimanagement.azure.upbound.io_apidiagnostics.yaml index bcbc5aed0..5571a85ab 100644 --- a/package/crds/apimanagement.azure.upbound.io_apidiagnostics.yaml +++ b/package/crds/apimanagement.azure.upbound.io_apidiagnostics.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apidiagnostics.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -332,9 +331,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array queryParams: @@ -350,9 +346,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array type: object @@ -388,9 +381,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array queryParams: @@ -406,9 +396,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array type: object @@ -444,9 +431,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array queryParams: @@ -462,9 +446,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array type: object @@ -500,9 +481,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array queryParams: @@ -518,9 +496,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array type: object @@ -634,21 +609,271 @@ spec: or error. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + alwaysLogErrors: + description: Always log errors. Send telemetry if there is an + erroneous condition, regardless of sampling settings. + type: boolean + backendRequest: + description: A backend_request block as defined below. + items: + properties: + bodyBytes: + description: Number of payload bytes to log (up to 8192). + type: number + dataMasking: + description: A data_masking block as defined below. + items: + properties: + headers: + description: A headers block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + queryParams: + description: A query_params block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + type: object + type: array + headersToLog: + description: Specifies a list of headers to log. + items: + type: string + type: array + type: object + type: array + backendResponse: + description: A backend_response block as defined below. + items: + properties: + bodyBytes: + description: Number of payload bytes to log (up to 8192). + type: number + dataMasking: + description: A data_masking block as defined below. + items: + properties: + headers: + description: A headers block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + queryParams: + description: A query_params block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + type: object + type: array + headersToLog: + description: Specifies a list of headers to log. + items: + type: string + type: array + type: object + type: array + frontendRequest: + description: A frontend_request block as defined below. + items: + properties: + bodyBytes: + description: Number of payload bytes to log (up to 8192). + type: number + dataMasking: + description: A data_masking block as defined below. + items: + properties: + headers: + description: A headers block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + queryParams: + description: A query_params block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + type: object + type: array + headersToLog: + description: Specifies a list of headers to log. + items: + type: string + type: array + type: object + type: array + frontendResponse: + description: A frontend_response block as defined below. + items: + properties: + bodyBytes: + description: Number of payload bytes to log (up to 8192). + type: number + dataMasking: + description: A data_masking block as defined below. + items: + properties: + headers: + description: A headers block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + queryParams: + description: A query_params block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + type: object + type: array + headersToLog: + description: Specifies a list of headers to log. + items: + type: string + type: array + type: object + type: array + httpCorrelationProtocol: + description: The HTTP Correlation Protocol to use. Possible values + are None, Legacy or W3C. + type: string + logClientIp: + description: Log client IP address. + type: boolean + operationNameFormat: + description: The format of the Operation Name for Application + Insights telemetries. Possible values are Name, and Url. Defaults + to Name. + type: string + samplingPercentage: + description: Sampling (%). For high traffic APIs, please read + this documentation to understand performance implications and + log sampling. Valid values are between 0.0 and 100.0. + type: number + verbosity: + description: Logging verbosity. Possible values are verbose, information + or error. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_apioperationpolicies.yaml b/package/crds/apimanagement.azure.upbound.io_apioperationpolicies.yaml index 1fffef0f4..5f83f2ca4 100644 --- a/package/crds/apimanagement.azure.upbound.io_apioperationpolicies.yaml +++ b/package/crds/apimanagement.azure.upbound.io_apioperationpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apioperationpolicies.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -394,21 +393,53 @@ spec: available. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + xmlContent: + description: The XML Content for this Policy. + type: string + xmlLink: + description: A link to a Policy XML Document, which must be publicly + available. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_apioperations.yaml b/package/crds/apimanagement.azure.upbound.io_apioperations.yaml index 4449e0b0a..ce16f9aef 100644 --- a/package/crds/apimanagement.azure.upbound.io_apioperations.yaml +++ b/package/crds/apimanagement.azure.upbound.io_apioperations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apioperations.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -274,8 +273,6 @@ spec: value: description: The example of the representation. type: string - required: - - name type: object type: array name: @@ -300,10 +297,6 @@ spec: items: type: string type: array - required: - - name - - required - - type type: object type: array queryParameter: @@ -339,8 +332,6 @@ spec: value: description: The example of the representation. type: string - required: - - name type: object type: array name: @@ -365,10 +356,6 @@ spec: items: type: string type: array - required: - - name - - required - - type type: object type: array representation: @@ -402,8 +389,6 @@ spec: value: description: The example of the representation. type: string - required: - - name type: object type: array formParameter: @@ -443,8 +428,6 @@ spec: value: description: The example of the representation. type: string - required: - - name type: object type: array name: @@ -469,10 +452,6 @@ spec: items: type: string type: array - required: - - name - - required - - type type: object type: array schemaId: @@ -481,8 +460,6 @@ spec: typeName: description: The type name defined by the Schema. type: string - required: - - contentType type: object type: array type: object @@ -606,8 +583,6 @@ spec: value: description: The example of the representation. type: string - required: - - name type: object type: array name: @@ -632,10 +607,6 @@ spec: items: type: string type: array - required: - - name - - required - - type type: object type: array representation: @@ -669,8 +640,6 @@ spec: value: description: The example of the representation. type: string - required: - - name type: object type: array formParameter: @@ -710,8 +679,6 @@ spec: value: description: The example of the representation. type: string - required: - - name type: object type: array name: @@ -736,10 +703,6 @@ spec: items: type: string type: array - required: - - name - - required - - type type: object type: array schemaId: @@ -748,15 +711,11 @@ spec: typeName: description: The type name defined by the Schema. type: string - required: - - contentType type: object type: array statusCode: description: The HTTP Status Code. type: number - required: - - statusCode type: object type: array templateParameter: @@ -789,8 +748,6 @@ spec: value: description: The example of the representation. type: string - required: - - name type: object type: array name: @@ -815,10 +772,6 @@ spec: items: type: string type: array - required: - - name - - required - - type type: object type: array urlTemplate: @@ -826,21 +779,523 @@ spec: resource for this operation, which may include parameters. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description for this API Operation, which may include + HTML formatting tags. + type: string + displayName: + description: The Display Name for this API Management Operation. + type: string + method: + description: The HTTP Method used for this API Management Operation, + like GET, DELETE, PUT or POST - but not limited to these values. + type: string + request: + description: A request block as defined below. + items: + properties: + description: + description: A description of the HTTP Request, which may + include HTML tags. + type: string + header: + description: One or more header blocks as defined above. + items: + properties: + defaultValue: + description: The default value for this Template Parameter. + type: string + description: + description: A description of this Template Parameter. + type: string + example: + description: One or more example blocks as defined + above. + items: + properties: + description: + description: A description of this Template + Parameter. + type: string + externalValue: + description: A URL that points to the literal + example. + type: string + name: + description: The Name of this Template Parameter. + type: string + summary: + description: A short description for this example. + type: string + value: + description: The example of the representation. + type: string + type: object + type: array + name: + description: The Name of this Template Parameter. + type: string + required: + description: Is this Template Parameter Required? + type: boolean + schemaId: + description: The name of the Schema. + type: string + type: + description: The Type of this Template Parameter, + such as a string. + type: string + typeName: + description: The type name defined by the Schema. + type: string + values: + description: One or more acceptable values for this + Template Parameter. + items: + type: string + type: array + type: object + type: array + queryParameter: + description: One or more query_parameter blocks as defined + above. + items: + properties: + defaultValue: + description: The default value for this Template Parameter. + type: string + description: + description: A description of this Template Parameter. + type: string + example: + description: One or more example blocks as defined + above. + items: + properties: + description: + description: A description of this Template + Parameter. + type: string + externalValue: + description: A URL that points to the literal + example. + type: string + name: + description: The Name of this Template Parameter. + type: string + summary: + description: A short description for this example. + type: string + value: + description: The example of the representation. + type: string + type: object + type: array + name: + description: The Name of this Template Parameter. + type: string + required: + description: Is this Template Parameter Required? + type: boolean + schemaId: + description: The name of the Schema. + type: string + type: + description: The Type of this Template Parameter, + such as a string. + type: string + typeName: + description: The type name defined by the Schema. + type: string + values: + description: One or more acceptable values for this + Template Parameter. + items: + type: string + type: array + type: object + type: array + representation: + description: One or more representation blocks as defined + below. + items: + properties: + contentType: + description: The Content Type of this representation, + such as application/json. + type: string + example: + description: One or more example blocks as defined + above. + items: + properties: + description: + description: A description of this Template + Parameter. + type: string + externalValue: + description: A URL that points to the literal + example. + type: string + name: + description: The Name of this Template Parameter. + type: string + summary: + description: A short description for this example. + type: string + value: + description: The example of the representation. + type: string + type: object + type: array + formParameter: + description: One or more form_parameter block as defined + above. + items: + properties: + defaultValue: + description: The default value for this Template + Parameter. + type: string + description: + description: A description of this Template + Parameter. + type: string + example: + description: One or more example blocks as defined + above. + items: + properties: + description: + description: A description of this Template + Parameter. + type: string + externalValue: + description: A URL that points to the + literal example. + type: string + name: + description: The Name of this Template + Parameter. + type: string + summary: + description: A short description for this + example. + type: string + value: + description: The example of the representation. + type: string + type: object + type: array + name: + description: The Name of this Template Parameter. + type: string + required: + description: Is this Template Parameter Required? + type: boolean + schemaId: + description: The name of the Schema. + type: string + type: + description: The Type of this Template Parameter, + such as a string. + type: string + typeName: + description: The type name defined by the Schema. + type: string + values: + description: One or more acceptable values for + this Template Parameter. + items: + type: string + type: array + type: object + type: array + schemaId: + description: The name of the Schema. + type: string + typeName: + description: The type name defined by the Schema. + type: string + type: object + type: array + type: object + type: array + response: + description: One or more response blocks as defined below. + items: + properties: + description: + description: A description of the HTTP Response, which may + include HTML tags. + type: string + header: + description: One or more header blocks as defined above. + items: + properties: + defaultValue: + description: The default value for this Template Parameter. + type: string + description: + description: A description of this Template Parameter. + type: string + example: + description: One or more example blocks as defined + above. + items: + properties: + description: + description: A description of this Template + Parameter. + type: string + externalValue: + description: A URL that points to the literal + example. + type: string + name: + description: The Name of this Template Parameter. + type: string + summary: + description: A short description for this example. + type: string + value: + description: The example of the representation. + type: string + type: object + type: array + name: + description: The Name of this Template Parameter. + type: string + required: + description: Is this Template Parameter Required? + type: boolean + schemaId: + description: The name of the Schema. + type: string + type: + description: The Type of this Template Parameter, + such as a string. + type: string + typeName: + description: The type name defined by the Schema. + type: string + values: + description: One or more acceptable values for this + Template Parameter. + items: + type: string + type: array + type: object + type: array + representation: + description: One or more representation blocks as defined + below. + items: + properties: + contentType: + description: The Content Type of this representation, + such as application/json. + type: string + example: + description: One or more example blocks as defined + above. + items: + properties: + description: + description: A description of this Template + Parameter. + type: string + externalValue: + description: A URL that points to the literal + example. + type: string + name: + description: The Name of this Template Parameter. + type: string + summary: + description: A short description for this example. + type: string + value: + description: The example of the representation. + type: string + type: object + type: array + formParameter: + description: One or more form_parameter block as defined + above. + items: + properties: + defaultValue: + description: The default value for this Template + Parameter. + type: string + description: + description: A description of this Template + Parameter. + type: string + example: + description: One or more example blocks as defined + above. + items: + properties: + description: + description: A description of this Template + Parameter. + type: string + externalValue: + description: A URL that points to the + literal example. + type: string + name: + description: The Name of this Template + Parameter. + type: string + summary: + description: A short description for this + example. + type: string + value: + description: The example of the representation. + type: string + type: object + type: array + name: + description: The Name of this Template Parameter. + type: string + required: + description: Is this Template Parameter Required? + type: boolean + schemaId: + description: The name of the Schema. + type: string + type: + description: The Type of this Template Parameter, + such as a string. + type: string + typeName: + description: The type name defined by the Schema. + type: string + values: + description: One or more acceptable values for + this Template Parameter. + items: + type: string + type: array + type: object + type: array + schemaId: + description: The name of the Schema. + type: string + typeName: + description: The type name defined by the Schema. + type: string + type: object + type: array + statusCode: + description: The HTTP Status Code. + type: number + type: object + type: array + templateParameter: + description: One or more template_parameter blocks as defined + below. + items: + properties: + defaultValue: + description: The default value for this Template Parameter. + type: string + description: + description: A description of this Template Parameter. + type: string + example: + description: One or more example blocks as defined above. + items: + properties: + description: + description: A description of this Template Parameter. + type: string + externalValue: + description: A URL that points to the literal example. + type: string + name: + description: The Name of this Template Parameter. + type: string + summary: + description: A short description for this example. + type: string + value: + description: The example of the representation. + type: string + type: object + type: array + name: + description: The Name of this Template Parameter. + type: string + required: + description: Is this Template Parameter Required? + type: boolean + schemaId: + description: The name of the Schema. + type: string + type: + description: The Type of this Template Parameter, such as + a string. + type: string + typeName: + description: The type name defined by the Schema. + type: string + values: + description: One or more acceptable values for this Template + Parameter. + items: + type: string + type: array + type: object + type: array + urlTemplate: + description: The relative URL Template identifying the target + resource for this operation, which may include parameters. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1014,11 +1469,17 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: method is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.method) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.method) + || has(self.initProvider.method)' - message: urlTemplate is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.urlTemplate) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.urlTemplate) + || has(self.initProvider.urlTemplate)' status: description: APIOperationStatus defines the observed state of APIOperation. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_apioperationtags.yaml b/package/crds/apimanagement.azure.upbound.io_apioperationtags.yaml index 418f7677c..68e180f49 100644 --- a/package/crds/apimanagement.azure.upbound.io_apioperationtags.yaml +++ b/package/crds/apimanagement.azure.upbound.io_apioperationtags.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apioperationtags.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -152,21 +151,50 @@ spec: Tag. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + displayName: + description: The display name of the API Management API Operation + Tag. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -340,7 +368,9 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' status: description: APIOperationTagStatus defines the observed state of APIOperationTag. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_apipolicies.yaml b/package/crds/apimanagement.azure.upbound.io_apipolicies.yaml index e7a04bebe..19d297580 100644 --- a/package/crds/apimanagement.azure.upbound.io_apipolicies.yaml +++ b/package/crds/apimanagement.azure.upbound.io_apipolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apipolicies.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -309,21 +308,53 @@ spec: available. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + xmlContent: + description: The XML Content for this Policy as a string. + type: string + xmlLink: + description: A link to a Policy XML Document, which must be publicly + available. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_apireleases.yaml b/package/crds/apimanagement.azure.upbound.io_apireleases.yaml index c356a063d..a292e7962 100644 --- a/package/crds/apimanagement.azure.upbound.io_apireleases.yaml +++ b/package/crds/apimanagement.azure.upbound.io_apireleases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apireleases.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -149,21 +148,49 @@ spec: description: The Release Notes. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + notes: + description: The Release Notes. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_apis.yaml b/package/crds/apimanagement.azure.upbound.io_apis.yaml index 750d6f91e..5e370c03a 100644 --- a/package/crds/apimanagement.azure.upbound.io_apis.yaml +++ b/package/crds/apimanagement.azure.upbound.io_apis.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apis.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -204,14 +203,8 @@ spec: serviceName: description: The name of service to import from WSDL. type: string - required: - - endpointName - - serviceName type: object type: array - required: - - contentFormat - - contentValue type: object type: array license: @@ -237,8 +230,6 @@ spec: scope: description: Operations scope. type: string - required: - - authorizationServerName type: object type: array openidAuthentication: @@ -256,8 +247,6 @@ spec: description: OpenID Connect provider identifier. The name of an OpenID Connect Provider. type: string - required: - - openidProviderName type: object type: array path: @@ -383,9 +372,6 @@ spec: description: The name of the QueryString parameter which should be used for the Subscription Key. type: string - required: - - header - - query type: object type: array subscriptionRequired: @@ -407,21 +393,212 @@ spec: with. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + apiType: + description: Type of API. Possible values are graphql, http, soap, + and websocket. Defaults to http. + type: string + contact: + description: A contact block as documented below. + items: + properties: + email: + description: The email address of the contact person/organization. + type: string + name: + description: The name of the contact person/organization. + type: string + url: + description: Absolute URL of the contact information. + type: string + type: object + type: array + description: + description: A description of the API Management API, which may + include HTML formatting tags. + type: string + displayName: + description: The display name of the API. + type: string + import: + description: A import block as documented below. + items: + properties: + contentFormat: + description: 'The format of the content from which the API + Definition should be imported. Possible values are: openapi, + openapi+json, openapi+json-link, openapi-link, swagger-json, + swagger-link-json, wadl-link-json, wadl-xml, wsdl and + wsdl-link.' + type: string + contentValue: + description: The Content from which the API Definition should + be imported. When a content_format of *-link-* is specified + this must be a URL, otherwise this must be defined inline. + type: string + wsdlSelector: + description: A wsdl_selector block as defined below, which + allows you to limit the import of a WSDL to only a subset + of the document. This can only be specified when content_format + is wsdl or wsdl-link. + items: + properties: + endpointName: + description: The name of endpoint (port) to import + from WSDL. + type: string + serviceName: + description: The name of service to import from WSDL. + type: string + type: object + type: array + type: object + type: array + license: + description: A license block as documented below. + items: + properties: + name: + description: The name of the license . + type: string + url: + description: Absolute URL of the license. + type: string + type: object + type: array + oauth2Authorization: + description: An oauth2_authorization block as documented below. + items: + properties: + authorizationServerName: + description: OAuth authorization server identifier. The + name of an OAuth2 Authorization Server. + type: string + scope: + description: Operations scope. + type: string + type: object + type: array + openidAuthentication: + description: An openid_authentication block as documented below. + items: + properties: + bearerTokenSendingMethods: + description: How to send token to the server. A list of + zero or more methods. Valid values are authorizationHeader + and query. + items: + type: string + type: array + openidProviderName: + description: OpenID Connect provider identifier. The name + of an OpenID Connect Provider. + type: string + type: object + type: array + path: + description: The Path for this API Management API, which is a + relative URL which uniquely identifies this API and all of its + resource paths within the API Management Service. + type: string + protocols: + description: A list of protocols the operations in this API can + be invoked. Possible values are http, https, ws, and wss. + items: + type: string + type: array + revision: + description: The Revision which used for this API. Changing this + forces a new resource to be created. + type: string + revisionDescription: + description: The description of the API Revision of the API Management + API. + type: string + serviceUrl: + description: Absolute URL of the backend service implementing + this API. + type: string + soapPassThrough: + description: Should this API expose a SOAP frontend, rather than + a HTTP frontend? Defaults to false. + type: boolean + sourceApiId: + description: The API id of the source API, which could be in format + azurerm_api_management_api.example.id or in format azurerm_api_management_api.example.id;rev=1 + type: string + subscriptionKeyParameterNames: + description: A subscription_key_parameter_names block as documented + below. + items: + properties: + header: + description: The name of the HTTP Header which should be + used for the Subscription Key. + type: string + query: + description: The name of the QueryString parameter which + should be used for the Subscription Key. + type: string + type: object + type: array + subscriptionRequired: + description: Should this API require a subscription key? Defaults + to true. + type: boolean + termsOfServiceUrl: + description: Absolute URL of the Terms of Service for the API. + type: string + version: + description: The Version number of this API, if this API is versioned. + type: string + versionDescription: + description: The description of the API Version of the API Management + API. + type: string + versionSetId: + description: The ID of the Version Set which this API is associated + with. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -595,7 +772,9 @@ spec: type: object x-kubernetes-validations: - message: revision is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.revision) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.revision) + || has(self.initProvider.revision)' status: description: APIStatus defines the observed state of API. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_apischemas.yaml b/package/crds/apimanagement.azure.upbound.io_apischemas.yaml index 07b27845f..b0c296e54 100644 --- a/package/crds/apimanagement.azure.upbound.io_apischemas.yaml +++ b/package/crds/apimanagement.azure.upbound.io_apischemas.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apischemas.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -318,21 +317,61 @@ spec: the Schema. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + components: + description: Types definitions. Used for Swagger/OpenAPI v2/v3 + schemas only. + type: string + contentType: + description: The content type of the API Schema. + type: string + definitions: + description: Types definitions. Used for Swagger/OpenAPI v1 schemas + only. + type: string + value: + description: The JSON escaped string defining the document representing + the Schema. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -506,7 +545,9 @@ spec: type: object x-kubernetes-validations: - message: contentType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.contentType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.contentType) + || has(self.initProvider.contentType)' status: description: APISchemaStatus defines the observed state of APISchema. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_apitags.yaml b/package/crds/apimanagement.azure.upbound.io_apitags.yaml index 06704e7f3..1c090e008 100644 --- a/package/crds/apimanagement.azure.upbound.io_apitags.yaml +++ b/package/crds/apimanagement.azure.upbound.io_apitags.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apitags.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -146,21 +145,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_apiversionsets.yaml b/package/crds/apimanagement.azure.upbound.io_apiversionsets.yaml index e7423e374..95d4aaca6 100644 --- a/package/crds/apimanagement.azure.upbound.io_apiversionsets.yaml +++ b/package/crds/apimanagement.azure.upbound.io_apiversionsets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apiversionsets.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -249,21 +248,65 @@ spec: Query and Segment. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of API Version Set. + type: string + displayName: + description: The display name of this API Version Set. + type: string + versionHeaderName: + description: The name of the Header which should be read from + Inbound Requests which defines the API Version. + type: string + versionQueryName: + description: The name of the Query String which should be read + from Inbound Requests which defines the API Version. + type: string + versioningScheme: + description: Specifies where in an Inbound HTTP Request that the + API Version should be read from. Possible values are Header, + Query and Segment. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -437,9 +480,13 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: versioningScheme is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.versioningScheme) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.versioningScheme) + || has(self.initProvider.versioningScheme)' status: description: APIVersionSetStatus defines the observed state of APIVersionSet. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_authorizationservers.yaml b/package/crds/apimanagement.azure.upbound.io_authorizationservers.yaml index ea1cb19da..0a3197833 100644 --- a/package/crds/apimanagement.azure.upbound.io_authorizationservers.yaml +++ b/package/crds/apimanagement.azure.upbound.io_authorizationservers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: authorizationservers.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -327,30 +326,124 @@ spec: value: description: The Value of the Parameter. type: string - required: - - name - - value type: object type: array tokenEndpoint: description: The OAUTH Token Endpoint. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authorizationEndpoint: + description: The OAUTH Authorization Endpoint. + type: string + authorizationMethods: + description: The HTTP Verbs supported by the Authorization Endpoint. + Possible values are DELETE, GET, HEAD, OPTIONS, PATCH, POST, + PUT and TRACE. + items: + type: string + type: array + bearerTokenSendingMethods: + description: The mechanism by which Access Tokens are passed to + the API. Possible values are authorizationHeader and query. + items: + type: string + type: array + clientAuthenticationMethod: + description: The Authentication Methods supported by the Token + endpoint of this Authorization Server.. Possible values are + Basic and Body. + items: + type: string + type: array + clientId: + description: The Client/App ID registered with this Authorization + Server. + type: string + clientRegistrationEndpoint: + description: The URI of page where Client/App Registration is + performed for this Authorization Server. + type: string + defaultScope: + description: The Default Scope used when requesting an Access + Token, specified as a string containing space-delimited values. + type: string + description: + description: A description of the Authorization Server, which + may contain HTML formatting tags. + type: string + displayName: + description: The user-friendly name of this Authorization Server. + type: string + grantTypes: + description: Form of Authorization Grants required when requesting + an Access Token. Possible values are authorizationCode, clientCredentials, + implicit and resourceOwnerPassword. + items: + type: string + type: array + resourceOwnerUsername: + description: The username associated with the Resource Owner. + type: string + supportState: + description: Does this Authorization Server support State? If + this is set to true the client may use the state parameter to + raise protocol security. + type: boolean + tokenBodyParameter: + description: A token_body_parameter block as defined below. + items: + properties: + name: + description: The Name of the Parameter. + type: string + value: + description: The Value of the Parameter. + type: string + type: object + type: array + tokenEndpoint: + description: The OAUTH Token Endpoint. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -524,17 +617,29 @@ spec: type: object x-kubernetes-validations: - message: authorizationEndpoint is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authorizationEndpoint) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.authorizationEndpoint) + || has(self.initProvider.authorizationEndpoint)' - message: authorizationMethods is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authorizationMethods) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.authorizationMethods) + || has(self.initProvider.authorizationMethods)' - message: clientId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientId) + || has(self.initProvider.clientId)' - message: clientRegistrationEndpoint is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientRegistrationEndpoint) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientRegistrationEndpoint) + || has(self.initProvider.clientRegistrationEndpoint)' - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: grantTypes is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.grantTypes) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.grantTypes) + || has(self.initProvider.grantTypes)' status: description: AuthorizationServerStatus defines the observed state of AuthorizationServer. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_backends.yaml b/package/crds/apimanagement.azure.upbound.io_backends.yaml index 23495e993..0fb872361 100644 --- a/package/crds/apimanagement.azure.upbound.io_backends.yaml +++ b/package/crds/apimanagement.azure.upbound.io_backends.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backends.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -223,9 +222,6 @@ spec: username: description: The username to connect to the proxy server. type: string - required: - - url - - username type: object type: array resourceGroupName: @@ -352,14 +348,8 @@ spec: name: description: The common name of the certificate. type: string - required: - - issuerCertificateThumbprint - - name type: object type: array - required: - - managementEndpoints - - maxPartitionResolutionRetries type: object type: array title: @@ -385,21 +375,177 @@ spec: description: The URL of the backend host. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + credentials: + description: A credentials block as documented below. + items: + properties: + authorization: + description: An authorization block as defined below. + items: + properties: + parameter: + description: The authentication Parameter value. + type: string + scheme: + description: The authentication Scheme name. + type: string + type: object + type: array + certificate: + description: A list of client certificate thumbprints to + present to the backend host. The certificates must exist + within the API Management Service. + items: + type: string + type: array + header: + additionalProperties: + type: string + description: A mapping of header parameters to pass to the + backend host. The keys are the header names and the values + are a comma separated string of header values. This is + converted to a list before being passed to the API. + type: object + query: + additionalProperties: + type: string + description: A mapping of query parameters to pass to the + backend host. The keys are the query names and the values + are a comma separated string of query values. This is + converted to a list before being passed to the API. + type: object + type: object + type: array + description: + description: The description of the backend. + type: string + protocol: + description: The protocol used by the backend host. Possible values + are http or soap. + type: string + proxy: + description: A proxy block as documented below. + items: + properties: + url: + description: The URL of the proxy server. + type: string + username: + description: The username to connect to the proxy server. + type: string + type: object + type: array + resourceId: + description: The management URI of the backend host in an external + system. This URI can be the ARM Resource ID of Logic Apps, Function + Apps or API Apps, or the management endpoint of a Service Fabric + cluster. + type: string + serviceFabricCluster: + description: A service_fabric_cluster block as documented below. + items: + properties: + clientCertificateId: + description: The client certificate resource id for the + management endpoint. + type: string + clientCertificateThumbprint: + description: The client certificate thumbprint for the management + endpoint. + type: string + managementEndpoints: + description: A list of cluster management endpoints. + items: + type: string + type: array + maxPartitionResolutionRetries: + description: The maximum number of retries when attempting + resolve the partition. + type: number + serverCertificateThumbprints: + description: A list of thumbprints of the server certificates + of the Service Fabric cluster. + items: + type: string + type: array + serverX509Name: + description: One or more server_x509_name blocks as documented + below. + items: + properties: + issuerCertificateThumbprint: + description: The thumbprint for the issuer of the + certificate. + type: string + name: + description: The common name of the certificate. + type: string + type: object + type: array + type: object + type: array + title: + description: The title of the backend. + type: string + tls: + description: A tls block as documented below. + items: + properties: + validateCertificateChain: + description: Flag indicating whether SSL certificate chain + validation should be done when using self-signed certificates + for the backend host. + type: boolean + validateCertificateName: + description: Flag indicating whether SSL certificate name + validation should be done when using self-signed certificates + for the backend host. + type: boolean + type: object + type: array + url: + description: The URL of the backend host. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -573,9 +719,13 @@ spec: type: object x-kubernetes-validations: - message: protocol is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.protocol) + || has(self.initProvider.protocol)' - message: url is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.url) + || has(self.initProvider.url)' status: description: BackendStatus defines the observed state of Backend. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_certificates.yaml b/package/crds/apimanagement.azure.upbound.io_certificates.yaml index cf1d9f4a1..b52fa8f9e 100644 --- a/package/crds/apimanagement.azure.upbound.io_certificates.yaml +++ b/package/crds/apimanagement.azure.upbound.io_certificates.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: certificates.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -346,21 +345,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + keyVaultIdentityClientId: + description: The Client ID of the User Assigned Managed Identity + to use for retrieving certificate. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_diagnostics.yaml b/package/crds/apimanagement.azure.upbound.io_diagnostics.yaml index 7dbda1f91..89efd13d0 100644 --- a/package/crds/apimanagement.azure.upbound.io_diagnostics.yaml +++ b/package/crds/apimanagement.azure.upbound.io_diagnostics.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: diagnostics.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -255,9 +254,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array queryParams: @@ -273,9 +269,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array type: object @@ -311,9 +304,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array queryParams: @@ -329,9 +319,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array type: object @@ -367,9 +354,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array queryParams: @@ -385,9 +369,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array type: object @@ -423,9 +404,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array queryParams: @@ -441,9 +419,6 @@ spec: description: The name of the header or the query parameter to mask. type: string - required: - - mode - - value type: object type: array type: object @@ -556,21 +531,271 @@ spec: or error. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + alwaysLogErrors: + description: Always log errors. Send telemetry if there is an + erroneous condition, regardless of sampling settings. + type: boolean + backendRequest: + description: A backend_request block as defined below. + items: + properties: + bodyBytes: + description: Number of payload bytes to log (up to 8192). + type: number + dataMasking: + description: A data_masking block as defined below. + items: + properties: + headers: + description: A headers block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + queryParams: + description: A query_params block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + type: object + type: array + headersToLog: + description: Specifies a list of headers to log. + items: + type: string + type: array + type: object + type: array + backendResponse: + description: A backend_response block as defined below. + items: + properties: + bodyBytes: + description: Number of payload bytes to log (up to 8192). + type: number + dataMasking: + description: A data_masking block as defined below. + items: + properties: + headers: + description: A headers block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + queryParams: + description: A query_params block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + type: object + type: array + headersToLog: + description: Specifies a list of headers to log. + items: + type: string + type: array + type: object + type: array + frontendRequest: + description: A frontend_request block as defined below. + items: + properties: + bodyBytes: + description: Number of payload bytes to log (up to 8192). + type: number + dataMasking: + description: A data_masking block as defined below. + items: + properties: + headers: + description: A headers block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + queryParams: + description: A query_params block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + type: object + type: array + headersToLog: + description: Specifies a list of headers to log. + items: + type: string + type: array + type: object + type: array + frontendResponse: + description: A frontend_response block as defined below. + items: + properties: + bodyBytes: + description: Number of payload bytes to log (up to 8192). + type: number + dataMasking: + description: A data_masking block as defined below. + items: + properties: + headers: + description: A headers block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + queryParams: + description: A query_params block as defined below. + items: + properties: + mode: + description: The data masking mode. Possible + values are Mask and Hide for query_params. + The only possible value is Mask for headers. + type: string + value: + description: The name of the header or the query + parameter to mask. + type: string + type: object + type: array + type: object + type: array + headersToLog: + description: Specifies a list of headers to log. + items: + type: string + type: array + type: object + type: array + httpCorrelationProtocol: + description: The HTTP Correlation Protocol to use. Possible values + are None, Legacy or W3C. + type: string + logClientIp: + description: Log client IP address. + type: boolean + operationNameFormat: + description: The format of the Operation Name for Application + Insights telemetries. Possible values are Name, and Url. Defaults + to Name. + type: string + samplingPercentage: + description: Sampling (%). For high traffic APIs, please read + this documentation to understand performance implications and + log sampling. Valid values are between 0.0 and 100.0. + type: number + verbosity: + description: Logging verbosity. Possible values are verbose, information + or error. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_emailtemplates.yaml b/package/crds/apimanagement.azure.upbound.io_emailtemplates.yaml index 14e11c047..50305d683 100644 --- a/package/crds/apimanagement.azure.upbound.io_emailtemplates.yaml +++ b/package/crds/apimanagement.azure.upbound.io_emailtemplates.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: emailtemplates.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -249,21 +248,53 @@ spec: required: - templateName type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + body: + description: The body of the Email. Its format has to be a well-formed + HTML document. + type: string + subject: + description: The subject of the Email. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -437,9 +468,13 @@ spec: type: object x-kubernetes-validations: - message: body is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.body) + || has(self.initProvider.body)' - message: subject is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subject) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subject) + || has(self.initProvider.subject)' status: description: EmailTemplateStatus defines the observed state of EmailTemplate. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_gatewayapis.yaml b/package/crds/apimanagement.azure.upbound.io_gatewayapis.yaml index 47fba9436..5a2052901 100644 --- a/package/crds/apimanagement.azure.upbound.io_gatewayapis.yaml +++ b/package/crds/apimanagement.azure.upbound.io_gatewayapis.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: gatewayapis.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -224,21 +223,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_gateways.yaml b/package/crds/apimanagement.azure.upbound.io_gateways.yaml index f9ac4ef44..a9c4b1444 100644 --- a/package/crds/apimanagement.azure.upbound.io_gateways.yaml +++ b/package/crds/apimanagement.azure.upbound.io_gateways.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: gateways.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -171,26 +170,74 @@ spec: description: The country or region where the resource is located. type: string - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of the API Management Gateway. + type: string + locationData: + description: A location_data block as documented below. + items: + properties: + city: + description: The city or locality where the resource is + located. + type: string + district: + description: The district, state, or province where the + resource is located. + type: string + name: + description: A canonical name for the geographic or physical + location. + type: string + region: + description: The country or region where the resource is + located. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -364,7 +411,9 @@ spec: type: object x-kubernetes-validations: - message: locationData is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.locationData) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.locationData) + || has(self.initProvider.locationData)' status: description: GatewayStatus defines the observed state of Gateway. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_globalschemas.yaml b/package/crds/apimanagement.azure.upbound.io_globalschemas.yaml index 510224b14..c93042e5f 100644 --- a/package/crds/apimanagement.azure.upbound.io_globalschemas.yaml +++ b/package/crds/apimanagement.azure.upbound.io_globalschemas.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: globalschemas.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -238,21 +237,57 @@ spec: Schema. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of the schema. + type: string + type: + description: The content type of the Schema. Possible values are + xml and json. + type: string + value: + description: The string defining the document representing the + Schema. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -426,9 +461,13 @@ spec: type: object x-kubernetes-validations: - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' - message: value is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.value) + || has(self.initProvider.value)' status: description: GlobalSchemaStatus defines the observed state of GlobalSchema. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_identityprovideraads.yaml b/package/crds/apimanagement.azure.upbound.io_identityprovideraads.yaml index 64fbdbbf9..ce4ec49fa 100644 --- a/package/crds/apimanagement.azure.upbound.io_identityprovideraads.yaml +++ b/package/crds/apimanagement.azure.upbound.io_identityprovideraads.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: identityprovideraads.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -259,21 +258,59 @@ spec: into Active Directory type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowedTenants: + description: List of allowed AAD Tenants. + items: + type: string + type: array + clientId: + description: Client Id of the Application in the AAD Identity + Provider. + type: string + signinTenant: + description: The AAD Tenant to use instead of Common when logging + into Active Directory + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -447,11 +484,16 @@ spec: type: object x-kubernetes-validations: - message: allowedTenants is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.allowedTenants) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.allowedTenants) + || has(self.initProvider.allowedTenants)' - message: clientId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientId) + || has(self.initProvider.clientId)' - message: clientSecretSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)' status: description: IdentityProviderAADStatus defines the observed state of IdentityProviderAAD. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_identityproviderfacebooks.yaml b/package/crds/apimanagement.azure.upbound.io_identityproviderfacebooks.yaml index 417d44e6e..02926eb4c 100644 --- a/package/crds/apimanagement.azure.upbound.io_identityproviderfacebooks.yaml +++ b/package/crds/apimanagement.azure.upbound.io_identityproviderfacebooks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: identityproviderfacebooks.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -249,21 +248,49 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appId: + description: App ID for Facebook. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -437,9 +464,12 @@ spec: type: object x-kubernetes-validations: - message: appId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.appId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.appId) + || has(self.initProvider.appId)' - message: appSecretSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.appSecretSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.appSecretSecretRef)' status: description: IdentityProviderFacebookStatus defines the observed state of IdentityProviderFacebook. diff --git a/package/crds/apimanagement.azure.upbound.io_identityprovidergoogles.yaml b/package/crds/apimanagement.azure.upbound.io_identityprovidergoogles.yaml index 848dffe9b..6524d64db 100644 --- a/package/crds/apimanagement.azure.upbound.io_identityprovidergoogles.yaml +++ b/package/crds/apimanagement.azure.upbound.io_identityprovidergoogles.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: identityprovidergoogles.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -248,21 +247,49 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clientId: + description: Client Id for Google Sign-in. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -436,9 +463,12 @@ spec: type: object x-kubernetes-validations: - message: clientId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientId) + || has(self.initProvider.clientId)' - message: clientSecretSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)' status: description: IdentityProviderGoogleStatus defines the observed state of IdentityProviderGoogle. diff --git a/package/crds/apimanagement.azure.upbound.io_identityprovidermicrosofts.yaml b/package/crds/apimanagement.azure.upbound.io_identityprovidermicrosofts.yaml index e74acd50b..3cdbd1f58 100644 --- a/package/crds/apimanagement.azure.upbound.io_identityprovidermicrosofts.yaml +++ b/package/crds/apimanagement.azure.upbound.io_identityprovidermicrosofts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: identityprovidermicrosofts.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -249,21 +248,49 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clientId: + description: Client Id of the Azure AD Application. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -437,9 +464,12 @@ spec: type: object x-kubernetes-validations: - message: clientId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientId) + || has(self.initProvider.clientId)' - message: clientSecretSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)' status: description: IdentityProviderMicrosoftStatus defines the observed state of IdentityProviderMicrosoft. diff --git a/package/crds/apimanagement.azure.upbound.io_identityprovidertwitters.yaml b/package/crds/apimanagement.azure.upbound.io_identityprovidertwitters.yaml index f0a40caf6..a3740c68c 100644 --- a/package/crds/apimanagement.azure.upbound.io_identityprovidertwitters.yaml +++ b/package/crds/apimanagement.azure.upbound.io_identityprovidertwitters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: identityprovidertwitters.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -263,21 +262,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -451,9 +474,11 @@ spec: type: object x-kubernetes-validations: - message: apiKeySecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.apiKeySecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.apiKeySecretRef)' - message: apiSecretKeySecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.apiSecretKeySecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.apiSecretKeySecretRef)' status: description: IdentityProviderTwitterStatus defines the observed state of IdentityProviderTwitter. diff --git a/package/crds/apimanagement.azure.upbound.io_loggers.yaml b/package/crds/apimanagement.azure.upbound.io_loggers.yaml index 8363fd11a..5398bc0d7 100644 --- a/package/crds/apimanagement.azure.upbound.io_loggers.yaml +++ b/package/crds/apimanagement.azure.upbound.io_loggers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loggers.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -208,7 +207,6 @@ spec: type: string required: - connectionStringSecretRef - - name type: object type: array resourceGroupName: @@ -371,21 +369,69 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + applicationInsights: + description: An application_insights block as documented below. + Changing this forces a new resource to be created. + items: + type: object + type: array + buffered: + description: Specifies whether records should be buffered in the + Logger prior to publishing. Defaults to true. + type: boolean + description: + description: A description of this Logger. + type: string + eventhub: + description: An eventhub block as documented below. Changing this + forces a new resource to be created. + items: + properties: + name: + description: The name of an EventHub. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_managements.yaml b/package/crds/apimanagement.azure.upbound.io_managements.yaml index f2c06a10e..dc3e5c6ec 100644 --- a/package/crds/apimanagement.azure.upbound.io_managements.yaml +++ b/package/crds/apimanagement.azure.upbound.io_managements.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managements.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -187,8 +186,6 @@ spec: items: type: string type: array - required: - - location type: object type: array certificate: @@ -238,7 +235,6 @@ spec: type: string required: - encodedCertificateSecretRef - - storeName type: object type: array clientCertificateEnabled: @@ -301,8 +297,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array location: @@ -516,8 +510,6 @@ spec: description: Should anonymous users be redirected to the sign in page? type: boolean - required: - - enabled type: object type: array signUp: @@ -543,14 +535,8 @@ spec: description: The Terms of Service which users are required to agree to in order to sign up. type: string - required: - - consentRequired - - enabled type: object type: array - required: - - enabled - - termsOfService type: object type: array skuName: @@ -573,8 +559,6 @@ spec: description: Should the access to the management API be enabled? type: boolean - required: - - enabled type: object type: array virtualNetworkConfiguration: @@ -678,21 +662,337 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalLocation: + description: One or more additional_location blocks as defined + below. + items: + properties: + capacity: + description: The number of compute units in this region. + Defaults to the capacity of the main region. + type: number + gatewayDisabled: + description: Only valid for an Api Management service deployed + in multiple locations. This can be used to disable the + gateway in this additional location. + type: boolean + location: + description: The name of the Azure Region in which the API + Management Service should be expanded to. + type: string + publicIpAddressId: + description: ID of a standard SKU IPv4 Public IP. + type: string + virtualNetworkConfiguration: + description: A virtual_network_configuration block as defined + below. Required when virtual_network_type is External + or Internal. + items: + type: object + type: array + zones: + description: A list of availability zones. Changing this + forces a new resource to be created. + items: + type: string + type: array + type: object + type: array + certificate: + description: One or more (up to 10) certificate blocks as defined + below. + items: + properties: + storeName: + description: The name of the Certificate Store where this + certificate should be stored. Possible values are CertificateAuthority + and Root. + type: string + type: object + type: array + clientCertificateEnabled: + description: Enforce a client certificate to be presented on each + request to the gateway? This is only supported when SKU type + is Consumption. + type: boolean + delegation: + description: A delegation block as defined below. + items: + properties: + subscriptionsEnabled: + description: Should subscription requests be delegated to + an external url? Defaults to false. + type: boolean + url: + description: The delegation URL. + type: string + userRegistrationEnabled: + description: Should user registration requests be delegated + to an external url? Defaults to false. + type: boolean + type: object + type: array + gatewayDisabled: + description: Disable the gateway in main region? This is only + supported when additional_location is set. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this API Management Service. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this API Management Service. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + location: + description: The Azure location where the API Management Service + exists. Changing this forces a new resource to be created. + type: string + minApiVersion: + description: The version which the control plane API calls to + API Management service are limited with version equal to or + newer than. + type: string + notificationSenderEmail: + description: Email address from which the notification will be + sent. + type: string + policy: + description: A policy block as defined below. + items: + properties: + xmlContent: + description: The XML Content for this Policy. + type: string + xmlLink: + description: A link to an API Management Policy XML Document, + which must be publicly available. + type: string + type: object + type: array + protocols: + description: A protocols block as defined below. + items: + properties: + enableHttp2: + description: Should HTTP/2 be supported by the API Management + Service? Defaults to false. + type: boolean + type: object + type: array + publicIpAddressId: + description: ID of a standard SKU IPv4 Public IP. + type: string + publicNetworkAccessEnabled: + description: Is public access to the service allowed?. Defaults + to true + type: boolean + publisherEmail: + description: The email of publisher/company. + type: string + publisherName: + description: The name of publisher/company. + type: string + security: + description: A security block as defined below. + items: + properties: + enableBackendSsl30: + description: Should SSL 3.0 be enabled on the backend of + the gateway? Defaults to false. + type: boolean + enableBackendTls10: + description: Should TLS 1.0 be enabled on the backend of + the gateway? Defaults to false. + type: boolean + enableBackendTls11: + description: Should TLS 1.1 be enabled on the backend of + the gateway? Defaults to false. + type: boolean + enableFrontendSsl30: + description: Should SSL 3.0 be enabled on the frontend of + the gateway? Defaults to false. + type: boolean + enableFrontendTls10: + description: Should TLS 1.0 be enabled on the frontend of + the gateway? Defaults to false. + type: boolean + enableFrontendTls11: + description: Should TLS 1.1 be enabled on the frontend of + the gateway? Defaults to false. + type: boolean + tlsEcdheEcdsaWithAes128CbcShaCiphersEnabled: + description: Should the TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA + cipher be enabled? Defaults to false. + type: boolean + tlsEcdheEcdsaWithAes256CbcShaCiphersEnabled: + description: Should the TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA + cipher be enabled? Defaults to false. + type: boolean + tlsEcdheRsaWithAes128CbcShaCiphersEnabled: + description: Should the TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA + cipher be enabled? Defaults to false. + type: boolean + tlsEcdheRsaWithAes256CbcShaCiphersEnabled: + description: Should the TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA + cipher be enabled? Defaults to false. + type: boolean + tlsRsaWithAes128CbcSha256CiphersEnabled: + description: Should the TLS_RSA_WITH_AES_128_CBC_SHA256 + cipher be enabled? Defaults to false. + type: boolean + tlsRsaWithAes128CbcShaCiphersEnabled: + description: Should the TLS_RSA_WITH_AES_128_CBC_SHA cipher + be enabled? Defaults to false. + type: boolean + tlsRsaWithAes128GcmSha256CiphersEnabled: + description: Should the TLS_RSA_WITH_AES_128_GCM_SHA256 + cipher be enabled? Defaults to false. + type: boolean + tlsRsaWithAes256CbcSha256CiphersEnabled: + description: Should the TLS_RSA_WITH_AES_256_CBC_SHA256 + cipher be enabled? Defaults to false. + type: boolean + tlsRsaWithAes256CbcShaCiphersEnabled: + description: Should the TLS_RSA_WITH_AES_256_CBC_SHA cipher + be enabled? Defaults to false. + type: boolean + tlsRsaWithAes256GcmSha384CiphersEnabled: + description: Should the TLS_RSA_WITH_AES_256_GCM_SHA384 + cipher be enabled? Defaults to false. + type: boolean + tripleDesCiphersEnabled: + description: Should the TLS_RSA_WITH_3DES_EDE_CBC_SHA cipher + be enabled for alL TLS versions (1.0, 1.1 and 1.2)? + type: boolean + type: object + type: array + signIn: + description: A sign_in block as defined below. + items: + properties: + enabled: + description: Should anonymous users be redirected to the + sign in page? + type: boolean + type: object + type: array + signUp: + description: A sign_up block as defined below. + items: + properties: + enabled: + description: Can users sign up on the development portal? + type: boolean + termsOfService: + description: A terms_of_service block as defined below. + items: + properties: + consentRequired: + description: Should the user be asked for consent + during sign up? + type: boolean + enabled: + description: Should Terms of Service be displayed + during sign up?. + type: boolean + text: + description: The Terms of Service which users are + required to agree to in order to sign up. + type: string + type: object + type: array + type: object + type: array + skuName: + description: 'sku_name is a string consisting of two parts separated + by an underscore(_). The first part is the name, valid values + include: Consumption, Developer, Basic, Standard and Premium. + The second part is the capacity (e.g. the number of deployed + units of the sku), which must be a positive integer (e.g. Developer_1).' + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags assigned to the resource. + type: object + tenantAccess: + description: A tenant_access block as defined below. + items: + properties: + enabled: + description: Should the access to the management API be + enabled? + type: boolean + type: object + type: array + virtualNetworkConfiguration: + description: A virtual_network_configuration block as defined + below. Required when virtual_network_type is External or Internal. + items: + type: object + type: array + virtualNetworkType: + description: 'The type of virtual network you want to use, valid + values include: None, External, Internal.' + type: string + zones: + description: Specifies a list of Availability Zones in which this + API Management service should be located. Changing this forces + a new API Management service to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -866,13 +1166,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: publisherEmail is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publisherEmail) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.publisherEmail) + || has(self.initProvider.publisherEmail)' - message: publisherName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publisherName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.publisherName) + || has(self.initProvider.publisherName)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: ManagementStatus defines the observed state of Management. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_namedvalues.yaml b/package/crds/apimanagement.azure.upbound.io_namedvalues.yaml index b7e2d6a1e..539279bb2 100644 --- a/package/crds/apimanagement.azure.upbound.io_namedvalues.yaml +++ b/package/crds/apimanagement.azure.upbound.io_namedvalues.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: namedvalues.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -255,8 +254,6 @@ spec: secretId: description: The resource ID of the Key Vault Secret. type: string - required: - - secretId type: object type: array valueSecretRef: @@ -277,21 +274,75 @@ spec: - namespace type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + displayName: + description: The display name of this API Management Named Value. + type: string + secret: + description: Specifies whether the API Management Named Value + is secret. Valid values are true or false. The default value + is false. + type: boolean + tags: + description: A list of tags to be applied to the API Management + Named Value. + items: + type: string + type: array + valueFromKeyVault: + description: A value_from_key_vault block as defined below. + items: + properties: + identityClientId: + description: The client ID of User Assigned Identity, for + the API Management Service, which will be used to access + the key vault secret. The System Assigned Identity will + be used in absence. + type: string + secretId: + description: The resource ID of the Key Vault Secret. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -465,7 +516,9 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' status: description: NamedValueStatus defines the observed state of NamedValue. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_notificationrecipientemails.yaml b/package/crds/apimanagement.azure.upbound.io_notificationrecipientemails.yaml index 7707b80e4..294140ff0 100644 --- a/package/crds/apimanagement.azure.upbound.io_notificationrecipientemails.yaml +++ b/package/crds/apimanagement.azure.upbound.io_notificationrecipientemails.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: notificationrecipientemails.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -165,21 +164,45 @@ spec: - email - notificationType type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_notificationrecipientusers.yaml b/package/crds/apimanagement.azure.upbound.io_notificationrecipientusers.yaml index ba6f8a177..bf0bbe089 100644 --- a/package/crds/apimanagement.azure.upbound.io_notificationrecipientusers.yaml +++ b/package/crds/apimanagement.azure.upbound.io_notificationrecipientusers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: notificationrecipientusers.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -236,21 +235,53 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + notificationType: + description: The Notification Name to be received. Changing this + forces a new API Management Notification Recipient User to be + created. Possible values are AccountClosedPublisher, BCC, NewApplicationNotificationMessage, + NewIssuePublisherNotificationMessage, PurchasePublisherNotificationMessage, + QuotaLimitApproachingPublisherNotificationMessage, and RequestPublisherNotificationMessage. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -424,7 +455,9 @@ spec: type: object x-kubernetes-validations: - message: notificationType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notificationType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.notificationType) + || has(self.initProvider.notificationType)' status: description: NotificationRecipientUserStatus defines the observed state of NotificationRecipientUser. diff --git a/package/crds/apimanagement.azure.upbound.io_openidconnectproviders.yaml b/package/crds/apimanagement.azure.upbound.io_openidconnectproviders.yaml index 2109be156..df4e166f5 100644 --- a/package/crds/apimanagement.azure.upbound.io_openidconnectproviders.yaml +++ b/package/crds/apimanagement.azure.upbound.io_openidconnectproviders.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: openidconnectproviders.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -271,21 +270,55 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description of this OpenID Connect Provider. + type: string + displayName: + description: A user-friendly name for this OpenID Connect Provider. + type: string + metadataEndpoint: + description: The URI of the Metadata endpoint. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -459,13 +492,19 @@ spec: type: object x-kubernetes-validations: - message: clientIdSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientIdSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientIdSecretRef)' - message: clientSecretSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)' - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: metadataEndpoint is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.metadataEndpoint) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.metadataEndpoint) + || has(self.initProvider.metadataEndpoint)' status: description: OpenIDConnectProviderStatus defines the observed state of OpenIDConnectProvider. diff --git a/package/crds/apimanagement.azure.upbound.io_policies.yaml b/package/crds/apimanagement.azure.upbound.io_policies.yaml index d8c3c31d6..aa5373ca4 100644 --- a/package/crds/apimanagement.azure.upbound.io_policies.yaml +++ b/package/crds/apimanagement.azure.upbound.io_policies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: policies.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -155,21 +154,53 @@ spec: available. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + xmlContent: + description: The XML Content for this Policy as a string. + type: string + xmlLink: + description: A link to a Policy XML Document, which must be publicly + available. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_productapis.yaml b/package/crds/apimanagement.azure.upbound.io_productapis.yaml index 8a5025726..22d2368b4 100644 --- a/package/crds/apimanagement.azure.upbound.io_productapis.yaml +++ b/package/crds/apimanagement.azure.upbound.io_productapis.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: productapis.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -381,21 +380,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_productpolicies.yaml b/package/crds/apimanagement.azure.upbound.io_productpolicies.yaml index 40f0f2b5f..ca2920acd 100644 --- a/package/crds/apimanagement.azure.upbound.io_productpolicies.yaml +++ b/package/crds/apimanagement.azure.upbound.io_productpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: productpolicies.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -310,21 +309,53 @@ spec: available. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + xmlContent: + description: The XML Content for this Policy. + type: string + xmlLink: + description: A link to a Policy XML Document, which must be publicly + available. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_products.yaml b/package/crds/apimanagement.azure.upbound.io_products.yaml index 3faaf35b9..894c58d74 100644 --- a/package/crds/apimanagement.azure.upbound.io_products.yaml +++ b/package/crds/apimanagement.azure.upbound.io_products.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: products.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -255,21 +254,73 @@ spec: process. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + approvalRequired: + description: Do subscribers need to be approved prior to being + able to use the Product? + type: boolean + description: + description: A description of this Product, which may include + HTML formatting tags. + type: string + displayName: + description: The Display Name for this API Management Product. + type: string + published: + description: Is this Product Published? + type: boolean + subscriptionRequired: + description: Is a Subscription required to access API's included + in this Product? Defaults to true. + type: boolean + subscriptionsLimit: + description: The number of subscriptions a user can have to this + Product at the same time. + type: number + terms: + description: The Terms and Conditions for this Product, which + must be accepted by Developers before they can begin the Subscription + process. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -443,9 +494,13 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: published is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.published) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.published) + || has(self.initProvider.published)' status: description: ProductStatus defines the observed state of Product. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_producttags.yaml b/package/crds/apimanagement.azure.upbound.io_producttags.yaml index 56c24b056..6de291f0a 100644 --- a/package/crds/apimanagement.azure.upbound.io_producttags.yaml +++ b/package/crds/apimanagement.azure.upbound.io_producttags.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: producttags.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -384,21 +383,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_rediscaches.yaml b/package/crds/apimanagement.azure.upbound.io_rediscaches.yaml index d8cae2d9d..9ea27494d 100644 --- a/package/crds/apimanagement.azure.upbound.io_rediscaches.yaml +++ b/package/crds/apimanagement.azure.upbound.io_rediscaches.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: rediscaches.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -249,21 +248,53 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + cacheLocation: + description: The location where to use cache from. Possible values + are default and valid Azure regions. Defaults to default. + type: string + description: + description: The description of the API Management Redis Cache. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -437,7 +468,8 @@ spec: type: object x-kubernetes-validations: - message: connectionStringSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionStringSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.connectionStringSecretRef)' status: description: RedisCacheStatus defines the observed state of RedisCache. properties: diff --git a/package/crds/apimanagement.azure.upbound.io_subscriptions.yaml b/package/crds/apimanagement.azure.upbound.io_subscriptions.yaml index 4e93128c8..52eea1376 100644 --- a/package/crds/apimanagement.azure.upbound.io_subscriptions.yaml +++ b/package/crds/apimanagement.azure.upbound.io_subscriptions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subscriptions.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -433,21 +432,64 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowTracing: + description: Determines whether tracing can be enabled. Defaults + to true. + type: boolean + apiId: + description: The ID of the API which should be assigned to this + Subscription. Changing this forces a new resource to be created. + type: string + state: + description: The state of this Subscription. Possible values are + active, cancelled, expired, rejected, submitted and suspended. + Defaults to submitted. + type: string + subscriptionId: + description: An Identifier which should used as the ID of this + Subscription. If not specified a new Subscription ID will be + generated. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_tags.yaml b/package/crds/apimanagement.azure.upbound.io_tags.yaml index 7de0832e7..7e29d9ad2 100644 --- a/package/crds/apimanagement.azure.upbound.io_tags.yaml +++ b/package/crds/apimanagement.azure.upbound.io_tags.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: tags.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -152,21 +151,50 @@ spec: to the name. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + displayName: + description: The display name of the API Management Tag. Defaults + to the name. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/apimanagement.azure.upbound.io_users.yaml b/package/crds/apimanagement.azure.upbound.io_users.yaml index 4b2cce8b6..d16838407 100644 --- a/package/crds/apimanagement.azure.upbound.io_users.yaml +++ b/package/crds/apimanagement.azure.upbound.io_users.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: users.apimanagement.azure.upbound.io spec: group: apimanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -266,21 +265,67 @@ spec: blocked and pending. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + confirmation: + description: The kind of confirmation email which will be sent + to this user. Possible values are invite and signup. Changing + this forces a new resource to be created. + type: string + email: + description: The email address associated with this user. + type: string + firstName: + description: The first name for this user. + type: string + lastName: + description: The last name for this user. + type: string + note: + description: A note about this user. + type: string + state: + description: The state of this user. Possible values are active, + blocked and pending. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -454,11 +499,17 @@ spec: type: object x-kubernetes-validations: - message: email is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.email) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.email) + || has(self.initProvider.email)' - message: firstName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.firstName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.firstName) + || has(self.initProvider.firstName)' - message: lastName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.lastName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.lastName) + || has(self.initProvider.lastName)' status: description: UserStatus defines the observed state of User. properties: diff --git a/package/crds/appconfiguration.azure.upbound.io_configurations.yaml b/package/crds/appconfiguration.azure.upbound.io_configurations.yaml index 445287d0c..638aff422 100644 --- a/package/crds/appconfiguration.azure.upbound.io_configurations.yaml +++ b/package/crds/appconfiguration.azure.upbound.io_configurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: configurations.appconfiguration.azure.upbound.io spec: group: appconfiguration.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -254,8 +253,6 @@ spec: values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array localAuthEnabled: @@ -370,21 +367,100 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + encryption: + description: An encryption block as defined below. + items: + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this App Configuration. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this App Configuration. Possible + values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + localAuthEnabled: + description: Whether local authentication methods is enabled. + Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + publicNetworkAccess: + description: The Public Network Access setting of the App Configuration. + Possible values are Enabled and Disabled. + type: string + purgeProtectionEnabled: + description: Whether Purge Protection is enabled. This field only + works for standard sku. Defaults to false. + type: boolean + sku: + description: The SKU name of the App Configuration. Possible values + are free and standard. Defaults to free. + type: string + softDeleteRetentionDays: + description: The number of days that items should be retained + for once soft-deleted. This field only works for standard sku. + This value can be between 1 and 7 days. Defaults to 7. Changing + this forces a new resource to be created. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -558,7 +634,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ConfigurationStatus defines the observed state of Configuration. properties: diff --git a/package/crds/appplatform.azure.upbound.io_springcloudaccelerators.yaml b/package/crds/appplatform.azure.upbound.io_springcloudaccelerators.yaml index f442f9a51..c9ed1b23e 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudaccelerators.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudaccelerators.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudaccelerators.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -153,21 +152,51 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: The name which should be used for this Spring Cloud + Accelerator. Changing this forces a new Spring Cloud Accelerator + to be created. The only possible value is default. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -341,7 +370,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: SpringCloudAcceleratorStatus defines the observed state of SpringCloudAccelerator. diff --git a/package/crds/appplatform.azure.upbound.io_springcloudactivedeployments.yaml b/package/crds/appplatform.azure.upbound.io_springcloudactivedeployments.yaml index 4e56cc738..2bdaceaaa 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudactivedeployments.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudactivedeployments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudactivedeployments.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -228,21 +227,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/appplatform.azure.upbound.io_springcloudapiportalcustomdomains.yaml b/package/crds/appplatform.azure.upbound.io_springcloudapiportalcustomdomains.yaml index b714216be..f80e39e71 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudapiportalcustomdomains.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudapiportalcustomdomains.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudapiportalcustomdomains.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,55 @@ spec: that binds to the Spring Cloud API Portal Domain. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: The name which should be used for this Spring Cloud + API Portal Domain. Changing this forces a new Spring Cloud API + Portal Domain to be created. + type: string + thumbprint: + description: Specifies the thumbprint of the Spring Cloud Certificate + that binds to the Spring Cloud API Portal Domain. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,7 +379,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: SpringCloudAPIPortalCustomDomainStatus defines the observed state of SpringCloudAPIPortalCustomDomain. diff --git a/package/crds/appplatform.azure.upbound.io_springcloudapiportals.yaml b/package/crds/appplatform.azure.upbound.io_springcloudapiportals.yaml index 2a245ee82..632fab781 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudapiportals.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudapiportals.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudapiportals.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -264,21 +263,79 @@ spec: type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + httpsOnlyEnabled: + description: is only https is allowed? + type: boolean + instanceCount: + description: Specifies the required instance count of the Spring + Cloud API Portal. Possible Values are between 1 and 500. Defaults + to 1 if not specified. + type: number + publicNetworkAccessEnabled: + description: Is the public network access enabled? + type: boolean + sso: + description: A sso block as defined below. + items: + properties: + clientId: + description: The public identifier for the application. + type: string + clientSecret: + description: The secret known only to the application and + the authorization server. + type: string + issuerUri: + description: The URI of Issuer Identifier. + type: string + scope: + description: It defines the specific actions applications + can be allowed to do on a user's behalf. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/appplatform.azure.upbound.io_springcloudappcosmosdbassociations.yaml b/package/crds/appplatform.azure.upbound.io_springcloudappcosmosdbassociations.yaml index 52dc4171f..f6f431f2c 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudappcosmosdbassociations.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudappcosmosdbassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudappcosmosdbassociations.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -334,21 +333,77 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + apiType: + description: Specifies the API type which should be used when + connecting to the CosmosDB Account. Possible values are cassandra, + gremlin, mongo, sql or table. Changing this forces a new resource + to be created. + type: string + cosmosdbCassandraKeyspaceName: + description: Specifies the name of the Cassandra Keyspace which + the Spring Cloud App should be associated with. Should only + be set when api_type is cassandra. + type: string + cosmosdbGremlinDatabaseName: + description: Specifies the name of the Gremlin Database which + the Spring Cloud App should be associated with. Should only + be set when api_type is gremlin. + type: string + cosmosdbGremlinGraphName: + description: Specifies the name of the Gremlin Graph which the + Spring Cloud App should be associated with. Should only be set + when api_type is gremlin. + type: string + cosmosdbMongoDatabaseName: + description: Specifies the name of the Mongo Database which the + Spring Cloud App should be associated with. Should only be set + when api_type is mongo. + type: string + cosmosdbSqlDatabaseName: + description: Specifies the name of the SQL Database which the + Spring Cloud App should be associated with. Should only be set + when api_type is sql. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -522,7 +577,9 @@ spec: type: object x-kubernetes-validations: - message: apiType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.apiType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.apiType) + || has(self.initProvider.apiType)' status: description: SpringCloudAppCosmosDBAssociationStatus defines the observed state of SpringCloudAppCosmosDBAssociation. diff --git a/package/crds/appplatform.azure.upbound.io_springcloudappmysqlassociations.yaml b/package/crds/appplatform.azure.upbound.io_springcloudappmysqlassociations.yaml index 871a87ebe..4ecd90035 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudappmysqlassociations.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudappmysqlassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudappmysqlassociations.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -401,21 +400,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -589,7 +612,8 @@ spec: type: object x-kubernetes-validations: - message: passwordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)' status: description: SpringCloudAppMySQLAssociationStatus defines the observed state of SpringCloudAppMySQLAssociation. diff --git a/package/crds/appplatform.azure.upbound.io_springcloudappredisassociations.yaml b/package/crds/appplatform.azure.upbound.io_springcloudappredisassociations.yaml index d347f58da..8d3042c3a 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudappredisassociations.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudappredisassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudappredisassociations.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -307,21 +306,50 @@ spec: to true. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + sslEnabled: + description: Should SSL be used when connecting to Redis? Defaults + to true. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/appplatform.azure.upbound.io_springcloudapps.yaml b/package/crds/appplatform.azure.upbound.io_springcloudapps.yaml index 265d41218..2e315c9ab 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudapps.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudapps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudapps.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -95,10 +94,6 @@ spec: storageName: description: The name of the Spring Cloud Storage. type: string - required: - - mountPath - - shareName - - storageName type: object type: array httpsOnly: @@ -120,8 +115,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array ingressSettings: @@ -168,8 +161,6 @@ spec: description: Specifies the size of the persistent disk in GB. Possible values are between 0 and 50. type: number - required: - - sizeInGb type: object type: array publicEndpointEnabled: @@ -339,21 +330,149 @@ spec: description: Is End to End TLS Enabled? Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addonJson: + description: A JSON object that contains the addon configurations + of the Spring Cloud Service. + type: string + customPersistentDisk: + description: A custom_persistent_disk block as defined below. + items: + properties: + mountOptions: + description: These are the mount options for a persistent + disk. + items: + type: string + type: array + mountPath: + description: The mount path of the persistent disk. + type: string + readOnlyEnabled: + description: Indicates whether the persistent disk is a + readOnly one. + type: boolean + shareName: + description: The share name of the Azure File share. + type: string + storageName: + description: The name of the Spring Cloud Storage. + type: string + type: object + type: array + httpsOnly: + description: Is only HTTPS allowed? Defaults to false. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Spring Cloud Application. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Spring Cloud Application. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + ingressSettings: + description: An ingress_settings block as defined below. + items: + properties: + backendProtocol: + description: Specifies how ingress should communicate with + this app backend service. Allowed values are GRPC and + Default. Defaults to Default. + type: string + readTimeoutInSeconds: + description: Specifies the ingress read time out in seconds. + Defaults to 300. + type: number + sendTimeoutInSeconds: + description: Specifies the ingress send time out in seconds. + Defaults to 60. + type: number + sessionAffinity: + description: Specifies the type of the affinity, set this + to Cookie to enable session affinity. Allowed values are + Cookie and None. Defaults to None. + type: string + sessionCookieMaxAge: + description: Specifies the time in seconds until the cookie + expires. + type: number + type: object + type: array + isPublic: + description: Does the Spring Cloud Application have public endpoint? + Defaults to false. + type: boolean + persistentDisk: + description: An persistent_disk block as defined below. + items: + properties: + mountPath: + description: Specifies the mount path of the persistent + disk. Defaults to /persistent. + type: string + sizeInGb: + description: Specifies the size of the persistent disk in + GB. Possible values are between 0 and 50. + type: number + type: object + type: array + publicEndpointEnabled: + description: Should the App in vnet injection instance exposes + endpoint which could be accessed from Internet? + type: boolean + tlsEnabled: + description: Is End to End TLS Enabled? Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/appplatform.azure.upbound.io_springcloudbuilddeployments.yaml b/package/crds/appplatform.azure.upbound.io_springcloudbuilddeployments.yaml index 3e8fe4738..0df684dad 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudbuilddeployments.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudbuilddeployments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudbuilddeployments.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -184,21 +183,81 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addonJson: + description: A JSON object that contains the addon configurations + of the Spring Cloud Build Deployment. + type: string + buildResultId: + description: The ID of the Spring Cloud Build Result. + type: string + environmentVariables: + additionalProperties: + type: string + description: Specifies the environment variables of the Spring + Cloud Deployment as a map of key-value pairs. + type: object + instanceCount: + description: Specifies the required instance count of the Spring + Cloud Deployment. Possible Values are between 1 and 500. Defaults + to 1 if not specified. + type: number + quota: + description: A quota block as defined below. + items: + properties: + cpu: + description: Specifies the required cpu of the Spring Cloud + Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults + to 1 if not specified. + type: string + memory: + description: Specifies the required memory size of the Spring + Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, + 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not + specified. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -372,7 +431,9 @@ spec: type: object x-kubernetes-validations: - message: buildResultId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.buildResultId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.buildResultId) + || has(self.initProvider.buildResultId)' status: description: SpringCloudBuildDeploymentStatus defines the observed state of SpringCloudBuildDeployment. diff --git a/package/crds/appplatform.azure.upbound.io_springcloudbuilders.yaml b/package/crds/appplatform.azure.upbound.io_springcloudbuilders.yaml index e9b4a219d..104f61d32 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudbuilders.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudbuilders.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudbuilders.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -81,8 +80,6 @@ spec: description: The name which should be used for this build pack group. type: string - required: - - name type: object type: array name: @@ -179,27 +176,81 @@ spec: version: description: Specifies the version of the ClusterStack type: string - required: - - id - - version type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + buildPackGroup: + description: One or more build_pack_group blocks as defined below. + items: + properties: + buildPackIds: + description: Specifies a list of the build pack's ID. + items: + type: string + type: array + name: + description: The name which should be used for this build + pack group. + type: string + type: object + type: array + name: + description: The name which should be used for this Spring Cloud + Builder. Changing this forces a new Spring Cloud Builder to + be created. + type: string + stack: + description: A stack block as defined below. + items: + properties: + id: + description: Specifies the ID of the ClusterStack. + type: string + version: + description: Specifies the version of the ClusterStack + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -373,11 +424,17 @@ spec: type: object x-kubernetes-validations: - message: buildPackGroup is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.buildPackGroup) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.buildPackGroup) + || has(self.initProvider.buildPackGroup)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: stack is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.stack) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.stack) + || has(self.initProvider.stack)' status: description: SpringCloudBuilderStatus defines the observed state of SpringCloudBuilder. properties: diff --git a/package/crds/appplatform.azure.upbound.io_springcloudbuildpackbindings.yaml b/package/crds/appplatform.azure.upbound.io_springcloudbuildpackbindings.yaml index dd6b7322e..dbe2af920 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudbuildpackbindings.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudbuildpackbindings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudbuildpackbindings.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -172,21 +171,69 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + bindingType: + description: Specifies the Build Pack Binding Type. Allowed values + are ApacheSkyWalking, AppDynamics, ApplicationInsights, Dynatrace, + ElasticAPM and NewRelic. + type: string + launch: + description: A launch block as defined below. + items: + properties: + properties: + additionalProperties: + type: string + description: Specifies a map of non-sensitive properties + for launchProperties. + type: object + secrets: + additionalProperties: + type: string + description: Specifies a map of sensitive properties for + launchProperties. + type: object + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/appplatform.azure.upbound.io_springcloudcertificates.yaml b/package/crds/appplatform.azure.upbound.io_springcloudcertificates.yaml index 362f26880..2d9213eeb 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudcertificates.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudcertificates.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudcertificates.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -311,21 +310,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + certificateContent: + description: The content of uploaded certificate. Changing this + forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/appplatform.azure.upbound.io_springcloudconfigurationservices.yaml b/package/crds/appplatform.azure.upbound.io_springcloudconfigurationservices.yaml index 338414524..bfe3ceec2 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudconfigurationservices.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudconfigurationservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudconfigurationservices.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -143,11 +142,6 @@ spec: description: Specifies the username of git repository basic auth. type: string - required: - - label - - name - - patterns - - uri type: object type: array springCloudServiceId: @@ -230,21 +224,87 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + repository: + description: One or more repository blocks as defined below. + items: + properties: + hostKey: + description: Specifies the SSH public key of git repository. + type: string + hostKeyAlgorithm: + description: Specifies the SSH key algorithm of git repository. + type: string + label: + description: Specifies the label of the repository. + type: string + name: + description: Specifies the name which should be used for + this repository. + type: string + patterns: + description: Specifies the collection of patterns of the + repository. + items: + type: string + type: array + searchPaths: + description: Specifies a list of searching path of the repository + items: + type: string + type: array + strictHostKeyChecking: + description: Specifies whether enable the strict host key + checking. + type: boolean + uri: + description: Specifies the URI of the repository. + type: string + username: + description: Specifies the username of git repository basic + auth. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/appplatform.azure.upbound.io_springcloudcontainerdeployments.yaml b/package/crds/appplatform.azure.upbound.io_springcloudcontainerdeployments.yaml index e0b970c87..d9dacc18e 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudcontainerdeployments.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudcontainerdeployments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudcontainerdeployments.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -207,21 +206,104 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addonJson: + description: A JSON object that contains the addon configurations + of the Spring Cloud Container Deployment. + type: string + arguments: + description: Specifies the arguments to the entrypoint. The docker + image's CMD is used if not specified. + items: + type: string + type: array + commands: + description: Specifies the entrypoint array. It will not be executed + within a shell. The docker image's ENTRYPOINT is used if not + specified. + items: + type: string + type: array + environmentVariables: + additionalProperties: + type: string + description: Specifies the environment variables of the Spring + Cloud Deployment as a map of key-value pairs. + type: object + image: + description: Container image of the custom container. This should + be in the form of : without the server name + of the registry. + type: string + instanceCount: + description: Specifies the required instance count of the Spring + Cloud Deployment. Possible Values are between 1 and 500. Defaults + to 1 if not specified. + type: number + languageFramework: + description: Specifies the language framework of the container + image. The only possible value is springboot. + type: string + quota: + description: A quota block as defined below. + items: + properties: + cpu: + description: Specifies the required cpu of the Spring Cloud + Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults + to 1 if not specified. + type: string + memory: + description: Specifies the required memory size of the Spring + Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, + 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not + specified. + type: string + type: object + type: array + server: + description: The name of the registry that contains the container + image. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -395,9 +477,13 @@ spec: type: object x-kubernetes-validations: - message: image is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.image) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.image) + || has(self.initProvider.image)' - message: server is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.server) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.server) + || has(self.initProvider.server)' status: description: SpringCloudContainerDeploymentStatus defines the observed state of SpringCloudContainerDeployment. diff --git a/package/crds/appplatform.azure.upbound.io_springcloudcustomdomains.yaml b/package/crds/appplatform.azure.upbound.io_springcloudcustomdomains.yaml index c37ceaa35..30012fa11 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudcustomdomains.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudcustomdomains.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudcustomdomains.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -164,21 +163,61 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + certificateName: + description: Specifies the name of the Spring Cloud Certificate + that binds to the Spring Cloud Custom Domain. Required when + thumbprint is specified + type: string + name: + description: Specifies the name of the Spring Cloud Custom Domain. + Changing this forces a new resource to be created. + type: string + thumbprint: + description: Specifies the thumbprint of the Spring Cloud Certificate + that binds to the Spring Cloud Custom Domain. Required when + certificate_name is specified. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -352,7 +391,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: SpringCloudCustomDomainStatus defines the observed state of SpringCloudCustomDomain. diff --git a/package/crds/appplatform.azure.upbound.io_springcloudcustomizedaccelerators.yaml b/package/crds/appplatform.azure.upbound.io_springcloudcustomizedaccelerators.yaml index c46b85fcd..08807395f 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudcustomizedaccelerators.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudcustomizedaccelerators.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudcustomizedaccelerators.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -116,7 +115,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array branch: @@ -186,8 +184,6 @@ spec: url: description: Specifies Git repository URL for the accelerator. type: string - required: - - url type: object type: array iconUrl: @@ -275,21 +271,110 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + acceleratorTags: + description: Specifies a list of accelerator tags. + items: + type: string + type: array + description: + description: Specifies the description of the Spring Cloud Customized + Accelerator. + type: string + displayName: + description: Specifies the display name of the Spring Cloud Customized + Accelerator.. + type: string + gitRepository: + description: A git_repository block as defined below. + items: + properties: + basicAuth: + description: A basic_auth block as defined below. Conflicts + with git_repository.0.ssh_auth. Changing this forces a + new Spring Cloud Customized Accelerator to be created. + items: + properties: + username: + description: Specifies the username of git repository + basic auth. + type: string + type: object + type: array + branch: + description: Specifies the Git repository branch to be used. + type: string + commit: + description: Specifies the Git repository commit to be used. + type: string + gitTag: + description: Specifies the Git repository tag to be used. + type: string + intervalInSeconds: + description: Specifies the interval for checking for updates + to Git or image repository. It should be greater than + 10. + type: number + sshAuth: + description: A ssh_auth block as defined below. Conflicts + with git_repository.0.basic_auth. Changing this forces + a new Spring Cloud Customized Accelerator to be created. + items: + properties: + hostKeyAlgorithm: + description: Specifies the SSH Key algorithm of git + repository basic auth. + type: string + type: object + type: array + url: + description: Specifies Git repository URL for the accelerator. + type: string + type: object + type: array + iconUrl: + description: Specifies the icon URL of the Spring Cloud Customized + Accelerator.. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -463,7 +548,9 @@ spec: type: object x-kubernetes-validations: - message: gitRepository is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gitRepository) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.gitRepository) + || has(self.initProvider.gitRepository)' status: description: SpringCloudCustomizedAcceleratorStatus defines the observed state of SpringCloudCustomizedAccelerator. diff --git a/package/crds/appplatform.azure.upbound.io_springclouddevtoolportals.yaml b/package/crds/appplatform.azure.upbound.io_springclouddevtoolportals.yaml index a27ba44df..1fa7b9e26 100644 --- a/package/crds/appplatform.azure.upbound.io_springclouddevtoolportals.yaml +++ b/package/crds/appplatform.azure.upbound.io_springclouddevtoolportals.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springclouddevtoolportals.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -186,21 +185,83 @@ spec: type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + applicationAcceleratorEnabled: + description: Should the Accelerator plugin be enabled? + type: boolean + applicationLiveViewEnabled: + description: Should the Application Live View be enabled? + type: boolean + name: + description: The name which should be used for this Spring Cloud + Dev Tool Portal. The only possible value is default. Changing + this forces a new Spring Cloud Dev Tool Portal to be created. + type: string + publicNetworkAccessEnabled: + description: Is public network access enabled? + type: boolean + sso: + description: A sso block as defined below. + items: + properties: + clientId: + description: Specifies the public identifier for the application. + type: string + clientSecret: + description: Specifies the secret known only to the application + and the authorization server. + type: string + metadataUrl: + description: Specifies the URI of a JSON file with generic + OIDC provider configuration. + type: string + scope: + description: Specifies a list of specific actions applications + can be allowed to do on a user's behalf. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -374,7 +435,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: SpringCloudDevToolPortalStatus defines the observed state of SpringCloudDevToolPortal. diff --git a/package/crds/appplatform.azure.upbound.io_springcloudgatewaycustomdomains.yaml b/package/crds/appplatform.azure.upbound.io_springcloudgatewaycustomdomains.yaml index 25fef5eb9..4ea3f255a 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudgatewaycustomdomains.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudgatewaycustomdomains.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudgatewaycustomdomains.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,55 @@ spec: that binds to the Spring Cloud Gateway Custom Domain. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: The name which should be used for this Spring Cloud + Gateway Custom Domain. Changing this forces a new Spring Cloud + Gateway Custom Domain to be created. + type: string + thumbprint: + description: Specifies the thumbprint of the Spring Cloud Certificate + that binds to the Spring Cloud Gateway Custom Domain. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,7 +379,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: SpringCloudGatewayCustomDomainStatus defines the observed state of SpringCloudGatewayCustomDomain. diff --git a/package/crds/appplatform.azure.upbound.io_springcloudgateways.yaml b/package/crds/appplatform.azure.upbound.io_springcloudgateways.yaml index ebfb2caf1..13233384c 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudgateways.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudgateways.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudgateways.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -295,21 +294,178 @@ spec: type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + apiMetadata: + description: A api_metadata block as defined below. + items: + properties: + description: + description: Detailed description of the APIs available + on the Gateway instance. + type: string + documentationUrl: + description: Location of additional documentation for the + APIs available on the Gateway instance. + type: string + serverUrl: + description: Base URL that API consumers will use to access + APIs on the Gateway instance. + type: string + title: + description: Specifies the title describing the context + of the APIs available on the Gateway instance. + type: string + version: + description: Specifies the version of APIs available on + this Gateway instance. + type: string + type: object + type: array + applicationPerformanceMonitoringTypes: + description: Specifies a list of application performance monitoring + types used in the Spring Cloud Gateway. The allowed values are + AppDynamics, ApplicationInsights, Dynatrace, ElasticAPM and + NewRelic. + items: + type: string + type: array + cors: + description: A cors block as defined below. + items: + properties: + allowedHeaders: + description: Allowed headers in cross-site requests. The + special value * allows actual requests to send any header. + items: + type: string + type: array + allowedMethods: + description: Allowed HTTP methods on cross-site requests. + The special value * allows all methods. If not set, GET + and HEAD are allowed by default. Possible values are DELETE, + GET, HEAD, MERGE, POST, OPTIONS and PUT. + items: + type: string + type: array + allowedOrigins: + description: Allowed origins to make cross-site requests. + The special value * allows all domains. + items: + type: string + type: array + credentialsAllowed: + description: is user credentials are supported on cross-site + requests? + type: boolean + exposedHeaders: + description: HTTP response headers to expose for cross-site + requests. + items: + type: string + type: array + maxAgeSeconds: + description: How long, in seconds, the response from a pre-flight + request can be cached by clients. + type: number + type: object + type: array + environmentVariables: + additionalProperties: + type: string + description: Specifies the environment variables of the Spring + Cloud Gateway as a map of key-value pairs. Changing this forces + a new resource to be created. + type: object + httpsOnly: + description: is only https is allowed? + type: boolean + instanceCount: + description: Specifies the required instance count of the Spring + Cloud Gateway. Possible Values are between 1 and 500. Defaults + to 1 if not specified. + type: number + publicNetworkAccessEnabled: + description: Indicates whether the Spring Cloud Gateway exposes + endpoint. + type: boolean + quota: + description: A quota block as defined below. + items: + properties: + cpu: + description: Specifies the required cpu of the Spring Cloud + Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults + to 1 if not specified. + type: string + memory: + description: Specifies the required memory size of the Spring + Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, + 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not + specified. + type: string + type: object + type: array + sso: + description: A sso block as defined below. + items: + properties: + clientId: + description: The public identifier for the application. + type: string + clientSecret: + description: The secret known only to the application and + the authorization server. + type: string + issuerUri: + description: The URI of Issuer Identifier. + type: string + scope: + description: It defines the specific actions applications + can be allowed to do on a user's behalf. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/appplatform.azure.upbound.io_springcloudjavadeployments.yaml b/package/crds/appplatform.azure.upbound.io_springcloudjavadeployments.yaml index f1f10dcbc..63a1a1bf5 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudjavadeployments.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudjavadeployments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudjavadeployments.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -186,21 +185,82 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + environmentVariables: + additionalProperties: + type: string + description: Specifies the environment variables of the Spring + Cloud Deployment as a map of key-value pairs. + type: object + instanceCount: + description: Specifies the required instance count of the Spring + Cloud Deployment. Possible Values are between 1 and 500. Defaults + to 1 if not specified. + type: number + jvmOptions: + description: Specifies the jvm option of the Spring Cloud Deployment. + type: string + quota: + description: A quota block as defined below. + items: + properties: + cpu: + description: Specifies the required cpu of the Spring Cloud + Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults + to 1 if not specified. + type: string + memory: + description: Specifies the required memory size of the Spring + Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, + 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not + specified. + type: string + type: object + type: array + runtimeVersion: + description: Specifies the runtime version of the Spring Cloud + Deployment. Possible Values are Java_8, Java_11 and Java_17. + Defaults to Java_8. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/appplatform.azure.upbound.io_springcloudservices.yaml b/package/crds/appplatform.azure.upbound.io_springcloudservices.yaml index c4fa072da..4aee5941b 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudservices.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudservices.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -110,7 +109,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array label: @@ -152,7 +150,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array label: @@ -239,9 +236,6 @@ spec: used as the Config Server back end should be started with http://, https://, git@, or ssh://. type: string - required: - - name - - uri type: object type: array searchPaths: @@ -312,8 +306,6 @@ spec: as the Config Server back end, should be started with http://, https://, git@, or ssh://. type: string - required: - - uri type: object type: array location: @@ -518,8 +510,6 @@ spec: type: string type: object type: object - required: - - cidrRanges type: object type: array resourceGroupName: @@ -714,21 +704,231 @@ spec: Cloud Service. Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + buildAgentPoolSize: + description: Specifies the size for this Spring Cloud Service's + default build agent pool. Possible values are S1, S2, S3, S4 + and S5. This field is applicable only for Spring Cloud Service + with enterprise tier. + type: string + configServerGitSetting: + description: A config_server_git_setting block as defined below. + This field is applicable only for Spring Cloud Service with + basic and standard tier. + items: + properties: + httpBasicAuth: + description: A http_basic_auth block as defined below. + items: + properties: + username: + description: The username that's used to access the + Git repository server, required when the Git repository + server supports HTTP Basic Authentication. + type: string + type: object + type: array + label: + description: The default label of the Git repository, should + be the branch name, tag name, or commit-id of the repository. + type: string + repository: + description: One or more repository blocks as defined below. + items: + properties: + httpBasicAuth: + description: A http_basic_auth block as defined below. + items: + properties: + username: + description: The username that's used to access + the Git repository server, required when the + Git repository server supports HTTP Basic + Authentication. + type: string + type: object + type: array + label: + description: The default label of the Git repository, + should be the branch name, tag name, or commit-id + of the repository. + type: string + name: + description: A name to identify on the Git repository, + required only if repos exists. + type: string + pattern: + description: An array of strings used to match an + application name. For each pattern, use the {application}/{profile} + format with wildcards. + items: + type: string + type: array + searchPaths: + description: An array of strings used to search subdirectories + of the Git repository. + items: + type: string + type: array + sshAuth: + description: A ssh_auth block as defined below. + items: + properties: + hostKeyAlgorithm: + description: The host key algorithm, should + be ssh-dss, ssh-rsa, ecdsa-sha2-nistp256, + ecdsa-sha2-nistp384, or ecdsa-sha2-nistp521. + Required only if host-key exists. + type: string + strictHostKeyCheckingEnabled: + description: Indicates whether the Config Server + instance will fail to start if the host_key + does not match. Defaults to true. + type: boolean + type: object + type: array + uri: + description: The URI of the Git repository that's + used as the Config Server back end should be started + with http://, https://, git@, or ssh://. + type: string + type: object + type: array + searchPaths: + description: An array of strings used to search subdirectories + of the Git repository. + items: + type: string + type: array + sshAuth: + description: A ssh_auth block as defined below. + items: + properties: + hostKeyAlgorithm: + description: The host key algorithm, should be ssh-dss, + ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, + or ecdsa-sha2-nistp521. Required only if host-key + exists. + type: string + strictHostKeyCheckingEnabled: + description: Indicates whether the Config Server instance + will fail to start if the host_key does not match. + Defaults to true. + type: boolean + type: object + type: array + uri: + description: The URI of the default Git repository used + as the Config Server back end, should be started with + http://, https://, git@, or ssh://. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + logStreamPublicEndpointEnabled: + description: Should the log stream in vnet injection instance + could be accessed from Internet? + type: boolean + network: + description: A network block as defined below. Changing this forces + a new resource to be created. + items: + properties: + appNetworkResourceGroup: + description: Specifies the Name of the resource group containing + network resources of Azure Spring Cloud Apps. Changing + this forces a new resource to be created. + type: string + cidrRanges: + description: A list of (at least 3) CIDR ranges (at least + /16) which are used to host the Spring Cloud infrastructure, + which must not overlap with any existing CIDR ranges in + the Subnet. Changing this forces a new resource to be + created. + items: + type: string + type: array + readTimeoutSeconds: + description: Ingress read time out in seconds. + type: number + serviceRuntimeNetworkResourceGroup: + description: Specifies the Name of the resource group containing + network resources of Azure Spring Cloud Service Runtime. + Changing this forces a new resource to be created. + type: string + type: object + type: array + serviceRegistryEnabled: + description: Whether enable the default Service Registry. This + field is applicable only for Spring Cloud Service with enterprise + tier. + type: boolean + skuName: + description: Specifies the SKU Name for this Spring Cloud Service. + Possible values are B0, S0 and E0. Defaults to S0. Changing + this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + trace: + description: A trace block as defined below. + items: + properties: + sampleRate: + description: The sampling rate of Application Insights Agent. + Must be between 0.0 and 100.0. Defaults to 10.0. + type: number + type: object + type: array + zoneRedundant: + description: Whether zone redundancy is enabled for this Spring + Cloud Service. Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -902,7 +1102,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SpringCloudServiceStatus defines the observed state of SpringCloudService. properties: diff --git a/package/crds/appplatform.azure.upbound.io_springcloudstorages.yaml b/package/crds/appplatform.azure.upbound.io_springcloudstorages.yaml index 42115e739..b5243d76e 100644 --- a/package/crds/appplatform.azure.upbound.io_springcloudstorages.yaml +++ b/package/crds/appplatform.azure.upbound.io_springcloudstorages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudstorages.appplatform.azure.upbound.io spec: group: appplatform.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -301,21 +300,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/attestation.azure.upbound.io_providers.yaml b/package/crds/attestation.azure.upbound.io_providers.yaml index b13cdc947..05dde00d8 100644 --- a/package/crds/attestation.azure.upbound.io_providers.yaml +++ b/package/crds/attestation.azure.upbound.io_providers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: providers.attestation.azure.upbound.io spec: group: attestation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -184,21 +183,81 @@ spec: should be used for the TPM Policy. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Attestation Provider should + exist. Changing this forces a new resource to be created. + type: string + openEnclavePolicyBase64: + description: Specifies the base64 URI Encoded RFC 7519 JWT that + should be used for the TPM Policy. + type: string + policy: + items: + properties: + data: + type: string + environmentType: + type: string + type: object + type: array + policySigningCertificateData: + description: A valid X.509 certificate (Section 4 of RFC4648). + Changing this forces a new resource to be created. + type: string + sgxEnclavePolicyBase64: + description: Specifies the base64 URI Encoded RFC 7519 JWT that + should be used for the TPM Policy. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Attestation Provider. + type: object + tpmPolicyBase64: + description: Specifies the base64 URI Encoded RFC 7519 JWT that + should be used for the TPM Policy. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -372,7 +431,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ProviderStatus defines the observed state of Provider. properties: diff --git a/package/crds/authorization.azure.upbound.io_managementlocks.yaml b/package/crds/authorization.azure.upbound.io_managementlocks.yaml index a5dd2bec8..13ea7e856 100644 --- a/package/crds/authorization.azure.upbound.io_managementlocks.yaml +++ b/package/crds/authorization.azure.upbound.io_managementlocks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managementlocks.authorization.azure.upbound.io spec: group: authorization.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -162,21 +161,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + lockLevel: + description: Specifies the Level to be used for this Lock. Possible + values are CanNotDelete and ReadOnly. Changing this forces a + new resource to be created. + type: string + name: + description: Specifies the name of the Management Lock. Changing + this forces a new resource to be created. + type: string + notes: + description: Specifies some notes about the lock. Maximum of 512 + characters. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -350,9 +387,13 @@ spec: type: object x-kubernetes-validations: - message: lockLevel is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.lockLevel) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.lockLevel) + || has(self.initProvider.lockLevel)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ManagementLockStatus defines the observed state of ManagementLock. properties: diff --git a/package/crds/authorization.azure.upbound.io_policydefinitions.yaml b/package/crds/authorization.azure.upbound.io_policydefinitions.yaml index 8df5d3f8f..952fd0fad 100644 --- a/package/crds/authorization.azure.upbound.io_policydefinitions.yaml +++ b/package/crds/authorization.azure.upbound.io_policydefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: policydefinitions.authorization.azure.upbound.io spec: group: authorization.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -109,21 +108,85 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of the policy definition. + type: string + displayName: + description: The display name of the policy definition. + type: string + managementGroupId: + description: The id of the Management Group where this policy + should be defined. Changing this forces a new resource to be + created. + type: string + metadata: + description: The metadata for the policy definition. This is a + JSON string representing additional metadata that should be + stored with the policy definition. + type: string + mode: + description: The policy resource manager mode that allows you + to specify which resource types will be evaluated. Possible + values are All, Indexed, Microsoft.ContainerService.Data, Microsoft.CustomerLockbox.Data, + Microsoft.DataCatalog.Data, Microsoft.KeyVault.Data, Microsoft.Kubernetes.Data, + Microsoft.MachineLearningServices.Data, Microsoft.Network.Data + and Microsoft.Synapse.Data. + type: string + parameters: + description: Parameters for the policy definition. This field + is a JSON string that allows you to parameterize your policy + definition. + type: string + policyRule: + description: The policy rule for the policy definition. This is + a JSON string representing the rule that contains an if and + a then block. + type: string + policyType: + description: The policy type. Possible values are BuiltIn, Custom, + NotSpecified and Static. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -297,11 +360,17 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: mode is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.mode) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.mode) + || has(self.initProvider.mode)' - message: policyType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policyType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.policyType) + || has(self.initProvider.policyType)' status: description: PolicyDefinitionStatus defines the observed state of PolicyDefinition. properties: diff --git a/package/crds/authorization.azure.upbound.io_resourcegrouppolicyassignments.yaml b/package/crds/authorization.azure.upbound.io_resourcegrouppolicyassignments.yaml index 7476288b7..998077b43 100644 --- a/package/crds/authorization.azure.upbound.io_resourcegrouppolicyassignments.yaml +++ b/package/crds/authorization.azure.upbound.io_resourcegrouppolicyassignments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: resourcegrouppolicyassignments.authorization.azure.upbound.io spec: group: authorization.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -95,8 +94,6 @@ spec: added to this Policy Definition. Possible values are SystemAssigned and UserAssigned. type: string - required: - - type type: object type: array location: @@ -122,8 +119,6 @@ spec: is the ID of the policy definition that the non-compliance message applies to. type: string - required: - - content type: object type: array notScopes: @@ -164,8 +159,6 @@ spec: property. Possible values for policyEffect override listed policy effects. type: string - required: - - value type: object type: array parameters: @@ -362,30 +355,183 @@ spec: items: type: string type: array - required: - - kind type: object type: array - required: - - selectors type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description which should be used for this Policy + Assignment. + type: string + displayName: + description: The Display Name for this Policy Assignment. + type: string + enforce: + description: Specifies if this Policy should be enforced or not? + Defaults to true. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Managed Identity IDs which should + be assigned to the Policy Definition. + items: + type: string + type: array + type: + description: The Type of Managed Identity which should be + added to this Policy Definition. Possible values are SystemAssigned + and UserAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the Policy Assignment should + exist. Changing this forces a new Policy Assignment to be created. + type: string + metadata: + description: A JSON mapping of any Metadata for this Policy. + type: string + nonComplianceMessage: + description: One or more non_compliance_message blocks as defined + below. + items: + properties: + content: + description: The non-compliance message text. When assigning + policy sets (initiatives), unless policy_definition_reference_id + is specified then this message will be the default for + all policies. + type: string + policyDefinitionReferenceId: + description: When assigning policy sets (initiatives), this + is the ID of the policy definition that the non-compliance + message applies to. + type: string + type: object + type: array + notScopes: + description: Specifies a list of Resource Scopes (for example + a Subscription, or a Resource Group) within this Management + Group which are excluded from this Policy. + items: + type: string + type: array + overrides: + description: One or more overrides blocks as defined below. More + detail about overrides and resource_selectors see policy assignment + structure + items: + properties: + selectors: + description: One or more override_selector as defined below. + items: + properties: + in: + description: The list of allowed values for the specified + kind. Cannot be used with not_in. Can contain up + to 50 values. + items: + type: string + type: array + notIn: + description: The list of not-allowed values for the + specified kind. Cannot be used with in. Can contain + up to 50 values. + items: + type: string + type: array + type: object + type: array + value: + description: Specifies the value to override the policy + property. Possible values for policyEffect override listed + policy effects. + type: string + type: object + type: array + parameters: + description: A JSON mapping of any Parameters for this Policy. + type: string + resourceSelectors: + description: One or more resource_selectors blocks as defined + below to filter polices by resource properties. + items: + properties: + name: + description: Specifies a name for the resource selector. + type: string + selectors: + description: One or more resource_selector block as defined + below. + items: + properties: + in: + description: The list of allowed values for the specified + kind. Cannot be used with not_in. Can contain up + to 50 values. + items: + type: string + type: array + kind: + description: Specifies which characteristic will narrow + down the set of evaluated resources. Possible values + are resourceLocation, resourceType and resourceWithoutLocation. + type: string + notIn: + description: The list of not-allowed values for the + specified kind. Cannot be used with in. Can contain + up to 50 values. + items: + type: string + type: array + type: object + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/authorization.azure.upbound.io_resourcepolicyassignments.yaml b/package/crds/authorization.azure.upbound.io_resourcepolicyassignments.yaml index 7af1f5e82..d96468c8a 100644 --- a/package/crds/authorization.azure.upbound.io_resourcepolicyassignments.yaml +++ b/package/crds/authorization.azure.upbound.io_resourcepolicyassignments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: resourcepolicyassignments.authorization.azure.upbound.io spec: group: authorization.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -95,8 +94,6 @@ spec: added to this Policy Definition. Possible values are SystemAssigned and UserAssigned. type: string - required: - - type type: object type: array location: @@ -127,8 +124,6 @@ spec: is the ID of the policy definition that the non-compliance message applies to. type: string - required: - - content type: object type: array notScopes: @@ -169,8 +164,6 @@ spec: property. Possible values for policyEffect override listed policy effects. type: string - required: - - value type: object type: array parameters: @@ -292,30 +285,193 @@ spec: items: type: string type: array - required: - - kind type: object type: array - required: - - selectors type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description which should be used for this Policy + Assignment. + type: string + displayName: + description: The Display Name for this Policy Assignment. + type: string + enforce: + description: Specifies if this Policy should be enforced or not? + Defaults to true. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Managed Identity IDs which should + be assigned to the Policy Definition. + items: + type: string + type: array + type: + description: The Type of Managed Identity which should be + added to this Policy Definition. Possible values are SystemAssigned + and UserAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the Policy Assignment should + exist. Changing this forces a new Policy Assignment to be created. + type: string + metadata: + description: A JSON mapping of any Metadata for this Policy. + type: string + name: + description: The name which should be used for this Policy Assignment. + Changing this forces a new Resource Policy Assignment to be + created. + type: string + nonComplianceMessage: + description: One or more non_compliance_message blocks as defined + below. + items: + properties: + content: + description: The non-compliance message text. When assigning + policy sets (initiatives), unless policy_definition_reference_id + is specified then this message will be the default for + all policies. + type: string + policyDefinitionReferenceId: + description: When assigning policy sets (initiatives), this + is the ID of the policy definition that the non-compliance + message applies to. + type: string + type: object + type: array + notScopes: + description: Specifies a list of Resource Scopes (for example + a Subscription, or a Resource Group) within this Management + Group which are excluded from this Policy. + items: + type: string + type: array + overrides: + description: One or more overrides blocks as defined below. More + detail about overrides and resource_selectors see policy assignment + structure + items: + properties: + selectors: + description: One or more override_selector as defined below. + items: + properties: + in: + description: The list of allowed values for the specified + kind. Cannot be used with not_in. Can contain up + to 50 values. + items: + type: string + type: array + notIn: + description: The list of not-allowed values for the + specified kind. Cannot be used with in. Can contain + up to 50 values. + items: + type: string + type: array + type: object + type: array + value: + description: Specifies the value to override the policy + property. Possible values for policyEffect override listed + policy effects. + type: string + type: object + type: array + parameters: + description: A JSON mapping of any Parameters for this Policy. + type: string + resourceId: + description: The ID of the Resource (or Resource Scope) where + this should be applied. Changing this forces a new Resource + Policy Assignment to be created. + type: string + resourceSelectors: + description: One or more resource_selectors blocks as defined + below to filter polices by resource properties. + items: + properties: + name: + description: Specifies a name for the resource selector. + type: string + selectors: + description: One or more resource_selector block as defined + below. + items: + properties: + in: + description: The list of allowed values for the specified + kind. Cannot be used with not_in. Can contain up + to 50 values. + items: + type: string + type: array + kind: + description: Specifies which characteristic will narrow + down the set of evaluated resources. Possible values + are resourceLocation, resourceType and resourceWithoutLocation. + type: string + notIn: + description: The list of not-allowed values for the + specified kind. Cannot be used with in. Can contain + up to 50 values. + items: + type: string + type: array + type: object + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -489,9 +645,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: resourceId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.resourceId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.resourceId) + || has(self.initProvider.resourceId)' status: description: ResourcePolicyAssignmentStatus defines the observed state of ResourcePolicyAssignment. diff --git a/package/crds/authorization.azure.upbound.io_resourcepolicyexemptions.yaml b/package/crds/authorization.azure.upbound.io_resourcepolicyexemptions.yaml index e0662043f..57b0e41b2 100644 --- a/package/crds/authorization.azure.upbound.io_resourcepolicyexemptions.yaml +++ b/package/crds/authorization.azure.upbound.io_resourcepolicyexemptions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: resourcepolicyexemptions.authorization.azure.upbound.io spec: group: authorization.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -259,21 +258,76 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description to use for this Policy Exemption. + type: string + displayName: + description: A friendly display name to use for this Policy Exemption. + type: string + exemptionCategory: + description: The category of this policy exemption. Possible values + are Waiver and Mitigated. + type: string + expiresOn: + description: The expiration date and time in UTC ISO 8601 format + of this policy exemption. + type: string + metadata: + description: The metadata for this policy exemption. This is a + JSON string representing additional metadata that should be + stored with the policy exemption. + type: string + name: + description: The name of the Policy Exemption. Changing this forces + a new resource to be created. + type: string + policyDefinitionReferenceIds: + description: The policy definition reference ID list when the + associated policy assignment is an assignment of a policy set + definition. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -447,9 +501,13 @@ spec: type: object x-kubernetes-validations: - message: exemptionCategory is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exemptionCategory) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.exemptionCategory) + || has(self.initProvider.exemptionCategory)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ResourcePolicyExemptionStatus defines the observed state of ResourcePolicyExemption. diff --git a/package/crds/authorization.azure.upbound.io_roleassignments.yaml b/package/crds/authorization.azure.upbound.io_roleassignments.yaml index 8c15fa529..420cce18f 100644 --- a/package/crds/authorization.azure.upbound.io_roleassignments.yaml +++ b/package/crds/authorization.azure.upbound.io_roleassignments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: roleassignments.authorization.azure.upbound.io spec: group: authorization.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -195,21 +194,93 @@ spec: Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + condition: + description: The condition that limits the resources that the + role can be assigned to. Changing this forces a new resource + to be created. + type: string + conditionVersion: + description: The version of the condition. Possible values are + 1.0 or 2.0. Changing this forces a new resource to be created. + type: string + delegatedManagedIdentityResourceId: + description: The delegated Azure Resource Id which contains a + Managed Identity. Changing this forces a new resource to be + created. + type: string + description: + description: The description for this Role Assignment. Changing + this forces a new resource to be created. + type: string + name: + description: A unique UUID/GUID for this Role Assignment - one + will be generated if not specified. Changing this forces a new + resource to be created. + type: string + principalId: + description: The ID of the Principal (User, Group or Service Principal) + to assign the Role Definition to. Changing this forces a new + resource to be created. + type: string + roleDefinitionName: + description: The name of a built-in Role. Changing this forces + a new resource to be created. Conflicts with role_definition_id. + type: string + scope: + description: The scope at which the Role Assignment applies to, + such as /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333, + /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup, + or /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup/providers/Microsoft.Compute/virtualMachines/myVM, + or /providers/Microsoft.Management/managementGroups/myMG. Changing + this forces a new resource to be created. + type: string + skipServicePrincipalAadCheck: + description: If the principal_id is a newly provisioned Service + Principal set this value to true to skip the Azure Active Directory + check which may fail due to replication lag. This argument is + only valid if the principal_id is a Service Principal identity. + Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -383,9 +454,13 @@ spec: type: object x-kubernetes-validations: - message: principalId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.principalId) + || has(self.initProvider.principalId)' - message: scope is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scope) + || has(self.initProvider.scope)' status: description: RoleAssignmentStatus defines the observed state of RoleAssignment. properties: diff --git a/package/crds/authorization.azure.upbound.io_roledefinitions.yaml b/package/crds/authorization.azure.upbound.io_roledefinitions.yaml index cd076acce..c819bf401 100644 --- a/package/crds/authorization.azure.upbound.io_roledefinitions.yaml +++ b/package/crds/authorization.azure.upbound.io_roledefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: roledefinitions.authorization.azure.upbound.io spec: group: authorization.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -133,21 +132,110 @@ spec: Changing this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + assignableScopes: + description: One or more assignable scopes for this Role Definition, + such as /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333, + /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup, + or /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup/providers/Microsoft.Compute/virtualMachines/myVM. + items: + type: string + type: array + description: + description: A description of the Role Definition. + type: string + name: + description: The name of the Role Definition. + type: string + permissions: + description: A permissions block as defined below. + items: + properties: + actions: + description: One or more Allowed Actions, such as *, Microsoft.Resources/subscriptions/resourceGroups/read. + See 'Azure Resource Manager resource provider operations' + for details. + items: + type: string + type: array + dataActions: + description: One or more Allowed Data Actions, such as *, + Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read. + See 'Azure Resource Manager resource provider operations' + for details. + items: + type: string + type: array + notActions: + description: One or more Disallowed Actions, such as *, + Microsoft.Resources/subscriptions/resourceGroups/read. + See 'Azure Resource Manager resource provider operations' + for details. + items: + type: string + type: array + notDataActions: + description: One or more Disallowed Data Actions, such as + *, Microsoft.Resources/subscriptions/resourceGroups/read. + See 'Azure Resource Manager resource provider operations' + for details. + items: + type: string + type: array + type: object + type: array + roleDefinitionId: + description: A unique UUID/GUID which identifies this role - one + will be generated if not specified. Changing this forces a new + resource to be created. + type: string + scope: + description: The scope at which the Role Definition applies to, + such as /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333, + /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup, + or /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup/providers/Microsoft.Compute/virtualMachines/myVM. + It is recommended to use the first entry of the assignable_scopes. + Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -321,9 +409,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: scope is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scope) + || has(self.initProvider.scope)' status: description: RoleDefinitionStatus defines the observed state of RoleDefinition. properties: diff --git a/package/crds/authorization.azure.upbound.io_subscriptionpolicyassignments.yaml b/package/crds/authorization.azure.upbound.io_subscriptionpolicyassignments.yaml index 24308dc21..002b1e06f 100644 --- a/package/crds/authorization.azure.upbound.io_subscriptionpolicyassignments.yaml +++ b/package/crds/authorization.azure.upbound.io_subscriptionpolicyassignments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subscriptionpolicyassignments.authorization.azure.upbound.io spec: group: authorization.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -95,8 +94,6 @@ spec: added to this Policy Definition. Possible values are SystemAssigned or UserAssigned. type: string - required: - - type type: object type: array location: @@ -122,8 +119,6 @@ spec: is the ID of the policy definition that the non-compliance message applies to. type: string - required: - - content type: object type: array notScopes: @@ -164,8 +159,6 @@ spec: property. Possible values for policyEffect override listed policy effects. type: string - required: - - value type: object type: array parameters: @@ -282,12 +275,8 @@ spec: items: type: string type: array - required: - - kind type: object type: array - required: - - selectors type: object type: array subscriptionId: @@ -296,21 +285,183 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description which should be used for this Policy + Assignment. + type: string + displayName: + description: The Display Name for this Policy Assignment. + type: string + enforce: + description: Specifies if this Policy should be enforced or not? + Defaults to true. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Managed Identity IDs which should + be assigned to the Policy Definition. + items: + type: string + type: array + type: + description: The Type of Managed Identity which should be + added to this Policy Definition. Possible values are SystemAssigned + or UserAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the Policy Assignment should + exist. Changing this forces a new Policy Assignment to be created. + type: string + metadata: + description: A JSON mapping of any Metadata for this Policy. + type: string + nonComplianceMessage: + description: One or more non_compliance_message blocks as defined + below. + items: + properties: + content: + description: The non-compliance message text. When assigning + policy sets (initiatives), unless policy_definition_reference_id + is specified then this message will be the default for + all policies. + type: string + policyDefinitionReferenceId: + description: When assigning policy sets (initiatives), this + is the ID of the policy definition that the non-compliance + message applies to. + type: string + type: object + type: array + notScopes: + description: Specifies a list of Resource Scopes (for example + a Subscription, or a Resource Group) within this Management + Group which are excluded from this Policy. + items: + type: string + type: array + overrides: + description: One or more overrides blocks as defined below. More + detail about overrides and resource_selectors see policy assignment + structure + items: + properties: + selectors: + description: One or more override_selector as defined below. + items: + properties: + in: + description: The list of allowed values for the specified + kind. Cannot be used with not_in. Can contain up + to 50 values. + items: + type: string + type: array + notIn: + description: The list of not-allowed values for the + specified kind. Cannot be used with in. Can contain + up to 50 values. + items: + type: string + type: array + type: object + type: array + value: + description: Specifies the value to override the policy + property. Possible values for policyEffect override listed + policy effects. + type: string + type: object + type: array + parameters: + description: A JSON mapping of any Parameters for this Policy. + type: string + resourceSelectors: + description: One or more resource_selectors blocks as defined + below to filter polices by resource properties. + items: + properties: + name: + description: Specifies a name for the resource selector. + type: string + selectors: + description: One or more resource_selector block as defined + below. + items: + properties: + in: + description: The list of allowed values for the specified + kind. Cannot be used with not_in. Can contain up + to 50 values. + items: + type: string + type: array + kind: + description: Specifies which characteristic will narrow + down the set of evaluated resources. Possible values + are resourceLocation, resourceType and resourceWithoutLocation. + type: string + notIn: + description: The list of not-allowed values for the + specified kind. Cannot be used with in. Can contain + up to 50 values. + items: + type: string + type: array + type: object + type: array + type: object + type: array + subscriptionId: + description: The ID of the Subscription where this Policy Assignment + should be created. Changing this forces a new Policy Assignment + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -484,7 +635,9 @@ spec: type: object x-kubernetes-validations: - message: subscriptionId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subscriptionId) + || has(self.initProvider.subscriptionId)' status: description: SubscriptionPolicyAssignmentStatus defines the observed state of SubscriptionPolicyAssignment. diff --git a/package/crds/authorization.azure.upbound.io_subscriptionpolicyexemptions.yaml b/package/crds/authorization.azure.upbound.io_subscriptionpolicyexemptions.yaml index 4e3236a04..f06ebb14c 100644 --- a/package/crds/authorization.azure.upbound.io_subscriptionpolicyexemptions.yaml +++ b/package/crds/authorization.azure.upbound.io_subscriptionpolicyexemptions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subscriptionpolicyexemptions.authorization.azure.upbound.io spec: group: authorization.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -180,21 +179,76 @@ spec: be applied. Changing this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description to use for this Policy Exemption. + type: string + displayName: + description: A friendly display name to use for this Policy Exemption. + type: string + exemptionCategory: + description: The category of this policy exemption. Possible values + are Waiver and Mitigated. + type: string + expiresOn: + description: The expiration date and time in UTC ISO 8601 format + of this policy exemption. + type: string + metadata: + description: The metadata for this policy exemption. This is a + JSON string representing additional metadata that should be + stored with the policy exemption. + type: string + policyDefinitionReferenceIds: + description: The policy definition reference ID list when the + associated policy assignment is an assignment of a policy set + definition. + items: + type: string + type: array + subscriptionId: + description: The Subscription ID where the Policy Exemption should + be applied. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -368,9 +422,13 @@ spec: type: object x-kubernetes-validations: - message: exemptionCategory is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exemptionCategory) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.exemptionCategory) + || has(self.initProvider.exemptionCategory)' - message: subscriptionId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subscriptionId) + || has(self.initProvider.subscriptionId)' status: description: SubscriptionPolicyExemptionStatus defines the observed state of SubscriptionPolicyExemption. diff --git a/package/crds/automation.azure.upbound.io_accounts.yaml b/package/crds/automation.azure.upbound.io_accounts.yaml index d23ebc454..ff802cd1f 100644 --- a/package/crds/automation.azure.upbound.io_accounts.yaml +++ b/package/crds/automation.azure.upbound.io_accounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accounts.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,8 +81,6 @@ spec: description: The User Assigned Managed Identity ID to be used for accessing the Customer Managed Key for encryption. type: string - required: - - keyVaultKeyId type: object type: array identity: @@ -101,8 +98,6 @@ spec: Account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array localAuthenticationEnabled: @@ -207,21 +202,100 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + encryption: + description: An encryption block as defined below. + items: + properties: + keySource: + type: string + keyVaultKeyId: + description: The ID of the Key Vault Key which should be + used to Encrypt the data in this Automation Account. + type: string + userAssignedIdentityId: + description: The User Assigned Managed Identity ID to be + used for accessing the Customer Managed Key for encryption. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: The ID of the User Assigned Identity which + should be assigned to this Automation Account. + items: + type: string + type: array + type: + description: The type of identity used for this Automation + Account. Possible values are SystemAssigned, UserAssigned + and SystemAssigned, UserAssigned. + type: string + type: object + type: array + localAuthenticationEnabled: + description: Whether requests using non-AAD authentication are + blocked. Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + publicNetworkAccessEnabled: + description: Whether public network access is allowed for the + container registry. Defaults to true. + type: boolean + skuName: + description: The SKU of the account. Possible values are Basic + and Free. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -395,9 +469,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: AccountStatus defines the observed state of Account. properties: diff --git a/package/crds/automation.azure.upbound.io_connectionclassiccertificates.yaml b/package/crds/automation.azure.upbound.io_connectionclassiccertificates.yaml index 78dd3cb7b..3c7cc26a1 100644 --- a/package/crds/automation.azure.upbound.io_connectionclassiccertificates.yaml +++ b/package/crds/automation.azure.upbound.io_connectionclassiccertificates.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: connectionclassiccertificates.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -240,21 +239,58 @@ spec: description: The name of subscription. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + certificateAssetName: + description: The name of the certificate asset. + type: string + description: + description: A description for this Connection. + type: string + subscriptionId: + description: The id of subscription. + type: string + subscriptionName: + description: The name of subscription. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -428,11 +464,17 @@ spec: type: object x-kubernetes-validations: - message: certificateAssetName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.certificateAssetName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.certificateAssetName) + || has(self.initProvider.certificateAssetName)' - message: subscriptionId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subscriptionId) + || has(self.initProvider.subscriptionId)' - message: subscriptionName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subscriptionName) + || has(self.initProvider.subscriptionName)' status: description: ConnectionClassicCertificateStatus defines the observed state of ConnectionClassicCertificate. diff --git a/package/crds/automation.azure.upbound.io_connections.yaml b/package/crds/automation.azure.upbound.io_connections.yaml index 086d09601..eb0a66281 100644 --- a/package/crds/automation.azure.upbound.io_connections.yaml +++ b/package/crds/automation.azure.upbound.io_connections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: connections.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -243,21 +242,62 @@ spec: types have required field values as below:' type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description for this Connection. + type: string + type: + description: The type of the Connection - can be either builtin + type such as Azure, AzureClassicCertificate, and AzureServicePrincipal, + or a user defined types. Changing this forces a new resource + to be created. + type: string + values: + additionalProperties: + type: string + description: 'A mapping of key value pairs passed to the connection. + Different type needs different parameters in the values. Builtin + types have required field values as below:' + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -431,9 +471,13 @@ spec: type: object x-kubernetes-validations: - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' - message: values is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.values) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.values) + || has(self.initProvider.values)' status: description: ConnectionStatus defines the observed state of Connection. properties: diff --git a/package/crds/automation.azure.upbound.io_connectiontypes.yaml b/package/crds/automation.azure.upbound.io_connectiontypes.yaml index c68032032..a26e8902a 100644 --- a/package/crds/automation.azure.upbound.io_connectiontypes.yaml +++ b/package/crds/automation.azure.upbound.io_connectiontypes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: connectiontypes.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -167,9 +166,6 @@ spec: type: description: The type of the connection field definition. type: string - required: - - name - - type type: object type: array isGlobal: @@ -261,21 +257,77 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + field: + description: One or more field blocks as defined below. Changing + this forces a new Automation to be created. + items: + properties: + isEncrypted: + description: Whether to set the isEncrypted flag of the + connection field definition. + type: boolean + isOptional: + description: Whether to set the isOptional flag of the connection + field definition. + type: boolean + name: + description: The name which should be used for this connection + field definition. + type: string + type: + description: The type of the connection field definition. + type: string + type: object + type: array + isGlobal: + description: Whether the connection type is global. Changing this + forces a new Automation to be created. + type: boolean + name: + description: The name which should be used for this Automation + Connection Type. Changing this forces a new Automation to be + created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -449,9 +501,13 @@ spec: type: object x-kubernetes-validations: - message: field is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.field) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.field) + || has(self.initProvider.field)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ConnectionTypeStatus defines the observed state of ConnectionType. properties: diff --git a/package/crds/automation.azure.upbound.io_credentials.yaml b/package/crds/automation.azure.upbound.io_credentials.yaml index 7dba305cd..80e8e4d02 100644 --- a/package/crds/automation.azure.upbound.io_credentials.yaml +++ b/package/crds/automation.azure.upbound.io_credentials.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: credentials.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -250,21 +249,52 @@ spec: description: The username associated with this Automation Credential. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description associated with this Automation Credential. + type: string + username: + description: The username associated with this Automation Credential. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -438,9 +468,12 @@ spec: type: object x-kubernetes-validations: - message: passwordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)' - message: username is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.username) + || has(self.initProvider.username)' status: description: CredentialStatus defines the observed state of Credential. properties: diff --git a/package/crds/automation.azure.upbound.io_hybridrunbookworkergroups.yaml b/package/crds/automation.azure.upbound.io_hybridrunbookworkergroups.yaml index e96318e94..99cda7bd6 100644 --- a/package/crds/automation.azure.upbound.io_hybridrunbookworkergroups.yaml +++ b/package/crds/automation.azure.upbound.io_hybridrunbookworkergroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: hybridrunbookworkergroups.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -163,21 +162,60 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + automationAccountName: + description: The name of the Automation Account in which the Runbook + Worker Group is created. Changing this forces a new resource + to be created. + type: string + credentialName: + description: The name of resource type azurerm_automation_credential + to use for hybrid worker. + type: string + name: + description: The name which should be used for this Automation + Account Runbook Worker Group. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -351,9 +389,13 @@ spec: type: object x-kubernetes-validations: - message: automationAccountName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.automationAccountName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.automationAccountName) + || has(self.initProvider.automationAccountName)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: HybridRunBookWorkerGroupStatus defines the observed state of HybridRunBookWorkerGroup. diff --git a/package/crds/automation.azure.upbound.io_modules.yaml b/package/crds/automation.azure.upbound.io_modules.yaml index f05bb1319..5eb9c5c0c 100644 --- a/package/crds/automation.azure.upbound.io_modules.yaml +++ b/package/crds/automation.azure.upbound.io_modules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: modules.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -162,16 +161,11 @@ spec: value: description: The hash value of the content. type: string - required: - - algorithm - - value type: object type: array uri: description: The URI of the module content (zip or nupkg). type: string - required: - - uri type: object type: array resourceGroupName: @@ -254,21 +248,68 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + moduleLink: + description: A module_link block as defined below. + items: + properties: + hash: + description: A hash block as defined below. + items: + properties: + algorithm: + description: Specifies the algorithm used for the + hash content. + type: string + value: + description: The hash value of the content. + type: string + type: object + type: array + uri: + description: The URI of the module content (zip or nupkg). + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -442,7 +483,9 @@ spec: type: object x-kubernetes-validations: - message: moduleLink is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.moduleLink) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.moduleLink) + || has(self.initProvider.moduleLink)' status: description: ModuleStatus defines the observed state of Module. properties: diff --git a/package/crds/automation.azure.upbound.io_runbooks.yaml b/package/crds/automation.azure.upbound.io_runbooks.yaml index 85cc6e89c..dfc206805 100644 --- a/package/crds/automation.azure.upbound.io_runbooks.yaml +++ b/package/crds/automation.azure.upbound.io_runbooks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: runbooks.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -173,9 +172,6 @@ spec: description: Specifies the expected hash value of the content. type: string - required: - - algorithm - - value type: object type: array uri: @@ -184,8 +180,6 @@ spec: version: description: Specifies the version of the content type: string - required: - - uri type: object type: array editModeEnabled: @@ -215,9 +209,6 @@ spec: type: description: Specifies the type of this parameter. type: string - required: - - key - - type type: object type: array type: object @@ -277,9 +268,6 @@ spec: description: Specifies the expected hash value of the content. type: string - required: - - algorithm - - value type: object type: array uri: @@ -288,8 +276,6 @@ spec: version: description: Specifies the version of the content type: string - required: - - uri type: object type: array resourceGroupName: @@ -383,21 +369,189 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + content: + description: The desired content of the runbook. + type: string + description: + description: A description for this credential. + type: string + draft: + description: A draft block as defined below . + items: + properties: + contentLink: + description: A publish_content_link block as defined above. + items: + properties: + hash: + description: A hash block as defined below. + items: + properties: + algorithm: + description: Specifies the hash algorithm used + to hash the content. + type: string + value: + description: Specifies the expected hash value + of the content. + type: string + type: object + type: array + uri: + description: The URI of the runbook content. + type: string + version: + description: Specifies the version of the content + type: string + type: object + type: array + editModeEnabled: + description: Whether the draft in edit mode. + type: boolean + outputTypes: + description: Specifies the output types of the runbook. + items: + type: string + type: array + parameters: + description: A list of parameters block as defined below. + items: + properties: + defaultValue: + description: Specifies the default value of the parameter. + type: string + key: + description: The name of the parameter. + type: string + mandatory: + description: Whether this parameter is mandatory. + type: boolean + position: + description: Specifies the position of the parameter. + type: number + type: + description: Specifies the type of this parameter. + type: string + type: object + type: array + type: object + type: array + jobSchedule: + items: + properties: + jobScheduleId: + description: The Automation Runbook ID. + type: string + parameters: + additionalProperties: + type: string + description: A list of parameters block as defined below. + type: object + runOn: + type: string + scheduleName: + description: Specifies the name of the Runbook. Changing + this forces a new resource to be created. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + logActivityTraceLevel: + description: Specifies the activity-level tracing options of the + runbook, available only for Graphical runbooks. Possible values + are 0 for None, 9 for Basic, and 15 for Detailed. Must turn + on Verbose logging in order to see the tracing. + type: number + logProgress: + description: Progress log option. + type: boolean + logVerbose: + description: Verbose log option. + type: boolean + name: + description: Specifies the name of the Runbook. Changing this + forces a new resource to be created. + type: string + publishContentLink: + description: The published runbook content link. + items: + properties: + hash: + description: A hash block as defined below. + items: + properties: + algorithm: + description: Specifies the hash algorithm used to + hash the content. + type: string + value: + description: Specifies the expected hash value of + the content. + type: string + type: object + type: array + uri: + description: The URI of the runbook content. + type: string + version: + description: Specifies the version of the content + type: string + type: object + type: array + runbookType: + description: The type of the runbook - can be either Graph, GraphPowerShell, + GraphPowerShellWorkflow, PowerShellWorkflow, PowerShell, Python3, + Python2 or Script. Changing this forces a new resource to be + created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -571,15 +725,25 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: logProgress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.logProgress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.logProgress) + || has(self.initProvider.logProgress)' - message: logVerbose is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.logVerbose) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.logVerbose) + || has(self.initProvider.logVerbose)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: runbookType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.runbookType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.runbookType) + || has(self.initProvider.runbookType)' status: description: RunBookStatus defines the observed state of RunBook. properties: diff --git a/package/crds/automation.azure.upbound.io_schedules.yaml b/package/crds/automation.azure.upbound.io_schedules.yaml index 1a47c66cf..412385f5b 100644 --- a/package/crds/automation.azure.upbound.io_schedules.yaml +++ b/package/crds/automation.azure.upbound.io_schedules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: schedules.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -184,9 +183,6 @@ spec: description: Occurrence of the week within the month. Must be between 1 and 5. -1 for last week within the month. type: number - required: - - day - - occurrence type: object type: array resourceGroupName: @@ -285,21 +281,101 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description for this Schedule. + type: string + expiryTime: + description: The end time of the schedule. + type: string + frequency: + description: The frequency of the schedule. - can be either OneTime, + Day, Hour, Week, or Month. + type: string + interval: + description: The number of frequencys between runs. Only valid + when frequency is Day, Hour, Week, or Month and defaults to + 1. + type: number + monthDays: + description: List of days of the month that the job should execute + on. Must be between 1 and 31. -1 for last day of the month. + Only valid when frequency is Month. + items: + type: number + type: array + monthlyOccurrence: + description: List of monthly_occurrence blocks as defined below + to specifies occurrences of days within a month. Only valid + when frequency is Month. The monthly_occurrence block supports + fields documented below. + items: + properties: + day: + description: Day of the occurrence. Must be one of Monday, + Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday. + type: string + occurrence: + description: Occurrence of the week within the month. Must + be between 1 and 5. -1 for last week within the month. + type: number + type: object + type: array + startTime: + description: Start time of the schedule. Must be at least five + minutes in the future. Defaults to seven minutes in the future + from the time the resource is created. + type: string + timezone: + description: 'The timezone of the start time. Defaults to Etc/UTC. + For possible values see: https://docs.microsoft.com/en-us/rest/api/maps/timezone/gettimezoneenumwindows' + type: string + weekDays: + description: List of days of the week that the job should execute + on. Only valid when frequency is Week. Possible values are Monday, + Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -473,7 +549,9 @@ spec: type: object x-kubernetes-validations: - message: frequency is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frequency) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frequency) + || has(self.initProvider.frequency)' status: description: ScheduleStatus defines the observed state of Schedule. properties: diff --git a/package/crds/automation.azure.upbound.io_variablebools.yaml b/package/crds/automation.azure.upbound.io_variablebools.yaml index 52643a133..d82cbebf5 100644 --- a/package/crds/automation.azure.upbound.io_variablebools.yaml +++ b/package/crds/automation.azure.upbound.io_variablebools.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: variablebools.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -238,21 +237,56 @@ spec: description: The value of the Automation Variable as a boolean. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of the Automation Variable. + type: string + encrypted: + description: Specifies if the Automation Variable is encrypted. + Defaults to false. + type: boolean + value: + description: The value of the Automation Variable as a boolean. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/automation.azure.upbound.io_variabledatetimes.yaml b/package/crds/automation.azure.upbound.io_variabledatetimes.yaml index b88fb4fd8..f2e103584 100644 --- a/package/crds/automation.azure.upbound.io_variabledatetimes.yaml +++ b/package/crds/automation.azure.upbound.io_variabledatetimes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: variabledatetimes.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -239,21 +238,57 @@ spec: Section 5.6 Internet Date/Time Format. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of the Automation Variable. + type: string + encrypted: + description: Specifies if the Automation Variable is encrypted. + Defaults to false. + type: boolean + value: + description: The value of the Automation Variable in the RFC3339 + Section 5.6 Internet Date/Time Format. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/automation.azure.upbound.io_variableints.yaml b/package/crds/automation.azure.upbound.io_variableints.yaml index a5e882dd8..552b09876 100644 --- a/package/crds/automation.azure.upbound.io_variableints.yaml +++ b/package/crds/automation.azure.upbound.io_variableints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: variableints.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -238,21 +237,56 @@ spec: description: The value of the Automation Variable as a integer. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of the Automation Variable. + type: string + encrypted: + description: Specifies if the Automation Variable is encrypted. + Defaults to false. + type: boolean + value: + description: The value of the Automation Variable as a integer. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/automation.azure.upbound.io_variablestrings.yaml b/package/crds/automation.azure.upbound.io_variablestrings.yaml index d4096c13f..84fac4c83 100644 --- a/package/crds/automation.azure.upbound.io_variablestrings.yaml +++ b/package/crds/automation.azure.upbound.io_variablestrings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: variablestrings.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -238,21 +237,56 @@ spec: description: The value of the Automation Variable as a string. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of the Automation Variable. + type: string + encrypted: + description: Specifies if the Automation Variable is encrypted. + Defaults to false. + type: boolean + value: + description: The value of the Automation Variable as a string. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/automation.azure.upbound.io_webhooks.yaml b/package/crds/automation.azure.upbound.io_webhooks.yaml index b2633de34..b9f62d166 100644 --- a/package/crds/automation.azure.upbound.io_webhooks.yaml +++ b/package/crds/automation.azure.upbound.io_webhooks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: webhooks.automation.azure.upbound.io spec: group: automation.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -345,21 +344,66 @@ spec: - namespace type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Controls if Webhook is enabled. Defaults to true. + type: boolean + expiryTime: + description: Timestamp when the webhook expires. Changing this + forces a new resource to be created. + type: string + name: + description: Specifies the name of the Webhook. Changing this + forces a new resource to be created. + type: string + parameters: + additionalProperties: + type: string + description: Map of input parameters passed to runbook. + type: object + runOnWorkerGroup: + description: Name of the hybrid worker group the Webhook job will + run on. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -533,9 +577,13 @@ spec: type: object x-kubernetes-validations: - message: expiryTime is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.expiryTime) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.expiryTime) + || has(self.initProvider.expiryTime)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: WebhookStatus defines the observed state of Webhook. properties: diff --git a/package/crds/azure.upbound.io_providerconfigs.yaml b/package/crds/azure.upbound.io_providerconfigs.yaml index a0f981b61..1685947a3 100644 --- a/package/crds/azure.upbound.io_providerconfigs.yaml +++ b/package/crds/azure.upbound.io_providerconfigs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: providerconfigs.azure.upbound.io spec: group: azure.upbound.io diff --git a/package/crds/azure.upbound.io_providerconfigusages.yaml b/package/crds/azure.upbound.io_providerconfigusages.yaml index ecfe2cdf3..b8f040e06 100644 --- a/package/crds/azure.upbound.io_providerconfigusages.yaml +++ b/package/crds/azure.upbound.io_providerconfigusages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: providerconfigusages.azure.upbound.io spec: group: azure.upbound.io diff --git a/package/crds/azure.upbound.io_resourcegroups.yaml b/package/crds/azure.upbound.io_resourcegroups.yaml index cf850a4dd..d0854472b 100644 --- a/package/crds/azure.upbound.io_resourcegroups.yaml +++ b/package/crds/azure.upbound.io_resourcegroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: resourcegroups.azure.upbound.io spec: group: azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -79,21 +78,56 @@ spec: Resource Group. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Resource Group should + exist. Changing this forces a new Resource Group to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Resource Group. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -267,7 +301,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ResourceGroupStatus defines the observed state of ResourceGroup. properties: diff --git a/package/crds/azure.upbound.io_resourceproviderregistrations.yaml b/package/crds/azure.upbound.io_resourceproviderregistrations.yaml index 8fe193a42..64f4fcd81 100644 --- a/package/crds/azure.upbound.io_resourceproviderregistrations.yaml +++ b/package/crds/azure.upbound.io_resourceproviderregistrations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: resourceproviderregistrations.azure.upbound.io spec: group: azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -79,9 +78,6 @@ spec: registered: description: Should this feature be Registered or Unregistered? type: boolean - required: - - name - - registered type: object type: array name: @@ -89,21 +85,62 @@ spec: be registered. Changing this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + feature: + description: A list of feature blocks as defined below. + items: + properties: + name: + description: Specifies the name of the feature to register. + type: string + registered: + description: Should this feature be Registered or Unregistered? + type: boolean + type: object + type: array + name: + description: The namespace of the Resource Provider which should + be registered. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -277,7 +314,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ResourceProviderRegistrationStatus defines the observed state of ResourceProviderRegistration. diff --git a/package/crds/azure.upbound.io_storeconfigs.yaml b/package/crds/azure.upbound.io_storeconfigs.yaml index 1eecceb52..f860dbddb 100644 --- a/package/crds/azure.upbound.io_storeconfigs.yaml +++ b/package/crds/azure.upbound.io_storeconfigs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: storeconfigs.azure.upbound.io spec: group: azure.upbound.io diff --git a/package/crds/azure.upbound.io_subscriptions.yaml b/package/crds/azure.upbound.io_subscriptions.yaml index 112cc3043..1bb831df3 100644 --- a/package/crds/azure.upbound.io_subscriptions.yaml +++ b/package/crds/azure.upbound.io_subscriptions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subscriptions.azure.upbound.io spec: group: azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -93,21 +92,70 @@ spec: Possible values are `Production` (default) and `DevTest`. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + billingScopeId: + description: The Azure Billing Scope ID. Can be a Microsoft Customer + Account Billing Scope ID, a Microsoft Partner Account Billing + Scope ID or an Enrollment Billing Scope ID. + type: string + subscriptionId: + description: The ID of the Subscription. Changing this forces + a new Subscription to be created. The GUID of the Subscription. + type: string + subscriptionName: + description: The Name of the Subscription. This is the Display + Name in the portal. The Display Name for the Subscription. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Subscription. + type: object + workload: + description: The workload type of the Subscription. Possible values + are Production (default) and DevTest. Changing this forces a + new Subscription to be created. The workload type for the Subscription. + Possible values are `Production` (default) and `DevTest`. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -281,7 +329,9 @@ spec: type: object x-kubernetes-validations: - message: subscriptionName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subscriptionName) + || has(self.initProvider.subscriptionName)' status: description: SubscriptionStatus defines the observed state of Subscription. properties: diff --git a/package/crds/azurestackhci.azure.upbound.io_clusters.yaml b/package/crds/azurestackhci.azure.upbound.io_clusters.yaml index 9acd7332a..a35aa6adb 100644 --- a/package/crds/azurestackhci.azure.upbound.io_clusters.yaml +++ b/package/crds/azurestackhci.azure.upbound.io_clusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: clusters.azurestackhci.azure.upbound.io spec: group: azurestackhci.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -169,21 +168,66 @@ spec: a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clientId: + description: The Client ID of the Azure Active Directory which + is used by the Azure Stack HCI Cluster. Changing this forces + a new resource to be created. + type: string + location: + description: The Azure Region where the Azure Stack HCI Cluster + should exist. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Azure Stack HCI Cluster. + type: object + tenantId: + description: The Tenant ID of the Azure Active Directory which + is used by the Azure Stack HCI Cluster. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -357,9 +401,13 @@ spec: type: object x-kubernetes-validations: - message: clientId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientId) + || has(self.initProvider.clientId)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ClusterStatus defines the observed state of Cluster. properties: diff --git a/package/crds/botservice.azure.upbound.io_botchannelalexas.yaml b/package/crds/botservice.azure.upbound.io_botchannelalexas.yaml index 43a1abdbd..899e96af2 100644 --- a/package/crds/botservice.azure.upbound.io_botchannelalexas.yaml +++ b/package/crds/botservice.azure.upbound.io_botchannelalexas.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: botchannelalexas.botservice.azure.upbound.io spec: group: botservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -235,21 +234,53 @@ spec: description: The Alexa skill ID for the Alexa Channel. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The supported Azure location where the resource exists. + Changing this forces a new resource to be created. + type: string + skillId: + description: The Alexa skill ID for the Alexa Channel. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -423,9 +454,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skillId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skillId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skillId) + || has(self.initProvider.skillId)' status: description: BotChannelAlexaStatus defines the observed state of BotChannelAlexa. properties: diff --git a/package/crds/botservice.azure.upbound.io_botchanneldirectlines.yaml b/package/crds/botservice.azure.upbound.io_botchanneldirectlines.yaml index d54a181bd..7a8709565 100644 --- a/package/crds/botservice.azure.upbound.io_botchanneldirectlines.yaml +++ b/package/crds/botservice.azure.upbound.io_botchanneldirectlines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: botchanneldirectlines.botservice.azure.upbound.io spec: group: botservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -263,26 +262,88 @@ spec: description: Enables v3 of the Directline protocol for this site. Enabled by default Defaults to true. type: boolean - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The supported Azure location where the resource exists. + Changing this forces a new resource to be created. + type: string + site: + description: A site represents a client application that you want + to connect to your bot. Multiple site blocks may be defined + as below + items: + properties: + enabled: + description: Enables/Disables this site. Enabled by default + Defaults to true. + type: boolean + enhancedAuthenticationEnabled: + description: Enables additional security measures for this + site, see Enhanced Directline Authentication Features. + Disabled by default. + type: boolean + name: + description: The name of the site + type: string + trustedOrigins: + description: This field is required when is_secure_site_enabled + is enabled. Determines which origins can establish a Directline + conversation for this site. + items: + type: string + type: array + v1Allowed: + description: Enables v1 of the Directline protocol for this + site. Enabled by default Defaults to true. + type: boolean + v3Allowed: + description: Enables v3 of the Directline protocol for this + site. Enabled by default Defaults to true. + type: boolean + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -456,9 +517,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: site is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.site) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.site) + || has(self.initProvider.site)' status: description: BotChannelDirectLineStatus defines the observed state of BotChannelDirectLine. diff --git a/package/crds/botservice.azure.upbound.io_botchannellines.yaml b/package/crds/botservice.azure.upbound.io_botchannellines.yaml index 3fdce6a64..90fa3eb1d 100644 --- a/package/crds/botservice.azure.upbound.io_botchannellines.yaml +++ b/package/crds/botservice.azure.upbound.io_botchannellines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: botchannellines.botservice.azure.upbound.io spec: group: botservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -277,21 +276,55 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + lineChannel: + description: One or more line_channel blocks as defined below. + items: + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -465,9 +498,13 @@ spec: type: object x-kubernetes-validations: - message: lineChannel is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.lineChannel) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.lineChannel) + || has(self.initProvider.lineChannel)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: BotChannelLineStatus defines the observed state of BotChannelLine. properties: diff --git a/package/crds/botservice.azure.upbound.io_botchannelmsteams.yaml b/package/crds/botservice.azure.upbound.io_botchannelmsteams.yaml index feaa334d1..fd6ff7cd0 100644 --- a/package/crds/botservice.azure.upbound.io_botchannelmsteams.yaml +++ b/package/crds/botservice.azure.upbound.io_botchannelmsteams.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: botchannelmsteams.botservice.azure.upbound.io spec: group: botservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -239,21 +238,58 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + callingWebHook: + description: Specifies the webhook for Microsoft Teams channel + calls. + type: string + enableCalling: + description: Specifies whether to enable Microsoft Teams channel + calls. This defaults to false. + type: boolean + location: + description: The supported Azure location where the resource exists. + Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -427,7 +463,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: BotChannelMSTeamsStatus defines the observed state of BotChannelMSTeams. properties: diff --git a/package/crds/botservice.azure.upbound.io_botchannelslacks.yaml b/package/crds/botservice.azure.upbound.io_botchannelslacks.yaml index b8a464b3b..5b6dd8060 100644 --- a/package/crds/botservice.azure.upbound.io_botchannelslacks.yaml +++ b/package/crds/botservice.azure.upbound.io_botchannelslacks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: botchannelslacks.botservice.azure.upbound.io spec: group: botservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -292,21 +291,57 @@ spec: - namespace type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clientId: + description: The Client ID that will be used to authenticate with + Slack. + type: string + landingPageUrl: + description: The Slack Landing Page URL. + type: string + location: + description: The supported Azure location where the resource exists. + Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -480,13 +515,19 @@ spec: type: object x-kubernetes-validations: - message: clientId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientId) + || has(self.initProvider.clientId)' - message: clientSecretSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: verificationTokenSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.verificationTokenSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.verificationTokenSecretRef)' status: description: BotChannelSlackStatus defines the observed state of BotChannelSlack. properties: diff --git a/package/crds/botservice.azure.upbound.io_botchannelsms.yaml b/package/crds/botservice.azure.upbound.io_botchannelsmses.yaml similarity index 85% rename from package/crds/botservice.azure.upbound.io_botchannelsms.yaml rename to package/crds/botservice.azure.upbound.io_botchannelsmses.yaml index e2d353ad3..3013d5716 100644 --- a/package/crds/botservice.azure.upbound.io_botchannelsms.yaml +++ b/package/crds/botservice.azure.upbound.io_botchannelsmses.yaml @@ -3,9 +3,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null - name: botchannelsms.botservice.azure.upbound.io + controller-gen.kubebuilder.io/version: v0.12.1 + name: botchannelsmses.botservice.azure.upbound.io spec: group: botservice.azure.upbound.io names: @@ -15,7 +14,7 @@ spec: - azure kind: BotChannelSMS listKind: BotChannelSMSList - plural: botchannelsms + plural: botchannelsmses singular: botchannelsms scope: Cluster versions: @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -256,21 +255,57 @@ spec: - namespace type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + phoneNumber: + description: The phone number for the SMS Channel. + type: string + smsChannelAccountSecurityId: + description: The account security identifier (SID) for the SMS + Channel. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -444,13 +479,20 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: phoneNumber is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.phoneNumber) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.phoneNumber) + || has(self.initProvider.phoneNumber)' - message: smsChannelAccountSecurityId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.smsChannelAccountSecurityId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.smsChannelAccountSecurityId) + || has(self.initProvider.smsChannelAccountSecurityId)' - message: smsChannelAuthTokenSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.smsChannelAuthTokenSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.smsChannelAuthTokenSecretRef)' status: description: BotChannelSMSStatus defines the observed state of BotChannelSMS. properties: diff --git a/package/crds/botservice.azure.upbound.io_botchannelsregistrations.yaml b/package/crds/botservice.azure.upbound.io_botchannelsregistrations.yaml index 00e2bea34..a706a58b7 100644 --- a/package/crds/botservice.azure.upbound.io_botchannelsregistrations.yaml +++ b/package/crds/botservice.azure.upbound.io_botchannelsregistrations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: botchannelsregistrations.botservice.azure.upbound.io spec: group: botservice.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -227,21 +226,105 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + cmkKeyVaultUrl: + description: The CMK Key Vault Key URL to encrypt the Bot Channels + Registration with the Customer Managed Encryption Key. + type: string + description: + description: The description of the Bot Channels Registration. + type: string + developerAppInsightsApplicationId: + description: The Application Insights Application ID to associate + with the Bot Channels Registration. + type: string + developerAppInsightsKey: + description: The Application Insights Key to associate with the + Bot Channels Registration. + type: string + displayName: + description: The name of the Bot Channels Registration will be + displayed as. This defaults to name if not specified. + type: string + endpoint: + description: The Bot Channels Registration endpoint. + type: string + iconUrl: + description: The icon URL to visually identify the Bot Channels + Registration. + type: string + isolatedNetworkEnabled: + description: Is the Bot Channels Registration in an isolated network? + type: boolean + location: + description: The supported Azure location where the resource exists. + Changing this forces a new resource to be created. + type: string + microsoftAppId: + description: The Microsoft Application ID for the Bot Channels + Registration. Changing this forces a new resource to be created. + type: string + name: + description: Specifies the name of the Bot Channels Registration. + Changing this forces a new resource to be created. Must be globally + unique. + type: string + publicNetworkAccessEnabled: + description: Is the Bot Channels Registration in an isolated network? + type: boolean + sku: + description: The SKU of the Bot Channels Registration. Valid values + include F0 or S1. Changing this forces a new resource to be + created. + type: string + streamingEndpointEnabled: + description: Is the streaming endpoint enabled for the Bot Channels + Registration. Defaults to false. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -415,13 +498,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: microsoftAppId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.microsoftAppId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.microsoftAppId) + || has(self.initProvider.microsoftAppId)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: BotChannelsRegistrationStatus defines the observed state of BotChannelsRegistration. diff --git a/package/crds/botservice.azure.upbound.io_botchannelwebchats.yaml b/package/crds/botservice.azure.upbound.io_botchannelwebchats.yaml index 611c035c7..fc5e4a8b7 100644 --- a/package/crds/botservice.azure.upbound.io_botchannelwebchats.yaml +++ b/package/crds/botservice.azure.upbound.io_botchannelwebchats.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: botchannelwebchats.botservice.azure.upbound.io spec: group: botservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -237,21 +236,55 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + siteNames: + description: A list of Web Chat Site names. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -425,9 +458,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: siteNames is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteNames) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.siteNames) + || has(self.initProvider.siteNames)' status: description: BotChannelWebChatStatus defines the observed state of BotChannelWebChat. properties: diff --git a/package/crds/botservice.azure.upbound.io_botconnections.yaml b/package/crds/botservice.azure.upbound.io_botconnections.yaml index a1eb61dcd..cba549f6c 100644 --- a/package/crds/botservice.azure.upbound.io_botconnections.yaml +++ b/package/crds/botservice.azure.upbound.io_botconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: botconnections.botservice.azure.upbound.io spec: group: botservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -273,21 +272,72 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clientId: + description: The Client ID that will be used to authenticate with + the service provider. + type: string + location: + description: The supported Azure location where the resource exists. + Changing this forces a new resource to be created. + type: string + parameters: + additionalProperties: + type: string + description: A map of additional parameters to apply to the connection. + type: object + scopes: + description: The Scopes at which the connection should be applied. + type: string + serviceProviderName: + description: The name of the service provider that will be associated + with this connection. Changing this forces a new resource to + be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -461,13 +511,20 @@ spec: type: object x-kubernetes-validations: - message: clientId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientId) + || has(self.initProvider.clientId)' - message: clientSecretSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientSecretSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientSecretSecretRef)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: serviceProviderName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serviceProviderName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serviceProviderName) + || has(self.initProvider.serviceProviderName)' status: description: BotConnectionStatus defines the observed state of BotConnection. properties: diff --git a/package/crds/botservice.azure.upbound.io_botwebapps.yaml b/package/crds/botservice.azure.upbound.io_botwebapps.yaml index 12eb03b4d..43ce3a34d 100644 --- a/package/crds/botservice.azure.upbound.io_botwebapps.yaml +++ b/package/crds/botservice.azure.upbound.io_botwebapps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: botwebapps.botservice.azure.upbound.io spec: group: botservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -221,21 +220,84 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + developerAppInsightsApplicationId: + description: The Application Insights Application ID to associate + with the Web App Bot. + type: string + developerAppInsightsKey: + description: The Application Insights Key to associate with the + Web App Bot. + type: string + displayName: + description: The name of the Web App Bot will be displayed as. + This defaults to name if not specified. + type: string + endpoint: + description: The Web App Bot endpoint. + type: string + location: + description: The supported Azure location where the resource exists. + Changing this forces a new resource to be created. + type: string + luisAppIds: + description: A list of LUIS App IDs to associate with the Web + App Bot. + items: + type: string + type: array + microsoftAppId: + description: The Microsoft Application ID for the Web App Bot. + Changing this forces a new resource to be created. + type: string + sku: + description: The SKU of the Web App Bot. Valid values include + F0 or S1. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -409,11 +471,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: microsoftAppId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.microsoftAppId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.microsoftAppId) + || has(self.initProvider.microsoftAppId)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: BotWebAppStatus defines the observed state of BotWebApp. properties: diff --git a/package/crds/cache.azure.upbound.io_rediscaches.yaml b/package/crds/cache.azure.upbound.io_rediscaches.yaml index 2a9b8319d..879958b2e 100644 --- a/package/crds/cache.azure.upbound.io_rediscaches.yaml +++ b/package/crds/cache.azure.upbound.io_rediscaches.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: rediscaches.cache.azure.upbound.io spec: group: cache.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -96,8 +95,6 @@ spec: values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array location: @@ -124,8 +121,6 @@ spec: description: the Start Hour for maintenance in UTC - possible values range from 0 - 23. type: number - required: - - dayOfWeek type: object type: array privateStaticIpAddress: @@ -442,21 +437,201 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + capacity: + description: The size of the Redis cache to deploy. Valid values + for a SKU family of C (Basic/Standard) are 0, 1, 2, 3, 4, 5, + 6, and for P (Premium) family are 1, 2, 3, 4, 5. + type: number + enableNonSslPort: + description: Enable the non-SSL port (6379) - disabled by default. + type: boolean + family: + description: The SKU family/pricing group to use. Valid values + are C (for Basic/Standard SKU family) and P (for Premium) + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Redis Cluster. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Redis Cluster. Possible + values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + location: + description: The location of the resource group. Changing this + forces a new resource to be created. + type: string + minimumTlsVersion: + description: The minimum TLS version. Possible values are 1.0, + 1.1 and 1.2. Defaults to 1.0. + type: string + patchSchedule: + description: A list of patch_schedule blocks as defined below. + items: + properties: + dayOfWeek: + description: the Weekday name - possible values include + Monday, Tuesday, Wednesday etc. + type: string + maintenanceWindow: + description: The ISO 8601 timespan which specifies the amount + of time the Redis Cache can be updated. Defaults to PT5H. + type: string + startHourUtc: + description: the Start Hour for maintenance in UTC - possible + values range from 0 - 23. + type: number + type: object + type: array + privateStaticIpAddress: + description: The Static IP Address to assign to the Redis Cache + when hosted inside the Virtual Network. This argument implies + the use of subnet_id. Changing this forces a new resource to + be created. + type: string + publicNetworkAccessEnabled: + description: Whether or not public network access is allowed for + this Redis Cache. true means this resource could be accessed + by both public and private endpoint. false means only private + endpoint access is allowed. Defaults to true. + type: boolean + redisConfiguration: + description: A redis_configuration as defined below - with some + limitations by SKU - defaults/details are shown below. + items: + properties: + aofBackupEnabled: + description: Enable or disable AOF persistence for this + Redis Cache. Defaults to false. + type: boolean + enableAuthentication: + description: If set to false, the Redis instance will be + accessible without authentication. Defaults to true. + type: boolean + maxfragmentationmemoryReserved: + description: Value in megabytes reserved to accommodate + for memory fragmentation. Defaults are shown below. + type: number + maxmemoryDelta: + description: The max-memory delta for this Redis instance. + Defaults are shown below. + type: number + maxmemoryPolicy: + description: How Redis will select what to remove when maxmemory + is reached. Defaults are shown below. Defaults to volatile-lru. + type: string + maxmemoryReserved: + description: Value in megabytes reserved for non-cache usage + e.g. failover. Defaults are shown below. + type: number + notifyKeyspaceEvents: + description: Keyspace notifications allows clients to subscribe + to Pub/Sub channels in order to receive events affecting + the Redis data set in some way. Reference + type: string + rdbBackupEnabled: + description: Is Backup Enabled? Only supported on Premium + SKUs. Defaults to false. + type: boolean + rdbBackupFrequency: + description: 'The Backup Frequency in Minutes. Only supported + on Premium SKUs. Possible values are: 15, 30, 60, 360, + 720 and 1440.' + type: number + rdbBackupMaxSnapshotCount: + description: The maximum number of snapshots to create as + a backup. Only supported for Premium SKUs. + type: number + type: object + type: array + redisVersion: + description: 'Redis version. Only major version needed. Valid + values: 4, 6.' + type: string + replicasPerMaster: + description: Amount of replicas to create per master for this + Redis Cache. + type: number + replicasPerPrimary: + description: Amount of replicas to create per primary for this + Redis Cache. If both replicas_per_primary and replicas_per_master + are set, they need to be equal. + type: number + shardCount: + description: Only available when using the Premium SKU The number + of Shards to create on the Redis Cluster. + type: number + skuName: + description: The SKU of Redis to use. Possible values are Basic, + Standard and Premium. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + tenantSettings: + additionalProperties: + type: string + description: A mapping of tenant settings to assign to the resource. + type: object + zones: + description: Specifies a list of Availability Zones in which this + Redis Cache should be located. Changing this forces a new Redis + Cache to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -630,15 +805,25 @@ spec: type: object x-kubernetes-validations: - message: capacity is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.capacity) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.capacity) + || has(self.initProvider.capacity)' - message: family is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.family) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.family) + || has(self.initProvider.family)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: redisVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.redisVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.redisVersion) + || has(self.initProvider.redisVersion)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: RedisCacheStatus defines the observed state of RedisCache. properties: diff --git a/package/crds/cache.azure.upbound.io_redisenterpriseclusters.yaml b/package/crds/cache.azure.upbound.io_redisenterpriseclusters.yaml index cd87ceb66..a8f9f97bf 100644 --- a/package/crds/cache.azure.upbound.io_redisenterpriseclusters.yaml +++ b/package/crds/cache.azure.upbound.io_redisenterpriseclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: redisenterpriseclusters.cache.azure.upbound.io spec: group: cache.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -183,21 +182,80 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Redis Enterprise Cluster + should exist. Changing this forces a new Redis Enterprise Cluster + to be created. + type: string + minimumTlsVersion: + description: The minimum TLS version. Possible values are 1.0, + 1.1 and 1.2. Defaults to 1.2. Changing this forces a new Redis + Enterprise Cluster to be created. + type: string + skuName: + description: The sku_name is comprised of two segments separated + by a hyphen (e.g. Enterprise_E10-2). The first segment of the + sku_name defines the name of the SKU, possible values are Enterprise_E10, + Enterprise_E20", Enterprise_E50, Enterprise_E100, EnterpriseFlash_F300, + EnterpriseFlash_F700 or EnterpriseFlash_F1500. The second segment + defines the capacity of the sku_name, possible values for Enteprise + SKUs are (2, 4, 6, ...). Possible values for EnterpriseFlash + SKUs are (3, 9, 15, ...). Changing this forces a new Redis Enterprise + Cluster to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Redis Enterprise Cluster. + type: object + zones: + description: Specifies a list of Availability Zones in which this + Redis Enterprise Cluster should be located. Changing this forces + a new Redis Enterprise Cluster to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -371,9 +429,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: RedisEnterpriseClusterStatus defines the observed state of RedisEnterpriseCluster. diff --git a/package/crds/cache.azure.upbound.io_redisenterprisedatabases.yaml b/package/crds/cache.azure.upbound.io_redisenterprisedatabases.yaml index c121095d9..08115925c 100644 --- a/package/crds/cache.azure.upbound.io_redisenterprisedatabases.yaml +++ b/package/crds/cache.azure.upbound.io_redisenterprisedatabases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: redisenterprisedatabases.cache.azure.upbound.io spec: group: cache.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -193,8 +192,6 @@ spec: and RedisJSON. Changing this forces a new Redis Enterprise Database to be created. type: string - required: - - name type: object type: array port: @@ -283,21 +280,97 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clientProtocol: + description: Specifies whether redis clients can connect using + TLS-encrypted or plaintext redis protocols. Default is TLS-encrypted. + Possible values are Encrypted and Plaintext. Defaults to Encrypted. + Changing this forces a new Redis Enterprise Database to be created. + type: string + clusteringPolicy: + description: Clustering policy - default is OSSCluster. Specified + at create time. Possible values are EnterpriseCluster and OSSCluster. + Defaults to OSSCluster. Changing this forces a new Redis Enterprise + Database to be created. + type: string + evictionPolicy: + description: Redis eviction policy - default is VolatileLRU. Possible + values are AllKeysLFU, AllKeysLRU, AllKeysRandom, VolatileLRU, + VolatileLFU, VolatileTTL, VolatileRandom and NoEviction. Changing + this forces a new Redis Enterprise Database to be created. + type: string + linkedDatabaseGroupNickname: + description: Nickname of the group of linked databases. Changing + this force a new Redis Enterprise Geo Database to be created. + type: string + linkedDatabaseId: + description: A list of database resources to link with this database + with a maximum of 5. + items: + type: string + type: array + module: + description: A module block as defined below. Changing this forces + a new resource to be created. + items: + properties: + args: + description: Configuration options for the module (e.g. + ERROR_RATE 0.00 INITIAL_SIZE 400). Changing this forces + a new resource to be created. Defaults to "". + type: string + name: + description: The name which should be used for this module. + Possible values are RedisBloom, RedisTimeSeries, RediSearch + and RedisJSON. Changing this forces a new Redis Enterprise + Database to be created. + type: string + type: object + type: array + port: + description: TCP port of the database endpoint. Specified at create + time. Defaults to an available port. Changing this forces a + new Redis Enterprise Database to be created. Defaults to 10000. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/cache.azure.upbound.io_redisfirewallrules.yaml b/package/crds/cache.azure.upbound.io_redisfirewallrules.yaml index ebdb1754f..9c8f09af0 100644 --- a/package/crds/cache.azure.upbound.io_redisfirewallrules.yaml +++ b/package/crds/cache.azure.upbound.io_redisfirewallrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: redisfirewallrules.cache.azure.upbound.io spec: group: cache.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -231,21 +230,52 @@ spec: description: The lowest IP address included in the range type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endIp: + description: The highest IP address included in the range. + type: string + startIp: + description: The lowest IP address included in the range + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -419,9 +449,13 @@ spec: type: object x-kubernetes-validations: - message: endIp is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIp) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endIp) + || has(self.initProvider.endIp)' - message: startIp is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIp) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.startIp) + || has(self.initProvider.startIp)' status: description: RedisFirewallRuleStatus defines the observed state of RedisFirewallRule. properties: diff --git a/package/crds/cache.azure.upbound.io_redislinkedservers.yaml b/package/crds/cache.azure.upbound.io_redislinkedservers.yaml index 980c24bed..dff18a7ca 100644 --- a/package/crds/cache.azure.upbound.io_redislinkedservers.yaml +++ b/package/crds/cache.azure.upbound.io_redislinkedservers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: redislinkedservers.cache.azure.upbound.io spec: group: cache.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -311,21 +310,55 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + linkedRedisCacheLocation: + description: The location of the linked Redis cache. Changing + this forces a new Redis to be created. + type: string + serverRole: + description: The role of the linked Redis cache (eg "Secondary"). + Changing this forces a new Redis to be created. Possible values + are Primary and Secondary. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -499,9 +532,13 @@ spec: type: object x-kubernetes-validations: - message: linkedRedisCacheLocation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.linkedRedisCacheLocation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.linkedRedisCacheLocation) + || has(self.initProvider.linkedRedisCacheLocation)' - message: serverRole is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serverRole) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serverRole) + || has(self.initProvider.serverRole)' status: description: RedisLinkedServerStatus defines the observed state of RedisLinkedServer. properties: diff --git a/package/crds/cdn.azure.upbound.io_endpoints.yaml b/package/crds/cdn.azure.upbound.io_endpoints.yaml index 0ea95c92f..d66d9b011 100644 --- a/package/crds/cdn.azure.upbound.io_endpoints.yaml +++ b/package/crds/cdn.azure.upbound.io_endpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: endpoints.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -95,8 +94,6 @@ spec: when behavior is set to Override or SetIfMissing. Format: [d.]hh:mm:ss' type: string - required: - - behavior type: object type: array cacheKeyQueryStringAction: @@ -112,8 +109,6 @@ spec: parameters: description: Comma separated list of parameter values. type: string - required: - - behavior type: object type: array cookiesCondition: @@ -143,9 +138,6 @@ spec: items: type: string type: array - required: - - operator - - selector type: object type: array deviceCondition: @@ -166,8 +158,6 @@ spec: EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. type: string - required: - - matchValues type: object type: array httpVersionCondition: @@ -188,8 +178,6 @@ spec: EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. type: string - required: - - matchValues type: object type: array modifyRequestHeaderAction: @@ -211,9 +199,6 @@ spec: description: The value of the header. Only needed when action is set to Append or overwrite. type: string - required: - - action - - name type: object type: array modifyResponseHeaderAction: @@ -235,9 +220,6 @@ spec: description: The value of the header. Only needed when action is set to Append or overwrite. type: string - required: - - action - - name type: object type: array name: @@ -275,9 +257,6 @@ spec: items: type: string type: array - required: - - operator - - selector type: object type: array queryStringCondition: @@ -304,8 +283,6 @@ spec: items: type: string type: array - required: - - operator type: object type: array remoteAddressCondition: @@ -327,8 +304,6 @@ spec: EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. type: string - required: - - operator type: object type: array requestBodyCondition: @@ -355,8 +330,6 @@ spec: items: type: string type: array - required: - - operator type: object type: array requestHeaderCondition: @@ -387,9 +360,6 @@ spec: items: type: string type: array - required: - - operator - - selector type: object type: array requestMethodCondition: @@ -411,8 +381,6 @@ spec: EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. type: string - required: - - matchValues type: object type: array requestSchemeCondition: @@ -434,8 +402,6 @@ spec: EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. type: string - required: - - matchValues type: object type: array requestUriCondition: @@ -462,8 +428,6 @@ spec: items: type: string type: array - required: - - operator type: object type: array urlFileExtensionCondition: @@ -491,8 +455,6 @@ spec: items: type: string type: array - required: - - operator type: object type: array urlFileNameCondition: @@ -520,8 +482,6 @@ spec: items: type: string type: array - required: - - operator type: object type: array urlPathCondition: @@ -548,8 +508,6 @@ spec: items: type: string type: array - required: - - operator type: object type: array urlRedirectAction: @@ -580,8 +538,6 @@ spec: description: Type of the redirect. Valid values are Found, Moved, PermanentRedirect and TemporaryRedirect. type: string - required: - - redirectType type: object type: array urlRewriteAction: @@ -599,14 +555,8 @@ spec: description: This value must start with a / and can't be longer than 260 characters. type: string - required: - - destination - - sourcePattern type: object type: array - required: - - name - - order type: object type: array geoFilter: @@ -627,10 +577,6 @@ spec: relativePath: description: The relative path applicable to geo filter. type: string - required: - - action - - countryCodes - - relativePath type: object type: array globalDeliveryRule: @@ -653,8 +599,6 @@ spec: when behavior is set to Override or SetIfMissing. Format: [d.]hh:mm:ss' type: string - required: - - behavior type: object type: array cacheKeyQueryStringAction: @@ -670,8 +614,6 @@ spec: parameters: description: Comma separated list of parameter values. type: string - required: - - behavior type: object type: array modifyRequestHeaderAction: @@ -693,9 +635,6 @@ spec: description: The value of the header. Only needed when action is set to Append or overwrite. type: string - required: - - action - - name type: object type: array modifyResponseHeaderAction: @@ -717,9 +656,6 @@ spec: description: The value of the header. Only needed when action is set to Append or overwrite. type: string - required: - - action - - name type: object type: array urlRedirectAction: @@ -750,8 +686,6 @@ spec: description: Type of the redirect. Valid values are Found, Moved, PermanentRedirect and TemporaryRedirect. type: string - required: - - redirectType type: object type: array urlRewriteAction: @@ -769,9 +703,6 @@ spec: description: This value must start with a / and can't be longer than 260 characters. type: string - required: - - destination - - sourcePattern type: object type: array type: object @@ -823,9 +754,6 @@ spec: value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. type: string - required: - - hostName - - name type: object type: array originHostHeader: @@ -1009,21 +937,759 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + contentTypesToCompress: + description: An array of strings that indicates a content types + on which compression will be applied. The value for the elements + should be MIME types. + items: + type: string + type: array + deliveryRule: + description: Rules for the rules engine. An endpoint can contain + up until 4 of those rules that consist of conditions and actions. + A delivery_rule blocks as defined below. + items: + properties: + cacheExpirationAction: + description: A cache_expiration_action block as defined + above. + items: + properties: + behavior: + description: The behavior of the cache key for query + strings. Valid values are Exclude, ExcludeAll, Include + and IncludeAll. + type: string + duration: + description: 'Duration of the cache. Only allowed + when behavior is set to Override or SetIfMissing. + Format: [d.]hh:mm:ss' + type: string + type: object + type: array + cacheKeyQueryStringAction: + description: A cache_key_query_string_action block as defined + above. + items: + properties: + behavior: + description: The behavior of the cache key for query + strings. Valid values are Exclude, ExcludeAll, Include + and IncludeAll. + type: string + parameters: + description: Comma separated list of parameter values. + type: string + type: object + type: array + cookiesCondition: + description: A cookies_condition block as defined above. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + selector: + description: Header name. + type: string + transforms: + description: A list of transforms. Valid values are + Lowercase and Uppercase. + items: + type: string + type: array + type: object + type: array + deviceCondition: + description: A device_condition block as defined below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + type: object + type: array + httpVersionCondition: + description: A http_version_condition block as defined below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + type: object + type: array + modifyRequestHeaderAction: + description: A modify_request_header_action block as defined + below. + items: + properties: + action: + description: Action to be executed on a header value. + Valid values are Append, Delete and Overwrite. + type: string + name: + description: The name of the origin. This is an arbitrary + value. However, this value needs to be unique under + the endpoint. Changing this forces a new resource + to be created. + type: string + value: + description: The value of the header. Only needed + when action is set to Append or overwrite. + type: string + type: object + type: array + modifyResponseHeaderAction: + description: A modify_response_header_action block as defined + below. + items: + properties: + action: + description: Action to be executed on a header value. + Valid values are Append, Delete and Overwrite. + type: string + name: + description: The name of the origin. This is an arbitrary + value. However, this value needs to be unique under + the endpoint. Changing this forces a new resource + to be created. + type: string + value: + description: The value of the header. Only needed + when action is set to Append or overwrite. + type: string + type: object + type: array + name: + description: The Name which should be used for this Delivery + Rule. + type: string + order: + description: The order used for this rule. The order values + should be sequential and begin at 1. + type: number + postArgCondition: + description: A post_arg_condition block as defined below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + selector: + description: Header name. + type: string + transforms: + description: A list of transforms. Valid values are + Lowercase and Uppercase. + items: + type: string + type: array + type: object + type: array + queryStringCondition: + description: A query_string_condition block as defined below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + transforms: + description: A list of transforms. Valid values are + Lowercase and Uppercase. + items: + type: string + type: array + type: object + type: array + remoteAddressCondition: + description: A remote_address_condition block as defined + below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + type: object + type: array + requestBodyCondition: + description: A request_body_condition block as defined below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + transforms: + description: A list of transforms. Valid values are + Lowercase and Uppercase. + items: + type: string + type: array + type: object + type: array + requestHeaderCondition: + description: A request_header_condition block as defined + below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + selector: + description: Header name. + type: string + transforms: + description: A list of transforms. Valid values are + Lowercase and Uppercase. + items: + type: string + type: array + type: object + type: array + requestMethodCondition: + description: A request_method_condition block as defined + below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + type: object + type: array + requestSchemeCondition: + description: A request_scheme_condition block as defined + below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + type: object + type: array + requestUriCondition: + description: A request_uri_condition block as defined below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + transforms: + description: A list of transforms. Valid values are + Lowercase and Uppercase. + items: + type: string + type: array + type: object + type: array + urlFileExtensionCondition: + description: A url_file_extension_condition block as defined + below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + transforms: + description: A list of transforms. Valid values are + Lowercase and Uppercase. + items: + type: string + type: array + type: object + type: array + urlFileNameCondition: + description: A url_file_name_condition block as defined + below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + transforms: + description: A list of transforms. Valid values are + Lowercase and Uppercase. + items: + type: string + type: array + type: object + type: array + urlPathCondition: + description: A url_path_condition block as defined below. + items: + properties: + matchValues: + description: List of string values. This is required + if operator is not Any. + items: + type: string + type: array + negateCondition: + description: Defaults to false. + type: boolean + operator: + description: Valid values are Any, BeginsWith, Contains, + EndsWith, Equal, GreaterThan, GreaterThanOrEqual, + LessThan, LessThanOrEqual, RegEx and Wildcard. + type: string + transforms: + description: A list of transforms. Valid values are + Lowercase and Uppercase. + items: + type: string + type: array + type: object + type: array + urlRedirectAction: + description: A url_redirect_action block as defined below. + items: + properties: + fragment: + description: 'Specifies the fragment part of the URL. + This value must not start with a #.' + type: string + hostname: + description: Specifies the hostname part of the URL. + type: string + path: + description: Specifies the path part of the URL. This + value must begin with a /. + type: string + protocol: + description: Specifies the protocol part of the URL. + Valid values are MatchRequest, Http and Https. + type: string + queryString: + description: Specifies the query string part of the + URL. This value must not start with a ? or & and + must be in = format separated by &. + type: string + redirectType: + description: Type of the redirect. Valid values are + Found, Moved, PermanentRedirect and TemporaryRedirect. + type: string + type: object + type: array + urlRewriteAction: + description: A url_rewrite_action block as defined below. + items: + properties: + destination: + description: This value must start with a / and can't + be longer than 260 characters. + type: string + preserveUnmatchedPath: + description: Defaults to true. + type: boolean + sourcePattern: + description: This value must start with a / and can't + be longer than 260 characters. + type: string + type: object + type: array + type: object + type: array + geoFilter: + description: A set of Geo Filters for this CDN Endpoint. Each + geo_filter block supports fields documented below. + items: + properties: + action: + description: The Action of the Geo Filter. Possible values + include Allow and Block. + type: string + countryCodes: + description: A List of two letter country codes (e.g. US, + GB) to be associated with this Geo Filter. + items: + type: string + type: array + relativePath: + description: The relative path applicable to geo filter. + type: string + type: object + type: array + globalDeliveryRule: + description: Actions that are valid for all resources regardless + of any conditions. A global_delivery_rule block as defined below. + items: + properties: + cacheExpirationAction: + description: A cache_expiration_action block as defined + above. + items: + properties: + behavior: + description: The behavior of the cache key for query + strings. Valid values are Exclude, ExcludeAll, Include + and IncludeAll. + type: string + duration: + description: 'Duration of the cache. Only allowed + when behavior is set to Override or SetIfMissing. + Format: [d.]hh:mm:ss' + type: string + type: object + type: array + cacheKeyQueryStringAction: + description: A cache_key_query_string_action block as defined + above. + items: + properties: + behavior: + description: The behavior of the cache key for query + strings. Valid values are Exclude, ExcludeAll, Include + and IncludeAll. + type: string + parameters: + description: Comma separated list of parameter values. + type: string + type: object + type: array + modifyRequestHeaderAction: + description: A modify_request_header_action block as defined + below. + items: + properties: + action: + description: Action to be executed on a header value. + Valid values are Append, Delete and Overwrite. + type: string + name: + description: The name of the origin. This is an arbitrary + value. However, this value needs to be unique under + the endpoint. Changing this forces a new resource + to be created. + type: string + value: + description: The value of the header. Only needed + when action is set to Append or overwrite. + type: string + type: object + type: array + modifyResponseHeaderAction: + description: A modify_response_header_action block as defined + below. + items: + properties: + action: + description: Action to be executed on a header value. + Valid values are Append, Delete and Overwrite. + type: string + name: + description: The name of the origin. This is an arbitrary + value. However, this value needs to be unique under + the endpoint. Changing this forces a new resource + to be created. + type: string + value: + description: The value of the header. Only needed + when action is set to Append or overwrite. + type: string + type: object + type: array + urlRedirectAction: + description: A url_redirect_action block as defined below. + items: + properties: + fragment: + description: 'Specifies the fragment part of the URL. + This value must not start with a #.' + type: string + hostname: + description: Specifies the hostname part of the URL. + type: string + path: + description: Specifies the path part of the URL. This + value must begin with a /. + type: string + protocol: + description: Specifies the protocol part of the URL. + Valid values are MatchRequest, Http and Https. + type: string + queryString: + description: Specifies the query string part of the + URL. This value must not start with a ? or & and + must be in = format separated by &. + type: string + redirectType: + description: Type of the redirect. Valid values are + Found, Moved, PermanentRedirect and TemporaryRedirect. + type: string + type: object + type: array + urlRewriteAction: + description: A url_rewrite_action block as defined below. + items: + properties: + destination: + description: This value must start with a / and can't + be longer than 260 characters. + type: string + preserveUnmatchedPath: + description: Defaults to true. + type: boolean + sourcePattern: + description: This value must start with a / and can't + be longer than 260 characters. + type: string + type: object + type: array + type: object + type: array + isCompressionEnabled: + description: Indicates whether compression is to be enabled. + type: boolean + isHttpAllowed: + description: Defaults to true. + type: boolean + isHttpsAllowed: + description: Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + optimizationType: + description: What types of optimization should this CDN Endpoint + optimize for? Possible values include DynamicSiteAcceleration, + GeneralMediaStreaming, GeneralWebDelivery, LargeFileDownload + and VideoOnDemandMediaStreaming. + type: string + origin: + description: The set of origins of the CDN endpoint. When multiple + origins exist, the first origin will be used as primary and + rest will be used as failover options. Each origin block supports + fields documented below. Changing this forces a new resource + to be created. + items: + properties: + hostName: + description: A string that determines the hostname/IP address + of the origin server. This string can be a domain name, + Storage Account endpoint, Web App endpoint, IPv4 address + or IPv6 address. Changing this forces a new resource to + be created. + type: string + httpPort: + description: The HTTP port of the origin. Defaults to 80. + Changing this forces a new resource to be created. + type: number + httpsPort: + description: The HTTPS port of the origin. Defaults to 443. + Changing this forces a new resource to be created. + type: number + name: + description: The name of the origin. This is an arbitrary + value. However, this value needs to be unique under the + endpoint. Changing this forces a new resource to be created. + type: string + type: object + type: array + originHostHeader: + description: The host header CDN provider will send along with + content requests to origins. + type: string + originPath: + description: The path used at for origin requests. + type: string + probePath: + description: the path to a file hosted on the origin which helps + accelerate delivery of the dynamic content and calculate the + most optimal routes for the CDN. This is relative to the origin_path. + type: string + querystringCachingBehaviour: + description: Sets query string caching behavior. Allowed values + are IgnoreQueryString, BypassCaching and UseQueryString. NotSet + value can be used for Premium Verizon CDN profile. Defaults + to IgnoreQueryString. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1197,9 +1863,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: origin is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.origin) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.origin) + || has(self.initProvider.origin)' status: description: EndpointStatus defines the observed state of Endpoint. properties: diff --git a/package/crds/cdn.azure.upbound.io_frontdoorcustomdomainassociations.yaml b/package/crds/cdn.azure.upbound.io_frontdoorcustomdomainassociations.yaml index 7b47fb130..64f7d4b08 100644 --- a/package/crds/cdn.azure.upbound.io_frontdoorcustomdomainassociations.yaml +++ b/package/crds/cdn.azure.upbound.io_frontdoorcustomdomainassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoorcustomdomainassociations.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -234,21 +233,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/cdn.azure.upbound.io_frontdoorcustomdomains.yaml b/package/crds/cdn.azure.upbound.io_frontdoorcustomdomains.yaml index 6dd4dde94..09a0690db 100644 --- a/package/crds/cdn.azure.upbound.io_frontdoorcustomdomains.yaml +++ b/package/crds/cdn.azure.upbound.io_frontdoorcustomdomains.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoorcustomdomains.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -255,21 +254,70 @@ spec: type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + hostName: + description: The host name of the domain. The host_name field + must be the FQDN of your domain(e.g. contoso.fabrikam.com). + Changing this forces a new Front Door Custom Domain to be created. + type: string + tls: + description: A tls block as defined below. + items: + properties: + cdnFrontdoorSecretId: + description: Resource ID of the Front Door Secret. + type: string + certificateType: + description: Defines the source of the SSL certificate. + Possible values include CustomerCertificate and ManagedCertificate. + Defaults to ManagedCertificate. + type: string + minimumTlsVersion: + description: TLS protocol version that will be used for + Https. Possible values include TLS10 and TLS12. Defaults + to TLS12. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -443,9 +491,13 @@ spec: type: object x-kubernetes-validations: - message: hostName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.hostName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.hostName) + || has(self.initProvider.hostName)' - message: tls is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tls) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tls) + || has(self.initProvider.tls)' status: description: FrontdoorCustomDomainStatus defines the observed state of FrontdoorCustomDomain. diff --git a/package/crds/cdn.azure.upbound.io_frontdoorendpoints.yaml b/package/crds/cdn.azure.upbound.io_frontdoorendpoints.yaml index 314c782e0..46f569cf9 100644 --- a/package/crds/cdn.azure.upbound.io_frontdoorendpoints.yaml +++ b/package/crds/cdn.azure.upbound.io_frontdoorendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoorendpoints.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -159,21 +158,56 @@ spec: to the Front Door Endpoint. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Specifies if this Front Door Endpoint is enabled? + Defaults to true. + type: boolean + tags: + additionalProperties: + type: string + description: Specifies a mapping of tags which should be assigned + to the Front Door Endpoint. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/cdn.azure.upbound.io_frontdoororigingroups.yaml b/package/crds/cdn.azure.upbound.io_frontdoororigingroups.yaml index 250381d30..88461549b 100644 --- a/package/crds/cdn.azure.upbound.io_frontdoororigingroups.yaml +++ b/package/crds/cdn.azure.upbound.io_frontdoororigingroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoororigingroups.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -171,9 +170,6 @@ spec: that is made. Possible values are GET and HEAD. Defaults to HEAD. type: string - required: - - intervalInSeconds - - protocol type: object type: array loadBalancing: @@ -209,21 +205,103 @@ spec: on this host. Defaults to true. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + healthProbe: + description: A health_probe block as defined below. + items: + properties: + intervalInSeconds: + description: Specifies the number of seconds between health + probes. Possible values are between 5 and 31536000 seconds + (inclusive). + type: number + path: + description: Specifies the path relative to the origin that + is used to determine the health of the origin. Defaults + to /. + type: string + protocol: + description: Specifies the protocol to use for health probe. + Possible values are Http and Https. + type: string + requestType: + description: Specifies the type of health probe request + that is made. Possible values are GET and HEAD. Defaults + to HEAD. + type: string + type: object + type: array + loadBalancing: + description: A load_balancing block as defined below. + items: + properties: + additionalLatencyInMilliseconds: + description: Specifies the additional latency in milliseconds + for probes to fall into the lowest latency bucket. Possible + values are between 0 and 1000 milliseconds (inclusive). + Defaults to 50. + type: number + sampleSize: + description: Specifies the number of samples to consider + for load balancing decisions. Possible values are between + 0 and 255 (inclusive). Defaults to 4. + type: number + successfulSamplesRequired: + description: Specifies the number of samples within the + sample period that must succeed. Possible values are between + 0 and 255 (inclusive). Defaults to 3. + type: number + type: object + type: array + restoreTrafficTimeToHealedOrNewEndpointInMinutes: + description: Specifies the amount of time which should elapse + before shifting traffic to another endpoint when a healthy endpoint + becomes unhealthy or a new endpoint is added. Possible values + are between 0 and 50 minutes (inclusive). Default is 10 minutes. + type: number + sessionAffinityEnabled: + description: Specifies whether session affinity should be enabled + on this host. Defaults to true. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -397,7 +475,9 @@ spec: type: object x-kubernetes-validations: - message: loadBalancing is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.loadBalancing) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.loadBalancing) + || has(self.initProvider.loadBalancing)' status: description: FrontdoorOriginGroupStatus defines the observed state of FrontdoorOriginGroup. diff --git a/package/crds/cdn.azure.upbound.io_frontdoororigins.yaml b/package/crds/cdn.azure.upbound.io_frontdoororigins.yaml index f97925de5..a693a597c 100644 --- a/package/crds/cdn.azure.upbound.io_frontdoororigins.yaml +++ b/package/crds/cdn.azure.upbound.io_frontdoororigins.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoororigins.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -518,21 +517,95 @@ spec: 500. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + certificateNameCheckEnabled: + description: Specifies whether certificate name checks are enabled + for this origin. + type: boolean + enabled: + description: Should the origin be enabled? Possible values are + true or false. Defaults to true. + type: boolean + healthProbesEnabled: + description: Should the origin be enabled? Possible values are + true or false. Defaults to true. + type: boolean + httpPort: + description: The value of the HTTP port. Must be between 1 and + 65535. Defaults to 80. + type: number + httpsPort: + description: The value of the HTTPS port. Must be between 1 and + 65535. Defaults to 443. + type: number + priority: + description: Priority of origin in given origin group for load + balancing. Higher priorities will not be used for load balancing + if any lower priority origin is healthy. Must be between 1 and + 5 (inclusive). Defaults to 1. + type: number + privateLink: + description: A private_link block as defined below. + items: + properties: + requestMessage: + description: Specifies the request message that will be + submitted to the private_link_target_id when requesting + the private link endpoint connection. Values must be between + 1 and 140 characters in length. Defaults to Access request + for CDN FrontDoor Private Link Origin. + type: string + targetType: + description: Specifies the type of target for this Private + Link Endpoint. Possible values are blob, blob_secondary, + web and sites. + type: string + type: object + type: array + weight: + description: The weight of the origin in a given origin group + for load balancing. Must be between 1 and 1000. Defaults to + 500. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -706,7 +779,9 @@ spec: type: object x-kubernetes-validations: - message: certificateNameCheckEnabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.certificateNameCheckEnabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.certificateNameCheckEnabled) + || has(self.initProvider.certificateNameCheckEnabled)' status: description: FrontdoorOriginStatus defines the observed state of FrontdoorOrigin. properties: diff --git a/package/crds/cdn.azure.upbound.io_frontdoorprofiles.yaml b/package/crds/cdn.azure.upbound.io_frontdoorprofiles.yaml index b7a7113f0..6fe6dba58 100644 --- a/package/crds/cdn.azure.upbound.io_frontdoorprofiles.yaml +++ b/package/crds/cdn.azure.upbound.io_frontdoorprofiles.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoorprofiles.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -164,21 +163,61 @@ spec: description: Specifies a mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + responseTimeoutSeconds: + description: Specifies the maximum response timeout in seconds. + Possible values are between 16 and 240 seconds (inclusive). + Defaults to 120 seconds. + type: number + skuName: + description: Specifies the SKU for this Front Door Profile. Possible + values include Standard_AzureFrontDoor and Premium_AzureFrontDoor. + Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: Specifies a mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -352,7 +391,9 @@ spec: type: object x-kubernetes-validations: - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: FrontdoorProfileStatus defines the observed state of FrontdoorProfile. properties: diff --git a/package/crds/cdn.azure.upbound.io_frontdoorroutes.yaml b/package/crds/cdn.azure.upbound.io_frontdoorroutes.yaml index 756d132a7..e85627f05 100644 --- a/package/crds/cdn.azure.upbound.io_frontdoorroutes.yaml +++ b/package/crds/cdn.azure.upbound.io_frontdoorroutes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoorroutes.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -551,21 +550,117 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + cache: + description: A cache block as defined below. + items: + properties: + compressionEnabled: + description: Is content compression enabled? Possible values + are true or false. Defaults to false. + type: boolean + contentTypesToCompress: + description: A list of one or more Content types (formerly + known as MIME types) to compress. Possible values include + application/eot, application/font, application/font-sfnt, + application/javascript, application/json, application/opentype, + application/otf, application/pkcs7-mime, application/truetype, + application/ttf, application/vnd.ms-fontobject, application/xhtml+xml, + application/xml, application/xml+rss, application/x-font-opentype, + application/x-font-truetype, application/x-font-ttf, application/x-httpd-cgi, + application/x-mpegurl, application/x-opentype, application/x-otf, + application/x-perl, application/x-ttf, application/x-javascript, + font/eot, font/ttf, font/otf, font/opentype, image/svg+xml, + text/css, text/csv, text/html, text/javascript, text/js, + text/plain, text/richtext, text/tab-separated-values, + text/xml, text/x-script, text/x-component or text/x-java-source. + items: + type: string + type: array + queryStringCachingBehavior: + description: Defines how the Front Door Route will cache + requests that include query strings. Possible values include + IgnoreQueryString, IgnoreSpecifiedQueryStrings, IncludeSpecifiedQueryStrings + or UseQueryString. Defaults it IgnoreQueryString. + type: string + queryStrings: + description: Query strings to include or ignore. + items: + type: string + type: array + type: object + type: array + cdnFrontdoorOriginPath: + description: A directory path on the Front Door Origin that can + be used to retrieve content (e.g. contoso.cloudapp.net/originpath). + type: string + enabled: + description: Is this Front Door Route enabled? Possible values + are true or false. Defaults to true. + type: boolean + forwardingProtocol: + description: The Protocol that will be use when forwarding traffic + to backends. Possible values are HttpOnly, HttpsOnly or MatchRequest. + type: string + httpsRedirectEnabled: + description: Automatically redirect HTTP traffic to HTTPS traffic? + Possible values are true or false. Defaults to true. + type: boolean + linkToDefaultDomain: + description: Should this Front Door Route be linked to the default + endpoint? Possible values include true or false. Defaults to + true. + type: boolean + patternsToMatch: + description: The route patterns of the rule. + items: + type: string + type: array + supportedProtocols: + description: One or more Protocols supported by this Front Door + Route. Possible values are Http or Https. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -739,9 +834,13 @@ spec: type: object x-kubernetes-validations: - message: patternsToMatch is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.patternsToMatch) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.patternsToMatch) + || has(self.initProvider.patternsToMatch)' - message: supportedProtocols is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.supportedProtocols) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.supportedProtocols) + || has(self.initProvider.supportedProtocols)' status: description: FrontdoorRouteStatus defines the observed state of FrontdoorRoute. properties: diff --git a/package/crds/cdn.azure.upbound.io_frontdoorrules.yaml b/package/crds/cdn.azure.upbound.io_frontdoorrules.yaml index 3fea17907..b6bd2ed42 100644 --- a/package/crds/cdn.azure.upbound.io_frontdoorrules.yaml +++ b/package/crds/cdn.azure.upbound.io_frontdoorrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoorrules.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -87,9 +86,6 @@ spec: value: description: The value to append or overwrite. type: string - required: - - headerAction - - headerName type: object type: array responseHeaderAction: @@ -107,9 +103,6 @@ spec: value: description: The value to append or overwrite. type: string - required: - - headerAction - - headerName type: object type: array routeConfigurationOverrideAction: @@ -302,9 +295,6 @@ spec: Possible values include Moved, Found , TemporaryRedirect or PermanentRedirect. type: string - required: - - destinationHostname - - redirectType type: object type: array urlRewriteAction: @@ -328,9 +318,6 @@ spec: to match all URL paths use a forward slash "/" as the source pattern value. type: string - required: - - destination - - sourcePattern type: object type: array type: object @@ -450,8 +437,6 @@ spec: or RegEx. Details can be found in the Condition Operator List below. type: string - required: - - operator type: object type: array cookiesCondition: @@ -492,9 +477,6 @@ spec: items: type: string type: array - required: - - cookieName - - operator type: object type: array hostNameCondition: @@ -531,8 +513,6 @@ spec: items: type: string type: array - required: - - operator type: object type: array httpVersionCondition: @@ -561,8 +541,6 @@ spec: or RegEx. Details can be found in the Condition Operator List below. type: string - required: - - matchValues type: object type: array isDeviceCondition: @@ -631,9 +609,6 @@ spec: items: type: string type: array - required: - - operator - - postArgsName type: object type: array queryStringCondition: @@ -670,8 +645,6 @@ spec: items: type: string type: array - required: - - operator type: object type: array remoteAddressCondition: @@ -737,9 +710,6 @@ spec: items: type: string type: array - required: - - matchValues - - operator type: object type: array requestHeaderCondition: @@ -780,9 +750,6 @@ spec: items: type: string type: array - required: - - headerName - - operator type: object type: array requestMethodCondition: @@ -812,8 +779,6 @@ spec: or RegEx. Details can be found in the Condition Operator List below. type: string - required: - - matchValues type: object type: array requestSchemeCondition: @@ -879,8 +844,6 @@ spec: items: type: string type: array - required: - - operator type: object type: array serverPortCondition: @@ -909,9 +872,6 @@ spec: or RegEx. Details can be found in the Condition Operator List below. type: string - required: - - matchValues - - operator type: object type: array socketAddressCondition: @@ -969,8 +929,6 @@ spec: or RegEx. Details can be found in the Condition Operator List below. type: string - required: - - matchValues type: object type: array urlFileExtensionCondition: @@ -1008,9 +966,6 @@ spec: items: type: string type: array - required: - - matchValues - - operator type: object type: array urlFilenameCondition: @@ -1047,9 +1002,6 @@ spec: items: type: string type: array - required: - - matchValues - - operator type: object type: array urlPathCondition: @@ -1086,8 +1038,6 @@ spec: items: type: string type: array - required: - - operator type: object type: array type: object @@ -1100,21 +1050,862 @@ spec: value. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + actions: + description: An actions block as defined below. + items: + properties: + requestHeaderAction: + description: A request_header_action block as defined below. + items: + properties: + headerAction: + description: The action to be taken on the specified + header_name. Possible values include Append, Overwrite + or Delete. + type: string + headerName: + description: The name of the header to modify. + type: string + value: + description: The value to append or overwrite. + type: string + type: object + type: array + responseHeaderAction: + description: A response_header_action block as defined below. + items: + properties: + headerAction: + description: The action to be taken on the specified + header_name. Possible values include Append, Overwrite + or Delete. + type: string + headerName: + description: The name of the header to modify. + type: string + value: + description: The value to append or overwrite. + type: string + type: object + type: array + routeConfigurationOverrideAction: + description: A route_configuration_override_action block + as defined below. + items: + properties: + cacheBehavior: + description: HonorOrigin the Front Door will always + honor origin response header directive. If the origin + directive is missing, Front Door will cache contents + anywhere from 1 to 3 days. OverrideAlways the TTL + value returned from your Front Door Origin is overwritten + with the value specified in the action. This behavior + will only be applied if the response is cacheable. + OverrideIfOriginMissing if no TTL value gets returned + from your Front Door Origin, the rule sets the TTL + to the value specified in the action. This behavior + will only be applied if the response is cacheable. + Disabled the Front Door will not cache the response + contents, irrespective of Front Door Origin response + directives. Possible values include HonorOrigin, + OverrideAlways, OverrideIfOriginMissing or Disabled. + type: string + cacheDuration: + description: When Cache behavior is set to Override + or SetIfMissing, this field specifies the cache + duration to use. The maximum duration is 366 days + specified in the d.HH:MM:SS format(e.g. 365.23:59:59). + If the desired maximum cache duration is less than + 1 day then the maximum cache duration should be + specified in the HH:MM:SS format(e.g. 23:59:59). + type: string + compressionEnabled: + description: Should the Front Door dynamically compress + the content? Possible values include true or false. + type: boolean + forwardingProtocol: + description: The forwarding protocol the request will + be redirected as. This overrides the configuration + specified in the route to be associated with. Possible + values include MatchRequest, HttpOnly or HttpsOnly. + type: string + queryStringCachingBehavior: + description: IncludeSpecifiedQueryStrings query strings + specified in the query_string_parameters field get + included when the cache key gets generated. UseQueryString + cache every unique URL, each unique URL will have + its own cache key. IgnoreSpecifiedQueryStrings query + strings specified in the query_string_parameters + field get excluded when the cache key gets generated. + IgnoreQueryString query strings aren't considered + when the cache key gets generated. Possible values + include IgnoreQueryString, UseQueryString, IgnoreSpecifiedQueryStrings + or IncludeSpecifiedQueryStrings. + type: string + queryStringParameters: + description: A list of query string parameter names. + items: + type: string + type: array + type: object + type: array + urlRedirectAction: + description: A url_redirect_action block as defined below. + You may not have a url_redirect_action and a url_rewrite_action + defined in the same actions block. + items: + properties: + destinationFragment: + description: The fragment to use in the redirect. + The value must be a string between 0 and 1024 characters + in length, leave blank to preserve the incoming + fragment. Defaults to an empty string. Defaults + to "". + type: string + destinationHostname: + description: The host name you want the request to + be redirected to. The value must be a string between + 0 and 2048 characters in length, leave blank to + preserve the incoming host. + type: string + destinationPath: + description: The path to use in the redirect. The + value must be a string and include the leading /, + leave blank to preserve the incoming path. Defaults + to an empty string. Defaults to "". + type: string + queryString: + description: The query string used in the redirect + URL. The value must be in the = or ={action_server_variable} + format and must not include the leading ?, leave + blank to preserve the incoming query string. Maximum + allowed length for this field is 2048 characters. + Defaults to an empty string. Defaults to "". + type: string + redirectProtocol: + description: The protocol the request will be redirected + as. Possible values include MatchRequest, Http or + Https. Defaults to MatchRequest. + type: string + redirectType: + description: The response type to return to the requestor. + Possible values include Moved, Found , TemporaryRedirect + or PermanentRedirect. + type: string + type: object + type: array + urlRewriteAction: + description: A url_rewrite_action block as defined below. + You may not have a url_rewrite_action and a url_redirect_action + defined in the same actions block. + items: + properties: + destination: + description: The destination path to use in the rewrite. + The destination path overwrites the source pattern. + type: string + preserveUnmatchedPath: + description: Append the remaining path after the source + pattern to the new destination path? Possible values + true or false. Defaults to false. + type: boolean + sourcePattern: + description: The source pattern in the URL path to + replace. This uses prefix-based matching. For example, + to match all URL paths use a forward slash "/" as + the source pattern value. + type: string + type: object + type: array + type: object + type: array + behaviorOnMatch: + description: If this rule is a match should the rules engine continue + processing the remaining rules or stop? Possible values are + Continue and Stop. Defaults to Continue. + type: string + conditions: + description: A conditions block as defined below. + items: + properties: + clientPortCondition: + description: A client_port_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + type: object + type: array + cookiesCondition: + description: A cookies_condition block as defined below. + items: + properties: + cookieName: + description: A string value representing the name + of the cookie. + type: string + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + transforms: + description: A Conditional operator. Possible values + include Lowercase, RemoveNulls, Trim, Uppercase, + UrlDecode or UrlEncode. Details can be found in + the Condition Transform List below. + items: + type: string + type: array + type: object + type: array + hostNameCondition: + description: A host_name_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + transforms: + description: A Conditional operator. Possible values + include Lowercase, RemoveNulls, Trim, Uppercase, + UrlDecode or UrlEncode. Details can be found in + the Condition Transform List below. + items: + type: string + type: array + type: object + type: array + httpVersionCondition: + description: A http_version_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + type: object + type: array + isDeviceCondition: + description: A is_device_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + type: object + type: array + postArgsCondition: + description: A post_args_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + postArgsName: + description: A string value representing the name + of the POST argument. + type: string + transforms: + description: A Conditional operator. Possible values + include Lowercase, RemoveNulls, Trim, Uppercase, + UrlDecode or UrlEncode. Details can be found in + the Condition Transform List below. + items: + type: string + type: array + type: object + type: array + queryStringCondition: + description: A query_string_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + transforms: + description: A Conditional operator. Possible values + include Lowercase, RemoveNulls, Trim, Uppercase, + UrlDecode or UrlEncode. Details can be found in + the Condition Transform List below. + items: + type: string + type: array + type: object + type: array + remoteAddressCondition: + description: A remote_address_condition block as defined + below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + type: object + type: array + requestBodyCondition: + description: A request_body_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + transforms: + description: A Conditional operator. Possible values + include Lowercase, RemoveNulls, Trim, Uppercase, + UrlDecode or UrlEncode. Details can be found in + the Condition Transform List below. + items: + type: string + type: array + type: object + type: array + requestHeaderCondition: + description: A request_header_condition block as defined + below. + items: + properties: + headerName: + description: The name of the header to modify. + type: string + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + transforms: + description: A Conditional operator. Possible values + include Lowercase, RemoveNulls, Trim, Uppercase, + UrlDecode or UrlEncode. Details can be found in + the Condition Transform List below. + items: + type: string + type: array + type: object + type: array + requestMethodCondition: + description: A request_method_condition block as defined + below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + type: object + type: array + requestSchemeCondition: + description: A request_scheme_condition block as defined + below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + type: object + type: array + requestUriCondition: + description: A request_uri_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + transforms: + description: A Conditional operator. Possible values + include Lowercase, RemoveNulls, Trim, Uppercase, + UrlDecode or UrlEncode. Details can be found in + the Condition Transform List below. + items: + type: string + type: array + type: object + type: array + serverPortCondition: + description: A server_port_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + type: object + type: array + socketAddressCondition: + description: A socket_address_condition block as defined + below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + type: object + type: array + sslProtocolCondition: + description: A ssl_protocol_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + type: object + type: array + urlFileExtensionCondition: + description: A url_file_extension_condition block as defined + below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + transforms: + description: A Conditional operator. Possible values + include Lowercase, RemoveNulls, Trim, Uppercase, + UrlDecode or UrlEncode. Details can be found in + the Condition Transform List below. + items: + type: string + type: array + type: object + type: array + urlFilenameCondition: + description: A url_filename_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + transforms: + description: A Conditional operator. Possible values + include Lowercase, RemoveNulls, Trim, Uppercase, + UrlDecode or UrlEncode. Details can be found in + the Condition Transform List below. + items: + type: string + type: array + type: object + type: array + urlPathCondition: + description: A url_path_condition block as defined below. + items: + properties: + matchValues: + description: One or more string or integer values(e.g. + "1") representing the value of the request path + to match. Don't include the leading slash (/). If + multiple values are specified, they're evaluated + using OR logic. + items: + type: string + type: array + negateCondition: + description: If true operator becomes the opposite + of its value. Possible values true or false. Defaults + to false. Details can be found in the Condition + Operator List below. + type: boolean + operator: + description: A Conditional operator. Possible values + include Any, Equal, Contains, BeginsWith, EndsWith, + LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual + or RegEx. Details can be found in the Condition + Operator List below. + type: string + transforms: + description: A Conditional operator. Possible values + include Lowercase, RemoveNulls, Trim, Uppercase, + UrlDecode or UrlEncode. Details can be found in + the Condition Transform List below. + items: + type: string + type: array + type: object + type: array + type: object + type: array + order: + description: The order in which the rules will be applied for + the Front Door Endpoint. The order value should be sequential + and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser + order value will be applied before a rule with a greater order + value. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1288,9 +2079,13 @@ spec: type: object x-kubernetes-validations: - message: actions is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.actions) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.actions) + || has(self.initProvider.actions)' - message: order is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.order) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.order) + || has(self.initProvider.order)' status: description: FrontdoorRuleStatus defines the observed state of FrontdoorRule. properties: diff --git a/package/crds/cdn.azure.upbound.io_frontdoorrulesets.yaml b/package/crds/cdn.azure.upbound.io_frontdoorrulesets.yaml index 79cb14023..5fdad10eb 100644 --- a/package/crds/cdn.azure.upbound.io_frontdoorrulesets.yaml +++ b/package/crds/cdn.azure.upbound.io_frontdoorrulesets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoorrulesets.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -148,21 +147,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/cdn.azure.upbound.io_profiles.yaml b/package/crds/cdn.azure.upbound.io_profiles.yaml index eb039504b..4cc5668f1 100644 --- a/package/crds/cdn.azure.upbound.io_profiles.yaml +++ b/package/crds/cdn.azure.upbound.io_profiles.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: profiles.cdn.azure.upbound.io spec: group: cdn.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -163,21 +162,61 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + sku: + description: The pricing related information of current CDN profile. + Accepted values are Standard_Akamai, Standard_ChinaCdn, Standard_Microsoft, + Standard_Verizon or Premium_Verizon. Changing this forces a + new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -351,9 +390,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: ProfileStatus defines the observed state of Profile. properties: diff --git a/package/crds/certificateregistration.azure.upbound.io_appservicecertificateorders.yaml b/package/crds/certificateregistration.azure.upbound.io_appservicecertificateorders.yaml index daba761de..0f8b31db7 100644 --- a/package/crds/certificateregistration.azure.upbound.io_appservicecertificateorders.yaml +++ b/package/crds/certificateregistration.azure.upbound.io_appservicecertificateorders.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appservicecertificateorders.certificateregistration.azure.upbound.io spec: group: certificateregistration.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -180,21 +179,77 @@ spec: to 1. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoRenew: + description: true if the certificate should be automatically renewed + when it expires; otherwise, false. Defaults to true. + type: boolean + csr: + description: Last CSR that was created for this order. + type: string + distinguishedName: + description: The Distinguished Name for the App Service Certificate + Order. + type: string + keySize: + description: Certificate key size. Defaults to 2048. + type: number + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + Currently the only valid value is global. + type: string + productType: + description: Certificate product type, such as Standard or WildCard. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + validityInYears: + description: Duration in years (must be between 1 and 3). Defaults + to 1. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -368,7 +423,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: AppServiceCertificateOrderStatus defines the observed state of AppServiceCertificateOrder. diff --git a/package/crds/cognitiveservices.azure.upbound.io_accounts.yaml b/package/crds/cognitiveservices.azure.upbound.io_accounts.yaml index 736098a33..1c388e080 100644 --- a/package/crds/cognitiveservices.azure.upbound.io_accounts.yaml +++ b/package/crds/cognitiveservices.azure.upbound.io_accounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accounts.cognitiveservices.azure.upbound.io spec: group: cognitiveservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -108,8 +107,6 @@ spec: description: The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account. type: string - required: - - keyVaultKeyId type: object type: array dynamicThrottlingEnabled: @@ -137,8 +134,6 @@ spec: values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array kind: @@ -290,8 +285,6 @@ spec: type: object type: object type: array - required: - - defaultAction type: object type: array outboundNetworkAccessRestricted: @@ -402,8 +395,6 @@ spec: storageAccountId: description: Full resource id of a Microsoft.Storage resource. type: string - required: - - storageAccountId type: object type: array tags: @@ -412,21 +403,199 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customQuestionAnsweringSearchServiceId: + description: If kind is TextAnalytics this specifies the ID of + the Search service. + type: string + customSubdomainName: + description: The subdomain name used for token-based authentication. + Changing this forces a new resource to be created. + type: string + customerManagedKey: + description: A customer_managed_key block as documented below. + items: + properties: + identityClientId: + description: The Client ID of the User Assigned Identity + that has access to the key. This property only needs to + be specified when there're multiple identities attached + to the Cognitive Account. + type: string + keyVaultKeyId: + description: The ID of the Key Vault Key which should be + used to Encrypt the data in this Cognitive Account. + type: string + type: object + type: array + dynamicThrottlingEnabled: + description: Whether to enable the dynamic throttling for this + Cognitive Service Account. + type: boolean + fqdns: + description: List of FQDNs allowed for the Cognitive Account. + items: + type: string + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Cognitive Account. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Cognitive Account. Possible + values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + kind: + description: Specifies the type of Cognitive Service Account that + should be created. Possible values are Academic, AnomalyDetector, + Bing.Autosuggest, Bing.Autosuggest.v7, Bing.CustomSearch, Bing.Search, + Bing.Search.v7, Bing.Speech, Bing.SpellCheck, Bing.SpellCheck.v7, + CognitiveServices, ComputerVision, ContentModerator, CustomSpeech, + CustomVision.Prediction, CustomVision.Training, Emotion, Face, + FormRecognizer, ImmersiveReader, LUIS, LUIS.Authoring, MetricsAdvisor, + OpenAI, Personalizer, QnAMaker, Recommendations, SpeakerRecognition, + Speech, SpeechServices, SpeechTranslation, TextAnalytics, TextTranslation + and WebLM. Changing this forces a new resource to be created. + type: string + localAuthEnabled: + description: Whether local authentication methods is enabled for + the Cognitive Account. Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + metricsAdvisorAadClientId: + description: The Azure AD Client ID (Application ID). This attribute + is only set when kind is MetricsAdvisor. Changing this forces + a new resource to be created. + type: string + metricsAdvisorAadTenantId: + description: The Azure AD Tenant ID. This attribute is only set + when kind is MetricsAdvisor. Changing this forces a new resource + to be created. + type: string + metricsAdvisorSuperUserName: + description: The super user of Metrics Advisor. This attribute + is only set when kind is MetricsAdvisor. Changing this forces + a new resource to be created. + type: string + metricsAdvisorWebsiteName: + description: The website name of Metrics Advisor. This attribute + is only set when kind is MetricsAdvisor. Changing this forces + a new resource to be created. + type: string + networkAcls: + description: A network_acls block as defined below. + items: + properties: + defaultAction: + description: The Default Action to use when no rules match + from ip_rules / virtual_network_rules. Possible values + are Allow and Deny. + type: string + ipRules: + description: One or more IP Addresses, or CIDR Blocks which + should be able to access the Cognitive Account. + items: + type: string + type: array + virtualNetworkRules: + description: A virtual_network_rules block as defined below. + items: + properties: + ignoreMissingVnetServiceEndpoint: + description: Whether ignore missing vnet service endpoint + or not. Default to false. + type: boolean + type: object + type: array + type: object + type: array + outboundNetworkAccessRestricted: + description: Whether outbound network access is restricted for + the Cognitive Account. Defaults to false. + type: boolean + publicNetworkAccessEnabled: + description: Whether public network access is allowed for the + Cognitive Account. Defaults to true. + type: boolean + qnaRuntimeEndpoint: + description: A URL to link a QnAMaker cognitive account to a QnA + runtime. + type: string + skuName: + description: Specifies the SKU Name for this Cognitive Service + Account. Possible values are F0, F1, S0, S, S1, S2, S3, S4, + S5, S6, P0, P1, P2, E0 and DC0. + type: string + storage: + description: A storage block as defined below. + items: + properties: + identityClientId: + description: The client ID of the managed identity associated + with the storage resource. + type: string + storageAccountId: + description: Full resource id of a Microsoft.Storage resource. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -600,11 +769,17 @@ spec: type: object x-kubernetes-validations: - message: kind is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.kind) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.kind) + || has(self.initProvider.kind)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: AccountStatus defines the observed state of Account. properties: diff --git a/package/crds/communication.azure.upbound.io_services.yaml b/package/crds/communication.azure.upbound.io_services.yaml index bf66b9ca5..6f0f468ec 100644 --- a/package/crds/communication.azure.upbound.io_services.yaml +++ b/package/crds/communication.azure.upbound.io_services.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: services.communication.azure.upbound.io spec: group: communication.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -163,21 +162,60 @@ spec: Communication Service. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dataLocation: + description: The location where the Communication service stores + its data at rest. Possible values are Africa, Asia Pacific, + Australia, Brazil, Canada, Europe, France, Germany, India, Japan, + Korea, Norway, Switzerland, UAE, UK and United States. Defaults + to United States. Changing this forces a new Communication Service + to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Communication Service. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/compute.azure.upbound.io_availabilitysets.yaml b/package/crds/compute.azure.upbound.io_availabilitysets.yaml index 92a578258..fa0c082c6 100644 --- a/package/crds/compute.azure.upbound.io_availabilitysets.yaml +++ b/package/crds/compute.azure.upbound.io_availabilitysets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: availabilitysets.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -177,21 +176,74 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + managed: + description: Specifies whether the availability set is managed + or not. Possible values are true (to specify aligned) or false + (to specify classic). Default is true. Changing this forces + a new resource to be created. + type: boolean + platformFaultDomainCount: + description: Specifies the number of fault domains that are used. + Defaults to 3. Changing this forces a new resource to be created. + type: number + platformUpdateDomainCount: + description: Specifies the number of update domains that are used. + Defaults to 5. Changing this forces a new resource to be created. + type: number + proximityPlacementGroupId: + description: The ID of the Proximity Placement Group to which + this Virtual Machine should be assigned. Changing this forces + a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -365,7 +417,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: AvailabilitySetStatus defines the observed state of AvailabilitySet. properties: diff --git a/package/crds/compute.azure.upbound.io_capacityreservationgroups.yaml b/package/crds/compute.azure.upbound.io_capacityreservationgroups.yaml index 85376584f..c0a6bc498 100644 --- a/package/crds/compute.azure.upbound.io_capacityreservationgroups.yaml +++ b/package/crds/compute.azure.upbound.io_capacityreservationgroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: capacityreservationgroups.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -166,21 +165,62 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure location where the Capacity Reservation + Group exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zones: + description: Specifies a list of Availability Zones for this Capacity + Reservation Group. Changing this forces a new resource to be + created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -354,7 +394,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: CapacityReservationGroupStatus defines the observed state of CapacityReservationGroup. diff --git a/package/crds/compute.azure.upbound.io_capacityreservations.yaml b/package/crds/compute.azure.upbound.io_capacityreservations.yaml index 5be82b94c..b07f548ff 100644 --- a/package/crds/compute.azure.upbound.io_capacityreservations.yaml +++ b/package/crds/compute.azure.upbound.io_capacityreservations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: capacityreservations.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -161,9 +160,6 @@ spec: description: Name of the sku, such as Standard_F2. Changing this forces a new resource to be created. type: string - required: - - capacity - - name type: object type: array tags: @@ -176,21 +172,70 @@ spec: Reservation. Changing this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + sku: + description: A sku block as defined below. + items: + properties: + capacity: + description: Specifies the number of instances to be reserved. + It must be a positive integer and not exceed the quota + in the subscription. + type: number + name: + description: Name of the sku, such as Standard_F2. Changing + this forces a new resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zone: + description: Specifies the Availability Zone for this Capacity + Reservation. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -364,7 +409,9 @@ spec: type: object x-kubernetes-validations: - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: CapacityReservationStatus defines the observed state of CapacityReservation. properties: diff --git a/package/crds/compute.azure.upbound.io_dedicatedhosts.yaml b/package/crds/compute.azure.upbound.io_dedicatedhosts.yaml index 14643f56e..25b1768f4 100644 --- a/package/crds/compute.azure.upbound.io_dedicatedhosts.yaml +++ b/package/crds/compute.azure.upbound.io_dedicatedhosts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dedicatedhosts.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -114,21 +113,84 @@ spec: required: - dedicatedHostGroupId type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoReplaceOnFailure: + description: Should the Dedicated Host automatically be replaced + in case of a Hardware Failure? Defaults to true. + type: boolean + licenseType: + description: Specifies the software license type that will be + applied to the VMs deployed on the Dedicated Host. Possible + values are None, Windows_Server_Hybrid and Windows_Server_Perpetual. + Defaults to None. + type: string + location: + description: Specify the supported Azure location where the resource + exists. Changing this forces a new resource to be created. + type: string + platformFaultDomain: + description: Specify the fault domain of the Dedicated Host Group + in which to create the Dedicated Host. Changing this forces + a new resource to be created. + type: number + skuName: + description: Specify the SKU name of the Dedicated Host. Possible + values are DADSv5-Type1, DASv4-Type1, DASv4-Type2, DASv5-Type1, + DCSv2-Type1, DDSv4-Type1, DDSv4-Type2, DDSv5-Type1, DSv3-Type1, + DSv3-Type2, DSv3-Type3, DSv3-Type4, DSv4-Type1, DSv4-Type2, + DSv5-Type1, EADSv5-Type1, EASv4-Type1, EASv4-Type2, EASv5-Type1, + EDSv4-Type1, EDSv4-Type2, EDSv5-Type1, ESv3-Type1, ESv3-Type2, + ESv3-Type3, ESv3-Type4, ESv4-Type1, ESv4-Type2, ESv5-Type1, + FSv2-Type2, FSv2-Type3, FSv2-Type4, FXmds-Type1, LSv2-Type1, + LSv3-Type1, MDMSv2MedMem-Type1, MDSv2MedMem-Type1, MMSv2MedMem-Type1, + MS-Type1, MSm-Type1, MSmv2-Type1, MSv2-Type1, MSv2MedMem-Type1, + NVASv4-Type1 and NVSv3-Type1. Changing this forces a new resource + to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -302,11 +364,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: platformFaultDomain is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.platformFaultDomain) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.platformFaultDomain) + || has(self.initProvider.platformFaultDomain)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: DedicatedHostStatus defines the observed state of DedicatedHost. properties: diff --git a/package/crds/compute.azure.upbound.io_diskaccesses.yaml b/package/crds/compute.azure.upbound.io_diskaccesses.yaml index 8f0c84a8f..684c92a1f 100644 --- a/package/crds/compute.azure.upbound.io_diskaccesses.yaml +++ b/package/crds/compute.azure.upbound.io_diskaccesses.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: diskaccesses.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,56 @@ spec: Disk Access. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Disk Access should exist. + Changing this forces a new Disk to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Disk Access. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,7 +380,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: DiskAccessStatus defines the observed state of DiskAccess. properties: diff --git a/package/crds/compute.azure.upbound.io_diskencryptionsets.yaml b/package/crds/compute.azure.upbound.io_diskencryptionsets.yaml index 51c542d0d..8cdede8c9 100644 --- a/package/crds/compute.azure.upbound.io_diskencryptionsets.yaml +++ b/package/crds/compute.azure.upbound.io_diskencryptionsets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: diskencryptionsets.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -98,8 +97,6 @@ spec: are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array keyVaultKeyId: @@ -270,21 +267,88 @@ spec: Set. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoKeyRotationEnabled: + description: Boolean flag to specify whether Azure Disk Encryption + Set automatically rotates encryption Key to latest version. + type: boolean + encryptionType: + description: The type of key used to encrypt the data of the disk. + Possible values are EncryptionAtRestWithCustomerKey, EncryptionAtRestWithPlatformAndCustomerKeys + and ConfidentialVmEncryptedWithCustomerKey. Defaults to EncryptionAtRestWithCustomerKey. + Changing this forces a new resource to be created. + type: string + federatedClientId: + description: Multi-tenant application client id to access key + vault in a different tenant. + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Disk Encryption Set. + items: + type: string + type: array + type: + description: The type of Managed Service Identity that is + configured on this Disk Encryption Set. Possible values + are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned + (to enable both). + type: string + type: object + type: array + location: + description: Specifies the Azure Region where the Disk Encryption + Set exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Disk Encryption + Set. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -458,9 +522,13 @@ spec: type: object x-kubernetes-validations: - message: identity is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.identity) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.identity) + || has(self.initProvider.identity)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: DiskEncryptionSetStatus defines the observed state of DiskEncryptionSet. properties: diff --git a/package/crds/compute.azure.upbound.io_galleryapplications.yaml b/package/crds/compute.azure.upbound.io_galleryapplications.yaml index 85b7ff3fb..a8dbffda7 100644 --- a/package/crds/compute.azure.upbound.io_galleryapplications.yaml +++ b/package/crds/compute.azure.upbound.io_galleryapplications.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: galleryapplications.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -180,21 +179,78 @@ spec: description: A mapping of tags to assign to the Gallery Application. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description of the Gallery Application. + type: string + endOfLifeDate: + description: The end of life date in RFC3339 format of the Gallery + Application. + type: string + eula: + description: The End User Licence Agreement of the Gallery Application. + type: string + location: + description: The Azure Region where the Gallery Application exists. + Changing this forces a new resource to be created. + type: string + privacyStatementUri: + description: The URI containing the Privacy Statement associated + with the Gallery Application. + type: string + releaseNoteUri: + description: The URI containing the Release Notes associated with + the Gallery Application. + type: string + supportedOsType: + description: The type of the Operating System supported for the + Gallery Application. Possible values are Linux and Windows. + Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Gallery Application. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -368,9 +424,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: supportedOsType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.supportedOsType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.supportedOsType) + || has(self.initProvider.supportedOsType)' status: description: GalleryApplicationStatus defines the observed state of GalleryApplication. properties: diff --git a/package/crds/compute.azure.upbound.io_galleryapplicationversions.yaml b/package/crds/compute.azure.upbound.io_galleryapplicationversions.yaml index 0be4ad4e8..93940b796 100644 --- a/package/crds/compute.azure.upbound.io_galleryapplicationversions.yaml +++ b/package/crds/compute.azure.upbound.io_galleryapplicationversions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: galleryapplicationversions.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -182,9 +181,6 @@ spec: description: The command to update the Gallery Application. Changing this forces a new resource to be created. type: string - required: - - install - - remove type: object type: array name: @@ -385,26 +381,121 @@ spec: Version. Possible values are Standard_LRS, Premium_LRS and Standard_ZRS. Defaults to Standard_LRS. type: string - required: - - regionalReplicaCount type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enableHealthCheck: + description: Should the Gallery Application reports health. Defaults + to false. + type: boolean + endOfLifeDate: + description: The end of life date in RFC3339 format of the Gallery + Application Version. + type: string + excludeFromLatest: + description: Should the Gallery Application Version be excluded + from the latest filter? If set to true this Gallery Application + Version won't be returned for the latest version. Defaults to + false. + type: boolean + location: + description: The Azure Region where the Gallery Application Version + exists. Changing this forces a new resource to be created. + type: string + manageAction: + description: A manage_action block as defined below. + items: + properties: + install: + description: The command to install the Gallery Application. + Changing this forces a new resource to be created. + type: string + remove: + description: The command to remove the Gallery Application. + Changing this forces a new resource to be created. + type: string + update: + description: The command to update the Gallery Application. + Changing this forces a new resource to be created. + type: string + type: object + type: array + name: + description: The version name of the Gallery Application Version, + such as 1.0.0. Changing this forces a new resource to be created. + type: string + source: + description: A source block as defined below. + items: + properties: + defaultConfigurationLink: + description: The Storage Blob URI of the default configuration. + Changing this forces a new resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Gallery Application + Version. + type: object + targetRegion: + description: One or more target_region blocks as defined below. + items: + properties: + regionalReplicaCount: + description: The number of replicas of the Gallery Application + Version to be created per region. Possible values are + between 1 and 10. + type: number + storageAccountType: + description: The storage account type for the Gallery Application + Version. Possible values are Standard_LRS, Premium_LRS + and Standard_ZRS. Defaults to Standard_LRS. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -578,15 +669,25 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: manageAction is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.manageAction) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.manageAction) + || has(self.initProvider.manageAction)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: source is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.source) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.source) + || has(self.initProvider.source)' - message: targetRegion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetRegion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.targetRegion) + || has(self.initProvider.targetRegion)' status: description: GalleryApplicationVersionStatus defines the observed state of GalleryApplicationVersion. diff --git a/package/crds/compute.azure.upbound.io_images.yaml b/package/crds/compute.azure.upbound.io_images.yaml index 7bc7b6a64..7a0e871cd 100644 --- a/package/crds/compute.azure.upbound.io_images.yaml +++ b/package/crds/compute.azure.upbound.io_images.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: images.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -232,21 +231,129 @@ spec: this forces a new resource to be created. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dataDisk: + description: One or more data_disk elements as defined below. + items: + properties: + blobUri: + description: Specifies the URI in Azure storage of the blob + that you want to use to create the image. + type: string + caching: + description: Specifies the caching mode as ReadWrite, ReadOnly, + or None. The default is None. + type: string + lun: + description: Specifies the logical unit number of the data + disk. + type: number + managedDiskId: + description: Specifies the ID of the managed disk resource + that you want to use to create the image. Changing this + forces a new resource to be created. + type: string + sizeGb: + description: Specifies the size of the image to be created. + The target size can't be smaller than the source size. + type: number + type: object + type: array + hyperVGeneration: + description: The HyperVGenerationType of the VirtualMachine created + from the image as V1, V2. The default is V1. Changing this forces + a new resource to be created. + type: string + location: + description: Specified the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + Changing this forces a new resource to be created. + type: string + osDisk: + description: One or more os_disk elements as defined below. Changing + this forces a new resource to be created. + items: + properties: + blobUri: + description: Specifies the URI in Azure storage of the blob + that you want to use to create the image. Changing this + forces a new resource to be created. + type: string + caching: + description: Specifies the caching mode as ReadWrite, ReadOnly, + or None. The default is None. + type: string + managedDiskId: + description: Specifies the ID of the managed disk resource + that you want to use to create the image. + type: string + osState: + description: Specifies the state of the operating system + contained in the blob. Currently, the only value is Generalized. + Possible values are Generalized and Specialized. + type: string + osType: + description: 'Specifies the type of operating system contained + in the virtual machine image. Possible values are: Windows + or Linux.' + type: string + sizeGb: + description: Specifies the size of the image to be created. + The target size can't be smaller than the source size. + type: number + type: object + type: array + sourceVirtualMachineId: + description: The Virtual Machine ID from which to create the image. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zoneResilient: + description: Is zone resiliency enabled? Defaults to false. Changing + this forces a new resource to be created. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -420,7 +527,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ImageStatus defines the observed state of Image. properties: diff --git a/package/crds/compute.azure.upbound.io_linuxvirtualmachines.yaml b/package/crds/compute.azure.upbound.io_linuxvirtualmachines.yaml index f780511fa..2aecf0b3d 100644 --- a/package/crds/compute.azure.upbound.io_linuxvirtualmachines.yaml +++ b/package/crds/compute.azure.upbound.io_linuxvirtualmachines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linuxvirtualmachines.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -113,9 +112,6 @@ spec: should be configured. Changing this forces a new resource to be created. type: string - required: - - publicKey - - username type: object type: array adminUsername: @@ -229,8 +225,6 @@ spec: description: Specifies the Gallery Application Version resource ID. type: string - required: - - versionId type: object type: array identity: @@ -249,8 +243,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array licenseType: @@ -381,8 +373,6 @@ spec: Defaults to CacheDisk. Changing this forces a new resource to be created. type: string - required: - - option type: object type: array diskEncryptionSetId: @@ -420,9 +410,6 @@ spec: description: Should Write Accelerator be Enabled for this OS Disk? Defaults to false. type: boolean - required: - - caching - - storageAccountType type: object type: array patchAssessmentMode: @@ -456,10 +443,6 @@ spec: Image this Virtual Machine should be created from. Changing this forces a new resource to be created. type: string - required: - - name - - product - - publisher type: object type: array platformFaultDomain: @@ -574,17 +557,12 @@ spec: url: description: The Secret URL of a Key Vault Certificate. type: string - required: - - url type: object type: array keyVaultId: description: The ID of the Key Vault from which all Secrets should be sourced. type: string - required: - - certificate - - keyVaultId type: object type: array secureBootEnabled: @@ -629,11 +607,6 @@ spec: create the virtual machines. Changing this forces a new resource to be created. type: string - required: - - offer - - publisher - - sku - - version type: object type: array tags: @@ -656,8 +629,6 @@ spec: server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. type: string - required: - - enabled type: object type: array userData: @@ -679,21 +650,424 @@ spec: Linux Virtual Machine to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalCapabilities: + description: A additional_capabilities block as defined below. + items: + properties: + ultraSsdEnabled: + description: Should the capacity to enable Data Disks of + the UltraSSD_LRS storage account type be supported on + this Virtual Machine? Defaults to false. + type: boolean + type: object + type: array + adminSshKey: + description: One or more admin_ssh_key blocks as defined below. + Changing this forces a new resource to be created. + items: + properties: + publicKey: + description: The Public Key which should be used for authentication, + which needs to be at least 2048-bit and in ssh-rsa format. + Changing this forces a new resource to be created. + type: string + username: + description: The Username for which this Public SSH Key + should be configured. Changing this forces a new resource + to be created. + type: string + type: object + type: array + adminUsername: + description: The username of the local administrator used for + the Virtual Machine. Changing this forces a new resource to + be created. + type: string + allowExtensionOperations: + description: Should Extension Operations be allowed on this Virtual + Machine? Defaults to true. + type: boolean + availabilitySetId: + description: Specifies the ID of the Availability Set in which + the Virtual Machine should exist. Changing this forces a new + resource to be created. + type: string + bootDiagnostics: + description: A boot_diagnostics block as defined below. + items: + properties: + storageAccountUri: + description: The Primary/Secondary Endpoint for the Azure + Storage Account which should be used to store Boot Diagnostics, + including Console Output and Screenshots from the Hypervisor. + type: string + type: object + type: array + capacityReservationGroupId: + description: Specifies the ID of the Capacity Reservation Group + which the Virtual Machine should be allocated to. + type: string + computerName: + description: Specifies the Hostname which should be used for this + Virtual Machine. If unspecified this defaults to the value for + the name field. If the value of the name field is not a valid + computer_name, then you must specify computer_name. Changing + this forces a new resource to be created. + type: string + dedicatedHostGroupId: + description: The ID of a Dedicated Host Group that this Linux + Virtual Machine should be run within. Conflicts with dedicated_host_id. + type: string + dedicatedHostId: + description: The ID of a Dedicated Host where this machine should + be run on. Conflicts with dedicated_host_group_id. + type: string + disablePasswordAuthentication: + description: Should Password Authentication be disabled on this + Virtual Machine? Defaults to true. Changing this forces a new + resource to be created. + type: boolean + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Linux Virtual Machine should exist. Changing this forces + a new Linux Virtual Machine to be created. + type: string + encryptionAtHostEnabled: + description: Should all of the disks (including the temp disk) + attached to this Virtual Machine be encrypted by enabling Encryption + at Host? + type: boolean + evictionPolicy: + description: Specifies what should happen when the Virtual Machine + is evicted for price reasons when using a Spot instance. Possible + values are Deallocate and Delete. Changing this forces a new + resource to be created. + type: string + extensionsTimeBudget: + description: Specifies the duration allocated for all extensions + to start. The time duration should be between 15 minutes and + 120 minutes (inclusive) and should be specified in ISO 8601 + format. Defaults to 90 minutes (PT1H30M). + type: string + galleryApplication: + description: One or more gallery_application blocks as defined + below. + items: + properties: + configurationBlobUri: + description: Specifies the URI to an Azure Blob that will + replace the default configuration for the package if provided. + type: string + order: + description: Specifies the order in which the packages have + to be installed. Possible values are between 0 and 2,147,483,647. + type: number + tag: + description: Specifies a passthrough value for more generic + context. This field can be any valid string value. + type: string + versionId: + description: Specifies the Gallery Application Version resource + ID. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Linux Virtual Machine. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Linux Virtual Machine. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + licenseType: + description: Specifies the BYOL Type for this Virtual Machine. + Possible values are RHEL_BYOS and SLES_BYOS. + type: string + location: + description: The Azure location where the Linux Virtual Machine + should exist. Changing this forces a new resource to be created. + type: string + maxBidPrice: + description: The maximum price you're willing to pay for this + Virtual Machine, in US Dollars; which must be greater than the + current spot price. If this bid price falls below the current + spot price the Virtual Machine will be evicted using the eviction_policy. + Defaults to -1, which means that the Virtual Machine should + not be evicted for price reasons. + type: number + osDisk: + description: A os_disk block as defined below. + items: + properties: + caching: + description: The Type of Caching which should be used for + the Internal OS Disk. Possible values are None, ReadOnly + and ReadWrite. + type: string + diffDiskSettings: + description: A diff_disk_settings block as defined above. + Changing this forces a new resource to be created. + items: + properties: + option: + description: Specifies the Ephemeral Disk Settings + for the OS Disk. At this time the only possible + value is Local. Changing this forces a new resource + to be created. + type: string + placement: + description: Specifies where to store the Ephemeral + Disk. Possible values are CacheDisk and ResourceDisk. + Defaults to CacheDisk. Changing this forces a new + resource to be created. + type: string + type: object + type: array + diskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. + type: string + diskSizeGb: + description: The Size of the Internal OS Disk in GB, if + you wish to vary from the size used in the image this + Virtual Machine is sourced from. + type: number + name: + description: The name which should be used for the Internal + OS Disk. Changing this forces a new resource to be created. + type: string + secureVmDiskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to Encrypt this OS Disk when the Virtual Machine + is a Confidential VM. Conflicts with disk_encryption_set_id. + Changing this forces a new resource to be created. + type: string + securityEncryptionType: + description: Encryption Type when the Virtual Machine is + a Confidential VM. Possible values are VMGuestStateOnly + and DiskWithVMGuestState. Changing this forces a new resource + to be created. + type: string + storageAccountType: + description: The Type of Storage Account which should back + this the Internal OS Disk. Possible values are Standard_LRS, + StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. + Changing this forces a new resource to be created. + type: string + writeAcceleratorEnabled: + description: Should Write Accelerator be Enabled for this + OS Disk? Defaults to false. + type: boolean + type: object + type: array + patchAssessmentMode: + description: Specifies the mode of VM Guest Patching for the Virtual + Machine. Possible values are AutomaticByPlatform or ImageDefault. + Defaults to ImageDefault. + type: string + patchMode: + description: Specifies the mode of in-guest patching to this Linux + Virtual Machine. Possible values are AutomaticByPlatform and + ImageDefault. Defaults to ImageDefault. For more information + on patch modes please see the product documentation. + type: string + plan: + description: A plan block as defined below. Changing this forces + a new resource to be created. + items: + properties: + name: + description: Specifies the Name of the Marketplace Image + this Virtual Machine should be created from. Changing + this forces a new resource to be created. + type: string + product: + description: Specifies the Product of the Marketplace Image + this Virtual Machine should be created from. Changing + this forces a new resource to be created. + type: string + publisher: + description: Specifies the Publisher of the Marketplace + Image this Virtual Machine should be created from. Changing + this forces a new resource to be created. + type: string + type: object + type: array + platformFaultDomain: + description: Specifies the Platform Fault Domain in which this + Linux Virtual Machine should be created. Defaults to -1, which + means this will be automatically assigned to a fault domain + that best maintains balance across the available fault domains. + Changing this forces a new Linux Virtual Machine to be created. + type: number + priority: + description: Specifies the priority of this Virtual Machine. Possible + values are Regular and Spot. Defaults to Regular. Changing this + forces a new resource to be created. + type: string + provisionVmAgent: + description: Should the Azure VM Agent be provisioned on this + Virtual Machine? Defaults to true. Changing this forces a new + resource to be created. + type: boolean + proximityPlacementGroupId: + description: The ID of the Proximity Placement Group which the + Virtual Machine should be assigned to. + type: string + secret: + description: One or more secret blocks as defined below. + items: + properties: + certificate: + description: One or more certificate blocks as defined above. + items: + properties: + url: + description: The Secret URL of a Key Vault Certificate. + type: string + type: object + type: array + keyVaultId: + description: The ID of the Key Vault from which all Secrets + should be sourced. + type: string + type: object + type: array + secureBootEnabled: + description: Specifies whether secure boot should be enabled on + the virtual machine. Changing this forces a new resource to + be created. + type: boolean + size: + description: The SKU which should be used for this Virtual Machine, + such as Standard_F2. + type: string + sourceImageId: + description: The ID of the Image which this Virtual Machine should + be created from. Changing this forces a new resource to be created. + Possible Image ID types include Image IDs, Shared Image IDs, + Shared Image Version IDs, Community Gallery Image IDs, Community + Gallery Image Version IDs, Shared Gallery Image IDs and Shared + Gallery Image Version IDs. + type: string + sourceImageReference: + description: A source_image_reference block as defined below. + Changing this forces a new resource to be created. + items: + properties: + offer: + description: Specifies the offer of the image used to create + the virtual machines. Changing this forces a new resource + to be created. + type: string + publisher: + description: Specifies the publisher of the image used to + create the virtual machines. Changing this forces a new + resource to be created. + type: string + sku: + description: Specifies the SKU of the image used to create + the virtual machines. Changing this forces a new resource + to be created. + type: string + version: + description: Specifies the version of the image used to + create the virtual machines. Changing this forces a new + resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to this + Virtual Machine. + type: object + terminationNotification: + description: A termination_notification block as defined below. + items: + properties: + enabled: + description: Should the termination notification be enabled + on this Virtual Machine? + type: boolean + timeout: + description: Length of time (in minutes, between 5 and 15) + a notification to be sent to the VM on the instance metadata + server till the VM gets deleted. The time duration should + be specified in ISO 8601 format. Defaults to PT5M. + type: string + type: object + type: array + userData: + description: The Base64-Encoded User Data which should be used + for this Virtual Machine. + type: string + virtualMachineScaleSetId: + description: Specifies the Orchestrated Virtual Machine Scale + Set that this Virtual Machine should be created within. Changing + this forces a new resource to be created. + type: string + vtpmEnabled: + description: Specifies whether vTPM should be enabled on the virtual + machine. Changing this forces a new resource to be created. + type: boolean + zone: + description: Specifies the Availability Zones in which this Linux + Virtual Machine should be located. Changing this forces a new + Linux Virtual Machine to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -867,13 +1241,21 @@ spec: type: object x-kubernetes-validations: - message: adminUsername is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminUsername) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.adminUsername) + || has(self.initProvider.adminUsername)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: osDisk is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osDisk) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.osDisk) + || has(self.initProvider.osDisk)' - message: size is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.size) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.size) + || has(self.initProvider.size)' status: description: LinuxVirtualMachineStatus defines the observed state of LinuxVirtualMachine. properties: diff --git a/package/crds/compute.azure.upbound.io_linuxvirtualmachinescalesets.yaml b/package/crds/compute.azure.upbound.io_linuxvirtualmachinescalesets.yaml index a51c40fc0..a725441a6 100644 --- a/package/crds/compute.azure.upbound.io_linuxvirtualmachinescalesets.yaml +++ b/package/crds/compute.azure.upbound.io_linuxvirtualmachinescalesets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linuxvirtualmachinescalesets.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -113,9 +112,6 @@ spec: description: The Username for which this Public SSH Key should be configured. type: string - required: - - publicKey - - username type: object type: array adminUsername: @@ -141,8 +137,6 @@ spec: VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M. type: string - required: - - enabled type: object type: array automaticOsUpgradePolicy: @@ -159,9 +153,6 @@ spec: to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? type: boolean - required: - - disableAutomaticRollback - - enableAutomaticOsUpgrade type: object type: array bootDiagnostics: @@ -255,11 +246,6 @@ spec: description: Should Write Accelerator be Enabled for this OS Disk? Defaults to false. type: boolean - required: - - caching - - diskSizeGb - - lun - - storageAccountType type: object type: array disablePasswordAuthentication: @@ -321,9 +307,6 @@ spec: sourceVaultId: description: The ID of the source Key Vault. type: string - required: - - secretUrl - - sourceVaultId type: object type: array protectedSettingsSecretRef: @@ -364,11 +347,6 @@ spec: description: Specifies the version of the extension to use, available versions can be found using the Azure CLI. type: string - required: - - name - - publisher - - type - - typeHandlerVersion type: object type: array extensionOperationsEnabled: @@ -407,8 +385,6 @@ spec: description: Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created. type: string - required: - - versionId type: object type: array galleryApplications: @@ -429,8 +405,6 @@ spec: as SQL or Storage. Changing this forces a new resource to be created. type: string - required: - - packageReferenceId type: object type: array healthProbeId: @@ -461,8 +435,6 @@ spec: Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array instances: @@ -575,9 +547,6 @@ spec: as FirstPartyUsage. Changing this forces a new resource to be created. type: string - required: - - tag - - type type: object type: array name: @@ -594,8 +563,6 @@ spec: description: Specifies the version of the image used to create the virtual machines. type: string - required: - - name type: object type: array subnetId: @@ -686,8 +653,6 @@ spec: description: Specifies the version of the image used to create the virtual machines. type: string - required: - - name type: object type: array name: @@ -701,9 +666,6 @@ spec: primary: description: Is this the Primary IP Configuration? type: boolean - required: - - ipConfiguration - - name type: object type: array osDisk: @@ -732,8 +694,6 @@ spec: Defaults to CacheDisk. Changing this forces a new resource to be created. type: string - required: - - option type: object type: array diskEncryptionSetId: @@ -768,9 +728,6 @@ spec: description: Should Write Accelerator be Enabled for this OS Disk? Defaults to false. type: boolean - required: - - caching - - storageAccountType type: object type: array overprovision: @@ -800,10 +757,6 @@ spec: description: Specifies the publisher of the image. Changing this forces a new resource to be created. type: string - required: - - name - - product - - publisher type: object type: array platformFaultDomainCount: @@ -952,11 +905,6 @@ spec: set before any healthy instances. Possible values are true or false. type: boolean - required: - - maxBatchInstancePercent - - maxUnhealthyInstancePercent - - maxUnhealthyUpgradedInstancePercent - - pauseTimeBetweenBatches type: object type: array scaleIn: @@ -990,17 +938,12 @@ spec: url: description: The Secret URL of a Key Vault Certificate. type: string - required: - - url type: object type: array keyVaultId: description: The ID of the Key Vault from which all Secrets should be sourced. type: string - required: - - certificate - - keyVaultId type: object type: array secureBootEnabled: @@ -1046,11 +989,6 @@ spec: description: Specifies the version of the image used to create the virtual machines. type: string - required: - - offer - - publisher - - sku - - version type: object type: array spotRestore: @@ -1097,8 +1035,6 @@ spec: server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. type: string - required: - - enabled type: object type: array terminationNotification: @@ -1115,8 +1051,6 @@ spec: server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. type: string - required: - - enabled type: object type: array upgradeMode: @@ -1146,21 +1080,838 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalCapabilities: + description: An additional_capabilities block as defined below. + items: + properties: + ultraSsdEnabled: + description: Should the capacity to enable Data Disks of + the UltraSSD_LRS storage account type be supported on + this Virtual Machine Scale Set? Possible values are true + or false. Defaults to false. Changing this forces a new + resource to be created. + type: boolean + type: object + type: array + adminSshKey: + description: One or more admin_ssh_key blocks as defined below. + items: + properties: + publicKey: + description: The Public Key which should be used for authentication, + which needs to be at least 2048-bit and in ssh-rsa format. + type: string + username: + description: The Username for which this Public SSH Key + should be configured. + type: string + type: object + type: array + adminUsername: + description: The username of the local administrator on each Virtual + Machine Scale Set instance. Changing this forces a new resource + to be created. + type: string + automaticInstanceRepair: + description: An automatic_instance_repair block as defined below. + To enable the automatic instance repair, this Virtual Machine + Scale Set must have a valid health_probe_id or an Application + Health Extension. + items: + properties: + enabled: + description: Should the automatic instance repair be enabled + on this Virtual Machine Scale Set? + type: boolean + gracePeriod: + description: Amount of time (in minutes, between 30 and + 90, defaults to 30 minutes) for which automatic repairs + will be delayed. The grace period starts right after the + VM is found unhealthy. The time duration should be specified + in ISO 8601 format. Defaults to PT30M. + type: string + type: object + type: array + automaticOsUpgradePolicy: + description: An automatic_os_upgrade_policy block as defined below. + This can only be specified when upgrade_mode is set to either + Automatic or Rolling. + items: + properties: + disableAutomaticRollback: + description: Should automatic rollbacks be disabled? + type: boolean + enableAutomaticOsUpgrade: + description: Should OS Upgrades automatically be applied + to Scale Set instances in a rolling fashion when a newer + version of the OS Image becomes available? + type: boolean + type: object + type: array + bootDiagnostics: + description: A boot_diagnostics block as defined below. + items: + properties: + storageAccountUri: + description: The Primary/Secondary Endpoint for the Azure + Storage Account which should be used to store Boot Diagnostics, + including Console Output and Screenshots from the Hypervisor. + type: string + type: object + type: array + capacityReservationGroupId: + description: Specifies the ID of the Capacity Reservation Group + which the Virtual Machine Scale Set should be allocated to. + Changing this forces a new resource to be created. + type: string + computerNamePrefix: + description: The prefix which should be used for the name of the + Virtual Machines in this Scale Set. If unspecified this defaults + to the value for the name field. If the value of the name field + is not a valid computer_name_prefix, then you must specify computer_name_prefix. + Changing this forces a new resource to be created. + type: string + dataDisk: + description: One or more data_disk blocks as defined below. + items: + properties: + caching: + description: The type of Caching which should be used for + this Data Disk. Possible values are None, ReadOnly and + ReadWrite. + type: string + createOption: + description: The create option which should be used for + this Data Disk. Possible values are Empty and FromImage. + Defaults to Empty. (FromImage should only be used if the + source image includes data disks). + type: string + diskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. + Changing this forces a new resource to be created. + type: string + diskSizeGb: + description: The size of the Data Disk which should be created. + type: number + lun: + description: The Logical Unit Number of the Data Disk, which + must be unique within the Virtual Machine. + type: number + name: + description: The name of the Data Disk. + type: string + storageAccountType: + description: The Type of Storage Account which should back + this Data Disk. Possible values include Standard_LRS, + StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, + Premium_ZRS and UltraSSD_LRS. + type: string + ultraSsdDiskIopsReadWrite: + description: Specifies the Read-Write IOPS for this Data + Disk. Only settable when storage_account_type is PremiumV2_LRS + or UltraSSD_LRS. + type: number + ultraSsdDiskMbpsReadWrite: + description: Specifies the bandwidth in MB per second for + this Data Disk. Only settable when storage_account_type + is PremiumV2_LRS or UltraSSD_LRS. + type: number + writeAcceleratorEnabled: + description: Should Write Accelerator be Enabled for this + OS Disk? Defaults to false. + type: boolean + type: object + type: array + disablePasswordAuthentication: + description: Should Password Authentication be disabled on this + Virtual Machine Scale Set? Defaults to true. + type: boolean + doNotRunExtensionsOnOverprovisionedMachines: + description: Should Virtual Machine Extensions be run on Overprovisioned + Virtual Machines in the Scale Set? Defaults to false. + type: boolean + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Linux Virtual Machine Scale Set should exist. Changing + this forces a new Linux Virtual Machine Scale Set to be created. + type: string + encryptionAtHostEnabled: + description: Should all of the disks (including the temp disk) + attached to this Virtual Machine be encrypted by enabling Encryption + at Host? + type: boolean + evictionPolicy: + description: Specifies the eviction policy for Virtual Machines + in this Scale Set. Possible values are Deallocate and Delete. + Changing this forces a new resource to be created. + type: string + extension: + description: One or more extension blocks as defined below + items: + properties: + autoUpgradeMinorVersion: + description: Should the latest version of the Extension + be used at Deployment Time, if one is available? This + won't auto-update the extension on existing installation. + Defaults to true. + type: boolean + automaticUpgradeEnabled: + description: Should the Extension be automatically updated + whenever the Publisher releases a new version of this + VM Extension? + type: boolean + forceUpdateTag: + description: A value which, when different to the previous + value can be used to force-run the Extension even if the + Extension Configuration hasn't changed. + type: string + name: + description: The name for the Virtual Machine Scale Set + Extension. + type: string + protectedSettingsFromKeyVault: + description: A protected_settings_from_key_vault block as + defined below. + items: + properties: + secretUrl: + description: The URL to the Key Vault Secret which + stores the protected settings. + type: string + sourceVaultId: + description: The ID of the source Key Vault. + type: string + type: object + type: array + provisionAfterExtensions: + description: An ordered list of Extension names which this + should be provisioned after. + items: + type: string + type: array + publisher: + description: Specifies the Publisher of the Extension. + type: string + settings: + description: A JSON String which specifies Settings for + the Extension. + type: string + type: + description: Specifies the Type of the Extension. + type: string + typeHandlerVersion: + description: Specifies the version of the extension to use, + available versions can be found using the Azure CLI. + type: string + type: object + type: array + extensionOperationsEnabled: + description: Should extension operations be allowed on the Virtual + Machine Scale Set? Possible values are true or false. Defaults + to true. Changing this forces a new Linux Virtual Machine Scale + Set to be created. + type: boolean + extensionsTimeBudget: + description: Specifies the duration allocated for all extensions + to start. The time duration should be between 15 minutes and + 120 minutes (inclusive) and should be specified in ISO 8601 + format. Defaults to 90 minutes (PT1H30M). + type: string + galleryApplication: + description: One or more gallery_application blocks as defined + below. + items: + properties: + configurationBlobUri: + description: Specifies the URI to an Azure Blob that will + replace the default configuration for the package if provided. + Changing this forces a new resource to be created. + type: string + order: + description: Specifies the order in which the packages have + to be installed. Possible values are between 0 and 2,147,483,647. + Changing this forces a new resource to be created. + type: number + tag: + description: Specifies a passthrough value for more generic + context. This field can be any valid string value. Changing + this forces a new resource to be created. + type: string + versionId: + description: Specifies the Gallery Application Version resource + ID. Changing this forces a new resource to be created. + type: string + type: object + type: array + galleryApplications: + items: + properties: + configurationReferenceBlobUri: + type: string + order: + description: Specifies the order in which the packages have + to be installed. Possible values are between 0 and 2,147,483,647. + Changing this forces a new resource to be created. + type: number + packageReferenceId: + description: The ID of the Linux Virtual Machine Scale Set. + type: string + tag: + description: The IP Tag associated with the Public IP, such + as SQL or Storage. Changing this forces a new resource + to be created. + type: string + type: object + type: array + healthProbeId: + description: The ID of a Load Balancer Probe which should be used + to determine the health of an instance. This is Required and + can only be specified when upgrade_mode is set to Automatic + or Rolling. + type: string + hostGroupId: + description: Specifies the ID of the dedicated host group that + the virtual machine scale set resides in. Changing this forces + a new resource to be created. + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Linux Virtual Machine Scale + Set. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Linux Virtual Machine + Scale Set. Possible values are SystemAssigned, UserAssigned, + SystemAssigned, UserAssigned (to enable both). + type: string + type: object + type: array + instances: + description: The number of Virtual Machines in the Scale Set. + Defaults to 0. + type: number + location: + description: The Azure location where the Linux Virtual Machine + Scale Set should exist. Changing this forces a new resource + to be created. + type: string + maxBidPrice: + description: The maximum price you're willing to pay for each + Virtual Machine in this Scale Set, in US Dollars; which must + be greater than the current spot price. If this bid price falls + below the current spot price the Virtual Machines in the Scale + Set will be evicted using the eviction_policy. Defaults to -1, + which means that each Virtual Machine in this Scale Set should + not be evicted for price reasons. + type: number + networkInterface: + description: One or more network_interface blocks as defined below. + items: + properties: + dnsServers: + description: A list of IP Addresses of DNS Servers which + should be assigned to the Network Interface. + items: + type: string + type: array + enableAcceleratedNetworking: + description: Does this Network Interface support Accelerated + Networking? Defaults to false. + type: boolean + enableIpForwarding: + description: Does this Network Interface support IP Forwarding? + Defaults to false. + type: boolean + ipConfiguration: + description: One or more ip_configuration blocks as defined + above. + items: + properties: + applicationGatewayBackendAddressPoolIds: + description: A list of Backend Address Pools ID's + from a Application Gateway which this Virtual Machine + Scale Set should be connected to. + items: + type: string + type: array + applicationSecurityGroupIds: + description: A list of Application Security Group + ID's which this Virtual Machine Scale Set should + be connected to. + items: + type: string + type: array + loadBalancerBackendAddressPoolIds: + description: A list of Backend Address Pools ID's + from a Load Balancer which this Virtual Machine + Scale Set should be connected to. + items: + type: string + type: array + loadBalancerInboundNatRulesIds: + description: A list of NAT Rule ID's from a Load Balancer + which this Virtual Machine Scale Set should be connected + to. + items: + type: string + type: array + name: + description: The Name of the Public IP Address Configuration. + type: string + primary: + description: Is this the Primary IP Configuration? + type: boolean + publicIpAddress: + description: A public_ip_address block as defined + below. + items: + properties: + domainNameLabel: + description: The Prefix which should be used + for the Domain Name Label for each Virtual + Machine Instance. Azure concatenates the Domain + Name Label and Virtual Machine Index to create + a unique Domain Name Label for each Virtual + Machine. + type: string + idleTimeoutInMinutes: + description: The Idle Timeout in Minutes for + the Public IP Address. Possible values are + in the range 4 to 32. + type: number + ipTag: + description: One or more ip_tag blocks as defined + above. Changing this forces a new resource + to be created. + items: + properties: + tag: + description: The IP Tag associated with + the Public IP, such as SQL or Storage. + Changing this forces a new resource + to be created. + type: string + type: + description: The Type of IP Tag, such + as FirstPartyUsage. Changing this forces + a new resource to be created. + type: string + type: object + type: array + name: + description: The Name of the Public IP Address + Configuration. + type: string + publicIpPrefixId: + description: The ID of the Public IP Address + Prefix from where Public IP Addresses should + be allocated. Changing this forces a new resource + to be created. + type: string + version: + description: Specifies the version of the image + used to create the virtual machines. + type: string + type: object + type: array + version: + description: Specifies the version of the image used + to create the virtual machines. + type: string + type: object + type: array + name: + description: The Name which should be used for this Network + Interface. Changing this forces a new resource to be created. + type: string + networkSecurityGroupId: + description: The ID of a Network Security Group which should + be assigned to this Network Interface. + type: string + primary: + description: Is this the Primary IP Configuration? + type: boolean + type: object + type: array + osDisk: + description: An os_disk block as defined below. + items: + properties: + caching: + description: The Type of Caching which should be used for + the Internal OS Disk. Possible values are None, ReadOnly + and ReadWrite. + type: string + diffDiskSettings: + description: A diff_disk_settings block as defined above. + Changing this forces a new resource to be created. + items: + properties: + option: + description: Specifies the Ephemeral Disk Settings + for the OS Disk. At this time the only possible + value is Local. Changing this forces a new resource + to be created. + type: string + placement: + description: Specifies where to store the Ephemeral + Disk. Possible values are CacheDisk and ResourceDisk. + Defaults to CacheDisk. Changing this forces a new + resource to be created. + type: string + type: object + type: array + diskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. + Changing this forces a new resource to be created. + type: string + diskSizeGb: + description: The Size of the Internal OS Disk in GB, if + you wish to vary from the size used in the image this + Virtual Machine Scale Set is sourced from. + type: number + secureVmDiskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to Encrypt the OS Disk when the Virtual Machine + Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. + Changing this forces a new resource to be created. + type: string + securityEncryptionType: + description: Encryption Type when the Virtual Machine Scale + Set is Confidential VMSS. Possible values are VMGuestStateOnly + and DiskWithVMGuestState. Changing this forces a new resource + to be created. + type: string + storageAccountType: + description: The Type of Storage Account which should back + this the Internal OS Disk. Possible values include Standard_LRS, + StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. + Changing this forces a new resource to be created. + type: string + writeAcceleratorEnabled: + description: Should Write Accelerator be Enabled for this + OS Disk? Defaults to false. + type: boolean + type: object + type: array + overprovision: + description: Should Azure over-provision Virtual Machines in this + Scale Set? This means that multiple Virtual Machines will be + provisioned and Azure will keep the instances which become available + first - which improves provisioning success rates and improves + deployment time. You're not billed for these over-provisioned + VM's and they don't count towards the Subscription Quota. Defaults + to true. + type: boolean + plan: + description: A plan block as defined below. Changing this forces + a new resource to be created. + items: + properties: + name: + description: Specifies the name of the image from the marketplace. + Changing this forces a new resource to be created. + type: string + product: + description: Specifies the product of the image from the + marketplace. Changing this forces a new resource to be + created. + type: string + publisher: + description: Specifies the publisher of the image. Changing + this forces a new resource to be created. + type: string + type: object + type: array + platformFaultDomainCount: + description: Specifies the number of fault domains that are used + by this Linux Virtual Machine Scale Set. Changing this forces + a new resource to be created. + type: number + priority: + description: The Priority of this Virtual Machine Scale Set. Possible + values are Regular and Spot. Defaults to Regular. Changing this + value forces a new resource. + type: string + provisionVmAgent: + description: Should the Azure VM Agent be provisioned on each + Virtual Machine in the Scale Set? Defaults to true. Changing + this value forces a new resource to be created. + type: boolean + proximityPlacementGroupId: + description: The ID of the Proximity Placement Group in which + the Virtual Machine Scale Set should be assigned to. Changing + this forces a new resource to be created. + type: string + rollingUpgradePolicy: + description: A rolling_upgrade_policy block as defined below. + This is Required and can only be specified when upgrade_mode + is set to Automatic or Rolling. Changing this forces a new resource + to be created. + items: + properties: + crossZoneUpgradesEnabled: + description: Should the Virtual Machine Scale Set ignore + the Azure Zone boundaries when constructing upgrade batches? + Possible values are true or false. + type: boolean + maxBatchInstancePercent: + description: The maximum percent of total virtual machine + instances that will be upgraded simultaneously by the + rolling upgrade in one batch. As this is a maximum, unhealthy + instances in previous or future batches can cause the + percentage of instances in a batch to decrease to ensure + higher reliability. + type: number + maxUnhealthyInstancePercent: + description: The maximum percentage of the total virtual + machine instances in the scale set that can be simultaneously + unhealthy, either as a result of being upgraded, or by + being found in an unhealthy state by the virtual machine + health checks before the rolling upgrade aborts. This + constraint will be checked prior to starting any batch. + type: number + maxUnhealthyUpgradedInstancePercent: + description: The maximum percentage of upgraded virtual + machine instances that can be found to be in an unhealthy + state. This check will happen after each batch is upgraded. + If this percentage is ever exceeded, the rolling update + aborts. + type: number + pauseTimeBetweenBatches: + description: The wait time between completing the update + for all virtual machines in one batch and starting the + next batch. The time duration should be specified in ISO + 8601 format. + type: string + prioritizeUnhealthyInstancesEnabled: + description: Upgrade all unhealthy instances in a scale + set before any healthy instances. Possible values are + true or false. + type: boolean + type: object + type: array + scaleIn: + description: A scale_in block as defined below. + items: + properties: + forceDeletionEnabled: + description: Should the virtual machines chosen for removal + be force deleted when the virtual machine scale set is + being scaled-in? Possible values are true or false. Defaults + to false. + type: boolean + rule: + description: The scale-in policy rule that decides which + virtual machines are chosen for removal when a Virtual + Machine Scale Set is scaled in. Possible values for the + scale-in policy rules are Default, NewestVM and OldestVM, + defaults to Default. For more information about scale + in policy, please refer to this doc. + type: string + type: object + type: array + secret: + description: One or more secret blocks as defined below. + items: + properties: + certificate: + description: One or more certificate blocks as defined above. + items: + properties: + url: + description: The Secret URL of a Key Vault Certificate. + type: string + type: object + type: array + keyVaultId: + description: The ID of the Key Vault from which all Secrets + should be sourced. + type: string + type: object + type: array + secureBootEnabled: + description: Specifies whether secure boot should be enabled on + the virtual machine. Changing this forces a new resource to + be created. + type: boolean + singlePlacementGroup: + description: Should this Virtual Machine Scale Set be limited + to a Single Placement Group, which means the number of instances + will be capped at 100 Virtual Machines. Defaults to true. + type: boolean + sku: + description: The Virtual Machine SKU for the Scale Set, such as + Standard_F2. + type: string + sourceImageId: + description: The ID of an Image which each Virtual Machine in + this Scale Set should be based on. Possible Image ID types include + Image IDs, Shared Image IDs, Shared Image Version IDs, Community + Gallery Image IDs, Community Gallery Image Version IDs, Shared + Gallery Image IDs and Shared Gallery Image Version IDs. + type: string + sourceImageReference: + description: A source_image_reference block as defined below. + items: + properties: + offer: + description: Specifies the offer of the image used to create + the virtual machines. Changing this forces a new resource + to be created. + type: string + publisher: + description: Specifies the publisher of the image used to + create the virtual machines. Changing this forces a new + resource to be created. + type: string + sku: + description: Specifies the SKU of the image used to create + the virtual machines. + type: string + version: + description: Specifies the version of the image used to + create the virtual machines. + type: string + type: object + type: array + spotRestore: + description: A spot_restore block as defined below. + items: + properties: + enabled: + description: Should the Spot-Try-Restore feature be enabled? + The Spot-Try-Restore feature will attempt to automatically + restore the evicted Spot Virtual Machine Scale Set VM + instances opportunistically based on capacity availability + and pricing constraints. Possible values are true or false. + Defaults to false. Changing this forces a new resource + to be created. + type: boolean + timeout: + description: The length of time that the Virtual Machine + Scale Set should attempt to restore the Spot VM instances + which have been evicted. The time duration should be between + 15 minutes and 120 minutes (inclusive). The time duration + should be specified in the ISO 8601 format. Defaults to + 90 minutes (e.g. PT1H30M). Changing this forces a new + resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to this + Virtual Machine Scale Set. + type: object + terminateNotification: + description: A terminate_notification block as defined below. + items: + properties: + enabled: + description: Should the terminate notification be enabled + on this Virtual Machine Scale Set? + type: boolean + timeout: + description: Length of time (in minutes, between 5 and 15) + a notification to be sent to the VM on the instance metadata + server till the VM gets deleted. The time duration should + be specified in ISO 8601 format. Defaults to PT5M. + type: string + type: object + type: array + terminationNotification: + description: A termination_notification block as defined below. + items: + properties: + enabled: + description: Should the termination notification be enabled + on this Virtual Machine Scale Set? + type: boolean + timeout: + description: Length of time (in minutes, between 5 and 15) + a notification to be sent to the VM on the instance metadata + server till the VM gets deleted. The time duration should + be specified in ISO 8601 format. Defaults to PT5M. + type: string + type: object + type: array + upgradeMode: + description: Specifies how Upgrades (e.g. changing the Image/SKU) + should be performed to Virtual Machine Instances. Possible values + are Automatic, Manual and Rolling. Defaults to Manual. Changing + this forces a new resource to be created. + type: string + userData: + description: The Base64-Encoded User Data which should be used + for this Virtual Machine Scale Set. + type: string + vtpmEnabled: + description: Specifies whether vTPM should be enabled on the virtual + machine. Changing this forces a new resource to be created. + type: boolean + zoneBalance: + description: Should the Virtual Machines in this Scale Set be + strictly evenly distributed across Availability Zones? Defaults + to false. Changing this forces a new resource to be created. + type: boolean + zones: + description: Specifies a list of Availability Zones in which this + Linux Virtual Machine Scale Set should be located. Changing + this forces a new Linux Virtual Machine Scale Set to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1334,15 +2085,25 @@ spec: type: object x-kubernetes-validations: - message: adminUsername is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminUsername) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.adminUsername) + || has(self.initProvider.adminUsername)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: networkInterface is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.networkInterface) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.networkInterface) + || has(self.initProvider.networkInterface)' - message: osDisk is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osDisk) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.osDisk) + || has(self.initProvider.osDisk)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: LinuxVirtualMachineScaleSetStatus defines the observed state of LinuxVirtualMachineScaleSet. diff --git a/package/crds/compute.azure.upbound.io_manageddisks.yaml b/package/crds/compute.azure.upbound.io_manageddisks.yaml index 2aea812a1..7fada1b8b 100644 --- a/package/crds/compute.azure.upbound.io_manageddisks.yaml +++ b/package/crds/compute.azure.upbound.io_manageddisks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: manageddisks.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -131,9 +130,6 @@ spec: description: The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. type: string - required: - - secretUrl - - sourceVaultId type: object type: array enabled: @@ -151,9 +147,6 @@ spec: description: The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. type: string - required: - - keyUrl - - sourceVaultId type: object type: array type: object @@ -423,21 +416,233 @@ spec: resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + createOption: + description: 'The method to use when creating the managed disk. + Changing this forces a new resource to be created. Possible + values include:' + type: string + diskAccessId: + description: The ID of the disk access resource for using private + endpoints on disks. + type: string + diskEncryptionSetId: + description: The ID of a Disk Encryption Set which should be used + to encrypt this Managed Disk. Conflicts with secure_vm_disk_encryption_set_id. + type: string + diskIopsReadOnly: + description: The number of IOPS allowed across all VMs mounting + the shared disk as read-only; only settable for UltraSSD disks + and PremiumV2 disks with shared disk enabled. One operation + can transfer between 4k and 256k bytes. + type: number + diskIopsReadWrite: + description: The number of IOPS allowed for this disk; only settable + for UltraSSD disks and PremiumV2 disks. One operation can transfer + between 4k and 256k bytes. + type: number + diskMbpsReadOnly: + description: The bandwidth allowed across all VMs mounting the + shared disk as read-only; only settable for UltraSSD disks and + PremiumV2 disks with shared disk enabled. MBps means millions + of bytes per second. + type: number + diskMbpsReadWrite: + description: The bandwidth allowed for this disk; only settable + for UltraSSD disks and PremiumV2 disks. MBps means millions + of bytes per second. + type: number + diskSizeGb: + description: Specifies the size of the managed disk to create + in gigabytes. If create_option is Copy or FromImage, then the + value must be equal to or greater than the source's size. The + size can only be increased. + type: number + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Managed Disk should exist. Changing this forces a new Managed + Disk to be created. + type: string + encryptionSettings: + description: A encryption_settings block as defined below. + items: + properties: + diskEncryptionKey: + description: A disk_encryption_key block as defined above. + items: + properties: + secretUrl: + description: The URL to the Key Vault Secret used + as the Disk Encryption Key. This can be found as + id on the azurerm_key_vault_secret resource. + type: string + sourceVaultId: + description: The ID of the source Key Vault. This + can be found as id on the azurerm_key_vault resource. + type: string + type: object + type: array + enabled: + type: boolean + keyEncryptionKey: + description: A key_encryption_key block as defined below. + items: + properties: + keyUrl: + description: The URL to the Key Vault Key used as + the Key Encryption Key. This can be found as id + on the azurerm_key_vault_key resource. + type: string + sourceVaultId: + description: The ID of the source Key Vault. This + can be found as id on the azurerm_key_vault resource. + type: string + type: object + type: array + type: object + type: array + galleryImageReferenceId: + description: ID of a Gallery Image Version to copy when create_option + is FromImage. This field cannot be specified if image_reference_id + is specified. Changing this forces a new resource to be created. + type: string + hyperVGeneration: + description: The HyperV Generation of the Disk when the source + of an Import or Copy operation targets a source that contains + an operating system. Possible values are V1 and V2. For ImportSecure + it must be set to V2. Changing this forces a new resource to + be created. + type: string + imageReferenceId: + description: ID of an existing platform/marketplace disk image + to copy when create_option is FromImage. This field cannot be + specified if gallery_image_reference_id is specified. Changing + this forces a new resource to be created. + type: string + location: + description: Specified the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + logicalSectorSize: + description: 'Logical Sector Size. Possible values are: 512 and + 4096. Defaults to 4096. Changing this forces a new resource + to be created.' + type: number + maxShares: + description: The maximum number of VMs that can attach to the + disk at the same time. Value greater than one indicates a disk + that can be mounted on multiple VMs at the same time. + type: number + networkAccessPolicy: + description: Policy for accessing the disk via network. Allowed + values are AllowAll, AllowPrivate, and DenyAll. + type: string + onDemandBurstingEnabled: + description: Specifies if On-Demand Bursting is enabled for the + Managed Disk. + type: boolean + osType: + description: Specify a value when the source of an Import, ImportSecure + or Copy operation targets a source that contains an operating + system. Valid values are Linux or Windows. + type: string + publicNetworkAccessEnabled: + description: Whether it is allowed to access the disk via public + network. Defaults to true. + type: boolean + secureVmDiskEncryptionSetId: + description: The ID of the Disk Encryption Set which should be + used to Encrypt this OS Disk when the Virtual Machine is a Confidential + VM. Conflicts with disk_encryption_set_id. Changing this forces + a new resource to be created. + type: string + securityType: + description: Security Type of the Managed Disk when it is used + for a Confidential VM. Possible values are ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey, + ConfidentialVM_DiskEncryptedWithPlatformKey and ConfidentialVM_DiskEncryptedWithCustomerKey. + Changing this forces a new resource to be created. + type: string + sourceUri: + description: URI to a valid VHD file to be used when create_option + is Import or ImportSecure. Changing this forces a new resource + to be created. + type: string + storageAccountId: + description: The ID of the Storage Account where the source_uri + is located. Required when create_option is set to Import or + ImportSecure. Changing this forces a new resource to be created. + type: string + storageAccountType: + description: The type of storage to use for the managed disk. + Possible values are Standard_LRS, StandardSSD_ZRS, Premium_LRS, + PremiumV2_LRS, Premium_ZRS, StandardSSD_LRS or UltraSSD_LRS. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + tier: + description: The disk performance tier to use. Possible values + are documented here. This feature is currently supported only + for premium SSDs. + type: string + trustedLaunchEnabled: + description: Specifies if Trusted Launch is enabled for the Managed + Disk. Changing this forces a new resource to be created. + type: boolean + uploadSizeBytes: + description: Specifies the size of the managed disk to create + in bytes. Required when create_option is Upload. The value must + be equal to the source disk to be copied in bytes. Source disk + size could be calculated with ls -l or wc -c. More information + can be found at Copy a managed disk. Changing this forces a + new resource to be created. + type: number + zone: + description: Specifies the Availability Zone in which this Managed + Disk should be located. Changing this property forces a new + resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -611,11 +816,17 @@ spec: type: object x-kubernetes-validations: - message: createOption is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.createOption) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.createOption) + || has(self.initProvider.createOption)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: storageAccountType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageAccountType) + || has(self.initProvider.storageAccountType)' status: description: ManagedDiskStatus defines the observed state of ManagedDisk. properties: diff --git a/package/crds/compute.azure.upbound.io_manageddisksastokens.yaml b/package/crds/compute.azure.upbound.io_manageddisksastokens.yaml index b18286eed..49be95e66 100644 --- a/package/crds/compute.azure.upbound.io_manageddisksastokens.yaml +++ b/package/crds/compute.azure.upbound.io_manageddisksastokens.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: manageddisksastokens.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -157,21 +156,55 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessLevel: + description: The level of access required on the disk. Supported + are Read, Write. Changing this forces a new resource to be created. + type: string + durationInSeconds: + description: The duration for which the export should be allowed. + Should be between 30 & 4294967295 seconds. Changing this forces + a new resource to be created. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -345,9 +378,13 @@ spec: type: object x-kubernetes-validations: - message: accessLevel is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.accessLevel) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.accessLevel) + || has(self.initProvider.accessLevel)' - message: durationInSeconds is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.durationInSeconds) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.durationInSeconds) + || has(self.initProvider.durationInSeconds)' status: description: ManagedDiskSASTokenStatus defines the observed state of ManagedDiskSASToken. properties: diff --git a/package/crds/compute.azure.upbound.io_orchestratedvirtualmachinescalesets.yaml b/package/crds/compute.azure.upbound.io_orchestratedvirtualmachinescalesets.yaml index f1e969049..8e005d1cc 100644 --- a/package/crds/compute.azure.upbound.io_orchestratedvirtualmachinescalesets.yaml +++ b/package/crds/compute.azure.upbound.io_orchestratedvirtualmachinescalesets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: orchestratedvirtualmachinescalesets.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -98,8 +97,6 @@ spec: should be specified in ISO 8601 format (e.g. PT30M to PT90M). type: string - required: - - enabled type: object type: array bootDiagnostics: @@ -163,11 +160,6 @@ spec: description: Specifies if Write Accelerator is enabled on the Data Disk. Defaults to false. type: boolean - required: - - caching - - diskSizeGb - - lun - - storageAccountType type: object type: array encryptionAtHostEnabled: @@ -220,9 +212,6 @@ spec: sourceVaultId: description: The ID of the source Key Vault. type: string - required: - - secretUrl - - sourceVaultId type: object type: array protectedSettingsSecretRef: @@ -257,11 +246,6 @@ spec: description: Specifies the version of the extension to use, available versions can be found using the Azure CLI. type: string - required: - - name - - publisher - - type - - typeHandlerVersion type: object type: array extensionOperationsEnabled: @@ -292,9 +276,6 @@ spec: configured on this Orchestrated Windows Virtual Machine Scale Set. Only possible value is UserAssigned. type: string - required: - - identityIds - - type type: object type: array instances: @@ -412,9 +393,6 @@ spec: as FirstPartyUsage. Changing this forces a new resource to be created. type: string - required: - - tag - - type type: object type: array name: @@ -440,8 +418,6 @@ spec: description: Specifies the version of the image used to create the virtual machines. type: string - required: - - name type: object type: array subnetId: @@ -532,8 +508,6 @@ spec: description: Specifies the version of the image used to create the virtual machines. type: string - required: - - name type: object type: array name: @@ -548,9 +522,6 @@ spec: description: Is this the Primary IP Configuration? Possible values are true and false. Defaults to false. type: boolean - required: - - ipConfiguration - - name type: object type: array osDisk: @@ -579,8 +550,6 @@ spec: Defaults to CacheDisk. Changing this forces a new resource to be created. type: string - required: - - option type: object type: array diskEncryptionSetId: @@ -603,9 +572,6 @@ spec: description: Specifies if Write Accelerator is enabled on the OS Disk. Defaults to false. type: boolean - required: - - caching - - storageAccountType type: object type: array osProfile: @@ -666,9 +632,6 @@ spec: description: The Username for which this Public SSH Key should be configured. type: string - required: - - publicKey - - username type: object type: array adminUsername: @@ -723,21 +686,14 @@ spec: description: The Secret URL of a Key Vault Certificate. type: string - required: - - url type: object type: array keyVaultId: description: The ID of the Key Vault from which all Secrets should be sourced. type: string - required: - - certificate - - keyVaultId type: object type: array - required: - - adminUsername type: object type: array windowsConfiguration: @@ -827,18 +783,12 @@ spec: description: The Secret URL of a Key Vault Certificate. type: string - required: - - store - - url type: object type: array keyVaultId: description: The ID of the Key Vault from which all Secrets should be sourced. type: string - required: - - certificate - - keyVaultId type: object type: array timezone: @@ -862,13 +812,10 @@ spec: Possible values are Http or Https. Changing this forces a new resource to be created. type: string - required: - - protocol type: object type: array required: - adminPasswordSecretRef - - adminUsername type: object type: array type: object @@ -891,10 +838,6 @@ spec: description: Specifies the publisher of the image. Changing this forces a new resource to be created. type: string - required: - - name - - product - - publisher type: object type: array platformFaultDomainCount: @@ -1052,11 +995,6 @@ spec: description: Specifies the version of the image used to create the virtual machines. type: string - required: - - offer - - publisher - - sku - - version type: object type: array tags: @@ -1080,8 +1018,6 @@ spec: server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. type: string - required: - - enabled type: object type: array userDataBase64SecretRef: @@ -1115,21 +1051,770 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalCapabilities: + description: An additional_capabilities block as defined below. + items: + properties: + ultraSsdEnabled: + description: Should the capacity to enable Data Disks of + the UltraSSD_LRS storage account type be supported on + this Orchestrated Virtual Machine Scale Set? Defaults + to false. Changing this forces a new resource to be created. + type: boolean + type: object + type: array + automaticInstanceRepair: + description: An automatic_instance_repair block as defined below. + items: + properties: + enabled: + description: Should the automatic instance repair be enabled + on this Orchestrated Virtual Machine Scale Set? Possible + values are true and false. + type: boolean + gracePeriod: + description: Amount of time for which automatic repairs + will be delayed. The grace period starts right after the + VM is found unhealthy. Possible values are between 30 + and 90 minutes. Defaults to 30 minutes. The time duration + should be specified in ISO 8601 format (e.g. PT30M to + PT90M). + type: string + type: object + type: array + bootDiagnostics: + description: A boot_diagnostics block as defined below. + items: + properties: + storageAccountUri: + description: The Primary/Secondary Endpoint for the Azure + Storage Account which should be used to store Boot Diagnostics, + including Console Output and Screenshots from the Hypervisor. + By including a boot_diagnostics block without passing + the storage_account_uri field will cause the API to utilize + a Managed Storage Account to store the Boot Diagnostics + output. + type: string + type: object + type: array + capacityReservationGroupId: + description: Specifies the ID of the Capacity Reservation Group + which the Virtual Machine Scale Set should be allocated to. + Changing this forces a new resource to be created. + type: string + dataDisk: + description: One or more data_disk blocks as defined below. + items: + properties: + caching: + description: The type of Caching which should be used for + this Data Disk. Possible values are None, ReadOnly and + ReadWrite. + type: string + createOption: + description: The create option which should be used for + this Data Disk. Possible values are Empty and FromImage. + Defaults to Empty. (FromImage should only be used if the + source image includes data disks). + type: string + diskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to encrypt the Data Disk. Changing this forces + a new resource to be created. + type: string + diskSizeGb: + description: The size of the Data Disk which should be created. + type: number + lun: + description: The Logical Unit Number of the Data Disk, which + must be unique within the Virtual Machine. + type: number + storageAccountType: + description: The Type of Storage Account which should back + this Data Disk. Possible values include Standard_LRS, + StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, + Premium_ZRS and UltraSSD_LRS. + type: string + ultraSsdDiskIopsReadWrite: + type: number + ultraSsdDiskMbpsReadWrite: + type: number + writeAcceleratorEnabled: + description: Specifies if Write Accelerator is enabled on + the Data Disk. Defaults to false. + type: boolean + type: object + type: array + encryptionAtHostEnabled: + description: Should disks attached to this Virtual Machine Scale + Set be encrypted by enabling Encryption at Host? + type: boolean + evictionPolicy: + description: The Policy which should be used Virtual Machines + are Evicted from the Scale Set. Possible values are Deallocate + and Delete. Changing this forces a new resource to be created. + type: string + extension: + description: One or more extension blocks as defined below + items: + properties: + autoUpgradeMinorVersionEnabled: + description: Should the latest version of the Extension + be used at Deployment Time, if one is available? This + won't auto-update the extension on existing installation. + Defaults to true. + type: boolean + extensionsToProvisionAfterVmCreation: + description: An ordered list of Extension names which Orchestrated + Virtual Machine Scale Set should provision after VM creation. + items: + type: string + type: array + failureSuppressionEnabled: + description: Should failures from the extension be suppressed? + Possible values are true or false. + type: boolean + forceExtensionExecutionOnChange: + description: A value which, when different to the previous + value can be used to force-run the Extension even if the + Extension Configuration hasn't changed. + type: string + name: + description: The name for the Virtual Machine Scale Set + Extension. + type: string + protectedSettingsFromKeyVault: + description: A protected_settings_from_key_vault block as + defined below. + items: + properties: + secretUrl: + description: The URL to the Key Vault Secret which + stores the protected settings. + type: string + sourceVaultId: + description: The ID of the source Key Vault. + type: string + type: object + type: array + publisher: + description: Specifies the Publisher of the Extension. + type: string + settings: + description: A JSON String which specifies Settings for + the Extension. + type: string + type: + description: Specifies the Type of the Extension. + type: string + typeHandlerVersion: + description: Specifies the version of the extension to use, + available versions can be found using the Azure CLI. + type: string + type: object + type: array + extensionOperationsEnabled: + description: Should extension operations be allowed on the Virtual + Machine Scale Set? Possible values are true or false. Defaults + to true. Changing this forces a new Orchestrated Virtual Machine + Scale Set to be created. + type: boolean + extensionsTimeBudget: + description: Specifies the time alloted for all extensions to + start. The time duration should be between 15 minutes and 120 + minutes (inclusive) and should be specified in ISO 8601 format. + The default value is 90 minutes (PT1H30M). + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Managed Identity IDs + to be assigned to this Orchestrated Windows Virtual Machine + Scale Set. + items: + type: string + type: array + type: + description: The type of Managed Identity that should be + configured on this Orchestrated Windows Virtual Machine + Scale Set. Only possible value is UserAssigned. + type: string + type: object + type: array + instances: + description: The number of Virtual Machines in the Orcestrated + Virtual Machine Scale Set. + type: number + licenseType: + description: Specifies the type of on-premise license (also known + as Azure Hybrid Use Benefit) which should be used for this Orchestrated + Virtual Machine Scale Set. Possible values are None, Windows_Client + and Windows_Server. + type: string + location: + description: The Azure location where the Orchestrated Virtual + Machine Scale Set should exist. Changing this forces a new resource + to be created. + type: string + maxBidPrice: + description: The maximum price you're willing to pay for each + Orchestrated Virtual Machine in this Scale Set, in US Dollars; + which must be greater than the current spot price. If this bid + price falls below the current spot price the Virtual Machines + in the Scale Set will be evicted using the eviction_policy. + Defaults to -1, which means that each Virtual Machine in the + Orchestrated Scale Set should not be evicted for price reasons. + type: number + networkInterface: + description: One or more network_interface blocks as defined below. + items: + properties: + dnsServers: + description: A list of IP Addresses of DNS Servers which + should be assigned to the Network Interface. + items: + type: string + type: array + enableAcceleratedNetworking: + description: Does this Network Interface support Accelerated + Networking? Possible values are true and false. Defaults + to false. + type: boolean + enableIpForwarding: + description: Does this Network Interface support IP Forwarding? + Possible values are true and false. Defaults to false. + type: boolean + ipConfiguration: + description: One or more ip_configuration blocks as defined + above. + items: + properties: + applicationGatewayBackendAddressPoolIds: + description: A list of Backend Address Pools IDs from + a Application Gateway which this Orchestrated Virtual + Machine Scale Set should be connected to. + items: + type: string + type: array + applicationSecurityGroupIds: + description: A list of Application Security Group + IDs which this Orchestrated Virtual Machine Scale + Set should be connected to. + items: + type: string + type: array + loadBalancerBackendAddressPoolIds: + description: A list of Backend Address Pools IDs from + a Load Balancer which this Orchestrated Virtual + Machine Scale Set should be connected to. + items: + type: string + type: array + name: + description: The Name of the Public IP Address Configuration. + type: string + primary: + description: Is this the Primary IP Configuration? + Possible values are true and false. Defaults to + false. + type: boolean + publicIpAddress: + description: A public_ip_address block as defined + below. + items: + properties: + domainNameLabel: + description: The Prefix which should be used + for the Domain Name Label for each Virtual + Machine Instance. Azure concatenates the Domain + Name Label and Virtual Machine Index to create + a unique Domain Name Label for each Virtual + Machine. Valid values must be between 1 and + 26 characters long, start with a lower case + letter, end with a lower case letter or number + and contains only a-z, 0-9 and hyphens. + type: string + idleTimeoutInMinutes: + description: The Idle Timeout in Minutes for + the Public IP Address. Possible values are + in the range 4 to 32. + type: number + ipTag: + description: One or more ip_tag blocks as defined + above. Changing this forces a new resource + to be created. + items: + properties: + tag: + description: The IP Tag associated with + the Public IP, such as SQL or Storage. + Changing this forces a new resource + to be created. + type: string + type: + description: The Type of IP Tag, such + as FirstPartyUsage. Changing this forces + a new resource to be created. + type: string + type: object + type: array + name: + description: The Name of the Public IP Address + Configuration. + type: string + publicIpPrefixId: + description: The ID of the Public IP Address + Prefix from where Public IP Addresses should + be allocated. Changing this forces a new resource + to be created. + type: string + skuName: + description: 'The name of the SKU to be used + by this Orcestrated Virtual Machine Scale + Set. Valid values include: any of the General + purpose, Compute optimized, Memory optimized, + Storage optimized, GPU optimized, FPGA optimized, + High performance, or Previous generation virtual + machine SKUs.' + type: string + version: + description: Specifies the version of the image + used to create the virtual machines. + type: string + type: object + type: array + version: + description: Specifies the version of the image used + to create the virtual machines. + type: string + type: object + type: array + name: + description: The Name which should be used for this Network + Interface. Changing this forces a new resource to be created. + type: string + networkSecurityGroupId: + description: The ID of a Network Security Group which should + be assigned to this Network Interface. + type: string + primary: + description: Is this the Primary IP Configuration? Possible + values are true and false. Defaults to false. + type: boolean + type: object + type: array + osDisk: + description: An os_disk block as defined below. + items: + properties: + caching: + description: The Type of Caching which should be used for + the Internal OS Disk. Possible values are None, ReadOnly + and ReadWrite. + type: string + diffDiskSettings: + description: A diff_disk_settings block as defined above. + Changing this forces a new resource to be created. + items: + properties: + option: + description: Specifies the Ephemeral Disk Settings + for the OS Disk. At this time the only possible + value is Local. Changing this forces a new resource + to be created. + type: string + placement: + description: Specifies where to store the Ephemeral + Disk. Possible values are CacheDisk and ResourceDisk. + Defaults to CacheDisk. Changing this forces a new + resource to be created. + type: string + type: object + type: array + diskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to encrypt this OS Disk. Changing this forces + a new resource to be created. + type: string + diskSizeGb: + description: The Size of the Internal OS Disk in GB, if + you wish to vary from the size used in the image this + Virtual Machine Scale Set is sourced from. + type: number + storageAccountType: + description: The Type of Storage Account which should back + this the Internal OS Disk. Possible values include Standard_LRS, + StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. + Changing this forces a new resource to be created. + type: string + writeAcceleratorEnabled: + description: Specifies if Write Accelerator is enabled on + the OS Disk. Defaults to false. + type: boolean + type: object + type: array + osProfile: + description: An os_profile block as defined below. + items: + properties: + linuxConfiguration: + description: A linux_configuration block as documented below. + items: + properties: + adminSshKey: + description: A admin_ssh_key block as documented below. + items: + properties: + publicKey: + description: The Public Key which should be + used for authentication, which needs to be + at least 2048-bit and in ssh-rsa format. + type: string + username: + description: The Username for which this Public + SSH Key should be configured. + type: string + type: object + type: array + adminUsername: + description: The username of the local administrator + on each Orchestrated Virtual Machine Scale Set instance. + Changing this forces a new resource to be created. + type: string + computerNamePrefix: + description: The prefix which should be used for the + name of the Virtual Machines in this Scale Set. + If unspecified this defaults to the value for the + name field. If the value of the name field is not + a valid computer_name_prefix, then you must specify + computer_name_prefix. Changing this forces a new + resource to be created. + type: string + disablePasswordAuthentication: + description: When an admin_password is specified disable_password_authentication + must be set to false. Defaults to true. + type: boolean + patchAssessmentMode: + description: Specifies the mode of VM Guest Patching + for the virtual machines that are associated to + the Orchestrated Virtual Machine Scale Set. Possible + values are AutomaticByPlatform or ImageDefault. + Defaults to ImageDefault. + type: string + patchMode: + description: Specifies the mode of in-guest patching + of this Windows Virtual Machine. Possible values + are Manual, AutomaticByOS and AutomaticByPlatform. + Defaults to AutomaticByOS. For more information + on patch modes please see the product documentation. + type: string + provisionVmAgent: + description: Should the Azure VM Agent be provisioned + on each Virtual Machine in the Scale Set? Defaults + to true. Changing this value forces a new resource + to be created. + type: boolean + secret: + description: One or more secret blocks as defined + below. + items: + properties: + certificate: + description: One or more certificate blocks + as defined below. + items: + properties: + url: + description: The Secret URL of a Key Vault + Certificate. + type: string + type: object + type: array + keyVaultId: + description: The ID of the Key Vault from which + all Secrets should be sourced. + type: string + type: object + type: array + type: object + type: array + windowsConfiguration: + description: A windows_configuration block as documented + below. + items: + properties: + adminUsername: + description: The username of the local administrator + on each Orchestrated Virtual Machine Scale Set instance. + Changing this forces a new resource to be created. + type: string + computerNamePrefix: + description: The prefix which should be used for the + name of the Virtual Machines in this Scale Set. + If unspecified this defaults to the value for the + name field. If the value of the name field is not + a valid computer_name_prefix, then you must specify + computer_name_prefix. Changing this forces a new + resource to be created. + type: string + enableAutomaticUpdates: + description: Are automatic updates enabled for this + Virtual Machine? Defaults to true. + type: boolean + hotpatchingEnabled: + description: Should the VM be patched without requiring + a reboot? Possible values are true or false. Defaults + to false. For more information about hot patching + please see the product documentation. + type: boolean + patchAssessmentMode: + description: Specifies the mode of VM Guest Patching + for the virtual machines that are associated to + the Orchestrated Virtual Machine Scale Set. Possible + values are AutomaticByPlatform or ImageDefault. + Defaults to ImageDefault. + type: string + patchMode: + description: Specifies the mode of in-guest patching + of this Windows Virtual Machine. Possible values + are Manual, AutomaticByOS and AutomaticByPlatform. + Defaults to AutomaticByOS. For more information + on patch modes please see the product documentation. + type: string + provisionVmAgent: + description: Should the Azure VM Agent be provisioned + on each Virtual Machine in the Scale Set? Defaults + to true. Changing this value forces a new resource + to be created. + type: boolean + secret: + description: One or more secret blocks as defined + below. + items: + properties: + certificate: + description: One or more certificate blocks + as defined below. + items: + properties: + store: + description: The certificate store on + the Virtual Machine where the certificate + should be added. + type: string + url: + description: The Secret URL of a Key Vault + Certificate. + type: string + type: object + type: array + keyVaultId: + description: The ID of the Key Vault from which + all Secrets should be sourced. + type: string + type: object + type: array + timezone: + description: Specifies the time zone of the virtual + machine, the possible values are defined here. + type: string + winrmListener: + description: One or more winrm_listener blocks as + defined below. Changing this forces a new resource + to be created. + items: + properties: + certificateUrl: + description: The Secret URL of a Key Vault Certificate, + which must be specified when protocol is set + to Https. Changing this forces a new resource + to be created. + type: string + protocol: + description: Specifies the protocol of listener. + Possible values are Http or Https. Changing + this forces a new resource to be created. + type: string + type: object + type: array + type: object + type: array + type: object + type: array + plan: + description: A plan block as documented below. Changing this forces + a new resource to be created. + items: + properties: + name: + description: Specifies the name of the image from the marketplace. + Changing this forces a new resource to be created. + type: string + product: + description: Specifies the product of the image from the + marketplace. Changing this forces a new resource to be + created. + type: string + publisher: + description: Specifies the publisher of the image. Changing + this forces a new resource to be created. + type: string + type: object + type: array + platformFaultDomainCount: + description: Specifies the number of fault domains that are used + by this Orchestrated Virtual Machine Scale Set. Changing this + forces a new resource to be created. + type: number + priority: + description: The Priority of this Orchestrated Virtual Machine + Scale Set. Possible values are Regular and Spot. Defaults to + Regular. Changing this value forces a new resource. + type: string + priorityMix: + description: a priority_mix block as defined below + items: + properties: + baseRegularCount: + description: Specifies the base number of VMs of Regular + priority that will be created before any VMs of priority + Spot are created. Possible values are integers between + 0 and 1000. Defaults to 0. + type: number + regularPercentageAboveBase: + description: Specifies the desired percentage of VM instances + that are of Regular priority after the base count has + been reached. Possible values are integers between 0 and + 100. Defaults to 0. + type: number + type: object + type: array + proximityPlacementGroupId: + description: The ID of the Proximity Placement Group which the + Orchestrated Virtual Machine should be assigned to. Changing + this forces a new resource to be created. + type: string + singlePlacementGroup: + description: Should this Virtual Machine Scale Set be limited + to a Single Placement Group, which means the number of instances + will be capped at 100 Virtual Machines. Possible values are + true or false. + type: boolean + skuName: + description: 'The name of the SKU to be used by this Orcestrated + Virtual Machine Scale Set. Valid values include: any of the + General purpose, Compute optimized, Memory optimized, Storage + optimized, GPU optimized, FPGA optimized, High performance, + or Previous generation virtual machine SKUs.' + type: string + sourceImageId: + description: The ID of an Image which each Virtual Machine in + this Scale Set should be based on. Possible Image ID types include + Image IDs, Shared Image IDs, Shared Image Version IDs, Community + Gallery Image IDs, Community Gallery Image Version IDs, Shared + Gallery Image IDs and Shared Gallery Image Version IDs. + type: string + sourceImageReference: + description: A source_image_reference block as defined below. + items: + properties: + offer: + description: Specifies the offer of the image used to create + the virtual machines. Changing this forces a new resource + to be created. + type: string + publisher: + description: Specifies the publisher of the image used to + create the virtual machines. Changing this forces a new + resource to be created. + type: string + sku: + description: Specifies the SKU of the image used to create + the virtual machines. + type: string + version: + description: Specifies the version of the image used to + create the virtual machines. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to this + Orchestrated Virtual Machine Scale Set. + type: object + terminationNotification: + description: A termination_notification block as defined below. + items: + properties: + enabled: + description: Should the termination notification be enabled + on this Virtual Machine Scale Set? Possible values true + or false + type: boolean + timeout: + description: Length of time (in minutes, between 5 and 15) + a notification to be sent to the VM on the instance metadata + server till the VM gets deleted. The time duration should + be specified in ISO 8601 format. Defaults to PT5M. + type: string + type: object + type: array + zoneBalance: + description: Should the Virtual Machines in this Scale Set be + strictly evenly distributed across Availability Zones? Defaults + to false. Changing this forces a new resource to be created. + type: boolean + zones: + description: Specifies a list of Availability Zones in which this + Orchestrated Virtual Machine should be located. Changing this + forces a new Orchestrated Virtual Machine to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1303,9 +1988,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: platformFaultDomainCount is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.platformFaultDomainCount) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.platformFaultDomainCount) + || has(self.initProvider.platformFaultDomainCount)' status: description: OrchestratedVirtualMachineScaleSetStatus defines the observed state of OrchestratedVirtualMachineScaleSet. diff --git a/package/crds/compute.azure.upbound.io_proximityplacementgroups.yaml b/package/crds/compute.azure.upbound.io_proximityplacementgroups.yaml index c48a19649..396fe02bc 100644 --- a/package/crds/compute.azure.upbound.io_proximityplacementgroups.yaml +++ b/package/crds/compute.azure.upbound.io_proximityplacementgroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: proximityplacementgroups.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -170,21 +169,65 @@ spec: Group. Changing this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowedVmSizes: + description: Specifies the supported sizes of Virtual Machines + that can be created in the Proximity Placement Group. + items: + type: string + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zone: + description: Specifies the supported zone of the Proximity Placement + Group. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -358,7 +401,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ProximityPlacementGroupStatus defines the observed state of ProximityPlacementGroup. diff --git a/package/crds/compute.azure.upbound.io_sharedimagegalleries.yaml b/package/crds/compute.azure.upbound.io_sharedimagegalleries.yaml index a5e8ef244..2d61aef8d 100644 --- a/package/crds/compute.azure.upbound.io_sharedimagegalleries.yaml +++ b/package/crds/compute.azure.upbound.io_sharedimagegalleries.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sharedimagegalleries.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -161,21 +160,58 @@ spec: description: A mapping of tags to assign to the Shared Image Gallery. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description for this Shared Image Gallery. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Shared Image Gallery. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -349,7 +385,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SharedImageGalleryStatus defines the observed state of SharedImageGallery. properties: diff --git a/package/crds/compute.azure.upbound.io_sharedimages.yaml b/package/crds/compute.azure.upbound.io_sharedimages.yaml index 2016980dd..7e5c55caa 100644 --- a/package/crds/compute.azure.upbound.io_sharedimages.yaml +++ b/package/crds/compute.azure.upbound.io_sharedimages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sharedimages.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -207,10 +206,6 @@ spec: description: The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created. type: string - required: - - offer - - publisher - - sku type: object type: array location: @@ -256,8 +251,6 @@ spec: description: The Purchase Plan Publisher for this Gallery Image. Changing this forces a new resource to be created. type: string - required: - - name type: object type: array releaseNoteUri: @@ -361,21 +354,172 @@ spec: this forces a new resource to be created. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + acceleratedNetworkSupportEnabled: + description: Specifies if the Shared Image supports Accelerated + Network. Changing this forces a new resource to be created. + type: boolean + architecture: + description: CPU architecture supported by an OS. Possible values + are x64 and Arm64. Defaults to x64. Changing this forces a new + resource to be created. + type: string + confidentialVmEnabled: + description: Specifies if Confidential Virtual Machines enabled. + It will enable all the features of trusted, with higher confidentiality + features for isolate machines or encrypted data. Available for + Gen2 machines. Changing this forces a new resource to be created. + type: boolean + confidentialVmSupported: + description: Specifies if supports creation of both Confidential + virtual machines and Gen2 virtual machines with standard security + from a compatible Gen2 OS disk VHD or Gen2 Managed image. Changing + this forces a new resource to be created. + type: boolean + description: + description: A description of this Shared Image. + type: string + diskTypesNotAllowed: + description: One or more Disk Types not allowed for the Image. + Possible values include Standard_LRS and Premium_LRS. + items: + type: string + type: array + endOfLifeDate: + description: The end of life date in RFC3339 format of the Image. + type: string + eula: + description: The End User Licence Agreement for the Shared Image. + Changing this forces a new resource to be created. + type: string + hyperVGeneration: + description: The generation of HyperV that the Virtual Machine + used to create the Shared Image is based on. Possible values + are V1 and V2. Defaults to V1. Changing this forces a new resource + to be created. + type: string + identifier: + description: An identifier block as defined below. + items: + properties: + offer: + description: The Offer Name for this Shared Image. Changing + this forces a new resource to be created. + type: string + publisher: + description: The Publisher Name for this Gallery Image. + Changing this forces a new resource to be created. + type: string + sku: + description: The Name of the SKU for this Gallery Image. + Changing this forces a new resource to be created. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + Shared Image Gallery exists. Changing this forces a new resource + to be created. + type: string + maxRecommendedMemoryInGb: + description: Maximum memory in GB recommended for the Image. + type: number + maxRecommendedVcpuCount: + description: Maximum count of vCPUs recommended for the Image. + type: number + minRecommendedMemoryInGb: + description: Minimum memory in GB recommended for the Image. + type: number + minRecommendedVcpuCount: + description: Minimum count of vCPUs recommended for the Image. + type: number + osType: + description: The type of Operating System present in this Shared + Image. Possible values are Linux and Windows. Changing this + forces a new resource to be created. + type: string + privacyStatementUri: + description: The URI containing the Privacy Statement associated + with this Shared Image. Changing this forces a new resource + to be created. + type: string + purchasePlan: + description: A purchase_plan block as defined below. + items: + properties: + name: + description: The Purchase Plan Name for this Shared Image. + Changing this forces a new resource to be created. + type: string + product: + description: The Purchase Plan Product for this Gallery + Image. Changing this forces a new resource to be created. + type: string + publisher: + description: The Purchase Plan Publisher for this Gallery + Image. Changing this forces a new resource to be created. + type: string + type: object + type: array + releaseNoteUri: + description: The URI containing the Release Notes associated with + this Shared Image. + type: string + specialized: + description: Specifies that the Operating System used inside this + Image has not been Generalized (for example, sysprep on Windows + has not been run). Changing this forces a new resource to be + created. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Shared Image. + type: object + trustedLaunchEnabled: + description: Specifies if Trusted Launch has to be enabled for + the Virtual Machine created from the Shared Image. Changing + this forces a new resource to be created. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -549,11 +693,17 @@ spec: type: object x-kubernetes-validations: - message: identifier is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.identifier) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.identifier) + || has(self.initProvider.identifier)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: osType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.osType) + || has(self.initProvider.osType)' status: description: SharedImageStatus defines the observed state of SharedImage. properties: diff --git a/package/crds/compute.azure.upbound.io_snapshots.yaml b/package/crds/compute.azure.upbound.io_snapshots.yaml index 5a7585716..3fb174f02 100644 --- a/package/crds/compute.azure.upbound.io_snapshots.yaml +++ b/package/crds/compute.azure.upbound.io_snapshots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: snapshots.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -92,9 +91,6 @@ spec: description: The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. type: string - required: - - secretUrl - - sourceVaultId type: object type: array enabled: @@ -112,9 +108,6 @@ spec: description: The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. type: string - required: - - keyUrl - - sourceVaultId type: object type: array type: object @@ -301,21 +294,114 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + createOption: + description: Indicates how the snapshot is to be created. Possible + values are Copy or Import. + type: string + diskSizeGb: + description: The size of the Snapshotted Disk in GB. + type: number + encryptionSettings: + description: A encryption_settings block as defined below. + items: + properties: + diskEncryptionKey: + description: A disk_encryption_key block as defined below. + items: + properties: + secretUrl: + description: The URL to the Key Vault Secret used + as the Disk Encryption Key. This can be found as + id on the azurerm_key_vault_secret resource. + type: string + sourceVaultId: + description: The ID of the source Key Vault. This + can be found as id on the azurerm_key_vault resource. + type: string + type: object + type: array + enabled: + type: boolean + keyEncryptionKey: + description: A key_encryption_key block as defined below. + items: + properties: + keyUrl: + description: The URL to the Key Vault Key used as + the Key Encryption Key. This can be found as id + on the azurerm_key_vault_key resource. + type: string + sourceVaultId: + description: The ID of the source Key Vault. This + can be found as id on the azurerm_key_vault resource. + type: string + type: object + type: array + type: object + type: array + incrementalEnabled: + description: Specifies if the Snapshot is incremental. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + sourceResourceId: + description: Specifies a reference to an existing snapshot, when + create_option is Copy. Changing this forces a new resource to + be created. + type: string + storageAccountId: + description: Specifies the ID of an storage account. Used with + source_uri to allow authorization during import of unmanaged + blobs from a different subscription. Changing this forces a + new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -489,9 +575,13 @@ spec: type: object x-kubernetes-validations: - message: createOption is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.createOption) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.createOption) + || has(self.initProvider.createOption)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SnapshotStatus defines the observed state of Snapshot. properties: diff --git a/package/crds/compute.azure.upbound.io_sshpublickeys.yaml b/package/crds/compute.azure.upbound.io_sshpublickeys.yaml index 0fdcfe3e7..9234c6e07 100644 --- a/package/crds/compute.azure.upbound.io_sshpublickeys.yaml +++ b/package/crds/compute.azure.upbound.io_sshpublickeys.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sshpublickeys.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -164,21 +163,61 @@ spec: SSH Public Key. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the SSH Public Key should + exist. Changing this forces a new SSH Public Key to be created. + type: string + publicKey: + description: SSH public key used to authenticate to a virtual + machine through ssh. the provided public key needs to be at + least 2048-bit and in ssh-rsa format. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + SSH Public Key. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -352,9 +391,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: publicKey is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publicKey) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.publicKey) + || has(self.initProvider.publicKey)' status: description: SSHPublicKeyStatus defines the observed state of SSHPublicKey. properties: diff --git a/package/crds/compute.azure.upbound.io_windowsvirtualmachines.yaml b/package/crds/compute.azure.upbound.io_windowsvirtualmachines.yaml index 24c38e0c4..cc8f175f0 100644 --- a/package/crds/compute.azure.upbound.io_windowsvirtualmachines.yaml +++ b/package/crds/compute.azure.upbound.io_windowsvirtualmachines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: windowsvirtualmachines.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -110,7 +109,6 @@ spec: type: string required: - contentSecretRef - - setting type: object type: array adminPasswordSecretRef: @@ -243,8 +241,6 @@ spec: description: Specifies the Gallery Application Version resource ID. type: string - required: - - versionId type: object type: array hotpatchingEnabled: @@ -268,8 +264,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array licenseType: @@ -401,8 +395,6 @@ spec: Defaults to CacheDisk. Changing this forces a new resource to be created. type: string - required: - - option type: object type: array diskEncryptionSetId: @@ -440,9 +432,6 @@ spec: description: Should Write Accelerator be Enabled for this OS Disk? Defaults to false. type: boolean - required: - - caching - - storageAccountType type: object type: array patchAssessmentMode: @@ -476,10 +465,6 @@ spec: Image this Virtual Machine should be created from. Changing this forces a new resource to be created. type: string - required: - - name - - product - - publisher type: object type: array platformFaultDomain: @@ -598,18 +583,12 @@ spec: url: description: The Secret URL of a Key Vault Certificate. type: string - required: - - store - - url type: object type: array keyVaultId: description: The ID of the Key Vault from which all Secrets should be sourced. type: string - required: - - certificate - - keyVaultId type: object type: array secureBootEnabled: @@ -654,11 +633,6 @@ spec: create the virtual machines. Changing this forces a new resource to be created. type: string - required: - - offer - - publisher - - sku - - version type: object type: array tags: @@ -681,8 +655,6 @@ spec: server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. type: string - required: - - enabled type: object type: array timezone: @@ -719,8 +691,6 @@ spec: values are Http or Https. Changing this forces a new resource to be created. type: string - required: - - protocol type: object type: array zone: @@ -729,21 +699,452 @@ spec: forces a new Windows Virtual Machine to be created.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalCapabilities: + description: A additional_capabilities block as defined below. + items: + properties: + ultraSsdEnabled: + description: Should the capacity to enable Data Disks of + the UltraSSD_LRS storage account type be supported on + this Virtual Machine? Defaults to false. + type: boolean + type: object + type: array + additionalUnattendContent: + description: One or more additional_unattend_content blocks as + defined below. Changing this forces a new resource to be created. + items: + properties: + setting: + description: The name of the setting to which the content + applies. Possible values are AutoLogon and FirstLogonCommands. + Changing this forces a new resource to be created. + type: string + type: object + type: array + adminUsername: + description: The username of the local administrator used for + the Virtual Machine. Changing this forces a new resource to + be created. + type: string + allowExtensionOperations: + description: Should Extension Operations be allowed on this Virtual + Machine? Defaults to true. + type: boolean + availabilitySetId: + description: Specifies the ID of the Availability Set in which + the Virtual Machine should exist. Changing this forces a new + resource to be created. + type: string + bootDiagnostics: + description: A boot_diagnostics block as defined below. + items: + properties: + storageAccountUri: + description: The Primary/Secondary Endpoint for the Azure + Storage Account which should be used to store Boot Diagnostics, + including Console Output and Screenshots from the Hypervisor. + type: string + type: object + type: array + capacityReservationGroupId: + description: Specifies the ID of the Capacity Reservation Group + which the Virtual Machine should be allocated to. + type: string + computerName: + description: Specifies the Hostname which should be used for this + Virtual Machine. If unspecified this defaults to the value for + the name field. If the value of the name field is not a valid + computer_name, then you must specify computer_name. Changing + this forces a new resource to be created. + type: string + dedicatedHostGroupId: + description: The ID of a Dedicated Host Group that this Windows + Virtual Machine should be run within. Conflicts with dedicated_host_id. + type: string + dedicatedHostId: + description: The ID of a Dedicated Host where this machine should + be run on. Conflicts with dedicated_host_group_id. + type: string + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Windows Virtual Machine should exist. Changing this forces + a new Windows Virtual Machine to be created. + type: string + enableAutomaticUpdates: + description: Specifies if Automatic Updates are Enabled for the + Windows Virtual Machine. Changing this forces a new resource + to be created. Defaults to true. + type: boolean + encryptionAtHostEnabled: + description: Should all of the disks (including the temp disk) + attached to this Virtual Machine be encrypted by enabling Encryption + at Host? + type: boolean + evictionPolicy: + description: Specifies what should happen when the Virtual Machine + is evicted for price reasons when using a Spot instance. Possible + values are Deallocate and Delete. Changing this forces a new + resource to be created. + type: string + extensionsTimeBudget: + description: Specifies the duration allocated for all extensions + to start. The time duration should be between 15 minutes and + 120 minutes (inclusive) and should be specified in ISO 8601 + format. Defaults to 90 minutes (PT1H30M). + type: string + galleryApplication: + description: One or more gallery_application blocks as defined + below. + items: + properties: + configurationBlobUri: + description: Specifies the URI to an Azure Blob that will + replace the default configuration for the package if provided. + type: string + order: + description: Specifies the order in which the packages have + to be installed. Possible values are between 0 and 2,147,483,647. + type: number + tag: + description: Specifies a passthrough value for more generic + context. This field can be any valid string value. + type: string + versionId: + description: Specifies the Gallery Application Version resource + ID. + type: string + type: object + type: array + hotpatchingEnabled: + description: Should the VM be patched without requiring a reboot? + Possible values are true or false. Defaults to false. For more + information about hot patching please see the product documentation. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Windows Virtual Machine. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Windows Virtual Machine. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + licenseType: + description: Specifies the type of on-premise license (also known + as Azure Hybrid Use Benefit) which should be used for this Virtual + Machine. Possible values are None, Windows_Client and Windows_Server. + type: string + location: + description: The Azure location where the Windows Virtual Machine + should exist. Changing this forces a new resource to be created. + type: string + maxBidPrice: + description: The maximum price you're willing to pay for this + Virtual Machine, in US Dollars; which must be greater than the + current spot price. If this bid price falls below the current + spot price the Virtual Machine will be evicted using the eviction_policy. + Defaults to -1, which means that the Virtual Machine should + not be evicted for price reasons. + type: number + osDisk: + description: A os_disk block as defined below. + items: + properties: + caching: + description: The Type of Caching which should be used for + the Internal OS Disk. Possible values are None, ReadOnly + and ReadWrite. + type: string + diffDiskSettings: + description: A diff_disk_settings block as defined above. + Changing this forces a new resource to be created. + items: + properties: + option: + description: Specifies the Ephemeral Disk Settings + for the OS Disk. At this time the only possible + value is Local. Changing this forces a new resource + to be created. + type: string + placement: + description: Specifies where to store the Ephemeral + Disk. Possible values are CacheDisk and ResourceDisk. + Defaults to CacheDisk. Changing this forces a new + resource to be created. + type: string + type: object + type: array + diskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. + type: string + diskSizeGb: + description: The Size of the Internal OS Disk in GB, if + you wish to vary from the size used in the image this + Virtual Machine is sourced from. + type: number + name: + description: The name which should be used for the Internal + OS Disk. Changing this forces a new resource to be created. + type: string + secureVmDiskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to Encrypt this OS Disk when the Virtual Machine + is a Confidential VM. Conflicts with disk_encryption_set_id. + Changing this forces a new resource to be created. + type: string + securityEncryptionType: + description: Encryption Type when the Virtual Machine is + a Confidential VM. Possible values are VMGuestStateOnly + and DiskWithVMGuestState. Changing this forces a new resource + to be created. + type: string + storageAccountType: + description: The Type of Storage Account which should back + this the Internal OS Disk. Possible values are Standard_LRS, + StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. + Changing this forces a new resource to be created. + type: string + writeAcceleratorEnabled: + description: Should Write Accelerator be Enabled for this + OS Disk? Defaults to false. + type: boolean + type: object + type: array + patchAssessmentMode: + description: Specifies the mode of VM Guest Patching for the Virtual + Machine. Possible values are AutomaticByPlatform or ImageDefault. + Defaults to ImageDefault. + type: string + patchMode: + description: Specifies the mode of in-guest patching to this Windows + Virtual Machine. Possible values are Manual, AutomaticByOS and + AutomaticByPlatform. Defaults to AutomaticByOS. For more information + on patch modes please see the product documentation. + type: string + plan: + description: A plan block as defined below. Changing this forces + a new resource to be created. + items: + properties: + name: + description: Specifies the Name of the Marketplace Image + this Virtual Machine should be created from. Changing + this forces a new resource to be created. + type: string + product: + description: Specifies the Product of the Marketplace Image + this Virtual Machine should be created from. Changing + this forces a new resource to be created. + type: string + publisher: + description: Specifies the Publisher of the Marketplace + Image this Virtual Machine should be created from. Changing + this forces a new resource to be created. + type: string + type: object + type: array + platformFaultDomain: + description: Specifies the Platform Fault Domain in which this + Windows Virtual Machine should be created. Defaults to -1, which + means this will be automatically assigned to a fault domain + that best maintains balance across the available fault domains. + Changing this forces a new Windows Virtual Machine to be created. + type: number + priority: + description: Specifies the priority of this Virtual Machine. Possible + values are Regular and Spot. Defaults to Regular. Changing this + forces a new resource to be created. + type: string + provisionVmAgent: + description: Should the Azure VM Agent be provisioned on this + Virtual Machine? Defaults to true. Changing this forces a new + resource to be created. + type: boolean + proximityPlacementGroupId: + description: The ID of the Proximity Placement Group which the + Virtual Machine should be assigned to. + type: string + secret: + description: One or more secret blocks as defined below. + items: + properties: + certificate: + description: One or more certificate blocks as defined above. + items: + properties: + store: + description: The certificate store on the Virtual + Machine where the certificate should be added. + type: string + url: + description: The Secret URL of a Key Vault Certificate. + type: string + type: object + type: array + keyVaultId: + description: The ID of the Key Vault from which all Secrets + should be sourced. + type: string + type: object + type: array + secureBootEnabled: + description: Specifies if Secure Boot and Trusted Launch is enabled + for the Virtual Machine. Changing this forces a new resource + to be created. + type: boolean + size: + description: The SKU which should be used for this Virtual Machine, + such as Standard_F2. + type: string + sourceImageId: + description: The ID of the Image which this Virtual Machine should + be created from. Changing this forces a new resource to be created. + Possible Image ID types include Image IDs, Shared Image IDs, + Shared Image Version IDs, Community Gallery Image IDs, Community + Gallery Image Version IDs, Shared Gallery Image IDs and Shared + Gallery Image Version IDs. + type: string + sourceImageReference: + description: A source_image_reference block as defined below. + Changing this forces a new resource to be created. + items: + properties: + offer: + description: Specifies the offer of the image used to create + the virtual machines. Changing this forces a new resource + to be created. + type: string + publisher: + description: Specifies the publisher of the image used to + create the virtual machines. Changing this forces a new + resource to be created. + type: string + sku: + description: Specifies the SKU of the image used to create + the virtual machines. Changing this forces a new resource + to be created. + type: string + version: + description: Specifies the version of the image used to + create the virtual machines. Changing this forces a new + resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to this + Virtual Machine. + type: object + terminationNotification: + description: A termination_notification block as defined below. + items: + properties: + enabled: + description: Should the termination notification be enabled + on this Virtual Machine? + type: boolean + timeout: + description: Length of time (in minutes, between 5 and 15) + a notification to be sent to the VM on the instance metadata + server till the VM gets deleted. The time duration should + be specified in ISO 8601 format. Defaults to PT5M. + type: string + type: object + type: array + timezone: + description: Specifies the Time Zone which should be used by the + Virtual Machine, the possible values are defined here. Changing + this forces a new resource to be created. + type: string + userData: + description: The Base64-Encoded User Data which should be used + for this Virtual Machine. + type: string + virtualMachineScaleSetId: + description: Specifies the Orchestrated Virtual Machine Scale + Set that this Virtual Machine should be created within. Changing + this forces a new resource to be created. + type: string + vtpmEnabled: + description: Specifies if vTPM (virtual Trusted Platform Module) + and Trusted Launch is enabled for the Virtual Machine. Changing + this forces a new resource to be created. + type: boolean + winrmListener: + description: One or more winrm_listener blocks as defined below. + Changing this forces a new resource to be created. + items: + properties: + certificateUrl: + description: The Secret URL of a Key Vault Certificate, + which must be specified when protocol is set to Https. + Changing this forces a new resource to be created. + type: string + protocol: + description: Specifies the protocol of listener. Possible + values are Http or Https. Changing this forces a new resource + to be created. + type: string + type: object + type: array + zone: + description: '* zones - Specifies the Availability Zone in which + this Windows Virtual Machine should be located. Changing this + forces a new Windows Virtual Machine to be created.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -917,15 +1318,24 @@ spec: type: object x-kubernetes-validations: - message: adminPasswordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminPasswordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.adminPasswordSecretRef)' - message: adminUsername is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminUsername) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.adminUsername) + || has(self.initProvider.adminUsername)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: osDisk is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osDisk) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.osDisk) + || has(self.initProvider.osDisk)' - message: size is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.size) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.size) + || has(self.initProvider.size)' status: description: WindowsVirtualMachineStatus defines the observed state of WindowsVirtualMachine. diff --git a/package/crds/compute.azure.upbound.io_windowsvirtualmachinescalesets.yaml b/package/crds/compute.azure.upbound.io_windowsvirtualmachinescalesets.yaml index ee4ea5a8f..9d9be39fd 100644 --- a/package/crds/compute.azure.upbound.io_windowsvirtualmachinescalesets.yaml +++ b/package/crds/compute.azure.upbound.io_windowsvirtualmachinescalesets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: windowsvirtualmachinescalesets.compute.azure.upbound.io spec: group: compute.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -113,7 +112,6 @@ spec: type: string required: - contentSecretRef - - setting type: object type: array adminPasswordSecretRef: @@ -158,8 +156,6 @@ spec: VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M. type: string - required: - - enabled type: object type: array automaticOsUpgradePolicy: @@ -176,9 +172,6 @@ spec: to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? type: boolean - required: - - disableAutomaticRollback - - enableAutomaticOsUpgrade type: object type: array bootDiagnostics: @@ -272,11 +265,6 @@ spec: description: Should Write Accelerator be Enabled for this OS Disk? Defaults to false. type: boolean - required: - - caching - - diskSizeGb - - lun - - storageAccountType type: object type: array doNotRunExtensionsOnOverprovisionedMachines: @@ -338,9 +326,6 @@ spec: sourceVaultId: description: The ID of the source Key Vault. type: string - required: - - secretUrl - - sourceVaultId type: object type: array protectedSettingsSecretRef: @@ -381,11 +366,6 @@ spec: description: Specifies the version of the extension to use, available versions can be found using the Azure CLI. type: string - required: - - name - - publisher - - type - - typeHandlerVersion type: object type: array extensionOperationsEnabled: @@ -424,8 +404,6 @@ spec: description: Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created. type: string - required: - - versionId type: object type: array galleryApplications: @@ -447,8 +425,6 @@ spec: as SQL or Storage. Changing this forces a new resource to be created. type: string - required: - - packageReferenceId type: object type: array healthProbeId: @@ -479,8 +455,6 @@ spec: Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array instances: @@ -598,9 +572,6 @@ spec: as FirstPartyUsage. Changing this forces a new resource to be created. type: string - required: - - tag - - type type: object type: array name: @@ -617,8 +588,6 @@ spec: description: Specifies the version of the image used to create the virtual machines. type: string - required: - - name type: object type: array subnetId: @@ -709,8 +678,6 @@ spec: description: Specifies the version of the image used to create the virtual machines. type: string - required: - - name type: object type: array name: @@ -724,9 +691,6 @@ spec: primary: description: Is this the Primary IP Configuration? type: boolean - required: - - ipConfiguration - - name type: object type: array osDisk: @@ -755,8 +719,6 @@ spec: Defaults to CacheDisk. Changing this forces a new resource to be created. type: string - required: - - option type: object type: array diskEncryptionSetId: @@ -791,9 +753,6 @@ spec: description: Should Write Accelerator be Enabled for this OS Disk? Defaults to false. type: boolean - required: - - caching - - storageAccountType type: object type: array overprovision: @@ -823,10 +782,6 @@ spec: description: Specifies the publisher of the image. Changing this forces a new resource to be created. type: string - required: - - name - - product - - publisher type: object type: array platformFaultDomainCount: @@ -975,11 +930,6 @@ spec: set before any healthy instances. Possible values are true or false. type: boolean - required: - - maxBatchInstancePercent - - maxUnhealthyInstancePercent - - maxUnhealthyUpgradedInstancePercent - - pauseTimeBetweenBatches type: object type: array scaleIn: @@ -1021,18 +971,12 @@ spec: url: description: The Secret URL of a Key Vault Certificate. type: string - required: - - store - - url type: object type: array keyVaultId: description: The ID of the Key Vault from which all Secrets should be sourced. type: string - required: - - certificate - - keyVaultId type: object type: array secureBootEnabled: @@ -1078,11 +1022,6 @@ spec: description: Specifies the version of the image used to create the virtual machines. type: string - required: - - offer - - publisher - - sku - - version type: object type: array spotRestore: @@ -1129,8 +1068,6 @@ spec: server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. type: string - required: - - enabled type: object type: array terminationNotification: @@ -1147,8 +1084,6 @@ spec: server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. type: string - required: - - enabled type: object type: array timezone: @@ -1185,8 +1120,6 @@ spec: values are Http and Https. Changing this forces a new resource to be created. type: string - required: - - protocol type: object type: array zoneBalance: @@ -1202,21 +1135,872 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalCapabilities: + description: An additional_capabilities block as defined below. + items: + properties: + ultraSsdEnabled: + description: Should the capacity to enable Data Disks of + the UltraSSD_LRS storage account type be supported on + this Virtual Machine Scale Set? Possible values are true + or false. Defaults to false. Changing this forces a new + resource to be created. + type: boolean + type: object + type: array + additionalUnattendContent: + description: One or more additional_unattend_content blocks as + defined below. Changing this forces a new resource to be created. + items: + properties: + setting: + description: The name of the setting to which the content + applies. Possible values are AutoLogon and FirstLogonCommands. + Changing this forces a new resource to be created. + type: string + type: object + type: array + adminUsername: + description: The username of the local administrator on each Virtual + Machine Scale Set instance. Changing this forces a new resource + to be created. + type: string + automaticInstanceRepair: + description: An automatic_instance_repair block as defined below. + To enable the automatic instance repair, this Virtual Machine + Scale Set must have a valid health_probe_id or an Application + Health Extension. + items: + properties: + enabled: + description: Should the automatic instance repair be enabled + on this Virtual Machine Scale Set? + type: boolean + gracePeriod: + description: Amount of time (in minutes, between 30 and + 90, defaults to 30 minutes) for which automatic repairs + will be delayed. The grace period starts right after the + VM is found unhealthy. The time duration should be specified + in ISO 8601 format. Defaults to PT30M. + type: string + type: object + type: array + automaticOsUpgradePolicy: + description: An automatic_os_upgrade_policy block as defined below. + This can only be specified when upgrade_mode is set to either + Automatic or Rolling. + items: + properties: + disableAutomaticRollback: + description: Should automatic rollbacks be disabled? + type: boolean + enableAutomaticOsUpgrade: + description: Should OS Upgrades automatically be applied + to Scale Set instances in a rolling fashion when a newer + version of the OS Image becomes available? + type: boolean + type: object + type: array + bootDiagnostics: + description: A boot_diagnostics block as defined below. + items: + properties: + storageAccountUri: + description: The Primary/Secondary Endpoint for the Azure + Storage Account which should be used to store Boot Diagnostics, + including Console Output and Screenshots from the Hypervisor. + type: string + type: object + type: array + capacityReservationGroupId: + description: Specifies the ID of the Capacity Reservation Group + which the Virtual Machine Scale Set should be allocated to. + Changing this forces a new resource to be created. + type: string + computerNamePrefix: + description: The prefix which should be used for the name of the + Virtual Machines in this Scale Set. If unspecified this defaults + to the value for the name field. If the value of the name field + is not a valid computer_name_prefix, then you must specify computer_name_prefix. + Changing this forces a new resource to be created. + type: string + dataDisk: + description: One or more data_disk blocks as defined below. + items: + properties: + caching: + description: The type of Caching which should be used for + this Data Disk. Possible values are None, ReadOnly and + ReadWrite. + type: string + createOption: + description: The create option which should be used for + this Data Disk. Possible values are Empty and FromImage. + Defaults to Empty. (FromImage should only be used if the + source image includes data disks). + type: string + diskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. + Changing this forces a new resource to be created. + type: string + diskSizeGb: + description: The size of the Data Disk which should be created. + type: number + lun: + description: The Logical Unit Number of the Data Disk, which + must be unique within the Virtual Machine. + type: number + name: + description: The name of the Data Disk. + type: string + storageAccountType: + description: The Type of Storage Account which should back + this Data Disk. Possible values include Standard_LRS, + StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, + Premium_ZRS and UltraSSD_LRS. + type: string + ultraSsdDiskIopsReadWrite: + description: Specifies the Read-Write IOPS for this Data + Disk. Only settable when storage_account_type is PremiumV2_LRS + or UltraSSD_LRS. + type: number + ultraSsdDiskMbpsReadWrite: + description: Specifies the bandwidth in MB per second for + this Data Disk. Only settable when storage_account_type + is PremiumV2_LRS or UltraSSD_LRS. + type: number + writeAcceleratorEnabled: + description: Should Write Accelerator be Enabled for this + OS Disk? Defaults to false. + type: boolean + type: object + type: array + doNotRunExtensionsOnOverprovisionedMachines: + description: Should Virtual Machine Extensions be run on Overprovisioned + Virtual Machines in the Scale Set? Defaults to false. + type: boolean + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Windows Virtual Machine Scale Set should exist. Changing + this forces a new Windows Virtual Machine Scale Set to be created. + type: string + enableAutomaticUpdates: + description: Are automatic updates enabled for this Virtual Machine? + Defaults to true. + type: boolean + encryptionAtHostEnabled: + description: Should all of the disks (including the temp disk) + attached to this Virtual Machine be encrypted by enabling Encryption + at Host? + type: boolean + evictionPolicy: + description: Specifies the eviction policy for Virtual Machines + in this Scale Set. Possible values are Deallocate and Delete. + Changing this forces a new resource to be created. + type: string + extension: + description: One or more extension blocks as defined below + items: + properties: + autoUpgradeMinorVersion: + description: Should the latest version of the Extension + be used at Deployment Time, if one is available? This + won't auto-update the extension on existing installation. + Defaults to true. + type: boolean + automaticUpgradeEnabled: + description: Should the Extension be automatically updated + whenever the Publisher releases a new version of this + VM Extension? + type: boolean + forceUpdateTag: + description: A value which, when different to the previous + value can be used to force-run the Extension even if the + Extension Configuration hasn't changed. + type: string + name: + description: The name for the Virtual Machine Scale Set + Extension. + type: string + protectedSettingsFromKeyVault: + description: A protected_settings_from_key_vault block as + defined below. + items: + properties: + secretUrl: + description: The URL to the Key Vault Secret which + stores the protected settings. + type: string + sourceVaultId: + description: The ID of the source Key Vault. + type: string + type: object + type: array + provisionAfterExtensions: + description: An ordered list of Extension names which this + should be provisioned after. + items: + type: string + type: array + publisher: + description: Specifies the Publisher of the Extension. + type: string + settings: + description: A JSON String which specifies Settings for + the Extension. + type: string + type: + description: Specifies the Type of the Extension. + type: string + typeHandlerVersion: + description: Specifies the version of the extension to use, + available versions can be found using the Azure CLI. + type: string + type: object + type: array + extensionOperationsEnabled: + description: Should extension operations be allowed on the Virtual + Machine Scale Set? Possible values are true or false. Defaults + to true. Changing this forces a new Windows Virtual Machine + Scale Set to be created. + type: boolean + extensionsTimeBudget: + description: Specifies the duration allocated for all extensions + to start. The time duration should be between 15 minutes and + 120 minutes (inclusive) and should be specified in ISO 8601 + format. Defaults to 90 minutes (PT1H30M). + type: string + galleryApplication: + description: One or more gallery_application blocks as defined + below. + items: + properties: + configurationBlobUri: + description: Specifies the URI to an Azure Blob that will + replace the default configuration for the package if provided. + Changing this forces a new resource to be created. + type: string + order: + description: Specifies the order in which the packages have + to be installed. Possible values are between 0 and 2,147,483,647. + Changing this forces a new resource to be created. + type: number + tag: + description: Specifies a passthrough value for more generic + context. This field can be any valid string value. Changing + this forces a new resource to be created. + type: string + versionId: + description: Specifies the Gallery Application Version resource + ID. Changing this forces a new resource to be created. + type: string + type: object + type: array + galleryApplications: + items: + properties: + configurationReferenceBlobUri: + type: string + order: + description: Specifies the order in which the packages have + to be installed. Possible values are between 0 and 2,147,483,647. + Changing this forces a new resource to be created. + type: number + packageReferenceId: + description: The ID of the Windows Virtual Machine Scale + Set. + type: string + tag: + description: The IP Tag associated with the Public IP, such + as SQL or Storage. Changing this forces a new resource + to be created. + type: string + type: object + type: array + healthProbeId: + description: The ID of a Load Balancer Probe which should be used + to determine the health of an instance. This is Required and + can only be specified when upgrade_mode is set to Automatic + or Rolling. + type: string + hostGroupId: + description: Specifies the ID of the dedicated host group that + the virtual machine scale set resides in. Changing this forces + a new resource to be created. + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Windows Virtual Machine Scale + Set. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Windows Virtual Machine + Scale Set. Possible values are SystemAssigned, UserAssigned, + SystemAssigned, UserAssigned (to enable both). + type: string + type: object + type: array + instances: + description: The number of Virtual Machines in the Scale Set. + type: number + licenseType: + description: Specifies the type of on-premise license (also known + as Azure Hybrid Use Benefit) which should be used for this Virtual + Machine Scale Set. Possible values are None, Windows_Client + and Windows_Server. + type: string + location: + description: The Azure location where the Windows Virtual Machine + Scale Set should exist. Changing this forces a new resource + to be created. + type: string + maxBidPrice: + description: The maximum price you're willing to pay for each + Virtual Machine in this Scale Set, in US Dollars; which must + be greater than the current spot price. If this bid price falls + below the current spot price the Virtual Machines in the Scale + Set will be evicted using the eviction_policy. Defaults to -1, + which means that each Virtual Machine in the Scale Set should + not be evicted for price reasons. + type: number + networkInterface: + description: One or more network_interface blocks as defined below. + items: + properties: + dnsServers: + description: A list of IP Addresses of DNS Servers which + should be assigned to the Network Interface. + items: + type: string + type: array + enableAcceleratedNetworking: + description: Does this Network Interface support Accelerated + Networking? Defaults to false. + type: boolean + enableIpForwarding: + description: Does this Network Interface support IP Forwarding? + Defaults to false. + type: boolean + ipConfiguration: + description: One or more ip_configuration blocks as defined + above. + items: + properties: + applicationGatewayBackendAddressPoolIds: + description: A list of Backend Address Pools ID's + from a Application Gateway which this Virtual Machine + Scale Set should be connected to. + items: + type: string + type: array + applicationSecurityGroupIds: + description: A list of Application Security Group + ID's which this Virtual Machine Scale Set should + be connected to. + items: + type: string + type: array + loadBalancerBackendAddressPoolIds: + description: A list of Backend Address Pools ID's + from a Load Balancer which this Virtual Machine + Scale Set should be connected to. + items: + type: string + type: array + loadBalancerInboundNatRulesIds: + description: A list of NAT Rule ID's from a Load Balancer + which this Virtual Machine Scale Set should be connected + to. + items: + type: string + type: array + name: + description: The Name of the Public IP Address Configuration. + type: string + primary: + description: Is this the Primary IP Configuration? + type: boolean + publicIpAddress: + description: A public_ip_address block as defined + below. + items: + properties: + domainNameLabel: + description: The Prefix which should be used + for the Domain Name Label for each Virtual + Machine Instance. Azure concatenates the Domain + Name Label and Virtual Machine Index to create + a unique Domain Name Label for each Virtual + Machine. + type: string + idleTimeoutInMinutes: + description: The Idle Timeout in Minutes for + the Public IP Address. Possible values are + in the range 4 to 32. + type: number + ipTag: + description: One or more ip_tag blocks as defined + above. Changing this forces a new resource + to be created. + items: + properties: + tag: + description: The IP Tag associated with + the Public IP, such as SQL or Storage. + Changing this forces a new resource + to be created. + type: string + type: + description: The Type of IP Tag, such + as FirstPartyUsage. Changing this forces + a new resource to be created. + type: string + type: object + type: array + name: + description: The Name of the Public IP Address + Configuration. + type: string + publicIpPrefixId: + description: The ID of the Public IP Address + Prefix from where Public IP Addresses should + be allocated. Changing this forces a new resource + to be created. + type: string + version: + description: Specifies the version of the image + used to create the virtual machines. + type: string + type: object + type: array + version: + description: Specifies the version of the image used + to create the virtual machines. + type: string + type: object + type: array + name: + description: The Name which should be used for this Network + Interface. Changing this forces a new resource to be created. + type: string + networkSecurityGroupId: + description: The ID of a Network Security Group which should + be assigned to this Network Interface. + type: string + primary: + description: Is this the Primary IP Configuration? + type: boolean + type: object + type: array + osDisk: + description: An os_disk block as defined below. + items: + properties: + caching: + description: The Type of Caching which should be used for + the Internal OS Disk. Possible values are None, ReadOnly + and ReadWrite. + type: string + diffDiskSettings: + description: A diff_disk_settings block as defined above. + Changing this forces a new resource to be created. + items: + properties: + option: + description: Specifies the Ephemeral Disk Settings + for the OS Disk. At this time the only possible + value is Local. Changing this forces a new resource + to be created. + type: string + placement: + description: Specifies where to store the Ephemeral + Disk. Possible values are CacheDisk and ResourceDisk. + Defaults to CacheDisk. Changing this forces a new + resource to be created. + type: string + type: object + type: array + diskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. + Changing this forces a new resource to be created. + type: string + diskSizeGb: + description: The Size of the Internal OS Disk in GB, if + you wish to vary from the size used in the image this + Virtual Machine Scale Set is sourced from. + type: number + secureVmDiskEncryptionSetId: + description: The ID of the Disk Encryption Set which should + be used to Encrypt the OS Disk when the Virtual Machine + Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. + Changing this forces a new resource to be created. + type: string + securityEncryptionType: + description: Encryption Type when the Virtual Machine Scale + Set is Confidential VMSS. Possible values are VMGuestStateOnly + and DiskWithVMGuestState. Changing this forces a new resource + to be created. + type: string + storageAccountType: + description: The Type of Storage Account which should back + this the Internal OS Disk. Possible values include Standard_LRS, + StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. + Changing this forces a new resource to be created. + type: string + writeAcceleratorEnabled: + description: Should Write Accelerator be Enabled for this + OS Disk? Defaults to false. + type: boolean + type: object + type: array + overprovision: + description: Should Azure over-provision Virtual Machines in this + Scale Set? This means that multiple Virtual Machines will be + provisioned and Azure will keep the instances which become available + first - which improves provisioning success rates and improves + deployment time. You're not billed for these over-provisioned + VM's and they don't count towards the Subscription Quota. Defaults + to true. + type: boolean + plan: + description: A plan block as defined below. Changing this forces + a new resource to be created. + items: + properties: + name: + description: Specifies the name of the image from the marketplace. + Changing this forces a new resource to be created. + type: string + product: + description: Specifies the product of the image from the + marketplace. Changing this forces a new resource to be + created. + type: string + publisher: + description: Specifies the publisher of the image. Changing + this forces a new resource to be created. + type: string + type: object + type: array + platformFaultDomainCount: + description: Specifies the number of fault domains that are used + by this Linux Virtual Machine Scale Set. Changing this forces + a new resource to be created. + type: number + priority: + description: The Priority of this Virtual Machine Scale Set. Possible + values are Regular and Spot. Defaults to Regular. Changing this + value forces a new resource. + type: string + provisionVmAgent: + description: Should the Azure VM Agent be provisioned on each + Virtual Machine in the Scale Set? Defaults to true. Changing + this value forces a new resource to be created. + type: boolean + proximityPlacementGroupId: + description: The ID of the Proximity Placement Group in which + the Virtual Machine Scale Set should be assigned to. Changing + this forces a new resource to be created. + type: string + rollingUpgradePolicy: + description: A rolling_upgrade_policy block as defined below. + This is Required and can only be specified when upgrade_mode + is set to Automatic or Rolling. Changing this forces a new resource + to be created. + items: + properties: + crossZoneUpgradesEnabled: + description: Should the Virtual Machine Scale Set ignore + the Azure Zone boundaries when constructing upgrade batches? + Possible values are true or false. + type: boolean + maxBatchInstancePercent: + description: The maximum percent of total virtual machine + instances that will be upgraded simultaneously by the + rolling upgrade in one batch. As this is a maximum, unhealthy + instances in previous or future batches can cause the + percentage of instances in a batch to decrease to ensure + higher reliability. + type: number + maxUnhealthyInstancePercent: + description: The maximum percentage of the total virtual + machine instances in the scale set that can be simultaneously + unhealthy, either as a result of being upgraded, or by + being found in an unhealthy state by the virtual machine + health checks before the rolling upgrade aborts. This + constraint will be checked prior to starting any batch. + type: number + maxUnhealthyUpgradedInstancePercent: + description: The maximum percentage of upgraded virtual + machine instances that can be found to be in an unhealthy + state. This check will happen after each batch is upgraded. + If this percentage is ever exceeded, the rolling update + aborts. + type: number + pauseTimeBetweenBatches: + description: The wait time between completing the update + for all virtual machines in one batch and starting the + next batch. The time duration should be specified in ISO + 8601 format. + type: string + prioritizeUnhealthyInstancesEnabled: + description: Upgrade all unhealthy instances in a scale + set before any healthy instances. Possible values are + true or false. + type: boolean + type: object + type: array + scaleIn: + description: A scale_in block as defined below. + items: + properties: + forceDeletionEnabled: + description: Should the virtual machines chosen for removal + be force deleted when the virtual machine scale set is + being scaled-in? Possible values are true or false. Defaults + to false. + type: boolean + rule: + description: The scale-in policy rule that decides which + virtual machines are chosen for removal when a Virtual + Machine Scale Set is scaled in. Possible values for the + scale-in policy rules are Default, NewestVM and OldestVM, + defaults to Default. For more information about scale + in policy, please refer to this doc. + type: string + type: object + type: array + scaleInPolicy: + description: 'Deprecated: scaleInPolicy will be removed in favour + of the scaleIn code block.' + type: string + secret: + description: One or more secret blocks as defined below. + items: + properties: + certificate: + description: One or more certificate blocks as defined above. + items: + properties: + store: + description: The certificate store on the Virtual + Machine where the certificate should be added. + type: string + url: + description: The Secret URL of a Key Vault Certificate. + type: string + type: object + type: array + keyVaultId: + description: The ID of the Key Vault from which all Secrets + should be sourced. + type: string + type: object + type: array + secureBootEnabled: + description: Specifies if Secure Boot and Trusted Launch is enabled + for the Virtual Machine. Changing this forces a new resource + to be created. + type: boolean + singlePlacementGroup: + description: Should this Virtual Machine Scale Set be limited + to a Single Placement Group, which means the number of instances + will be capped at 100 Virtual Machines. Defaults to true. + type: boolean + sku: + description: The Virtual Machine SKU for the Scale Set, such as + Standard_F2. + type: string + sourceImageId: + description: The ID of an Image which each Virtual Machine in + this Scale Set should be based on. Possible Image ID types include + Image IDs, Shared Image IDs, Shared Image Version IDs, Community + Gallery Image IDs, Community Gallery Image Version IDs, Shared + Gallery Image IDs and Shared Gallery Image Version IDs. + type: string + sourceImageReference: + description: A source_image_reference block as defined below. + items: + properties: + offer: + description: Specifies the offer of the image used to create + the virtual machines. Changing this forces a new resource + to be created. + type: string + publisher: + description: Specifies the publisher of the image used to + create the virtual machines. Changing this forces a new + resource to be created. + type: string + sku: + description: Specifies the SKU of the image used to create + the virtual machines. + type: string + version: + description: Specifies the version of the image used to + create the virtual machines. + type: string + type: object + type: array + spotRestore: + description: A spot_restore block as defined below. + items: + properties: + enabled: + description: Should the Spot-Try-Restore feature be enabled? + The Spot-Try-Restore feature will attempt to automatically + restore the evicted Spot Virtual Machine Scale Set VM + instances opportunistically based on capacity availability + and pricing constraints. Possible values are true or false. + Defaults to false. Changing this forces a new resource + to be created. + type: boolean + timeout: + description: The length of time that the Virtual Machine + Scale Set should attempt to restore the Spot VM instances + which have been evicted. The time duration should be between + 15 minutes and 120 minutes (inclusive). The time duration + should be specified in the ISO 8601 format. Defaults to + 90 minutes (e.g. PT1H30M). Changing this forces a new + resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to this + Virtual Machine Scale Set. + type: object + terminateNotification: + description: A terminate_notification block as defined below. + items: + properties: + enabled: + description: Should the terminate notification be enabled + on this Virtual Machine Scale Set? + type: boolean + timeout: + description: Length of time (in minutes, between 5 and 15) + a notification to be sent to the VM on the instance metadata + server till the VM gets deleted. The time duration should + be specified in ISO 8601 format. Defaults to PT5M. + type: string + type: object + type: array + terminationNotification: + description: A termination_notification block as defined below. + items: + properties: + enabled: + description: Should the termination notification be enabled + on this Virtual Machine Scale Set? + type: boolean + timeout: + description: Length of time (in minutes, between 5 and 15) + a notification to be sent to the VM on the instance metadata + server till the VM gets deleted. The time duration should + be specified in ISO 8601 format. Defaults to PT5M. + type: string + type: object + type: array + timezone: + description: Specifies the time zone of the virtual machine, the + possible values are defined here. + type: string + upgradeMode: + description: Specifies how Upgrades (e.g. changing the Image/SKU) + should be performed to Virtual Machine Instances. Possible values + are Automatic, Manual and Rolling. Defaults to Manual. Changing + this forces a new resource to be created. + type: string + userData: + description: The Base64-Encoded User Data which should be used + for this Virtual Machine Scale Set. + type: string + vtpmEnabled: + description: Specifies if vTPM (Virtual Trusted Platform Module) + and Trusted Launch is enabled for the Virtual Machine. Changing + this forces a new resource to be created. + type: boolean + winrmListener: + description: One or more winrm_listener blocks as defined below. + Changing this forces a new resource to be created. + items: + properties: + certificateUrl: + description: The Secret URL of a Key Vault Certificate, + which must be specified when protocol is set to Https. + Changing this forces a new resource to be created. + type: string + protocol: + description: The Protocol of the WinRM Listener. Possible + values are Http and Https. Changing this forces a new + resource to be created. + type: string + type: object + type: array + zoneBalance: + description: Should the Virtual Machines in this Scale Set be + strictly evenly distributed across Availability Zones? Defaults + to false. Changing this forces a new resource to be created. + type: boolean + zones: + description: Specifies a list of Availability Zones in which this + Windows Virtual Machine Scale Set should be located. Changing + this forces a new Windows Virtual Machine Scale Set to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1390,19 +2174,32 @@ spec: type: object x-kubernetes-validations: - message: adminPasswordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminPasswordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.adminPasswordSecretRef)' - message: adminUsername is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminUsername) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.adminUsername) + || has(self.initProvider.adminUsername)' - message: instances is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.instances) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.instances) + || has(self.initProvider.instances)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: networkInterface is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.networkInterface) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.networkInterface) + || has(self.initProvider.networkInterface)' - message: osDisk is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osDisk) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.osDisk) + || has(self.initProvider.osDisk)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: WindowsVirtualMachineScaleSetStatus defines the observed state of WindowsVirtualMachineScaleSet. diff --git a/package/crds/confidentialledger.azure.upbound.io_ledgers.yaml b/package/crds/confidentialledger.azure.upbound.io_ledgers.yaml index 54e1a4050..b09709dc1 100644 --- a/package/crds/confidentialledger.azure.upbound.io_ledgers.yaml +++ b/package/crds/confidentialledger.azure.upbound.io_ledgers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: ledgers.confidentialledger.azure.upbound.io spec: group: confidentialledger.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -86,10 +85,6 @@ spec: description: Specifies the Tenant ID for this AzureAD Service Principal. type: string - required: - - ledgerRoleName - - principalId - - tenantId type: object type: array certificateBasedSecurityPrincipal: @@ -107,9 +102,6 @@ spec: used by this identity to authenticate with the Confidential Ledger. type: string - required: - - ledgerRoleName - - pemPublicKey type: object type: array ledgerType: @@ -207,21 +199,98 @@ spec: description: A mapping of tags to assign to the Confidential Ledger. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + azureadBasedServicePrincipal: + description: A list of azuread_based_service_principal blocks + as defined below. + items: + properties: + ledgerRoleName: + description: Specifies the Ledger Role to grant this AzureAD + Service Principal. Possible values are Administrator, + Contributor and Reader. + type: string + principalId: + description: Specifies the Principal ID of the AzureAD Service + Principal. + type: string + tenantId: + description: Specifies the Tenant ID for this AzureAD Service + Principal. + type: string + type: object + type: array + certificateBasedSecurityPrincipal: + description: A list of certificate_based_security_principal blocks + as defined below. + items: + properties: + ledgerRoleName: + description: Specifies the Ledger Role to grant this Certificate + Security Principal. Possible values are Administrator, + Contributor and Reader. + type: string + pemPublicKey: + description: The public key, in PEM format, of the certificate + used by this identity to authenticate with the Confidential + Ledger. + type: string + type: object + type: array + ledgerType: + description: Specifies the type of Confidential Ledger. Possible + values are Private and Public. Changing this forces a new resource + to be created. + type: string + location: + description: Specifies the supported Azure location where the + Confidential Ledger exists. Changing this forces a new resource + to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Confidential Ledger. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -395,11 +464,17 @@ spec: type: object x-kubernetes-validations: - message: azureadBasedServicePrincipal is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.azureadBasedServicePrincipal) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.azureadBasedServicePrincipal) + || has(self.initProvider.azureadBasedServicePrincipal)' - message: ledgerType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ledgerType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ledgerType) + || has(self.initProvider.ledgerType)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: LedgerStatus defines the observed state of Ledger. properties: diff --git a/package/crds/consumption.azure.upbound.io_budgetmanagementgroups.yaml b/package/crds/consumption.azure.upbound.io_budgetmanagementgroups.yaml index cf9d4dcaf..a625064f6 100644 --- a/package/crds/consumption.azure.upbound.io_budgetmanagementgroups.yaml +++ b/package/crds/consumption.azure.upbound.io_budgetmanagementgroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: budgetmanagementgroups.consumption.azure.upbound.io spec: group: consumption.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -95,9 +94,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array not: @@ -125,9 +121,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array tag: @@ -149,9 +142,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array type: object @@ -173,9 +163,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array type: object @@ -294,10 +281,6 @@ spec: are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. type: string - required: - - contactEmails - - operator - - threshold type: object type: array timeGrain: @@ -324,26 +307,212 @@ spec: timegrain period. Changing this forces a new resource to be created. type: string - required: - - startDate type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + amount: + description: The total amount of cost to track with the budget. + type: number + etag: + description: The ETag of the Management Group Consumption Budget. + type: string + filter: + description: A filter block as defined below. + items: + properties: + dimension: + description: One or more dimension blocks as defined below + to filter the budget on. + items: + properties: + name: + description: The name of the tag to use for the filter. + type: string + operator: + description: The operator to use for comparison. The + allowed values are In. + type: string + values: + description: Specifies a list of values for the tag. + items: + type: string + type: array + type: object + type: array + not: + description: A not block as defined below to filter the + budget on. This is deprecated as the API no longer supports + it and will be removed in version 4.0 of the provider. + items: + properties: + dimension: + description: One dimension block as defined below + to filter the budget on. Conflicts with tag. + items: + properties: + name: + description: The name of the tag to use for + the filter. + type: string + operator: + description: The operator to use for comparison. + The allowed values are In. + type: string + values: + description: Specifies a list of values for + the tag. + items: + type: string + type: array + type: object + type: array + tag: + description: One tag block as defined below to filter + the budget on. Conflicts with dimension. + items: + properties: + name: + description: The name of the tag to use for + the filter. + type: string + operator: + description: The operator to use for comparison. + The allowed values are In. + type: string + values: + description: Specifies a list of values for + the tag. + items: + type: string + type: array + type: object + type: array + type: object + type: array + tag: + description: One or more tag blocks as defined below to + filter the budget on. + items: + properties: + name: + description: The name of the tag to use for the filter. + type: string + operator: + description: The operator to use for comparison. The + allowed values are In. + type: string + values: + description: Specifies a list of values for the tag. + items: + type: string + type: array + type: object + type: array + type: object + type: array + name: + description: The name which should be used for this Management + Group Consumption Budget. Changing this forces a new resource + to be created. + type: string + notification: + description: One or more notification blocks as defined below. + items: + properties: + contactEmails: + description: Specifies a list of email addresses to send + the budget notification to when the threshold is exceeded. + items: + type: string + type: array + enabled: + description: Should the notification be enabled? Defaults + to true. + type: boolean + operator: + description: The comparison operator for the notification. + Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. + type: string + threshold: + description: Threshold value associated with a notification. + Notification is sent when the cost exceeded the threshold. + It is always percent and has to be between 0 and 1000. + type: number + thresholdType: + description: The type of threshold for the notification. + This determines whether the notification is triggered + by forecasted costs or actual costs. The allowed values + are Actual and Forecasted. Default is Actual. Changing + this forces a new resource to be created. + type: string + type: object + type: array + timeGrain: + description: The time covered by a budget. Tracking of the amount + will be reset based on the time grain. Must be one of BillingAnnual, + BillingMonth, BillingQuarter, Annually, Monthly and Quarterly. + Defaults to Monthly. Changing this forces a new resource to + be created. + type: string + timePeriod: + description: A time_period block as defined below. + items: + properties: + endDate: + description: The end date for the budget. If not set this + will be 10 years after the start date. + type: string + startDate: + description: The start date for the budget. The start date + must be first of the month and should be less than the + end date. Budget start date must be on or after June 1, + 2017. Future start date should not be more than twelve + months. Past start date should be selected within the + timegrain period. Changing this forces a new resource + to be created. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -517,13 +686,21 @@ spec: type: object x-kubernetes-validations: - message: amount is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.amount) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.amount) + || has(self.initProvider.amount)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: notification is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notification) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.notification) + || has(self.initProvider.notification)' - message: timePeriod is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timePeriod) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.timePeriod) + || has(self.initProvider.timePeriod)' status: description: BudgetManagementGroupStatus defines the observed state of BudgetManagementGroup. diff --git a/package/crds/consumption.azure.upbound.io_budgetresourcegroups.yaml b/package/crds/consumption.azure.upbound.io_budgetresourcegroups.yaml index 12dac19a4..4343ecc07 100644 --- a/package/crds/consumption.azure.upbound.io_budgetresourcegroups.yaml +++ b/package/crds/consumption.azure.upbound.io_budgetresourcegroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: budgetresourcegroups.consumption.azure.upbound.io spec: group: consumption.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -95,9 +94,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array not: @@ -125,9 +121,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array tag: @@ -149,9 +142,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array type: object @@ -173,9 +163,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array type: object @@ -227,9 +214,6 @@ spec: are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. type: string - required: - - operator - - threshold type: object type: array resourceGroupId: @@ -337,26 +321,224 @@ spec: timegrain period. Changing this forces a new Resource Group Consumption Budget to be created. type: string - required: - - startDate type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + amount: + description: The total amount of cost to track with the budget. + type: number + etag: + description: The ETag of the Resource Group Consumption Budget + type: string + filter: + description: A filter block as defined below. + items: + properties: + dimension: + description: One or more dimension blocks as defined below + to filter the budget on. + items: + properties: + name: + description: The name of the tag to use for the filter. + type: string + operator: + description: The operator to use for comparison. The + allowed values are In. + type: string + values: + description: Specifies a list of values for the tag. + items: + type: string + type: array + type: object + type: array + not: + description: A not block as defined below to filter the + budget on. This is deprecated as the API no longer supports + it and will be removed in version 4.0 of the provider. + items: + properties: + dimension: + description: One dimension block as defined below + to filter the budget on. Conflicts with tag. + items: + properties: + name: + description: The name of the tag to use for + the filter. + type: string + operator: + description: The operator to use for comparison. + The allowed values are In. + type: string + values: + description: Specifies a list of values for + the tag. + items: + type: string + type: array + type: object + type: array + tag: + description: One tag block as defined below to filter + the budget on. Conflicts with dimension. + items: + properties: + name: + description: The name of the tag to use for + the filter. + type: string + operator: + description: The operator to use for comparison. + The allowed values are In. + type: string + values: + description: Specifies a list of values for + the tag. + items: + type: string + type: array + type: object + type: array + type: object + type: array + tag: + description: One or more tag blocks as defined below to + filter the budget on. + items: + properties: + name: + description: The name of the tag to use for the filter. + type: string + operator: + description: The operator to use for comparison. The + allowed values are In. + type: string + values: + description: Specifies a list of values for the tag. + items: + type: string + type: array + type: object + type: array + type: object + type: array + name: + description: The name which should be used for this Resource Group + Consumption Budget. Changing this forces a new Resource Group + Consumption Budget to be created. + type: string + notification: + description: One or more notification blocks as defined below. + items: + properties: + contactEmails: + description: Specifies a list of email addresses to send + the budget notification to when the threshold is exceeded. + items: + type: string + type: array + contactGroups: + description: Specifies a list of Action Group IDs to send + the budget notification to when the threshold is exceeded. + items: + type: string + type: array + contactRoles: + description: Specifies a list of contact roles to send the + budget notification to when the threshold is exceeded. + items: + type: string + type: array + enabled: + description: Should the notification be enabled? Defaults + to true. + type: boolean + operator: + description: The comparison operator for the notification. + Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. + type: string + threshold: + description: Threshold value associated with a notification. + Notification is sent when the cost exceeded the threshold. + It is always percent and has to be between 0 and 1000. + type: number + thresholdType: + description: The type of threshold for the notification. + This determines whether the notification is triggered + by forecasted costs or actual costs. The allowed values + are Actual and Forecasted. Default is Actual. Changing + this forces a new resource to be created. + type: string + type: object + type: array + timeGrain: + description: The time covered by a budget. Tracking of the amount + will be reset based on the time grain. Must be one of BillingAnnual, + BillingMonth, BillingQuarter, Annually, Monthly and Quarterly. + Defaults to Monthly. Changing this forces a new resource to + be created. + type: string + timePeriod: + description: A time_period block as defined below. + items: + properties: + endDate: + description: The end date for the budget. If not set this + will be 10 years after the start date. + type: string + startDate: + description: The start date for the budget. The start date + must be first of the month and should be less than the + end date. Budget start date must be on or after June 1, + 2017. Future start date should not be more than twelve + months. Past start date should be selected within the + timegrain period. Changing this forces a new Resource + Group Consumption Budget to be created. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -530,13 +712,21 @@ spec: type: object x-kubernetes-validations: - message: amount is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.amount) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.amount) + || has(self.initProvider.amount)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: notification is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notification) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.notification) + || has(self.initProvider.notification)' - message: timePeriod is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timePeriod) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.timePeriod) + || has(self.initProvider.timePeriod)' status: description: BudgetResourceGroupStatus defines the observed state of BudgetResourceGroup. properties: diff --git a/package/crds/consumption.azure.upbound.io_budgetsubscriptions.yaml b/package/crds/consumption.azure.upbound.io_budgetsubscriptions.yaml index 5537dbe7f..b09c29068 100644 --- a/package/crds/consumption.azure.upbound.io_budgetsubscriptions.yaml +++ b/package/crds/consumption.azure.upbound.io_budgetsubscriptions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: budgetsubscriptions.consumption.azure.upbound.io spec: group: consumption.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -95,9 +94,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array not: @@ -125,9 +121,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array tag: @@ -149,9 +142,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array type: object @@ -173,9 +163,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array type: object @@ -304,9 +291,6 @@ spec: are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. type: string - required: - - operator - - threshold type: object type: array subscriptionId: @@ -338,26 +322,218 @@ spec: timegrain period. Changing this forces a new Subscription Consumption Budget to be created. type: string - required: - - startDate type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + amount: + description: The total amount of cost to track with the budget. + type: number + etag: + description: The ETag of the Subscription Consumption Budget. + type: string + filter: + description: A filter block as defined below. + items: + properties: + dimension: + description: One or more dimension blocks as defined below + to filter the budget on. + items: + properties: + name: + description: The name of the tag to use for the filter. + type: string + operator: + description: The operator to use for comparison. The + allowed values are In. + type: string + values: + description: Specifies a list of values for the tag. + items: + type: string + type: array + type: object + type: array + not: + description: A not block as defined below to filter the + budget on. This is deprecated as the API no longer supports + it and will be removed in version 4.0 of the provider. + items: + properties: + dimension: + description: One dimension block as defined below + to filter the budget on. Conflicts with tag. + items: + properties: + name: + description: The name of the tag to use for + the filter. + type: string + operator: + description: The operator to use for comparison. + The allowed values are In. + type: string + values: + description: Specifies a list of values for + the tag. + items: + type: string + type: array + type: object + type: array + tag: + description: One tag block as defined below to filter + the budget on. Conflicts with dimension. + items: + properties: + name: + description: The name of the tag to use for + the filter. + type: string + operator: + description: The operator to use for comparison. + The allowed values are In. + type: string + values: + description: Specifies a list of values for + the tag. + items: + type: string + type: array + type: object + type: array + type: object + type: array + tag: + description: One or more tag blocks as defined below to + filter the budget on. + items: + properties: + name: + description: The name of the tag to use for the filter. + type: string + operator: + description: The operator to use for comparison. The + allowed values are In. + type: string + values: + description: Specifies a list of values for the tag. + items: + type: string + type: array + type: object + type: array + type: object + type: array + notification: + description: One or more notification blocks as defined below. + items: + properties: + contactEmails: + description: Specifies a list of email addresses to send + the budget notification to when the threshold is exceeded. + items: + type: string + type: array + contactRoles: + description: Specifies a list of contact roles to send the + budget notification to when the threshold is exceeded. + items: + type: string + type: array + enabled: + description: Should the notification be enabled? Defaults + to true. + type: boolean + operator: + description: The comparison operator for the notification. + Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. + type: string + threshold: + description: Threshold value associated with a notification. + Notification is sent when the cost exceeded the threshold. + It is always percent and has to be between 0 and 1000. + type: number + thresholdType: + description: The type of threshold for the notification. + This determines whether the notification is triggered + by forecasted costs or actual costs. The allowed values + are Actual and Forecasted. Default is Actual. Changing + this forces a new resource to be created. + type: string + type: object + type: array + subscriptionId: + description: The ID of the Subscription for which to create a + Consumption Budget. Changing this forces a new resource to be + created. + type: string + timeGrain: + description: The time covered by a budget. Tracking of the amount + will be reset based on the time grain. Must be one of BillingAnnual, + BillingMonth, BillingQuarter, Annually, Monthly and Quarterly. + Defaults to Monthly. Changing this forces a new resource to + be created. + type: string + timePeriod: + description: A time_period block as defined below. + items: + properties: + endDate: + description: The end date for the budget. If not set this + will be 10 years after the start date. + type: string + startDate: + description: The start date for the budget. The start date + must be first of the month and should be less than the + end date. Budget start date must be on or after June 1, + 2017. Future start date should not be more than twelve + months. Past start date should be selected within the + timegrain period. Changing this forces a new Subscription + Consumption Budget to be created. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -531,13 +707,21 @@ spec: type: object x-kubernetes-validations: - message: amount is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.amount) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.amount) + || has(self.initProvider.amount)' - message: notification is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notification) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.notification) + || has(self.initProvider.notification)' - message: subscriptionId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subscriptionId) + || has(self.initProvider.subscriptionId)' - message: timePeriod is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timePeriod) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.timePeriod) + || has(self.initProvider.timePeriod)' status: description: BudgetSubscriptionStatus defines the observed state of BudgetSubscription. properties: diff --git a/package/crds/containerregistry.azure.upbound.io_agentpools.yaml b/package/crds/containerregistry.azure.upbound.io_agentpools.yaml index 9439e83f9..b6f80e675 100644 --- a/package/crds/containerregistry.azure.upbound.io_agentpools.yaml +++ b/package/crds/containerregistry.azure.upbound.io_agentpools.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: agentpools.containerregistry.azure.upbound.io spec: group: containerregistry.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -328,21 +327,67 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + instanceCount: + description: VMSS instance count. Defaults to 1. + type: number + location: + description: The Azure Region where the Azure Container Registry + Agent Pool should exist. Changing this forces a new Azure Container + Registry Agent Pool to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Azure Container Registry Agent Pool. + type: object + tier: + description: 'Sets the VM your agent pool will run on. Valid values + are: S1 (2 vCPUs, 3 GiB RAM), S2 (4 vCPUs, 8 GiB RAM), S3 (8 + vCPUs, 16 GiB RAM) or I6 (64 vCPUs, 216 GiB RAM, Isolated). + Defaults to S1. Changing this forces a new Azure Container Registry + Agent Pool to be created.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -516,7 +561,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: AgentPoolStatus defines the observed state of AgentPool. properties: diff --git a/package/crds/containerregistry.azure.upbound.io_containerconnectedregistries.yaml b/package/crds/containerregistry.azure.upbound.io_containerconnectedregistries.yaml index d87861086..0b6d6cee4 100644 --- a/package/crds/containerregistry.azure.upbound.io_containerconnectedregistries.yaml +++ b/package/crds/containerregistry.azure.upbound.io_containerconnectedregistries.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: containerconnectedregistries.containerregistry.azure.upbound.io spec: group: containerregistry.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -187,9 +186,6 @@ spec: description: The tag of the artifact that wants to be subscribed for the Connected Registry. type: string - required: - - action - - name type: object type: array parentRegistryId: @@ -291,21 +287,108 @@ spec: is from PT3H to P7D. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + auditLogEnabled: + description: Should the log auditing be enabled? + type: boolean + clientTokenIds: + description: Specifies a list of IDs of Container Registry Tokens, + which are meant to be used by the clients to connect to the + Connected Registry. + items: + type: string + type: array + logLevel: + description: The verbosity of the logs. Possible values are None, + Debug, Information, Warning and Error. + type: string + mode: + description: The mode of the Connected Registry. Possible values + are Mirror, ReadOnly, ReadWrite and Registry. Changing this + forces a new Container Connected Registry to be created. + type: string + notification: + description: One or more notification blocks as defined below. + items: + properties: + action: + description: The action of the artifact that wants to be + subscribed for the Connected Registry. Possible values + are push, delete and * (i.e. any). + type: string + digest: + description: The digest of the artifact that wants to be + subscribed for the Connected Registry. + type: string + name: + description: The name of the artifact that wants to be subscribed + for the Connected Registry. + type: string + tag: + description: The tag of the artifact that wants to be subscribed + for the Connected Registry. + type: string + type: object + type: array + parentRegistryId: + description: The ID of the parent registry. This can be either + a Container Registry ID or a Connected Registry ID. Changing + this forces a new Container Connected Registry to be created. + type: string + syncMessageTtl: + description: The period of time (in form of ISO8601) for which + a message is available to sync before it is expired. Allowed + range is from P1D to P90D. + type: string + syncSchedule: + description: The cron expression indicating the schedule that + the Connected Registry will sync with its parent. Defaults to + * * * * *. + type: string + syncWindow: + description: The time window (in form of ISO8601) during which + sync is enabled for each schedule occurrence. Allowed range + is from PT3H to P7D. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/containerregistry.azure.upbound.io_registries.yaml b/package/crds/containerregistry.azure.upbound.io_registries.yaml index 0f7d2d380..ee7bbe182 100644 --- a/package/crds/containerregistry.azure.upbound.io_registries.yaml +++ b/package/crds/containerregistry.azure.upbound.io_registries.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: registries.containerregistry.azure.upbound.io spec: group: containerregistry.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -205,8 +204,6 @@ spec: Container Registry? Changing this forces a new resource to be created. Defaults to false. type: boolean - required: - - location type: object type: array identity: @@ -225,8 +222,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array location: @@ -484,21 +479,211 @@ spec: Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + adminEnabled: + description: Specifies whether the admin user is enabled. Defaults + to false. + type: boolean + anonymousPullEnabled: + description: Whether allows anonymous (unauthenticated) pull access + to this Container Registry? This is only supported on resources + with the Standard or Premium SKU. + type: boolean + dataEndpointEnabled: + description: Whether to enable dedicated data endpoints for this + Container Registry? This is only supported on resources with + the Premium SKU. + type: boolean + encryption: + description: An encryption block as documented below. + items: + properties: + enabled: + description: Boolean value that indicates whether encryption + is enabled. + type: boolean + keyVaultKeyId: + description: The ID of the Key Vault Key. + type: string + type: object + type: array + exportPolicyEnabled: + description: Boolean value that indicates whether export policy + is enabled. Defaults to true. In order to set it to false, make + sure the public_network_access_enabled is also set to false. + type: boolean + georeplications: + description: A georeplications block as documented below. + items: + properties: + location: + description: A location where the container registry should + be geo-replicated. + type: string + regionalEndpointEnabled: + description: Whether regional endpoint is enabled for this + Container Registry? + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to this replication + location. + type: object + zoneRedundancyEnabled: + description: Whether zone redundancy is enabled for this + Container Registry? Changing this forces a new resource + to be created. Defaults to false. + type: boolean + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Container Registry. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Container Registry. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + networkRuleBypassOption: + description: Whether to allow trusted Azure services to access + a network restricted Container Registry? Possible values are + None and AzureServices. Defaults to AzureServices. + type: string + networkRuleSet: + description: A network_rule_set block as documented below. + items: + properties: + defaultAction: + description: The behaviour for requests matching no rules. + Either Allow or Deny. Defaults to Allow + type: string + ipRule: + description: One or more ip_rule blocks as defined below. + items: + properties: + action: + description: The behaviour for requests matching this + rule. At this time the only supported value is Allow + type: string + ipRange: + description: The CIDR block from which requests will + match the rule. + type: string + type: object + type: array + virtualNetwork: + description: One or more virtual_network blocks as defined + below. + items: + properties: + action: + description: The behaviour for requests matching this + rule. At this time the only supported value is Allow + type: string + type: object + type: array + type: object + type: array + publicNetworkAccessEnabled: + description: Whether public network access is allowed for the + container registry. Defaults to true. + type: boolean + quarantinePolicyEnabled: + description: Boolean value that indicates whether quarantine policy + is enabled. + type: boolean + retentionPolicy: + description: A retention_policy block as documented below. + items: + properties: + days: + description: The number of days to retain an untagged manifest + after which it gets purged. Default is 7. + type: number + enabled: + description: Boolean value that indicates whether the policy + is enabled. + type: boolean + type: object + type: array + sku: + description: The SKU name of the container registry. Possible + values are Basic, Standard and Premium. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + trustPolicy: + description: A trust_policy block as documented below. + items: + properties: + enabled: + description: Boolean value that indicates whether the policy + is enabled. + type: boolean + type: object + type: array + zoneRedundancyEnabled: + description: Whether zone redundancy is enabled for this Container + Registry? Changing this forces a new resource to be created. + Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -672,9 +857,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: RegistryStatus defines the observed state of Registry. properties: diff --git a/package/crds/containerregistry.azure.upbound.io_scopemaps.yaml b/package/crds/containerregistry.azure.upbound.io_scopemaps.yaml index abb3db710..13fb1367c 100644 --- a/package/crds/containerregistry.azure.upbound.io_scopemaps.yaml +++ b/package/crds/containerregistry.azure.upbound.io_scopemaps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: scopemaps.containerregistry.azure.upbound.io spec: group: containerregistry.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -237,21 +236,55 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + actions: + description: A list of actions to attach to the scope map (e.g. + repo/content/read, repo2/content/delete). + items: + type: string + type: array + description: + description: The description of the Container Registry. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -425,7 +458,9 @@ spec: type: object x-kubernetes-validations: - message: actions is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.actions) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.actions) + || has(self.initProvider.actions)' status: description: ScopeMapStatus defines the observed state of ScopeMap. properties: diff --git a/package/crds/containerregistry.azure.upbound.io_tokenpasswords.yaml b/package/crds/containerregistry.azure.upbound.io_tokenpasswords.yaml index 150d57f8e..9e2a9ef2a 100644 --- a/package/crds/containerregistry.azure.upbound.io_tokenpasswords.yaml +++ b/package/crds/containerregistry.azure.upbound.io_tokenpasswords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: tokenpasswords.containerregistry.azure.upbound.io spec: group: containerregistry.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -169,21 +168,66 @@ spec: type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + password1: + description: One password block as defined below. + items: + properties: + expiry: + description: The expiration date of the password in RFC3339 + format. Changing this forces a new resource to be created. + type: string + type: object + type: array + password2: + description: One password block as defined below. + items: + properties: + expiry: + description: The expiration date of the password in RFC3339 + format. Changing this forces a new resource to be created. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -357,7 +401,9 @@ spec: type: object x-kubernetes-validations: - message: password1 is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.password1) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.password1) + || has(self.initProvider.password1)' status: description: TokenPasswordStatus defines the observed state of TokenPassword. properties: diff --git a/package/crds/containerregistry.azure.upbound.io_tokens.yaml b/package/crds/containerregistry.azure.upbound.io_tokens.yaml index 0f95c8501..ad8db0ab1 100644 --- a/package/crds/containerregistry.azure.upbound.io_tokens.yaml +++ b/package/crds/containerregistry.azure.upbound.io_tokens.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: tokens.containerregistry.azure.upbound.io spec: group: containerregistry.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -309,21 +308,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Should the Container Registry token be enabled? Defaults + to true. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/containerregistry.azure.upbound.io_webhooks.yaml b/package/crds/containerregistry.azure.upbound.io_webhooks.yaml index 019166e8a..f83d12e58 100644 --- a/package/crds/containerregistry.azure.upbound.io_webhooks.yaml +++ b/package/crds/containerregistry.azure.upbound.io_webhooks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: webhooks.containerregistry.azure.upbound.io spec: group: containerregistry.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -265,21 +264,83 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + actions: + description: 'A list of actions that trigger the Webhook to post + notifications. At least one action needs to be specified. Valid + values are: push, delete, quarantine, chart_push, chart_delete' + items: + type: string + type: array + customHeaders: + additionalProperties: + type: string + description: Custom headers that will be added to the webhook + notifications request. + type: object + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + scope: + description: Specifies the scope of repositories that can trigger + an event. For example, foo:* means events for all tags under + repository foo. foo:bar means events for 'foo:bar' only. foo + is equivalent to foo:latest. Empty means all events. Defaults + to "". + type: string + serviceUri: + description: Specifies the service URI for the Webhook to post + notifications. + type: string + status: + description: 'Specifies if this Webhook triggers notifications + or not. Valid values: enabled and disabled. Default is enabled.' + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -453,11 +514,17 @@ spec: type: object x-kubernetes-validations: - message: actions is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.actions) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.actions) + || has(self.initProvider.actions)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: serviceUri is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serviceUri) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serviceUri) + || has(self.initProvider.serviceUri)' status: description: WebhookStatus defines the observed state of Webhook. properties: diff --git a/package/crds/containerservice.azure.upbound.io_kubernetesclusternodepools.yaml b/package/crds/containerservice.azure.upbound.io_kubernetesclusternodepools.yaml index df93a0a5e..566562629 100644 --- a/package/crds/containerservice.azure.upbound.io_kubernetesclusternodepools.yaml +++ b/package/crds/containerservice.azure.upbound.io_kubernetesclusternodepools.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: kubernetesclusternodepools.containerservice.azure.upbound.io spec: group: containerservice.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -634,8 +633,6 @@ spec: description: The maximum number or percentage of nodes which will be added to the Node Pool size during an upgrade. type: string - required: - - maxSurge type: object type: array vmSize: @@ -744,21 +741,486 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + capacityReservationGroupId: + description: Specifies the ID of the Capacity Reservation Group + where this Node Pool should exist. Changing this forces a new + resource to be created. + type: string + customCaTrustEnabled: + description: Specifies whether to trust a Custom CA. + type: boolean + enableAutoScaling: + description: Whether to enable auto-scaler. + type: boolean + enableHostEncryption: + description: Should the nodes in this Node Pool have host encryption + enabled? Changing this forces a new resource to be created. + type: boolean + enableNodePublicIp: + description: Should each node have a Public IP Address? Changing + this forces a new resource to be created. + type: boolean + evictionPolicy: + description: The Eviction Policy which should be used for Virtual + Machines within the Virtual Machine Scale Set powering this + Node Pool. Possible values are Deallocate and Delete. Changing + this forces a new resource to be created. + type: string + fipsEnabled: + description: Should the nodes in this Node Pool have Federal Information + Processing Standard enabled? Changing this forces a new resource + to be created. + type: boolean + hostGroupId: + description: The fully qualified resource ID of the Dedicated + Host Group to provision virtual machines from. Changing this + forces a new resource to be created. + type: string + kubeletConfig: + description: A kubelet_config block as defined below. Changing + this forces a new resource to be created. + items: + properties: + allowedUnsafeSysctls: + description: Specifies the allow list of unsafe sysctls + command or patterns (ending in *). Changing this forces + a new resource to be created. + items: + type: string + type: array + containerLogMaxLine: + description: Specifies the maximum number of container log + files that can be present for a container. must be at + least 2. Changing this forces a new resource to be created. + type: number + containerLogMaxSizeMb: + description: Specifies the maximum size (e.g. 10MB) of container + log file before it is rotated. Changing this forces a + new resource to be created. + type: number + cpuCfsQuotaEnabled: + description: Is CPU CFS quota enforcement for containers + enabled? Changing this forces a new resource to be created. + type: boolean + cpuCfsQuotaPeriod: + description: Specifies the CPU CFS quota period value. Changing + this forces a new resource to be created. + type: string + cpuManagerPolicy: + description: Specifies the CPU Manager policy to use. Possible + values are none and static, Changing this forces a new + resource to be created. + type: string + imageGcHighThreshold: + description: Specifies the percent of disk usage above which + image garbage collection is always run. Must be between + 0 and 100. Changing this forces a new resource to be created. + type: number + imageGcLowThreshold: + description: Specifies the percent of disk usage lower than + which image garbage collection is never run. Must be between + 0 and 100. Changing this forces a new resource to be created. + type: number + podMaxPid: + description: Specifies the maximum number of processes per + pod. Changing this forces a new resource to be created. + type: number + topologyManagerPolicy: + description: Specifies the Topology Manager policy to use. + Possible values are none, best-effort, restricted or single-numa-node. + Changing this forces a new resource to be created. + type: string + type: object + type: array + kubeletDiskType: + description: The type of disk used by kubelet. Possible values + are OS and Temporary. + type: string + linuxOsConfig: + description: A linux_os_config block as defined below. Changing + this forces a new resource to be created. + items: + properties: + swapFileSizeMb: + description: Specifies the size of swap file on each node + in MB. Changing this forces a new resource to be created. + type: number + sysctlConfig: + description: A sysctl_config block as defined below. Changing + this forces a new resource to be created. + items: + properties: + fsAioMaxNr: + description: The sysctl setting fs.aio-max-nr. Must + be between 65536 and 6553500. Changing this forces + a new resource to be created. + type: number + fsFileMax: + description: The sysctl setting fs.file-max. Must + be between 8192 and 12000500. Changing this forces + a new resource to be created. + type: number + fsInotifyMaxUserWatches: + description: The sysctl setting fs.inotify.max_user_watches. + Must be between 781250 and 2097152. Changing this + forces a new resource to be created. + type: number + fsNrOpen: + description: The sysctl setting fs.nr_open. Must be + between 8192 and 20000500. Changing this forces + a new resource to be created. + type: number + kernelThreadsMax: + description: The sysctl setting kernel.threads-max. + Must be between 20 and 513785. Changing this forces + a new resource to be created. + type: number + netCoreNetdevMaxBacklog: + description: The sysctl setting net.core.netdev_max_backlog. + Must be between 1000 and 3240000. Changing this + forces a new resource to be created. + type: number + netCoreOptmemMax: + description: The sysctl setting net.core.optmem_max. + Must be between 20480 and 4194304. Changing this + forces a new resource to be created. + type: number + netCoreRmemDefault: + description: The sysctl setting net.core.rmem_default. + Must be between 212992 and 134217728. Changing this + forces a new resource to be created. + type: number + netCoreRmemMax: + description: The sysctl setting net.core.rmem_max. + Must be between 212992 and 134217728. Changing this + forces a new resource to be created. + type: number + netCoreSomaxconn: + description: The sysctl setting net.core.somaxconn. + Must be between 4096 and 3240000. Changing this + forces a new resource to be created. + type: number + netCoreWmemDefault: + description: The sysctl setting net.core.wmem_default. + Must be between 212992 and 134217728. Changing this + forces a new resource to be created. + type: number + netCoreWmemMax: + description: The sysctl setting net.core.wmem_max. + Must be between 212992 and 134217728. Changing this + forces a new resource to be created. + type: number + netIpv4IpLocalPortRangeMax: + description: The sysctl setting net.ipv4.ip_local_port_range + max value. Must be between 1024 and 60999. Changing + this forces a new resource to be created. + type: number + netIpv4IpLocalPortRangeMin: + description: The sysctl setting net.ipv4.ip_local_port_range + min value. Must be between 1024 and 60999. Changing + this forces a new resource to be created. + type: number + netIpv4NeighDefaultGcThresh1: + description: The sysctl setting net.ipv4.neigh.default.gc_thresh1. + Must be between 128 and 80000. Changing this forces + a new resource to be created. + type: number + netIpv4NeighDefaultGcThresh2: + description: The sysctl setting net.ipv4.neigh.default.gc_thresh2. + Must be between 512 and 90000. Changing this forces + a new resource to be created. + type: number + netIpv4NeighDefaultGcThresh3: + description: The sysctl setting net.ipv4.neigh.default.gc_thresh3. + Must be between 1024 and 100000. Changing this forces + a new resource to be created. + type: number + netIpv4TcpFinTimeout: + description: The sysctl setting net.ipv4.tcp_fin_timeout. + Must be between 5 and 120. Changing this forces + a new resource to be created. + type: number + netIpv4TcpKeepaliveIntvl: + description: The sysctl setting net.ipv4.tcp_keepalive_intvl. + Must be between 10 and 75. Changing this forces + a new resource to be created. + type: number + netIpv4TcpKeepaliveProbes: + description: The sysctl setting net.ipv4.tcp_keepalive_probes. + Must be between 1 and 15. Changing this forces a + new resource to be created. + type: number + netIpv4TcpKeepaliveTime: + description: The sysctl setting net.ipv4.tcp_keepalive_time. + Must be between 30 and 432000. Changing this forces + a new resource to be created. + type: number + netIpv4TcpMaxSynBacklog: + description: The sysctl setting net.ipv4.tcp_max_syn_backlog. + Must be between 128 and 3240000. Changing this forces + a new resource to be created. + type: number + netIpv4TcpMaxTwBuckets: + description: The sysctl setting net.ipv4.tcp_max_tw_buckets. + Must be between 8000 and 1440000. Changing this + forces a new resource to be created. + type: number + netIpv4TcpTwReuse: + description: Is sysctl setting net.ipv4.tcp_tw_reuse + enabled? Changing this forces a new resource to + be created. + type: boolean + netNetfilterNfConntrackBuckets: + description: The sysctl setting net.netfilter.nf_conntrack_buckets. + Must be between 65536 and 147456. Changing this + forces a new resource to be created. + type: number + netNetfilterNfConntrackMax: + description: The sysctl setting net.netfilter.nf_conntrack_max. + Must be between 131072 and 1048576. Changing this + forces a new resource to be created. + type: number + vmMaxMapCount: + description: The sysctl setting vm.max_map_count. + Must be between 65530 and 262144. Changing this + forces a new resource to be created. + type: number + vmSwappiness: + description: The sysctl setting vm.swappiness. Must + be between 0 and 100. Changing this forces a new + resource to be created. + type: number + vmVfsCachePressure: + description: The sysctl setting vm.vfs_cache_pressure. + Must be between 0 and 100. Changing this forces + a new resource to be created. + type: number + type: object + type: array + transparentHugePageDefrag: + description: specifies the defrag configuration for Transparent + Huge Page. Possible values are always, defer, defer+madvise, + madvise and never. Changing this forces a new resource + to be created. + type: string + transparentHugePageEnabled: + description: Specifies the Transparent Huge Page enabled + configuration. Possible values are always, madvise and + never. Changing this forces a new resource to be created. + type: string + type: object + type: array + maxCount: + description: The maximum number of nodes which should exist within + this Node Pool. Valid values are between 0 and 1000 and must + be greater than or equal to min_count. + type: number + maxPods: + description: The maximum number of pods that can run on each agent. + Changing this forces a new resource to be created. + type: number + messageOfTheDay: + description: A base64-encoded string which will be written to + /etc/motd after decoding. This allows customization of the message + of the day for Linux nodes. It cannot be specified for Windows + nodes and must be a static string (i.e. will be printed raw + and not executed as a script). Changing this forces a new resource + to be created. + type: string + minCount: + description: The minimum number of nodes which should exist within + this Node Pool. Valid values are between 0 and 1000 and must + be less than or equal to max_count. + type: number + mode: + description: Should this Node Pool be used for System or User + resources? Possible values are System and User. Defaults to + User. + type: string + nodeCount: + description: The initial number of nodes which should exist within + this Node Pool. Valid values are between 0 and 1000 (inclusive) + for user pools and between 1 and 1000 (inclusive) for system + pools and must be a value in the range min_count - max_count. + type: number + nodeLabels: + additionalProperties: + type: string + description: A map of Kubernetes labels which should be applied + to nodes in this Node Pool. + type: object + nodeNetworkProfile: + description: A node_network_profile block as documented below. + items: + properties: + nodePublicIpTags: + additionalProperties: + type: string + description: Specifies a mapping of tags to the instance-level + public IPs. Changing this forces a new resource to be + created. + type: object + type: object + type: array + nodePublicIpPrefixId: + description: Resource ID for the Public IP Addresses Prefix for + the nodes in this Node Pool. enable_node_public_ip should be + true. Changing this forces a new resource to be created. + type: string + nodeTaints: + description: A list of Kubernetes taints which should be applied + to nodes in the agent pool (e.g key=value:NoSchedule). Changing + this forces a new resource to be created. + items: + type: string + type: array + orchestratorVersion: + description: Version of Kubernetes used for the Agents. If not + specified, the latest recommended version will be used at provisioning + time (but won't auto-upgrade). AKS does not require an exact + patch version to be specified, minor version aliases such as + 1.22 are also supported. - The minor version's latest GA patch + is automatically chosen in that case. More details can be found + in the documentation. + type: string + osDiskSizeGb: + description: The Agent Operating System disk size in GB. Changing + this forces a new resource to be created. + type: number + osDiskType: + description: The type of disk which should be used for the Operating + System. Possible values are Ephemeral and Managed. Defaults + to Managed. Changing this forces a new resource to be created. + type: string + osSku: + description: 'Specifies the OS SKU used by the agent pool. Possible + values include: Ubuntu, CBLMariner, Mariner, Windows2019, Windows2022. + If not specified, the default is Ubuntu if OSType=Linux or Windows2019 + if OSType=Windows. And the default Windows OSSKU will be changed + to Windows2022 after Windows2019 is deprecated. Changing this + forces a new resource to be created.' + type: string + osType: + description: The Operating System which should be used for this + Node Pool. Changing this forces a new resource to be created. + Possible values are Linux and Windows. Defaults to Linux. + type: string + priority: + description: The Priority for Virtual Machines within the Virtual + Machine Scale Set that powers this Node Pool. Possible values + are Regular and Spot. Defaults to Regular. Changing this forces + a new resource to be created. + type: string + proximityPlacementGroupId: + description: The ID of the Proximity Placement Group where the + Virtual Machine Scale Set that powers this Node Pool will be + placed. Changing this forces a new resource to be created. + type: string + scaleDownMode: + description: Specifies how the node pool should deal with scaled-down + nodes. Allowed values are Delete and Deallocate. Defaults to + Delete. + type: string + snapshotId: + description: The ID of the Snapshot which should be used to create + this Node Pool. Changing this forces a new resource to be created. + type: string + spotMaxPrice: + description: The maximum price you're willing to pay in USD per + Virtual Machine. Valid values are -1 (the current on-demand + price for a Virtual Machine) or a positive value with up to + five decimal places. Changing this forces a new resource to + be created. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ultraSsdEnabled: + description: Used to specify whether the UltraSSD is enabled in + the Node Pool. Defaults to false. See the documentation for + more information. Changing this forces a new resource to be + created. + type: boolean + upgradeSettings: + description: A upgrade_settings block as documented below. + items: + properties: + maxSurge: + description: The maximum number or percentage of nodes which + will be added to the Node Pool size during an upgrade. + type: string + type: object + type: array + vmSize: + description: The SKU which should be used for the Virtual Machines + used in this Node Pool. Changing this forces a new resource + to be created. + type: string + windowsProfile: + description: A windows_profile block as documented below. Changing + this forces a new resource to be created. + items: + properties: + outboundNatEnabled: + description: Should the Windows nodes in this Node Pool + have outbound NAT enabled? Defaults to true. Changing + this forces a new resource to be created. + type: boolean + type: object + type: array + workloadRuntime: + description: Used to specify the workload runtime. Allowed values + are OCIContainer, WasmWasi and KataMshvVmIsolation. + type: string + zones: + description: Specifies a list of Availability Zones in which this + Kubernetes Cluster Node Pool should be located. Changing this + forces a new Kubernetes Cluster Node Pool to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -932,7 +1394,9 @@ spec: type: object x-kubernetes-validations: - message: vmSize is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vmSize) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.vmSize) + || has(self.initProvider.vmSize)' status: description: KubernetesClusterNodePoolStatus defines the observed state of KubernetesClusterNodePool. diff --git a/package/crds/containerservice.azure.upbound.io_kubernetesclusters.yaml b/package/crds/containerservice.azure.upbound.io_kubernetesclusters.yaml index dd887cd49..17f804f83 100644 --- a/package/crds/containerservice.azure.upbound.io_kubernetesclusters.yaml +++ b/package/crds/containerservice.azure.upbound.io_kubernetesclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: kubernetesclusters.containerservice.azure.upbound.io spec: group: containerservice.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -414,8 +413,6 @@ spec: sgxQuoteHelperEnabled: description: Should the SGX quote helper be enabled? type: boolean - required: - - sgxQuoteHelperEnabled type: object type: array defaultNodePool: @@ -923,8 +920,6 @@ spec: which will be added to the Node Pool size during an upgrade. type: string - required: - - maxSurge type: object type: array vmSize: @@ -1024,9 +1019,6 @@ spec: items: type: string type: array - required: - - name - - vmSize type: object type: array diskEncryptionSetId: @@ -1111,8 +1103,6 @@ spec: that should be configured on this Kubernetes Cluster. Possible values are SystemAssigned or UserAssigned. type: string - required: - - type type: object type: array imageCleanerEnabled: @@ -1250,8 +1240,6 @@ spec: access and enables private link. The default value is Public. type: string - required: - - keyVaultKeyId type: object type: array keyVaultSecretsProvider: @@ -1320,13 +1308,8 @@ spec: description: The Public SSH Key used to access the cluster. type: string - required: - - keyData type: object type: array - required: - - adminUsername - - sshKey type: object type: array localAccountDisabled: @@ -1360,9 +1343,6 @@ spec: items: type: number type: array - required: - - day - - hours type: object type: array notAllowed: @@ -1377,9 +1357,6 @@ spec: description: The start of a time span, formatted as an RFC3339 string. type: string - required: - - end - - start type: object type: array type: object @@ -1393,8 +1370,6 @@ spec: where the audit logs collected by Microsoft Defender should be sent to. type: string - required: - - logAnalyticsWorkspaceId type: object type: array monitorMetrics: @@ -1562,8 +1537,6 @@ spec: items: type: string type: array - required: - - networkPlugin type: object type: array nodeResourceGroup: @@ -1585,8 +1558,6 @@ spec: description: Is managed identity authentication for monitoring enabled? type: boolean - required: - - logAnalyticsWorkspaceId type: object type: array openServiceMeshEnabled: @@ -1789,8 +1760,6 @@ spec: description: The mode of the service mesh. Possible value is Istio. type: string - required: - - mode type: object type: array servicePrincipal: @@ -1819,7 +1788,6 @@ spec: - namespace type: object required: - - clientId - clientSecretSecretRef type: object type: array @@ -1869,8 +1837,6 @@ spec: when Web App Routing is enabled. For Bring-Your-Own DNS zones this property should be set to an empty string "". type: string - required: - - dnsZoneId type: object type: array windowsProfile: @@ -1915,9 +1881,6 @@ spec: the DNS server in the VNet which was used to create the managed cluster. type: string - required: - - dnsServer - - rootDomain type: object type: array license: @@ -1925,8 +1888,6 @@ spec: should be used for Node Pool Windows Virtual Machine. At this time the only possible value is Windows_Server. type: string - required: - - adminUsername type: object type: array workloadAutoscalerProfile: @@ -1948,21 +1909,1236 @@ spec: be enabled for the Cluster. Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + aciConnectorLinux: + description: A aci_connector_linux block as defined below. For + more details, please visit Create and configure an AKS cluster + to use virtual nodes. + items: + type: object + type: array + apiServerAccessProfile: + description: An api_server_access_profile block as defined below. + items: + properties: + authorizedIpRanges: + description: Set of authorized IP ranges to allow access + to API server, e.g. ["198.51.100.0/24"]. + items: + type: string + type: array + vnetIntegrationEnabled: + description: Should API Server VNet Integration be enabled? + For more details please visit Use API Server VNet Integration. + type: boolean + type: object + type: array + apiServerAuthorizedIpRanges: + description: Deprecated in favor of `spec.forProvider.apiServerAccessProfile[0].authorizedIpRanges` + items: + type: string + type: array + autoScalerProfile: + description: A auto_scaler_profile block as defined below. + items: + properties: + balanceSimilarNodeGroups: + description: Detect similar node groups and balance the + number of nodes between them. Defaults to false. + type: boolean + emptyBulkDeleteMax: + description: Maximum number of empty nodes that can be deleted + at the same time. Defaults to 10. + type: string + expander: + description: Expander to use. Possible values are least-waste, + priority, most-pods and random. Defaults to random. + type: string + maxGracefulTerminationSec: + description: Maximum number of seconds the cluster autoscaler + waits for pod termination when trying to scale down a + node. Defaults to 600. + type: string + maxNodeProvisioningTime: + description: Maximum time the autoscaler waits for a node + to be provisioned. Defaults to 15m. + type: string + maxUnreadyNodes: + description: Maximum Number of allowed unready nodes. Defaults + to 3. + type: number + maxUnreadyPercentage: + description: Maximum percentage of unready nodes the cluster + autoscaler will stop if the percentage is exceeded. Defaults + to 45. + type: number + newPodScaleUpDelay: + description: For scenarios like burst/batch scale where + you don't want CA to act before the kubernetes scheduler + could schedule all the pods, you can tell CA to ignore + unscheduled pods before they're a certain age. Defaults + to 10s. + type: string + scaleDownDelayAfterAdd: + description: How long after the scale up of AKS nodes the + scale down evaluation resumes. Defaults to 10m. + type: string + scaleDownDelayAfterDelete: + description: How long after node deletion that scale down + evaluation resumes. Defaults to the value used for scan_interval. + type: string + scaleDownDelayAfterFailure: + description: How long after scale down failure that scale + down evaluation resumes. Defaults to 3m. + type: string + scaleDownUnneeded: + description: How long a node should be unneeded before it + is eligible for scale down. Defaults to 10m. + type: string + scaleDownUnready: + description: How long an unready node should be unneeded + before it is eligible for scale down. Defaults to 20m. + type: string + scaleDownUtilizationThreshold: + description: Node utilization level, defined as sum of requested + resources divided by capacity, below which a node can + be considered for scale down. Defaults to 0.5. + type: string + scanInterval: + description: How often the AKS Cluster should be re-evaluated + for scale up/down. Defaults to 10s. + type: string + skipNodesWithLocalStorage: + description: If true cluster autoscaler will never delete + nodes with pods with local storage, for example, EmptyDir + or HostPath. Defaults to true. + type: boolean + skipNodesWithSystemPods: + description: If true cluster autoscaler will never delete + nodes with pods from kube-system (except for DaemonSet + or mirror pods). Defaults to true. + type: boolean + type: object + type: array + automaticChannelUpgrade: + description: The upgrade channel for this Kubernetes Cluster. + Possible values are patch, rapid, node-image and stable. Omitting + this field sets this value to none. + type: string + azureActiveDirectoryRoleBasedAccessControl: + description: A azure_active_directory_role_based_access_control + block as defined below. + items: + properties: + adminGroupObjectIds: + description: A list of Object IDs of Azure Active Directory + Groups which should have Admin Role on the Cluster. + items: + type: string + type: array + azureRbacEnabled: + description: Is Role Based Access Control based on Azure + AD enabled? + type: boolean + clientAppId: + description: The Client ID of an Azure Active Directory + Application. + type: string + managed: + description: Is the Azure Active Directory integration Managed, + meaning that Azure will create/manage the Service Principal + used for integration. + type: boolean + serverAppId: + description: The Server ID of an Azure Active Directory + Application. + type: string + tenantId: + description: The Tenant ID used for Azure Active Directory + Application. If this isn't specified the Tenant ID of + the current Subscription is used. + type: string + type: object + type: array + azurePolicyEnabled: + description: Should the Azure Policy Add-On be enabled? For more + details please visit Understand Azure Policy for Azure Kubernetes + Service + type: boolean + confidentialComputing: + description: A confidential_computing block as defined below. + For more details please the documentation + items: + properties: + sgxQuoteHelperEnabled: + description: Should the SGX quote helper be enabled? + type: boolean + type: object + type: array + defaultNodePool: + description: A default_node_pool block as defined below. + items: + properties: + capacityReservationGroupId: + description: Specifies the ID of the Capacity Reservation + Group within which this AKS Cluster should be created. + Changing this forces a new resource to be created. + type: string + customCaTrustEnabled: + description: Specifies whether to trust a Custom CA. + type: boolean + enableAutoScaling: + description: Should the Kubernetes Auto Scaler be enabled + for this Node Pool? + type: boolean + enableHostEncryption: + description: Should the nodes in the Default Node Pool have + host encryption enabled? Changing this forces a new resource + to be created. + type: boolean + enableNodePublicIp: + description: Should nodes in this Node Pool have a Public + IP Address? Changing this forces a new resource to be + created. + type: boolean + fipsEnabled: + description: Should the nodes in this Node Pool have Federal + Information Processing Standard enabled? Changing this + forces a new resource to be created. + type: boolean + hostGroupId: + description: Specifies the ID of the Host Group within which + this AKS Cluster should be created. Changing this forces + a new resource to be created. + type: string + kubeletConfig: + description: A kubelet_config block as defined below. Changing + this forces a new resource to be created. + items: + properties: + allowedUnsafeSysctls: + description: Specifies the allow list of unsafe sysctls + command or patterns (ending in *). Changing this + forces a new resource to be created. + items: + type: string + type: array + containerLogMaxLine: + description: Specifies the maximum number of container + log files that can be present for a container. must + be at least 2. Changing this forces a new resource + to be created. + type: number + containerLogMaxSizeMb: + description: Specifies the maximum size (e.g. 10MB) + of container log file before it is rotated. Changing + this forces a new resource to be created. + type: number + cpuCfsQuotaEnabled: + description: Is CPU CFS quota enforcement for containers + enabled? Changing this forces a new resource to + be created. + type: boolean + cpuCfsQuotaPeriod: + description: Specifies the CPU CFS quota period value. + Changing this forces a new resource to be created. + type: string + cpuManagerPolicy: + description: Specifies the CPU Manager policy to use. + Possible values are none and static, Changing this + forces a new resource to be created. + type: string + imageGcHighThreshold: + description: Specifies the percent of disk usage above + which image garbage collection is always run. Must + be between 0 and 100. Changing this forces a new + resource to be created. + type: number + imageGcLowThreshold: + description: Specifies the percent of disk usage lower + than which image garbage collection is never run. + Must be between 0 and 100. Changing this forces + a new resource to be created. + type: number + podMaxPid: + description: Specifies the maximum number of processes + per pod. Changing this forces a new resource to + be created. + type: number + topologyManagerPolicy: + description: Specifies the Topology Manager policy + to use. Possible values are none, best-effort, restricted + or single-numa-node. Changing this forces a new + resource to be created. + type: string + type: object + type: array + kubeletDiskType: + description: The type of disk used by kubelet. Possible + values are OS and Temporary. + type: string + linuxOsConfig: + description: A linux_os_config block as defined below. Changing + this forces a new resource to be created. + items: + properties: + swapFileSizeMb: + description: Specifies the size of the swap file on + each node in MB. Changing this forces a new resource + to be created. + type: number + sysctlConfig: + description: A sysctl_config block as defined below. + Changing this forces a new resource to be created. + items: + properties: + fsAioMaxNr: + description: The sysctl setting fs.aio-max-nr. + Must be between 65536 and 6553500. Changing + this forces a new resource to be created. + type: number + fsFileMax: + description: The sysctl setting fs.file-max. + Must be between 8192 and 12000500. Changing + this forces a new resource to be created. + type: number + fsInotifyMaxUserWatches: + description: The sysctl setting fs.inotify.max_user_watches. + Must be between 781250 and 2097152. Changing + this forces a new resource to be created. + type: number + fsNrOpen: + description: The sysctl setting fs.nr_open. + Must be between 8192 and 20000500. Changing + this forces a new resource to be created. + type: number + kernelThreadsMax: + description: The sysctl setting kernel.threads-max. + Must be between 20 and 513785. Changing this + forces a new resource to be created. + type: number + netCoreNetdevMaxBacklog: + description: The sysctl setting net.core.netdev_max_backlog. + Must be between 1000 and 3240000. Changing + this forces a new resource to be created. + type: number + netCoreOptmemMax: + description: The sysctl setting net.core.optmem_max. + Must be between 20480 and 4194304. Changing + this forces a new resource to be created. + type: number + netCoreRmemDefault: + description: The sysctl setting net.core.rmem_default. + Must be between 212992 and 134217728. Changing + this forces a new resource to be created. + type: number + netCoreRmemMax: + description: The sysctl setting net.core.rmem_max. + Must be between 212992 and 134217728. Changing + this forces a new resource to be created. + type: number + netCoreSomaxconn: + description: The sysctl setting net.core.somaxconn. + Must be between 4096 and 3240000. Changing + this forces a new resource to be created. + type: number + netCoreWmemDefault: + description: The sysctl setting net.core.wmem_default. + Must be between 212992 and 134217728. Changing + this forces a new resource to be created. + type: number + netCoreWmemMax: + description: The sysctl setting net.core.wmem_max. + Must be between 212992 and 134217728. Changing + this forces a new resource to be created. + type: number + netIpv4IpLocalPortRangeMax: + description: The sysctl setting net.ipv4.ip_local_port_range + max value. Must be between 1024 and 60999. + Changing this forces a new resource to be + created. + type: number + netIpv4IpLocalPortRangeMin: + description: The sysctl setting net.ipv4.ip_local_port_range + min value. Must be between 1024 and 60999. + Changing this forces a new resource to be + created. + type: number + netIpv4NeighDefaultGcThresh1: + description: The sysctl setting net.ipv4.neigh.default.gc_thresh1. + Must be between 128 and 80000. Changing this + forces a new resource to be created. + type: number + netIpv4NeighDefaultGcThresh2: + description: The sysctl setting net.ipv4.neigh.default.gc_thresh2. + Must be between 512 and 90000. Changing this + forces a new resource to be created. + type: number + netIpv4NeighDefaultGcThresh3: + description: The sysctl setting net.ipv4.neigh.default.gc_thresh3. + Must be between 1024 and 100000. Changing + this forces a new resource to be created. + type: number + netIpv4TcpFinTimeout: + description: The sysctl setting net.ipv4.tcp_fin_timeout. + Must be between 5 and 120. Changing this forces + a new resource to be created. + type: number + netIpv4TcpKeepaliveIntvl: + description: The sysctl setting net.ipv4.tcp_keepalive_intvl. + Must be between 10 and 75. Changing this forces + a new resource to be created. + type: number + netIpv4TcpKeepaliveProbes: + description: The sysctl setting net.ipv4.tcp_keepalive_probes. + Must be between 1 and 15. Changing this forces + a new resource to be created. + type: number + netIpv4TcpKeepaliveTime: + description: The sysctl setting net.ipv4.tcp_keepalive_time. + Must be between 30 and 432000. Changing this + forces a new resource to be created. + type: number + netIpv4TcpMaxSynBacklog: + description: The sysctl setting net.ipv4.tcp_max_syn_backlog. + Must be between 128 and 3240000. Changing + this forces a new resource to be created. + type: number + netIpv4TcpMaxTwBuckets: + description: The sysctl setting net.ipv4.tcp_max_tw_buckets. + Must be between 8000 and 1440000. Changing + this forces a new resource to be created. + type: number + netIpv4TcpTwReuse: + description: The sysctl setting net.ipv4.tcp_tw_reuse. + Changing this forces a new resource to be + created. + type: boolean + netNetfilterNfConntrackBuckets: + description: The sysctl setting net.netfilter.nf_conntrack_buckets. + Must be between 65536 and 147456. Changing + this forces a new resource to be created. + type: number + netNetfilterNfConntrackMax: + description: The sysctl setting net.netfilter.nf_conntrack_max. + Must be between 131072 and 1048576. Changing + this forces a new resource to be created. + type: number + vmMaxMapCount: + description: The sysctl setting vm.max_map_count. + Must be between 65530 and 262144. Changing + this forces a new resource to be created. + type: number + vmSwappiness: + description: The sysctl setting vm.swappiness. + Must be between 0 and 100. Changing this forces + a new resource to be created. + type: number + vmVfsCachePressure: + description: The sysctl setting vm.vfs_cache_pressure. + Must be between 0 and 100. Changing this forces + a new resource to be created. + type: number + type: object + type: array + transparentHugePageDefrag: + description: specifies the defrag configuration for + Transparent Huge Page. Possible values are always, + defer, defer+madvise, madvise and never. Changing + this forces a new resource to be created. + type: string + transparentHugePageEnabled: + description: Specifies the Transparent Huge Page enabled + configuration. Possible values are always, madvise + and never. Changing this forces a new resource to + be created. + type: string + type: object + type: array + maxCount: + description: The maximum number of nodes which should exist + in this Node Pool. If specified this must be between 1 + and 1000. + type: number + maxPods: + description: The maximum number of pods that can run on + each agent. Changing this forces a new resource to be + created. + type: number + messageOfTheDay: + description: A base64-encoded string which will be written + to /etc/motd after decoding. This allows customization + of the message of the day for Linux nodes. It cannot be + specified for Windows nodes and must be a static string + (i.e. will be printed raw and not executed as a script). + Changing this forces a new resource to be created. + type: string + minCount: + description: The minimum number of nodes which should exist + in this Node Pool. If specified this must be between 1 + and 1000. + type: number + name: + description: The name which should be used for the default + Kubernetes Node Pool. Changing this forces a new resource + to be created. + type: string + nodeCount: + description: The initial number of nodes which should exist + in this Node Pool. If specified this must be between 1 + and 1000 and between min_count and max_count. + type: number + nodeLabels: + additionalProperties: + type: string + description: A map of Kubernetes labels which should be + applied to nodes in the Default Node Pool. + type: object + nodeNetworkProfile: + description: A node_network_profile block as documented + below. + items: + properties: + nodePublicIpTags: + additionalProperties: + type: string + description: Specifies a mapping of tags to the instance-level + public IPs. Changing this forces a new resource + to be created. + type: object + type: object + type: array + nodePublicIpPrefixId: + description: Resource ID for the Public IP Addresses Prefix + for the nodes in this Node Pool. enable_node_public_ip + should be true. Changing this forces a new resource to + be created. + type: string + nodeTaints: + description: A list of the taints added to new nodes during + node pool create and scale. Changing this forces a new + resource to be created. + items: + type: string + type: array + onlyCriticalAddonsEnabled: + description: Enabling this option will taint default node + pool with CriticalAddonsOnly=true:NoSchedule taint. Changing + this forces a new resource to be created. + type: boolean + orchestratorVersion: + description: Version of Kubernetes used for the Agents. + If not specified, the default node pool will be created + with the version specified by kubernetes_version. If both + are unspecified, the latest recommended version will be + used at provisioning time (but won't auto-upgrade). AKS + does not require an exact patch version to be specified, + minor version aliases such as 1.22 are also supported. + - The minor version's latest GA patch is automatically + chosen in that case. More details can be found in the + documentation. + type: string + osDiskSizeGb: + description: The size of the OS Disk which should be used + for each agent in the Node Pool. Changing this forces + a new resource to be created. + type: number + osDiskType: + description: The type of disk which should be used for the + Operating System. Possible values are Ephemeral and Managed. + Defaults to Managed. Changing this forces a new resource + to be created. + type: string + osSku: + description: 'Specifies the OS SKU used by the agent pool. + Possible values include: Ubuntu, CBLMariner, Mariner, + Windows2019, Windows2022. If not specified, the default + is Ubuntu if OSType=Linux or Windows2019 if OSType=Windows. + And the default Windows OSSKU will be changed to Windows2022 + after Windows2019 is deprecated. Changing this forces + a new resource to be created.' + type: string + proximityPlacementGroupId: + description: The ID of the Proximity Placement Group. Changing + this forces a new resource to be created. + type: string + scaleDownMode: + description: Specifies the autoscaling behaviour of the + Kubernetes Cluster. Allowed values are Delete and Deallocate. + Defaults to Delete. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Node Pool. + type: object + temporaryNameForRotation: + description: Specifies the name of the temporary node pool + used to cycle the default node pool for VM resizing. + type: string + type: + description: The type of Node Pool which should be created. + Possible values are AvailabilitySet and VirtualMachineScaleSets. + Defaults to VirtualMachineScaleSets. Changing this forces + a new resource to be created. + type: string + ultraSsdEnabled: + description: Used to specify whether the UltraSSD is enabled + in the Default Node Pool. Defaults to false. See the documentation + for more information. Changing this forces a new resource + to be created. + type: boolean + upgradeSettings: + description: A upgrade_settings block as documented below. + items: + properties: + maxSurge: + description: The maximum number or percentage of nodes + which will be added to the Node Pool size during + an upgrade. + type: string + type: object + type: array + vmSize: + description: The size of the Virtual Machine, such as Standard_DS2_v2. + type: string + workloadRuntime: + description: Specifies the workload runtime used by the + node pool. Possible values are OCIContainer and KataMshvVmIsolation. + type: string + zones: + description: Specifies a list of Availability Zones in which + this Kubernetes Cluster should be located. Changing this + forces a new Kubernetes Cluster to be created. + items: + type: string + type: array + type: object + type: array + diskEncryptionSetId: + description: The ID of the Disk Encryption Set which should be + used for the Nodes and Volumes. More information can be found + in the documentation. Changing this forces a new resource to + be created. + type: string + dnsPrefix: + description: DNS prefix specified when creating the managed cluster. + Possible values must begin and end with a letter or number, + contain only letters, numbers, and hyphens and be between 1 + and 54 characters in length. Changing this forces a new resource + to be created. + type: string + dnsPrefixPrivateCluster: + description: Specifies the DNS prefix to use with private clusters. + Changing this forces a new resource to be created. + type: string + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Managed Kubernetes Cluster should exist. Changing this + forces a new resource to be created. + type: string + enablePodSecurityPolicy: + type: boolean + httpApplicationRoutingEnabled: + description: Should HTTP Application Routing be enabled? + type: boolean + httpProxyConfig: + description: A http_proxy_config block as defined below. + items: + properties: + httpProxy: + description: The proxy address to be used when communicating + over HTTP. Changing this forces a new resource to be created. + type: string + httpsProxy: + description: The proxy address to be used when communicating + over HTTPS. Changing this forces a new resource to be + created. + type: string + noProxy: + description: The list of domains that will not use the proxy + for communication. + items: + type: string + type: array + type: object + type: array + identity: + description: An identity block as defined below. One of either + identity or service_principal must be specified. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Kubernetes Cluster. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Kubernetes Cluster. + Possible values are SystemAssigned or UserAssigned. + type: string + type: object + type: array + imageCleanerEnabled: + description: Specifies whether Image Cleaner is enabled. + type: boolean + imageCleanerIntervalHours: + description: Specifies the interval in hours when images should + be cleaned up. Defaults to 48. + type: number + ingressApplicationGateway: + description: An ingress_application_gateway block as defined below. + items: + properties: + gatewayId: + description: The ID of the Application Gateway to integrate + with the ingress controller of this Kubernetes Cluster. + See this page for further details. + type: string + gatewayName: + description: The name of the Application Gateway to be used + or created in the Nodepool Resource Group, which in turn + will be integrated with the ingress controller of this + Kubernetes Cluster. See this page for further details. + type: string + subnetCidr: + description: The subnet CIDR to be used to create an Application + Gateway, which in turn will be integrated with the ingress + controller of this Kubernetes Cluster. See this page for + further details. + type: string + type: object + type: array + keyManagementService: + description: A key_management_service block as defined below. + For more details, please visit Key Management Service (KMS) + etcd encryption to an AKS cluster. + items: + properties: + keyVaultKeyId: + description: Identifier of Azure Key Vault key. See key + identifier format for more details. When Azure Key Vault + key management service is enabled, this field is required + and must be a valid key identifier. When enabled is false, + leave the field empty. + type: string + keyVaultNetworkAccess: + description: Network access of the key vault Network access + of key vault. The possible values are Public and Private. + Public means the key vault allows public access from all + networks. Private means the key vault disables public + access and enables private link. The default value is + Public. + type: string + type: object + type: array + keyVaultSecretsProvider: + description: A key_vault_secrets_provider block as defined below. + items: + properties: + secretRotationEnabled: + description: Should the secret store CSI driver on the AKS + cluster be enabled? + type: boolean + secretRotationInterval: + description: The interval to poll for secret rotation. This + attribute is only set when secret_rotation is true and + defaults to 2m. + type: string + type: object + type: array + kubeletIdentity: + description: A kubelet_identity block as defined below. + items: + properties: + clientId: + description: The Client ID of the user-defined Managed Identity + to be assigned to the Kubelets. If not specified a Managed + Identity is created automatically. Changing this forces + a new resource to be created. + type: string + objectId: + description: The Object ID of the user-defined Managed Identity + assigned to the Kubelets.If not specified a Managed Identity + is created automatically. Changing this forces a new resource + to be created. + type: string + userAssignedIdentityId: + description: The ID of the User Assigned Identity assigned + to the Kubelets. If not specified a Managed Identity is + created automatically. Changing this forces a new resource + to be created. + type: string + type: object + type: array + kubernetesVersion: + description: Version of Kubernetes specified when creating the + AKS managed cluster. If not specified, the latest recommended + version will be used at provisioning time (but won't auto-upgrade). + AKS does not require an exact patch version to be specified, + minor version aliases such as 1.22 are also supported. - The + minor version's latest GA patch is automatically chosen in that + case. More details can be found in the documentation. + type: string + linuxProfile: + description: A linux_profile block as defined below. + items: + properties: + adminUsername: + description: The Admin Username for the Cluster. Changing + this forces a new resource to be created. + type: string + sshKey: + description: An ssh_key block. Only one is currently allowed. + Changing this will update the key on all node pools. More + information can be found in the documentation. + items: + properties: + keyData: + description: The Public SSH Key used to access the + cluster. + type: string + type: object + type: array + type: object + type: array + localAccountDisabled: + description: If true local accounts will be disabled. See the + documentation for more information. + type: boolean + location: + description: The location where the Managed Kubernetes Cluster + should be created. Changing this forces a new resource to be + created. + type: string + maintenanceWindow: + description: A maintenance_window block as defined below. + items: + properties: + allowed: + description: One or more allowed blocks as defined below. + items: + properties: + day: + description: A day in a week. Possible values are + Sunday, Monday, Tuesday, Wednesday, Thursday, Friday + and Saturday. + type: string + hours: + description: An array of hour slots in a day. For + example, specifying 1 will allow maintenance from + 1:00am to 2:00am. Specifying 1, 2 will allow maintenance + from 1:00am to 3:00m. Possible values are between + 0 and 23. + items: + type: number + type: array + type: object + type: array + notAllowed: + description: One or more not_allowed block as defined below. + items: + properties: + end: + description: The end of a time span, formatted as + an RFC3339 string. + type: string + start: + description: The start of a time span, formatted as + an RFC3339 string. + type: string + type: object + type: array + type: object + type: array + microsoftDefender: + description: A microsoft_defender block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: Specifies the ID of the Log Analytics Workspace + where the audit logs collected by Microsoft Defender should + be sent to. + type: string + type: object + type: array + monitorMetrics: + description: Specifies a Prometheus add-on profile for the Kubernetes + Cluster. A monitor_metrics block as defined below. + items: + properties: + annotationsAllowed: + description: Specifies a comma-separated list of Kubernetes + annotation keys that will be used in the resource's labels + metric. + type: string + labelsAllowed: + description: Specifies a Comma-separated list of additional + Kubernetes label keys that will be used in the resource's + labels metric. + type: string + type: object + type: array + networkProfile: + description: A network_profile block as defined below. + items: + properties: + dnsServiceIp: + description: IP address within the Kubernetes service address + range that will be used by cluster service discovery (kube-dns). + Changing this forces a new resource to be created. + type: string + dockerBridgeCidr: + description: IP address (in CIDR notation) used as the Docker + bridge IP address on nodes. Changing this forces a new + resource to be created. + type: string + ebpfDataPlane: + description: Specifies the eBPF data plane used for building + the Kubernetes network. Possible value is cilium. Changing + this forces a new resource to be created. + type: string + ipVersions: + description: Specifies a list of IP versions the Kubernetes + Cluster will use to assign IP addresses to its nodes and + pods. Possible values are IPv4 and/or IPv6. IPv4 must + always be specified. Changing this forces a new resource + to be created. + items: + type: string + type: array + loadBalancerProfile: + description: A load_balancer_profile block as defined below. + This can only be specified when load_balancer_sku is set + to standard. Changing this forces a new resource to be + created. + items: + properties: + idleTimeoutInMinutes: + description: Desired outbound flow idle timeout in + minutes for the cluster load balancer. Must be between + 4 and 120 inclusive. Defaults to 4. + type: number + managedOutboundIpCount: + description: Count of desired managed outbound IPs + for the cluster load balancer. Must be between 1 + and 100 inclusive. + type: number + managedOutboundIpv6Count: + description: The desired number of IPv6 outbound IPs + created and managed by Azure for the cluster load + balancer. Must be in the range of 1 to 100 (inclusive). + The default value is 0 for single-stack and 1 for + dual-stack. + type: number + outboundIpAddressIds: + description: The ID of the Public IP Addresses which + should be used for outbound communication for the + cluster load balancer. + items: + type: string + type: array + outboundIpPrefixIds: + description: The ID of the outbound Public IP Address + Prefixes which should be used for the cluster load + balancer. + items: + type: string + type: array + outboundPortsAllocated: + description: Number of desired SNAT port for each + VM in the clusters load balancer. Must be between + 0 and 64000 inclusive. Defaults to 0. + type: number + type: object + type: array + loadBalancerSku: + description: Specifies the SKU of the Load Balancer used + for this Kubernetes Cluster. Possible values are basic + and standard. Defaults to standard. Changing this forces + a new resource to be created. + type: string + natGatewayProfile: + description: A nat_gateway_profile block as defined below. + items: + properties: + idleTimeoutInMinutes: + description: Desired outbound flow idle timeout in + minutes for the cluster load balancer. Must be between + 4 and 120 inclusive. Defaults to 4. + type: number + managedOutboundIpCount: + description: Count of desired managed outbound IPs + for the cluster load balancer. Must be between 1 + and 100 inclusive. + type: number + type: object + type: array + networkMode: + description: Network mode to be used with Azure CNI. Possible + values are bridge and transparent. Changing this forces + a new resource to be created. + type: string + networkPlugin: + description: Network plugin to use for networking. Currently + supported values are azure, kubenet and none. Changing + this forces a new resource to be created. + type: string + networkPluginMode: + description: Specifies the network plugin mode used for + building the Kubernetes network. Possible value is Overlay. + Changing this forces a new resource to be created. + type: string + networkPolicy: + description: Sets up network policy to be used with Azure + CNI. Network policy allows us to control the traffic flow + between pods. Currently supported values are calico and + azure. Changing this forces a new resource to be created. + type: string + outboundType: + description: The outbound (egress) routing method which + should be used for this Kubernetes Cluster. Possible values + are loadBalancer, userDefinedRouting, managedNATGateway + and userAssignedNATGateway. Defaults to loadBalancer. + Changing this forces a new resource to be created. + type: string + podCidr: + description: The CIDR to use for pod IP addresses. This + field can only be set when network_plugin is set to kubenet. + Changing this forces a new resource to be created. + type: string + podCidrs: + description: A list of CIDRs to use for pod IP addresses. + For single-stack networking a single IPv4 CIDR is expected. + For dual-stack networking an IPv4 and IPv6 CIDR are expected. + Changing this forces a new resource to be created. + items: + type: string + type: array + serviceCidr: + description: The Network Range used by the Kubernetes service. + Changing this forces a new resource to be created. + type: string + serviceCidrs: + description: A list of CIDRs to use for Kubernetes services. + For single-stack networking a single IPv4 CIDR is expected. + For dual-stack networking an IPv4 and IPv6 CIDR are expected. + Changing this forces a new resource to be created. + items: + type: string + type: array + type: object + type: array + nodeResourceGroup: + description: The auto-generated Resource Group which contains + the resources for this Managed Kubernetes Cluster. + type: string + oidcIssuerEnabled: + description: Enable or Disable the OIDC issuer URL + type: boolean + omsAgent: + description: An oms_agent block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The ID of the Log Analytics Workspace which + the OMS Agent should send data to. + type: string + msiAuthForMonitoringEnabled: + description: Is managed identity authentication for monitoring + enabled? + type: boolean + type: object + type: array + openServiceMeshEnabled: + description: Is Open Service Mesh enabled? For more details, please + visit Open Service Mesh for AKS. + type: boolean + privateClusterEnabled: + description: Should this Kubernetes Cluster have its API server + only exposed on internal IP addresses? This provides a Private + IP Address for the Kubernetes API on the Virtual Network where + the Kubernetes Cluster is located. Defaults to false. Changing + this forces a new resource to be created. + type: boolean + privateClusterPublicFqdnEnabled: + description: Specifies whether a Public FQDN for this Private + Cluster should be added. Defaults to false. + type: boolean + publicNetworkAccessEnabled: + description: Whether public network access is allowed for this + Kubernetes Cluster. Defaults to true. Changing this forces a + new resource to be created. + type: boolean + roleBasedAccessControlEnabled: + description: Whether Role Based Access Control for the Kubernetes + Cluster should be enabled. Defaults to true. Changing this forces + a new resource to be created. + type: boolean + runCommandEnabled: + description: Whether to enable run command for the cluster or + not. Defaults to true. + type: boolean + serviceMeshProfile: + description: A service_mesh_profile block as defined below. + items: + properties: + mode: + description: The mode of the service mesh. Possible value + is Istio. + type: string + type: object + type: array + servicePrincipal: + description: A service_principal block as documented below. One + of either identity or service_principal must be specified. + items: + properties: + clientId: + description: The Client ID for the Service Principal. + type: string + type: object + type: array + skuTier: + description: The SKU Tier that should be used for this Kubernetes + Cluster. Possible values are Free, and Standard (which includes + the Uptime SLA). Defaults to Free. + type: string + storageProfile: + description: A storage_profile block as defined below. + items: + properties: + blobDriverEnabled: + description: Is the Blob CSI driver enabled? Defaults to + false. + type: boolean + diskDriverEnabled: + description: Is the Disk CSI driver enabled? Defaults to + true. + type: boolean + diskDriverVersion: + description: Disk CSI Driver version to be used. Possible + values are v1 and v2. Defaults to v1. + type: string + fileDriverEnabled: + description: Is the File CSI driver enabled? Defaults to + true. + type: boolean + snapshotControllerEnabled: + description: Is the Snapshot Controller enabled? Defaults + to true. + type: boolean + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + webAppRouting: + description: A web_app_routing block as defined below. + items: + properties: + dnsZoneId: + description: Specifies the ID of the DNS Zone in which DNS + entries are created for applications deployed to the cluster + when Web App Routing is enabled. For Bring-Your-Own DNS + zones this property should be set to an empty string "". + type: string + type: object + type: array + windowsProfile: + description: A windows_profile block as defined below. + items: + properties: + adminUsername: + description: The Admin Username for Windows VMs. Changing + this forces a new resource to be created. + type: string + gmsa: + description: A gmsa block as defined below. + items: + properties: + dnsServer: + description: Specifies the DNS server for Windows + gMSA. Set this to an empty string if you have configured + the DNS server in the VNet which was used to create + the managed cluster. + type: string + rootDomain: + description: Specifies the root domain name for Windows + gMSA. Set this to an empty string if you have configured + the DNS server in the VNet which was used to create + the managed cluster. + type: string + type: object + type: array + license: + description: Specifies the type of on-premise license which + should be used for Node Pool Windows Virtual Machine. + At this time the only possible value is Windows_Server. + type: string + type: object + type: array + workloadAutoscalerProfile: + description: A workload_autoscaler_profile block defined below. + items: + properties: + kedaEnabled: + description: Specifies whether KEDA Autoscaler can be used + for workloads. + type: boolean + verticalPodAutoscalerEnabled: + description: Specifies whether Vertical Pod Autoscaler should + be enabled. + type: boolean + type: object + type: array + workloadIdentityEnabled: + description: Specifies whether Azure AD Workload Identity should + be enabled for the Cluster. Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -2136,9 +3312,13 @@ spec: type: object x-kubernetes-validations: - message: defaultNodePool is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultNodePool) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.defaultNodePool) + || has(self.initProvider.defaultNodePool)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: KubernetesClusterStatus defines the observed state of KubernetesCluster. properties: diff --git a/package/crds/containerservice.azure.upbound.io_kubernetesfleetmanagers.yaml b/package/crds/containerservice.azure.upbound.io_kubernetesfleetmanagers.yaml index 47064771e..372ad3c54 100644 --- a/package/crds/containerservice.azure.upbound.io_kubernetesfleetmanagers.yaml +++ b/package/crds/containerservice.azure.upbound.io_kubernetesfleetmanagers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: kubernetesfleetmanagers.containerservice.azure.upbound.io spec: group: containerservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -76,8 +75,6 @@ spec: properties: dnsPrefix: type: string - required: - - dnsPrefix type: object type: array location: @@ -172,21 +169,67 @@ spec: Kubernetes Fleet Manager. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + hubProfile: + description: A hub_profile block as defined below. The FleetHubProfile + configures the Fleet's hub. Changing this forces a new Kubernetes + Fleet Manager to be created. + items: + properties: + dnsPrefix: + type: string + type: object + type: array + location: + description: The Azure Region where the Kubernetes Fleet Manager + should exist. Changing this forces a new Kubernetes Fleet Manager + to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Kubernetes Fleet Manager. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -360,7 +403,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: KubernetesFleetManagerStatus defines the observed state of KubernetesFleetManager. diff --git a/package/crds/cosmosdb.azure.upbound.io_accounts.yaml b/package/crds/cosmosdb.azure.upbound.io_accounts.yaml index 91c3c7a8c..a6296227a 100644 --- a/package/crds/cosmosdb.azure.upbound.io_accounts.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_accounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accounts.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,8 +81,6 @@ spec: this Cosmos DB account. Possible values are FullFidelity and WellDefined. type: string - required: - - schemaType type: object type: array analyticalStorageEnabled: @@ -117,8 +114,6 @@ spec: is one-way, changing Continuous to Periodic forces a new resource to be created. type: string - required: - - type type: object type: array capabilities: @@ -135,8 +130,6 @@ spec: EnableMongoRoleBasedAccessControl, EnableServerless, EnableTable, EnableUniqueCompoundNestedDocs, MongoDBv3.4 and mongoEnableDocLevelTTL. type: string - required: - - name type: object type: array capacity: @@ -148,8 +141,6 @@ spec: Cosmos DB account (RU/s). Possible values are at least -1. -1 means no limit. type: number - required: - - totalThroughputLimit type: object type: array consistencyPolicy: @@ -176,8 +167,6 @@ spec: Defaults to 100. Required when consistency_level is set to BoundedStaleness. type: number - required: - - consistencyLevel type: object type: array corsRule: @@ -213,12 +202,6 @@ spec: description: The number of seconds the client should cache a preflight response. type: number - required: - - allowedHeaders - - allowedMethods - - allowedOrigins - - exposedHeaders - - maxAgeInSeconds type: object type: array createMode: @@ -266,9 +249,6 @@ spec: description: Should zone redundancy be enabled for this region? Defaults to false. type: boolean - required: - - failoverPriority - - location type: object type: array identity: @@ -286,8 +266,6 @@ spec: Cosmos account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array ipRangeFilter: @@ -441,8 +419,6 @@ spec: description: Specifies the name of the CosmosDB Account. Changing this forces a new resource to be created. type: string - required: - - name type: object type: array restoreTimestampInUtc: @@ -532,8 +508,6 @@ spec: type: string type: object type: object - required: - - restoreTimestampInUtc type: object type: array tags: @@ -555,26 +529,351 @@ spec: added as a virtual network rule even if its CosmosDB service endpoint is not active. Defaults to false. type: boolean - required: - - id type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessKeyMetadataWritesEnabled: + description: Is write operations on metadata resources (databases, + containers, throughput) via account keys enabled? Defaults to + true. + type: boolean + analyticalStorage: + description: An analytical_storage block as defined below. + items: + properties: + schemaType: + description: The schema type of the Analytical Storage for + this Cosmos DB account. Possible values are FullFidelity + and WellDefined. + type: string + type: object + type: array + analyticalStorageEnabled: + description: Enable Analytical Storage option for this Cosmos + DB account. Defaults to false. Enabling and then disabling analytical + storage forces a new resource to be created. + type: boolean + backup: + description: A backup block as defined below. + items: + properties: + intervalInMinutes: + description: The interval in minutes between two backups. + This is configurable only when type is Periodic. Possible + values are between 60 and 1440. + type: number + retentionInHours: + description: The time in hours that each backup is retained. + This is configurable only when type is Periodic. Possible + values are between 8 and 720. + type: number + storageRedundancy: + description: The storage redundancy is used to indicate + the type of backup residency. This is configurable only + when type is Periodic. Possible values are Geo, Local + and Zone. + type: string + type: + description: The type of the backup. Possible values are + Continuous and Periodic. Migration of Periodic to Continuous + is one-way, changing Continuous to Periodic forces a new + resource to be created. + type: string + type: object + type: array + capabilities: + description: The capabilities which should be enabled for this + Cosmos DB account. Value is a capabilities block as defined + below. + items: + properties: + name: + description: The capability to enable - Possible values + are AllowSelfServeUpgradeToMongo36, DisableRateLimitingResponses, + EnableAggregationPipeline, EnableCassandra, EnableGremlin, + EnableMongo, EnableMongo16MBDocumentSupport, EnableMongoRetryableWrites, + EnableMongoRoleBasedAccessControl, EnableServerless, EnableTable, + EnableUniqueCompoundNestedDocs, MongoDBv3.4 and mongoEnableDocLevelTTL. + type: string + type: object + type: array + capacity: + description: A capacity block as defined below. + items: + properties: + totalThroughputLimit: + description: The total throughput limit imposed on this + Cosmos DB account (RU/s). Possible values are at least + -1. -1 means no limit. + type: number + type: object + type: array + consistencyPolicy: + description: Specifies a consistency_policy resource, used to + define the consistency policy for this CosmosDB account. + items: + properties: + consistencyLevel: + description: The Consistency Level to use for this CosmosDB + Account - can be either BoundedStaleness, Eventual, Session, + Strong or ConsistentPrefix. + type: string + maxIntervalInSeconds: + description: When used with the Bounded Staleness consistency + level, this value represents the time amount of staleness + (in seconds) tolerated. The accepted range for this value + is 5 - 86400 (1 day). Defaults to 5. Required when consistency_level + is set to BoundedStaleness. + type: number + maxStalenessPrefix: + description: When used with the Bounded Staleness consistency + level, this value represents the number of stale requests + tolerated. The accepted range for this value is 10 – 2147483647. + Defaults to 100. Required when consistency_level is set + to BoundedStaleness. + type: number + type: object + type: array + corsRule: + description: A cors_rule block as defined below. + items: + properties: + allowedHeaders: + description: A list of headers that are allowed to be a + part of the cross-origin request. + items: + type: string + type: array + allowedMethods: + description: A list of HTTP headers that are allowed to + be executed by the origin. Valid options are DELETE, GET, + HEAD, MERGE, POST, OPTIONS, PUT or PATCH. + items: + type: string + type: array + allowedOrigins: + description: A list of origin domains that will be allowed + by CORS. + items: + type: string + type: array + exposedHeaders: + description: A list of response headers that are exposed + to CORS clients. + items: + type: string + type: array + maxAgeInSeconds: + description: The number of seconds the client should cache + a preflight response. + type: number + type: object + type: array + createMode: + description: The creation mode for the CosmosDB Account. Possible + values are Default and Restore. Changing this forces a new resource + to be created. + type: string + defaultIdentityType: + description: The default identity for accessing Key Vault. Possible + values are FirstPartyIdentity, SystemAssignedIdentity or UserAssignedIdentity. + type: string + enableAutomaticFailover: + description: Enable automatic failover for this Cosmos DB account. + type: boolean + enableFreeTier: + description: Enable the Free Tier pricing option for this Cosmos + DB account. Defaults to false. Changing this forces a new resource + to be created. + type: boolean + enableMultipleWriteLocations: + description: Enable multiple write locations for this Cosmos DB + account. + type: boolean + geoLocation: + description: Specifies a geo_location resource, used to define + where data should be replicated with the failover_priority 0 + specifying the primary location. Value is a geo_location block + as defined below. + items: + properties: + failoverPriority: + description: The failover priority of the region. A failover + priority of 0 indicates a write region. The maximum value + for a failover priority = (total number of regions - 1). + Failover priority values must be unique for each of the + regions in which the database account exists. Changing + this causes the location to be re-provisioned and cannot + be changed for the location with failover priority 0. + type: number + location: + description: The name of the Azure region to host replicated + data. + type: string + zoneRedundant: + description: Should zone redundancy be enabled for this + region? Defaults to false. + type: boolean + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Cosmos Account. + items: + type: string + type: array + type: + description: The Type of Managed Identity assigned to this + Cosmos account. Possible values are SystemAssigned, UserAssigned + and SystemAssigned, UserAssigned. + type: string + type: object + type: array + ipRangeFilter: + description: 'CosmosDB Firewall Support: This value specifies + the set of IP addresses or IP address ranges in CIDR form to + be included as the allowed list of client IPs for a given database + account. IP addresses/ranges must be comma separated and must + not contain any spaces.' + type: string + isVirtualNetworkFilterEnabled: + description: Enables virtual network filtering for this Cosmos + DB account. + type: boolean + keyVaultKeyId: + description: A versionless Key Vault Key ID for CMK encryption. + Changing this forces a new resource to be created. + type: string + kind: + description: Specifies the Kind of CosmosDB to create - possible + values are GlobalDocumentDB, MongoDB and Parse. Defaults to + GlobalDocumentDB. Changing this forces a new resource to be + created. + type: string + localAuthenticationDisabled: + description: Disable local authentication and ensure only MSI + and AAD can be used exclusively for authentication. Defaults + to false. Can be set only when using the SQL API. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + mongoServerVersion: + description: The Server Version of a MongoDB account. Possible + values are 4.2, 4.0, 3.6, and 3.2. + type: string + networkAclBypassForAzureServices: + description: If Azure services can bypass ACLs. Defaults to false. + type: boolean + networkAclBypassIds: + description: The list of resource Ids for Network Acl Bypass for + this Cosmos DB account. + items: + type: string + type: array + offerType: + description: Specifies the Offer Type to use for this CosmosDB + Account; currently, this can only be set to Standard. + type: string + publicNetworkAccessEnabled: + description: Whether or not public network access is allowed for + this CosmosDB account. Defaults to true. + type: boolean + restore: + description: A restore block as defined below. + items: + properties: + database: + description: A database block as defined below. Changing + this forces a new resource to be created. + items: + properties: + collectionNames: + description: A list of the collection names for the + restore request. Changing this forces a new resource + to be created. + items: + type: string + type: array + name: + description: Specifies the name of the CosmosDB Account. + Changing this forces a new resource to be created. + type: string + type: object + type: array + restoreTimestampInUtc: + description: The creation time of the database or the collection + (Datetime Format RFC 3339). Changing this forces a new + resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + virtualNetworkRule: + description: Specifies a virtual_network_rules resource, used + to define which subnets are allowed to access this CosmosDB + account. + items: + properties: + id: + description: The ID of the virtual network subnet. + type: string + ignoreMissingVnetServiceEndpoint: + description: If set to true, the specified subnet will be + added as a virtual network rule even if its CosmosDB service + endpoint is not active. Defaults to false. + type: boolean + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -748,13 +1047,21 @@ spec: type: object x-kubernetes-validations: - message: consistencyPolicy is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.consistencyPolicy) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.consistencyPolicy) + || has(self.initProvider.consistencyPolicy)' - message: geoLocation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.geoLocation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.geoLocation) + || has(self.initProvider.geoLocation)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: offerType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.offerType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.offerType) + || has(self.initProvider.offerType)' status: description: AccountStatus defines the observed state of Account. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_cassandraclusters.yaml b/package/crds/cosmosdb.azure.upbound.io_cassandraclusters.yaml index ff3a77f6f..132daa195 100644 --- a/package/crds/cosmosdb.azure.upbound.io_cassandraclusters.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_cassandraclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: cassandraclusters.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -201,8 +200,6 @@ spec: that should be configured on this Cassandra Cluster. The only possible value is SystemAssigned. type: string - required: - - type type: object type: array location: @@ -304,21 +301,103 @@ spec: Changing this forces a new Cassandra Cluster to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationMethod: + description: The authentication method that is used to authenticate + clients. Possible values are None and Cassandra. Defaults to + Cassandra. + type: string + clientCertificatePems: + description: A list of TLS certificates that is used to authorize + client connecting to the Cassandra Cluster. + items: + type: string + type: array + externalGossipCertificatePems: + description: A list of TLS certificates that is used to authorize + gossip from unmanaged Cassandra Data Center. + items: + type: string + type: array + externalSeedNodeIpAddresses: + description: A list of IP Addresses of the seed nodes in unmanaged + the Cassandra Data Center which will be added to the seed node + lists of all managed nodes. + items: + type: string + type: array + hoursBetweenBackups: + description: The number of hours to wait between taking a backup + of the Cassandra Cluster. Defaults to 24. + type: number + identity: + description: An identity block as defined below. + items: + properties: + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Cassandra Cluster. The + only possible value is SystemAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the Cassandra Cluster should + exist. Changing this forces a new Cassandra Cluster to be created. + type: string + repairEnabled: + description: Is the automatic repair enabled on the Cassandra + Cluster? Defaults to true. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags assigned to the resource. + type: object + version: + description: The version of Cassandra what the Cluster converges + to run. Possible values are 3.11 and 4.0. Defaults to 3.11. + Changing this forces a new Cassandra Cluster to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -492,9 +571,12 @@ spec: type: object x-kubernetes-validations: - message: defaultAdminPasswordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultAdminPasswordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.defaultAdminPasswordSecretRef)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: CassandraClusterStatus defines the observed state of CassandraCluster. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_cassandradatacenters.yaml b/package/crds/cosmosdb.azure.upbound.io_cassandradatacenters.yaml index f1ac50562..6ade36986 100644 --- a/package/crds/cosmosdb.azure.upbound.io_cassandradatacenters.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_cassandradatacenters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: cassandradatacenters.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -265,21 +264,85 @@ spec: description: Determines the selected sku. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + availabilityZonesEnabled: + description: Determines whether availability zones are enabled. + Defaults to true. + type: boolean + backupStorageCustomerKeyUri: + description: The key URI of the customer key to use for the encryption + of the backup Storage Account. + type: string + base64EncodedYamlFragment: + description: The fragment of the cassandra.yaml configuration + file to be included in the cassandra.yaml for all nodes in this + Cassandra Datacenter. The fragment should be Base64 encoded + and only a subset of keys is allowed. + type: string + diskCount: + description: Determines the number of p30 disks that are attached + to each node. + type: number + diskSku: + description: The Disk SKU that is used for this Cassandra Datacenter. + Defaults to P30. + type: string + location: + description: The Azure Region where the Cassandra Datacenter should + exist. Changing this forces a new Cassandra Datacenter to be + created. + type: string + managedDiskCustomerKeyUri: + description: The key URI of the customer key to use for the encryption + of the Managed Disk. + type: string + nodeCount: + description: The number of nodes the Cassandra Datacenter should + have. The number should be equal or greater than 3. Defaults + to 3. + type: number + skuName: + description: Determines the selected sku. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -453,7 +516,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: CassandraDatacenterStatus defines the observed state of CassandraDatacenter. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_cassandrakeyspaces.yaml b/package/crds/cosmosdb.azure.upbound.io_cassandrakeyspaces.yaml index 9f4f08632..94589bfc6 100644 --- a/package/crds/cosmosdb.azure.upbound.io_cassandrakeyspaces.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_cassandrakeyspaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: cassandrakeyspaces.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -242,21 +241,61 @@ spec: be set in increments of 100. The minimum value is 400. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoscaleSettings: + description: An autoscale_settings block as defined below. + items: + properties: + maxThroughput: + description: The maximum throughput of the Cassandra KeySpace + (RU/s). Must be between 1,000 and 1,000,000. Must be set + in increments of 1,000. Conflicts with throughput. + type: number + type: object + type: array + throughput: + description: The throughput of Cassandra KeySpace (RU/s). Must + be set in increments of 100. The minimum value is 400. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/cosmosdb.azure.upbound.io_cassandratables.yaml b/package/crds/cosmosdb.azure.upbound.io_cassandratables.yaml index d5625abc2..f27f3f356 100644 --- a/package/crds/cosmosdb.azure.upbound.io_cassandratables.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_cassandratables.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: cassandratables.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -182,9 +181,6 @@ spec: description: Order of the key. Currently supported values are Asc and Desc. type: string - required: - - name - - orderBy type: object type: array column: @@ -197,9 +193,6 @@ spec: type: description: Type of the column to be created. type: string - required: - - name - - type type: object type: array partitionKey: @@ -210,13 +203,8 @@ spec: name: description: Name of the column to be created. type: string - required: - - name type: object type: array - required: - - column - - partitionKey type: object type: array throughput: @@ -224,21 +212,112 @@ spec: be set in increments of 100. The minimum value is 400. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + analyticalStorageTtl: + description: Time to live of the Analytical Storage. Possible + values are between -1 and 2147483647 except 0. -1 means the + Analytical Storage never expires. Changing this forces a new + resource to be created. + type: number + autoscaleSettings: + description: An autoscale_settings block as defined below. + items: + properties: + maxThroughput: + description: The maximum throughput of the Cassandra Table + (RU/s). Must be between 1,000 and 1,000,000. Must be set + in increments of 1,000. Conflicts with throughput. + type: number + type: object + type: array + defaultTtl: + description: Time to live of the Cosmos DB Cassandra table. Possible + values are at least -1. -1 means the Cassandra table never expires. + type: number + schema: + description: A schema block as defined below. + items: + properties: + clusterKey: + description: One or more cluster_key blocks as defined below. + items: + properties: + name: + description: Name of the column to be created. + type: string + orderBy: + description: Order of the key. Currently supported + values are Asc and Desc. + type: string + type: object + type: array + column: + description: One or more column blocks as defined below. + items: + properties: + name: + description: Name of the column to be created. + type: string + type: + description: Type of the column to be created. + type: string + type: object + type: array + partitionKey: + description: One or more partition_key blocks as defined + below. + items: + properties: + name: + description: Name of the column to be created. + type: string + type: object + type: array + type: object + type: array + throughput: + description: The throughput of Cassandra KeySpace (RU/s). Must + be set in increments of 100. The minimum value is 400. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -412,7 +491,9 @@ spec: type: object x-kubernetes-validations: - message: schema is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.schema) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.schema) + || has(self.initProvider.schema)' status: description: CassandraTableStatus defines the observed state of CassandraTable. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_gremlindatabases.yaml b/package/crds/cosmosdb.azure.upbound.io_gremlindatabases.yaml index 845723b36..4add0de41 100644 --- a/package/crds/cosmosdb.azure.upbound.io_gremlindatabases.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_gremlindatabases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: gremlindatabases.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -241,21 +240,61 @@ spec: be set in increments of 100. The minimum value is 400. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoscaleSettings: + description: An autoscale_settings block as defined below. + items: + properties: + maxThroughput: + description: The maximum throughput of the Gremlin database + (RU/s). Must be between 1,000 and 1,000,000. Must be set + in increments of 1,000. Conflicts with throughput. + type: number + type: object + type: array + throughput: + description: The throughput of the Gremlin database (RU/s). Must + be set in increments of 100. The minimum value is 400. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/cosmosdb.azure.upbound.io_gremlingraphs.yaml b/package/crds/cosmosdb.azure.upbound.io_gremlingraphs.yaml index 45c74ac19..51dea8c4a 100644 --- a/package/crds/cosmosdb.azure.upbound.io_gremlingraphs.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_gremlingraphs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: gremlingraphs.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -174,8 +173,6 @@ spec: description: 'Indicates the conflict resolution mode. Possible values include: LastWriterWins, Custom.' type: string - required: - - mode type: object type: array databaseName: @@ -289,13 +286,8 @@ spec: Point, and Polygon will be applied to the path. type: string - required: - - order - - path type: object type: array - required: - - index type: object type: array excludedPaths: @@ -325,12 +317,8 @@ spec: spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. type: string - required: - - path type: object type: array - required: - - indexingMode type: object type: array partitionKeyPath: @@ -437,26 +425,174 @@ spec: items: type: string type: array - required: - - paths type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoscaleSettings: + description: An autoscale_settings block as defined below. Requires + partition_key_path to be set. + items: + properties: + maxThroughput: + description: The maximum throughput of the Gremlin graph + (RU/s). Must be between 1,000 and 1,000,000. Must be set + in increments of 1,000. Conflicts with throughput. + type: number + type: object + type: array + conflictResolutionPolicy: + description: A conflict_resolution_policy blocks as defined below. + Changing this forces a new resource to be created. + items: + properties: + conflictResolutionPath: + description: The conflict resolution path in the case of + LastWriterWins mode. + type: string + conflictResolutionProcedure: + description: The procedure to resolve conflicts in the case + of custom mode. + type: string + mode: + description: 'Indicates the conflict resolution mode. Possible + values include: LastWriterWins, Custom.' + type: string + type: object + type: array + defaultTtl: + description: The default time to live (TTL) of the Gremlin graph. + If the value is missing or set to "-1", items don’t expire. + type: number + indexPolicy: + description: The configuration of the indexing policy. One or + more index_policy blocks as defined below. + items: + properties: + automatic: + description: Indicates if the indexing policy is automatic. + Defaults to true. + type: boolean + compositeIndex: + description: One or more composite_index blocks as defined + below. + items: + properties: + index: + description: One or more index blocks as defined below. + items: + properties: + order: + description: Order of the index. Possible values + are Ascending or Descending. + type: string + path: + description: Path for which the indexing behaviour + applies to. According to the service design, + all spatial types including LineString, MultiPolygon, + Point, and Polygon will be applied to the + path. + type: string + type: object + type: array + type: object + type: array + excludedPaths: + description: List of paths to exclude from indexing. Required + if indexing_mode is Consistent or Lazy. + items: + type: string + type: array + includedPaths: + description: List of paths to include in the indexing. Required + if indexing_mode is Consistent or Lazy. + items: + type: string + type: array + indexingMode: + description: 'Indicates the indexing mode. Possible values + include: Consistent, Lazy, None.' + type: string + spatialIndex: + description: One or more spatial_index blocks as defined + below. + items: + properties: + path: + description: Path for which the indexing behaviour + applies to. According to the service design, all + spatial types including LineString, MultiPolygon, + Point, and Polygon will be applied to the path. + type: string + type: object + type: array + type: object + type: array + partitionKeyPath: + description: Define a partition key. Changing this forces a new + resource to be created. + type: string + partitionKeyVersion: + description: Define a partition key version. Changing this forces + a new resource to be created. Possible values are 1and 2. This + should be set to 2 in order to use large partition keys. + type: number + throughput: + description: The throughput of the Gremlin graph (RU/s). Must + be set in increments of 100. The minimum value is 400. + type: number + uniqueKey: + description: One or more unique_key blocks as defined below. Changing + this forces a new resource to be created. + items: + properties: + paths: + description: A list of paths to use for this unique key. + Changing this forces a new resource to be created. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -630,7 +766,9 @@ spec: type: object x-kubernetes-validations: - message: partitionKeyPath is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partitionKeyPath) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.partitionKeyPath) + || has(self.initProvider.partitionKeyPath)' status: description: GremlinGraphStatus defines the observed state of GremlinGraph. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_mongocollections.yaml b/package/crds/cosmosdb.azure.upbound.io_mongocollections.yaml index 921f2914c..a500249ac 100644 --- a/package/crds/cosmosdb.azure.upbound.io_mongocollections.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_mongocollections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mongocollections.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -259,8 +258,6 @@ spec: unique: description: Is the index unique or not? Defaults to false. type: boolean - required: - - keys type: object type: array resourceGroupName: @@ -353,21 +350,92 @@ spec: Must be set in increments of 100. The minimum value is 400. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + analyticalStorageTtl: + description: The default time to live of Analytical Storage for + this Mongo Collection. If present and the value is set to -1, + it is equal to infinity, and items don’t expire by default. + If present and the value is set to some number n – items will + expire n seconds after their last modified time. + type: number + autoscaleSettings: + description: An autoscale_settings block as defined below. + items: + properties: + maxThroughput: + description: The maximum throughput of the MongoDB collection + (RU/s). Must be between 1,000 and 1,000,000. Must be set + in increments of 1,000. Conflicts with throughput. + type: number + type: object + type: array + defaultTtlSeconds: + description: The default Time To Live in seconds. If the value + is -1, items are not automatically expired. + type: number + index: + description: One or more index blocks as defined below. + items: + properties: + keys: + description: Specifies the list of user settable keys for + each Cosmos DB Mongo Collection. + items: + type: string + type: array + unique: + description: Is the index unique or not? Defaults to false. + type: boolean + type: object + type: array + shardKey: + description: The name of the key to partition on for sharding. + There must not be any other unique index keys. Changing this + forces a new resource to be created. + type: string + throughput: + description: The throughput of the MongoDB collection (RU/s). + Must be set in increments of 100. The minimum value is 400. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/cosmosdb.azure.upbound.io_mongodatabases.yaml b/package/crds/cosmosdb.azure.upbound.io_mongodatabases.yaml index cd71f27e1..b5586dadd 100644 --- a/package/crds/cosmosdb.azure.upbound.io_mongodatabases.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_mongodatabases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mongodatabases.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -242,21 +241,61 @@ spec: be set in increments of 100. The minimum value is 400. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoscaleSettings: + description: An autoscale_settings block as defined below. + items: + properties: + maxThroughput: + description: The maximum throughput of the MongoDB database + (RU/s). Must be between 1,000 and 1,000,000. Must be set + in increments of 1,000. Conflicts with throughput. + type: number + type: object + type: array + throughput: + description: The throughput of the MongoDB database (RU/s). Must + be set in increments of 100. The minimum value is 400. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/cosmosdb.azure.upbound.io_sqlcontainers.yaml b/package/crds/cosmosdb.azure.upbound.io_sqlcontainers.yaml index d64d521ae..23d0487df 100644 --- a/package/crds/cosmosdb.azure.upbound.io_sqlcontainers.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_sqlcontainers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqlcontainers.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -181,8 +180,6 @@ spec: description: 'Indicates the conflict resolution mode. Possible values include: LastWriterWins, Custom.' type: string - required: - - mode type: object type: array databaseName: @@ -294,13 +291,8 @@ spec: Point, and Polygon will be applied to the path. type: string - required: - - order - - path type: object type: array - required: - - index type: object type: array excludedPath: @@ -315,8 +307,6 @@ spec: spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. type: string - required: - - path type: object type: array includedPath: @@ -331,8 +321,6 @@ spec: spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. type: string - required: - - path type: object type: array indexingMode: @@ -350,8 +338,6 @@ spec: spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. type: string - required: - - path type: object type: array type: object @@ -460,26 +446,195 @@ spec: items: type: string type: array - required: - - paths type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + analyticalStorageTtl: + description: The default time to live of Analytical Storage for + this SQL container. If present and the value is set to -1, it + is equal to infinity, and items don’t expire by default. If + present and the value is set to some number n – items will expire + n seconds after their last modified time. + type: number + autoscaleSettings: + description: An autoscale_settings block as defined below. Requires + partition_key_path to be set. + items: + properties: + maxThroughput: + description: The maximum throughput of the SQL container + (RU/s). Must be between 1,000 and 1,000,000. Must be set + in increments of 1,000. Conflicts with throughput. + type: number + type: object + type: array + conflictResolutionPolicy: + description: A conflict_resolution_policy blocks as defined below. + Changing this forces a new resource to be created. + items: + properties: + conflictResolutionPath: + description: The conflict resolution path in the case of + LastWriterWins mode. + type: string + conflictResolutionProcedure: + description: The procedure to resolve conflicts in the case + of Custom mode. + type: string + mode: + description: 'Indicates the conflict resolution mode. Possible + values include: LastWriterWins, Custom.' + type: string + type: object + type: array + defaultTtl: + description: The default time to live of SQL container. If missing, + items are not expired automatically. If present and the value + is set to -1, it is equal to infinity, and items don’t expire + by default. If present and the value is set to some number n + – items will expire n seconds after their last modified time. + type: number + indexingPolicy: + description: An indexing_policy block as defined below. + items: + properties: + compositeIndex: + description: One or more composite_index blocks as defined + below. + items: + properties: + index: + description: One or more index blocks as defined below. + items: + properties: + order: + description: Order of the index. Possible values + are Ascending or Descending. + type: string + path: + description: Path for which the indexing behaviour + applies to. According to the service design, + all spatial types including LineString, MultiPolygon, + Point, and Polygon will be applied to the + path. + type: string + type: object + type: array + type: object + type: array + excludedPath: + description: One or more excluded_path blocks as defined + below. Either included_path or excluded_path must contain + the path /* + items: + properties: + path: + description: Path for which the indexing behaviour + applies to. According to the service design, all + spatial types including LineString, MultiPolygon, + Point, and Polygon will be applied to the path. + type: string + type: object + type: array + includedPath: + description: One or more included_path blocks as defined + below. Either included_path or excluded_path must contain + the path /* + items: + properties: + path: + description: Path for which the indexing behaviour + applies to. According to the service design, all + spatial types including LineString, MultiPolygon, + Point, and Polygon will be applied to the path. + type: string + type: object + type: array + indexingMode: + description: 'Indicates the indexing mode. Possible values + include: consistent and none. Defaults to consistent.' + type: string + spatialIndex: + description: One or more spatial_index blocks as defined + below. + items: + properties: + path: + description: Path for which the indexing behaviour + applies to. According to the service design, all + spatial types including LineString, MultiPolygon, + Point, and Polygon will be applied to the path. + type: string + type: object + type: array + type: object + type: array + partitionKeyPath: + description: Define a partition key. Changing this forces a new + resource to be created. + type: string + partitionKeyVersion: + description: Define a partition key version. Changing this forces + a new resource to be created. Possible values are 1and 2. This + should be set to 2 in order to use large partition keys. + type: number + throughput: + description: The throughput of SQL container (RU/s). Must be set + in increments of 100. The minimum value is 400. + type: number + uniqueKey: + description: One or more unique_key blocks as defined below. Changing + this forces a new resource to be created. + items: + properties: + paths: + description: A list of paths to use for this unique key. + Changing this forces a new resource to be created. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -653,7 +808,9 @@ spec: type: object x-kubernetes-validations: - message: partitionKeyPath is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partitionKeyPath) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.partitionKeyPath) + || has(self.initProvider.partitionKeyPath)' status: description: SQLContainerStatus defines the observed state of SQLContainer. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_sqldatabases.yaml b/package/crds/cosmosdb.azure.upbound.io_sqldatabases.yaml index 324cccf23..424dc2481 100644 --- a/package/crds/cosmosdb.azure.upbound.io_sqldatabases.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_sqldatabases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqldatabases.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -244,21 +243,63 @@ spec: capability. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoscaleSettings: + description: An autoscale_settings block as defined below. + items: + properties: + maxThroughput: + description: The maximum throughput of the SQL database + (RU/s). Must be between 1,000 and 1,000,000. Must be set + in increments of 1,000. Conflicts with throughput. + type: number + type: object + type: array + throughput: + description: The throughput of SQL database (RU/s). Must be set + in increments of 100. The minimum value is 400. Do not set when + azurerm_cosmosdb_account is configured with EnableServerless + capability. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/cosmosdb.azure.upbound.io_sqldedicatedgateways.yaml b/package/crds/cosmosdb.azure.upbound.io_sqldedicatedgateways.yaml index 9825d8fde..87927140e 100644 --- a/package/crds/cosmosdb.azure.upbound.io_sqldedicatedgateways.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_sqldedicatedgateways.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqldedicatedgateways.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -155,21 +154,55 @@ spec: Possible values are Cosmos.D4s, Cosmos.D8s and Cosmos.D16s. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + instanceCount: + description: The instance count for the CosmosDB SQL Dedicated + Gateway. Possible value is between 1 and 5. + type: number + instanceSize: + description: The instance size for the CosmosDB SQL Dedicated + Gateway. Changing this forces a new resource to be created. + Possible values are Cosmos.D4s, Cosmos.D8s and Cosmos.D16s. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -343,9 +376,13 @@ spec: type: object x-kubernetes-validations: - message: instanceCount is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.instanceCount) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.instanceCount) + || has(self.initProvider.instanceCount)' - message: instanceSize is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.instanceSize) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.instanceSize) + || has(self.initProvider.instanceSize)' status: description: SQLDedicatedGatewayStatus defines the observed state of SQLDedicatedGateway. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_sqlfunctions.yaml b/package/crds/cosmosdb.azure.upbound.io_sqlfunctions.yaml index 736c46c51..874f2fd41 100644 --- a/package/crds/cosmosdb.azure.upbound.io_sqlfunctions.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_sqlfunctions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqlfunctions.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -150,21 +149,49 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + body: + description: Body of the User Defined Function. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -338,7 +365,9 @@ spec: type: object x-kubernetes-validations: - message: body is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.body) + || has(self.initProvider.body)' status: description: SQLFunctionStatus defines the observed state of SQLFunction. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_sqlroleassignments.yaml b/package/crds/cosmosdb.azure.upbound.io_sqlroleassignments.yaml index 0c986137b..f5b0292f2 100644 --- a/package/crds/cosmosdb.azure.upbound.io_sqlroleassignments.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_sqlroleassignments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqlroleassignments.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -391,21 +390,55 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: The GUID as the name of the Cosmos DB SQL Role Assignment + - one will be generated if not specified. Changing this forces + a new resource to be created. + type: string + principalId: + description: The ID of the Principal (Client) in Azure Active + Directory. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -579,7 +612,9 @@ spec: type: object x-kubernetes-validations: - message: principalId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.principalId) + || has(self.initProvider.principalId)' status: description: SQLRoleAssignmentStatus defines the observed state of SQLRoleAssignment. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_sqlroledefinitions.yaml b/package/crds/cosmosdb.azure.upbound.io_sqlroledefinitions.yaml index 5653b9d69..9ba18493c 100644 --- a/package/crds/cosmosdb.azure.upbound.io_sqlroledefinitions.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_sqlroledefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqlroledefinitions.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -169,8 +168,6 @@ spec: items: type: string type: array - required: - - dataActions type: object type: array resourceGroupName: @@ -264,21 +261,82 @@ spec: Changing this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + assignableScopes: + description: A list of fully qualified scopes at or below which + Role Assignments may be created using this Cosmos DB SQL Role + Definition. It will allow application of this Cosmos DB SQL + Role Definition on the entire Database Account or any underlying + Database/Collection. Scopes higher than Database Account are + not enforceable as assignable scopes. + items: + type: string + type: array + name: + description: An user-friendly name for the Cosmos DB SQL Role + Definition which must be unique for the Database Account. + type: string + permissions: + description: A permissions block as defined below. + items: + properties: + dataActions: + description: A list of data actions that are allowed for + the Cosmos DB SQL Role Definition. + items: + type: string + type: array + type: object + type: array + roleDefinitionId: + description: The GUID as the name of the Cosmos DB SQL Role Definition + - one will be generated if not specified. Changing this forces + a new resource to be created. + type: string + type: + description: The type of the Cosmos DB SQL Role Definition. Possible + values are BuiltInRole and CustomRole. Defaults to CustomRole. + Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -452,11 +510,17 @@ spec: type: object x-kubernetes-validations: - message: assignableScopes is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.assignableScopes) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.assignableScopes) + || has(self.initProvider.assignableScopes)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: permissions is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.permissions) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.permissions) + || has(self.initProvider.permissions)' status: description: SQLRoleDefinitionStatus defines the observed state of SQLRoleDefinition. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_sqlstoredprocedures.yaml b/package/crds/cosmosdb.azure.upbound.io_sqlstoredprocedures.yaml index d6ea07560..8a13e8072 100644 --- a/package/crds/cosmosdb.azure.upbound.io_sqlstoredprocedures.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_sqlstoredprocedures.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqlstoredprocedures.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -386,21 +385,49 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + body: + description: The body of the stored procedure. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -574,7 +601,9 @@ spec: type: object x-kubernetes-validations: - message: body is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.body) + || has(self.initProvider.body)' status: description: SQLStoredProcedureStatus defines the observed state of SQLStoredProcedure. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_sqltriggers.yaml b/package/crds/cosmosdb.azure.upbound.io_sqltriggers.yaml index 5aecca692..d8af214a5 100644 --- a/package/crds/cosmosdb.azure.upbound.io_sqltriggers.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_sqltriggers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqltriggers.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,57 @@ spec: Post. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + body: + description: Body of the Trigger. + type: string + operation: + description: The operation the trigger is associated with. Possible + values are All, Create, Update, Delete and Replace. + type: string + type: + description: Type of the Trigger. Possible values are Pre and + Post. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,11 +381,17 @@ spec: type: object x-kubernetes-validations: - message: body is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.body) + || has(self.initProvider.body)' - message: operation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.operation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.operation) + || has(self.initProvider.operation)' - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' status: description: SQLTriggerStatus defines the observed state of SQLTrigger. properties: diff --git a/package/crds/cosmosdb.azure.upbound.io_tables.yaml b/package/crds/cosmosdb.azure.upbound.io_tables.yaml index 635eb74a3..3516b9eae 100644 --- a/package/crds/cosmosdb.azure.upbound.io_tables.yaml +++ b/package/crds/cosmosdb.azure.upbound.io_tables.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: tables.cosmosdb.azure.upbound.io spec: group: cosmosdb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -241,21 +240,61 @@ spec: of 100. The minimum value is 400. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoscaleSettings: + description: An autoscale_settings block as defined below. + items: + properties: + maxThroughput: + description: The maximum throughput of the Table (RU/s). + Must be between 1,000 and 1,000,000. Must be set in increments + of 1,000. Conflicts with throughput. + type: number + type: object + type: array + throughput: + description: The throughput of Table (RU/s). Must be set in increments + of 100. The minimum value is 400. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/costmanagement.azure.upbound.io_costanomalyalerts.yaml b/package/crds/costmanagement.azure.upbound.io_costanomalyalerts.yaml index cd92d50d7..e68ba499d 100644 --- a/package/crds/costmanagement.azure.upbound.io_costanomalyalerts.yaml +++ b/package/crds/costmanagement.azure.upbound.io_costanomalyalerts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: costanomalyalerts.costmanagement.azure.upbound.io spec: group: costmanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -87,21 +86,64 @@ spec: of the message is 250. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + displayName: + description: The display name which should be used for this Cost + Anomaly Alert. + type: string + emailAddresses: + description: Specifies a list of email addresses which the Anomaly + Alerts are send to. + items: + type: string + type: array + emailSubject: + description: The email subject of the Cost Anomaly Alerts. Maximum + length of the subject is 70. + type: string + message: + description: The message of the Cost Anomaly Alert. Maximum length + of the message is 250. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -275,11 +317,17 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: emailAddresses is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.emailAddresses) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.emailAddresses) + || has(self.initProvider.emailAddresses)' - message: emailSubject is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.emailSubject) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.emailSubject) + || has(self.initProvider.emailSubject)' status: description: CostAnomalyAlertStatus defines the observed state of CostAnomalyAlert. properties: diff --git a/package/crds/costmanagement.azure.upbound.io_resourcegroupcostmanagementexports.yaml b/package/crds/costmanagement.azure.upbound.io_resourcegroupcostmanagementexports.yaml index 7cb2def7d..938fcdbb1 100644 --- a/package/crds/costmanagement.azure.upbound.io_resourcegroupcostmanagementexports.yaml +++ b/package/crds/costmanagement.azure.upbound.io_resourcegroupcostmanagementexports.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: resourcegroupcostmanagementexports.costmanagement.azure.upbound.io spec: group: costmanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -87,9 +86,6 @@ spec: description: The type of the query. Possible values are ActualCost, AmortizedCost and Usage. type: string - required: - - timeFrame - - type type: object type: array exportDataStorageLocation: @@ -184,8 +180,6 @@ spec: be uploaded. Changing this forces a new resource to be created. type: string - required: - - rootFolderPath type: object type: array recurrencePeriodEndDate: @@ -278,21 +272,87 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + active: + description: Is the cost management export active? Default is + true. + type: boolean + exportDataOptions: + description: A export_data_options block as defined below. + items: + properties: + timeFrame: + description: 'The time frame for pulling data for the query. + If custom, then a specific time period must be provided. + Possible values include: WeekToDate, MonthToDate, BillingMonthToDate, + TheLast7Days, TheLastMonth, TheLastBillingMonth, Custom.' + type: string + type: + description: The type of the query. Possible values are + ActualCost, AmortizedCost and Usage. + type: string + type: object + type: array + exportDataStorageLocation: + description: A export_data_storage_location block as defined below. + items: + properties: + rootFolderPath: + description: The path of the directory where exports will + be uploaded. Changing this forces a new resource to be + created. + type: string + type: object + type: array + recurrencePeriodEndDate: + description: The date the export will stop capturing information. + type: string + recurrencePeriodStartDate: + description: The date the export will start capturing information. + type: string + recurrenceType: + description: How often the requested information will be exported. + Valid values include Annually, Daily, Monthly, Weekly. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -466,15 +526,25 @@ spec: type: object x-kubernetes-validations: - message: exportDataOptions is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exportDataOptions) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.exportDataOptions) + || has(self.initProvider.exportDataOptions)' - message: exportDataStorageLocation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exportDataStorageLocation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.exportDataStorageLocation) + || has(self.initProvider.exportDataStorageLocation)' - message: recurrencePeriodEndDate is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrencePeriodEndDate) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.recurrencePeriodEndDate) + || has(self.initProvider.recurrencePeriodEndDate)' - message: recurrencePeriodStartDate is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrencePeriodStartDate) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.recurrencePeriodStartDate) + || has(self.initProvider.recurrencePeriodStartDate)' - message: recurrenceType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrenceType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.recurrenceType) + || has(self.initProvider.recurrenceType)' status: description: ResourceGroupCostManagementExportStatus defines the observed state of ResourceGroupCostManagementExport. diff --git a/package/crds/costmanagement.azure.upbound.io_subscriptioncostmanagementexports.yaml b/package/crds/costmanagement.azure.upbound.io_subscriptioncostmanagementexports.yaml index 8f0e97632..1f60333c8 100644 --- a/package/crds/costmanagement.azure.upbound.io_subscriptioncostmanagementexports.yaml +++ b/package/crds/costmanagement.azure.upbound.io_subscriptioncostmanagementexports.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subscriptioncostmanagementexports.costmanagement.azure.upbound.io spec: group: costmanagement.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -87,9 +86,6 @@ spec: description: The type of the query. Possible values are ActualCost, AmortizedCost and Usage. type: string - required: - - timeFrame - - type type: object type: array exportDataStorageLocation: @@ -184,8 +180,6 @@ spec: be uploaded. Changing this forces a new resource to be created. type: string - required: - - rootFolderPath type: object type: array name: @@ -282,21 +276,91 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + active: + description: Is the cost management export active? Default is + true. + type: boolean + exportDataOptions: + description: A export_data_options block as defined below. + items: + properties: + timeFrame: + description: 'The time frame for pulling data for the query. + If custom, then a specific time period must be provided. + Possible values include: WeekToDate, MonthToDate, BillingMonthToDate, + TheLast7Days, TheLastMonth, TheLastBillingMonth, Custom.' + type: string + type: + description: The type of the query. Possible values are + ActualCost, AmortizedCost and Usage. + type: string + type: object + type: array + exportDataStorageLocation: + description: A export_data_storage_location block as defined below. + items: + properties: + rootFolderPath: + description: The path of the directory where exports will + be uploaded. Changing this forces a new resource to be + created. + type: string + type: object + type: array + name: + description: Specifies the name of the Cost Management Export. + Changing this forces a new resource to be created. + type: string + recurrencePeriodEndDate: + description: The date the export will stop capturing information. + type: string + recurrencePeriodStartDate: + description: The date the export will start capturing information. + type: string + recurrenceType: + description: How often the requested information will be exported. + Valid values include Annually, Daily, Monthly, Weekly. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -470,17 +534,29 @@ spec: type: object x-kubernetes-validations: - message: exportDataOptions is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exportDataOptions) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.exportDataOptions) + || has(self.initProvider.exportDataOptions)' - message: exportDataStorageLocation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.exportDataStorageLocation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.exportDataStorageLocation) + || has(self.initProvider.exportDataStorageLocation)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: recurrencePeriodEndDate is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrencePeriodEndDate) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.recurrencePeriodEndDate) + || has(self.initProvider.recurrencePeriodEndDate)' - message: recurrencePeriodStartDate is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrencePeriodStartDate) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.recurrencePeriodStartDate) + || has(self.initProvider.recurrencePeriodStartDate)' - message: recurrenceType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recurrenceType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.recurrenceType) + || has(self.initProvider.recurrenceType)' status: description: SubscriptionCostManagementExportStatus defines the observed state of SubscriptionCostManagementExport. diff --git a/package/crds/customproviders.azure.upbound.io_customproviders.yaml b/package/crds/customproviders.azure.upbound.io_customproviders.yaml index 06f49be33..804bed552 100644 --- a/package/crds/customproviders.azure.upbound.io_customproviders.yaml +++ b/package/crds/customproviders.azure.upbound.io_customproviders.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: customproviders.customproviders.azure.upbound.io spec: group: customproviders.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -79,9 +78,6 @@ spec: name: description: Specifies the name of the action. type: string - required: - - endpoint - - name type: object type: array location: @@ -184,9 +180,6 @@ spec: resource request. Valid values are Proxy and Proxy,Cache. This value defaults to ResourceTypeRoutingProxy. type: string - required: - - endpoint - - name type: object type: array tags: @@ -203,26 +196,100 @@ spec: description: The endpoint where the validation specification is located. type: string - required: - - specification type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + action: + description: Any number of action block as defined below. One + of resource_type or action must be specified. + items: + properties: + endpoint: + description: Specifies the endpoint of the action. + type: string + name: + description: Specifies the name of the action. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + resourceType: + description: Any number of resource_type block as defined below. + One of resource_type or action must be specified. + items: + properties: + endpoint: + description: Specifies the endpoint of the route definition. + type: string + name: + description: Specifies the name of the route definition. + type: string + routingType: + description: The routing type that is supported for the + resource request. Valid values are Proxy and Proxy,Cache. + This value defaults to ResourceTypeRoutingProxy. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. Changing + this forces a new resource to be created. + type: object + validation: + description: Any number of validation block as defined below. + items: + properties: + specification: + description: The endpoint where the validation specification + is located. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -396,7 +463,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: CustomProviderStatus defines the observed state of CustomProvider. properties: diff --git a/package/crds/databoxedge.azure.upbound.io_devices.yaml b/package/crds/databoxedge.azure.upbound.io_devices.yaml index 64b2b506f..5d711ecd7 100644 --- a/package/crds/databoxedge.azure.upbound.io_devices.yaml +++ b/package/crds/databoxedge.azure.upbound.io_devices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: devices.databoxedge.azure.upbound.io spec: group: databoxedge.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -173,21 +172,70 @@ spec: Databox Edge Device. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Databox Edge Device should + exist. Changing this forces a new Databox Edge Device to be + created. + type: string + skuName: + description: The sku_name is comprised of two segments separated + by a hyphen (e.g. TEA_1Node_UPS_Heater-Standard). The first + segment of the sku_name defines the name of the SKU, possible + values are Gateway, EdgeMR_Mini, EdgeP_Base, EdgeP_High, EdgePR_Base, + EdgePR_Base_UPS, GPU, RCA_Large, RCA_Small, RDC, TCA_Large, + TCA_Small, TDC, TEA_1Node, TEA_1Node_UPS, TEA_1Node_Heater, + TEA_1Node_UPS_Heater, TEA_4Node_Heater, TEA_4Node_UPS_Heater + or TMA. The second segment defines the tier of the sku_name, + possible values are Standard. For more information see the product + documentation. Changing this forces a new Databox Edge Device + to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Databox Edge Device. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -361,9 +409,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: DeviceStatus defines the observed state of Device. properties: diff --git a/package/crds/databricks.azure.upbound.io_accessconnectors.yaml b/package/crds/databricks.azure.upbound.io_accessconnectors.yaml index 6e76cda9c..c656f962c 100644 --- a/package/crds/databricks.azure.upbound.io_accessconnectors.yaml +++ b/package/crds/databricks.azure.upbound.io_accessconnectors.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accessconnectors.databricks.azure.upbound.io spec: group: databricks.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -85,8 +84,6 @@ spec: that should be configured on the Databricks Access Connector. Possible values include SystemAssigned or UserAssigned. type: string - required: - - type type: object type: array location: @@ -180,21 +177,75 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to the Databricks Access Connector. + Only one User Assigned Managed Identity ID is supported + per Databricks Access Connector resource. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on the Databricks Access Connector. + Possible values include SystemAssigned or UserAssigned. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource has to be created. Changing this forces a new resource + to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -368,7 +419,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: AccessConnectorStatus defines the observed state of AccessConnector. properties: diff --git a/package/crds/databricks.azure.upbound.io_workspacecustomermanagedkeys.yaml b/package/crds/databricks.azure.upbound.io_workspacecustomermanagedkeys.yaml index d0959aa9e..d896a2d10 100644 --- a/package/crds/databricks.azure.upbound.io_workspacecustomermanagedkeys.yaml +++ b/package/crds/databricks.azure.upbound.io_workspacecustomermanagedkeys.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: workspacecustomermanagedkeys.databricks.azure.upbound.io spec: group: databricks.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -224,21 +223,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/databricks.azure.upbound.io_workspaces.yaml b/package/crds/databricks.azure.upbound.io_workspaces.yaml index 6285f9f22..e048ec6c5 100644 --- a/package/crds/databricks.azure.upbound.io_workspaces.yaml +++ b/package/crds/databricks.azure.upbound.io_workspaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: workspaces.databricks.azure.upbound.io spec: group: databricks.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -513,21 +512,164 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customParameters: + description: A custom_parameters block as documented below. + items: + properties: + machineLearningWorkspaceId: + description: The ID of a Azure Machine Learning workspace + to link with Databricks workspace. Changing this forces + a new resource to be created. + type: string + natGatewayName: + description: Name of the NAT gateway for Secure Cluster + Connectivity (No Public IP) workspace subnets. Defaults + to nat-gateway. Changing this forces a new resource to + be created. + type: string + noPublicIp: + description: Are public IP Addresses not allowed? Possible + values are true or false. Defaults to false. + type: boolean + privateSubnetNetworkSecurityGroupAssociationId: + description: The resource ID of the azurerm_subnet_network_security_group_association + resource which is referred to by the private_subnet_name + field. This is the same as the ID of the subnet referred + to by the private_subnet_name field. Required if virtual_network_id + is set. + type: string + publicIpName: + description: Name of the Public IP for No Public IP workspace + with managed vNet. Defaults to nat-gw-public-ip. Changing + this forces a new resource to be created. + type: string + publicSubnetNetworkSecurityGroupAssociationId: + description: The resource ID of the azurerm_subnet_network_security_group_association + resource which is referred to by the public_subnet_name + field. This is the same as the ID of the subnet referred + to by the public_subnet_name field. Required if virtual_network_id + is set. + type: string + storageAccountName: + description: Default Databricks File Storage account name. + Defaults to a randomized name(e.g. dbstoragel6mfeghoe5kxu). + Changing this forces a new resource to be created. + type: string + storageAccountSkuName: + description: Storage account SKU name. Possible values include + Standard_LRS, Standard_GRS, Standard_RAGRS, Standard_GZRS, + Standard_RAGZRS, Standard_ZRS, Premium_LRS or Premium_ZRS. + Defaults to Standard_GRS. Changing this forces a new resource + to be created. + type: string + virtualNetworkId: + description: The ID of a Virtual Network where this Databricks + Cluster should be created. Changing this forces a new + resource to be created. + type: string + vnetAddressPrefix: + description: Address prefix for Managed virtual network. + Defaults to 10.139. Changing this forces a new resource + to be created. + type: string + type: object + type: array + customerManagedKeyEnabled: + description: Is the workspace enabled for customer managed key + encryption? If true this enables the Managed Identity for the + managed storage account. Possible values are true or false. + Defaults to false. This field is only valid if the Databricks + Workspace sku is set to premium. + type: boolean + infrastructureEncryptionEnabled: + description: Is the Databricks File System root file system enabled + with a secondary layer of encryption with platform managed keys? + Possible values are true or false. Defaults to false. This field + is only valid if the Databricks Workspace sku is set to premium. + Changing this forces a new resource to be created. + type: boolean + loadBalancerBackendAddressPoolId: + description: Resource ID of the Outbound Load balancer Backend + Address Pool for Secure Cluster Connectivity (No Public IP) + workspace. Changing this forces a new resource to be created. + type: string + location: + description: Specifies the supported Azure location where the + resource has to be created. Changing this forces a new resource + to be created. + type: string + managedDiskCmkKeyVaultKeyId: + description: Customer managed encryption properties for the Databricks + Workspace managed disks. + type: string + managedDiskCmkRotationToLatestVersionEnabled: + description: Whether customer managed keys for disk encryption + will automatically be rotated to the latest version. + type: boolean + managedServicesCmkKeyVaultKeyId: + description: Customer managed encryption properties for the Databricks + Workspace managed resources(e.g. Notebooks and Artifacts). + type: string + networkSecurityGroupRulesRequired: + description: Does the data plane (clusters) to control plane communication + happen over private link endpoint only or publicly? Possible + values AllRules, NoAzureDatabricksRules or NoAzureServiceRules. + Required when public_network_access_enabled is set to false. + type: string + publicNetworkAccessEnabled: + description: Allow public access for accessing workspace. Set + value to false to access workspace only via private link endpoint. + Possible values include true or false. Defaults to true. + type: boolean + sku: + description: The sku to use for the Databricks Workspace. Possible + values are standard, premium, or trial. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -701,9 +843,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: WorkspaceStatus defines the observed state of Workspace. properties: diff --git a/package/crds/datafactory.azure.upbound.io_customdatasets.yaml b/package/crds/datafactory.azure.upbound.io_customdatasets.yaml index 6191b11f1..4789ca6cb 100644 --- a/package/crds/datafactory.azure.upbound.io_customdatasets.yaml +++ b/package/crds/datafactory.azure.upbound.io_customdatasets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: customdatasets.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -279,21 +278,95 @@ spec: Data Factory Dataset. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset. + items: + type: string + type: array + description: + description: The description for the Data Factory Dataset. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + linkedService: + description: A linked_service block as defined below. + items: + properties: + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data + Factory Linked Service. + type: object + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset. + type: object + schemaJson: + description: A JSON object that contains the schema of the Data + Factory Dataset. + type: string + type: + description: The type of dataset that will be associated with + Data Factory. Changing this forces a new resource to be created. + type: string + typePropertiesJson: + description: A JSON object that contains the properties of the + Data Factory Dataset. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -467,11 +540,17 @@ spec: type: object x-kubernetes-validations: - message: linkedService is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.linkedService) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.linkedService) + || has(self.initProvider.linkedService)' - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' - message: typePropertiesJson is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.typePropertiesJson) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.typePropertiesJson) + || has(self.initProvider.typePropertiesJson)' status: description: CustomDataSetStatus defines the observed state of CustomDataSet. properties: diff --git a/package/crds/datafactory.azure.upbound.io_dataflows.yaml b/package/crds/datafactory.azure.upbound.io_dataflows.yaml index c312c83af..ed8854703 100644 --- a/package/crds/datafactory.azure.upbound.io_dataflows.yaml +++ b/package/crds/datafactory.azure.upbound.io_dataflows.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dataflows.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -287,8 +286,6 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array linkedService: @@ -304,8 +301,6 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array name: @@ -325,8 +320,6 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array schemaLinkedService: @@ -342,12 +335,8 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array - required: - - name type: object type: array source: @@ -469,8 +458,6 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array linkedService: @@ -486,8 +473,6 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array name: @@ -507,8 +492,6 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array schemaLinkedService: @@ -524,12 +507,8 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array - required: - - name type: object type: array transformation: @@ -549,8 +528,6 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array description: @@ -573,8 +550,6 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array linkedService: @@ -590,33 +565,314 @@ spec: description: A map of parameters to associate with the Data Factory Linked Service. type: object - required: - - name type: object type: array name: description: The name for the Data Flow transformation. type: string - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + annotations: + description: List of tags that can be used for describing the + Data Factory Data Flow. + items: + type: string + type: array + description: + description: The description for the Data Factory Data Flow. + type: string + folder: + description: The folder that this Data Flow is in. If not specified, + the Data Flow will appear at the root level. + type: string + script: + description: The script for the Data Factory Data Flow. + type: string + scriptLines: + description: The script lines for the Data Factory Data Flow. + items: + type: string + type: array + sink: + description: One or more sink blocks as defined below. + items: + properties: + dataset: + description: A dataset block as defined below. + items: + properties: + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + description: + description: The description for the Data Flow Source. + type: string + flowlet: + description: A flowlet block as defined below. + items: + properties: + datasetParameters: + description: Specifies the reference data flow parameters + from dataset. + type: string + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + linkedService: + description: A linked_service block as defined below. + items: + properties: + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + name: + description: The name for the Data Flow Source. + type: string + rejectedLinkedService: + description: A rejected_linked_service block as defined + below. + items: + properties: + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + schemaLinkedService: + description: A schema_linked_service block as defined below. + items: + properties: + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + type: object + type: array + source: + description: One or more source blocks as defined below. + items: + properties: + dataset: + description: A dataset block as defined below. + items: + properties: + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + description: + description: The description for the Data Flow Source. + type: string + flowlet: + description: A flowlet block as defined below. + items: + properties: + datasetParameters: + description: Specifies the reference data flow parameters + from dataset. + type: string + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + linkedService: + description: A linked_service block as defined below. + items: + properties: + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + name: + description: The name for the Data Flow Source. + type: string + rejectedLinkedService: + description: A rejected_linked_service block as defined + below. + items: + properties: + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + schemaLinkedService: + description: A schema_linked_service block as defined below. + items: + properties: + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + type: object + type: array + transformation: + description: One or more transformation blocks as defined below. + items: + properties: + dataset: + description: A dataset block as defined below. + items: + properties: + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + description: + description: The description for the Data Flow transformation. + type: string + flowlet: + description: A flowlet block as defined below. + items: + properties: + datasetParameters: + description: Specifies the reference data flow parameters + from dataset. + type: string + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + linkedService: + description: A linked_service block as defined below. + items: + properties: + name: + description: The name for the Data Flow transformation. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with + the Data Factory Linked Service. + type: object + type: object + type: array + name: + description: The name for the Data Flow transformation. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -790,9 +1046,13 @@ spec: type: object x-kubernetes-validations: - message: sink is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sink) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sink) + || has(self.initProvider.sink)' - message: source is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.source) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.source) + || has(self.initProvider.source)' status: description: DataFlowStatus defines the observed state of DataFlow. properties: diff --git a/package/crds/datafactory.azure.upbound.io_datasetazureblobs.yaml b/package/crds/datafactory.azure.upbound.io_datasetazureblobs.yaml index 5d8eca496..e3fcf62a5 100644 --- a/package/crds/datafactory.azure.upbound.io_datasetazureblobs.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasetazureblobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetazureblobs.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -281,26 +280,106 @@ spec: Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. type: string - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset. + items: + type: string + type: array + description: + description: The description for the Data Factory Dataset. + type: string + dynamicFilenameEnabled: + description: Is the filename using dynamic expression, function + or system variables? Defaults to false. + type: boolean + dynamicPathEnabled: + description: Is the path using dynamic expression, function or + system variables? Defaults to false. + type: boolean + filename: + description: The filename of the Azure Blob. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset. + type: object + path: + description: The path of the Azure Blob. + type: string + schemaColumn: + description: A schema_column block as defined below. + items: + properties: + description: + description: The description of the column. + type: string + name: + description: The name of the column. + type: string + type: + description: Type of the column. Valid values are Byte, + Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, + Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. + Please note these values are case sensitive. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_datasetbinaries.yaml b/package/crds/datafactory.azure.upbound.io_datasetbinaries.yaml index 4b12a000d..f8d36e9b0 100644 --- a/package/crds/datafactory.azure.upbound.io_datasetbinaries.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasetbinaries.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetbinaries.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -106,8 +105,6 @@ spec: path: description: The folder path to the file in the blob container. type: string - required: - - container type: object type: array compression: @@ -123,8 +120,6 @@ spec: Possible values are BZip2, Deflate, GZip, Tar, TarGZip and ZipDeflate. type: string - required: - - type type: object type: array dataFactoryId: @@ -235,10 +230,6 @@ spec: description: The base URL to the web server hosting the file. type: string - required: - - filename - - path - - relativeUrl type: object type: array linkedServiceName: @@ -344,27 +335,161 @@ spec: path: description: The folder path to the file on the SFTP server. type: string - required: - - filename - - path type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Binary Dataset. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Binary Dataset. + items: + type: string + type: array + azureBlobStorageLocation: + description: A azure_blob_storage_location block as defined below. + items: + properties: + container: + description: The container on the Azure Blob Storage Account + hosting the file. + type: string + dynamicContainerEnabled: + description: Is the container using dynamic expression, + function or system variables? Defaults to false. + type: boolean + dynamicFilenameEnabled: + description: Is the filename using dynamic expression, function + or system variables? Defaults to false. + type: boolean + dynamicPathEnabled: + description: Is the path using dynamic expression, function + or system variables? Defaults to false. + type: boolean + filename: + description: The filename of the file in the blob container. + type: string + path: + description: The folder path to the file in the blob container. + type: string + type: object + type: array + compression: + description: A compression block as defined below. + items: + properties: + level: + description: The level of compression. Possible values are + Fastest and Optimal. + type: string + type: + description: The type of compression used during transport. + Possible values are BZip2, Deflate, GZip, Tar, TarGZip + and ZipDeflate. + type: string + type: object + type: array + description: + description: The description for the Data Factory Dataset. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + httpServerLocation: + description: A http_server_location block as defined below. + items: + properties: + dynamicFilenameEnabled: + description: Is the filename using dynamic expression, function + or system variables? Defaults to false. + type: boolean + dynamicPathEnabled: + description: Is the path using dynamic expression, function + or system variables? Defaults to false. + type: boolean + filename: + description: The filename of the file on the web server. + type: string + path: + description: The folder path to the file on the web server. + type: string + relativeUrl: + description: The base URL to the web server hosting the + file. + type: string + type: object + type: array + parameters: + additionalProperties: + type: string + description: Specifies a list of parameters to associate with + the Data Factory Binary Dataset. + type: object + sftpServerLocation: + description: A sftp_server_location block as defined below. + items: + properties: + dynamicFilenameEnabled: + description: Is the filename using dynamic expression, function + or system variables? Defaults to false. + type: boolean + dynamicPathEnabled: + description: Is the path using dynamic expression, function + or system variables? Defaults to false. + type: boolean + filename: + description: The filename of the file on the SFTP server. + type: string + path: + description: The folder path to the file on the SFTP server. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_datasetcosmosdbsqlapis.yaml b/package/crds/datafactory.azure.upbound.io_datasetcosmosdbsqlapis.yaml index 3155880f5..2b2f9f9a9 100644 --- a/package/crds/datafactory.azure.upbound.io_datasetcosmosdbsqlapis.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasetcosmosdbsqlapis.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetcosmosdbsqlapis.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -271,26 +270,96 @@ spec: Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. type: string - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset. + items: + type: string + type: array + collectionName: + description: The collection name of the Data Factory Dataset Azure + Cosmos DB SQL API. + type: string + description: + description: The description for the Data Factory Dataset. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset. + type: object + schemaColumn: + description: A schema_column block as defined below. + items: + properties: + description: + description: The description of the column. + type: string + name: + description: The name of the column. + type: string + type: + description: Type of the column. Valid values are Byte, + Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, + Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. + Please note these values are case sensitive. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_datasetdelimitedtexts.yaml b/package/crds/datafactory.azure.upbound.io_datasetdelimitedtexts.yaml index 6e68d8584..8eb82b520 100644 --- a/package/crds/datafactory.azure.upbound.io_datasetdelimitedtexts.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasetdelimitedtexts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetdelimitedtexts.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -94,8 +93,6 @@ spec: path: description: The folder path to the file. type: string - required: - - fileSystem type: object type: array azureBlobStorageLocation: @@ -125,8 +122,6 @@ spec: description: The folder path to the file. This can be an empty string. type: string - required: - - container type: object type: array columnDelimiter: @@ -261,10 +256,6 @@ spec: description: The base URL to the web server hosting the file. type: string - required: - - filename - - path - - relativeUrl type: object type: array linkedServiceName: @@ -380,26 +371,197 @@ spec: Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. type: string - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset. + items: + type: string + type: array + azureBlobFsLocation: + description: An azure_blob_fs_location block as defined below. + items: + properties: + fileSystem: + description: The storage data lake gen2 file system on the + Azure Blob Storage Account hosting the file. + type: string + filename: + description: The filename of the file. + type: string + path: + description: The folder path to the file. + type: string + type: object + type: array + azureBlobStorageLocation: + description: An azure_blob_storage_location block as defined below. + items: + properties: + container: + description: The container on the Azure Blob Storage Account + hosting the file. + type: string + dynamicContainerEnabled: + description: Is the container using dynamic expression, + function or system variables? Defaults to false. + type: boolean + dynamicFilenameEnabled: + description: Is the filename using dynamic expression, function + or system variables? Defaults to false. + type: boolean + dynamicPathEnabled: + description: Is the path using dynamic expression, function + or system variables? Defaults to false. + type: boolean + filename: + description: The filename of the file. + type: string + path: + description: The folder path to the file. This can be an + empty string. + type: string + type: object + type: array + columnDelimiter: + description: The column delimiter. Defaults to ,. + type: string + compressionCodec: + description: The compression codec used to read/write text files. + Valid values are None, bzip2, gzip, deflate, ZipDeflate, TarGzip, + Tar, snappy and lz4. Please note these values are case sensitive. + type: string + compressionLevel: + description: The compression ratio for the Data Factory Dataset. + Valid values are Fastest or Optimal. Please note these values + are case sensitive. + type: string + description: + description: The description for the Data Factory Dataset. + type: string + encoding: + description: The encoding format for the file. + type: string + escapeCharacter: + description: The escape character. Defaults to \. + type: string + firstRowAsHeader: + description: When used as input, treat the first row of data as + headers. When used as output, write the headers into the output + as the first row of data. Defaults to false. + type: boolean + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + httpServerLocation: + description: A http_server_location block as defined below. + items: + properties: + dynamicFilenameEnabled: + description: Is the filename using dynamic expression, function + or system variables? Defaults to false. + type: boolean + dynamicPathEnabled: + description: Is the path using dynamic expression, function + or system variables? Defaults to false. + type: boolean + filename: + description: The filename of the file on the web server. + type: string + path: + description: The folder path to the file on the web server. + type: string + relativeUrl: + description: The base URL to the web server hosting the + file. + type: string + type: object + type: array + nullValue: + description: The null value string. Defaults to an empty string. + Defaults to "". + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset. + type: object + quoteCharacter: + description: The quote character. Defaults to ". + type: string + rowDelimiter: + description: 'The row delimiter. Defaults to any of the following + values on read: \r\n, \r, \n, and \n or \r\n on write by mapping + data flow and Copy activity respectively.' + type: string + schemaColumn: + description: A schema_column block as defined below. + items: + properties: + description: + description: The description of the column. + type: string + name: + description: The name of the column. + type: string + type: + description: Type of the column. Valid values are Byte, + Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, + Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. + Please note these values are case sensitive. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_datasethttps.yaml b/package/crds/datafactory.azure.upbound.io_datasethttps.yaml index 219401946..be25ddc3a 100644 --- a/package/crds/datafactory.azure.upbound.io_datasethttps.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasethttps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasethttps.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -278,26 +277,103 @@ spec: Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. type: string - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset. + items: + type: string + type: array + description: + description: The description for the Data Factory Dataset. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset. + type: object + relativeUrl: + description: The relative URL based on the URL in the HTTP Linked + Service. + type: string + requestBody: + description: The body for the HTTP request. + type: string + requestMethod: + description: The HTTP method for the HTTP request. (e.g. GET, + POST) + type: string + schemaColumn: + description: A schema_column block as defined below. + items: + properties: + description: + description: The description of the column. + type: string + name: + description: The name of the column. + type: string + type: + description: Type of the column. Valid values are Byte, + Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, + Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. + Please note these values are case sensitive. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_datasetjsons.yaml b/package/crds/datafactory.azure.upbound.io_datasetjsons.yaml index 273c2e217..23c4b33c8 100644 --- a/package/crds/datafactory.azure.upbound.io_datasetjsons.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasetjsons.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetjsons.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -106,10 +105,6 @@ spec: path: description: The folder path to the file on the web server. type: string - required: - - container - - filename - - path type: object type: array dataFactoryId: @@ -223,10 +218,6 @@ spec: description: The base URL to the web server hosting the file. type: string - required: - - filename - - path - - relativeUrl type: object type: array linkedServiceName: @@ -330,26 +321,147 @@ spec: Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. type: string - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset. + items: + type: string + type: array + azureBlobStorageLocation: + description: A azure_blob_storage_location block as defined below. + items: + properties: + container: + description: The container on the Azure Blob Storage Account + hosting the file. + type: string + dynamicContainerEnabled: + description: Is the container using dynamic expression, + function or system variables? Defaults to false. + type: boolean + dynamicFilenameEnabled: + description: Is the filename using dynamic expression, function + or system variables? Defaults to false. + type: boolean + dynamicPathEnabled: + description: Is the path using dynamic expression, function + or system variables? Defaults to false. + type: boolean + filename: + description: The filename of the file on the web server. + type: string + path: + description: The folder path to the file on the web server. + type: string + type: object + type: array + description: + description: The description for the Data Factory Dataset. + type: string + encoding: + description: The encoding format for the file. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + httpServerLocation: + description: A http_server_location block as defined below. + items: + properties: + dynamicFilenameEnabled: + description: Is the filename using dynamic expression, function + or system variables? Defaults to false. + type: boolean + dynamicPathEnabled: + description: Is the path using dynamic expression, function + or system variables? Defaults to false. + type: boolean + filename: + description: The filename of the file on the web server. + type: string + path: + description: The folder path to the file on the web server. + type: string + relativeUrl: + description: The base URL to the web server hosting the + file. + type: string + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset. + type: object + schemaColumn: + description: A schema_column block as defined below. + items: + properties: + description: + description: The description of the column. + type: string + name: + description: The name of the column. + type: string + type: + description: Type of the column. Valid values are Byte, + Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, + Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. + Please note these values are case sensitive. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_datasetmysqls.yaml b/package/crds/datafactory.azure.upbound.io_datasetmysqls.yaml index 57f6b48c0..26d44cf91 100644 --- a/package/crds/datafactory.azure.upbound.io_datasetmysqls.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasetmysqls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetmysqls.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -267,29 +266,98 @@ spec: Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. type: string - required: - - name type: object type: array tableName: description: The table name of the Data Factory Dataset MySQL. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset MySQL. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset MySQL. + items: + type: string + type: array + description: + description: The description for the Data Factory Dataset MySQL. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset MySQL. + type: object + schemaColumn: + description: A schema_column block as defined below. + items: + properties: + description: + description: The description of the column. + type: string + name: + description: The name of the column. + type: string + type: + description: Type of the column. Valid values are Byte, + Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, + Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. + Please note these values are case sensitive. + type: string + type: object + type: array + tableName: + description: The table name of the Data Factory Dataset MySQL. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_datasetparquets.yaml b/package/crds/datafactory.azure.upbound.io_datasetparquets.yaml index 6397a4276..4cf363e1f 100644 --- a/package/crds/datafactory.azure.upbound.io_datasetparquets.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasetparquets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetparquets.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -106,8 +105,6 @@ spec: path: description: The folder path to the file on the web server. type: string - required: - - container type: object type: array compressionCodec: @@ -227,9 +224,6 @@ spec: description: The base URL to the web server hosting the file. type: string - required: - - filename - - relativeUrl type: object type: array linkedServiceName: @@ -333,26 +327,153 @@ spec: Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. type: string - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset. + items: + type: string + type: array + azureBlobStorageLocation: + description: A azure_blob_storage_location block as defined below. + items: + properties: + container: + description: The container on the Azure Blob Storage Account + hosting the file. + type: string + dynamicContainerEnabled: + description: Is the container using dynamic expression, + function or system variables? Defaults to false. + type: boolean + dynamicFilenameEnabled: + description: Is the filename using dynamic expression, function + or system variables? Defaults to false. + type: boolean + dynamicPathEnabled: + description: Is the path using dynamic expression, function + or system variables? Defaults to false. + type: boolean + filename: + description: The filename of the file on the web server. + type: string + path: + description: The folder path to the file on the web server. + type: string + type: object + type: array + compressionCodec: + description: The compression codec used to read/write text files. + Valid values are bzip2, gzip, deflate, ZipDeflate, TarGzip, + Tar, snappy, or lz4. Please note these values are case-sensitive. + type: string + compressionLevel: + description: Specifies the compression level. Possible values + are Optimal and Fastest, + type: string + description: + description: The description for the Data Factory Dataset. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + httpServerLocation: + description: A http_server_location block as defined below. + items: + properties: + dynamicFilenameEnabled: + description: Is the filename using dynamic expression, function + or system variables? Defaults to false. + type: boolean + dynamicPathEnabled: + description: Is the path using dynamic expression, function + or system variables? Defaults to false. + type: boolean + filename: + description: The filename of the file on the web server. + type: string + path: + description: The folder path to the file on the web server. + type: string + relativeUrl: + description: The base URL to the web server hosting the + file. + type: string + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset. + type: object + schemaColumn: + description: A schema_column block as defined below. + items: + properties: + description: + description: The description of the column. + type: string + name: + description: The name of the column. + type: string + type: + description: Type of the column. Valid values are Byte, + Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, + Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. + Please note these values are case sensitive. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_datasetpostgresqls.yaml b/package/crds/datafactory.azure.upbound.io_datasetpostgresqls.yaml index e8ecba610..352230c00 100644 --- a/package/crds/datafactory.azure.upbound.io_datasetpostgresqls.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasetpostgresqls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetpostgresqls.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -267,29 +266,98 @@ spec: Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. type: string - required: - - name type: object type: array tableName: description: The table name of the Data Factory Dataset PostgreSQL. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset PostgreSQL. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset PostgreSQL. + items: + type: string + type: array + description: + description: The description for the Data Factory Dataset PostgreSQL. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset PostgreSQL. + type: object + schemaColumn: + description: A schema_column block as defined below. + items: + properties: + description: + description: The description of the column. + type: string + name: + description: The name of the column. + type: string + type: + description: Type of the column. Valid values are Byte, + Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, + Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. + Please note these values are case sensitive. + type: string + type: object + type: array + tableName: + description: The table name of the Data Factory Dataset PostgreSQL. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_datasetsnowflakes.yaml b/package/crds/datafactory.azure.upbound.io_datasetsnowflakes.yaml index 274122990..19e9fddb3 100644 --- a/package/crds/datafactory.azure.upbound.io_datasetsnowflakes.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasetsnowflakes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetsnowflakes.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -274,8 +273,6 @@ spec: TIMESTAMP_TZ, VARIANT, OBJECT, ARRAY, GEOGRAPHY. Please note these values are case sensitive. type: string - required: - - name type: object type: array schemaName: @@ -285,21 +282,102 @@ spec: description: The table name of the Data Factory Dataset Snowflake. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset Snowflake. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset Snowflake. + items: + type: string + type: array + description: + description: The description for the Data Factory Dataset Snowflake. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset Snowflake. + type: object + schemaColumn: + description: A schema_column block as defined below. + items: + properties: + name: + description: The name of the column. + type: string + precision: + description: The total number of digits allowed. + type: number + scale: + description: The number of digits allowed to the right of + the decimal point. + type: number + type: + description: Type of the column. Valid values are NUMBER, + DECIMAL, NUMERIC, INT, INTEGER, BIGINT, SMALLINT, FLOAT“FLOAT4, + FLOAT8, DOUBLE, DOUBLE PRECISION, REAL, VARCHAR, CHAR, + CHARACTER, STRING, TEXT, BINARY, VARBINARY, BOOLEAN, DATE, + DATETIME, TIME, TIMESTAMP, TIMESTAMP_LTZ, TIMESTAMP_NTZ, + TIMESTAMP_TZ, VARIANT, OBJECT, ARRAY, GEOGRAPHY. Please + note these values are case sensitive. + type: string + type: object + type: array + schemaName: + description: The schema name of the Data Factory Dataset Snowflake. + type: string + tableName: + description: The table name of the Data Factory Dataset Snowflake. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_datasetsqlservertables.yaml b/package/crds/datafactory.azure.upbound.io_datasetsqlservertables.yaml index 937324a77..9ef4e3abc 100644 --- a/package/crds/datafactory.azure.upbound.io_datasetsqlservertables.yaml +++ b/package/crds/datafactory.azure.upbound.io_datasetsqlservertables.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetsqlservertables.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -268,8 +267,6 @@ spec: Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. type: string - required: - - name type: object type: array tableName: @@ -277,21 +274,94 @@ spec: Table. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Dataset SQL Server Table. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Dataset SQL Server Table. + items: + type: string + type: array + description: + description: The description for the Data Factory Dataset SQL + Server Table. + type: string + folder: + description: The folder that this Dataset is in. If not specified, + the Dataset will appear at the root level. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Dataset SQL Server Table. + type: object + schemaColumn: + description: A schema_column block as defined below. + items: + properties: + description: + description: The description of the column. + type: string + name: + description: The name of the column. + type: string + type: + description: Type of the column. Valid values are Byte, + Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, + Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. + Please note these values are case sensitive. + type: string + type: object + type: array + tableName: + description: The table name of the Data Factory Dataset SQL Server + Table. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_factories.yaml b/package/crds/datafactory.azure.upbound.io_factories.yaml index 70197e6d4..7bdf3021d 100644 --- a/package/crds/datafactory.azure.upbound.io_factories.yaml +++ b/package/crds/datafactory.azure.upbound.io_factories.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: factories.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -101,12 +100,6 @@ spec: description: Specifies the root folder within the repository. Set to / for the top level. type: string - required: - - accountName - - branchName - - gitUrl - - repositoryName - - rootFolder type: object type: array globalParameter: @@ -123,10 +116,6 @@ spec: value: description: Specifies the global parameter value. type: string - required: - - name - - type - - value type: object type: array identity: @@ -145,8 +134,6 @@ spec: values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array location: @@ -274,31 +261,165 @@ spec: description: Specifies the Tenant ID associated with the VSTS account. type: string - required: - - accountName - - branchName - - projectName - - repositoryName - - rootFolder - - tenantId type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customerManagedKeyId: + description: Specifies the Azure Key Vault Key ID to be used as + the Customer Managed Key (CMK) for double encryption. Required + with user assigned identity. + type: string + customerManagedKeyIdentityId: + description: Specifies the ID of the user assigned identity associated + with the Customer Managed Key. Must be supplied if customer_managed_key_id + is set. + type: string + githubConfiguration: + description: A github_configuration block as defined below. + items: + properties: + accountName: + description: Specifies the GitHub account name. + type: string + branchName: + description: Specifies the branch of the repository to get + code from. + type: string + gitUrl: + description: 'Specifies the GitHub Enterprise host name. + For example: https://github.mydomain.com. Use https://github.com + for open source repositories.' + type: string + repositoryName: + description: Specifies the name of the git repository. + type: string + rootFolder: + description: Specifies the root folder within the repository. + Set to / for the top level. + type: string + type: object + type: array + globalParameter: + description: A list of global_parameter blocks as defined above. + items: + properties: + name: + description: Specifies the global parameter name. + type: string + type: + description: Specifies the global parameter type. Possible + Values are Array, Bool, Float, Int, Object or String. + type: string + value: + description: Specifies the global parameter value. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Data Factory. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Data Factory. Possible + values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + managedVirtualNetworkEnabled: + description: Is Managed Virtual Network enabled? + type: boolean + publicNetworkEnabled: + description: Is the Data Factory visible to the public network? + Defaults to true. + type: boolean + purviewId: + description: Specifies the ID of the purview account resource + associated with the Data Factory. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + vstsConfiguration: + description: A vsts_configuration block as defined below. + items: + properties: + accountName: + description: Specifies the VSTS account name. + type: string + branchName: + description: Specifies the branch of the repository to get + code from. + type: string + projectName: + description: Specifies the name of the VSTS project. + type: string + repositoryName: + description: Specifies the name of the git repository. + type: string + rootFolder: + description: Specifies the root folder within the repository. + Set to / for the top level. + type: string + tenantId: + description: Specifies the Tenant ID associated with the + VSTS account. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -472,7 +593,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: FactoryStatus defines the observed state of Factory. properties: diff --git a/package/crds/datafactory.azure.upbound.io_integrationruntimeazures.yaml b/package/crds/datafactory.azure.upbound.io_integrationruntimeazures.yaml index d2456bc22..e9c66f414 100644 --- a/package/crds/datafactory.azure.upbound.io_integrationruntimeazures.yaml +++ b/package/crds/datafactory.azure.upbound.io_integrationruntimeazures.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: integrationruntimeazures.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -181,21 +180,78 @@ spec: to be created. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + cleanupEnabled: + description: Cluster will not be recycled and it will be used + in next data flow activity run until TTL (time to live) is reached + if this is set as false. Default is true. + type: boolean + computeType: + description: Compute type of the cluster which will execute data + flow job. Valid values are General, ComputeOptimized and MemoryOptimized. + Defaults to General. + type: string + coreCount: + description: Core count of the cluster which will execute data + flow job. Valid values are 8, 16, 32, 48, 80, 144 and 272. Defaults + to 8. + type: number + description: + description: Integration runtime description. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Use AutoResolve to create an auto-resolve integration + runtime. Changing this forces a new resource to be created. + type: string + timeToLiveMin: + description: Time to live (in minutes) setting of the cluster + which will execute data flow job. Defaults to 0. + type: number + virtualNetworkEnabled: + description: Is Integration Runtime compute provisioned within + Managed Virtual Network? Changing this forces a new resource + to be created. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -369,7 +425,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: IntegrationRuntimeAzureStatus defines the observed state of IntegrationRuntimeAzure. diff --git a/package/crds/datafactory.azure.upbound.io_integrationruntimeazuressis.yaml b/package/crds/datafactory.azure.upbound.io_integrationruntimeazuressises.yaml similarity index 79% rename from package/crds/datafactory.azure.upbound.io_integrationruntimeazuressis.yaml rename to package/crds/datafactory.azure.upbound.io_integrationruntimeazuressises.yaml index e03158498..0f2065cd7 100644 --- a/package/crds/datafactory.azure.upbound.io_integrationruntimeazuressis.yaml +++ b/package/crds/datafactory.azure.upbound.io_integrationruntimeazuressises.yaml @@ -3,9 +3,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null - name: integrationruntimeazuressis.datafactory.azure.upbound.io + controller-gen.kubebuilder.io/version: v0.12.1 + name: integrationruntimeazuressises.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io names: @@ -15,7 +14,7 @@ spec: - azure kind: IntegrationRuntimeAzureSSIS listKind: IntegrationRuntimeAzureSSISList - plural: integrationruntimeazuressis + plural: integrationruntimeazuressises singular: integrationruntimeazuressis scope: Cluster versions: @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -124,8 +123,6 @@ spec: description: The endpoint of an Azure SQL Server that will be used to host the SSIS catalog. type: string - required: - - serverEndpoint type: object type: array customSetupScript: @@ -158,7 +155,6 @@ spec: - namespace type: object required: - - blobContainerUri - sasTokenSecretRef type: object type: array @@ -279,9 +275,6 @@ spec: description: Specifies the secret version in Azure Key Vault. type: string - required: - - linkedServiceName - - secretName type: object type: array passwordSecretRef: @@ -307,9 +300,6 @@ spec: userName: description: The username for the target device. type: string - required: - - targetName - - userName type: object type: array component: @@ -339,9 +329,6 @@ spec: description: Specifies the secret version in Azure Key Vault. type: string - required: - - linkedServiceName - - secretName type: object type: array licenseSecretRef: @@ -364,8 +351,6 @@ spec: name: description: Name of the package store. type: string - required: - - name type: object type: array environment: @@ -503,9 +488,6 @@ spec: name: description: Name of the package store. type: string - required: - - linkedServiceName - - name type: object type: array proxy: @@ -526,9 +508,6 @@ spec: reference the staging data store to be used when moving data between self-hosted and Azure-SSIS integration runtimes. type: string - required: - - selfHostedIntegrationRuntimeName - - stagingStorageLinkedServiceName type: object type: array vnetIntegration: @@ -712,21 +691,270 @@ spec: type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + catalogInfo: + description: A catalog_info block as defined below. + items: + properties: + administratorLogin: + description: Administrator login name for the SQL Server. + type: string + dualStandbyPairName: + description: The dual standby Azure-SSIS Integration Runtime + pair with SSISDB failover. + type: string + elasticPoolName: + description: The name of SQL elastic pool where the database + will be created for the SSIS catalog. Mutually exclusive + with pricing_tier. + type: string + pricingTier: + description: 'Pricing tier for the database that will be + created for the SSIS catalog. Valid values are: Basic, + S0, S1, S2, S3, S4, S6, S7, S9, S12, P1, P2, P4, P6, P11, + P15, GP_S_Gen5_1, GP_S_Gen5_2, GP_S_Gen5_4, GP_S_Gen5_6, + GP_S_Gen5_8, GP_S_Gen5_10, GP_S_Gen5_12, GP_S_Gen5_14, + GP_S_Gen5_16, GP_S_Gen5_18, GP_S_Gen5_20, GP_S_Gen5_24, + GP_S_Gen5_32, GP_S_Gen5_40, GP_Gen5_2, GP_Gen5_4, GP_Gen5_6, + GP_Gen5_8, GP_Gen5_10, GP_Gen5_12, GP_Gen5_14, GP_Gen5_16, + GP_Gen5_18, GP_Gen5_20, GP_Gen5_24, GP_Gen5_32, GP_Gen5_40, + GP_Gen5_80, BC_Gen5_2, BC_Gen5_4, BC_Gen5_6, BC_Gen5_8, + BC_Gen5_10, BC_Gen5_12, BC_Gen5_14, BC_Gen5_16, BC_Gen5_18, + BC_Gen5_20, BC_Gen5_24, BC_Gen5_32, BC_Gen5_40, BC_Gen5_80, + HS_Gen5_2, HS_Gen5_4, HS_Gen5_6, HS_Gen5_8, HS_Gen5_10, + HS_Gen5_12, HS_Gen5_14, HS_Gen5_16, HS_Gen5_18, HS_Gen5_20, + HS_Gen5_24, HS_Gen5_32, HS_Gen5_40 and HS_Gen5_80. Mutually + exclusive with elastic_pool_name.' + type: string + serverEndpoint: + description: The endpoint of an Azure SQL Server that will + be used to host the SSIS catalog. + type: string + type: object + type: array + customSetupScript: + description: A custom_setup_script block as defined below. + items: + properties: + blobContainerUri: + description: The blob endpoint for the container which contains + a custom setup script that will be run on every node on + startup. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup + for more information. + type: string + type: object + type: array + description: + description: Integration runtime description. + type: string + edition: + description: The Azure-SSIS Integration Runtime edition. Valid + values are Standard and Enterprise. Defaults to Standard. + type: string + expressCustomSetup: + description: An express_custom_setup block as defined below. + items: + properties: + commandKey: + description: One or more command_key blocks as defined below. + items: + properties: + keyVaultPassword: + description: A key_vault_secret_reference block as + defined below. + items: + properties: + linkedServiceName: + description: Name of the Linked Service to associate + with the packages. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate + with the Key Vault Data Factory Linked Service. + type: object + secretName: + description: Specifies the secret name in Azure + Key Vault. + type: string + secretVersion: + description: Specifies the secret version in + Azure Key Vault. + type: string + type: object + type: array + targetName: + description: The target computer or domain name. + type: string + userName: + description: The username for the target device. + type: string + type: object + type: array + component: + description: One or more component blocks as defined below. + items: + properties: + keyVaultLicense: + description: A key_vault_secret_reference block as + defined below. + items: + properties: + linkedServiceName: + description: Name of the Linked Service to associate + with the packages. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate + with the Key Vault Data Factory Linked Service. + type: object + secretName: + description: Specifies the secret name in Azure + Key Vault. + type: string + secretVersion: + description: Specifies the secret version in + Azure Key Vault. + type: string + type: object + type: array + name: + description: Name of the package store. + type: string + type: object + type: array + environment: + additionalProperties: + type: string + description: The Environment Variables for the Azure-SSIS + Integration Runtime. + type: object + powershellVersion: + description: The version of Azure Powershell installed for + the Azure-SSIS Integration Runtime. + type: string + type: object + type: array + expressVnetIntegration: + description: A express_vnet_integration block as defined below. + items: + type: object + type: array + licenseType: + description: The type of the license that is used. Valid values + are LicenseIncluded and BasePrice. Defaults to LicenseIncluded. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + maxParallelExecutionsPerNode: + description: Defines the maximum parallel executions per node. + Defaults to 1. Max is 16. + type: number + nodeSize: + description: 'The size of the nodes on which the Azure-SSIS Integration + Runtime runs. Valid values are: Standard_D2_v3, Standard_D4_v3, + Standard_D8_v3, Standard_D16_v3, Standard_D32_v3, Standard_D64_v3, + Standard_E2_v3, Standard_E4_v3, Standard_E8_v3, Standard_E16_v3, + Standard_E32_v3, Standard_E64_v3, Standard_D1_v2, Standard_D2_v2, + Standard_D3_v2, Standard_D4_v2, Standard_A4_v2 and Standard_A8_v2' + type: string + numberOfNodes: + description: Number of nodes for the Azure-SSIS Integration Runtime. + Max is 10. Defaults to 1. + type: number + packageStore: + description: One or more package_store block as defined below. + items: + properties: + linkedServiceName: + description: Name of the Linked Service to associate with + the packages. + type: string + name: + description: Name of the package store. + type: string + type: object + type: array + proxy: + description: A proxy block as defined below. + items: + properties: + path: + description: The path in the data store to be used when + moving data between Self-Hosted and Azure-SSIS Integration + Runtimes. + type: string + selfHostedIntegrationRuntimeName: + description: Name of Self Hosted Integration Runtime as + a proxy. + type: string + stagingStorageLinkedServiceName: + description: Name of Azure Blob Storage linked service to + reference the staging data store to be used when moving + data between self-hosted and Azure-SSIS integration runtimes. + type: string + type: object + type: array + vnetIntegration: + description: A vnet_integration block as defined below. + items: + properties: + publicIps: + description: Static public IP addresses for the Azure-SSIS + Integration Runtime. The size must be 2. + items: + type: string + type: array + vnetId: + description: ID of the virtual network to which the nodes + of the Azure-SSIS Integration Runtime will be added. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -900,9 +1128,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: nodeSize is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nodeSize) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.nodeSize) + || has(self.initProvider.nodeSize)' status: description: IntegrationRuntimeAzureSSISStatus defines the observed state of IntegrationRuntimeAzureSSIS. diff --git a/package/crds/datafactory.azure.upbound.io_integrationruntimemanageds.yaml b/package/crds/datafactory.azure.upbound.io_integrationruntimemanageds.yaml index 2de8a895c..226fa2edd 100644 --- a/package/crds/datafactory.azure.upbound.io_integrationruntimemanageds.yaml +++ b/package/crds/datafactory.azure.upbound.io_integrationruntimemanageds.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: integrationruntimemanageds.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -102,8 +101,6 @@ spec: description: The endpoint of an Azure SQL Server that will be used to host the SSIS catalog. type: string - required: - - serverEndpoint type: object type: array customSetupScript: @@ -136,7 +133,6 @@ spec: - namespace type: object required: - - blobContainerUri - sasTokenSecretRef type: object type: array @@ -340,26 +336,120 @@ spec: description: ID of the virtual network to which the nodes of the Managed Integration Runtime will be added. type: string - required: - - vnetId type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + catalogInfo: + description: A catalog_info block as defined below. + items: + properties: + administratorLogin: + description: Administrator login name for the SQL Server. + type: string + pricingTier: + description: 'Pricing tier for the database that will be + created for the SSIS catalog. Valid values are: Basic, + Standard, Premium and PremiumRS.' + type: string + serverEndpoint: + description: The endpoint of an Azure SQL Server that will + be used to host the SSIS catalog. + type: string + type: object + type: array + customSetupScript: + description: A custom_setup_script block as defined below. + items: + properties: + blobContainerUri: + description: The blob endpoint for the container which contains + a custom setup script that will be run on every node on + startup. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup + for more information. + type: string + type: object + type: array + description: + description: Integration runtime description. + type: string + edition: + description: The Managed Integration Runtime edition. Valid values + are Standard and Enterprise. Defaults to Standard. + type: string + licenseType: + description: The type of the license that is used. Valid values + are LicenseIncluded and BasePrice. Defaults to LicenseIncluded. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + maxParallelExecutionsPerNode: + description: Defines the maximum parallel executions per node. + Defaults to 1. Max is 16. + type: number + nodeSize: + description: 'The size of the nodes on which the Managed Integration + Runtime runs. Valid values are: Standard_D2_v3, Standard_D4_v3, + Standard_D8_v3, Standard_D16_v3, Standard_D32_v3, Standard_D64_v3, + Standard_E2_v3, Standard_E4_v3, Standard_E8_v3, Standard_E16_v3, + Standard_E32_v3, Standard_E64_v3, Standard_D1_v2, Standard_D2_v2, + Standard_D3_v2, Standard_D4_v2, Standard_A4_v2 and Standard_A8_v2' + type: string + numberOfNodes: + description: Number of nodes for the Managed Integration Runtime. + Max is 10. Defaults to 1. + type: number + vnetIntegration: + description: A vnet_integration block as defined below. + items: + properties: + vnetId: + description: ID of the virtual network to which the nodes + of the Managed Integration Runtime will be added. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -533,9 +623,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: nodeSize is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nodeSize) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.nodeSize) + || has(self.initProvider.nodeSize)' status: description: IntegrationRuntimeManagedStatus defines the observed state of IntegrationRuntimeManaged. diff --git a/package/crds/datafactory.azure.upbound.io_integrationruntimeselfhosteds.yaml b/package/crds/datafactory.azure.upbound.io_integrationruntimeselfhosteds.yaml index 1db4a0716..a95387a2c 100644 --- a/package/crds/datafactory.azure.upbound.io_integrationruntimeselfhosteds.yaml +++ b/package/crds/datafactory.azure.upbound.io_integrationruntimeselfhosteds.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: integrationruntimeselfhosteds.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -160,26 +159,63 @@ spec: description: The resource identifier of the integration runtime to be shared. type: string - required: - - resourceId type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: Integration runtime description. + type: string + rbacAuthorization: + description: A rbac_authorization block as defined below. Changing + this forces a new resource to be created. + items: + properties: + resourceId: + description: The resource identifier of the integration + runtime to be shared. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_linkedcustomservices.yaml b/package/crds/datafactory.azure.upbound.io_linkedcustomservices.yaml index 63fa28e01..dab88bfc0 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedcustomservices.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedcustomservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedcustomservices.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -178,8 +177,6 @@ spec: description: A map of parameters to associate with the integration runtime. type: object - required: - - name type: object type: array parameters: @@ -199,21 +196,93 @@ spec: Data Factory Linked Service. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntime: + description: An integration_runtime block as defined below. + items: + properties: + name: + description: The integration runtime reference to associate + with the Data Factory Linked Service. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the integration + runtime. + type: object + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + type: + description: The type of data stores that will be connected to + Data Factory. For full list of supported data stores, please + refer to Azure Data Factory connector. Changing this forces + a new resource to be created. + type: string + typePropertiesJson: + description: A JSON object that contains the properties of the + Data Factory Linked Service. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -387,9 +456,13 @@ spec: type: object x-kubernetes-validations: - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' - message: typePropertiesJson is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.typePropertiesJson) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.typePropertiesJson) + || has(self.initProvider.typePropertiesJson)' status: description: LinkedCustomServiceStatus defines the observed state of LinkedCustomService. properties: diff --git a/package/crds/datafactory.azure.upbound.io_linkedserviceazureblobstorages.yaml b/package/crds/datafactory.azure.upbound.io_linkedserviceazureblobstorages.yaml index 9075b4ad8..c55e42ce5 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedserviceazureblobstorages.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedserviceazureblobstorages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedserviceazureblobstorages.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -283,8 +282,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores the SAS token. type: string - required: - - secretName type: object type: array parameters: @@ -430,8 +427,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores the Service Principal key. type: string - required: - - secretName type: object type: array storageKind: @@ -448,21 +443,122 @@ spec: with service_principal_id and service_principal_key. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + connectionStringInsecure: + description: The connection string sent insecurely. Conflicts + with connection_string, sas_uri and service_endpoint. + type: string + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + keyVaultSasToken: + description: A key_vault_sas_token block as defined below. Use + this argument to store SAS Token in an existing Key Vault. It + needs an existing Key Vault Data Factory Linked Service. A sas_uri + is required. + items: + properties: + secretName: + description: Specifies the secret name in Azure Key Vault + that stores the SAS token. + type: string + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + servicePrincipalId: + description: The service principal id in which to authenticate + against the Azure Blob Storage account. + type: string + servicePrincipalKey: + description: The service principal key in which to authenticate + against the AAzure Blob Storage account. + type: string + servicePrincipalLinkedKeyVaultKey: + description: A service_principal_linked_key_vault_key block as + defined below. Use this argument to store Service Principal + key in an existing Key Vault. It needs an existing Key Vault + Data Factory Linked Service. + items: + properties: + secretName: + description: Specifies the secret name in Azure Key Vault + that stores the Service Principal key. + type: string + type: object + type: array + storageKind: + description: Specify the kind of the storage account. Allowed + values are Storage, StorageV2, BlobStorage and BlockBlobStorage. + type: string + tenantId: + description: The tenant id or name in which to authenticate against + the Azure Blob Storage account. + type: string + useManagedIdentity: + description: Whether to use the Data Factory's managed identity + to authenticate against the Azure Blob Storage account. Incompatible + with service_principal_id and service_principal_key. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_linkedserviceazuredatabricks.yaml b/package/crds/datafactory.azure.upbound.io_linkedserviceazuredatabricks.yaml index 6ace2936f..856f7facc 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedserviceazuredatabricks.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedserviceazuredatabricks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedserviceazuredatabricks.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -210,9 +209,6 @@ spec: description: The minimum number of worker nodes. Defaults to 1. type: number - required: - - clusterVersion - - instancePoolId type: object type: array integrationRuntimeName: @@ -232,9 +228,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores ADB access token. type: string - required: - - linkedServiceName - - secretName type: object type: array msiWorkSpaceResourceId: @@ -364,9 +357,6 @@ spec: description: User-specified Spark environment variables key-value pairs. type: object - required: - - clusterVersion - - nodeType type: object type: array parameters: @@ -376,21 +366,168 @@ spec: Linked Service. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + adbDomain: + description: The domain URL of the databricks instance. + type: string + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + description: + description: The description for the Data Factory Linked Service. + type: string + existingClusterId: + description: The cluster_id of an existing cluster within the + linked ADB instance. + type: string + instancePool: + description: Leverages an instance pool within the linked ADB + instance as defined by instance_pool block below. + items: + properties: + clusterVersion: + description: Spark version of a the cluster. + type: string + instancePoolId: + description: Identifier of the instance pool within the + linked ADB instance. + type: string + maxNumberOfWorkers: + description: The max number of worker nodes. Set this value + if you want to enable autoscaling between the min_number_of_workers + and this value. Omit this value to use a fixed number + of workers defined in the min_number_of_workers property. + type: number + minNumberOfWorkers: + description: The minimum number of worker nodes. Defaults + to 1. + type: number + type: object + type: array + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + keyVaultPassword: + description: Authenticate to ADB via Azure Key Vault Linked Service + as defined in the key_vault_password block below. + items: + properties: + linkedServiceName: + description: Specifies the name of an existing Key Vault + Data Factory Linked Service. + type: string + secretName: + description: Specifies the secret name in Azure Key Vault + that stores ADB access token. + type: string + type: object + type: array + newClusterConfig: + description: Creates new clusters within the linked ADB instance + as defined in the new_cluster_config block below. + items: + properties: + clusterVersion: + description: Spark version of a the cluster. + type: string + customTags: + additionalProperties: + type: string + description: Tags for the cluster resource. + type: object + driverNodeType: + description: Driver node type for the cluster. + type: string + initScripts: + description: User defined initialization scripts for the + cluster. + items: + type: string + type: array + logDestination: + description: Location to deliver Spark driver, worker, and + event logs. + type: string + maxNumberOfWorkers: + description: Specifies the maximum number of worker nodes. + It should be between 1 and 25000. + type: number + minNumberOfWorkers: + description: Specifies the minimum number of worker nodes. + It should be between 1 and 25000. It defaults to 1. + type: number + nodeType: + description: Node type for the new cluster. + type: string + sparkConfig: + additionalProperties: + type: string + description: User-specified Spark configuration variables + key-value pairs. + type: object + sparkEnvironmentVariables: + additionalProperties: + type: string + description: User-specified Spark environment variables + key-value pairs. + type: object + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -564,7 +701,9 @@ spec: type: object x-kubernetes-validations: - message: adbDomain is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adbDomain) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.adbDomain) + || has(self.initProvider.adbDomain)' status: description: LinkedServiceAzureDatabricksStatus defines the observed state of LinkedServiceAzureDatabricks. diff --git a/package/crds/datafactory.azure.upbound.io_linkedserviceazurefilestorages.yaml b/package/crds/datafactory.azure.upbound.io_linkedserviceazurefilestorages.yaml index 46be1e651..dbe4df5f7 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedserviceazurefilestorages.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedserviceazurefilestorages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedserviceazurefilestorages.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -206,9 +205,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores Azure File Storage password. type: string - required: - - linkedServiceName - - secretName type: object type: array parameters: @@ -238,21 +234,97 @@ spec: description: The user ID to log in the server. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + description: + description: The description for the Data Factory Linked Service. + type: string + fileShare: + description: The name of the file share. + type: string + host: + description: The Host name of the server. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + keyVaultPassword: + description: A key_vault_password block as defined below. Use + this argument to store Azure File Storage password in an existing + Key Vault. It needs an existing Key Vault Data Factory Linked + Service. + items: + properties: + linkedServiceName: + description: Specifies the name of an existing Key Vault + Data Factory Linked Service. + type: string + secretName: + description: Specifies the secret name in Azure Key Vault + that stores Azure File Storage password. + type: string + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + userId: + description: The user ID to log in the server. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -426,7 +498,8 @@ spec: type: object x-kubernetes-validations: - message: connectionStringSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionStringSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.connectionStringSecretRef)' status: description: LinkedServiceAzureFileStorageStatus defines the observed state of LinkedServiceAzureFileStorage. diff --git a/package/crds/datafactory.azure.upbound.io_linkedserviceazurefunctions.yaml b/package/crds/datafactory.azure.upbound.io_linkedserviceazurefunctions.yaml index 652ba993e..219c5fb2a 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedserviceazurefunctions.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedserviceazurefunctions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedserviceazurefunctions.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -202,9 +201,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores the system key of the Azure Function. type: string - required: - - linkedServiceName - - secretName type: object type: array parameters: @@ -217,21 +213,92 @@ spec: description: The url of the Azure Function. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + keyVaultKey: + description: A key_vault_key block as defined below. Use this + Argument to store the system key of the Azure Function in an + existing Key Vault. It needs an existing Key Vault Data Factory + Linked Service. Exactly one of either key or key_vault_key is + required. + items: + properties: + linkedServiceName: + description: Specifies the name of an existing Key Vault + Data Factory Linked Service. + type: string + secretName: + description: Specifies the secret name in Azure Key Vault + that stores the system key of the Azure Function. + type: string + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + url: + description: The url of the Azure Function. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -405,7 +472,9 @@ spec: type: object x-kubernetes-validations: - message: url is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.url) + || has(self.initProvider.url)' status: description: LinkedServiceAzureFunctionStatus defines the observed state of LinkedServiceAzureFunction. diff --git a/package/crds/datafactory.azure.upbound.io_linkedserviceazuresearches.yaml b/package/crds/datafactory.azure.upbound.io_linkedserviceazuresearches.yaml index fe15fabad..0db751218 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedserviceazuresearches.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedserviceazuresearches.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedserviceazuresearches.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -254,21 +253,74 @@ spec: description: The URL of the Search Service endpoint (e.g. https://{searchServiceName}.search.windows.net). type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + url: + description: The URL of the Search Service endpoint (e.g. https://{searchServiceName}.search.windows.net). + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -442,7 +494,9 @@ spec: type: object x-kubernetes-validations: - message: url is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.url) + || has(self.initProvider.url)' status: description: LinkedServiceAzureSearchStatus defines the observed state of LinkedServiceAzureSearch. diff --git a/package/crds/datafactory.azure.upbound.io_linkedserviceazuresqldatabases.yaml b/package/crds/datafactory.azure.upbound.io_linkedserviceazuresqldatabases.yaml index 9a5444f19..fa3603e3a 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedserviceazuresqldatabases.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedserviceazuresqldatabases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedserviceazuresqldatabases.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -190,9 +189,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores SQL Server connection string. type: string - required: - - linkedServiceName - - secretName type: object type: array keyVaultPassword: @@ -209,9 +205,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores SQL Server password. type: string - required: - - linkedServiceName - - secretName type: object type: array parameters: @@ -240,21 +233,130 @@ spec: with service_principal_id and service_principal_key type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service Azure SQL Database. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service Azure SQL Database. + items: + type: string + type: array + connectionString: + description: The connection string in which to authenticate with + Azure SQL Database. Exactly one of either connection_string + or key_vault_connection_string is required. + type: string + description: + description: The description for the Data Factory Linked Service + Azure SQL Database. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service Azure SQL Database. + type: string + keyVaultConnectionString: + description: A key_vault_connection_string block as defined below. + Use this argument to store Azure SQL Database connection string + in an existing Key Vault. It needs an existing Key Vault Data + Factory Linked Service. Exactly one of either connection_string + or key_vault_connection_string is required. + items: + properties: + linkedServiceName: + description: Specifies the name of an existing Key Vault + Data Factory Linked Service. + type: string + secretName: + description: Specifies the secret name in Azure Key Vault + that stores SQL Server connection string. + type: string + type: object + type: array + keyVaultPassword: + description: A key_vault_password block as defined below. Use + this argument to store SQL Server password in an existing Key + Vault. It needs an existing Key Vault Data Factory Linked Service. + items: + properties: + linkedServiceName: + description: Specifies the name of an existing Key Vault + Data Factory Linked Service. + type: string + secretName: + description: Specifies the secret name in Azure Key Vault + that stores SQL Server password. + type: string + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service Azure SQL Database. + type: object + servicePrincipalId: + description: The service principal id in which to authenticate + against the Azure SQL Database. Required if service_principal_key + is set. + type: string + servicePrincipalKey: + description: The service principal key in which to authenticate + against the Azure SQL Database. Required if service_principal_id + is set. + type: string + tenantId: + description: The tenant id or name in which to authenticate against + the Azure SQL Database. + type: string + useManagedIdentity: + description: Whether to use the Data Factory's managed identity + to authenticate against the Azure SQL Database. Incompatible + with service_principal_id and service_principal_key + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_linkedserviceazuretablestorages.yaml b/package/crds/datafactory.azure.upbound.io_linkedserviceazuretablestorages.yaml index 0505abf9b..5531a4742 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedserviceazuretablestorages.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedserviceazuretablestorages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedserviceazuretablestorages.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -192,21 +191,71 @@ spec: Linked Service. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -380,7 +429,8 @@ spec: type: object x-kubernetes-validations: - message: connectionStringSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionStringSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.connectionStringSecretRef)' status: description: LinkedServiceAzureTableStorageStatus defines the observed state of LinkedServiceAzureTableStorage. diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicecosmosdbmongoapis.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicecosmosdbmongoapis.yaml index 1c0a2f525..ae604a6d6 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicecosmosdbmongoapis.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicecosmosdbmongoapis.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicecosmosdbmongoapis.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -199,21 +198,78 @@ spec: to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + database: + description: The name of the database. + type: string + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + serverVersionIs32OrHigher: + description: Whether API server version is 3.2 or higher. Defaults + to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicecosmosdbs.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicecosmosdbs.yaml index 337763195..1bb970514 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicecosmosdbs.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicecosmosdbs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicecosmosdbs.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -218,21 +217,79 @@ spec: Linked Service. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accountEndpoint: + description: The endpoint of the Azure CosmosDB account. Required + if connection_string is unspecified. + type: string + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + database: + description: The name of the database. Required if connection_string + is unspecified. + type: string + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicedatalakestoragegen2s.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicedatalakestoragegen2s.yaml index f4fb0bca0..c421ddfea 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicedatalakestoragegen2s.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicedatalakestoragegen2s.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicedatalakestoragegen2s.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -205,21 +204,101 @@ spec: tenant and storage_account_key. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + servicePrincipalId: + description: The service principal id with which to authenticate + against the Azure Data Lake Storage Gen2 account. Incompatible + with storage_account_key and use_managed_identity. + type: string + servicePrincipalKey: + description: The service principal key with which to authenticate + against the Azure Data Lake Storage Gen2 account. + type: string + storageAccountKey: + description: The Storage Account Key with which to authenticate + against the Azure Data Lake Storage Gen2 account. Incompatible + with service_principal_id, service_principal_key, tenant and + use_managed_identity. + type: string + tenant: + description: The tenant id or name in which the service principal + exists to authenticate against the Azure Data Lake Storage Gen2 + account. + type: string + url: + description: The endpoint for the Azure Data Lake Storage Gen2 + service. + type: string + useManagedIdentity: + description: Whether to use the Data Factory's managed identity + to authenticate against the Azure Data Lake Storage Gen2 account. + Incompatible with service_principal_id, service_principal_key, + tenant and storage_account_key. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -393,7 +472,9 @@ spec: type: object x-kubernetes-validations: - message: url is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.url) + || has(self.initProvider.url)' status: description: LinkedServiceDataLakeStorageGen2Status defines the observed state of LinkedServiceDataLakeStorageGen2. diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicekeyvaults.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicekeyvaults.yaml index 02c224f1d..a40702d5c 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicekeyvaults.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicekeyvaults.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicekeyvaults.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -251,21 +250,72 @@ spec: Linked Service Key Vault. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service Key Vault. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service Key Vault. + items: + type: string + type: array + description: + description: The description for the Data Factory Linked Service + Key Vault. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service Key Vault. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service Key Vault. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicekustoes.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicekustos.yaml similarity index 87% rename from package/crds/datafactory.azure.upbound.io_linkedservicekustoes.yaml rename to package/crds/datafactory.azure.upbound.io_linkedservicekustos.yaml index a5e0fda4e..30c5c8dae 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicekustoes.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicekustos.yaml @@ -3,9 +3,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null - name: linkedservicekustoes.datafactory.azure.upbound.io + controller-gen.kubebuilder.io/version: v0.12.1 + name: linkedservicekustos.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io names: @@ -15,7 +14,7 @@ spec: - azure kind: LinkedServiceKusto listKind: LinkedServiceKustoList - plural: linkedservicekustoes + plural: linkedservicekustos singular: linkedservicekusto scope: Cluster versions: @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -356,21 +355,83 @@ spec: to authenticate against the Kusto Database. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + servicePrincipalId: + description: The service principal id in which to authenticate + against the Kusto Database. + type: string + tenant: + description: The service principal tenant id or name in which + to authenticate against the Kusto Database. + type: string + useManagedIdentity: + description: Whether to use the Data Factory's managed identity + to authenticate against the Kusto Database. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicemysqls.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicemysqls.yaml index 8754fd6a3..38d89b5b0 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicemysqls.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicemysqls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicemysqls.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -179,21 +178,76 @@ spec: Linked Service MySQL. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service MySQL. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service MySQL. + items: + type: string + type: array + connectionString: + description: The connection string in which to authenticate with + MySQL. + type: string + description: + description: The description for the Data Factory Linked Service + MySQL. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service MySQL. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service MySQL. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -367,7 +421,9 @@ spec: type: object x-kubernetes-validations: - message: connectionString is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionString) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.connectionString) + || has(self.initProvider.connectionString)' status: description: LinkedServiceMySQLStatus defines the observed state of LinkedServiceMySQL. properties: diff --git a/package/crds/datafactory.azure.upbound.io_linkedserviceodata.yaml b/package/crds/datafactory.azure.upbound.io_linkedserviceodata.yaml index b8a56e215..7a34ceb5b 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedserviceodata.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedserviceodata.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedserviceodata.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -109,7 +108,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array dataFactoryId: @@ -209,21 +207,85 @@ spec: description: The URL of the OData service endpoint. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service OData. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service OData. + items: + type: string + type: array + basicAuthentication: + description: A basic_authentication block as defined below. + items: + properties: + username: + description: The username which can be used to authenticate + to the OData endpoint. + type: string + type: object + type: array + description: + description: The description for the Data Factory Linked Service + OData. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service OData. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service OData. + type: object + url: + description: The URL of the OData service endpoint. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -397,7 +459,9 @@ spec: type: object x-kubernetes-validations: - message: url is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.url) + || has(self.initProvider.url)' status: description: LinkedServiceODataStatus defines the observed state of LinkedServiceOData. properties: diff --git a/package/crds/datafactory.azure.upbound.io_linkedserviceodbcs.yaml b/package/crds/datafactory.azure.upbound.io_linkedserviceodbcs.yaml index 8c4028807..44a58c28f 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedserviceodbcs.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedserviceodbcs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedserviceodbcs.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -109,7 +108,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array connectionString: @@ -210,21 +208,86 @@ spec: Linked Service ODBC. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service ODBC. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service ODBC. + items: + type: string + type: array + basicAuthentication: + description: A basic_authentication block as defined below. + items: + properties: + username: + description: The username which can be used to authenticate + to the ODBC endpoint. + type: string + type: object + type: array + connectionString: + description: The connection string in which to authenticate with + ODBC. + type: string + description: + description: The description for the Data Factory Linked Service + ODBC. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service ODBC. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service ODBC. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -398,7 +461,9 @@ spec: type: object x-kubernetes-validations: - message: connectionString is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionString) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.connectionString) + || has(self.initProvider.connectionString)' status: description: LinkedServiceOdbcStatus defines the observed state of LinkedServiceOdbc. properties: diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicepostgresqls.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicepostgresqls.yaml index 0ca9b8e65..8cf2bf6e6 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicepostgresqls.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicepostgresqls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicepostgresqls.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -180,21 +179,76 @@ spec: Linked Service PostgreSQL. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service PostgreSQL. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service PostgreSQL. + items: + type: string + type: array + connectionString: + description: The connection string in which to authenticate with + PostgreSQL. + type: string + description: + description: The description for the Data Factory Linked Service + PostgreSQL. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service PostgreSQL. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service PostgreSQL. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -368,7 +422,9 @@ spec: type: object x-kubernetes-validations: - message: connectionString is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionString) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.connectionString) + || has(self.initProvider.connectionString)' status: description: LinkedServicePostgreSQLStatus defines the observed state of LinkedServicePostgreSQL. diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicesftps.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicesftps.yaml index 5793a9caa..0c76b4052 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicesftps.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicesftps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicesftps.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -212,21 +211,92 @@ spec: description: The username used to log on to the SFTP server. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + authenticationType: + description: The type of authentication used to connect to the + web table source. Valid options are Anonymous, Basic and ClientCertificate. + type: string + description: + description: The description for the Data Factory Linked Service. + type: string + host: + description: The SFTP server hostname. + type: string + hostKeyFingerprint: + description: The host key fingerprint of the SFTP server. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + port: + description: The TCP port number that the SFTP server uses to + listen for client connection. Default value is 22. + type: number + skipHostKeyValidation: + description: Whether to validate host key fingerprint while connecting. + If set to false, host_key_fingerprint must also be set. + type: boolean + username: + description: The username used to log on to the SFTP server. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -400,15 +470,24 @@ spec: type: object x-kubernetes-validations: - message: authenticationType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authenticationType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.authenticationType) + || has(self.initProvider.authenticationType)' - message: host is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.host) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.host) + || has(self.initProvider.host)' - message: passwordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)' - message: port is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.port) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.port) + || has(self.initProvider.port)' - message: username is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.username) + || has(self.initProvider.username)' status: description: LinkedServiceSFTPStatus defines the observed state of LinkedServiceSFTP. properties: diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicesnowflakes.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicesnowflakes.yaml index 9c36adac3..35641ec60 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicesnowflakes.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicesnowflakes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicesnowflakes.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -263,8 +262,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores Snowflake password. type: string - required: - - secretName type: object type: array parameters: @@ -274,21 +271,87 @@ spec: Linked Service. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + connectionString: + description: The connection string in which to authenticate with + Snowflake. + type: string + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + keyVaultPassword: + description: A key_vault_password block as defined below. Use + this argument to store Snowflake password in an existing Key + Vault. It needs an existing Key Vault Data Factory Linked Service. + items: + properties: + secretName: + description: Specifies the secret name in Azure Key Vault + that stores Snowflake password. + type: string + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -462,7 +525,9 @@ spec: type: object x-kubernetes-validations: - message: connectionString is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionString) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.connectionString) + || has(self.initProvider.connectionString)' status: description: LinkedServiceSnowflakeStatus defines the observed state of LinkedServiceSnowflake. diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicesqlservers.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicesqlservers.yaml index eab6c7983..1fc6bfdef 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicesqlservers.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicesqlservers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicesqlservers.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -189,9 +188,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores SQL Server connection string. type: string - required: - - linkedServiceName - - secretName type: object type: array keyVaultPassword: @@ -286,8 +282,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores SQL Server password. type: string - required: - - secretName type: object type: array parameters: @@ -300,21 +294,110 @@ spec: description: The on-premises Windows authentication user name. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service SQL Server. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service SQL Server. + items: + type: string + type: array + connectionString: + description: The connection string in which to authenticate with + the SQL Server. Exactly one of either connection_string or key_vault_connection_string + is required. + type: string + description: + description: The description for the Data Factory Linked Service + SQL Server. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service SQL Server. + type: string + keyVaultConnectionString: + description: A key_vault_connection_string block as defined below. + Use this argument to store SQL Server connection string in an + existing Key Vault. It needs an existing Key Vault Data Factory + Linked Service. Exactly one of either connection_string or key_vault_connection_string + is required. + items: + properties: + linkedServiceName: + description: Specifies the name of an existing Key Vault + Data Factory Linked Service. + type: string + secretName: + description: Specifies the secret name in Azure Key Vault + that stores SQL Server connection string. + type: string + type: object + type: array + keyVaultPassword: + description: A key_vault_password block as defined below. Use + this argument to store SQL Server password in an existing Key + Vault. It needs an existing Key Vault Data Factory Linked Service. + items: + properties: + secretName: + description: Specifies the secret name in Azure Key Vault + that stores SQL Server password. + type: string + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service SQL Server. + type: object + userName: + description: The on-premises Windows authentication user name. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicesynapses.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicesynapses.yaml index 7ecae4d07..23a4fe785 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicesynapses.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicesynapses.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicesynapses.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -264,8 +263,6 @@ spec: description: Specifies the secret name in Azure Key Vault that stores Synapse password. type: string - required: - - secretName type: object type: array parameters: @@ -275,21 +272,88 @@ spec: Linked Service Synapse. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service Synapse. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service Synapse. + items: + type: string + type: array + connectionString: + description: The connection string in which to authenticate with + the Synapse. + type: string + description: + description: The description for the Data Factory Linked Service + Synapse. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service Synapse. + type: string + keyVaultPassword: + description: A key_vault_password block as defined below. Use + this argument to store Synapse password in an existing Key Vault. + It needs an existing Key Vault Data Factory Linked Service. + items: + properties: + secretName: + description: Specifies the secret name in Azure Key Vault + that stores Synapse password. + type: string + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service Synapse. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -463,7 +527,9 @@ spec: type: object x-kubernetes-validations: - message: connectionString is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionString) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.connectionString) + || has(self.initProvider.connectionString)' status: description: LinkedServiceSynapseStatus defines the observed state of LinkedServiceSynapse. diff --git a/package/crds/datafactory.azure.upbound.io_linkedservicewebs.yaml b/package/crds/datafactory.azure.upbound.io_linkedservicewebs.yaml index 5d86aa4e2..78aea5738 100644 --- a/package/crds/datafactory.azure.upbound.io_linkedservicewebs.yaml +++ b/package/crds/datafactory.azure.upbound.io_linkedservicewebs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservicewebs.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -203,21 +202,82 @@ spec: authentication_type sets to Basic. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Linked Service. + items: + type: string + type: array + authenticationType: + description: The type of authentication used to connect to the + web table source. Valid options are Anonymous, Basic and ClientCertificate. + type: string + description: + description: The description for the Data Factory Linked Service. + type: string + integrationRuntimeName: + description: The integration runtime reference to associate with + the Data Factory Linked Service. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Linked Service. + type: object + url: + description: The URL of the web service endpoint (e.g. https://www.microsoft.com). + type: string + username: + description: The username for Basic authentication. Required if + authentication_type sets to Basic. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -391,9 +451,13 @@ spec: type: object x-kubernetes-validations: - message: authenticationType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authenticationType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.authenticationType) + || has(self.initProvider.authenticationType)' - message: url is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.url) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.url) + || has(self.initProvider.url)' status: description: LinkedServiceWebStatus defines the observed state of LinkedServiceWeb. properties: diff --git a/package/crds/datafactory.azure.upbound.io_managedprivateendpoints.yaml b/package/crds/datafactory.azure.upbound.io_managedprivateendpoints.yaml index df3054d65..57ac2abc4 100644 --- a/package/crds/datafactory.azure.upbound.io_managedprivateendpoints.yaml +++ b/package/crds/datafactory.azure.upbound.io_managedprivateendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managedprivateendpoints.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -243,21 +242,62 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + fqdns: + description: Fully qualified domain names. Changing this forces + a new resource to be created. + items: + type: string + type: array + name: + description: Specifies the name which should be used for this + Managed Private Endpoint. Changing this forces a new resource + to be created. + type: string + subresourceName: + description: Specifies the sub resource name which the Data Factory + Private Endpoint is able to connect to. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -431,7 +471,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ManagedPrivateEndpointStatus defines the observed state of ManagedPrivateEndpoint. diff --git a/package/crds/datafactory.azure.upbound.io_pipelines.yaml b/package/crds/datafactory.azure.upbound.io_pipelines.yaml index 8991dca77..f9063ca04 100644 --- a/package/crds/datafactory.azure.upbound.io_pipelines.yaml +++ b/package/crds/datafactory.azure.upbound.io_pipelines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: pipelines.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -185,21 +184,83 @@ spec: Pipeline. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + activitiesJson: + description: A JSON object that contains the activities that will + be associated with the Data Factory Pipeline. + type: string + annotations: + description: List of tags that can be used for describing the + Data Factory Pipeline. + items: + type: string + type: array + concurrency: + description: The max number of concurrent runs for the Data Factory + Pipeline. Must be between 1 and 50. + type: number + description: + description: The description for the Data Factory Pipeline. + type: string + folder: + description: The folder that this Pipeline is in. If not specified, + the Pipeline will appear at the root level. + type: string + moniterMetricsAfterDuration: + description: The TimeSpan value after which an Azure Monitoring + Metric is fired. + type: string + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Data Factory + Pipeline. + type: object + variables: + additionalProperties: + type: string + description: A map of variables to associate with the Data Factory + Pipeline. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datafactory.azure.upbound.io_triggerblobevents.yaml b/package/crds/datafactory.azure.upbound.io_triggerblobevents.yaml index 39915d12d..84a76a7a3 100644 --- a/package/crds/datafactory.azure.upbound.io_triggerblobevents.yaml +++ b/package/crds/datafactory.azure.upbound.io_triggerblobevents.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: triggerblobevents.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -355,21 +354,94 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + activated: + description: Specifies if the Data Factory Blob Event Trigger + is activated. Defaults to true. + type: boolean + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Blob Event Trigger. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Blob Event Trigger. + items: + type: string + type: array + blobPathBeginsWith: + description: The pattern that blob path starts with for trigger + to fire. + type: string + blobPathEndsWith: + description: The pattern that blob path ends with for trigger + to fire. + type: string + description: + description: The description for the Data Factory Blob Event Trigger. + type: string + events: + description: List of events that will fire this trigger. Possible + values are Microsoft.Storage.BlobCreated and Microsoft.Storage.BlobDeleted. + items: + type: string + type: array + ignoreEmptyBlobs: + description: are blobs with zero bytes ignored? + type: boolean + pipeline: + description: One or more pipeline blocks as defined below. + items: + properties: + parameters: + additionalProperties: + type: string + description: The Data Factory Pipeline parameters that the + trigger will act on. + type: object + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -543,9 +615,13 @@ spec: type: object x-kubernetes-validations: - message: events is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.events) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.events) + || has(self.initProvider.events)' - message: pipeline is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.pipeline) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.pipeline) + || has(self.initProvider.pipeline)' status: description: TriggerBlobEventStatus defines the observed state of TriggerBlobEvent. properties: diff --git a/package/crds/datafactory.azure.upbound.io_triggercustomevents.yaml b/package/crds/datafactory.azure.upbound.io_triggercustomevents.yaml index 57db76211..ef3fa2d1d 100644 --- a/package/crds/datafactory.azure.upbound.io_triggercustomevents.yaml +++ b/package/crds/datafactory.azure.upbound.io_triggercustomevents.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: triggercustomevents.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -353,21 +352,92 @@ spec: to fire. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + activated: + description: Specifies if the Data Factory Custom Event Trigger + is activated. Defaults to true. + type: boolean + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Data Factory Custom Event Trigger. + type: object + annotations: + description: List of tags that can be used for describing the + Data Factory Custom Event Trigger. + items: + type: string + type: array + description: + description: The description for the Data Factory Custom Event + Trigger. + type: string + events: + description: List of events that will fire this trigger. At least + one event must be specified. + items: + type: string + type: array + pipeline: + description: One or more pipeline blocks as defined below. + items: + properties: + parameters: + additionalProperties: + type: string + description: The Data Factory Pipeline parameters that the + trigger will act on. + type: object + type: object + type: array + subjectBeginsWith: + description: The pattern that event subject starts with for trigger + to fire. + type: string + subjectEndsWith: + description: The pattern that event subject ends with for trigger + to fire. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -541,9 +611,13 @@ spec: type: object x-kubernetes-validations: - message: events is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.events) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.events) + || has(self.initProvider.events)' - message: pipeline is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.pipeline) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.pipeline) + || has(self.initProvider.pipeline)' status: description: TriggerCustomEventStatus defines the observed state of TriggerCustomEvent. properties: diff --git a/package/crds/datafactory.azure.upbound.io_triggerschedules.yaml b/package/crds/datafactory.azure.upbound.io_triggerschedules.yaml index 2997aacbe..387a925dc 100644 --- a/package/crds/datafactory.azure.upbound.io_triggerschedules.yaml +++ b/package/crds/datafactory.azure.upbound.io_triggerschedules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: triggerschedules.datafactory.azure.upbound.io spec: group: datafactory.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -185,8 +184,6 @@ spec: description: The pipeline parameters that the trigger will act upon. type: object - required: - - name type: object type: array pipelineName: @@ -323,8 +320,6 @@ spec: runs. For example, a monthly property with a weekday value of Sunday means every Sunday of the month. type: string - required: - - weekday type: object type: array type: object @@ -337,21 +332,152 @@ spec: description: The timezone of the start/end time. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + activated: + description: Specifies if the Data Factory Schedule Trigger is + activated. Defaults to true. + type: boolean + annotations: + description: List of tags that can be used for describing the + Data Factory Schedule Trigger. + items: + type: string + type: array + description: + description: The Schedule Trigger's description. + type: string + endTime: + description: The time the Schedule Trigger should end. The time + will be represented in UTC. + type: string + frequency: + description: The trigger frequency. Valid values include Minute, + Hour, Day, Week, Month. Defaults to Minute. + type: string + interval: + description: The interval for how often the trigger occurs. This + defaults to 1. + type: number + pipeline: + description: block as defined below. + items: + properties: + name: + description: Reference pipeline name. + type: string + parameters: + additionalProperties: + type: string + description: The pipeline parameters that the trigger will + act upon. + type: object + type: object + type: array + pipelineParameters: + additionalProperties: + type: string + description: The pipeline parameters that the trigger will act + upon. + type: object + schedule: + description: A schedule block as defined below, which further + specifies the recurrence schedule for the trigger. A schedule + is capable of limiting or increasing the number of trigger executions + specified by the frequency and interval properties. + items: + properties: + daysOfMonth: + description: Day(s) of the month on which the trigger is + scheduled. This value can be specified with a monthly + frequency only. + items: + type: number + type: array + daysOfWeek: + description: Days of the week on which the trigger is scheduled. + This value can be specified only with a weekly frequency. + items: + type: string + type: array + hours: + description: Hours of the day on which the trigger is scheduled. + items: + type: number + type: array + minutes: + description: Minutes of the hour on which the trigger is + scheduled. + items: + type: number + type: array + monthly: + description: A monthly block as documented below, which + specifies the days of the month on which the trigger is + scheduled. The value can be specified only with a monthly + frequency. + items: + properties: + week: + description: The occurrence of the specified day during + the month. For example, a monthly property with + weekday and week values of Sunday, -1 means the + last Sunday of the month. + type: number + weekday: + description: The day of the week on which the trigger + runs. For example, a monthly property with a weekday + value of Sunday means every Sunday of the month. + type: string + type: object + type: array + type: object + type: array + startTime: + description: The time the Schedule Trigger will start. This defaults + to the current time. The time will be represented in UTC. + type: string + timeZone: + description: The timezone of the start/end time. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datamigration.azure.upbound.io_databasemigrationprojects.yaml b/package/crds/datamigration.azure.upbound.io_databasemigrationprojects.yaml index e99ebacac..5bdf3ccba 100644 --- a/package/crds/datamigration.azure.upbound.io_databasemigrationprojects.yaml +++ b/package/crds/datamigration.azure.upbound.io_databasemigrationprojects.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: databasemigrationprojects.datamigration.azure.upbound.io spec: group: datamigration.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -252,21 +251,69 @@ spec: a new resource to be created.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + name: + description: Specify the name of the database migration project. + Changing this forces a new resource to be created. + type: string + sourcePlatform: + description: 'The platform type of the migration source. Currently + only support: SQL(on-premises SQL Server). Changing this forces + a new resource to be created.' + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assigned to the resource. + type: object + targetPlatform: + description: 'The platform type of the migration target. Currently + only support: SQLDB(Azure SQL Database). Changing this forces + a new resource to be created.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -440,13 +487,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: sourcePlatform is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sourcePlatform) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sourcePlatform) + || has(self.initProvider.sourcePlatform)' - message: targetPlatform is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetPlatform) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.targetPlatform) + || has(self.initProvider.targetPlatform)' status: description: DatabaseMigrationProjectStatus defines the observed state of DatabaseMigrationProject. diff --git a/package/crds/datamigration.azure.upbound.io_databasemigrationservices.yaml b/package/crds/datamigration.azure.upbound.io_databasemigrationservices.yaml index e213aac32..00f8e6ad5 100644 --- a/package/crds/datamigration.azure.upbound.io_databasemigrationservices.yaml +++ b/package/crds/datamigration.azure.upbound.io_databasemigrationservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: databasemigrationservices.datamigration.azure.upbound.io spec: group: datamigration.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -247,21 +246,65 @@ spec: description: A mapping of tags to assigned to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + name: + description: Specify the name of the database migration service. + Changing this forces a new resource to be created. + type: string + skuName: + description: The SKU name of the database migration service. Possible + values are Premium_4vCores, Standard_1vCores, Standard_2vCores + and Standard_4vCores. Changing this forces a new resource to + be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assigned to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -435,11 +478,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: DatabaseMigrationServiceStatus defines the observed state of DatabaseMigrationService. diff --git a/package/crds/dataprotection.azure.upbound.io_backupinstanceblobstorages.yaml b/package/crds/dataprotection.azure.upbound.io_backupinstanceblobstorages.yaml index 22f146a28..f0920cb5d 100644 --- a/package/crds/dataprotection.azure.upbound.io_backupinstanceblobstorages.yaml +++ b/package/crds/dataprotection.azure.upbound.io_backupinstanceblobstorages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backupinstanceblobstorages.dataprotection.azure.upbound.io spec: group: dataprotection.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -309,21 +308,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The location of the source Storage Account. Changing + this forces a new Backup Instance Blob Storage to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -497,7 +525,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: BackupInstanceBlobStorageStatus defines the observed state of BackupInstanceBlobStorage. diff --git a/package/crds/dataprotection.azure.upbound.io_backupinstancedisks.yaml b/package/crds/dataprotection.azure.upbound.io_backupinstancedisks.yaml index ed3ebd63a..19c8ed2b7 100644 --- a/package/crds/dataprotection.azure.upbound.io_backupinstancedisks.yaml +++ b/package/crds/dataprotection.azure.upbound.io_backupinstancedisks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backupinstancedisks.dataprotection.azure.upbound.io spec: group: dataprotection.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -391,21 +390,51 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Backup Instance Disk should + exist. Changing this forces a new Backup Instance Disk to be + created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -579,7 +608,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: BackupInstanceDiskStatus defines the observed state of BackupInstanceDisk. properties: diff --git a/package/crds/dataprotection.azure.upbound.io_backupinstancepostgresqls.yaml b/package/crds/dataprotection.azure.upbound.io_backupinstancepostgresqls.yaml index c0f4cb2db..3d0ced5d2 100644 --- a/package/crds/dataprotection.azure.upbound.io_backupinstancepostgresqls.yaml +++ b/package/crds/dataprotection.azure.upbound.io_backupinstancepostgresqls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backupinstancepostgresqls.dataprotection.azure.upbound.io spec: group: dataprotection.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -388,21 +387,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The location of the source database. Changing this + forces a new Backup Instance PostgreSQL to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -576,7 +604,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: BackupInstancePostgreSQLStatus defines the observed state of BackupInstancePostgreSQL. diff --git a/package/crds/dataprotection.azure.upbound.io_backuppolicyblobstorages.yaml b/package/crds/dataprotection.azure.upbound.io_backuppolicyblobstorages.yaml index 6a1531a21..b346e621d 100644 --- a/package/crds/dataprotection.azure.upbound.io_backuppolicyblobstorages.yaml +++ b/package/crds/dataprotection.azure.upbound.io_backuppolicyblobstorages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backuppolicyblobstorages.dataprotection.azure.upbound.io spec: group: dataprotection.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -153,21 +152,51 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + retentionDuration: + description: Duration of deletion after given timespan. It should + follow ISO 8601 duration format. Changing this forces a new + Backup Policy Blob Storage to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -341,7 +370,9 @@ spec: type: object x-kubernetes-validations: - message: retentionDuration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.retentionDuration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.retentionDuration) + || has(self.initProvider.retentionDuration)' status: description: BackupPolicyBlobStorageStatus defines the observed state of BackupPolicyBlobStorage. diff --git a/package/crds/dataprotection.azure.upbound.io_backuppolicydisks.yaml b/package/crds/dataprotection.azure.upbound.io_backuppolicydisks.yaml index a60862389..e19fca609 100644 --- a/package/crds/dataprotection.azure.upbound.io_backuppolicydisks.yaml +++ b/package/crds/dataprotection.azure.upbound.io_backuppolicydisks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backuppolicydisks.dataprotection.azure.upbound.io spec: group: dataprotection.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -111,11 +110,6 @@ spec: description: Retention Tag priority. Changing this forces a new Backup Policy Disk to be created. type: number - required: - - criteria - - duration - - name - - priority type: object type: array vaultId: @@ -197,21 +191,91 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + backupRepeatingTimeIntervals: + description: Specifies a list of repeating time interval. It should + follow ISO 8601 repeating time interval . Changing this forces + a new Backup Policy Disk to be created. + items: + type: string + type: array + defaultRetentionDuration: + description: The duration of default retention rule. It should + follow ISO 8601 duration format. Changing this forces a new + Backup Policy Disk to be created. + type: string + retentionRule: + description: One or more retention_rule blocks as defined below. + Changing this forces a new Backup Policy Disk to be created. + items: + properties: + criteria: + description: A criteria block as defined below. Changing + this forces a new Backup Policy Disk to be created. + items: + properties: + absoluteCriteria: + description: Possible values are FirstOfDay and FirstOfWeek. + Changing this forces a new Backup Policy Disk to + be created. + type: string + type: object + type: array + duration: + description: Duration of deletion after given timespan. + It should follow ISO 8601 duration format. Changing this + forces a new Backup Policy Disk to be created. + type: string + name: + description: The name which should be used for this retention + rule. Changing this forces a new Backup Policy Disk to + be created. + type: string + priority: + description: Retention Tag priority. Changing this forces + a new Backup Policy Disk to be created. + type: number + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -385,9 +449,13 @@ spec: type: object x-kubernetes-validations: - message: backupRepeatingTimeIntervals is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backupRepeatingTimeIntervals) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backupRepeatingTimeIntervals) + || has(self.initProvider.backupRepeatingTimeIntervals)' - message: defaultRetentionDuration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultRetentionDuration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.defaultRetentionDuration) + || has(self.initProvider.defaultRetentionDuration)' status: description: BackupPolicyDiskStatus defines the observed state of BackupPolicyDisk. properties: diff --git a/package/crds/dataprotection.azure.upbound.io_backuppolicypostgresqls.yaml b/package/crds/dataprotection.azure.upbound.io_backuppolicypostgresqls.yaml index e031eaf5d..0674b5905 100644 --- a/package/crds/dataprotection.azure.upbound.io_backuppolicypostgresqls.yaml +++ b/package/crds/dataprotection.azure.upbound.io_backuppolicypostgresqls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backuppolicypostgresqls.dataprotection.azure.upbound.io spec: group: dataprotection.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -225,11 +224,6 @@ spec: number, the higher the priority of the rule. Changing this forces a new Backup Policy PostgreSQL to be created. type: number - required: - - criteria - - duration - - name - - priority type: object type: array vaultName: @@ -311,21 +305,125 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + backupRepeatingTimeIntervals: + description: Specifies a list of repeating time interval. It supports + weekly back. It should follow ISO 8601 repeating time interval. + Changing this forces a new Backup Policy PostgreSQL to be created. + items: + type: string + type: array + defaultRetentionDuration: + description: The duration of default retention rule. It should + follow ISO 8601 duration format. Changing this forces a new + Backup Policy PostgreSQL to be created. + type: string + retentionRule: + description: One or more retention_rule blocks as defined below. + Changing this forces a new Backup Policy PostgreSQL to be created. + items: + properties: + criteria: + description: A criteria block as defined below. Changing + this forces a new Backup Policy PostgreSQL to be created. + items: + properties: + absoluteCriteria: + description: Possible values are AllBackup, FirstOfDay, + FirstOfWeek, FirstOfMonth and FirstOfYear. These + values mean the first successful backup of the day/week/month/year. + Changing this forces a new Backup Policy PostgreSQL + to be created. + type: string + daysOfWeek: + description: Possible values are Monday, Tuesday, + Thursday, Friday, Saturday and Sunday. Changing + this forces a new Backup Policy PostgreSQL to be + created. + items: + type: string + type: array + monthsOfYear: + description: Possible values are January, February, + March, April, May, June, July, August, September, + October, November and December. Changing this forces + a new Backup Policy PostgreSQL to be created. + items: + type: string + type: array + scheduledBackupTimes: + description: Specifies a list of backup times for + backup in the RFC3339 format. Changing this forces + a new Backup Policy PostgreSQL to be created. + items: + type: string + type: array + weeksOfMonth: + description: Possible values are First, Second, Third, + Fourth and Last. Changing this forces a new Backup + Policy PostgreSQL to be created. + items: + type: string + type: array + type: object + type: array + duration: + description: Duration after which the backup is deleted. + It should follow ISO 8601 duration format. Changing this + forces a new Backup Policy PostgreSQL to be created. + type: string + name: + description: The name which should be used for this retention + rule. Changing this forces a new Backup Policy PostgreSQL + to be created. + type: string + priority: + description: Specifies the priority of the rule. The priority + number must be unique for each rule. The lower the priority + number, the higher the priority of the rule. Changing + this forces a new Backup Policy PostgreSQL to be created. + type: number + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -499,9 +597,13 @@ spec: type: object x-kubernetes-validations: - message: backupRepeatingTimeIntervals is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backupRepeatingTimeIntervals) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backupRepeatingTimeIntervals) + || has(self.initProvider.backupRepeatingTimeIntervals)' - message: defaultRetentionDuration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultRetentionDuration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.defaultRetentionDuration) + || has(self.initProvider.defaultRetentionDuration)' status: description: BackupPolicyPostgreSQLStatus defines the observed state of BackupPolicyPostgreSQL. diff --git a/package/crds/dataprotection.azure.upbound.io_backupvaults.yaml b/package/crds/dataprotection.azure.upbound.io_backupvaults.yaml index 85cd93333..88783cbc7 100644 --- a/package/crds/dataprotection.azure.upbound.io_backupvaults.yaml +++ b/package/crds/dataprotection.azure.upbound.io_backupvaults.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backupvaults.dataprotection.azure.upbound.io spec: group: dataprotection.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,8 +81,6 @@ spec: that should be configured on this Backup Vault. The only possible value is SystemAssigned. type: string - required: - - type type: object type: array location: @@ -182,21 +179,77 @@ spec: Backup Vault. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + datastoreType: + description: Specifies the type of the data store. Possible values + are ArchiveStore, SnapshotStore and VaultStore. Changing this + forces a new resource to be created. + type: string + identity: + description: An identity block as defined below. + items: + properties: + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Backup Vault. The only + possible value is SystemAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the Backup Vault should exist. + Changing this forces a new Backup Vault to be created. + type: string + redundancy: + description: Specifies the backup storage redundancy. Possible + values are GeoRedundant and LocallyRedundant. Changing this + forces a new Backup Vault to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Backup Vault. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -370,11 +423,17 @@ spec: type: object x-kubernetes-validations: - message: datastoreType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.datastoreType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.datastoreType) + || has(self.initProvider.datastoreType)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: redundancy is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.redundancy) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.redundancy) + || has(self.initProvider.redundancy)' status: description: BackupVaultStatus defines the observed state of BackupVault. properties: diff --git a/package/crds/dataprotection.azure.upbound.io_resourceguards.yaml b/package/crds/dataprotection.azure.upbound.io_resourceguards.yaml index 609d1a044..1409bd00e 100644 --- a/package/crds/dataprotection.azure.upbound.io_resourceguards.yaml +++ b/package/crds/dataprotection.azure.upbound.io_resourceguards.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: resourceguards.dataprotection.azure.upbound.io spec: group: dataprotection.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -165,21 +164,62 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Resource Guard should + exist. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Resource Guard. + type: object + vaultCriticalOperationExclusionList: + description: A list of the critical operations which are not protected + by this Resource Guard. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -353,7 +393,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ResourceGuardStatus defines the observed state of ResourceGuard. properties: diff --git a/package/crds/datashare.azure.upbound.io_accounts.yaml b/package/crds/datashare.azure.upbound.io_accounts.yaml index 1e2f0a6ea..d875aedfe 100644 --- a/package/crds/datashare.azure.upbound.io_accounts.yaml +++ b/package/crds/datashare.azure.upbound.io_accounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accounts.datashare.azure.upbound.io spec: group: datashare.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -79,8 +78,6 @@ spec: The only possible value is SystemAssigned. Changing this forces a new resource to be created. type: string - required: - - type type: object type: array location: @@ -174,21 +171,69 @@ spec: Data Share Account. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + identity: + description: An identity block as defined below. Changing this + forces a new resource to be created. + items: + properties: + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Data Share Account. + The only possible value is SystemAssigned. Changing this + forces a new resource to be created. + type: string + type: object + type: array + location: + description: The Azure Region where the Data Share Account should + exist. Changing this forces a new Data Share Account to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Data Share Account. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -362,9 +407,13 @@ spec: type: object x-kubernetes-validations: - message: identity is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.identity) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.identity) + || has(self.initProvider.identity)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: AccountStatus defines the observed state of Account. properties: diff --git a/package/crds/datashare.azure.upbound.io_datasetblobstorages.yaml b/package/crds/datashare.azure.upbound.io_datasetblobstorages.yaml index c3fa0e780..36cfdaeef 100644 --- a/package/crds/datashare.azure.upbound.io_datasetblobstorages.yaml +++ b/package/crds/datashare.azure.upbound.io_datasetblobstorages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetblobstorages.datashare.azure.upbound.io spec: group: datashare.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -410,26 +409,71 @@ spec: to be shared with the receiver. Changing this forces a new Data Share Blob Storage Dataset to be created. type: string - required: - - subscriptionId type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + filePath: + description: The path of the file in the storage container to + be shared with the receiver. Changing this forces a new Data + Share Blob Storage Dataset to be created. + type: string + folderPath: + description: The path of the folder in the storage container to + be shared with the receiver. Changing this forces a new Data + Share Blob Storage Dataset to be created. + type: string + storageAccount: + description: A storage_account block as defined below. Changing + this forces a new resource to be created. + items: + properties: + subscriptionId: + description: The subscription id of the storage account + to be shared with the receiver. Changing this forces a + new Data Share Blob Storage Dataset to be created. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -603,7 +647,9 @@ spec: type: object x-kubernetes-validations: - message: storageAccount is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccount) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageAccount) + || has(self.initProvider.storageAccount)' status: description: DataSetBlobStorageStatus defines the observed state of DataSetBlobStorage. properties: diff --git a/package/crds/datashare.azure.upbound.io_datasetdatalakegen2s.yaml b/package/crds/datashare.azure.upbound.io_datasetdatalakegen2s.yaml index 1093b552f..c912852d2 100644 --- a/package/crds/datashare.azure.upbound.io_datasetdatalakegen2s.yaml +++ b/package/crds/datashare.azure.upbound.io_datasetdatalakegen2s.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetdatalakegen2s.datashare.azure.upbound.io spec: group: datashare.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -315,21 +314,56 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + filePath: + description: The path of the file in the data lake file system + to be shared with the receiver. Conflicts with folder_path Changing + this forces a new Data Share Data Lake Gen2 Dataset to be created. + type: string + folderPath: + description: The folder path in the data lake file system to be + shared with the receiver. Conflicts with file_path Changing + this forces a new Data Share Data Lake Gen2 Dataset to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datashare.azure.upbound.io_datasetkustoclusters.yaml b/package/crds/datashare.azure.upbound.io_datasetkustoclusters.yaml index 782a58db7..dde37cc34 100644 --- a/package/crds/datashare.azure.upbound.io_datasetkustoclusters.yaml +++ b/package/crds/datashare.azure.upbound.io_datasetkustoclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetkustoclusters.datashare.azure.upbound.io spec: group: datashare.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -225,21 +224,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datashare.azure.upbound.io_datasetkustodatabases.yaml b/package/crds/datashare.azure.upbound.io_datasetkustodatabases.yaml index e5f0632af..3878ad12c 100644 --- a/package/crds/datashare.azure.upbound.io_datasetkustodatabases.yaml +++ b/package/crds/datashare.azure.upbound.io_datasetkustodatabases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datasetkustodatabases.datashare.azure.upbound.io spec: group: datashare.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -225,21 +224,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/datashare.azure.upbound.io_datashares.yaml b/package/crds/datashare.azure.upbound.io_datashares.yaml index d0e985ea3..51410d574 100644 --- a/package/crds/datashare.azure.upbound.io_datashares.yaml +++ b/package/crds/datashare.azure.upbound.io_datashares.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datashares.datashare.azure.upbound.io spec: group: datashare.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -168,31 +167,79 @@ spec: description: The synchronization with the source data's start time. type: string - required: - - name - - recurrence - - startTime type: object type: array terms: description: The terms of the Data Share. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The Data Share's description. + type: string + kind: + description: The kind of the Data Share. Possible values are CopyBased + and InPlace. Changing this forces a new Data Share to be created. + type: string + snapshotSchedule: + description: A snapshot_schedule block as defined below. + items: + properties: + name: + description: The name of the snapshot schedule. + type: string + recurrence: + description: The interval of the synchronization with the + source data. Possible values are Hour and Day. + type: string + startTime: + description: The synchronization with the source data's + start time. + type: string + type: object + type: array + terms: + description: The terms of the Data Share. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -366,7 +413,9 @@ spec: type: object x-kubernetes-validations: - message: kind is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.kind) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.kind) + || has(self.initProvider.kind)' status: description: DataShareStatus defines the observed state of DataShare. properties: diff --git a/package/crds/dbformariadb.azure.upbound.io_configurations.yaml b/package/crds/dbformariadb.azure.upbound.io_configurations.yaml index 9b0694721..57004f73f 100644 --- a/package/crds/dbformariadb.azure.upbound.io_configurations.yaml +++ b/package/crds/dbformariadb.azure.upbound.io_configurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: configurations.dbformariadb.azure.upbound.io spec: group: dbformariadb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -237,21 +236,56 @@ spec: forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: Specifies the name of the MariaDB Configuration, + which needs to be a valid MariaDB configuration name. Changing + this forces a new resource to be created. + type: string + value: + description: Specifies the value of the MariaDB Configuration. + See the MariaDB documentation for valid values. Changing this + forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -425,9 +459,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: value is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.value) + || has(self.initProvider.value)' status: description: ConfigurationStatus defines the observed state of Configuration. properties: diff --git a/package/crds/dbformariadb.azure.upbound.io_databases.yaml b/package/crds/dbformariadb.azure.upbound.io_databases.yaml index 65f3953a7..0a2e10def 100644 --- a/package/crds/dbformariadb.azure.upbound.io_databases.yaml +++ b/package/crds/dbformariadb.azure.upbound.io_databases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: databases.dbformariadb.azure.upbound.io spec: group: dbformariadb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -237,21 +236,56 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + charset: + description: Specifies the Charset for the MariaDB Database, which + needs to be a valid MariaDB Charset. Changing this forces a + new resource to be created. + type: string + collation: + description: Specifies the Collation for the MariaDB Database, + which needs to be a valid MariaDB Collation. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -425,9 +459,13 @@ spec: type: object x-kubernetes-validations: - message: charset is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.charset) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.charset) + || has(self.initProvider.charset)' - message: collation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.collation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.collation) + || has(self.initProvider.collation)' status: description: DatabaseStatus defines the observed state of Database. properties: diff --git a/package/crds/dbformariadb.azure.upbound.io_firewallrules.yaml b/package/crds/dbformariadb.azure.upbound.io_firewallrules.yaml index bbf45fc4b..e6c28ade3 100644 --- a/package/crds/dbformariadb.azure.upbound.io_firewallrules.yaml +++ b/package/crds/dbformariadb.azure.upbound.io_firewallrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: firewallrules.dbformariadb.azure.upbound.io spec: group: dbformariadb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -233,21 +232,54 @@ spec: Firewall Rule. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endIpAddress: + description: Specifies the End IP Address associated with this + Firewall Rule. + type: string + startIpAddress: + description: Specifies the Start IP Address associated with this + Firewall Rule. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -421,9 +453,13 @@ spec: type: object x-kubernetes-validations: - message: endIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endIpAddress) + || has(self.initProvider.endIpAddress)' - message: startIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.startIpAddress) + || has(self.initProvider.startIpAddress)' status: description: FirewallRuleStatus defines the observed state of FirewallRule. properties: diff --git a/package/crds/dbformariadb.azure.upbound.io_servers.yaml b/package/crds/dbformariadb.azure.upbound.io_servers.yaml index 6c5a6f687..0622cc795 100644 --- a/package/crds/dbformariadb.azure.upbound.io_servers.yaml +++ b/package/crds/dbformariadb.azure.upbound.io_servers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: servers.dbformariadb.azure.upbound.io spec: group: dbformariadb.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -321,21 +320,124 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + administratorLogin: + description: The Administrator login for the MariaDB Server. Changing + this forces a new resource to be created. + type: string + autoGrowEnabled: + description: Enable/Disable auto-growing of the storage. Storage + auto-grow prevents your server from running out of storage and + becoming read-only. If storage auto grow is enabled, the storage + automatically grows without impacting the workload. The default + value if not explicitly specified is true. + type: boolean + backupRetentionDays: + description: Backup retention days for the server, supported values + are between 7 and 35 days. + type: number + createMode: + description: The creation mode. Can be used to restore or replicate + existing servers. Possible values are Default, Replica, GeoRestore, + and PointInTimeRestore. Defaults to Default. + type: string + geoRedundantBackupEnabled: + description: Turn Geo-redundant server backups on/off. This allows + you to choose between locally redundant or geo-redundant backup + storage in the General Purpose and Memory Optimized tiers. When + the backups are stored in geo-redundant backup storage, they + are not only stored within the region in which your server is + hosted, but are also replicated to a paired data center. This + provides better protection and ability to restore your server + in a different region in the event of a disaster. This is not + supported for the Basic tier. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + publicNetworkAccessEnabled: + description: Whether or not public network access is allowed for + this server. Defaults to true. + type: boolean + restorePointInTime: + description: When create_mode is PointInTimeRestore, specifies + the point in time to restore from creation_source_server_id. + It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z. + type: string + skuName: + description: Specifies the SKU Name for this MariaDB Server. The + name of the SKU, follows the tier + family + cores pattern (e.g. + B_Gen4_1, GP_Gen5_8). For more information see the product documentation. + Possible values are B_Gen5_1, B_Gen5_2, GP_Gen5_2, GP_Gen5_4, + GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, MO_Gen5_2, MO_Gen5_4, MO_Gen5_8 + and MO_Gen5_16. + type: string + sslEnforcementEnabled: + description: Specifies if SSL should be enforced on connections. + Possible values are true and false. + type: boolean + sslMinimalTlsVersionEnforced: + description: The minimum TLS version to support on the sever. + Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, + and TLS1_2. Defaults to TLS1_2. + type: string + storageMb: + description: Max storage allowed for a server. Possible values + are between 5120 MB (5GB) and 1024000MB (1TB) for the Basic + SKU and between 5120 MB (5GB) and 4096000 MB (4TB) for General + Purpose/Memory Optimized SKUs. For more information see the + product documentation. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + version: + description: Specifies the version of MariaDB to use. Possible + values are 10.2 and 10.3. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -509,13 +611,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' - message: sslEnforcementEnabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sslEnforcementEnabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sslEnforcementEnabled) + || has(self.initProvider.sslEnforcementEnabled)' - message: version is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.version) + || has(self.initProvider.version)' status: description: ServerStatus defines the observed state of Server. properties: diff --git a/package/crds/dbformariadb.azure.upbound.io_virtualnetworkrules.yaml b/package/crds/dbformariadb.azure.upbound.io_virtualnetworkrules.yaml index 30f0bae9a..614d93197 100644 --- a/package/crds/dbformariadb.azure.upbound.io_virtualnetworkrules.yaml +++ b/package/crds/dbformariadb.azure.upbound.io_virtualnetworkrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualnetworkrules.dbformariadb.azure.upbound.io spec: group: dbformariadb.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -305,21 +304,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/dbformysql.azure.upbound.io_activedirectoryadministrators.yaml b/package/crds/dbformysql.azure.upbound.io_activedirectoryadministrators.yaml index b7a1c1817..722de3728 100644 --- a/package/crds/dbformysql.azure.upbound.io_activedirectoryadministrators.yaml +++ b/package/crds/dbformysql.azure.upbound.io_activedirectoryadministrators.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: activedirectoryadministrators.dbformysql.azure.upbound.io spec: group: dbformysql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -237,21 +236,57 @@ spec: description: The Azure Tenant ID type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + login: + description: The login name of the principal to set as the server + administrator + type: string + objectId: + description: The ID of the principal to set as the server administrator. + For a managed identity this should be the Client ID of the identity. + type: string + tenantId: + description: The Azure Tenant ID + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -425,11 +460,17 @@ spec: type: object x-kubernetes-validations: - message: login is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.login) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.login) + || has(self.initProvider.login)' - message: objectId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.objectId) + || has(self.initProvider.objectId)' - message: tenantId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tenantId) + || has(self.initProvider.tenantId)' status: description: ActiveDirectoryAdministratorStatus defines the observed state of ActiveDirectoryAdministrator. diff --git a/package/crds/dbformysql.azure.upbound.io_configurations.yaml b/package/crds/dbformysql.azure.upbound.io_configurations.yaml index 67b899f18..7c5822599 100644 --- a/package/crds/dbformysql.azure.upbound.io_configurations.yaml +++ b/package/crds/dbformysql.azure.upbound.io_configurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: configurations.dbformysql.azure.upbound.io spec: group: dbformysql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -235,21 +234,56 @@ spec: a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: Specifies the name of the MySQL Configuration, which + needs to be a valid MySQL configuration name. Changing this + forces a new resource to be created. + type: string + value: + description: Specifies the value of the MySQL Configuration. See + the MySQL documentation for valid values. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -423,9 +457,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: value is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.value) + || has(self.initProvider.value)' status: description: ConfigurationStatus defines the observed state of Configuration. properties: diff --git a/package/crds/dbformysql.azure.upbound.io_databases.yaml b/package/crds/dbformysql.azure.upbound.io_databases.yaml index 068510f63..1615c81c7 100644 --- a/package/crds/dbformysql.azure.upbound.io_databases.yaml +++ b/package/crds/dbformysql.azure.upbound.io_databases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: databases.dbformysql.azure.upbound.io spec: group: dbformysql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -235,21 +234,56 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + charset: + description: Specifies the Charset for the MySQL Database, which + needs to be a valid MySQL Charset. Changing this forces a new + resource to be created. + type: string + collation: + description: Specifies the Collation for the MySQL Database, which + needs to be a valid MySQL Collation. Changing this forces a + new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -423,9 +457,13 @@ spec: type: object x-kubernetes-validations: - message: charset is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.charset) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.charset) + || has(self.initProvider.charset)' - message: collation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.collation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.collation) + || has(self.initProvider.collation)' status: description: DatabaseStatus defines the observed state of Database. properties: diff --git a/package/crds/dbformysql.azure.upbound.io_firewallrules.yaml b/package/crds/dbformysql.azure.upbound.io_firewallrules.yaml index 5d865dd94..e2a65a356 100644 --- a/package/crds/dbformysql.azure.upbound.io_firewallrules.yaml +++ b/package/crds/dbformysql.azure.upbound.io_firewallrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: firewallrules.dbformysql.azure.upbound.io spec: group: dbformysql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -233,21 +232,54 @@ spec: Firewall Rule. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endIpAddress: + description: Specifies the End IP Address associated with this + Firewall Rule. + type: string + startIpAddress: + description: Specifies the Start IP Address associated with this + Firewall Rule. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -421,9 +453,13 @@ spec: type: object x-kubernetes-validations: - message: endIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endIpAddress) + || has(self.initProvider.endIpAddress)' - message: startIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.startIpAddress) + || has(self.initProvider.startIpAddress)' status: description: FirewallRuleStatus defines the observed state of FirewallRule. properties: diff --git a/package/crds/dbformysql.azure.upbound.io_flexibledatabases.yaml b/package/crds/dbformysql.azure.upbound.io_flexibledatabases.yaml index 5fb8a0eac..bb679eb31 100644 --- a/package/crds/dbformysql.azure.upbound.io_flexibledatabases.yaml +++ b/package/crds/dbformysql.azure.upbound.io_flexibledatabases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: flexibledatabases.dbformysql.azure.upbound.io spec: group: dbformysql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -235,21 +234,56 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + charset: + description: Specifies the Charset for the MySQL Database, which + needs to be a valid MySQL Charset. Changing this forces a new + resource to be created. + type: string + collation: + description: Specifies the Collation for the MySQL Database, which + needs to be a valid MySQL Collation. Changing this forces a + new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -423,9 +457,13 @@ spec: type: object x-kubernetes-validations: - message: charset is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.charset) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.charset) + || has(self.initProvider.charset)' - message: collation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.collation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.collation) + || has(self.initProvider.collation)' status: description: FlexibleDatabaseStatus defines the observed state of FlexibleDatabase. properties: diff --git a/package/crds/dbformysql.azure.upbound.io_flexibleserverconfigurations.yaml b/package/crds/dbformysql.azure.upbound.io_flexibleserverconfigurations.yaml index e822646d3..51a388a40 100644 --- a/package/crds/dbformysql.azure.upbound.io_flexibleserverconfigurations.yaml +++ b/package/crds/dbformysql.azure.upbound.io_flexibleserverconfigurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: flexibleserverconfigurations.dbformysql.azure.upbound.io spec: group: dbformysql.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -233,21 +232,51 @@ spec: Changing this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + value: + description: Specifies the value of the MySQL Flexible Server + Configuration. See the MySQL documentation for valid values. + Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -421,7 +450,9 @@ spec: type: object x-kubernetes-validations: - message: value is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.value) + || has(self.initProvider.value)' status: description: FlexibleServerConfigurationStatus defines the observed state of FlexibleServerConfiguration. diff --git a/package/crds/dbformysql.azure.upbound.io_flexibleserverfirewallrules.yaml b/package/crds/dbformysql.azure.upbound.io_flexibleserverfirewallrules.yaml index d33ca6cbf..1cc69a1fd 100644 --- a/package/crds/dbformysql.azure.upbound.io_flexibleserverfirewallrules.yaml +++ b/package/crds/dbformysql.azure.upbound.io_flexibleserverfirewallrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: flexibleserverfirewallrules.dbformysql.azure.upbound.io spec: group: dbformysql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -235,21 +234,54 @@ spec: Firewall Rule. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endIpAddress: + description: Specifies the End IP Address associated with this + Firewall Rule. + type: string + startIpAddress: + description: Specifies the Start IP Address associated with this + Firewall Rule. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -423,9 +455,13 @@ spec: type: object x-kubernetes-validations: - message: endIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endIpAddress) + || has(self.initProvider.endIpAddress)' - message: startIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.startIpAddress) + || has(self.initProvider.startIpAddress)' status: description: FlexibleServerFirewallRuleStatus defines the observed state of FlexibleServerFirewallRule. diff --git a/package/crds/dbformysql.azure.upbound.io_flexibleservers.yaml b/package/crds/dbformysql.azure.upbound.io_flexibleservers.yaml index 8dc4d1190..2ff51acdb 100644 --- a/package/crds/dbformysql.azure.upbound.io_flexibleservers.yaml +++ b/package/crds/dbformysql.azure.upbound.io_flexibleservers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: flexibleservers.dbformysql.azure.upbound.io spec: group: dbformysql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -223,8 +222,6 @@ spec: standby Flexible Server should be located. Possible values are 1, 2 and 3. type: string - required: - - mode type: object type: array identity: @@ -242,9 +239,6 @@ spec: that should be configured on this MySQL Flexible Server. The only possible value is UserAssigned. type: string - required: - - identityIds - - type type: object type: array location: @@ -482,21 +476,197 @@ spec: and 3. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + administratorLogin: + description: The Administrator login for the MySQL Flexible Server. + Required when create_mode is Default. Changing this forces a + new MySQL Flexible Server to be created. + type: string + backupRetentionDays: + description: The backup retention days for the MySQL Flexible + Server. Possible values are between 1 and 35 days. Defaults + to 7. + type: number + createMode: + description: The creation mode which can be used to restore or + replicate existing servers. Possible values are Default, PointInTimeRestore, + GeoRestore, and Replica. Changing this forces a new MySQL Flexible + Server to be created. + type: string + customerManagedKey: + description: A customer_managed_key block as defined below. + items: + properties: + geoBackupKeyVaultKeyId: + description: The ID of the geo backup Key Vault Key. It + can't cross region and need Customer Managed Key in same + region as geo backup. + type: string + geoBackupUserAssignedIdentityId: + description: The geo backup user managed identity id for + a Customer Managed Key. Should be added with identity_ids. + It can't cross region and need identity in same region + as geo backup. + type: string + keyVaultKeyId: + description: The ID of the Key Vault Key. + type: string + primaryUserAssignedIdentityId: + description: Specifies the primary user managed identity + id for a Customer Managed Key. Should be added with identity_ids. + type: string + type: object + type: array + geoRedundantBackupEnabled: + description: Should geo redundant backup enabled? Defaults to + false. Changing this forces a new MySQL Flexible Server to be + created. + type: boolean + highAvailability: + description: A high_availability block as defined below. + items: + properties: + mode: + description: The high availability mode for the MySQL Flexible + Server. Possibles values are SameZone and ZoneRedundant. + type: string + standbyAvailabilityZone: + description: Specifies the Availability Zone in which the + standby Flexible Server should be located. Possible values + are 1, 2 and 3. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this MySQL Flexible Server. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this MySQL Flexible Server. + The only possible value is UserAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the MySQL Flexible Server + should exist. Changing this forces a new MySQL Flexible Server + to be created. + type: string + maintenanceWindow: + description: A maintenance_window block as defined below. + items: + properties: + dayOfWeek: + description: The day of week for maintenance window. Defaults + to 0. + type: number + startHour: + description: The start hour for maintenance window. Defaults + to 0. + type: number + startMinute: + description: The start minute for maintenance window. Defaults + to 0. + type: number + type: object + type: array + pointInTimeRestoreTimeInUtc: + description: The point in time to restore from creation_source_server_id + when create_mode is PointInTimeRestore. Changing this forces + a new MySQL Flexible Server to be created. + type: string + replicationRole: + description: The replication role. Possible value is None. + type: string + skuName: + description: The SKU Name for the MySQL Flexible Server. + type: string + sourceServerId: + description: The resource ID of the source MySQL Flexible Server + to be restored. Required when create_mode is PointInTimeRestore, + GeoRestore, and Replica. Changing this forces a new MySQL Flexible + Server to be created. + type: string + storage: + description: A storage block as defined below. + items: + properties: + autoGrowEnabled: + description: Should Storage Auto Grow be enabled? Defaults + to true. + type: boolean + iops: + description: The storage IOPS for the MySQL Flexible Server. + Possible values are between 360 and 20000. + type: number + sizeGb: + description: The max storage allowed for the MySQL Flexible + Server. Possible values are between 20 and 16384. + type: number + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + MySQL Flexible Server. + type: object + version: + description: The version of the MySQL Flexible Server to use. + Possible values are 5.7, and 8.0.21. Changing this forces a + new MySQL Flexible Server to be created. + type: string + zone: + description: Specifies the Availability Zone in which this MySQL + Flexible Server should be located. Possible values are 1, 2 + and 3. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -670,7 +840,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: FlexibleServerStatus defines the observed state of FlexibleServer. properties: diff --git a/package/crds/dbformysql.azure.upbound.io_servers.yaml b/package/crds/dbformysql.azure.upbound.io_servers.yaml index 6161aaa3d..1928d3a56 100644 --- a/package/crds/dbformysql.azure.upbound.io_servers.yaml +++ b/package/crds/dbformysql.azure.upbound.io_servers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: servers.dbformysql.azure.upbound.io spec: group: dbformysql.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -130,8 +129,6 @@ spec: that should be configured on this MySQL Server. The only possible value is SystemAssigned. type: string - required: - - type type: object type: array infrastructureEncryptionEnabled: @@ -320,21 +317,180 @@ spec: are 5.7, or 8.0. Changing this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + administratorLogin: + description: The Administrator login for the MySQL Server. Required + when create_mode is Default. Changing this forces a new resource + to be created. + type: string + autoGrowEnabled: + description: Enable/Disable auto-growing of the storage. Storage + auto-grow prevents your server from running out of storage and + becoming read-only. If storage auto grow is enabled, the storage + automatically grows without impacting the workload. The default + value if not explicitly specified is true. + type: boolean + backupRetentionDays: + description: Backup retention days for the server, supported values + are between 7 and 35 days. + type: number + createMode: + description: The creation mode. Can be used to restore or replicate + existing servers. Possible values are Default, Replica, GeoRestore, + and PointInTimeRestore. Defaults to Default. + type: string + creationSourceServerId: + description: For creation modes other than Default, the source + server ID to use. + type: string + geoRedundantBackupEnabled: + description: Turn Geo-redundant server backups on/off. This allows + you to choose between locally redundant or geo-redundant backup + storage in the General Purpose and Memory Optimized tiers. When + the backups are stored in geo-redundant backup storage, they + are not only stored within the region in which your server is + hosted, but are also replicated to a paired data center. This + provides better protection and ability to restore your server + in a different region in the event of a disaster. This is not + supported for the Basic tier. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + type: + description: Specifies the type of Managed Service Identity + that should be configured on this MySQL Server. The only + possible value is SystemAssigned. + type: string + type: object + type: array + infrastructureEncryptionEnabled: + description: Whether or not infrastructure is encrypted for this + server. Changing this forces a new resource to be created. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + publicNetworkAccessEnabled: + description: Whether or not public network access is allowed for + this server. Defaults to true. + type: boolean + restorePointInTime: + description: When create_mode is PointInTimeRestore, specifies + the point in time to restore from creation_source_server_id. + It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z. + type: string + skuName: + description: Specifies the SKU Name for this MySQL Server. The + name of the SKU, follows the tier + family + cores pattern (e.g. + B_Gen4_1, GP_Gen5_8). For more information see the product documentation. + Possible values are B_Gen4_1, B_Gen4_2, B_Gen5_1, B_Gen5_2, + GP_Gen4_2, GP_Gen4_4, GP_Gen4_8, GP_Gen4_16, GP_Gen4_32, GP_Gen5_2, + GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, GP_Gen5_64, MO_Gen5_2, + MO_Gen5_4, MO_Gen5_8, MO_Gen5_16 and MO_Gen5_32. + type: string + sslEnforcementEnabled: + description: Specifies if SSL should be enforced on connections. + Possible values are true and false. + type: boolean + sslMinimalTlsVersionEnforced: + description: The minimum TLS version to support on the sever. + Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, + and TLS1_2. Defaults to TLS1_2. + type: string + storageMb: + description: Max storage allowed for a server. Possible values + are between 5120 MB(5GB) and 1048576 MB(1TB) for the Basic SKU + and between 5120 MB(5GB) and 16777216 MB(16TB) for General Purpose/Memory + Optimized SKUs. For more information see the product documentation. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + threatDetectionPolicy: + description: Threat detection policy configuration, known in the + API as Server Security Alerts Policy. The threat_detection_policy + block supports fields documented below. + items: + properties: + disabledAlerts: + description: Specifies a list of alerts which should be + disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly, Data_Exfiltration and Unsafe_Action. + items: + type: string + type: array + emailAccountAdmins: + description: Should the account administrators be emailed + when this alert is triggered? + type: boolean + emailAddresses: + description: A list of email addresses which alerts should + be sent to. + items: + type: string + type: array + enabled: + description: Is the policy enabled? + type: boolean + retentionDays: + description: Specifies the number of days to keep in the + Threat Detection audit logs. + type: number + storageEndpoint: + description: Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). + This blob storage will hold all Threat Detection audit + logs. + type: string + type: object + type: array + version: + description: Specifies the version of MySQL to use. Valid values + are 5.7, or 8.0. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -508,13 +664,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' - message: sslEnforcementEnabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sslEnforcementEnabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sslEnforcementEnabled) + || has(self.initProvider.sslEnforcementEnabled)' - message: version is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.version) + || has(self.initProvider.version)' status: description: ServerStatus defines the observed state of Server. properties: diff --git a/package/crds/dbformysql.azure.upbound.io_virtualnetworkrules.yaml b/package/crds/dbformysql.azure.upbound.io_virtualnetworkrules.yaml index d5d66f040..ea613dfa7 100644 --- a/package/crds/dbformysql.azure.upbound.io_virtualnetworkrules.yaml +++ b/package/crds/dbformysql.azure.upbound.io_virtualnetworkrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualnetworkrules.dbformysql.azure.upbound.io spec: group: dbformysql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -303,21 +302,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/dbforpostgresql.azure.upbound.io_activedirectoryadministrators.yaml b/package/crds/dbforpostgresql.azure.upbound.io_activedirectoryadministrators.yaml index 7a971ba48..1dcdd3048 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_activedirectoryadministrators.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_activedirectoryadministrators.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: activedirectoryadministrators.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -238,21 +237,57 @@ spec: description: The Azure Tenant ID type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + login: + description: The login name of the principal to set as the server + administrator + type: string + objectId: + description: The ID of the principal to set as the server administrator. + For a managed identity this should be the Client ID of the identity. + type: string + tenantId: + description: The Azure Tenant ID + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -426,11 +461,17 @@ spec: type: object x-kubernetes-validations: - message: login is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.login) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.login) + || has(self.initProvider.login)' - message: objectId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.objectId) + || has(self.initProvider.objectId)' - message: tenantId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tenantId) + || has(self.initProvider.tenantId)' status: description: ActiveDirectoryAdministratorStatus defines the observed state of ActiveDirectoryAdministrator. diff --git a/package/crds/dbforpostgresql.azure.upbound.io_configurations.yaml b/package/crds/dbforpostgresql.azure.upbound.io_configurations.yaml index 32ea95ccc..ea07fe4c6 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_configurations.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_configurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: configurations.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -235,21 +234,56 @@ spec: this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: Specifies the name of the PostgreSQL Configuration, + which needs to be a valid PostgreSQL configuration name. Changing + this forces a new resource to be created. + type: string + value: + description: Specifies the value of the PostgreSQL Configuration. + See the PostgreSQL documentation for valid values. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -423,9 +457,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: value is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.value) + || has(self.initProvider.value)' status: description: ConfigurationStatus defines the observed state of Configuration. properties: diff --git a/package/crds/dbforpostgresql.azure.upbound.io_databases.yaml b/package/crds/dbforpostgresql.azure.upbound.io_databases.yaml index 3e0657a55..138bb7545 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_databases.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_databases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: databases.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -236,21 +235,57 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + charset: + description: Specifies the Charset for the PostgreSQL Database, + which needs to be a valid PostgreSQL Charset. Changing this + forces a new resource to be created. + type: string + collation: + description: Specifies the Collation for the PostgreSQL Database, + which needs to be a valid PostgreSQL Collation. Note that Microsoft + uses different notation - en-US instead of en_US. Changing this + forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -424,9 +459,13 @@ spec: type: object x-kubernetes-validations: - message: charset is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.charset) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.charset) + || has(self.initProvider.charset)' - message: collation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.collation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.collation) + || has(self.initProvider.collation)' status: description: DatabaseStatus defines the observed state of Database. properties: diff --git a/package/crds/dbforpostgresql.azure.upbound.io_firewallrules.yaml b/package/crds/dbforpostgresql.azure.upbound.io_firewallrules.yaml index 0d2d5ae75..7da978f4d 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_firewallrules.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_firewallrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: firewallrules.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -233,21 +232,54 @@ spec: Firewall Rule. Changing this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endIpAddress: + description: Specifies the End IP Address associated with this + Firewall Rule. Changing this forces a new resource to be created. + type: string + startIpAddress: + description: Specifies the Start IP Address associated with this + Firewall Rule. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -421,9 +453,13 @@ spec: type: object x-kubernetes-validations: - message: endIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endIpAddress) + || has(self.initProvider.endIpAddress)' - message: startIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.startIpAddress) + || has(self.initProvider.startIpAddress)' status: description: FirewallRuleStatus defines the observed state of FirewallRule. properties: diff --git a/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverconfigurations.yaml b/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverconfigurations.yaml index d1e1ea611..35e24e7d6 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverconfigurations.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverconfigurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: flexibleserverconfigurations.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,55 @@ spec: See the PostgreSQL documentation for valid values. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: Specifies the name of the PostgreSQL Configuration, + which needs to be a valid PostgreSQL configuration name. Changing + this forces a new resource to be created. + type: string + value: + description: Specifies the value of the PostgreSQL Configuration. + See the PostgreSQL documentation for valid values. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,9 +379,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: value is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.value) + || has(self.initProvider.value)' status: description: FlexibleServerConfigurationStatus defines the observed state of FlexibleServerConfiguration. diff --git a/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverdatabases.yaml b/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverdatabases.yaml index 1b162706f..6708b6a6d 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverdatabases.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverdatabases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: flexibleserverdatabases.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -160,21 +159,58 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + charset: + description: Specifies the Charset for the Azure PostgreSQL Flexible + Server Database, which needs to be a valid PostgreSQL Charset. + Defaults to UTF8. Changing this forces a new Azure PostgreSQL + Flexible Server Database to be created. + type: string + collation: + description: Specifies the Collation for the Azure PostgreSQL + Flexible Server Database, which needs to be a valid PostgreSQL + Collation. Defaults to en_US.utf8. Changing this forces a new + Azure PostgreSQL Flexible Server Database to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverfirewallrules.yaml b/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverfirewallrules.yaml index 73e2f41a1..b8ee354d4 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverfirewallrules.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_flexibleserverfirewallrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: flexibleserverfirewallrules.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -157,21 +156,54 @@ spec: Flexible Server Firewall Rule. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endIpAddress: + description: The End IP Address associated with this PostgreSQL + Flexible Server Firewall Rule. + type: string + startIpAddress: + description: The Start IP Address associated with this PostgreSQL + Flexible Server Firewall Rule. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -345,9 +377,13 @@ spec: type: object x-kubernetes-validations: - message: endIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endIpAddress) + || has(self.initProvider.endIpAddress)' - message: startIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.startIpAddress) + || has(self.initProvider.startIpAddress)' status: description: FlexibleServerFirewallRuleStatus defines the observed state of FlexibleServerFirewallRule. diff --git a/package/crds/dbforpostgresql.azure.upbound.io_flexibleservers.yaml b/package/crds/dbforpostgresql.azure.upbound.io_flexibleservers.yaml index ca603a95e..ecf4c3996 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_flexibleservers.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_flexibleservers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: flexibleservers.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -235,8 +234,6 @@ spec: description: Specifies the Availability Zone in which the standby Flexible Server should be located. type: string - required: - - mode type: object type: array identity: @@ -256,8 +253,6 @@ spec: Server. Should be set to UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array location: @@ -486,21 +481,199 @@ spec: Flexible Server should be located. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + administratorLogin: + description: The Administrator login for the PostgreSQL Flexible + Server. Required when create_mode is Default and authentication.password_auth_enabled + is true. + type: string + authentication: + description: An authentication block as defined below. + items: + properties: + activeDirectoryAuthEnabled: + description: Whether or not Active Directory authentication + is allowed to access the PostgreSQL Flexible Server. Defaults + to false. + type: boolean + passwordAuthEnabled: + description: Whether or not password authentication is allowed + to access the PostgreSQL Flexible Server. Defaults to + true. + type: boolean + tenantId: + description: The Tenant ID of the Azure Active Directory + which is used by the Active Directory authentication. + active_directory_auth_enabled must be set to true. + type: string + type: object + type: array + backupRetentionDays: + description: The backup retention days for the PostgreSQL Flexible + Server. Possible values are between 7 and 35 days. + type: number + createMode: + description: The creation mode which can be used to restore or + replicate existing servers. Possible values are Default, PointInTimeRestore, + Replica and Update. Changing this forces a new PostgreSQL Flexible + Server to be created. + type: string + customerManagedKey: + description: A customer_managed_key block as defined below. Changing + this forces a new resource to be created. + items: + properties: + keyVaultKeyId: + description: The ID of the Key Vault Key. + type: string + primaryUserAssignedIdentityId: + description: Specifies the primary user managed identity + id for a Customer Managed Key. Should be added with identity_ids. + type: string + type: object + type: array + geoRedundantBackupEnabled: + description: Is Geo-Redundant backup enabled on the PostgreSQL + Flexible Server. Defaults to false. Changing this forces a new + PostgreSQL Flexible Server to be created. + type: boolean + highAvailability: + description: A high_availability block as defined below. + items: + properties: + mode: + description: The high availability mode for the PostgreSQL + Flexible Server. Possible value are SameZone or ZoneRedundant. + type: string + standbyAvailabilityZone: + description: Specifies the Availability Zone in which the + standby Flexible Server should be located. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this PostgreSQL Flexible Server. Required + if used together with customer_managed_key block. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this PostgreSQL Flexible + Server. Should be set to UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + location: + description: The Azure Region where the PostgreSQL Flexible Server + should exist. Changing this forces a new PostgreSQL Flexible + Server to be created. + type: string + maintenanceWindow: + description: A maintenance_window block as defined below. + items: + properties: + dayOfWeek: + description: The day of week for maintenance window, where + the week starts on a Sunday, i.e. Sunday = 0, Monday = + 1. Defaults to 0. + type: number + startHour: + description: The start hour for maintenance window. Defaults + to 0. + type: number + startMinute: + description: The start minute for maintenance window. Defaults + to 0. + type: number + type: object + type: array + pointInTimeRestoreTimeInUtc: + description: The point in time to restore from source_server_id + when create_mode is PointInTimeRestore. Changing this forces + a new PostgreSQL Flexible Server to be created. + type: string + replicationRole: + description: The replication role for the PostgreSQL Flexible + Server. Possible value is None. + type: string + skuName: + description: The SKU Name for the PostgreSQL Flexible Server. + The name of the SKU, follows the tier + name pattern (e.g. B_Standard_B1ms, + GP_Standard_D2s_v3, MO_Standard_E4s_v3). + type: string + sourceServerId: + description: The resource ID of the source PostgreSQL Flexible + Server to be restored. Required when create_mode is PointInTimeRestore + or Replica. Changing this forces a new PostgreSQL Flexible Server + to be created. + type: string + storageMb: + description: The max storage allowed for the PostgreSQL Flexible + Server. Possible values are 32768, 65536, 131072, 262144, 524288, + 1048576, 2097152, 4194304, 8388608, and 16777216. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + PostgreSQL Flexible Server. + type: object + version: + description: The version of PostgreSQL Flexible Server to use. + Possible values are 11,12, 13 and 14. Required when create_mode + is Default. Changing this forces a new PostgreSQL Flexible Server + to be created. + type: string + zone: + description: Specifies the Availability Zone in which the PostgreSQL + Flexible Server should be located. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -674,7 +847,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: FlexibleServerStatus defines the observed state of FlexibleServer. properties: diff --git a/package/crds/dbforpostgresql.azure.upbound.io_serverkeys.yaml b/package/crds/dbforpostgresql.azure.upbound.io_serverkeys.yaml index ea3d6049f..1139d2097 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_serverkeys.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_serverkeys.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: serverkeys.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -222,21 +221,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/dbforpostgresql.azure.upbound.io_servers.yaml b/package/crds/dbforpostgresql.azure.upbound.io_servers.yaml index ae046e131..2a9a30780 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_servers.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_servers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: servers.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -132,8 +131,6 @@ spec: that should be configured on this PostgreSQL Server. The only possible value is SystemAssigned. type: string - required: - - type type: object type: array infrastructureEncryptionEnabled: @@ -323,21 +320,182 @@ spec: a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + administratorLogin: + description: The Administrator login for the PostgreSQL Server. + Required when create_mode is Default. Changing this forces a + new resource to be created. + type: string + autoGrowEnabled: + description: Enable/Disable auto-growing of the storage. Storage + auto-grow prevents your server from running out of storage and + becoming read-only. If storage auto grow is enabled, the storage + automatically grows without impacting the workload. The default + value if not explicitly specified is true. + type: boolean + backupRetentionDays: + description: Backup retention days for the server, supported values + are between 7 and 35 days. + type: number + createMode: + description: The creation mode. Can be used to restore or replicate + existing servers. Possible values are Default, Replica, GeoRestore, + and PointInTimeRestore. Defaults to Default. + type: string + creationSourceServerId: + description: For creation modes other than Default, the source + server ID to use. + type: string + geoRedundantBackupEnabled: + description: Turn Geo-redundant server backups on/off. This allows + you to choose between locally redundant or geo-redundant backup + storage in the General Purpose and Memory Optimized tiers. When + the backups are stored in geo-redundant backup storage, they + are not only stored within the region in which your server is + hosted, but are also replicated to a paired data center. This + provides better protection and ability to restore your server + in a different region in the event of a disaster. This is not + support for the Basic tier. Changing this forces a new resource + to be created. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + type: + description: Specifies the type of Managed Service Identity + that should be configured on this PostgreSQL Server. The + only possible value is SystemAssigned. + type: string + type: object + type: array + infrastructureEncryptionEnabled: + description: Whether or not infrastructure is encrypted for this + server. Changing this forces a new resource to be created. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + publicNetworkAccessEnabled: + description: Whether or not public network access is allowed for + this server. Defaults to true. + type: boolean + restorePointInTime: + description: When create_mode is PointInTimeRestore the point + in time to restore from creation_source_server_id. It should + be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z. + type: string + skuName: + description: Specifies the SKU Name for this PostgreSQL Server. + The name of the SKU, follows the tier + family + cores pattern + (e.g. B_Gen4_1, GP_Gen5_8). For more information see the product + documentation. Possible values are B_Gen4_1, B_Gen4_2, B_Gen5_1, + B_Gen5_2, GP_Gen4_2, GP_Gen4_4, GP_Gen4_8, GP_Gen4_16, GP_Gen4_32, + GP_Gen5_2, GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, GP_Gen5_64, + MO_Gen5_2, MO_Gen5_4, MO_Gen5_8, MO_Gen5_16 and MO_Gen5_32. + type: string + sslEnforcementEnabled: + description: Specifies if SSL should be enforced on connections. + Possible values are true and false. + type: boolean + sslMinimalTlsVersionEnforced: + description: The minimum TLS version to support on the sever. + Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, + and TLS1_2. Defaults to TLS1_2. + type: string + storageMb: + description: Max storage allowed for a server. Possible values + are between 5120 MB(5GB) and 1048576 MB(1TB) for the Basic SKU + and between 5120 MB(5GB) and 16777216 MB(16TB) for General Purpose/Memory + Optimized SKUs. For more information see the product documentation. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + threatDetectionPolicy: + description: Threat detection policy configuration, known in the + API as Server Security Alerts Policy. The threat_detection_policy + block supports fields documented below. + items: + properties: + disabledAlerts: + description: Specifies a list of alerts which should be + disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly, Data_Exfiltration and Unsafe_Action. + items: + type: string + type: array + emailAccountAdmins: + description: Should the account administrators be emailed + when this alert is triggered? + type: boolean + emailAddresses: + description: A list of email addresses which alerts should + be sent to. + items: + type: string + type: array + enabled: + description: Is the policy enabled? + type: boolean + retentionDays: + description: Specifies the number of days to keep in the + Threat Detection audit logs. + type: number + storageEndpoint: + description: Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). + This blob storage will hold all Threat Detection audit + logs. + type: string + type: object + type: array + version: + description: Specifies the version of PostgreSQL to use. Valid + values are 9.5, 9.6, 10, 10.0, 10.2 and 11. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -511,13 +669,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' - message: sslEnforcementEnabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sslEnforcementEnabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sslEnforcementEnabled) + || has(self.initProvider.sslEnforcementEnabled)' - message: version is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.version) + || has(self.initProvider.version)' status: description: ServerStatus defines the observed state of Server. properties: diff --git a/package/crds/dbforpostgresql.azure.upbound.io_virtualnetworkrules.yaml b/package/crds/dbforpostgresql.azure.upbound.io_virtualnetworkrules.yaml index 52a45261e..422ebc2bf 100644 --- a/package/crds/dbforpostgresql.azure.upbound.io_virtualnetworkrules.yaml +++ b/package/crds/dbforpostgresql.azure.upbound.io_virtualnetworkrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualnetworkrules.dbforpostgresql.azure.upbound.io spec: group: dbforpostgresql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -307,21 +306,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + ignoreMissingVnetServiceEndpoint: + description: Should the Virtual Network Rule be created before + the Subnet has the Virtual Network Service Endpoint enabled? + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/devices.azure.upbound.io_iothubcertificates.yaml b/package/crds/devices.azure.upbound.io_iothubcertificates.yaml index f386a9f11..620019629 100644 --- a/package/crds/devices.azure.upbound.io_iothubcertificates.yaml +++ b/package/crds/devices.azure.upbound.io_iothubcertificates.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubcertificates.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -247,21 +246,49 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + isVerified: + description: Is the certificate verified? Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -435,7 +462,8 @@ spec: type: object x-kubernetes-validations: - message: certificateContentSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.certificateContentSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.certificateContentSecretRef)' status: description: IOTHubCertificateStatus defines the observed state of IOTHubCertificate. properties: diff --git a/package/crds/devices.azure.upbound.io_iothubconsumergroups.yaml b/package/crds/devices.azure.upbound.io_iothubconsumergroups.yaml index 5e5593393..41759bcf3 100644 --- a/package/crds/devices.azure.upbound.io_iothubconsumergroups.yaml +++ b/package/crds/devices.azure.upbound.io_iothubconsumergroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubconsumergroups.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -231,21 +230,45 @@ spec: required: - eventhubEndpointName type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/devices.azure.upbound.io_iothubdpscertificates.yaml b/package/crds/devices.azure.upbound.io_iothubdpscertificates.yaml index fe19a9ec5..61e2aaa39 100644 --- a/package/crds/devices.azure.upbound.io_iothubdpscertificates.yaml +++ b/package/crds/devices.azure.upbound.io_iothubdpscertificates.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubdpscertificates.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -250,21 +249,51 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + isVerified: + description: Specifies if the certificate is created in verified + state. Defaults to false. Changing this forces a new resource + to be created. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -438,7 +467,8 @@ spec: type: object x-kubernetes-validations: - message: certificateContentSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.certificateContentSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.certificateContentSecretRef)' status: description: IOTHubDPSCertificateStatus defines the observed state of IOTHubDPSCertificate. diff --git a/package/crds/devices.azure.upbound.io_iothubdps.yaml b/package/crds/devices.azure.upbound.io_iothubdpses.yaml similarity index 80% rename from package/crds/devices.azure.upbound.io_iothubdps.yaml rename to package/crds/devices.azure.upbound.io_iothubdpses.yaml index e280a346d..d418b0388 100644 --- a/package/crds/devices.azure.upbound.io_iothubdps.yaml +++ b/package/crds/devices.azure.upbound.io_iothubdpses.yaml @@ -3,9 +3,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null - name: iothubdps.devices.azure.upbound.io + controller-gen.kubebuilder.io/version: v0.12.1 + name: iothubdpses.devices.azure.upbound.io spec: group: devices.azure.upbound.io names: @@ -15,7 +14,7 @@ spec: - azure kind: IOTHubDPS listKind: IOTHubDPSList - plural: iothubdps + plural: iothubdpses singular: iothubdps scope: Cluster versions: @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -96,10 +95,6 @@ spec: description: Target for requests captured by this rule. Possible values are All, DeviceApi and ServiceApi. type: string - required: - - action - - ipMask - - name type: object type: array linkedHub: @@ -137,7 +132,6 @@ spec: type: string required: - connectionStringSecretRef - - location type: object type: array location: @@ -241,9 +235,6 @@ spec: description: The name of the sku. Currently can only be set to S1. type: string - required: - - capacity - - name type: object type: array tags: @@ -252,21 +243,121 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allocationPolicy: + description: The allocation policy of the IoT Device Provisioning + Service (Hashed, GeoLatency or Static). Defaults to Hashed. + type: string + dataResidencyEnabled: + description: Specifies if the IoT Device Provisioning Service + has data residency and disaster recovery enabled. Defaults to + false. Changing this forces a new resource to be created. + type: boolean + ipFilterRule: + description: An ip_filter_rule block as defined below. + items: + properties: + action: + description: The desired action for requests captured by + this rule. Possible values are Accept, Reject + type: string + ipMask: + description: The IP address range in CIDR notation for the + rule. + type: string + name: + description: The name of the filter. + type: string + target: + description: Target for requests captured by this rule. + Possible values are All, DeviceApi and ServiceApi. + type: string + type: object + type: array + linkedHub: + description: A linked_hub block as defined below. + items: + properties: + allocationWeight: + description: The weight applied to the IoT Hub. Defaults + to 1. + type: number + applyAllocationPolicy: + description: Determines whether to apply allocation policies + to the IoT Hub. Defaults to true. + type: boolean + location: + description: The location of the IoT hub. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource has to be created. Changing this forces a new resource + to be created. + type: string + publicNetworkAccessEnabled: + description: Whether requests from Public Network are allowed. + Defaults to true. + type: boolean + sku: + description: A sku block as defined below. + items: + properties: + capacity: + description: The number of provisioned IoT Device Provisioning + Service units. + type: number + name: + description: The name of the sku. Currently can only be + set to S1. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -440,9 +531,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: IOTHubDPSStatus defines the observed state of IOTHubDPS. properties: diff --git a/package/crds/devices.azure.upbound.io_iothubdpssharedaccesspolicies.yaml b/package/crds/devices.azure.upbound.io_iothubdpssharedaccesspolicies.yaml index 61ce2627f..7a5c9aa69 100644 --- a/package/crds/devices.azure.upbound.io_iothubdpssharedaccesspolicies.yaml +++ b/package/crds/devices.azure.upbound.io_iothubdpssharedaccesspolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubdpssharedaccesspolicies.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -249,21 +248,67 @@ spec: Service. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enrollmentRead: + description: Adds EnrollmentRead permission to this Shared Access + Account. It allows read access to enrollment data. + type: boolean + enrollmentWrite: + description: Adds EnrollmentWrite permission to this Shared Access + Account. It allows write access to enrollment data. + type: boolean + registrationRead: + description: Adds RegistrationStatusRead permission to this Shared + Access Account. It allows read access to device registrations. + type: boolean + registrationWrite: + description: Adds RegistrationStatusWrite permission to this Shared + Access Account. It allows write access to device registrations. + type: boolean + serviceConfig: + description: Adds ServiceConfig permission to this Shared Access + Account. It allows configuration of the Device Provisioning + Service. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/devices.azure.upbound.io_iothubendpointeventhubs.yaml b/package/crds/devices.azure.upbound.io_iothubendpointeventhubs.yaml index cacca0af8..5c7463f74 100644 --- a/package/crds/devices.azure.upbound.io_iothubendpointeventhubs.yaml +++ b/package/crds/devices.azure.upbound.io_iothubendpointeventhubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubendpointeventhubs.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -263,21 +262,64 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationType: + description: Type used to authenticate against the Event Hub endpoint. + Possible values are keyBased and identityBased. Defaults to + keyBased. + type: string + endpointUri: + description: URI of the Event Hubs Namespace endpoint. This attribute + can only be specified and is mandatory when authentication_type + is identityBased. + type: string + entityPath: + description: Name of the Event Hub. This attribute can only be + specified and is mandatory when authentication_type is identityBased. + type: string + identityId: + description: ID of the User Managed Identity used to authenticate + against the Event Hub endpoint. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/devices.azure.upbound.io_iothubendpointservicebusqueues.yaml b/package/crds/devices.azure.upbound.io_iothubendpointservicebusqueues.yaml index b1c511fff..82e9b7fe3 100644 --- a/package/crds/devices.azure.upbound.io_iothubendpointservicebusqueues.yaml +++ b/package/crds/devices.azure.upbound.io_iothubendpointservicebusqueues.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubendpointservicebusqueues.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -265,21 +264,65 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationType: + description: Type used to authenticate against the Service Bus + Queue endpoint. Possible values are keyBased and identityBased. + Defaults to keyBased. + type: string + endpointUri: + description: URI of the Service Bus endpoint. This attribute can + only be specified and is mandatory when authentication_type + is identityBased. + type: string + entityPath: + description: Name of the Service Bus Queue. This attribute can + only be specified and is mandatory when authentication_type + is identityBased. + type: string + identityId: + description: ID of the User Managed Identity used to authenticate + against the Service Bus Queue endpoint. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/devices.azure.upbound.io_iothubendpointservicebustopics.yaml b/package/crds/devices.azure.upbound.io_iothubendpointservicebustopics.yaml index 96d8515a6..ff57c2bee 100644 --- a/package/crds/devices.azure.upbound.io_iothubendpointservicebustopics.yaml +++ b/package/crds/devices.azure.upbound.io_iothubendpointservicebustopics.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubendpointservicebustopics.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -265,21 +264,65 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationType: + description: Type used to authenticate against the Service Bus + Topic endpoint. Possible values are keyBased and identityBased. + Defaults to keyBased. + type: string + endpointUri: + description: URI of the Service Bus endpoint. This attribute can + only be specified and is mandatory when authentication_type + is identityBased. + type: string + entityPath: + description: Name of the Service Bus Topic. This attribute can + only be specified and is mandatory when authentication_type + is identityBased. + type: string + identityId: + description: ID of the User Managed Identity used to authenticate + against the Service Bus Topic endpoint. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/devices.azure.upbound.io_iothubendpointstoragecontainers.yaml b/package/crds/devices.azure.upbound.io_iothubendpointstoragecontainers.yaml index 82c61c248..cc08a783e 100644 --- a/package/crds/devices.azure.upbound.io_iothubendpointstoragecontainers.yaml +++ b/package/crds/devices.azure.upbound.io_iothubendpointstoragecontainers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubendpointstoragecontainers.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -357,21 +356,81 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationType: + description: Type used to authenticate against the storage endpoint. + Possible values are keyBased and identityBased. Defaults to + keyBased. + type: string + batchFrequencyInSeconds: + description: Time interval at which blobs are written to storage. + Value should be between 60 and 720 seconds. Default value is + 300 seconds. + type: number + encoding: + description: Encoding that is used to serialize messages to blobs. + Supported values are Avro, AvroDeflate and JSON. Default value + is Avro. Changing this forces a new resource to be created. + type: string + endpointUri: + description: URI of the Storage Container endpoint. This corresponds + to the primary_blob_endpoint of the parent storage account. + This attribute can only be specified and is mandatory when authentication_type + is identityBased. + type: string + fileNameFormat: + description: File name format for the blob. Default format is + {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters + are mandatory but can be reordered. + type: string + identityId: + description: ID of the User Managed Identity used to authenticate + against the storage endpoint. + type: string + maxChunkSizeInBytes: + description: Maximum number of bytes for each blob written to + storage. Value should be between 10485760(10MB) and 524288000(500MB). + Default value is 314572800(300MB). + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/devices.azure.upbound.io_iothubenrichments.yaml b/package/crds/devices.azure.upbound.io_iothubenrichments.yaml index 4aaeb9575..cbdc33014 100644 --- a/package/crds/devices.azure.upbound.io_iothubenrichments.yaml +++ b/package/crds/devices.azure.upbound.io_iothubenrichments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubenrichments.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -240,21 +239,60 @@ spec: or information from the device twin (ex: $twin.tags.latitude)' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endpointNames: + description: The list of endpoints which will be enriched. + items: + type: string + type: array + key: + description: The key of the enrichment. Changing this forces a + new resource to be created. + type: string + value: + description: 'The value of the enrichment. Value can be any static + string, the name of the IoT hub sending the message (use $iothubname) + or information from the device twin (ex: $twin.tags.latitude)' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -428,11 +466,17 @@ spec: type: object x-kubernetes-validations: - message: endpointNames is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endpointNames) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endpointNames) + || has(self.initProvider.endpointNames)' - message: key is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.key) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.key) + || has(self.initProvider.key)' - message: value is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.value) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.value) + || has(self.initProvider.value)' status: description: IOTHubEnrichmentStatus defines the observed state of IOTHubEnrichment. properties: diff --git a/package/crds/devices.azure.upbound.io_iothubfallbackroutes.yaml b/package/crds/devices.azure.upbound.io_iothubfallbackroutes.yaml index 6846d9cd1..ada64b335 100644 --- a/package/crds/devices.azure.upbound.io_iothubfallbackroutes.yaml +++ b/package/crds/devices.azure.upbound.io_iothubfallbackroutes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubfallbackroutes.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -324,21 +323,60 @@ spec: Invalid, TwinChangeEvents.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + condition: + description: 'The condition that is evaluated to apply the routing + rule. If no condition is provided, it evaluates to true by default. + For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.' + type: string + enabled: + description: Used to specify whether the fallback route is enabled. + type: boolean + source: + description: 'The source that the routing rule is to be applied + to. Possible values include: DeviceConnectionStateEvents, DeviceJobLifecycleEvents, + DeviceLifecycleEvents, DeviceMessages, DigitalTwinChangeEvents, + Invalid, TwinChangeEvents.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -512,7 +550,9 @@ spec: type: object x-kubernetes-validations: - message: enabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.enabled) + || has(self.initProvider.enabled)' status: description: IOTHubFallbackRouteStatus defines the observed state of IOTHubFallbackRoute. properties: diff --git a/package/crds/devices.azure.upbound.io_iothubroutes.yaml b/package/crds/devices.azure.upbound.io_iothubroutes.yaml index 8384eb3a4..a49bfe3cf 100644 --- a/package/crds/devices.azure.upbound.io_iothubroutes.yaml +++ b/package/crds/devices.azure.upbound.io_iothubroutes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubroutes.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -246,21 +245,66 @@ spec: Invalid, TwinChangeEvents.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + condition: + description: 'The condition that is evaluated to apply the routing + rule. If no condition is provided, it evaluates to true by default. + For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.' + type: string + enabled: + description: Specifies whether a route is enabled. + type: boolean + endpointNames: + description: The list of endpoints to which messages that satisfy + the condition are routed. Currently only one endpoint is allowed. + items: + type: string + type: array + source: + description: 'The source that the routing rule is to be applied + to. Possible values include: DeviceConnectionStateEvents, DeviceJobLifecycleEvents, + DeviceLifecycleEvents, DeviceMessages, DigitalTwinChangeEvents, + Invalid, TwinChangeEvents.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -434,11 +478,17 @@ spec: type: object x-kubernetes-validations: - message: enabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.enabled) + || has(self.initProvider.enabled)' - message: endpointNames is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endpointNames) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endpointNames) + || has(self.initProvider.endpointNames)' - message: source is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.source) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.source) + || has(self.initProvider.source)' status: description: IOTHubRouteStatus defines the observed state of IOTHubRoute. properties: diff --git a/package/crds/devices.azure.upbound.io_iothubs.yaml b/package/crds/devices.azure.upbound.io_iothubs.yaml index ded53231c..f7b74071e 100644 --- a/package/crds/devices.azure.upbound.io_iothubs.yaml +++ b/package/crds/devices.azure.upbound.io_iothubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubs.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -180,7 +179,6 @@ spec: type: string required: - connectionStringSecretRef - - containerName type: object type: array identity: @@ -199,8 +197,6 @@ spec: are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array location: @@ -243,9 +239,6 @@ spec: description: The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3. type: string - required: - - ipMask - - name type: object type: array type: object @@ -344,9 +337,6 @@ spec: description: The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3. type: string - required: - - capacity - - name type: object type: array tags: @@ -355,21 +345,224 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + cloudToDevice: + description: A cloud_to_device block as defined below. + items: + properties: + defaultTtl: + description: The default time to live for cloud-to-device + messages, specified as an ISO 8601 timespan duration. + This value must be between 1 minute and 48 hours. Defaults + to PT1H. + type: string + feedback: + description: A feedback block as defined below. + items: + properties: + lockDuration: + description: The lock duration for the file upload + notifications queue, specified as an ISO 8601 timespan + duration. This value must be between 5 and 300 seconds. + Defaults to PT1M. + type: string + maxDeliveryCount: + description: The number of times the IoT Hub attempts + to deliver a file upload notification message. Defaults + to 10. + type: number + timeToLive: + description: The retention time for service-bound + feedback messages, specified as an ISO 8601 timespan + duration. This value must be between 1 minute and + 48 hours. Defaults to PT1H. + type: string + type: object + type: array + maxDeliveryCount: + description: The maximum delivery count for cloud-to-device + per-device queues. This value must be between 1 and 100. + Defaults to 10. + type: number + type: object + type: array + eventHubPartitionCount: + description: The number of device-to-cloud partitions used by + backing event hubs. Must be between 2 and 128. + type: number + eventHubRetentionInDays: + description: The event hub retention to use in days. Must be between + 1 and 7. + type: number + fileUpload: + description: A file_upload block as defined below. + items: + properties: + authenticationType: + description: The type used to authenticate against the storage + account. Possible values are keyBased and identityBased. + Defaults to keyBased. + type: string + containerName: + description: The name of the root container where the files + should be uploaded to. The container need not exist but + should be creatable using the connection_string specified. + type: string + defaultTtl: + description: The period of time for which a file upload + notification message is available to consume before it + expires, specified as an ISO 8601 timespan duration. This + value must be between 1 minute and 48 hours. Defaults + to PT1H. + type: string + identityId: + description: The ID of the User Managed Identity used to + authenticate against the storage account. + type: string + lockDuration: + description: The lock duration for the file upload notifications + queue, specified as an ISO 8601 timespan duration. This + value must be between 5 and 300 seconds. Defaults to PT1M. + type: string + maxDeliveryCount: + description: The number of times the IoT Hub attempts to + deliver a file upload notification message. Defaults to + 10. + type: number + notifications: + description: Used to specify whether file notifications + are sent to IoT Hub on upload. Defaults to false. + type: boolean + sasTtl: + description: The period of time for which the SAS URI generated + by IoT Hub for file upload is valid, specified as an ISO + 8601 timespan duration. This value must be between 1 minute + and 24 hours. Defaults to PT1H. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this IoT Hub. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this IoT Hub. Possible values + are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned + (to enable both). + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource has to be created. Changing this forces a new resource + to be created. + type: string + minTlsVersion: + description: Specifies the minimum TLS version to support for + this hub. The only valid value is 1.2. Changing this forces + a new resource to be created. + type: string + networkRuleSet: + description: A network_rule_set block as defined below. + items: + properties: + applyToBuiltinEventhubEndpoint: + description: Determines if Network Rule Set is also applied + to the BuiltIn EventHub EndPoint of the IotHub. Defaults + to false. + type: boolean + defaultAction: + description: Default Action for Network Rule Set. Possible + values are Deny, Allow. Defaults to Deny. + type: string + ipRule: + description: One or more ip_rule blocks as defined below. + items: + properties: + action: + description: The desired action for requests captured + by this rule. Possible values are Allow. Defaults + to Allow. + type: string + ipMask: + description: The IP address range in CIDR notation + for the IP rule. + type: string + name: + description: The name of the sku. Possible values + are B1, B2, B3, F1, S1, S2, and S3. + type: string + type: object + type: array + type: object + type: array + publicNetworkAccessEnabled: + description: Is the IotHub resource accessible from a public network? + type: boolean + sku: + description: A sku block as defined below. + items: + properties: + capacity: + description: The number of provisioned IoT Hub units. + type: number + name: + description: The name of the sku. Possible values are B1, + B2, B3, F1, S1, S2, and S3. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -543,9 +736,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: IOTHubStatus defines the observed state of IOTHub. properties: diff --git a/package/crds/devices.azure.upbound.io_iothubsharedaccesspolicies.yaml b/package/crds/devices.azure.upbound.io_iothubsharedaccesspolicies.yaml index b681d031f..6af6f62be 100644 --- a/package/crds/devices.azure.upbound.io_iothubsharedaccesspolicies.yaml +++ b/package/crds/devices.azure.upbound.io_iothubsharedaccesspolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubsharedaccesspolicies.devices.azure.upbound.io spec: group: devices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -244,21 +243,63 @@ spec: Account. It allows sending and receiving on the cloud-side endpoints. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + deviceConnect: + description: Adds DeviceConnect permission to this Shared Access + Account. It allows sending and receiving on the device-side + endpoints. + type: boolean + registryRead: + description: Adds RegistryRead permission to this Shared Access + Account. It allows read access to the identity registry. + type: boolean + registryWrite: + description: Adds RegistryWrite permission to this Shared Access + Account. It allows write access to the identity registry. + type: boolean + serviceConnect: + description: Adds ServiceConnect permission to this Shared Access + Account. It allows sending and receiving on the cloud-side endpoints. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/deviceupdate.azure.upbound.io_iothubdeviceupdateaccounts.yaml b/package/crds/deviceupdate.azure.upbound.io_iothubdeviceupdateaccounts.yaml index efb184e46..9726e44fb 100644 --- a/package/crds/deviceupdate.azure.upbound.io_iothubdeviceupdateaccounts.yaml +++ b/package/crds/deviceupdate.azure.upbound.io_iothubdeviceupdateaccounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubdeviceupdateaccounts.deviceupdate.azure.upbound.io spec: group: deviceupdate.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -85,8 +84,6 @@ spec: Account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array location: @@ -190,21 +187,84 @@ spec: IoT Hub Device Update Account. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this IoT Hub Device Update Account. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this IoT Hub Device Update + Account. Possible values are SystemAssigned, UserAssigned + and SystemAssigned, UserAssigned (to enable both). + type: string + type: object + type: array + location: + description: Specifies the Azure Region where the IoT Hub Device + Update Account should exist. Changing this forces a new resource + to be created. + type: string + publicNetworkAccessEnabled: + description: Specifies whether the public network access is enabled + for the IoT Hub Device Update Account. Possible values are true + and false. Defaults to true. + type: boolean + sku: + description: Sku of the IoT Hub Device Update Account. Possible + values are Free and Standard. Defaults to Standard. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + IoT Hub Device Update Account. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -378,7 +438,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: IOTHubDeviceUpdateAccountStatus defines the observed state of IOTHubDeviceUpdateAccount. diff --git a/package/crds/deviceupdate.azure.upbound.io_iothubdeviceupdateinstances.yaml b/package/crds/deviceupdate.azure.upbound.io_iothubdeviceupdateinstances.yaml index 11e80c672..8b72a22be 100644 --- a/package/crds/deviceupdate.azure.upbound.io_iothubdeviceupdateinstances.yaml +++ b/package/crds/deviceupdate.azure.upbound.io_iothubdeviceupdateinstances.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubdeviceupdateinstances.deviceupdate.azure.upbound.io spec: group: deviceupdate.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -345,21 +344,61 @@ spec: IoT Hub Device Update Instance. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + diagnosticEnabled: + description: Whether the diagnostic log collection is enabled. + Possible values are true and false. Defaults to false. + type: boolean + diagnosticStorageAccount: + description: A diagnostic_storage_account block as defined below. + items: + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + IoT Hub Device Update Instance. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/devtestlab.azure.upbound.io_globalvmshutdownschedules.yaml b/package/crds/devtestlab.azure.upbound.io_globalvmshutdownschedules.yaml index 4e4303c22..74c776fe5 100644 --- a/package/crds/devtestlab.azure.upbound.io_globalvmshutdownschedules.yaml +++ b/package/crds/devtestlab.azure.upbound.io_globalvmshutdownschedules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: globalvmshutdownschedules.devtestlab.azure.upbound.io spec: group: devtestlab.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -105,8 +104,6 @@ spec: description: The webhook URL to which the notification will be sent. type: string - required: - - enabled type: object type: array tags: @@ -198,21 +195,92 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dailyRecurrenceTime: + description: The time each day when the schedule takes effect. + Must match the format HHmm where HH is 00-23 and mm is 00-59 + (e.g. 0930, 2300, etc.) + type: string + enabled: + description: Whether to enable the schedule. Possible values are + true and false. Defaults to true. + type: boolean + location: + description: The location where the schedule is created. Changing + this forces a new resource to be created. + type: string + notificationSettings: + description: The notification setting of a schedule. A notification_settings + as defined below. + items: + properties: + email: + description: E-mail address to which the notification will + be sent. + type: string + enabled: + description: Whether to enable pre-shutdown notifications. + Possible values are true and false. + type: boolean + timeInMinutes: + description: Time in minutes between 15 and 120 before a + shutdown event at which a notification will be sent. Defaults + to 30. + type: number + webhookUrl: + description: The webhook URL to which the notification will + be sent. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + timezone: + description: The time zone ID (e.g. Pacific Standard time). Refer + to this guide for a full list of accepted time zone names. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -386,13 +454,21 @@ spec: type: object x-kubernetes-validations: - message: dailyRecurrenceTime is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dailyRecurrenceTime) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dailyRecurrenceTime) + || has(self.initProvider.dailyRecurrenceTime)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: notificationSettings is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notificationSettings) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.notificationSettings) + || has(self.initProvider.notificationSettings)' - message: timezone is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timezone) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.timezone) + || has(self.initProvider.timezone)' status: description: GlobalVMShutdownScheduleStatus defines the observed state of GlobalVMShutdownSchedule. diff --git a/package/crds/devtestlab.azure.upbound.io_labs.yaml b/package/crds/devtestlab.azure.upbound.io_labs.yaml index 7dbe458ed..06fc107f4 100644 --- a/package/crds/devtestlab.azure.upbound.io_labs.yaml +++ b/package/crds/devtestlab.azure.upbound.io_labs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: labs.devtestlab.azure.upbound.io spec: group: devtestlab.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -162,21 +161,60 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + Dev Test Lab should exist. Changing this forces a new resource + to be created. + type: string + storageType: + description: The type of storage used by the Dev Test Lab. Possible + values are Standard and Premium. Defaults to Premium. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -350,7 +388,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: LabStatus defines the observed state of Lab. properties: diff --git a/package/crds/devtestlab.azure.upbound.io_linuxvirtualmachines.yaml b/package/crds/devtestlab.azure.upbound.io_linuxvirtualmachines.yaml index 338054964..de564b4f7 100644 --- a/package/crds/devtestlab.azure.upbound.io_linuxvirtualmachines.yaml +++ b/package/crds/devtestlab.azure.upbound.io_linuxvirtualmachines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linuxvirtualmachines.devtestlab.azure.upbound.io spec: group: devtestlab.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -96,11 +95,6 @@ spec: description: The Version of the Gallery Image. Changing this forces a new resource to be created. type: string - required: - - offer - - publisher - - sku - - version type: object type: array inboundNatRule: @@ -116,9 +110,6 @@ spec: description: The Protocol used for this NAT Rule. Possible values are Tcp and Udp. type: string - required: - - backendPort - - protocol type: object type: array labName: @@ -493,21 +484,127 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowClaim: + description: Can this Virtual Machine be claimed by users? Defaults + to true. + type: boolean + disallowPublicIpAddress: + description: Should the Virtual Machine be created without a Public + IP Address? Changing this forces a new resource to be created. + type: boolean + galleryImageReference: + description: A gallery_image_reference block as defined below. + items: + properties: + offer: + description: The Offer of the Gallery Image. Changing this + forces a new resource to be created. + type: string + publisher: + description: The Publisher of the Gallery Image. Changing + this forces a new resource to be created. + type: string + sku: + description: The SKU of the Gallery Image. Changing this + forces a new resource to be created. + type: string + version: + description: The Version of the Gallery Image. Changing + this forces a new resource to be created. + type: string + type: object + type: array + inboundNatRule: + description: One or more inbound_nat_rule blocks as defined below. + Changing this forces a new resource to be created. + items: + properties: + backendPort: + description: The Backend Port associated with this NAT Rule. + Changing this forces a new resource to be created. + type: number + protocol: + description: The Protocol used for this NAT Rule. Possible + values are Tcp and Udp. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + Dev Test Lab exists. Changing this forces a new resource to + be created. + type: string + name: + description: Specifies the name of the Dev Test Machine. Changing + this forces a new resource to be created. + type: string + notes: + description: Any notes about the Virtual Machine. + type: string + size: + description: The Machine Size to use for this Virtual Machine, + such as Standard_F2. Changing this forces a new resource to + be created. + type: string + sshKey: + description: The SSH Key associated with the username used to + login to this Virtual Machine. Changing this forces a new resource + to be created. + type: string + storageType: + description: The type of Storage to use on this Virtual Machine. + Possible values are Standard and Premium. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + username: + description: The Username associated with the local administrator + on this Virtual Machine. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -681,17 +778,29 @@ spec: type: object x-kubernetes-validations: - message: galleryImageReference is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.galleryImageReference) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.galleryImageReference) + || has(self.initProvider.galleryImageReference)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: size is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.size) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.size) + || has(self.initProvider.size)' - message: storageType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageType) + || has(self.initProvider.storageType)' - message: username is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.username) + || has(self.initProvider.username)' status: description: LinuxVirtualMachineStatus defines the observed state of LinuxVirtualMachine. properties: diff --git a/package/crds/devtestlab.azure.upbound.io_policies.yaml b/package/crds/devtestlab.azure.upbound.io_policies.yaml index ad7dd35ef..d7803a55d 100644 --- a/package/crds/devtestlab.azure.upbound.io_policies.yaml +++ b/package/crds/devtestlab.azure.upbound.io_policies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: policies.devtestlab.azure.upbound.io spec: group: devtestlab.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -258,21 +257,77 @@ spec: description: The Threshold for this Policy. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description for the Policy. + type: string + evaluatorType: + description: 'The Evaluation Type used for this Policy. Possible + values include: ''AllowedValuesPolicy'', ''MaxValuePolicy''. + Changing this forces a new resource to be created.' + type: string + factData: + description: The Fact Data for this Policy. + type: string + name: + description: Specifies the name of the Dev Test Policy. Possible + values are GalleryImage, LabPremiumVmCount, LabTargetCost, LabVmCount, + LabVmSize, UserOwnedLabPremiumVmCount, UserOwnedLabVmCount and + UserOwnedLabVmCountInSubnet. Changing this forces a new resource + to be created. + type: string + policySetName: + description: Specifies the name of the Policy Set within the Dev + Test Lab where this policy should be created. Changing this + forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + threshold: + description: The Threshold for this Policy. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -446,13 +501,21 @@ spec: type: object x-kubernetes-validations: - message: evaluatorType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.evaluatorType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.evaluatorType) + || has(self.initProvider.evaluatorType)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: policySetName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policySetName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.policySetName) + || has(self.initProvider.policySetName)' - message: threshold is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.threshold) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.threshold) + || has(self.initProvider.threshold)' status: description: PolicyStatus defines the observed state of Policy. properties: diff --git a/package/crds/devtestlab.azure.upbound.io_schedules.yaml b/package/crds/devtestlab.azure.upbound.io_schedules.yaml index dfadc7c36..3178de06c 100644 --- a/package/crds/devtestlab.azure.upbound.io_schedules.yaml +++ b/package/crds/devtestlab.azure.upbound.io_schedules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: schedules.devtestlab.azure.upbound.io spec: group: devtestlab.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -77,8 +76,6 @@ spec: time: description: The time each day when the schedule takes effect. type: string - required: - - time type: object type: array hourlyRecurrence: @@ -90,8 +87,6 @@ spec: minute: description: Minutes of the hour the schedule will run. type: number - required: - - minute type: object type: array labName: @@ -306,26 +301,128 @@ spec: items: type: string type: array - required: - - time type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dailyRecurrence: + description: The properties of a daily schedule. If the schedule + occurs once each day of the week, specify the daily recurrence. + A daily_recurrence block as defined below. + items: + properties: + time: + description: The time each day when the schedule takes effect. + type: string + type: object + type: array + hourlyRecurrence: + description: The properties of an hourly schedule. If the schedule + occurs multiple times a day, specify the hourly recurrence. + A hourly_recurrence block as defined below. + items: + properties: + minute: + description: Minutes of the hour the schedule will run. + type: number + type: object + type: array + location: + description: The location where the schedule is created. Changing + this forces a new resource to be created. + type: string + notificationSettings: + description: The notification setting of a schedule. A notification_settings + as defined below. + items: + properties: + status: + description: The status of the notification. Possible values + are Enabled and Disabled. Defaults to Disabled + type: string + timeInMinutes: + description: Time in minutes before event at which notification + will be sent. + type: number + webhookUrl: + description: The webhook URL to which the notification will + be sent. + type: string + type: object + type: array + status: + description: The status of this schedule. Possible values are + Enabled and Disabled. Defaults to Disabled. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + taskType: + description: The task type of the schedule. Possible values include + LabVmsShutdownTask and LabVmAutoStart. + type: string + timeZoneId: + description: The time zone ID (e.g. Pacific Standard time). + type: string + weeklyRecurrence: + description: The properties of a weekly schedule. If the schedule + occurs only some days of the week, specify the weekly recurrence. + A weekly_recurrence block as defined below. + items: + properties: + time: + description: The time when the schedule takes effect. + type: string + weekDays: + description: A list of days that this schedule takes effect + . Possible values include Monday, Tuesday, Wednesday, + Thursday, Friday, Saturday and Sunday. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -499,13 +596,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: notificationSettings is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.notificationSettings) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.notificationSettings) + || has(self.initProvider.notificationSettings)' - message: taskType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.taskType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.taskType) + || has(self.initProvider.taskType)' - message: timeZoneId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timeZoneId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.timeZoneId) + || has(self.initProvider.timeZoneId)' status: description: ScheduleStatus defines the observed state of Schedule. properties: diff --git a/package/crds/devtestlab.azure.upbound.io_virtualnetworks.yaml b/package/crds/devtestlab.azure.upbound.io_virtualnetworks.yaml index 1bf91efc2..f925f5e94 100644 --- a/package/crds/devtestlab.azure.upbound.io_virtualnetworks.yaml +++ b/package/crds/devtestlab.azure.upbound.io_virtualnetworks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualnetworks.devtestlab.azure.upbound.io spec: group: devtestlab.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -253,21 +252,72 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description for the Virtual Network. + type: string + name: + description: Specifies the name of the Dev Test Virtual Network. + Changing this forces a new resource to be created. + type: string + subnet: + description: A subnet block as defined below. + items: + properties: + useInVirtualMachineCreation: + description: Can this subnet be used for creating Virtual + Machines? Possible values are Allow, Default and Deny. + type: string + usePublicIpAddress: + description: Can Virtual Machines in this Subnet use Public + IP Addresses? Possible values are Allow, Default and Deny. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -441,7 +491,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: VirtualNetworkStatus defines the observed state of VirtualNetwork. properties: diff --git a/package/crds/devtestlab.azure.upbound.io_windowsvirtualmachines.yaml b/package/crds/devtestlab.azure.upbound.io_windowsvirtualmachines.yaml index 5abbd2313..56e35d291 100644 --- a/package/crds/devtestlab.azure.upbound.io_windowsvirtualmachines.yaml +++ b/package/crds/devtestlab.azure.upbound.io_windowsvirtualmachines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: windowsvirtualmachines.devtestlab.azure.upbound.io spec: group: devtestlab.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -96,11 +95,6 @@ spec: description: The Version of the Gallery Image. Changing this forces a new resource to be created. type: string - required: - - offer - - publisher - - sku - - version type: object type: array inboundNatRule: @@ -116,9 +110,6 @@ spec: description: The Protocol used for this NAT Rule. Possible values are Tcp and Udp. type: string - required: - - backendPort - - protocol type: object type: array labName: @@ -488,21 +479,122 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowClaim: + description: Can this Virtual Machine be claimed by users? Defaults + to true. + type: boolean + disallowPublicIpAddress: + description: Should the Virtual Machine be created without a Public + IP Address? Changing this forces a new resource to be created. + type: boolean + galleryImageReference: + description: A gallery_image_reference block as defined below. + items: + properties: + offer: + description: The Offer of the Gallery Image. Changing this + forces a new resource to be created. + type: string + publisher: + description: The Publisher of the Gallery Image. Changing + this forces a new resource to be created. + type: string + sku: + description: The SKU of the Gallery Image. Changing this + forces a new resource to be created. + type: string + version: + description: The Version of the Gallery Image. Changing + this forces a new resource to be created. + type: string + type: object + type: array + inboundNatRule: + description: One or more inbound_nat_rule blocks as defined below. + Changing this forces a new resource to be created. + items: + properties: + backendPort: + description: The Backend Port associated with this NAT Rule. + Changing this forces a new resource to be created. + type: number + protocol: + description: The Protocol used for this NAT Rule. Possible + values are Tcp and Udp. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + Dev Test Lab exists. Changing this forces a new resource to + be created. + type: string + name: + description: Specifies the name of the Dev Test Machine. Changing + this forces a new resource to be created. + type: string + notes: + description: Any notes about the Virtual Machine. + type: string + size: + description: The Machine Size to use for this Virtual Machine, + such as Standard_F2. Changing this forces a new resource to + be created. + type: string + storageType: + description: The type of Storage to use on this Virtual Machine. + Possible values are Standard and Premium. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + username: + description: The Username associated with the local administrator + on this Virtual Machine. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -676,19 +768,32 @@ spec: type: object x-kubernetes-validations: - message: galleryImageReference is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.galleryImageReference) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.galleryImageReference) + || has(self.initProvider.galleryImageReference)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: passwordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)' - message: size is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.size) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.size) + || has(self.initProvider.size)' - message: storageType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageType) + || has(self.initProvider.storageType)' - message: username is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.username) + || has(self.initProvider.username)' status: description: WindowsVirtualMachineStatus defines the observed state of WindowsVirtualMachine. diff --git a/package/crds/digitaltwins.azure.upbound.io_instances.yaml b/package/crds/digitaltwins.azure.upbound.io_instances.yaml index 56198c0e1..1fe038ca4 100644 --- a/package/crds/digitaltwins.azure.upbound.io_instances.yaml +++ b/package/crds/digitaltwins.azure.upbound.io_instances.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: instances.digitaltwins.azure.upbound.io spec: group: digitaltwins.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -77,8 +76,6 @@ spec: configured on this Digital Twins instance. The only possible value is SystemAssigned. type: string - required: - - type type: object type: array location: @@ -173,21 +170,68 @@ spec: Digital Twins instance. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + identity: + description: An identity block as defined below. + items: + properties: + type: + description: The type of Managed Service Identity that is + configured on this Digital Twins instance. The only possible + value is SystemAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the Digital Twins instance + should exist. Changing this forces a new Digital Twins instance + to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Digital Twins instance. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -361,7 +405,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: InstanceStatus defines the observed state of Instance. properties: diff --git a/package/crds/elastic.azure.upbound.io_cloudelasticsearches.yaml b/package/crds/elastic.azure.upbound.io_cloudelasticsearches.yaml index 8da855ef5..a8a34e182 100644 --- a/package/crds/elastic.azure.upbound.io_cloudelasticsearches.yaml +++ b/package/crds/elastic.azure.upbound.io_cloudelasticsearches.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: cloudelasticsearches.elastic.azure.upbound.io spec: group: elastic.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -100,10 +99,6 @@ spec: description: Specifies the value of the Tag which should be filtered. type: string - required: - - action - - name - - value type: object type: array sendActivityLogs: @@ -216,21 +211,109 @@ spec: Elasticsearch resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + elasticCloudEmailAddress: + description: Specifies the Email Address which should be associated + with this Elasticsearch account. Changing this forces a new + Elasticsearch to be created. + type: string + location: + description: The Azure Region where the Elasticsearch resource + should exist. Changing this forces a new Elasticsearch to be + created. + type: string + logs: + description: A logs block as defined below. + items: + properties: + filteringTag: + description: A list of filtering_tag blocks as defined above. + items: + properties: + action: + description: Specifies the type of action which should + be taken when the Tag matches the name and value. + Possible values are Exclude and Include. + type: string + name: + description: The name which should be used for this + Elasticsearch resource. Changing this forces a new + Elasticsearch to be created. + type: string + value: + description: Specifies the value of the Tag which + should be filtered. + type: string + type: object + type: array + sendActivityLogs: + description: Specifies if the Azure Activity Logs should + be sent to the Elasticsearch cluster. Defaults to false. + type: boolean + sendAzureadLogs: + description: Specifies if the AzureAD Logs should be sent + to the Elasticsearch cluster. Defaults to false. + type: boolean + sendSubscriptionLogs: + description: Specifies if the Azure Subscription Logs should + be sent to the Elasticsearch cluster. Defaults to false. + type: boolean + type: object + type: array + monitoringEnabled: + description: Specifies if the Elasticsearch should have monitoring + configured? Defaults to true. Changing this forces a new Elasticsearch + to be created. + type: boolean + skuName: + description: Specifies the name of the SKU for this Elasticsearch. + Changing this forces a new Elasticsearch to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Elasticsearch resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -404,11 +487,17 @@ spec: type: object x-kubernetes-validations: - message: elasticCloudEmailAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.elasticCloudEmailAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.elasticCloudEmailAddress) + || has(self.initProvider.elasticCloudEmailAddress)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: CloudElasticsearchStatus defines the observed state of CloudElasticsearch. properties: diff --git a/package/crds/eventgrid.azure.upbound.io_domains.yaml b/package/crds/eventgrid.azure.upbound.io_domains.yaml index 45fb33951..74b081011 100644 --- a/package/crds/eventgrid.azure.upbound.io_domains.yaml +++ b/package/crds/eventgrid.azure.upbound.io_domains.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: domains.eventgrid.azure.upbound.io spec: group: eventgrid.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -93,8 +92,6 @@ spec: that should be configured on this Event Grid Domain. Possible values are SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array inboundIpRule: @@ -272,21 +269,168 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoCreateTopicWithFirstSubscription: + description: Whether to create the domain topic when the first + event subscription at the scope of the domain topic is created. + Defaults to true. + type: boolean + autoDeleteTopicWithLastSubscription: + description: Whether to delete the domain topic when the last + event subscription at the scope of the domain topic is deleted. + Defaults to true. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Event Grid Domain. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Event Grid Domain. Possible + values are SystemAssigned, UserAssigned. + type: string + type: object + type: array + inboundIpRule: + description: One or more inbound_ip_rule blocks as defined below. + items: + properties: + action: + description: The action to take when the rule is matched. + Possible values are Allow. + type: string + ipMask: + description: The IP mask (CIDR) to match on. + type: string + type: object + type: array + inputMappingDefaultValues: + description: A input_mapping_default_values block as defined below. + Changing this forces a new resource to be created. + items: + properties: + dataVersion: + description: Specifies the default data version of the EventGrid + Event to associate with the domain. Changing this forces + a new resource to be created. + type: string + eventType: + description: Specifies the default event type of the EventGrid + Event to associate with the domain. Changing this forces + a new resource to be created. + type: string + subject: + description: Specifies the default subject of the EventGrid + Event to associate with the domain. Changing this forces + a new resource to be created. + type: string + type: object + type: array + inputMappingFields: + description: A input_mapping_fields block as defined below. Changing + this forces a new resource to be created. + items: + properties: + dataVersion: + description: Specifies the data version of the EventGrid + Event to associate with the domain. Changing this forces + a new resource to be created. + type: string + eventTime: + description: Specifies the event time of the EventGrid Event + to associate with the domain. Changing this forces a new + resource to be created. + type: string + eventType: + description: Specifies the event type of the EventGrid Event + to associate with the domain. Changing this forces a new + resource to be created. + type: string + id: + description: Specifies the id of the EventGrid Event to + associate with the domain. Changing this forces a new + resource to be created. + type: string + subject: + description: Specifies the subject of the EventGrid Event + to associate with the domain. Changing this forces a new + resource to be created. + type: string + topic: + description: Specifies the topic of the EventGrid Event + to associate with the domain. Changing this forces a new + resource to be created. + type: string + type: object + type: array + inputSchema: + description: Specifies the schema in which incoming events will + be published to this domain. Allowed values are CloudEventSchemaV1_0, + CustomEventSchema, or EventGridSchema. Defaults to eventgridschema. + Changing this forces a new resource to be created. + type: string + localAuthEnabled: + description: Whether local authentication methods is enabled for + the EventGrid Domain. Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + publicNetworkAccessEnabled: + description: Whether or not public network access is allowed for + this server. Defaults to true. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -460,7 +604,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: DomainStatus defines the observed state of Domain. properties: diff --git a/package/crds/eventgrid.azure.upbound.io_domaintopics.yaml b/package/crds/eventgrid.azure.upbound.io_domaintopics.yaml index 63f5cc951..818985efd 100644 --- a/package/crds/eventgrid.azure.upbound.io_domaintopics.yaml +++ b/package/crds/eventgrid.azure.upbound.io_domaintopics.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: domaintopics.eventgrid.azure.upbound.io spec: group: eventgrid.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -225,21 +224,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/eventgrid.azure.upbound.io_eventsubscriptions.yaml b/package/crds/eventgrid.azure.upbound.io_eventsubscriptions.yaml index 50b31b5f1..9ace56c47 100644 --- a/package/crds/eventgrid.azure.upbound.io_eventsubscriptions.yaml +++ b/package/crds/eventgrid.azure.upbound.io_eventsubscriptions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: eventsubscriptions.eventgrid.azure.upbound.io spec: group: eventgrid.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -86,9 +85,6 @@ spec: description: Specifies a single value to compare to when using a single value operator. type: boolean - required: - - key - - value type: object type: array isNotNull: @@ -101,8 +97,6 @@ spec: data that you want to use for filtering. Type of the field can be a number, boolean, or string. type: string - required: - - key type: object type: array isNullOrUndefined: @@ -115,8 +109,6 @@ spec: data that you want to use for filtering. Type of the field can be a number, boolean, or string. type: string - required: - - key type: object type: array numberGreaterThan: @@ -133,9 +125,6 @@ spec: description: Specifies a single value to compare to when using a single value operator. type: number - required: - - key - - value type: object type: array numberGreaterThanOrEquals: @@ -152,9 +141,6 @@ spec: description: Specifies a single value to compare to when using a single value operator. type: number - required: - - key - - value type: object type: array numberIn: @@ -173,9 +159,6 @@ spec: items: type: number type: array - required: - - key - - values type: object type: array numberInRange: @@ -196,9 +179,6 @@ spec: type: number type: array type: array - required: - - key - - values type: object type: array numberLessThan: @@ -215,9 +195,6 @@ spec: description: Specifies a single value to compare to when using a single value operator. type: number - required: - - key - - value type: object type: array numberLessThanOrEquals: @@ -234,9 +211,6 @@ spec: description: Specifies a single value to compare to when using a single value operator. type: number - required: - - key - - value type: object type: array numberNotIn: @@ -255,9 +229,6 @@ spec: items: type: number type: array - required: - - key - - values type: object type: array numberNotInRange: @@ -278,9 +249,6 @@ spec: type: number type: array type: array - required: - - key - - values type: object type: array stringBeginsWith: @@ -299,9 +267,6 @@ spec: items: type: string type: array - required: - - key - - values type: object type: array stringContains: @@ -320,9 +285,6 @@ spec: items: type: string type: array - required: - - key - - values type: object type: array stringEndsWith: @@ -341,9 +303,6 @@ spec: items: type: string type: array - required: - - key - - values type: object type: array stringIn: @@ -362,9 +321,6 @@ spec: items: type: string type: array - required: - - key - - values type: object type: array stringNotBeginsWith: @@ -383,9 +339,6 @@ spec: items: type: string type: array - required: - - key - - values type: object type: array stringNotContains: @@ -404,9 +357,6 @@ spec: items: type: string type: array - required: - - key - - values type: object type: array stringNotEndsWith: @@ -425,9 +375,6 @@ spec: items: type: string type: array - required: - - key - - values type: object type: array stringNotIn: @@ -446,9 +393,6 @@ spec: items: type: string type: array - required: - - key - - values type: object type: array type: object @@ -473,8 +417,6 @@ spec: preferredBatchSizeInKilobytes: description: Preferred batch size in Kilobytes. type: number - required: - - functionId type: object type: array deadLetterIdentity: @@ -489,8 +431,6 @@ spec: userAssignedIdentity: description: The user identity associated with the resource. type: string - required: - - type type: object type: array deliveryIdentity: @@ -505,8 +445,6 @@ spec: userAssignedIdentity: description: The user identity associated with the resource. type: string - required: - - type type: object type: array deliveryProperty: @@ -547,9 +485,6 @@ spec: - name - namespace type: object - required: - - headerName - - type type: object type: array eventDeliverySchema: @@ -596,9 +531,6 @@ spec: description: Specifies the maximum number of delivery retry attempts for events. type: number - required: - - eventTimeToLive - - maxDeliveryAttempts type: object type: array scope: @@ -700,9 +632,6 @@ spec: description: Specifies the name of the Storage blob container that is the destination of the deadletter events. type: string - required: - - storageAccountId - - storageBlobContainerName type: object type: array storageQueueEndpoint: @@ -920,26 +849,571 @@ spec: description: Specifies the url of the webhook where the Event Subscription will receive events. type: string - required: - - url type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + advancedFilter: + description: A advanced_filter block as defined below. + items: + properties: + boolEquals: + description: Compares a value of an event using a single + boolean value. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + value: + description: Specifies a single value to compare to + when using a single value operator. + type: boolean + type: object + type: array + isNotNull: + description: Evaluates if a value of an event isn't NULL + or undefined. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + type: object + type: array + isNullOrUndefined: + description: Evaluates if a value of an event is NULL or + undefined. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + type: object + type: array + numberGreaterThan: + description: Compares a value of an event using a single + floating point number. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + value: + description: Specifies a single value to compare to + when using a single value operator. + type: number + type: object + type: array + numberGreaterThanOrEquals: + description: Compares a value of an event using a single + floating point number. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + value: + description: Specifies a single value to compare to + when using a single value operator. + type: number + type: object + type: array + numberIn: + description: Compares a value of an event using multiple + floating point numbers. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + type: number + type: array + type: object + type: array + numberInRange: + description: Compares a value of an event using multiple + floating point number ranges. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + items: + type: number + type: array + type: array + type: object + type: array + numberLessThan: + description: Compares a value of an event using a single + floating point number. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + value: + description: Specifies a single value to compare to + when using a single value operator. + type: number + type: object + type: array + numberLessThanOrEquals: + description: Compares a value of an event using a single + floating point number. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + value: + description: Specifies a single value to compare to + when using a single value operator. + type: number + type: object + type: array + numberNotIn: + description: Compares a value of an event using multiple + floating point numbers. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + type: number + type: array + type: object + type: array + numberNotInRange: + description: Compares a value of an event using multiple + floating point number ranges. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + items: + type: number + type: array + type: array + type: object + type: array + stringBeginsWith: + description: Compares a value of an event using multiple + string values. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + type: string + type: array + type: object + type: array + stringContains: + description: Compares a value of an event using multiple + string values. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + type: string + type: array + type: object + type: array + stringEndsWith: + description: Compares a value of an event using multiple + string values. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + type: string + type: array + type: object + type: array + stringIn: + description: Compares a value of an event using multiple + string values. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + type: string + type: array + type: object + type: array + stringNotBeginsWith: + description: Compares a value of an event using multiple + string values. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + type: string + type: array + type: object + type: array + stringNotContains: + description: Compares a value of an event using multiple + string values. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + type: string + type: array + type: object + type: array + stringNotEndsWith: + description: Compares a value of an event using multiple + string values. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + type: string + type: array + type: object + type: array + stringNotIn: + description: Compares a value of an event using multiple + string values. + items: + properties: + key: + description: Specifies the field within the event + data that you want to use for filtering. Type of + the field can be a number, boolean, or string. + type: string + values: + description: Specifies an array of values to compare + to when using a multiple values operator. + items: + type: string + type: array + type: object + type: array + type: object + type: array + advancedFilteringOnArraysEnabled: + description: Specifies whether advanced filters should be evaluated + against an array of values instead of expecting a singular value. + Defaults to false. + type: boolean + azureFunctionEndpoint: + description: An azure_function_endpoint block as defined below. + items: + properties: + functionId: + description: Specifies the ID of the Function where the + Event Subscription will receive events. This must be the + functions ID in format {function_app.id}/functions/{name}. + type: string + maxEventsPerBatch: + description: Maximum number of events per batch. + type: number + preferredBatchSizeInKilobytes: + description: Preferred batch size in Kilobytes. + type: number + type: object + type: array + deadLetterIdentity: + description: A dead_letter_identity block as defined below. + items: + properties: + type: + description: Specifies the type of Managed Service Identity + that is used for dead lettering. Allowed value is SystemAssigned, + UserAssigned. + type: string + userAssignedIdentity: + description: The user identity associated with the resource. + type: string + type: object + type: array + deliveryIdentity: + description: A delivery_identity block as defined below. + items: + properties: + type: + description: Specifies the type of Managed Service Identity + that is used for event delivery. Allowed value is SystemAssigned, + UserAssigned. + type: string + userAssignedIdentity: + description: The user identity associated with the resource. + type: string + type: object + type: array + deliveryProperty: + description: One or more delivery_property blocks as defined below. + items: + properties: + headerName: + description: The name of the header to send on to the destination + type: string + secret: + description: True if the value is a secret and should be + protected, otherwise false. If True, then this value won't + be returned from Azure API calls + type: boolean + sourceField: + description: If the type is Dynamic, then provide the payload + field to be used as the value. Valid source fields differ + by subscription type. + type: string + type: + description: Either Static or Dynamic + type: string + type: object + type: array + eventDeliverySchema: + description: 'Specifies the event delivery schema for the event + subscription. Possible values include: EventGridSchema, CloudEventSchemaV1_0, + CustomInputSchema. Defaults to EventGridSchema. Changing this + forces a new resource to be created.' + type: string + eventhubEndpointId: + description: Specifies the id where the Event Hub is located. + type: string + expirationTimeUtc: + description: Specifies the expiration time of the event subscription + (Datetime Format RFC 3339). + type: string + hybridConnectionEndpointId: + description: Specifies the id where the Hybrid Connection is located. + type: string + includedEventTypes: + description: A list of applicable event types that need to be + part of the event subscription. + items: + type: string + type: array + labels: + description: A list of labels to assign to the event subscription. + items: + type: string + type: array + name: + description: Specifies the name of the EventGrid Event Subscription + resource. Changing this forces a new resource to be created. + type: string + retryPolicy: + description: A retry_policy block as defined below. + items: + properties: + eventTimeToLive: + description: Specifies the time to live (in minutes) for + events. Supported range is 1 to 1440. See official documentation + for more details. + type: number + maxDeliveryAttempts: + description: Specifies the maximum number of delivery retry + attempts for events. + type: number + type: object + type: array + serviceBusQueueEndpointId: + description: Specifies the id where the Service Bus Queue is located. + type: string + serviceBusTopicEndpointId: + description: Specifies the id where the Service Bus Topic is located. + type: string + storageBlobDeadLetterDestination: + description: A storage_blob_dead_letter_destination block as defined + below. + items: + properties: + storageAccountId: + description: Specifies the id of the storage account id + where the storage blob is located. + type: string + storageBlobContainerName: + description: Specifies the name of the Storage blob container + that is the destination of the deadletter events. + type: string + type: object + type: array + storageQueueEndpoint: + description: A storage_queue_endpoint block as defined below. + items: + properties: + queueMessageTimeToLiveInSeconds: + description: Storage queue message time to live in seconds. + type: number + type: object + type: array + subjectFilter: + description: A subject_filter block as defined below. + items: + properties: + caseSensitive: + description: Specifies if subject_begins_with and subject_ends_with + case sensitive. This value + type: boolean + subjectBeginsWith: + description: A string to filter events for an event subscription + based on a resource path prefix. + type: string + subjectEndsWith: + description: A string to filter events for an event subscription + based on a resource path suffix. + type: string + type: object + type: array + webhookEndpoint: + description: A webhook_endpoint block as defined below. + items: + properties: + activeDirectoryAppIdOrUri: + description: The Azure Active Directory Application ID or + URI to get the access token that will be included as the + bearer token in delivery requests. + type: string + activeDirectoryTenantId: + description: The Azure Active Directory Tenant ID to get + the access token that will be included as the bearer token + in delivery requests. + type: string + maxEventsPerBatch: + description: Maximum number of events per batch. + type: number + preferredBatchSizeInKilobytes: + description: Preferred batch size in Kilobytes. + type: number + url: + description: Specifies the url of the webhook where the + Event Subscription will receive events. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1113,7 +1587,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: EventSubscriptionStatus defines the observed state of EventSubscription. properties: diff --git a/package/crds/eventgrid.azure.upbound.io_systemtopics.yaml b/package/crds/eventgrid.azure.upbound.io_systemtopics.yaml index b18ea9939..fa790a9d7 100644 --- a/package/crds/eventgrid.azure.upbound.io_systemtopics.yaml +++ b/package/crds/eventgrid.azure.upbound.io_systemtopics.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: systemtopics.eventgrid.azure.upbound.io spec: group: eventgrid.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -83,8 +82,6 @@ spec: that should be configured on this Event Grid System Topic. Possible values are SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array location: @@ -269,21 +266,87 @@ spec: this forces a new Event Grid System Topic to be created.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Event Grid System Topic. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Event Grid System Topic. + Possible values are SystemAssigned, UserAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the Event Grid System Topic + should exist. Changing this forces a new Event Grid System Topic + to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Event Grid System Topic. + type: object + topicType: + description: 'The Topic Type of the Event Grid System Topic. The + topic type is validated by Azure and there may be additional + topic types beyond the following: Microsoft.AppConfiguration.ConfigurationStores, + Microsoft.Communication.CommunicationServices, Microsoft.ContainerRegistry.Registries, + Microsoft.Devices.IoTHubs, Microsoft.EventGrid.Domains, Microsoft.EventGrid.Topics, + Microsoft.Eventhub.Namespaces, Microsoft.KeyVault.vaults, Microsoft.MachineLearningServices.Workspaces, + Microsoft.Maps.Accounts, Microsoft.Media.MediaServices, Microsoft.Resources.ResourceGroups, + Microsoft.Resources.Subscriptions, Microsoft.ServiceBus.Namespaces, + Microsoft.SignalRService.SignalR, Microsoft.Storage.StorageAccounts, + Microsoft.Web.ServerFarms and Microsoft.Web.Sites. Changing + this forces a new Event Grid System Topic to be created.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -457,9 +520,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: topicType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.topicType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.topicType) + || has(self.initProvider.topicType)' status: description: SystemTopicStatus defines the observed state of SystemTopic. properties: diff --git a/package/crds/eventgrid.azure.upbound.io_topics.yaml b/package/crds/eventgrid.azure.upbound.io_topics.yaml index b37ef10ea..c688598f8 100644 --- a/package/crds/eventgrid.azure.upbound.io_topics.yaml +++ b/package/crds/eventgrid.azure.upbound.io_topics.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: topics.eventgrid.azure.upbound.io spec: group: eventgrid.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -83,8 +82,6 @@ spec: that should be configured on this Event Grid Topic. Possible values are SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array inboundIpRule: @@ -262,21 +259,158 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Event Grid Topic. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Event Grid Topic. Possible + values are SystemAssigned, UserAssigned. + type: string + type: object + type: array + inboundIpRule: + description: One or more inbound_ip_rule blocks as defined below. + items: + properties: + action: + description: The action to take when the rule is matched. + Possible values are Allow. + type: string + ipMask: + description: The IP mask (CIDR) to match on. + type: string + type: object + type: array + inputMappingDefaultValues: + description: A input_mapping_default_values block as defined below. + Changing this forces a new resource to be created. + items: + properties: + dataVersion: + description: Specifies the default data version of the EventGrid + Event to associate with the domain. Changing this forces + a new resource to be created. + type: string + eventType: + description: Specifies the default event type of the EventGrid + Event to associate with the domain. Changing this forces + a new resource to be created. + type: string + subject: + description: Specifies the default subject of the EventGrid + Event to associate with the domain. Changing this forces + a new resource to be created. + type: string + type: object + type: array + inputMappingFields: + description: A input_mapping_fields block as defined below. Changing + this forces a new resource to be created. + items: + properties: + dataVersion: + description: Specifies the data version of the EventGrid + Event to associate with the domain. Changing this forces + a new resource to be created. + type: string + eventTime: + description: Specifies the event time of the EventGrid Event + to associate with the domain. Changing this forces a new + resource to be created. + type: string + eventType: + description: Specifies the event type of the EventGrid Event + to associate with the domain. Changing this forces a new + resource to be created. + type: string + id: + description: Specifies the id of the EventGrid Event to + associate with the domain. Changing this forces a new + resource to be created. + type: string + subject: + description: Specifies the subject of the EventGrid Event + to associate with the domain. Changing this forces a new + resource to be created. + type: string + topic: + description: Specifies the topic of the EventGrid Event + to associate with the domain. Changing this forces a new + resource to be created. + type: string + type: object + type: array + inputSchema: + description: Specifies the schema in which incoming events will + be published to this domain. Allowed values are CloudEventSchemaV1_0, + CustomEventSchema, or EventGridSchema. Defaults to EventGridSchema. + Changing this forces a new resource to be created. + type: string + localAuthEnabled: + description: Whether local authentication methods is enabled for + the EventGrid Topic. Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + publicNetworkAccessEnabled: + description: Whether or not public network access is allowed for + this server. Defaults to true. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -450,7 +584,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: TopicStatus defines the observed state of Topic. properties: diff --git a/package/crds/eventhub.azure.upbound.io_authorizationrules.yaml b/package/crds/eventhub.azure.upbound.io_authorizationrules.yaml index 36dd16037..01e8b23af 100644 --- a/package/crds/eventhub.azure.upbound.io_authorizationrules.yaml +++ b/package/crds/eventhub.azure.upbound.io_authorizationrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: authorizationrules.eventhub.azure.upbound.io spec: group: eventhub.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -316,21 +315,59 @@ spec: Send to the Event Hub? Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + listen: + description: Does this Authorization Rule have permissions to + Listen to the Event Hub? Defaults to false. + type: boolean + manage: + description: Does this Authorization Rule have permissions to + Manage to the Event Hub? When this property is true - both listen + and send must be too. Defaults to false. + type: boolean + send: + description: Does this Authorization Rule have permissions to + Send to the Event Hub? Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/eventhub.azure.upbound.io_consumergroups.yaml b/package/crds/eventhub.azure.upbound.io_consumergroups.yaml index a79cd5f21..6c0aa7d8f 100644 --- a/package/crds/eventhub.azure.upbound.io_consumergroups.yaml +++ b/package/crds/eventhub.azure.upbound.io_consumergroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: consumergroups.eventhub.azure.upbound.io spec: group: eventhub.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -306,21 +305,49 @@ spec: description: Specifies the user metadata. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + userMetadata: + description: Specifies the user metadata. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/eventhub.azure.upbound.io_eventhubnamespaces.yaml b/package/crds/eventhub.azure.upbound.io_eventhubnamespaces.yaml index b05510ade..f740d1606 100644 --- a/package/crds/eventhub.azure.upbound.io_eventhubnamespaces.yaml +++ b/package/crds/eventhub.azure.upbound.io_eventhubnamespaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: eventhubnamespaces.eventhub.azure.upbound.io spec: group: eventhub.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -97,8 +96,6 @@ spec: that should be configured on this Event Hub Namespace. Possible values are SystemAssigned or UserAssigned. type: string - required: - - type type: object type: array localAuthenticationEnabled: @@ -342,21 +339,155 @@ spec: forces a new resource to be created. Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoInflateEnabled: + description: Is Auto Inflate enabled for the EventHub Namespace? + type: boolean + capacity: + description: Specifies the Capacity / Throughput Units for a Standard + SKU namespace. Default capacity has a maximum of 2, but can + be increased in blocks of 2 on a committed purchase basis. Defaults + to 1. + type: number + dedicatedClusterId: + description: Specifies the ID of the EventHub Dedicated Cluster + where this Namespace should created. Changing this forces a + new resource to be created. + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this EventHub namespace. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Event Hub Namespace. + Possible values are SystemAssigned or UserAssigned. + type: string + type: object + type: array + localAuthenticationEnabled: + description: Is SAS authentication enabled for the EventHub Namespace? + Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + maximumThroughputUnits: + description: Specifies the maximum number of throughput units + when Auto Inflate is Enabled. Valid values range from 1 - 20. + type: number + minimumTlsVersion: + description: 'The minimum supported TLS version for this EventHub + Namespace. Valid values are: 1.0, 1.1 and 1.2. The current default + minimum TLS version is 1.2.' + type: string + networkRulesets: + description: A network_rulesets block as defined below. + items: + properties: + defaultAction: + description: The default action to take when a rule is not + matched. Possible values are Allow and Deny. + type: string + ipRule: + description: One or more ip_rule blocks as defined below. + items: + properties: + action: + description: The action to take when the rule is matched. + Possible values are Allow. + type: string + ipMask: + description: The IP mask to match on. + type: string + type: object + type: array + publicNetworkAccessEnabled: + description: Is public network access enabled for the EventHub + Namespace? Defaults to true. + type: boolean + trustedServiceAccessEnabled: + description: Whether Trusted Microsoft Services are allowed + to bypass firewall. + type: boolean + virtualNetworkRule: + description: One or more virtual_network_rule blocks as + defined below. + items: + properties: + ignoreMissingVirtualNetworkServiceEndpoint: + description: Are missing virtual network service endpoints + ignored? + type: boolean + type: object + type: array + type: object + type: array + publicNetworkAccessEnabled: + description: Is public network access enabled for the EventHub + Namespace? Defaults to true. + type: boolean + sku: + description: Defines which tier to use. Valid options are Basic, + Standard, and Premium. Please note that setting this field to + Premium will force the creation of a new resource. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zoneRedundant: + description: Specifies if the EventHub Namespace should be Zone + Redundant (created across Availability Zones). Changing this + forces a new resource to be created. Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -530,9 +661,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: EventHubNamespaceStatus defines the observed state of EventHubNamespace. properties: diff --git a/package/crds/eventhub.azure.upbound.io_eventhubs.yaml b/package/crds/eventhub.azure.upbound.io_eventhubs.yaml index 022ae67c0..8c2e80f67 100644 --- a/package/crds/eventhub.azure.upbound.io_eventhubs.yaml +++ b/package/crds/eventhub.azure.upbound.io_eventhubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: eventhubs.eventhub.azure.upbound.io spec: group: eventhub.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -94,11 +93,6 @@ spec: description: The ID of the Blob Storage Account where messages should be archived. type: string - required: - - archiveNameFormat - - blobContainerName - - name - - storageAccountId type: object type: array enabled: @@ -124,10 +118,6 @@ spec: if no events occur during the Capture time window. Defaults to false. type: boolean - required: - - destination - - enabled - - encoding type: object type: array messageRetention: @@ -300,21 +290,111 @@ spec: values are Active, Disabled and SendDisabled. Defaults to Active. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + captureDescription: + description: A capture_description block as defined below. + items: + properties: + destination: + description: A destination block as defined below. + items: + properties: + archiveNameFormat: + description: The Blob naming convention for archiving. + e.g. {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. + Here all the parameters (Namespace,EventHub .. etc) + are mandatory irrespective of order + type: string + blobContainerName: + description: The name of the Container within the + Blob Storage Account where messages should be archived. + type: string + name: + description: Specifies the name of the EventHub resource. + Changing this forces a new resource to be created. + type: string + storageAccountId: + description: The ID of the Blob Storage Account where + messages should be archived. + type: string + type: object + type: array + enabled: + description: Specifies if the Capture Description is Enabled. + type: boolean + encoding: + description: Specifies the Encoding used for the Capture + Description. Possible values are Avro and AvroDeflate. + type: string + intervalInSeconds: + description: Specifies the time interval in seconds at which + the capture will happen. Values can be between 60 and + 900 seconds. Defaults to 300 seconds. + type: number + sizeLimitInBytes: + description: Specifies the amount of data built up in your + EventHub before a Capture Operation occurs. Value should + be between 10485760 and 524288000 bytes. Defaults to 314572800 + bytes. + type: number + skipEmptyArchives: + description: Specifies if empty files should not be emitted + if no events occur during the Capture time window. Defaults + to false. + type: boolean + type: object + type: array + messageRetention: + description: Specifies the number of days to retain the events + for this Event Hub. + type: number + partitionCount: + description: Specifies the current number of shards on the Event + Hub. Changing this will force-recreate the resource. + type: number + status: + description: Specifies the status of the Event Hub resource. Possible + values are Active, Disabled and SendDisabled. Defaults to Active. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -488,9 +568,13 @@ spec: type: object x-kubernetes-validations: - message: messageRetention is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.messageRetention) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.messageRetention) + || has(self.initProvider.messageRetention)' - message: partitionCount is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partitionCount) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.partitionCount) + || has(self.initProvider.partitionCount)' status: description: EventHubStatus defines the observed state of EventHub. properties: diff --git a/package/crds/eventhub.azure.upbound.io_namespaceauthorizationrules.yaml b/package/crds/eventhub.azure.upbound.io_namespaceauthorizationrules.yaml index a02b40fb5..e804ea12b 100644 --- a/package/crds/eventhub.azure.upbound.io_namespaceauthorizationrules.yaml +++ b/package/crds/eventhub.azure.upbound.io_namespaceauthorizationrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: namespaceauthorizationrules.eventhub.azure.upbound.io spec: group: eventhub.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -242,21 +241,59 @@ spec: Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + listen: + description: Grants listen access to this this Authorization Rule. + Defaults to false. + type: boolean + manage: + description: Grants manage access to this this Authorization Rule. + When this property is true - both listen and send must be too. + Defaults to false. + type: boolean + send: + description: Grants send access to this this Authorization Rule. + Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/eventhub.azure.upbound.io_namespacedisasterrecoveryconfigs.yaml b/package/crds/eventhub.azure.upbound.io_namespacedisasterrecoveryconfigs.yaml index 287755f1c..1b54f9e4b 100644 --- a/package/crds/eventhub.azure.upbound.io_namespacedisasterrecoveryconfigs.yaml +++ b/package/crds/eventhub.azure.upbound.io_namespacedisasterrecoveryconfigs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: namespacedisasterrecoveryconfigs.eventhub.azure.upbound.io spec: group: eventhub.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -307,21 +306,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/eventhub.azure.upbound.io_namespaceschemagroups.yaml b/package/crds/eventhub.azure.upbound.io_namespaceschemagroups.yaml index e8d2fd733..119d7ef2a 100644 --- a/package/crds/eventhub.azure.upbound.io_namespaceschemagroups.yaml +++ b/package/crds/eventhub.azure.upbound.io_namespaceschemagroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: namespaceschemagroups.eventhub.azure.upbound.io spec: group: eventhub.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,56 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + schemaCompatibility: + description: Specifies the compatibility of this schema group. + Possible values are None, Backward, Forward. Changing this forces + a new resource to be created. + type: string + schemaType: + description: Specifies the Type of this schema group. Possible + values are Avro, Unknown. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,9 +380,13 @@ spec: type: object x-kubernetes-validations: - message: schemaCompatibility is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.schemaCompatibility) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.schemaCompatibility) + || has(self.initProvider.schemaCompatibility)' - message: schemaType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.schemaType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.schemaType) + || has(self.initProvider.schemaType)' status: description: NamespaceSchemaGroupStatus defines the observed state of NamespaceSchemaGroup. diff --git a/package/crds/fluidrelay.azure.upbound.io_servers.yaml b/package/crds/fluidrelay.azure.upbound.io_servers.yaml index 2448933f3..4a394a8ed 100644 --- a/package/crds/fluidrelay.azure.upbound.io_servers.yaml +++ b/package/crds/fluidrelay.azure.upbound.io_servers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: servers.fluidrelay.azure.upbound.io spec: group: fluidrelay.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -84,8 +83,6 @@ spec: Possible values are SystemAssigned,UserAssigned and SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array location: @@ -189,21 +186,84 @@ spec: Fluid Relay Server. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Fluid Relay Service. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Fluid Relay Service. + Possible values are SystemAssigned,UserAssigned and SystemAssigned, + UserAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the Fluid Relay Server should + exist. Changing this forces a new Fluid Relay Server to be created. + type: string + name: + description: The name which should be used for this Fluid Relay + Server. Changing this forces a new Fluid Relay Server to be + created. + type: string + storageSku: + description: Sku of the storage associated with the resource, + Possible values are standard and basic. Changing this forces + a new Fluid Relay Server to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Fluid Relay Server. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -377,9 +437,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ServerStatus defines the observed state of Server. properties: diff --git a/package/crds/guestconfiguration.azure.upbound.io_policyvirtualmachineconfigurationassignments.yaml b/package/crds/guestconfiguration.azure.upbound.io_policyvirtualmachineconfigurationassignments.yaml index 3c15fd086..97f8ee36d 100644 --- a/package/crds/guestconfiguration.azure.upbound.io_policyvirtualmachineconfigurationassignments.yaml +++ b/package/crds/guestconfiguration.azure.upbound.io_policyvirtualmachineconfigurationassignments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: policyvirtualmachineconfigurationassignments.guestconfiguration.azure.upbound.io spec: group: guestconfiguration.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -101,9 +100,6 @@ spec: description: The value to check the configuration parameter with. type: string - required: - - name - - value type: object type: array version: @@ -198,21 +194,90 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + configuration: + description: A configuration block as defined below. + items: + properties: + assignmentType: + description: The assignment type for the Guest Configuration + Assignment. Possible values are Audit, ApplyAndAutoCorrect, + ApplyAndMonitor and DeployAndAutoCorrect. + type: string + contentHash: + description: The content hash for the Guest Configuration + package. + type: string + contentUri: + description: The content URI where the Guest Configuration + package is stored. + type: string + parameter: + description: One or more parameter blocks as defined below + which define what configuration parameters and values + against. + items: + properties: + name: + description: The name of the configuration parameter + to check. + type: string + value: + description: The value to check the configuration + parameter with. + type: string + type: object + type: array + version: + description: The version of the Guest Configuration that + will be assigned in this Guest Configuration Assignment. + type: string + type: object + type: array + location: + description: The Azure location where the Policy Virtual Machine + Configuration Assignment should exist. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -386,9 +451,13 @@ spec: type: object x-kubernetes-validations: - message: configuration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.configuration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.configuration) + || has(self.initProvider.configuration)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: PolicyVirtualMachineConfigurationAssignmentStatus defines the observed state of PolicyVirtualMachineConfigurationAssignment. diff --git a/package/crds/hdinsight.azure.upbound.io_hadoopclusters.yaml b/package/crds/hdinsight.azure.upbound.io_hadoopclusters.yaml index d7054c79f..c61f79a60 100644 --- a/package/crds/hdinsight.azure.upbound.io_hadoopclusters.yaml +++ b/package/crds/hdinsight.azure.upbound.io_hadoopclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: hadoopclusters.hdinsight.azure.upbound.io spec: group: hdinsight.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,8 +81,6 @@ spec: for this HDInsight Hadoop Cluster. Changing this forces a new resource to be created. type: string - required: - - hadoop type: object type: array computeIsolation: @@ -145,7 +142,6 @@ spec: - namespace type: object required: - - logAnalyticsWorkspaceId - primaryKeySecretRef type: object type: array @@ -176,7 +172,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array location: @@ -228,10 +223,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array hive: @@ -274,10 +266,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array oozie: @@ -320,10 +309,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array type: object @@ -355,7 +341,6 @@ spec: - namespace type: object required: - - logAnalyticsWorkspaceId - primaryKeySecretRef type: object type: array @@ -508,9 +493,6 @@ spec: to run during the installation of the edge node. type: string - required: - - name - - uri type: object type: array targetInstanceCount: @@ -535,9 +517,6 @@ spec: to run during the installation of the edge node. type: string - required: - - name - - uri type: object type: array vmSize: @@ -573,10 +552,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - installScriptAction - - targetInstanceCount - - vmSize type: object type: array headNode: @@ -620,9 +595,6 @@ spec: to run during the installation of the edge node. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -761,9 +733,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array workerNode: @@ -788,9 +757,6 @@ spec: nodes to autoscale to based on the cluster's activity. type: number - required: - - maxInstanceCount - - minInstanceCount type: object type: array recurrence: @@ -821,19 +787,12 @@ spec: perform the autoscale in 24hour format. type: string - required: - - days - - targetInstanceCount - - time type: object type: array timezone: description: The time zone for the autoscale schedule times. type: string - required: - - schedule - - timezone type: object type: array type: object @@ -875,9 +834,6 @@ spec: to run during the installation of the edge node. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -1020,10 +976,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - targetInstanceCount - - username - - vmSize type: object type: array zookeeperNode: @@ -1067,9 +1019,6 @@ spec: to run during the installation of the edge node. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -1208,15 +1157,8 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array - required: - - headNode - - workerNode - - zookeeperNode type: object type: array securityProfile: @@ -1274,12 +1216,7 @@ spec: Cluster. Changing this forces a new resource to be created. type: string required: - - aaddsResourceId - - domainName - domainUserPasswordSecretRef - - domainUsername - - ldapsUrls - - msiResourceId type: object type: array storageAccount: @@ -1397,7 +1334,6 @@ spec: forces a new resource to be created. type: string required: - - isDefault - storageAccountKeySecretRef type: object type: array @@ -1423,11 +1359,6 @@ spec: description: The ID of the Storage Account. Changing this forces a new resource to be created. type: string - required: - - filesystemId - - isDefault - - managedIdentityResourceId - - storageResourceId type: object type: array tags: @@ -1447,21 +1378,717 @@ spec: be created. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clusterVersion: + description: Specifies the Version of HDInsights which should + be used for this Cluster. Changing this forces a new resource + to be created. + type: string + componentVersion: + description: A component_version block as defined below. + items: + properties: + hadoop: + description: The version of Hadoop which should be used + for this HDInsight Hadoop Cluster. Changing this forces + a new resource to be created. + type: string + type: object + type: array + computeIsolation: + description: A compute_isolation block as defined below. + items: + properties: + computeIsolationEnabled: + description: This field indicates whether enable compute + isolation or not. Possible values are true or false. + type: boolean + hostSku: + description: The name of the host SKU. + type: string + type: object + type: array + diskEncryption: + description: One or more disk_encryption block as defined below. + items: + properties: + encryptionAlgorithm: + description: This is an algorithm identifier for encryption. + Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + type: string + encryptionAtHostEnabled: + description: This is indicator to show whether resource + disk encryption is enabled. + type: boolean + keyVaultKeyId: + description: The ID of the key vault key. + type: string + keyVaultManagedIdentityId: + description: This is the resource ID of Managed Identity + used to access the key vault. + type: string + type: object + type: array + extension: + description: An extension block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The workspace ID of the log analytics extension. + type: string + type: object + type: array + gateway: + description: A gateway block as defined below. + items: + properties: + username: + description: The username used for the Ambari Portal. Changing + this forces a new resource to be created. + type: string + type: object + type: array + location: + description: Specifies the Azure Region which this HDInsight Hadoop + Cluster should exist. Changing this forces a new resource to + be created. + type: string + metastores: + description: A metastores block as defined below. + items: + properties: + ambari: + description: An ambari block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + hive: + description: A hive block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + oozie: + description: An oozie block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + type: object + type: array + monitor: + description: A monitor block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The Operations Management Suite (OMS) workspace + ID. + type: string + type: object + type: array + network: + description: A network block as defined below. + items: + properties: + connectionDirection: + description: The direction of the resource provider connection. + Possible values include Inbound or Outbound. Defaults + to Inbound. Changing this forces a new resource to be + created. + type: string + privateLinkEnabled: + description: Is the private link enabled? Possible values + include True or False. Defaults to False. Changing this + forces a new resource to be created. + type: boolean + type: object + type: array + roles: + description: A roles block as defined below. + items: + properties: + edgeNode: + description: A edge_node block as defined below. + items: + properties: + httpsEndpoints: + description: The HTTPS Connectivity Endpoint for this + HDInsight Hadoop Cluster. + items: + properties: + accessModes: + description: A list of access modes for the + application. + items: + type: string + type: array + destinationPort: + description: The destination port to connect + to. + type: number + disableGatewayAuth: + description: The value indicates whether the + gateway authentication is enabled or not. + type: boolean + privateIpAddress: + description: The private ip address of the endpoint. + type: string + subDomainSuffix: + description: The application's subdomain suffix. + type: string + type: object + type: array + installScriptAction: + description: A install_script_action block as defined + below. + items: + properties: + name: + description: The name of the uninstall script + action. + type: string + parameters: + description: The parameters for the script. + type: string + uri: + description: The URI pointing to the script + to run during the installation of the edge + node. + type: string + type: object + type: array + targetInstanceCount: + description: The number of instances which should + be run for the Worker Nodes. + type: number + uninstallScriptActions: + description: A uninstall_script_actions block as defined + below. Changing this forces a new resource to be + created. + items: + properties: + name: + description: The name of the uninstall script + action. + type: string + parameters: + description: The parameters for the script. + type: string + uri: + description: The URI pointing to the script + to run during the installation of the edge + node. + type: string + type: object + type: array + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + headNode: + description: A head_node block as defined above. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the uninstall script + action. + type: string + parameters: + description: The parameters for the script. + type: string + uri: + description: The URI pointing to the script + to run during the installation of the edge + node. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + workerNode: + description: A worker_node block as defined below. + items: + properties: + autoscale: + description: A autoscale block as defined below. + items: + properties: + capacity: + description: A capacity block as defined below. + items: + properties: + maxInstanceCount: + description: The maximum number of worker + nodes to autoscale to based on the cluster's + activity. + type: number + minInstanceCount: + description: The minimum number of worker + nodes to autoscale to based on the cluster's + activity. + type: number + type: object + type: array + recurrence: + description: A recurrence block as defined below. + items: + properties: + schedule: + description: A list of schedule blocks + as defined below. + items: + properties: + days: + description: The days of the week + to perform autoscale. Possible + values are Monday, Tuesday, Wednesday, + Thursday, Friday, Saturday and + Sunday. + items: + type: string + type: array + targetInstanceCount: + description: The number of instances + which should be run for the Worker + Nodes. + type: number + time: + description: The time of day to + perform the autoscale in 24hour + format. + type: string + type: object + type: array + timezone: + description: The time zone for the autoscale + schedule times. + type: string + type: object + type: array + type: object + type: array + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the uninstall script + action. + type: string + parameters: + description: The parameters for the script. + type: string + uri: + description: The URI pointing to the script + to run during the installation of the edge + node. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + targetInstanceCount: + description: The number of instances which should + be run for the Worker Nodes. + type: number + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + zookeeperNode: + description: A zookeeper_node block as defined below. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the uninstall script + action. + type: string + parameters: + description: The parameters for the script. + type: string + uri: + description: The URI pointing to the script + to run during the installation of the edge + node. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + type: object + type: array + securityProfile: + description: A security_profile block as defined below. Changing + this forces a new resource to be created. + items: + properties: + aaddsResourceId: + description: The resource ID of the Azure Active Directory + Domain Service. Changing this forces a new resource to + be created. + type: string + clusterUsersGroupDns: + description: A list of the distinguished names for the cluster + user groups. Changing this forces a new resource to be + created. + items: + type: string + type: array + domainName: + description: The name of the Azure Active Directory Domain. + Changing this forces a new resource to be created. + type: string + domainUsername: + description: The username of the Azure Active Directory + Domain. Changing this forces a new resource to be created. + type: string + ldapsUrls: + description: A list of the LDAPS URLs to communicate with + the Azure Active Directory. Changing this forces a new + resource to be created. + items: + type: string + type: array + msiResourceId: + description: The User Assigned Identity for the HDInsight + Cluster. Changing this forces a new resource to be created. + type: string + type: object + type: array + storageAccount: + description: One or more storage_account block as defined below. + items: + properties: + isDefault: + description: Is this the Default Storage Account for the + HDInsight Hadoop Cluster? Changing this forces a new resource + to be created. + type: boolean + storageResourceId: + description: The ID of the Storage Account. Changing this + forces a new resource to be created. + type: string + type: object + type: array + storageAccountGen2: + description: A storage_account_gen2 block as defined below. + items: + properties: + filesystemId: + description: The ID of the Gen2 Filesystem. Changing this + forces a new resource to be created. + type: string + isDefault: + description: Is this the Default Storage Account for the + HDInsight Hadoop Cluster? Changing this forces a new resource + to be created. + type: boolean + managedIdentityResourceId: + description: The ID of Managed Identity to use for accessing + the Gen2 filesystem. Changing this forces a new resource + to be created. + type: string + storageResourceId: + description: The ID of the Storage Account. Changing this + forces a new resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A map of Tags which should be assigned to this HDInsight + Hadoop Cluster. + type: object + tier: + description: Specifies the Tier which should be used for this + HDInsight Hadoop Cluster. Possible values are Standard or Premium. + Changing this forces a new resource to be created. + type: string + tlsMinVersion: + description: The minimal supported TLS version. Possible values + are 1.0, 1.1 or 1.2. Changing this forces a new resource to + be created. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1635,17 +2262,29 @@ spec: type: object x-kubernetes-validations: - message: clusterVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clusterVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clusterVersion) + || has(self.initProvider.clusterVersion)' - message: componentVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.componentVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.componentVersion) + || has(self.initProvider.componentVersion)' - message: gateway is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gateway) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.gateway) + || has(self.initProvider.gateway)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: roles is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roles) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.roles) + || has(self.initProvider.roles)' - message: tier is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tier) + || has(self.initProvider.tier)' status: description: HadoopClusterStatus defines the observed state of HadoopCluster. properties: diff --git a/package/crds/hdinsight.azure.upbound.io_hbaseclusters.yaml b/package/crds/hdinsight.azure.upbound.io_hbaseclusters.yaml index 04e181476..dd00190e2 100644 --- a/package/crds/hdinsight.azure.upbound.io_hbaseclusters.yaml +++ b/package/crds/hdinsight.azure.upbound.io_hbaseclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: hbaseclusters.hdinsight.azure.upbound.io spec: group: hdinsight.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,8 +81,6 @@ spec: this HDInsight HBase Cluster. Changing this forces a new resource to be created. type: string - required: - - hbase type: object type: array computeIsolation: @@ -145,7 +142,6 @@ spec: - namespace type: object required: - - logAnalyticsWorkspaceId - primaryKeySecretRef type: object type: array @@ -176,7 +172,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array location: @@ -228,10 +223,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array hive: @@ -274,10 +266,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array oozie: @@ -320,10 +309,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array type: object @@ -355,7 +341,6 @@ spec: - namespace type: object required: - - logAnalyticsWorkspaceId - primaryKeySecretRef type: object type: array @@ -498,9 +483,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -639,9 +621,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array workerNode: @@ -668,17 +647,10 @@ spec: type: number time: type: string - required: - - days - - targetInstanceCount - - time type: object type: array timezone: type: string - required: - - schedule - - timezone type: object type: array type: object @@ -717,9 +689,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -862,10 +831,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - targetInstanceCount - - username - - vmSize type: object type: array zookeeperNode: @@ -906,9 +871,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -1047,15 +1009,8 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array - required: - - headNode - - workerNode - - zookeeperNode type: object type: array securityProfile: @@ -1113,12 +1068,7 @@ spec: Cluster. Changing this forces a new resource to be created. type: string required: - - aaddsResourceId - - domainName - domainUserPasswordSecretRef - - domainUsername - - ldapsUrls - - msiResourceId type: object type: array storageAccount: @@ -1236,7 +1186,6 @@ spec: forces a new resource to be created. type: string required: - - isDefault - storageAccountKeySecretRef type: object type: array @@ -1262,11 +1211,6 @@ spec: description: The ID of the Storage Account. Changing this forces a new resource to be created. type: string - required: - - filesystemId - - isDefault - - managedIdentityResourceId - - storageResourceId type: object type: array tags: @@ -1286,21 +1230,569 @@ spec: be created. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clusterVersion: + description: Specifies the Version of HDInsights which should + be used for this Cluster. Changing this forces a new resource + to be created. + type: string + componentVersion: + description: A component_version block as defined below. + items: + properties: + hbase: + description: The version of HBase which should be used for + this HDInsight HBase Cluster. Changing this forces a new + resource to be created. + type: string + type: object + type: array + computeIsolation: + description: A compute_isolation block as defined below. + items: + properties: + computeIsolationEnabled: + description: This field indicates whether enable compute + isolation or not. Possible values are true or false. + type: boolean + hostSku: + description: The name of the host SKU. + type: string + type: object + type: array + diskEncryption: + description: One or more disk_encryption block as defined below. + items: + properties: + encryptionAlgorithm: + description: This is an algorithm identifier for encryption. + Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + type: string + encryptionAtHostEnabled: + description: This is indicator to show whether resource + disk encryption is enabled. + type: boolean + keyVaultKeyId: + description: The ID of the key vault key. + type: string + keyVaultManagedIdentityId: + description: This is the resource ID of Managed Identity + used to access the key vault. + type: string + type: object + type: array + extension: + description: An extension block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The workspace ID of the log analytics extension. + type: string + type: object + type: array + gateway: + description: A gateway block as defined below. + items: + properties: + username: + description: The username used for the Ambari Portal. Changing + this forces a new resource to be created. + type: string + type: object + type: array + location: + description: Specifies the Azure Region which this HDInsight HBase + Cluster should exist. Changing this forces a new resource to + be created. + type: string + metastores: + description: A metastores block as defined below. + items: + properties: + ambari: + description: An ambari block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + hive: + description: A hive block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + oozie: + description: An oozie block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + type: object + type: array + monitor: + description: A monitor block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The Operations Management Suite (OMS) workspace + ID. + type: string + type: object + type: array + network: + description: A network block as defined below. + items: + properties: + connectionDirection: + description: The direction of the resource provider connection. + Possible values include Inbound or Outbound. Defaults + to Inbound. Changing this forces a new resource to be + created. + type: string + privateLinkEnabled: + description: Is the private link enabled? Possible values + include True or False. Defaults to False. Changing this + forces a new resource to be created. + type: boolean + type: object + type: array + roles: + description: A roles block as defined below. + items: + properties: + headNode: + description: A head_node block as defined above. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + workerNode: + description: A worker_node block as defined below. + items: + properties: + autoscale: + items: + properties: + recurrence: + items: + properties: + schedule: + items: + properties: + days: + items: + type: string + type: array + targetInstanceCount: + description: The number of instances + which should be run for the Worker + Nodes. + type: number + time: + type: string + type: object + type: array + timezone: + type: string + type: object + type: array + type: object + type: array + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + targetInstanceCount: + description: The number of instances which should + be run for the Worker Nodes. + type: number + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + zookeeperNode: + description: A zookeeper_node block as defined below. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + type: object + type: array + securityProfile: + description: A security_profile block as defined below. Changing + this forces a new resource to be created. + items: + properties: + aaddsResourceId: + description: The resource ID of the Azure Active Directory + Domain Service. Changing this forces a new resource to + be created. + type: string + clusterUsersGroupDns: + description: A list of the distinguished names for the cluster + user groups. Changing this forces a new resource to be + created. + items: + type: string + type: array + domainName: + description: The name of the Azure Active Directory Domain. + Changing this forces a new resource to be created. + type: string + domainUsername: + description: The username of the Azure Active Directory + Domain. Changing this forces a new resource to be created. + type: string + ldapsUrls: + description: A list of the LDAPS URLs to communicate with + the Azure Active Directory. Changing this forces a new + resource to be created. + items: + type: string + type: array + msiResourceId: + description: The User Assigned Identity for the HDInsight + Cluster. Changing this forces a new resource to be created. + type: string + type: object + type: array + storageAccount: + description: One or more storage_account block as defined below. + items: + properties: + isDefault: + description: Is this the Default Storage Account for the + HDInsight Hadoop Cluster? Changing this forces a new resource + to be created. + type: boolean + storageResourceId: + description: The ID of the Storage Account. Changing this + forces a new resource to be created. + type: string + type: object + type: array + storageAccountGen2: + description: A storage_account_gen2 block as defined below. + items: + properties: + filesystemId: + description: The ID of the Gen2 Filesystem. Changing this + forces a new resource to be created. + type: string + isDefault: + description: Is this the Default Storage Account for the + HDInsight Hadoop Cluster? Changing this forces a new resource + to be created. + type: boolean + managedIdentityResourceId: + description: The ID of Managed Identity to use for accessing + the Gen2 filesystem. Changing this forces a new resource + to be created. + type: string + storageResourceId: + description: The ID of the Storage Account. Changing this + forces a new resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A map of Tags which should be assigned to this HDInsight + HBase Cluster. + type: object + tier: + description: Specifies the Tier which should be used for this + HDInsight HBase Cluster. Possible values are Standard or Premium. + Changing this forces a new resource to be created. + type: string + tlsMinVersion: + description: The minimal supported TLS version. Possible values + are 1.0, 1.1 or 1.2. Changing this forces a new resource to + be created. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1474,17 +1966,29 @@ spec: type: object x-kubernetes-validations: - message: clusterVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clusterVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clusterVersion) + || has(self.initProvider.clusterVersion)' - message: componentVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.componentVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.componentVersion) + || has(self.initProvider.componentVersion)' - message: gateway is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gateway) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.gateway) + || has(self.initProvider.gateway)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: roles is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roles) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.roles) + || has(self.initProvider.roles)' - message: tier is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tier) + || has(self.initProvider.tier)' status: description: HBaseClusterStatus defines the observed state of HBaseCluster. properties: diff --git a/package/crds/hdinsight.azure.upbound.io_interactivequeryclusters.yaml b/package/crds/hdinsight.azure.upbound.io_interactivequeryclusters.yaml index 396282a9c..2154cc012 100644 --- a/package/crds/hdinsight.azure.upbound.io_interactivequeryclusters.yaml +++ b/package/crds/hdinsight.azure.upbound.io_interactivequeryclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: interactivequeryclusters.hdinsight.azure.upbound.io spec: group: hdinsight.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -83,8 +82,6 @@ spec: be used for this HDInsight Interactive Query Cluster. Changing this forces a new resource to be created. type: string - required: - - interactiveHive type: object type: array computeIsolation: @@ -150,7 +147,6 @@ spec: - namespace type: object required: - - logAnalyticsWorkspaceId - primaryKeySecretRef type: object type: array @@ -181,7 +177,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array location: @@ -233,10 +228,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array hive: @@ -279,10 +271,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array oozie: @@ -325,10 +314,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array type: object @@ -360,7 +346,6 @@ spec: - namespace type: object required: - - logAnalyticsWorkspaceId - primaryKeySecretRef type: object type: array @@ -503,9 +488,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -644,9 +626,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array workerNode: @@ -671,9 +650,6 @@ spec: nodes to autoscale to based on the cluster's activity. type: number - required: - - maxInstanceCount - - minInstanceCount type: object type: array recurrence: @@ -704,19 +680,12 @@ spec: perform the autoscale in 24hour format. type: string - required: - - days - - targetInstanceCount - - time type: object type: array timezone: description: The time zone for the autoscale schedule times. type: string - required: - - schedule - - timezone type: object type: array type: object @@ -755,9 +724,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -900,10 +866,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - targetInstanceCount - - username - - vmSize type: object type: array zookeeperNode: @@ -944,9 +906,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -1085,15 +1044,8 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array - required: - - headNode - - workerNode - - zookeeperNode type: object type: array securityProfile: @@ -1151,12 +1103,7 @@ spec: Cluster. Changing this forces a new resource to be created. type: string required: - - aaddsResourceId - - domainName - domainUserPasswordSecretRef - - domainUsername - - ldapsUrls - - msiResourceId type: object type: array storageAccount: @@ -1274,7 +1221,6 @@ spec: forces a new resource to be created. type: string required: - - isDefault - storageAccountKeySecretRef type: object type: array @@ -1300,11 +1246,6 @@ spec: description: The ID of the Storage Account. Changing this forces a new resource to be created. type: string - required: - - filesystemId - - isDefault - - managedIdentityResourceId - - storageResourceId type: object type: array tags: @@ -1324,21 +1265,603 @@ spec: be created. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clusterVersion: + description: Specifies the Version of HDInsights which should + be used for this Cluster. Changing this forces a new resource + to be created. + type: string + componentVersion: + description: A component_version block as defined below. + items: + properties: + interactiveHive: + description: The version of Interactive Query which should + be used for this HDInsight Interactive Query Cluster. + Changing this forces a new resource to be created. + type: string + type: object + type: array + computeIsolation: + description: A compute_isolation block as defined below. + items: + properties: + computeIsolationEnabled: + description: This field indicates whether enable compute + isolation or not. Possible values are true or false. + type: boolean + hostSku: + description: The name of the host SKU. + type: string + type: object + type: array + diskEncryption: + description: A disk_encryption block as defined below. + items: + properties: + encryptionAlgorithm: + description: This is an algorithm identifier for encryption. + Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + type: string + encryptionAtHostEnabled: + description: This is indicator to show whether resource + disk encryption is enabled. + type: boolean + keyVaultKeyId: + description: The ID of the key vault key. + type: string + keyVaultManagedIdentityId: + description: This is the resource ID of Managed Identity + used to access the key vault. + type: string + type: object + type: array + encryptionInTransitEnabled: + description: Whether encryption in transit is enabled for this + Cluster. Changing this forces a new resource to be created. + type: boolean + extension: + description: An extension block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The workspace ID of the log analytics extension. + type: string + type: object + type: array + gateway: + description: A gateway block as defined below. + items: + properties: + username: + description: The username used for the Ambari Portal. Changing + this forces a new resource to be created. + type: string + type: object + type: array + location: + description: Specifies the Azure Region which this HDInsight Interactive + Query Cluster should exist. Changing this forces a new resource + to be created. + type: string + metastores: + description: A metastores block as defined below. + items: + properties: + ambari: + description: An ambari block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + hive: + description: A hive block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + oozie: + description: An oozie block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + type: object + type: array + monitor: + description: A monitor block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The Operations Management Suite (OMS) workspace + ID. + type: string + type: object + type: array + network: + description: A network block as defined below. + items: + properties: + connectionDirection: + description: The direction of the resource provider connection. + Possible values include Inbound or Outbound. Defaults + to Inbound. Changing this forces a new resource to be + created. + type: string + privateLinkEnabled: + description: Is the private link enabled? Possible values + include True or False. Defaults to False. Changing this + forces a new resource to be created. + type: boolean + type: object + type: array + roles: + description: A roles block as defined below. + items: + properties: + headNode: + description: A head_node block as defined above. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + workerNode: + description: A worker_node block as defined below. + items: + properties: + autoscale: + description: A autoscale block as defined below. + items: + properties: + capacity: + description: A capacity block as defined below. + items: + properties: + maxInstanceCount: + description: The maximum number of worker + nodes to autoscale to based on the cluster's + activity. + type: number + minInstanceCount: + description: The minimum number of worker + nodes to autoscale to based on the cluster's + activity. + type: number + type: object + type: array + recurrence: + description: A recurrence block as defined below. + items: + properties: + schedule: + description: A list of schedule blocks + as defined below. + items: + properties: + days: + description: The days of the week + to perform autoscale. Possible + values are Monday, Tuesday, Wednesday, + Thursday, Friday, Saturday and + Sunday. + items: + type: string + type: array + targetInstanceCount: + description: The number of instances + which should be run for the Worker + Nodes. + type: number + time: + description: The time of day to + perform the autoscale in 24hour + format. + type: string + type: object + type: array + timezone: + description: The time zone for the autoscale + schedule times. + type: string + type: object + type: array + type: object + type: array + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + targetInstanceCount: + description: The number of instances which should + be run for the Worker Nodes. + type: number + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + zookeeperNode: + description: A zookeeper_node block as defined below. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + type: object + type: array + securityProfile: + description: A security_profile block as defined below. Changing + this forces a new resource to be created. + items: + properties: + aaddsResourceId: + description: The resource ID of the Azure Active Directory + Domain Service. Changing this forces a new resource to + be created. + type: string + clusterUsersGroupDns: + description: A list of the distinguished names for the cluster + user groups. Changing this forces a new resource to be + created. + items: + type: string + type: array + domainName: + description: The name of the Azure Active Directory Domain. + Changing this forces a new resource to be created. + type: string + domainUsername: + description: The username of the Azure Active Directory + Domain. Changing this forces a new resource to be created. + type: string + ldapsUrls: + description: A list of the LDAPS URLs to communicate with + the Azure Active Directory. Changing this forces a new + resource to be created. + items: + type: string + type: array + msiResourceId: + description: The User Assigned Identity for the HDInsight + Cluster. Changing this forces a new resource to be created. + type: string + type: object + type: array + storageAccount: + description: One or more storage_account block as defined below. + items: + properties: + isDefault: + description: Is this the Default Storage Account for the + HDInsight Hadoop Cluster? Changing this forces a new resource + to be created. + type: boolean + storageResourceId: + description: The ID of the Storage Account. Changing this + forces a new resource to be created. + type: string + type: object + type: array + storageAccountGen2: + description: A storage_account_gen2 block as defined below. + items: + properties: + filesystemId: + description: The ID of the Gen2 Filesystem. Changing this + forces a new resource to be created. + type: string + isDefault: + description: Is this the Default Storage Account for the + HDInsight Hadoop Cluster? Changing this forces a new resource + to be created. + type: boolean + managedIdentityResourceId: + description: The ID of Managed Identity to use for accessing + the Gen2 filesystem. Changing this forces a new resource + to be created. + type: string + storageResourceId: + description: The ID of the Storage Account. Changing this + forces a new resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A map of Tags which should be assigned to this HDInsight + Interactive Query Cluster. + type: object + tier: + description: Specifies the Tier which should be used for this + HDInsight Interactive Query Cluster. Possible values are Standard + or Premium. Changing this forces a new resource to be created. + type: string + tlsMinVersion: + description: The minimal supported TLS version. Possible values + are 1.0, 1.1 or 1.2. Changing this forces a new resource to + be created. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1512,17 +2035,29 @@ spec: type: object x-kubernetes-validations: - message: clusterVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clusterVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clusterVersion) + || has(self.initProvider.clusterVersion)' - message: componentVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.componentVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.componentVersion) + || has(self.initProvider.componentVersion)' - message: gateway is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gateway) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.gateway) + || has(self.initProvider.gateway)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: roles is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roles) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.roles) + || has(self.initProvider.roles)' - message: tier is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tier) + || has(self.initProvider.tier)' status: description: InteractiveQueryClusterStatus defines the observed state of InteractiveQueryCluster. diff --git a/package/crds/hdinsight.azure.upbound.io_kafkaclusters.yaml b/package/crds/hdinsight.azure.upbound.io_kafkaclusters.yaml index e31c0bb90..ee5a191c8 100644 --- a/package/crds/hdinsight.azure.upbound.io_kafkaclusters.yaml +++ b/package/crds/hdinsight.azure.upbound.io_kafkaclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: kafkaclusters.hdinsight.azure.upbound.io spec: group: hdinsight.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,8 +81,6 @@ spec: this HDInsight Kafka Cluster. Changing this forces a new resource to be created. type: string - required: - - kafka type: object type: array computeIsolation: @@ -150,7 +147,6 @@ spec: - namespace type: object required: - - logAnalyticsWorkspaceId - primaryKeySecretRef type: object type: array @@ -181,7 +177,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array location: @@ -233,10 +228,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array hive: @@ -279,10 +271,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array oozie: @@ -325,10 +314,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array type: object @@ -360,7 +346,6 @@ spec: - namespace type: object required: - - logAnalyticsWorkspaceId - primaryKeySecretRef type: object type: array @@ -473,9 +458,6 @@ spec: description: The Azure Active Directory Security Group name. Changing this forces a new resource to be created. type: string - required: - - securityGroupId - - securityGroupName type: object type: array roles: @@ -520,9 +502,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -661,9 +640,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array kafkaManagementNode: @@ -704,9 +680,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -845,9 +818,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array workerNode: @@ -894,9 +864,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -1039,11 +1006,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - numberOfDisksPerNode - - targetInstanceCount - - username - - vmSize type: object type: array zookeeperNode: @@ -1084,9 +1046,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -1225,15 +1184,8 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array - required: - - headNode - - workerNode - - zookeeperNode type: object type: array securityProfile: @@ -1291,12 +1243,7 @@ spec: Cluster. Changing this forces a new resource to be created. type: string required: - - aaddsResourceId - - domainName - domainUserPasswordSecretRef - - domainUsername - - ldapsUrls - - msiResourceId type: object type: array storageAccount: @@ -1414,7 +1361,6 @@ spec: forces a new resource to be created. type: string required: - - isDefault - storageAccountKeySecretRef type: object type: array @@ -1440,11 +1386,6 @@ spec: description: The ID of the Storage Account. Changing this forces a new resource to be created. type: string - required: - - filesystemId - - isDefault - - managedIdentityResourceId - - storageResourceId type: object type: array tags: @@ -1464,21 +1405,639 @@ spec: be created. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clusterVersion: + description: Specifies the Version of HDInsights which should + be used for this Cluster. Changing this forces a new resource + to be created. + type: string + componentVersion: + description: A component_version block as defined below. + items: + properties: + kafka: + description: The version of Kafka which should be used for + this HDInsight Kafka Cluster. Changing this forces a new + resource to be created. + type: string + type: object + type: array + computeIsolation: + description: A compute_isolation block as defined below. + items: + properties: + computeIsolationEnabled: + description: This field indicates whether enable compute + isolation or not. Possible values are true or false. + type: boolean + hostSku: + description: The name of the host SKU. + type: string + type: object + type: array + diskEncryption: + description: One or more disk_encryption block as defined below. + items: + properties: + encryptionAlgorithm: + description: This is an algorithm identifier for encryption. + Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + type: string + encryptionAtHostEnabled: + description: This is indicator to show whether resource + disk encryption is enabled. + type: boolean + keyVaultKeyId: + description: The ID of the key vault key. + type: string + keyVaultManagedIdentityId: + description: This is the resource ID of Managed Identity + used to access the key vault. + type: string + type: object + type: array + encryptionInTransitEnabled: + description: Whether encryption in transit is enabled for this + HDInsight Kafka Cluster. Changing this forces a new resource + to be created. + type: boolean + extension: + description: An extension block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The workspace ID of the log analytics extension. + type: string + type: object + type: array + gateway: + description: A gateway block as defined below. + items: + properties: + username: + description: The username used for the Ambari Portal. Changing + this forces a new resource to be created. + type: string + type: object + type: array + location: + description: Specifies the Azure Region which this HDInsight Kafka + Cluster should exist. Changing this forces a new resource to + be created. + type: string + metastores: + description: A metastores block as defined below. + items: + properties: + ambari: + description: An ambari block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + hive: + description: A hive block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + oozie: + description: An oozie block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + type: object + type: array + monitor: + description: A monitor block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The Operations Management Suite (OMS) workspace + ID. + type: string + type: object + type: array + network: + description: A network block as defined below. + items: + properties: + connectionDirection: + description: The direction of the resource provider connection. + Possible values include Inbound or Outbound. Defaults + to Inbound. Changing this forces a new resource to be + created. + type: string + privateLinkEnabled: + description: Is the private link enabled? Possible values + include True or False. Defaults to False. Changing this + forces a new resource to be created. + type: boolean + type: object + type: array + restProxy: + description: A rest_proxy block as defined below. + items: + properties: + securityGroupId: + description: The Azure Active Directory Security Group ID. + Changing this forces a new resource to be created. + type: string + securityGroupName: + description: The Azure Active Directory Security Group name. + Changing this forces a new resource to be created. + type: string + type: object + type: array + roles: + description: A roles block as defined below. + items: + properties: + headNode: + description: A head_node block as defined above. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + kafkaManagementNode: + description: A kafka_management_node block as defined below. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + workerNode: + description: A worker_node block as defined below. + items: + properties: + numberOfDisksPerNode: + description: The number of Data Disks which should + be assigned to each Worker Node, which can be between + 1 and 8. Changing this forces a new resource to + be created. + type: number + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + targetInstanceCount: + description: The number of instances which should + be run for the Worker Nodes. + type: number + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + zookeeperNode: + description: A zookeeper_node block as defined below. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + type: object + type: array + securityProfile: + description: A security_profile block as defined below. Changing + this forces a new resource to be created. + items: + properties: + aaddsResourceId: + description: The resource ID of the Azure Active Directory + Domain Service. Changing this forces a new resource to + be created. + type: string + clusterUsersGroupDns: + description: A list of the distinguished names for the cluster + user groups. Changing this forces a new resource to be + created. + items: + type: string + type: array + domainName: + description: The name of the Azure Active Directory Domain. + Changing this forces a new resource to be created. + type: string + domainUsername: + description: The username of the Azure Active Directory + Domain. Changing this forces a new resource to be created. + type: string + ldapsUrls: + description: A list of the LDAPS URLs to communicate with + the Azure Active Directory. Changing this forces a new + resource to be created. + items: + type: string + type: array + msiResourceId: + description: The User Assigned Identity for the HDInsight + Cluster. Changing this forces a new resource to be created. + type: string + type: object + type: array + storageAccount: + description: One or more storage_account block as defined below. + items: + properties: + isDefault: + description: Is this the Default Storage Account for the + HDInsight Hadoop Cluster? Changing this forces a new resource + to be created. + type: boolean + storageResourceId: + description: The ID of the Storage Account. Changing this + forces a new resource to be created. + type: string + type: object + type: array + storageAccountGen2: + description: A storage_account_gen2 block as defined below. + items: + properties: + filesystemId: + description: The ID of the Gen2 Filesystem. Changing this + forces a new resource to be created. + type: string + isDefault: + description: Is this the Default Storage Account for the + HDInsight Hadoop Cluster? Changing this forces a new resource + to be created. + type: boolean + managedIdentityResourceId: + description: The ID of Managed Identity to use for accessing + the Gen2 filesystem. Changing this forces a new resource + to be created. + type: string + storageResourceId: + description: The ID of the Storage Account. Changing this + forces a new resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A map of Tags which should be assigned to this HDInsight + Kafka Cluster. + type: object + tier: + description: Specifies the Tier which should be used for this + HDInsight Kafka Cluster. Possible values are Standard or Premium. + Changing this forces a new resource to be created. + type: string + tlsMinVersion: + description: The minimal supported TLS version. Possible values + are 1.0, 1.1 or 1.2. Changing this forces a new resource to + be created. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1652,17 +2211,29 @@ spec: type: object x-kubernetes-validations: - message: clusterVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clusterVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clusterVersion) + || has(self.initProvider.clusterVersion)' - message: componentVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.componentVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.componentVersion) + || has(self.initProvider.componentVersion)' - message: gateway is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gateway) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.gateway) + || has(self.initProvider.gateway)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: roles is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roles) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.roles) + || has(self.initProvider.roles)' - message: tier is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tier) + || has(self.initProvider.tier)' status: description: KafkaClusterStatus defines the observed state of KafkaCluster. properties: diff --git a/package/crds/hdinsight.azure.upbound.io_sparkclusters.yaml b/package/crds/hdinsight.azure.upbound.io_sparkclusters.yaml index b1f0d2c34..66b5c73ba 100644 --- a/package/crds/hdinsight.azure.upbound.io_sparkclusters.yaml +++ b/package/crds/hdinsight.azure.upbound.io_sparkclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sparkclusters.hdinsight.azure.upbound.io spec: group: hdinsight.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,8 +81,6 @@ spec: this HDInsight Spark Cluster. Changing this forces a new resource to be created. type: string - required: - - spark type: object type: array computeIsolation: @@ -149,7 +146,6 @@ spec: - namespace type: object required: - - logAnalyticsWorkspaceId - primaryKeySecretRef type: object type: array @@ -180,7 +176,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array location: @@ -232,10 +227,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array hive: @@ -278,10 +270,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array oozie: @@ -324,10 +313,7 @@ spec: new resource to be created. type: string required: - - databaseName - passwordSecretRef - - server - - username type: object type: array type: object @@ -359,7 +345,6 @@ spec: - namespace type: object required: - - logAnalyticsWorkspaceId - primaryKeySecretRef type: object type: array @@ -502,9 +487,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -643,9 +625,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array workerNode: @@ -670,9 +649,6 @@ spec: nodes to autoscale to based on the cluster's activity. type: number - required: - - maxInstanceCount - - minInstanceCount type: object type: array recurrence: @@ -703,19 +679,12 @@ spec: perform the autoscale in 24hour format. type: string - required: - - days - - targetInstanceCount - - time type: object type: array timezone: description: The time zone for the autoscale schedule times. type: string - required: - - schedule - - timezone type: object type: array type: object @@ -754,9 +723,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -899,10 +865,6 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - targetInstanceCount - - username - - vmSize type: object type: array zookeeperNode: @@ -943,9 +905,6 @@ spec: uri: description: The URI to the script. type: string - required: - - name - - uri type: object type: array sshKeys: @@ -1084,15 +1043,8 @@ spec: and Standard_NC24. Changing this forces a new resource to be created. type: string - required: - - username - - vmSize type: object type: array - required: - - headNode - - workerNode - - zookeeperNode type: object type: array securityProfile: @@ -1150,12 +1102,7 @@ spec: Cluster. Changing this forces a new resource to be created. type: string required: - - aaddsResourceId - - domainName - domainUserPasswordSecretRef - - domainUsername - - ldapsUrls - - msiResourceId type: object type: array storageAccount: @@ -1273,7 +1220,6 @@ spec: forces a new resource to be created. type: string required: - - isDefault - storageAccountKeySecretRef type: object type: array @@ -1299,11 +1245,6 @@ spec: description: The ID of the Storage Account. Changing this forces a new resource to be created. type: string - required: - - filesystemId - - isDefault - - managedIdentityResourceId - - storageResourceId type: object type: array tags: @@ -1323,21 +1264,603 @@ spec: be created. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + clusterVersion: + description: Specifies the Version of HDInsights which should + be used for this Cluster. Changing this forces a new resource + to be created. + type: string + componentVersion: + description: A component_version block as defined below. + items: + properties: + spark: + description: The version of Spark which should be used for + this HDInsight Spark Cluster. Changing this forces a new + resource to be created. + type: string + type: object + type: array + computeIsolation: + description: A compute_isolation block as defined below. + items: + properties: + computeIsolationEnabled: + description: This field indicates whether enable compute + isolation or not. Possible values are true or false. + type: boolean + hostSku: + description: The name of the host SKU. + type: string + type: object + type: array + diskEncryption: + description: One or more disk_encryption block as defined below. + items: + properties: + encryptionAlgorithm: + description: This is an algorithm identifier for encryption. + Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + type: string + encryptionAtHostEnabled: + description: This is indicator to show whether resource + disk encryption is enabled. + type: boolean + keyVaultKeyId: + description: The ID of the key vault key. + type: string + keyVaultManagedIdentityId: + description: This is the resource ID of Managed Identity + used to access the key vault. + type: string + type: object + type: array + encryptionInTransitEnabled: + description: Whether encryption in transit is enabled for this + Cluster. Changing this forces a new resource to be created. + type: boolean + extension: + description: An extension block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The workspace ID of the log analytics extension. + type: string + type: object + type: array + gateway: + description: A gateway block as defined below. + items: + properties: + username: + description: The username used for the Ambari Portal. Changing + this forces a new resource to be created. + type: string + type: object + type: array + location: + description: Specifies the Azure Region which this HDInsight Spark + Cluster should exist. Changing this forces a new resource to + be created. + type: string + metastores: + description: A metastores block as defined below. + items: + properties: + ambari: + description: An ambari block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + hive: + description: A hive block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + oozie: + description: An oozie block as defined below. + items: + properties: + databaseName: + description: The external Oozie metastore's existing + SQL database. Changing this forces a new resource + to be created. + type: string + server: + description: The fully-qualified domain name (FQDN) + of the SQL server to use for the external Oozie + metastore. Changing this forces a new resource to + be created. + type: string + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + type: object + type: array + type: object + type: array + monitor: + description: A monitor block as defined below. + items: + properties: + logAnalyticsWorkspaceId: + description: The Operations Management Suite (OMS) workspace + ID. + type: string + type: object + type: array + network: + description: A network block as defined below. + items: + properties: + connectionDirection: + description: The direction of the resource provider connection. + Possible values include Inbound or Outbound. Defaults + to Inbound. Changing this forces a new resource to be + created. + type: string + privateLinkEnabled: + description: Is the private link enabled? Possible values + include True or False. Defaults to False. Changing this + forces a new resource to be created. + type: boolean + type: object + type: array + roles: + description: A roles block as defined below. + items: + properties: + headNode: + description: A head_node block as defined above. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + workerNode: + description: A worker_node block as defined below. + items: + properties: + autoscale: + description: A autoscale block as defined below. + items: + properties: + capacity: + description: A capacity block as defined below. + items: + properties: + maxInstanceCount: + description: The maximum number of worker + nodes to autoscale to based on the cluster's + activity. + type: number + minInstanceCount: + description: The minimum number of worker + nodes to autoscale to based on the cluster's + activity. + type: number + type: object + type: array + recurrence: + description: A recurrence block as defined below. + items: + properties: + schedule: + description: A list of schedule blocks + as defined below. + items: + properties: + days: + description: The days of the week + to perform autoscale. Possible + values are Monday, Tuesday, Wednesday, + Thursday, Friday, Saturday and + Sunday. + items: + type: string + type: array + targetInstanceCount: + description: The number of instances + which should be run for the Worker + Nodes. + type: number + time: + description: The time of day to + perform the autoscale in 24hour + format. + type: string + type: object + type: array + timezone: + description: The time zone for the autoscale + schedule times. + type: string + type: object + type: array + type: object + type: array + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + targetInstanceCount: + description: The number of instances which should + be run for the Worker Nodes. + type: number + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + zookeeperNode: + description: A zookeeper_node block as defined below. + items: + properties: + scriptActions: + description: The script action which will run on the + cluster. Changing this forces a new resource to + be created. + items: + properties: + name: + description: The name of the script action. + type: string + parameters: + description: The parameters for the script provided. + type: string + uri: + description: The URI to the script. + type: string + type: object + type: array + sshKeys: + description: A list of SSH Keys which should be used + for the local administrator on the Zookeeper Nodes. + Changing this forces a new resource to be created. + items: + type: string + type: array + username: + description: The Username of the local administrator + for the Zookeeper Nodes. Changing this forces a + new resource to be created. + type: string + virtualNetworkId: + description: The ID of the Virtual Network where the + Zookeeper Nodes should be provisioned within. Changing + this forces a new resource to be created. + type: string + vmSize: + description: The Size of the Virtual Machine which + should be used as the Zookeeper Nodes. Possible + values are ExtraSmall, Small, Medium, Large, ExtraLarge, + A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, + Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, + Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, + Standard_D3, Standard_D4, Standard_D11, Standard_D12, + Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, + Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, + Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, + Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, + Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, + Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, + Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, + Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, + Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, + Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, + Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, + Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, + Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, + Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, + Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, + Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, + Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, + Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, + Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, + Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, + Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, + Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 + and Standard_NC24. Changing this forces a new resource + to be created. + type: string + type: object + type: array + type: object + type: array + securityProfile: + description: A security_profile block as defined below. Changing + this forces a new resource to be created. + items: + properties: + aaddsResourceId: + description: The resource ID of the Azure Active Directory + Domain Service. Changing this forces a new resource to + be created. + type: string + clusterUsersGroupDns: + description: A list of the distinguished names for the cluster + user groups. Changing this forces a new resource to be + created. + items: + type: string + type: array + domainName: + description: The name of the Azure Active Directory Domain. + Changing this forces a new resource to be created. + type: string + domainUsername: + description: The username of the Azure Active Directory + Domain. Changing this forces a new resource to be created. + type: string + ldapsUrls: + description: A list of the LDAPS URLs to communicate with + the Azure Active Directory. Changing this forces a new + resource to be created. + items: + type: string + type: array + msiResourceId: + description: The User Assigned Identity for the HDInsight + Cluster. Changing this forces a new resource to be created. + type: string + type: object + type: array + storageAccount: + description: One or more storage_account block as defined below. + items: + properties: + isDefault: + description: Is this the Default Storage Account for the + HDInsight Hadoop Cluster? Changing this forces a new resource + to be created. + type: boolean + storageResourceId: + description: The ID of the Storage Account. Changing this + forces a new resource to be created. + type: string + type: object + type: array + storageAccountGen2: + description: A storage_account_gen2 block as defined below. + items: + properties: + filesystemId: + description: The ID of the Gen2 Filesystem. Changing this + forces a new resource to be created. + type: string + isDefault: + description: Is this the Default Storage Account for the + HDInsight Hadoop Cluster? Changing this forces a new resource + to be created. + type: boolean + managedIdentityResourceId: + description: The ID of Managed Identity to use for accessing + the Gen2 filesystem. Changing this forces a new resource + to be created. + type: string + storageResourceId: + description: The ID of the Storage Account. Changing this + forces a new resource to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A map of Tags which should be assigned to this HDInsight + Spark Cluster. + type: object + tier: + description: Specifies the Tier which should be used for this + HDInsight Spark Cluster. Possible values are Standard or Premium. + Changing this forces a new resource to be created. + type: string + tlsMinVersion: + description: The minimal supported TLS version. Possible values + are 1.0, 1.1 or 1.2. Changing this forces a new resource to + be created. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1511,17 +2034,29 @@ spec: type: object x-kubernetes-validations: - message: clusterVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clusterVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clusterVersion) + || has(self.initProvider.clusterVersion)' - message: componentVersion is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.componentVersion) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.componentVersion) + || has(self.initProvider.componentVersion)' - message: gateway is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gateway) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.gateway) + || has(self.initProvider.gateway)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: roles is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roles) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.roles) + || has(self.initProvider.roles)' - message: tier is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tier) + || has(self.initProvider.tier)' status: description: SparkClusterStatus defines the observed state of SparkCluster. properties: diff --git a/package/crds/healthbot.azure.upbound.io_healthbots.yaml b/package/crds/healthbot.azure.upbound.io_healthbots.yaml index 53a657bdc..20b37ef14 100644 --- a/package/crds/healthbot.azure.upbound.io_healthbots.yaml +++ b/package/crds/healthbot.azure.upbound.io_healthbots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: healthbots.healthbot.azure.upbound.io spec: group: healthbot.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -163,21 +162,60 @@ spec: service. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies The Azure Region where the resource exists. + Changing this force a new resource to be created. + type: string + skuName: + description: The name which should be used for the SKU of the + service. Possible values are C0, F0 and S1. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + service. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -351,9 +389,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: HealthBotStatus defines the observed state of HealthBot. properties: diff --git a/package/crds/healthcareapis.azure.upbound.io_healthcaredicomservices.yaml b/package/crds/healthcareapis.azure.upbound.io_healthcaredicomservices.yaml index fac86f84d..080fbd256 100644 --- a/package/crds/healthcareapis.azure.upbound.io_healthcaredicomservices.yaml +++ b/package/crds/healthcareapis.azure.upbound.io_healthcaredicomservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: healthcaredicomservices.healthcareapis.azure.upbound.io spec: group: healthcareapis.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -85,8 +84,6 @@ spec: and SystemAssigned, UserAssigned. If UserAssigned is set, an identity_ids must be set as well. type: string - required: - - type type: object type: array location: @@ -186,21 +183,80 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Identity IDs which + should be assigned to this Healthcare DICOM service. + items: + type: string + type: array + type: + description: The type of identity used for the Healthcare + DICOM service. Possible values are UserAssigned, SystemAssigned + and SystemAssigned, UserAssigned. If UserAssigned is set, + an identity_ids must be set as well. + type: string + type: object + type: array + location: + description: Specifies the Azure Region where the Healthcare DICOM + Service should be created. Changing this forces a new Healthcare + DICOM Service to be created. + type: string + publicNetworkAccessEnabled: + description: Whether to enabled public networks when data plane + traffic coming from public networks while private endpoint is + enabled. Defaults to true. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Healthcare DICOM + Service. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -374,7 +430,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: HealthcareDICOMServiceStatus defines the observed state of HealthcareDICOMService. diff --git a/package/crds/healthcareapis.azure.upbound.io_healthcarefhirservices.yaml b/package/crds/healthcareapis.azure.upbound.io_healthcarefhirservices.yaml index 9fad0f11b..0582c466d 100644 --- a/package/crds/healthcareapis.azure.upbound.io_healthcarefhirservices.yaml +++ b/package/crds/healthcareapis.azure.upbound.io_healthcarefhirservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: healthcarefhirservices.healthcareapis.azure.upbound.io spec: group: healthcareapis.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -91,9 +90,6 @@ spec: smartProxyEnabled: description: Whether smart proxy is enabled. type: boolean - required: - - audience - - authority type: object type: array configurationExportStorageAccountName: @@ -133,10 +129,6 @@ spec: maxAgeInSeconds: description: The max age to be allowed via CORS. type: number - required: - - allowedHeaders - - allowedMethods - - allowedOrigins type: object type: array identity: @@ -154,8 +146,6 @@ spec: description: The type of managed identity to assign. Possible values are UserAssigned and SystemAssigned type: string - required: - - type type: object type: array kind: @@ -186,8 +176,6 @@ spec: description: An Azure container registry used for export operations of the service instance. type: string - required: - - loginServer type: object type: array resourceGroupName: @@ -357,21 +345,162 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessPolicyObjectIds: + description: A list of the access policies of the service instance. + items: + type: string + type: array + authentication: + description: An authentication block as defined below. + items: + properties: + audience: + description: The intended audience to receive authentication + tokens for the service. The default value is https://.fhir.azurehealthcareapis.com. + type: string + authority: + description: 'The Azure Active Directory (tenant) that serves + as the authentication authority to access the service. + Authority must be registered to Azure AD and in the following + format: https://{Azure-AD-endpoint}/{tenant-id}.' + type: string + smartProxyEnabled: + description: Whether smart proxy is enabled. + type: boolean + type: object + type: array + configurationExportStorageAccountName: + description: Specifies the name of the storage account which the + operation configuration information is exported to. + type: string + containerRegistryLoginServerUrl: + description: A list of azure container registry settings used + for convert data operation of the service instance. + items: + type: string + type: array + cors: + description: A cors block as defined below. + items: + properties: + allowedHeaders: + description: A set of headers to be allowed via CORS. + items: + type: string + type: array + allowedMethods: + description: The methods to be allowed via CORS. Possible + values are DELETE, GET, HEAD, MERGE, POST, OPTIONS, PATCH + and PUT. + items: + type: string + type: array + allowedOrigins: + description: A set of origins to be allowed via CORS. + items: + type: string + type: array + credentialsAllowed: + description: If credentials are allowed via CORS. + type: boolean + maxAgeInSeconds: + description: The max age to be allowed via CORS. + type: number + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of one or more Resource IDs for User + Assigned Managed identities to assign. Required when type + is set to UserAssigned. + items: + type: string + type: array + type: + description: The type of managed identity to assign. Possible + values are UserAssigned and SystemAssigned + type: string + type: object + type: array + kind: + description: 'Specifies the kind of the Healthcare FHIR Service. + Possible values are: fhir-Stu3 and fhir-R4. Defaults to fhir-R4. + Changing this forces a new Healthcare FHIR Service to be created.' + type: string + location: + description: Specifies the Azure Region where the Healthcare FHIR + Service should be created. Changing this forces a new Healthcare + FHIR Service to be created. + type: string + ociArtifact: + description: A list of objects describing OCI artifacts for export + as defined below. + items: + properties: + digest: + description: A digest of an image within Azure container + registry used for export operations of the service instance + to narrow the artifacts down. + type: string + imageName: + description: An image within Azure container registry used + for export operations of the service instance. + type: string + loginServer: + description: An Azure container registry used for export + operations of the service instance. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Healthcare FHIR + Service. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -545,9 +674,13 @@ spec: type: object x-kubernetes-validations: - message: authentication is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authentication) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.authentication) + || has(self.initProvider.authentication)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: HealthcareFHIRServiceStatus defines the observed state of HealthcareFHIRService. diff --git a/package/crds/healthcareapis.azure.upbound.io_healthcaremedtechservicefhirdestinations.yaml b/package/crds/healthcareapis.azure.upbound.io_healthcaremedtechservicefhirdestinations.yaml index 386cc1b31..9e21c4b57 100644 --- a/package/crds/healthcareapis.azure.upbound.io_healthcaremedtechservicefhirdestinations.yaml +++ b/package/crds/healthcareapis.azure.upbound.io_healthcaremedtechservicefhirdestinations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: healthcaremedtechservicefhirdestinations.healthcareapis.azure.upbound.io spec: group: healthcareapis.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -246,21 +245,61 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + destinationFhirMappingJson: + description: Specifies the destination Fhir mappings of the Med + Tech Service Fhir Destination. + type: string + destinationIdentityResolutionType: + description: Specifies the destination identity resolution type + where the Healthcare Med Tech Service Fhir Destination should + be created. Possible values are Create, Lookup. + type: string + location: + description: Specifies the Azure Region where the Healthcare Med + Tech Service Fhir Destination should be created. Changing this + forces a new Healthcare Med Tech Service Fhir Destination to + be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -434,11 +473,17 @@ spec: type: object x-kubernetes-validations: - message: destinationFhirMappingJson is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.destinationFhirMappingJson) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.destinationFhirMappingJson) + || has(self.initProvider.destinationFhirMappingJson)' - message: destinationIdentityResolutionType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.destinationIdentityResolutionType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.destinationIdentityResolutionType) + || has(self.initProvider.destinationIdentityResolutionType)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: HealthcareMedtechServiceFHIRDestinationStatus defines the observed state of HealthcareMedtechServiceFHIRDestination. diff --git a/package/crds/healthcareapis.azure.upbound.io_healthcaremedtechservices.yaml b/package/crds/healthcareapis.azure.upbound.io_healthcaremedtechservices.yaml index aff839ea6..efb12cfe5 100644 --- a/package/crds/healthcareapis.azure.upbound.io_healthcaremedtechservices.yaml +++ b/package/crds/healthcareapis.azure.upbound.io_healthcaremedtechservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: healthcaremedtechservices.healthcareapis.azure.upbound.io spec: group: healthcareapis.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -319,8 +318,6 @@ spec: that should be configured on this Healthcare Med Tech Service. Possible values are SystemAssigned. type: string - required: - - type type: object type: array location: @@ -413,21 +410,75 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + deviceMappingJson: + description: Specifies the Device Mappings of the Med Tech Service. + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Healthcare Med Tech + Service. Possible values are SystemAssigned. + type: string + type: object + type: array + location: + description: Specifies the Azure Region where the Healthcare Med + Tech Service should be created. Changing this forces a new Healthcare + Med Tech Service to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Healthcare Med + Tech Service. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -601,9 +652,13 @@ spec: type: object x-kubernetes-validations: - message: deviceMappingJson is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.deviceMappingJson) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.deviceMappingJson) + || has(self.initProvider.deviceMappingJson)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: HealthcareMedtechServiceStatus defines the observed state of HealthcareMedtechService. diff --git a/package/crds/healthcareapis.azure.upbound.io_healthcareservices.yaml b/package/crds/healthcareapis.azure.upbound.io_healthcareservices.yaml index c467197fd..3348c6e11 100644 --- a/package/crds/healthcareapis.azure.upbound.io_healthcareservices.yaml +++ b/package/crds/healthcareapis.azure.upbound.io_healthcareservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: healthcareservices.healthcareapis.azure.upbound.io spec: group: healthcareapis.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -231,21 +230,129 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessPolicyObjectIds: + description: A set of Azure object IDs that are allowed to access + the Service. + items: + type: string + type: array + authenticationConfiguration: + description: An authentication_configuration block as defined + below. + items: + properties: + audience: + description: The intended audience to receive authentication + tokens for the service. The default value is https://azurehealthcareapis.com + type: string + authority: + description: 'The Azure Active Directory (tenant) that serves + as the authentication authority to access the service. + Authority must be registered to Azure AD and in the following + format: https://{Azure-AD-endpoint}/{tenant-id}.' + type: string + smartProxyEnabled: + description: (Boolean) Enables the 'SMART on FHIR' option + for mobile and web implementations. + type: boolean + type: object + type: array + corsConfiguration: + description: A cors_configuration block as defined below. + items: + properties: + allowCredentials: + description: (Boolean) If credentials are allowed via CORS. + type: boolean + allowedHeaders: + description: A set of headers to be allowed via CORS. + items: + type: string + type: array + allowedMethods: + description: The methods to be allowed via CORS. Possible + values are DELETE, GET, HEAD, MERGE, POST, OPTIONS, PATCH + and PUT. + items: + type: string + type: array + allowedOrigins: + description: A set of origins to be allowed via CORS. + items: + type: string + type: array + maxAgeInSeconds: + description: The max age to be allowed via CORS. + type: number + type: object + type: array + cosmosdbKeyVaultKeyVersionlessId: + description: A versionless Key Vault Key ID for CMK encryption + of the backing database. Changing this forces a new resource + to be created. + type: string + cosmosdbThroughput: + description: The provisioned throughput for the backing database. + Range of 400-100000. Defaults to 1000. + type: number + kind: + description: 'The type of the service. Values at time of publication + are: fhir, fhir-Stu3 and fhir-R4. Default value is fhir.' + type: string + location: + description: Specifies the supported Azure Region where the Service + should be created. Changing this forces a new resource to be + created. + type: string + publicNetworkAccessEnabled: + description: Whether public network access is enabled or disabled + for this service instance. Defaults to true. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -419,7 +526,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: HealthcareServiceStatus defines the observed state of HealthcareService. properties: diff --git a/package/crds/healthcareapis.azure.upbound.io_healthcareworkspaces.yaml b/package/crds/healthcareapis.azure.upbound.io_healthcareworkspaces.yaml index 1635c121c..200016f78 100644 --- a/package/crds/healthcareapis.azure.upbound.io_healthcareworkspaces.yaml +++ b/package/crds/healthcareapis.azure.upbound.io_healthcareworkspaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: healthcareworkspaces.healthcareapis.azure.upbound.io spec: group: healthcareapis.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -159,21 +158,56 @@ spec: description: A mapping of tags to assign to the Healthcare Workspace. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the Azure Region where the Healthcare Workspace + should be created. Changing this forces a new Healthcare Workspace + to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Healthcare Workspace. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -347,7 +381,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: HealthcareWorkspaceStatus defines the observed state of HealthcareWorkspace. properties: diff --git a/package/crds/insights.azure.upbound.io_applicationinsights.yaml b/package/crds/insights.azure.upbound.io_applicationinsights.yaml index dc78e10b2..e2df826e2 100644 --- a/package/crds/insights.azure.upbound.io_applicationinsights.yaml +++ b/package/crds/insights.azure.upbound.io_applicationinsights.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationinsights.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -284,21 +283,103 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + applicationType: + description: Specifies the type of Application Insights to create. + Valid values are ios for iOS, java for Java web, MobileCenter + for App Center, Node.JS for Node.js, other for General, phone + for Windows Phone, store for Windows Store and web for ASP.NET. + Please note these values are case sensitive; unmatched values + are treated as ASP.NET by Azure. Changing this forces a new + resource to be created. + type: string + dailyDataCapInGb: + description: Specifies the Application Insights component daily + data volume cap in GB. + type: number + dailyDataCapNotificationsDisabled: + description: Specifies if a notification email will be send when + the daily data volume cap is met. + type: boolean + disableIpMasking: + description: By default the real client IP is masked as 0.0.0.0 + in the logs. Use this argument to disable masking and log the + real client IP. Defaults to false. + type: boolean + forceCustomerStorageForProfiler: + description: Should the Application Insights component force users + to create their own storage account for profiling? Defaults + to false. + type: boolean + internetIngestionEnabled: + description: Should the Application Insights component support + ingestion over the Public Internet? Defaults to true. + type: boolean + internetQueryEnabled: + description: Should the Application Insights component support + querying over the Public Internet? Defaults to true. + type: boolean + localAuthenticationDisabled: + description: Disable Non-Azure AD based Auth. Defaults to false. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + retentionInDays: + description: Specifies the retention period in days. Possible + values are 30, 60, 90, 120, 180, 270, 365, 550 or 730. Defaults + to 90. + type: number + samplingPercentage: + description: Specifies the percentage of the data produced by + the monitored application that is sampled for Application Insights + telemetry. Defaults to 100. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -472,9 +553,13 @@ spec: type: object x-kubernetes-validations: - message: applicationType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.applicationType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.applicationType) + || has(self.initProvider.applicationType)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ApplicationInsightsStatus defines the observed state of ApplicationInsights. properties: diff --git a/package/crds/insights.azure.upbound.io_applicationinsightsanalyticsitems.yaml b/package/crds/insights.azure.upbound.io_applicationinsightsanalyticsitems.yaml index 144b34313..0e245d6fc 100644 --- a/package/crds/insights.azure.upbound.io_applicationinsightsanalyticsitems.yaml +++ b/package/crds/insights.azure.upbound.io_applicationinsightsanalyticsitems.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationinsightsanalyticsitems.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -172,21 +171,68 @@ spec: resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + content: + description: The content for the Analytics Item, for example the + query text if type is query. + type: string + functionAlias: + description: The alias to use for the function. Required when + type is function. + type: string + name: + description: Specifies the name of the Application Insights Analytics + Item. Changing this forces a new resource to be created. + type: string + scope: + description: The scope for the Analytics Item. Can be shared or + user. Changing this forces a new resource to be created. Must + be shared for functions. + type: string + type: + description: The type of Analytics Item to create. Can be one + of query, function, folder, recent. Changing this forces a new + resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -360,13 +406,21 @@ spec: type: object x-kubernetes-validations: - message: content is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.content) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.content) + || has(self.initProvider.content)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: scope is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scope) + || has(self.initProvider.scope)' - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' status: description: ApplicationInsightsAnalyticsItemStatus defines the observed state of ApplicationInsightsAnalyticsItem. diff --git a/package/crds/insights.azure.upbound.io_applicationinsightsapikeys.yaml b/package/crds/insights.azure.upbound.io_applicationinsightsapikeys.yaml index 0e57cdcdf..c7d7a8d85 100644 --- a/package/crds/insights.azure.upbound.io_applicationinsightsapikeys.yaml +++ b/package/crds/insights.azure.upbound.io_applicationinsightsapikeys.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationinsightsapikeys.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -170,21 +169,66 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: Specifies the name of the Application Insights API + key. Changing this forces a new resource to be created. + type: string + readPermissions: + description: Specifies the list of read permissions granted to + the API key. Valid values are agentconfig, aggregate, api, draft, + extendqueries, search. Please note these values are case sensitive. + Changing this forces a new resource to be created. + items: + type: string + type: array + writePermissions: + description: Specifies the list of write permissions granted to + the API key. Valid values are annotations. Please note these + values are case sensitive. Changing this forces a new resource + to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -358,7 +402,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ApplicationInsightsAPIKeyStatus defines the observed state of ApplicationInsightsAPIKey. diff --git a/package/crds/insights.azure.upbound.io_applicationinsightssmartdetectionrules.yaml b/package/crds/insights.azure.upbound.io_applicationinsightssmartdetectionrules.yaml index 6b6d243f3..fd0395bc0 100644 --- a/package/crds/insights.azure.upbound.io_applicationinsightssmartdetectionrules.yaml +++ b/package/crds/insights.azure.upbound.io_applicationinsightssmartdetectionrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationinsightssmartdetectionrules.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -179,21 +178,75 @@ spec: to true. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalEmailRecipients: + description: Specifies a list of additional recipients that will + be sent emails on this Application Insights Smart Detection + Rule. + items: + type: string + type: array + enabled: + description: Is the Application Insights Smart Detection Rule + enabled? Defaults to true. + type: boolean + name: + description: Specifies the name of the Application Insights Smart + Detection Rule. Valid values include Slow page load time, Slow + server response time, Long dependency duration, Degradation + in server response time, Degradation in dependency duration, + Degradation in trace severity ratio, Abnormal rise in exception + volume, Potential memory leak detected, Potential security issue + detected and Abnormal rise in daily data volume, Long dependency + duration, Degradation in server response time, Degradation in + dependency duration, Degradation in trace severity ratio, Abnormal + rise in exception volume, Potential memory leak detected, Potential + security issue detected, Abnormal rise in daily data volume. + Changing this forces a new resource to be created. + type: string + sendEmailsToSubscriptionOwners: + description: Do emails get sent to subscription owners? Defaults + to true. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -367,7 +420,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ApplicationInsightsSmartDetectionRuleStatus defines the observed state of ApplicationInsightsSmartDetectionRule. diff --git a/package/crds/insights.azure.upbound.io_applicationinsightsstandardwebtests.yaml b/package/crds/insights.azure.upbound.io_applicationinsightsstandardwebtests.yaml index 30781c28d..0e1f235c4 100644 --- a/package/crds/insights.azure.upbound.io_applicationinsightsstandardwebtests.yaml +++ b/package/crds/insights.azure.upbound.io_applicationinsightsstandardwebtests.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationinsightsstandardwebtests.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -196,9 +195,6 @@ spec: description: The value which should be used for a header in the request. type: string - required: - - name - - value type: object type: array httpVerb: @@ -212,8 +208,6 @@ spec: url: description: The WebTest request URL. type: string - required: - - url type: object type: array resourceGroupName: @@ -330,8 +324,6 @@ spec: pass the test. If set to false, the WebTest is failing if the content of content_match is found. type: boolean - required: - - contentMatch type: object type: array expectedStatusCode: @@ -350,21 +342,159 @@ spec: type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: Purpose/user defined descriptive test for this WebTest. + type: string + enabled: + description: Should the WebTest be enabled? + type: boolean + frequency: + description: Interval in seconds between test runs for this WebTest. + Valid options are 300, 600 and 900. Defaults to 300. + type: number + geoLocations: + description: Specifies a list of where to physically run the tests + from to give global coverage for accessibility of your application. + items: + type: string + type: array + location: + description: The Azure Region where the Application Insights Standard + WebTest should exist. Changing this forces a new Application + Insights Standard WebTest to be created. It needs to correlate + with location of the parent resource (azurerm_application_insights) + type: string + request: + description: A request block as defined below. + items: + properties: + body: + description: The WebTest request body. + type: string + followRedirectsEnabled: + description: Should the following of redirects be enabled? + Defaults to true. + type: boolean + header: + description: One or more header blocks as defined above. + items: + properties: + name: + description: The name which should be used for this + Application Insights Standard WebTest. Changing + this forces a new Application Insights Standard + WebTest to be created. + type: string + value: + description: The value which should be used for a + header in the request. + type: string + type: object + type: array + httpVerb: + description: Which HTTP verb to use for the call. Options + are 'GET', 'POST', 'PUT', 'PATCH', and 'DELETE'. + type: string + parseDependentRequestsEnabled: + description: Should the parsing of dependend requests be + enabled? Defaults to true. + type: boolean + url: + description: The WebTest request URL. + type: string + type: object + type: array + retryEnabled: + description: Should the retry on WebTest failure be enabled? + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Application Insights Standard WebTest. + type: object + timeout: + description: Seconds until this WebTest will timeout and fail. + Default is 30. + type: number + validationRules: + description: A validation_rules block as defined below. + items: + properties: + content: + description: A content block as defined above. + items: + properties: + contentMatch: + description: A string value containing the content + to match on. + type: string + ignoreCase: + description: Ignore the casing in the content_match + value. + type: boolean + passIfTextFound: + description: If the content of content_match is found, + pass the test. If set to false, the WebTest is failing + if the content of content_match is found. + type: boolean + type: object + type: array + expectedStatusCode: + description: The expected status code of the response. Default + is '200', '0' means 'response code < 400' + type: number + sslCertRemainingLifetime: + description: The number of days of SSL certificate validity + remaining for the checked endpoint. If the certificate + has a shorter remaining lifetime left, the test will fail. + This number should be between 1 and 365. + type: number + sslCheckEnabled: + description: Should the SSL check be enabled? + type: boolean + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -538,11 +668,17 @@ spec: type: object x-kubernetes-validations: - message: geoLocations is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.geoLocations) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.geoLocations) + || has(self.initProvider.geoLocations)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: request is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.request) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.request) + || has(self.initProvider.request)' status: description: ApplicationInsightsStandardWebTestStatus defines the observed state of ApplicationInsightsStandardWebTest. diff --git a/package/crds/insights.azure.upbound.io_applicationinsightswebtests.yaml b/package/crds/insights.azure.upbound.io_applicationinsightswebtests.yaml index 4257e0cb6..3e2b78eb9 100644 --- a/package/crds/insights.azure.upbound.io_applicationinsightswebtests.yaml +++ b/package/crds/insights.azure.upbound.io_applicationinsightswebtests.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationinsightswebtests.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -276,21 +275,92 @@ spec: Default is 30. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + configuration: + description: An XML configuration specification for a WebTest + (see here for more information). + type: string + description: + description: Purpose/user defined descriptive test for this WebTest. + type: string + enabled: + description: Is the test actively being monitored. + type: boolean + frequency: + description: Interval in seconds between test runs for this WebTest. + Valid options are 300, 600 and 900. Defaults to 300. + type: number + geoLocations: + description: A list of where to physically run the tests from + to give global coverage for accessibility of your application. + items: + type: string + type: array + kind: + description: The kind of web test that this web test watches. + Choices are ping and multistep. Changing this forces a new resource + to be created. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + It needs to correlate with location of parent resource (azurerm_application_insights). + type: string + name: + description: Specifies the name of the Application Insights WebTest. + Changing this forces a new resource to be created. + type: string + retryEnabled: + description: Allow for retries should this WebTest fail. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + timeout: + description: Seconds until this WebTest will timeout and fail. + Default is 30. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -464,15 +534,25 @@ spec: type: object x-kubernetes-validations: - message: configuration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.configuration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.configuration) + || has(self.initProvider.configuration)' - message: geoLocations is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.geoLocations) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.geoLocations) + || has(self.initProvider.geoLocations)' - message: kind is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.kind) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.kind) + || has(self.initProvider.kind)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ApplicationInsightsWebTestStatus defines the observed state of ApplicationInsightsWebTest. diff --git a/package/crds/insights.azure.upbound.io_applicationinsightsworkbooks.yaml b/package/crds/insights.azure.upbound.io_applicationinsightsworkbooks.yaml index 386d0b4ae..bf4fd5895 100644 --- a/package/crds/insights.azure.upbound.io_applicationinsightsworkbooks.yaml +++ b/package/crds/insights.azure.upbound.io_applicationinsightsworkbooks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationinsightsworkbooks.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -103,8 +102,6 @@ spec: SystemAssigned and SystemAssigned, UserAssigned. Changing this forces a new resource to be created. type: string - required: - - type type: object type: array location: @@ -212,21 +209,106 @@ spec: Workbook. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + category: + description: 'Workbook category, as defined by the user at creation + time. There may be additional category types beyond the following: + workbook, sentinel. Defaults to workbook.' + type: string + dataJson: + description: Configuration of this particular workbook. Configuration + data is a string containing valid JSON. + type: string + description: + description: Specifies the description of the workbook. + type: string + displayName: + description: Specifies the user-defined name (display name) of + the workbook. + type: string + identity: + description: An identity block as defined below. Changing this + forces a new Workbook to be created. + items: + properties: + identityIds: + description: The list of User Assigned Managed Identity + IDs assigned to this Workbook. Changing this forces a + new resource to be created. + items: + type: string + type: array + type: + description: The type of Managed Service Identity that is + configured on this Workbook. Possible values are UserAssigned, + SystemAssigned and SystemAssigned, UserAssigned. Changing + this forces a new resource to be created. + type: string + type: object + type: array + location: + description: Specifies the Azure Region where the Workbook should + exist. Changing this forces a new Workbook to be created. + type: string + name: + description: Specifies the name of this Workbook as a UUID/GUID. + It should not contain any uppercase letters. Changing this forces + a new Workbook to be created. + type: string + sourceId: + description: Resource ID for a source resource. It should not + contain any uppercase letters. Defaults to azure monitor. + type: string + storageContainerId: + description: Specifies the Resource Manager ID of the Storage + Container when bring your own storage is used. Changing this + forces a new Workbook to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Workbook. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -400,13 +482,21 @@ spec: type: object x-kubernetes-validations: - message: dataJson is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dataJson) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dataJson) + || has(self.initProvider.dataJson)' - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ApplicationInsightsWorkbookStatus defines the observed state of ApplicationInsightsWorkbook. diff --git a/package/crds/insights.azure.upbound.io_applicationinsightsworkbooktemplates.yaml b/package/crds/insights.azure.upbound.io_applicationinsightsworkbooktemplates.yaml index d8d6731d5..0b5238872 100644 --- a/package/crds/insights.azure.upbound.io_applicationinsightsworkbooktemplates.yaml +++ b/package/crds/insights.azure.upbound.io_applicationinsightsworkbooktemplates.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationinsightsworkbooktemplates.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -94,9 +93,6 @@ spec: description: Type of workbook supported by the workbook template. Defaults to workbook. type: string - required: - - category - - name type: object type: array localized: @@ -209,21 +205,101 @@ spec: description: Valid JSON object containing workbook template payload. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + author: + description: Information about the author of the workbook template. + type: string + galleries: + description: A galleries block as defined below. + items: + properties: + category: + description: Category for the gallery. + type: string + name: + description: Name of the workbook template in the gallery. + type: string + order: + description: Order of the template within the gallery. Defaults + to 0. + type: number + resourceType: + description: Azure resource type supported by the gallery. + Defaults to Azure Monitor. + type: string + type: + description: Type of workbook supported by the workbook + template. Defaults to workbook. + type: string + type: object + type: array + localized: + description: Key value pairs of localized gallery. Each key is + the locale code of languages supported by the Azure portal. + type: string + location: + description: Specifies the Azure Region where the Application + Insights Workbook Template should exist. Changing this forces + a new Application Insights Workbook Template to be created. + type: string + name: + description: Specifies the name which should be used for this + Application Insights Workbook Template. Changing this forces + a new Application Insights Workbook Template to be created. + type: string + priority: + description: Priority of the template. Determines which template + to open when a workbook gallery is opened in viewer mode. Defaults + to 0. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Application Insights Workbook Template. + type: object + templateData: + description: Valid JSON object containing workbook template payload. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -397,13 +473,21 @@ spec: type: object x-kubernetes-validations: - message: galleries is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.galleries) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.galleries) + || has(self.initProvider.galleries)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: templateData is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.templateData) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.templateData) + || has(self.initProvider.templateData)' status: description: ApplicationInsightsWorkbookTemplateStatus defines the observed state of ApplicationInsightsWorkbookTemplate. diff --git a/package/crds/insights.azure.upbound.io_monitoractiongroups.yaml b/package/crds/insights.azure.upbound.io_monitoractiongroups.yaml index 416b7c8e0..771af1ae7 100644 --- a/package/crds/insights.azure.upbound.io_monitoractiongroups.yaml +++ b/package/crds/insights.azure.upbound.io_monitoractiongroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitoractiongroups.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -81,9 +80,6 @@ spec: useCommonAlertSchema: description: Enables or disables the common alert schema. type: boolean - required: - - name - - roleId type: object type: array automationRunbookReceiver: @@ -114,13 +110,6 @@ spec: description: The resource id for webhook linked to this runbook. type: string - required: - - automationAccountId - - isGlobalRunbook - - name - - runbookName - - serviceUri - - webhookResourceId type: object type: array azureAppPushReceiver: @@ -136,9 +125,6 @@ spec: name: description: The name of the Azure app push receiver. type: string - required: - - emailAddress - - name type: object type: array azureFunctionReceiver: @@ -162,11 +148,6 @@ spec: useCommonAlertSchema: description: Enables or disables the common alert schema. type: boolean - required: - - functionAppResourceId - - functionName - - httpTriggerUrl - - name type: object type: array emailReceiver: @@ -184,9 +165,6 @@ spec: useCommonAlertSchema: description: Enables or disables the common alert schema. type: boolean - required: - - emailAddress - - name type: object type: array enabled: @@ -224,8 +202,6 @@ spec: useCommonAlertSchema: description: Indicates whether to use common alert schema. type: boolean - required: - - name type: object type: array itsmReceiver: @@ -252,12 +228,6 @@ spec: this connection is defined. Format is |, for example 00000000-0000-0000-0000-000000000000|00000000-0000-0000-0000-000000000000. type: string - required: - - connectionId - - name - - region - - ticketConfiguration - - workspaceId type: object type: array location: @@ -282,10 +252,6 @@ spec: useCommonAlertSchema: description: Enables or disables the common alert schema. type: boolean - required: - - callbackUrl - - name - - resourceId type: object type: array resourceGroupName: @@ -387,10 +353,6 @@ spec: phoneNumber: description: The phone number of the SMS receiver. type: string - required: - - countryCode - - name - - phoneNumber type: object type: array tags: @@ -411,10 +373,6 @@ spec: phoneNumber: description: The phone number of the voice receiver. type: string - required: - - countryCode - - name - - phoneNumber type: object type: array webhookReceiver: @@ -435,8 +393,6 @@ spec: tenantId: description: The tenant id for AAD auth. type: string - required: - - objectId type: object type: array name: @@ -450,27 +406,310 @@ spec: useCommonAlertSchema: description: Enables or disables the common alert schema. type: boolean - required: - - name - - serviceUri type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + armRoleReceiver: + description: One or more arm_role_receiver blocks as defined below. + items: + properties: + name: + description: The name of the ARM role receiver. + type: string + roleId: + description: The arm role id. + type: string + useCommonAlertSchema: + description: Enables or disables the common alert schema. + type: boolean + type: object + type: array + automationRunbookReceiver: + description: One or more automation_runbook_receiver blocks as + defined below. + items: + properties: + automationAccountId: + description: The automation account ID which holds this + runbook and authenticates to Azure resources. + type: string + isGlobalRunbook: + description: Indicates whether this instance is global runbook. + type: boolean + name: + description: The name of the automation runbook receiver. + type: string + runbookName: + description: The name for this runbook. + type: string + serviceUri: + description: The URI where webhooks should be sent. + type: string + useCommonAlertSchema: + description: Enables or disables the common alert schema. + type: boolean + webhookResourceId: + description: The resource id for webhook linked to this + runbook. + type: string + type: object + type: array + azureAppPushReceiver: + description: One or more azure_app_push_receiver blocks as defined + below. + items: + properties: + emailAddress: + description: The email address of the user signed into the + mobile app who will receive push notifications from this + receiver. + type: string + name: + description: The name of the Azure app push receiver. + type: string + type: object + type: array + azureFunctionReceiver: + description: One or more azure_function_receiver blocks as defined + below. + items: + properties: + functionAppResourceId: + description: The Azure resource ID of the function app. + type: string + functionName: + description: The function name in the function app. + type: string + httpTriggerUrl: + description: The HTTP trigger url where HTTP request sent + to. + type: string + name: + description: The name of the Azure Function receiver. + type: string + useCommonAlertSchema: + description: Enables or disables the common alert schema. + type: boolean + type: object + type: array + emailReceiver: + description: One or more email_receiver blocks as defined below. + items: + properties: + emailAddress: + description: The email address of this receiver. + type: string + name: + description: The name of the email receiver. Names must + be unique (case-insensitive) across all receivers within + an action group. + type: string + useCommonAlertSchema: + description: Enables or disables the common alert schema. + type: boolean + type: object + type: array + enabled: + description: Whether this action group is enabled. If an action + group is not enabled, then none of its receivers will receive + communications. Defaults to true. + type: boolean + eventHubReceiver: + description: One or more event_hub_receiver blocks as defined + below. + items: + properties: + eventHubId: + description: The resource ID of the respective Event Hub. + type: string + eventHubName: + description: The name of the specific Event Hub queue. + type: string + eventHubNamespace: + description: The namespace name of the Event Hub. + type: string + name: + description: The name of the EventHub Receiver, must be + unique within action group. + type: string + subscriptionId: + description: The ID for the subscription containing this + Event Hub. Default to the subscription ID of the Action + Group. + type: string + tenantId: + description: The Tenant ID for the subscription containing + this Event Hub. + type: string + useCommonAlertSchema: + description: Indicates whether to use common alert schema. + type: boolean + type: object + type: array + itsmReceiver: + description: One or more itsm_receiver blocks as defined below. + items: + properties: + connectionId: + description: The unique connection identifier of the ITSM + connection. + type: string + name: + description: The name of the ITSM receiver. + type: string + region: + description: The region of the workspace. + type: string + ticketConfiguration: + description: A JSON blob for the configurations of the ITSM + action. CreateMultipleWorkItems option will be part of + this blob as well. + type: string + workspaceId: + description: The Azure Log Analytics workspace ID where + this connection is defined. Format is |, for example 00000000-0000-0000-0000-000000000000|00000000-0000-0000-0000-000000000000. + type: string + type: object + type: array + location: + description: The Azure Region where the Action Group should exist. + Changing this forces a new Action Group to be created. Defaults + to global. + type: string + logicAppReceiver: + description: One or more logic_app_receiver blocks as defined + below. + items: + properties: + callbackUrl: + description: The callback url where HTTP request sent to. + type: string + name: + description: The name of the logic app receiver. + type: string + resourceId: + description: The Azure resource ID of the logic app. + type: string + useCommonAlertSchema: + description: Enables or disables the common alert schema. + type: boolean + type: object + type: array + shortName: + description: The short name of the action group. This will be + used in SMS messages. + type: string + smsReceiver: + description: One or more sms_receiver blocks as defined below. + items: + properties: + countryCode: + description: The country code of the SMS receiver. + type: string + name: + description: The name of the SMS receiver. Names must be + unique (case-insensitive) across all receivers within + an action group. + type: string + phoneNumber: + description: The phone number of the SMS receiver. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + voiceReceiver: + description: One or more voice_receiver blocks as defined below. + items: + properties: + countryCode: + description: The country code of the voice receiver. + type: string + name: + description: The name of the voice receiver. + type: string + phoneNumber: + description: The phone number of the voice receiver. + type: string + type: object + type: array + webhookReceiver: + description: One or more webhook_receiver blocks as defined below. + items: + properties: + aadAuth: + description: The aad_auth block as defined below + items: + properties: + identifierUri: + description: The identifier URI for AAD auth. + type: string + objectId: + description: The webhook application object Id for + AAD auth. + type: string + tenantId: + description: The tenant id for AAD auth. + type: string + type: object + type: array + name: + description: The name of the webhook receiver. Names must + be unique (case-insensitive) across all receivers within + an action group. + type: string + serviceUri: + description: The URI where webhooks should be sent. + type: string + useCommonAlertSchema: + description: Enables or disables the common alert schema. + type: boolean + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -644,7 +883,9 @@ spec: type: object x-kubernetes-validations: - message: shortName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.shortName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.shortName) + || has(self.initProvider.shortName)' status: description: MonitorActionGroupStatus defines the observed state of MonitorActionGroup. properties: diff --git a/package/crds/insights.azure.upbound.io_monitoractivitylogalerts.yaml b/package/crds/insights.azure.upbound.io_monitoractivitylogalerts.yaml index 598e1c972..351962c1b 100644 --- a/package/crds/insights.azure.upbound.io_monitoractivitylogalerts.yaml +++ b/package/crds/insights.azure.upbound.io_monitoractivitylogalerts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitoractivitylogalerts.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -358,8 +357,6 @@ spec: subStatus: description: The sub status of the event. type: string - required: - - category type: object type: array description: @@ -544,21 +541,189 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + action: + description: One or more action blocks as defined below. + items: + properties: + webhookProperties: + additionalProperties: + type: string + description: The map of custom string properties to include + with the post operation. These data are appended to the + webhook payload. + type: object + type: object + type: array + criteria: + description: A criteria block as defined below. + items: + properties: + caller: + description: The email address or Azure Active Directory + identifier of the user who performed the operation. + type: string + category: + description: The category of the operation. Possible values + are Administrative, Autoscale, Policy, Recommendation, + ResourceHealth, Security and ServiceHealth. + type: string + level: + description: The severity level of the event. Possible values + are Verbose, Informational, Warning, Error, and Critical. + type: string + operationName: + description: 'The Resource Manager Role-Based Access Control + operation name. Supported operation should be of the form: + //.' + type: string + recommendationCategory: + description: The recommendation category of the event. Possible + values are Cost, Reliability, OperationalExcellence and + Performance. It is only allowed when category is Recommendation. + type: string + recommendationImpact: + description: The recommendation impact of the event. Possible + values are High, Medium and Low. It is only allowed when + category is Recommendation. + type: string + recommendationType: + description: The recommendation type of the event. It is + only allowed when category is Recommendation. + type: string + resourceGroup: + description: The name of resource group monitored by the + activity log alert. + type: string + resourceHealth: + description: A block to define fine grain resource health + settings. + items: + properties: + current: + description: The current resource health statuses + that will log an alert. Possible values are Available, + Degraded, Unavailable and Unknown. + items: + type: string + type: array + previous: + description: The previous resource health statuses + that will log an alert. Possible values are Available, + Degraded, Unavailable and Unknown. + items: + type: string + type: array + reason: + description: The reason that will log an alert. Possible + values are PlatformInitiated (such as a problem + with the resource in an affected region of an Azure + incident), UserInitiated (such as a shutdown request + of a VM) and Unknown. + items: + type: string + type: array + type: object + type: array + resourceProvider: + description: The name of the resource provider monitored + by the activity log alert. + type: string + resourceType: + description: The resource type monitored by the activity + log alert. + type: string + serviceHealth: + description: A block to define fine grain service health + settings. + items: + properties: + events: + description: Events this alert will monitor Possible + values are Incident, Maintenance, Informational, + ActionRequired and Security. + items: + type: string + type: array + locations: + description: Locations this alert will monitor. For + example, West Europe. + items: + type: string + type: array + services: + description: Services this alert will monitor. For + example, Activity Logs & Alerts, Action Groups. + Defaults to all Services. + items: + type: string + type: array + type: object + type: array + status: + description: The status of the event. For example, Started, + Failed, or Succeeded. + type: string + subStatus: + description: The sub status of the event. + type: string + type: object + type: array + description: + description: The description of this activity log alert. + type: string + enabled: + description: Should this Activity Log Alert be enabled? Defaults + to true. + type: boolean + name: + description: The name of the activity log alert. Changing this + forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -732,9 +897,13 @@ spec: type: object x-kubernetes-validations: - message: criteria is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.criteria) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.criteria) + || has(self.initProvider.criteria)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: MonitorActivityLogAlertStatus defines the observed state of MonitorActivityLogAlert. diff --git a/package/crds/insights.azure.upbound.io_monitorautoscalesettings.yaml b/package/crds/insights.azure.upbound.io_monitorautoscalesettings.yaml index 0f4be1c0d..ab4ecb012 100644 --- a/package/crds/insights.azure.upbound.io_monitorautoscalesettings.yaml +++ b/package/crds/insights.azure.upbound.io_monitorautoscalesettings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitorautoscalesettings.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -120,8 +119,6 @@ spec: description: The HTTPS URI which should receive scale notifications. type: string - required: - - serviceUri type: object type: array type: object @@ -150,10 +147,6 @@ spec: description: The minimum number of instances for this resource. Valid values are between 0 and 1000. type: number - required: - - default - - maximum - - minimum type: object type: array fixedDate: @@ -174,9 +167,6 @@ spec: A list of possible values can be found here. Defaults to UTC. type: string - required: - - end - - start type: object type: array name: @@ -214,10 +204,6 @@ spec: A list of possible values can be found here. Defaults to UTC. type: string - required: - - days - - hours - - minutes type: object type: array rule: @@ -250,10 +236,6 @@ spec: items: type: string type: array - required: - - name - - operator - - values type: object type: array divideByInstanceCount: @@ -396,14 +378,6 @@ spec: be between 5 minutes and 12 hours and be formatted as an ISO 8601 string. type: string - required: - - metricName - - operator - - statistic - - threshold - - timeAggregation - - timeGrain - - timeWindow type: object type: array scaleAction: @@ -429,21 +403,10 @@ spec: description: The number of instances involved in the scaling action. type: number - required: - - cooldown - - direction - - type - - value type: object type: array - required: - - metricTrigger - - scaleAction type: object type: array - required: - - capacity - - name type: object type: array resourceGroupName: @@ -612,21 +575,303 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Specifies whether automatic scaling is enabled for + the target resource. Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + AutoScale Setting should exist. Changing this forces a new resource + to be created. + type: string + name: + description: The name of the AutoScale Setting. Changing this + forces a new resource to be created. + type: string + notification: + description: Specifies a notification block as defined below. + items: + properties: + email: + description: A email block as defined below. + items: + properties: + customEmails: + description: Specifies a list of custom email addresses + to which the email notifications will be sent. + items: + type: string + type: array + sendToSubscriptionAdministrator: + description: Should email notifications be sent to + the subscription administrator? Defaults to false. + type: boolean + sendToSubscriptionCoAdministrator: + description: Should email notifications be sent to + the subscription co-administrator? Defaults to false. + type: boolean + type: object + type: array + webhook: + description: One or more webhook blocks as defined below. + items: + properties: + properties: + additionalProperties: + type: string + description: A map of settings. + type: object + serviceUri: + description: The HTTPS URI which should receive scale + notifications. + type: string + type: object + type: array + type: object + type: array + profile: + description: Specifies one or more (up to 20) profile blocks as + defined below. + items: + properties: + capacity: + description: A capacity block as defined below. + items: + properties: + default: + description: The number of instances that are available + for scaling if metrics are not available for evaluation. + The default is only used if the current instance + count is lower than the default. Valid values are + between 0 and 1000. + type: number + maximum: + description: The maximum number of instances for this + resource. Valid values are between 0 and 1000. + type: number + minimum: + description: The minimum number of instances for this + resource. Valid values are between 0 and 1000. + type: number + type: object + type: array + fixedDate: + description: A fixed_date block as defined below. This cannot + be specified if a recurrence block is specified. + items: + properties: + end: + description: Specifies the end date for the profile, + formatted as an RFC3339 date string. + type: string + start: + description: Specifies the start date for the profile, + formatted as an RFC3339 date string. + type: string + timezone: + description: The Time Zone used for the hours field. + A list of possible values can be found here. Defaults + to UTC. + type: string + type: object + type: array + name: + description: Specifies the name of the profile. + type: string + recurrence: + description: A recurrence block as defined below. This cannot + be specified if a fixed_date block is specified. + items: + properties: + days: + description: A list of days that this profile takes + effect on. Possible values include Monday, Tuesday, + Wednesday, Thursday, Friday, Saturday and Sunday. + items: + type: string + type: array + hours: + description: A list containing a single item, which + specifies the Hour interval at which this recurrence + should be triggered (in 24-hour time). Possible + values are from 0 to 23. + items: + type: number + type: array + minutes: + description: A list containing a single item which + specifies the Minute interval at which this recurrence + should be triggered. + items: + type: number + type: array + timezone: + description: The Time Zone used for the hours field. + A list of possible values can be found here. Defaults + to UTC. + type: string + type: object + type: array + rule: + description: One or more (up to 10) rule blocks as defined + below. + items: + properties: + metricTrigger: + description: A metric_trigger block as defined below. + items: + properties: + dimensions: + description: One or more dimensions block as + defined below. + items: + properties: + name: + description: Specifies the name of the + profile. + type: string + operator: + description: 'Specifies the operator used + to compare the metric data and threshold. + Possible values are: Equals, NotEquals, + GreaterThan, GreaterThanOrEqual, LessThan, + LessThanOrEqual.' + type: string + values: + description: A list of dimension values. + items: + type: string + type: array + type: object + type: array + divideByInstanceCount: + description: Whether to enable metric divide + by instance count. + type: boolean + metricName: + description: The name of the metric that defines + what the rule monitors, such as Percentage + CPU for Virtual Machine Scale Sets and CpuPercentage + for App Service Plan. + type: string + metricNamespace: + description: The namespace of the metric that + defines what the rule monitors, such as microsoft.compute/virtualmachinescalesets + for Virtual Machine Scale Sets. + type: string + operator: + description: 'Specifies the operator used to + compare the metric data and threshold. Possible + values are: Equals, NotEquals, GreaterThan, + GreaterThanOrEqual, LessThan, LessThanOrEqual.' + type: string + statistic: + description: Specifies how the metrics from + multiple instances are combined. Possible + values are Average, Max, Min and Sum. + type: string + threshold: + description: Specifies the threshold of the + metric that triggers the scale action. + type: number + timeAggregation: + description: Specifies how the data that's collected + should be combined over time. Possible values + include Average, Count, Maximum, Minimum, + Last and Total. + type: string + timeGrain: + description: Specifies the granularity of metrics + that the rule monitors, which must be one + of the pre-defined values returned from the + metric definitions for the metric. This value + must be between 1 minute and 12 hours an be + formatted as an ISO 8601 string. + type: string + timeWindow: + description: Specifies the time range for which + data is collected, which must be greater than + the delay in metric collection (which varies + from resource to resource). This value must + be between 5 minutes and 12 hours and be formatted + as an ISO 8601 string. + type: string + type: object + type: array + scaleAction: + description: A scale_action block as defined below. + items: + properties: + cooldown: + description: The amount of time to wait since + the last scaling action before this action + occurs. Must be between 1 minute and 1 week + and formatted as a ISO 8601 string. + type: string + direction: + description: The scale direction. Possible values + are Increase and Decrease. + type: string + type: + description: The type of action that should + occur. Possible values are ChangeCount, ExactCount, + PercentChangeCount and ServiceAllowedNextValue. + type: string + value: + description: The number of instances involved + in the scaling action. + type: number + type: object + type: array + type: object + type: array + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -800,11 +1045,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: profile is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.profile) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.profile) + || has(self.initProvider.profile)' status: description: MonitorAutoscaleSettingStatus defines the observed state of MonitorAutoscaleSetting. diff --git a/package/crds/insights.azure.upbound.io_monitordatacollectionendpoints.yaml b/package/crds/insights.azure.upbound.io_monitordatacollectionendpoints.yaml index d638f4d1c..e8362783a 100644 --- a/package/crds/insights.azure.upbound.io_monitordatacollectionendpoints.yaml +++ b/package/crds/insights.azure.upbound.io_monitordatacollectionendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitordatacollectionendpoints.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -173,21 +172,69 @@ spec: Data Collection Endpoint. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: Specifies a description for the Data Collection Endpoint. + type: string + kind: + description: The kind of the Data Collection Endpoint. Possible + values are Linux and Windows. + type: string + location: + description: The Azure Region where the Data Collection Endpoint + should exist. Changing this forces a new Data Collection Endpoint + to be created. + type: string + publicNetworkAccessEnabled: + description: Whether network access from public internet to the + Data Collection Endpoint are allowed. Possible values are true + and false. Default to true. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Data Collection Endpoint. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -361,7 +408,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: MonitorDataCollectionEndpointStatus defines the observed state of MonitorDataCollectionEndpoint. diff --git a/package/crds/insights.azure.upbound.io_monitordatacollectionruleassociations.yaml b/package/crds/insights.azure.upbound.io_monitordatacollectionruleassociations.yaml index 43bee5363..891ff958e 100644 --- a/package/crds/insights.azure.upbound.io_monitordatacollectionruleassociations.yaml +++ b/package/crds/insights.azure.upbound.io_monitordatacollectionruleassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitordatacollectionruleassociations.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -311,21 +310,49 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of the Data Collection Rule Association. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/insights.azure.upbound.io_monitordatacollectionrules.yaml b/package/crds/insights.azure.upbound.io_monitordatacollectionrules.yaml index 1378ea8de..292183014 100644 --- a/package/crds/insights.azure.upbound.io_monitordatacollectionrules.yaml +++ b/package/crds/insights.azure.upbound.io_monitordatacollectionrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitordatacollectionrules.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -176,9 +175,6 @@ spec: transformKql: description: The KQL query to transform stream data. type: string - required: - - destinations - - streams type: object type: array dataSources: @@ -210,13 +206,8 @@ spec: Hub. Possible value should be a custom stream name. type: string - required: - - name - - stream type: object type: array - required: - - eventHubDataSource type: object type: array extension: @@ -254,10 +245,6 @@ spec: items: type: string type: array - required: - - extensionName - - name - - streams type: object type: array iisLog: @@ -285,9 +272,6 @@ spec: items: type: string type: array - required: - - name - - streams type: object type: array logFile: @@ -327,12 +311,8 @@ spec: d hh:mm:ss, dd/MMM/yyyy:HH:mm:ss zzz,and yyyy-MM-ddTHH:mm:ssK. type: string - required: - - recordStartTimestampFormat type: object type: array - required: - - text type: object type: array streams: @@ -344,11 +324,6 @@ spec: items: type: string type: array - required: - - filePatterns - - format - - name - - streams type: object type: array performanceCounter: @@ -387,11 +362,6 @@ spec: items: type: string type: array - required: - - counterSpecifiers - - name - - samplingFrequencyInSeconds - - streams type: object type: array platformTelemetry: @@ -414,9 +384,6 @@ spec: items: type: string type: array - required: - - name - - streams type: object type: array prometheusForwarder: @@ -437,9 +404,6 @@ spec: value: description: The value of the filter. type: string - required: - - label - - value type: object type: array name: @@ -457,9 +421,6 @@ spec: items: type: string type: array - required: - - name - - streams type: object type: array syslog: @@ -499,10 +460,6 @@ spec: items: type: string type: array - required: - - facilityNames - - logLevels - - name type: object type: array windowsEventLog: @@ -532,10 +489,6 @@ spec: items: type: string type: array - required: - - name - - streams - - xPathQueries type: object type: array windowsFirewallLog: @@ -558,9 +511,6 @@ spec: items: type: string type: array - required: - - name - - streams type: object type: array type: object @@ -582,8 +532,6 @@ spec: data sources regardless of type within the Data Collection Rule. type: string - required: - - name type: object type: array eventHub: @@ -679,8 +627,6 @@ spec: data sources regardless of type within the Data Collection Rule. type: string - required: - - name type: object type: array eventHubDirect: @@ -696,9 +642,6 @@ spec: data sources regardless of type within the Data Collection Rule. type: string - required: - - eventHubId - - name type: object type: array logAnalytics: @@ -795,8 +738,6 @@ spec: type: string type: object type: object - required: - - name type: object type: array monitorAccount: @@ -813,9 +754,6 @@ spec: data sources regardless of type within the Data Collection Rule. type: string - required: - - monitorAccountId - - name type: object type: array storageBlob: @@ -995,8 +933,6 @@ spec: type: string type: object type: object - required: - - name type: object type: array storageBlobDirect: @@ -1016,10 +952,6 @@ spec: storageAccountId: description: The resource ID of the Storage Account. type: string - required: - - containerName - - name - - storageAccountId type: object type: array storageTableDirect: @@ -1039,10 +971,6 @@ spec: tableName: description: The Storage Table name. type: string - required: - - name - - storageAccountId - - tableName type: object type: array type: object @@ -1063,8 +991,6 @@ spec: that should be configured on this Data Collection Rule. Possible values are SystemAssigned and UserAssigned. type: string - required: - - type type: object type: array kind: @@ -1179,18 +1105,12 @@ spec: Collection Rule. Possible values are SystemAssigned and UserAssigned. type: string - required: - - name - - type type: object type: array streamName: description: The name of the custom stream. This name should be unique across all stream_declaration blocks. type: string - required: - - column - - streamName type: object type: array tags: @@ -1200,21 +1120,606 @@ spec: Data Collection Rule. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dataFlow: + description: One or more data_flow blocks as defined below. + items: + properties: + builtInTransform: + description: The built-in transform to transform stream + data. + type: string + destinations: + description: Specifies a list of destination names. A azure_monitor_metrics + data source only allows for stream of kind Microsoft-InsightsMetrics. + items: + type: string + type: array + outputStream: + description: The output stream of the transform. Only required + if the data flow changes data to a different stream. + type: string + streams: + description: Specifies a list of streams. Possible values + include but not limited to Microsoft-Event, Microsoft-InsightsMetrics, + Microsoft-Perf, Microsoft-Syslog,and Microsoft-WindowsEvent. + items: + type: string + type: array + transformKql: + description: The KQL query to transform stream data. + type: string + type: object + type: array + dataSources: + description: A data_sources block as defined below. This property + is optional and can be omitted if the rule is meant to be used + via direct calls to the provisioned endpoint. + items: + properties: + dataImport: + description: A data_import block as defined above. + items: + properties: + eventHubDataSource: + description: An event_hub_data_source block as defined + below. + items: + properties: + consumerGroup: + description: The Event Hub consumer group name. + type: string + name: + description: The name which should be used for + this data source. This name should be unique + across all data sources regardless of type + within the Data Collection Rule. + type: string + stream: + description: The stream to collect from Event + Hub. Possible value should be a custom stream + name. + type: string + type: object + type: array + type: object + type: array + extension: + description: One or more extension blocks as defined below. + items: + properties: + extensionJson: + description: A JSON String which specifies the extension + setting. + type: string + extensionName: + description: The name of the VM extension. + type: string + inputDataSources: + description: 'Specifies a list of data sources this + extension needs data from. An item should be a name + of a supported data source which produces only one + stream. Supported data sources type: performance_counter, + windows_event_log,and syslog.' + items: + type: string + type: array + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + streams: + description: Specifies a list of streams that this + data source will be sent to. A stream indicates + what schema will be used for this data and usually + what table in Log Analytics the data will be sent + to. + items: + type: string + type: array + type: object + type: array + iisLog: + description: One or more iis_log blocks as defined below. + items: + properties: + logDirectories: + description: Specifies a list of absolute paths where + the log files are located. + items: + type: string + type: array + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + streams: + description: Specifies a list of streams that this + data source will be sent to. A stream indicates + what schema will be used for this data and usually + what table in Log Analytics the data will be sent + to. + items: + type: string + type: array + type: object + type: array + logFile: + description: One or more log_file blocks as defined below. + items: + properties: + filePatterns: + description: Specifies a list of file patterns where + the log files are located. For example, C:\\JavaLogs\\*.log. + items: + type: string + type: array + format: + description: The data format of the log files. possible + value is text. + type: string + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + settings: + description: A settings block as defined below. + items: + properties: + text: + description: A text block as defined below. + items: + properties: + recordStartTimestampFormat: + description: The timestamp format of the + text log files. Possible values are + ISO 8601, YYYY-MM-DD HH:MM:SS, M/D/YYYY + HH:MM:SS AM/PM, Mon DD, YYYY HH:MM:SS, + yyMMdd HH:mm:ss, ddMMyy HH:mm:ss, MMM + d hh:mm:ss, dd/MMM/yyyy:HH:mm:ss zzz,and + yyyy-MM-ddTHH:mm:ssK. + type: string + type: object + type: array + type: object + type: array + streams: + description: Specifies a list of streams that this + data source will be sent to. A stream indicates + what schema will be used for this data and usually + what table in Log Analytics the data will be sent + to. + items: + type: string + type: array + type: object + type: array + performanceCounter: + description: One or more performance_counter blocks as defined + below. + items: + properties: + counterSpecifiers: + description: Specifies a list of specifier names of + the performance counters you want to collect. To + get a list of performance counters on Windows, run + the command typeperf. Please see this document for + more information. + items: + type: string + type: array + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + samplingFrequencyInSeconds: + description: The number of seconds between consecutive + counter measurements (samples). The value should + be integer between 1 and 300 inclusive. sampling_frequency_in_seconds + must be equal to 60 seconds for counters collected + with Microsoft-InsightsMetrics stream. + type: number + streams: + description: Specifies a list of streams that this + data source will be sent to. A stream indicates + what schema will be used for this data and usually + what table in Log Analytics the data will be sent + to. + items: + type: string + type: array + type: object + type: array + platformTelemetry: + description: One or more platform_telemetry blocks as defined + below. + items: + properties: + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + streams: + description: Specifies a list of streams that this + data source will be sent to. A stream indicates + what schema will be used for this data and usually + what table in Log Analytics the data will be sent + to. + items: + type: string + type: array + type: object + type: array + prometheusForwarder: + description: One or more prometheus_forwarder blocks as + defined below. + items: + properties: + labelIncludeFilter: + description: One or more label_include_filter blocks + as defined above. + items: + properties: + label: + description: The label of the filter. This label + should be unique across all label_include_fileter + block. Possible value is microsoft_metrics_include_label. + type: string + value: + description: The value of the filter. + type: string + type: object + type: array + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + streams: + description: Specifies a list of streams that this + data source will be sent to. A stream indicates + what schema will be used for this data and usually + what table in Log Analytics the data will be sent + to. + items: + type: string + type: array + type: object + type: array + syslog: + description: One or more syslog blocks as defined below. + items: + properties: + facilityNames: + description: Specifies a list of facility names. Use + a wildcard * to collect logs for all facility names. + Possible values are auth, authpriv, cron, daemon, + kern, lpr, mail, mark, news, syslog, user, uucp, + local0, local1, local2, local3, local4, local5, + local6, local7,and *. + items: + type: string + type: array + logLevels: + description: Specifies a list of log levels. Use a + wildcard * to collect logs for all log levels. Possible + values are Debug, Info, Notice, Warning, Error, + Critical, Alert, Emergency,and *. + items: + type: string + type: array + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + streams: + description: Specifies a list of streams that this + data source will be sent to. A stream indicates + what schema will be used for this data and usually + what table in Log Analytics the data will be sent + to. + items: + type: string + type: array + type: object + type: array + windowsEventLog: + description: One or more windows_event_log blocks as defined + below. + items: + properties: + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + streams: + description: Specifies a list of streams that this + data source will be sent to. A stream indicates + what schema will be used for this data and usually + what table in Log Analytics the data will be sent + to. + items: + type: string + type: array + xPathQueries: + description: Specifies a list of Windows Event Log + queries in XPath expression. Please see this document + for more information. + items: + type: string + type: array + type: object + type: array + windowsFirewallLog: + description: One or more windows_firewall_log blocks as + defined below. + items: + properties: + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + streams: + description: Specifies a list of streams that this + data source will be sent to. A stream indicates + what schema will be used for this data and usually + what table in Log Analytics the data will be sent + to. + items: + type: string + type: array + type: object + type: array + type: object + type: array + description: + description: The description of the Data Collection Rule. + type: string + destinations: + description: A destinations block as defined below. + items: + properties: + azureMonitorMetrics: + description: A azure_monitor_metrics block as defined above. + items: + properties: + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + type: object + type: array + eventHub: + description: One or more event_hub blocks as defined below. + items: + properties: + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + type: object + type: array + eventHubDirect: + description: One or more event_hub blocks as defined below. + items: + properties: + eventHubId: + description: The resource ID of the Event Hub. + type: string + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + type: object + type: array + logAnalytics: + description: One or more log_analytics blocks as defined + below. + items: + properties: + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + type: object + type: array + monitorAccount: + description: One or more monitor_account blocks as defined + below. + items: + properties: + monitorAccountId: + description: The resource ID of the Monitor Account. + type: string + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + type: object + type: array + storageBlob: + description: One or more storage_blob blocks as defined + below. + items: + properties: + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + type: object + type: array + storageBlobDirect: + description: One or more storage_blob_direct blocks as defined + below. + items: + properties: + containerName: + description: The Storage Container name. + type: string + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + storageAccountId: + description: The resource ID of the Storage Account. + type: string + type: object + type: array + storageTableDirect: + description: One or more storage_table_direct blocks as + defined below. + items: + properties: + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + storageAccountId: + description: The resource ID of the Storage Account. + type: string + tableName: + description: The Storage Table name. + type: string + type: object + type: array + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Data Collection Rule. Currently, + up to 1 identity is supported. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Data Collection Rule. + Possible values are SystemAssigned and UserAssigned. + type: string + type: object + type: array + kind: + description: The kind of the Data Collection Rule. Possible values + are Linux, Windows,and AgentDirectToStore. A rule of kind Linux + does not allow for windows_event_log data sources. And a rule + of kind Windows does not allow for syslog data sources. If kind + is not specified, all kinds of data sources are allowed. + type: string + location: + description: The Azure Region where the Data Collection Rule should + exist. Changing this forces a new Data Collection Rule to be + created. + type: string + streamDeclaration: + description: A stream_declaration block as defined below. + items: + properties: + column: + description: One or more column blocks as defined above. + items: + properties: + name: + description: The name which should be used for this + data source. This name should be unique across all + data sources regardless of type within the Data + Collection Rule. + type: string + type: + description: Specifies the type of Managed Service + Identity that should be configured on this Data + Collection Rule. Possible values are SystemAssigned + and UserAssigned. + type: string + type: object + type: array + streamName: + description: The name of the custom stream. This name should + be unique across all stream_declaration blocks. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Data Collection Rule. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1388,11 +1893,17 @@ spec: type: object x-kubernetes-validations: - message: dataFlow is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dataFlow) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dataFlow) + || has(self.initProvider.dataFlow)' - message: destinations is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.destinations) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.destinations) + || has(self.initProvider.destinations)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: MonitorDataCollectionRuleStatus defines the observed state of MonitorDataCollectionRule. diff --git a/package/crds/insights.azure.upbound.io_monitormetricalerts.yaml b/package/crds/insights.azure.upbound.io_monitormetricalerts.yaml index f6f371da5..2505d39a2 100644 --- a/package/crds/insights.azure.upbound.io_monitormetricalerts.yaml +++ b/package/crds/insights.azure.upbound.io_monitormetricalerts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitormetricalerts.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -177,10 +176,6 @@ spec: webTestId: description: The ID of the Application Insights Web Test. type: string - required: - - componentId - - failedLocationCount - - webTestId type: object type: array autoMitigate: @@ -213,10 +208,6 @@ spec: items: type: string type: array - required: - - name - - operator - - values type: object type: array metricName: @@ -239,12 +230,6 @@ spec: description: The criteria threshold value that activates the alert. type: number - required: - - aggregation - - metricName - - metricNamespace - - operator - - threshold type: object type: array description: @@ -280,10 +265,6 @@ spec: items: type: string type: array - required: - - name - - operator - - values type: object type: array evaluationFailureCount: @@ -315,12 +296,6 @@ spec: description: Skip the metric validation to allow creating an alert rule on a custom metric that isn't yet emitted? type: boolean - required: - - aggregation - - alertSensitivity - - metricName - - metricNamespace - - operator type: object type: array enabled: @@ -522,21 +497,230 @@ spec: PT15M, PT30M, PT1H, PT6H, PT12H and P1D. Defaults to PT5M. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + action: + description: One or more action blocks as defined below. + items: + properties: + webhookProperties: + additionalProperties: + type: string + description: The map of custom string properties to include + with the post operation. These data are appended to the + webhook payload. + type: object + type: object + type: array + applicationInsightsWebTestLocationAvailabilityCriteria: + description: A application_insights_web_test_location_availability_criteria + block as defined below. + items: + properties: + componentId: + description: The ID of the Application Insights Resource. + type: string + failedLocationCount: + description: The number of failed locations. + type: number + webTestId: + description: The ID of the Application Insights Web Test. + type: string + type: object + type: array + autoMitigate: + description: Should the alerts in this Metric Alert be auto resolved? + Defaults to true. + type: boolean + criteria: + description: One or more (static) criteria blocks as defined below. + items: + properties: + aggregation: + description: The statistic that runs over the metric values. + Possible values are Average, Count, Minimum, Maximum and + Total. + type: string + dimension: + description: One or more dimension blocks as defined below. + items: + properties: + name: + description: The name of the Metric Alert. Changing + this forces a new resource to be created. + type: string + operator: + description: The criteria operator. Possible values + are LessThan, GreaterThan and GreaterOrLessThan. + type: string + values: + description: The list of dimension values. + items: + type: string + type: array + type: object + type: array + metricName: + description: One of the metric names to be monitored. + type: string + metricNamespace: + description: One of the metric namespaces to be monitored. + type: string + operator: + description: The criteria operator. Possible values are + Equals, GreaterThan, GreaterThanOrEqual, LessThan and + LessThanOrEqual. + type: string + skipMetricValidation: + description: Skip the metric validation to allow creating + an alert rule on a custom metric that isn't yet emitted? + Defaults to false. + type: boolean + threshold: + description: The criteria threshold value that activates + the alert. + type: number + type: object + type: array + description: + description: The description of this Metric Alert. + type: string + dynamicCriteria: + description: A dynamic_criteria block as defined below. + items: + properties: + aggregation: + description: The statistic that runs over the metric values. + Possible values are Average, Count, Minimum, Maximum and + Total. + type: string + alertSensitivity: + description: The extent of deviation required to trigger + an alert. Possible values are Low, Medium and High. + type: string + dimension: + description: One or more dimension blocks as defined below. + items: + properties: + name: + description: The name of the Metric Alert. Changing + this forces a new resource to be created. + type: string + operator: + description: The criteria operator. Possible values + are LessThan, GreaterThan and GreaterOrLessThan. + type: string + values: + description: The list of dimension values. + items: + type: string + type: array + type: object + type: array + evaluationFailureCount: + description: The number of violations to trigger an alert. + Should be smaller or equal to evaluation_total_count. + Defaults to 4. + type: number + evaluationTotalCount: + description: The number of aggregated lookback points. The + lookback time window is calculated based on the aggregation + granularity (window_size) and the selected number of aggregated + points. Defaults to 4. + type: number + ignoreDataBefore: + description: The ISO8601 date from which to start learning + the metric historical data and calculate the dynamic thresholds. + type: string + metricName: + description: One of the metric names to be monitored. + type: string + metricNamespace: + description: One of the metric namespaces to be monitored. + type: string + operator: + description: The criteria operator. Possible values are + LessThan, GreaterThan and GreaterOrLessThan. + type: string + skipMetricValidation: + description: Skip the metric validation to allow creating + an alert rule on a custom metric that isn't yet emitted? + type: boolean + type: object + type: array + enabled: + description: Should this Metric Alert be enabled? Defaults to + true. + type: boolean + frequency: + description: The evaluation frequency of this Metric Alert, represented + in ISO 8601 duration format. Possible values are PT1M, PT5M, + PT15M, PT30M and PT1H. Defaults to PT1M. + type: string + severity: + description: The severity of this Metric Alert. Possible values + are 0, 1, 2, 3 and 4. Defaults to 3. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + targetResourceLocation: + description: The location of the target resource. The location + of the target pluginsdk. Required when using subscription, resource + group scope or multiple scopes. + type: string + targetResourceType: + description: The resource type (e.g. Microsoft.Compute/virtualMachines) + of the target resource. The resource type (e.g. Microsoft.Compute/virtualMachines) + of the target pluginsdk. Required when using subscription, resource + group scope or multiple scopes. + type: string + windowSize: + description: The period of time that is used to monitor alert + activity, represented in ISO 8601 duration format. This value + must be greater than frequency. Possible values are PT1M, PT5M, + PT15M, PT30M, PT1H, PT6H, PT12H and P1D. Defaults to PT5M. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/insights.azure.upbound.io_monitorprivatelinkscopedservices.yaml b/package/crds/insights.azure.upbound.io_monitorprivatelinkscopedservices.yaml index ac49e0f6b..65f7f1b78 100644 --- a/package/crds/insights.azure.upbound.io_monitorprivatelinkscopedservices.yaml +++ b/package/crds/insights.azure.upbound.io_monitorprivatelinkscopedservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitorprivatelinkscopedservices.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -308,21 +307,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/insights.azure.upbound.io_monitorprivatelinkscopes.yaml b/package/crds/insights.azure.upbound.io_monitorprivatelinkscopes.yaml index ed63462ab..9abe4b254 100644 --- a/package/crds/insights.azure.upbound.io_monitorprivatelinkscopes.yaml +++ b/package/crds/insights.azure.upbound.io_monitorprivatelinkscopes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitorprivatelinkscopes.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -156,21 +155,52 @@ spec: Azure Monitor Private Link Scope. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Azure Monitor Private Link Scope. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/insights.azure.upbound.io_monitorscheduledqueryrulesalerts.yaml b/package/crds/insights.azure.upbound.io_monitorscheduledqueryrulesalerts.yaml index ea07fbf5a..4c0cbd0e1 100644 --- a/package/crds/insights.azure.upbound.io_monitorscheduledqueryrulesalerts.yaml +++ b/package/crds/insights.azure.upbound.io_monitorscheduledqueryrulesalerts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitorscheduledqueryrulesalerts.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -413,10 +412,6 @@ spec: rule should be triggered. Values must be between 0 and 10000 inclusive. type: number - required: - - metricTriggerType - - operator - - threshold type: object type: array operator: @@ -428,27 +423,159 @@ spec: should be triggered. Values must be between 0 and 10000 inclusive. type: number - required: - - operator - - threshold type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + action: + description: An action block as defined below. + items: + properties: + customWebhookPayload: + description: Custom payload to be sent for all webhook payloads + in alerting action. + type: string + emailSubject: + description: Custom subject override for all email ids in + Azure action group. + type: string + type: object + type: array + authorizedResourceIds: + description: List of Resource IDs referred into query. + items: + type: string + type: array + autoMitigationEnabled: + description: Should the alerts in this Metric Alert be auto resolved? + Defaults to false. -> NOTE auto_mitigation_enabled and throttling + are mutually exclusive and cannot both be set. + type: boolean + description: + description: The description of the scheduled query rule. + type: string + enabled: + description: Whether this scheduled query rule is enabled. Default + is true. + type: boolean + frequency: + description: Frequency (in minutes) at which rule condition should + be evaluated. Values must be between 5 and 1440 (inclusive). + type: number + location: + description: Specifies the Azure Region where the resource should + exist. Changing this forces a new resource to be created. + type: string + name: + description: The name of the scheduled query rule. Changing this + forces a new resource to be created. + type: string + query: + description: Log search query. + type: string + queryType: + description: The type of query results. Possible values are ResultCount + and Number. Default is ResultCount. If set to Number, query + must include an AggregatedValue column of a numeric type, for + example, Heartbeat | summarize AggregatedValue = count() by + bin(TimeGenerated, 5m). + type: string + severity: + description: 'Severity of the alert. Possible values include: + 0, 1, 2, 3, or 4.' + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + throttling: + description: Time (in minutes) for which Alerts should be throttled + or suppressed. Values must be between 0 and 10000 (inclusive). + type: number + timeWindow: + description: Time window for which data needs to be fetched for + query (must be greater than or equal to frequency). Values must + be between 5 and 2880 (inclusive). + type: number + trigger: + description: A trigger block as defined below. + items: + properties: + metricTrigger: + description: A metric_trigger block as defined above. Trigger + condition for metric query rule. + items: + properties: + metricColumn: + description: Evaluation of metric on a particular + column. + type: string + metricTriggerType: + description: Metric Trigger Type - 'Consecutive' or + 'Total'. + type: string + operator: + description: Evaluation operation for rule - 'GreaterThan', + GreaterThanOrEqual', 'LessThan', or 'LessThanOrEqual'. + type: string + threshold: + description: Result or count threshold based on which + rule should be triggered. Values must be between + 0 and 10000 inclusive. + type: number + type: object + type: array + operator: + description: Evaluation operation for rule - 'GreaterThan', + GreaterThanOrEqual', 'LessThan', or 'LessThanOrEqual'. + type: string + threshold: + description: Result or count threshold based on which rule + should be triggered. Values must be between 0 and 10000 + inclusive. + type: number + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -622,19 +749,33 @@ spec: type: object x-kubernetes-validations: - message: action is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.action) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.action) + || has(self.initProvider.action)' - message: frequency is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frequency) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frequency) + || has(self.initProvider.frequency)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: query is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.query) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.query) + || has(self.initProvider.query)' - message: timeWindow is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timeWindow) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.timeWindow) + || has(self.initProvider.timeWindow)' - message: trigger is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.trigger) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.trigger) + || has(self.initProvider.trigger)' status: description: MonitorScheduledQueryRulesAlertStatus defines the observed state of MonitorScheduledQueryRulesAlert. diff --git a/package/crds/insights.azure.upbound.io_monitorscheduledqueryrulesalertv2s.yaml b/package/crds/insights.azure.upbound.io_monitorscheduledqueryrulesalertv2s.yaml index fa5ebfde6..0f535be7e 100644 --- a/package/crds/insights.azure.upbound.io_monitorscheduledqueryrulesalertv2s.yaml +++ b/package/crds/insights.azure.upbound.io_monitorscheduledqueryrulesalertv2s.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitorscheduledqueryrulesalertv2s.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -115,10 +114,6 @@ spec: items: type: string type: array - required: - - name - - operator - - values type: object type: array failingPeriods: @@ -138,9 +133,6 @@ spec: and the selected number of aggregated points. Possible value is integer between 1 and 6. type: number - required: - - minimumFailingPeriodsToTriggerAlert - - numberOfEvaluationPeriods type: object type: array metricMeasureColumn: @@ -170,11 +162,6 @@ spec: points in aggregation granularity. Possible values are Average, Count, Maximum, Minimum,and Total. type: string - required: - - operator - - query - - threshold - - timeAggregationMethod type: object type: array description: @@ -415,21 +402,213 @@ spec: or false. The default is false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + action: + description: An action block as defined below. + items: + properties: + actionGroups: + description: List of Action Group resource IDs to invoke + when the alert fires. + items: + type: string + type: array + customProperties: + additionalProperties: + type: string + description: Specifies the properties of an alert payload. + type: object + type: object + type: array + autoMitigationEnabled: + description: Specifies the flag that indicates whether the alert + should be automatically resolved or not. Value should be true + or false. The default is false. + type: boolean + criteria: + description: A criteria block as defined below. + items: + properties: + dimension: + description: A dimension block as defined below. + items: + properties: + name: + description: Specifies the name which should be used + for this Monitor Scheduled Query Rule. Changing + this forces a new resource to be created. + type: string + operator: + description: Operator for dimension values. Possible + values are Exclude,and Include. + type: string + values: + description: List of dimension values. Use a wildcard + * to collect all. + items: + type: string + type: array + type: object + type: array + failingPeriods: + description: A failing_periods block as defined below. + items: + properties: + minimumFailingPeriodsToTriggerAlert: + description: Specifies the number of violations to + trigger an alert. Should be smaller or equal to + number_of_evaluation_periods. Possible value is + integer between 1 and 6. + type: number + numberOfEvaluationPeriods: + description: Specifies the number of aggregated look-back + points. The look-back time window is calculated + based on the aggregation granularity window_duration + and the selected number of aggregated points. Possible + value is integer between 1 and 6. + type: number + type: object + type: array + metricMeasureColumn: + description: Specifies the column containing the metric + measure number. + type: string + operator: + description: Specifies the criteria operator. Possible values + are Equal, GreaterThan, GreaterThanOrEqual, LessThan,and + LessThanOrEqual. + type: string + query: + description: The query to run on logs. The results returned + by this query are used to populate the alert. + type: string + resourceIdColumn: + description: Specifies the column containing the resource + ID. The content of the column must be an uri formatted + as resource ID. + type: string + threshold: + description: Specifies the criteria threshold value that + activates the alert. + type: number + timeAggregationMethod: + description: The type of aggregation to apply to the data + points in aggregation granularity. Possible values are + Average, Count, Maximum, Minimum,and Total. + type: string + type: object + type: array + description: + description: Specifies the description of the scheduled query + rule. + type: string + displayName: + description: Specifies the display name of the alert rule. + type: string + enabled: + description: Specifies the flag which indicates whether this scheduled + query rule is enabled. Value should be true or false. The default + is true. + type: boolean + evaluationFrequency: + description: How often the scheduled query rule is evaluated, + represented in ISO 8601 duration format. Possible values are + PT1M, PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, + PT5H, PT6H, P1D. + type: string + location: + description: Specifies the Azure Region where the Monitor Scheduled + Query Rule should exist. Changing this forces a new resource + to be created. + type: string + muteActionsAfterAlertDuration: + description: Mute actions for the chosen period of time in ISO + 8601 duration format after the alert is fired. Possible values + are PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, + PT5H, PT6H, P1D and P2D. + type: string + queryTimeRangeOverride: + description: Set this if the alert evaluation period is different + from the query time range. If not specified, the value is window_duration*number_of_evaluation_periods. + Possible values are PT5M, PT10M, PT15M, PT20M, PT30M, PT45M, + PT1H, PT2H, PT3H, PT4H, PT5H, PT6H, P1D and P2D. + type: string + severity: + description: Severity of the alert. Should be an integer between + 0 and 4. Value of 0 is severest. + type: number + skipQueryValidation: + description: Specifies the flag which indicates whether the provided + query should be validated or not. The default is false. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Monitor Scheduled Query Rule. + type: object + targetResourceTypes: + description: List of resource type of the target resource(s) on + which the alert is created/updated. For example if the scope + is a resource group and targetResourceTypes is Microsoft.Compute/virtualMachines, + then a different alert will be fired for each virtual machine + in the resource group which meet the alert criteria. + items: + type: string + type: array + windowDuration: + description: Specifies the period of time in ISO 8601 duration + format on which the Scheduled Query Rule will be executed (bin + size). If evaluation_frequency is PT1M, possible values are + PT1M, PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, + PT5H, and PT6H. Otherwise, possible values are PT5M, PT10M, + PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, PT6H, P1D, + and P2D. + type: string + workspaceAlertsStorageEnabled: + description: Specifies the flag which indicates whether this scheduled + query rule check if storage is configured. Value should be true + or false. The default is false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -603,13 +782,21 @@ spec: type: object x-kubernetes-validations: - message: criteria is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.criteria) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.criteria) + || has(self.initProvider.criteria)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: severity is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.severity) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.severity) + || has(self.initProvider.severity)' - message: windowDuration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.windowDuration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.windowDuration) + || has(self.initProvider.windowDuration)' status: description: MonitorScheduledQueryRulesAlertV2Status defines the observed state of MonitorScheduledQueryRulesAlertV2. diff --git a/package/crds/insights.azure.upbound.io_monitorscheduledqueryruleslogs.yaml b/package/crds/insights.azure.upbound.io_monitorscheduledqueryruleslogs.yaml index c80bbcd35..0bc96ce35 100644 --- a/package/crds/insights.azure.upbound.io_monitorscheduledqueryruleslogs.yaml +++ b/package/crds/insights.azure.upbound.io_monitorscheduledqueryruleslogs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitorscheduledqueryruleslogs.insights.azure.upbound.io spec: group: insights.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -94,9 +93,6 @@ spec: items: type: string type: array - required: - - name - - values type: object type: array metricName: @@ -104,9 +100,6 @@ spec: in the Azure Monitor Microsoft.OperationalInsights/workspaces metrics namespace. type: string - required: - - dimension - - metricName type: object type: array dataSourceId: @@ -289,21 +282,99 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authorizedResourceIds: + description: A list of IDs of Resources referred into query. + items: + type: string + type: array + criteria: + description: A criteria block as defined below. + items: + properties: + dimension: + description: A dimension block as defined below. + items: + properties: + name: + description: Name of the dimension. + type: string + operator: + description: Operator for dimension values, - 'Include'. + type: string + values: + description: List of dimension values. + items: + type: string + type: array + type: object + type: array + metricName: + description: Name of the metric. Supported metrics are listed + in the Azure Monitor Microsoft.OperationalInsights/workspaces + metrics namespace. + type: string + type: object + type: array + description: + description: The description of the scheduled query rule. + type: string + enabled: + description: Whether this scheduled query rule is enabled. Default + is true. + type: boolean + location: + description: Specifies the Azure Region where the resource should + exist. Changing this forces a new resource to be created. + type: string + name: + description: The name of the scheduled query rule. Changing this + forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -477,11 +548,17 @@ spec: type: object x-kubernetes-validations: - message: criteria is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.criteria) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.criteria) + || has(self.initProvider.criteria)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: MonitorScheduledQueryRulesLogStatus defines the observed state of MonitorScheduledQueryRulesLog. diff --git a/package/crds/iotcentral.azure.upbound.io_applicationnetworkrulesets.yaml b/package/crds/iotcentral.azure.upbound.io_applicationnetworkrulesets.yaml index 5db7feb38..ab42ca0cd 100644 --- a/package/crds/iotcentral.azure.upbound.io_applicationnetworkrulesets.yaml +++ b/package/crds/iotcentral.azure.upbound.io_applicationnetworkrulesets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationnetworkrulesets.iotcentral.azure.upbound.io spec: group: iotcentral.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -170,27 +169,73 @@ spec: name: description: The name of the IP Rule type: string - required: - - ipMask - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + applyToDevice: + description: Whether these IP Rules apply for device connectivity + to IoT Hub and Device Provisioning Service associated with this + IoT Central Application. Possible values are true, false. Defaults + to true + type: boolean + defaultAction: + description: Specifies the default action for the IoT Central + Application Network Rule Set. Possible values are Allow and + Deny. Defaults to Deny. + type: string + ipRule: + description: One or more ip_rule blocks as defined below. + items: + properties: + ipMask: + description: The IP address range in CIDR notation for the + IP Rule. + type: string + name: + description: The name of the IP Rule + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/iotcentral.azure.upbound.io_applications.yaml b/package/crds/iotcentral.azure.upbound.io_applications.yaml index fde70f758..800526ee4 100644 --- a/package/crds/iotcentral.azure.upbound.io_applications.yaml +++ b/package/crds/iotcentral.azure.upbound.io_applications.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applications.iotcentral.azure.upbound.io spec: group: iotcentral.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -81,8 +80,6 @@ spec: that should be configured on this IoT Central Application. The only possible value is SystemAssigned. type: string - required: - - type type: object type: array location: @@ -197,21 +194,92 @@ spec: a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + displayName: + description: A display_name name. Custom display name for the + IoT Central application. Default is resource name. + type: string + identity: + description: An identity block as defined below. + items: + properties: + type: + description: Specifies the type of Managed Service Identity + that should be configured on this IoT Central Application. + The only possible value is SystemAssigned. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource has to be create. Changing this forces a new resource + to be created. + type: string + name: + description: Specifies the name of the IotHub resource. Changing + this forces a new resource to be created. + type: string + publicNetworkAccessEnabled: + description: Whether public network access is allowed for the + IoT Central Application. Defaults to true. + type: boolean + sku: + description: A sku name. Possible values is ST0, ST1, ST2, Default + value is ST1 + type: string + subDomain: + description: A sub_domain name. Subdomain for the IoT Central + URL. Each application must have a unique subdomain. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + template: + description: A template name. IoT Central application template + name. Default is a custom application. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -385,11 +453,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: subDomain is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subDomain) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subDomain) + || has(self.initProvider.subDomain)' status: description: ApplicationStatus defines the observed state of Application. properties: diff --git a/package/crds/keyvault.azure.upbound.io_accesspolicies.yaml b/package/crds/keyvault.azure.upbound.io_accesspolicies.yaml index 69f1f50e3..c9b8a06be 100644 --- a/package/crds/keyvault.azure.upbound.io_accesspolicies.yaml +++ b/package/crds/keyvault.azure.upbound.io_accesspolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accesspolicies.keyvault.azure.upbound.io spec: group: keyvault.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -193,21 +192,93 @@ spec: this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + applicationId: + description: The object ID of an Application in Azure Active Directory. + Changing this forces a new resource to be created. + type: string + certificatePermissions: + description: 'List of certificate permissions, must be one or + more from the following: Backup, Create, Delete, DeleteIssuers, + Get, GetIssuers, Import, List, ListIssuers, ManageContacts, + ManageIssuers, Purge, Recover, Restore, SetIssuers and Update.' + items: + type: string + type: array + keyPermissions: + description: 'List of key permissions, must be one or more from + the following: Backup, Create, Decrypt, Delete, Encrypt, Get, + Import, List, Purge, Recover, Restore, Sign, UnwrapKey, Update, + Verify, WrapKey, Release, Rotate, GetRotationPolicy and SetRotationPolicy.' + items: + type: string + type: array + objectId: + description: The object ID of a user, service principal or security + group in the Azure Active Directory tenant for the vault. The + object ID of a service principal can be fetched from azuread_service_principal.object_id. + The object ID must be unique for the list of access policies. + Changing this forces a new resource to be created. + type: string + secretPermissions: + description: 'List of secret permissions, must be one or more + from the following: Backup, Delete, Get, List, Purge, Recover, + Restore and Set.' + items: + type: string + type: array + storagePermissions: + description: 'List of storage permissions, must be one or more + from the following: Backup, Delete, DeleteSAS, Get, GetSAS, + List, ListSAS, Purge, Recover, RegenerateKey, Restore, Set, + SetSAS and Update.' + items: + type: string + type: array + tenantId: + description: The Azure Active Directory tenant ID that should + be used for authenticating requests to the key vault. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -381,9 +452,13 @@ spec: type: object x-kubernetes-validations: - message: objectId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.objectId) + || has(self.initProvider.objectId)' - message: tenantId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tenantId) + || has(self.initProvider.tenantId)' status: description: AccessPolicyStatus defines the observed state of AccessPolicy. properties: diff --git a/package/crds/keyvault.azure.upbound.io_certificatecontacts.yaml b/package/crds/keyvault.azure.upbound.io_certificatecontacts.yaml index d054409bc..f86445efa 100644 --- a/package/crds/keyvault.azure.upbound.io_certificatecontacts.yaml +++ b/package/crds/keyvault.azure.upbound.io_certificatecontacts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: certificatecontacts.keyvault.azure.upbound.io spec: group: keyvault.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -81,8 +80,6 @@ spec: phone: description: Phone number of the contact. type: string - required: - - email type: object type: array keyVaultId: @@ -163,21 +160,61 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + contact: + description: One or more contact blocks as defined below. + items: + properties: + email: + description: E-mail address of the contact. + type: string + name: + description: Name of the contact. + type: string + phone: + description: Phone number of the contact. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -351,7 +388,9 @@ spec: type: object x-kubernetes-validations: - message: contact is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.contact) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.contact) + || has(self.initProvider.contact)' status: description: CertificateContactsStatus defines the observed state of CertificateContacts. properties: diff --git a/package/crds/keyvault.azure.upbound.io_certificateissuers.yaml b/package/crds/keyvault.azure.upbound.io_certificateissuers.yaml index a85875113..e04459844 100644 --- a/package/crds/keyvault.azure.upbound.io_certificateissuers.yaml +++ b/package/crds/keyvault.azure.upbound.io_certificateissuers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: certificateissuers.keyvault.azure.upbound.io spec: group: keyvault.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -88,8 +87,6 @@ spec: phone: description: Phone number of the admin. type: string - required: - - emailAddress type: object type: array keyVaultId: @@ -197,21 +194,76 @@ spec: OneCertV2-PublicCA and SslAdminV2.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accountId: + description: The account number with the third-party Certificate + Issuer. + type: string + admin: + description: One or more admin blocks as defined below. + items: + properties: + emailAddress: + description: E-mail address of the admin. + type: string + firstName: + description: First name of the admin. + type: string + lastName: + description: Last name of the admin. + type: string + phone: + description: Phone number of the admin. + type: string + type: object + type: array + orgId: + description: The ID of the organization as provided to the issuer. + type: string + providerName: + description: 'The name of the third-party Certificate Issuer. + Possible values are: DigiCert, GlobalSign, OneCertV2-PrivateCA, + OneCertV2-PublicCA and SslAdminV2.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -385,7 +437,9 @@ spec: type: object x-kubernetes-validations: - message: providerName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.providerName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.providerName) + || has(self.initProvider.providerName)' status: description: CertificateIssuerStatus defines the observed state of CertificateIssuer. properties: diff --git a/package/crds/keyvault.azure.upbound.io_certificates.yaml b/package/crds/keyvault.azure.upbound.io_certificates.yaml index 27673fa21..3d8556178 100644 --- a/package/crds/keyvault.azure.upbound.io_certificates.yaml +++ b/package/crds/keyvault.azure.upbound.io_certificates.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: certificates.keyvault.azure.upbound.io spec: group: keyvault.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -127,8 +126,6 @@ spec: like Let's Encrypt and Azure direct supported ones). Changing this forces a new resource to be created. type: string - required: - - name type: object type: array keyProperties: @@ -162,10 +159,6 @@ spec: description: Is the key reusable? Changing this forces a new resource to be created. type: boolean - required: - - exportable - - keyType - - reuseKey type: object type: array lifetimeAction: @@ -183,8 +176,6 @@ spec: Changing this forces a new resource to be created. type: string - required: - - actionType type: object type: array trigger: @@ -207,9 +198,6 @@ spec: type: number type: object type: array - required: - - action - - trigger type: object type: array secretProperties: @@ -222,8 +210,6 @@ spec: for a PEM. Changing this forces a new resource to be created. type: string - required: - - contentType type: object type: array x509CertificateProperties: @@ -284,16 +270,8 @@ spec: description: The Certificates Validity Period in Months. Changing this forces a new resource to be created. type: number - required: - - keyUsage - - subject - - validityInMonths type: object type: array - required: - - issuerParameters - - keyProperties - - secretProperties type: object type: array keyVaultId: @@ -379,21 +357,221 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + certificate: + description: A certificate block as defined below, used to Import + an existing certificate. + items: + type: object + type: array + certificatePolicy: + description: A certificate_policy block as defined below. Changing + this forces a new resource to be created. + items: + properties: + issuerParameters: + description: A issuer_parameters block as defined below. + items: + properties: + name: + description: The name of the Certificate Issuer. Possible + values include Self (for self-signed certificate), + or Unknown (for a certificate issuing authority + like Let's Encrypt and Azure direct supported ones). + Changing this forces a new resource to be created. + type: string + type: object + type: array + keyProperties: + description: A key_properties block as defined below. + items: + properties: + curve: + description: Specifies the curve to use when creating + an EC key. Possible values are P-256, P-256K, P-384, + and P-521. This field will be required in a future + release if key_type is EC or EC-HSM. Changing this + forces a new resource to be created. + type: string + exportable: + description: Is this certificate exportable? Changing + this forces a new resource to be created. + type: boolean + keySize: + description: The size of the key used in the certificate. + Possible values include 2048, 3072, and 4096 for + RSA keys, or 256, 384, and 521 for EC keys. This + property is required when using RSA keys. Changing + this forces a new resource to be created. + type: number + keyType: + description: Specifies the type of key. Possible values + are EC, EC-HSM, RSA, RSA-HSM and oct. Changing this + forces a new resource to be created. + type: string + reuseKey: + description: Is the key reusable? Changing this forces + a new resource to be created. + type: boolean + type: object + type: array + lifetimeAction: + description: A lifetime_action block as defined below. + items: + properties: + action: + description: A action block as defined below. + items: + properties: + actionType: + description: The Type of action to be performed + when the lifetime trigger is triggerec. Possible + values include AutoRenew and EmailContacts. + Changing this forces a new resource to be + created. + type: string + type: object + type: array + trigger: + description: A trigger block as defined below. + items: + properties: + daysBeforeExpiry: + description: The number of days before the Certificate + expires that the action associated with this + Trigger should run. Changing this forces a + new resource to be created. Conflicts with + lifetime_percentage. + type: number + lifetimePercentage: + description: The percentage at which during + the Certificates Lifetime the action associated + with this Trigger should run. Changing this + forces a new resource to be created. Conflicts + with days_before_expiry. + type: number + type: object + type: array + type: object + type: array + secretProperties: + description: A secret_properties block as defined below. + items: + properties: + contentType: + description: The Content-Type of the Certificate, + such as application/x-pkcs12 for a PFX or application/x-pem-file + for a PEM. Changing this forces a new resource to + be created. + type: string + type: object + type: array + x509CertificateProperties: + description: A x509_certificate_properties block as defined + below. Required when certificate block is not specified. + items: + properties: + extendedKeyUsage: + description: A list of Extended/Enhanced Key Usages. + Changing this forces a new resource to be created. + items: + type: string + type: array + keyUsage: + description: A list of uses associated with this Key. + Possible values include cRLSign, dataEncipherment, + decipherOnly, digitalSignature, encipherOnly, keyAgreement, + keyCertSign, keyEncipherment and nonRepudiation + and are case-sensitive. Changing this forces a new + resource to be created. + items: + type: string + type: array + subject: + description: The Certificate's Subject. Changing this + forces a new resource to be created. + type: string + subjectAlternativeNames: + description: A subject_alternative_names block as + defined below. Changing this forces a new resource + to be created. + items: + properties: + dnsNames: + description: A list of alternative DNS names + (FQDNs) identified by the Certificate. Changing + this forces a new resource to be created. + items: + type: string + type: array + emails: + description: A list of email addresses identified + by this Certificate. Changing this forces + a new resource to be created. + items: + type: string + type: array + upns: + description: A list of User Principal Names + identified by the Certificate. Changing this + forces a new resource to be created. + items: + type: string + type: array + type: object + type: array + validityInMonths: + description: The Certificates Validity Period in Months. + Changing this forces a new resource to be created. + type: number + type: object + type: array + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/keyvault.azure.upbound.io_keys.yaml b/package/crds/keyvault.azure.upbound.io_keys.yaml index 7f296a24e..ea41be2d1 100644 --- a/package/crds/keyvault.azure.upbound.io_keys.yaml +++ b/package/crds/keyvault.azure.upbound.io_keys.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: keys.keyvault.azure.upbound.io spec: group: keyvault.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -209,21 +208,110 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + curve: + description: Specifies the curve to use when creating an EC key. + Possible values are P-256, P-256K, P-384, and P-521. This field + will be required in a future release if key_type is EC or EC-HSM. + The API will default to P-256 if nothing is specified. Changing + this forces a new resource to be created. + type: string + expirationDate: + description: Expiration UTC datetime (Y-m-d'T'H:M:S'Z'). + type: string + keyOpts: + description: 'A list of JSON web key operations. Possible values + include: decrypt, encrypt, sign, unwrapKey, verify and wrapKey. + Please note these values are case sensitive.' + items: + type: string + type: array + keySize: + description: 'Specifies the Size of the RSA key to create in bytes. + For example, 1024 or 2048. Note: This field is required if key_type + is RSA or RSA-HSM. Changing this forces a new resource to be + created.' + type: number + keyType: + description: Specifies the Key Type to use for this Key Vault + Key. Possible values are EC (Elliptic Curve), EC-HSM, RSA and + RSA-HSM. Changing this forces a new resource to be created. + type: string + notBeforeDate: + description: Key not usable before the provided UTC datetime (Y-m-d'T'H:M:S'Z'). + type: string + rotationPolicy: + description: A rotation_policy block as defined below. + items: + properties: + automatic: + description: An automatic block as defined below. + items: + properties: + timeAfterCreation: + description: Rotate automatically at a duration after + create as an ISO 8601 duration. + type: string + timeBeforeExpiry: + description: Rotate automatically at a duration before + expiry as an ISO 8601 duration. + type: string + type: object + type: array + expireAfter: + description: Expire a Key Vault Key after given duration + as an ISO 8601 duration. + type: string + notifyBeforeExpiry: + description: Notify at a given duration before expiry as + an ISO 8601 duration. Default is P30D. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -397,9 +485,13 @@ spec: type: object x-kubernetes-validations: - message: keyOpts is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.keyOpts) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.keyOpts) + || has(self.initProvider.keyOpts)' - message: keyType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.keyType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.keyType) + || has(self.initProvider.keyType)' status: description: KeyStatus defines the observed state of Key. properties: diff --git a/package/crds/keyvault.azure.upbound.io_managedhardwaresecuritymodules.yaml b/package/crds/keyvault.azure.upbound.io_managedhardwaresecuritymodules.yaml index eb1a16f89..e394522a1 100644 --- a/package/crds/keyvault.azure.upbound.io_managedhardwaresecuritymodules.yaml +++ b/package/crds/keyvault.azure.upbound.io_managedhardwaresecuritymodules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managedhardwaresecuritymodules.keyvault.azure.upbound.io spec: group: keyvault.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -92,9 +91,6 @@ spec: description: The Default Action to use. Possible values are Allow and Deny. type: string - required: - - bypass - - defaultAction type: object type: array publicNetworkAccessEnabled: @@ -210,21 +206,103 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + adminObjectIds: + description: Specifies a list of administrators object IDs for + the key vault Managed Hardware Security Module. Changing this + forces a new resource to be created. + items: + type: string + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + networkAcls: + description: A network_acls block as defined below. + items: + properties: + bypass: + description: Specifies which traffic can bypass the network + rules. Possible values are AzureServices and None. + type: string + defaultAction: + description: The Default Action to use. Possible values + are Allow and Deny. + type: string + type: object + type: array + publicNetworkAccessEnabled: + description: Whether traffic from public networks is permitted. + Defaults to true. Changing this forces a new resource to be + created. + type: boolean + purgeProtectionEnabled: + description: Is Purge Protection enabled for this Key Vault Managed + Hardware Security Module? Changing this forces a new resource + to be created. + type: boolean + skuName: + description: The Name of the SKU used for this Key Vault Managed + Hardware Security Module. Possible value is Standard_B1. Changing + this forces a new resource to be created. + type: string + softDeleteRetentionDays: + description: The number of days that items should be retained + for once soft-deleted. This value can be between 7 and 90 days. + Defaults to 90. Changing this forces a new resource to be created. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. Changing + this forces a new resource to be created. + type: object + tenantId: + description: The Azure Active Directory Tenant ID that should + be used for authenticating requests to the key vault Managed + Hardware Security Module. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -398,13 +476,21 @@ spec: type: object x-kubernetes-validations: - message: adminObjectIds is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.adminObjectIds) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.adminObjectIds) + || has(self.initProvider.adminObjectIds)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' - message: tenantId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tenantId) + || has(self.initProvider.tenantId)' status: description: ManagedHardwareSecurityModuleStatus defines the observed state of ManagedHardwareSecurityModule. diff --git a/package/crds/keyvault.azure.upbound.io_managedstorageaccounts.yaml b/package/crds/keyvault.azure.upbound.io_managedstorageaccounts.yaml index e07663501..94e9890bf 100644 --- a/package/crds/keyvault.azure.upbound.io_managedstorageaccounts.yaml +++ b/package/crds/keyvault.azure.upbound.io_managedstorageaccounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managedstorageaccounts.keyvault.azure.upbound.io spec: group: keyvault.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -242,21 +241,65 @@ spec: resource to be created. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + regenerateKeyAutomatically: + description: Should Storage Account access key be regenerated + periodically? + type: boolean + regenerationPeriod: + description: How often Storage Account access key should be regenerated. + Value needs to be in ISO 8601 duration format. + type: string + storageAccountKey: + description: Which Storage Account access key that is managed + by Key Vault. Possible values are key1 and key2. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Key Vault Managed Storage Account. Changing this forces a new + resource to be created. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -430,7 +473,9 @@ spec: type: object x-kubernetes-validations: - message: storageAccountKey is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountKey) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageAccountKey) + || has(self.initProvider.storageAccountKey)' status: description: ManagedStorageAccountStatus defines the observed state of ManagedStorageAccount. diff --git a/package/crds/keyvault.azure.upbound.io_managedstorageaccountsastokendefinitions.yaml b/package/crds/keyvault.azure.upbound.io_managedstorageaccountsastokendefinitions.yaml index b868142fe..f9e779275 100644 --- a/package/crds/keyvault.azure.upbound.io_managedstorageaccountsastokendefinitions.yaml +++ b/package/crds/keyvault.azure.upbound.io_managedstorageaccountsastokendefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managedstorageaccountsastokendefinitions.keyvault.azure.upbound.io spec: group: keyvault.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -169,21 +168,66 @@ spec: ISO 8601 duration format. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + sasTemplateUri: + description: The SAS definition token template signed with an + arbitrary key. Tokens created according to the SAS definition + will have the same properties as the template, but regenerated + with a new validity period. + type: string + sasType: + description: The type of SAS token the SAS definition will create. + Possible values are account and service. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + SAS Definition. Changing this forces a new resource to be created. + type: object + validityPeriod: + description: Validity period of SAS token. Value needs to be in + ISO 8601 duration format. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -357,11 +401,17 @@ spec: type: object x-kubernetes-validations: - message: sasTemplateUri is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sasTemplateUri) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sasTemplateUri) + || has(self.initProvider.sasTemplateUri)' - message: sasType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sasType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sasType) + || has(self.initProvider.sasType)' - message: validityPeriod is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.validityPeriod) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.validityPeriod) + || has(self.initProvider.validityPeriod)' status: description: ManagedStorageAccountSASTokenDefinitionStatus defines the observed state of ManagedStorageAccountSASTokenDefinition. diff --git a/package/crds/keyvault.azure.upbound.io_secrets.yaml b/package/crds/keyvault.azure.upbound.io_secrets.yaml index 725fb8c3c..b2ecb6458 100644 --- a/package/crds/keyvault.azure.upbound.io_secrets.yaml +++ b/package/crds/keyvault.azure.upbound.io_secrets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: secrets.keyvault.azure.upbound.io spec: group: keyvault.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -177,21 +176,60 @@ spec: - namespace type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + contentType: + description: Specifies the content type for the Key Vault Secret. + type: string + expirationDate: + description: Expiration UTC datetime (Y-m-d'T'H:M:S'Z'). + type: string + notBeforeDate: + description: Key not usable before the provided UTC datetime (Y-m-d'T'H:M:S'Z'). + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -365,7 +403,8 @@ spec: type: object x-kubernetes-validations: - message: valueSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.valueSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.valueSecretRef)' status: description: SecretStatus defines the observed state of Secret. properties: diff --git a/package/crds/keyvault.azure.upbound.io_vaults.yaml b/package/crds/keyvault.azure.upbound.io_vaults.yaml index f44ac3dc5..33505976c 100644 --- a/package/crds/keyvault.azure.upbound.io_vaults.yaml +++ b/package/crds/keyvault.azure.upbound.io_vaults.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: vaults.keyvault.azure.upbound.io spec: group: keyvault.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -80,8 +79,6 @@ spec: phone: description: Phone number of the contact. type: string - required: - - email type: object type: array enableRbacAuthorization: @@ -130,9 +127,6 @@ spec: items: type: string type: array - required: - - bypass - - defaultAction type: object type: array publicNetworkAccessEnabled: @@ -240,21 +234,134 @@ spec: be used for authenticating requests to the key vault. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + contact: + description: One or more contact block as defined below. + items: + properties: + email: + description: E-mail address of the contact. + type: string + name: + description: Name of the contact. + type: string + phone: + description: Phone number of the contact. + type: string + type: object + type: array + enableRbacAuthorization: + description: Boolean flag to specify whether Azure Key Vault uses + Role Based Access Control (RBAC) for authorization of data actions. + type: boolean + enabledForDeployment: + description: Boolean flag to specify whether Azure Virtual Machines + are permitted to retrieve certificates stored as secrets from + the key vault. + type: boolean + enabledForDiskEncryption: + description: Boolean flag to specify whether Azure Disk Encryption + is permitted to retrieve secrets from the vault and unwrap keys. + type: boolean + enabledForTemplateDeployment: + description: Boolean flag to specify whether Azure Resource Manager + is permitted to retrieve secrets from the key vault. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + networkAcls: + description: A network_acls block as defined below. + items: + properties: + bypass: + description: Specifies which traffic can bypass the network + rules. Possible values are AzureServices and None. + type: string + defaultAction: + description: The Default Action to use when no rules match + from ip_rules / virtual_network_subnet_ids. Possible values + are Allow and Deny. + type: string + ipRules: + description: One or more IP Addresses, or CIDR Blocks which + should be able to access the Key Vault. + items: + type: string + type: array + virtualNetworkSubnetIds: + description: One or more Subnet IDs which should be able + to access this Key Vault. + items: + type: string + type: array + type: object + type: array + publicNetworkAccessEnabled: + description: Whether public network access is allowed for this + Key Vault. Defaults to true. + type: boolean + purgeProtectionEnabled: + description: Is Purge Protection enabled for this Key Vault? + type: boolean + skuName: + description: The Name of the SKU used for this Key Vault. Possible + values are standard and premium. + type: string + softDeleteRetentionDays: + description: The number of days that items should be retained + for once soft-deleted. This value can be between 7 and 90 (the + default) days. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + tenantId: + description: The Azure Active Directory tenant ID that should + be used for authenticating requests to the key vault. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -428,11 +535,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' - message: tenantId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tenantId) + || has(self.initProvider.tenantId)' status: description: VaultStatus defines the observed state of Vault. properties: diff --git a/package/crds/kusto.azure.upbound.io_attacheddatabaseconfigurations.yaml b/package/crds/kusto.azure.upbound.io_attacheddatabaseconfigurations.yaml index 5b7924865..753623b6d 100644 --- a/package/crds/kusto.azure.upbound.io_attacheddatabaseconfigurations.yaml +++ b/package/crds/kusto.azure.upbound.io_attacheddatabaseconfigurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: attacheddatabaseconfigurations.kusto.azure.upbound.io spec: group: kusto.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -438,21 +437,100 @@ spec: type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + defaultPrincipalModificationKind: + description: 'The default principals modification kind. Valid + values are: None (default), Replace and Union.' + type: string + location: + description: Specifies the location of the Kusto Cluster for which + the configuration will be created. Changing this forces a new + resource to be created. + type: string + name: + description: The name of the Kusto Attached Database Configuration + to create. Changing this forces a new resource to be created. + type: string + sharing: + description: A sharing block as defined below. + items: + properties: + externalTablesToExclude: + description: List of external tables exclude from the follower + database. + items: + type: string + type: array + externalTablesToInclude: + description: List of external tables to include in the follower + database. + items: + type: string + type: array + materializedViewsToExclude: + description: List of materialized views exclude from the + follower database. + items: + type: string + type: array + materializedViewsToInclude: + description: List of materialized views to include in the + follower database. + items: + type: string + type: array + tablesToExclude: + description: List of tables to exclude from the follower + database. + items: + type: string + type: array + tablesToInclude: + description: List of tables to include in the follower database. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -626,9 +704,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: AttachedDatabaseConfigurationStatus defines the observed state of AttachedDatabaseConfiguration. diff --git a/package/crds/kusto.azure.upbound.io_clustermanagedprivateendpoints.yaml b/package/crds/kusto.azure.upbound.io_clustermanagedprivateendpoints.yaml index 2afcce21a..50df4b6c4 100644 --- a/package/crds/kusto.azure.upbound.io_clustermanagedprivateendpoints.yaml +++ b/package/crds/kusto.azure.upbound.io_clustermanagedprivateendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: clustermanagedprivateendpoints.kusto.azure.upbound.io spec: group: kusto.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -389,21 +388,53 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + groupId: + description: The group id in which the managed private endpoint + is created. Changing this forces a new resource to be created. + type: string + requestMessage: + description: The user request message. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -577,7 +608,9 @@ spec: type: object x-kubernetes-validations: - message: groupId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.groupId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.groupId) + || has(self.initProvider.groupId)' status: description: ClusterManagedPrivateEndpointStatus defines the observed state of ClusterManagedPrivateEndpoint. diff --git a/package/crds/kusto.azure.upbound.io_clusterprincipalassignments.yaml b/package/crds/kusto.azure.upbound.io_clusterprincipalassignments.yaml index 80b5cedb6..3c6073646 100644 --- a/package/crds/kusto.azure.upbound.io_clusterprincipalassignments.yaml +++ b/package/crds/kusto.azure.upbound.io_clusterprincipalassignments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: clusterprincipalassignments.kusto.azure.upbound.io spec: group: kusto.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -243,21 +242,63 @@ spec: this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + principalId: + description: The object id of the principal. Changing this forces + a new resource to be created. + type: string + principalType: + description: The type of the principal. Valid values include App, + Group, User. Changing this forces a new resource to be created. + type: string + role: + description: The cluster role assigned to the principal. Valid + values include AllDatabasesAdmin and AllDatabasesViewer. Changing + this forces a new resource to be created. + type: string + tenantId: + description: The tenant id in which the principal resides. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -431,13 +472,21 @@ spec: type: object x-kubernetes-validations: - message: principalId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.principalId) + || has(self.initProvider.principalId)' - message: principalType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.principalType) + || has(self.initProvider.principalType)' - message: role is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.role) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.role) + || has(self.initProvider.role)' - message: tenantId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tenantId) + || has(self.initProvider.tenantId)' status: description: ClusterPrincipalAssignmentStatus defines the observed state of ClusterPrincipalAssignment. diff --git a/package/crds/kusto.azure.upbound.io_clusters.yaml b/package/crds/kusto.azure.upbound.io_clusters.yaml index 87bca8ce7..3295a7691 100644 --- a/package/crds/kusto.azure.upbound.io_clusters.yaml +++ b/package/crds/kusto.azure.upbound.io_clusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: clusters.kusto.azure.upbound.io spec: group: kusto.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -113,8 +112,6 @@ spec: are: SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.' type: string - required: - - type type: object type: array languageExtensions: @@ -139,9 +136,6 @@ spec: description: The minimum number of allowed instances. Must between 0 and 1000. type: number - required: - - maximumInstances - - minimumInstances type: object type: array outboundNetworkAccessRestricted: @@ -270,8 +264,6 @@ spec: Standard_E2d_v5, Standard_E4d_v5, Standard_E8d_v5 and Standard_E16d_v5.' type: string - required: - - name type: object type: array streamingIngestionEnabled: @@ -385,9 +377,6 @@ spec: type: string type: object type: object - required: - - dataManagementPublicIpId - - enginePublicIpId type: object type: array zones: @@ -398,21 +387,205 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowedFqdns: + description: List of allowed FQDNs(Fully Qualified Domain Name) + for egress from Cluster. + items: + type: string + type: array + allowedIpRanges: + description: The list of ips in the format of CIDR allowed to + connect to the cluster. + items: + type: string + type: array + autoStopEnabled: + description: Specifies if the cluster could be automatically stopped + (due to lack of data or no activity for many days). Defaults + to true. + type: boolean + diskEncryptionEnabled: + description: Specifies if the cluster's disks are encrypted. + type: boolean + doubleEncryptionEnabled: + description: Is the cluster's double encryption enabled? Changing + this forces a new resource to be created. + type: boolean + engine: + description: . The engine type that will be used in the backend. + Possible values are V2 and V3. Defaults to V2. Changing this + forces a new Kusto Cluster to be created. + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Kusto Cluster. + items: + type: string + type: array + type: + description: 'Specifies the type of Managed Service Identity + that is configured on this Kusto Cluster. Possible values + are: SystemAssigned, UserAssigned and SystemAssigned, + UserAssigned.' + type: string + type: object + type: array + languageExtensions: + description: 'An list of language_extensions to enable. Valid + values are: PYTHON and R.' + items: + type: string + type: array + location: + description: The location where the Kusto Cluster should be created. + Changing this forces a new resource to be created. + type: string + optimizedAutoScale: + description: An optimized_auto_scale block as defined below. + items: + properties: + maximumInstances: + description: The maximum number of allowed instances. Must + between 0 and 1000. + type: number + minimumInstances: + description: The minimum number of allowed instances. Must + between 0 and 1000. + type: number + type: object + type: array + outboundNetworkAccessRestricted: + description: Whether to restrict outbound network access. Value + is optional but if passed in, must be true or false, default + is false. + type: boolean + publicIpType: + description: Indicates what public IP type to create - IPv4 (default), + or DualStack (both IPv4 and IPv6). + type: string + publicNetworkAccessEnabled: + description: Is the public network access enabled? Defaults to + true. + type: boolean + purgeEnabled: + description: Specifies if the purge operations are enabled. + type: boolean + sku: + description: A sku block as defined below. + items: + properties: + capacity: + description: Specifies the node count for the cluster. Boundaries + depend on the SKU name. + type: number + name: + description: 'The name of the SKU. Valid values are: Dev(No + SLA)_Standard_D11_v2, Dev(No SLA)_Standard_E2a_v4, Standard_D11_v2, + Standard_D12_v2, Standard_D13_v2, Standard_D14_v2, Standard_D16d_v5, + Standard_D32d_v4, Standard_D32d_v5, Standard_DS13_v2+1TB_PS, + Standard_DS13_v2+2TB_PS, Standard_DS14_v2+3TB_PS, Standard_DS14_v2+4TB_PS, + Standard_E16a_v4, Standard_E16ads_v5, Standard_E16as_v4+3TB_PS, + Standard_E16as_v4+4TB_PS, Standard_E16as_v5+3TB_PS, Standard_E16as_v5+4TB_PS, + Standard_E16s_v4+3TB_PS, Standard_E16s_v4+4TB_PS, Standard_E16s_v5+3TB_PS, + Standard_E16s_v5+4TB_PS, Standard_E2a_v4, Standard_E2ads_v5,Standard_E4a_v4, + Standard_E4ads_v5, Standard_E64i_v3, Standard_E80ids_v4, + Standard_E8a_v4, Standard_E8ads_v5, Standard_E8as_v4+1TB_PS, + Standard_E8as_v4+2TB_PS, Standard_E8as_v5+1TB_PS, Standard_E8as_v5+2TB_PS, + Standard_E8s_v4+1TB_PS, Standard_E8s_v4+2TB_PS, Standard_E8s_v5+1TB_PS, + Standard_E8s_v5+2TB_PS, Standard_L16s, Standard_L16s_v2, + Standard_L4s, Standard_L8s, Standard_L8s_v2, "Standard_L8s_v3", + Standard_L16s_v3, Standard_L8as_v3, Standard_L16as_v3, + Standard_EC8as_v5+1TB_PS, Standard_EC8as_v5+2TB_PS, Standard_EC16as_v5+3TB_PS, + Standard_EC16as_v5+4TB_PS, Standard_EC8ads_v5, Standard_EC16ads_v5, + Standard_E2d_v4, Standard_E4d_v4, Standard_E8d_v4, Standard_E16d_v4, + Standard_E2d_v5, Standard_E4d_v5, Standard_E8d_v5 and + Standard_E16d_v5.' + type: string + type: object + type: array + streamingIngestionEnabled: + description: Specifies if the streaming ingest is enabled. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + trustedExternalTenants: + description: Specifies a list of tenant IDs that are trusted by + the cluster. Default setting trusts all other tenants. Use trusted_external_tenants + = ["*"] to explicitly allow all other tenants, trusted_external_tenants + = ["MyTenantOnly"] for only your tenant or trusted_external_tenants + = ["", ""] to allow specific other tenants. + items: + type: string + type: array + virtualNetworkConfiguration: + description: A virtual_network_configuration block as defined + below. Changing this forces a new resource to be created. + items: + properties: + dataManagementPublicIpId: + description: Data management's service public IP address + resource id. + type: string + enginePublicIpId: + description: Engine service's public IP address resource + id. + type: string + type: object + type: array + zones: + description: Specifies a list of Availability Zones in which this + Kusto Cluster should be located. Changing this forces a new + Kusto Cluster to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -586,9 +759,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: ClusterStatus defines the observed state of Cluster. properties: diff --git a/package/crds/kusto.azure.upbound.io_databaseprincipalassignments.yaml b/package/crds/kusto.azure.upbound.io_databaseprincipalassignments.yaml index 0da40d131..e5c816b01 100644 --- a/package/crds/kusto.azure.upbound.io_databaseprincipalassignments.yaml +++ b/package/crds/kusto.azure.upbound.io_databaseprincipalassignments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: databaseprincipalassignments.kusto.azure.upbound.io spec: group: kusto.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -320,21 +319,63 @@ spec: this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + principalId: + description: The object id of the principal. Changing this forces + a new resource to be created. + type: string + principalType: + description: The type of the principal. Valid values include App, + Group, User. Changing this forces a new resource to be created. + type: string + role: + description: The database role assigned to the principal. Valid + values include Admin, Ingestor, Monitor, UnrestrictedViewer, + User and Viewer. Changing this forces a new resource to be created. + type: string + tenantId: + description: The tenant id in which the principal resides. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -508,13 +549,21 @@ spec: type: object x-kubernetes-validations: - message: principalId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.principalId) + || has(self.initProvider.principalId)' - message: principalType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.principalType) + || has(self.initProvider.principalType)' - message: role is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.role) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.role) + || has(self.initProvider.role)' - message: tenantId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tenantId) + || has(self.initProvider.tenantId)' status: description: DatabasePrincipalAssignmentStatus defines the observed state of DatabasePrincipalAssignment. diff --git a/package/crds/kusto.azure.upbound.io_databases.yaml b/package/crds/kusto.azure.upbound.io_databases.yaml index 86e79f0c9..507be6f5a 100644 --- a/package/crds/kusto.azure.upbound.io_databases.yaml +++ b/package/crds/kusto.azure.upbound.io_databases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: databases.kusto.azure.upbound.io spec: group: kusto.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -240,21 +239,60 @@ spec: unlimited. For more information see: ISO 8601 Timespan' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + hotCachePeriod: + description: 'The time the data that should be kept in cache for + fast queries as ISO 8601 timespan. Default is unlimited. For + more information see: ISO 8601 Timespan' + type: string + location: + description: The location where the Kusto Database should be created. + Changing this forces a new resource to be created. + type: string + softDeletePeriod: + description: 'The time the data should be kept before it stops + being accessible to queries as ISO 8601 timespan. Default is + unlimited. For more information see: ISO 8601 Timespan' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -428,7 +466,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: DatabaseStatus defines the observed state of Database. properties: diff --git a/package/crds/kusto.azure.upbound.io_eventgriddataconnections.yaml b/package/crds/kusto.azure.upbound.io_eventgriddataconnections.yaml index 1e5ca1dd2..08cb44711 100644 --- a/package/crds/kusto.azure.upbound.io_eventgriddataconnections.yaml +++ b/package/crds/kusto.azure.upbound.io_eventgriddataconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: eventgriddataconnections.kusto.azure.upbound.io spec: group: kusto.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -583,21 +582,88 @@ spec: ingestion. Table must exist before resource is created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + blobStorageEventType: + description: Specifies the blob storage event type that needs + to be processed. Possible Values are Microsoft.Storage.BlobCreated + and Microsoft.Storage.BlobRenamed. Defaults to Microsoft.Storage.BlobCreated. + type: string + dataFormat: + description: 'Specifies the data format of the EventHub messages. + Allowed values: APACHEAVRO, AVRO, CSV, JSON, MULTIJSON, ORC, + PARQUET, PSV, RAW, SCSV, SINGLEJSON, SOHSV, TSV, TSVE, TXT and + W3CLOGFILE.' + type: string + databaseRoutingType: + description: 'Indication for database routing information from + the data connection, by default only database routing information + is allowed. Allowed values: Single, Multi. Changing this forces + a new resource to be created.' + type: string + eventgridResourceId: + description: The resource ID of the event grid that is subscribed + to the storage account events. + type: string + location: + description: The location where the Kusto Database should be created. + Changing this forces a new resource to be created. + type: string + managedIdentityResourceId: + description: Empty for non-managed identity based data connection. + For system assigned identity, provide cluster resource Id. For + user assigned identity (UAI) provide the UAI resource Id. + type: string + mappingRuleName: + description: Specifies the mapping rule used for the message ingestion. + Mapping rule must exist before resource is created. + type: string + skipFirstRecord: + description: is the first record of every file ignored? Defaults + to false. + type: boolean + tableName: + description: Specifies the target table name used for the message + ingestion. Table must exist before resource is created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -771,7 +837,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: EventGridDataConnectionStatus defines the observed state of EventGridDataConnection. diff --git a/package/crds/kusto.azure.upbound.io_eventhubdataconnections.yaml b/package/crds/kusto.azure.upbound.io_eventhubdataconnections.yaml index 7d382aaf4..603125c32 100644 --- a/package/crds/kusto.azure.upbound.io_eventhubdataconnections.yaml +++ b/package/crds/kusto.azure.upbound.io_eventhubdataconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: eventhubdataconnections.kusto.azure.upbound.io spec: group: kusto.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -501,21 +500,85 @@ spec: ingestion. Table must exist before resource is created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + compression: + description: 'Specifies compression type for the connection. Allowed + values: GZip and None. Defaults to None. Changing this forces + a new resource to be created.' + type: string + dataFormat: + description: 'Specifies the data format of the EventHub messages. + Allowed values: APACHEAVRO, AVRO, CSV, JSON, MULTIJSON, ORC, + PARQUET, PSV, RAW, SCSV, SINGLEJSON, SOHSV, TSVE, TSV, TXT, + and W3CLOGFILE.' + type: string + databaseRoutingType: + description: 'Indication for database routing information from + the data connection, by default only database routing information + is allowed. Allowed values: Single, Multi. Changing this forces + a new resource to be created.' + type: string + eventSystemProperties: + description: Specifies a list of system properties for the Event + Hub. + items: + type: string + type: array + identityId: + description: The resource ID of a managed identity (system or + user assigned) to be used to authenticate with event hub. + type: string + location: + description: The location where the Kusto Database should be created. + Changing this forces a new resource to be created. + type: string + mappingRuleName: + description: Specifies the mapping rule used for the message ingestion. + Mapping rule must exist before resource is created. + type: string + tableName: + description: Specifies the target table name used for the message + ingestion. Table must exist before resource is created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -689,7 +752,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: EventHubDataConnectionStatus defines the observed state of EventHubDataConnection. diff --git a/package/crds/kusto.azure.upbound.io_iothubdataconnections.yaml b/package/crds/kusto.azure.upbound.io_iothubdataconnections.yaml index bb65411bb..596690f40 100644 --- a/package/crds/kusto.azure.upbound.io_iothubdataconnections.yaml +++ b/package/crds/kusto.azure.upbound.io_iothubdataconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iothubdataconnections.kusto.azure.upbound.io spec: group: kusto.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -582,21 +581,86 @@ spec: this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dataFormat: + description: 'Specifies the data format of the IoTHub messages. + Allowed values: APACHEAVRO, AVRO, CSV, JSON, MULTIJSON, ORC, + PARQUET, PSV, RAW, SCSV, SINGLEJSON, SOHSV, TSV, TSVE, TXT and + W3CLOGFILE. Changing this forces a new resource to be created.' + type: string + databaseRoutingType: + description: 'Indication for database routing information from + the data connection, by default only database routing information + is allowed. Allowed values: Single, Multi. Changing this forces + a new resource to be created.' + type: string + eventSystemProperties: + description: Specifies the System Properties that each IoT Hub + message should contain. Changing this forces a new resource + to be created. Possible values are message-id, sequence-number, + to, absolute-expiry-time, iothub-enqueuedtime, correlation-id, + user-id, iothub-ack, iothub-connection-device-id, iothub-connection-auth-generation-id + and iothub-connection-auth-method. + items: + type: string + type: array + location: + description: The location where the Kusto Database should be created. + Changing this forces a new resource to be created. + type: string + mappingRuleName: + description: Specifies the mapping rule used for the message ingestion. + Mapping rule must exist before resource is created. Changing + this forces a new resource to be created. + type: string + name: + description: The name of the Kusto IotHub Data Connection to create. + Changing this forces a new resource to be created. + type: string + tableName: + description: Specifies the target table name used for the message + ingestion. Table must exist before resource is created. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -770,9 +834,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: IOTHubDataConnectionStatus defines the observed state of IOTHubDataConnection. diff --git a/package/crds/labservices.azure.upbound.io_labservicelabs.yaml b/package/crds/labservices.azure.upbound.io_labservicelabs.yaml index f7fe1415a..4bbf5be00 100644 --- a/package/crds/labservices.azure.upbound.io_labservicelabs.yaml +++ b/package/crds/labservices.azure.upbound.io_labservicelabs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: labservicelabs.labservices.azure.upbound.io spec: group: labservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -322,8 +321,6 @@ spec: description: Is open access enabled to allow any user or only specified users to register to a Lab Service Lab? type: boolean - required: - - openAccessEnabled type: object type: array tags: @@ -371,7 +368,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array createOption: @@ -432,7 +428,6 @@ spec: type: string required: - passwordSecretRef - - username type: object type: array sharedPasswordEnabled: @@ -452,9 +447,6 @@ spec: description: The name of the SKU. Changing this forces a new resource to be created. type: string - required: - - capacity - - name type: object type: array usageQuota: @@ -462,28 +454,237 @@ spec: Lab user. Defaults to PT0S. This value must be formatted as an ISO 8601 string. type: string - required: - - adminUser - - imageReference - - sku type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoShutdown: + description: An auto_shutdown block as defined below. + items: + properties: + disconnectDelay: + description: The amount of time a VM will stay running after + a user disconnects if this behavior is enabled. This value + must be formatted as an ISO 8601 string. + type: string + idleDelay: + description: The amount of time a VM will idle before it + is shutdown if this behavior is enabled. This value must + be formatted as an ISO 8601 string. + type: string + noConnectDelay: + description: The amount of time a VM will stay running before + it is shutdown if no connection is made and this behavior + is enabled. This value must be formatted as an ISO 8601 + string. + type: string + shutdownOnIdle: + description: A VM will get shutdown when it has idled for + a period of time. Possible values are LowUsage and UserAbsence. + type: string + type: object + type: array + connectionSetting: + description: A connection_setting block as defined below. + items: + properties: + clientRdpAccess: + description: The enabled access level for Client Access + over RDP. Possible value is Public. + type: string + clientSshAccess: + description: The enabled access level for Client Access + over SSH. Possible value is Public. + type: string + type: object + type: array + description: + description: The description of the Lab Service Lab. + type: string + labPlanId: + description: The resource ID of the Lab Plan that is used during + resource creation to provide defaults and acts as a permission + container when creating a Lab Service Lab via labs.azure.com. + type: string + location: + description: The Azure Region where the Lab Service Lab should + exist. Changing this forces a new resource to be created. + type: string + network: + description: A network block as defined below. + items: + type: object + type: array + roster: + description: A roster block as defined below. + items: + properties: + activeDirectoryGroupId: + description: The AAD group ID which this Lab Service Lab + roster is populated from. + type: string + lmsInstance: + description: The base URI identifying the lms instance. + type: string + ltiClientId: + description: The unique id of the Azure Lab Service tool + in the lms. + type: string + ltiContextId: + description: The unique context identifier for the Lab Service + Lab in the lms. + type: string + ltiRosterEndpoint: + description: The URI of the names and roles service endpoint + on the lms for the class attached to this Lab Service + Lab. + type: string + type: object + type: array + security: + description: A security block as defined below. + items: + properties: + openAccessEnabled: + description: Is open access enabled to allow any user or + only specified users to register to a Lab Service Lab? + type: boolean + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Lab Service Lab. + type: object + title: + description: The title of the Lab Service Lab. + type: string + virtualMachine: + description: A virtual_machine block as defined below. + items: + properties: + additionalCapabilityGpuDriversInstalled: + description: Is flagged to pre-install dedicated GPU drivers? + Defaults to false. Changing this forces a new resource + to be created. + type: boolean + adminUser: + description: An admin_user block as defined below. + items: + properties: + username: + description: The username to use when signing in to + Lab Service Lab VMs. + type: string + type: object + type: array + createOption: + description: The create option to indicate what Lab Service + Lab VMs are created from. Possible values are Image and + TemplateVM. Defaults to Image. Changing this forces a + new resource to be created. + type: string + imageReference: + description: An image_reference block as defined below. + items: + properties: + id: + description: The resource ID of the image. Changing + this forces a new resource to be created. + type: string + offer: + description: The image offer if applicable. Changing + this forces a new resource to be created. + type: string + publisher: + description: The image publisher. Changing this forces + a new resource to be created. + type: string + sku: + description: A sku block as defined below. + type: string + version: + description: The image version specified on creation. + Changing this forces a new resource to be created. + type: string + type: object + type: array + nonAdminUser: + description: A non_admin_user block as defined below. + items: + properties: + username: + description: The username to use when signing in to + Lab Service Lab VMs. + type: string + type: object + type: array + sharedPasswordEnabled: + description: Is the shared password enabled with the same + password for all user VMs? Defaults to false. Changing + this forces a new resource to be created. + type: boolean + sku: + description: A sku block as defined below. + items: + properties: + capacity: + description: The capacity for the SKU. Possible values + are between 0 and 400. + type: number + name: + description: The name of the SKU. Changing this forces + a new resource to be created. + type: string + type: object + type: array + usageQuota: + description: The initial quota allocated to each Lab Service + Lab user. Defaults to PT0S. This value must be formatted + as an ISO 8601 string. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -657,13 +858,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: security is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.security) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.security) + || has(self.initProvider.security)' - message: title is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.title) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.title) + || has(self.initProvider.title)' - message: virtualMachine is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.virtualMachine) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.virtualMachine) + || has(self.initProvider.virtualMachine)' status: description: LabServiceLabStatus defines the observed state of LabServiceLab. properties: diff --git a/package/crds/labservices.azure.upbound.io_labserviceplans.yaml b/package/crds/labservices.azure.upbound.io_labserviceplans.yaml index d247088e3..534a2e55c 100644 --- a/package/crds/labservices.azure.upbound.io_labserviceplans.yaml +++ b/package/crds/labservices.azure.upbound.io_labserviceplans.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: labserviceplans.labservices.azure.upbound.io spec: group: labservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -318,21 +317,138 @@ spec: Lab Service Plan. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowedRegions: + description: The allowed regions for the lab creator to use when + creating labs using this Lab Service Plan. The allowed region's + count must be between 1 and 28. + items: + type: string + type: array + defaultAutoShutdown: + description: A default_auto_shutdown block as defined below. + items: + properties: + disconnectDelay: + description: The amount of time a VM will stay running after + a user disconnects if this behavior is enabled. This value + must be formatted as an ISO 8601 string. + type: string + idleDelay: + description: The amount of time a VM will idle before it + is shutdown if this behavior is enabled. This value must + be formatted as an ISO 8601 string. + type: string + noConnectDelay: + description: The amount of time a VM will stay running before + it is shutdown if no connection is made and this behavior + is enabled. This value must be formatted as an ISO 8601 + string. + type: string + shutdownOnIdle: + description: Will a VM get shutdown when it has idled for + a period of time? Possible values are LowUsage and UserAbsence. + type: string + type: object + type: array + defaultConnection: + description: A default_connection block as defined below. + items: + properties: + clientRdpAccess: + description: The enabled access level for Client Access + over RDP. Possible values are Private and Public. + type: string + clientSshAccess: + description: The enabled access level for Client Access + over SSH. Possible values are Private and Public. + type: string + webRdpAccess: + description: The enabled access level for Web Access over + RDP. Possible values are Private and Public. + type: string + webSshAccess: + description: The enabled access level for Web Access over + SSH. Possible values are Private and Public. + type: string + type: object + type: array + location: + description: The Azure Region where the Lab Service Plan should + exist. Changing this forces a new resource to be created. + type: string + sharedGalleryId: + description: The resource ID of the Shared Image Gallery attached + to this Lab Service Plan. When saving a lab template virtual + machine image it will be persisted in this gallery. The shared + images from the gallery can be made available to use when creating + new labs. + type: string + support: + description: A support block as defined below. + items: + properties: + email: + description: The email address for the support contact. + type: string + instructions: + description: The instructions for users of the Lab Service + Plan. + type: string + phone: + description: The phone number for the support contact. + type: string + url: + description: The web address for users of the Lab Service + Plan. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Lab Service Plan. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -506,9 +622,13 @@ spec: type: object x-kubernetes-validations: - message: allowedRegions is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.allowedRegions) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.allowedRegions) + || has(self.initProvider.allowedRegions)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: LabServicePlanStatus defines the observed state of LabServicePlan. properties: diff --git a/package/crds/logic.azure.upbound.io_appactioncustoms.yaml b/package/crds/logic.azure.upbound.io_appactioncustoms.yaml index a21768ec5..866b67918 100644 --- a/package/crds/logic.azure.upbound.io_appactioncustoms.yaml +++ b/package/crds/logic.azure.upbound.io_appactioncustoms.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appactioncustoms.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -150,21 +149,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + body: + description: Specifies the JSON Blob defining the Body of this + Custom Action. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -338,7 +366,9 @@ spec: type: object x-kubernetes-validations: - message: body is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.body) + || has(self.initProvider.body)' status: description: AppActionCustomStatus defines the observed state of AppActionCustom. properties: diff --git a/package/crds/logic.azure.upbound.io_appactionhttps.yaml b/package/crds/logic.azure.upbound.io_appactionhttps.yaml index d4999b13e..e98ba635b 100644 --- a/package/crds/logic.azure.upbound.io_appactionhttps.yaml +++ b/package/crds/logic.azure.upbound.io_appactionhttps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appactionhttps.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -181,9 +180,6 @@ spec: will be triggered. Possible values include Succeeded, Failed, Skipped and TimedOut. type: string - required: - - actionName - - actionResult type: object type: array uri: @@ -191,21 +187,88 @@ spec: HTTP Action is triggered. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + body: + description: Specifies the HTTP Body that should be sent to the + uri when this HTTP Action is triggered. + type: string + headers: + additionalProperties: + type: string + description: Specifies a Map of Key-Value Pairs that should be + sent to the uri when this HTTP Action is triggered. + type: object + method: + description: Specifies the HTTP Method which should be used for + this HTTP Action. Possible values include DELETE, GET, PATCH, + POST and PUT. + type: string + queries: + additionalProperties: + type: string + description: Specifies a Map of Key-Value Pairs that should be + sent to the uri when this HTTP Action is triggered. + type: object + runAfter: + description: Specifies the place of the HTTP Action in the Logic + App Workflow. If not specified, the HTTP Action is right after + the Trigger. A run_after block is as defined below. + items: + properties: + actionName: + description: Specifies the name of the precedent HTTP Action. + type: string + actionResult: + description: Specifies the expected result of the precedent + HTTP Action, only after which the current HTTP Action + will be triggered. Possible values include Succeeded, + Failed, Skipped and TimedOut. + type: string + type: object + type: array + uri: + description: Specifies the URI which will be called when this + HTTP Action is triggered. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -379,9 +442,13 @@ spec: type: object x-kubernetes-validations: - message: method is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.method) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.method) + || has(self.initProvider.method)' - message: uri is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.uri) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.uri) + || has(self.initProvider.uri)' status: description: AppActionHTTPStatus defines the observed state of AppActionHTTP. properties: diff --git a/package/crds/logic.azure.upbound.io_appintegrationaccountbatchconfigurations.yaml b/package/crds/logic.azure.upbound.io_appintegrationaccountbatchconfigurations.yaml index 7d9bb056a..5f8db2b73 100644 --- a/package/crds/logic.azure.upbound.io_appintegrationaccountbatchconfigurations.yaml +++ b/package/crds/logic.azure.upbound.io_appintegrationaccountbatchconfigurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appintegrationaccountbatchconfigurations.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -233,9 +232,6 @@ spec: Tuesday, Wednesday, Thursday, Friday and Saturday. type: string - required: - - week - - weekday type: object type: array weekDays: @@ -255,9 +251,6 @@ spec: timeZone: description: The timezone of the start/end time. type: string - required: - - frequency - - interval type: object type: array type: object @@ -343,21 +336,153 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + batchGroupName: + description: The batch group name of the Logic App Integration + Batch Configuration. Changing this forces a new resource to + be created. + type: string + metadata: + additionalProperties: + type: string + description: A JSON mapping of any Metadata for this Logic App + Integration Account Batch Configuration. + type: object + name: + description: The name which should be used for this Logic App + Integration Account Batch Configuration. Only Alphanumeric characters + allowed. Changing this forces a new resource to be created. + type: string + releaseCriteria: + description: A release_criteria block as documented below, which + is used to select the criteria to meet before processing each + batch. + items: + properties: + batchSize: + description: The batch size in bytes for the Logic App Integration + Batch Configuration. + type: number + messageCount: + description: The message count for the Logic App Integration + Batch Configuration. + type: number + recurrence: + description: A recurrence block as documented below. + items: + properties: + endTime: + description: The end time of the schedule, formatted + as an RFC3339 string. + type: string + frequency: + description: The frequency of the schedule. Possible + values are Day, Hour, Minute, Month, NotSpecified, + Second, Week and Year. + type: string + interval: + description: The number of frequencys between runs. + type: number + schedule: + description: A schedule block as documented below. + items: + properties: + hours: + description: A list containing a single item, + which specifies the Hour interval at which + this recurrence should be triggered. + items: + type: number + type: array + minutes: + description: A list containing a single item + which specifies the Minute interval at which + this recurrence should be triggered. + items: + type: number + type: array + monthDays: + description: A list of days of the month that + the job should execute on. + items: + type: number + type: array + monthly: + description: A monthly block as documented below. + items: + properties: + week: + description: The occurrence of the week + within the month. + type: number + weekday: + description: The day of the occurrence. + Possible values are Sunday, Monday, + Tuesday, Wednesday, Thursday, Friday + and Saturday. + type: string + type: object + type: array + weekDays: + description: A list of days of the week that + the job should execute on. Possible values + are Sunday, Monday, Tuesday, Wednesday, Thursday, + Friday and Saturday. + items: + type: string + type: array + type: object + type: array + startTime: + description: The start time of the schedule, formatted + as an RFC3339 string. + type: string + timeZone: + description: The timezone of the start/end time. + type: string + type: object + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -531,11 +656,17 @@ spec: type: object x-kubernetes-validations: - message: batchGroupName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.batchGroupName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.batchGroupName) + || has(self.initProvider.batchGroupName)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: releaseCriteria is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.releaseCriteria) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.releaseCriteria) + || has(self.initProvider.releaseCriteria)' status: description: AppIntegrationAccountBatchConfigurationStatus defines the observed state of AppIntegrationAccountBatchConfiguration. diff --git a/package/crds/logic.azure.upbound.io_appintegrationaccountpartners.yaml b/package/crds/logic.azure.upbound.io_appintegrationaccountpartners.yaml index 0cab2d22b..6a017bee2 100644 --- a/package/crds/logic.azure.upbound.io_appintegrationaccountpartners.yaml +++ b/package/crds/logic.azure.upbound.io_appintegrationaccountpartners.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appintegrationaccountpartners.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -81,9 +80,6 @@ spec: description: The value that identifies the documents that your logic apps receive. type: string - required: - - qualifier - - value type: object type: array integrationAccountName: @@ -251,21 +247,64 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + businessIdentity: + description: A business_identity block as documented below. + items: + properties: + qualifier: + description: The authenticating body that provides unique + business identities to organizations. + type: string + value: + description: The value that identifies the documents that + your logic apps receive. + type: string + type: object + type: array + metadata: + description: A JSON mapping of any Metadata for this Logic App + Integration Account Partner. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -439,7 +478,9 @@ spec: type: object x-kubernetes-validations: - message: businessIdentity is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.businessIdentity) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.businessIdentity) + || has(self.initProvider.businessIdentity)' status: description: AppIntegrationAccountPartnerStatus defines the observed state of AppIntegrationAccountPartner. diff --git a/package/crds/logic.azure.upbound.io_appintegrationaccounts.yaml b/package/crds/logic.azure.upbound.io_appintegrationaccounts.yaml index f827300a8..cc75f848d 100644 --- a/package/crds/logic.azure.upbound.io_appintegrationaccounts.yaml +++ b/package/crds/logic.azure.upbound.io_appintegrationaccounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appintegrationaccounts.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -174,21 +173,71 @@ spec: Logic App Integration Account. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + integrationServiceEnvironmentId: + description: The resource ID of the Integration Service Environment. + Changing this forces a new Logic App Integration Account to + be created. + type: string + location: + description: The Azure Region where the Logic App Integration + Account should exist. Changing this forces a new Logic App Integration + Account to be created. + type: string + name: + description: The name which should be used for this Logic App + Integration Account. Changing this forces a new Logic App Integration + Account to be created. + type: string + skuName: + description: The SKU name of the Logic App Integration Account. + Possible Values are Basic, Free and Standard. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Logic App Integration Account. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -362,11 +411,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: AppIntegrationAccountStatus defines the observed state of AppIntegrationAccount. diff --git a/package/crds/logic.azure.upbound.io_appintegrationaccountschemas.yaml b/package/crds/logic.azure.upbound.io_appintegrationaccountschemas.yaml index d31b28793..791f1777a 100644 --- a/package/crds/logic.azure.upbound.io_appintegrationaccountschemas.yaml +++ b/package/crds/logic.azure.upbound.io_appintegrationaccountschemas.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appintegrationaccountschemas.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -242,21 +241,58 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + content: + description: The content of the Logic App Integration Account + Schema. + type: string + fileName: + description: The file name of the Logic App Integration Account + Schema. + type: string + metadata: + description: The metadata of the Logic App Integration Account + Schema. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -430,7 +466,9 @@ spec: type: object x-kubernetes-validations: - message: content is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.content) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.content) + || has(self.initProvider.content)' status: description: AppIntegrationAccountSchemaStatus defines the observed state of AppIntegrationAccountSchema. diff --git a/package/crds/logic.azure.upbound.io_appintegrationaccountsessions.yaml b/package/crds/logic.azure.upbound.io_appintegrationaccountsessions.yaml index 51307698c..9d7111533 100644 --- a/package/crds/logic.azure.upbound.io_appintegrationaccountsessions.yaml +++ b/package/crds/logic.azure.upbound.io_appintegrationaccountsessions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appintegrationaccountsessions.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -234,21 +233,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + content: + description: The content of the Logic App Integration Account + Session. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -422,7 +450,9 @@ spec: type: object x-kubernetes-validations: - message: content is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.content) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.content) + || has(self.initProvider.content)' status: description: AppIntegrationAccountSessionStatus defines the observed state of AppIntegrationAccountSession. diff --git a/package/crds/logic.azure.upbound.io_apptriggercustoms.yaml b/package/crds/logic.azure.upbound.io_apptriggercustoms.yaml index 8cdb802d0..3adcad7df 100644 --- a/package/crds/logic.azure.upbound.io_apptriggercustoms.yaml +++ b/package/crds/logic.azure.upbound.io_apptriggercustoms.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apptriggercustoms.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -150,21 +149,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + body: + description: Specifies the JSON Blob defining the Body of this + Custom Trigger. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -338,7 +366,9 @@ spec: type: object x-kubernetes-validations: - message: body is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.body) + || has(self.initProvider.body)' status: description: AppTriggerCustomStatus defines the observed state of AppTriggerCustom. properties: diff --git a/package/crds/logic.azure.upbound.io_apptriggerhttprequests.yaml b/package/crds/logic.azure.upbound.io_apptriggerhttprequests.yaml index 95813eb2f..9fba8fdc0 100644 --- a/package/crds/logic.azure.upbound.io_apptriggerhttprequests.yaml +++ b/package/crds/logic.azure.upbound.io_apptriggerhttprequests.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apptriggerhttprequests.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -157,21 +156,57 @@ spec: This needs to be valid JSON. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + method: + description: Specifies the HTTP Method which the request be using. + Possible values include DELETE, GET, PATCH, POST or PUT. + type: string + relativePath: + description: Specifies the Relative Path used for this Request. + type: string + schema: + description: A JSON Blob defining the Schema of the incoming request. + This needs to be valid JSON. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -345,7 +380,9 @@ spec: type: object x-kubernetes-validations: - message: schema is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.schema) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.schema) + || has(self.initProvider.schema)' status: description: AppTriggerHTTPRequestStatus defines the observed state of AppTriggerHTTPRequest. diff --git a/package/crds/logic.azure.upbound.io_apptriggerrecurrences.yaml b/package/crds/logic.azure.upbound.io_apptriggerrecurrences.yaml index da9704585..a51f05c78 100644 --- a/package/crds/logic.azure.upbound.io_apptriggerrecurrences.yaml +++ b/package/crds/logic.azure.upbound.io_apptriggerrecurrences.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apptriggerrecurrences.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -189,21 +188,89 @@ spec: time zone options are listed here type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + frequency: + description: Specifies the Frequency at which this Trigger should + be run. Possible values include Month, Week, Day, Hour, Minute + and Second. + type: string + interval: + description: Specifies interval used for the Frequency, for example + a value of 4 for interval and hour for frequency would run the + Trigger every 4 hours. + type: number + schedule: + description: A schedule block as specified below. + items: + properties: + atTheseHours: + description: Specifies a list of hours when the trigger + should run. Valid values are between 0 and 23. + items: + type: number + type: array + atTheseMinutes: + description: Specifies a list of minutes when the trigger + should run. Valid values are between 0 and 59. + items: + type: number + type: array + onTheseDays: + description: Specifies a list of days when the trigger should + run. Valid values include Monday, Tuesday, Wednesday, + Thursday, Friday, Saturday, and Sunday. + items: + type: string + type: array + type: object + type: array + startTime: + description: 'Specifies the start date and time for this trigger + in RFC3339 format: 2000-01-02T03:04:05Z.' + type: string + timeZone: + description: Specifies the time zone for this trigger. Supported + time zone options are listed here + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -377,9 +444,13 @@ spec: type: object x-kubernetes-validations: - message: frequency is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frequency) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frequency) + || has(self.initProvider.frequency)' - message: interval is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.interval) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.interval) + || has(self.initProvider.interval)' status: description: AppTriggerRecurrenceStatus defines the observed state of AppTriggerRecurrence. diff --git a/package/crds/logic.azure.upbound.io_appworkflows.yaml b/package/crds/logic.azure.upbound.io_appworkflows.yaml index dfc1d3441..a5b5e4b70 100644 --- a/package/crds/logic.azure.upbound.io_appworkflows.yaml +++ b/package/crds/logic.azure.upbound.io_appworkflows.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appworkflows.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,8 +81,6 @@ spec: items: type: string type: array - required: - - allowedCallerIpAddressRange type: object type: array content: @@ -96,8 +93,6 @@ spec: items: type: string type: array - required: - - allowedCallerIpAddressRange type: object type: array trigger: @@ -127,22 +122,14 @@ spec: description: The value of the OAuth policy claim for the Logic App Workflow. type: string - required: - - name - - value type: object type: array name: description: The OAuth policy name for the Logic App Workflow. type: string - required: - - claim - - name type: object type: array - required: - - allowedCallerIpAddressRange type: object type: array workflowManagement: @@ -155,8 +142,6 @@ spec: items: type: string type: array - required: - - allowedCallerIpAddressRange type: object type: array type: object @@ -179,8 +164,6 @@ spec: that should be configured on this Logic App Workflow. Possible values are SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array integrationServiceEnvironmentId: @@ -306,21 +289,187 @@ spec: a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessControl: + description: A access_control block as defined below. + items: + properties: + action: + description: A action block as defined below. + items: + properties: + allowedCallerIpAddressRange: + description: A list of the allowed caller IP address + ranges. + items: + type: string + type: array + type: object + type: array + content: + description: A content block as defined below. + items: + properties: + allowedCallerIpAddressRange: + description: A list of the allowed caller IP address + ranges. + items: + type: string + type: array + type: object + type: array + trigger: + description: A trigger block as defined below. + items: + properties: + allowedCallerIpAddressRange: + description: A list of the allowed caller IP address + ranges. + items: + type: string + type: array + openAuthenticationPolicy: + description: A open_authentication_policy block as + defined below. + items: + properties: + claim: + description: A claim block as defined below. + items: + properties: + name: + description: The OAuth policy name for + the Logic App Workflow. + type: string + value: + description: The value of the OAuth policy + claim for the Logic App Workflow. + type: string + type: object + type: array + name: + description: The OAuth policy name for the Logic + App Workflow. + type: string + type: object + type: array + type: object + type: array + workflowManagement: + description: A workflow_management block as defined below. + items: + properties: + allowedCallerIpAddressRange: + description: A list of the allowed caller IP address + ranges. + items: + type: string + type: array + type: object + type: array + type: object + type: array + enabled: + description: Is the Logic App Workflow enabled? Defaults to true. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Logic App Workflow. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Logic App Workflow. + Possible values are SystemAssigned, UserAssigned. + type: string + type: object + type: array + integrationServiceEnvironmentId: + description: The ID of the Integration Service Environment to + which this Logic App Workflow belongs. Changing this forces + a new Logic App Workflow to be created. + type: string + location: + description: Specifies the supported Azure location where the + Logic App Workflow exists. Changing this forces a new resource + to be created. + type: string + logicAppIntegrationAccountId: + description: The ID of the integration account linked by this + Logic App Workflow. + type: string + parameters: + additionalProperties: + type: string + description: A map of Key-Value pairs. + type: object + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + workflowParameters: + additionalProperties: + type: string + description: 'Specifies a map of Key-Value pairs of the Parameter + Definitions to use for this Logic App Workflow. The key is the + parameter name, and the value is a JSON encoded string of the + parameter definition (see: https://docs.microsoft.com/azure/logic-apps/logic-apps-workflow-definition-language#parameters).' + type: object + workflowSchema: + description: Specifies the Schema to use for this Logic App Workflow. + Defaults to https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#. + Changing this forces a new resource to be created. + type: string + workflowVersion: + description: Specifies the version of the Schema used for this + Logic App Workflow. Defaults to 1.0.0.0. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -494,7 +643,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: AppWorkflowStatus defines the observed state of AppWorkflow. properties: diff --git a/package/crds/logic.azure.upbound.io_integrationserviceenvironments.yaml b/package/crds/logic.azure.upbound.io_integrationserviceenvironments.yaml index 1a7b5f924..efa5946d8 100644 --- a/package/crds/logic.azure.upbound.io_integrationserviceenvironments.yaml +++ b/package/crds/logic.azure.upbound.io_integrationserviceenvironments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: integrationserviceenvironments.logic.azure.upbound.io spec: group: logic.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -259,21 +258,69 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessEndpointType: + description: The type of access endpoint to use for the Integration + Service Environment. Possible Values are Internal and External. + Changing this forces a new Integration Service Environment to + be created. + type: string + location: + description: The Azure Region where the Integration Service Environment + should exist. Changing this forces a new Integration Service + Environment to be created. + type: string + skuName: + description: The SKU name and capacity of the Integration Service + Environment. Possible values are Developer_0, Premium_0, Premium_1, + Premium_2, Premium_3, Premium_4, Premium_5, Premium_6, Premium_7, + Premium_8, Premium_9 and Premium_10. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Integration Service Environment. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -447,9 +494,13 @@ spec: type: object x-kubernetes-validations: - message: accessEndpointType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.accessEndpointType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.accessEndpointType) + || has(self.initProvider.accessEndpointType)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: IntegrationServiceEnvironmentStatus defines the observed state of IntegrationServiceEnvironment. diff --git a/package/crds/logz.azure.upbound.io_monitors.yaml b/package/crds/logz.azure.upbound.io_monitors.yaml index 197444068..3bfb91599 100644 --- a/package/crds/logz.azure.upbound.io_monitors.yaml +++ b/package/crds/logz.azure.upbound.io_monitors.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: monitors.logz.azure.upbound.io spec: group: logz.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -107,10 +106,6 @@ spec: PAYG or COMMITTED. Changing this forces a new logz Monitor to be created. type: string - required: - - billingCycle - - effectiveDate - - usageType type: object type: array resourceGroupName: @@ -222,29 +217,122 @@ spec: them if needed. Changing this forces a new logz Monitor to be created. type: string - required: - - email - - firstName - - lastName - - phoneNumber type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + companyName: + description: Name of the Logz organization. Changing this forces + a new logz Monitor to be created. + type: string + enabled: + description: Whether the resource monitoring is enabled? Defaults + to true. + type: boolean + enterpriseAppId: + description: The ID of the Enterprise App. Changing this forces + a new logz Monitor to be created. + type: string + location: + description: The Azure Region where the logz Monitor should exist. + Changing this forces a new logz Monitor to be created. + type: string + plan: + description: A plan block as defined below. Changing this forces + a new resource to be created. + items: + properties: + billingCycle: + description: Different billing cycles. Possible values are + MONTHLY or WEEKLY. Changing this forces a new logz Monitor + to be created. + type: string + effectiveDate: + description: Date when plan was applied. Changing this forces + a new logz Monitor to be created. + type: string + planId: + description: Plan id as published by Logz. The only possible + value is 100gb14days. Defaults to 100gb14days. Changing + this forces a new logz Monitor to be created. + type: string + usageType: + description: Different usage types. Possible values are + PAYG or COMMITTED. Changing this forces a new logz Monitor + to be created. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + logz Monitor. + type: object + user: + description: A user block as defined below. Changing this forces + a new resource to be created. + items: + properties: + email: + description: Email of the user used by Logz for contacting + them if needed. Changing this forces a new logz Monitor + to be created. + type: string + firstName: + description: First Name of the user. Changing this forces + a new logz Monitor to be created. + type: string + lastName: + description: Last Name of the user. Changing this forces + a new logz Monitor to be created. + type: string + phoneNumber: + description: Phone number of the user used by Logz for contacting + them if needed. Changing this forces a new logz Monitor + to be created. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -418,11 +506,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: plan is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.plan) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.plan) + || has(self.initProvider.plan)' - message: user is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.user) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.user) + || has(self.initProvider.user)' status: description: MonitorStatus defines the observed state of Monitor. properties: diff --git a/package/crds/logz.azure.upbound.io_subaccounts.yaml b/package/crds/logz.azure.upbound.io_subaccounts.yaml index 0622bba38..6dc09cca1 100644 --- a/package/crds/logz.azure.upbound.io_subaccounts.yaml +++ b/package/crds/logz.azure.upbound.io_subaccounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subaccounts.logz.azure.upbound.io spec: group: logz.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -184,29 +183,90 @@ spec: 40 characters in length. Changing this forces a new logz Sub Account to be created. type: string - required: - - email - - firstName - - lastName - - phoneNumber type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Whether the resource monitoring is enabled? Defaults + to true. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + logz Sub Account. + type: object + user: + description: A user block as defined below. Changing this forces + a new resource to be created. + items: + properties: + email: + description: Email of the user used by Logz for contacting + them if needed. A valid email address consists of an email + prefix and an email domain. The prefix and domain may + contain only letters, numbers, underscores, periods and + dashes. Changing this forces a new logz Sub Account to + be created. + type: string + firstName: + description: First Name of the user. Possible values must + be between 1 and 50 characters in length. Changing this + forces a new logz Sub Account to be created. + type: string + lastName: + description: Last Name of the user. Possible values must + be between 1 and 50 characters in length. Changing this + forces a new logz Sub Account to be created. + type: string + phoneNumber: + description: Phone number of the user used by Logz for contacting + them if needed. Possible values must be between 1 and + 40 characters in length. Changing this forces a new logz + Sub Account to be created. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -380,7 +440,9 @@ spec: type: object x-kubernetes-validations: - message: user is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.user) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.user) + || has(self.initProvider.user)' status: description: SubAccountStatus defines the observed state of SubAccount. properties: diff --git a/package/crds/logz.azure.upbound.io_subaccounttagrules.yaml b/package/crds/logz.azure.upbound.io_subaccounttagrules.yaml index e7a402798..fbd9bae8c 100644 --- a/package/crds/logz.azure.upbound.io_subaccounttagrules.yaml +++ b/package/crds/logz.azure.upbound.io_subaccounttagrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subaccounttagrules.logz.azure.upbound.io spec: group: logz.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -173,27 +172,79 @@ spec: value: description: The value of the tag to match. type: string - required: - - action - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + sendAadLogs: + description: Whether AAD logs should be sent to the Monitor resource? + type: boolean + sendActivityLogs: + description: Whether activity logs from this Logz Sub Account + Tag Rule should be sent to the Monitor resource? + type: boolean + sendSubscriptionLogs: + description: Whether subscription logs should be sent to the Monitor + resource? + type: boolean + tagFilter: + description: One or more (up to 10) tag_filter blocks as defined + below. + items: + properties: + action: + description: The action is used to limit logs collection + to include or exclude Azure resources with specific tags. + Possible values are Include and Exclude. Note that the + Exclude takes priority over the Include. + type: string + name: + description: The name of the tag to match. + type: string + value: + description: The value of the tag to match. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/logz.azure.upbound.io_tagrules.yaml b/package/crds/logz.azure.upbound.io_tagrules.yaml index c7ceb5828..21bcbbb00 100644 --- a/package/crds/logz.azure.upbound.io_tagrules.yaml +++ b/package/crds/logz.azure.upbound.io_tagrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: tagrules.logz.azure.upbound.io spec: group: logz.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -172,27 +171,78 @@ spec: value: description: The value of this tag_filter. type: string - required: - - action - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + sendAadLogs: + description: Whether AAD logs should be sent to the Monitor resource? + type: boolean + sendActivityLogs: + description: Whether activity logs from Azure resources should + be sent to the Monitor resource? + type: boolean + sendSubscriptionLogs: + description: Whether subscription logs should be sent to the Monitor + resource? + type: boolean + tagFilter: + description: One or more (up to 10) tag_filter blocks as defined + below. + items: + properties: + action: + description: The action for a filtering tag. Possible values + are Include and Exclude is allowed. Note that the Exclude + takes priority over the Include. + type: string + name: + description: The name of this tag_filter. + type: string + value: + description: The value of this tag_filter. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/machinelearningservices.azure.upbound.io_computeclusters.yaml b/package/crds/machinelearningservices.azure.upbound.io_computeclusters.yaml index 5a98b202d..3c386f97b 100644 --- a/package/crds/machinelearningservices.azure.upbound.io_computeclusters.yaml +++ b/package/crds/machinelearningservices.azure.upbound.io_computeclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: computeclusters.machinelearningservices.azure.upbound.io spec: group: machinelearningservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -92,8 +91,6 @@ spec: SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. type: string - required: - - type type: object type: array localAuthEnabled: @@ -210,10 +207,6 @@ spec: standard for duration. Changing this forces a new Machine Learning Compute Cluster to be created.' type: string - required: - - maxNodeCount - - minNodeCount - - scaleDownNodesAfterIdleDuration type: object type: array ssh: @@ -238,8 +231,6 @@ spec: Changing this forces a new Machine Learning Compute Cluster to be created. type: string - required: - - adminUsername type: object type: array sshPublicAccessEnabled: @@ -342,21 +333,154 @@ spec: Learning Compute Cluster to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of the Machine Learning compute. + Changing this forces a new Machine Learning Compute Cluster + to be created. + type: string + identity: + description: An identity block as defined below. Changing this + forces a new Machine Learning Compute Cluster to be created. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Machine Learning Compute Cluster. + Changing this forces a new resource to be created. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Machine Learning Compute + Cluster. Possible values are SystemAssigned, UserAssigned, + SystemAssigned, UserAssigned (to enable both). Changing + this forces a new resource to be created. + type: string + type: object + type: array + localAuthEnabled: + description: Whether local authentication methods is enabled. + Defaults to true. Changing this forces a new Machine Learning + Compute Cluster to be created. + type: boolean + location: + description: The Azure Region where the Machine Learning Compute + Cluster should exist. Changing this forces a new Machine Learning + Compute Cluster to be created. + type: string + name: + description: The name which should be used for this Machine Learning + Compute Cluster. Changing this forces a new Machine Learning + Compute Cluster to be created. + type: string + scaleSettings: + description: A scale_settings block as defined below. Changing + this forces a new Machine Learning Compute Cluster to be created. + items: + properties: + maxNodeCount: + description: Maximum node count. Changing this forces a + new Machine Learning Compute Cluster to be created. + type: number + minNodeCount: + description: Minimal node count. Changing this forces a + new Machine Learning Compute Cluster to be created. + type: number + scaleDownNodesAfterIdleDuration: + description: 'Node Idle Time Before Scale Down: defines + the time until the compute is shutdown when it has gone + into Idle state. Is defined according to W3C XML schema + standard for duration. Changing this forces a new Machine + Learning Compute Cluster to be created.' + type: string + type: object + type: array + ssh: + description: Credentials for an administrator user account that + will be created on each compute node. A ssh block as defined + below. Changing this forces a new Machine Learning Compute Cluster + to be created. + items: + properties: + adminPassword: + description: Password of the administrator user account. + Changing this forces a new Machine Learning Compute Cluster + to be created. + type: string + adminUsername: + description: Name of the administrator user account which + can be used to SSH to nodes. Changing this forces a new + Machine Learning Compute Cluster to be created. + type: string + keyValue: + description: SSH public key of the administrator user account. + Changing this forces a new Machine Learning Compute Cluster + to be created. + type: string + type: object + type: array + sshPublicAccessEnabled: + description: A boolean value indicating whether enable the public + SSH port. Changing this forces a new Machine Learning Compute + Cluster to be created. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Machine Learning Compute Cluster. Changing this forces a new + Machine Learning Compute Cluster to be created. + type: object + vmPriority: + description: The priority of the VM. Changing this forces a new + Machine Learning Compute Cluster to be created. Accepted values + are Dedicated and LowPriority. + type: string + vmSize: + description: The size of the VM. Changing this forces a new Machine + Learning Compute Cluster to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -530,15 +654,25 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: scaleSettings is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scaleSettings) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scaleSettings) + || has(self.initProvider.scaleSettings)' - message: vmPriority is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vmPriority) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.vmPriority) + || has(self.initProvider.vmPriority)' - message: vmSize is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vmSize) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.vmSize) + || has(self.initProvider.vmSize)' status: description: ComputeClusterStatus defines the observed state of ComputeCluster. properties: diff --git a/package/crds/machinelearningservices.azure.upbound.io_computeinstances.yaml b/package/crds/machinelearningservices.azure.upbound.io_computeinstances.yaml index 258ab60cf..92634968d 100644 --- a/package/crds/machinelearningservices.azure.upbound.io_computeinstances.yaml +++ b/package/crds/machinelearningservices.azure.upbound.io_computeinstances.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: computeinstances.machinelearningservices.azure.upbound.io spec: group: machinelearningservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -111,8 +110,6 @@ spec: SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. type: string - required: - - type type: object type: array localAuthEnabled: @@ -215,8 +212,6 @@ spec: string. Use "ssh-keygen -t rsa -b 2048" to generate your SSH key pairs. type: string - required: - - publicKey type: object type: array subnetResourceId: @@ -309,21 +304,125 @@ spec: new Machine Learning Compute Instance to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + assignToUser: + description: A assign_to_user block as defined below. A user explicitly + assigned to a personal compute instance. Changing this forces + a new Machine Learning Compute Instance to be created. + items: + properties: + objectId: + description: User’s AAD Object Id. + type: string + tenantId: + description: User’s AAD Tenant Id. + type: string + type: object + type: array + authorizationType: + description: 'The Compute Instance Authorization type. Possible + values include: personal. Changing this forces a new Machine + Learning Compute Instance to be created.' + type: string + description: + description: The description of the Machine Learning Compute Instance. + Changing this forces a new Machine Learning Compute Instance + to be created. + type: string + identity: + description: An identity block as defined below. Changing this + forces a new Machine Learning Compute Instance to be created. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Machine Learning Compute Instance. + Changing this forces a new resource to be created. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Machine Learning Compute + Instance. Possible values are SystemAssigned, UserAssigned, + SystemAssigned, UserAssigned (to enable both). Changing + this forces a new resource to be created. + type: string + type: object + type: array + localAuthEnabled: + description: Whether local authentication methods is enabled. + Defaults to true. Changing this forces a new Machine Learning + Compute Instance to be created. + type: boolean + location: + description: The Azure Region where the Machine Learning Compute + Instance should exist. Changing this forces a new Machine Learning + Compute Instance to be created. + type: string + ssh: + description: A ssh block as defined below. Specifies policy and + settings for SSH access. Changing this forces a new Machine + Learning Compute Instance to be created. + items: + properties: + publicKey: + description: Specifies the SSH rsa public key file as a + string. Use "ssh-keygen -t rsa -b 2048" to generate your + SSH key pairs. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Machine Learning Compute Instance. Changing this forces a new + Machine Learning Compute Instance to be created. + type: object + virtualMachineSize: + description: The Virtual Machine Size. Changing this forces a + new Machine Learning Compute Instance to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -497,9 +596,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: virtualMachineSize is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.virtualMachineSize) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.virtualMachineSize) + || has(self.initProvider.virtualMachineSize)' status: description: ComputeInstanceStatus defines the observed state of ComputeInstance. properties: diff --git a/package/crds/machinelearningservices.azure.upbound.io_synapsesparks.yaml b/package/crds/machinelearningservices.azure.upbound.io_synapsesparks.yaml index cd18925c9..e63ff5aad 100644 --- a/package/crds/machinelearningservices.azure.upbound.io_synapsesparks.yaml +++ b/package/crds/machinelearningservices.azure.upbound.io_synapsesparks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: synapsesparks.machinelearningservices.azure.upbound.io spec: group: machinelearningservices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -93,8 +92,6 @@ spec: SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. type: string - required: - - type type: object type: array localAuthEnabled: @@ -271,21 +268,89 @@ spec: Learning Synapse Spark to be created. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: The description of the Machine Learning Synapse Spark. + Changing this forces a new Machine Learning Synapse Spark to + be created. + type: string + identity: + description: An identity block as defined below. Changing this + forces a new Machine Learning Synapse Spark to be created. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Machine Learning Synapse Spark. + Changing this forces a new resource to be created. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Machine Learning Synapse + Spark. Possible values are SystemAssigned, UserAssigned, + SystemAssigned, UserAssigned (to enable both). Changing + this forces a new resource to be created. + type: string + type: object + type: array + localAuthEnabled: + description: Whether local authentication methods is enabled. + Defaults to true. Changing this forces a new Machine Learning + Synapse Spark to be created. + type: boolean + location: + description: The Azure Region where the Machine Learning Synapse + Spark should exist. Changing this forces a new Machine Learning + Synapse Spark to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Machine Learning Synapse Spark. Changing this forces a new Machine + Learning Synapse Spark to be created. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -459,7 +524,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SynapseSparkStatus defines the observed state of SynapseSpark. properties: diff --git a/package/crds/machinelearningservices.azure.upbound.io_workspaces.yaml b/package/crds/machinelearningservices.azure.upbound.io_workspaces.yaml index 61648b8a5..aed8433db 100644 --- a/package/crds/machinelearningservices.azure.upbound.io_workspaces.yaml +++ b/package/crds/machinelearningservices.azure.upbound.io_workspaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: workspaces.machinelearningservices.azure.upbound.io spec: group: machinelearningservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -432,8 +431,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array imageBuildComputeName: @@ -784,21 +781,117 @@ spec: to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + containerRegistryId: + description: The ID of the container registry associated with + this Machine Learning Workspace. Changing this forces a new + resource to be created. + type: string + description: + description: The description of this Machine Learning Workspace. + type: string + encryption: + description: An encryption block as defined below. Changing this + forces a new resource to be created. + items: + type: object + type: array + friendlyName: + description: Display name for this Machine Learning Workspace. + type: string + highBusinessImpact: + description: Flag to signal High Business Impact (HBI) data in + the workspace and reduce diagnostic data collected by the service + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Machine Learning Workspace. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Machine Learning Workspace. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + imageBuildComputeName: + description: The compute name for image build of the Machine Learning + Workspace. + type: string + location: + description: Specifies the supported Azure location where the + Machine Learning Workspace should exist. Changing this forces + a new resource to be created. + type: string + publicAccessBehindVirtualNetworkEnabled: + description: Enable public access when this Machine Learning Workspace + is behind a VNet. Changing this forces a new resource to be + created. + type: boolean + publicNetworkAccessEnabled: + description: Enable public access when this Machine Learning Workspace + is behind VNet. + type: boolean + skuName: + description: SKU/edition of the Machine Learning Workspace, possible + values are Basic. Defaults to Basic. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + v1LegacyModeEnabled: + description: Enable V1 API features, enabling v1_legacy_mode may + prevent you from using features provided by the v2 API. Defaults + to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -972,9 +1065,13 @@ spec: type: object x-kubernetes-validations: - message: identity is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.identity) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.identity) + || has(self.initProvider.identity)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: WorkspaceStatus defines the observed state of Workspace. properties: diff --git a/package/crds/maintenance.azure.upbound.io_maintenanceassignmentdedicatedhosts.yaml b/package/crds/maintenance.azure.upbound.io_maintenanceassignmentdedicatedhosts.yaml index 87290a0af..32c8c5f24 100644 --- a/package/crds/maintenance.azure.upbound.io_maintenanceassignmentdedicatedhosts.yaml +++ b/package/crds/maintenance.azure.upbound.io_maintenanceassignmentdedicatedhosts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: maintenanceassignmentdedicatedhosts.maintenance.azure.upbound.io spec: group: maintenance.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -233,21 +232,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -421,7 +449,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: MaintenanceAssignmentDedicatedHostStatus defines the observed state of MaintenanceAssignmentDedicatedHost. diff --git a/package/crds/maintenance.azure.upbound.io_maintenanceassignmentvirtualmachines.yaml b/package/crds/maintenance.azure.upbound.io_maintenanceassignmentvirtualmachines.yaml index 588afd83d..59e61ae18 100644 --- a/package/crds/maintenance.azure.upbound.io_maintenanceassignmentvirtualmachines.yaml +++ b/package/crds/maintenance.azure.upbound.io_maintenanceassignmentvirtualmachines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: maintenanceassignmentvirtualmachines.maintenance.azure.upbound.io spec: group: maintenance.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -233,21 +232,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -421,7 +449,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: MaintenanceAssignmentVirtualMachineStatus defines the observed state of MaintenanceAssignmentVirtualMachine. diff --git a/package/crds/maintenance.azure.upbound.io_maintenanceconfigurations.yaml b/package/crds/maintenance.azure.upbound.io_maintenanceconfigurations.yaml index c34f89aae..340a280c0 100644 --- a/package/crds/maintenance.azure.upbound.io_maintenanceconfigurations.yaml +++ b/package/crds/maintenance.azure.upbound.io_maintenanceconfigurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: maintenanceconfigurations.maintenance.azure.upbound.io spec: group: maintenance.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -270,27 +269,172 @@ spec: list of timezones can be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. type: string - required: - - startDateTime - - timeZone type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + inGuestUserPatchMode: + description: The in guest user patch mode. Possible values are + Platform or User. Must be specified when scope is InGuestPatch. + type: string + installPatches: + description: An install_patches block as defined below. + items: + properties: + linux: + description: A linux block as defined above. This property + only applies when scope is set to InGuestPatch + items: + properties: + classificationsToInclude: + description: List of Classification category of patches + to be patched. Possible values are Critical, Security, + UpdateRollup, FeaturePack, ServicePack, Definition, + Tools and Updates. + items: + type: string + type: array + packageNamesMaskToExclude: + description: List of package names to be excluded + from patching. + items: + type: string + type: array + packageNamesMaskToInclude: + description: List of package names to be included + for patching. + items: + type: string + type: array + type: object + type: array + reboot: + description: Possible reboot preference as defined by the + user based on which it would be decided to reboot the + machine or not after the patch operation is completed. + Possible values are Always, IfRequired and Never. This + property only applies when scope is set to InGuestPatch. + type: string + windows: + description: A windows block as defined above. This property + only applies when scope is set to InGuestPatch + items: + properties: + classificationsToInclude: + description: List of Classification category of patches + to be patched. Possible values are Critical, Security, + UpdateRollup, FeaturePack, ServicePack, Definition, + Tools and Updates. + items: + type: string + type: array + kbNumbersToExclude: + description: List of KB numbers to be excluded from + patching. + items: + type: string + type: array + kbNumbersToInclude: + description: List of KB numbers to be included for + patching. + items: + type: string + type: array + type: object + type: array + type: object + type: array + location: + description: Specified the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + properties: + additionalProperties: + type: string + description: A mapping of properties to assign to the resource. + type: object + scope: + description: The scope of the Maintenance Configuration. Possible + values are Extension, Host, InGuestPatch, OSImage, SQLDB or + SQLManagedInstance. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. The + key could not contain upper case letter. + type: object + visibility: + description: The visibility of the Maintenance Configuration. + The only allowable value is Custom. + type: string + window: + description: A window block as defined below. + items: + properties: + duration: + description: The duration of the maintenance window in HH:mm + format. + type: string + expirationDateTime: + description: Effective expiration date of the maintenance + window in YYYY-MM-DD hh:mm format. + type: string + recurEvery: + description: The rate at which a maintenance window is expected + to recur. The rate can be expressed as daily, weekly, + or monthly schedules. + type: string + startDateTime: + description: Effective start date of the maintenance window + in YYYY-MM-DD hh:mm format. + type: string + timeZone: + description: The time zone for the maintenance window. A + list of timezones can be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() + in PowerShell. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -464,9 +608,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: scope is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scope) + || has(self.initProvider.scope)' status: description: MaintenanceConfigurationStatus defines the observed state of MaintenanceConfiguration. diff --git a/package/crds/managedidentity.azure.upbound.io_federatedidentitycredentials.yaml b/package/crds/managedidentity.azure.upbound.io_federatedidentitycredentials.yaml index 66f30ef38..5cd6479cd 100644 --- a/package/crds/managedidentity.azure.upbound.io_federatedidentitycredentials.yaml +++ b/package/crds/managedidentity.azure.upbound.io_federatedidentitycredentials.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: federatedidentitycredentials.managedidentity.azure.upbound.io spec: group: managedidentity.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -247,21 +246,63 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + audience: + description: Specifies the audience for this Federated Identity + Credential. Changing this forces a new Federated Identity Credential + to be created. + items: + type: string + type: array + issuer: + description: Specifies the issuer of this Federated Identity Credential. + Changing this forces a new Federated Identity Credential to + be created. + type: string + subject: + description: Specifies the subject for this Federated Identity + Credential. Changing this forces a new Federated Identity Credential + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -435,11 +476,17 @@ spec: type: object x-kubernetes-validations: - message: audience is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.audience) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.audience) + || has(self.initProvider.audience)' - message: issuer is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.issuer) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.issuer) + || has(self.initProvider.issuer)' - message: subject is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subject) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subject) + || has(self.initProvider.subject)' status: description: FederatedIdentityCredentialStatus defines the observed state of FederatedIdentityCredential. diff --git a/package/crds/managedidentity.azure.upbound.io_userassignedidentities.yaml b/package/crds/managedidentity.azure.upbound.io_userassignedidentities.yaml index f52dcbe34..3ab6930c1 100644 --- a/package/crds/managedidentity.azure.upbound.io_userassignedidentities.yaml +++ b/package/crds/managedidentity.azure.upbound.io_userassignedidentities.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: userassignedidentities.managedidentity.azure.upbound.io spec: group: managedidentity.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -164,21 +163,61 @@ spec: User Assigned Identity. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the User Assigned Identity + should exist. Changing this forces a new User Assigned Identity + to be created. + type: string + name: + description: Specifies the name of this User Assigned Identity. + Changing this forces a new User Assigned Identity to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + User Assigned Identity. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -352,9 +391,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: UserAssignedIdentityStatus defines the observed state of UserAssignedIdentity. diff --git a/package/crds/management.azure.upbound.io_managementgroups.yaml b/package/crds/management.azure.upbound.io_managementgroups.yaml index a76daaaae..db2c5b1e7 100644 --- a/package/crds/management.azure.upbound.io_managementgroups.yaml +++ b/package/crds/management.azure.upbound.io_managementgroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managementgroups.management.azure.upbound.io spec: group: management.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -157,21 +156,56 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + displayName: + description: A friendly name for this Management Group. If not + specified, this will be the same as the name. + type: string + subscriptionIds: + description: A list of Subscription GUIDs which should be assigned + to the Management Group. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/management.azure.upbound.io_managementgroupsubscriptionassociations.yaml b/package/crds/management.azure.upbound.io_managementgroupsubscriptionassociations.yaml index d769a7d4a..310d2710c 100644 --- a/package/crds/management.azure.upbound.io_managementgroupsubscriptionassociations.yaml +++ b/package/crds/management.azure.upbound.io_managementgroupsubscriptionassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managementgroupsubscriptionassociations.management.azure.upbound.io spec: group: management.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -228,21 +227,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/maps.azure.upbound.io_accounts.yaml b/package/crds/maps.azure.upbound.io_accounts.yaml index 7bdb99689..5bdad7157 100644 --- a/package/crds/maps.azure.upbound.io_accounts.yaml +++ b/package/crds/maps.azure.upbound.io_accounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accounts.maps.azure.upbound.io spec: group: maps.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -159,21 +158,56 @@ spec: description: A mapping of tags to assign to the Azure Maps Account. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + skuName: + description: The SKU of the Azure Maps Account. Possible values + are S0, S1 and G2. Changing this forces a new resource to be + created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Azure Maps Account. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -347,7 +381,9 @@ spec: type: object x-kubernetes-validations: - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: AccountStatus defines the observed state of Account. properties: diff --git a/package/crds/maps.azure.upbound.io_creators.yaml b/package/crds/maps.azure.upbound.io_creators.yaml index 983709fa9..ecdb9bc7b 100644 --- a/package/crds/maps.azure.upbound.io_creators.yaml +++ b/package/crds/maps.azure.upbound.io_creators.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: creators.maps.azure.upbound.io spec: group: maps.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -160,21 +159,60 @@ spec: Azure Maps Creator. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Azure Maps Creator should + exist. Changing this forces a new resource to be created. + type: string + storageUnits: + description: The storage units to be allocated. Integer values + from 1 to 100, inclusive. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Azure Maps Creator. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -348,9 +386,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: storageUnits is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageUnits) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageUnits) + || has(self.initProvider.storageUnits)' status: description: CreatorStatus defines the observed state of Creator. properties: diff --git a/package/crds/marketplaceordering.azure.upbound.io_marketplaceagreements.yaml b/package/crds/marketplaceordering.azure.upbound.io_marketplaceagreements.yaml index fcfb8e2ac..4a30cf20a 100644 --- a/package/crds/marketplaceordering.azure.upbound.io_marketplaceagreements.yaml +++ b/package/crds/marketplaceordering.azure.upbound.io_marketplaceagreements.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: marketplaceagreements.marketplaceordering.azure.upbound.io spec: group: marketplaceordering.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -81,21 +80,58 @@ spec: this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + offer: + description: The Offer of the Marketplace Image. Changing this + forces a new resource to be created. + type: string + plan: + description: The Plan of the Marketplace Image. Changing this + forces a new resource to be created. + type: string + publisher: + description: The Publisher of the Marketplace Image. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -269,11 +305,17 @@ spec: type: object x-kubernetes-validations: - message: offer is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.offer) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.offer) + || has(self.initProvider.offer)' - message: plan is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.plan) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.plan) + || has(self.initProvider.plan)' - message: publisher is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publisher) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.publisher) + || has(self.initProvider.publisher)' status: description: MarketplaceAgreementStatus defines the observed state of MarketplaceAgreement. diff --git a/package/crds/media.azure.upbound.io_assetfilters.yaml b/package/crds/media.azure.upbound.io_assetfilters.yaml index 1ec4efa3c..6ffd12d63 100644 --- a/package/crds/media.azure.upbound.io_assetfilters.yaml +++ b/package/crds/media.azure.upbound.io_assetfilters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: assetfilters.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -252,26 +251,158 @@ spec: type: string type: object type: array - required: - - condition type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + firstQualityBitrate: + description: The first quality bitrate. Sets the first video track + to appear in the Live Streaming playlist to allow HLS native + players to start downloading from this quality level at the + beginning. + type: number + presentationTimeRange: + description: A presentation_time_range block as defined below. + items: + properties: + endInUnits: + description: The absolute end time boundary. Applies to + Video on Demand (VoD). For the Live Streaming presentation, + it is silently ignored and applied when the presentation + ends and the stream becomes VoD. This is a long value + that represents an absolute end point of the presentation, + rounded to the closest next GOP start. The unit is defined + by unit_timescale_in_miliseconds, so an end_in_units of + 180 would be for 3 minutes. Use start_in_units and end_in_units + to trim the fragments that will be in the playlist (manifest). + For example, start_in_units set to 20 and end_in_units + set to 60 using unit_timescale_in_miliseconds in 1000 + will generate a playlist that contains fragments from + between 20 seconds and 60 seconds of the VoD presentation. + If a fragment straddles the boundary, the entire fragment + will be included in the manifest. + type: number + forceEnd: + description: 'Indicates whether the end_in_units property + must be present. If true, end_in_units must be specified + or a bad request code is returned. Applies to Live Streaming + only. Allowed values: false, true.' + type: boolean + liveBackoffInUnits: + description: The relative to end right edge. Applies to + Live Streaming only. This value defines the latest live + position that a client can seek to. Using this property, + you can delay live playback position and create a server-side + buffer for players. The unit is defined by unit_timescale_in_miliseconds. + The maximum live back off duration is 300 seconds. For + example, a value of 20 means that the latest available + content is 20 seconds delayed from the real live edge. + type: number + presentationWindowInUnits: + description: The relative to end sliding window. Applies + to Live Streaming only. Use presentation_window_in_units + to apply a sliding window of fragments to include in a + playlist. The unit is defined by unit_timescale_in_miliseconds. + For example, set presentation_window_in_units to 120 to + apply a two-minute sliding window. Media within 2 minutes + of the live edge will be included in the playlist. If + a fragment straddles the boundary, the entire fragment + will be included in the playlist. The minimum presentation + window duration is 60 seconds. + type: number + startInUnits: + description: The absolute start time boundary. Applies to + Video on Demand (VoD) or Live Streaming. This is a long + value that represents an absolute start point of the stream. + The value gets rounded to the closest next GOP start. + The unit is defined by unit_timescale_in_miliseconds, + so a start_in_units of 15 would be for 15 seconds. Use + start_in_units and end_in_units to trim the fragments + that will be in the playlist (manifest). For example, + start_in_units set to 20 and end_in_units set to 60 using + unit_timescale_in_miliseconds in 1000 will generate a + playlist that contains fragments from between 20 seconds + and 60 seconds of the VoD presentation. If a fragment + straddles the boundary, the entire fragment will be included + in the manifest. + type: number + unitTimescaleInMiliseconds: + description: Specified as the number of miliseconds in one + unit timescale. For example, if you want to set a start_in_units + at 30 seconds, you would use a value of 30 when using + the unit_timescale_in_miliseconds in 1000. Or if you want + to set start_in_units in 30 miliseconds, you would use + a value of 30 when using the unit_timescale_in_miliseconds + in 1. Applies timescale to start_in_units, start_timescale + and presentation_window_in_timescale and live_backoff_in_timescale. + type: number + type: object + type: array + trackSelection: + description: One or more track_selection blocks as defined below. + items: + properties: + condition: + description: One or more condition blocks as defined above. + items: + properties: + operation: + description: The condition operation to test a track + property against. Supported values are Equal and + NotEqual. + type: string + property: + description: The track property to compare. Supported + values are Bitrate, FourCC, Language, Name and Type. + Check documentation for more details. + type: string + value: + description: The track property value to match or + not match. + type: string + type: object + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/media.azure.upbound.io_assets.yaml b/package/crds/media.azure.upbound.io_assets.yaml index b06134d7b..a95486613 100644 --- a/package/crds/media.azure.upbound.io_assets.yaml +++ b/package/crds/media.azure.upbound.io_assets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: assets.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -238,21 +237,60 @@ spec: media asset. Changing this forces a new Media Asset to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + alternateId: + description: The alternate ID of the Asset. + type: string + container: + description: The name of the asset blob container. Changing this + forces a new Media Asset to be created. + type: string + description: + description: The Asset description. + type: string + storageAccountName: + description: The name of the storage account where to store the + media asset. Changing this forces a new Media Asset to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/media.azure.upbound.io_contentkeypolicies.yaml b/package/crds/media.azure.upbound.io_contentkeypolicies.yaml index 798dbcf1b..351470eb9 100644 --- a/package/crds/media.azure.upbound.io_contentkeypolicies.yaml +++ b/package/crds/media.azure.upbound.io_contentkeypolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: contentkeypolicies.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -349,8 +348,6 @@ spec: Possible value is integer between 0 and 3 inclusive. type: number - required: - - controlBits type: object type: array firstPlayExpiration: @@ -589,8 +586,6 @@ spec: widevineConfigurationTemplate: description: The Widevine template. type: string - required: - - name type: object type: array resourceGroupName: @@ -674,21 +669,273 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description for the Policy. + type: string + policyOption: + description: One or more policy_option blocks as defined below. + items: + properties: + clearKeyConfigurationEnabled: + description: Enable a configuration for non-DRM keys. + type: boolean + fairplayConfiguration: + description: A fairplay_configuration block as defined above. + Check license requirements here https://docs.microsoft.com/azure/media-services/latest/fairplay-license-overview. + items: + properties: + offlineRentalConfiguration: + description: A offline_rental_configuration block + as defined below. + items: + properties: + playbackDurationSeconds: + description: Playback duration. + type: number + storageDurationSeconds: + description: Storage duration. + type: number + type: object + type: array + rentalAndLeaseKeyType: + description: The rental and lease key type. Supported + values are DualExpiry, PersistentLimited, PersistentUnlimited + or Undefined. + type: string + rentalDurationSeconds: + description: The rental duration. Must be greater + than 0. + type: number + type: object + type: array + name: + description: The name which should be used for this Policy + Option. + type: string + openRestrictionEnabled: + description: Enable an open restriction. License or key + will be delivered on every request. + type: boolean + playreadyConfigurationLicense: + description: One or more playready_configuration_license + blocks as defined above. + items: + properties: + allowTestDevices: + description: A flag indicating whether test devices + can use the license. + type: boolean + beginDate: + description: The begin date of license. + type: string + contentKeyLocationFromHeaderEnabled: + description: Specifies that the content key ID is + in the PlayReady header. + type: boolean + contentKeyLocationFromKeyId: + description: The content key ID. Specifies that the + content key ID is specified in the PlayReady configuration. + type: string + contentType: + description: The PlayReady content type. Supported + values are UltraVioletDownload, UltraVioletStreaming + or Unspecified. + type: string + expirationDate: + description: The expiration date of license. + type: string + licenseType: + description: The license type. Supported values are + NonPersistent or Persistent. + type: string + playRight: + description: A play_right block as defined above. + items: + properties: + agcAndColorStripeRestriction: + description: Configures Automatic Gain Control + (AGC) and Color Stripe in the license. Must + be between 0 and 3 inclusive. + type: number + allowPassingVideoContentToUnknownOutput: + description: Configures Unknown output handling + settings of the license. Supported values + are Allowed, AllowedWithVideoConstriction + or NotAllowed. + type: string + analogVideoOpl: + description: Specifies the output protection + level for compressed digital audio. Supported + values are 100, 150 or 200. + type: number + compressedDigitalAudioOpl: + description: Specifies the output protection + level for compressed digital audio.Supported + values are 100, 150, 200, 250 or 300. + type: number + compressedDigitalVideoOpl: + description: Specifies the output protection + level for compressed digital video. Supported + values are 400 or 500. + type: number + digitalVideoOnlyContentRestriction: + description: Enables the Image Constraint For + Analog Component Video Restriction in the + license. + type: boolean + explicitAnalogTelevisionOutputRestriction: + description: An explicit_analog_television_output_restriction + block as defined above. + items: + properties: + bestEffortEnforced: + description: Indicates whether this restriction + is enforced on a best effort basis. + Possible values are true or false. Defaults + to false. + type: boolean + controlBits: + description: The restriction control bits. + Possible value is integer between 0 + and 3 inclusive. + type: number + type: object + type: array + firstPlayExpiration: + description: The amount of time that the license + is valid after the license is first used to + play content. + type: string + imageConstraintForAnalogComponentVideoRestriction: + description: Enables the Image Constraint For + Analog Component Video Restriction in the + license. + type: boolean + imageConstraintForAnalogComputerMonitorRestriction: + description: Enables the Image Constraint For + Analog Component Video Restriction in the + license. + type: boolean + scmsRestriction: + description: Configures the Serial Copy Management + System (SCMS) in the license. Must be between + 0 and 3 inclusive. + type: number + uncompressedDigitalAudioOpl: + description: Specifies the output protection + level for uncompressed digital audio. Supported + values are 100, 150, 200, 250 or 300. + type: number + uncompressedDigitalVideoOpl: + description: Specifies the output protection + level for uncompressed digital video. Supported + values are 100, 250, 270 or 300. + type: number + type: object + type: array + relativeBeginDate: + description: The relative begin date of license. + type: string + relativeExpirationDate: + description: The relative expiration date of license. + type: string + securityLevel: + description: The security level of the PlayReady license. + Possible values are SL150, SL2000 and SL3000. Please + see this document for more information about security + level. See this document for more information about + SL3000 support. + type: string + type: object + type: array + playreadyResponseCustomData: + description: The custom response data of the PlayReady configuration. + This only applies when playready_configuration_license + is specified. + type: string + tokenRestriction: + description: A token_restriction block as defined below. + items: + properties: + alternateKey: + description: One or more alternate_key block as defined + above. + items: + type: object + type: array + audience: + description: The audience for the token. + type: string + issuer: + description: The token issuer. + type: string + openIdConnectDiscoveryDocument: + description: The OpenID connect discovery document. + type: string + requiredClaim: + description: One or more required_claim blocks as + defined above. + items: + properties: + type: + description: Token claim type. + type: string + value: + description: Token claim value. + type: string + type: object + type: array + tokenType: + description: The type of token. Supported values are + Jwt or Swt. + type: string + type: object + type: array + widevineConfigurationTemplate: + description: The Widevine template. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -862,7 +1109,9 @@ spec: type: object x-kubernetes-validations: - message: policyOption is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policyOption) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.policyOption) + || has(self.initProvider.policyOption)' status: description: ContentKeyPolicyStatus defines the observed state of ContentKeyPolicy. properties: diff --git a/package/crds/media.azure.upbound.io_jobs.yaml b/package/crds/media.azure.upbound.io_jobs.yaml index 816b40773..85c733297 100644 --- a/package/crds/media.azure.upbound.io_jobs.yaml +++ b/package/crds/media.azure.upbound.io_jobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: jobs.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -515,21 +514,98 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: Optional customer supplied description of the Job. + type: string + inputAsset: + description: A input_asset block as defined below. Changing this + forces a new Media Job to be created. + items: + properties: + label: + description: A label that is assigned to a JobInputClip, + that is used to satisfy a reference used in the Transform. + For example, a Transform can be authored so as to take + an image file with the label 'xyz' and apply it as an + overlay onto the input video before it is encoded. When + submitting a Job, exactly one of the JobInputs should + be the image file, and it should have the label 'xyz'. + Changing this forces a new resource to be created. + type: string + type: object + type: array + outputAsset: + description: One or more output_asset blocks as defined below. + Changing this forces a new Media Job to be created. + items: + properties: + label: + description: A label that is assigned to a JobOutput in + order to help uniquely identify it. This is useful when + your Transform has more than one TransformOutput, whereby + your Job has more than one JobOutput. In such cases, when + you submit the Job, you will add two or more JobOutputs, + in the same order as TransformOutputs in the Transform. + Subsequently, when you retrieve the Job, either through + events or on a GET request, you can use the label to easily + identify the JobOutput. If a label is not provided, a + default value of '{presetName}_{outputIndex}' will be + used, where the preset name is the name of the preset + in the corresponding TransformOutput and the output index + is the relative index of the this JobOutput within the + Job. Note that this index is the same as the relative + index of the corresponding TransformOutput within its + Transform. Changing this forces a new resource to be created. + type: string + type: object + type: array + priority: + description: Priority with which the job should be processed. + Higher priority jobs are processed before lower priority jobs. + If not set, the default is normal. Changing this forces a new + Media Job to be created. Possible values are High, Normal and + Low. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -703,9 +779,13 @@ spec: type: object x-kubernetes-validations: - message: inputAsset is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.inputAsset) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.inputAsset) + || has(self.initProvider.inputAsset)' - message: outputAsset is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.outputAsset) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.outputAsset) + || has(self.initProvider.outputAsset)' status: description: JobStatus defines the observed state of Job. properties: diff --git a/package/crds/media.azure.upbound.io_liveeventoutputs.yaml b/package/crds/media.azure.upbound.io_liveeventoutputs.yaml index 6a0742677..bc50abbc3 100644 --- a/package/crds/media.azure.upbound.io_liveeventoutputs.yaml +++ b/package/crds/media.azure.upbound.io_liveeventoutputs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: liveeventoutputs.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -253,21 +252,76 @@ spec: rewindWindowDuration: type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + archiveWindowDuration: + description: ISO 8601 time between 1 minute to 25 hours to indicate + the maximum content length that can be archived in the asset + for this live output. This also sets the maximum content length + for the rewind window. For example, use PT1H30M to indicate + 1 hour and 30 minutes of archive window. Changing this forces + a new Live Output to be created. + type: string + description: + description: The description of the live output. Changing this + forces a new Live Output to be created. + type: string + hlsFragmentsPerTsSegment: + description: The number of fragments in an HTTP Live Streaming + (HLS) TS segment in the output of the live event. This value + does not affect the packing ratio for HLS CMAF output. Changing + this forces a new Live Output to be created. + type: number + manifestName: + description: The manifest file name. If not provided, the service + will generate one automatically. Changing this forces a new + Live Output to be created. + type: string + outputSnapTimeInSeconds: + description: The initial timestamp that the live output will start + at, any content before this value will not be archived. Changing + this forces a new Live Output to be created. + type: number + rewindWindowDuration: + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -441,7 +495,9 @@ spec: type: object x-kubernetes-validations: - message: archiveWindowDuration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.archiveWindowDuration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.archiveWindowDuration) + || has(self.initProvider.archiveWindowDuration)' status: description: LiveEventOutputStatus defines the observed state of LiveEventOutput. properties: diff --git a/package/crds/media.azure.upbound.io_liveevents.yaml b/package/crds/media.azure.upbound.io_liveevents.yaml index a3aa31883..92690fcd3 100644 --- a/package/crds/media.azure.upbound.io_liveevents.yaml +++ b/package/crds/media.azure.upbound.io_liveevents.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: liveevents.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -410,21 +409,231 @@ spec: forces a new Live Event to be created. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoStartEnabled: + description: The flag indicates if the resource should be automatically + started on creation. Default is false. Changing this forces + a new resource to be created. + type: boolean + crossSiteAccessPolicy: + description: A cross_site_access_policy block as defined below. + items: + properties: + clientAccessPolicy: + description: The content of clientaccesspolicy.xml used + by Silverlight. + type: string + crossDomainPolicy: + description: The content of the Cross Domain Policy (crossdomain.xml). + type: string + type: object + type: array + description: + description: A description for the live event. + type: string + encoding: + description: A encoding block as defined below. + items: + properties: + keyFrameInterval: + description: Use an ISO 8601 time value between 0.5 to 20 + seconds to specify the output fragment length for the + video and audio tracks of an encoding live event. For + example, use PT2S to indicate 2 seconds. For the video + track it also defines the key frame interval, or the length + of a GoP (group of pictures). If this value is not set + for an encoding live event, the fragment duration defaults + to 2 seconds. The value cannot be set for pass-through + live events. + type: string + presetName: + description: The optional encoding preset name, used when + type is not None. If the type is set to Standard, then + the default preset name is Default720p. Else if the type + is set to Premium1080p, the default preset is Default1080p. + Changing this forces a new resource to be created. + type: string + stretchMode: + description: Specifies how the input video will be resized + to fit the desired output resolution(s). Allowed values + are None, AutoFit or AutoSize. Default is None. + type: string + type: + description: Live event type. Allowed values are None, Premium1080p + or Standard. When set to None, the service simply passes + through the incoming video and audio layer(s) to the output. + When type is set to Standard or Premium1080p, a live encoder + transcodes the incoming stream into multiple bitrates + or layers. Defaults to None. Changing this forces a new + resource to be created. + type: string + type: object + type: array + hostnamePrefix: + description: When use_static_hostname is set to true, the hostname_prefix + specifies the first part of the hostname assigned to the live + event preview and ingest endpoints. The final hostname would + be a combination of this prefix, the media service account name + and a short code for the Azure Media Services data center. + type: string + input: + description: A input block as defined below. + items: + properties: + accessToken: + description: A UUID in string form to uniquely identify + the stream. If omitted, the service will generate a unique + value. Changing this forces a new value to be created. + type: string + ipAccessControlAllow: + description: One or more ip_access_control_allow blocks + as defined below. + items: + properties: + address: + description: The IP address or CIDR range. + type: string + name: + description: The name which should be used for this + Live Event. Changing this forces a new Live Event + to be created. + type: string + subnetPrefixLength: + description: The subnet mask prefix length (see CIDR + notation). + type: number + type: object + type: array + keyFrameIntervalDuration: + description: ISO 8601 time duration of the key frame interval + duration of the input. This value sets the EXT-X-TARGETDURATION + property in the HLS output. For example, use PT2S to indicate + 2 seconds. This field cannot be set when type is set to + Encoding. + type: string + streamingProtocol: + description: The input protocol for the live event. Allowed + values are FragmentedMP4 and RTMP. Changing this forces + a new resource to be created. + type: string + type: object + type: array + location: + description: The Azure Region where the Live Event should exist. + Changing this forces a new Live Event to be created. + type: string + preview: + description: A preview block as defined below. + items: + properties: + alternativeMediaId: + description: An alternative media identifier associated + with the streaming locator created for the preview. The + identifier can be used in the CustomLicenseAcquisitionUrlTemplate + or the CustomKeyAcquisitionUrlTemplate of the Streaming + Policy specified in the streaming_policy_name field. + type: string + ipAccessControlAllow: + description: One or more ip_access_control_allow blocks + as defined above. + items: + properties: + address: + description: The IP address or CIDR range. + type: string + name: + description: The name which should be used for this + Live Event. Changing this forces a new Live Event + to be created. + type: string + subnetPrefixLength: + description: The subnet mask prefix length (see CIDR + notation). + type: number + type: object + type: array + previewLocator: + description: The identifier of the preview locator in GUID + format. Specifying this at creation time allows the caller + to know the preview locator url before the event is created. + If omitted, the service will generate a random identifier. + Changing this forces a new resource to be created. + type: string + streamingPolicyName: + description: The name of streaming policy used for the live + event preview. Changing this forces a new resource to + be created. + type: string + type: object + type: array + streamOptions: + description: A list of options to use for the LiveEvent. Possible + values are Default, LowLatency, LowLatencyV2. Please see more + at this document. Changing this forces a new resource to be + created. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Live Event. + type: object + transcriptionLanguages: + description: 'Specifies a list of languages (locale) to be used + for speech-to-text transcription – it should match the spoken + language in the audio track. The value should be in BCP-47 format + (e.g: en-US). See the Microsoft Documentation for more information + about the live transcription feature and the list of supported + languages.' + items: + type: string + type: array + useStaticHostname: + description: Specifies whether a static hostname would be assigned + to the live event preview and ingest endpoints. Changing this + forces a new Live Event to be created. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -598,9 +807,13 @@ spec: type: object x-kubernetes-validations: - message: input is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.input) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.input) + || has(self.initProvider.input)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: LiveEventStatus defines the observed state of LiveEvent. properties: diff --git a/package/crds/media.azure.upbound.io_servicesaccountfilters.yaml b/package/crds/media.azure.upbound.io_servicesaccountfilters.yaml index ec190a374..c7f952b08 100644 --- a/package/crds/media.azure.upbound.io_servicesaccountfilters.yaml +++ b/package/crds/media.azure.upbound.io_servicesaccountfilters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: servicesaccountfilters.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -226,8 +225,6 @@ spec: in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale. type: number - required: - - unitTimescaleInMilliseconds type: object type: array resourceGroupName: @@ -332,32 +329,160 @@ spec: description: The track property value to match or not match. type: string - required: - - operation - - property - - value type: object type: array - required: - - condition type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + firstQualityBitrate: + description: The first quality bitrate. Sets the first video track + to appear in the Live Streaming playlist to allow HLS native + players to start downloading from this quality level at the + beginning. + type: number + presentationTimeRange: + description: A presentation_time_range block as defined below. + items: + properties: + endInUnits: + description: The absolute end time boundary. Applies to + Video on Demand (VoD). For the Live Streaming presentation, + it is silently ignored and applied when the presentation + ends and the stream becomes VoD. This is a long value + that represents an absolute end point of the presentation, + rounded to the closest next GOP start. The unit is defined + by unit_timescale_in_milliseconds, so an end_in_units + of 180 would be for 3 minutes. Use start_in_units and + end_in_units to trim the fragments that will be in the + playlist (manifest). For example, start_in_units set to + 20 and end_in_units set to 60 using unit_timescale_in_milliseconds + in 1000 will generate a playlist that contains fragments + from between 20 seconds and 60 seconds of the VoD presentation. + If a fragment straddles the boundary, the entire fragment + will be included in the manifest. + type: number + forceEnd: + description: 'Indicates whether the end_in_units property + must be present. If true, end_in_units must be specified + or a bad request code is returned. Applies to Live Streaming + only. Allowed values: false, true.' + type: boolean + liveBackoffInUnits: + description: The relative to end right edge. Applies to + Live Streaming only. This value defines the latest live + position that a client can seek to. Using this property, + you can delay live playback position and create a server-side + buffer for players. The unit is defined by unit_timescale_in_milliseconds. + The maximum live back off duration is 300 seconds. For + example, a value of 20 means that the latest available + content is 20 seconds delayed from the real live edge. + type: number + presentationWindowInUnits: + description: The relative to end sliding window. Applies + to Live Streaming only. Use presentation_window_in_units + to apply a sliding window of fragments to include in a + playlist. The unit is defined by unit_timescale_in_milliseconds. + For example, set presentation_window_in_units to 120 to + apply a two-minute sliding window. Media within 2 minutes + of the live edge will be included in the playlist. If + a fragment straddles the boundary, the entire fragment + will be included in the playlist. The minimum presentation + window duration is 60 seconds. + type: number + startInUnits: + description: The absolute start time boundary. Applies to + Video on Demand (VoD) or Live Streaming. This is a long + value that represents an absolute start point of the stream. + The value gets rounded to the closest next GOP start. + The unit is defined by unit_timescale_in_milliseconds, + so a start_in_units of 15 would be for 15 seconds. Use + start_in_units and end_in_units to trim the fragments + that will be in the playlist (manifest). For example, + start_in_units set to 20 and end_in_units set to 60 using + unit_timescale_in_milliseconds in 1000 will generate a + playlist that contains fragments from between 20 seconds + and 60 seconds of the VoD presentation. If a fragment + straddles the boundary, the entire fragment will be included + in the manifest. + type: number + unitTimescaleInMilliseconds: + description: Specified as the number of milliseconds in + one unit timescale. For example, if you want to set a + start_in_units at 30 seconds, you would use a value of + 30 when using the unit_timescale_in_milliseconds in 1000. + Or if you want to set start_in_units in 30 milliseconds, + you would use a value of 30 when using the unit_timescale_in_milliseconds + in 1. Applies timescale to start_in_units, start_timescale + and presentation_window_in_timescale and live_backoff_in_timescale. + type: number + type: object + type: array + trackSelection: + description: One or more track_selection blocks as defined below. + items: + properties: + condition: + description: One or more selection blocks as defined above. + items: + properties: + operation: + description: The condition operation to test a track + property against. Supported values are Equal and + NotEqual. + type: string + property: + description: The track property to compare. Supported + values are Bitrate, FourCC, Language, Name and Type. + Check documentation for more details. + type: string + value: + description: The track property value to match or + not match. + type: string + type: object + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/media.azure.upbound.io_servicesaccounts.yaml b/package/crds/media.azure.upbound.io_servicesaccounts.yaml index 5c18d21e6..b6d0ee9e0 100644 --- a/package/crds/media.azure.upbound.io_servicesaccounts.yaml +++ b/package/crds/media.azure.upbound.io_servicesaccounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: servicesaccounts.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -115,8 +114,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array keyDeliveryAccessControl: @@ -340,21 +337,153 @@ spec: description: A mapping of tags assigned to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + encryption: + description: An encryption block as defined below. + items: + properties: + keyVaultKeyIdentifier: + description: Specifies the URI of the Key Vault Key used + to encrypt data. The key may either be versioned (for + example https://vault/keys/mykey/version1) or reference + a key without a version (for example https://vault/keys/mykey). + type: string + managedIdentity: + description: A managed_identity block as defined below. + items: + properties: + useSystemAssignedIdentity: + description: Whether to use System Assigned Identity. + Possible Values are true and false. + type: boolean + userAssignedIdentityId: + description: The ID of the User Assigned Identity. + This value can only be set when use_system_assigned_identity + is false + type: string + type: object + type: array + type: + description: Specifies the type of key used to encrypt the + account data. Possible values are SystemKey and CustomerKey. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Media Services Account. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Media Services Account. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + keyDeliveryAccessControl: + description: A key_delivery_access_control block as defined below. + items: + properties: + defaultAction: + description: The Default Action to use when no rules match + from ip_allow_list. Possible values are Allow and Deny. + type: string + ipAllowList: + description: One or more IP Addresses, or CIDR Blocks which + should be able to access the Key Delivery. + items: + type: string + type: array + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + publicNetworkAccessEnabled: + description: Whether public network access is allowed for this + server. Defaults to true. + type: boolean + storageAccount: + description: One or more storage_account blocks as defined below. + items: + properties: + isPrimary: + description: Specifies whether the storage account should + be the primary account or not. Defaults to false. + type: boolean + managedIdentity: + description: A managed_identity block as defined below. + items: + properties: + useSystemAssignedIdentity: + description: Whether to use System Assigned Identity. + Possible Values are true and false. + type: boolean + userAssignedIdentityId: + description: The ID of the User Assigned Identity. + This value can only be set when use_system_assigned_identity + is false + type: string + type: object + type: array + type: object + type: array + storageAuthenticationType: + description: Specifies the storage authentication type. Possible + value is ManagedIdentity or System. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags assigned to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -528,9 +657,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: storageAccount is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccount) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageAccount) + || has(self.initProvider.storageAccount)' status: description: ServicesAccountStatus defines the observed state of ServicesAccount. properties: diff --git a/package/crds/media.azure.upbound.io_streamingendpoints.yaml b/package/crds/media.azure.upbound.io_streamingendpoints.yaml index e91436633..994ef763d 100644 --- a/package/crds/media.azure.upbound.io_streamingendpoints.yaml +++ b/package/crds/media.azure.upbound.io_streamingendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: streamingendpoints.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -318,21 +317,138 @@ spec: Streaming Endpoint. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessControl: + description: A access_control block as defined below. + items: + properties: + akamaiSignatureHeaderAuthenticationKey: + description: One or more akamai_signature_header_authentication_key + blocks as defined below. + items: + properties: + base64Key: + description: Authentication key. + type: string + expiration: + description: The expiration time of the authentication + key. + type: string + identifier: + description: Identifier of the key. + type: string + type: object + type: array + ipAllow: + description: A ip_allow block as defined below. + items: + properties: + address: + description: The IP address to allow. + type: string + name: + description: The sku name of Streaming Endpoint. + type: string + subnetPrefixLength: + description: The subnet mask prefix length (see CIDR + notation). + type: number + type: object + type: array + type: object + type: array + autoStartEnabled: + description: The flag indicates if the resource should be automatically + started on creation. + type: boolean + cdnEnabled: + description: The CDN enabled flag. + type: boolean + cdnProfile: + description: The CDN profile name. + type: string + cdnProvider: + description: The CDN provider name. Supported value are StandardVerizon,PremiumVerizon + and StandardAkamai + type: string + crossSiteAccessPolicy: + description: A cross_site_access_policy block as defined below. + items: + properties: + clientAccessPolicy: + description: The content of clientaccesspolicy.xml used + by Silverlight. + type: string + crossDomainPolicy: + description: The content of crossdomain.xml used by Silverlight. + type: string + type: object + type: array + customHostNames: + description: The custom host names of the streaming endpoint. + items: + type: string + type: array + description: + description: The streaming endpoint description. + type: string + location: + description: The Azure Region where the Streaming Endpoint should + exist. Changing this forces a new Streaming Endpoint to be created. + type: string + maxCacheAgeSeconds: + description: Max cache age in seconds. + type: number + scaleUnits: + description: The number of scale units. To create a Standard Streaming + Endpoint set 0. For Premium Streaming Endpoint valid values + are between 1 and 10. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Streaming Endpoint. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -506,9 +622,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: scaleUnits is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scaleUnits) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scaleUnits) + || has(self.initProvider.scaleUnits)' status: description: StreamingEndpointStatus defines the observed state of StreamingEndpoint. properties: diff --git a/package/crds/media.azure.upbound.io_streaminglocators.yaml b/package/crds/media.azure.upbound.io_streaminglocators.yaml index e8cd1fbb8..a1ca27ff8 100644 --- a/package/crds/media.azure.upbound.io_streaminglocators.yaml +++ b/package/crds/media.azure.upbound.io_streaminglocators.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: streaminglocators.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -369,21 +368,112 @@ spec: Streaming Locator to be created.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + alternativeMediaId: + description: Alternative Media ID of this Streaming Locator. Changing + this forces a new Streaming Locator to be created. + type: string + contentKey: + description: One or more content_key blocks as defined below. + Changing this forces a new Streaming Locator to be created. + items: + properties: + contentKeyId: + description: ID of Content Key. Changing this forces a new + Streaming Locator to be created. + type: string + labelReferenceInStreamingPolicy: + description: Label of Content Key as specified in the Streaming + Policy. Changing this forces a new Streaming Locator to + be created. + type: string + policyName: + description: Content Key Policy used by Content Key. Changing + this forces a new Streaming Locator to be created. + type: string + type: + description: Encryption type of Content Key. Supported values + are CommonEncryptionCbcs, CommonEncryptionCenc or EnvelopeEncryption. + Changing this forces a new Streaming Locator to be created. + type: string + value: + description: Value of Content Key. Changing this forces + a new Streaming Locator to be created. + type: string + type: object + type: array + defaultContentKeyPolicyName: + description: Name of the default Content Key Policy used by this + Streaming Locator.Changing this forces a new Streaming Locator + to be created. + type: string + endTime: + description: The end time of the Streaming Locator. Changing this + forces a new Streaming Locator to be created. + type: string + filterNames: + description: A list of names of asset or account filters which + apply to this Streaming Locator. Changing this forces a new + Streaming Locator to be created. + items: + type: string + type: array + startTime: + description: The start time of the Streaming Locator. Changing + this forces a new Streaming Locator to be created. + type: string + streamingLocatorId: + description: The ID of the Streaming Locator. Changing this forces + a new Streaming Locator to be created. + type: string + streamingPolicyName: + description: 'Name of the Streaming Policy used by this Streaming + Locator. Either specify the name of Streaming Policy you created + or use one of the predefined Streaming Policies. The predefined + Streaming Policies available are: Predefined_DownloadOnly, Predefined_ClearStreamingOnly, + Predefined_DownloadAndClearStreaming, Predefined_ClearKey, Predefined_MultiDrmCencStreaming + and Predefined_MultiDrmStreaming. Changing this forces a new + Streaming Locator to be created.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -557,7 +647,9 @@ spec: type: object x-kubernetes-validations: - message: streamingPolicyName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.streamingPolicyName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.streamingPolicyName) + || has(self.initProvider.streamingPolicyName)' status: description: StreamingLocatorStatus defines the observed state of StreamingLocator. properties: diff --git a/package/crds/media.azure.upbound.io_streamingpolicies.yaml b/package/crds/media.azure.upbound.io_streamingpolicies.yaml index d7533ac25..2ea3b1e05 100644 --- a/package/crds/media.azure.upbound.io_streamingpolicies.yaml +++ b/package/crds/media.azure.upbound.io_streamingpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: streamingpolicies.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -85,8 +84,6 @@ spec: for issuing keys. Changing this forces a new Streaming Policy to be created. type: string - required: - - customKeysAcquisitionUrlTemplate type: object type: array defaultContentKey: @@ -167,8 +164,6 @@ spec: for issuing keys. Changing this forces a new Streaming Policy to be created. type: string - required: - - customKeysAcquisitionUrlTemplate type: object type: array clearTrack: @@ -196,14 +191,8 @@ spec: description: The track property value. Changing this forces a new Streaming Policy to be created. type: string - required: - - operation - - property - - value type: object type: array - required: - - condition type: object type: array contentKeyToTrackMapping: @@ -250,18 +239,10 @@ spec: Changing this forces a new Streaming Policy to be created. type: string - required: - - operation - - property - - value type: object type: array - required: - - condition type: object type: array - required: - - track type: object type: array defaultContentKey: @@ -648,21 +629,366 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + commonEncryptionCbcs: + description: A common_encryption_cbcs block as defined below. + Changing this forces a new Streaming Policy to be created. + items: + properties: + clearKeyEncryption: + description: A clear_key_encryption block as defined below. + Changing this forces a new Streaming Policy to be created. + items: + properties: + customKeysAcquisitionUrlTemplate: + description: The URL template for the custom service + that delivers content keys to the end user. This + is not required when using Azure Media Services + for issuing keys. Changing this forces a new Streaming + Policy to be created. + type: string + type: object + type: array + defaultContentKey: + description: A default_content_key block as defined below. + Changing this forces a new Streaming Policy to be created. + items: + properties: + label: + description: Label can be used to specify Content + Key when creating a Streaming Locator. Changing + this forces a new Streaming Policy to be created. + type: string + policyName: + description: Policy used by Default Key. Changing + this forces a new Streaming Policy to be created. + type: string + type: object + type: array + drmFairplay: + description: A drm_fairplay block as defined below. Changing + this forces a new Streaming Policy to be created. + items: + properties: + allowPersistentLicense: + description: All license to be persistent or not. + Changing this forces a new Streaming Policy to be + created. + type: boolean + customLicenseAcquisitionUrlTemplate: + description: The URL template for the custom service + that delivers licenses to the end user. This is + not required when using Azure Media Services for + issuing licenses. Changing this forces a new Streaming + Policy to be created. + type: string + type: object + type: array + enabledProtocols: + description: A enabled_protocols block as defined below. + Changing this forces a new Streaming Policy to be created. + items: + properties: + dash: + description: Enable DASH protocol or not. Changing + this forces a new Streaming Policy to be created. + type: boolean + download: + description: Enable Download protocol or not. Changing + this forces a new Streaming Policy to be created. + type: boolean + hls: + description: Enable HLS protocol or not. Changing + this forces a new Streaming Policy to be created. + type: boolean + smoothStreaming: + description: Enable SmoothStreaming protocol or not. + Changing this forces a new Streaming Policy to be + created. + type: boolean + type: object + type: array + type: object + type: array + commonEncryptionCenc: + description: A common_encryption_cenc block as defined below. + Changing this forces a new Streaming Policy to be created. + items: + properties: + clearKeyEncryption: + description: A clear_key_encryption block as defined below. + Changing this forces a new Streaming Policy to be created. + items: + properties: + customKeysAcquisitionUrlTemplate: + description: The URL template for the custom service + that delivers content keys to the end user. This + is not required when using Azure Media Services + for issuing keys. Changing this forces a new Streaming + Policy to be created. + type: string + type: object + type: array + clearTrack: + description: One or more clear_track blocks as defined below. + Changing this forces a new Streaming Policy to be created. + items: + properties: + condition: + description: One or more condition blocks as defined + below. Changing this forces a new Streaming Policy + to be created. + items: + properties: + operation: + description: The track property condition operation. + Possible value is Equal. Changing this forces + a new Streaming Policy to be created. + type: string + property: + description: The track property type. Possible + value is FourCC. Changing this forces a new + Streaming Policy to be created. + type: string + value: + description: The track property value. Changing + this forces a new Streaming Policy to be created. + type: string + type: object + type: array + type: object + type: array + contentKeyToTrackMapping: + description: One or more content_key_to_track_mapping blocks + as defined below. Changing this forces a new Streaming + Policy to be created. + items: + properties: + label: + description: Label can be used to specify Content + Key when creating a Streaming Locator. Changing + this forces a new Streaming Policy to be created. + type: string + policyName: + description: Policy used by Default Key. Changing + this forces a new Streaming Policy to be created. + type: string + track: + description: One or more track blocks as defined below. + Changing this forces a new Streaming Policy to be + created. + items: + properties: + condition: + description: One or more condition blocks as + defined below. Changing this forces a new + Streaming Policy to be created. + items: + properties: + operation: + description: The track property condition + operation. Possible value is Equal. + Changing this forces a new Streaming + Policy to be created. + type: string + property: + description: The track property type. + Possible value is FourCC. Changing this + forces a new Streaming Policy to be + created. + type: string + value: + description: The track property value. + Changing this forces a new Streaming + Policy to be created. + type: string + type: object + type: array + type: object + type: array + type: object + type: array + defaultContentKey: + description: A default_content_key block as defined below. + Changing this forces a new Streaming Policy to be created. + items: + properties: + label: + description: Label can be used to specify Content + Key when creating a Streaming Locator. Changing + this forces a new Streaming Policy to be created. + type: string + type: object + type: array + drmPlayready: + description: A drm_playready block as defined below. Changing + this forces a new Streaming Policy to be created. + items: + properties: + customAttributes: + description: Custom attributes for PlayReady. Changing + this forces a new Streaming Policy to be created. + type: string + customLicenseAcquisitionUrlTemplate: + description: The URL template for the custom service + that delivers licenses to the end user. This is + not required when using Azure Media Services for + issuing licenses. Changing this forces a new Streaming + Policy to be created. + type: string + type: object + type: array + drmWidevineCustomLicenseAcquisitionUrlTemplate: + description: The URL template for the custom service that + delivers licenses to the end user. This is not required + when using Azure Media Services for issuing licenses. + Changing this forces a new Streaming Policy to be created. + type: string + enabledProtocols: + description: A enabled_protocols block as defined below. + Changing this forces a new Streaming Policy to be created. + items: + properties: + dash: + description: Enable DASH protocol or not. Changing + this forces a new Streaming Policy to be created. + type: boolean + download: + description: Enable Download protocol or not. Changing + this forces a new Streaming Policy to be created. + type: boolean + hls: + description: Enable HLS protocol or not. Changing + this forces a new Streaming Policy to be created. + type: boolean + smoothStreaming: + description: Enable SmoothStreaming protocol or not. + Changing this forces a new Streaming Policy to be + created. + type: boolean + type: object + type: array + type: object + type: array + defaultContentKeyPolicyName: + description: Default Content Key used by current Streaming Policy. + Changing this forces a new Streaming Policy to be created. + type: string + envelopeEncryption: + description: A envelope_encryption block as defined below. Changing + this forces a new Streaming Policy to be created. + items: + properties: + customKeysAcquisitionUrlTemplate: + description: The URL template for the custom service that + delivers content keys to the end user. This is not required + when using Azure Media Services for issuing keys. Changing + this forces a new Streaming Policy to be created. + type: string + defaultContentKey: + description: A default_content_key block as defined above. + Changing this forces a new Streaming Policy to be created. + items: + properties: + label: + description: Label can be used to specify Content + Key when creating a Streaming Locator. Changing + this forces a new Streaming Policy to be created. + type: string + policyName: + description: Policy used by Default Key. Changing + this forces a new Streaming Policy to be created. + type: string + type: object + type: array + enabledProtocols: + description: A enabled_protocols block as defined above. + Changing this forces a new Streaming Policy to be created. + items: + properties: + dash: + description: Enable DASH protocol or not. Changing + this forces a new Streaming Policy to be created. + type: boolean + download: + description: Enable Download protocol or not. Changing + this forces a new Streaming Policy to be created. + type: boolean + hls: + description: Enable HLS protocol or not. Changing + this forces a new Streaming Policy to be created. + type: boolean + smoothStreaming: + description: Enable SmoothStreaming protocol or not. + Changing this forces a new Streaming Policy to be + created. + type: boolean + type: object + type: array + type: object + type: array + noEncryptionEnabledProtocols: + description: A no_encryption_enabled_protocols block as defined + below. Changing this forces a new Streaming Policy to be created. + items: + properties: + dash: + description: Enable DASH protocol or not. Changing this + forces a new Streaming Policy to be created. + type: boolean + download: + description: Enable Download protocol or not. Changing this + forces a new Streaming Policy to be created. + type: boolean + hls: + description: Enable HLS protocol or not. Changing this forces + a new Streaming Policy to be created. + type: boolean + smoothStreaming: + description: Enable SmoothStreaming protocol or not. Changing + this forces a new Streaming Policy to be created. + type: boolean + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/media.azure.upbound.io_transforms.yaml b/package/crds/media.azure.upbound.io_transforms.yaml index 2bfb8569a..b53d6d0f6 100644 --- a/package/crds/media.azure.upbound.io_transforms.yaml +++ b/package/crds/media.azure.upbound.io_transforms.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: transforms.media.azure.upbound.io spec: group: media.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -256,8 +255,6 @@ spec: H264MultipleBitrate720p, H264SingleBitrate1080p, H264SingleBitrateSD and H264SingleBitrate720p. type: string - required: - - presetName type: object type: array customPreset: @@ -497,8 +494,6 @@ spec: or relative to the size of the video (For example, 50%). type: string - required: - - bitrate type: object type: array rateControlMode: @@ -675,8 +670,6 @@ spec: or relative to the size of the video (For example, 50%). type: string - required: - - bitrate type: object type: array sceneChangeDetectionEnabled: @@ -830,8 +823,6 @@ spec: are Auto, Cfr, Passthrough or Vfr. Default to Auto. type: string - required: - - start type: object type: array pngImage: @@ -945,8 +936,6 @@ spec: are Auto, Cfr, Passthrough or Vfr. Default to Auto. type: string - required: - - start type: object type: array type: object @@ -1039,9 +1028,6 @@ spec: the overlay starts from the beginning of the input video. type: string - required: - - duration - - fadeColor type: object type: array fadeOut: @@ -1075,9 +1061,6 @@ spec: the overlay starts from the beginning of the input video. type: string - required: - - duration - - fadeColor type: object type: array overlay: @@ -1152,8 +1135,6 @@ spec: the overlay starts from the beginning of the input video. type: string - required: - - inputLabel type: object type: array video: @@ -1312,8 +1293,6 @@ spec: the overlay starts from the beginning of the input video. type: string - required: - - inputLabel type: object type: array type: object @@ -1362,8 +1341,6 @@ spec: Any unsubstituted macros will be collapsed and removed from the filename.' type: string - required: - - filenamePattern type: object type: array mp4: @@ -1418,12 +1395,8 @@ spec: items: type: string type: array - required: - - labels type: object type: array - required: - - filenamePattern type: object type: array png: @@ -1457,8 +1430,6 @@ spec: Any unsubstituted macros will be collapsed and removed from the filename.' type: string - required: - - filenamePattern type: object type: array transportStream: @@ -1514,19 +1485,12 @@ spec: items: type: string type: array - required: - - labels type: object type: array - required: - - filenamePattern type: object type: array type: object type: array - required: - - codec - - format type: object type: array faceDetectorPreset: @@ -1726,21 +1690,1513 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: An optional verbose description of the Transform. + type: string + output: + description: One or more output blocks as defined below. At least + one output must be defined. + items: + properties: + audioAnalyzerPreset: + description: An audio_analyzer_preset block as defined above. + items: + properties: + audioAnalysisMode: + description: Possible values are Basic or Standard. + Determines the set of audio analysis operations + to be performed. Default to Standard. + type: string + audioLanguage: + description: 'The language for the audio payload in + the input using the BCP-47 format of ''language + tag-region'' (e.g: ''en-US''). If you know the language + of your content, it is recommended that you specify + it. The language must be specified explicitly for + AudioAnalysisMode:Basic, since automatic language + detection is not included in basic mode. If the + language isn''t specified, automatic language detection + will choose the first language detected and process + with the selected language for the duration of the + file. It does not currently support dynamically + switching between languages after the first language + is detected. The automatic detection works best + with audio recordings with clearly discernible speech. + If automatic detection fails to find the language, + transcription would fall back to en-US. The list + of supported languages is available here: https://go.microsoft.com/fwlink/?linkid=2109463.' + type: string + experimentalOptions: + additionalProperties: + type: string + description: Dictionary containing key value pairs + for parameters not exposed in the preset itself. + type: object + type: object + type: array + builtinPreset: + description: A builtin_preset block as defined above. + items: + properties: + presetConfiguration: + description: A present_configuration block as defined + below. + items: + properties: + complexity: + description: The complexity of the encoding. + Possible values are Balanced, Speed or Quality. + type: string + interleaveOutput: + description: Specifies the interleave mode of + the output to control how audio are stored + in the container format. Possible values are + InterleavedOutput and NonInterleavedOutput. + type: string + keyFrameIntervalInSeconds: + description: The key frame interval in seconds. + Possible value is a positive float. For example, + set as 2.0 to reduce the playback buffering + for some players. + type: number + maxBitrateBps: + description: The maximum bitrate in bits per + second (threshold for the top video layer). + For example, set as 6000000 to avoid producing + very high bitrate outputs for contents with + high complexity. + type: number + maxHeight: + description: The maximum height of output video + layers. For example, set as 720 to produce + output layers up to 720P even if the input + is 4K. + type: number + maxLayers: + description: The maximum number of output video + layers. For example, set as 4 to make sure + at most 4 output layers are produced to control + the overall cost of the encoding job. + type: number + minBitrateBps: + description: The minimum bitrate in bits per + second (threshold for the bottom video layer). + For example, set as 200000 to have a bottom + layer that covers users with low network bandwidth. + type: number + minHeight: + description: The minimum height of output video + layers. For example, set as 360 to avoid output + layers of smaller resolutions like 180P. + type: number + type: object + type: array + presetName: + description: The built-in preset to be used for encoding + videos. The Possible values are AACGoodQualityAudio, + AdaptiveStreaming, ContentAwareEncoding, ContentAwareEncodingExperimental, + CopyAllBitrateNonInterleaved, DDGoodQualityAudio, + H265AdaptiveStreaming, H265ContentAwareEncoding, + H265SingleBitrate4K, H265SingleBitrate1080p, H265SingleBitrate720p, + H264MultipleBitrate1080p, H264MultipleBitrateSD, + H264MultipleBitrate720p, H264SingleBitrate1080p, + H264SingleBitrateSD and H264SingleBitrate720p. + type: string + type: object + type: array + customPreset: + description: A custom_preset block as defined above. + items: + properties: + codec: + description: One or more codec blocks as defined above. + items: + properties: + aacAudio: + description: A aac_audio block as defined above. + items: + properties: + bitrate: + description: The average bitrate in bits + per second at which to encode the input + video when generating this layer. + type: number + channels: + description: The number of audio channels. + Default to 2. + type: number + label: + description: Specifies the label for the + codec. The label can be used to control + muxing behavior. + type: string + profile: + description: The H.264 profile. Possible + values are Auto, Baseline, High, High422, + High444,or Main. Default to Auto. + type: string + samplingRate: + description: The sampling rate to use + for encoding in Hertz. Default to 48000. + type: number + type: object + type: array + copyAudio: + description: A copy_audio block as defined below. + items: + properties: + label: + description: Specifies the label for the + codec. The label can be used to control + muxing behavior. + type: string + type: object + type: array + copyVideo: + description: A copy_video block as defined below. + items: + properties: + label: + description: Specifies the label for the + codec. The label can be used to control + muxing behavior. + type: string + type: object + type: array + ddAudio: + description: A dd_audio block as defined below. + items: + properties: + bitrate: + description: The average bitrate in bits + per second at which to encode the input + video when generating this layer. + type: number + channels: + description: The number of audio channels. + Default to 2. + type: number + label: + description: Specifies the label for the + codec. The label can be used to control + muxing behavior. + type: string + samplingRate: + description: The sampling rate to use + for encoding in Hertz. Default to 48000. + type: number + type: object + type: array + h264Video: + description: A h264_video block as defined below. + items: + properties: + complexity: + description: The complexity of the encoding. + Possible values are Balanced, Speed + or Quality. + type: string + keyFrameInterval: + description: The distance between two + key frames. The value should be non-zero + in the range 0.5 to 20 seconds, specified + in ISO 8601 format. The default is 2 + seconds (PT2S). Note that this setting + is ignored if sync_mode is set to Passthrough, + where the KeyFrameInterval value will + follow the input source setting. + type: string + label: + description: Specifies the label for the + codec. The label can be used to control + muxing behavior. + type: string + layer: + description: One or more layer blocks + as defined below. + items: + properties: + adaptiveBFrameEnabled: + description: Whether adaptive B-frames + are used when encoding this layer. + If not specified, the encoder + will turn it on whenever the video + profile permits its use. Default + to true. + type: boolean + bFrames: + description: The number of B-frames + to use when encoding this layer. + If not specified, the encoder + chooses an appropriate number + based on the video profile and + level. + type: number + bitrate: + description: The average bitrate + in bits per second at which to + encode the input video when generating + this layer. + type: number + bufferWindow: + description: Specifies the maximum + amount of time that the encoder + should buffer frames before encoding. + The value should be in ISO 8601 + format. The value should be in + the range 0.1 to 100 seconds. + The default is 5 seconds (PT5S). + type: string + crf: + description: The value of CRF to + be used when encoding this layer. + This setting takes effect when + rate_control_mode is set CRF. + The range of CRF value is between + 0 and 51, where lower values would + result in better quality, at the + expense of higher file sizes. + Higher values mean more compression, + but at some point quality degradation + will be noticed. Default to 23. + type: number + entropyMode: + description: The entropy mode to + be used for this layer. Possible + values are Cabac or Cavlc. If + not specified, the encoder chooses + the mode that is appropriate for + the profile and level. + type: string + frameRate: + description: The frame rate (in + frames per second) at which to + encode this layer. The value can + be in the form of M/N where M + and N are integers (For example, + 30000/1001), or in the form of + a number (For example, 30, or + 29.97). The encoder enforces constraints + on allowed frame rates based on + the profile and level. If it is + not specified, the encoder will + use the same frame rate as the + input video. + type: string + height: + description: The height of the rectangular + region in pixels. This can be + absolute pixel value (e.g 100), + or relative to the size of the + video (For example, 50%). + type: string + label: + description: Specifies the label + for the codec. The label can be + used to control muxing behavior. + type: string + level: + description: The H.264 levels. Currently, + the resource support Level up + to 6.2. The value can be auto, + or a number that matches the H.264 + profile. If not specified, the + default is auto, which lets the + encoder choose the Level that + is appropriate for this layer. + type: string + maxBitrate: + description: The maximum bitrate + (in bits per second), at which + the VBV buffer should be assumed + to refill. If not specified, defaults + to the same value as bitrate. + type: number + profile: + description: The H.264 profile. + Possible values are Auto, Baseline, + High, High422, High444,or Main. + Default to Auto. + type: string + referenceFrames: + description: The number of reference + frames to be used when encoding + this layer. If not specified, + the encoder determines an appropriate + number based on the encoder complexity + setting. + type: number + slices: + description: The number of slices + to be used when encoding this + layer. If not specified, default + is 1, which means that encoder + will use a single slice for each + frame. + type: number + width: + description: The width of the rectangular + region in pixels. This can be + absolute pixel value (e.g 100), + or relative to the size of the + video (For example, 50%). + type: string + type: object + type: array + rateControlMode: + description: The rate control mode. Possible + values are ABR, CBR or CRF. Default + to ABR. + type: string + sceneChangeDetectionEnabled: + description: Whether the encoder should + insert key frames at scene changes. + This flag should be set to true only + when the encoder is being configured + to produce a single output video. Default + to false. + type: boolean + stretchMode: + description: The resizing mode, which + indicates how the input video will be + resized to fit the desired output resolution(s). + Possible values are AutoFit, AutoSize + or None. Default to AutoSize. + type: string + syncMode: + description: Specifies the synchronization + mode for the video. Possible values + are Auto, Cfr, Passthrough or Vfr. Default + to Auto. + type: string + type: object + type: array + h265Video: + description: A h265_video block as defined below. + items: + properties: + complexity: + description: The complexity of the encoding. + Possible values are Balanced, Speed + or Quality. + type: string + keyFrameInterval: + description: The distance between two + key frames. The value should be non-zero + in the range 0.5 to 20 seconds, specified + in ISO 8601 format. The default is 2 + seconds (PT2S). Note that this setting + is ignored if sync_mode is set to Passthrough, + where the KeyFrameInterval value will + follow the input source setting. + type: string + label: + description: Specifies the label for the + codec. The label can be used to control + muxing behavior. + type: string + layer: + description: One or more layer blocks + as defined below. + items: + properties: + adaptiveBFrameEnabled: + description: Whether adaptive B-frames + are used when encoding this layer. + If not specified, the encoder + will turn it on whenever the video + profile permits its use. Default + to true. + type: boolean + bFrames: + description: The number of B-frames + to use when encoding this layer. + If not specified, the encoder + chooses an appropriate number + based on the video profile and + level. + type: number + bitrate: + description: The average bitrate + in bits per second at which to + encode the input video when generating + this layer. + type: number + bufferWindow: + description: Specifies the maximum + amount of time that the encoder + should buffer frames before encoding. + The value should be in ISO 8601 + format. The value should be in + the range 0.1 to 100 seconds. + The default is 5 seconds (PT5S). + type: string + crf: + description: The value of CRF to + be used when encoding this layer. + This setting takes effect when + rate_control_mode is set CRF. + The range of CRF value is between + 0 and 51, where lower values would + result in better quality, at the + expense of higher file sizes. + Higher values mean more compression, + but at some point quality degradation + will be noticed. Default to 23. + type: number + frameRate: + description: The frame rate (in + frames per second) at which to + encode this layer. The value can + be in the form of M/N where M + and N are integers (For example, + 30000/1001), or in the form of + a number (For example, 30, or + 29.97). The encoder enforces constraints + on allowed frame rates based on + the profile and level. If it is + not specified, the encoder will + use the same frame rate as the + input video. + type: string + height: + description: The height of the rectangular + region in pixels. This can be + absolute pixel value (e.g 100), + or relative to the size of the + video (For example, 50%). + type: string + label: + description: Specifies the label + for the codec. The label can be + used to control muxing behavior. + type: string + level: + description: The H.264 levels. Currently, + the resource support Level up + to 6.2. The value can be auto, + or a number that matches the H.264 + profile. If not specified, the + default is auto, which lets the + encoder choose the Level that + is appropriate for this layer. + type: string + maxBitrate: + description: The maximum bitrate + (in bits per second), at which + the VBV buffer should be assumed + to refill. If not specified, defaults + to the same value as bitrate. + type: number + profile: + description: The H.264 profile. + Possible values are Auto, Baseline, + High, High422, High444,or Main. + Default to Auto. + type: string + referenceFrames: + description: The number of reference + frames to be used when encoding + this layer. If not specified, + the encoder determines an appropriate + number based on the encoder complexity + setting. + type: number + slices: + description: The number of slices + to be used when encoding this + layer. If not specified, default + is 1, which means that encoder + will use a single slice for each + frame. + type: number + width: + description: The width of the rectangular + region in pixels. This can be + absolute pixel value (e.g 100), + or relative to the size of the + video (For example, 50%). + type: string + type: object + type: array + sceneChangeDetectionEnabled: + description: Whether the encoder should + insert key frames at scene changes. + This flag should be set to true only + when the encoder is being configured + to produce a single output video. Default + to false. + type: boolean + stretchMode: + description: The resizing mode, which + indicates how the input video will be + resized to fit the desired output resolution(s). + Possible values are AutoFit, AutoSize + or None. Default to AutoSize. + type: string + syncMode: + description: Specifies the synchronization + mode for the video. Possible values + are Auto, Cfr, Passthrough or Vfr. Default + to Auto. + type: string + type: object + type: array + jpgImage: + description: A jpg_image block as defined below. + items: + properties: + keyFrameInterval: + description: The distance between two + key frames. The value should be non-zero + in the range 0.5 to 20 seconds, specified + in ISO 8601 format. The default is 2 + seconds (PT2S). Note that this setting + is ignored if sync_mode is set to Passthrough, + where the KeyFrameInterval value will + follow the input source setting. + type: string + label: + description: Specifies the label for the + codec. The label can be used to control + muxing behavior. + type: string + layer: + description: One or more layer blocks + as defined below. + items: + properties: + height: + description: The height of the rectangular + region in pixels. This can be + absolute pixel value (e.g 100), + or relative to the size of the + video (For example, 50%). + type: string + label: + description: Specifies the label + for the codec. The label can be + used to control muxing behavior. + type: string + quality: + description: The compression quality + of the JPEG output. Range is from + 0 to 100 and the default is 70. + type: number + width: + description: The width of the rectangular + region in pixels. This can be + absolute pixel value (e.g 100), + or relative to the size of the + video (For example, 50%). + type: string + type: object + type: array + range: + description: The position relative to + transform preset start time in the input + video at which to stop generating thumbnails. + The value can be in ISO 8601 format + (For example, PT5M30S to stop at 5 minutes + and 30 seconds from start time), or + a frame count (For example, 300 to stop + at the 300th frame from the frame at + start time. If this value is 1, it means + only producing one thumbnail at start + time), or a relative value to the stream + duration (For example, 50% to stop at + half of stream duration from start time). + The default value is 100%, which means + to stop at the end of the stream. + type: string + spriteColumn: + description: 'Sets the number of columns + used in thumbnail sprite image. The + number of rows are automatically calculated + and a VTT file is generated with the + coordinate mappings for each thumbnail + in the sprite. Note: this value should + be a positive integer and a proper value + is recommended so that the output image + resolution will not go beyond JPEG maximum + pixel resolution limit 65535x65535.' + type: number + start: + description: The start position, with + reference to the input video, at which + the overlay starts. The value should + be in ISO 8601 format. For example, + PT05S to start the overlay at 5 seconds + into the input video. If not specified + the overlay starts from the beginning + of the input video. + type: string + step: + description: 'The intervals at which thumbnails + are generated. The value can be in ISO + 8601 format (For example, PT05S for + one image every 5 seconds), or a frame + count (For example, 30 for one image + every 30 frames), or a relative value + to stream duration (For example, 10% + for one image every 10% of stream duration). + Note: Step value will affect the first + generated thumbnail, which may not be + exactly the one specified at transform + preset start time. This is due to the + encoder, which tries to select the best + thumbnail between start time and Step + position from start time as the first + output. As the default value is 10%, + it means if stream has long duration, + the first generated thumbnail might + be far away from the one specified at + start time. Try to select reasonable + value for Step if the first thumbnail + is expected close to start time, or + set Range value at 1 if only one thumbnail + is needed at start time.' + type: string + stretchMode: + description: The resizing mode, which + indicates how the input video will be + resized to fit the desired output resolution(s). + Possible values are AutoFit, AutoSize + or None. Default to AutoSize. + type: string + syncMode: + description: Specifies the synchronization + mode for the video. Possible values + are Auto, Cfr, Passthrough or Vfr. Default + to Auto. + type: string + type: object + type: array + pngImage: + description: A png_image block as defined below. + items: + properties: + keyFrameInterval: + description: The distance between two + key frames. The value should be non-zero + in the range 0.5 to 20 seconds, specified + in ISO 8601 format. The default is 2 + seconds (PT2S). Note that this setting + is ignored if sync_mode is set to Passthrough, + where the KeyFrameInterval value will + follow the input source setting. + type: string + label: + description: Specifies the label for the + codec. The label can be used to control + muxing behavior. + type: string + layer: + description: One or more layer blocks + as defined below. + items: + properties: + height: + description: The height of the rectangular + region in pixels. This can be + absolute pixel value (e.g 100), + or relative to the size of the + video (For example, 50%). + type: string + label: + description: Specifies the label + for the codec. The label can be + used to control muxing behavior. + type: string + width: + description: The width of the rectangular + region in pixels. This can be + absolute pixel value (e.g 100), + or relative to the size of the + video (For example, 50%). + type: string + type: object + type: array + range: + description: The position relative to + transform preset start time in the input + video at which to stop generating thumbnails. + The value can be in ISO 8601 format + (For example, PT5M30S to stop at 5 minutes + and 30 seconds from start time), or + a frame count (For example, 300 to stop + at the 300th frame from the frame at + start time. If this value is 1, it means + only producing one thumbnail at start + time), or a relative value to the stream + duration (For example, 50% to stop at + half of stream duration from start time). + The default value is 100%, which means + to stop at the end of the stream. + type: string + start: + description: The start position, with + reference to the input video, at which + the overlay starts. The value should + be in ISO 8601 format. For example, + PT05S to start the overlay at 5 seconds + into the input video. If not specified + the overlay starts from the beginning + of the input video. + type: string + step: + description: 'The intervals at which thumbnails + are generated. The value can be in ISO + 8601 format (For example, PT05S for + one image every 5 seconds), or a frame + count (For example, 30 for one image + every 30 frames), or a relative value + to stream duration (For example, 10% + for one image every 10% of stream duration). + Note: Step value will affect the first + generated thumbnail, which may not be + exactly the one specified at transform + preset start time. This is due to the + encoder, which tries to select the best + thumbnail between start time and Step + position from start time as the first + output. As the default value is 10%, + it means if stream has long duration, + the first generated thumbnail might + be far away from the one specified at + start time. Try to select reasonable + value for Step if the first thumbnail + is expected close to start time, or + set Range value at 1 if only one thumbnail + is needed at start time.' + type: string + stretchMode: + description: The resizing mode, which + indicates how the input video will be + resized to fit the desired output resolution(s). + Possible values are AutoFit, AutoSize + or None. Default to AutoSize. + type: string + syncMode: + description: Specifies the synchronization + mode for the video. Possible values + are Auto, Cfr, Passthrough or Vfr. Default + to Auto. + type: string + type: object + type: array + type: object + type: array + filter: + description: A filter block as defined below. + items: + properties: + cropRectangle: + description: A crop_rectangle block as defined + above. + items: + properties: + height: + description: The height of the rectangular + region in pixels. This can be absolute + pixel value (e.g 100), or relative to + the size of the video (For example, + 50%). + type: string + left: + description: The number of pixels from + the left-margin. This can be absolute + pixel value (e.g 100), or relative to + the size of the video (For example, + 50%). + type: string + top: + description: The number of pixels from + the top-margin. This can be absolute + pixel value (e.g 100), or relative to + the size of the video (For example, + 50%). + type: string + width: + description: The width of the rectangular + region in pixels. This can be absolute + pixel value (e.g 100), or relative to + the size of the video (For example, + 50%). + type: string + type: object + type: array + deinterlace: + description: A deinterlace block as defined + below. + items: + properties: + mode: + description: The deinterlacing mode. Possible + values are AutoPixelAdaptive or Off. + Default to AutoPixelAdaptive. + type: string + parity: + description: The field parity to use for + deinterlacing. Possible values are Auto, + TopFieldFirst or BottomFieldFirst. Default + to Auto. + type: string + type: object + type: array + fadeIn: + description: A fade_in block as defined above. + items: + properties: + duration: + description: The duration of the fade + effect in the video. The value can be + in ISO 8601 format (For example, PT05S + to fade In/Out a color during 5 seconds), + or a frame count (For example, 10 to + fade 10 frames from the start time), + or a relative value to stream duration + (For example, 10% to fade 10% of stream + duration). + type: string + fadeColor: + description: 'The color for the fade in/out. + It can be on the CSS Level1 colors or + an RGB/hex value: e.g: rgb(255,0,0), + 0xFF0000 or #FF0000.' + type: string + start: + description: The start position, with + reference to the input video, at which + the overlay starts. The value should + be in ISO 8601 format. For example, + PT05S to start the overlay at 5 seconds + into the input video. If not specified + the overlay starts from the beginning + of the input video. + type: string + type: object + type: array + fadeOut: + description: A fade_out block as defined above. + items: + properties: + duration: + description: The duration of the fade + effect in the video. The value can be + in ISO 8601 format (For example, PT05S + to fade In/Out a color during 5 seconds), + or a frame count (For example, 10 to + fade 10 frames from the start time), + or a relative value to stream duration + (For example, 10% to fade 10% of stream + duration). + type: string + fadeColor: + description: 'The color for the fade in/out. + It can be on the CSS Level1 colors or + an RGB/hex value: e.g: rgb(255,0,0), + 0xFF0000 or #FF0000.' + type: string + start: + description: The start position, with + reference to the input video, at which + the overlay starts. The value should + be in ISO 8601 format. For example, + PT05S to start the overlay at 5 seconds + into the input video. If not specified + the overlay starts from the beginning + of the input video. + type: string + type: object + type: array + overlay: + description: One or more overlay blocks as defined + below. + items: + properties: + audio: + description: An audio block as defined + above. + items: + properties: + audioGainLevel: + description: The gain level of audio + in the overlay. The value should + be in range between 0 to 1.0. + The default is 1.0. + type: number + end: + description: The end position, with + reference to the input video, + at which the overlay ends. The + value should be in ISO 8601 format. + For example, PT30S to end the + overlay at 30 seconds into the + input video. If not specified + or the value is greater than the + input video duration, the overlay + will be applied until the end + of the input video if the overlay + media duration is greater than + the input video duration, else + the overlay will last as long + as the overlay media duration. + type: string + fadeInDuration: + description: The duration over which + the overlay fades in onto the + input video. The value should + be in ISO 8601 duration format. + If not specified the default behavior + is to have no fade in (same as + PT0S). + type: string + fadeOutDuration: + description: The duration over which + the overlay fades out of the input + video. The value should be in + ISO 8601 duration format. If not + specified the default behavior + is to have no fade out (same as + PT0S). + type: string + inputLabel: + description: The label of the job + input which is to be used as an + overlay. The input must specify + exact one file. You can specify + an image file in JPG, PNG, GIF + or BMP format, or an audio file + (such as a WAV, MP3, WMA or M4A + file), or a video file. + type: string + start: + description: The start position, + with reference to the input video, + at which the overlay starts. The + value should be in ISO 8601 format. + For example, PT05S to start the + overlay at 5 seconds into the + input video. If not specified + the overlay starts from the beginning + of the input video. + type: string + type: object + type: array + video: + description: A video block as defined + below. + items: + properties: + audioGainLevel: + description: The gain level of audio + in the overlay. The value should + be in range between 0 to 1.0. + The default is 1.0. + type: number + cropRectangle: + description: A crop_rectangle block + as defined above. + items: + properties: + height: + description: The height of + the rectangular region in + pixels. This can be absolute + pixel value (e.g 100), or + relative to the size of + the video (For example, + 50%). + type: string + left: + description: The number of + pixels from the left-margin. + This can be absolute pixel + value (e.g 100), or relative + to the size of the video + (For example, 50%). + type: string + top: + description: The number of + pixels from the top-margin. + This can be absolute pixel + value (e.g 100), or relative + to the size of the video + (For example, 50%). + type: string + width: + description: The width of + the rectangular region in + pixels. This can be absolute + pixel value (e.g 100), or + relative to the size of + the video (For example, + 50%). + type: string + type: object + type: array + end: + description: The end position, with + reference to the input video, + at which the overlay ends. The + value should be in ISO 8601 format. + For example, PT30S to end the + overlay at 30 seconds into the + input video. If not specified + or the value is greater than the + input video duration, the overlay + will be applied until the end + of the input video if the overlay + media duration is greater than + the input video duration, else + the overlay will last as long + as the overlay media duration. + type: string + fadeInDuration: + description: The duration over which + the overlay fades in onto the + input video. The value should + be in ISO 8601 duration format. + If not specified the default behavior + is to have no fade in (same as + PT0S). + type: string + fadeOutDuration: + description: The duration over which + the overlay fades out of the input + video. The value should be in + ISO 8601 duration format. If not + specified the default behavior + is to have no fade out (same as + PT0S). + type: string + inputLabel: + description: The label of the job + input which is to be used as an + overlay. The input must specify + exact one file. You can specify + an image file in JPG, PNG, GIF + or BMP format, or an audio file + (such as a WAV, MP3, WMA or M4A + file), or a video file. + type: string + opacity: + description: The opacity of the + overlay. The value should be in + the range between 0 to 1.0. Default + to 1.0, which means the overlay + is opaque. + type: number + position: + description: A position block as + defined above. + items: + properties: + height: + description: The height of + the rectangular region in + pixels. This can be absolute + pixel value (e.g 100), or + relative to the size of + the video (For example, + 50%). + type: string + left: + description: The number of + pixels from the left-margin. + This can be absolute pixel + value (e.g 100), or relative + to the size of the video + (For example, 50%). + type: string + top: + description: The number of + pixels from the top-margin. + This can be absolute pixel + value (e.g 100), or relative + to the size of the video + (For example, 50%). + type: string + width: + description: The width of + the rectangular region in + pixels. This can be absolute + pixel value (e.g 100), or + relative to the size of + the video (For example, + 50%). + type: string + type: object + type: array + start: + description: The start position, + with reference to the input video, + at which the overlay starts. The + value should be in ISO 8601 format. + For example, PT05S to start the + overlay at 5 seconds into the + input video. If not specified + the overlay starts from the beginning + of the input video. + type: string + type: object + type: array + type: object + type: array + rotation: + description: The rotation to be applied to the + input video before it is encoded. Possible + values are Auto, None, Rotate90, Rotate180, + Rotate270,or Rotate0. Default to Auto. + type: string + type: object + type: array + format: + description: One or more format blocks as defined + below. + items: + properties: + jpg: + description: A jpg block as defined below. + items: + properties: + filenamePattern: + description: 'The file naming pattern + used for the creation of output files. + The following macros are supported in + the file name: {Basename} - An expansion + macro that will use the name of the + input video file. If the base name(the + file suffix is not included) of the + input video file is less than 32 characters + long, the base name of input video files + will be used. If the length of base + name of the input video file exceeds + 32 characters, the base name is truncated + to the first 32 characters in total + length. {Extension} - The appropriate + extension for this format. {Label} - + The label assigned to the codec/layer. + {Index} - A unique index for thumbnails. + Only applicable to thumbnails. {AudioStream} + - string "Audio" plus audio stream number(start + from 1). {Bitrate} - The audio/video + bitrate in kbps. Not applicable to thumbnails. + {Codec} - The type of the audio/video + codec. {Resolution} - The video resolution. + Any unsubstituted macros will be collapsed + and removed from the filename.' + type: string + type: object + type: array + mp4: + description: A mp4 block as defined below. + items: + properties: + filenamePattern: + description: 'The file naming pattern + used for the creation of output files. + The following macros are supported in + the file name: {Basename} - An expansion + macro that will use the name of the + input video file. If the base name(the + file suffix is not included) of the + input video file is less than 32 characters + long, the base name of input video files + will be used. If the length of base + name of the input video file exceeds + 32 characters, the base name is truncated + to the first 32 characters in total + length. {Extension} - The appropriate + extension for this format. {Label} - + The label assigned to the codec/layer. + {Index} - A unique index for thumbnails. + Only applicable to thumbnails. {AudioStream} + - string "Audio" plus audio stream number(start + from 1). {Bitrate} - The audio/video + bitrate in kbps. Not applicable to thumbnails. + {Codec} - The type of the audio/video + codec. {Resolution} - The video resolution. + Any unsubstituted macros will be collapsed + and removed from the filename.' + type: string + outputFile: + description: One or more output_file blocks + as defined above. + items: + properties: + labels: + description: The list of labels + that describe how the encoder + should multiplex video and audio + into an output file. For example, + if the encoder is producing two + video layers with labels v1 and + v2, and one audio layer with label + a1, then an array like ["v1", + "a1"] tells the encoder to produce + an output file with the video + track represented by v1 and the + audio track represented by a1. + items: + type: string + type: array + type: object + type: array + type: object + type: array + png: + description: A png block as defined below. + items: + properties: + filenamePattern: + description: 'The file naming pattern + used for the creation of output files. + The following macros are supported in + the file name: {Basename} - An expansion + macro that will use the name of the + input video file. If the base name(the + file suffix is not included) of the + input video file is less than 32 characters + long, the base name of input video files + will be used. If the length of base + name of the input video file exceeds + 32 characters, the base name is truncated + to the first 32 characters in total + length. {Extension} - The appropriate + extension for this format. {Label} - + The label assigned to the codec/layer. + {Index} - A unique index for thumbnails. + Only applicable to thumbnails. {AudioStream} + - string "Audio" plus audio stream number(start + from 1). {Bitrate} - The audio/video + bitrate in kbps. Not applicable to thumbnails. + {Codec} - The type of the audio/video + codec. {Resolution} - The video resolution. + Any unsubstituted macros will be collapsed + and removed from the filename.' + type: string + type: object + type: array + transportStream: + description: A transport_stream block as defined + below. + items: + properties: + filenamePattern: + description: 'The file naming pattern + used for the creation of output files. + The following macros are supported in + the file name: {Basename} - An expansion + macro that will use the name of the + input video file. If the base name(the + file suffix is not included) of the + input video file is less than 32 characters + long, the base name of input video files + will be used. If the length of base + name of the input video file exceeds + 32 characters, the base name is truncated + to the first 32 characters in total + length. {Extension} - The appropriate + extension for this format. {Label} - + The label assigned to the codec/layer. + {Index} - A unique index for thumbnails. + Only applicable to thumbnails. {AudioStream} + - string "Audio" plus audio stream number(start + from 1). {Bitrate} - The audio/video + bitrate in kbps. Not applicable to thumbnails. + {Codec} - The type of the audio/video + codec. {Resolution} - The video resolution. + Any unsubstituted macros will be collapsed + and removed from the filename.' + type: string + outputFile: + description: One or more output_file blocks + as defined above. + items: + properties: + labels: + description: The list of labels + that describe how the encoder + should multiplex video and audio + into an output file. For example, + if the encoder is producing two + video layers with labels v1 and + v2, and one audio layer with label + a1, then an array like ["v1", + "a1"] tells the encoder to produce + an output file with the video + track represented by v1 and the + audio track represented by a1. + items: + type: string + type: array + type: object + type: array + type: object + type: array + type: object + type: array + type: object + type: array + faceDetectorPreset: + description: A face_detector_preset block as defined above. + items: + properties: + analysisResolution: + description: Possible values are SourceResolution + or StandardDefinition. Specifies the maximum resolution + at which your video is analyzed. which will keep + the input video at its original resolution when + analyzed. Using StandardDefinition will resize input + videos to standard definition while preserving the + appropriate aspect ratio. It will only resize if + the video is of higher resolution. For example, + a 1920x1080 input would be scaled to 640x360 before + processing. Switching to StandardDefinition will + reduce the time it takes to process high resolution + video. It may also reduce the cost of using this + component (see https://azure.microsoft.com/en-us/pricing/details/media-services/#analytics + for details). However, faces that end up being too + small in the resized video may not be detected. + Default to SourceResolution. + type: string + blurType: + description: Specifies the type of blur to apply to + faces in the output video. Possible values are Black, + Box, High, Low,and Med. + type: string + experimentalOptions: + additionalProperties: + type: string + description: Dictionary containing key value pairs + for parameters not exposed in the preset itself. + type: object + faceRedactorMode: + description: 'This mode provides the ability to choose + between the following settings: 1) Analyze - For + detection only. This mode generates a metadata JSON + file marking appearances of faces throughout the + video. Where possible, appearances of the same person + are assigned the same ID. 2) Combined - Additionally + redacts(blurs) detected faces. 3) Redact - This + enables a 2-pass process, allowing for selective + redaction of a subset of detected faces. It takes + in the metadata file from a prior analyze pass, + along with the source video, and a user-selected + subset of IDs that require redaction. Default to + Analyze.' + type: string + type: object + type: array + onErrorAction: + description: A Transform can define more than one outputs. + This property defines what the service should do when + one output fails - either continue to produce other outputs, + or, stop the other outputs. The overall Job state will + not reflect failures of outputs that are specified with + ContinueJob. Possible values are StopProcessingJob or + ContinueJob. The default is StopProcessingJob. + type: string + relativePriority: + description: Sets the relative priority of the TransformOutputs + within a Transform. This sets the priority that the service + uses for processing Transform Outputs. Possible values + are High, Normal or Low. Defaults to Normal. + type: string + videoAnalyzerPreset: + description: A video_analyzer_preset block as defined below. + items: + properties: + audioAnalysisMode: + description: Possible values are Basic or Standard. + Determines the set of audio analysis operations + to be performed. Default to Standard. + type: string + audioLanguage: + description: 'The language for the audio payload in + the input using the BCP-47 format of ''language + tag-region'' (e.g: ''en-US''). If you know the language + of your content, it is recommended that you specify + it. The language must be specified explicitly for + AudioAnalysisMode:Basic, since automatic language + detection is not included in basic mode. If the + language isn''t specified, automatic language detection + will choose the first language detected and process + with the selected language for the duration of the + file. It does not currently support dynamically + switching between languages after the first language + is detected. The automatic detection works best + with audio recordings with clearly discernible speech. + If automatic detection fails to find the language, + transcription would fall back to en-US. The list + of supported languages is available here: https://go.microsoft.com/fwlink/?linkid=2109463.' + type: string + experimentalOptions: + additionalProperties: + type: string + description: Dictionary containing key value pairs + for parameters not exposed in the preset itself. + type: object + insightsType: + description: Defines the type of insights that you + want the service to generate. The allowed values + are AudioInsightsOnly, VideoInsightsOnly, and AllInsights. + If you set this to AllInsights and the input is + audio only, then only audio insights are generated. + Similarly, if the input is video only, then only + video insights are generated. It is recommended + that you not use AudioInsightsOnly if you expect + some of your inputs to be video only; or use VideoInsightsOnly + if you expect some of your inputs to be audio only. + Your Jobs in such conditions would error out. Default + to AllInsights. + type: string + type: object + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/mixedreality.azure.upbound.io_spatialanchorsaccounts.yaml b/package/crds/mixedreality.azure.upbound.io_spatialanchorsaccounts.yaml index c1e5b1fe1..ce6fbdc59 100644 --- a/package/crds/mixedreality.azure.upbound.io_spatialanchorsaccounts.yaml +++ b/package/crds/mixedreality.azure.upbound.io_spatialanchorsaccounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: spatialanchorsaccounts.mixedreality.azure.upbound.io spec: group: mixedreality.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,55 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,7 +379,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SpatialAnchorsAccountStatus defines the observed state of SpatialAnchorsAccount. diff --git a/package/crds/netapp.azure.upbound.io_accounts.yaml b/package/crds/netapp.azure.upbound.io_accounts.yaml index 7977d3b9b..89a20775a 100644 --- a/package/crds/netapp.azure.upbound.io_accounts.yaml +++ b/package/crds/netapp.azure.upbound.io_accounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accounts.netapp.azure.upbound.io spec: group: netapp.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -111,11 +110,7 @@ spec: description: The Username of Active Directory Domain Administrator. type: string required: - - dnsServers - - domain - passwordSecretRef - - smbServerName - - username type: object type: array location: @@ -208,21 +203,82 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + activeDirectory: + description: A active_directory block as defined below. + items: + properties: + dnsServers: + description: A list of DNS server IP addresses for the Active + Directory domain. Only allows IPv4 address. + items: + type: string + type: array + domain: + description: The name of the Active Directory domain. + type: string + organizationalUnit: + description: The Organizational Unit (OU) within the Active + Directory Domain. + type: string + smbServerName: + description: The NetBIOS name which should be used for the + NetApp SMB Server, which will be registered as a computer + account in the AD and used to mount volumes. + type: string + username: + description: The Username of Active Directory Domain Administrator. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -396,7 +452,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: AccountStatus defines the observed state of Account. properties: diff --git a/package/crds/netapp.azure.upbound.io_pools.yaml b/package/crds/netapp.azure.upbound.io_pools.yaml index c54bd6280..bb58a1781 100644 --- a/package/crds/netapp.azure.upbound.io_pools.yaml +++ b/package/crds/netapp.azure.upbound.io_pools.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: pools.netapp.azure.upbound.io spec: group: netapp.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -249,21 +248,68 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + qosType: + description: QoS Type of the pool. Valid values include Auto or + Manual. + type: string + serviceLevel: + description: The service level of the file system. Valid values + include Premium, Standard, or Ultra. Changing this forces a + new resource to be created. + type: string + sizeInTb: + description: Provisioned size of the pool in TB. Value must be + between 4 and 500. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -437,11 +483,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: serviceLevel is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serviceLevel) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serviceLevel) + || has(self.initProvider.serviceLevel)' - message: sizeInTb is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sizeInTb) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sizeInTb) + || has(self.initProvider.sizeInTb)' status: description: PoolStatus defines the observed state of Pool. properties: diff --git a/package/crds/netapp.azure.upbound.io_snapshotpolicies.yaml b/package/crds/netapp.azure.upbound.io_snapshotpolicies.yaml index 0489cf987..85de74258 100644 --- a/package/crds/netapp.azure.upbound.io_snapshotpolicies.yaml +++ b/package/crds/netapp.azure.upbound.io_snapshotpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: snapshotpolicies.netapp.azure.upbound.io spec: group: netapp.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -163,10 +162,6 @@ spec: description: How many hourly snapshots to keep, valid range is from 0 to 255. type: number - required: - - hour - - minute - - snapshotsToKeep type: object type: array enabled: @@ -186,9 +181,6 @@ spec: description: How many hourly snapshots to keep, valid range is from 0 to 255. type: number - required: - - minute - - snapshotsToKeep type: object type: array location: @@ -218,11 +210,6 @@ spec: description: How many hourly snapshots to keep, valid range is from 0 to 255. type: number - required: - - daysOfMonth - - hour - - minute - - snapshotsToKeep type: object type: array resourceGroupName: @@ -333,29 +320,146 @@ spec: description: How many hourly snapshots to keep, valid range is from 0 to 255. type: number - required: - - daysOfWeek - - hour - - minute - - snapshotsToKeep type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dailySchedule: + description: Sets a daily snapshot schedule. See details in below + daily_schedule block. + items: + properties: + hour: + description: Hour of the day that the snapshots will be + created, valid range is from 0 to 23. + type: number + minute: + description: Minute of the hour that the snapshots will + be created, valid range is from 0 to 59. + type: number + snapshotsToKeep: + description: How many hourly snapshots to keep, valid range + is from 0 to 255. + type: number + type: object + type: array + enabled: + description: Defines that the NetApp Snapshot Policy is enabled + or not. + type: boolean + hourlySchedule: + description: Sets an hourly snapshot schedule. See details in + below hourly_schedule block. + items: + properties: + minute: + description: Minute of the hour that the snapshots will + be created, valid range is from 0 to 59. + type: number + snapshotsToKeep: + description: How many hourly snapshots to keep, valid range + is from 0 to 255. + type: number + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + monthlySchedule: + description: Sets a monthly snapshot schedule. See details in + below monthly_schedule block. + items: + properties: + daysOfMonth: + description: List of the days of the month when the snapshots + will be created, valid range is from 1 to 30. + items: + type: number + type: array + hour: + description: Hour of the day that the snapshots will be + created, valid range is from 0 to 23. + type: number + minute: + description: Minute of the hour that the snapshots will + be created, valid range is from 0 to 59. + type: number + snapshotsToKeep: + description: How many hourly snapshots to keep, valid range + is from 0 to 255. + type: number + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + weeklySchedule: + description: Sets a weekly snapshot schedule. See details in below + weekly_schedule block. + items: + properties: + daysOfWeek: + description: List of the week days using English names when + the snapshots will be created. + items: + type: string + type: array + hour: + description: Hour of the day that the snapshots will be + created, valid range is from 0 to 23. + type: number + minute: + description: Minute of the hour that the snapshots will + be created, valid range is from 0 to 59. + type: number + snapshotsToKeep: + description: How many hourly snapshots to keep, valid range + is from 0 to 255. + type: number + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -529,9 +633,13 @@ spec: type: object x-kubernetes-validations: - message: enabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.enabled) + || has(self.initProvider.enabled)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SnapshotPolicyStatus defines the observed state of SnapshotPolicy. properties: diff --git a/package/crds/netapp.azure.upbound.io_snapshots.yaml b/package/crds/netapp.azure.upbound.io_snapshots.yaml index 2351e427c..2c906dc40 100644 --- a/package/crds/netapp.azure.upbound.io_snapshots.yaml +++ b/package/crds/netapp.azure.upbound.io_snapshots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: snapshots.netapp.azure.upbound.io spec: group: netapp.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -387,21 +386,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -575,7 +603,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SnapshotStatus defines the observed state of Snapshot. properties: diff --git a/package/crds/netapp.azure.upbound.io_volumes.yaml b/package/crds/netapp.azure.upbound.io_volumes.yaml index 42516d8a5..16ada4b33 100644 --- a/package/crds/netapp.azure.upbound.io_volumes.yaml +++ b/package/crds/netapp.azure.upbound.io_volumes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: volumes.netapp.azure.upbound.io spec: group: netapp.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -326,9 +325,6 @@ spec: description: Replication frequency, supported values are '10minutes', 'hourly', 'daily', values are case sensitive. type: string - required: - - remoteVolumeLocation - - replicationFrequency type: object type: array dataProtectionSnapshotPolicy: @@ -447,9 +443,6 @@ spec: unixReadWrite: description: Is the file system on unix read and write? type: boolean - required: - - allowedClients - - ruleIndex type: object type: array location: @@ -753,21 +746,171 @@ spec: NetApp Files. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + azureVmwareDataStoreEnabled: + description: Is the NetApp Volume enabled for Azure VMware Solution + (AVS) datastore purpose. Defaults to false. Changing this forces + a new resource to be created. + type: boolean + dataProtectionReplication: + description: A data_protection_replication block as defined below. + Changing this forces a new resource to be created. + items: + properties: + endpointType: + description: The endpoint type, default value is dst for + destination. + type: string + remoteVolumeLocation: + description: Location of the primary volume. Changing this + forces a new resource to be created. + type: string + replicationFrequency: + description: Replication frequency, supported values are + '10minutes', 'hourly', 'daily', values are case sensitive. + type: string + type: object + type: array + dataProtectionSnapshotPolicy: + description: A data_protection_snapshot_policy block as defined + below. + items: + type: object + type: array + exportPolicyRule: + description: One or more export_policy_rule block defined below. + items: + properties: + allowedClients: + description: A list of allowed clients IPv4 addresses. + items: + type: string + type: array + protocolsEnabled: + description: 'A list of allowed protocols. Valid values + include CIFS, NFSv3, or NFSv4.1. Only one value is supported + at this time. This replaces the previous arguments: cifs_enabled, + nfsv3_enabled and nfsv4_enabled.' + items: + type: string + type: array + rootAccessEnabled: + description: Is root access permitted to this volume? + type: boolean + ruleIndex: + description: The index number of the rule. + type: number + unixReadOnly: + description: Is the file system on unix read only? + type: boolean + unixReadWrite: + description: Is the file system on unix read and write? + type: boolean + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + networkFeatures: + description: Indicates which network feature to use, accepted + values are Basic or Standard, it defaults to Basic if not defined. + This is a feature in public preview and for more information + about it and how to register, please refer to Configure network + features for an Azure NetApp Files volume. Changing this forces + a new resource to be created. + type: string + protocols: + description: The target volume protocol expressed as a list. Supported + single value include CIFS, NFSv3, or NFSv4.1. If argument is + not defined it will default to NFSv3. Changing this forces a + new resource to be created and data will be lost. Dual protocol + scenario is supported for CIFS and NFSv3, for more information, + please refer to Create a dual-protocol volume for Azure NetApp + Files document. + items: + type: string + type: array + securityStyle: + description: Volume security style, accepted values are Unix or + Ntfs. If not provided, single-protocol volume is created defaulting + to Unix if it is NFSv3 or NFSv4.1 volume, if CIFS, it will default + to Ntfs. In a dual-protocol volume, if not provided, its value + will be Ntfs. Changing this forces a new resource to be created. + type: string + serviceLevel: + description: The target performance of the file system. Valid + values include Premium, Standard, or Ultra. Changing this forces + a new resource to be created. + type: string + snapshotDirectoryVisible: + description: Specifies whether the .snapshot (NFS clients) or + ~snapshot (SMB clients) path of a volume is visible, default + value is true. + type: boolean + storageQuotaInGb: + description: The maximum Storage Quota allowed for a file system + in Gigabytes. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + throughputInMibps: + description: Throughput of this volume in Mibps. + type: number + volumePath: + description: A unique file path for the volume. Used when creating + mount targets. Changing this forces a new resource to be created. + type: string + zone: + description: Specifies the Availability Zone in which the Volume + should be located. Possible values are 1, 2 and 3. Changing + this forces a new resource to be created. This feature is currently + in preview, for more information on how to enable it, please + refer to Manage availability zone volume placement for Azure + NetApp Files. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -941,13 +1084,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: serviceLevel is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serviceLevel) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serviceLevel) + || has(self.initProvider.serviceLevel)' - message: storageQuotaInGb is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageQuotaInGb) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageQuotaInGb) + || has(self.initProvider.storageQuotaInGb)' - message: volumePath is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.volumePath) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.volumePath) + || has(self.initProvider.volumePath)' status: description: VolumeStatus defines the observed state of Volume. properties: diff --git a/package/crds/network.azure.upbound.io_applicationgateways.yaml b/package/crds/network.azure.upbound.io_applicationgateways.yaml index b101f870a..fedcaf63a 100644 --- a/package/crds/network.azure.upbound.io_applicationgateways.yaml +++ b/package/crds/network.azure.upbound.io_applicationgateways.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationgateways.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -97,7 +96,6 @@ spec: type: string required: - dataSecretRef - - name type: object type: array autoscaleConfiguration: @@ -112,8 +110,6 @@ spec: description: Minimum capacity for autoscaling. Accepted values are in the range 0 to 100. type: number - required: - - minCapacity type: object type: array backendAddressPool: @@ -136,8 +132,6 @@ spec: name: description: The name of the Backend Address Pool. type: string - required: - - name type: object type: array backendHttpSettings: @@ -156,8 +150,6 @@ spec: name: description: The Name of the URL Path Map. type: string - required: - - name type: object type: array connectionDraining: @@ -172,9 +164,6 @@ spec: enabled: description: Is the Web Application Firewall enabled? type: boolean - required: - - drainTimeoutSec - - enabled type: object type: array cookieBasedAffinity: @@ -217,11 +206,6 @@ spec: items: type: string type: array - required: - - cookieBasedAffinity - - name - - port - - protocol type: object type: array customErrorConfiguration: @@ -237,9 +221,6 @@ spec: description: Status code of the application gateway customer error. Possible values are HttpStatus403 and HttpStatus502 type: string - required: - - customErrorPageUrl - - statusCode type: object type: array enableHttp2: @@ -438,8 +419,6 @@ spec: type: string type: object type: object - required: - - name type: object type: array frontendPort: @@ -452,9 +431,6 @@ spec: port: description: The port used for this Frontend Port. type: number - required: - - name - - port type: object type: array gatewayIpConfiguration: @@ -547,8 +523,6 @@ spec: type: string type: object type: object - required: - - name type: object type: array global: @@ -563,9 +537,6 @@ spec: description: Whether Application Gateway's Response buffer is enabled. type: boolean - required: - - requestBufferingEnabled - - responseBufferingEnabled type: object type: array httpListener: @@ -585,9 +556,6 @@ spec: description: A list of allowed status codes for this Health Probe. type: string - required: - - customErrorPageUrl - - statusCode type: object type: array firewallPolicyId: @@ -632,11 +600,6 @@ spec: description: The name of the associated SSL Profile which should be used for this HTTP Listener. type: string - required: - - frontendIpConfigurationName - - frontendPortName - - name - - protocol type: object type: array identity: @@ -654,9 +617,6 @@ spec: that should be configured on this Application Gateway. Only possible value is UserAssigned. type: string - required: - - identityIds - - type type: object type: array location: @@ -769,18 +729,11 @@ spec: type: string type: object type: object - required: - - name - - primary - - privateIpAddressAllocation type: object type: array name: description: The name of the private link configuration. type: string - required: - - ipConfiguration - - name type: object type: array probe: @@ -813,8 +766,6 @@ spec: items: type: string type: array - required: - - statusCode type: object type: array minimumServers: @@ -853,13 +804,6 @@ spec: before a node is deemed unhealthy. Possible values are from 1 to 20. type: number - required: - - interval - - name - - path - - protocol - - timeout - - unhealthyThreshold type: object type: array redirectConfiguration: @@ -890,9 +834,6 @@ spec: description: The Url to redirect the request to. Cannot be set if target_listener_name is set. type: string - required: - - name - - redirectType type: object type: array requestRoutingRule: @@ -940,10 +881,6 @@ spec: description: The Name of the URL Path Map which should be associated with this Routing Rule. type: string - required: - - httpListenerName - - name - - ruleType type: object type: array resourceGroupName: @@ -1060,9 +997,6 @@ spec: variable: description: The variable of the condition. type: string - required: - - pattern - - variable type: object type: array name: @@ -1081,9 +1015,6 @@ spec: To delete a response header set this property to an empty string. type: string - required: - - headerName - - headerValue type: object type: array responseHeaderConfiguration: @@ -1099,9 +1030,6 @@ spec: To delete a response header set this property to an empty string. type: string - required: - - headerName - - headerValue type: object type: array ruleSequence: @@ -1131,13 +1059,8 @@ spec: type: boolean type: object type: array - required: - - name - - ruleSequence type: object type: array - required: - - name type: object type: array sku: @@ -1161,9 +1084,6 @@ spec: Gateway. Possible values are Standard, Standard_v2, WAF and WAF_v2. type: string - required: - - name - - tier type: object type: array sslCertificate: @@ -1216,8 +1136,6 @@ spec: - name - namespace type: object - required: - - name type: object type: array sslPolicy: @@ -1331,8 +1249,6 @@ spec: description: Should client certificate issuer DN be verified? Defaults to false. type: boolean - required: - - name type: object type: array tags: @@ -1368,7 +1284,6 @@ spec: type: string required: - dataSecretRef - - name type: object type: array trustedRootCertificate: @@ -1405,8 +1320,6 @@ spec: description: The Name of the Trusted Root Certificate to use. type: string - required: - - name type: object type: array urlPathMap: @@ -1476,14 +1389,8 @@ spec: should be used for this Routing Rule. Only valid for v2 SKUs. type: string - required: - - name - - paths type: object type: array - required: - - name - - pathRule type: object type: array wafConfiguration: @@ -1517,8 +1424,6 @@ spec: items: type: number type: array - required: - - ruleGroupName type: object type: array enabled: @@ -1546,8 +1451,6 @@ spec: EndsWith, Equals, EqualsAny and StartsWith. If empty will exclude all traffic on this match_variable type: string - required: - - matchVariable type: object type: array fileUploadLimitMb: @@ -1576,10 +1479,6 @@ spec: Application Firewall. Possible values are 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2. type: string - required: - - enabled - - firewallMode - - ruleSetVersion type: object type: array zones: @@ -1590,21 +1489,967 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationCertificate: + description: One or more authentication_certificate blocks as + defined below. + items: + properties: + name: + description: The Name of the Authentication Certificate + to use. + type: string + type: object + type: array + autoscaleConfiguration: + description: A autoscale_configuration block as defined below. + items: + properties: + maxCapacity: + description: Maximum capacity for autoscaling. Accepted + values are in the range 2 to 125. + type: number + minCapacity: + description: Minimum capacity for autoscaling. Accepted + values are in the range 0 to 100. + type: number + type: object + type: array + backendAddressPool: + description: One or more backend_address_pool blocks as defined + below. + items: + properties: + fqdns: + description: A list of FQDN's which should be part of the + Backend Address Pool. + items: + type: string + type: array + ipAddresses: + description: A list of IP Addresses which should be part + of the Backend Address Pool. + items: + type: string + type: array + name: + description: The name of the Backend Address Pool. + type: string + type: object + type: array + backendHttpSettings: + description: One or more backend_http_settings blocks as defined + below. + items: + properties: + affinityCookieName: + description: The name of the affinity cookie. + type: string + authenticationCertificate: + description: One or more authentication_certificate blocks + as defined below. + items: + properties: + name: + description: The Name of the URL Path Map. + type: string + type: object + type: array + connectionDraining: + description: A connection_draining block as defined below. + items: + properties: + drainTimeoutSec: + description: The number of seconds connection draining + is active. Acceptable values are from 1 second to + 3600 seconds. + type: number + enabled: + description: Is the Web Application Firewall enabled? + type: boolean + type: object + type: array + cookieBasedAffinity: + description: Is Cookie-Based Affinity enabled? Possible + values are Enabled and Disabled. + type: string + hostName: + description: Host header to be sent to the backend servers. + Cannot be set if pick_host_name_from_backend_address is + set to true. + type: string + name: + description: The name of the Backend HTTP Settings Collection. + type: string + path: + description: The Path which should be used as a prefix for + all HTTP requests. + type: string + pickHostNameFromBackendAddress: + description: Whether host header should be picked from the + host name of the backend server. Defaults to false. + type: boolean + port: + description: The port which should be used for this Backend + HTTP Settings Collection. + type: number + probeName: + description: The name of an associated HTTP Probe. + type: string + protocol: + description: The Protocol which should be used. Possible + values are Http and Https. + type: string + requestTimeout: + description: The request timeout in seconds, which must + be between 1 and 86400 seconds. Defaults to 30. + type: number + trustedRootCertificateNames: + description: A list of trusted_root_certificate names. + items: + type: string + type: array + type: object + type: array + customErrorConfiguration: + description: One or more custom_error_configuration blocks as + defined below. + items: + properties: + customErrorPageUrl: + description: Error page URL of the application gateway customer + error. + type: string + statusCode: + description: Status code of the application gateway customer + error. Possible values are HttpStatus403 and HttpStatus502 + type: string + type: object + type: array + enableHttp2: + description: Is HTTP2 enabled on the application gateway resource? + Defaults to false. + type: boolean + fipsEnabled: + description: Is FIPS enabled on the Application Gateway? + type: boolean + firewallPolicyId: + description: The ID of the Web Application Firewall Policy. + type: string + forceFirewallPolicyAssociation: + description: Is the Firewall Policy associated with the Application + Gateway? + type: boolean + frontendIpConfiguration: + description: One or more frontend_ip_configuration blocks as defined + below. + items: + properties: + name: + description: The name of the Frontend IP Configuration. + type: string + privateIpAddress: + description: The Private IP Address to use for the Application + Gateway. + type: string + privateIpAddressAllocation: + description: The Allocation Method for the Private IP Address. + Possible values are Dynamic and Static. + type: string + privateLinkConfigurationName: + description: The name of the private link configuration + to use for this frontend IP configuration. + type: string + type: object + type: array + frontendPort: + description: One or more frontend_port blocks as defined below. + items: + properties: + name: + description: The name of the Frontend Port. + type: string + port: + description: The port used for this Frontend Port. + type: number + type: object + type: array + gatewayIpConfiguration: + description: One or more gateway_ip_configuration blocks as defined + below. + items: + properties: + name: + description: The Name of this Gateway IP Configuration. + type: string + type: object + type: array + global: + description: A global block as defined below. + items: + properties: + requestBufferingEnabled: + description: Whether Application Gateway's Request buffer + is enabled. + type: boolean + responseBufferingEnabled: + description: Whether Application Gateway's Response buffer + is enabled. + type: boolean + type: object + type: array + httpListener: + description: One or more http_listener blocks as defined below. + items: + properties: + customErrorConfiguration: + description: One or more custom_error_configuration blocks + as defined below. + items: + properties: + customErrorPageUrl: + description: Error page URL of the application gateway + customer error. + type: string + statusCode: + description: A list of allowed status codes for this + Health Probe. + type: string + type: object + type: array + firewallPolicyId: + description: The ID of the Web Application Firewall Policy + which should be used for this HTTP Listener. + type: string + frontendIpConfigurationName: + description: The Name of the Frontend IP Configuration used + for this HTTP Listener. + type: string + frontendPortName: + description: The Name of the Frontend Port use for this + HTTP Listener. + type: string + hostName: + description: The Hostname which should be used for this + HTTP Listener. Setting this value changes Listener Type + to 'Multi site'. + type: string + hostNames: + description: A list of Hostname(s) should be used for this + HTTP Listener. It allows special wildcard characters. + items: + type: string + type: array + name: + description: The Name of the HTTP Listener. + type: string + protocol: + description: The Protocol to use for this HTTP Listener. + Possible values are Http and Https. + type: string + requireSni: + description: Should Server Name Indication be Required? + Defaults to false. + type: boolean + sslCertificateName: + description: The name of the associated SSL Certificate + which should be used for this HTTP Listener. + type: string + sslProfileName: + description: The name of the associated SSL Profile which + should be used for this HTTP Listener. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Application Gateway. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Application Gateway. + Only possible value is UserAssigned. + type: string + type: object + type: array + location: + description: The Azure region where the Application Gateway should + exist. Changing this forces a new resource to be created. + type: string + privateLinkConfiguration: + description: One or more private_link_configuration blocks as + defined below. + items: + properties: + ipConfiguration: + description: One or more ip_configuration blocks as defined + below. + items: + properties: + name: + description: The Name of the URL Path Map. + type: string + primary: + description: Is this the Primary IP Configuration? + type: boolean + privateIpAddress: + description: The Static IP Address which should be + used. + type: string + privateIpAddressAllocation: + description: The allocation method used for the Private + IP Address. Possible values are Dynamic and Static. + type: string + type: object + type: array + name: + description: The name of the private link configuration. + type: string + type: object + type: array + probe: + description: One or more probe blocks as defined below. + items: + properties: + host: + description: The Hostname used for this Probe. If the Application + Gateway is configured for a single site, by default the + Host name should be specified as 127.0.0.1, unless otherwise + configured in custom probe. Cannot be set if pick_host_name_from_backend_http_settings + is set to true. + type: string + interval: + description: The Interval between two consecutive probes + in seconds. Possible values range from 1 second to a maximum + of 86,400 seconds. + type: number + match: + description: A match block as defined above. + items: + properties: + body: + description: A snippet from the Response Body which + must be present in the Response. + type: string + statusCode: + description: A list of allowed status codes for this + Health Probe. + items: + type: string + type: array + type: object + type: array + minimumServers: + description: The minimum number of servers that are always + marked as healthy. Defaults to 0. + type: number + name: + description: The Name of the Probe. + type: string + path: + description: The Path used for this Probe. + type: string + pickHostNameFromBackendHttpSettings: + description: Whether the host header should be picked from + the backend HTTP settings. Defaults to false. + type: boolean + port: + description: Custom port which will be used for probing + the backend servers. The valid value ranges from 1 to + 65535. In case not set, port from HTTP settings will be + used. This property is valid for Standard_v2 and WAF_v2 + only. + type: number + protocol: + description: The Protocol used for this Probe. Possible + values are Http and Https. + type: string + timeout: + description: The Timeout used for this Probe, which indicates + when a probe becomes unhealthy. Possible values range + from 1 second to a maximum of 86,400 seconds. + type: number + unhealthyThreshold: + description: The Unhealthy Threshold for this Probe, which + indicates the amount of retries which should be attempted + before a node is deemed unhealthy. Possible values are + from 1 to 20. + type: number + type: object + type: array + redirectConfiguration: + description: One or more redirect_configuration blocks as defined + below. + items: + properties: + includePath: + description: Whether or not to include the path in the redirected + Url. Defaults to false + type: boolean + includeQueryString: + description: Whether or not to include the query string + in the redirected Url. Default to false + type: boolean + name: + description: Unique name of the redirect configuration block + type: string + redirectType: + description: The type of redirect. Possible values are Permanent, + Temporary, Found and SeeOther + type: string + targetListenerName: + description: The name of the listener to redirect to. Cannot + be set if target_url is set. + type: string + targetUrl: + description: The Url to redirect the request to. Cannot + be set if target_listener_name is set. + type: string + type: object + type: array + requestRoutingRule: + description: One or more request_routing_rule blocks as defined + below. + items: + properties: + backendAddressPoolName: + description: The Name of the Backend Address Pool which + should be used for this Routing Rule. Cannot be set if + redirect_configuration_name is set. + type: string + backendHttpSettingsName: + description: The Name of the Backend HTTP Settings Collection + which should be used for this Routing Rule. Cannot be + set if redirect_configuration_name is set. + type: string + httpListenerName: + description: The Name of the HTTP Listener which should + be used for this Routing Rule. + type: string + name: + description: The Name of this Request Routing Rule. + type: string + priority: + description: Rule evaluation order can be dictated by specifying + an integer value from 1 to 20000 with 1 being the highest + priority and 20000 being the lowest priority. + type: number + redirectConfigurationName: + description: The Name of the Redirect Configuration which + should be used for this Routing Rule. Cannot be set if + either backend_address_pool_name or backend_http_settings_name + is set. + type: string + rewriteRuleSetName: + description: The Name of the Rewrite Rule Set which should + be used for this Routing Rule. Only valid for v2 SKUs. + type: string + ruleType: + description: The Type of Routing that should be used for + this Rule. Possible values are Basic and PathBasedRouting. + type: string + urlPathMapName: + description: The Name of the URL Path Map which should be + associated with this Routing Rule. + type: string + type: object + type: array + rewriteRuleSet: + description: One or more rewrite_rule_set blocks as defined below. + Only valid for v2 SKUs. + items: + properties: + name: + description: Unique name of the rewrite rule set block + type: string + rewriteRule: + description: One or more rewrite_rule blocks as defined + above. + items: + properties: + condition: + description: One or more condition blocks as defined + above. + items: + properties: + ignoreCase: + description: Perform a case in-sensitive comparison. + Defaults to false + type: boolean + negate: + description: Negate the result of the condition + evaluation. Defaults to false + type: boolean + pattern: + description: The pattern, either fixed string + or regular expression, that evaluates the + truthfulness of the condition. + type: string + variable: + description: The variable of the condition. + type: string + type: object + type: array + name: + description: The Name of the URL Path Map. + type: string + requestHeaderConfiguration: + description: One or more request_header_configuration + blocks as defined above. + items: + properties: + headerName: + description: Header name of the header configuration. + type: string + headerValue: + description: Header value of the header configuration. + To delete a response header set this property + to an empty string. + type: string + type: object + type: array + responseHeaderConfiguration: + description: One or more response_header_configuration + blocks as defined above. + items: + properties: + headerName: + description: Header name of the header configuration. + type: string + headerValue: + description: Header value of the header configuration. + To delete a response header set this property + to an empty string. + type: string + type: object + type: array + ruleSequence: + description: Rule sequence of the rewrite rule that + determines the order of execution in a set. + type: number + url: + description: One url block as defined below + items: + properties: + components: + description: The components used to rewrite + the URL. Possible values are path_only and + query_string_only to limit the rewrite to + the URL Path or URL Query String only. + type: string + path: + description: The URL path to rewrite. + type: string + queryString: + description: The query string to rewrite. + type: string + reroute: + description: Whether the URL path map should + be reevaluated after this rewrite has been + applied. More info on rewrite configutation + type: boolean + type: object + type: array + type: object + type: array + type: object + type: array + sku: + description: A sku block as defined below. + items: + properties: + capacity: + description: The Capacity of the SKU to use for this Application + Gateway. When using a V1 SKU this value must be between + 1 and 32, and 1 to 125 for a V2 SKU. This property is + optional if autoscale_configuration is set. + type: number + name: + description: The Name of the SKU to use for this Application + Gateway. Possible values are Standard_Small, Standard_Medium, + Standard_Large, Standard_v2, WAF_Medium, WAF_Large, and + WAF_v2. + type: string + tier: + description: The Tier of the SKU to use for this Application + Gateway. Possible values are Standard, Standard_v2, WAF + and WAF_v2. + type: string + type: object + type: array + sslCertificate: + description: One or more ssl_certificate blocks as defined below. + items: + properties: + keyVaultSecretId: + description: Secret Id of (base-64 encoded unencrypted pfx) + Secret or Certificate object stored in Azure KeyVault. + You need to enable soft delete for keyvault to use this + feature. Required if data is not set. + type: string + name: + description: The Name of the SSL certificate that is unique + within this Application Gateway + type: string + type: object + type: array + sslPolicy: + description: a ssl_policy block as defined below. + items: + properties: + cipherSuites: + description: 'A List of accepted cipher suites. Possible + values are: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, + TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, + TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, + TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, + TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, + TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, + TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, + TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, + TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, + TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, + TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_3DES_EDE_CBC_SHA, + TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, + TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, + TLS_RSA_WITH_AES_256_CBC_SHA256 and TLS_RSA_WITH_AES_256_GCM_SHA384.' + items: + type: string + type: array + disabledProtocols: + description: A list of SSL Protocols which should be disabled + on this Application Gateway. Possible values are TLSv1_0, + TLSv1_1, TLSv1_2 and TLSv1_3. + items: + type: string + type: array + minProtocolVersion: + description: The minimal TLS version. Possible values are + TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + type: string + policyName: + description: The Name of the Policy e.g AppGwSslPolicy20170401S. + Required if policy_type is set to Predefined. Possible + values can change over time and are published here https://docs.microsoft.com/azure/application-gateway/application-gateway-ssl-policy-overview. + Not compatible with disabled_protocols. + type: string + policyType: + description: The Type of the Policy. Possible values are + Predefined, Custom and CustomV2. + type: string + type: object + type: array + sslProfile: + description: One or more ssl_profile blocks as defined below. + items: + properties: + name: + description: The name of the SSL Profile that is unique + within this Application Gateway. + type: string + sslPolicy: + description: a ssl_policy block as defined below. + items: + properties: + cipherSuites: + description: 'A List of accepted cipher suites. Possible + values are: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, + TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, + TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, + TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, + TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, + TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, + TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, + TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, + TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, + TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, + TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_3DES_EDE_CBC_SHA, + TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, + TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, + TLS_RSA_WITH_AES_256_CBC_SHA256 and TLS_RSA_WITH_AES_256_GCM_SHA384.' + items: + type: string + type: array + disabledProtocols: + description: A list of SSL Protocols which should + be disabled on this Application Gateway. Possible + values are TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + items: + type: string + type: array + minProtocolVersion: + description: The minimal TLS version. Possible values + are TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + type: string + policyName: + description: The Name of the Policy e.g AppGwSslPolicy20170401S. + Required if policy_type is set to Predefined. Possible + values can change over time and are published here + https://docs.microsoft.com/azure/application-gateway/application-gateway-ssl-policy-overview. + Not compatible with disabled_protocols. + type: string + policyType: + description: The Type of the Policy. Possible values + are Predefined, Custom and CustomV2. + type: string + type: object + type: array + trustedClientCertificateNames: + description: The name of the Trusted Client Certificate + that will be used to authenticate requests from clients. + items: + type: string + type: array + verifyClientCertIssuerDn: + description: Should client certificate issuer DN be verified? + Defaults to false. + type: boolean + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + trustedClientCertificate: + description: One or more trusted_client_certificate blocks as + defined below. + items: + properties: + name: + description: The name of the Trusted Client Certificate + that is unique within this Application Gateway. + type: string + type: object + type: array + trustedRootCertificate: + description: One or more trusted_root_certificate blocks as defined + below. + items: + properties: + keyVaultSecretId: + description: The Secret ID of (base-64 encoded unencrypted + pfx) Secret or Certificate object stored in Azure KeyVault. + You need to enable soft delete for the Key Vault to use + this feature. Required if data is not set. + type: string + name: + description: The Name of the Trusted Root Certificate to + use. + type: string + type: object + type: array + urlPathMap: + description: One or more url_path_map blocks as defined below. + items: + properties: + defaultBackendAddressPoolName: + description: The Name of the Default Backend Address Pool + which should be used for this URL Path Map. Cannot be + set if default_redirect_configuration_name is set. + type: string + defaultBackendHttpSettingsName: + description: The Name of the Default Backend HTTP Settings + Collection which should be used for this URL Path Map. + Cannot be set if default_redirect_configuration_name is + set. + type: string + defaultRedirectConfigurationName: + description: The Name of the Default Redirect Configuration + which should be used for this URL Path Map. Cannot be + set if either default_backend_address_pool_name or default_backend_http_settings_name + is set. + type: string + defaultRewriteRuleSetName: + description: The Name of the Default Rewrite Rule Set which + should be used for this URL Path Map. Only valid for v2 + SKUs. + type: string + name: + description: The Name of the URL Path Map. + type: string + pathRule: + description: One or more path_rule blocks as defined above. + items: + properties: + backendAddressPoolName: + description: The Name of the Backend Address Pool + which should be used for this Routing Rule. Cannot + be set if redirect_configuration_name is set. + type: string + backendHttpSettingsName: + description: The Name of the Backend HTTP Settings + Collection which should be used for this Routing + Rule. Cannot be set if redirect_configuration_name + is set. + type: string + firewallPolicyId: + description: The ID of the Web Application Firewall + Policy which should be used as a HTTP Listener. + type: string + name: + description: The Name of the URL Path Map. + type: string + paths: + description: A list of Paths used in this Path Rule. + items: + type: string + type: array + redirectConfigurationName: + description: The Name of the Redirect Configuration + which should be used for this Routing Rule. Cannot + be set if either backend_address_pool_name or backend_http_settings_name + is set. + type: string + rewriteRuleSetName: + description: The Name of the Rewrite Rule Set which + should be used for this Routing Rule. Only valid + for v2 SKUs. + type: string + type: object + type: array + type: object + type: array + wafConfiguration: + description: A waf_configuration block as defined below. + items: + properties: + disabledRuleGroup: + description: one or more disabled_rule_group blocks as defined + below. + items: + properties: + ruleGroupName: + description: The rule group where specific rules should + be disabled. Possible values are BadBots, crs_20_protocol_violations, + crs_21_protocol_anomalies, crs_23_request_limits, + crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, + crs_41_sql_injection_attacks, crs_41_xss_attacks, + crs_42_tight_security, crs_45_trojans, General, + GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, + REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, + REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, + REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, + REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, + REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, + REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. + type: string + rules: + description: A list of rules which should be disabled + in that group. Disables all rules in the specified + group if rules is not specified. + items: + type: number + type: array + type: object + type: array + enabled: + description: Is the Web Application Firewall enabled? + type: boolean + exclusion: + description: one or more exclusion blocks as defined below. + items: + properties: + matchVariable: + description: Match variable of the exclusion rule + to exclude header, cookie or GET arguments. Possible + values are RequestArgKeys, RequestArgNames, RequestArgValues, + RequestCookieKeys, RequestCookieNames, RequestCookieValues, + RequestHeaderKeys, RequestHeaderNames and RequestHeaderValues + type: string + selector: + description: String value which will be used for the + filter operation. If empty will exclude all traffic + on this match_variable + type: string + selectorMatchOperator: + description: Operator which will be used to search + in the variable content. Possible values are Contains, + EndsWith, Equals, EqualsAny and StartsWith. If empty + will exclude all traffic on this match_variable + type: string + type: object + type: array + fileUploadLimitMb: + description: The File Upload Limit in MB. Accepted values + are in the range 1MB to 750MB for the WAF_v2 SKU, and + 1MB to 500MB for all other SKUs. Defaults to 100MB. + type: number + firewallMode: + description: The Web Application Firewall Mode. Possible + values are Detection and Prevention. + type: string + maxRequestBodySizeKb: + description: The Maximum Request Body Size in KB. Accepted + values are in the range 1KB to 128KB. Defaults to 128KB. + type: number + requestBodyCheck: + description: Is Request Body Inspection enabled? Defaults + to true. + type: boolean + ruleSetType: + description: The Type of the Rule Set used for this Web + Application Firewall. Possible values are OWASP and Microsoft_BotManagerRuleSet. + type: string + ruleSetVersion: + description: The Version of the Rule Set used for this Web + Application Firewall. Possible values are 0.1, 1.0, 2.2.9, + 3.0, 3.1 and 3.2. + type: string + type: object + type: array + zones: + description: Specifies a list of Availability Zones in which this + Application Gateway should be located. Changing this forces + a new Application Gateway to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1778,23 +2623,41 @@ spec: type: object x-kubernetes-validations: - message: backendAddressPool is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendAddressPool) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backendAddressPool) + || has(self.initProvider.backendAddressPool)' - message: backendHttpSettings is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendHttpSettings) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backendHttpSettings) + || has(self.initProvider.backendHttpSettings)' - message: frontendIpConfiguration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendIpConfiguration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frontendIpConfiguration) + || has(self.initProvider.frontendIpConfiguration)' - message: frontendPort is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendPort) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frontendPort) + || has(self.initProvider.frontendPort)' - message: gatewayIpConfiguration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.gatewayIpConfiguration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.gatewayIpConfiguration) + || has(self.initProvider.gatewayIpConfiguration)' - message: httpListener is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.httpListener) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.httpListener) + || has(self.initProvider.httpListener)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: requestRoutingRule is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.requestRoutingRule) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.requestRoutingRule) + || has(self.initProvider.requestRoutingRule)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: ApplicationGatewayStatus defines the observed state of ApplicationGateway. properties: diff --git a/package/crds/network.azure.upbound.io_applicationsecuritygroups.yaml b/package/crds/network.azure.upbound.io_applicationsecuritygroups.yaml index 838280e23..f5d86a742 100644 --- a/package/crds/network.azure.upbound.io_applicationsecuritygroups.yaml +++ b/package/crds/network.azure.upbound.io_applicationsecuritygroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: applicationsecuritygroups.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -159,21 +158,55 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -347,7 +380,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ApplicationSecurityGroupStatus defines the observed state of ApplicationSecurityGroup. diff --git a/package/crds/network.azure.upbound.io_connectionmonitors.yaml b/package/crds/network.azure.upbound.io_connectionmonitors.yaml index cdeff5782..f673f1f2c 100644 --- a/package/crds/network.azure.upbound.io_connectionmonitors.yaml +++ b/package/crds/network.azure.upbound.io_connectionmonitors.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: connectionmonitors.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -132,8 +131,6 @@ spec: Monitor. Possible values are AzureSubnet, AzureVM, AzureVNet, ExternalAddress, MMAWorkspaceMachine and MMAWorkspaceNetwork. type: string - required: - - name type: object type: array location: @@ -267,9 +264,6 @@ spec: value: description: The value of the HTTP header. type: string - required: - - name - - value type: object type: array validStatusCodeRanges: @@ -331,17 +325,12 @@ spec: description: Should path evaluation with trace route be enabled? Defaults to true. type: boolean - required: - - port type: object type: array testFrequencyInSeconds: description: The time interval in seconds at which the test evaluation will happen. Defaults to 60. type: number - required: - - name - - protocol type: object type: array testGroup: @@ -371,29 +360,267 @@ spec: items: type: string type: array - required: - - destinationEndpoints - - name - - sourceEndpoints - - testConfigurationNames type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endpoint: + description: A endpoint block as defined below. + items: + properties: + address: + description: The IP address or domain name of the Network + Connection Monitor endpoint. + type: string + coverageLevel: + description: The test coverage for the Network Connection + Monitor endpoint. Possible values are AboveAverage, Average, + BelowAverage, Default, Full and Low. + type: string + excludedIpAddresses: + description: A list of IPv4/IPv6 subnet masks or IPv4/IPv6 + IP addresses to be excluded to the Network Connection + Monitor endpoint. + items: + type: string + type: array + filter: + description: A filter block as defined below. + items: + properties: + item: + description: A item block as defined below. + items: + properties: + address: + description: The address of the filter item. + type: string + type: + description: The type of items included in the + filter. Possible values are AgentAddress. + Defaults to AgentAddress. + type: string + type: object + type: array + type: + description: The type of items included in the filter. + Possible values are AgentAddress. Defaults to AgentAddress. + type: string + type: object + type: array + includedIpAddresses: + description: A list of IPv4/IPv6 subnet masks or IPv4/IPv6 + IP addresses to be included to the Network Connection + Monitor endpoint. + items: + type: string + type: array + name: + description: The name of the endpoint for the Network Connection + Monitor . + type: string + targetResourceId: + description: The resource ID which is used as the endpoint + by the Network Connection Monitor. + type: string + targetResourceType: + description: The endpoint type of the Network Connection + Monitor. Possible values are AzureSubnet, AzureVM, AzureVNet, + ExternalAddress, MMAWorkspaceMachine and MMAWorkspaceNetwork. + type: string + type: object + type: array + location: + description: The Azure Region where the Network Connection Monitor + should exist. Changing this forces a new resource to be created. + type: string + notes: + description: The description of the Network Connection Monitor. + type: string + outputWorkspaceResourceIds: + description: A list of IDs of the Log Analytics Workspace which + will accept the output from the Network Connection Monitor. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Network Connection Monitor. + type: object + testConfiguration: + description: A test_configuration block as defined below. + items: + properties: + httpConfiguration: + description: A http_configuration block as defined below. + items: + properties: + method: + description: The HTTP method for the HTTP request. + Possible values are Get and Post. Defaults to Get. + type: string + path: + description: The path component of the URI. It only + accepts the absolute path. + type: string + port: + description: The port for the TCP connection. + type: number + preferHttps: + description: Should HTTPS be preferred over HTTP in + cases where the choice is not explicit? Defaults + to false. + type: boolean + requestHeader: + description: A request_header block as defined below. + items: + properties: + name: + description: The name of the test group for + the Network Connection Monitor. + type: string + value: + description: The value of the HTTP header. + type: string + type: object + type: array + validStatusCodeRanges: + description: The HTTP status codes to consider successful. + For instance, 2xx, 301-304 and 418. + items: + type: string + type: array + type: object + type: array + icmpConfiguration: + description: A icmp_configuration block as defined below. + items: + properties: + traceRouteEnabled: + description: Should path evaluation with trace route + be enabled? Defaults to true. + type: boolean + type: object + type: array + name: + description: The name of test configuration for the Network + Connection Monitor. + type: string + preferredIpVersion: + description: The preferred IP version which is used in the + test evaluation. Possible values are IPv4 and IPv6. + type: string + protocol: + description: The protocol used to evaluate tests. Possible + values are Tcp, Http and Icmp. + type: string + successThreshold: + description: A success_threshold block as defined below. + items: + properties: + checksFailedPercent: + description: The maximum percentage of failed checks + permitted for a test to be successful. + type: number + roundTripTimeMs: + description: The maximum round-trip time in milliseconds + permitted for a test to be successful. + type: number + type: object + type: array + tcpConfiguration: + description: A tcp_configuration block as defined below. + items: + properties: + destinationPortBehavior: + description: The destination port behavior for the + TCP connection. Possible values are None and ListenIfAvailable. + type: string + port: + description: The port for the TCP connection. + type: number + traceRouteEnabled: + description: Should path evaluation with trace route + be enabled? Defaults to true. + type: boolean + type: object + type: array + testFrequencyInSeconds: + description: The time interval in seconds at which the test + evaluation will happen. Defaults to 60. + type: number + type: object + type: array + testGroup: + description: A test_group block as defined below. + items: + properties: + destinationEndpoints: + description: A list of destination endpoint names. + items: + type: string + type: array + enabled: + description: Should the test group be enabled? Defaults + to true. + type: boolean + name: + description: The name of the test group for the Network + Connection Monitor. + type: string + sourceEndpoints: + description: A list of source endpoint names. + items: + type: string + type: array + testConfigurationNames: + description: A list of test configuration names. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -567,13 +794,21 @@ spec: type: object x-kubernetes-validations: - message: endpoint is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endpoint) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endpoint) + || has(self.initProvider.endpoint)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: testConfiguration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.testConfiguration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.testConfiguration) + || has(self.initProvider.testConfiguration)' - message: testGroup is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.testGroup) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.testGroup) + || has(self.initProvider.testGroup)' status: description: ConnectionMonitorStatus defines the observed state of ConnectionMonitor. properties: diff --git a/package/crds/network.azure.upbound.io_ddosprotectionplans.yaml b/package/crds/network.azure.upbound.io_ddosprotectionplans.yaml index 3ba3ea74d..964b6dfba 100644 --- a/package/crds/network.azure.upbound.io_ddosprotectionplans.yaml +++ b/package/crds/network.azure.upbound.io_ddosprotectionplans.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: ddosprotectionplans.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -157,21 +156,55 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -345,7 +378,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: DDoSProtectionPlanStatus defines the observed state of DDoSProtectionPlan. properties: diff --git a/package/crds/network.azure.upbound.io_dnsaaaarecords.yaml b/package/crds/network.azure.upbound.io_dnsaaaarecords.yaml index e30a97837..77f4c6006 100644 --- a/package/crds/network.azure.upbound.io_dnsaaaarecords.yaml +++ b/package/crds/network.azure.upbound.io_dnsaaaarecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dnsaaaarecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -316,21 +315,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + records: + description: List of IPv6 Addresses. Conflicts with target_resource_id. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -504,7 +541,9 @@ spec: type: object x-kubernetes-validations: - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: DNSAAAARecordStatus defines the observed state of DNSAAAARecord. properties: diff --git a/package/crds/network.azure.upbound.io_dnsarecords.yaml b/package/crds/network.azure.upbound.io_dnsarecords.yaml index 379faa729..0e66b710f 100644 --- a/package/crds/network.azure.upbound.io_dnsarecords.yaml +++ b/package/crds/network.azure.upbound.io_dnsarecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dnsarecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -316,21 +315,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + records: + description: List of IPv4 Addresses. Conflicts with target_resource_id. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -504,7 +541,9 @@ spec: type: object x-kubernetes-validations: - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: DNSARecordStatus defines the observed state of DNSARecord. properties: diff --git a/package/crds/network.azure.upbound.io_dnscaarecords.yaml b/package/crds/network.azure.upbound.io_dnscaarecords.yaml index ea053e65b..08f0b8488 100644 --- a/package/crds/network.azure.upbound.io_dnscaarecords.yaml +++ b/package/crds/network.azure.upbound.io_dnscaarecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dnscaarecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -84,10 +83,6 @@ spec: value: description: A property value such as a registrar domain. type: string - required: - - flags - - tag - - value type: object type: array resourceGroupName: @@ -256,21 +251,72 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + record: + description: A list of values that make up the CAA record. Each + record block supports fields documented below. + items: + properties: + flags: + description: Extensible CAA flags, currently only 1 is implemented + to set the issuer critical flag. + type: number + tag: + description: A property tag, options are issue, issuewild + and iodef. + type: string + value: + description: A property value such as a registrar domain. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -444,9 +490,13 @@ spec: type: object x-kubernetes-validations: - message: record is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.record) + || has(self.initProvider.record)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: DNSCAARecordStatus defines the observed state of DNSCAARecord. properties: diff --git a/package/crds/network.azure.upbound.io_dnscnamerecords.yaml b/package/crds/network.azure.upbound.io_dnscnamerecords.yaml index df98427da..c67410fc3 100644 --- a/package/crds/network.azure.upbound.io_dnscnamerecords.yaml +++ b/package/crds/network.azure.upbound.io_dnscnamerecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dnscnamerecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -316,21 +315,57 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + record: + description: The target of the CNAME. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -504,7 +539,9 @@ spec: type: object x-kubernetes-validations: - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: DNSCNAMERecordStatus defines the observed state of DNSCNAMERecord. properties: diff --git a/package/crds/network.azure.upbound.io_dnsmxrecords.yaml b/package/crds/network.azure.upbound.io_dnsmxrecords.yaml index d9c11290f..b920686f5 100644 --- a/package/crds/network.azure.upbound.io_dnsmxrecords.yaml +++ b/package/crds/network.azure.upbound.io_dnsmxrecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dnsmxrecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,9 +81,6 @@ spec: of the MX records. Records with lower preference value take priority. type: string - required: - - exchange - - preference type: object type: array resourceGroupName: @@ -253,21 +249,70 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + record: + description: A list of values that make up the MX record. Each + record block supports fields documented below. + items: + properties: + exchange: + description: The mail server responsible for the domain + covered by the MX record. + type: string + preference: + description: String representing the "preference” value + of the MX records. Records with lower preference value + take priority. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -441,9 +486,13 @@ spec: type: object x-kubernetes-validations: - message: record is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.record) + || has(self.initProvider.record)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: DNSMXRecordStatus defines the observed state of DNSMXRecord. properties: diff --git a/package/crds/network.azure.upbound.io_dnsnsrecords.yaml b/package/crds/network.azure.upbound.io_dnsnsrecords.yaml index a81bfe14b..c7f5cc786 100644 --- a/package/crds/network.azure.upbound.io_dnsnsrecords.yaml +++ b/package/crds/network.azure.upbound.io_dnsnsrecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dnsnsrecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -239,21 +238,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + records: + description: A list of values that make up the NS record. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -427,9 +464,13 @@ spec: type: object x-kubernetes-validations: - message: records is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.records) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.records) + || has(self.initProvider.records)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: DNSNSRecordStatus defines the observed state of DNSNSRecord. properties: diff --git a/package/crds/network.azure.upbound.io_dnsptrrecords.yaml b/package/crds/network.azure.upbound.io_dnsptrrecords.yaml index 494003cea..fac1fe509 100644 --- a/package/crds/network.azure.upbound.io_dnsptrrecords.yaml +++ b/package/crds/network.azure.upbound.io_dnsptrrecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dnsptrrecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -239,21 +238,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + records: + description: List of Fully Qualified Domain Names. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -427,9 +464,13 @@ spec: type: object x-kubernetes-validations: - message: records is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.records) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.records) + || has(self.initProvider.records)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: DNSPTRRecordStatus defines the observed state of DNSPTRRecord. properties: diff --git a/package/crds/network.azure.upbound.io_dnssrvrecords.yaml b/package/crds/network.azure.upbound.io_dnssrvrecords.yaml index 8e544ac33..ac480146c 100644 --- a/package/crds/network.azure.upbound.io_dnssrvrecords.yaml +++ b/package/crds/network.azure.upbound.io_dnssrvrecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dnssrvrecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -85,11 +84,6 @@ spec: weight: description: Weight of the SRV record. type: number - required: - - port - - priority - - target - - weight type: object type: array resourceGroupName: @@ -258,21 +252,73 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + record: + description: A list of values that make up the SRV record. Each + record block supports fields documented below. + items: + properties: + port: + description: Port the service is listening on. + type: number + priority: + description: Priority of the SRV record. + type: number + target: + description: FQDN of the service. + type: string + weight: + description: Weight of the SRV record. + type: number + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -446,9 +492,13 @@ spec: type: object x-kubernetes-validations: - message: record is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.record) + || has(self.initProvider.record)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: DNSSRVRecordStatus defines the observed state of DNSSRVRecord. properties: diff --git a/package/crds/network.azure.upbound.io_dnstxtrecords.yaml b/package/crds/network.azure.upbound.io_dnstxtrecords.yaml index 39b64162a..b4554eabe 100644 --- a/package/crds/network.azure.upbound.io_dnstxtrecords.yaml +++ b/package/crds/network.azure.upbound.io_dnstxtrecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dnstxtrecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -77,8 +76,6 @@ spec: description: 'The value of the record. Max length: 1024 characters' type: string - required: - - value type: object type: array resourceGroupName: @@ -247,21 +244,65 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + record: + description: A list of values that make up the txt record. Each + record block supports fields documented below. + items: + properties: + value: + description: 'The value of the record. Max length: 1024 + characters' + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -435,9 +476,13 @@ spec: type: object x-kubernetes-validations: - message: record is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.record) + || has(self.initProvider.record)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: DNSTXTRecordStatus defines the observed state of DNSTXTRecord. properties: diff --git a/package/crds/network.azure.upbound.io_dnszones.yaml b/package/crds/network.azure.upbound.io_dnszones.yaml index 7cd4c5b82..e637e8acc 100644 --- a/package/crds/network.azure.upbound.io_dnszones.yaml +++ b/package/crds/network.azure.upbound.io_dnszones.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dnszones.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -188,9 +187,6 @@ spec: description: The Time To Live of the SOA Record in seconds. Defaults to 3600. type: number - required: - - email - - hostName type: object type: array tags: @@ -199,21 +195,95 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + soaRecord: + description: An soa_record block as defined below. Changing this + forces a new resource to be created. + items: + properties: + email: + description: The email contact for the SOA record. + type: string + expireTime: + description: The expire time for the SOA record. Defaults + to 2419200. + type: number + hostName: + description: The domain name of the authoritative name server + for the SOA record. + type: string + minimumTtl: + description: The minimum Time To Live for the SOA record. + By convention, it is used to determine the negative caching + duration. Defaults to 300. + type: number + refreshTime: + description: The refresh time for the SOA record. Defaults + to 3600. + type: number + retryTime: + description: The retry time for the SOA record. Defaults + to 300. + type: number + serialNumber: + description: The serial number for the SOA record. Defaults + to 1. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Record Set. + type: object + ttl: + description: The Time To Live of the SOA Record in seconds. + Defaults to 3600. + type: number + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_expressroutecircuitauthorizations.yaml b/package/crds/network.azure.upbound.io_expressroutecircuitauthorizations.yaml index 18c4a131e..b7731b970 100644 --- a/package/crds/network.azure.upbound.io_expressroutecircuitauthorizations.yaml +++ b/package/crds/network.azure.upbound.io_expressroutecircuitauthorizations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: expressroutecircuitauthorizations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -228,21 +227,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_expressroutecircuitconnections.yaml b/package/crds/network.azure.upbound.io_expressroutecircuitconnections.yaml index a31ebfdb1..b12bef83f 100644 --- a/package/crds/network.azure.upbound.io_expressroutecircuitconnections.yaml +++ b/package/crds/network.azure.upbound.io_expressroutecircuitconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: expressroutecircuitconnections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -257,21 +256,55 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addressPrefixIpv4: + description: The IPv4 address space from which to allocate customer + address for global reach. Changing this forces a new Express + Route Circuit Connection to be created. + type: string + addressPrefixIpv6: + description: The IPv6 address space from which to allocate customer + addresses for global reach. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -445,7 +478,9 @@ spec: type: object x-kubernetes-validations: - message: addressPrefixIpv4 is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.addressPrefixIpv4) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.addressPrefixIpv4) + || has(self.initProvider.addressPrefixIpv4)' status: description: ExpressRouteCircuitConnectionStatus defines the observed state of ExpressRouteCircuitConnection. diff --git a/package/crds/network.azure.upbound.io_expressroutecircuitpeerings.yaml b/package/crds/network.azure.upbound.io_expressroutecircuitpeerings.yaml index ec810f3db..92f4fdf0e 100644 --- a/package/crds/network.azure.upbound.io_expressroutecircuitpeerings.yaml +++ b/package/crds/network.azure.upbound.io_expressroutecircuitpeerings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: expressroutecircuitpeerings.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -195,9 +194,6 @@ spec: secondaryPeerAddressPrefix: description: A subnet for the secondary link. type: string - required: - - primaryPeerAddressPrefix - - secondaryPeerAddressPrefix type: object type: array microsoftPeeringConfig: @@ -226,8 +222,6 @@ spec: number and prefixes are registered. For example: ARIN, RIPE, AFRINIC etc. Defaults to NONE.' type: string - required: - - advertisedPublicPrefixes type: object type: array peerAsn: @@ -347,21 +341,143 @@ spec: description: A valid VLAN ID to establish this peering on. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + ipv4Enabled: + description: A boolean value indicating whether the IPv4 peering + is enabled. Defaults to true. + type: boolean + ipv6: + description: A ipv6 block as defined below. + items: + properties: + enabled: + description: A boolean value indicating whether the IPv6 + peering is enabled. Defaults to true. + type: boolean + microsoftPeering: + description: A microsoft_peering block as defined below. + items: + properties: + advertisedCommunities: + description: The communities of Bgp Peering specified + for microsoft peering. + items: + type: string + type: array + advertisedPublicPrefixes: + description: A list of Advertised Public Prefixes. + items: + type: string + type: array + customerAsn: + description: The CustomerASN of the peering. Defaults + to 0. + type: number + routingRegistryName: + description: 'The Routing Registry against which the + AS number and prefixes are registered. For example: + ARIN, RIPE, AFRINIC etc. Defaults to NONE.' + type: string + type: object + type: array + primaryPeerAddressPrefix: + description: A subnet for the primary link. + type: string + routeFilterId: + description: The ID of the Route Filter. Only available + when peering_type is set to MicrosoftPeering. + type: string + secondaryPeerAddressPrefix: + description: A subnet for the secondary link. + type: string + type: object + type: array + microsoftPeeringConfig: + description: A microsoft_peering_config block as defined below. + Required when peering_type is set to MicrosoftPeering and config + for IPv4. + items: + properties: + advertisedCommunities: + description: The communities of Bgp Peering specified for + microsoft peering. + items: + type: string + type: array + advertisedPublicPrefixes: + description: A list of Advertised Public Prefixes. + items: + type: string + type: array + customerAsn: + description: The CustomerASN of the peering. Defaults to + 0. + type: number + routingRegistryName: + description: 'The Routing Registry against which the AS + number and prefixes are registered. For example: ARIN, + RIPE, AFRINIC etc. Defaults to NONE.' + type: string + type: object + type: array + peerAsn: + description: The Either a 16-bit or a 32-bit ASN. Can either be + public or private. + type: number + primaryPeerAddressPrefix: + description: A /30 subnet for the primary link. Required when + config for IPv4. + type: string + routeFilterId: + description: The ID of the Route Filter. Only available when peering_type + is set to MicrosoftPeering. + type: string + secondaryPeerAddressPrefix: + description: A /30 subnet for the secondary link. Required when + config for IPv4. + type: string + vlanId: + description: A valid VLAN ID to establish this peering on. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -535,7 +651,9 @@ spec: type: object x-kubernetes-validations: - message: vlanId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vlanId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.vlanId) + || has(self.initProvider.vlanId)' status: description: ExpressRouteCircuitPeeringStatus defines the observed state of ExpressRouteCircuitPeering. diff --git a/package/crds/network.azure.upbound.io_expressroutecircuits.yaml b/package/crds/network.azure.upbound.io_expressroutecircuits.yaml index 35e5dc2a7..3b2565c17 100644 --- a/package/crds/network.azure.upbound.io_expressroutecircuits.yaml +++ b/package/crds/network.azure.upbound.io_expressroutecircuits.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: expressroutecircuits.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -210,9 +209,6 @@ spec: description: The service tier. Possible values are Basic, Local, Standard or Premium. type: string - required: - - family - - tier type: object type: array tags: @@ -221,21 +217,96 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowClassicOperations: + description: Allow the circuit to interact with classic (RDFE) + resources. Defaults to false. + type: boolean + bandwidthInGbps: + description: The bandwidth in Gbps of the circuit being created + on the Express Route Port. + type: number + bandwidthInMbps: + description: The bandwidth in Mbps of the circuit being created + on the Service Provider. + type: number + expressRoutePortId: + description: The ID of the Express Route Port this Express Route + Circuit is based on. Changing this forces a new resource to + be created. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + peeringLocation: + description: The name of the peering location and not the Azure + resource location. Changing this forces a new resource to be + created. + type: string + serviceProviderName: + description: The name of the ExpressRoute Service Provider. Changing + this forces a new resource to be created. + type: string + sku: + description: A sku block for the ExpressRoute circuit as documented + below. + items: + properties: + family: + description: The billing mode for bandwidth. Possible values + are MeteredData or UnlimitedData. + type: string + tier: + description: The service tier. Possible values are Basic, + Local, Standard or Premium. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -409,9 +480,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: ExpressRouteCircuitStatus defines the observed state of ExpressRouteCircuit. properties: diff --git a/package/crds/network.azure.upbound.io_expressrouteconnections.yaml b/package/crds/network.azure.upbound.io_expressrouteconnections.yaml index 101e4b5b2..537b0c3fb 100644 --- a/package/crds/network.azure.upbound.io_expressrouteconnections.yaml +++ b/package/crds/network.azure.upbound.io_expressrouteconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: expressrouteconnections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -281,21 +280,100 @@ spec: to 0. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authorizationKey: + description: The authorization key to establish the Express Route + Connection. + type: string + enableInternetSecurity: + description: Is Internet security enabled for this Express Route + Connection? + type: boolean + expressRouteGatewayBypassEnabled: + description: Specified whether Fast Path is enabled for Virtual + Wan Firewall Hub. Defaults to false. + type: boolean + routing: + description: A routing block as defined below. + items: + properties: + associatedRouteTableId: + description: The ID of the Virtual Hub Route Table associated + with this Express Route Connection. + type: string + inboundRouteMapId: + description: The ID of the Route Map associated with this + Express Route Connection for inbound routes. + type: string + outboundRouteMapId: + description: The ID of the Route Map associated with this + Express Route Connection for outbound routes. + type: string + propagatedRouteTable: + description: A propagated_route_table block as defined below. + items: + properties: + labels: + description: The list of labels to logically group + route tables. + items: + type: string + type: array + routeTableIds: + description: A list of IDs of the Virtual Hub Route + Table to propagate routes from Express Route Connection + to the route table. + items: + type: string + type: array + type: object + type: array + type: object + type: array + routingWeight: + description: The routing weight associated to the Express Route + Connection. Possible value is between 0 and 32000. Defaults + to 0. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_expressroutegateways.yaml b/package/crds/network.azure.upbound.io_expressroutegateways.yaml index 15fd587be..9fce5a1e6 100644 --- a/package/crds/network.azure.upbound.io_expressroutegateways.yaml +++ b/package/crds/network.azure.upbound.io_expressroutegateways.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: expressroutegateways.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -245,21 +244,64 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowNonVirtualWanTraffic: + description: Specified whether this gateway accept traffic from + non-Virtual WAN networks. Defaults to false. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + scaleUnits: + description: The number of scale units with which to provision + the ExpressRoute gateway. Each scale unit is equal to 2Gbps, + with support for up to 10 scale units (20Gbps). + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -433,9 +475,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: scaleUnits is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scaleUnits) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scaleUnits) + || has(self.initProvider.scaleUnits)' status: description: ExpressRouteGatewayStatus defines the observed state of ExpressRouteGateway. properties: diff --git a/package/crds/network.azure.upbound.io_expressrouteports.yaml b/package/crds/network.azure.upbound.io_expressrouteports.yaml index 8ca9fe406..2e5688cfc 100644 --- a/package/crds/network.azure.upbound.io_expressrouteports.yaml +++ b/package/crds/network.azure.upbound.io_expressrouteports.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: expressrouteports.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -96,9 +95,6 @@ spec: that should be configured on this Express Route Port. Only possible value is UserAssigned. type: string - required: - - identityIds - - type type: object type: array link1: @@ -243,21 +239,137 @@ spec: Express Route Port. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + bandwidthInGbps: + description: Bandwidth of the Express Route Port in Gbps. Changing + this forces a new Express Route Port to be created. + type: number + billingType: + description: The billing type of the Express Route Port. Possible + values are MeteredData and UnlimitedData. + type: string + encapsulation: + description: 'The encapsulation method used for the Express Route + Port. Changing this forces a new Express Route Port to be created. + Possible values are: Dot1Q, QinQ.' + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Express Route Port. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Express Route Port. + Only possible value is UserAssigned. + type: string + type: object + type: array + link1: + description: A list of link blocks as defined below. + items: + properties: + adminEnabled: + description: Whether enable administration state on the + Express Route Port Link? Defaults to false. + type: boolean + macsecCakKeyvaultSecretId: + description: The ID of the Key Vault Secret that contains + the Mac security CAK key for this Express Route Port Link. + type: string + macsecCipher: + description: The MACSec cipher used for this Express Route + Port Link. Possible values are GcmAes128 and GcmAes256. + Defaults to GcmAes128. + type: string + macsecCknKeyvaultSecretId: + description: The ID of the Key Vault Secret that contains + the MACSec CKN key for this Express Route Port Link. + type: string + type: object + type: array + link2: + description: A list of link blocks as defined below. + items: + properties: + adminEnabled: + description: Whether enable administration state on the + Express Route Port Link? Defaults to false. + type: boolean + macsecCakKeyvaultSecretId: + description: The ID of the Key Vault Secret that contains + the Mac security CAK key for this Express Route Port Link. + type: string + macsecCipher: + description: The MACSec cipher used for this Express Route + Port Link. Possible values are GcmAes128 and GcmAes256. + Defaults to GcmAes128. + type: string + macsecCknKeyvaultSecretId: + description: The ID of the Key Vault Secret that contains + the MACSec CKN key for this Express Route Port Link. + type: string + type: object + type: array + location: + description: The Azure Region where the Express Route Port should + exist. Changing this forces a new Express Route Port to be created. + type: string + peeringLocation: + description: The name of the peering location that this Express + Route Port is physically mapped to. Changing this forces a new + Express Route Port to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Express Route Port. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -431,13 +543,21 @@ spec: type: object x-kubernetes-validations: - message: bandwidthInGbps is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.bandwidthInGbps) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.bandwidthInGbps) + || has(self.initProvider.bandwidthInGbps)' - message: encapsulation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.encapsulation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.encapsulation) + || has(self.initProvider.encapsulation)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: peeringLocation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.peeringLocation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.peeringLocation) + || has(self.initProvider.peeringLocation)' status: description: ExpressRoutePortStatus defines the observed state of ExpressRoutePort. properties: diff --git a/package/crds/network.azure.upbound.io_firewallapplicationrulecollections.yaml b/package/crds/network.azure.upbound.io_firewallapplicationrulecollections.yaml index 7215ac5fa..7fdb59dc9 100644 --- a/package/crds/network.azure.upbound.io_firewallapplicationrulecollections.yaml +++ b/package/crds/network.azure.upbound.io_firewallapplicationrulecollections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: firewallapplicationrulecollections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -263,9 +262,6 @@ spec: description: Specifies the type of connection. Possible values are Http, Https and Mssql. type: string - required: - - port - - type type: object type: array sourceAddresses: @@ -283,26 +279,104 @@ spec: items: type: string type: array - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + action: + description: Specifies the action the rule will apply to matching + traffic. Possible values are Allow and Deny. + type: string + priority: + description: Specifies the priority of the rule collection. Possible + values are between 100 - 65000. + type: number + rule: + description: One or more rule blocks as defined below. + items: + properties: + description: + description: Specifies a description for the rule. + type: string + fqdnTags: + description: A list of FQDN tags. Possible values are AppServiceEnvironment, + AzureBackup, AzureKubernetesService, HDInsight, MicrosoftActiveProtectionService, + WindowsDiagnostics, WindowsUpdate and WindowsVirtualDesktop. + items: + type: string + type: array + name: + description: Specifies the name of the rule. + type: string + protocol: + description: One or more protocol blocks as defined below. + items: + properties: + port: + description: Specify a port for the connection. + type: number + type: + description: Specifies the type of connection. Possible + values are Http, Https and Mssql. + type: string + type: object + type: array + sourceAddresses: + description: A list of source IP addresses and/or IP ranges. + items: + type: string + type: array + sourceIpGroups: + description: A list of source IP Group IDs for the rule. + items: + type: string + type: array + targetFqdns: + description: A list of FQDNs. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -476,11 +550,17 @@ spec: type: object x-kubernetes-validations: - message: action is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.action) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.action) + || has(self.initProvider.action)' - message: priority is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.priority) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.priority) + || has(self.initProvider.priority)' - message: rule is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rule) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.rule) + || has(self.initProvider.rule)' status: description: FirewallApplicationRuleCollectionStatus defines the observed state of FirewallApplicationRuleCollection. diff --git a/package/crds/network.azure.upbound.io_firewallnatrulecollections.yaml b/package/crds/network.azure.upbound.io_firewallnatrulecollections.yaml index 09b5f05a3..c5871652b 100644 --- a/package/crds/network.azure.upbound.io_firewallnatrulecollections.yaml +++ b/package/crds/network.azure.upbound.io_firewallnatrulecollections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: firewallnatrulecollections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -279,31 +278,103 @@ spec: translatedPort: description: The port of the service behind the Firewall. type: string - required: - - destinationAddresses - - destinationPorts - - name - - protocols - - translatedAddress - - translatedPort type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + action: + description: Specifies the action the rule will apply to matching + traffic. Possible values are Dnat and Snat. + type: string + priority: + description: Specifies the priority of the rule collection. Possible + values are between 100 - 65000. + type: number + rule: + description: One or more rule blocks as defined below. + items: + properties: + description: + description: Specifies a description for the rule. + type: string + destinationAddresses: + description: A list of destination IP addresses and/or IP + ranges. + items: + type: string + type: array + destinationPorts: + description: A list of destination ports. + items: + type: string + type: array + name: + description: Specifies the name of the rule. + type: string + protocols: + description: A list of protocols. Possible values are Any, + ICMP, TCP and UDP. If action is Dnat, protocols can only + be TCP and UDP. + items: + type: string + type: array + sourceAddresses: + description: A list of source IP addresses and/or IP ranges. + items: + type: string + type: array + sourceIpGroups: + description: A list of source IP Group IDs for the rule. + items: + type: string + type: array + translatedAddress: + description: The address of the service behind the Firewall. + type: string + translatedPort: + description: The port of the service behind the Firewall. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -477,11 +548,17 @@ spec: type: object x-kubernetes-validations: - message: action is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.action) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.action) + || has(self.initProvider.action)' - message: priority is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.priority) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.priority) + || has(self.initProvider.priority)' - message: rule is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rule) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.rule) + || has(self.initProvider.rule)' status: description: FirewallNATRuleCollectionStatus defines the observed state of FirewallNATRuleCollection. diff --git a/package/crds/network.azure.upbound.io_firewallnetworkrulecollections.yaml b/package/crds/network.azure.upbound.io_firewallnetworkrulecollections.yaml index 38b9aa9fe..baecf5196 100644 --- a/package/crds/network.azure.upbound.io_firewallnetworkrulecollections.yaml +++ b/package/crds/network.azure.upbound.io_firewallnetworkrulecollections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: firewallnetworkrulecollections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -283,28 +282,107 @@ spec: items: type: string type: array - required: - - destinationPorts - - name - - protocols type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + action: + description: Specifies the action the rule will apply to matching + traffic. Possible values are Allow and Deny. + type: string + priority: + description: Specifies the priority of the rule collection. Possible + values are between 100 - 65000. + type: number + rule: + description: One or more rule blocks as defined below. + items: + properties: + description: + description: Specifies a description for the rule. + type: string + destinationAddresses: + description: Either a list of destination IP addresses and/or + IP ranges, or a list of destination Service Tags. + items: + type: string + type: array + destinationFqdns: + description: A list of destination FQDNS for the rule. + items: + type: string + type: array + destinationIpGroups: + description: A list of destination IP Group IDs for the + rule. + items: + type: string + type: array + destinationPorts: + description: A list of destination ports. + items: + type: string + type: array + name: + description: Specifies the name of the rule. + type: string + protocols: + description: A list of protocols. Possible values are Any, + ICMP, TCP and UDP. + items: + type: string + type: array + sourceAddresses: + description: A list of source IP addresses and/or IP ranges. + items: + type: string + type: array + sourceIpGroups: + description: A list of IP Group IDs for the rule. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -478,11 +556,17 @@ spec: type: object x-kubernetes-validations: - message: action is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.action) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.action) + || has(self.initProvider.action)' - message: priority is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.priority) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.priority) + || has(self.initProvider.priority)' - message: rule is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rule) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.rule) + || has(self.initProvider.rule)' status: description: FirewallNetworkRuleCollectionStatus defines the observed state of FirewallNetworkRuleCollection. diff --git a/package/crds/network.azure.upbound.io_firewallpolicies.yaml b/package/crds/network.azure.upbound.io_firewallpolicies.yaml index ee2398260..806ddd711 100644 --- a/package/crds/network.azure.upbound.io_firewallpolicies.yaml +++ b/package/crds/network.azure.upbound.io_firewallpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: firewallpolicies.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -131,9 +130,6 @@ spec: that should be configured on this Firewall Policy. Only possible value is UserAssigned. type: string - required: - - identityIds - - type type: object type: array insights: @@ -164,17 +160,11 @@ spec: description: 12-digit number (id) which identifies your signature. type: string - required: - - firewallLocation - - id type: object type: array retentionInDays: description: The log retention period in days. type: number - required: - - defaultLogAnalyticsWorkspaceId - - enabled type: object type: array intrusionDetection: @@ -253,9 +243,6 @@ spec: items: type: string type: array - required: - - name - - protocol type: object type: array type: object @@ -399,27 +386,290 @@ spec: name: description: The name of the certificate. type: string - required: - - keyVaultSecretId - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoLearnPrivateRangesEnabled: + description: Whether enable auto learn private ip range. + type: boolean + basePolicyId: + description: The ID of the base Firewall Policy. + type: string + dns: + description: A dns block as defined below. + items: + properties: + proxyEnabled: + description: Whether to enable DNS proxy on Firewalls attached + to this Firewall Policy? Defaults to false. + type: boolean + servers: + description: A list of custom DNS servers' IP addresses. + items: + type: string + type: array + type: object + type: array + explicitProxy: + description: A explicit_proxy block as defined below. + items: + properties: + enablePacFile: + description: Whether the pac file port and url need to be + provided. + type: boolean + enabled: + description: Whether the explicit proxy is enabled for this + Firewall Policy. + type: boolean + httpPort: + description: The port number for explicit http protocol. + type: number + httpsPort: + description: The port number for explicit proxy https protocol. + type: number + pacFile: + description: Specifies a SAS URL for PAC file. + type: string + pacFilePort: + description: Specifies a port number for firewall to serve + PAC file. + type: number + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Firewall Policy. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Firewall Policy. Only + possible value is UserAssigned. + type: string + type: object + type: array + insights: + description: An insights block as defined below. + items: + properties: + defaultLogAnalyticsWorkspaceId: + description: The ID of the default Log Analytics Workspace + that the Firewalls associated with this Firewall Policy + will send their logs to, when there is no location matches + in the log_analytics_workspace. + type: string + enabled: + description: Whether the insights functionality is enabled + for this Firewall Policy. + type: boolean + logAnalyticsWorkspace: + description: A list of log_analytics_workspace block as + defined below. + items: + properties: + firewallLocation: + description: The location of the Firewalls, that when + matches this Log Analytics Workspace will be used + to consume their logs. + type: string + id: + description: 12-digit number (id) which identifies + your signature. + type: string + type: object + type: array + retentionInDays: + description: The log retention period in days. + type: number + type: object + type: array + intrusionDetection: + description: A intrusion_detection block as defined below. + items: + properties: + mode: + description: 'In which mode you want to run intrusion detection: + Off, Alert or Deny.' + type: string + privateRanges: + description: A list of Private IP address ranges to identify + traffic direction. By default, only ranges defined by + IANA RFC 1918 are considered private IP addresses. + items: + type: string + type: array + signatureOverrides: + description: One or more signature_overrides blocks as defined + below. + items: + properties: + id: + description: 12-digit number (id) which identifies + your signature. + type: string + state: + description: state can be any of Off, Alert or Deny. + type: string + type: object + type: array + trafficBypass: + description: One or more traffic_bypass blocks as defined + below. + items: + properties: + description: + description: The description for this bypass traffic + setting. + type: string + destinationAddresses: + description: Specifies a list of destination IP addresses + that shall be bypassed by intrusion detection. + items: + type: string + type: array + destinationIpGroups: + description: Specifies a list of destination IP groups + that shall be bypassed by intrusion detection. + items: + type: string + type: array + destinationPorts: + description: Specifies a list of destination IP ports + that shall be bypassed by intrusion detection. + items: + type: string + type: array + name: + description: The name which should be used for this + bypass traffic setting. + type: string + protocol: + description: The protocols any of ANY, TCP, ICMP, + UDP that shall be bypassed by intrusion detection. + type: string + sourceAddresses: + description: Specifies a list of source addresses + that shall be bypassed by intrusion detection. + items: + type: string + type: array + sourceIpGroups: + description: Specifies a list of source IP groups + that shall be bypassed by intrusion detection. + items: + type: string + type: array + type: object + type: array + type: object + type: array + location: + description: The Azure Region where the Firewall Policy should + exist. Changing this forces a new Firewall Policy to be created. + type: string + privateIpRanges: + description: A list of private IP ranges to which traffic will + not be SNAT. + items: + type: string + type: array + sku: + description: The SKU Tier of the Firewall Policy. Possible values + are Standard, Premium and Basic. Changing this forces a new + Firewall Policy to be created. + type: string + sqlRedirectAllowed: + description: Whether SQL Redirect traffic filtering is allowed. + Enabling this flag requires no rule using ports between 11000-11999. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Firewall Policy. + type: object + threatIntelligenceAllowlist: + description: A threat_intelligence_allowlist block as defined + below. + items: + properties: + fqdns: + description: A list of FQDNs that will be skipped for threat + detection. + items: + type: string + type: array + ipAddresses: + description: A list of IP addresses or CIDR ranges that + will be skipped for threat detection. + items: + type: string + type: array + type: object + type: array + threatIntelligenceMode: + description: The operation mode for Threat Intelligence. Possible + values are Alert, Deny and Off. Defaults to Alert. + type: string + tlsCertificate: + description: A tls_certificate block as defined below. + items: + properties: + keyVaultSecretId: + description: The ID of the Key Vault, where the secret or + certificate is stored. + type: string + name: + description: The name of the certificate. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -593,7 +843,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: FirewallPolicyStatus defines the observed state of FirewallPolicy. properties: diff --git a/package/crds/network.azure.upbound.io_firewallpolicyrulecollectiongroups.yaml b/package/crds/network.azure.upbound.io_firewallpolicyrulecollectiongroups.yaml index a44b482af..ea6ac12ba 100644 --- a/package/crds/network.azure.upbound.io_firewallpolicyrulecollectiongroups.yaml +++ b/package/crds/network.azure.upbound.io_firewallpolicyrulecollectiongroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: firewallpolicyrulecollectiongroups.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -137,9 +136,6 @@ spec: description: Protocol type. Possible values are Http and Https. type: string - required: - - port - - type type: object type: array sourceAddresses: @@ -166,15 +162,8 @@ spec: items: type: string type: array - required: - - name type: object type: array - required: - - action - - name - - priority - - rule type: object type: array firewallPolicyId: @@ -316,17 +305,8 @@ spec: translatedPort: description: Specifies the translated port. type: number - required: - - name - - protocols - - translatedPort type: object type: array - required: - - action - - name - - priority - - rule type: object type: array networkRuleCollection: @@ -394,17 +374,8 @@ spec: items: type: string type: array - required: - - destinationPorts - - name - - protocols type: object type: array - required: - - action - - name - - priority - - rule type: object type: array priority: @@ -412,21 +383,282 @@ spec: Group. The range is 100-65000. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + applicationRuleCollection: + description: One or more application_rule_collection blocks as + defined below. + items: + properties: + action: + description: The action to take for the application rules + in this collection. Possible values are Allow and Deny. + type: string + name: + description: The name which should be used for this application + rule collection. + type: string + priority: + description: The priority of the application rule collection. + The range is 100 - 65000. + type: number + rule: + description: One or more application_rule (application rule) + blocks as defined below. + items: + properties: + description: + description: The description which should be used + for this rule. + type: string + destinationAddresses: + description: Specifies a list of destination IP addresses + (including CIDR, IP range and *) or Service Tags. + items: + type: string + type: array + destinationFqdnTags: + description: Specifies a list of destination FQDN + tags. + items: + type: string + type: array + destinationFqdns: + description: Specifies a list of destination FQDNs. + items: + type: string + type: array + destinationUrls: + description: Specifies a list of destination URLs + for which policy should hold. Needs Premium SKU + for Firewall Policy. Conflicts with destination_fqdns. + items: + type: string + type: array + name: + description: The name which should be used for this + network rule collection. + type: string + protocols: + description: Specifies a list of network protocols + this rule applies to. Possible values are Any, TCP, + UDP, ICMP. + items: + properties: + port: + description: Port number of the protocol. Range + is 0-64000. + type: number + type: + description: Protocol type. Possible values + are Http and Https. + type: string + type: object + type: array + sourceAddresses: + description: Specifies a list of source IP addresses + (including CIDR, IP range and *). + items: + type: string + type: array + sourceIpGroups: + description: Specifies a list of source IP groups. + items: + type: string + type: array + terminateTls: + description: Boolean specifying if TLS shall be terminated + (true) or not (false). Must be true when using destination_urls. + Needs Premium SKU for Firewall Policy. + type: boolean + webCategories: + description: Specifies a list of web categories to + which access is denied or allowed depending on the + value of action above. Needs Premium SKU for Firewall + Policy. + items: + type: string + type: array + type: object + type: array + type: object + type: array + natRuleCollection: + description: One or more nat_rule_collection blocks as defined + below. + items: + properties: + action: + description: The action to take for the NAT rules in this + collection. Currently, the only possible value is Dnat. + type: string + name: + description: The name which should be used for this NAT + rule collection. + type: string + priority: + description: The priority of the NAT rule collection. The + range is 100 - 65000. + type: number + rule: + description: A nat_rule (NAT rule) block as defined below. + items: + properties: + destinationAddress: + description: The destination IP address (including + CIDR). + type: string + destinationPorts: + description: Specifies a list of destination ports. + items: + type: string + type: array + name: + description: The name which should be used for this + network rule collection. + type: string + protocols: + description: Specifies a list of network protocols + this rule applies to. Possible values are Any, TCP, + UDP, ICMP. + items: + type: string + type: array + sourceAddresses: + description: Specifies a list of source IP addresses + (including CIDR, IP range and *). + items: + type: string + type: array + sourceIpGroups: + description: Specifies a list of source IP groups. + items: + type: string + type: array + translatedAddress: + description: Specifies the translated address. + type: string + translatedFqdn: + description: Specifies the translated FQDN. + type: string + translatedPort: + description: Specifies the translated port. + type: number + type: object + type: array + type: object + type: array + networkRuleCollection: + description: One or more network_rule_collection blocks as defined + below. + items: + properties: + action: + description: The action to take for the network rules in + this collection. Possible values are Allow and Deny. + type: string + name: + description: The name which should be used for this network + rule collection. + type: string + priority: + description: The priority of the network rule collection. + The range is 100 - 65000. + type: number + rule: + description: One or more network_rule (network rule) blocks + as defined below. + items: + properties: + destinationAddresses: + description: Specifies a list of destination IP addresses + (including CIDR, IP range and *) or Service Tags. + items: + type: string + type: array + destinationFqdns: + description: Specifies a list of destination FQDNs. + items: + type: string + type: array + destinationIpGroups: + description: Specifies a list of destination IP groups. + items: + type: string + type: array + destinationPorts: + description: Specifies a list of destination ports. + items: + type: string + type: array + name: + description: The name which should be used for this + network rule collection. + type: string + protocols: + description: Specifies a list of network protocols + this rule applies to. Possible values are Any, TCP, + UDP, ICMP. + items: + type: string + type: array + sourceAddresses: + description: Specifies a list of source IP addresses + (including CIDR, IP range and *). + items: + type: string + type: array + sourceIpGroups: + description: Specifies a list of source IP groups. + items: + type: string + type: array + type: object + type: array + type: object + type: array + priority: + description: The priority of the Firewall Policy Rule Collection + Group. The range is 100-65000. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -600,7 +832,9 @@ spec: type: object x-kubernetes-validations: - message: priority is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.priority) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.priority) + || has(self.initProvider.priority)' status: description: FirewallPolicyRuleCollectionGroupStatus defines the observed state of FirewallPolicyRuleCollectionGroup. diff --git a/package/crds/network.azure.upbound.io_firewalls.yaml b/package/crds/network.azure.upbound.io_firewalls.yaml index 0a5851ce3..d2ff94b11 100644 --- a/package/crds/network.azure.upbound.io_firewalls.yaml +++ b/package/crds/network.azure.upbound.io_firewalls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: firewalls.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -245,8 +244,6 @@ spec: type: string type: object type: object - required: - - name type: object type: array location: @@ -349,9 +346,6 @@ spec: type: string type: object type: object - required: - - name - - publicIpAddressId type: object type: array privateIpRanges: @@ -471,8 +465,6 @@ spec: description: Specifies the ID of the Virtual Hub where the Firewall resides in. type: string - required: - - virtualHubId type: object type: array zones: @@ -483,21 +475,132 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dnsServers: + description: A list of DNS servers that the Azure Firewall will + direct DNS traffic to the for name resolution. + items: + type: string + type: array + firewallPolicyId: + description: The ID of the Firewall Policy applied to this Firewall. + type: string + ipConfiguration: + description: An ip_configuration block as documented below. + items: + properties: + name: + description: Specifies the name of the IP Configuration. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + managementIpConfiguration: + description: A management_ip_configuration block as documented + below, which allows force-tunnelling of traffic to be performed + by the firewall. Adding or removing this block or changing the + subnet_id in an existing block forces a new resource to be created. + Changing this forces a new resource to be created. + items: + properties: + name: + description: Specifies the name of the IP Configuration. + type: string + publicIpAddressId: + description: The ID of the Public IP Address associated + with the firewall. + type: string + type: object + type: array + privateIpRanges: + description: A list of SNAT private CIDR IP ranges, or the special + string IANAPrivateRanges, which indicates Azure Firewall does + not SNAT when the destination IP address is a private range + per IANA RFC 1918. + items: + type: string + type: array + skuName: + description: SKU name of the Firewall. Possible values are AZFW_Hub + and AZFW_VNet. Changing this forces a new resource to be created. + type: string + skuTier: + description: SKU tier of the Firewall. Possible values are Premium, + Standard and Basic. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + threatIntelMode: + description: 'The operation mode for threat intelligence-based + filtering. Possible values are: Off, Alert and Deny. Defaults + to Alert.' + type: string + virtualHub: + description: A virtual_hub block as documented below. + items: + properties: + publicIpCount: + description: Specifies the number of public IPs to assign + to the Firewall. Defaults to 1. + type: number + virtualHubId: + description: Specifies the ID of the Virtual Hub where the + Firewall resides in. + type: string + type: object + type: array + zones: + description: Specifies a list of Availability Zones in which this + Azure Firewall should be located. Changing this forces a new + Azure Firewall to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -671,11 +774,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' - message: skuTier is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuTier) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuTier) + || has(self.initProvider.skuTier)' status: description: FirewallStatus defines the observed state of Firewall. properties: diff --git a/package/crds/network.azure.upbound.io_frontdoorcustomhttpsconfigurations.yaml b/package/crds/network.azure.upbound.io_frontdoorcustomhttpsconfigurations.yaml index bf76a0930..9c013a037 100644 --- a/package/crds/network.azure.upbound.io_frontdoorcustomhttpsconfigurations.yaml +++ b/package/crds/network.azure.upbound.io_frontdoorcustomhttpsconfigurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoorcustomhttpsconfigurations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -181,21 +180,74 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customHttpsConfiguration: + description: A custom_https_configuration block as defined above. + items: + properties: + azureKeyVaultCertificateSecretName: + description: The name of the Key Vault secret representing + the full certificate PFX. + type: string + azureKeyVaultCertificateSecretVersion: + description: The version of the Key Vault secret representing + the full certificate PFX. + type: string + certificateSource: + description: Certificate source to encrypted HTTPS traffic + with. Allowed values are FrontDoor or AzureKeyVault. Defaults + to FrontDoor. + type: string + type: object + type: array + customHttpsProvisioningEnabled: + description: Should the HTTPS protocol be enabled for this custom + domain associated with the Front Door? + type: boolean + frontendEndpointId: + description: The ID of the Front Door Frontend Endpoint which + this configuration refers to. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -369,9 +421,13 @@ spec: type: object x-kubernetes-validations: - message: customHttpsProvisioningEnabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.customHttpsProvisioningEnabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.customHttpsProvisioningEnabled) + || has(self.initProvider.customHttpsProvisioningEnabled)' - message: frontendEndpointId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendEndpointId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frontendEndpointId) + || has(self.initProvider.frontendEndpointId)' status: description: FrontdoorCustomHTTPSConfigurationStatus defines the observed state of FrontdoorCustomHTTPSConfiguration. diff --git a/package/crds/network.azure.upbound.io_frontdoorfirewallpolicies.yaml b/package/crds/network.azure.upbound.io_frontdoorfirewallpolicies.yaml index dfc395d04..0001c82ad 100644 --- a/package/crds/network.azure.upbound.io_frontdoorfirewallpolicies.yaml +++ b/package/crds/network.azure.upbound.io_frontdoorfirewallpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoorfirewallpolicies.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -132,10 +131,6 @@ spec: items: type: string type: array - required: - - matchValues - - matchVariable - - operator type: object type: array name: @@ -158,10 +153,6 @@ spec: description: The type of rule. Possible values are MatchRule or RateLimitRule. type: string - required: - - action - - name - - type type: object type: array enabled: @@ -193,10 +184,6 @@ spec: description: Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. type: string - required: - - matchVariable - - operator - - selector type: object type: array override: @@ -226,10 +213,6 @@ spec: the match_variable is QueryString, PostArgs, RequestHeader or Cookies. type: string - required: - - matchVariable - - operator - - selector type: object type: array rule: @@ -272,25 +255,16 @@ spec: key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. type: string - required: - - matchVariable - - operator - - selector type: object type: array ruleId: description: Identifier for the managed rule. type: string - required: - - action - - ruleId type: object type: array ruleGroupName: description: The managed rule group to override. type: string - required: - - ruleGroupName type: object type: array type: @@ -301,9 +275,6 @@ spec: description: The version on the managed rule to use with this resource. type: string - required: - - type - - version type: object type: array mode: @@ -400,21 +371,268 @@ spec: Firewall Policy. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customBlockResponseBody: + description: If a custom_rule block's action type is block, this + is the response body. The body must be specified in base64 encoding. + type: string + customBlockResponseStatusCode: + description: If a custom_rule block's action type is block, this + is the response status code. Possible values are 200, 403, 405, + 406, or 429. + type: number + customRule: + description: One or more custom_rule blocks as defined below. + items: + properties: + action: + description: The action to perform when the rule is matched. + Possible values are Allow, Block, Log, or Redirect. + type: string + enabled: + description: Is the rule is enabled or disabled? Defaults + to true. + type: boolean + matchCondition: + description: One or more match_condition block defined below. + Can support up to 10 match_condition blocks. + items: + properties: + matchValues: + description: Up to 600 possible values to match. Limit + is in total across all match_condition blocks and + match_values arguments. String value itself can + be up to 256 characters long. + items: + type: string + type: array + matchVariable: + description: The request variable to compare with. + Possible values are Cookies, PostArgs, QueryString, + RemoteAddr, RequestBody, RequestHeader, RequestMethod, + RequestUri, or SocketAddr. + type: string + negationCondition: + description: Should the result of the condition be + negated. + type: boolean + operator: + description: Comparison type to use for matching with + the variable value. Possible values are Any, BeginsWith, + Contains, EndsWith, Equal, GeoMatch, GreaterThan, + GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual + or RegEx. + type: string + selector: + description: Match against a specific key if the match_variable + is QueryString, PostArgs, RequestHeader or Cookies. + type: string + transforms: + description: Up to 5 transforms to apply. Possible + values are Lowercase, RemoveNulls, Trim, Uppercase, + URLDecode orURLEncode. + items: + type: string + type: array + type: object + type: array + name: + description: Gets name of the resource that is unique within + a policy. This name can be used to access the resource. + type: string + priority: + description: The priority of the rule. Rules with a lower + value will be evaluated before rules with a higher value. + Defaults to 1. + type: number + rateLimitDurationInMinutes: + description: The rate limit duration in minutes. Defaults + to 1. + type: number + rateLimitThreshold: + description: The rate limit threshold. Defaults to 10. + type: number + type: + description: The type of rule. Possible values are MatchRule + or RateLimitRule. + type: string + type: object + type: array + enabled: + description: Is the policy a enabled state or disabled state. + Defaults to true. + type: boolean + managedRule: + description: One or more managed_rule blocks as defined below. + items: + properties: + exclusion: + description: One or more exclusion blocks as defined below. + items: + properties: + matchVariable: + description: The request variable to compare with. + Possible values are Cookies, PostArgs, QueryString, + RemoteAddr, RequestBody, RequestHeader, RequestMethod, + RequestUri, or SocketAddr. + type: string + operator: + description: Comparison type to use for matching with + the variable value. Possible values are Any, BeginsWith, + Contains, EndsWith, Equal, GeoMatch, GreaterThan, + GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual + or RegEx. + type: string + selector: + description: Match against a specific key if the match_variable + is QueryString, PostArgs, RequestHeader or Cookies. + type: string + type: object + type: array + override: + description: One or more override blocks as defined below. + items: + properties: + exclusion: + description: One or more exclusion blocks as defined + below. + items: + properties: + matchVariable: + description: The request variable to compare + with. Possible values are Cookies, PostArgs, + QueryString, RemoteAddr, RequestBody, RequestHeader, + RequestMethod, RequestUri, or SocketAddr. + type: string + operator: + description: Comparison type to use for matching + with the variable value. Possible values are + Any, BeginsWith, Contains, EndsWith, Equal, + GeoMatch, GreaterThan, GreaterThanOrEqual, + IPMatch, LessThan, LessThanOrEqual or RegEx. + type: string + selector: + description: Match against a specific key if + the match_variable is QueryString, PostArgs, + RequestHeader or Cookies. + type: string + type: object + type: array + rule: + description: One or more rule blocks as defined below. + If none are specified, all of the rules in the group + will be disabled. + items: + properties: + action: + description: The action to be applied when the + rule matches. Possible values are Allow, Block, + Log, or Redirect. + type: string + enabled: + description: Is the managed rule override enabled + or disabled. Defaults to false + type: boolean + exclusion: + description: One or more exclusion blocks as + defined below. + items: + properties: + matchVariable: + description: The request variable to compare + with. Possible values are Cookies, PostArgs, + QueryString, RemoteAddr, RequestBody, + RequestHeader, RequestMethod, RequestUri, + or SocketAddr. + type: string + operator: + description: Comparison type to use for + matching with the variable value. Possible + values are Any, BeginsWith, Contains, + EndsWith, Equal, GeoMatch, GreaterThan, + GreaterThanOrEqual, IPMatch, LessThan, + LessThanOrEqual or RegEx. + type: string + selector: + description: Match against a specific + key if the match_variable is QueryString, + PostArgs, RequestHeader or Cookies. + type: string + type: object + type: array + ruleId: + description: Identifier for the managed rule. + type: string + type: object + type: array + ruleGroupName: + description: The managed rule group to override. + type: string + type: object + type: array + type: + description: The name of the managed rule to use with this + resource. + type: string + version: + description: The version on the managed rule to use with + this resource. + type: string + type: object + type: array + mode: + description: The firewall policy mode. Possible values are Detection, + Prevention and defaults to Prevention. + type: string + redirectUrl: + description: If action type is redirect, this field represents + redirect URL for the client. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Web Application + Firewall Policy. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_frontdoorrulesengines.yaml b/package/crds/network.azure.upbound.io_frontdoorrulesengines.yaml index 36a59105e..eec15e87c 100644 --- a/package/crds/network.azure.upbound.io_frontdoorrulesengines.yaml +++ b/package/crds/network.azure.upbound.io_frontdoorrulesengines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoorrulesengines.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -308,8 +307,6 @@ spec: RequestFilename, RequestFilenameExtension,RequestHeader,RequestBody or RequestScheme. type: string - required: - - operator type: object type: array name: @@ -319,27 +316,143 @@ spec: description: Priority of the rule, must be unique per rules engine definition. type: number - required: - - name - - priority type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Whether this Rules engine configuration is enabled? + Defaults to true. + type: boolean + rule: + description: A rule block as defined below. + items: + properties: + action: + description: An action block as defined below. + items: + properties: + requestHeader: + description: A request_header block as defined below. + items: + properties: + headerActionType: + description: can be set to Overwrite, Append + or Delete. + type: string + headerName: + description: header name (string). + type: string + value: + description: value name (string). + type: string + type: object + type: array + responseHeader: + description: A response_header block as defined below. + items: + properties: + headerActionType: + description: can be set to Overwrite, Append + or Delete. + type: string + headerName: + description: header name (string). + type: string + value: + description: value name (string). + type: string + type: object + type: array + type: object + type: array + matchCondition: + description: One or more match_condition block as defined + below. + items: + properties: + negateCondition: + description: can be set to true or false to negate + the given condition. Defaults to true. + type: boolean + operator: + description: can be set to Any, IPMatch, GeoMatch, + Equal, Contains, LessThan, GreaterThan, LessThanOrEqual, + GreaterThanOrEqual, BeginsWith or EndsWith + type: string + selector: + description: match against a specific key when variable + is set to PostArgs or RequestHeader. It cannot be + used with QueryString and RequestMethod. + type: string + transform: + description: can be set to one or more values out + of Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode + and UrlEncode + items: + type: string + type: array + value: + description: value name (string). + items: + type: string + type: array + variable: + description: can be set to IsMobile, RemoteAddr, RequestMethod, + QueryString, PostArgs, RequestURI, RequestPath, + RequestFilename, RequestFilenameExtension,RequestHeader,RequestBody + or RequestScheme. + type: string + type: object + type: array + name: + description: The name of the rule. + type: string + priority: + description: Priority of the rule, must be unique per rules + engine definition. + type: number + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_frontdoors.yaml b/package/crds/network.azure.upbound.io_frontdoors.yaml index 7860e3788..7d99b0df1 100644 --- a/package/crds/network.azure.upbound.io_frontdoors.yaml +++ b/package/crds/network.azure.upbound.io_frontdoors.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: frontdoors.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -107,11 +106,6 @@ spec: description: Weight of this endpoint for load balancing purposes. Defaults to 50. type: number - required: - - address - - hostHeader - - httpPort - - httpsPort type: object type: array healthProbeName: @@ -125,11 +119,6 @@ spec: name: description: Specifies the name of the Backend Pool. type: string - required: - - backend - - healthProbeName - - loadBalancingName - - name type: object type: array backendPoolHealthProbe: @@ -159,8 +148,6 @@ spec: description: Protocol scheme to use for the Health Probe. Possible values are Http and Https. Defaults to Http. type: string - required: - - name type: object type: array backendPoolLoadBalancing: @@ -183,8 +170,6 @@ spec: description: The number of samples within the sample period that must succeed. Defaults to 2. type: number - required: - - name type: object type: array backendPoolSettings: @@ -202,8 +187,6 @@ spec: to all backend pools, this setting will have no effect on HTTP requests. Permitted values are true or false. type: boolean - required: - - enforceBackendPoolsCertificateNameCheck type: object type: array friendlyName: @@ -233,9 +216,6 @@ spec: description: Defines the Web Application Firewall policy ID for each host. type: string - required: - - hostName - - name type: object type: array loadBalancerEnabled: @@ -386,8 +366,6 @@ spec: options are HttpOnly, HttpsOnly, or MatchRequest. Defaults to HttpsOnly. type: string - required: - - backendPoolName type: object type: array frontendEndpoints: @@ -433,16 +411,8 @@ spec: description: Status code for the redirect. Valida options are Moved, Found, TemporaryRedirect, PermanentRedirect. type: string - required: - - redirectProtocol - - redirectType type: object type: array - required: - - acceptedProtocols - - frontendEndpoints - - name - - patternsToMatch type: object type: array tags: @@ -451,21 +421,319 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + backendPool: + description: A backend_pool block as defined below. + items: + properties: + backend: + description: A backend block as defined below. + items: + properties: + address: + description: Location of the backend (IP address or + FQDN) + type: string + enabled: + description: Enable or Disable use of this Backend + Routing Rule. Permitted values are true or false. + Defaults to true. + type: boolean + hostHeader: + description: The value to use as the host header sent + to the backend. + type: string + httpPort: + description: The HTTP TCP port number. Possible values + are between 1 - 65535. + type: number + httpsPort: + description: The HTTPS TCP port number. Possible values + are between 1 - 65535. + type: number + priority: + description: Priority to use for load balancing. Higher + priorities will not be used for load balancing if + any lower priority backend is healthy. Defaults + to 1. + type: number + weight: + description: Weight of this endpoint for load balancing + purposes. Defaults to 50. + type: number + type: object + type: array + healthProbeName: + description: Specifies the name of the backend_pool_health_probe + block within this resource to use for this Backend Pool. + type: string + loadBalancingName: + description: Specifies the name of the backend_pool_load_balancing + block within this resource to use for this Backend Pool. + type: string + name: + description: Specifies the name of the Backend Pool. + type: string + type: object + type: array + backendPoolHealthProbe: + description: A backend_pool_health_probe block as defined below. + items: + properties: + enabled: + description: Is this health probe enabled? Defaults to true. + type: boolean + intervalInSeconds: + description: The number of seconds between each Health Probe. + Defaults to 120. + type: number + name: + description: Specifies the name of the Health Probe. + type: string + path: + description: The path to use for the Health Probe. Default + is /. + type: string + probeMethod: + description: 'Specifies HTTP method the health probe uses + when querying the backend pool instances. Possible values + include: Get and Head. Defaults to GET.' + type: string + protocol: + description: Protocol scheme to use for the Health Probe. + Possible values are Http and Https. Defaults to Http. + type: string + type: object + type: array + backendPoolLoadBalancing: + description: A backend_pool_load_balancing block as defined below. + items: + properties: + additionalLatencyMilliseconds: + description: The additional latency in milliseconds for + probes to fall into the lowest latency bucket. Defaults + to 0. + type: number + name: + description: Specifies the name of the Load Balancer. + type: string + sampleSize: + description: The number of samples to consider for load + balancing decisions. Defaults to 4. + type: number + successfulSamplesRequired: + description: The number of samples within the sample period + that must succeed. Defaults to 2. + type: number + type: object + type: array + backendPoolSettings: + description: A backend_pool_settings block as defined below. + items: + properties: + backendPoolsSendReceiveTimeoutSeconds: + description: Specifies the send and receive timeout on forwarding + request to the backend. When the timeout is reached, the + request fails and returns. Possible values are between + 0 - 240. Defaults to 60. + type: number + enforceBackendPoolsCertificateNameCheck: + description: Enforce certificate name check on HTTPS requests + to all backend pools, this setting will have no effect + on HTTP requests. Permitted values are true or false. + type: boolean + type: object + type: array + friendlyName: + description: A friendly name for the Front Door service. + type: string + frontendEndpoint: + description: A frontend_endpoint block as defined below. + items: + properties: + hostName: + description: Specifies the host name of the frontend_endpoint. + Must be a domain name. In order to use a name.azurefd.net + domain, the name value must match the Front Door name. + type: string + name: + description: Specifies the name of the frontend_endpoint. + type: string + sessionAffinityEnabled: + description: Whether to allow session affinity on this host. + Valid options are true or false Defaults to false. + type: boolean + sessionAffinityTtlSeconds: + description: The TTL to use in seconds for session affinity, + if applicable. Defaults to 0. + type: number + webApplicationFirewallPolicyLinkId: + description: Defines the Web Application Firewall policy + ID for each host. + type: string + type: object + type: array + loadBalancerEnabled: + description: Should the Front Door Load Balancer be Enabled? Defaults + to true. + type: boolean + routingRule: + description: A routing_rule block as defined below. + items: + properties: + acceptedProtocols: + description: Protocol schemes to match for the Backend Routing + Rule. Possible values are Http and Https. + items: + type: string + type: array + enabled: + description: Enable or Disable use of this Backend Routing + Rule. Permitted values are true or false. Defaults to + true. + type: boolean + forwardingConfiguration: + description: A forwarding_configuration block as defined + below. + items: + properties: + backendPoolName: + description: Specifies the name of the Backend Pool + to forward the incoming traffic to. + type: string + cacheDuration: + description: Specify the minimum caching duration + (in ISO8601 notation e.g. P1DT2H for 1 day and 2 + hours). Needs to be greater than 0 and smaller than + 365 days. cache_duration works only in combination + with cache_enabled set to true. + type: string + cacheEnabled: + description: Specifies whether to Enable caching or + not. Valid options are true or false. Defaults to + false. + type: boolean + cacheQueryParameterStripDirective: + description: Defines cache behaviour in relation to + query string parameters. Valid options are StripAll, + StripAllExcept, StripOnly or StripNone. Defaults + to StripAll. + type: string + cacheQueryParameters: + description: Specify query parameters (array). Works + only in combination with cache_query_parameter_strip_directive + set to StripAllExcept or StripOnly. + items: + type: string + type: array + cacheUseDynamicCompression: + description: Whether to use dynamic compression when + caching. Valid options are true or false. Defaults + to false. + type: boolean + customForwardingPath: + description: Path to use when constructing the request + to forward to the backend. This functions as a URL + Rewrite. Default behaviour preserves the URL path. + type: string + forwardingProtocol: + description: Protocol to use when redirecting. Valid + options are HttpOnly, HttpsOnly, or MatchRequest. + Defaults to HttpsOnly. + type: string + type: object + type: array + frontendEndpoints: + description: The names of the frontend_endpoint blocks within + this resource to associate with this routing_rule. + items: + type: string + type: array + name: + description: Specifies the name of the Routing Rule. + type: string + patternsToMatch: + description: The route patterns for the Backend Routing + Rule. + items: + type: string + type: array + redirectConfiguration: + description: A redirect_configuration block as defined below. + items: + properties: + customFragment: + description: The destination fragment in the portion + of URL after '#'. Set this to add a fragment to + the redirect URL. + type: string + customHost: + description: Set this to change the URL for the redirection. + type: string + customPath: + description: The path to retain as per the incoming + request, or update in the URL for the redirection. + type: string + customQueryString: + description: Replace any existing query string from + the incoming request URL. + type: string + redirectProtocol: + description: Protocol to use when redirecting. Valid + options are HttpOnly, HttpsOnly, or MatchRequest. + type: string + redirectType: + description: Status code for the redirect. Valida + options are Moved, Found, TemporaryRedirect, PermanentRedirect. + type: string + type: object + type: array + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -639,15 +907,25 @@ spec: type: object x-kubernetes-validations: - message: backendPool is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPool) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backendPool) + || has(self.initProvider.backendPool)' - message: backendPoolHealthProbe is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPoolHealthProbe) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backendPoolHealthProbe) + || has(self.initProvider.backendPoolHealthProbe)' - message: backendPoolLoadBalancing is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPoolLoadBalancing) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backendPoolLoadBalancing) + || has(self.initProvider.backendPoolLoadBalancing)' - message: frontendEndpoint is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendEndpoint) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frontendEndpoint) + || has(self.initProvider.frontendEndpoint)' - message: routingRule is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.routingRule) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.routingRule) + || has(self.initProvider.routingRule)' status: description: FrontDoorStatus defines the observed state of FrontDoor. properties: diff --git a/package/crds/network.azure.upbound.io_ipgroups.yaml b/package/crds/network.azure.upbound.io_ipgroups.yaml index dbd5ad018..ad78a896b 100644 --- a/package/crds/network.azure.upbound.io_ipgroups.yaml +++ b/package/crds/network.azure.upbound.io_ipgroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: ipgroups.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -162,21 +161,60 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + cidrs: + description: A list of CIDRs or IP addresses. + items: + type: string + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -350,7 +388,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: IPGroupStatus defines the observed state of IPGroup. properties: diff --git a/package/crds/network.azure.upbound.io_loadbalancerbackendaddresspooladdresses.yaml b/package/crds/network.azure.upbound.io_loadbalancerbackendaddresspooladdresses.yaml index c1a1a47bc..229c88262 100644 --- a/package/crds/network.azure.upbound.io_loadbalancerbackendaddresspooladdresses.yaml +++ b/package/crds/network.azure.upbound.io_loadbalancerbackendaddresspooladdresses.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loadbalancerbackendaddresspooladdresses.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -237,21 +236,56 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + backendAddressIpConfigurationId: + description: The ip config ID of the regional load balancer that's + added to the global load balancer's backend address pool. For + global load balancer, user needs to specify the `backend_address_ip_configuration_id` + of the added regional load balancers + type: string + ipAddress: + description: The Static IP Address which should be allocated to + this Backend Address Pool. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_loadbalancerbackendaddresspools.yaml b/package/crds/network.azure.upbound.io_loadbalancerbackendaddresspools.yaml index 1ad5ae4e3..2bf4e8085 100644 --- a/package/crds/network.azure.upbound.io_loadbalancerbackendaddresspools.yaml +++ b/package/crds/network.azure.upbound.io_loadbalancerbackendaddresspools.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loadbalancerbackendaddresspools.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -169,11 +168,6 @@ spec: Tunnel Interface. Possible values are None, Internal and External. type: string - required: - - identifier - - port - - protocol - - type type: object type: array virtualNetworkId: @@ -181,21 +175,74 @@ spec: Address Pool should exist. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + tunnelInterface: + description: One or more tunnel_interface blocks as defined below. + items: + properties: + identifier: + description: The unique identifier of this Gateway Lodbalancer + Tunnel Interface. + type: number + port: + description: The port number that this Gateway Lodbalancer + Tunnel Interface listens to. + type: number + protocol: + description: The protocol used for this Gateway Lodbalancer + Tunnel Interface. Possible values are None, Native and + VXLAN. + type: string + type: + description: The traffic type of this Gateway Lodbalancer + Tunnel Interface. Possible values are None, Internal and + External. + type: string + type: object + type: array + virtualNetworkId: + description: The ID of the Virtual Network within which the Backend + Address Pool should exist. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_loadbalancernatpools.yaml b/package/crds/network.azure.upbound.io_loadbalancernatpools.yaml index 58dc6a75a..4b59e5318 100644 --- a/package/crds/network.azure.upbound.io_loadbalancernatpools.yaml +++ b/package/crds/network.azure.upbound.io_loadbalancernatpools.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loadbalancernatpools.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -262,21 +261,83 @@ spec: description: Is TCP Reset enabled for this Load Balancer Rule? type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + backendPort: + description: The port used for the internal endpoint. Possible + values range between 1 and 65535, inclusive. + type: number + floatingIpEnabled: + description: Are the floating IPs enabled for this Load Balancer + Rule? A floating IP is reassigned to a secondary server in case + the primary server fails. Required to configure a SQL AlwaysOn + Availability Group. + type: boolean + frontendIpConfigurationName: + description: The name of the frontend IP configuration exposing + this rule. + type: string + frontendPortEnd: + description: The last port number in the range of external ports + that will be used to provide Inbound NAT to NICs associated + with this Load Balancer. Possible values range between 1 and + 65534, inclusive. + type: number + frontendPortStart: + description: The first port number in the range of external ports + that will be used to provide Inbound NAT to NICs associated + with this Load Balancer. Possible values range between 1 and + 65534, inclusive. + type: number + idleTimeoutInMinutes: + description: Specifies the idle timeout in minutes for TCP connections. + Valid values are between 4 and 30. Defaults to 4. + type: number + protocol: + description: The transport protocol for the external endpoint. + Possible values are All, Tcp and Udp. + type: string + tcpResetEnabled: + description: Is TCP Reset enabled for this Load Balancer Rule? + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -450,15 +511,25 @@ spec: type: object x-kubernetes-validations: - message: backendPort is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPort) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backendPort) + || has(self.initProvider.backendPort)' - message: frontendIpConfigurationName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendIpConfigurationName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frontendIpConfigurationName) + || has(self.initProvider.frontendIpConfigurationName)' - message: frontendPortEnd is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendPortEnd) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frontendPortEnd) + || has(self.initProvider.frontendPortEnd)' - message: frontendPortStart is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendPortStart) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frontendPortStart) + || has(self.initProvider.frontendPortStart)' - message: protocol is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.protocol) + || has(self.initProvider.protocol)' status: description: LoadBalancerNatPoolStatus defines the observed state of LoadBalancerNatPool. properties: diff --git a/package/crds/network.azure.upbound.io_loadbalancernatrules.yaml b/package/crds/network.azure.upbound.io_loadbalancernatrules.yaml index 976ecbf92..3e582e751 100644 --- a/package/crds/network.azure.upbound.io_loadbalancernatrules.yaml +++ b/package/crds/network.azure.upbound.io_loadbalancernatrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loadbalancernatrules.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -347,21 +346,90 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + backendPort: + description: The port used for internal connections on the endpoint. + Possible values range between 1 and 65535, inclusive. + type: number + enableFloatingIp: + description: Are the Floating IPs enabled for this Load Balancer + Rule? A "floating” IP is reassigned to a secondary server in + case the primary server fails. Required to configure a SQL AlwaysOn + Availability Group. Defaults to false. + type: boolean + enableTcpReset: + description: Is TCP Reset enabled for this Load Balancer Rule? + type: boolean + frontendIpConfigurationName: + description: The name of the frontend IP configuration exposing + this rule. + type: string + frontendPort: + description: The port for the external endpoint. Port numbers + for each Rule must be unique within the Load Balancer. Possible + values range between 1 and 65534, inclusive. + type: number + frontendPortEnd: + description: The port range end for the external endpoint. This + property is used together with BackendAddressPool and FrontendPortRangeStart. + Individual inbound NAT rule port mappings will be created for + each backend address from BackendAddressPool. Acceptable values + range from 1 to 65534, inclusive. + type: number + frontendPortStart: + description: The port range start for the external endpoint. This + property is used together with BackendAddressPool and FrontendPortRangeEnd. + Individual inbound NAT rule port mappings will be created for + each backend address from BackendAddressPool. Acceptable values + range from 1 to 65534, inclusive. + type: number + idleTimeoutInMinutes: + description: Specifies the idle timeout in minutes for TCP connections. + Valid values are between 4 and 30 minutes. Defaults to 4 minutes. + type: number + protocol: + description: The transport protocol for the external endpoint. + Possible values are Udp, Tcp or All. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -535,11 +603,17 @@ spec: type: object x-kubernetes-validations: - message: backendPort is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPort) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backendPort) + || has(self.initProvider.backendPort)' - message: frontendIpConfigurationName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendIpConfigurationName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frontendIpConfigurationName) + || has(self.initProvider.frontendIpConfigurationName)' - message: protocol is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.protocol) + || has(self.initProvider.protocol)' status: description: LoadBalancerNatRuleStatus defines the observed state of LoadBalancerNatRule. properties: diff --git a/package/crds/network.azure.upbound.io_loadbalanceroutboundrules.yaml b/package/crds/network.azure.upbound.io_loadbalanceroutboundrules.yaml index c9c7a6568..458d7ab41 100644 --- a/package/crds/network.azure.upbound.io_loadbalanceroutboundrules.yaml +++ b/package/crds/network.azure.upbound.io_loadbalanceroutboundrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loadbalanceroutboundrules.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -165,8 +164,6 @@ spec: name: description: The name of the Frontend IP Configuration. type: string - required: - - name type: object type: array idleTimeoutInMinutes: @@ -255,21 +252,73 @@ spec: Possible values are Udp, Tcp or All. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allocatedOutboundPorts: + description: The number of outbound ports to be used for NAT. + Defaults to 1024. + type: number + enableTcpReset: + description: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is + only used when the protocol is set to TCP. + type: boolean + frontendIpConfiguration: + description: One or more frontend_ip_configuration blocks as defined + below. + items: + properties: + name: + description: The name of the Frontend IP Configuration. + type: string + type: object + type: array + idleTimeoutInMinutes: + description: The timeout for the TCP idle connection Defaults + to 4. + type: number + protocol: + description: The transport protocol for the external endpoint. + Possible values are Udp, Tcp or All. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -443,7 +492,9 @@ spec: type: object x-kubernetes-validations: - message: protocol is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.protocol) + || has(self.initProvider.protocol)' status: description: LoadBalancerOutboundRuleStatus defines the observed state of LoadBalancerOutboundRule. diff --git a/package/crds/network.azure.upbound.io_loadbalancerprobes.yaml b/package/crds/network.azure.upbound.io_loadbalancerprobes.yaml index ea30b269b..8efb75ed6 100644 --- a/package/crds/network.azure.upbound.io_loadbalancerprobes.yaml +++ b/package/crds/network.azure.upbound.io_loadbalancerprobes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loadbalancerprobes.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -179,21 +178,79 @@ spec: Otherwise, it is not allowed. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + intervalInSeconds: + description: The interval, in seconds between probes to the backend + endpoint for health status. The default value is 15, the minimum + value is 5. + type: number + numberOfProbes: + description: The number of failed probe attempts after which the + backend endpoint is removed from rotation. The default value + is 2. NumberOfProbes multiplied by intervalInSeconds value must + be greater or equal to 10.Endpoints are returned to rotation + when at least one probe is successful. + type: number + port: + description: Port on which the Probe queries the backend endpoint. + Possible values range from 1 to 65535, inclusive. + type: number + probeThreshold: + description: The number of consecutive successful or failed probes + that allow or deny traffic to this endpoint. Possible values + range from 1 to 100. The default value is 1. + type: number + protocol: + description: Specifies the protocol of the end point. Possible + values are Http, Https or Tcp. If TCP is specified, a received + ACK is required for the probe to be successful. If HTTP is specified, + a 200 OK response from the specified URI is required for the + probe to be successful. + type: string + requestPath: + description: The URI used for requesting health status from the + backend endpoint. Required if protocol is set to Http or Https. + Otherwise, it is not allowed. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -367,7 +424,9 @@ spec: type: object x-kubernetes-validations: - message: port is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.port) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.port) + || has(self.initProvider.port)' status: description: LoadBalancerProbeStatus defines the observed state of LoadBalancerProbe. properties: diff --git a/package/crds/network.azure.upbound.io_loadbalancerrules.yaml b/package/crds/network.azure.upbound.io_loadbalancerrules.yaml index 32eb00b83..238304627 100644 --- a/package/crds/network.azure.upbound.io_loadbalancerrules.yaml +++ b/package/crds/network.azure.upbound.io_loadbalancerrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loadbalancerrules.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -201,21 +200,101 @@ spec: Possible values are Tcp, Udp or All. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + backendAddressPoolIds: + description: A list of reference to a Backend Address Pool over + which this Load Balancing Rule operates. + items: + type: string + type: array + backendPort: + description: The port used for internal connections on the endpoint. + Possible values range between 0 and 65535, inclusive. + type: number + disableOutboundSnat: + description: Is snat enabled for this Load Balancer Rule? Default + false. + type: boolean + enableFloatingIp: + description: Are the Floating IPs enabled for this Load Balncer + Rule? A "floating” IP is reassigned to a secondary server in + case the primary server fails. Required to configure a SQL AlwaysOn + Availability Group. Defaults to false. + type: boolean + enableTcpReset: + description: Is TCP Reset enabled for this Load Balancer Rule? + type: boolean + frontendIpConfigurationName: + description: The name of the frontend IP configuration to which + the rule is associated. + type: string + frontendPort: + description: The port for the external endpoint. Port numbers + for each Rule must be unique within the Load Balancer. Possible + values range between 0 and 65534, inclusive. + type: number + idleTimeoutInMinutes: + description: Specifies the idle timeout in minutes for TCP connections. + Valid values are between 4 and 30 minutes. Defaults to 4 minutes. + type: number + loadDistribution: + description: 'Specifies the load balancing distribution type to + be used by the Load Balancer. Possible values are: Default – + The load balancer is configured to use a 5 tuple hash to map + traffic to available servers. SourceIP – The load balancer is + configured to use a 2 tuple hash to map traffic to available + servers. SourceIPProtocol – The load balancer is configured + to use a 3 tuple hash to map traffic to available servers. Also + known as Session Persistence, where the options are called None, + Client IP and Client IP and Protocol respectively.' + type: string + probeId: + description: A reference to a Probe used by this Load Balancing + Rule. + type: string + protocol: + description: The transport protocol for the external endpoint. + Possible values are Tcp, Udp or All. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -389,13 +468,21 @@ spec: type: object x-kubernetes-validations: - message: backendPort is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backendPort) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backendPort) + || has(self.initProvider.backendPort)' - message: frontendIpConfigurationName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendIpConfigurationName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frontendIpConfigurationName) + || has(self.initProvider.frontendIpConfigurationName)' - message: frontendPort is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.frontendPort) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.frontendPort) + || has(self.initProvider.frontendPort)' - message: protocol is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.protocol) + || has(self.initProvider.protocol)' status: description: LoadBalancerRuleStatus defines the observed state of LoadBalancerRule. properties: diff --git a/package/crds/network.azure.upbound.io_loadbalancers.yaml b/package/crds/network.azure.upbound.io_loadbalancers.yaml index 5ea98a123..0a660061e 100644 --- a/package/crds/network.azure.upbound.io_loadbalancers.yaml +++ b/package/crds/network.azure.upbound.io_loadbalancers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loadbalancers.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -270,8 +269,6 @@ spec: items: type: string type: array - required: - - name type: object type: array location: @@ -375,21 +372,110 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Load Balancer should exist. Changing this forces a new + Load Balancer to be created. + type: string + frontendIpConfiguration: + description: One or multiple frontend_ip_configuration blocks + as documented below. + items: + properties: + gatewayLoadBalancerFrontendIpConfigurationId: + description: The Frontend IP Configuration ID of a Gateway + SKU Load Balancer. + type: string + name: + description: Specifies the name of the frontend IP configuration. + type: string + privateIpAddress: + description: Private IP Address to assign to the Load Balancer. + The last one and first four IPs in any range are reserved + and cannot be manually assigned. + type: string + privateIpAddressAllocation: + description: The allocation method for the Private IP Address + used by this Load Balancer. Possible values as Dynamic + and Static. + type: string + privateIpAddressVersion: + description: The version of IP that the Private IP Address + is. Possible values are IPv4 or IPv6. + type: string + publicIpPrefixId: + description: The ID of a Public IP Prefix which should be + associated with the Load Balancer. Public IP Prefix can + only be used with outbound rules. + type: string + zones: + description: Specifies a list of Availability Zones in which + the IP Address for this Load Balancer should be located. + items: + type: string + type: array + type: object + type: array + location: + description: Specifies the supported Azure Region where the Load + Balancer should be created. Changing this forces a new resource + to be created. + type: string + sku: + description: The SKU of the Azure Load Balancer. Accepted values + are Basic, Standard and Gateway. Defaults to Basic. Changing + this forces a new resource to be created. + type: string + skuTier: + description: sku_tier - The SKU tier of this Load Balancer. Possible + values are Global and Regional. Defaults to Regional. Changing + this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -563,7 +649,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: LoadBalancerStatus defines the observed state of LoadBalancer. properties: diff --git a/package/crds/network.azure.upbound.io_localnetworkgateways.yaml b/package/crds/network.azure.upbound.io_localnetworkgateways.yaml index c87705adf..b6ef90ba5 100644 --- a/package/crds/network.azure.upbound.io_localnetworkgateways.yaml +++ b/package/crds/network.azure.upbound.io_localnetworkgateways.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: localnetworkgateways.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -91,9 +90,6 @@ spec: description: The weight added to routes learned from this BGP speaker. type: number - required: - - asn - - bgpPeeringAddress type: object type: array gatewayAddress: @@ -192,21 +188,85 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addressSpace: + description: The list of string CIDRs representing the address + spaces the gateway exposes. + items: + type: string + type: array + bgpSettings: + description: A bgp_settings block as defined below containing + the Local Network Gateway's BGP speaker settings. + items: + properties: + asn: + description: The BGP speaker's ASN. + type: number + bgpPeeringAddress: + description: The BGP peering address and BGP identifier + of this BGP speaker. + type: string + peerWeight: + description: The weight added to routes learned from this + BGP speaker. + type: number + type: object + type: array + gatewayAddress: + description: The gateway IP address to connect with. + type: string + gatewayFqdn: + description: The gateway FQDN to connect with. + type: string + location: + description: The location/region where the local network gateway + is created. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -380,7 +440,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: LocalNetworkGatewayStatus defines the observed state of LocalNetworkGateway. properties: diff --git a/package/crds/network.azure.upbound.io_managermanagementgroupconnections.yaml b/package/crds/network.azure.upbound.io_managermanagementgroupconnections.yaml index 08ad20b76..49980f6fc 100644 --- a/package/crds/network.azure.upbound.io_managermanagementgroupconnections.yaml +++ b/package/crds/network.azure.upbound.io_managermanagementgroupconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managermanagementgroupconnections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -231,21 +230,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description of the Network Manager Management Group + Connection. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_managernetworkgroups.yaml b/package/crds/network.azure.upbound.io_managernetworkgroups.yaml index a12a16fbb..dd3ec5179 100644 --- a/package/crds/network.azure.upbound.io_managernetworkgroups.yaml +++ b/package/crds/network.azure.upbound.io_managernetworkgroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managernetworkgroups.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -149,21 +148,49 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description of the Network Manager Network Group. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_managers.yaml b/package/crds/network.azure.upbound.io_managers.yaml index 35b68521d..c81bc2943 100644 --- a/package/crds/network.azure.upbound.io_managers.yaml +++ b/package/crds/network.azure.upbound.io_managers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managers.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -186,21 +185,83 @@ spec: Network Managers. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description of the network manager. + type: string + location: + description: Specifies the Azure Region where the Network Managers + should exist. Changing this forces a new resource to be created. + type: string + scope: + description: A scope block as defined below. + items: + properties: + managementGroupIds: + description: A list of management group IDs. + items: + type: string + type: array + subscriptionIds: + description: A list of subscription IDs. + items: + type: string + type: array + type: object + type: array + scopeAccesses: + description: A list of configuration deployment type. Possible + values are Connectivity and SecurityAdmin, corresponds to if + Connectivity Configuration and Security Admin Configuration + is allowed for the Network Manager. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Network Managers. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -374,11 +435,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: scope is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scope) + || has(self.initProvider.scope)' - message: scopeAccesses is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scopeAccesses) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scopeAccesses) + || has(self.initProvider.scopeAccesses)' status: description: ManagerStatus defines the observed state of Manager. properties: diff --git a/package/crds/network.azure.upbound.io_managerstaticmembers.yaml b/package/crds/network.azure.upbound.io_managerstaticmembers.yaml index 9e9391319..552f8b9b4 100644 --- a/package/crds/network.azure.upbound.io_managerstaticmembers.yaml +++ b/package/crds/network.azure.upbound.io_managerstaticmembers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managerstaticmembers.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -226,21 +225,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_managersubscriptionconnections.yaml b/package/crds/network.azure.upbound.io_managersubscriptionconnections.yaml index 63cc34569..9a9a2c641 100644 --- a/package/crds/network.azure.upbound.io_managersubscriptionconnections.yaml +++ b/package/crds/network.azure.upbound.io_managersubscriptionconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managersubscriptionconnections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -155,21 +154,54 @@ spec: this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: A description of the Network Manager Subscription + Connection. + type: string + subscriptionId: + description: Specifies the ID of the target Subscription. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -343,7 +375,9 @@ spec: type: object x-kubernetes-validations: - message: subscriptionId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subscriptionId) + || has(self.initProvider.subscriptionId)' status: description: ManagerSubscriptionConnectionStatus defines the observed state of ManagerSubscriptionConnection. diff --git a/package/crds/network.azure.upbound.io_natgatewaypublicipassociations.yaml b/package/crds/network.azure.upbound.io_natgatewaypublicipassociations.yaml index 0d0a4e5fd..f7bb70e45 100644 --- a/package/crds/network.azure.upbound.io_natgatewaypublicipassociations.yaml +++ b/package/crds/network.azure.upbound.io_natgatewaypublicipassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: natgatewaypublicipassociations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -225,21 +224,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_natgatewaypublicipprefixassociations.yaml b/package/crds/network.azure.upbound.io_natgatewaypublicipprefixassociations.yaml index 6d63ca6b9..134c4e7fd 100644 --- a/package/crds/network.azure.upbound.io_natgatewaypublicipprefixassociations.yaml +++ b/package/crds/network.azure.upbound.io_natgatewaypublicipprefixassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: natgatewaypublicipprefixassociations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -225,21 +224,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_natgateways.yaml b/package/crds/network.azure.upbound.io_natgateways.yaml index e4d76ee36..1a7e41a4b 100644 --- a/package/crds/network.azure.upbound.io_natgateways.yaml +++ b/package/crds/network.azure.upbound.io_natgateways.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: natgateways.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -174,21 +173,71 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + idleTimeoutInMinutes: + description: The idle timeout which should be used in minutes. + Defaults to 4. + type: number + location: + description: Specifies the supported Azure location where the + NAT Gateway should exist. Changing this forces a new resource + to be created. + type: string + skuName: + description: The SKU which should be used. At this time the only + supported value is Standard. Defaults to Standard. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zones: + description: A list of Availability Zones in which this NAT Gateway + should be located. Changing this forces a new NAT Gateway to + be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -362,7 +411,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: NATGatewayStatus defines the observed state of NATGateway. properties: diff --git a/package/crds/network.azure.upbound.io_networkinterfaceapplicationsecuritygroupassociations.yaml b/package/crds/network.azure.upbound.io_networkinterfaceapplicationsecuritygroupassociations.yaml index 9b428d2a2..df6bdf4ba 100644 --- a/package/crds/network.azure.upbound.io_networkinterfaceapplicationsecuritygroupassociations.yaml +++ b/package/crds/network.azure.upbound.io_networkinterfaceapplicationsecuritygroupassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: networkinterfaceapplicationsecuritygroupassociations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -228,21 +227,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_networkinterfacebackendaddresspoolassociations.yaml b/package/crds/network.azure.upbound.io_networkinterfacebackendaddresspoolassociations.yaml index 52763c57e..31ad25b09 100644 --- a/package/crds/network.azure.upbound.io_networkinterfacebackendaddresspoolassociations.yaml +++ b/package/crds/network.azure.upbound.io_networkinterfacebackendaddresspoolassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: networkinterfacebackendaddresspoolassociations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -233,21 +232,51 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + ipConfigurationName: + description: The Name of the IP Configuration within the Network + Interface which should be connected to the Backend Address Pool. + Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -421,7 +450,9 @@ spec: type: object x-kubernetes-validations: - message: ipConfigurationName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ipConfigurationName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ipConfigurationName) + || has(self.initProvider.ipConfigurationName)' status: description: NetworkInterfaceBackendAddressPoolAssociationStatus defines the observed state of NetworkInterfaceBackendAddressPoolAssociation. diff --git a/package/crds/network.azure.upbound.io_networkinterfacenatruleassociations.yaml b/package/crds/network.azure.upbound.io_networkinterfacenatruleassociations.yaml index 5fcc09f20..57537f218 100644 --- a/package/crds/network.azure.upbound.io_networkinterfacenatruleassociations.yaml +++ b/package/crds/network.azure.upbound.io_networkinterfacenatruleassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: networkinterfacenatruleassociations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -231,21 +230,51 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + ipConfigurationName: + description: The Name of the IP Configuration within the Network + Interface which should be connected to the NAT Rule. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -419,7 +448,9 @@ spec: type: object x-kubernetes-validations: - message: ipConfigurationName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ipConfigurationName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ipConfigurationName) + || has(self.initProvider.ipConfigurationName)' status: description: NetworkInterfaceNatRuleAssociationStatus defines the observed state of NetworkInterfaceNatRuleAssociation. diff --git a/package/crds/network.azure.upbound.io_networkinterfaces.yaml b/package/crds/network.azure.upbound.io_networkinterfaces.yaml index 57a2e1eb4..26b2b2d1c 100644 --- a/package/crds/network.azure.upbound.io_networkinterfaces.yaml +++ b/package/crds/network.azure.upbound.io_networkinterfaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: networkinterfaces.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -203,9 +202,6 @@ spec: type: string type: object type: object - required: - - name - - privateIpAddressAllocation type: object type: array location: @@ -298,21 +294,110 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dnsServers: + description: A list of IP Addresses defining the DNS Servers which + should be used for this Network Interface. + items: + type: string + type: array + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Network Interface should exist. Changing this forces a + new Network Interface to be created. + type: string + enableAcceleratedNetworking: + description: Should Accelerated Networking be enabled? Defaults + to false. + type: boolean + enableIpForwarding: + description: Should IP Forwarding be enabled? Defaults to false. + type: boolean + internalDnsNameLabel: + description: The (relative) DNS Name used for internal communications + between Virtual Machines in the same Virtual Network. + type: string + ipConfiguration: + description: One or more ip_configuration blocks as defined below. + items: + properties: + gatewayLoadBalancerFrontendIpConfigurationId: + description: The Frontend IP Configuration ID of a Gateway + SKU Load Balancer. + type: string + name: + description: A name used for this IP Configuration. + type: string + primary: + description: Is this the Primary IP Configuration? Must + be true for the first ip_configuration when multiple are + specified. Defaults to false. + type: boolean + privateIpAddress: + description: The Static IP Address which should be used. + type: string + privateIpAddressAllocation: + description: The allocation method used for the Private + IP Address. Possible values are Dynamic and Static. + type: string + privateIpAddressVersion: + description: The IP Version to use. Possible values are + IPv4 or IPv6. Defaults to IPv4. + type: string + publicIpAddressId: + description: Reference to a Public IP Address to associate + with this NIC + type: string + type: object + type: array + location: + description: The location where the Network Interface should exist. + Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -486,9 +571,13 @@ spec: type: object x-kubernetes-validations: - message: ipConfiguration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ipConfiguration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ipConfiguration) + || has(self.initProvider.ipConfiguration)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: NetworkInterfaceStatus defines the observed state of NetworkInterface. properties: diff --git a/package/crds/network.azure.upbound.io_networkinterfacesecuritygroupassociations.yaml b/package/crds/network.azure.upbound.io_networkinterfacesecuritygroupassociations.yaml index f3e2397d2..0456843cd 100644 --- a/package/crds/network.azure.upbound.io_networkinterfacesecuritygroupassociations.yaml +++ b/package/crds/network.azure.upbound.io_networkinterfacesecuritygroupassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: networkinterfacesecuritygroupassociations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -226,21 +225,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_packetcaptures.yaml b/package/crds/network.azure.upbound.io_packetcaptures.yaml index 274f80016..ac329e14e 100644 --- a/package/crds/network.azure.upbound.io_packetcaptures.yaml +++ b/package/crds/network.azure.upbound.io_packetcaptures.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: packetcaptures.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -108,8 +107,6 @@ spec: Mixing ranges with multiple entries not currently supported. Changing this forces a new resource to be created.' type: string - required: - - protocol type: object type: array maximumBytesPerPacket: @@ -382,21 +379,119 @@ spec: this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + filter: + description: One or more filter blocks as defined below. Changing + this forces a new resource to be created. + items: + properties: + localIpAddress: + description: 'The local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" + for range. "127.0.0.1;127.0.0.5" for multiple entries. + Multiple ranges not currently supported. Mixing ranges + with multiple entries not currently supported. Changing + this forces a new resource to be created.' + type: string + localPort: + description: 'The local port to be filtered on. Notation: + "80" for single port entry."80-85" for range. "80;443;" + for multiple entries. Multiple ranges not currently supported. + Mixing ranges with multiple entries not currently supported. + Changing this forces a new resource to be created.' + type: string + protocol: + description: The Protocol to be filtered on. Possible values + include Any, TCP and UDP. Changing this forces a new resource + to be created. + type: string + remoteIpAddress: + description: 'The remote IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" + for range. "127.0.0.1;127.0.0.5;" for multiple entries. + Multiple ranges not currently supported. Mixing ranges + with multiple entries not currently supported.. Changing + this forces a new resource to be created.' + type: string + remotePort: + description: 'The remote port to be filtered on. Notation: + "80" for single port entry."80-85" for range. "80;443;" + for multiple entries. Multiple ranges not currently supported. + Mixing ranges with multiple entries not currently supported. + Changing this forces a new resource to be created.' + type: string + type: object + type: array + maximumBytesPerPacket: + description: The number of bytes captured per packet. The remaining + bytes are truncated. Defaults to 0 (Entire Packet Captured). + Changing this forces a new resource to be created. + type: number + maximumBytesPerSession: + description: Maximum size of the capture in Bytes. Defaults to + 1073741824 (1GB). Changing this forces a new resource to be + created. + type: number + maximumCaptureDuration: + description: The maximum duration of the capture session in seconds. + Defaults to 18000 (5 hours). Changing this forces a new resource + to be created. + type: number + storageLocation: + description: A storage_location block as defined below. Changing + this forces a new resource to be created. + items: + properties: + filePath: + description: A valid local path on the targeting VM. Must + include the name of the capture file (*.cap). For Linux + virtual machine it must start with /var/captures. + type: string + type: object + type: array + targetResourceId: + description: The ID of the Resource to capture packets from. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -570,9 +665,13 @@ spec: type: object x-kubernetes-validations: - message: storageLocation is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageLocation) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageLocation) + || has(self.initProvider.storageLocation)' - message: targetResourceId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetResourceId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.targetResourceId) + || has(self.initProvider.targetResourceId)' status: description: PacketCaptureStatus defines the observed state of PacketCapture. properties: diff --git a/package/crds/network.azure.upbound.io_pointtositevpngateways.yaml b/package/crds/network.azure.upbound.io_pointtositevpngateways.yaml index 87113137a..5c9920d98 100644 --- a/package/crds/network.azure.upbound.io_pointtositevpngateways.yaml +++ b/package/crds/network.azure.upbound.io_pointtositevpngateways.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: pointtositevpngateways.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -118,12 +117,8 @@ spec: items: type: string type: array - required: - - ids type: object type: array - required: - - associatedRouteTableId type: object type: array vpnClientAddressPool: @@ -137,13 +132,8 @@ spec: items: type: string type: array - required: - - addressPrefixes type: object type: array - required: - - name - - vpnClientAddressPool type: object type: array dnsServers: @@ -409,21 +399,139 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + connectionConfiguration: + description: A connection_configuration block as defined below. + items: + properties: + internetSecurityEnabled: + description: Should Internet Security be enabled to secure + internet traffic? Changing this forces a new resource + to be created. Defaults to false. + type: boolean + name: + description: The Name which should be used for this Connection + Configuration. + type: string + route: + description: A route block as defined below. + items: + properties: + associatedRouteTableId: + description: The Virtual Hub Route Table resource + id associated with this Routing Configuration. + type: string + inboundRouteMapId: + description: The resource ID of the Route Map associated + with this Routing Configuration for inbound learned + routes. + type: string + outboundRouteMapId: + description: The resource ID of the Route Map associated + with this Routing Configuration for outbound advertised + routes. + type: string + propagatedRouteTable: + description: A propagated_route_table block as defined + below. + items: + properties: + ids: + description: The list of Virtual Hub Route Table + resource id which the routes will be propagated + to. + items: + type: string + type: array + labels: + description: The list of labels to logically + group Virtual Hub Route Tables which the routes + will be propagated to. + items: + type: string + type: array + type: object + type: array + type: object + type: array + vpnClientAddressPool: + description: A vpn_client_address_pool block as defined + below. + items: + properties: + addressPrefixes: + description: A list of CIDR Ranges which should be + used as Address Prefixes. + items: + type: string + type: array + type: object + type: array + type: object + type: array + dnsServers: + description: A list of IP Addresses of DNS Servers for the Point-to-Site + VPN Gateway. + items: + type: string + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + routingPreferenceInternetEnabled: + description: Is the Routing Preference for the Public IP Interface + of the VPN Gateway enabled? Defaults to false. Changing this + forces a new resource to be created. + type: boolean + scaleUnit: + description: The Scale Unit for this Point-to-Site VPN Gateway. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Point-to-Site + VPN Gateway. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -597,11 +705,17 @@ spec: type: object x-kubernetes-validations: - message: connectionConfiguration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.connectionConfiguration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.connectionConfiguration) + || has(self.initProvider.connectionConfiguration)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: scaleUnit is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scaleUnit) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scaleUnit) + || has(self.initProvider.scaleUnit)' status: description: PointToSiteVPNGatewayStatus defines the observed state of PointToSiteVPNGateway. diff --git a/package/crds/network.azure.upbound.io_privatednsaaaarecords.yaml b/package/crds/network.azure.upbound.io_privatednsaaaarecords.yaml index 56cb2b761..8b0e1fdcd 100644 --- a/package/crds/network.azure.upbound.io_privatednsaaaarecords.yaml +++ b/package/crds/network.azure.upbound.io_privatednsaaaarecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatednsaaaarecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -238,21 +237,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + records: + description: A list of IPv6 Addresses. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -426,9 +463,13 @@ spec: type: object x-kubernetes-validations: - message: records is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.records) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.records) + || has(self.initProvider.records)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: PrivateDNSAAAARecordStatus defines the observed state of PrivateDNSAAAARecord. diff --git a/package/crds/network.azure.upbound.io_privatednsarecords.yaml b/package/crds/network.azure.upbound.io_privatednsarecords.yaml index e9466743e..37bbed46d 100644 --- a/package/crds/network.azure.upbound.io_privatednsarecords.yaml +++ b/package/crds/network.azure.upbound.io_privatednsarecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatednsarecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -238,21 +237,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + records: + description: List of IPv4 Addresses. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -426,9 +463,13 @@ spec: type: object x-kubernetes-validations: - message: records is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.records) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.records) + || has(self.initProvider.records)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: PrivateDNSARecordStatus defines the observed state of PrivateDNSARecord. properties: diff --git a/package/crds/network.azure.upbound.io_privatednscnamerecords.yaml b/package/crds/network.azure.upbound.io_privatednscnamerecords.yaml index 347809231..04228f31e 100644 --- a/package/crds/network.azure.upbound.io_privatednscnamerecords.yaml +++ b/package/crds/network.azure.upbound.io_privatednscnamerecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatednscnamerecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -236,21 +235,57 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + record: + description: The target of the CNAME. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -424,9 +459,13 @@ spec: type: object x-kubernetes-validations: - message: record is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.record) + || has(self.initProvider.record)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: PrivateDNSCNAMERecordStatus defines the observed state of PrivateDNSCNAMERecord. diff --git a/package/crds/network.azure.upbound.io_privatednsmxrecords.yaml b/package/crds/network.azure.upbound.io_privatednsmxrecords.yaml index bb6d54e91..2df016cca 100644 --- a/package/crds/network.azure.upbound.io_privatednsmxrecords.yaml +++ b/package/crds/network.azure.upbound.io_privatednsmxrecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatednsmxrecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -79,9 +78,6 @@ spec: preference: description: The preference of the MX record. type: number - required: - - exchange - - preference type: object type: array resourceGroupName: @@ -249,21 +245,67 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + record: + description: One or more record blocks as defined below. + items: + properties: + exchange: + description: The FQDN of the exchange to MX record points + to. + type: string + preference: + description: The preference of the MX record. + type: number + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -437,9 +479,13 @@ spec: type: object x-kubernetes-validations: - message: record is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.record) + || has(self.initProvider.record)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: PrivateDNSMXRecordStatus defines the observed state of PrivateDNSMXRecord. properties: diff --git a/package/crds/network.azure.upbound.io_privatednsptrrecords.yaml b/package/crds/network.azure.upbound.io_privatednsptrrecords.yaml index e5d5082a3..22e2358f3 100644 --- a/package/crds/network.azure.upbound.io_privatednsptrrecords.yaml +++ b/package/crds/network.azure.upbound.io_privatednsptrrecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatednsptrrecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -238,21 +237,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + records: + description: List of Fully Qualified Domain Names. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -426,9 +463,13 @@ spec: type: object x-kubernetes-validations: - message: records is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.records) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.records) + || has(self.initProvider.records)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: PrivateDNSPTRRecordStatus defines the observed state of PrivateDNSPTRRecord. properties: diff --git a/package/crds/network.azure.upbound.io_privatednsresolvers.yaml b/package/crds/network.azure.upbound.io_privatednsresolvers.yaml index e07459e5b..2cdbcb46b 100644 --- a/package/crds/network.azure.upbound.io_privatednsresolvers.yaml +++ b/package/crds/network.azure.upbound.io_privatednsresolvers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatednsresolvers.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -240,21 +239,57 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the Azure Region where the Private DNS + Resolver should exist. Changing this forces a new Private DNS + Resolver to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Private DNS Resolver. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -428,7 +463,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: PrivateDNSResolverStatus defines the observed state of PrivateDNSResolver. properties: diff --git a/package/crds/network.azure.upbound.io_privatednssrvrecords.yaml b/package/crds/network.azure.upbound.io_privatednssrvrecords.yaml index 8c314c348..22bf518b6 100644 --- a/package/crds/network.azure.upbound.io_privatednssrvrecords.yaml +++ b/package/crds/network.azure.upbound.io_privatednssrvrecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatednssrvrecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -84,11 +83,6 @@ spec: weight: description: The Weight of the SRV record. type: number - required: - - port - - priority - - target - - weight type: object type: array resourceGroupName: @@ -256,21 +250,72 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + record: + description: One or more record blocks as defined below. + items: + properties: + port: + description: The Port the service is listening on. + type: number + priority: + description: The priority of the SRV record. + type: number + target: + description: The FQDN of the service. + type: string + weight: + description: The Weight of the SRV record. + type: number + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -444,9 +489,13 @@ spec: type: object x-kubernetes-validations: - message: record is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.record) + || has(self.initProvider.record)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: PrivateDNSSRVRecordStatus defines the observed state of PrivateDNSSRVRecord. properties: diff --git a/package/crds/network.azure.upbound.io_privatednstxtrecords.yaml b/package/crds/network.azure.upbound.io_privatednstxtrecords.yaml index 9fc3abaac..ce5cf8d5a 100644 --- a/package/crds/network.azure.upbound.io_privatednstxtrecords.yaml +++ b/package/crds/network.azure.upbound.io_privatednstxtrecords.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatednstxtrecords.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -76,8 +75,6 @@ spec: description: 'The value of the TXT record. Max length: 1024 characters' type: string - required: - - value type: object type: array resourceGroupName: @@ -245,21 +242,64 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + record: + description: One or more record blocks as defined below. + items: + properties: + value: + description: 'The value of the TXT record. Max length: 1024 + characters' + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + ttl: + description: The Time To Live (TTL) of the DNS record in seconds. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -433,9 +473,13 @@ spec: type: object x-kubernetes-validations: - message: record is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.record) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.record) + || has(self.initProvider.record)' - message: ttl is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ttl) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ttl) + || has(self.initProvider.ttl)' status: description: PrivateDNSTXTRecordStatus defines the observed state of PrivateDNSTXTRecord. properties: diff --git a/package/crds/network.azure.upbound.io_privatednszones.yaml b/package/crds/network.azure.upbound.io_privatednszones.yaml index 06032d7c5..e2520ecf1 100644 --- a/package/crds/network.azure.upbound.io_privatednszones.yaml +++ b/package/crds/network.azure.upbound.io_privatednszones.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatednszones.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -181,8 +180,6 @@ spec: description: The Time To Live of the SOA Record in seconds. Defaults to 3600. type: number - required: - - email type: object type: array tags: @@ -191,21 +188,87 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + soaRecord: + description: An soa_record block as defined below. Changing this + forces a new resource to be created. + items: + properties: + email: + description: The email contact for the SOA record. + type: string + expireTime: + description: The expire time for the SOA record. Defaults + to 2419200. + type: number + minimumTtl: + description: The minimum Time To Live for the SOA record. + By convention, it is used to determine the negative caching + duration. Defaults to 10. + type: number + refreshTime: + description: The refresh time for the SOA record. Defaults + to 3600. + type: number + retryTime: + description: The retry time for the SOA record. Defaults + to 300. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Record Set. + type: object + ttl: + description: The Time To Live of the SOA Record in seconds. + Defaults to 3600. + type: number + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_privatednszonevirtualnetworklinks.yaml b/package/crds/network.azure.upbound.io_privatednszonevirtualnetworklinks.yaml index e47c47fdd..50b7dfa6e 100644 --- a/package/crds/network.azure.upbound.io_privatednszonevirtualnetworklinks.yaml +++ b/package/crds/network.azure.upbound.io_privatednszonevirtualnetworklinks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatednszonevirtualnetworklinks.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -313,21 +312,56 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + registrationEnabled: + description: Is auto-registration of virtual machine records in + the virtual network in the Private DNS zone enabled? Defaults + to false. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_privateendpointapplicationsecuritygroupassociations.yaml b/package/crds/network.azure.upbound.io_privateendpointapplicationsecuritygroupassociations.yaml index f57237a98..d3c5b9e44 100644 --- a/package/crds/network.azure.upbound.io_privateendpointapplicationsecuritygroupassociations.yaml +++ b/package/crds/network.azure.upbound.io_privateendpointapplicationsecuritygroupassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privateendpointapplicationsecuritygroupassociations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -229,21 +228,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_privateendpoints.yaml b/package/crds/network.azure.upbound.io_privateendpoints.yaml index c810682f1..f0d5f9380 100644 --- a/package/crds/network.azure.upbound.io_privateendpoints.yaml +++ b/package/crds/network.azure.upbound.io_privateendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privateendpoints.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -98,9 +97,6 @@ spec: to. subresource_names corresponds to group_id. Changing this forces a new resource to be created. type: string - required: - - name - - privateIpAddress type: object type: array location: @@ -202,8 +198,6 @@ spec: type: string type: object type: object - required: - - name type: object type: array privateServiceConnection: @@ -251,9 +245,6 @@ spec: items: type: string type: array - required: - - isManualConnection - - name type: object type: array resourceGroupName: @@ -420,21 +411,144 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customNetworkInterfaceName: + description: The custom name of the network interface attached + to the private endpoint. Changing this forces a new resource + to be created. + type: string + ipConfiguration: + description: One or more ip_configuration blocks as defined below. + This allows a static IP address to be set for this Private Endpoint, + otherwise an address is dynamically allocated from the Subnet. + items: + properties: + memberName: + description: Specifies the member name this IP address applies + to. If it is not specified, it will use the value of subresource_name. + Changing this forces a new resource to be created. + type: string + name: + description: Specifies the Name of the IP Configuration. + Changing this forces a new resource to be created. + type: string + privateIpAddress: + description: Specifies the static IP address within the + private endpoint's subnet to be used. Changing this forces + a new resource to be created. + type: string + subresourceName: + description: Specifies the subresource this IP address applies + to. subresource_names corresponds to group_id. Changing + this forces a new resource to be created. + type: string + type: object + type: array + location: + description: The supported Azure location where the resource exists. + Changing this forces a new resource to be created. + type: string + privateDnsZoneGroup: + description: A private_dns_zone_group block as defined below. + items: + properties: + name: + description: Specifies the Name of the Private DNS Zone + Group. + type: string + type: object + type: array + privateServiceConnection: + description: A private_service_connection block as defined below. + items: + properties: + isManualConnection: + description: Does the Private Endpoint require Manual Approval + from the remote resource owner? Changing this forces a + new resource to be created. + type: boolean + name: + description: Specifies the Name of the Private Service Connection. + Changing this forces a new resource to be created. + type: string + privateConnectionResourceAlias: + description: The Service Alias of the Private Link Enabled + Remote Resource which this Private Endpoint should be + connected to. One of private_connection_resource_id or + private_connection_resource_alias must be specified. Changing + this forces a new resource to be created. + type: string + privateConnectionResourceId: + description: The ID of the Private Link Enabled Remote Resource + which this Private Endpoint should be connected to. One + of private_connection_resource_id or private_connection_resource_alias + must be specified. Changing this forces a new resource + to be created. For a web app or function app slot, the + parent web app should be used in this field instead of + a reference to the slot itself. + type: string + requestMessage: + description: A message passed to the owner of the remote + resource when the private endpoint attempts to establish + the connection to the remote resource. The request message + can be a maximum of 140 characters in length. Only valid + if is_manual_connection is set to true. + type: string + subresourceNames: + description: A list of subresource names which the Private + Endpoint is able to connect to. subresource_names corresponds + to group_id. Possible values are detailed in the product + documentation in the Subresources column. Changing this + forces a new resource to be created. + items: + type: string + type: array + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -608,9 +722,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: privateServiceConnection is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.privateServiceConnection) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.privateServiceConnection) + || has(self.initProvider.privateServiceConnection)' status: description: PrivateEndpointStatus defines the observed state of PrivateEndpoint. properties: diff --git a/package/crds/network.azure.upbound.io_privatelinkservices.yaml b/package/crds/network.azure.upbound.io_privatelinkservices.yaml index 504916151..3c7628301 100644 --- a/package/crds/network.azure.upbound.io_privatelinkservices.yaml +++ b/package/crds/network.azure.upbound.io_privatelinkservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatelinkservices.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -199,9 +198,6 @@ spec: type: string type: object type: object - required: - - name - - primary type: object type: array resourceGroupName: @@ -296,21 +292,110 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoApprovalSubscriptionIds: + description: A list of Subscription UUID/GUID's that will be automatically + be able to use this Private Link Service. + items: + type: string + type: array + enableProxyProtocol: + description: Should the Private Link Service support the Proxy + Protocol? + type: boolean + fqdns: + description: List of FQDNs allowed for the Private Link Service. + items: + type: string + type: array + loadBalancerFrontendIpConfigurationIds: + description: A list of Frontend IP Configuration IDs from a Standard + Load Balancer, where traffic from the Private Link Service should + be routed. You can use Load Balancer Rules to direct this traffic + to appropriate backend pools where your applications are running. + Changing this forces a new resource to be created. + items: + type: string + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + natIpConfiguration: + description: One or more (up to 8) nat_ip_configuration block + as defined below. + items: + properties: + name: + description: Specifies the name which should be used for + the NAT IP Configuration. Changing this forces a new resource + to be created. + type: string + primary: + description: Is this is the Primary IP Configuration? Changing + this forces a new resource to be created. + type: boolean + privateIpAddress: + description: Specifies a Private Static IP Address for this + IP Configuration. + type: string + privateIpAddressVersion: + description: The version of the IP Protocol which should + be used. At this time the only supported value is IPv4. + Defaults to IPv4. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + visibilitySubscriptionIds: + description: A list of Subscription UUID/GUID's that will be able + to see this Private Link Service. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -484,11 +569,17 @@ spec: type: object x-kubernetes-validations: - message: loadBalancerFrontendIpConfigurationIds is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.loadBalancerFrontendIpConfigurationIds) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.loadBalancerFrontendIpConfigurationIds) + || has(self.initProvider.loadBalancerFrontendIpConfigurationIds)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: natIpConfiguration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.natIpConfiguration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.natIpConfiguration) + || has(self.initProvider.natIpConfiguration)' status: description: PrivateLinkServiceStatus defines the observed state of PrivateLinkService. properties: diff --git a/package/crds/network.azure.upbound.io_profiles.yaml b/package/crds/network.azure.upbound.io_profiles.yaml index 981753d62..f3a0eeb99 100644 --- a/package/crds/network.azure.upbound.io_profiles.yaml +++ b/package/crds/network.azure.upbound.io_profiles.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: profiles.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -164,16 +163,11 @@ spec: type: string type: object type: object - required: - - name type: object type: array name: description: Specifies the name of the IP Configuration. type: string - required: - - ipConfiguration - - name type: object type: array location: @@ -265,21 +259,76 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + containerNetworkInterface: + description: A container_network_interface block as documented + below. + items: + properties: + ipConfiguration: + description: One or more ip_configuration blocks as documented + below. + items: + properties: + name: + description: Specifies the name of the Network Profile. + Changing this forces a new resource to be created. + type: string + type: object + type: array + name: + description: Specifies the name of the IP Configuration. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -453,9 +502,13 @@ spec: type: object x-kubernetes-validations: - message: containerNetworkInterface is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.containerNetworkInterface) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.containerNetworkInterface) + || has(self.initProvider.containerNetworkInterface)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ProfileStatus defines the observed state of Profile. properties: diff --git a/package/crds/network.azure.upbound.io_publicipprefixes.yaml b/package/crds/network.azure.upbound.io_publicipprefixes.yaml index 5bab9421f..ff614526a 100644 --- a/package/crds/network.azure.upbound.io_publicipprefixes.yaml +++ b/package/crds/network.azure.upbound.io_publicipprefixes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: publicipprefixes.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -180,21 +179,77 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + ipVersion: + description: The IP Version to use, IPv6 or IPv4. Changing this + forces a new resource to be created. Default is IPv4. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + prefixLength: + description: Specifies the number of bits of the prefix. The value + can be set between 0 (4,294,967,296 addresses) and 31 (2 addresses). + Defaults to 28(16 addresses). Changing this forces a new resource + to be created. + type: number + sku: + description: The SKU of the Public IP Prefix. Accepted values + are Standard. Defaults to Standard. Changing this forces a new + resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zones: + description: Specifies a list of Availability Zones in which this + Public IP Prefix should be located. Changing this forces a new + Public IP Prefix to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -368,7 +423,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: PublicIPPrefixStatus defines the observed state of PublicIPPrefix. properties: diff --git a/package/crds/network.azure.upbound.io_publicips.yaml b/package/crds/network.azure.upbound.io_publicips.yaml index 238ce0314..a2546d17d 100644 --- a/package/crds/network.azure.upbound.io_publicips.yaml +++ b/package/crds/network.azure.upbound.io_publicips.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: publicips.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -224,21 +223,121 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allocationMethod: + description: Defines the allocation method for this IP address. + Possible values are Static or Dynamic. + type: string + ddosProtectionMode: + description: The DDoS protection mode of the public IP. Possible + values are Disabled, Enabled, and VirtualNetworkInherited. Defaults + to VirtualNetworkInherited. + type: string + ddosProtectionPlanId: + description: The ID of DDoS protection plan associated with the + public IP. + type: string + domainNameLabel: + description: Label for the Domain Name. Will be used to make up + the FQDN. If a domain name label is specified, an A DNS record + is created for the public IP in the Microsoft Azure DNS system. + type: string + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Public IP should exist. Changing this forces a new Public + IP to be created. + type: string + idleTimeoutInMinutes: + description: Specifies the timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. + type: number + ipTags: + additionalProperties: + type: string + description: A mapping of IP tags to assign to the public IP. + Changing this forces a new resource to be created. + type: object + ipVersion: + description: The IP Version to use, IPv6 or IPv4. Changing this + forces a new resource to be created. + type: string + location: + description: Specifies the supported Azure location where the + Public IP should exist. Changing this forces a new resource + to be created. + type: string + publicIpPrefixId: + description: If specified then public IP address allocated will + be provided from the public IP prefix resource. Changing this + forces a new resource to be created. + type: string + reverseFqdn: + description: A fully qualified domain name that resolves to this + public IP address. If the reverseFqdn is specified, then a PTR + DNS record is created pointing from the IP address in the in-addr.arpa + domain to the reverse FQDN. + type: string + sku: + description: The SKU of the Public IP. Accepted values are Basic + and Standard. Defaults to Basic. Changing this forces a new + resource to be created. + type: string + skuTier: + description: The SKU Tier that should be used for the Public IP. + Possible values are Regional and Global. Defaults to Regional. + Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zones: + description: A collection containing the availability zone to + allocate the Public IP in. Changing this forces a new resource + to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -412,9 +511,13 @@ spec: type: object x-kubernetes-validations: - message: allocationMethod is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.allocationMethod) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.allocationMethod) + || has(self.initProvider.allocationMethod)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: PublicIPStatus defines the observed state of PublicIP. properties: diff --git a/package/crds/network.azure.upbound.io_routefilters.yaml b/package/crds/network.azure.upbound.io_routefilters.yaml index afbd3e3d3..3081b3cb9 100644 --- a/package/crds/network.azure.upbound.io_routefilters.yaml +++ b/package/crds/network.azure.upbound.io_routefilters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: routefilters.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -182,21 +181,79 @@ spec: Route Filter. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Route Filter should exist. + Changing this forces a new Route Filter to be created. + type: string + rule: + description: A rule block as defined below. + items: + properties: + access: + description: The access type of the rule. The only possible + value is Allow. + type: string + communities: + description: The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020']. + items: + type: string + type: array + name: + description: The name of the route filter rule. + type: string + ruleType: + description: The rule type of the rule. The only possible + value is Community. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Route Filter. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -370,7 +427,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: RouteFilterStatus defines the observed state of RouteFilter. properties: diff --git a/package/crds/network.azure.upbound.io_routemaps.yaml b/package/crds/network.azure.upbound.io_routemaps.yaml index 3a4cfd8f9..514b3a58e 100644 --- a/package/crds/network.azure.upbound.io_routemaps.yaml +++ b/package/crds/network.azure.upbound.io_routemaps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: routemaps.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -101,9 +100,6 @@ spec: description: The type of the action to be taken. Possible values are Add, Drop, Remove, Replace and Unknown. type: string - required: - - parameter - - type type: object type: array matchCriterion: @@ -130,8 +126,6 @@ spec: items: type: string type: array - required: - - matchCondition type: object type: array name: @@ -142,8 +136,6 @@ spec: Possible values are Continue, Terminate and Unknown. Defaults to Unknown. type: string - required: - - name type: object type: array virtualHubId: @@ -226,21 +218,117 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + rule: + description: A rule block as defined below. + items: + properties: + action: + description: An action block as defined below. + items: + properties: + parameter: + description: A parameter block as defined below. + items: + properties: + asPath: + description: A list of AS paths. + items: + type: string + type: array + community: + description: A list of BGP communities. + items: + type: string + type: array + routePrefix: + description: A list of route prefixes. + items: + type: string + type: array + type: object + type: array + type: + description: The type of the action to be taken. Possible + values are Add, Drop, Remove, Replace and Unknown. + type: string + type: object + type: array + matchCriterion: + description: A match_criterion block as defined below. + items: + properties: + asPath: + description: A list of AS paths. + items: + type: string + type: array + community: + description: A list of BGP communities. + items: + type: string + type: array + matchCondition: + description: The match condition to apply the rule + of the Route Map. Possible values are Contains, + Equals, NotContains, NotEquals and Unknown. + type: string + routePrefix: + description: A list of route prefixes. + items: + type: string + type: array + type: object + type: array + name: + description: The unique name for the rule. + type: string + nextStepIfMatched: + description: The next step after the rule is evaluated. + Possible values are Continue, Terminate and Unknown. Defaults + to Unknown. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_routes.yaml b/package/crds/network.azure.upbound.io_routes.yaml index a0f99d10c..e54b50c06 100644 --- a/package/crds/network.azure.upbound.io_routes.yaml +++ b/package/crds/network.azure.upbound.io_routes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: routes.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -242,21 +241,61 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addressPrefix: + description: The destination to which the route applies. Can be + CIDR (such as 10.1.0.0/16) or Azure Service Tag (such as ApiManagement, + AzureBackup or AzureMonitor) format. + type: string + nextHopInIpAddress: + description: Contains the IP address packets should be forwarded + to. Next hop values are only allowed in routes where the next + hop type is VirtualAppliance. + type: string + nextHopType: + description: The type of Azure hop the packet should be sent to. + Possible values are VirtualNetworkGateway, VnetLocal, Internet, + VirtualAppliance and None. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -430,9 +469,13 @@ spec: type: object x-kubernetes-validations: - message: addressPrefix is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.addressPrefix) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.addressPrefix) + || has(self.initProvider.addressPrefix)' - message: nextHopType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nextHopType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.nextHopType) + || has(self.initProvider.nextHopType)' status: description: RouteStatus defines the observed state of Route. properties: diff --git a/package/crds/network.azure.upbound.io_routeserverbgpconnections.yaml b/package/crds/network.azure.upbound.io_routeserverbgpconnections.yaml index c730a673d..b2cf14249 100644 --- a/package/crds/network.azure.upbound.io_routeserverbgpconnections.yaml +++ b/package/crds/network.azure.upbound.io_routeserverbgpconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: routeserverbgpconnections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,54 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + peerAsn: + description: The peer autonomous system number for the Route Server + Bgp Connection. Changing this forces a new resource to be created. + type: number + peerIp: + description: The peer ip address for the Route Server Bgp Connection. + Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,9 +378,13 @@ spec: type: object x-kubernetes-validations: - message: peerAsn is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.peerAsn) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.peerAsn) + || has(self.initProvider.peerAsn)' - message: peerIp is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.peerIp) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.peerIp) + || has(self.initProvider.peerIp)' status: description: RouteServerBGPConnectionStatus defines the observed state of RouteServerBGPConnection. diff --git a/package/crds/network.azure.upbound.io_routeservers.yaml b/package/crds/network.azure.upbound.io_routeservers.yaml index 755ee97fa..16c056dd1 100644 --- a/package/crds/network.azure.upbound.io_routeservers.yaml +++ b/package/crds/network.azure.upbound.io_routeservers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: routeservers.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -322,21 +321,64 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + branchToBranchTrafficEnabled: + description: Whether to enable route exchange between Azure Route + Server and the gateway(s) + type: boolean + location: + description: Specifies the supported Azure location where the + Route Server should exist. Changing this forces a new resource + to be created. + type: string + sku: + description: The SKU of the Route Server. The only possible value + is Standard. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -510,9 +552,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: RouteServerStatus defines the observed state of RouteServer. properties: diff --git a/package/crds/network.azure.upbound.io_routetables.yaml b/package/crds/network.azure.upbound.io_routetables.yaml index 3fed379ad..a098e403a 100644 --- a/package/crds/network.azure.upbound.io_routetables.yaml +++ b/package/crds/network.azure.upbound.io_routetables.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: routetables.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -186,21 +185,84 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + disableBgpRoutePropagation: + description: Boolean flag which controls propagation of routes + learned by BGP on that route table. True means disable. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + route: + description: List of objects representing routes. Each object + accepts the arguments documented below. + items: + properties: + addressPrefix: + description: The destination to which the route applies. + Can be CIDR (such as 10.1.0.0/16) or Azure Service Tag + (such as ApiManagement, AzureBackup or AzureMonitor) format. + type: string + name: + description: The name of the route. + type: string + nextHopInIpAddress: + description: Contains the IP address packets should be forwarded + to. Next hop values are only allowed in routes where the + next hop type is VirtualAppliance. + type: string + nextHopType: + description: The type of Azure hop the packet should be + sent to. Possible values are VirtualNetworkGateway, VnetLocal, + Internet, VirtualAppliance and None. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -374,7 +436,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: RouteTableStatus defines the observed state of RouteTable. properties: diff --git a/package/crds/network.azure.upbound.io_securitygroups.yaml b/package/crds/network.azure.upbound.io_securitygroups.yaml index be4c8f434..a37723c26 100644 --- a/package/crds/network.azure.upbound.io_securitygroups.yaml +++ b/package/crds/network.azure.upbound.io_securitygroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securitygroups.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -254,21 +253,149 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + securityRule: + description: List of objects representing security rules, as defined + below. + items: + properties: + access: + description: Specifies whether network traffic is allowed + or denied. Possible values are Allow and Deny. + type: string + description: + description: A description for this rule. Restricted to + 140 characters. + type: string + destinationAddressPrefix: + description: CIDR or destination IP range or * to match + any IP. Tags such as VirtualNetwork, AzureLoadBalancer + and Internet can also be used. This is required if destination_address_prefixes + is not specified. + type: string + destinationAddressPrefixes: + description: List of destination address prefixes. Tags + may not be used. This is required if destination_address_prefix + is not specified. + items: + type: string + type: array + destinationApplicationSecurityGroupIds: + description: A List of destination Application Security + Group IDs + items: + type: string + type: array + destinationPortRange: + description: Destination Port or Range. Integer or range + between 0 and 65535 or * to match any. This is required + if destination_port_ranges is not specified. + type: string + destinationPortRanges: + description: List of destination ports or port ranges. This + is required if destination_port_range is not specified. + items: + type: string + type: array + direction: + description: The direction specifies if rule will be evaluated + on incoming or outgoing traffic. Possible values are Inbound + and Outbound. + type: string + name: + description: The name of the security rule. + type: string + priority: + description: Specifies the priority of the rule. The value + can be between 100 and 4096. The priority number must + be unique for each rule in the collection. The lower the + priority number, the higher the priority of the rule. + type: number + protocol: + description: Network protocol this rule applies to. Possible + values include Tcp, Udp, Icmp, Esp, Ah or * (which matches + all). + type: string + sourceAddressPrefix: + description: CIDR or source IP range or * to match any IP. + Tags such as VirtualNetwork, AzureLoadBalancer and Internet + can also be used. This is required if source_address_prefixes + is not specified. + type: string + sourceAddressPrefixes: + description: List of source address prefixes. Tags may not + be used. This is required if source_address_prefix is + not specified. + items: + type: string + type: array + sourceApplicationSecurityGroupIds: + description: A List of source Application Security Group + IDs + items: + type: string + type: array + sourcePortRange: + description: Source Port or Range. Integer or range between + 0 and 65535 or * to match any. This is required if source_port_ranges + is not specified. + type: string + sourcePortRanges: + description: List of source ports or port ranges. This is + required if source_port_range is not specified. + items: + type: string + type: array + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -442,7 +569,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SecurityGroupStatus defines the observed state of SecurityGroup. properties: diff --git a/package/crds/network.azure.upbound.io_securityrules.yaml b/package/crds/network.azure.upbound.io_securityrules.yaml index aac6ca3c0..eb2cd4287 100644 --- a/package/crds/network.azure.upbound.io_securityrules.yaml +++ b/package/crds/network.azure.upbound.io_securityrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securityrules.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -311,21 +310,130 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + access: + description: Specifies whether network traffic is allowed or denied. + Possible values are Allow and Deny. + type: string + description: + description: A description for this rule. Restricted to 140 characters. + type: string + destinationAddressPrefix: + description: 'CIDR or destination IP range or * to match any IP. + Tags such as VirtualNetwork, AzureLoadBalancer and Internet + can also be used. Besides, it also supports all available Service + Tags like ‘Sql.WestEurope‘, ‘Storage.EastUS‘, etc. You can list + the available service tags with the CLI: shell az network list-service-tags + --location westcentralus. For further information please see + Azure CLI - az network list-service-tags. This is required if + destination_address_prefixes is not specified.' + type: string + destinationAddressPrefixes: + description: List of destination address prefixes. Tags may not + be used. This is required if destination_address_prefix is not + specified. + items: + type: string + type: array + destinationApplicationSecurityGroupIds: + description: A List of destination Application Security Group + IDs + items: + type: string + type: array + destinationPortRange: + description: Destination Port or Range. Integer or range between + 0 and 65535 or * to match any. This is required if destination_port_ranges + is not specified. + type: string + destinationPortRanges: + description: List of destination ports or port ranges. This is + required if destination_port_range is not specified. + items: + type: string + type: array + direction: + description: The direction specifies if rule will be evaluated + on incoming or outgoing traffic. Possible values are Inbound + and Outbound. + type: string + priority: + description: Specifies the priority of the rule. The value can + be between 100 and 4096. The priority number must be unique + for each rule in the collection. The lower the priority number, + the higher the priority of the rule. + type: number + protocol: + description: Network protocol this rule applies to. Possible values + include Tcp, Udp, Icmp, Esp, Ah or * (which matches all). + type: string + sourceAddressPrefix: + description: CIDR or source IP range or * to match any IP. Tags + such as VirtualNetwork, AzureLoadBalancer and Internet can also + be used. This is required if source_address_prefixes is not + specified. + type: string + sourceAddressPrefixes: + description: List of source address prefixes. Tags may not be + used. This is required if source_address_prefix is not specified. + items: + type: string + type: array + sourceApplicationSecurityGroupIds: + description: A List of source Application Security Group IDs + items: + type: string + type: array + sourcePortRange: + description: Source Port or Range. Integer or range between 0 + and 65535 or * to match any. This is required if source_port_ranges + is not specified. + type: string + sourcePortRanges: + description: List of source ports or port ranges. This is required + if source_port_range is not specified. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -499,13 +607,21 @@ spec: type: object x-kubernetes-validations: - message: access is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.access) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.access) + || has(self.initProvider.access)' - message: direction is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.direction) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.direction) + || has(self.initProvider.direction)' - message: priority is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.priority) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.priority) + || has(self.initProvider.priority)' - message: protocol is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protocol) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.protocol) + || has(self.initProvider.protocol)' status: description: SecurityRuleStatus defines the observed state of SecurityRule. properties: diff --git a/package/crds/network.azure.upbound.io_subnetnatgatewayassociations.yaml b/package/crds/network.azure.upbound.io_subnetnatgatewayassociations.yaml index 3ca5fd559..fbee6b2cf 100644 --- a/package/crds/network.azure.upbound.io_subnetnatgatewayassociations.yaml +++ b/package/crds/network.azure.upbound.io_subnetnatgatewayassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subnetnatgatewayassociations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -226,21 +225,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_subnetnetworksecuritygroupassociations.yaml b/package/crds/network.azure.upbound.io_subnetnetworksecuritygroupassociations.yaml index 0b7651cbf..2d0b69a22 100644 --- a/package/crds/network.azure.upbound.io_subnetnetworksecuritygroupassociations.yaml +++ b/package/crds/network.azure.upbound.io_subnetnetworksecuritygroupassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subnetnetworksecuritygroupassociations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -225,21 +224,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_subnetroutetableassociations.yaml b/package/crds/network.azure.upbound.io_subnetroutetableassociations.yaml index b395ecbd9..677ce0df8 100644 --- a/package/crds/network.azure.upbound.io_subnetroutetableassociations.yaml +++ b/package/crds/network.azure.upbound.io_subnetroutetableassociations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subnetroutetableassociations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -224,21 +223,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_subnets.yaml b/package/crds/network.azure.upbound.io_subnets.yaml index 4bb386b7f..f86ddf497 100644 --- a/package/crds/network.azure.upbound.io_subnets.yaml +++ b/package/crds/network.azure.upbound.io_subnets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subnets.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -117,13 +116,8 @@ spec: Microsoft.Orbital/orbitalGateways, NGINX.NGINXPLUS/nginxDeployments, PaloAltoNetworks.Cloudngfw/firewalls, and Qumulo.Storage/fileSystems. type: string - required: - - name type: object type: array - required: - - name - - serviceDelegation type: object type: array enforcePrivateLinkEndpointNetworkPolicies: @@ -314,21 +308,130 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addressPrefixes: + description: The address prefixes to use for the subnet. + items: + type: string + type: array + delegation: + description: One or more delegation blocks as defined below. + items: + properties: + name: + description: A name for this delegation. + type: string + serviceDelegation: + description: A service_delegation block as defined below. + items: + properties: + actions: + description: A list of Actions which should be delegated. + This list is specific to the service to delegate + to. Possible values are Microsoft.Network/networkinterfaces/*, + Microsoft.Network/publicIPAddresses/join/action, + Microsoft.Network/publicIPAddresses/read, Microsoft.Network/virtualNetworks/read, + Microsoft.Network/virtualNetworks/subnets/action, + Microsoft.Network/virtualNetworks/subnets/join/action, + Microsoft.Network/virtualNetworks/subnets/prepareNetworkPolicies/action, + and Microsoft.Network/virtualNetworks/subnets/unprepareNetworkPolicies/action. + items: + type: string + type: array + name: + description: The name of service to delegate to. Possible + values are Microsoft.ApiManagement/service, Microsoft.AzureCosmosDB/clusters, + Microsoft.BareMetal/AzureVMware, Microsoft.BareMetal/CrayServers, + Microsoft.Batch/batchAccounts, Microsoft.ContainerInstance/containerGroups, + Microsoft.ContainerService/managedClusters, Microsoft.Databricks/workspaces, + Microsoft.DBforMySQL/flexibleServers, Microsoft.DBforMySQL/serversv2, + Microsoft.DBforPostgreSQL/flexibleServers, Microsoft.DBforPostgreSQL/serversv2, + Microsoft.DBforPostgreSQL/singleServers, Microsoft.HardwareSecurityModules/dedicatedHSMs, + Microsoft.Kusto/clusters, Microsoft.Logic/integrationServiceEnvironments, + Microsoft.LabServices/labplans, Microsoft.MachineLearningServices/workspaces, + Microsoft.Netapp/volumes, Microsoft.Network/dnsResolvers, + Microsoft.Network/managedResolvers, Microsoft.PowerPlatform/vnetaccesslinks, + Microsoft.ServiceFabricMesh/networks, Microsoft.Sql/managedInstances, + Microsoft.Sql/servers, Microsoft.StoragePool/diskPools, + Microsoft.StreamAnalytics/streamingJobs, Microsoft.Synapse/workspaces, + Microsoft.Web/hostingEnvironments, Microsoft.Web/serverFarms, + Microsoft.Orbital/orbitalGateways, NGINX.NGINXPLUS/nginxDeployments, + PaloAltoNetworks.Cloudngfw/firewalls, and Qumulo.Storage/fileSystems. + type: string + type: object + type: array + type: object + type: array + enforcePrivateLinkEndpointNetworkPolicies: + type: boolean + enforcePrivateLinkServiceNetworkPolicies: + type: boolean + privateEndpointNetworkPoliciesEnabled: + description: Enable or Disable network policies for the private + endpoint on the subnet. Setting this to true will Enable the + policy and setting this to false will Disable the policy. Defaults + to true. + type: boolean + privateLinkServiceNetworkPoliciesEnabled: + description: Enable or Disable network policies for the private + link service on the subnet. Setting this to true will Enable + the policy and setting this to false will Disable the policy. + Defaults to true. + type: boolean + serviceEndpointPolicyIds: + description: The list of IDs of Service Endpoint Policies to associate + with the subnet. + items: + type: string + type: array + serviceEndpoints: + description: 'The list of Service endpoints to associate with + the subnet. Possible values include: Microsoft.AzureActiveDirectory, + Microsoft.AzureCosmosDB, Microsoft.ContainerRegistry, Microsoft.EventHub, + Microsoft.KeyVault, Microsoft.ServiceBus, Microsoft.Sql, Microsoft.Storage, + Microsoft.Storage.Global and Microsoft.Web.' + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -502,7 +605,9 @@ spec: type: object x-kubernetes-validations: - message: addressPrefixes is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.addressPrefixes) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.addressPrefixes) + || has(self.initProvider.addressPrefixes)' status: description: SubnetStatus defines the observed state of Subnet. properties: diff --git a/package/crds/network.azure.upbound.io_subnetserviceendpointstoragepolicies.yaml b/package/crds/network.azure.upbound.io_subnetserviceendpointstoragepolicies.yaml index 68d0a9198..0c643540b 100644 --- a/package/crds/network.azure.upbound.io_subnetserviceendpointstoragepolicies.yaml +++ b/package/crds/network.azure.upbound.io_subnetserviceendpointstoragepolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subnetserviceendpointstoragepolicies.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -87,9 +86,6 @@ spec: items: type: string type: array - required: - - name - - serviceResources type: object type: array location: @@ -184,21 +180,77 @@ spec: Subnet Service Endpoint Storage Policy. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + definition: + description: A definition block as defined below + items: + properties: + description: + description: The description of this Subnet Service Endpoint + Storage Policy Definition. + type: string + name: + description: The name which should be used for this Subnet + Service Endpoint Storage Policy Definition. + type: string + serviceResources: + description: Specifies a list of resources that this Subnet + Service Endpoint Storage Policy Definition applies to. + items: + type: string + type: array + type: object + type: array + location: + description: The Azure Region where the Subnet Service Endpoint + Storage Policy should exist. Changing this forces a new Subnet + Service Endpoint Storage Policy to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Subnet Service Endpoint Storage Policy. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -372,7 +424,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SubnetServiceEndpointStoragePolicyStatus defines the observed state of SubnetServiceEndpointStoragePolicy. diff --git a/package/crds/network.azure.upbound.io_trafficmanagerazureendpoints.yaml b/package/crds/network.azure.upbound.io_trafficmanagerazureendpoints.yaml index 9bc7156be..ef1560224 100644 --- a/package/crds/network.azure.upbound.io_trafficmanagerazureendpoints.yaml +++ b/package/crds/network.azure.upbound.io_trafficmanagerazureendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: trafficmanagerazureendpoints.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -80,9 +79,6 @@ spec: description: The value of custom header. Applicable for HTTP and HTTPS protocol. type: string - required: - - name - - value type: object type: array enabled: @@ -198,8 +194,6 @@ spec: description: The block size (number of leading bits in the subnet mask). type: number - required: - - first type: object type: array targetResourceId: @@ -286,21 +280,100 @@ spec: 1 and 1000. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customHeader: + description: One or more custom_header blocks as defined below. + items: + properties: + name: + description: The name of the custom header. + type: string + value: + description: The value of custom header. Applicable for + HTTP and HTTPS protocol. + type: string + type: object + type: array + enabled: + description: Is the endpoint enabled? Defaults to true. + type: boolean + geoMappings: + description: A list of Geographic Regions used to distribute traffic, + such as WORLD, UK or DE. The same location can't be specified + in two endpoints. See the Geographic Hierarchies documentation + for more information. + items: + type: string + type: array + priority: + description: Specifies the priority of this Endpoint, this must + be specified for Profiles using the Priority traffic routing + method. Supports values between 1 and 1000, with no Endpoints + sharing the same value. If omitted the value will be computed + in order of creation. + type: number + subnet: + description: One or more subnet blocks as defined below. Changing + this forces a new resource to be created. + items: + properties: + first: + description: The first IP Address in this subnet. + type: string + last: + description: The last IP Address in this subnet. + type: string + scope: + description: The block size (number of leading bits in the + subnet mask). + type: number + type: object + type: array + weight: + description: Specifies how much traffic should be distributed + to this endpoint, this must be specified for Profiles using + the Weighted traffic routing method. Valid values are between + 1 and 1000. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_trafficmanagerexternalendpoints.yaml b/package/crds/network.azure.upbound.io_trafficmanagerexternalendpoints.yaml index cd30d274d..1c781b386 100644 --- a/package/crds/network.azure.upbound.io_trafficmanagerexternalendpoints.yaml +++ b/package/crds/network.azure.upbound.io_trafficmanagerexternalendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: trafficmanagerexternalendpoints.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -80,9 +79,6 @@ spec: description: The value of custom header. Applicable for HTTP and HTTPS protocol. type: string - required: - - name - - value type: object type: array enabled: @@ -203,8 +199,6 @@ spec: description: The block size (number of leading bits in the subnet mask). type: number - required: - - first type: object type: array target: @@ -217,21 +211,108 @@ spec: 1 and 1000. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customHeader: + description: One or more custom_header blocks as defined below. + items: + properties: + name: + description: The name of the custom header. + type: string + value: + description: The value of custom header. Applicable for + HTTP and HTTPS protocol. + type: string + type: object + type: array + enabled: + description: Is the endpoint enabled? Defaults to true. + type: boolean + endpointLocation: + description: Specifies the Azure location of the Endpoint, this + must be specified for Profiles using the Performance routing + method. + type: string + geoMappings: + description: A list of Geographic Regions used to distribute traffic, + such as WORLD, UK or DE. The same location can't be specified + in two endpoints. See the Geographic Hierarchies documentation + for more information. + items: + type: string + type: array + priority: + description: Specifies the priority of this Endpoint, this must + be specified for Profiles using the Priority traffic routing + method. Supports values between 1 and 1000, with no Endpoints + sharing the same value. If omitted the value will be computed + in order of creation. + type: number + subnet: + description: One or more subnet blocks as defined below. Changing + this forces a new resource to be created. + items: + properties: + first: + description: The first IP Address in this subnet. + type: string + last: + description: The last IP Address in this subnet. + type: string + scope: + description: The block size (number of leading bits in the + subnet mask). + type: number + type: object + type: array + target: + description: The FQDN DNS name of the target. + type: string + weight: + description: Specifies how much traffic should be distributed + to this endpoint, this must be specified for Profiles using + the Weighted traffic routing method. Valid values are between + 1 and 1000. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -405,7 +486,9 @@ spec: type: object x-kubernetes-validations: - message: target is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.target) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.target) + || has(self.initProvider.target)' status: description: TrafficManagerExternalEndpointStatus defines the observed state of TrafficManagerExternalEndpoint. diff --git a/package/crds/network.azure.upbound.io_trafficmanagernestedendpoints.yaml b/package/crds/network.azure.upbound.io_trafficmanagernestedendpoints.yaml index dcadc54d4..337cb5b32 100644 --- a/package/crds/network.azure.upbound.io_trafficmanagernestedendpoints.yaml +++ b/package/crds/network.azure.upbound.io_trafficmanagernestedendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: trafficmanagernestedendpoints.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -80,9 +79,6 @@ spec: description: The value of custom header. Applicable for HTTP and HTTPS protocol. type: string - required: - - name - - value type: object type: array enabled: @@ -223,8 +219,6 @@ spec: description: The block size (number of leading bits in the subnet mask). type: number - required: - - first type: object type: array targetResourceId: @@ -312,21 +306,125 @@ spec: 1 and 1000. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customHeader: + description: One or more custom_header blocks as defined below. + items: + properties: + name: + description: The name of the custom header. + type: string + value: + description: The value of custom header. Applicable for + HTTP and HTTPS protocol. + type: string + type: object + type: array + enabled: + description: Is the endpoint enabled? Defaults to true. + type: boolean + endpointLocation: + description: Specifies the Azure location of the Endpoint, this + must be specified for Profiles using the Performance routing + method. + type: string + geoMappings: + description: A list of Geographic Regions used to distribute traffic, + such as WORLD, UK or DE. The same location can't be specified + in two endpoints. See the Geographic Hierarchies documentation + for more information. + items: + type: string + type: array + minimumChildEndpoints: + description: This argument specifies the minimum number of endpoints + that must be ‘online’ in the child profile in order for the + parent profile to direct traffic to any of the endpoints in + that child profile. This value must be larger than 0. + type: number + minimumRequiredChildEndpointsIpv4: + description: This argument specifies the minimum number of IPv4 + (DNS record type A) endpoints that must be ‘online’ in the child + profile in order for the parent profile to direct traffic to + any of the endpoints in that child profile. This argument only + applies to Endpoints of type nestedEndpoints and + type: number + minimumRequiredChildEndpointsIpv6: + description: This argument specifies the minimum number of IPv6 + (DNS record type AAAA) endpoints that must be ‘online’ in the + child profile in order for the parent profile to direct traffic + to any of the endpoints in that child profile. This argument + only applies to Endpoints of type nestedEndpoints and + type: number + priority: + description: Specifies the priority of this Endpoint, this must + be specified for Profiles using the Priority traffic routing + method. Supports values between 1 and 1000, with no Endpoints + sharing the same value. If omitted the value will be computed + in order of creation. + type: number + subnet: + description: One or more subnet blocks as defined below. Changing + this forces a new resource to be created. + items: + properties: + first: + description: The first IP Address in this subnet. + type: string + last: + description: The last IP Address in this subnet. + type: string + scope: + description: The block size (number of leading bits in the + subnet mask). + type: number + type: object + type: array + weight: + description: Specifies how much traffic should be distributed + to this endpoint, this must be specified for Profiles using + the Weighted traffic routing method. Valid values are between + 1 and 1000. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -500,7 +598,9 @@ spec: type: object x-kubernetes-validations: - message: minimumChildEndpoints is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.minimumChildEndpoints) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.minimumChildEndpoints) + || has(self.initProvider.minimumChildEndpoints)' status: description: TrafficManagerNestedEndpointStatus defines the observed state of TrafficManagerNestedEndpoint. diff --git a/package/crds/network.azure.upbound.io_trafficmanagerprofiles.yaml b/package/crds/network.azure.upbound.io_trafficmanagerprofiles.yaml index 24ee58a20..6a2babfd0 100644 --- a/package/crds/network.azure.upbound.io_trafficmanagerprofiles.yaml +++ b/package/crds/network.azure.upbound.io_trafficmanagerprofiles.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: trafficmanagerprofiles.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -83,9 +82,6 @@ spec: description: The TTL value of the Profile used by Local DNS resolvers and clients. type: number - required: - - relativeName - - ttl type: object type: array maxReturn: @@ -110,9 +106,6 @@ spec: description: The value of custom header. Applicable for HTTP and HTTPS protocol. type: string - required: - - name - - value type: object type: array expectedStatusCodeRanges: @@ -154,9 +147,6 @@ spec: Valid values are between 0 and 9. The default value is 3 type: number - required: - - port - - protocol type: object type: array profileStatus: @@ -258,21 +248,146 @@ spec: Traffic Manager profile. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dnsConfig: + description: This block specifies the DNS configuration of the + Profile, it supports the fields documented below. + items: + properties: + relativeName: + description: The relative domain name, this is combined + with the domain name used by Traffic Manager to form the + FQDN which is exported as documented below. Changing this + forces a new resource to be created. + type: string + ttl: + description: The TTL value of the Profile used by Local + DNS resolvers and clients. + type: number + type: object + type: array + maxReturn: + description: The amount of endpoints to return for DNS queries + to this Profile. Possible values range from 1 to 8. + type: number + monitorConfig: + description: This block specifies the Endpoint monitoring configuration + for the Profile, it supports the fields documented below. + items: + properties: + customHeader: + description: One or more custom_header blocks as defined + below. + items: + properties: + name: + description: The name of the Traffic Manager profile. + Changing this forces a new resource to be created. + type: string + value: + description: The value of custom header. Applicable + for HTTP and HTTPS protocol. + type: string + type: object + type: array + expectedStatusCodeRanges: + description: A list of status code ranges in the format + of 100-101. + items: + type: string + type: array + intervalInSeconds: + description: 'The interval used to check the endpoint health + from a Traffic Manager probing agent. You can specify + two values here: 30 (normal probing) and 10 (fast probing). + The default value is 30.' + type: number + path: + description: The path used by the monitoring checks. Required + when protocol is set to HTTP or HTTPS - cannot be set + when protocol is set to TCP. + type: string + port: + description: The port number used by the monitoring checks. + type: number + protocol: + description: The protocol used by the monitoring checks, + supported values are HTTP, HTTPS and TCP. + type: string + timeoutInSeconds: + description: The amount of time the Traffic Manager probing + agent should wait before considering that check a failure + when a health check probe is sent to the endpoint. If + interval_in_seconds is set to 30, then timeout_in_seconds + can be between 5 and 10. The default value is 10. If interval_in_seconds + is set to 10, then valid values are between 5 and 9 and + timeout_in_seconds is required. + type: number + toleratedNumberOfFailures: + description: The number of failures a Traffic Manager probing + agent tolerates before marking that endpoint as unhealthy. + Valid values are between 0 and 9. The default value is + 3 + type: number + type: object + type: array + profileStatus: + description: The status of the profile, can be set to either Enabled + or Disabled. Defaults to Enabled. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + trafficRoutingMethod: + description: Specifies the algorithm used to route traffic. Possible + values are Geographic, Weighted, Performance, Priority, Subnet + and MultiValue. + type: string + trafficViewEnabled: + description: Indicates whether Traffic View is enabled for the + Traffic Manager profile. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -446,11 +561,17 @@ spec: type: object x-kubernetes-validations: - message: dnsConfig is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dnsConfig) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dnsConfig) + || has(self.initProvider.dnsConfig)' - message: monitorConfig is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.monitorConfig) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.monitorConfig) + || has(self.initProvider.monitorConfig)' - message: trafficRoutingMethod is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.trafficRoutingMethod) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.trafficRoutingMethod) + || has(self.initProvider.trafficRoutingMethod)' status: description: TrafficManagerProfileStatus defines the observed state of TrafficManagerProfile. diff --git a/package/crds/network.azure.upbound.io_virtualhubconnections.yaml b/package/crds/network.azure.upbound.io_virtualhubconnections.yaml index 6c65c0b72..fd277944f 100644 --- a/package/crds/network.azure.upbound.io_virtualhubconnections.yaml +++ b/package/crds/network.azure.upbound.io_virtualhubconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualhubconnections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -359,21 +358,94 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + internetSecurityEnabled: + description: Should Internet Security be enabled to secure internet + traffic? Defaults to false. + type: boolean + routing: + description: A routing block as defined below. + items: + properties: + propagatedRouteTable: + description: A propagated_route_table block as defined below. + items: + properties: + labels: + description: The list of labels to assign to this + route table. + items: + type: string + type: array + routeTableIds: + description: A list of Route Table IDs to associated + with this Virtual Hub Connection. + items: + type: string + type: array + type: object + type: array + staticVnetRoute: + description: A static_vnet_route block as defined below. + items: + properties: + addressPrefixes: + description: A list of CIDR Ranges which should be + used as Address Prefixes. + items: + type: string + type: array + name: + description: The name which should be used for this + Static Route. + type: string + nextHopIpAddress: + description: The IP Address which should be used for + the Next Hop. + type: string + type: object + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_virtualhubips.yaml b/package/crds/network.azure.upbound.io_virtualhubips.yaml index 60755f2c5..a1aac3140 100644 --- a/package/crds/network.azure.upbound.io_virtualhubips.yaml +++ b/package/crds/network.azure.upbound.io_virtualhubips.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualhubips.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -311,21 +310,53 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + privateIpAddress: + description: The private IP address of the IP configuration. + type: string + privateIpAllocationMethod: + description: The private IP address allocation method. Possible + values are Static and Dynamic is allowed. Defaults to Dynamic. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_virtualhubroutetableroutes.yaml b/package/crds/network.azure.upbound.io_virtualhubroutetableroutes.yaml index 732ddad80..51949dcd9 100644 --- a/package/crds/network.azure.upbound.io_virtualhubroutetableroutes.yaml +++ b/package/crds/network.azure.upbound.io_virtualhubroutetableroutes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualhubroutetableroutes.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -240,21 +239,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + destinations: + description: A list of destination addresses for this route. + items: + type: string + type: array + destinationsType: + description: The type of destinations. Possible values are CIDR, + ResourceId and Service. + type: string + nextHopType: + description: The type of next hop. Currently the only possible + value is ResourceId. Defaults to ResourceId. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -428,9 +465,13 @@ spec: type: object x-kubernetes-validations: - message: destinations is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.destinations) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.destinations) + || has(self.initProvider.destinations)' - message: destinationsType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.destinationsType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.destinationsType) + || has(self.initProvider.destinationsType)' status: description: VirtualHubRouteTableRouteStatus defines the observed state of VirtualHubRouteTableRoute. diff --git a/package/crds/network.azure.upbound.io_virtualhubroutetables.yaml b/package/crds/network.azure.upbound.io_virtualhubroutetables.yaml index ce70f3b49..1b77f9f56 100644 --- a/package/crds/network.azure.upbound.io_virtualhubroutetables.yaml +++ b/package/crds/network.azure.upbound.io_virtualhubroutetables.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualhubroutetables.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -174,10 +173,6 @@ spec: description: The type of next hop. Currently the only possible value is ResourceId. Defaults to ResourceId. type: string - required: - - destinations - - destinationsType - - name type: object type: array virtualHubId: @@ -261,21 +256,73 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + labels: + description: List of labels associated with this route table. + items: + type: string + type: array + route: + description: A route block as defined below. + items: + properties: + destinations: + description: A list of destination addresses for this route. + items: + type: string + type: array + destinationsType: + description: The type of destinations. Possible values are + CIDR, ResourceId and Service. + type: string + name: + description: The name which should be used for this route. + type: string + nextHopType: + description: The type of next hop. Currently the only possible + value is ResourceId. Defaults to ResourceId. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_virtualhubs.yaml b/package/crds/network.azure.upbound.io_virtualhubs.yaml index 30db99872..bde6dfd56 100644 --- a/package/crds/network.azure.upbound.io_virtualhubs.yaml +++ b/package/crds/network.azure.upbound.io_virtualhubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualhubs.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -175,9 +174,6 @@ spec: description: The IP Address that Packets should be forwarded to as the Next Hop. type: string - required: - - addressPrefixes - - nextHopIpAddress type: object type: array sku: @@ -268,21 +264,84 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addressPrefix: + description: The Address Prefix which should be used for this + Virtual Hub. Changing this forces a new resource to be created. + The address prefix subnet cannot be smaller than a . + type: string + hubRoutingPreference: + description: The hub routing preference. Possible values are ExpressRoute, + ASPath and VpnGateway. Defaults to ExpressRoute. + type: string + location: + description: Specifies the supported Azure location where the + Virtual Hub should exist. Changing this forces a new resource + to be created. + type: string + route: + description: One or more route blocks as defined below. + items: + properties: + addressPrefixes: + description: A list of Address Prefixes. + items: + type: string + type: array + nextHopIpAddress: + description: The IP Address that Packets should be forwarded + to as the Next Hop. + type: string + type: object + type: array + sku: + description: The SKU of the Virtual Hub. Possible values are Basic + and Standard. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Virtual Hub. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -456,7 +515,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: VirtualHubStatus defines the observed state of VirtualHub. properties: diff --git a/package/crds/network.azure.upbound.io_virtualhubsecuritypartnerproviders.yaml b/package/crds/network.azure.upbound.io_virtualhubsecuritypartnerproviders.yaml index fe4622354..71762f7c4 100644 --- a/package/crds/network.azure.upbound.io_virtualhubsecuritypartnerproviders.yaml +++ b/package/crds/network.azure.upbound.io_virtualhubsecuritypartnerproviders.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualhubsecuritypartnerproviders.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -246,21 +245,61 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Security Partner Provider + should exist. Changing this forces a new resource to be created. + type: string + securityProviderName: + description: The security provider name. Possible values are ZScaler, + IBoss and Checkpoint is allowed. Changing this forces a new + resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Security Partner Provider. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -434,9 +473,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: securityProviderName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.securityProviderName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.securityProviderName) + || has(self.initProvider.securityProviderName)' status: description: VirtualHubSecurityPartnerProviderStatus defines the observed state of VirtualHubSecurityPartnerProvider. diff --git a/package/crds/network.azure.upbound.io_virtualnetworkgatewayconnections.yaml b/package/crds/network.azure.upbound.io_virtualnetworkgatewayconnections.yaml index 649e91be9..02e050b97 100644 --- a/package/crds/network.azure.upbound.io_virtualnetworkgatewayconnections.yaml +++ b/package/crds/network.azure.upbound.io_virtualnetworkgatewayconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualnetworkgatewayconnections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -115,9 +114,6 @@ spec: description: single IP address that is part of the azurerm_virtual_network_gateway ip_configuration (second one) type: string - required: - - primary - - secondary type: object type: array dpdTimeoutSeconds: @@ -190,13 +186,6 @@ spec: description: The IPSec SA lifetime in seconds. Must be at least 300 seconds. Defaults to 27000 seconds. type: number - required: - - dhGroup - - ikeEncryption - - ikeIntegrity - - ipsecEncryption - - ipsecIntegrity - - pfsGroup type: object type: array localAzureIpAddressEnabled: @@ -490,9 +479,6 @@ spec: items: type: string type: array - required: - - localAddressCidrs - - remoteAddressCidrs type: object type: array type: @@ -588,21 +574,195 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + connectionMode: + description: Connection mode to use. Possible values are Default, + InitiatorOnly and ResponderOnly. Defaults to Default. Changing + this value will force a resource to be created. + type: string + connectionProtocol: + description: 'The IKE protocol version to use. Possible values + are IKEv1 and IKEv2, values are IKEv1 and IKEv2. Defaults to + IKEv2. Changing this forces a new resource to be created. -> + Note: Only valid for IPSec connections on virtual network gateways + with SKU VpnGw1, VpnGw2, VpnGw3, VpnGw1AZ, VpnGw2AZ or VpnGw3AZ.' + type: string + customBgpAddresses: + description: A custom_bgp_addresses (Border Gateway Protocol custom + IP Addresses) block which is documented below. The block can + only be used on IPSec / activeactive connections, For details + about see the relevant section in the Azure documentation. + items: + properties: + primary: + description: single IP address that is part of the azurerm_virtual_network_gateway + ip_configuration (first one) + type: string + secondary: + description: single IP address that is part of the azurerm_virtual_network_gateway + ip_configuration (second one) + type: string + type: object + type: array + dpdTimeoutSeconds: + description: The dead peer detection timeout of this connection + in seconds. Changing this forces a new resource to be created. + type: number + egressNatRuleIds: + description: A list of the egress NAT Rule Ids. + items: + type: string + type: array + enableBgp: + description: If true, BGP (Border Gateway Protocol) is enabled + for this connection. Defaults to false. + type: boolean + expressRouteCircuitId: + description: The ID of the Express Route Circuit when creating + an ExpressRoute connection (i.e. when type is ExpressRoute). + The Express Route Circuit can be in the same or in a different + subscription. Changing this forces a new resource to be created. + type: string + expressRouteGatewayBypass: + description: If true, data packets will bypass ExpressRoute Gateway + for data forwarding This is only valid for ExpressRoute connections. + type: boolean + ingressNatRuleIds: + description: A list of the ingress NAT Rule Ids. + items: + type: string + type: array + ipsecPolicy: + description: A ipsec_policy block which is documented below. Only + a single policy can be defined for a connection. For details + on custom policies refer to the relevant section in the Azure + documentation. + items: + properties: + dhGroup: + description: The DH group used in IKE phase 1 for initial + SA. Valid options are DHGroup1, DHGroup14, DHGroup2, DHGroup2048, + DHGroup24, ECP256, ECP384, or None. + type: string + ikeEncryption: + description: The IKE encryption algorithm. Valid options + are AES128, AES192, AES256, DES, DES3, GCMAES128, or GCMAES256. + type: string + ikeIntegrity: + description: The IKE integrity algorithm. Valid options + are GCMAES128, GCMAES256, MD5, SHA1, SHA256, or SHA384. + type: string + ipsecEncryption: + description: The IPSec encryption algorithm. Valid options + are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, + GCMAES256, or None. + type: string + ipsecIntegrity: + description: The IPSec integrity algorithm. Valid options + are GCMAES128, GCMAES192, GCMAES256, MD5, SHA1, or SHA256. + type: string + pfsGroup: + description: The DH group used in IKE phase 2 for new child + SA. Valid options are ECP256, ECP384, PFS1, PFS14, PFS2, + PFS2048, PFS24, PFSMM, or None. + type: string + saDatasize: + description: The IPSec SA payload size in KB. Must be at + least 1024 KB. Defaults to 102400000 KB. + type: number + saLifetime: + description: The IPSec SA lifetime in seconds. Must be at + least 300 seconds. Defaults to 27000 seconds. + type: number + type: object + type: array + localAzureIpAddressEnabled: + description: Use private local Azure IP for the connection. Changing + this forces a new resource to be created. + type: boolean + location: + description: The location/region where the connection is located. + Changing this forces a new resource to be created. + type: string + routingWeight: + description: The routing weight. Defaults to 10. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + trafficSelectorPolicy: + description: One or more traffic_selector_policy blocks which + are documented below. A traffic_selector_policy allows to specify + a traffic selector policy proposal to be used in a virtual network + gateway connection. For details about traffic selectors refer + to the relevant section in the Azure documentation. + items: + properties: + localAddressCidrs: + description: List of local CIDRs. + items: + type: string + type: array + remoteAddressCidrs: + description: List of remote CIDRs. + items: + type: string + type: array + type: object + type: array + type: + description: The type of connection. Valid options are IPsec (Site-to-Site), + ExpressRoute (ExpressRoute), and Vnet2Vnet (VNet-to-VNet). Each + connection type requires different mandatory arguments (refer + to the examples above). Changing this forces a new resource + to be created. + type: string + usePolicyBasedTrafficSelectors: + description: If true, policy-based traffic selectors are enabled + for this connection. Enabling policy-based traffic selectors + requires an ipsec_policy block. Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -776,9 +936,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' status: description: VirtualNetworkGatewayConnectionStatus defines the observed state of VirtualNetworkGatewayConnection. diff --git a/package/crds/network.azure.upbound.io_virtualnetworkgateways.yaml b/package/crds/network.azure.upbound.io_virtualnetworkgateways.yaml index 2bd85e087..766f9a3b9 100644 --- a/package/crds/network.azure.upbound.io_virtualnetworkgateways.yaml +++ b/package/crds/network.azure.upbound.io_virtualnetworkgateways.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualnetworkgateways.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -481,9 +480,6 @@ spec: thumbprint: description: Specifies the public data of the certificate. type: string - required: - - name - - thumbprint type: object type: array rootCertificate: @@ -503,9 +499,6 @@ spec: argument must not include the -----BEGIN CERTIFICATE----- or -----END CERTIFICATE----- markers. type: string - required: - - name - - publicCertData type: object type: array vpnAuthTypes: @@ -523,8 +516,6 @@ spec: items: type: string type: array - required: - - addressSpace type: object type: array vpnType: @@ -533,21 +524,256 @@ spec: Changing this forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + activeActive: + description: If true, an active-active Virtual Network Gateway + will be created. An active-active gateway requires a HighPerformance + or an UltraPerformance SKU. If false, an active-standby gateway + will be created. Defaults to false. + type: boolean + bgpSettings: + description: A bgp_settings block which is documented below. In + this block the BGP specific settings can be defined. + items: + properties: + asn: + description: The Autonomous System Number (ASN) to use as + part of the BGP. + type: number + peerWeight: + description: The weight added to routes which have been + learned through BGP peering. Valid values can be between + 0 and 100. + type: number + peeringAddresses: + description: A list of peering_addresses as defined below. + Only one peering_addresses block can be specified except + when active_active of this Virtual Network Gateway is + true. + items: + properties: + apipaAddresses: + description: A list of Azure custom APIPA addresses + assigned to the BGP peer of the Virtual Network + Gateway. + items: + type: string + type: array + ipConfigurationName: + description: The name of the IP configuration of this + Virtual Network Gateway. In case there are multiple + ip_configuration blocks defined, this property is + required to specify. + type: string + type: object + type: array + type: object + type: array + customRoute: + description: A custom_route block as defined below. Specifies + a custom routes address space for a virtual network gateway + and a VpnClient. + items: + properties: + addressPrefixes: + description: A list of address blocks reserved for this + virtual network in CIDR notation as defined below. + items: + type: string + type: array + type: object + type: array + defaultLocalNetworkGatewayId: + description: The ID of the local network gateway through which + outbound Internet traffic from the virtual network in which + the gateway is created will be routed (forced tunnelling). Refer + to the Azure documentation on forced tunnelling. If not specified, + forced tunnelling is disabled. + type: string + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Virtual Network Gateway should exist. Changing this forces + a new Virtual Network Gateway to be created. + type: string + enableBgp: + description: If true, BGP (Border Gateway Protocol) will be enabled + for this Virtual Network Gateway. Defaults to false. + type: boolean + generation: + description: The Generation of the Virtual Network gateway. Possible + values include Generation1, Generation2 or None. Changing this + forces a new resource to be created. + type: string + ipConfiguration: + description: One, two or three ip_configuration blocks documented + below. An active-standby gateway requires exactly one ip_configuration + block, an active-active gateway requires exactly two ip_configuration + blocks whereas an active-active zone redundant gateway with + P2S configuration requires exactly three ip_configuration blocks. + items: + properties: + name: + description: A user-defined name of the IP configuration. + Defaults to vnetGatewayConfig. + type: string + privateIpAddressAllocation: + description: Defines how the private IP address of the gateways + virtual interface is assigned. Valid options are Static + or Dynamic. Defaults to Dynamic. + type: string + type: object + type: array + location: + description: The location/region where the Virtual Network Gateway + is located. Changing this forces a new resource to be created. + type: string + privateIpAddressEnabled: + description: Should private IP be enabled on this gateway for + connections? Changing this forces a new resource to be created. + type: boolean + sku: + description: Configuration of the size and capacity of the virtual + network gateway. Valid options are Basic, Standard, HighPerformance, + UltraPerformance, ErGw1AZ, ErGw2AZ, ErGw3AZ, VpnGw1, VpnGw2, + VpnGw3, VpnGw4,VpnGw5, VpnGw1AZ, VpnGw2AZ, VpnGw3AZ,VpnGw4AZ + and VpnGw5AZ and depend on the type, vpn_type and generation + arguments. A PolicyBased gateway only supports the Basic SKU. + Further, the UltraPerformance SKU is only supported by an ExpressRoute + gateway. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: + description: The type of the Virtual Network Gateway. Valid options + are Vpn or ExpressRoute. Changing the type forces a new resource + to be created. + type: string + vpnClientConfiguration: + description: A vpn_client_configuration block which is documented + below. In this block the Virtual Network Gateway can be configured + to accept IPSec point-to-site connections. + items: + properties: + aadAudience: + description: The client id of the Azure VPN application. + See Create an Active Directory (AD) tenant for P2S OpenVPN + protocol connections for values + type: string + aadIssuer: + description: The STS url for your tenant + type: string + aadTenant: + description: AzureAD Tenant URL + type: string + addressSpace: + description: The address space out of which IP addresses + for vpn clients will be taken. You can provide more than + one address space, e.g. in CIDR notation. + items: + type: string + type: array + radiusServerAddress: + description: The address of the Radius server. + type: string + radiusServerSecret: + description: The secret used by the Radius server. + type: string + revokedCertificate: + description: One or more revoked_certificate blocks which + are defined below. + items: + properties: + name: + description: A user-defined name of the root certificate. + type: string + thumbprint: + description: Specifies the public data of the certificate. + type: string + type: object + type: array + rootCertificate: + description: One or more root_certificate blocks which are + defined below. These root certificates are used to sign + the client certificate used by the VPN clients to connect + to the gateway. + items: + properties: + name: + description: A user-defined name of the root certificate. + type: string + publicCertData: + description: The public certificate of the root certificate + authority. The certificate must be provided in Base-64 + encoded X.509 format (PEM). In particular, this + argument must not include the -----BEGIN CERTIFICATE----- + or -----END CERTIFICATE----- markers. + type: string + type: object + type: array + vpnAuthTypes: + description: List of the vpn authentication types for the + virtual network gateway. The supported values are AAD, + Radius and Certificate. + items: + type: string + type: array + vpnClientProtocols: + description: List of the protocols supported by the vpn + client. The supported values are SSTP, IkeV2 and OpenVPN. + Values SSTP and IkeV2 are incompatible with the use of + aad_tenant, aad_audience and aad_issuer. + items: + type: string + type: array + type: object + type: array + vpnType: + description: The routing type of the Virtual Network Gateway. + Valid options are RouteBased or PolicyBased. Defaults to RouteBased. + Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -721,13 +947,21 @@ spec: type: object x-kubernetes-validations: - message: ipConfiguration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ipConfiguration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ipConfiguration) + || has(self.initProvider.ipConfiguration)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' status: description: VirtualNetworkGatewayStatus defines the observed state of VirtualNetworkGateway. diff --git a/package/crds/network.azure.upbound.io_virtualnetworkpeerings.yaml b/package/crds/network.azure.upbound.io_virtualnetworkpeerings.yaml index 5925b86f1..ccd5e5478 100644 --- a/package/crds/network.azure.upbound.io_virtualnetworkpeerings.yaml +++ b/package/crds/network.azure.upbound.io_virtualnetworkpeerings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualnetworkpeerings.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -332,21 +331,74 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowForwardedTraffic: + description: Controls if forwarded traffic from VMs in the remote + virtual network is allowed. Defaults to false. + type: boolean + allowGatewayTransit: + description: Controls gatewayLinks can be used in the remote virtual + network’s link to the local virtual network. Defaults to false. + type: boolean + allowVirtualNetworkAccess: + description: Controls if the VMs in the remote virtual network + can access VMs in the local virtual network. Defaults to true. + type: boolean + triggers: + additionalProperties: + type: string + description: A mapping of key values pairs that can be used to + sync network routes from the remote virtual network to the local + virtual network. See the trigger example for an example on how + to set it up. + type: object + useRemoteGateways: + description: Controls if remote gateways can be used on the local + virtual network. If the flag is set to true, and allow_gateway_transit + on the remote peering is also true, virtual network will use + gateways of remote virtual network for transit. Only one peering + can have this flag set to true. This flag cannot be set if virtual + network already has a gateway. Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/network.azure.upbound.io_virtualnetworks.yaml b/package/crds/network.azure.upbound.io_virtualnetworks.yaml index d3fd080ef..611c140ec 100644 --- a/package/crds/network.azure.upbound.io_virtualnetworks.yaml +++ b/package/crds/network.azure.upbound.io_virtualnetworks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualnetworks.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -89,9 +88,6 @@ spec: id: description: The ID of DDoS Protection Plan. type: string - required: - - enable - - id type: object type: array dnsServers: @@ -199,21 +195,92 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addressSpace: + description: The address space that is used the virtual network. + You can supply more than one address space. + items: + type: string + type: array + bgpCommunity: + description: The BGP community attribute in format :. + type: string + ddosProtectionPlan: + description: A ddos_protection_plan block as documented below. + items: + properties: + enable: + description: Enable/disable DDoS Protection Plan on Virtual + Network. + type: boolean + id: + description: The ID of DDoS Protection Plan. + type: string + type: object + type: array + dnsServers: + description: List of IP addresses of DNS servers + items: + type: string + type: array + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Virtual Network should exist. Changing this forces a new + Virtual Network to be created. + type: string + flowTimeoutInMinutes: + description: The flow timeout in minutes for the Virtual Network, + which is used to enable connection tracking for intra-VM flows. + Possible values are between 4 and 30 minutes. + type: number + location: + description: The location/region where the virtual network is + created. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -387,9 +454,13 @@ spec: type: object x-kubernetes-validations: - message: addressSpace is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.addressSpace) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.addressSpace) + || has(self.initProvider.addressSpace)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: VirtualNetworkStatus defines the observed state of VirtualNetwork. properties: diff --git a/package/crds/network.azure.upbound.io_virtualwans.yaml b/package/crds/network.azure.upbound.io_virtualwans.yaml index cb10a95f6..b13dc1589 100644 --- a/package/crds/network.azure.upbound.io_virtualwans.yaml +++ b/package/crds/network.azure.upbound.io_virtualwans.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: virtualwans.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -174,21 +173,72 @@ spec: include: Basic and Standard. Defaults to Standard.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowBranchToBranchTraffic: + description: Boolean flag to specify whether branch to branch + traffic is allowed. Defaults to true. + type: boolean + disableVpnEncryption: + description: Boolean flag to specify whether VPN encryption is + disabled. Defaults to false. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + office365LocalBreakoutCategory: + description: 'Specifies the Office365 local breakout category. + Possible values include: Optimize, OptimizeAndAllow, All, None. + Defaults to None.' + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Virtual WAN. + type: object + type: + description: 'Specifies the Virtual WAN type. Possible Values + include: Basic and Standard. Defaults to Standard.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -362,7 +412,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: VirtualWANStatus defines the observed state of VirtualWAN. properties: diff --git a/package/crds/network.azure.upbound.io_vpngatewayconnections.yaml b/package/crds/network.azure.upbound.io_vpngatewayconnections.yaml index 0a26e38af..63a35c599 100644 --- a/package/crds/network.azure.upbound.io_vpngatewayconnections.yaml +++ b/package/crds/network.azure.upbound.io_vpngatewayconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: vpngatewayconnections.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -184,12 +183,8 @@ spec: items: type: string type: array - required: - - routeTableIds type: object type: array - required: - - associatedRouteTable type: object type: array trafficSelectorPolicy: @@ -209,9 +204,6 @@ spec: items: type: string type: array - required: - - localAddressRanges - - remoteAddressRanges type: object type: array vpnGatewayId: @@ -325,9 +317,6 @@ spec: description: The ID of the IP Configuration which belongs to the VPN Gateway. type: string - required: - - ipAddress - - ipConfigurationId type: object type: array egressNatRuleIds: @@ -386,15 +375,6 @@ spec: called Quick Mode or Phase 2 SA) lifetime in seconds for the site to site VPN tunnel. type: number - required: - - dhGroup - - encryptionAlgorithm - - ikeEncryptionAlgorithm - - ikeIntegrityAlgorithm - - integrityAlgorithm - - pfsGroup - - saDataSizeKb - - saLifetimeSec type: object type: array localAzureIpAddressEnabled: @@ -428,27 +408,234 @@ spec: description: The ID of the connected VPN Site Link. Changing this forces a new VPN Gateway Connection to be created. type: string - required: - - name - - vpnSiteLinkId type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + internetSecurityEnabled: + description: Whether Internet Security is enabled for this VPN + Connection. Defaults to false. + type: boolean + routing: + description: A routing block as defined below. If this is not + specified, there will be a default route table created implicitly. + items: + properties: + associatedRouteTable: + description: The ID of the Route Table associated with this + VPN Connection. + type: string + inboundRouteMapId: + description: The resource ID of the Route Map associated + with this Routing Configuration for inbound learned routes. + type: string + outboundRouteMapId: + description: The resource ID of the Route Map associated + with this Routing Configuration for outbound advertised + routes. + type: string + propagatedRouteTable: + description: A propagated_route_table block as defined below. + items: + properties: + labels: + description: A list of labels to assign to this route + table. + items: + type: string + type: array + routeTableIds: + description: A list of Route Table IDs to associated + with this VPN Gateway Connection. + items: + type: string + type: array + type: object + type: array + type: object + type: array + trafficSelectorPolicy: + description: One or more traffic_selector_policy blocks as defined + below. + items: + properties: + localAddressRanges: + description: A list of local address spaces in CIDR format + for this VPN Gateway Connection. + items: + type: string + type: array + remoteAddressRanges: + description: A list of remote address spaces in CIDR format + for this VPN Gateway Connection. + items: + type: string + type: array + type: object + type: array + vpnLink: + description: One or more vpn_link blocks as defined below. + items: + properties: + bandwidthMbps: + description: The expected connection bandwidth in MBPS. + Defaults to 10. + type: number + bgpEnabled: + description: Should the BGP be enabled? Defaults to false. + Changing this forces a new VPN Gateway Connection to be + created. + type: boolean + connectionMode: + description: The connection mode of this VPN Link. Possible + values are Default, InitiatorOnly and ResponderOnly. Defaults + to Default. + type: string + customBgpAddress: + description: One or more custom_bgp_address blocks as defined + below. + items: + properties: + ipAddress: + description: The custom bgp ip address which belongs + to the IP Configuration. + type: string + ipConfigurationId: + description: The ID of the IP Configuration which + belongs to the VPN Gateway. + type: string + type: object + type: array + egressNatRuleIds: + description: A list of the egress NAT Rule Ids. + items: + type: string + type: array + ingressNatRuleIds: + description: A list of the ingress NAT Rule Ids. + items: + type: string + type: array + ipsecPolicy: + description: One or more ipsec_policy blocks as defined + above. + items: + properties: + dhGroup: + description: The DH Group used in IKE Phase 1 for + initial SA. Possible values are None, DHGroup1, + DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, + ECP384. + type: string + encryptionAlgorithm: + description: The IPSec encryption algorithm (IKE phase + 1). Possible values are AES128, AES192, AES256, + DES, DES3, GCMAES128, GCMAES192, GCMAES256, None. + type: string + ikeEncryptionAlgorithm: + description: The IKE encryption algorithm (IKE phase + 2). Possible values are DES, DES3, AES128, AES192, + AES256, GCMAES128, GCMAES256. + type: string + ikeIntegrityAlgorithm: + description: The IKE integrity algorithm (IKE phase + 2). Possible values are MD5, SHA1, SHA256, SHA384, + GCMAES128, GCMAES256. + type: string + integrityAlgorithm: + description: The IPSec integrity algorithm (IKE phase + 1). Possible values are MD5, SHA1, SHA256, GCMAES128, + GCMAES192, GCMAES256. + type: string + pfsGroup: + description: The Pfs Group used in IKE Phase 2 for + the new child SA. Possible values are None, PFS1, + PFS2, PFS14, PFS24, PFS2048, PFSMM, ECP256, ECP384. + type: string + saDataSizeKb: + description: The IPSec Security Association (also + called Quick Mode or Phase 2 SA) payload size in + KB for the site to site VPN tunnel. + type: number + saLifetimeSec: + description: The IPSec Security Association (also + called Quick Mode or Phase 2 SA) lifetime in seconds + for the site to site VPN tunnel. + type: number + type: object + type: array + localAzureIpAddressEnabled: + description: Whether to use local Azure IP to initiate connection? + Defaults to false. + type: boolean + name: + description: The name which should be used for this VPN + Link Connection. + type: string + policyBasedTrafficSelectorEnabled: + description: Whether to enable policy-based traffic selectors? + Defaults to false. + type: boolean + protocol: + description: The protocol used for this VPN Link Connection. + Possible values are IKEv1 and IKEv2. Defaults to IKEv2. + type: string + ratelimitEnabled: + description: Should the rate limit be enabled? Defaults + to false. + type: boolean + routeWeight: + description: Routing weight for this VPN Link Connection. + Defaults to 0. + type: number + sharedKey: + description: SharedKey for this VPN Link Connection. + type: string + vpnSiteLinkId: + description: The ID of the connected VPN Site Link. Changing + this forces a new VPN Gateway Connection to be created. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -622,7 +809,9 @@ spec: type: object x-kubernetes-validations: - message: vpnLink is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vpnLink) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.vpnLink) + || has(self.initProvider.vpnLink)' status: description: VPNGatewayConnectionStatus defines the observed state of VPNGatewayConnection. diff --git a/package/crds/network.azure.upbound.io_vpngateways.yaml b/package/crds/network.azure.upbound.io_vpngateways.yaml index a2d3732e1..650c706c7 100644 --- a/package/crds/network.azure.upbound.io_vpngateways.yaml +++ b/package/crds/network.azure.upbound.io_vpngateways.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: vpngateways.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -91,8 +90,6 @@ spec: items: type: string type: array - required: - - customIps type: object type: array instance1BgpPeeringAddress: @@ -106,8 +103,6 @@ spec: items: type: string type: array - required: - - customIps type: object type: array peerWeight: @@ -115,9 +110,6 @@ spec: BGP Speaker. Changing this forces a new resource to be created. type: number - required: - - asn - - peerWeight type: object type: array location: @@ -303,21 +295,113 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + bgpRouteTranslationForNatEnabled: + description: Is BGP route translation for NAT on this VPN Gateway + enabled? Defaults to false. + type: boolean + bgpSettings: + description: A bgp_settings block as defined below. + items: + properties: + asn: + description: The ASN of the BGP Speaker. Changing this forces + a new resource to be created. + type: number + instance0BgpPeeringAddress: + description: An instance_bgp_peering_address block as defined + below. + items: + properties: + customIps: + description: A list of custom BGP peering addresses + to assign to this instance. + items: + type: string + type: array + type: object + type: array + instance1BgpPeeringAddress: + description: An instance_bgp_peering_address block as defined + below. + items: + properties: + customIps: + description: A list of custom BGP peering addresses + to assign to this instance. + items: + type: string + type: array + type: object + type: array + peerWeight: + description: The weight added to Routes learned from this + BGP Speaker. Changing this forces a new resource to be + created. + type: number + type: object + type: array + location: + description: The Azure location where this VPN Gateway should + be created. Changing this forces a new resource to be created. + type: string + routingPreference: + description: Azure routing preference lets you to choose how your + traffic routes between Azure and the internet. You can choose + to route traffic either via the Microsoft network (default value, + Microsoft Network), or via the ISP network (public internet, + set to Internet). More context of the configuration can be found + in the Microsoft Docs to create a VPN Gateway. Changing this + forces a new resource to be created. + type: string + scaleUnit: + description: The Scale Unit for this VPN Gateway. Defaults to + 1. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the VPN Gateway. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -491,7 +575,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: VPNGatewayStatus defines the observed state of VPNGateway. properties: diff --git a/package/crds/network.azure.upbound.io_vpnserverconfigurationpolicygroups.yaml b/package/crds/network.azure.upbound.io_vpnserverconfigurationpolicygroups.yaml index eaf2d25ef..85d5fedd3 100644 --- a/package/crds/network.azure.upbound.io_vpnserverconfigurationpolicygroups.yaml +++ b/package/crds/network.azure.upbound.io_vpnserverconfigurationpolicygroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: vpnserverconfigurationpolicygroups.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -91,10 +90,6 @@ spec: description: The value of the attribute that is used for the VPN Server Configuration Policy member. type: string - required: - - name - - type - - value type: object type: array priority: @@ -182,21 +177,74 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + isDefault: + description: Is this a default VPN Server Configuration Policy + Group? Defaults to false. Changing this forces a new resource + to be created. + type: boolean + policy: + description: One or more policy blocks as documented below. + items: + properties: + name: + description: The name of the VPN Server Configuration Policy + member. + type: string + type: + description: The attribute type of the VPN Server Configuration + Policy member. Possible values are AADGroupId, CertificateGroupId + and RadiusAzureGroupId. + type: string + value: + description: The value of the attribute that is used for + the VPN Server Configuration Policy member. + type: string + type: object + type: array + priority: + description: The priority of this VPN Server Configuration Policy + Group. Defaults to 0. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -370,7 +418,9 @@ spec: type: object x-kubernetes-validations: - message: policy is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policy) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.policy) + || has(self.initProvider.policy)' status: description: VPNServerConfigurationPolicyGroupStatus defines the observed state of VPNServerConfigurationPolicyGroup. diff --git a/package/crds/network.azure.upbound.io_vpnserverconfigurations.yaml b/package/crds/network.azure.upbound.io_vpnserverconfigurations.yaml index b1042a46c..71ffde534 100644 --- a/package/crds/network.azure.upbound.io_vpnserverconfigurations.yaml +++ b/package/crds/network.azure.upbound.io_vpnserverconfigurations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: vpnserverconfigurations.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,10 +81,6 @@ spec: tenant: description: The Tenant which should be used for authentication. type: string - required: - - audience - - issuer - - tenant type: object type: array clientRevokedCertificate: @@ -99,9 +94,6 @@ spec: thumbprint: description: The Thumbprint of the Certificate. type: string - required: - - name - - thumbprint type: object type: array clientRootCertificate: @@ -115,9 +107,6 @@ spec: publicCertData: description: The Public Key Data associated with the Certificate. type: string - required: - - name - - publicCertData type: object type: array ipsecPolicy: @@ -162,15 +151,6 @@ spec: description: The IPSec Security Association lifetime in seconds for a Site-to-Site VPN tunnel. type: number - required: - - dhGroup - - ikeEncryption - - ikeIntegrity - - ipsecEncryption - - ipsecIntegrity - - pfsGroup - - saDataSizeKilobytes - - saLifetimeSeconds type: object type: array location: @@ -194,9 +174,6 @@ spec: thumbprint: description: The Thumbprint of the Certificate. type: string - required: - - name - - thumbprint type: object type: array server: @@ -229,8 +206,6 @@ spec: - namespace type: object required: - - address - - score - secretSecretRef type: object type: array @@ -247,9 +222,6 @@ spec: description: The Public Key Data associated with the Certificate. type: string - required: - - name - - publicCertData type: object type: array type: object @@ -353,21 +325,203 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + azureActiveDirectoryAuthentication: + description: A azure_active_directory_authentication block as + defined below. + items: + properties: + audience: + description: The Audience which should be used for authentication. + type: string + issuer: + description: The Issuer which should be used for authentication. + type: string + tenant: + description: The Tenant which should be used for authentication. + type: string + type: object + type: array + clientRevokedCertificate: + description: One or more client_revoked_certificate blocks as + defined below. + items: + properties: + name: + description: A name used to uniquely identify this certificate. + type: string + thumbprint: + description: The Thumbprint of the Certificate. + type: string + type: object + type: array + clientRootCertificate: + description: One or more client_root_certificate blocks as defined + below. + items: + properties: + name: + description: A name used to uniquely identify this certificate. + type: string + publicCertData: + description: The Public Key Data associated with the Certificate. + type: string + type: object + type: array + ipsecPolicy: + description: A ipsec_policy block as defined below. + items: + properties: + dhGroup: + description: The DH Group, used in IKE Phase 1. Possible + values include DHGroup1, DHGroup2, DHGroup14, DHGroup24, + DHGroup2048, ECP256, ECP384 and None. + type: string + ikeEncryption: + description: The IKE encryption algorithm, used for IKE + Phase 2. Possible values include AES128, AES192, AES256, + DES, DES3, GCMAES128 and GCMAES256. + type: string + ikeIntegrity: + description: The IKE encryption integrity algorithm, used + for IKE Phase 2. Possible values include GCMAES128, GCMAES256, + MD5, SHA1, SHA256 and SHA384. + type: string + ipsecEncryption: + description: The IPSec encryption algorithm, used for IKE + phase 1. Possible values include AES128, AES192, AES256, + DES, DES3, GCMAES128, GCMAES192, GCMAES256 and None. + type: string + ipsecIntegrity: + description: The IPSec integrity algorithm, used for IKE + phase 1. Possible values include GCMAES128, GCMAES192, + GCMAES256, MD5, SHA1 and SHA256. + type: string + pfsGroup: + description: The Pfs Group, used in IKE Phase 2. Possible + values include ECP256, ECP384, PFS1, PFS2, PFS14, PFS24, + PFS2048, PFSMM and None. + type: string + saDataSizeKilobytes: + description: The IPSec Security Association payload size + in KB for a Site-to-Site VPN tunnel. + type: number + saLifetimeSeconds: + description: The IPSec Security Association lifetime in + seconds for a Site-to-Site VPN tunnel. + type: number + type: object + type: array + location: + description: The Azure location where this VPN Server Configuration + should be created. Changing this forces a new resource to be + created. + type: string + radius: + description: A radius block as defined below. + items: + properties: + clientRootCertificate: + description: One or more client_root_certificate blocks + as defined above. + items: + properties: + name: + description: A name used to uniquely identify this + certificate. + type: string + thumbprint: + description: The Thumbprint of the Certificate. + type: string + type: object + type: array + server: + description: One or more server blocks as defined below. + items: + properties: + address: + description: The Address of the Radius Server. + type: string + score: + description: The Score of the Radius Server determines + the priority of the server. Ranges from 1 to 30. + type: number + type: object + type: array + serverRootCertificate: + description: One or more server_root_certificate blocks + as defined below. + items: + properties: + name: + description: A name used to uniquely identify this + certificate. + type: string + publicCertData: + description: The Public Key Data associated with the + Certificate. + type: string + type: object + type: array + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + vpnAuthenticationTypes: + description: A list of Authentication Types applicable for this + VPN Server Configuration. Possible values are AAD (Azure Active + Directory), Certificate and Radius. + items: + type: string + type: array + vpnProtocols: + description: A list of VPN Protocols to use for this Server Configuration. + Possible values are IkeV2 and OpenVPN. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -541,9 +695,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: vpnAuthenticationTypes is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vpnAuthenticationTypes) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.vpnAuthenticationTypes) + || has(self.initProvider.vpnAuthenticationTypes)' status: description: VPNServerConfigurationStatus defines the observed state of VPNServerConfiguration. diff --git a/package/crds/network.azure.upbound.io_vpnsites.yaml b/package/crds/network.azure.upbound.io_vpnsites.yaml index 8331ef8fd..7b1b0ebd0 100644 --- a/package/crds/network.azure.upbound.io_vpnsites.yaml +++ b/package/crds/network.azure.upbound.io_vpnsites.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: vpnsites.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -94,9 +93,6 @@ spec: peeringAddress: description: The BGP peering IP address. type: string - required: - - asn - - peeringAddress type: object type: array fqdn: @@ -117,8 +113,6 @@ spec: description: The speed of the VPN device at the branch location in unit of mbps. Defaults to 0. type: number - required: - - name type: object type: array location: @@ -323,21 +317,138 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addressCidrs: + description: Specifies a list of IP address CIDRs that are located + on your on-premises site. Traffic destined for these address + spaces is routed to your local site. + items: + type: string + type: array + deviceModel: + description: The model of the VPN device. + type: string + deviceVendor: + description: The name of the VPN device vendor. + type: string + link: + description: One or more link blocks as defined below. + items: + properties: + bgp: + description: A bgp block as defined above. + items: + properties: + asn: + description: The BGP speaker's ASN. + type: number + peeringAddress: + description: The BGP peering IP address. + type: string + type: object + type: array + fqdn: + description: The FQDN of this VPN Site Link. + type: string + ipAddress: + description: The IP address of this VPN Site Link. + type: string + name: + description: The name which should be used for this VPN + Site Link. + type: string + providerName: + description: 'The name of the physical link at the VPN Site. + Example: ATT, Verizon.' + type: string + speedInMbps: + description: The speed of the VPN device at the branch location + in unit of mbps. Defaults to 0. + type: number + type: object + type: array + location: + description: The Azure Region where the VPN Site should exist. + Changing this forces a new VPN Site to be created. + type: string + o365Policy: + description: An o365_policy block as defined below. + items: + properties: + trafficCategory: + description: A traffic_category block as defined above. + items: + properties: + allowEndpointEnabled: + description: Is allow endpoint enabled? The Allow + endpoint is required for connectivity to specific + O365 services and features, but are not as sensitive + to network performance and latency as other endpoint + types. Defaults to false. + type: boolean + defaultEndpointEnabled: + description: Is default endpoint enabled? The Default + endpoint represents O365 services and dependencies + that do not require any optimization, and can be + treated by customer networks as normal Internet + bound traffic. Defaults to false. + type: boolean + optimizeEndpointEnabled: + description: Is optimize endpoint enabled? The Optimize + endpoint is required for connectivity to every O365 + service and represents the O365 scenario that is + the most sensitive to network performance, latency, + and availability. Defaults to false. + type: boolean + type: object + type: array + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + VPN Site. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -511,7 +622,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: VPNSiteStatus defines the observed state of VPNSite. properties: diff --git a/package/crds/network.azure.upbound.io_watcherflowlogs.yaml b/package/crds/network.azure.upbound.io_watcherflowlogs.yaml index 05b1a7fa1..d89e3a918 100644 --- a/package/crds/network.azure.upbound.io_watcherflowlogs.yaml +++ b/package/crds/network.azure.upbound.io_watcherflowlogs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: watcherflowlogs.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -321,9 +320,6 @@ spec: enabled: description: Boolean flag to enable/disable retention. type: boolean - required: - - days - - enabled type: object type: array storageAccountId: @@ -585,9 +581,6 @@ spec: type: string type: object type: object - required: - - enabled - - workspaceRegion type: object type: array version: @@ -595,21 +588,92 @@ spec: values are 1 and 2. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Should Network Flow Logging be Enabled? + type: boolean + location: + description: The location where the Network Watcher Flow Log resides. + Changing this forces a new resource to be created. Defaults + to the location of the Network Watcher. + type: string + retentionPolicy: + description: A retention_policy block as documented below. + items: + properties: + days: + description: The number of days to retain flow log records. + type: number + enabled: + description: Boolean flag to enable/disable retention. + type: boolean + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Network Watcher Flow Log. + type: object + trafficAnalytics: + description: A traffic_analytics block as documented below. + items: + properties: + enabled: + description: Boolean flag to enable/disable traffic analytics. + type: boolean + intervalInMinutes: + description: How frequently service should do flow analytics + in minutes. Defaults to 60. + type: number + workspaceRegion: + description: The location of the attached workspace. + type: string + type: object + type: array + version: + description: The version (revision) of the flow log. Possible + values are 1 and 2. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -783,9 +847,13 @@ spec: type: object x-kubernetes-validations: - message: enabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.enabled) + || has(self.initProvider.enabled)' - message: retentionPolicy is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.retentionPolicy) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.retentionPolicy) + || has(self.initProvider.retentionPolicy)' status: description: WatcherFlowLogStatus defines the observed state of WatcherFlowLog. properties: diff --git a/package/crds/network.azure.upbound.io_watchers.yaml b/package/crds/network.azure.upbound.io_watchers.yaml index c6f502026..da997927c 100644 --- a/package/crds/network.azure.upbound.io_watchers.yaml +++ b/package/crds/network.azure.upbound.io_watchers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: watchers.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,55 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,7 +379,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: WatcherStatus defines the observed state of Watcher. properties: diff --git a/package/crds/network.azure.upbound.io_webapplicationfirewallpolicies.yaml b/package/crds/network.azure.upbound.io_webapplicationfirewallpolicies.yaml index 4079f3c1f..d179d4192 100644 --- a/package/crds/network.azure.upbound.io_webapplicationfirewallpolicies.yaml +++ b/package/crds/network.azure.upbound.io_webapplicationfirewallpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: webapplicationfirewallpolicies.network.azure.upbound.io spec: group: network.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -103,8 +102,6 @@ spec: QueryString, PostArgs, RequestUri, RequestHeaders, RequestBody and RequestCookies. type: string - required: - - variableName type: object type: array negationCondition: @@ -124,9 +121,6 @@ spec: items: type: string type: array - required: - - matchVariables - - operator type: object type: array name: @@ -142,11 +136,6 @@ spec: description: Describes the type of rule. Possible values are MatchRule and Invalid. type: string - required: - - action - - matchConditions - - priority - - ruleType type: object type: array location: @@ -197,8 +186,6 @@ spec: REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. type: string - required: - - ruleGroupName type: object type: array type: @@ -225,10 +212,6 @@ spec: description: 'Describes operator to be matched. Possible values: Contains, EndsWith, Equals, EqualsAny, StartsWith.' type: string - required: - - matchVariable - - selector - - selectorMatchOperator type: object type: array managedRuleSet: @@ -265,8 +248,6 @@ spec: description: Identifier for the managed rule. type: string - required: - - id type: object type: array ruleGroupName: @@ -284,8 +265,6 @@ spec: REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. type: string - required: - - ruleGroupName type: object type: array type: @@ -296,12 +275,8 @@ spec: description: 'The rule set version. Possible values: 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2.' type: string - required: - - version type: object type: array - required: - - managedRuleSet type: object type: array policySettings: @@ -417,21 +392,290 @@ spec: Firewall Policy. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customRules: + description: One or more custom_rules blocks as defined below. + items: + properties: + action: + description: Type of action. Possible values are Allow, + Block and Log. + type: string + matchConditions: + description: One or more match_conditions blocks as defined + below. + items: + properties: + matchValues: + description: A list of match values. This is Required + when the operator is not Any. + items: + type: string + type: array + matchVariables: + description: One or more match_variables blocks as + defined below. + items: + properties: + selector: + description: Describes field of the matchVariable + collection + type: string + variableName: + description: The name of the Match Variable. + Possible values are RemoteAddr, RequestMethod, + QueryString, PostArgs, RequestUri, RequestHeaders, + RequestBody and RequestCookies. + type: string + type: object + type: array + negationCondition: + description: Describes if this is negate condition + or not + type: boolean + operator: + description: Describes operator to be matched. Possible + values are Any, IPMatch, GeoMatch, Equal, Contains, + LessThan, GreaterThan, LessThanOrEqual, GreaterThanOrEqual, + BeginsWith, EndsWith and Regex. + type: string + transforms: + description: A list of transformations to do before + the match is attempted. Possible values are HtmlEntityDecode, + Lowercase, RemoveNulls, Trim, UrlDecode and UrlEncode. + items: + type: string + type: array + type: object + type: array + name: + description: Gets name of the resource that is unique within + a policy. This name can be used to access the resource. + type: string + priority: + description: Describes priority of the rule. Rules with + a lower value will be evaluated before rules with a higher + value. + type: number + ruleType: + description: Describes the type of rule. Possible values + are MatchRule and Invalid. + type: string + type: object + type: array + location: + description: Resource location. Changing this forces a new resource + to be created. + type: string + managedRules: + description: A managed_rules blocks as defined below. + items: + properties: + exclusion: + description: One or more exclusion block defined below. + items: + properties: + excludedRuleSet: + description: One or more excluded_rule_set block defined + below. + items: + properties: + ruleGroup: + description: One or more rule_group block defined + below. + items: + properties: + excludedRules: + description: One or more Rule IDs for + exclusion. + items: + type: string + type: array + ruleGroupName: + description: The name of the Rule Group. + Possible values are BadBots, crs_20_protocol_violations, + crs_21_protocol_anomalies, crs_23_request_limits, + crs_30_http_policy, crs_35_bad_robots, + crs_40_generic_attacks, crs_41_sql_injection_attacks, + crs_41_xss_attacks, crs_42_tight_security, + crs_45_trojans, General, GoodBots, Known-CVEs, + REQUEST-911-METHOD-ENFORCEMENT, REQUEST-913-SCANNER-DETECTION, + REQUEST-920-PROTOCOL-ENFORCEMENT, REQUEST-921-PROTOCOL-ATTACK, + REQUEST-930-APPLICATION-ATTACK-LFI, + REQUEST-931-APPLICATION-ATTACK-RFI, + REQUEST-932-APPLICATION-ATTACK-RCE, + REQUEST-933-APPLICATION-ATTACK-PHP, + REQUEST-941-APPLICATION-ATTACK-XSS, + REQUEST-942-APPLICATION-ATTACK-SQLI, + REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, + REQUEST-944-APPLICATION-ATTACK-JAVA + and UnknownBots. + type: string + type: object + type: array + type: + description: 'The rule set type. Possible values: + Microsoft_BotManagerRuleSet and OWASP.' + type: string + version: + description: 'The rule set version. Possible + values: 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2.' + type: string + type: object + type: array + matchVariable: + description: 'The name of the Match Variable. Possible + values: RequestArgKeys, RequestArgNames, RequestArgValues, + RequestCookieKeys, RequestCookieNames, RequestCookieValues, + RequestHeaderKeys, RequestHeaderNames, RequestHeaderValues.' + type: string + selector: + description: Describes field of the matchVariable + collection + type: string + selectorMatchOperator: + description: 'Describes operator to be matched. Possible + values: Contains, EndsWith, Equals, EqualsAny, StartsWith.' + type: string + type: object + type: array + managedRuleSet: + description: One or more managed_rule_set block defined + below. + items: + properties: + ruleGroupOverride: + description: One or more rule_group_override block + defined below. + items: + properties: + disabledRules: + items: + type: string + type: array + rule: + description: One or more rule block defined + below. + items: + properties: + action: + description: Describes the override action + to be applied when rule matches. Possible + values are Allow, AnomalyScoring, Block + and Log. + type: string + enabled: + description: Describes if the managed + rule is in enabled state or disabled + state. + type: boolean + id: + description: Identifier for the managed + rule. + type: string + type: object + type: array + ruleGroupName: + description: The name of the Rule Group. Possible + values are BadBots, crs_20_protocol_violations, + crs_21_protocol_anomalies, crs_23_request_limits, + crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, + crs_41_sql_injection_attacks, crs_41_xss_attacks, + crs_42_tight_security, crs_45_trojans, General, + GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, + REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, + REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, + REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, + REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, + REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, + REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. + type: string + type: object + type: array + type: + description: 'The rule set type. Possible values: + Microsoft_BotManagerRuleSet and OWASP.' + type: string + version: + description: 'The rule set version. Possible values: + 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2.' + type: string + type: object + type: array + type: object + type: array + policySettings: + description: A policy_settings block as defined below. + items: + properties: + enabled: + description: Describes if the policy is in enabled state + or disabled state. Defaults to true. + type: boolean + fileUploadLimitInMb: + description: The File Upload Limit in MB. Accepted values + are in the range 1 to 4000. Defaults to 100. + type: number + maxRequestBodySizeInKb: + description: The Maximum Request Body Size in KB. Accepted + values are in the range 8 to 2000. Defaults to 128. + type: number + mode: + description: Describes if it is in detection mode or prevention + mode at the policy level. Valid values are Detection and + Prevention. Defaults to Prevention. + type: string + requestBodyCheck: + description: Is Request Body Inspection enabled? Defaults + to true. + type: boolean + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the Web Application + Firewall Policy. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -605,9 +849,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: managedRules is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.managedRules) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.managedRules) + || has(self.initProvider.managedRules)' status: description: WebApplicationFirewallPolicyStatus defines the observed state of WebApplicationFirewallPolicy. diff --git a/package/crds/notificationhubs.azure.upbound.io_authorizationrules.yaml b/package/crds/notificationhubs.azure.upbound.io_authorizationrules.yaml index 9290e8427..9e6821080 100644 --- a/package/crds/notificationhubs.azure.upbound.io_authorizationrules.yaml +++ b/package/crds/notificationhubs.azure.upbound.io_authorizationrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: authorizationrules.notificationhubs.azure.upbound.io spec: group: notificationhubs.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -322,21 +321,58 @@ spec: the Notification Hub? Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + listen: + description: Does this Authorization Rule have Listen access to + the Notification Hub? Defaults to false. + type: boolean + manage: + description: Does this Authorization Rule have Manage access to + the Notification Hub? Defaults to false. + type: boolean + send: + description: Does this Authorization Rule have Send access to + the Notification Hub? Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/notificationhubs.azure.upbound.io_notificationhubnamespaces.yaml b/package/crds/notificationhubs.azure.upbound.io_notificationhubnamespaces.yaml index 2e162eb49..e2a5a702a 100644 --- a/package/crds/notificationhubs.azure.upbound.io_notificationhubnamespaces.yaml +++ b/package/crds/notificationhubs.azure.upbound.io_notificationhubnamespaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: notificationhubnamespaces.notificationhubs.azure.upbound.io spec: group: notificationhubs.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -172,21 +171,68 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Is this Notification Hub Namespace enabled? Defaults + to true. + type: boolean + location: + description: The Azure Region in which this Notification Hub Namespace + should be created. Changing this forces a new resource to be + created. + type: string + namespaceType: + description: The Type of Namespace - possible values are Messaging + or NotificationHub. + type: string + skuName: + description: The name of the SKU to use for this Notification + Hub Namespace. Possible values are Free, Basic or Standard. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -360,11 +406,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: namespaceType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.namespaceType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.namespaceType) + || has(self.initProvider.namespaceType)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: NotificationHubNamespaceStatus defines the observed state of NotificationHubNamespace. diff --git a/package/crds/notificationhubs.azure.upbound.io_notificationhubs.yaml b/package/crds/notificationhubs.azure.upbound.io_notificationhubs.yaml index e3dc77c3a..1229bb3e4 100644 --- a/package/crds/notificationhubs.azure.upbound.io_notificationhubs.yaml +++ b/package/crds/notificationhubs.azure.upbound.io_notificationhubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: notificationhubs.notificationhubs.azure.upbound.io spec: group: notificationhubs.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -109,10 +108,6 @@ spec: - namespace type: object required: - - applicationMode - - bundleId - - keyId - - teamId - tokenSecretRef type: object type: array @@ -312,21 +307,82 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + apnsCredential: + description: A apns_credential block as defined below. + items: + properties: + applicationMode: + description: The Application Mode which defines which server + the APNS Messages should be sent to. Possible values are + Production and Sandbox. + type: string + bundleId: + description: The Bundle ID of the iOS/macOS application + to send push notifications for, such as com.hashicorp.example. + type: string + keyId: + description: The Apple Push Notifications Service (APNS) + Key. + type: string + teamId: + description: The ID of the team the Token. + type: string + type: object + type: array + gcmCredential: + description: A gcm_credential block as defined below. + items: + type: object + type: array + location: + description: The Azure Region in which this Notification Hub Namespace + exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -500,7 +556,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: NotificationHubStatus defines the observed state of NotificationHub. properties: diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticsdataexportrules.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdataexportrules.yaml index bde1638ca..13c32844d 100644 --- a/package/crds/operationalinsights.azure.upbound.io_loganalyticsdataexportrules.yaml +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdataexportrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loganalyticsdataexportrules.operationalinsights.azure.upbound.io spec: group: operationalinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -318,21 +317,56 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Is this Log Analytics Data Export Rule enabled? Possible + values include true or false. Defaults to false. + type: boolean + tableNames: + description: 'A list of table names to export to the destination + resource, for example: ["Heartbeat", "SecurityEvent"].' + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -506,7 +540,9 @@ spec: type: object x-kubernetes-validations: - message: tableNames is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tableNames) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tableNames) + || has(self.initProvider.tableNames)' status: description: LogAnalyticsDataExportRuleStatus defines the observed state of LogAnalyticsDataExportRule. diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsevents.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsevents.yaml index 50ac201a5..87ed3ca71 100644 --- a/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsevents.yaml +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsevents.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loganalyticsdatasourcewindowsevents.operationalinsights.azure.upbound.io spec: group: operationalinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -242,21 +241,57 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + eventLogName: + description: Specifies the name of the Windows Event Log to collect + events from. + type: string + eventTypes: + description: Specifies an array of event types applied to the + specified event log. Possible values include Error, Warning + and Information. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -430,9 +465,13 @@ spec: type: object x-kubernetes-validations: - message: eventLogName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.eventLogName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.eventLogName) + || has(self.initProvider.eventLogName)' - message: eventTypes is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.eventTypes) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.eventTypes) + || has(self.initProvider.eventTypes)' status: description: LogAnalyticsDataSourceWindowsEventStatus defines the observed state of LogAnalyticsDataSourceWindowsEvent. diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsperformancecounters.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsperformancecounters.yaml index c22cb14c2..4af5fce3f 100644 --- a/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsperformancecounters.yaml +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsperformancecounters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loganalyticsdatasourcewindowsperformancecounters.operationalinsights.azure.upbound.io spec: group: operationalinsights.azure.upbound.io @@ -61,7 +60,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -250,21 +249,62 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + counterName: + description: The friendly name of the performance counter. + type: string + instanceName: + description: The name of the virtual machine instance to which + the Windows Performance Counter DataSource be applied. Specify + a * will apply to all instances. + type: string + intervalSeconds: + description: The time of sample interval in seconds. Supports + values between 10 and 2147483647. + type: number + objectName: + description: The object name of the Log Analytics Windows Performance + Counter DataSource. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -438,13 +478,21 @@ spec: type: object x-kubernetes-validations: - message: counterName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.counterName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.counterName) + || has(self.initProvider.counterName)' - message: instanceName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.instanceName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.instanceName) + || has(self.initProvider.instanceName)' - message: intervalSeconds is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.intervalSeconds) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.intervalSeconds) + || has(self.initProvider.intervalSeconds)' - message: objectName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.objectName) + || has(self.initProvider.objectName)' status: description: LogAnalyticsDataSourceWindowsPerformanceCounterStatus defines the observed state of LogAnalyticsDataSourceWindowsPerformanceCounter. diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedservices.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedservices.yaml index 75370ee2e..64e91e0c8 100644 --- a/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedservices.yaml +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loganalyticslinkedservices.operationalinsights.azure.upbound.io spec: group: operationalinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -314,21 +313,51 @@ spec: Cluster resource. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + writeAccessId: + description: The ID of the writable Resource that will be linked + to the workspace. This should be used for linking to a Log Analytics + Cluster resource. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedstorageaccounts.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedstorageaccounts.yaml index 725d2cf7b..be7f58ea2 100644 --- a/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedstorageaccounts.yaml +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedstorageaccounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loganalyticslinkedstorageaccounts.operationalinsights.azure.upbound.io spec: group: operationalinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -318,21 +317,52 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dataSourceType: + description: The data source type which should be used for this + Log Analytics Linked Storage Account. Possible values are CustomLogs, + AzureWatson, Query, Ingestion and Alerts. Changing this forces + a new Log Analytics Linked Storage Account to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -506,7 +536,9 @@ spec: type: object x-kubernetes-validations: - message: dataSourceType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dataSourceType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dataSourceType) + || has(self.initProvider.dataSourceType)' status: description: LogAnalyticsLinkedStorageAccountStatus defines the observed state of LogAnalyticsLinkedStorageAccount. diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticsquerypackqueries.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticsquerypackqueries.yaml index e80ad6e65..8d36d23c8 100644 --- a/package/crds/operationalinsights.azure.upbound.io_loganalyticsquerypackqueries.yaml +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticsquerypackqueries.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loganalyticsquerypackqueries.operationalinsights.azure.upbound.io spec: group: operationalinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -274,21 +273,171 @@ spec: Log Analytics Query Pack Query. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalSettingsJson: + description: The additional properties that can be set for the + Log Analytics Query Pack Query. + type: string + body: + description: The body of the Log Analytics Query Pack Query. + type: string + categories: + description: A list of the related categories for the function. + Possible values are applications, audit, container, databases, + desktopanalytics, management, monitor, network, resources, security, + virtualmachines, windowsvirtualdesktop and workloads. + items: + type: string + type: array + description: + description: The description of the Log Analytics Query Pack Query. + type: string + displayName: + description: The unique display name for the query within the + Log Analytics Query Pack. + type: string + name: + description: An unique UUID/GUID which identifies this Log Analytics + Query Pack Query - one will be generated if not specified. Changing + this forces a new resource to be created. + type: string + resourceTypes: + description: A list of the related resource types for the function. + Possible values are default, microsoft.aad/domainservices, microsoft.aadiam/tenants, + microsoft.agfoodplatform/farmbeats, microsoft.analysisservices/servers, + microsoft.apimanagement/service, microsoft.appconfiguration/configurationstores, + microsoft.appplatform/spring, microsoft.attestation/attestationproviders, + microsoft.authorization/tenants, microsoft.automation/automationaccounts, + microsoft.autonomousdevelopmentplatform/accounts, microsoft.azurestackhci/virtualmachines, + microsoft.batch/batchaccounts, microsoft.blockchain/blockchainmembers, + microsoft.botservice/botservices, microsoft.cache/redis, microsoft.cdn/profiles, + microsoft.cognitiveservices/accounts, microsoft.communication/communicationservices, + microsoft.compute/virtualmachines, microsoft.compute/virtualmachinescalesets, + microsoft.connectedcache/cachenodes, microsoft.connectedvehicle/platformaccounts, + microsoft.conenctedvmwarevsphere/virtualmachines, microsoft.containerregistry/registries, + microsoft.containerservice/managedclusters, microsoft.d365customerinsights/instances, + microsoft.dashboard/grafana, microsoft.databricks/workspaces, + microsoft.datacollaboration/workspaces, microsoft.datafactory/factories, + microsoft.datalakeanalytics/accounts, microsoft.datalakestore/accounts, + microsoft.datashare/accounts, microsoft.dbformariadb/servers, + microsoft.dbformysql/servers, microsoft.dbforpostgresql/flexibleservers, + microsoft.dbforpostgresql/servers, microsoft.dbforpostgresql/serversv2, + microsoft.digitaltwins/digitaltwinsinstances, microsoft.documentdb/cassandraclusters, + microsoft.documentdb/databaseaccounts, microsoft.desktopvirtualization/applicationgroups, + microsoft.desktopvirtualization/hostpools, microsoft.desktopvirtualization/workspaces, + microsoft.devices/iothubs, microsoft.devices/provisioningservices, + microsoft.dynamics/fraudprotection/purchase, microsoft.eventgrid/domains, + microsoft.eventgrid/topics, microsoft.eventgrid/partnernamespaces, + microsoft.eventgrid/partnertopics, microsoft.eventgrid/systemtopics, + microsoft.eventhub/namespaces, microsoft.experimentation/experimentworkspaces, + microsoft.hdinsight/clusters, microsoft.healthcareapis/services, + microsoft.informationprotection/datasecuritymanagement, microsoft.intune/operations, + microsoft.insights/autoscalesettings, microsoft.insights/components, + microsoft.insights/workloadmonitoring, microsoft.keyvault/vaults, + microsoft.kubernetes/connectedclusters, microsoft.kusto/clusters, + microsoft.loadtestservice/loadtests, microsoft.logic/workflows, + microsoft.machinelearningservices/workspaces, microsoft.media/mediaservices, + microsoft.netapp/netappaccounts/capacitypools, microsoft.network/applicationgateways, + microsoft.network/azurefirewalls, microsoft.network/bastionhosts, + microsoft.network/expressroutecircuits, microsoft.network/frontdoors, + microsoft.network/loadbalancers, microsoft.network/networkinterfaces, + microsoft.network/networksecuritygroups, microsoft.network/networksecurityperimeters, + microsoft.network/networkwatchers/connectionmonitors, microsoft.network/networkwatchers/trafficanalytics, + microsoft.network/publicipaddresses, microsoft.network/trafficmanagerprofiles, + microsoft.network/virtualnetworks, microsoft.network/virtualnetworkgateways, + microsoft.network/vpngateways, microsoft.networkfunction/azuretrafficcollectors, + microsoft.openenergyplatform/energyservices, microsoft.openlogisticsplatform/workspaces, + microsoft.operationalinsights/workspaces, microsoft.powerbi/tenants, + microsoft.powerbi/tenants/workspaces, microsoft.powerbidedicated/capacities, + microsoft.purview/accounts, microsoft.recoveryservices/vaults, + microsoft.resources/azureactivity, microsoft.scvmm/virtualmachines, + microsoft.search/searchservices, microsoft.security/antimalwaresettings, + microsoft.securityinsights/amazon, microsoft.securityinsights/anomalies, + microsoft.securityinsights/cef, microsoft.securityinsights/datacollection, + microsoft.securityinsights/dnsnormalized, microsoft.securityinsights/mda, + microsoft.securityinsights/mde, microsoft.securityinsights/mdi, + microsoft.securityinsights/mdo, microsoft.securityinsights/networksessionnormalized, + microsoft.securityinsights/office365, microsoft.securityinsights/purview, + microsoft.securityinsights/securityinsights, microsoft.securityinsights/securityinsights/mcas, + microsoft.securityinsights/tvm, microsoft.securityinsights/watchlists, + microsoft.servicebus/namespaces, microsoft.servicefabric/clusters, + microsoft.signalrservice/signalr, microsoft.signalrservice/webpubsub, + microsoft.sql/managedinstances, microsoft.sql/servers, microsoft.sql/servers/databases, + microsoft.storage/storageaccounts, microsoft.storagecache/caches, + microsoft.streamanalytics/streamingjobs, microsoft.synapse/workspaces, + microsoft.timeseriesinsights/environments, microsoft.videoindexer/accounts, + microsoft.web/sites, microsoft.workloadmonitor/monitors, resourcegroup + and subscription. + items: + type: string + type: array + solutions: + description: A list of the related Log Analytics solutions for + the function. Possible values are AADDomainServices, ADAssessment, + ADAssessmentPlus, ADReplication, ADSecurityAssessment, AlertManagement, + AntiMalware, ApplicationInsights, AzureAssessment, AzureSecurityOfThings, + AzureSentinelDSRE, AzureSentinelPrivatePreview, BehaviorAnalyticsInsights, + ChangeTracking, CompatibilityAssessment, ContainerInsights, + Containers, CustomizedWindowsEventsFiltering, DeviceHealthProd, + DnsAnalytics, ExchangeAssessment, ExchangeOnlineAssessment, + IISAssessmentPlus, InfrastructureInsights, InternalWindowsEvent, + LogManagement, Microsoft365Analytics, NetworkMonitoring, SCCMAssessmentPlus, + SCOMAssessment, SCOMAssessmentPlus, Security, SecurityCenter, + SecurityCenterFree, SecurityInsights, ServiceMap, SfBAssessment, + SfBOnlineAssessment, SharePointOnlineAssessment, SPAssessment, + SQLAdvancedThreatProtection, SQLAssessment, SQLAssessmentPlus, + SQLDataClassification, SQLThreatDetection, SQLVulnerabilityAssessment, + SurfaceHub, Updates, VMInsights, WEFInternalUat, WEF_10x, WEF_10xDSRE, + WaaSUpdateInsights, WinLog, WindowsClientAssessmentPlus, WindowsEventForwarding, + WindowsFirewall, WindowsServerAssessment, WireData and WireData2. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Log Analytics Query Pack Query. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -462,9 +611,13 @@ spec: type: object x-kubernetes-validations: - message: body is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.body) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.body) + || has(self.initProvider.body)' - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' status: description: LogAnalyticsQueryPackQueryStatus defines the observed state of LogAnalyticsQueryPackQuery. diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticsquerypacks.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticsquerypacks.yaml index 56b5318ab..6ab6a8f8e 100644 --- a/package/crds/operationalinsights.azure.upbound.io_loganalyticsquerypacks.yaml +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticsquerypacks.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loganalyticsquerypacks.operationalinsights.azure.upbound.io spec: group: operationalinsights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -159,21 +158,56 @@ spec: Log Analytics Query Pack. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Log Analytics Query Pack + should exist. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Log Analytics Query Pack. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -347,7 +381,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: LogAnalyticsQueryPackStatus defines the observed state of LogAnalyticsQueryPack. diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticssavedsearches.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticssavedsearches.yaml index a8f2ea9f1..4f743106f 100644 --- a/package/crds/operationalinsights.azure.upbound.io_loganalyticssavedsearches.yaml +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticssavedsearches.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loganalyticssavedsearches.operationalinsights.azure.upbound.io spec: group: operationalinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -179,21 +178,75 @@ spec: to be created. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + category: + description: The category that the Saved Search will be listed + under. Changing this forces a new resource to be created. + type: string + displayName: + description: The name that Saved Search will be displayed as. + Changing this forces a new resource to be created. + type: string + functionAlias: + description: The function alias if the query serves as a function. + Changing this forces a new resource to be created. + type: string + functionParameters: + description: The function parameters if the query serves as a + function. Changing this forces a new resource to be created. + items: + type: string + type: array + query: + description: The query expression for the saved search. Changing + this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Logs Analytics Saved Search. Changing this forces a new resource + to be created. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -367,11 +420,17 @@ spec: type: object x-kubernetes-validations: - message: category is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.category) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.category) + || has(self.initProvider.category)' - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: query is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.query) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.query) + || has(self.initProvider.query)' status: description: LogAnalyticsSavedSearchStatus defines the observed state of LogAnalyticsSavedSearch. diff --git a/package/crds/operationalinsights.azure.upbound.io_workspaces.yaml b/package/crds/operationalinsights.azure.upbound.io_workspaces.yaml index 6558dd384..ab0c865ba 100644 --- a/package/crds/operationalinsights.azure.upbound.io_workspaces.yaml +++ b/package/crds/operationalinsights.azure.upbound.io_workspaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: workspaces.operationalinsights.azure.upbound.io spec: group: operationalinsights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -196,21 +195,93 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowResourceOnlyPermissions: + description: Specifies if the log Analytics Workspace allow users + accessing to data associated with resources they have permission + to view, without permission to workspace. Defaults to true. + type: boolean + cmkForQueryForced: + description: Is Customer Managed Storage mandatory for query management? + type: boolean + dailyQuotaGb: + description: The workspace daily quota for ingestion in GB. Defaults + to -1 (unlimited) if omitted. + type: number + internetIngestionEnabled: + description: Should the Log Analytics Workspace support ingestion + over the Public Internet? Defaults to true. + type: boolean + internetQueryEnabled: + description: Should the Log Analytics Workspace support querying + over the Public Internet? Defaults to true. + type: boolean + localAuthenticationDisabled: + description: Specifies if the log Analytics workspace should enforce + authentication using Azure AD. Defaults to false. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + reservationCapacityInGbPerDay: + description: The capacity reservation level in GB for this workspace. + Must be in increments of 100 between 100 and 5000. + type: number + retentionInDays: + description: The workspace data retention in days. Possible values + are either 7 (Free Tier only) or range between 30 and 730. + type: number + sku: + description: Specifies the SKU of the Log Analytics Workspace. + Possible values are Free, PerNode, Premium, Standard, Standalone, + Unlimited, CapacityReservation, and PerGB2018 (new SKU as of + 2018-04-03). Defaults to PerGB2018. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -384,7 +455,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: WorkspaceStatus defines the observed state of Workspace. properties: diff --git a/package/crds/operationsmanagement.azure.upbound.io_loganalyticssolutions.yaml b/package/crds/operationsmanagement.azure.upbound.io_loganalyticssolutions.yaml index 4631a57bf..5564fa54d 100644 --- a/package/crds/operationsmanagement.azure.upbound.io_loganalyticssolutions.yaml +++ b/package/crds/operationsmanagement.azure.upbound.io_loganalyticssolutions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: loganalyticssolutions.operationsmanagement.azure.upbound.io spec: group: operationsmanagement.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -89,9 +88,6 @@ spec: description: The publisher of the solution. For example Microsoft. Changing this forces a new resource to be created. type: string - required: - - product - - publisher type: object type: array resourceGroupName: @@ -346,21 +342,79 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + plan: + description: A plan block as documented below. + items: + properties: + product: + description: The product name of the solution. For example + OMSGallery/Containers. Changing this forces a new resource + to be created. + type: string + promotionCode: + description: A promotion code to be used with the solution. + Changing this forces a new resource to be created. + type: string + publisher: + description: The publisher of the solution. For example + Microsoft. Changing this forces a new resource to be created. + type: string + type: object + type: array + solutionName: + description: Specifies the name of the solution to be deployed. + See here for options.Changing this forces a new resource to + be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -534,11 +588,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: plan is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.plan) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.plan) + || has(self.initProvider.plan)' - message: solutionName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.solutionName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.solutionName) + || has(self.initProvider.solutionName)' status: description: LogAnalyticsSolutionStatus defines the observed state of LogAnalyticsSolution. diff --git a/package/crds/orbital.azure.upbound.io_contactprofiles.yaml b/package/crds/orbital.azure.upbound.io_contactprofiles.yaml index c16fa5c05..f432e3419 100644 --- a/package/crds/orbital.azure.upbound.io_contactprofiles.yaml +++ b/package/crds/orbital.azure.upbound.io_contactprofiles.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: contactprofiles.orbital.azure.upbound.io spec: group: orbital.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -121,10 +120,6 @@ spec: description: Protocol of an end point. Possible values are TCP and UDP. type: string - required: - - endPointName - - port - - protocol type: object type: array modulationConfiguration: @@ -138,11 +133,6 @@ spec: description: The name of the contact profile. Changing this forces a new resource to be created. type: string - required: - - bandwidthMhz - - centerFrequencyMhz - - endPoint - - name type: object type: array direction: @@ -156,11 +146,6 @@ spec: description: Polarization of the link. Possible values are LHCP, RHCP, linearVertical and linearHorizontal. type: string - required: - - channels - - direction - - name - - polarization type: object type: array location: @@ -340,21 +325,145 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoTracking: + description: Auto-tracking configurations for a spacecraft. Possible + values are disabled, xBand and sBand. + type: string + eventHubUri: + description: ARM resource identifier of the Event Hub used for + telemetry. Requires granting Orbital Resource Provider the rights + to send telemetry into the hub. + type: string + links: + description: A list of spacecraft links. A links block as defined + below. Changing this forces a new resource to be created. + items: + properties: + channels: + description: A list of contact profile link channels. A + channels block as defined below. Changing this forces + a new resource to be created. + items: + properties: + bandwidthMhz: + description: Bandwidth in MHz. + type: number + centerFrequencyMhz: + description: Center frequency in MHz. + type: number + demodulationConfiguration: + description: Copy of the modem configuration file + such as Kratos QRadio or Kratos QuantumRx. Only + valid for downlink directions. If provided, the + modem connects to the customer endpoint and sends + demodulated data instead of a VITA.49 stream. + type: string + endPoint: + description: Customer End point to store/retrieve + data during a contact. An end_point block as defined + below. + items: + properties: + endPointName: + description: Name of an end point. + type: string + ipAddress: + description: IP address of an end point. + type: string + port: + description: TCP port to listen on to receive + data. + type: string + protocol: + description: Protocol of an end point. Possible + values are TCP and UDP. + type: string + type: object + type: array + modulationConfiguration: + description: Copy of the modem configuration file + such as Kratos QRadio. Only valid for uplink directions. + If provided, the modem connects to the customer + endpoint and accepts commands from the customer + instead of a VITA.49 stream. + type: string + name: + description: The name of the contact profile. Changing + this forces a new resource to be created. + type: string + type: object + type: array + direction: + description: Direction of the link. Possible values are + Uplink and Downlink. + type: string + name: + description: Name of the link. + type: string + polarization: + description: Polarization of the link. Possible values are + LHCP, RHCP, linearVertical and linearHorizontal. + type: string + type: object + type: array + location: + description: The location where the contact profile exists. Changing + this forces a new resource to be created. + type: string + minimumElevationDegrees: + description: Maximum elevation of the antenna during the contact + in decimal degrees. + type: number + minimumVariableContactDuration: + description: Minimum viable contact duration in ISO 8601 format. + Used for listing the available contacts with a spacecraft at + a given ground station. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -528,13 +637,21 @@ spec: type: object x-kubernetes-validations: - message: autoTracking is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.autoTracking) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.autoTracking) + || has(self.initProvider.autoTracking)' - message: links is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.links) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.links) + || has(self.initProvider.links)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: minimumVariableContactDuration is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.minimumVariableContactDuration) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.minimumVariableContactDuration) + || has(self.initProvider.minimumVariableContactDuration)' status: description: ContactProfileStatus defines the observed state of ContactProfile. properties: diff --git a/package/crds/orbital.azure.upbound.io_spacecrafts.yaml b/package/crds/orbital.azure.upbound.io_spacecrafts.yaml index f1ec437c5..6d3b20a2e 100644 --- a/package/crds/orbital.azure.upbound.io_spacecrafts.yaml +++ b/package/crds/orbital.azure.upbound.io_spacecrafts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: spacecrafts.orbital.azure.upbound.io spec: group: orbital.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -90,12 +89,6 @@ spec: description: Polarization. Possible values are RHCP, LHCP, linearVertical and linearHorizontal. type: string - required: - - bandwidthMhz - - centerFrequencyMhz - - direction - - name - - polarization type: object type: array location: @@ -201,21 +194,93 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + links: + description: A links block as defined below. Changing this forces + a new resource to be created. + items: + properties: + bandwidthMhz: + description: Bandwidth in Mhz. + type: number + centerFrequencyMhz: + description: Center frequency in Mhz. + type: number + direction: + description: Direction if the communication. Possible values + are Uplink and Downlink. + type: string + name: + description: Name of the link. + type: string + polarization: + description: Polarization. Possible values are RHCP, LHCP, + linearVertical and linearHorizontal. + type: string + type: object + type: array + location: + description: The location where the Spacecraft exists. Changing + this forces a new resource to be created. + type: string + noradId: + description: NORAD ID of the Spacecraft. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + titleLine: + description: Title of the two line elements (TLE). + type: string + twoLineElements: + description: A list of the two line elements (TLE), the first + string being the first of the TLE, the second string being the + second line of the TLE. Changing this forces a new resource + to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -389,15 +454,25 @@ spec: type: object x-kubernetes-validations: - message: links is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.links) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.links) + || has(self.initProvider.links)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: noradId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.noradId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.noradId) + || has(self.initProvider.noradId)' - message: titleLine is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.titleLine) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.titleLine) + || has(self.initProvider.titleLine)' - message: twoLineElements is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.twoLineElements) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.twoLineElements) + || has(self.initProvider.twoLineElements)' status: description: SpacecraftStatus defines the observed state of Spacecraft. properties: diff --git a/package/crds/policyinsights.azure.upbound.io_resourcepolicyremediations.yaml b/package/crds/policyinsights.azure.upbound.io_resourcepolicyremediations.yaml index eb82703de..7f71e1077 100644 --- a/package/crds/policyinsights.azure.upbound.io_resourcepolicyremediations.yaml +++ b/package/crds/policyinsights.azure.upbound.io_resourcepolicyremediations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: resourcepolicyremediations.policyinsights.azure.upbound.io spec: group: policyinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -270,21 +269,89 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + failurePercentage: + description: A number between 0.0 to 1.0 representing the percentage + failure threshold. The remediation will fail if the percentage + of failed remediation operations (i.e. failed deployments) exceeds + this threshold. + type: number + locationFilters: + description: A list of the resource locations that will be remediated. + items: + type: string + type: array + name: + description: The name of the Policy Remediation. Changing this + forces a new resource to be created. + type: string + parallelDeployments: + description: Determines how many resources to remediate at any + given time. Can be used to increase or reduce the pace of the + remediation. If not provided, the default parallel deployments + value is used. + type: number + policyDefinitionId: + description: The unique ID for the policy definition within the + policy set definition that should be remediated. Required when + the policy assignment being remediated assigns a policy set + definition. + type: string + policyDefinitionReferenceId: + description: The unique ID for the policy definition reference + within the policy set definition that should be remediated. + Required when the policy assignment being remediated assigns + a policy set definition. + type: string + resourceCount: + description: Determines the max number of resources that can be + remediated by the remediation job. If not provided, the default + resource count is used. + type: number + resourceDiscoveryMode: + description: The way that resources to remediate are discovered. + Possible values are ExistingNonCompliant, ReEvaluateCompliance. + Defaults to ExistingNonCompliant. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -458,7 +525,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ResourcePolicyRemediationStatus defines the observed state of ResourcePolicyRemediation. diff --git a/package/crds/policyinsights.azure.upbound.io_subscriptionpolicyremediations.yaml b/package/crds/policyinsights.azure.upbound.io_subscriptionpolicyremediations.yaml index 35a7b6f22..e1e207111 100644 --- a/package/crds/policyinsights.azure.upbound.io_subscriptionpolicyremediations.yaml +++ b/package/crds/policyinsights.azure.upbound.io_subscriptionpolicyremediations.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subscriptionpolicyremediations.policyinsights.azure.upbound.io spec: group: policyinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -192,21 +191,90 @@ spec: created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + failurePercentage: + description: A number between 0.0 to 1.0 representing the percentage + failure threshold. The remediation will fail if the percentage + of failed remediation operations (i.e. failed deployments) exceeds + this threshold. + type: number + locationFilters: + description: A list of the resource locations that will be remediated. + items: + type: string + type: array + parallelDeployments: + description: Determines how many resources to remediate at any + given time. Can be used to increase or reduce the pace of the + remediation. If not provided, the default parallel deployments + value is used. + type: number + policyDefinitionId: + description: The unique ID for the policy definition within the + policy set definition that should be remediated. Required when + the policy assignment being remediated assigns a policy set + definition. + type: string + policyDefinitionReferenceId: + description: The unique ID for the policy definition reference + within the policy set definition that should be remediated. + Required when the policy assignment being remediated assigns + a policy set definition. + type: string + resourceCount: + description: Determines the max number of resources that can be + remediated by the remediation job. If not provided, the default + resource count is used. + type: number + resourceDiscoveryMode: + description: The way that resources to remediate are discovered. + Possible values are ExistingNonCompliant, ReEvaluateCompliance. + Defaults to ExistingNonCompliant. + type: string + subscriptionId: + description: The Subscription ID at which the Policy Remediation + should be applied. Changing this forces a new resource to be + created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -380,7 +448,9 @@ spec: type: object x-kubernetes-validations: - message: subscriptionId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subscriptionId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subscriptionId) + || has(self.initProvider.subscriptionId)' status: description: SubscriptionPolicyRemediationStatus defines the observed state of SubscriptionPolicyRemediation. diff --git a/package/crds/portal.azure.upbound.io_dashboards.yaml b/package/crds/portal.azure.upbound.io_dashboards.yaml index feae0b114..cd57ef2ff 100644 --- a/package/crds/portal.azure.upbound.io_dashboards.yaml +++ b/package/crds/portal.azure.upbound.io_dashboards.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: dashboards.portal.azure.upbound.io spec: group: portal.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -165,21 +164,63 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dashboardProperties: + description: JSON data representing dashboard body. See above + for details on how to obtain this from the Portal. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + name: + description: Specifies the name of the Shared Dashboard. Changing + this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -353,11 +394,17 @@ spec: type: object x-kubernetes-validations: - message: dashboardProperties is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dashboardProperties) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dashboardProperties) + || has(self.initProvider.dashboardProperties)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: DashboardStatus defines the observed state of Dashboard. properties: diff --git a/package/crds/powerbidedicated.azure.upbound.io_powerbiembeddeds.yaml b/package/crds/powerbidedicated.azure.upbound.io_powerbiembeddeds.yaml index a564de8ac..dd52ebfad 100644 --- a/package/crds/powerbidedicated.azure.upbound.io_powerbiembeddeds.yaml +++ b/package/crds/powerbidedicated.azure.upbound.io_powerbiembeddeds.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: powerbiembeddeds.powerbidedicated.azure.upbound.io spec: group: powerbidedicated.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -174,21 +173,71 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + administrators: + description: A set of administrator user identities, which manages + the Power BI Embedded and must be a member user or a service + principal in your AAD tenant. + items: + type: string + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + mode: + description: 'Sets the PowerBI Embedded''s mode. Possible values + include: Gen1, Gen2. Defaults to Gen1. Changing this forces + a new resource to be created.' + type: string + skuName: + description: 'Sets the PowerBI Embedded''s pricing level''s SKU. + Possible values include: A1, A2, A3, A4, A5, A6.' + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -362,11 +411,17 @@ spec: type: object x-kubernetes-validations: - message: administrators is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.administrators) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.administrators) + || has(self.initProvider.administrators)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: PowerBIEmbeddedStatus defines the observed state of PowerBIEmbedded. properties: diff --git a/package/crds/purview.azure.upbound.io_accounts.yaml b/package/crds/purview.azure.upbound.io_accounts.yaml index 122a50a22..97eeb9b23 100644 --- a/package/crds/purview.azure.upbound.io_accounts.yaml +++ b/package/crds/purview.azure.upbound.io_accounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accounts.purview.azure.upbound.io spec: group: purview.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -83,8 +82,6 @@ spec: that should be configured on this Purview Account. Possible values are UserAssigned and SystemAssigned. type: string - required: - - type type: object type: array location: @@ -262,21 +259,77 @@ spec: Purview Account. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Purview Account. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Purview Account. Possible + values are UserAssigned and SystemAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the Purview Account should + exist. Changing this forces a new Purview Account to be created. + type: string + publicNetworkEnabled: + description: Should the Purview Account be visible to the public + network? Defaults to true. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Purview Account. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -450,9 +503,13 @@ spec: type: object x-kubernetes-validations: - message: identity is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.identity) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.identity) + || has(self.initProvider.identity)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: AccountStatus defines the observed state of Account. properties: diff --git a/package/crds/recoveryservices.azure.upbound.io_backupcontainerstorageaccounts.yaml b/package/crds/recoveryservices.azure.upbound.io_backupcontainerstorageaccounts.yaml index 8905dbd9f..b80fbe8eb 100644 --- a/package/crds/recoveryservices.azure.upbound.io_backupcontainerstorageaccounts.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_backupcontainerstorageaccounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backupcontainerstorageaccounts.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -305,21 +304,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/recoveryservices.azure.upbound.io_backuppolicyfileshares.yaml b/package/crds/recoveryservices.azure.upbound.io_backuppolicyfileshares.yaml index c52087153..78e7a2bac 100644 --- a/package/crds/recoveryservices.azure.upbound.io_backuppolicyfileshares.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_backuppolicyfileshares.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backuppolicyfileshares.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,9 +81,6 @@ spec: format. Times must be either on the hour or half hour (e.g. 12:00, 12:30, 13:00, etc.) type: string - required: - - frequency - - time type: object type: array recoveryVaultName: @@ -254,8 +250,6 @@ spec: description: The number of daily backups to keep. Must be between 1 and 200 (inclusive) type: number - required: - - count type: object type: array retentionMonthly: @@ -280,10 +274,6 @@ spec: items: type: string type: array - required: - - count - - weekdays - - weeks type: object type: array retentionWeekly: @@ -302,9 +292,6 @@ spec: items: type: string type: array - required: - - count - - weekdays type: object type: array retentionYearly: @@ -336,11 +323,6 @@ spec: items: type: string type: array - required: - - count - - months - - weekdays - - weeks type: object type: array timezone: @@ -348,21 +330,150 @@ spec: here. Defaults to UTC type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + backup: + description: Configures the Policy backup frequency and times + as documented in the backup block below. + items: + properties: + frequency: + description: Sets the backup frequency. Currently, only + Daily is supported + type: string + time: + description: The time of day to perform the backup in 24-hour + format. Times must be either on the hour or half hour + (e.g. 12:00, 12:30, 13:00, etc.) + type: string + type: object + type: array + retentionDaily: + description: Configures the policy daily retention as documented + in the retention_daily block below. + items: + properties: + count: + description: The number of daily backups to keep. Must be + between 1 and 200 (inclusive) + type: number + type: object + type: array + retentionMonthly: + description: Configures the policy monthly retention as documented + in the retention_monthly block below. + items: + properties: + count: + description: The number of monthly backups to keep. Must + be between 1 and 120 + type: number + weekdays: + description: The weekday backups to retain . Must be one + of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday + or Saturday. + items: + type: string + type: array + weeks: + description: The weeks of the month to retain backups of. + Must be one of First, Second, Third, Fourth, Last. + items: + type: string + type: array + type: object + type: array + retentionWeekly: + description: Configures the policy weekly retention as documented + in the retention_weekly block below. + items: + properties: + count: + description: The number of daily backups to keep. Must be + between 1 and 200 (inclusive) + type: number + weekdays: + description: The weekday backups to retain. Must be one + of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday + or Saturday. + items: + type: string + type: array + type: object + type: array + retentionYearly: + description: Configures the policy yearly retention as documented + in the retention_yearly block below. + items: + properties: + count: + description: The number of yearly backups to keep. Must + be between 1 and 10 + type: number + months: + description: The months of the year to retain backups of. + Must be one of January, February, March, April, May, June, + July, Augest, September, October, November and December. + items: + type: string + type: array + weekdays: + description: The weekday backups to retain . Must be one + of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday + or Saturday. + items: + type: string + type: array + weeks: + description: The weeks of the month to retain backups of. + Must be one of First, Second, Third, Fourth, Last. + items: + type: string + type: array + type: object + type: array + timezone: + description: Specifies the timezone. the possible values are defined + here. Defaults to UTC + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -536,9 +647,13 @@ spec: type: object x-kubernetes-validations: - message: backup is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backup) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backup) + || has(self.initProvider.backup)' - message: retentionDaily is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.retentionDaily) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.retentionDaily) + || has(self.initProvider.retentionDaily)' status: description: BackupPolicyFileShareStatus defines the observed state of BackupPolicyFileShare. diff --git a/package/crds/recoveryservices.azure.upbound.io_backuppolicyvms.yaml b/package/crds/recoveryservices.azure.upbound.io_backuppolicyvms.yaml index 2bcc3dfee..6292b7df1 100644 --- a/package/crds/recoveryservices.azure.upbound.io_backuppolicyvms.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_backuppolicyvms.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backuppolicyvms.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -98,9 +97,6 @@ spec: items: type: string type: array - required: - - frequency - - time type: object type: array instantRestoreResourceGroup: @@ -116,8 +112,6 @@ spec: description: The suffix for the instant_restore_resource_group name. type: string - required: - - prefix type: object type: array instantRestoreRetentionDays: @@ -298,8 +292,6 @@ spec: description: The number of daily backups to keep. Must be between 7 and 9999. type: number - required: - - count type: object type: array retentionMonthly: @@ -324,10 +316,6 @@ spec: items: type: string type: array - required: - - count - - weekdays - - weeks type: object type: array retentionWeekly: @@ -347,9 +335,6 @@ spec: items: type: string type: array - required: - - count - - weekdays type: object type: array retentionYearly: @@ -381,11 +366,6 @@ spec: items: type: string type: array - required: - - count - - months - - weekdays - - weeks type: object type: array timezone: @@ -393,21 +373,193 @@ spec: here. Defaults to UTC type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + backup: + description: Configures the Policy backup frequency, times & days + as documented in the backup block below. + items: + properties: + frequency: + description: Sets the backup frequency. Possible values + are Hourly, Daily and Weekly. + type: string + hourDuration: + description: Duration of the backup window in hours. Possible + values are between 4 and 24 This is used when frequency + is Hourly. + type: number + hourInterval: + description: Interval in hour at which backup is triggered. + Possible values are 4, 6, 8 and 12. This is used when + frequency is Hourly. + type: number + time: + description: The time of day to perform the backup in 24hour + format. + type: string + weekdays: + description: The days of the week to perform backups on. + Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, + Friday or Saturday. This is used when frequency is Weekly. + items: + type: string + type: array + type: object + type: array + instantRestoreResourceGroup: + description: Specifies the instant restore resource group name + as documented in the instant_restore_resource_group block below. + items: + properties: + prefix: + description: The prefix for the instant_restore_resource_group + name. + type: string + suffix: + description: The suffix for the instant_restore_resource_group + name. + type: string + type: object + type: array + instantRestoreRetentionDays: + description: Specifies the instant restore retention range in + days. Possible values are between 1 and 5 when policy_type is + V1, and 1 to 30 when policy_type is V2. + type: number + policyType: + description: Type of the Backup Policy. Possible values are V1 + and V2 where V2 stands for the Enhanced Policy. Defaults to + V1. Changing this forces a new resource to be created. + type: string + retentionDaily: + description: Configures the policy daily retention as documented + in the retention_daily block below. Required when backup frequency + is Daily. + items: + properties: + count: + description: The number of daily backups to keep. Must be + between 7 and 9999. + type: number + type: object + type: array + retentionMonthly: + description: Configures the policy monthly retention as documented + in the retention_monthly block below. + items: + properties: + count: + description: The number of monthly backups to keep. Must + be between 1 and 9999 + type: number + weekdays: + description: The weekday backups to retain . Must be one + of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday + or Saturday. + items: + type: string + type: array + weeks: + description: The weeks of the month to retain backups of. + Must be one of First, Second, Third, Fourth, Last. + items: + type: string + type: array + type: object + type: array + retentionWeekly: + description: Configures the policy weekly retention as documented + in the retention_weekly block below. Required when backup frequency + is Weekly. + items: + properties: + count: + description: The number of weekly backups to keep. Must + be between 1 and 9999 + type: number + weekdays: + description: The weekday backups to retain. Must be one + of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday + or Saturday. + items: + type: string + type: array + type: object + type: array + retentionYearly: + description: Configures the policy yearly retention as documented + in the retention_yearly block below. + items: + properties: + count: + description: The number of yearly backups to keep. Must + be between 1 and 9999 + type: number + months: + description: The months of the year to retain backups of. + Must be one of January, February, March, April, May, June, + July, August, September, October, November and December. + items: + type: string + type: array + weekdays: + description: The weekday backups to retain . Must be one + of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday + or Saturday. + items: + type: string + type: array + weeks: + description: The weeks of the month to retain backups of. + Must be one of First, Second, Third, Fourth, Last. + items: + type: string + type: array + type: object + type: array + timezone: + description: Specifies the timezone. the possible values are defined + here. Defaults to UTC + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -581,7 +733,9 @@ spec: type: object x-kubernetes-validations: - message: backup is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.backup) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.backup) + || has(self.initProvider.backup)' status: description: BackupPolicyVMStatus defines the observed state of BackupPolicyVM. properties: diff --git a/package/crds/recoveryservices.azure.upbound.io_backuppolicyvmworkloads.yaml b/package/crds/recoveryservices.azure.upbound.io_backuppolicyvmworkloads.yaml index 16837cdb1..65339daf5 100644 --- a/package/crds/recoveryservices.azure.upbound.io_backuppolicyvmworkloads.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_backuppolicyvmworkloads.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backuppolicyvmworkloads.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -112,8 +111,6 @@ spec: duration with duration type Days. Possible values are between 7 and 35. type: number - required: - - count type: object type: array retentionMonthly: @@ -150,9 +147,6 @@ spec: items: type: string type: array - required: - - count - - formatType type: object type: array retentionWeekly: @@ -171,9 +165,6 @@ spec: items: type: string type: array - required: - - count - - weekdays type: object type: array retentionYearly: @@ -218,10 +209,6 @@ spec: items: type: string type: array - required: - - count - - formatType - - months type: object type: array simpleRetention: @@ -233,13 +220,8 @@ spec: duration with duration type Days. Possible values are between 7 and 35. type: number - required: - - count type: object type: array - required: - - backup - - policyType type: object type: array recoveryVaultName: @@ -413,8 +395,6 @@ spec: description: The timezone for the VM Workload Backup Policy. The possible values are defined here. type: string - required: - - timeZone type: object type: array workloadType: @@ -423,21 +403,222 @@ spec: a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + protectionPolicy: + description: One or more protection_policy blocks as defined below. + items: + properties: + backup: + description: A backup block as defined below. + items: + properties: + frequency: + description: The backup frequency for the VM Workload + Backup Policy. Possible values are Daily and Weekly. + type: string + frequencyInMinutes: + description: The backup frequency in minutes for the + VM Workload Backup Policy. Possible values are 15, + 30, 60, 120, 240, 480, 720 and 1440. + type: number + time: + description: The time of day to perform the backup + in 24hour format. + type: string + weekdays: + description: The weekday backups to retain. Possible + values are Sunday, Monday, Tuesday, Wednesday, Thursday, + Friday or Saturday. + items: + type: string + type: array + type: object + type: array + policyType: + description: The type of the VM Workload Backup Policy. + Possible values are Differential, Full, Incremental and + Log. + type: string + retentionDaily: + description: A retention_daily block as defined below. + items: + properties: + count: + description: The count that is used to count retention + duration with duration type Days. Possible values + are between 7 and 35. + type: number + type: object + type: array + retentionMonthly: + description: A retention_monthly block as defined below. + items: + properties: + count: + description: The count that is used to count retention + duration with duration type Days. Possible values + are between 7 and 35. + type: number + formatType: + description: The retention schedule format type for + yearly retention policy. Possible values are Daily + and Weekly. + type: string + monthdays: + description: The monthday backups to retain. Possible + values are between 0 and 28. + items: + type: number + type: array + weekdays: + description: The weekday backups to retain. Possible + values are Sunday, Monday, Tuesday, Wednesday, Thursday, + Friday or Saturday. + items: + type: string + type: array + weeks: + description: The weeks of the month to retain backups + of. Possible values are First, Second, Third, Fourth, + Last. + items: + type: string + type: array + type: object + type: array + retentionWeekly: + description: A retention_weekly block as defined below. + items: + properties: + count: + description: The count that is used to count retention + duration with duration type Days. Possible values + are between 7 and 35. + type: number + weekdays: + description: The weekday backups to retain. Possible + values are Sunday, Monday, Tuesday, Wednesday, Thursday, + Friday or Saturday. + items: + type: string + type: array + type: object + type: array + retentionYearly: + description: A retention_yearly block as defined below. + items: + properties: + count: + description: The count that is used to count retention + duration with duration type Days. Possible values + are between 7 and 35. + type: number + formatType: + description: The retention schedule format type for + yearly retention policy. Possible values are Daily + and Weekly. + type: string + monthdays: + description: The monthday backups to retain. Possible + values are between 0 and 28. + items: + type: number + type: array + months: + description: The months of the year to retain backups + of. Possible values are January, February, March, + April, May, June, July, August, September, October, + November and December. + items: + type: string + type: array + weekdays: + description: The weekday backups to retain. Possible + values are Sunday, Monday, Tuesday, Wednesday, Thursday, + Friday or Saturday. + items: + type: string + type: array + weeks: + description: The weeks of the month to retain backups + of. Possible values are First, Second, Third, Fourth, + Last. + items: + type: string + type: array + type: object + type: array + simpleRetention: + description: A simple_retention block as defined below. + items: + properties: + count: + description: The count that is used to count retention + duration with duration type Days. Possible values + are between 7 and 35. + type: number + type: object + type: array + type: object + type: array + settings: + description: A settings block as defined below. + items: + properties: + compressionEnabled: + description: The compression setting for the VM Workload + Backup Policy. Defaults to false. + type: boolean + timeZone: + description: The timezone for the VM Workload Backup Policy. + The possible values are defined here. + type: string + type: object + type: array + workloadType: + description: The VM Workload type for the Backup Policy. Possible + values are SQLDataBase and SAPHanaDatabase. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -611,11 +792,17 @@ spec: type: object x-kubernetes-validations: - message: protectionPolicy is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.protectionPolicy) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.protectionPolicy) + || has(self.initProvider.protectionPolicy)' - message: settings is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.settings) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.settings) + || has(self.initProvider.settings)' - message: workloadType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.workloadType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.workloadType) + || has(self.initProvider.workloadType)' status: description: BackupPolicyVMWorkloadStatus defines the observed state of BackupPolicyVMWorkload. diff --git a/package/crds/recoveryservices.azure.upbound.io_backupprotectedfileshares.yaml b/package/crds/recoveryservices.azure.upbound.io_backupprotectedfileshares.yaml index e423b5864..445ce263a 100644 --- a/package/crds/recoveryservices.azure.upbound.io_backupprotectedfileshares.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_backupprotectedfileshares.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backupprotectedfileshares.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -465,21 +464,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/recoveryservices.azure.upbound.io_backupprotectedvms.yaml b/package/crds/recoveryservices.azure.upbound.io_backupprotectedvms.yaml index 44825aad3..f72378ce7 100644 --- a/package/crds/recoveryservices.azure.upbound.io_backupprotectedvms.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_backupprotectedvms.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: backupprotectedvms.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -322,21 +321,62 @@ spec: forces a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + excludeDiskLuns: + description: A list of Disks' Logical Unit Numbers(LUN) to be + excluded for VM Protection. + items: + type: number + type: array + includeDiskLuns: + description: A list of Disks' Logical Unit Numbers(LUN) to be + included for VM Protection. + items: + type: number + type: array + sourceVmId: + description: Specifies the ID of the VM to backup. Changing this + forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/recoveryservices.azure.upbound.io_siterecoveryfabrics.yaml b/package/crds/recoveryservices.azure.upbound.io_siterecoveryfabrics.yaml index f866ca975..e89f4d685 100644 --- a/package/crds/recoveryservices.azure.upbound.io_siterecoveryfabrics.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_siterecoveryfabrics.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: siterecoveryfabrics.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -232,21 +231,50 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: In what region should the fabric be located. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -420,7 +448,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SiteRecoveryFabricStatus defines the observed state of SiteRecoveryFabric. properties: diff --git a/package/crds/recoveryservices.azure.upbound.io_siterecoverynetworkmappings.yaml b/package/crds/recoveryservices.azure.upbound.io_siterecoverynetworkmappings.yaml index 88a2b6fb6..c6f6c995a 100644 --- a/package/crds/recoveryservices.azure.upbound.io_siterecoverynetworkmappings.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_siterecoverynetworkmappings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: siterecoverynetworkmappings.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -400,21 +399,59 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: The name of the network mapping. Changing this forces + a new resource to be created. + type: string + sourceRecoveryFabricName: + description: Specifies the ASR fabric where mapping should be + created. Changing this forces a new resource to be created. + type: string + targetRecoveryFabricName: + description: The Azure Site Recovery fabric object corresponding + to the recovery Azure region. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -588,11 +625,17 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: sourceRecoveryFabricName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sourceRecoveryFabricName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sourceRecoveryFabricName) + || has(self.initProvider.sourceRecoveryFabricName)' - message: targetRecoveryFabricName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetRecoveryFabricName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.targetRecoveryFabricName) + || has(self.initProvider.targetRecoveryFabricName)' status: description: SiteRecoveryNetworkMappingStatus defines the observed state of SiteRecoveryNetworkMapping. diff --git a/package/crds/recoveryservices.azure.upbound.io_siterecoveryprotectioncontainermappings.yaml b/package/crds/recoveryservices.azure.upbound.io_siterecoveryprotectioncontainermappings.yaml index 81ceb1b0d..15e191c32 100644 --- a/package/crds/recoveryservices.azure.upbound.io_siterecoveryprotectioncontainermappings.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_siterecoveryprotectioncontainermappings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: siterecoveryprotectioncontainermappings.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -562,21 +561,61 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + automaticUpdate: + description: a automatic_update block defined as below. + items: + properties: + automationAccountId: + description: The automation account ID which holds the automatic + update runbook and authenticates to Azure resources. + type: string + enabled: + description: Should the Mobility service installed on Azure + virtual machines be automatically updated. Defaults to + false. + type: boolean + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/recoveryservices.azure.upbound.io_siterecoveryprotectioncontainers.yaml b/package/crds/recoveryservices.azure.upbound.io_siterecoveryprotectioncontainers.yaml index 26c17436e..260360baf 100644 --- a/package/crds/recoveryservices.azure.upbound.io_siterecoveryprotectioncontainers.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_siterecoveryprotectioncontainers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: siterecoveryprotectioncontainers.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -308,21 +307,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/recoveryservices.azure.upbound.io_siterecoveryreplicationpolicies.yaml b/package/crds/recoveryservices.azure.upbound.io_siterecoveryreplicationpolicies.yaml index f69202dd2..559b15222 100644 --- a/package/crds/recoveryservices.azure.upbound.io_siterecoveryreplicationpolicies.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_siterecoveryreplicationpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: siterecoveryreplicationpolicies.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -237,21 +236,54 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + applicationConsistentSnapshotFrequencyInMinutes: + description: Specifies the frequency(in minutes) at which to create + application consistent recovery points. + type: number + recoveryPointRetentionInMinutes: + description: The duration in minutes for which the recovery points + need to be stored. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -426,9 +458,13 @@ spec: x-kubernetes-validations: - message: applicationConsistentSnapshotFrequencyInMinutes is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.applicationConsistentSnapshotFrequencyInMinutes) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.applicationConsistentSnapshotFrequencyInMinutes) + || has(self.initProvider.applicationConsistentSnapshotFrequencyInMinutes)' - message: recoveryPointRetentionInMinutes is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.recoveryPointRetentionInMinutes) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.recoveryPointRetentionInMinutes) + || has(self.initProvider.recoveryPointRetentionInMinutes)' status: description: SiteRecoveryReplicationPolicyStatus defines the observed state of SiteRecoveryReplicationPolicy. diff --git a/package/crds/recoveryservices.azure.upbound.io_vaults.yaml b/package/crds/recoveryservices.azure.upbound.io_vaults.yaml index 748889e1c..4b65cb216 100644 --- a/package/crds/recoveryservices.azure.upbound.io_vaults.yaml +++ b/package/crds/recoveryservices.azure.upbound.io_vaults.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: vaults.recoveryservices.azure.upbound.io spec: group: recoveryservices.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -100,9 +99,6 @@ spec: description: Specifies the user assigned identity ID to be used. type: string - required: - - infrastructureEncryptionEnabled - - keyId type: object type: array identity: @@ -121,8 +117,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array immutability: @@ -252,21 +246,144 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + classicVmwareReplicationEnabled: + description: Whether to enable the Classic experience for VMware + replication. If set to false VMware machines will be protected + using the new stateless ASR replication appliance. Changing + this forces a new resource to be created. + type: boolean + crossRegionRestoreEnabled: + description: Is cross region restore enabled for this Vault? Only + can be true, when storage_mode_type is GeoRedundant. Defaults + to false. + type: boolean + encryption: + description: An encryption block as defined below. Required with + identity. + items: + properties: + infrastructureEncryptionEnabled: + description: Enabling/Disabling the Double Encryption state. + type: boolean + keyId: + description: The Key Vault key id used to encrypt this vault. + Key managed by Vault Managed Hardware Security Module + is also supported. + type: string + useSystemAssignedIdentity: + description: Indicate that system assigned identity should + be used or not. Defaults to true. + type: boolean + userAssignedIdentityId: + description: Specifies the user assigned identity ID to + be used. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this App Configuration. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Recovery Services Vault. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + immutability: + description: 'Immutability Settings of vault, possible values + include: Locked, Unlocked and Disabled.' + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + monitoring: + description: A monitoring block as defined below. + items: + properties: + alertsForAllJobFailuresEnabled: + description: Enabling/Disabling built-in Azure Monitor alerts + for security scenarios and job failure scenarios. Defaults + to true. + type: boolean + alertsForCriticalOperationFailuresEnabled: + description: Enabling/Disabling alerts from the older (classic + alerts) solution. Defaults to true. More details could + be found here. + type: boolean + type: object + type: array + publicNetworkAccessEnabled: + description: Is it enabled to access the vault from public networks. + Defaults to true. + type: boolean + sku: + description: 'Sets the vault''s SKU. Possible values include: + Standard, RS0.' + type: string + softDeleteEnabled: + description: Is soft delete enable for this Vault? Defaults to + true. + type: boolean + storageModeType: + description: The storage type of the Recovery Services Vault. + Possible values are GeoRedundant, LocallyRedundant and ZoneRedundant. + Defaults to GeoRedundant. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -440,9 +557,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: VaultStatus defines the observed state of Vault. properties: diff --git a/package/crds/relay.azure.upbound.io_eventrelaynamespaces.yaml b/package/crds/relay.azure.upbound.io_eventrelaynamespaces.yaml index d8b3f14de..bf7ab97d6 100644 --- a/package/crds/relay.azure.upbound.io_eventrelaynamespaces.yaml +++ b/package/crds/relay.azure.upbound.io_eventrelaynamespaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: eventrelaynamespaces.relay.azure.upbound.io spec: group: relay.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -163,21 +162,60 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + Azure Relay Namespace exists. Changing this forces a new resource + to be created. + type: string + skuName: + description: The name of the SKU to use. At this time the only + supported value is Standard. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -351,9 +389,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: EventRelayNamespaceStatus defines the observed state of EventRelayNamespace. properties: diff --git a/package/crds/relay.azure.upbound.io_hybridconnectionauthorizationrules.yaml b/package/crds/relay.azure.upbound.io_hybridconnectionauthorizationrules.yaml index 51a36f6cf..6878cbb59 100644 --- a/package/crds/relay.azure.upbound.io_hybridconnectionauthorizationrules.yaml +++ b/package/crds/relay.azure.upbound.io_hybridconnectionauthorizationrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: hybridconnectionauthorizationrules.relay.azure.upbound.io spec: group: relay.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -326,21 +325,59 @@ spec: to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + listen: + description: Grants listen access to this Authorization Rule. + Defaults to false. + type: boolean + manage: + description: Grants manage access to this Authorization Rule. + When this property is true - both listen and send must be set + to true too. Defaults to false. + type: boolean + send: + description: Grants send access to this Authorization Rule. Defaults + to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/relay.azure.upbound.io_hybridconnections.yaml b/package/crds/relay.azure.upbound.io_hybridconnections.yaml index bb4216466..2cd44524e 100644 --- a/package/crds/relay.azure.upbound.io_hybridconnections.yaml +++ b/package/crds/relay.azure.upbound.io_hybridconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: hybridconnections.relay.azure.upbound.io spec: group: relay.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -245,21 +244,62 @@ spec: settings can be stored. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: Specifies the name of the Azure Relay Hybrid Connection. + Changing this forces a new resource to be created. + type: string + requiresClientAuthorization: + description: Specify if client authorization is needed for this + hybrid connection. True by default. Changing this forces a new + resource to be created. Defaults to true. + type: boolean + userMetadata: + description: The usermetadata is a placeholder to store user-defined + string data for the hybrid connection endpoint. For example, + it can be used to store descriptive data, such as a list of + teams and their contact information. Also, user-defined configuration + settings can be stored. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -433,7 +473,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: HybridConnectionStatus defines the observed state of HybridConnection. properties: diff --git a/package/crds/relay.azure.upbound.io_namespaceauthorizationrules.yaml b/package/crds/relay.azure.upbound.io_namespaceauthorizationrules.yaml index 61d939e9e..655665d5a 100644 --- a/package/crds/relay.azure.upbound.io_namespaceauthorizationrules.yaml +++ b/package/crds/relay.azure.upbound.io_namespaceauthorizationrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: namespaceauthorizationrules.relay.azure.upbound.io spec: group: relay.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -244,21 +243,59 @@ spec: to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + listen: + description: Grants listen access to this Authorization Rule. + Defaults to false. + type: boolean + manage: + description: Grants manage access to this Authorization Rule. + When this property is true - both listen and send must be set + to true too. Defaults to false. + type: boolean + send: + description: Grants send access to this Authorization Rule. Defaults + to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/resources.azure.upbound.io_resourcedeploymentscriptazureclicli.yaml b/package/crds/resources.azure.upbound.io_resourcedeploymentscriptazureclis.yaml similarity index 79% rename from package/crds/resources.azure.upbound.io_resourcedeploymentscriptazureclicli.yaml rename to package/crds/resources.azure.upbound.io_resourcedeploymentscriptazureclis.yaml index 4df7e3dc1..361b9f14c 100644 --- a/package/crds/resources.azure.upbound.io_resourcedeploymentscriptazureclicli.yaml +++ b/package/crds/resources.azure.upbound.io_resourcedeploymentscriptazureclis.yaml @@ -3,9 +3,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null - name: resourcedeploymentscriptazureclicli.resources.azure.upbound.io + controller-gen.kubebuilder.io/version: v0.12.1 + name: resourcedeploymentscriptazureclis.resources.azure.upbound.io spec: group: resources.azure.upbound.io names: @@ -15,7 +14,7 @@ spec: - azure kind: ResourceDeploymentScriptAzureCli listKind: ResourceDeploymentScriptAzureCliList - plural: resourcedeploymentscriptazureclicli + plural: resourcedeploymentscriptazureclis singular: resourcedeploymentscriptazurecli scope: Cluster versions: @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -120,8 +119,6 @@ spec: value: description: Specifies the value of the environment variable. type: string - required: - - name type: object type: array forceUpdateTag: @@ -229,8 +226,6 @@ spec: value is UserAssigned. Changing this forces a new resource to be created. type: string - required: - - type type: object type: array location: @@ -370,7 +365,6 @@ spec: type: string required: - keySecretRef - - name type: object type: array supportingScriptUris: @@ -405,21 +399,170 @@ spec: Resource Deployment Script to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + cleanupPreference: + description: Specifies the cleanup preference when the script + execution gets in a terminal state. Possible values are Always, + OnExpiration, OnSuccess. Defaults to Always. Changing this forces + a new Resource Deployment Script to be created. + type: string + commandLine: + description: Command line arguments to pass to the script. Changing + this forces a new Resource Deployment Script to be created. + type: string + container: + description: A container block as defined below. Changing this + forces a new Resource Deployment Script to be created. + items: + properties: + containerGroupName: + description: Container group name, if not specified then + the name will get auto-generated. For more information, + please refer to the Container Configuration documentation. + type: string + type: object + type: array + environmentVariable: + description: An environment_variable block as defined below. Changing + this forces a new Resource Deployment Script to be created. + items: + properties: + name: + description: Specifies the name of the environment variable. + type: string + value: + description: Specifies the value of the environment variable. + type: string + type: object + type: array + forceUpdateTag: + description: Gets or sets how the deployment script should be + forced to execute even if the script resource has not changed. + Can be current time stamp or a GUID. Changing this forces a + new Resource Deployment Script to be created. + type: string + identity: + description: An identity block as defined below. Changing this + forces a new Resource Deployment Script to be created. + items: + properties: + type: + description: Type of the managed identity. The only possible + value is UserAssigned. Changing this forces a new resource + to be created. + type: string + type: object + type: array + location: + description: Specifies the Azure Region where the Resource Deployment + Script should exist. Changing this forces a new Resource Deployment + Script to be created. + type: string + name: + description: Specifies the name which should be used for this + Resource Deployment Script. The name length must be from 1 to + 260 characters. The name can only contain alphanumeric, underscore, + parentheses, hyphen and period, and it cannot end with a period. + Changing this forces a new Resource Deployment Script to be + created. + type: string + primaryScriptUri: + description: Uri for the script. This is the entry point for the + external script. Changing this forces a new Resource Deployment + Script to be created. + type: string + retentionInterval: + description: Interval for which the service retains the script + resource after it reaches a terminal state. Resource will be + deleted when this duration expires. The time duration should + be between 1 hour and 26 hours (inclusive) and should be specified + in ISO 8601 format. Changing this forces a new Resource Deployment + Script to be created. + type: string + scriptContent: + description: Script body. Changing this forces a new Resource + Deployment Script to be created. + type: string + storageAccount: + description: A storage_account block as defined below. Changing + this forces a new Resource Deployment Script to be created. + items: + properties: + name: + description: Specifies the storage account name. + type: string + type: object + type: array + supportingScriptUris: + description: Supporting files for the external script. Changing + this forces a new Resource Deployment Script to be created. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Resource Deployment Script. + type: object + timeout: + description: Maximum allowed script execution time specified in + ISO 8601 format. Needs to be greater than 0 and smaller than + 1 day. Defaults to P1D. Changing this forces a new Resource + Deployment Script to be created. + type: string + version: + description: Azure CLI module version to be used. The supported + versions are 2.0.77, 2.0.78, 2.0.79, 2.0.80, 2.0.81, 2.1.0, + 2.10.0, 2.10.1, 2.11.0, 2.11.1, 2.12.0, 2.12.1, 2.13.0, 2.14.0, + 2.14.1, 2.14.2, 2.15.0, 2.15.1, 2.16.0, 2.17.0, 2.17.1, 2.18.0, + 2.19.0, 2.19.1, 2.2.0, 2.20.0, 2.21.0, 2.22.0, 2.22.1, 2.23.0, + 2.24.0, 2.24.1, 2.24.2, 2.25.0, 2.26.0, 2.26.1, 2.27.0, 2.27.1, + 2.27.2, 2.28.0, 2.29.0, 2.29.1, 2.29.2, 2.3.0, 2.3.1, 2.30.0, + 2.31.0, 2.32.0, 2.33.0, 2.33.1, 2.34.0, 2.34.1, 2.35.0, 2.36.0, + 2.37.0, 2.38.0, 2.39.0, 2.4.0, 2.40.0, 2.41.0, 2.5.0, 2.5.1, + 2.6.0, 2.7.0, 2.8.0, 2.9.0, 2.9.1. Changing this forces a new + Resource Deployment Script to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -593,13 +736,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: retentionInterval is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.retentionInterval) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.retentionInterval) + || has(self.initProvider.retentionInterval)' - message: version is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.version) + || has(self.initProvider.version)' status: description: ResourceDeploymentScriptAzureCliStatus defines the observed state of ResourceDeploymentScriptAzureCli. diff --git a/package/crds/resources.azure.upbound.io_resourcedeploymentscriptazurepowershells.yaml b/package/crds/resources.azure.upbound.io_resourcedeploymentscriptazurepowershells.yaml index 28bccf5de..d7002f1f2 100644 --- a/package/crds/resources.azure.upbound.io_resourcedeploymentscriptazurepowershells.yaml +++ b/package/crds/resources.azure.upbound.io_resourcedeploymentscriptazurepowershells.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: resourcedeploymentscriptazurepowershells.resources.azure.upbound.io spec: group: resources.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -121,8 +120,6 @@ spec: value: description: Specifies the value of the environment variable. type: string - required: - - name type: object type: array forceUpdateTag: @@ -230,8 +227,6 @@ spec: value is UserAssigned. Changing this forces a new resource to be created. type: string - required: - - type type: object type: array location: @@ -371,7 +366,6 @@ spec: type: string required: - keySecretRef - - name type: object type: array supportingScriptUris: @@ -402,21 +396,166 @@ spec: be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + cleanupPreference: + description: Specifies the cleanup preference when the script + execution gets in a terminal state. Possible values are Always, + OnExpiration, OnSuccess. Defaults to Always. Changing this forces + a new Resource Deployment Script to be created. + type: string + commandLine: + description: Command line arguments to pass to the script. Changing + this forces a new Resource Deployment Script to be created. + type: string + container: + description: A container block as defined below. Changing this + forces a new Resource Deployment Script to be created. + items: + properties: + containerGroupName: + description: Container group name, if not specified then + the name will get auto-generated. For more information, + please refer to the Container Configuration documentation. + type: string + type: object + type: array + environmentVariable: + description: An environment_variable block as defined below. Changing + this forces a new Resource Deployment Script to be created. + items: + properties: + name: + description: Specifies the name of the environment variable. + type: string + value: + description: Specifies the value of the environment variable. + type: string + type: object + type: array + forceUpdateTag: + description: Gets or sets how the deployment script should be + forced to execute even if the script resource has not changed. + Can be current time stamp or a GUID. Changing this forces a + new Resource Deployment Script to be created. + type: string + identity: + description: An identity block as defined below. Changing this + forces a new Resource Deployment Script to be created. + items: + properties: + type: + description: Type of the managed identity. The only possible + value is UserAssigned. Changing this forces a new resource + to be created. + type: string + type: object + type: array + location: + description: Specifies the Azure Region where the Resource Deployment + Script should exist. Changing this forces a new Resource Deployment + Script to be created. + type: string + name: + description: Specifies the name which should be used for this + Resource Deployment Script. The name length must be from 1 to + 260 characters. The name can only contain alphanumeric, underscore, + parentheses, hyphen and period, and it cannot end with a period. + Changing this forces a new Resource Deployment Script to be + created. + type: string + primaryScriptUri: + description: Uri for the script. This is the entry point for the + external script. Changing this forces a new Resource Deployment + Script to be created. + type: string + retentionInterval: + description: Interval for which the service retains the script + resource after it reaches a terminal state. Resource will be + deleted when this duration expires. The time duration should + be between 1 hour and 26 hours (inclusive) and should be specified + in ISO 8601 format. Changing this forces a new Resource Deployment + Script to be created. + type: string + scriptContent: + description: Script body. Changing this forces a new Resource + Deployment Script to be created. + type: string + storageAccount: + description: A storage_account block as defined below. Changing + this forces a new Resource Deployment Script to be created. + items: + properties: + name: + description: Specifies the storage account name. + type: string + type: object + type: array + supportingScriptUris: + description: Supporting files for the external script. Changing + this forces a new Resource Deployment Script to be created. + items: + type: string + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Resource Deployment Script. + type: object + timeout: + description: Maximum allowed script execution time specified in + ISO 8601 format. Needs to be greater than 0 and smaller than + 1 day. Defaults to P1D. Changing this forces a new Resource + Deployment Script to be created. + type: string + version: + description: Azure PowerShell module version to be used. The supported + versions are 2.7, 2.8, 3.0, 3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.7, + 3.8, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.7, 4.8, 5.0, 5.1, 5.2, + 5.3, 5.4, 5.5, 5.6, 5.7, 5.8, 5.9, 6.0, 6.1, 6.2, 6.3, 6.4, + 6.5, 6.6, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 8.0, 8.1, 8.2, 8.3, + 9.0. Changing this forces a new Resource Deployment Script to + be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -590,13 +729,21 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: retentionInterval is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.retentionInterval) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.retentionInterval) + || has(self.initProvider.retentionInterval)' - message: version is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.version) + || has(self.initProvider.version)' status: description: ResourceDeploymentScriptAzurePowerShellStatus defines the observed state of ResourceDeploymentScriptAzurePowerShell. diff --git a/package/crds/resources.azure.upbound.io_resourcegrouptemplatedeployments.yaml b/package/crds/resources.azure.upbound.io_resourcegrouptemplatedeployments.yaml index 9f4fadda1..a02353080 100644 --- a/package/crds/resources.azure.upbound.io_resourcegrouptemplatedeployments.yaml +++ b/package/crds/resources.azure.upbound.io_resourcegrouptemplatedeployments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: resourcegrouptemplatedeployments.resources.azure.upbound.io spec: group: resources.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -180,21 +179,76 @@ spec: be specified with template_content. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + debugLevel: + description: The Debug Level which should be used for this Resource + Group Template Deployment. Possible values are none, requestContent, + responseContent and requestContent, responseContent. + type: string + deploymentMode: + description: The Deployment Mode for this Resource Group Template + Deployment. Possible values are Complete (where resources in + the Resource Group not specified in the ARM Template will be + destroyed) and Incremental (where resources are additive only). + type: string + parametersContent: + description: The contents of the ARM Template parameters file + - containing a JSON list of parameters. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Resource Group Template Deployment. + type: object + templateContent: + description: The contents of the ARM Template which should be + deployed into this Resource Group. Cannot be specified with + template_spec_version_id. + type: string + templateSpecVersionId: + description: The ID of the Template Spec Version to deploy. Cannot + be specified with template_content. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -368,7 +422,9 @@ spec: type: object x-kubernetes-validations: - message: deploymentMode is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.deploymentMode) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.deploymentMode) + || has(self.initProvider.deploymentMode)' status: description: ResourceGroupTemplateDeploymentStatus defines the observed state of ResourceGroupTemplateDeployment. diff --git a/package/crds/resources.azure.upbound.io_subscriptiontemplatedeployments.yaml b/package/crds/resources.azure.upbound.io_subscriptiontemplatedeployments.yaml index eb8004870..0683337ee 100644 --- a/package/crds/resources.azure.upbound.io_subscriptiontemplatedeployments.yaml +++ b/package/crds/resources.azure.upbound.io_subscriptiontemplatedeployments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subscriptiontemplatedeployments.resources.azure.upbound.io spec: group: resources.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -98,21 +97,74 @@ spec: the Subscription. Cannot be specified with template_content. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + debugLevel: + description: The Debug Level which should be used for this Subscription + Template Deployment. Possible values are none, requestContent, + responseContent and requestContent, responseContent. + type: string + location: + description: The Azure Region where the Subscription Template + Deployment should exist. Changing this forces a new Subscription + Template Deployment to be created. + type: string + parametersContent: + description: The contents of the ARM Template parameters file + - containing a JSON list of parameters. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Subscription Template Deployment. + type: object + templateContent: + description: The contents of the ARM Template which should be + deployed into this Subscription. + type: string + templateSpecVersionId: + description: The ID of the Template Spec Version to deploy into + the Subscription. Cannot be specified with template_content. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -286,7 +338,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: SubscriptionTemplateDeploymentStatus defines the observed state of SubscriptionTemplateDeployment. diff --git a/package/crds/search.azure.upbound.io_services.yaml b/package/crds/search.azure.upbound.io_services.yaml index c81f5610e..e22188e03 100644 --- a/package/crds/search.azure.upbound.io_services.yaml +++ b/package/crds/search.azure.upbound.io_services.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: services.search.azure.upbound.io spec: group: search.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -101,8 +100,6 @@ spec: that should be configured on this Search Service. The only possible value is SystemAssigned. type: string - required: - - type type: object type: array localAuthenticationEnabled: @@ -221,21 +218,116 @@ spec: to this Search Service. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowedIps: + description: Specifies a list of inbound IPv4 or CIDRs that are + allowed to access the Search Service. If the incoming IP request + is from an IP address which is not included in the allowed_ips + it will be blocked by the Search Services firewall. + items: + type: string + type: array + authenticationFailureMode: + description: Specifies the response that the Search Service should + return for requests that fail authentication. Possible values + include http401WithBearerChallenge or http403. + type: string + customerManagedKeyEnforcementEnabled: + description: Specifies whether the Search Service should enforce + that non-customer resources are encrypted. Defaults to false. + type: boolean + hostingMode: + description: Specifies the Hosting Mode, which allows for High + Density partitions (that allow for up to 1000 indexes) should + be supported. Possible values are highDensity or default. Defaults + to default. Changing this forces a new Search Service to be + created. + type: string + identity: + description: An identity block as defined below. + items: + properties: + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Search Service. The + only possible value is SystemAssigned. + type: string + type: object + type: array + localAuthenticationEnabled: + description: Specifies whether the Search Service allows authenticating + using API Keys? Defaults to false. + type: boolean + location: + description: The Azure Region where the Search Service should + exist. Changing this forces a new Search Service to be created. + type: string + partitionCount: + description: Specifies the number of partitions which should be + created. This field cannot be set when using a free or basic + sku (see the Microsoft documentation). Possible values include + 1, 2, 3, 4, 6, or 12. Defaults to 1. + type: number + publicNetworkAccessEnabled: + description: Specifies whether Public Network Access is allowed + for this resource. Defaults to true. + type: boolean + replicaCount: + description: Specifies the number of Replica's which should be + created for this Search Service. This field cannot be set when + using a free sku (see the Microsoft documentation). + type: number + sku: + description: The SKU which should be used for this Search Service. + Possible values include basic, free, standard, standard2, standard3, + storage_optimized_l1 and storage_optimized_l2. Changing this + forces a new Search Service to be created. + type: string + tags: + additionalProperties: + type: string + description: Specifies a mapping of tags which should be assigned + to this Search Service. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -409,9 +501,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: ServiceStatus defines the observed state of Service. properties: diff --git a/package/crds/search.azure.upbound.io_sharedprivatelinkservices.yaml b/package/crds/search.azure.upbound.io_sharedprivatelinkservices.yaml index cb913337d..9ece1060e 100644 --- a/package/crds/search.azure.upbound.io_sharedprivatelinkservices.yaml +++ b/package/crds/search.azure.upbound.io_sharedprivatelinkservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sharedprivatelinkservices.search.azure.upbound.io spec: group: search.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -234,21 +233,55 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + requestMessage: + description: Specify the request message for requesting approval + of the Shared Private Link Enabled Remote Resource. + type: string + subresourceName: + description: Specify the sub resource name which the Azure Search + Private Endpoint is able to connect to. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -422,7 +455,9 @@ spec: type: object x-kubernetes-validations: - message: subresourceName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subresourceName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subresourceName) + || has(self.initProvider.subresourceName)' status: description: SharedPrivateLinkServiceStatus defines the observed state of SharedPrivateLinkService. diff --git a/package/crds/security.azure.upbound.io_advancedthreatprotections.yaml b/package/crds/security.azure.upbound.io_advancedthreatprotections.yaml index 4c79ee2a9..96d5e8887 100644 --- a/package/crds/security.azure.upbound.io_advancedthreatprotections.yaml +++ b/package/crds/security.azure.upbound.io_advancedthreatprotections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: advancedthreatprotections.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -79,21 +78,55 @@ spec: be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Should Advanced Threat Protection be enabled on this + resource? + type: boolean + targetResourceId: + description: The ID of the Azure Resource which to enable Advanced + Threat Protection on. Changing this forces a new resource to + be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -267,9 +300,13 @@ spec: type: object x-kubernetes-validations: - message: enabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.enabled) + || has(self.initProvider.enabled)' - message: targetResourceId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetResourceId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.targetResourceId) + || has(self.initProvider.targetResourceId)' status: description: AdvancedThreatProtectionStatus defines the observed state of AdvancedThreatProtection. diff --git a/package/crds/security.azure.upbound.io_iotsecuritydevicegroups.yaml b/package/crds/security.azure.upbound.io_iotsecuritydevicegroups.yaml index 31cf004bf..a2c2a7dc9 100644 --- a/package/crds/security.azure.upbound.io_iotsecuritydevicegroups.yaml +++ b/package/crds/security.azure.upbound.io_iotsecuritydevicegroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iotsecuritydevicegroups.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -204,29 +203,110 @@ spec: FileUploadsNotInAllowedRange, QueuePurgesNotInAllowedRange, TwinUpdatesNotInAllowedRange and UnauthorizedOperationsNotInAllowedRange. type: string - required: - - duration - - max - - min - - type type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + allowRule: + description: an allow_rule blocks as defined below. + items: + properties: + connectionFromIpsNotAllowed: + description: Specifies which IP is not allowed to be connected + to in current device group for inbound connection. + items: + type: string + type: array + connectionToIpsNotAllowed: + description: Specifies which IP is not allowed to be connected + to in current device group for outbound connection. + items: + type: string + type: array + localUsersNotAllowed: + description: Specifies which local user is not allowed to + login in current device group. + items: + type: string + type: array + processesNotAllowed: + description: Specifies which process is not allowed to be + executed in current device group. + items: + type: string + type: array + type: object + type: array + name: + description: Specifies the name of the Device Security Group. + Changing this forces a new resource to be created. + type: string + rangeRule: + description: One or more range_rule blocks as defined below. + items: + properties: + duration: + description: Specifies the time range. represented in ISO + 8601 duration format. + type: string + max: + description: The maximum threshold in the given time window. + type: number + min: + description: The minimum threshold in the given time window. + type: number + type: + description: The type of supported rule type. Possible Values + are ActiveConnectionsNotInAllowedRange, AmqpC2DMessagesNotInAllowedRange, + MqttC2DMessagesNotInAllowedRange, HttpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, MqttC2DRejectedMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, AmqpD2CMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, HttpD2CMessagesNotInAllowedRange, + DirectMethodInvokesNotInAllowedRange, FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, QueuePurgesNotInAllowedRange, + TwinUpdatesNotInAllowedRange and UnauthorizedOperationsNotInAllowedRange. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -400,7 +480,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: IOTSecurityDeviceGroupStatus defines the observed state of IOTSecurityDeviceGroup. diff --git a/package/crds/security.azure.upbound.io_iotsecuritysolutions.yaml b/package/crds/security.azure.upbound.io_iotsecuritysolutions.yaml index 041689f96..261d6bae5 100644 --- a/package/crds/security.azure.upbound.io_iotsecuritysolutions.yaml +++ b/package/crds/security.azure.upbound.io_iotsecuritysolutions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: iotsecuritysolutions.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -81,9 +80,6 @@ spec: workspaceId: description: The resource ID of the Log Analytics Workspace. type: string - required: - - dataTypes - - workspaceId type: object type: array disabledDataSources: @@ -372,21 +368,183 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalWorkspace: + description: A additional_workspace block as defined below. + items: + properties: + dataTypes: + description: A list of data types which sent to workspace. + Possible values are Alerts and RawEvents. + items: + type: string + type: array + workspaceId: + description: The resource ID of the Log Analytics Workspace. + type: string + type: object + type: array + disabledDataSources: + description: A list of disabled data sources for the Iot Security + Solution. Possible value is TwinData. + items: + type: string + type: array + displayName: + description: Specifies the Display Name for this Iot Security + Solution. + type: string + enabled: + description: Is the Iot Security Solution enabled? Defaults to + true. + type: boolean + eventsToExport: + description: A list of data which is to exported to analytic workspace. + Valid values include RawEvents. + items: + type: string + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + logAnalyticsWorkspaceId: + description: Specifies the Log Analytics Workspace ID to which + the security data will be sent. + type: string + logUnmaskedIpsEnabled: + description: Should IP addressed be unmasked in the log? Defaults + to false. + type: boolean + name: + description: Specifies the name of the Iot Security Solution. + Changing this forces a new resource to be created. + type: string + queryForResources: + description: An Azure Resource Graph query used to set the resources + monitored. + type: string + querySubscriptionIds: + description: A list of subscription Ids on which the user defined + resources query should be executed. + items: + type: string + type: array + recommendationsEnabled: + description: A recommendations_enabled block of options to enable + or disable as defined below. + items: + properties: + acrAuthentication: + description: Is Principal Authentication enabled for the + ACR repository? Defaults to true. + type: boolean + agentSendUnutilizedMsg: + description: Is Agent send underutilized messages enabled? + Defaults to true. + type: boolean + baseline: + description: Is Security related system configuration issues + identified? Defaults to true. + type: boolean + edgeHubMemOptimize: + description: Is IoT Edge Hub memory optimized? Defaults + to true. + type: boolean + edgeLoggingOption: + description: Is logging configured for IoT Edge module? + Defaults to true. + type: boolean + inconsistentModuleSettings: + description: Is inconsistent module settings enabled for + SecurityGroup? Defaults to true. + type: boolean + installAgent: + description: is Azure IoT Security agent installed? Defaults + to true. + type: boolean + ipFilterDenyAll: + description: Is Default IP filter policy denied? Defaults + to true. + type: boolean + ipFilterPermissiveRule: + description: Is IP filter rule source allowable IP range + too large? Defaults to true. + type: boolean + openPorts: + description: Is any ports open on the device? Defaults to + true. + type: boolean + permissiveFirewallPolicy: + description: Does firewall policy exist which allow necessary + communication to/from the device? Defaults to true. + type: boolean + permissiveInputFirewallRules: + description: Is only necessary addresses or ports are permitted + in? Defaults to true. + type: boolean + permissiveOutputFirewallRules: + description: Is only necessary addresses or ports are permitted + out? Defaults to true. + type: boolean + privilegedDockerOptions: + description: Is high level permissions are needed for the + module? Defaults to true. + type: boolean + sharedCredentials: + description: Is any credentials shared among devices? Defaults + to true. + type: boolean + vulnerableTlsCipherSuite: + description: Does TLS cipher suite need to be updated? Defaults + to true. + type: boolean + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -560,11 +718,17 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: IOTSecuritySolutionStatus defines the observed state of IOTSecuritySolution. properties: diff --git a/package/crds/security.azure.upbound.io_securitycenterassessmentpolicies.yaml b/package/crds/security.azure.upbound.io_securitycenterassessmentpolicies.yaml index d41aaad7a..8b5ec01e5 100644 --- a/package/crds/security.azure.upbound.io_securitycenterassessmentpolicies.yaml +++ b/package/crds/security.azure.upbound.io_securitycenterassessmentpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securitycenterassessmentpolicies.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -110,21 +109,85 @@ spec: Possible values are Low, Moderate and High. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + categories: + description: A list of the categories of resource that is at risk + when the Security Center Assessment is unhealthy. Possible values + are Unknown, Compute, Data, IdentityAndAccess, IoT and Networking. + items: + type: string + type: array + description: + description: The description of the Security Center Assessment. + type: string + displayName: + description: The user-friendly display name of the Security Center + Assessment. + type: string + implementationEffort: + description: The implementation effort which is used to remediate + the Security Center Assessment. Possible values are Low, Moderate + and High. + type: string + remediationDescription: + description: The description which is used to mitigate the security + issue. + type: string + severity: + description: The severity level of the Security Center Assessment. + Possible values are Low, Medium and High. Defaults to Medium. + type: string + threats: + description: A list of the threat impacts for the Security Center + Assessment. Possible values are AccountBreach, DataExfiltration, + DataSpillage, DenialOfService, ElevationOfPrivilege, MaliciousInsider, + MissingCoverage and ThreatResistance. + items: + type: string + type: array + userImpact: + description: The user impact of the Security Center Assessment. + Possible values are Low, Moderate and High. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -298,9 +361,13 @@ spec: type: object x-kubernetes-validations: - message: description is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.description) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.description) + || has(self.initProvider.description)' - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' status: description: SecurityCenterAssessmentPolicyStatus defines the observed state of SecurityCenterAssessmentPolicy. diff --git a/package/crds/security.azure.upbound.io_securitycenterassessments.yaml b/package/crds/security.azure.upbound.io_securitycenterassessments.yaml index fb2119210..e43aa416f 100644 --- a/package/crds/security.azure.upbound.io_securitycenterassessments.yaml +++ b/package/crds/security.azure.upbound.io_securitycenterassessments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securitycenterassessments.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -169,8 +168,6 @@ spec: description: Specifies the human readable description of the assessment status. type: string - required: - - code type: object type: array targetResourceId: @@ -253,21 +250,68 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalData: + additionalProperties: + type: string + description: A map of additional data to associate with the assessment. + type: object + status: + description: A status block as defined below. + items: + properties: + cause: + description: Specifies the cause of the assessment status. + type: string + code: + description: Specifies the programmatic code of the assessment + status. Possible values are Healthy, Unhealthy and NotApplicable. + type: string + description: + description: Specifies the human readable description of + the assessment status. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -441,7 +485,9 @@ spec: type: object x-kubernetes-validations: - message: status is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.status) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.status) + || has(self.initProvider.status)' status: description: SecurityCenterAssessmentStatus defines the observed state of SecurityCenterAssessment. diff --git a/package/crds/security.azure.upbound.io_securitycenterautoprovisionings.yaml b/package/crds/security.azure.upbound.io_securitycenterautoprovisionings.yaml index e2b2bb083..54aedd3cc 100644 --- a/package/crds/security.azure.upbound.io_securitycenterautoprovisionings.yaml +++ b/package/crds/security.azure.upbound.io_securitycenterautoprovisionings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securitycenterautoprovisionings.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -76,21 +75,52 @@ spec: or Off (to not install the security agent automatically). type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoProvision: + description: Should the security agent be automatically provisioned + on Virtual Machines in this subscription? Possible values are + On (to install the security agent automatically, if it's missing) + or Off (to not install the security agent automatically). + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -264,7 +294,9 @@ spec: type: object x-kubernetes-validations: - message: autoProvision is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.autoProvision) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.autoProvision) + || has(self.initProvider.autoProvision)' status: description: SecurityCenterAutoProvisioningStatus defines the observed state of SecurityCenterAutoProvisioning. diff --git a/package/crds/security.azure.upbound.io_securitycentercontacts.yaml b/package/crds/security.azure.upbound.io_securitycentercontacts.yaml index 137d9673a..e95a6d9aa 100644 --- a/package/crds/security.azure.upbound.io_securitycentercontacts.yaml +++ b/package/crds/security.azure.upbound.io_securitycentercontacts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securitycentercontacts.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -87,21 +86,64 @@ spec: description: The phone number of the Security Center Contact. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + alertNotifications: + description: Whether to send security alerts notifications to + the security contact. + type: boolean + alertsToAdmins: + description: Whether to send security alerts notifications to + subscription admins. + type: boolean + email: + description: The email of the Security Center Contact. + type: string + name: + description: The name of the Security Center Contact. Defaults + to default1. + type: string + phone: + description: The phone number of the Security Center Contact. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -275,11 +317,17 @@ spec: type: object x-kubernetes-validations: - message: alertNotifications is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.alertNotifications) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.alertNotifications) + || has(self.initProvider.alertNotifications)' - message: alertsToAdmins is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.alertsToAdmins) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.alertsToAdmins) + || has(self.initProvider.alertsToAdmins)' - message: email is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.email) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.email) + || has(self.initProvider.email)' status: description: SecurityCenterContactStatus defines the observed state of SecurityCenterContact. diff --git a/package/crds/security.azure.upbound.io_securitycenterservervulnerabilityassessments.yaml b/package/crds/security.azure.upbound.io_securitycenterservervulnerabilityassessments.yaml index 4f3adf12b..611f8d2bf 100644 --- a/package/crds/security.azure.upbound.io_securitycenterservervulnerabilityassessments.yaml +++ b/package/crds/security.azure.upbound.io_securitycenterservervulnerabilityassessments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securitycenterservervulnerabilityassessments.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -156,21 +155,51 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + hybridMachineId: + description: The ID of the Azure ARC server to be monitored by + vulnerability assessment. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/security.azure.upbound.io_securitycenterservervulnerabilityassessmentvirtualmachines.yaml b/package/crds/security.azure.upbound.io_securitycenterservervulnerabilityassessmentvirtualmachines.yaml index d7277d6de..ab2d607cc 100644 --- a/package/crds/security.azure.upbound.io_securitycenterservervulnerabilityassessmentvirtualmachines.yaml +++ b/package/crds/security.azure.upbound.io_securitycenterservervulnerabilityassessmentvirtualmachines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securitycenterservervulnerabilityassessmentvirtualmachines.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -151,21 +150,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/security.azure.upbound.io_securitycentersettings.yaml b/package/crds/security.azure.upbound.io_securitycentersettings.yaml index 9a08aee25..75b33b693 100644 --- a/package/crds/security.azure.upbound.io_securitycentersettings.yaml +++ b/package/crds/security.azure.upbound.io_securitycentersettings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securitycentersettings.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -77,21 +76,54 @@ spec: created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Boolean flag to enable/disable data access. + type: boolean + settingName: + description: The setting to manage. Possible values are MCAS , + WDATP and SENTINEL. Changing this forces a new resource to be + created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -265,9 +297,13 @@ spec: type: object x-kubernetes-validations: - message: enabled is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.enabled) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.enabled) + || has(self.initProvider.enabled)' - message: settingName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.settingName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.settingName) + || has(self.initProvider.settingName)' status: description: SecurityCenterSettingStatus defines the observed state of SecurityCenterSetting. diff --git a/package/crds/security.azure.upbound.io_securitycentersubscriptionpricings.yaml b/package/crds/security.azure.upbound.io_securitycentersubscriptionpricings.yaml index 1157baffd..2bbf1b72c 100644 --- a/package/crds/security.azure.upbound.io_securitycentersubscriptionpricings.yaml +++ b/package/crds/security.azure.upbound.io_securitycentersubscriptionpricings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securitycentersubscriptionpricings.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -85,21 +84,61 @@ spec: and Standard. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + resourceType: + description: The resource type this setting affects. Possible + values are AppServices, ContainerRegistry, KeyVaults, KubernetesService, + SqlServers, SqlServerVirtualMachines, StorageAccounts, VirtualMachines, + Arm, Dns, OpenSourceRelationalDatabases, Containers, CosmosDbs + and CloudPosture. Defaults to VirtualMachines + type: string + subplan: + description: Resource type pricing subplan. Contact your MSFT + representative for possible values. + type: string + tier: + description: The pricing tier to use. Possible values are Free + and Standard. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -273,7 +312,9 @@ spec: type: object x-kubernetes-validations: - message: tier is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tier) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tier) + || has(self.initProvider.tier)' status: description: SecurityCenterSubscriptionPricingStatus defines the observed state of SecurityCenterSubscriptionPricing. diff --git a/package/crds/security.azure.upbound.io_securitycenterworkspaces.yaml b/package/crds/security.azure.upbound.io_securitycenterworkspaces.yaml index f11e626b6..ae9c035d6 100644 --- a/package/crds/security.azure.upbound.io_securitycenterworkspaces.yaml +++ b/package/crds/security.azure.upbound.io_securitycenterworkspaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: securitycenterworkspaces.security.azure.upbound.io spec: group: security.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -154,21 +153,51 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + scope: + description: The scope of VMs to send their security data to the + desired workspace, unless overridden by a setting with more + specific scope. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -342,7 +371,9 @@ spec: type: object x-kubernetes-validations: - message: scope is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.scope) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.scope) + || has(self.initProvider.scope)' status: description: SecurityCenterWorkspaceStatus defines the observed state of SecurityCenterWorkspace. diff --git a/package/crds/securityinsights.azure.upbound.io_sentinelalertrulefusions.yaml b/package/crds/securityinsights.azure.upbound.io_sentinelalertrulefusions.yaml index 1a3715b3d..149f81aa9 100644 --- a/package/crds/securityinsights.azure.upbound.io_sentinelalertrulefusions.yaml +++ b/package/crds/securityinsights.azure.upbound.io_sentinelalertrulefusions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sentinelalertrulefusions.securityinsights.azure.upbound.io spec: group: securityinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -197,31 +196,103 @@ spec: items: type: string type: array - required: - - name - - severitiesAllowed type: object type: array - required: - - name type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + alertRuleTemplateGuid: + description: The GUID of the alert rule template which is used + for this Sentinel Fusion Alert Rule. Changing this forces a + new Sentinel Fusion Alert Rule to be created. + type: string + enabled: + description: Should this Sentinel Fusion Alert Rule be enabled? + Defaults to true. + type: boolean + name: + description: The name which should be used for this Sentinel Fusion + Alert Rule. Changing this forces a new Sentinel Fusion Alert + Rule to be created. + type: string + source: + description: One or more source blocks as defined below. + items: + properties: + enabled: + description: Whether this source signal is enabled or disabled + in Fusion detection? Defaults to true. + type: boolean + name: + description: The name of the Fusion source signal. Refer + to Fusion alert rule template for supported values. + type: string + subType: + description: One or more sub_type blocks as defined below. + items: + properties: + enabled: + description: Whether this source subtype under source + signal is enabled or disabled in Fusion detection. + Defaults to true. + type: boolean + name: + description: The Name of the source subtype under + a given source signal in Fusion detection. Refer + to Fusion alert rule template for supported values. + type: string + severitiesAllowed: + description: A list of severities that are enabled + for this source subtype consumed in Fusion detection. + Possible values for each element are High, Medium, + Low, Informational. + items: + type: string + type: array + type: object + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -395,9 +466,13 @@ spec: type: object x-kubernetes-validations: - message: alertRuleTemplateGuid is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.alertRuleTemplateGuid) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.alertRuleTemplateGuid) + || has(self.initProvider.alertRuleTemplateGuid)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: SentinelAlertRuleFusionStatus defines the observed state of SentinelAlertRuleFusion. diff --git a/package/crds/securityinsights.azure.upbound.io_sentinelalertrulemachinelearningbehavioranalytics.yaml b/package/crds/securityinsights.azure.upbound.io_sentinelalertrulemachinelearningbehavioranalytics.yaml index cc91ce704..6c0325fab 100644 --- a/package/crds/securityinsights.azure.upbound.io_sentinelalertrulemachinelearningbehavioranalytics.yaml +++ b/package/crds/securityinsights.azure.upbound.io_sentinelalertrulemachinelearningbehavioranalytics.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sentinelalertrulemachinelearningbehavioranalytics.securityinsights.azure.upbound.io spec: group: securityinsights.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -168,21 +167,62 @@ spec: to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + alertRuleTemplateGuid: + description: The GUID of the alert rule template which is used + for this Sentinel Machine Learning Behavior Analytics Alert + Rule. Changing this forces a new Sentinel Machine Learning Behavior + Analytics Alert Rule to be created. + type: string + enabled: + description: Should this Sentinel Machine Learning Behavior Analytics + Alert Rule be enabled? Defaults to true. + type: boolean + name: + description: The name which should be used for this SentinelMachine + Learning Behavior Analytics Alert Rule. Changing this forces + a new Sentinel Machine Learning Behavior Analytics Alert Rule + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -356,9 +396,13 @@ spec: type: object x-kubernetes-validations: - message: alertRuleTemplateGuid is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.alertRuleTemplateGuid) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.alertRuleTemplateGuid) + || has(self.initProvider.alertRuleTemplateGuid)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: SentinelAlertRuleMachineLearningBehaviorAnalyticsStatus defines the observed state of SentinelAlertRuleMachineLearningBehaviorAnalytics. diff --git a/package/crds/securityinsights.azure.upbound.io_sentinelalertrulemssecurityincidents.yaml b/package/crds/securityinsights.azure.upbound.io_sentinelalertrulemssecurityincidents.yaml index c6c5d43fc..dcee86292 100644 --- a/package/crds/securityinsights.azure.upbound.io_sentinelalertrulemssecurityincidents.yaml +++ b/package/crds/securityinsights.azure.upbound.io_sentinelalertrulemssecurityincidents.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sentinelalertrulemssecurityincidents.securityinsights.azure.upbound.io spec: group: securityinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -195,21 +194,91 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + alertRuleTemplateGuid: + description: The GUID of the alert rule template which is used + to create this Sentinel Scheduled Alert Rule. Changing this + forces a new Sentinel MS Security Incident Alert Rule to be + created. + type: string + description: + description: The description of this Sentinel MS Security Incident + Alert Rule. + type: string + displayName: + description: The friendly name of this Sentinel MS Security Incident + Alert Rule. + type: string + displayNameExcludeFilter: + description: Only create incidents when the alert display name + doesn't contain text from this list. + items: + type: string + type: array + displayNameFilter: + description: Only create incidents when the alert display name + contain text from this list, leave empty to apply no filter. + items: + type: string + type: array + enabled: + description: Should this Sentinel MS Security Incident Alert Rule + be enabled? Defaults to true. + type: boolean + productFilter: + description: The Microsoft Security Service from where the alert + will be generated. Possible values are Azure Active Directory + Identity Protection, Azure Advanced Threat Protection, Azure + Security Center, Azure Security Center for IoT, Microsoft Cloud + App Security, Microsoft Defender Advanced Threat Protection + and Office 365 Advanced Threat Protection. + type: string + severityFilter: + description: Only create incidents from alerts when alert severity + level is contained in this list. Possible values are High, Medium, + Low and Informational. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -383,11 +452,17 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: productFilter is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.productFilter) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.productFilter) + || has(self.initProvider.productFilter)' - message: severityFilter is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.severityFilter) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.severityFilter) + || has(self.initProvider.severityFilter)' status: description: SentinelAlertRuleMSSecurityIncidentStatus defines the observed state of SentinelAlertRuleMSSecurityIncident. diff --git a/package/crds/securityinsights.azure.upbound.io_sentinelautomationrules.yaml b/package/crds/securityinsights.azure.upbound.io_sentinelautomationrules.yaml index 304a6abd8..4d9759adf 100644 --- a/package/crds/securityinsights.azure.upbound.io_sentinelautomationrules.yaml +++ b/package/crds/securityinsights.azure.upbound.io_sentinelautomationrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sentinelautomationrules.securityinsights.azure.upbound.io spec: group: securityinsights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -101,8 +100,6 @@ spec: description: 'The status to set to the incident. Possible values are: Active, Closed, New.' type: string - required: - - order type: object type: array actionPlaybook: @@ -119,9 +116,6 @@ spec: tenantId: description: The ID of the Tenant that owns the playbook. type: string - required: - - logicAppId - - order type: object type: array condition: @@ -158,10 +152,6 @@ spec: items: type: string type: array - required: - - operator - - property - - values type: object type: array conditionJson: @@ -278,21 +268,166 @@ spec: Possible values are Created and Updated. Defaults to Created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + actionIncident: + description: One or more action_incident blocks as defined below. + items: + properties: + classification: + description: 'The classification of the incident, when closing + it. Possible values are: BenignPositive_SuspiciousButExpected, + FalsePositive_InaccurateData, FalsePositive_IncorrectAlertLogic, + TruePositive_SuspiciousActivity and Undetermined.' + type: string + classificationComment: + description: The comment why the incident is to be closed. + type: string + labels: + description: Specifies a list of labels to add to the incident. + items: + type: string + type: array + order: + description: The execution order of this action. + type: number + ownerId: + description: The object ID of the entity this incident is + assigned to. + type: string + severity: + description: The severity to add to the incident. Possible + values are High, Informational, Low and Medium. + type: string + status: + description: 'The status to set to the incident. Possible + values are: Active, Closed, New.' + type: string + type: object + type: array + actionPlaybook: + description: One or more action_playbook blocks as defined below. + items: + properties: + logicAppId: + description: The ID of the Logic App that defines the playbook's + logic. + type: string + order: + description: The execution order of this action. + type: number + tenantId: + description: The ID of the Tenant that owns the playbook. + type: string + type: object + type: array + condition: + description: One or more condition blocks as defined below. + items: + properties: + operator: + description: 'The operator to use for evaluate the condition. + Possible values include: Equals, NotEquals, Contains, + NotContains, StartsWith, NotStartsWith, EndsWith, NotEndsWith.' + type: string + property: + description: 'The property to use for evaluate the condition. + Possible values include: AccountAadTenantId, AccountAadUserId, + AccountNTDomain, AccountName, AccountObjectGuid, AccountPUID, + AccountSid, AccountUPNSuffix, AzureResourceResourceId, + AzureResourceSubscriptionId, CloudApplicationAppId, CloudApplicationAppName, + DNSDomainName, FileDirectory, FileHashValue, FileName, + HostAzureID, HostNTDomain, HostName, HostNetBiosName, + HostOSVersion, IPAddress, IncidentDescription, IncidentProviderName, + IncidentRelatedAnalyticRuleIds, IncidentSeverity, IncidentStatus, + IncidentTactics, IncidentTitle, IoTDeviceId, IoTDeviceModel, + IoTDeviceName, IoTDeviceOperatingSystem, IoTDeviceType, + IoTDeviceVendor, MailMessageDeliveryAction, MailMessageDeliveryLocation, + MailMessageP1Sender, MailMessageP2Sender, MailMessageRecipient, + MailMessageSenderIP, MailMessageSubject, MailboxDisplayName, + MailboxPrimaryAddress, MailboxUPN, MalwareCategory, MalwareName, + ProcessCommandLine, ProcessId, RegistryKey, RegistryValueData, + Url.' + type: string + values: + description: Specifies a list of values to use for evaluate + the condition. + items: + type: string + type: array + type: object + type: array + conditionJson: + description: A JSON array of one or more condition JSON objects + as is defined here. + type: string + displayName: + description: The display name which should be used for this Sentinel + Automation Rule. + type: string + enabled: + description: Whether this Sentinel Automation Rule is enabled? + Defaults to true. + type: boolean + expiration: + description: The time in RFC3339 format of kind UTC that determines + when this Automation Rule should expire and be disabled. + type: string + name: + description: The UUID which should be used for this Sentinel Automation + Rule. Changing this forces a new Sentinel Automation Rule to + be created. + type: string + order: + description: The order of this Sentinel Automation Rule. Possible + values varies between 1 and 1000. + type: number + triggersOn: + description: Specifies what triggers this automation rule. Possible + values are Alerts and Incidents. Defaults to Incidents. + type: string + triggersWhen: + description: Specifies when will this automation rule be triggered. + Possible values are Created and Updated. Defaults to Created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -466,11 +601,17 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: order is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.order) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.order) + || has(self.initProvider.order)' status: description: SentinelAutomationRuleStatus defines the observed state of SentinelAutomationRule. diff --git a/package/crds/securityinsights.azure.upbound.io_sentineldataconnectoriots.yaml b/package/crds/securityinsights.azure.upbound.io_sentineldataconnectoriots.yaml index da8ad4858..8069a7f4d 100644 --- a/package/crds/securityinsights.azure.upbound.io_sentineldataconnectoriots.yaml +++ b/package/crds/securityinsights.azure.upbound.io_sentineldataconnectoriots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sentineldataconnectoriots.securityinsights.azure.upbound.io spec: group: securityinsights.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -155,21 +154,51 @@ spec: be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + subscriptionId: + description: The ID of the subscription that this Iot Data Connector + connects to. Changing this forces a new Iot Data Connector to + be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/securityinsights.azure.upbound.io_sentinelloganalyticsworkspaceonboardings.yaml b/package/crds/securityinsights.azure.upbound.io_sentinelloganalyticsworkspaceonboardings.yaml index 16848d9b4..41df264bd 100644 --- a/package/crds/securityinsights.azure.upbound.io_sentinelloganalyticsworkspaceonboardings.yaml +++ b/package/crds/securityinsights.azure.upbound.io_sentinelloganalyticsworkspaceonboardings.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sentinelloganalyticsworkspaceonboardings.securityinsights.azure.upbound.io spec: group: securityinsights.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -241,21 +240,55 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + customerManagedKeyEnabled: + description: Specifies if the Workspace is using Customer managed + key. Defaults to false. Changing this forces a new resource + to be created. + type: boolean + workspaceId: + description: The ID of the Security Insights Sentinel Onboarding + States. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/securityinsights.azure.upbound.io_sentinelwatchlists.yaml b/package/crds/securityinsights.azure.upbound.io_sentinelwatchlists.yaml index b5525661f..e4d997959 100644 --- a/package/crds/securityinsights.azure.upbound.io_sentinelwatchlists.yaml +++ b/package/crds/securityinsights.azure.upbound.io_sentinelwatchlists.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sentinelwatchlists.securityinsights.azure.upbound.io spec: group: securityinsights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -174,21 +173,71 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + defaultDuration: + description: The default duration in ISO8601 duration form of + this Sentinel Watchlist. Changing this forces a new Sentinel + Watchlist to be created. + type: string + description: + description: The description of this Sentinel Watchlist. Changing + this forces a new Sentinel Watchlist to be created. + type: string + displayName: + description: The display name of this Sentinel Watchlist. Changing + this forces a new Sentinel Watchlist to be created. + type: string + itemSearchKey: + description: The key used to optimize query performance when using + Watchlist for joins with other data. Changing this forces a + new Sentinel Watchlist to be created. + type: string + labels: + description: Specifies a list of labels related to this Sentinel + Watchlist. Changing this forces a new Sentinel Watchlist to + be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -362,9 +411,13 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: itemSearchKey is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.itemSearchKey) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.itemSearchKey) + || has(self.initProvider.itemSearchKey)' status: description: SentinelWatchlistStatus defines the observed state of SentinelWatchlist. properties: diff --git a/package/crds/servicebus.azure.upbound.io_namespaceauthorizationrules.yaml b/package/crds/servicebus.azure.upbound.io_namespaceauthorizationrules.yaml index 3c7afa224..8ff56acb1 100644 --- a/package/crds/servicebus.azure.upbound.io_namespaceauthorizationrules.yaml +++ b/package/crds/servicebus.azure.upbound.io_namespaceauthorizationrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: namespaceauthorizationrules.servicebus.azure.upbound.io spec: group: servicebus.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -162,21 +161,59 @@ spec: Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + listen: + description: Grants listen access to this this Authorization Rule. + Defaults to false. + type: boolean + manage: + description: Grants manage access to this this Authorization Rule. + When this property is true - both listen and send must be too. + Defaults to false. + type: boolean + send: + description: Grants send access to this this Authorization Rule. + Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/servicebus.azure.upbound.io_namespacedisasterrecoveryconfigs.yaml b/package/crds/servicebus.azure.upbound.io_namespacedisasterrecoveryconfigs.yaml index 3d2e556d1..ec6bd85e1 100644 --- a/package/crds/servicebus.azure.upbound.io_namespacedisasterrecoveryconfigs.yaml +++ b/package/crds/servicebus.azure.upbound.io_namespacedisasterrecoveryconfigs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: namespacedisasterrecoveryconfigs.servicebus.azure.upbound.io spec: group: servicebus.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -307,21 +306,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/servicebus.azure.upbound.io_namespacenetworkrulesets.yaml b/package/crds/servicebus.azure.upbound.io_namespacenetworkrulesets.yaml index 5c6824d3a..657ca6f94 100644 --- a/package/crds/servicebus.azure.upbound.io_namespacenetworkrulesets.yaml +++ b/package/crds/servicebus.azure.upbound.io_namespacenetworkrulesets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: namespacenetworkrulesets.servicebus.azure.upbound.io spec: group: servicebus.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -263,21 +262,77 @@ spec: See Trusted Microsoft Services type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + defaultAction: + description: Specifies the default action for the ServiceBus Namespace + Network Rule Set. Possible values are Allow and Deny. Defaults + to Deny. + type: string + ipRules: + description: One or more IP Addresses, or CIDR Blocks which should + be able to access the ServiceBus Namespace. + items: + type: string + type: array + networkRules: + description: One or more network_rules blocks as defined below. + items: + properties: + ignoreMissingVnetServiceEndpoint: + description: Should the ServiceBus Namespace Network Rule + Set ignore missing Virtual Network Service Endpoint option + in the Subnet? Defaults to false. + type: boolean + type: object + type: array + publicNetworkAccessEnabled: + description: Whether to allow traffic over public network. Possible + values are true and false. Defaults to true. + type: boolean + trustedServicesAllowed: + description: If True, then Azure Services that are known and trusted + for this resource type are allowed to bypass firewall configuration. + See Trusted Microsoft Services + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/servicebus.azure.upbound.io_queueauthorizationrules.yaml b/package/crds/servicebus.azure.upbound.io_queueauthorizationrules.yaml index fcb1c6d75..9303d4860 100644 --- a/package/crds/servicebus.azure.upbound.io_queueauthorizationrules.yaml +++ b/package/crds/servicebus.azure.upbound.io_queueauthorizationrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: queueauthorizationrules.servicebus.azure.upbound.io spec: group: servicebus.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -159,21 +158,59 @@ spec: to the ServiceBus Queue? Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + listen: + description: Does this Authorization Rule have Listen permissions + to the ServiceBus Queue? Defaults to false. + type: boolean + manage: + description: Does this Authorization Rule have Manage permissions + to the ServiceBus Queue? When this property is true - both listen + and send must be too. Defaults to false. + type: boolean + send: + description: Does this Authorization Rule have Send permissions + to the ServiceBus Queue? Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/servicebus.azure.upbound.io_queues.yaml b/package/crds/servicebus.azure.upbound.io_queues.yaml index 04fab1581..215c4b406 100644 --- a/package/crds/servicebus.azure.upbound.io_queues.yaml +++ b/package/crds/servicebus.azure.upbound.io_queues.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: queues.servicebus.azure.upbound.io spec: group: servicebus.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -227,21 +226,125 @@ spec: Unknown. Note that Restoring is not accepted. Defaults to Active. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoDeleteOnIdle: + description: The ISO 8601 timespan duration of the idle interval + after which the Queue is automatically deleted, minimum of 5 + minutes. + type: string + deadLetteringOnMessageExpiration: + description: Boolean flag which controls whether the Queue has + dead letter support when a message expires. Defaults to false. + type: boolean + defaultMessageTtl: + description: The ISO 8601 timespan duration of the TTL of messages + sent to this queue. This is the default value used when TTL + is not set on message itself. + type: string + duplicateDetectionHistoryTimeWindow: + description: The ISO 8601 timespan duration during which duplicates + can be detected. Defaults to 10 minutes (PT10M). + type: string + enableBatchedOperations: + description: Boolean flag which controls whether server-side batched + operations are enabled. Defaults to true. + type: boolean + enableExpress: + description: Boolean flag which controls whether Express Entities + are enabled. An express queue holds a message in memory temporarily + before writing it to persistent storage. Defaults to false for + Basic and Standard. For Premium, it MUST be set to false. + type: boolean + enablePartitioning: + description: Boolean flag which controls whether to enable the + queue to be partitioned across multiple message brokers. Changing + this forces a new resource to be created. Defaults to false + for Basic and Standard. + type: boolean + forwardDeadLetteredMessagesTo: + description: The name of a Queue or Topic to automatically forward + dead lettered messages to. + type: string + forwardTo: + description: The name of a Queue or Topic to automatically forward + messages to. Please see the documentation for more information. + type: string + lockDuration: + description: The ISO 8601 timespan duration of a peek-lock; that + is, the amount of time that the message is locked for other + receivers. Maximum value is 5 minutes. Defaults to 1 minute + (PT1M). + type: string + maxDeliveryCount: + description: Integer value which controls when a message is automatically + dead lettered. Defaults to 10. + type: number + maxMessageSizeInKilobytes: + description: Integer value which controls the maximum size of + a message allowed on the queue for Premium SKU. For supported + values see the "Large messages support" section of this document. + type: number + maxSizeInMegabytes: + description: Integer value which controls the size of memory allocated + for the queue. For supported values see the "Queue or topic + size" section of Service Bus Quotas. Defaults to 1024. + type: number + requiresDuplicateDetection: + description: Boolean flag which controls whether the Queue requires + duplicate detection. Changing this forces a new resource to + be created. Defaults to false. + type: boolean + requiresSession: + description: Boolean flag which controls whether the Queue requires + sessions. This will allow ordered handling of unbounded sequences + of related messages. With sessions enabled a queue can guarantee + first-in-first-out delivery of messages. Changing this forces + a new resource to be created. Defaults to false. + type: boolean + status: + description: The status of the Queue. Possible values are Active, + Creating, Deleting, Disabled, ReceiveDisabled, Renaming, SendDisabled, + Unknown. Note that Restoring is not accepted. Defaults to Active. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/servicebus.azure.upbound.io_servicebusnamespaces.yaml b/package/crds/servicebus.azure.upbound.io_servicebusnamespaces.yaml index 5456d68f8..e69e609cd 100644 --- a/package/crds/servicebus.azure.upbound.io_servicebusnamespaces.yaml +++ b/package/crds/servicebus.azure.upbound.io_servicebusnamespaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: servicebusnamespaces.servicebus.azure.upbound.io spec: group: servicebus.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -90,9 +89,6 @@ spec: description: The ID of the Key Vault Key which should be used to Encrypt the data in this ServiceBus Namespace. type: string - required: - - identityId - - keyVaultKeyId type: object type: array identity: @@ -111,8 +107,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array localAuthEnabled: @@ -227,21 +221,120 @@ spec: be created. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + capacity: + description: Specifies the capacity. When sku is Premium, capacity + can be 1, 2, 4, 8 or 16. When sku is Basic or Standard, capacity + can be 0 only. + type: number + customerManagedKey: + description: An customer_managed_key block as defined below. + items: + properties: + identityId: + description: The ID of the User Assigned Identity that has + access to the key. + type: string + infrastructureEncryptionEnabled: + description: Used to specify whether enable Infrastructure + Encryption (Double Encryption). Changing this forces a + new resource to be created. + type: boolean + keyVaultKeyId: + description: The ID of the Key Vault Key which should be + used to Encrypt the data in this ServiceBus Namespace. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this ServiceBus namespace. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this ServiceBus Namespace. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + localAuthEnabled: + description: Whether or not SAS authentication is enabled for + the Service Bus namespace. Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + minimumTlsVersion: + description: 'The minimum supported TLS version for this Service + Bus Namespace. Valid values are: 1.0, 1.1 and 1.2. The current + default minimum TLS version is 1.2.' + type: string + publicNetworkAccessEnabled: + description: Is public network access enabled for the Service + Bus Namespace? Defaults to true. + type: boolean + sku: + description: Defines which tier to use. Options are Basic, Standard + or Premium. Please note that setting this field to Premium will + force the creation of a new resource. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zoneRedundant: + description: Whether or not this resource is zone redundant. sku + needs to be Premium. Changing this forces a new resource to + be created. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -415,9 +508,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: ServiceBusNamespaceStatus defines the observed state of ServiceBusNamespace. properties: diff --git a/package/crds/servicebus.azure.upbound.io_subscriptionrules.yaml b/package/crds/servicebus.azure.upbound.io_subscriptionrules.yaml index 7cbfa615a..7aea04911 100644 --- a/package/crds/servicebus.azure.upbound.io_subscriptionrules.yaml +++ b/package/crds/servicebus.azure.upbound.io_subscriptionrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subscriptionrules.servicebus.azure.upbound.io spec: group: servicebus.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -200,21 +199,97 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + action: + description: Represents set of actions written in SQL language-based + syntax that is performed against a BrokeredMessage. + type: string + correlationFilter: + description: A correlation_filter block as documented below to + be evaluated against a BrokeredMessage. Required when filter_type + is set to CorrelationFilter. + items: + properties: + contentType: + description: Content type of the message. + type: string + correlationId: + description: Identifier of the correlation. + type: string + label: + description: Application specific label. + type: string + messageId: + description: Identifier of the message. + type: string + properties: + additionalProperties: + type: string + description: A list of user defined properties to be included + in the filter. Specified as a map of name/value pairs. + type: object + replyTo: + description: Address of the queue to reply to. + type: string + replyToSessionId: + description: Session identifier to reply to. + type: string + sessionId: + description: Session identifier. + type: string + to: + description: Address to send to. + type: string + type: object + type: array + filterType: + description: Type of filter to be applied to a BrokeredMessage. + Possible values are SqlFilter and CorrelationFilter. + type: string + sqlFilter: + description: Represents a filter written in SQL language-based + syntax that to be evaluated against a BrokeredMessage. Required + when filter_type is set to SqlFilter. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -388,7 +463,9 @@ spec: type: object x-kubernetes-validations: - message: filterType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.filterType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.filterType) + || has(self.initProvider.filterType)' status: description: SubscriptionRuleStatus defines the observed state of SubscriptionRule. properties: diff --git a/package/crds/servicebus.azure.upbound.io_subscriptions.yaml b/package/crds/servicebus.azure.upbound.io_subscriptions.yaml index d4da5a96e..88a8a05b0 100644 --- a/package/crds/servicebus.azure.upbound.io_subscriptions.yaml +++ b/package/crds/servicebus.azure.upbound.io_subscriptions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: subscriptions.servicebus.azure.upbound.io spec: group: servicebus.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -216,21 +215,116 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoDeleteOnIdle: + description: The idle interval after which the topic is automatically + deleted as an ISO 8601 duration. The minimum duration is 5 minutes + or PT5M. + type: string + clientScopedSubscription: + description: A client_scoped_subscription block as defined below. + items: + properties: + clientId: + description: Specifies the Client ID of the application + that created the client-scoped subscription. Changing + this forces a new resource to be created. + type: string + isClientScopedSubscriptionShareable: + description: Whether the client scoped subscription is shareable. + Defaults to true Changing this forces a new resource to + be created. + type: boolean + type: object + type: array + clientScopedSubscriptionEnabled: + description: whether the subscription is scoped to a client id. + Defaults to False. + type: boolean + deadLetteringOnFilterEvaluationError: + description: Boolean flag which controls whether the Subscription + has dead letter support on filter evaluation exceptions. Defaults + to true. + type: boolean + deadLetteringOnMessageExpiration: + description: Boolean flag which controls whether the Subscription + has dead letter support when a message expires. + type: boolean + defaultMessageTtl: + description: The Default message timespan to live as an ISO 8601 + duration. This is the duration after which the message expires, + starting from when the message is sent to Service Bus. This + is the default value used when TimeToLive is not set on a message + itself. + type: string + enableBatchedOperations: + description: Boolean flag which controls whether the Subscription + supports batched operations. + type: boolean + forwardDeadLetteredMessagesTo: + description: The name of a Queue or Topic to automatically forward + Dead Letter messages to. + type: string + forwardTo: + description: The name of a Queue or Topic to automatically forward + messages to. + type: string + lockDuration: + description: The lock duration for the subscription as an ISO + 8601 duration. The default value is 1 minute or P0DT0H1M0S . + The maximum value is 5 minutes or P0DT0H5M0S . + type: string + maxDeliveryCount: + description: The maximum number of deliveries. + type: number + requiresSession: + description: Boolean flag which controls whether this Subscription + supports the concept of a session. Changing this forces a new + resource to be created. + type: boolean + status: + description: The status of the Subscription. Possible values are + Active,ReceiveDisabled, or Disabled. Defaults to Active. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -404,7 +498,9 @@ spec: type: object x-kubernetes-validations: - message: maxDeliveryCount is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.maxDeliveryCount) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.maxDeliveryCount) + || has(self.initProvider.maxDeliveryCount)' status: description: SubscriptionStatus defines the observed state of Subscription. properties: diff --git a/package/crds/servicebus.azure.upbound.io_topicauthorizationrules.yaml b/package/crds/servicebus.azure.upbound.io_topicauthorizationrules.yaml index e444bba97..9fc57226c 100644 --- a/package/crds/servicebus.azure.upbound.io_topicauthorizationrules.yaml +++ b/package/crds/servicebus.azure.upbound.io_topicauthorizationrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: topicauthorizationrules.servicebus.azure.upbound.io spec: group: servicebus.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -159,21 +158,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + listen: + description: Grants listen access to this this Authorization Rule. + Defaults to false. + type: boolean + manage: + description: Grants manage access to this this Authorization Rule. + When this property is true - both listen and send must be too. + Defaults to false. + type: boolean + send: + description: Grants send access to this this Authorization Rule. + Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/servicebus.azure.upbound.io_topics.yaml b/package/crds/servicebus.azure.upbound.io_topics.yaml index 353e420ad..6f988fb3d 100644 --- a/package/crds/servicebus.azure.upbound.io_topics.yaml +++ b/package/crds/servicebus.azure.upbound.io_topics.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: topics.servicebus.azure.upbound.io spec: group: servicebus.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -201,21 +200,98 @@ spec: ordering. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoDeleteOnIdle: + description: The ISO 8601 timespan duration of the idle interval + after which the Topic is automatically deleted, minimum of 5 + minutes. + type: string + defaultMessageTtl: + description: The ISO 8601 timespan duration of TTL of messages + sent to this topic if no TTL value is set on the message itself. + type: string + duplicateDetectionHistoryTimeWindow: + description: The ISO 8601 timespan duration during which duplicates + can be detected. Defaults to 10 minutes. (PT10M) + type: string + enableBatchedOperations: + description: Boolean flag which controls if server-side batched + operations are enabled. + type: boolean + enableExpress: + description: Boolean flag which controls whether Express Entities + are enabled. An express topic holds a message in memory temporarily + before writing it to persistent storage. + type: boolean + enablePartitioning: + description: Boolean flag which controls whether to enable Changing + this forces a new resource to be created. the topic to be partitioned + across multiple message brokers. Defaults to false. Changing + this forces a new resource to be created. + type: boolean + maxMessageSizeInKilobytes: + description: Integer value which controls the maximum size of + a message allowed on the topic for Premium SKU. For supported + values see the "Large messages support" section of this document. + type: number + maxSizeInMegabytes: + description: Integer value which controls the size of memory allocated + for the topic. For supported values see the "Queue/topic size" + section of this document. + type: number + requiresDuplicateDetection: + description: Boolean flag which controls whether Changing this + forces a new resource to be created. the Topic requires duplicate + detection. Defaults to false. Changing this forces a new resource + to be created. + type: boolean + status: + description: The Status of the Service Bus Topic. Acceptable values + are Active or Disabled. Defaults to Active. + type: string + supportOrdering: + description: Boolean flag which controls whether the Topic supports + ordering. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/servicefabric.azure.upbound.io_clusters.yaml b/package/crds/servicefabric.azure.upbound.io_clusters.yaml index 197b26464..54542bfe5 100644 --- a/package/crds/servicefabric.azure.upbound.io_clusters.yaml +++ b/package/crds/servicefabric.azure.upbound.io_clusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: clusters.servicefabric.azure.upbound.io spec: group: servicefabric.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -89,10 +88,6 @@ spec: tenantId: description: The Azure Active Directory Tenant ID. type: string - required: - - clientApplicationId - - clusterApplicationId - - tenantId type: object type: array certificate: @@ -110,9 +105,6 @@ spec: description: The X509 Store where the Certificate Exists, such as My. type: string - required: - - thumbprint - - x509StoreName type: object type: array certificateCommonNames: @@ -130,17 +122,12 @@ spec: certificateIssuerThumbprint: description: The Issuer Thumbprint of the Certificate. type: string - required: - - certificateCommonName type: object type: array x509StoreName: description: The X509 Store where the Certificate Exists, such as My. type: string - required: - - commonNames - - x509StoreName type: object type: array clientCertificateCommonName: @@ -159,9 +146,6 @@ spec: issuerThumbprint: description: The Issuer Thumbprint of the Certificate. type: string - required: - - commonName - - isAdmin type: object type: array clientCertificateThumbprint: @@ -177,9 +161,6 @@ spec: thumbprint: description: The Thumbprint associated with the Client Certificate. type: string - required: - - isAdmin - - thumbprint type: object type: array clusterCodeVersion: @@ -207,12 +188,6 @@ spec: tableEndpoint: description: The Table Endpoint of the Storage Account. type: string - required: - - blobEndpoint - - protectedAccountKeyName - - queueEndpoint - - storageAccountName - - tableEndpoint type: object type: array fabricSettings: @@ -229,8 +204,6 @@ spec: description: A map containing settings for the specified Fabric Setting. type: object - required: - - name type: object type: array location: @@ -259,9 +232,6 @@ spec: description: The start of the Ephemeral Port Range on this Node Type. type: number - required: - - endPort - - startPort type: object type: array capacities: @@ -291,9 +261,6 @@ spec: description: The start of the Ephemeral Port Range on this Node Type. type: number - required: - - endPort - - startPort type: object type: array httpEndpointPort: @@ -326,12 +293,6 @@ spec: description: The Port used for the Reverse Proxy Endpoint for this Node Type. Changing this will upgrade the cluster. type: number - required: - - clientEndpointPort - - httpEndpointPort - - instanceCount - - isPrimary - - name type: object type: array reliabilityLevel: @@ -433,9 +394,6 @@ spec: description: The X509 Store where the Certificate Exists, such as My. type: string - required: - - thumbprint - - x509StoreName type: object type: array reverseProxyCertificateCommonNames: @@ -453,17 +411,12 @@ spec: certificateIssuerThumbprint: description: The Issuer Thumbprint of the Certificate. type: string - required: - - certificateCommonName type: object type: array x509StoreName: description: The X509 Store where the Certificate Exists, such as My. type: string - required: - - commonNames - - x509StoreName type: object type: array serviceFabricZonalUpgradeMode: @@ -587,21 +540,438 @@ spec: Possible values are Hierarchical or Parallel. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + addOnFeatures: + description: A List of one or more features which should be enabled, + such as DnsService. + items: + type: string + type: array + azureActiveDirectory: + description: An azure_active_directory block as defined below. + items: + properties: + clientApplicationId: + description: The Azure Active Directory Client ID which + should be used for the Client Application. + type: string + clusterApplicationId: + description: The Azure Active Directory Cluster Application + ID. + type: string + tenantId: + description: The Azure Active Directory Tenant ID. + type: string + type: object + type: array + certificate: + description: A certificate block as defined below. Conflicts with + certificate_common_names. + items: + properties: + thumbprint: + description: The Thumbprint of the Certificate. + type: string + thumbprintSecondary: + description: The Secondary Thumbprint of the Certificate. + type: string + x509StoreName: + description: The X509 Store where the Certificate Exists, + such as My. + type: string + type: object + type: array + certificateCommonNames: + description: A certificate_common_names block as defined below. + Conflicts with certificate. + items: + properties: + commonNames: + description: A common_names block as defined below. + items: + properties: + certificateCommonName: + description: The common or subject name of the certificate. + type: string + certificateIssuerThumbprint: + description: The Issuer Thumbprint of the Certificate. + type: string + type: object + type: array + x509StoreName: + description: The X509 Store where the Certificate Exists, + such as My. + type: string + type: object + type: array + clientCertificateCommonName: + description: A client_certificate_common_name block as defined + below. + items: + properties: + commonName: + description: The common or subject name of the certificate. + type: string + isAdmin: + description: Does the Client Certificate have Admin Access + to the cluster? Non-admin clients can only perform read + only operations on the cluster. + type: boolean + issuerThumbprint: + description: The Issuer Thumbprint of the Certificate. + type: string + type: object + type: array + clientCertificateThumbprint: + description: One or more client_certificate_thumbprint blocks + as defined below. + items: + properties: + isAdmin: + description: Does the Client Certificate have Admin Access + to the cluster? Non-admin clients can only perform read + only operations on the cluster. + type: boolean + thumbprint: + description: The Thumbprint associated with the Client Certificate. + type: string + type: object + type: array + clusterCodeVersion: + description: Required if Upgrade Mode set to Manual, Specifies + the Version of the Cluster Code of the cluster. + type: string + diagnosticsConfig: + description: A diagnostics_config block as defined below. + items: + properties: + blobEndpoint: + description: The Blob Endpoint of the Storage Account. + type: string + protectedAccountKeyName: + description: The protected diagnostics storage key name, + such as StorageAccountKey1. + type: string + queueEndpoint: + description: The Queue Endpoint of the Storage Account. + type: string + storageAccountName: + description: The name of the Storage Account where the Diagnostics + should be sent to. + type: string + tableEndpoint: + description: The Table Endpoint of the Storage Account. + type: string + type: object + type: array + fabricSettings: + description: One or more fabric_settings blocks as defined below. + items: + properties: + name: + description: The name of the Fabric Setting, such as Security + or Federation. + type: string + parameters: + additionalProperties: + type: string + description: A map containing settings for the specified + Fabric Setting. + type: object + type: object + type: array + location: + description: Specifies the Azure Region where the Service Fabric + Cluster should exist. Changing this forces a new resource to + be created. + type: string + managementEndpoint: + description: Specifies the Management Endpoint of the cluster + such as http://example.com. Changing this forces a new resource + to be created. + type: string + nodeType: + description: One or more node_type blocks as defined below. + items: + properties: + applicationPorts: + description: A application_ports block as defined below. + items: + properties: + endPort: + description: The end of the Ephemeral Port Range on + this Node Type. + type: number + startPort: + description: The start of the Ephemeral Port Range + on this Node Type. + type: number + type: object + type: array + capacities: + additionalProperties: + type: string + description: The capacity tags applied to the nodes in the + node type, the cluster resource manager uses these tags + to understand how much resource a node has. + type: object + clientEndpointPort: + description: The Port used for the Client Endpoint for this + Node Type. + type: number + durabilityLevel: + description: The Durability Level for this Node Type. Possible + values include Bronze, Gold and Silver. Defaults to Bronze. + type: string + ephemeralPorts: + description: A ephemeral_ports block as defined below. + items: + properties: + endPort: + description: The end of the Ephemeral Port Range on + this Node Type. + type: number + startPort: + description: The start of the Ephemeral Port Range + on this Node Type. + type: number + type: object + type: array + httpEndpointPort: + description: The Port used for the HTTP Endpoint for this + Node Type. + type: number + instanceCount: + description: The number of nodes for this Node Type. + type: number + isPrimary: + description: Is this the Primary Node Type? + type: boolean + isStateless: + description: Should this node type run only stateless services? + type: boolean + multipleAvailabilityZones: + description: Does this node type span availability zones? + type: boolean + name: + description: The name of the Node Type. + type: string + placementProperties: + additionalProperties: + type: string + description: The placement tags applied to nodes in the + node type, which can be used to indicate where certain + services (workload) should run. + type: object + reverseProxyEndpointPort: + description: The Port used for the Reverse Proxy Endpoint + for this Node Type. Changing this will upgrade the cluster. + type: number + type: object + type: array + reliabilityLevel: + description: Specifies the Reliability Level of the Cluster. Possible + values include None, Bronze, Silver, Gold and Platinum. + type: string + reverseProxyCertificate: + description: A reverse_proxy_certificate block as defined below. + Conflicts with reverse_proxy_certificate_common_names. + items: + properties: + thumbprint: + description: The Thumbprint of the Certificate. + type: string + thumbprintSecondary: + description: The Secondary Thumbprint of the Certificate. + type: string + x509StoreName: + description: The X509 Store where the Certificate Exists, + such as My. + type: string + type: object + type: array + reverseProxyCertificateCommonNames: + description: A reverse_proxy_certificate_common_names block as + defined below. Conflicts with reverse_proxy_certificate. + items: + properties: + commonNames: + description: A common_names block as defined below. + items: + properties: + certificateCommonName: + description: The common or subject name of the certificate. + type: string + certificateIssuerThumbprint: + description: The Issuer Thumbprint of the Certificate. + type: string + type: object + type: array + x509StoreName: + description: The X509 Store where the Certificate Exists, + such as My. + type: string + type: object + type: array + serviceFabricZonalUpgradeMode: + description: Specifies the logical grouping of VMs in upgrade + domains. Possible values are Hierarchical or Parallel. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + upgradeMode: + description: Specifies the Upgrade Mode of the cluster. Possible + values are Automatic or Manual. + type: string + upgradePolicy: + description: A upgrade_policy block as defined below. + items: + properties: + deltaHealthPolicy: + description: A delta_health_policy block as defined below + items: + properties: + maxDeltaUnhealthyApplicationsPercent: + description: Specifies the maximum tolerated percentage + of delta unhealthy applications that can have aggregated + health states of error. If the current unhealthy + applications do not respect the percentage relative + to the state at the beginning of the upgrade, the + cluster is unhealthy. Defaults to 0. + type: number + maxDeltaUnhealthyNodesPercent: + description: Specifies the maximum tolerated percentage + of delta unhealthy nodes that can have aggregated + health states of error. If the current unhealthy + nodes do not respect the percentage relative to + the state at the beginning of the upgrade, the cluster + is unhealthy. Defaults to 0. + type: number + maxUpgradeDomainDeltaUnhealthyNodesPercent: + description: Specifies the maximum tolerated percentage + of upgrade domain delta unhealthy nodes that can + have aggregated health state of error. If there + is any upgrade domain where the current unhealthy + nodes do not respect the percentage relative to + the state at the beginning of the upgrade, the cluster + is unhealthy. Defaults to 0. + type: number + type: object + type: array + forceRestartEnabled: + description: Indicates whether to restart the Service Fabric + node even if only dynamic configurations have changed. + type: boolean + healthCheckRetryTimeout: + description: Specifies the duration, in "hh:mm:ss" string + format, after which Service Fabric retries the health + check if the previous health check fails. Defaults to + 00:45:00. + type: string + healthCheckStableDuration: + description: Specifies the duration, in "hh:mm:ss" string + format, that Service Fabric waits in order to verify that + the cluster is stable before it continues to the next + upgrade domain or completes the upgrade. This wait duration + prevents undetected changes of health right after the + health check is performed. Defaults to 00:01:00. + type: string + healthCheckWaitDuration: + description: Specifies the duration, in "hh:mm:ss" string + format, that Service Fabric waits before it performs the + initial health check after it finishes the upgrade on + the upgrade domain. Defaults to 00:00:30. + type: string + healthPolicy: + description: A health_policy block as defined below + items: + properties: + maxUnhealthyApplicationsPercent: + description: Specifies the maximum tolerated percentage + of applications that can have aggregated health + state of error. If the upgrade exceeds this percentage, + the cluster is unhealthy. Defaults to 0. + type: number + maxUnhealthyNodesPercent: + description: Specifies the maximum tolerated percentage + of nodes that can have aggregated health states + of error. If an upgrade exceeds this percentage, + the cluster is unhealthy. Defaults to 0. + type: number + type: object + type: array + upgradeDomainTimeout: + description: Specifies the duration, in "hh:mm:ss" string + format, that Service Fabric takes to upgrade a single + upgrade domain. After this period, the upgrade fails. + Defaults to 02:00:00. + type: string + upgradeReplicaSetCheckTimeout: + description: Specifies the duration, in "hh:mm:ss" string + format, that Service Fabric waits for a replica set to + reconfigure into a safe state, if it is not already in + a safe state, before Service Fabric proceeds with the + upgrade. Defaults to 10675199.02:48:05.4775807. + type: string + upgradeTimeout: + description: Specifies the duration, in "hh:mm:ss" string + format, that Service Fabric takes for the entire upgrade. + After this period, the upgrade fails. Defaults to 12:00:00. + type: string + type: object + type: array + vmImage: + description: Specifies the Image expected for the Service Fabric + Cluster, such as Windows. Changing this forces a new resource + to be created. + type: string + vmssZonalUpgradeMode: + description: Specifies the upgrade mode for the virtual machine + scale set updates that happen in all availability zones at once. + Possible values are Hierarchical or Parallel. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -775,17 +1145,29 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: managementEndpoint is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.managementEndpoint) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.managementEndpoint) + || has(self.initProvider.managementEndpoint)' - message: nodeType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nodeType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.nodeType) + || has(self.initProvider.nodeType)' - message: reliabilityLevel is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.reliabilityLevel) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.reliabilityLevel) + || has(self.initProvider.reliabilityLevel)' - message: upgradeMode is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.upgradeMode) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.upgradeMode) + || has(self.initProvider.upgradeMode)' - message: vmImage is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vmImage) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.vmImage) + || has(self.initProvider.vmImage)' status: description: ClusterStatus defines the observed state of Cluster. properties: diff --git a/package/crds/servicefabric.azure.upbound.io_managedclusters.yaml b/package/crds/servicefabric.azure.upbound.io_managedclusters.yaml index e7bbf29b3..5bfedee75 100644 --- a/package/crds/servicefabric.azure.upbound.io_managedclusters.yaml +++ b/package/crds/servicefabric.azure.upbound.io_managedclusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managedclusters.servicefabric.azure.upbound.io spec: group: servicefabric.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -86,10 +85,6 @@ spec: tenantId: description: The ID of the Tenant. type: string - required: - - clientApplicationId - - clusterApplicationId - - tenantId type: object type: array certificate: @@ -106,9 +101,6 @@ spec: description: The type of the certificate. Can be AdminClient or ReadOnlyClient. type: string - required: - - thumbprint - - type type: object type: array type: object @@ -133,10 +125,6 @@ spec: value: description: Parameter value. type: string - required: - - parameter - - section - - value type: object type: array dnsName: @@ -172,11 +160,6 @@ spec: description: The transport protocol used in this rule. Can be one of tcp or udp. type: string - required: - - backendPort - - frontendPort - - probeProtocol - - protocol type: object type: array location: @@ -272,34 +255,17 @@ spec: description: The URL of a certificate that has been uploaded to Key Vault as a secret type: string - required: - - store - - url type: object type: array vaultId: description: The ID of the Vault that contain the certificates. type: string - required: - - certificates - - vaultId type: object type: array vmSize: description: The size of the instances in this node type. type: string - required: - - applicationPortRange - - dataDiskSizeGb - - ephemeralPortRange - - name - - vmImageOffer - - vmImagePublisher - - vmImageSku - - vmImageVersion - - vmInstanceCount - - vmSize type: object type: array passwordSecretRef: @@ -420,21 +386,266 @@ spec: as part of this cluster. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authentication: + description: Controls how connections to the cluster are authenticated. + A authentication block as defined below. + items: + properties: + activeDirectory: + description: A active_directory block as defined above. + items: + properties: + clientApplicationId: + description: The ID of the Client Application. + type: string + clusterApplicationId: + description: The ID of the Cluster Application. + type: string + tenantId: + description: The ID of the Tenant. + type: string + type: object + type: array + certificate: + description: One or more certificate blocks as defined below. + items: + properties: + commonName: + description: The certificate's CN. + type: string + thumbprint: + description: The thumbprint of the certificate. + type: string + type: + description: The type of the certificate. Can be AdminClient + or ReadOnlyClient. + type: string + type: object + type: array + type: object + type: array + backupServiceEnabled: + description: If true, backup service is enabled. + type: boolean + clientConnectionPort: + description: Port to use when connecting to the cluster. + type: number + customFabricSetting: + description: One or more custom_fabric_setting blocks as defined + below. + items: + properties: + parameter: + description: Parameter name. + type: string + section: + description: Section name. + type: string + value: + description: Parameter value. + type: string + type: object + type: array + dnsName: + description: Hostname for the cluster. If unset the cluster's + name will be used.. + type: string + dnsServiceEnabled: + description: If true, DNS service is enabled. + type: boolean + httpGatewayPort: + description: Port that should be used by the Service Fabric Explorer + to visualize applications and cluster status. + type: number + lbRule: + description: One or more lb_rule blocks as defined below. + items: + properties: + backendPort: + description: LB Backend port. + type: number + frontendPort: + description: LB Frontend port. + type: number + probeProtocol: + description: Protocol for the probe. Can be one of tcp, + udp, http, or https. + type: string + probeRequestPath: + description: Path for the probe to check, when probe protocol + is set to http. + type: string + protocol: + description: The transport protocol used in this rule. Can + be one of tcp or udp. + type: string + type: object + type: array + location: + description: The Azure Region where the Resource Group should + exist. Changing this forces a new Resource Group to be created. + type: string + nodeType: + description: One or more node_type blocks as defined below. + items: + properties: + applicationPortRange: + description: Sets the port range available for applications. + Format is -, for example 10000-20000. + type: string + capacities: + additionalProperties: + type: string + description: Specifies a list of key/value pairs used to + set capacity tags for this node type. + type: object + dataDiskSizeGb: + description: The size of the data disk in gigabytes.. + type: number + dataDiskType: + description: The type of the disk to use for storing data. + It can be one of Premium_LRS, Standard_LRS, or StandardSSD_LRS. + type: string + ephemeralPortRange: + description: Sets the port range available for the OS. Format + is -, for example 10000-20000. There + has to be at least 255 ports available and cannot overlap + with application_port_range.. + type: string + multiplePlacementGroupsEnabled: + description: If set the node type can be composed of multiple + placement groups. + type: boolean + name: + description: The name which should be used for this node + type. + type: string + placementProperties: + additionalProperties: + type: string + description: Specifies a list of placement tags that can + be used to indicate where services should run.. + type: object + primary: + description: If set to true, system services will run on + this node type. Only one node type should be marked as + primary. Primary node type cannot be deleted or changed + once they're created. + type: boolean + stateless: + description: If set to true, only stateless workloads can + run on this node type. + type: boolean + vmImageOffer: + description: The offer type of the marketplace image cluster + VMs will use. + type: string + vmImagePublisher: + description: The publisher of the marketplace image cluster + VMs will use. + type: string + vmImageSku: + description: The SKU of the marketplace image cluster VMs + will use. + type: string + vmImageVersion: + description: The version of the marketplace image cluster + VMs will use. + type: string + vmInstanceCount: + description: The number of instances this node type will + launch. + type: number + vmSecrets: + description: One or more vm_secrets blocks as defined below. + items: + properties: + certificates: + description: One or more certificates blocks as defined + above. + items: + properties: + store: + description: The certificate store on the Virtual + Machine to which the certificate should be + added. + type: string + url: + description: The URL of a certificate that has + been uploaded to Key Vault as a secret + type: string + type: object + type: array + vaultId: + description: The ID of the Vault that contain the + certificates. + type: string + type: object + type: array + vmSize: + description: The size of the instances in this node type. + type: string + type: object + type: array + sku: + description: SKU for this cluster. Changing this forces a new + resource to be created. Default is Basic, allowed values are + either Basic or Standard. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Resource Group. + type: object + upgradeWave: + description: Upgrade wave for the fabric runtime. Default is Wave0, + allowed value must be one of Wave0, Wave1, or Wave2. + type: string + username: + description: Administrator password for the VMs that will be created + as part of this cluster. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -608,13 +819,21 @@ spec: type: object x-kubernetes-validations: - message: clientConnectionPort is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.clientConnectionPort) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.clientConnectionPort) + || has(self.initProvider.clientConnectionPort)' - message: httpGatewayPort is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.httpGatewayPort) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.httpGatewayPort) + || has(self.initProvider.httpGatewayPort)' - message: lbRule is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.lbRule) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.lbRule) + || has(self.initProvider.lbRule)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ManagedClusterStatus defines the observed state of ManagedCluster. properties: diff --git a/package/crds/servicelinker.azure.upbound.io_springcloudconnections.yaml b/package/crds/servicelinker.azure.upbound.io_springcloudconnections.yaml index e950f7548..04cee353a 100644 --- a/package/crds/servicelinker.azure.upbound.io_springcloudconnections.yaml +++ b/package/crds/servicelinker.azure.upbound.io_springcloudconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: springcloudconnections.servicelinker.azure.upbound.io spec: group: servicelinker.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -138,8 +137,6 @@ spec: servicePrincipalCertificate, secret. Changing this forces a new resource to be created. type: string - required: - - type type: object type: array clientType: @@ -159,8 +156,6 @@ spec: keyVaultId: description: The key vault id to store secret. type: string - required: - - keyVaultId type: object type: array springCloudId: @@ -330,21 +325,104 @@ spec: serviceEndpoint, privateLink. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authentication: + description: The authentication info. An authentication block + as defined below. + items: + properties: + clientId: + description: Client ID for userAssignedIdentity or servicePrincipal + auth. Should be specified when type is set to servicePrincipalSecret + or servicePrincipalCertificate. When type is set to userAssignedIdentity, + client_id and subscription_id should be either both specified + or both not specified. + type: string + name: + description: Username or account name for secret auth. name + and secret should be either both specified or both not + specified when type is set to secret. + type: string + principalId: + description: Principal ID for servicePrincipal auth. Should + be specified when type is set to servicePrincipalSecret + or servicePrincipalCertificate. + type: string + subscriptionId: + description: Subscription ID for userAssignedIdentity. subscription_id + and client_id should be either both specified or both + not specified. + type: string + type: + description: The authentication type. Possible values are + systemAssignedIdentity, userAssignedIdentity, servicePrincipalSecret, + servicePrincipalCertificate, secret. Changing this forces + a new resource to be created. + type: string + type: object + type: array + clientType: + description: The application client type. Possible values are + none, dotnet, java, python, go, php, ruby, django, nodejs and + springBoot. + type: string + name: + description: The name of the service connection. Changing this + forces a new resource to be created. + type: string + secretStore: + description: An option to store secret value in secure place. + An secret_store block as defined below. + items: + properties: + keyVaultId: + description: The key vault id to store secret. + type: string + type: object + type: array + vnetSolution: + description: The type of the VNet solution. Possible values are + serviceEndpoint, privateLink. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -518,9 +596,13 @@ spec: type: object x-kubernetes-validations: - message: authentication is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.authentication) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.authentication) + || has(self.initProvider.authentication)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: SpringCloudConnectionStatus defines the observed state of SpringCloudConnection. diff --git a/package/crds/signalrservice.azure.upbound.io_networkacls.yaml b/package/crds/signalrservice.azure.upbound.io_networkacls.yaml index ff8060467..aa3059e0e 100644 --- a/package/crds/signalrservice.azure.upbound.io_networkacls.yaml +++ b/package/crds/signalrservice.azure.upbound.io_networkacls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: networkacls.signalrservice.azure.upbound.io spec: group: signalrservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -274,21 +273,90 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + defaultAction: + description: The default action to control the network access + when no other rule matches. Possible values are Allow and Deny. + type: string + privateEndpoint: + description: A private_endpoint block as defined below. + items: + properties: + allowedRequestTypes: + description: The allowed request types for the Private Endpoint + Connection. Possible values are ClientConnection, ServerConnection, + RESTAPI and Trace. + items: + type: string + type: array + deniedRequestTypes: + description: The denied request types for the Private Endpoint + Connection. Possible values are ClientConnection, ServerConnection, + RESTAPI and Trace. + items: + type: string + type: array + type: object + type: array + publicNetwork: + description: A public_network block as defined below. + items: + properties: + allowedRequestTypes: + description: The allowed request types for the public network. + Possible values are ClientConnection, ServerConnection, + RESTAPI and Trace. + items: + type: string + type: array + deniedRequestTypes: + description: The denied request types for the public network. + Possible values are ClientConnection, ServerConnection, + RESTAPI and Trace. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -462,9 +530,13 @@ spec: type: object x-kubernetes-validations: - message: defaultAction is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultAction) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.defaultAction) + || has(self.initProvider.defaultAction)' - message: publicNetwork is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publicNetwork) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.publicNetwork) + || has(self.initProvider.publicNetwork)' status: description: NetworkACLStatus defines the observed state of NetworkACL. properties: diff --git a/package/crds/signalrservice.azure.upbound.io_services.yaml b/package/crds/signalrservice.azure.upbound.io_services.yaml index d96475648..f1e4cf34c 100644 --- a/package/crds/signalrservice.azure.upbound.io_services.yaml +++ b/package/crds/signalrservice.azure.upbound.io_services.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: services.signalrservice.azure.upbound.io spec: group: signalrservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -85,8 +84,6 @@ spec: items: type: string type: array - required: - - allowedOrigins type: object type: array httpRequestLogsEnabled: @@ -108,8 +105,6 @@ spec: that should be configured on this signalR. Possible values are SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array liveTrace: @@ -255,9 +250,6 @@ spec: description: Specifies which tier to use. Valid values are Free_F1, Standard_S1 and Premium_P1. type: string - required: - - capacity - - name type: object type: array tags: @@ -295,29 +287,191 @@ spec: description: The upstream URL Template. This can be a url or a template such as http://host.com/{hub}/api/{category}/{event}. type: string - required: - - categoryPattern - - eventPattern - - hubPattern - - urlTemplate type: object type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + aadAuthEnabled: + description: Whether to enable AAD auth? Defaults to true. + type: boolean + connectivityLogsEnabled: + description: Specifies if Connectivity Logs are enabled or not. + Defaults to false. + type: boolean + cors: + description: A cors block as documented below. + items: + properties: + allowedOrigins: + description: A list of origins which should be able to make + cross-origin calls. * can be used to allow all calls. + items: + type: string + type: array + type: object + type: array + httpRequestLogsEnabled: + description: Specifies if Http Request Logs are enabled or not. + Defaults to false. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this signalR. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this signalR. Possible values + are SystemAssigned, UserAssigned. + type: string + type: object + type: array + liveTrace: + description: A live_trace block as defined below. + items: + properties: + connectivityLogsEnabled: + description: Whether the log category ConnectivityLogs is + enabled? Defaults to true + type: boolean + enabled: + description: Whether the live trace is enabled? Defaults + to true. + type: boolean + httpRequestLogsEnabled: + description: Whether the log category HttpRequestLogs is + enabled? Defaults to true + type: boolean + messagingLogsEnabled: + description: Whether the log category MessagingLogs is enabled? + Defaults to true + type: boolean + type: object + type: array + liveTraceEnabled: + description: Specifies if Live Trace is enabled or not. Defaults + to false. + type: boolean + localAuthEnabled: + description: Whether to enable local auth? Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + SignalR service exists. Changing this forces a new resource + to be created. + type: string + messagingLogsEnabled: + description: Specifies if Messaging Logs are enabled or not. Defaults + to false. + type: boolean + publicNetworkAccessEnabled: + description: Whether to enable public network access? Defaults + to true. + type: boolean + serverlessConnectionTimeoutInSeconds: + description: Specifies the client connection timeout. Defaults + to 30. + type: number + serviceMode: + description: Specifies the service mode. Possible values are Classic, + Default and Serverless. Defaults to Default. + type: string + sku: + description: A sku block as documented below. + items: + properties: + capacity: + description: Specifies the number of units associated with + this SignalR service. Valid values are 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90 and 100. + type: number + name: + description: Specifies which tier to use. Valid values are + Free_F1, Standard_S1 and Premium_P1. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + tlsClientCertEnabled: + description: Whether to request client certificate during TLS + handshake? Defaults to false. + type: boolean + upstreamEndpoint: + description: An upstream_endpoint block as documented below. Using + this block requires the SignalR service to be Serverless. When + creating multiple blocks they will be processed in the order + they are defined in. + items: + properties: + categoryPattern: + description: The categories to match on, or * for all. + items: + type: string + type: array + eventPattern: + description: The events to match on, or * for all. + items: + type: string + type: array + hubPattern: + description: The hubs to match on, or * for all. + items: + type: string + type: array + urlTemplate: + description: The upstream URL Template. This can be a url + or a template such as http://host.com/{hub}/api/{category}/{event}. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -491,9 +645,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: ServiceStatus defines the observed state of Service. properties: diff --git a/package/crds/signalrservice.azure.upbound.io_signalrsharedprivatelinkresources.yaml b/package/crds/signalrservice.azure.upbound.io_signalrsharedprivatelinkresources.yaml index d72a815f8..c31d13674 100644 --- a/package/crds/signalrservice.azure.upbound.io_signalrsharedprivatelinkresources.yaml +++ b/package/crds/signalrservice.azure.upbound.io_signalrsharedprivatelinkresources.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: signalrsharedprivatelinkresources.signalrservice.azure.upbound.io spec: group: signalrservice.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -240,21 +239,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: The name of the Signalr Shared Private Link Resource. + Changing this forces a new resource to be created. + type: string + requestMessage: + description: The request message for requesting approval of the + Shared Private Link Enabled Remote Resource. + type: string + subResourceName: + description: The sub resource name which the Signalr Private Endpoint + can connect to. Possible values are sites, vault. Changing this + forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -428,9 +465,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: subResourceName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subResourceName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subResourceName) + || has(self.initProvider.subResourceName)' status: description: SignalrSharedPrivateLinkResourceStatus defines the observed state of SignalrSharedPrivateLinkResource. diff --git a/package/crds/signalrservice.azure.upbound.io_webpubsubhubs.yaml b/package/crds/signalrservice.azure.upbound.io_webpubsubhubs.yaml index 80a174f6a..1709bddfc 100644 --- a/package/crds/signalrservice.azure.upbound.io_webpubsubhubs.yaml +++ b/package/crds/signalrservice.azure.upbound.io_webpubsubhubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: webpubsubhubs.signalrservice.azure.upbound.io spec: group: signalrservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -186,8 +185,6 @@ spec: it matches event event1 and event2 * The single event name, for example event1, it matches event1.' type: string - required: - - urlTemplate type: object type: array eventListener: @@ -456,21 +453,103 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + anonymousConnectionsEnabled: + description: Is anonymous connections are allowed for this hub? + Defaults to false. Possible values are true, false. + type: boolean + eventHandler: + description: An event_handler block as defined below. + items: + properties: + auth: + description: An auth block as defined below. + items: + type: object + type: array + systemEvents: + description: Specifies the list of system events. Supported + values are connect, connected and disconnected. + items: + type: string + type: array + urlTemplate: + description: 'The Event Handler URL Template. Two predefined + parameters {hub} and {event} are available to use in the + template. The value of the EventHandler URL is dynamically + calculated when the client request comes in. Example: + http://example.com/api/{hub}/{event}.' + type: string + userEventPattern: + description: 'Specifies the matching event names. There + are 3 kind of patterns supported: * * matches any event + name * , Combine multiple events with , for example event1,event2, + it matches event event1 and event2 * The single event + name, for example event1, it matches event1.' + type: string + type: object + type: array + eventListener: + description: An event_listener block as defined below. + items: + properties: + systemEventNameFilter: + description: Specifies the list of system events. Supported + values are connected and disconnected. + items: + type: string + type: array + userEventNameFilter: + description: Specifies the list of matching user event names. + ["*"] can be used to match all events. + items: + type: string + type: array + type: object + type: array + name: + description: The name of the Web Pubsub hub service. Changing + this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -644,7 +723,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: WebPubsubHubStatus defines the observed state of WebPubsubHub. properties: diff --git a/package/crds/signalrservice.azure.upbound.io_webpubsubnetworkacls.yaml b/package/crds/signalrservice.azure.upbound.io_webpubsubnetworkacls.yaml index cab8f63c9..9a0aa0ec4 100644 --- a/package/crds/signalrservice.azure.upbound.io_webpubsubnetworkacls.yaml +++ b/package/crds/signalrservice.azure.upbound.io_webpubsubnetworkacls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: webpubsubnetworkacls.signalrservice.azure.upbound.io spec: group: signalrservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -275,21 +274,91 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + defaultAction: + description: The default action to control the network access + when no other rule matches. Possible values are Allow and Deny. + Defaults to Deny. + type: string + privateEndpoint: + description: A private_endpoint block as defined below. + items: + properties: + allowedRequestTypes: + description: The allowed request types for the Private Endpoint + Connection. Possible values are ClientConnection, ServerConnection, + RESTAPI and Trace. + items: + type: string + type: array + deniedRequestTypes: + description: The denied request types for the Private Endpoint + Connection. Possible values are ClientConnection, ServerConnection, + RESTAPI and Trace. + items: + type: string + type: array + type: object + type: array + publicNetwork: + description: A public_network block as defined below. + items: + properties: + allowedRequestTypes: + description: The allowed request types for the public network. + Possible values are ClientConnection, ServerConnection, + RESTAPI and Trace. + items: + type: string + type: array + deniedRequestTypes: + description: The denied request types for the public network. + Possible values are ClientConnection, ServerConnection, + RESTAPI and Trace. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -463,7 +532,9 @@ spec: type: object x-kubernetes-validations: - message: publicNetwork is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.publicNetwork) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.publicNetwork) + || has(self.initProvider.publicNetwork)' status: description: WebPubsubNetworkACLStatus defines the observed state of WebPubsubNetworkACL. properties: diff --git a/package/crds/signalrservice.azure.upbound.io_webpubsubs.yaml b/package/crds/signalrservice.azure.upbound.io_webpubsubs.yaml index e5bb3976c..e4f96784e 100644 --- a/package/crds/signalrservice.azure.upbound.io_webpubsubs.yaml +++ b/package/crds/signalrservice.azure.upbound.io_webpubsubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: webpubsubs.signalrservice.azure.upbound.io spec: group: signalrservice.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -91,8 +90,6 @@ spec: that should be configured on this Web PubSub. Possible values are SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array liveTrace: @@ -227,21 +224,122 @@ spec: handshake? Defaults to false. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + aadAuthEnabled: + description: Whether to enable AAD auth? Defaults to true. + type: boolean + capacity: + description: 'Specifies the number of units associated with this + Web PubSub resource. Valid values are: Free: 1, Standard: 1, + 2, 5, 10, 20, 50, 100.' + type: number + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Web PubSub. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Web PubSub. Possible + values are SystemAssigned, UserAssigned. + type: string + type: object + type: array + liveTrace: + description: A live_trace block as defined below. + items: + properties: + connectivityLogsEnabled: + description: Whether the log category ConnectivityLogs is + enabled? Defaults to true + type: boolean + enabled: + description: Whether the live trace is enabled? Defaults + to true. + type: boolean + httpRequestLogsEnabled: + description: Whether the log category HttpRequestLogs is + enabled? Defaults to true + type: boolean + messagingLogsEnabled: + description: Whether the log category MessagingLogs is enabled? + Defaults to true + type: boolean + type: object + type: array + localAuthEnabled: + description: Whether to enable local auth? Defaults to true. + type: boolean + location: + description: Specifies the supported Azure location where the + Web PubSub service exists. Changing this forces a new resource + to be created. + type: string + name: + description: The name of the Web PubSub service. Changing this + forces a new resource to be created. + type: string + publicNetworkAccessEnabled: + description: Whether to enable public network access? Defaults + to true. + type: boolean + sku: + description: Specifies which SKU to use. Possible values are Free_F1, + Standard_S1, and Premium_P1. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + tlsClientCertEnabled: + description: Whether to request client certificate during TLS + handshake? Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -415,11 +513,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: WebPubsubStatus defines the observed state of WebPubsub. properties: diff --git a/package/crds/solutions.azure.upbound.io_managedapplicationdefinitions.yaml b/package/crds/solutions.azure.upbound.io_managedapplicationdefinitions.yaml index 145c27de7..c09416a25 100644 --- a/package/crds/solutions.azure.upbound.io_managedapplicationdefinitions.yaml +++ b/package/crds/solutions.azure.upbound.io_managedapplicationdefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managedapplicationdefinitions.solutions.azure.upbound.io spec: group: solutions.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -85,9 +84,6 @@ spec: the provider. This is the identity that the provider will use to call ARM to manage the managed application resources. type: string - required: - - roleDefinitionId - - servicePrincipalId type: object type: array createUiDefinition: @@ -207,21 +203,100 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authorization: + description: One or more authorization block defined below. + items: + properties: + roleDefinitionId: + description: Specifies a role definition identifier for + the provider. This role will define all the permissions + that the provider must have on the managed application's + container resource group. This role definition cannot + have permission to delete the resource group. + type: string + servicePrincipalId: + description: Specifies a service principal identifier for + the provider. This is the identity that the provider will + use to call ARM to manage the managed application resources. + type: string + type: object + type: array + createUiDefinition: + description: Specifies the createUiDefinition JSON for the backing + template with Microsoft.Solutions/applications resource. + type: string + description: + description: Specifies the managed application definition description. + type: string + displayName: + description: Specifies the managed application definition display + name. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + lockLevel: + description: Specifies the managed application lock level. Valid + values include CanNotDelete, None, ReadOnly. Changing this forces + a new resource to be created. + type: string + mainTemplate: + description: Specifies the inline main template JSON which has + resources to be provisioned. + type: string + packageEnabled: + description: Is the package enabled? Defaults to true. + type: boolean + packageFileUri: + description: Specifies the managed application definition package + file Uri. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -395,11 +470,17 @@ spec: type: object x-kubernetes-validations: - message: displayName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.displayName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.displayName) + || has(self.initProvider.displayName)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: lockLevel is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.lockLevel) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.lockLevel) + || has(self.initProvider.lockLevel)' status: description: ManagedApplicationDefinitionStatus defines the observed state of ManagedApplicationDefinition. diff --git a/package/crds/spring.azure.upbound.io_cloudapplicationliveviews.yaml b/package/crds/spring.azure.upbound.io_cloudapplicationliveviews.yaml index 1cbeec8e8..340cd8545 100644 --- a/package/crds/spring.azure.upbound.io_cloudapplicationliveviews.yaml +++ b/package/crds/spring.azure.upbound.io_cloudapplicationliveviews.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: cloudapplicationliveviews.spring.azure.upbound.io spec: group: spring.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -149,21 +148,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/sql.azure.upbound.io_mssqldatabaseextendedauditingpolicies.yaml b/package/crds/sql.azure.upbound.io_mssqldatabaseextendedauditingpolicies.yaml index 8f296d2b1..5a4e42d5c 100644 --- a/package/crds/sql.azure.upbound.io_mssqldatabaseextendedauditingpolicies.yaml +++ b/package/crds/sql.azure.upbound.io_mssqldatabaseextendedauditingpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqldatabaseextendedauditingpolicies.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -257,21 +256,62 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Whether to enable the extended auditing policy. Possible + values are true and false. Defaults to true. + type: boolean + logMonitoringEnabled: + description: Enable audit events to Azure Monitor? Defaults to + true. + type: boolean + retentionInDays: + description: The number of days to retain logs for in the storage + account. Defaults to 0. + type: number + storageAccountAccessKeyIsSecondary: + description: Is storage_account_access_key value the storage's + secondary key? + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/sql.azure.upbound.io_mssqldatabases.yaml b/package/crds/sql.azure.upbound.io_mssqldatabases.yaml index b0b63e5e6..ebf582b54 100644 --- a/package/crds/sql.azure.upbound.io_mssqldatabases.yaml +++ b/package/crds/sql.azure.upbound.io_mssqldatabases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqldatabases.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -159,12 +158,8 @@ spec: description: Specifies the blob URI of the .bacpac file. type: string required: - - administratorLogin - administratorLoginPasswordSecretRef - - authenticationType - storageKeySecretRef - - storageKeyType - - storageUri type: object type: array ledgerEnabled: @@ -352,8 +347,6 @@ spec: description: Point In Time Restore configuration. Value has to be between 7 and 35. type: number - required: - - retentionDays type: object type: array skuName: @@ -440,21 +433,278 @@ spec: and Business Critical databases. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoPauseDelayInMinutes: + description: Time in minutes after which database is automatically + paused. A value of -1 means that automatic pause is disabled. + This property is only settable for General Purpose Serverless + databases. + type: number + collation: + description: Specifies the collation of the database. Changing + this forces a new resource to be created. + type: string + createMode: + description: The create mode of the database. Possible values + are Copy, Default, OnlineSecondary, PointInTimeRestore, Recovery, + Restore, RestoreExternalBackup, RestoreExternalBackupSecondary, + RestoreLongTermRetentionBackup and Secondary. Mutually exclusive + with import. Changing this forces a new resource to be created. + type: string + creationSourceDatabaseId: + description: The ID of the source database from which to create + the new database. This should only be used for databases with + create_mode values that use another database as reference. Changing + this forces a new resource to be created. + type: string + elasticPoolId: + description: Specifies the ID of the elastic pool containing this + database. + type: string + geoBackupEnabled: + description: A boolean that specifies if the Geo Backup Policy + is enabled. Defaults to true. + type: boolean + import: + description: A Database Import block as documented below. Mutually + exclusive with create_mode. + items: + properties: + administratorLogin: + description: Specifies the name of the SQL administrator. + type: string + authenticationType: + description: Specifies the type of authentication used to + access the server. Valid values are SQL or ADPassword. + type: string + storageAccountId: + description: The resource id for the storage account used + to store BACPAC file. If set, private endpoint connection + will be created for the storage account. Must match storage + account used for storage_uri parameter. + type: string + storageKeyType: + description: Specifies the type of access key for the storage + account. Valid values are StorageAccessKey or SharedAccessKey. + type: string + storageUri: + description: Specifies the blob URI of the .bacpac file. + type: string + type: object + type: array + ledgerEnabled: + description: A boolean that specifies if this is a ledger database. + Defaults to false. Changing this forces a new resource to be + created. + type: boolean + licenseType: + description: Specifies the license type applied to this database. + Possible values are LicenseIncluded and BasePrice. + type: string + longTermRetentionPolicy: + description: A long_term_retention_policy block as defined below. + items: + properties: + monthlyRetention: + description: The monthly retention policy for an LTR backup + in an ISO 8601 format. Valid value is between 1 to 120 + months. e.g. P1Y, P1M, P4W or P30D. + type: string + weekOfYear: + description: The week of year to take the yearly backup. + Value has to be between 1 and 52. + type: number + weeklyRetention: + description: The weekly retention policy for an LTR backup + in an ISO 8601 format. Valid value is between 1 to 520 + weeks. e.g. P1Y, P1M, P1W or P7D. + type: string + yearlyRetention: + description: The yearly retention policy for an LTR backup + in an ISO 8601 format. Valid value is between 1 to 10 + years. e.g. P1Y, P12M, P52W or P365D. + type: string + type: object + type: array + maintenanceConfigurationName: + description: The name of the Public Maintenance Configuration + window to apply to the database. Valid values include SQL_Default, + SQL_EastUS_DB_1, SQL_EastUS2_DB_1, SQL_SoutheastAsia_DB_1, SQL_AustraliaEast_DB_1, + SQL_NorthEurope_DB_1, SQL_SouthCentralUS_DB_1, SQL_WestUS2_DB_1, + SQL_UKSouth_DB_1, SQL_WestEurope_DB_1, SQL_EastUS_DB_2, SQL_EastUS2_DB_2, + SQL_WestUS2_DB_2, SQL_SoutheastAsia_DB_2, SQL_AustraliaEast_DB_2, + SQL_NorthEurope_DB_2, SQL_SouthCentralUS_DB_2, SQL_UKSouth_DB_2, + SQL_WestEurope_DB_2, SQL_AustraliaSoutheast_DB_1, SQL_BrazilSouth_DB_1, + SQL_CanadaCentral_DB_1, SQL_CanadaEast_DB_1, SQL_CentralUS_DB_1, + SQL_EastAsia_DB_1, SQL_FranceCentral_DB_1, SQL_GermanyWestCentral_DB_1, + SQL_CentralIndia_DB_1, SQL_SouthIndia_DB_1, SQL_JapanEast_DB_1, + SQL_JapanWest_DB_1, SQL_NorthCentralUS_DB_1, SQL_UKWest_DB_1, + SQL_WestUS_DB_1, SQL_AustraliaSoutheast_DB_2, SQL_BrazilSouth_DB_2, + SQL_CanadaCentral_DB_2, SQL_CanadaEast_DB_2, SQL_CentralUS_DB_2, + SQL_EastAsia_DB_2, SQL_FranceCentral_DB_2, SQL_GermanyWestCentral_DB_2, + SQL_CentralIndia_DB_2, SQL_SouthIndia_DB_2, SQL_JapanEast_DB_2, + SQL_JapanWest_DB_2, SQL_NorthCentralUS_DB_2, SQL_UKWest_DB_2, + SQL_WestUS_DB_2, SQL_WestCentralUS_DB_1, SQL_FranceSouth_DB_1, + SQL_WestCentralUS_DB_2, SQL_FranceSouth_DB_2, SQL_SwitzerlandNorth_DB_1, + SQL_SwitzerlandNorth_DB_2, SQL_BrazilSoutheast_DB_1, SQL_UAENorth_DB_1, + SQL_BrazilSoutheast_DB_2, SQL_UAENorth_DB_2. Defaults to SQL_Default. + type: string + maxSizeGb: + description: The max size of the database in gigabytes. + type: number + minCapacity: + description: Minimal capacity that database will always have allocated, + if not paused. This property is only settable for General Purpose + Serverless databases. + type: number + readReplicaCount: + description: The number of readonly secondary replicas associated + with the database to which readonly application intent connections + may be routed. This property is only settable for Hyperscale + edition databases. + type: number + readScale: + description: If enabled, connections that have application intent + set to readonly in their connection string may be routed to + a readonly secondary replica. This property is only settable + for Premium and Business Critical databases. + type: boolean + recoverDatabaseId: + description: The ID of the database to be recovered. This property + is only applicable when the create_mode is Recovery. + type: string + restoreDroppedDatabaseId: + description: The ID of the database to be restored. This property + is only applicable when the create_mode is Restore. + type: string + restorePointInTime: + description: Specifies the point in time (ISO8601 format) of the + source database that will be restored to create the new database. + This property is only settable for create_mode= PointInTimeRestore + databases. + type: string + sampleName: + description: Specifies the name of the sample schema to apply + when creating this database. Possible value is AdventureWorksLT. + type: string + shortTermRetentionPolicy: + description: A short_term_retention_policy block as defined below. + items: + properties: + backupIntervalInHours: + description: The hours between each differential backup. + This is only applicable to live databases but not dropped + databases. Value has to be 12 or 24. Defaults to 12 hours. + type: number + retentionDays: + description: Point In Time Restore configuration. Value + has to be between 7 and 35. + type: number + type: object + type: array + skuName: + description: Specifies the name of the SKU used by the database. + For example, GP_S_Gen5_2,HS_Gen4_1,BC_Gen5_2, ElasticPool, Basic,S0, + P2 ,DW100c, DS100. Changing this from the HyperScale service + tier to another service tier will create a new resource. + type: string + storageAccountType: + description: Specifies the storage account type used to store + backups for this database. Possible values are Geo, Local and + Zone. The default value is Geo. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + threatDetectionPolicy: + description: Threat detection policy configuration. The threat_detection_policy + block supports fields documented below. + items: + properties: + disabledAlerts: + description: Specifies a list of alerts which should be + disabled. Possible values include Access_Anomaly, Sql_Injection + and Sql_Injection_Vulnerability. + items: + type: string + type: array + emailAccountAdmins: + description: Should the account administrators be emailed + when this alert is triggered? Possible values are Disabled + and Enabled. + type: string + emailAddresses: + description: A list of email addresses which alerts should + be sent to. + items: + type: string + type: array + retentionDays: + description: Specifies the number of days to keep in the + Threat Detection audit logs. + type: number + state: + description: The State of the Policy. Possible values are + Enabled, Disabled or New. + type: string + storageEndpoint: + description: Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). + This blob storage will hold all Threat Detection audit + logs. Required if state is Enabled. + type: string + type: object + type: array + transparentDataEncryptionEnabled: + description: If set to true, Transparent Data Encryption will + be enabled on the database. Defaults to true. + type: boolean + zoneRedundant: + description: Whether or not this database is zone redundant, which + means the replicas of this database will be spread across multiple + availability zones. This property is only settable for Premium + and Business Critical databases. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/sql.azure.upbound.io_mssqldatabasevulnerabilityassessmentrulebaselines.yaml b/package/crds/sql.azure.upbound.io_mssqldatabasevulnerabilityassessmentrulebaselines.yaml index 0b8292ada..b8b3ed2f5 100644 --- a/package/crds/sql.azure.upbound.io_mssqldatabasevulnerabilityassessmentrulebaselines.yaml +++ b/package/crds/sql.azure.upbound.io_mssqldatabasevulnerabilityassessmentrulebaselines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqldatabasevulnerabilityassessmentrulebaselines.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -86,8 +85,6 @@ spec: items: type: string type: array - required: - - result type: object type: array databaseName: @@ -251,21 +248,68 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + baselineName: + description: The name of the vulnerability assessment rule baseline. + Valid options are default and master. default implies a baseline + on a database level rule and master for server level rule. Defaults + to default. Changing this forces a new resource to be created. + type: string + baselineResult: + description: A baseline_result block as documented below. Multiple + blocks can be defined. + items: + properties: + result: + description: A list representing a result of the baseline. + items: + type: string + type: array + type: object + type: array + ruleId: + description: The vulnerability assessment rule ID. Changing this + forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -439,9 +483,13 @@ spec: type: object x-kubernetes-validations: - message: baselineResult is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.baselineResult) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.baselineResult) + || has(self.initProvider.baselineResult)' - message: ruleId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.ruleId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.ruleId) + || has(self.initProvider.ruleId)' status: description: MSSQLDatabaseVulnerabilityAssessmentRuleBaselineStatus defines the observed state of MSSQLDatabaseVulnerabilityAssessmentRuleBaseline. diff --git a/package/crds/sql.azure.upbound.io_mssqlelasticpools.yaml b/package/crds/sql.azure.upbound.io_mssqlelasticpools.yaml index 29c67cd79..ef173948e 100644 --- a/package/crds/sql.azure.upbound.io_mssqlelasticpools.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlelasticpools.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlelasticpools.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -117,9 +116,6 @@ spec: minCapacity: description: The minimum capacity all databases are guaranteed. type: number - required: - - maxCapacity - - minCapacity type: object type: array resourceGroupName: @@ -307,10 +303,6 @@ spec: or Premium. For more information see the documentation for your Elasticpool configuration: vCore-based or DTU-based.' type: string - required: - - capacity - - name - - tier type: object type: array tags: @@ -324,21 +316,136 @@ spec: vCore based sku. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + licenseType: + description: Specifies the license type applied to this database. + Possible values are LicenseIncluded and BasePrice. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + maintenanceConfigurationName: + description: The name of the Public Maintenance Configuration + window to apply to the elastic pool. Valid values include SQL_Default, + SQL_EastUS_DB_1, SQL_EastUS2_DB_1, SQL_SoutheastAsia_DB_1, SQL_AustraliaEast_DB_1, + SQL_NorthEurope_DB_1, SQL_SouthCentralUS_DB_1, SQL_WestUS2_DB_1, + SQL_UKSouth_DB_1, SQL_WestEurope_DB_1, SQL_EastUS_DB_2, SQL_EastUS2_DB_2, + SQL_WestUS2_DB_2, SQL_SoutheastAsia_DB_2, SQL_AustraliaEast_DB_2, + SQL_NorthEurope_DB_2, SQL_SouthCentralUS_DB_2, SQL_UKSouth_DB_2, + SQL_WestEurope_DB_2, SQL_AustraliaSoutheast_DB_1, SQL_BrazilSouth_DB_1, + SQL_CanadaCentral_DB_1, SQL_CanadaEast_DB_1, SQL_CentralUS_DB_1, + SQL_EastAsia_DB_1, SQL_FranceCentral_DB_1, SQL_GermanyWestCentral_DB_1, + SQL_CentralIndia_DB_1, SQL_SouthIndia_DB_1, SQL_JapanEast_DB_1, + SQL_JapanWest_DB_1, SQL_NorthCentralUS_DB_1, SQL_UKWest_DB_1, + SQL_WestUS_DB_1, SQL_AustraliaSoutheast_DB_2, SQL_BrazilSouth_DB_2, + SQL_CanadaCentral_DB_2, SQL_CanadaEast_DB_2, SQL_CentralUS_DB_2, + SQL_EastAsia_DB_2, SQL_FranceCentral_DB_2, SQL_GermanyWestCentral_DB_2, + SQL_CentralIndia_DB_2, SQL_SouthIndia_DB_2, SQL_JapanEast_DB_2, + SQL_JapanWest_DB_2, SQL_NorthCentralUS_DB_2, SQL_UKWest_DB_2, + SQL_WestUS_DB_2, SQL_WestCentralUS_DB_1, SQL_FranceSouth_DB_1, + SQL_WestCentralUS_DB_2, SQL_FranceSouth_DB_2, SQL_SwitzerlandNorth_DB_1, + SQL_SwitzerlandNorth_DB_2, SQL_BrazilSoutheast_DB_1, SQL_UAENorth_DB_1, + SQL_BrazilSoutheast_DB_2, SQL_UAENorth_DB_2. Defaults to SQL_Default. + type: string + maxSizeBytes: + description: The max data size of the elastic pool in bytes. Conflicts + with max_size_gb. + type: number + maxSizeGb: + description: The max data size of the elastic pool in gigabytes. + Conflicts with max_size_bytes. + type: number + perDatabaseSettings: + description: A per_database_settings block as defined below. + items: + properties: + maxCapacity: + description: The maximum capacity any one database can consume. + type: number + minCapacity: + description: The minimum capacity all databases are guaranteed. + type: number + type: object + type: array + sku: + description: A sku block as defined below. + items: + properties: + capacity: + description: 'The scale up/out capacity, representing server''s + compute units. For more information see the documentation + for your Elasticpool configuration: vCore-based or DTU-based.' + type: number + family: + description: The family of hardware Gen4, Gen5, Fsv2 or + DC. + type: string + name: + description: Specifies the SKU Name for this Elasticpool. + The name of the SKU, will be either vCore based tier + + family pattern (e.g. GP_Gen4, BC_Gen5) or the DTU based + BasicPool, StandardPool, or PremiumPool pattern. Possible + values are BasicPool, StandardPool, PremiumPool, GP_Gen4, + GP_Gen5, GP_Fsv2, GP_DC, BC_Gen4, BC_Gen5 and BC_DC. + type: string + tier: + description: 'The tier of the particular SKU. Possible values + are GeneralPurpose, BusinessCritical, Basic, Standard, + or Premium. For more information see the documentation + for your Elasticpool configuration: vCore-based or DTU-based.' + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zoneRedundant: + description: Whether or not this elastic pool is zone redundant. + tier needs to be Premium for DTU based or BusinessCritical for + vCore based sku. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -512,11 +619,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: perDatabaseSettings is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.perDatabaseSettings) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.perDatabaseSettings) + || has(self.initProvider.perDatabaseSettings)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: MSSQLElasticPoolStatus defines the observed state of MSSQLElasticPool. properties: diff --git a/package/crds/sql.azure.upbound.io_mssqlfailovergroups.yaml b/package/crds/sql.azure.upbound.io_mssqlfailovergroups.yaml index f16bbdb54..d634c8b4c 100644 --- a/package/crds/sql.azure.upbound.io_mssqlfailovergroups.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlfailovergroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlfailovergroups.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -252,8 +251,6 @@ spec: for the failover group. Possible values are Automatic or Manual. type: string - required: - - mode type: object type: array readonlyEndpointFailoverPolicyEnabled: @@ -344,21 +341,77 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + partnerServer: + description: A partner_server block as defined below. + items: + type: object + type: array + readWriteEndpointFailoverPolicy: + description: A read_write_endpoint_failover_policy block as defined + below. + items: + properties: + graceMinutes: + description: The grace period in minutes, before failover + with data loss is attempted for the read-write endpoint. + Required when mode is Automatic. + type: number + mode: + description: The failover policy of the read-write endpoint + for the failover group. Possible values are Automatic + or Manual. + type: string + type: object + type: array + readonlyEndpointFailoverPolicyEnabled: + description: Whether failover is enabled for the readonly endpoint. + Defaults to false. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -532,9 +585,13 @@ spec: type: object x-kubernetes-validations: - message: partnerServer is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partnerServer) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.partnerServer) + || has(self.initProvider.partnerServer)' - message: readWriteEndpointFailoverPolicy is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.readWriteEndpointFailoverPolicy) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.readWriteEndpointFailoverPolicy) + || has(self.initProvider.readWriteEndpointFailoverPolicy)' status: description: MSSQLFailoverGroupStatus defines the observed state of MSSQLFailoverGroup. properties: diff --git a/package/crds/sql.azure.upbound.io_mssqlfirewallrules.yaml b/package/crds/sql.azure.upbound.io_mssqlfirewallrules.yaml index 328802805..8c39d4209 100644 --- a/package/crds/sql.azure.upbound.io_mssqlfirewallrules.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlfirewallrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlfirewallrules.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -155,21 +154,54 @@ spec: for this rule. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endIpAddress: + description: The ending IP address to allow through the firewall + for this rule. + type: string + startIpAddress: + description: The starting IP address to allow through the firewall + for this rule. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -343,9 +375,13 @@ spec: type: object x-kubernetes-validations: - message: endIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endIpAddress) + || has(self.initProvider.endIpAddress)' - message: startIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.startIpAddress) + || has(self.initProvider.startIpAddress)' status: description: MSSQLFirewallRuleStatus defines the observed state of MSSQLFirewallRule. properties: diff --git a/package/crds/sql.azure.upbound.io_mssqljobagents.yaml b/package/crds/sql.azure.upbound.io_mssqljobagents.yaml index 90daef483..ae790015a 100644 --- a/package/crds/sql.azure.upbound.io_mssqljobagents.yaml +++ b/package/crds/sql.azure.upbound.io_mssqljobagents.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqljobagents.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -161,21 +160,60 @@ spec: Database. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Elastic Job Agent should + exist. Changing this forces a new Elastic Job Agent to be created. + type: string + name: + description: The name which should be used for this Elastic Job + Agent. Changing this forces a new Elastic Job Agent to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Database. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -349,9 +387,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: MSSQLJobAgentStatus defines the observed state of MSSQLJobAgent. properties: diff --git a/package/crds/sql.azure.upbound.io_mssqljobcredentials.yaml b/package/crds/sql.azure.upbound.io_mssqljobcredentials.yaml index d2249c995..4089e9aba 100644 --- a/package/crds/sql.azure.upbound.io_mssqljobcredentials.yaml +++ b/package/crds/sql.azure.upbound.io_mssqljobcredentials.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqljobcredentials.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -166,21 +165,49 @@ spec: description: The username part of the credential. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + username: + description: The username part of the credential. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -354,9 +381,12 @@ spec: type: object x-kubernetes-validations: - message: passwordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)' - message: username is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.username) + || has(self.initProvider.username)' status: description: MSSQLJobCredentialStatus defines the observed state of MSSQLJobCredential. properties: diff --git a/package/crds/sql.azure.upbound.io_mssqlmanageddatabases.yaml b/package/crds/sql.azure.upbound.io_mssqlmanageddatabases.yaml index 861896a1d..94926f07c 100644 --- a/package/crds/sql.azure.upbound.io_mssqlmanageddatabases.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlmanageddatabases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlmanageddatabases.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -176,21 +175,75 @@ spec: many days Point-in-Time Restore will be supported. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + longTermRetentionPolicy: + description: A long_term_retention_policy block as defined below. + items: + properties: + monthlyRetention: + description: The monthly retention policy for an LTR backup + in an ISO 8601 format. Valid value is between 1 to 120 + months. e.g. P1Y, P1M, P4W or P30D. + type: string + weekOfYear: + description: The week of year to take the yearly backup. + Value has to be between 1 and 52. + type: number + weeklyRetention: + description: The weekly retention policy for an LTR backup + in an ISO 8601 format. Valid value is between 1 to 520 + weeks. e.g. P1Y, P1M, P1W or P7D. + type: string + yearlyRetention: + description: The yearly retention policy for an LTR backup + in an ISO 8601 format. Valid value is between 1 to 10 + years. e.g. P1Y, P12M, P52W or P365D. + type: string + type: object + type: array + shortTermRetentionDays: + description: The backup retention period in days. This is how + many days Point-in-Time Restore will be supported. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/sql.azure.upbound.io_mssqlmanagedinstanceactivedirectoryadministrators.yaml b/package/crds/sql.azure.upbound.io_mssqlmanagedinstanceactivedirectoryadministrators.yaml index 696533697..182307add 100644 --- a/package/crds/sql.azure.upbound.io_mssqlmanagedinstanceactivedirectoryadministrators.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlmanagedinstanceactivedirectoryadministrators.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlmanagedinstanceactivedirectoryadministrators.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -164,21 +163,61 @@ spec: description: The Azure Active Directory Tenant ID. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + azureadAuthenticationOnly: + description: When true, only permit logins from AAD users and + administrators. When false, also allow local database users. + type: boolean + loginUsername: + description: The login name of the principal to set as the Managed + Instance Administrator. + type: string + objectId: + description: The Object ID of the principal to set as the Managed + Instance Administrator. + type: string + tenantId: + description: The Azure Active Directory Tenant ID. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -352,11 +391,17 @@ spec: type: object x-kubernetes-validations: - message: loginUsername is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.loginUsername) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.loginUsername) + || has(self.initProvider.loginUsername)' - message: objectId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.objectId) + || has(self.initProvider.objectId)' - message: tenantId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tenantId) + || has(self.initProvider.tenantId)' status: description: MSSQLManagedInstanceActiveDirectoryAdministratorStatus defines the observed state of MSSQLManagedInstanceActiveDirectoryAdministrator. diff --git a/package/crds/sql.azure.upbound.io_mssqlmanagedinstancefailovergroups.yaml b/package/crds/sql.azure.upbound.io_mssqlmanagedinstancefailovergroups.yaml index 1fe876037..cfb274aa4 100644 --- a/package/crds/sql.azure.upbound.io_mssqlmanagedinstancefailovergroups.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlmanagedinstancefailovergroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlmanagedinstancefailovergroups.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -243,8 +242,6 @@ spec: description: The failover mode. Possible values are Automatic or Manual. type: string - required: - - mode type: object type: array readonlyEndpointFailoverPolicyEnabled: @@ -254,21 +251,65 @@ spec: required: - location type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + readWriteEndpointFailoverPolicy: + description: A read_write_endpoint_failover_policy block as defined + below. + items: + properties: + graceMinutes: + description: Applies only if mode is Automatic. The grace + period in minutes before failover with data loss is attempted. + type: number + mode: + description: The failover mode. Possible values are Automatic + or Manual. + type: string + type: object + type: array + readonlyEndpointFailoverPolicyEnabled: + description: Failover policy for the read-only endpoint. Defaults + to true. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -442,7 +483,9 @@ spec: type: object x-kubernetes-validations: - message: readWriteEndpointFailoverPolicy is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.readWriteEndpointFailoverPolicy) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.readWriteEndpointFailoverPolicy) + || has(self.initProvider.readWriteEndpointFailoverPolicy)' status: description: MSSQLManagedInstanceFailoverGroupStatus defines the observed state of MSSQLManagedInstanceFailoverGroup. diff --git a/package/crds/sql.azure.upbound.io_mssqlmanagedinstances.yaml b/package/crds/sql.azure.upbound.io_mssqlmanagedinstances.yaml index 5f7f45b9f..bd81dd89c 100644 --- a/package/crds/sql.azure.upbound.io_mssqlmanagedinstances.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlmanagedinstances.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlmanagedinstances.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -189,8 +188,6 @@ spec: that should be configured on this SQL Managed Instance. Possible values are SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array licenseType: @@ -409,21 +406,130 @@ spec: or 4, 8, 16, 24, 32, 40, 64, or 80 for Gen5 SKUs. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + administratorLogin: + description: The administrator login name for the new SQL Managed + Instance. Changing this forces a new resource to be created. + type: string + collation: + description: Specifies how the SQL Managed Instance will be collated. + Default value is SQL_Latin1_General_CP1_CI_AS. Changing this + forces a new resource to be created. + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this SQL Managed Instance. Required + when type is set to UserAssigned. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this SQL Managed Instance. + Possible values are SystemAssigned, UserAssigned. + type: string + type: object + type: array + licenseType: + description: What type of license the Managed Instance will use. + Possible values are LicenseIncluded and BasePrice. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + maintenanceConfigurationName: + description: The name of the Public Maintenance Configuration + window to apply to the SQL Managed Instance. Valid values include + SQL_Default or an Azure Location in the format SQL_{Location}_MI_{Size}(for + example SQL_EastUS_MI_1). Defaults to SQL_Default. + type: string + minimumTlsVersion: + description: The Minimum TLS Version. Default value is 1.2 Valid + values include 1.0, 1.1, 1.2. + type: string + proxyOverride: + description: Specifies how the SQL Managed Instance will be accessed. + Default value is Default. Valid values include Default, Proxy, + and Redirect. + type: string + publicDataEndpointEnabled: + description: Is the public data endpoint enabled? Default value + is false. + type: boolean + skuName: + description: Specifies the SKU Name for the SQL Managed Instance. + Valid values include GP_Gen4, GP_Gen5, GP_Gen8IM, GP_Gen8IH, + BC_Gen4, BC_Gen5, BC_Gen8IM or BC_Gen8IH. + type: string + storageAccountType: + description: Specifies the storage account type used to store + backups for this database. Changing this forces a new resource + to be created. Possible values are GRS, LRS and ZRS. The default + value is GRS. + type: string + storageSizeInGb: + description: Maximum storage space for the SQL Managed instance. + This should be a multiple of 32 (GB). + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + timezoneId: + description: The TimeZone ID that the SQL Managed Instance will + be operating in. Default value is UTC. Changing this forces + a new resource to be created. + type: string + vcores: + description: Number of cores that should be assigned to the SQL + Managed Instance. Values can be 8, 16, or 24 for Gen4 SKUs, + or 4, 8, 16, 24, 32, 40, 64, or 80 for Gen5 SKUs. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -597,19 +703,32 @@ spec: type: object x-kubernetes-validations: - message: administratorLogin is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.administratorLogin) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.administratorLogin) + || has(self.initProvider.administratorLogin)' - message: administratorLoginPasswordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.administratorLoginPasswordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.administratorLoginPasswordSecretRef)' - message: licenseType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.licenseType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.licenseType) + || has(self.initProvider.licenseType)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' - message: storageSizeInGb is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageSizeInGb) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageSizeInGb) + || has(self.initProvider.storageSizeInGb)' - message: vcores is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.vcores) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.vcores) + || has(self.initProvider.vcores)' status: description: MSSQLManagedInstanceStatus defines the observed state of MSSQLManagedInstance. diff --git a/package/crds/sql.azure.upbound.io_mssqlmanagedinstancevulnerabilityassessments.yaml b/package/crds/sql.azure.upbound.io_mssqlmanagedinstancevulnerabilityassessments.yaml index 7cdabb477..f43135110 100644 --- a/package/crds/sql.azure.upbound.io_mssqlmanagedinstancevulnerabilityassessments.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlmanagedinstancevulnerabilityassessments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlmanagedinstancevulnerabilityassessments.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -213,21 +212,72 @@ spec: - namespace type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + recurringScans: + description: The recurring scans settings. The recurring_scans + block supports fields documented below. + items: + properties: + emailSubscriptionAdmins: + description: Boolean flag which specifies if the schedule + scan notification will be sent to the subscription administrators. + Defaults to true. + type: boolean + emails: + description: Specifies an array of e-mail addresses to which + the scan notification is sent. + items: + type: string + type: array + enabled: + description: Boolean flag which specifies if recurring scans + is enabled or disabled. Defaults to false. + type: boolean + type: object + type: array + storageContainerPath: + description: A blob storage container path to hold the scan results + (e.g. https://myStorage.blob.core.windows.net/VaScans/). + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -401,7 +451,9 @@ spec: type: object x-kubernetes-validations: - message: storageContainerPath is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageContainerPath) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageContainerPath) + || has(self.initProvider.storageContainerPath)' status: description: MSSQLManagedInstanceVulnerabilityAssessmentStatus defines the observed state of MSSQLManagedInstanceVulnerabilityAssessment. diff --git a/package/crds/sql.azure.upbound.io_mssqloutboundfirewallrules.yaml b/package/crds/sql.azure.upbound.io_mssqloutboundfirewallrules.yaml index 974669839..30d6d1e67 100644 --- a/package/crds/sql.azure.upbound.io_mssqloutboundfirewallrules.yaml +++ b/package/crds/sql.azure.upbound.io_mssqloutboundfirewallrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqloutboundfirewallrules.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -148,21 +147,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/sql.azure.upbound.io_mssqlserverdnsaliases.yaml b/package/crds/sql.azure.upbound.io_mssqlserverdnsaliases.yaml index df74075ea..d5f9b44b7 100644 --- a/package/crds/sql.azure.upbound.io_mssqlserverdnsaliases.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlserverdnsaliases.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlserverdnsaliases.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -146,21 +145,45 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/sql.azure.upbound.io_mssqlservermicrosoftsupportauditingpolicies.yaml b/package/crds/sql.azure.upbound.io_mssqlservermicrosoftsupportauditingpolicies.yaml index a2d2ba446..33e4aea20 100644 --- a/package/crds/sql.azure.upbound.io_mssqlservermicrosoftsupportauditingpolicies.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlservermicrosoftsupportauditingpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlservermicrosoftsupportauditingpolicies.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -60,7 +59,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -269,21 +268,55 @@ spec: - namespace type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + enabled: + description: Whether to enable the extended auditing policy. Possible + values are true and false. Defaults to true. + type: boolean + logMonitoringEnabled: + description: Enable audit events to Azure Monitor? To enable server + audit events to Azure Monitor, please enable its main database + audit events to Azure Monitor. Defaults to true. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/sql.azure.upbound.io_mssqlservers.yaml b/package/crds/sql.azure.upbound.io_mssqlservers.yaml index c0b5d689a..e78871e6f 100644 --- a/package/crds/sql.azure.upbound.io_mssqlservers.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlservers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlservers.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -295,8 +294,6 @@ spec: that should be configured on this SQL Server. Possible values are SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array location: @@ -564,21 +561,118 @@ spec: forces a new resource to be created.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + administratorLogin: + description: The administrator login name for the new server. + Required unless azuread_authentication_only in the azuread_administrator + block is true. When omitted, Azure will generate a default username + which cannot be subsequently changed. Changing this forces a + new resource to be created. + type: string + azureadAdministrator: + description: An azuread_administrator block as defined below. + items: + properties: + azureadAuthenticationOnly: + description: Specifies whether only AD Users and administrators + (e.g. azuread_administrator.0.login_username) can be used + to login, or also local database users (e.g. administrator_login). + When true, the administrator_login and administrator_login_password + properties can be omitted. + type: boolean + tenantId: + description: The tenant id of the Azure AD Administrator + of this SQL Server. + type: string + type: object + type: array + connectionPolicy: + description: The connection policy the server will use. Possible + values are Default, Proxy, and Redirect. Defaults to Default. + type: string + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this SQL Server. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this SQL Server. Possible + values are SystemAssigned, UserAssigned. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + minimumTlsVersion: + description: 'The Minimum TLS Version for all SQL Database and + SQL Data Warehouse databases associated with the server. Valid + values are: 1.0, 1.1 , 1.2 and Disabled. Defaults to 1.2.' + type: string + outboundNetworkRestrictionEnabled: + description: Whether outbound network traffic is restricted for + this server. Defaults to false. + type: boolean + publicNetworkAccessEnabled: + description: Whether public network access is allowed for this + server. Defaults to true. + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + version: + description: 'The version for the new server. Valid values are: + 2.0 (for v11 server) and 12.0 (for v12 server). Changing this + forces a new resource to be created.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -752,9 +846,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: version is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.version) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.version) + || has(self.initProvider.version)' status: description: MSSQLServerStatus defines the observed state of MSSQLServer. properties: diff --git a/package/crds/sql.azure.upbound.io_mssqlserversecurityalertpolicies.yaml b/package/crds/sql.azure.upbound.io_mssqlserversecurityalertpolicies.yaml index a7d542647..177385fe4 100644 --- a/package/crds/sql.azure.upbound.io_mssqlserversecurityalertpolicies.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlserversecurityalertpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlserversecurityalertpolicies.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -349,21 +348,73 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + disabledAlerts: + description: 'Specifies an array of alerts that are disabled. + Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly, Data_Exfiltration, Unsafe_Action.' + items: + type: string + type: array + emailAccountAdmins: + description: Boolean flag which specifies if the alert is sent + to the account administrators or not. Defaults to false. + type: boolean + emailAddresses: + description: Specifies an array of email addresses to which the + alert is sent. + items: + type: string + type: array + retentionDays: + description: Specifies the number of days to keep in the Threat + Detection audit logs. Defaults to 0. + type: number + state: + description: Specifies the state of the policy, whether it is + enabled or disabled or a policy has not been applied yet on + the specific database server. Possible values are Disabled, + Enabled and New. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -537,7 +588,9 @@ spec: type: object x-kubernetes-validations: - message: state is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.state) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.state) + || has(self.initProvider.state)' status: description: MSSQLServerSecurityAlertPolicyStatus defines the observed state of MSSQLServerSecurityAlertPolicy. diff --git a/package/crds/sql.azure.upbound.io_mssqlservertransparentdataencryptions.yaml b/package/crds/sql.azure.upbound.io_mssqlservertransparentdataencryptions.yaml index b521ecd61..1fe825b09 100644 --- a/package/crds/sql.azure.upbound.io_mssqlservertransparentdataencryptions.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlservertransparentdataencryptions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlservertransparentdataencryptions.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -232,21 +231,53 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoRotationEnabled: + description: When enabled, the server will continuously check + the key vault for any new versions of the key being used as + the TDE protector. If a new version of the key is detected, + the TDE protector on the server will be automatically rotated + to the latest key version within 60 minutes. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/sql.azure.upbound.io_mssqlservervulnerabilityassessments.yaml b/package/crds/sql.azure.upbound.io_mssqlservervulnerabilityassessments.yaml index e760e1a5f..23b92d264 100644 --- a/package/crds/sql.azure.upbound.io_mssqlservervulnerabilityassessments.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlservervulnerabilityassessments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlservervulnerabilityassessments.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -214,21 +213,72 @@ spec: - namespace type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + recurringScans: + description: The recurring scans settings. The recurring_scans + block supports fields documented below. + items: + properties: + emailSubscriptionAdmins: + description: Boolean flag which specifies if the schedule + scan notification will be sent to the subscription administrators. + Defaults to false. + type: boolean + emails: + description: Specifies an array of email addresses to which + the scan notification is sent. + items: + type: string + type: array + enabled: + description: Boolean flag which specifies if recurring scans + is enabled or disabled. Defaults to false. + type: boolean + type: object + type: array + storageContainerPath: + description: A blob storage container path to hold the scan results + (e.g. https://example.blob.core.windows.net/VaScans/). + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -402,7 +452,9 @@ spec: type: object x-kubernetes-validations: - message: storageContainerPath is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageContainerPath) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageContainerPath) + || has(self.initProvider.storageContainerPath)' status: description: MSSQLServerVulnerabilityAssessmentStatus defines the observed state of MSSQLServerVulnerabilityAssessment. diff --git a/package/crds/sql.azure.upbound.io_mssqlvirtualnetworkrules.yaml b/package/crds/sql.azure.upbound.io_mssqlvirtualnetworkrules.yaml index 1369a8186..b3fa15541 100644 --- a/package/crds/sql.azure.upbound.io_mssqlvirtualnetworkrules.yaml +++ b/package/crds/sql.azure.upbound.io_mssqlvirtualnetworkrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: mssqlvirtualnetworkrules.sql.azure.upbound.io spec: group: sql.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -230,21 +229,51 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + ignoreMissingVnetServiceEndpoint: + description: Create the virtual network rule before the subnet + has the virtual network service endpoint enabled. Defaults to + false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/storage.azure.upbound.io_accountlocalusers.yaml b/package/crds/storage.azure.upbound.io_accountlocalusers.yaml index 039fb34af..c152f3f54 100644 --- a/package/crds/storage.azure.upbound.io_accountlocalusers.yaml +++ b/package/crds/storage.azure.upbound.io_accountlocalusers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accountlocalusers.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -188,9 +187,6 @@ spec: description: The storage service used by this Storage Account Local User. Possible values are blob and file. type: string - required: - - permissions - - service type: object type: array sshAuthorizedKey: @@ -205,8 +201,6 @@ spec: description: The public key value of this SSH authorized key. type: string - required: - - key type: object type: array sshKeyEnabled: @@ -296,21 +290,107 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + homeDirectory: + description: The home directory of the Storage Account Local User. + type: string + permissionScope: + description: One or more permission_scope blocks as defined below. + items: + properties: + permissions: + description: A permissions block as defined below. + items: + properties: + create: + description: (Defaults to 30 minutes) Used when creating + the Storage Account Local User. + type: boolean + delete: + description: (Defaults to 30 minutes) Used when deleting + the Storage Account Local User. + type: boolean + list: + description: Specifies if the Local User has the list + permission for this scope. Defaults to false. + type: boolean + read: + description: (Defaults to 5 minutes) Used when retrieving + the Storage Account Local User. + type: boolean + write: + description: Specifies if the Local User has the write + permission for this scope. Defaults to false. + type: boolean + type: object + type: array + service: + description: The storage service used by this Storage Account + Local User. Possible values are blob and file. + type: string + type: object + type: array + sshAuthorizedKey: + description: One or more ssh_authorized_key blocks as defined + below. + items: + properties: + description: + description: The description of this SSH authorized key. + type: string + key: + description: The public key value of this SSH authorized + key. + type: string + type: object + type: array + sshKeyEnabled: + description: Specifies whether SSH Key Authentication is enabled. + Defaults to false. + type: boolean + sshPasswordEnabled: + description: Specifies whether SSH Password Authentication is + enabled. Defaults to false. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/storage.azure.upbound.io_accountnetworkrules.yaml b/package/crds/storage.azure.upbound.io_accountnetworkrules.yaml index 5453708a0..9ce394b25 100644 --- a/package/crds/storage.azure.upbound.io_accountnetworkrules.yaml +++ b/package/crds/storage.azure.upbound.io_accountnetworkrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accountnetworkrules.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -100,8 +99,6 @@ spec: access rule to be granted access. Defaults to the current tenant id. type: string - required: - - endpointResourceId type: object type: array storageAccountId: @@ -188,21 +185,86 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + bypass: + description: Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. + Valid options are any combination of Logging, Metrics, AzureServices, + or None. + items: + type: string + type: array + defaultAction: + description: Specifies the default action of allow or deny when + no other rules match. Valid options are Deny or Allow. + type: string + ipRules: + description: List of public IP or IP ranges in CIDR Format. Only + IPv4 addresses are allowed. Private IP address ranges (as defined + in RFC 1918) are not allowed. + items: + type: string + type: array + privateLinkAccess: + description: One or More private_link_access block as defined + below. + items: + properties: + endpointResourceId: + description: The resource id of the resource access rule + to be granted access. + type: string + endpointTenantId: + description: The tenant id of the resource of the resource + access rule to be granted access. Defaults to the current + tenant id. + type: string + type: object + type: array + virtualNetworkSubnetIds: + description: A list of virtual network subnet ids to secure the + storage account. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -376,7 +438,9 @@ spec: type: object x-kubernetes-validations: - message: defaultAction is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.defaultAction) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.defaultAction) + || has(self.initProvider.defaultAction)' status: description: AccountNetworkRulesStatus defines the observed state of AccountNetworkRules. properties: diff --git a/package/crds/storage.azure.upbound.io_accounts.yaml b/package/crds/storage.azure.upbound.io_accounts.yaml index 502b8a66c..ae82e3364 100644 --- a/package/crds/storage.azure.upbound.io_accounts.yaml +++ b/package/crds/storage.azure.upbound.io_accounts.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: accounts.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -126,21 +125,12 @@ spec: description: Specifies the security identifier (SID) for Azure Storage. type: string - required: - - domainGuid - - domainName - - domainSid - - forestName - - netbiosDomainName - - storageSid type: object type: array directoryType: description: Specifies the directory service used. Possible values are AADDS, AD and AADKERB. type: string - required: - - directoryType type: object type: array blobProperties: @@ -204,12 +194,6 @@ spec: description: The number of seconds the client should cache a preflight response. type: number - required: - - allowedHeaders - - allowedMethods - - allowedOrigins - - exposedHeaders - - maxAgeInSeconds type: object type: array defaultServiceVersion: @@ -244,8 +228,6 @@ spec: azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. type: number - required: - - days type: object type: array versioningEnabled: @@ -269,8 +251,6 @@ spec: description: Should the Custom Domain Name be validated by using indirect CNAME validation? type: boolean - required: - - name type: object type: array customerManagedKey: @@ -284,9 +264,6 @@ spec: userAssignedIdentityId: description: The ID of a user assigned identity. type: string - required: - - keyVaultKeyId - - userAssignedIdentityId type: object type: array defaultToOauthAuthentication: @@ -319,8 +296,6 @@ spec: values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array immutabilityPolicy: @@ -349,10 +324,6 @@ spec: a policy in an Unlocked state can transition to a Locked state which cannot be reverted. type: string - required: - - allowProtectedAppendWrites - - periodSinceCreationInDays - - state type: object type: array infrastructureEncryptionEnabled: @@ -413,8 +384,6 @@ spec: resource access rule to be granted access. Defaults to the current tenant id. type: string - required: - - endpointResourceId type: object type: array virtualNetworkSubnetIds: @@ -422,8 +391,6 @@ spec: items: type: string type: array - required: - - defaultAction type: object type: array nfsv3Enabled: @@ -477,12 +444,6 @@ spec: description: The number of seconds the client should cache a preflight response. type: number - required: - - allowedHeaders - - allowedMethods - - allowedOrigins - - exposedHeaders - - maxAgeInSeconds type: object type: array hourMetrics: @@ -504,9 +465,6 @@ spec: version: description: The version of storage analytics to configure. type: string - required: - - enabled - - version type: object type: array logging: @@ -532,11 +490,6 @@ spec: description: Indicates whether all write requests should be logged. type: boolean - required: - - delete - - read - - version - - write type: object type: array minuteMetrics: @@ -558,9 +511,6 @@ spec: version: description: The version of storage analytics to configure. type: string - required: - - enabled - - version type: object type: array type: object @@ -675,8 +625,6 @@ spec: expirationPeriod: description: The SAS expiration period in format of DD.HH:MM:SS. type: string - required: - - expirationPeriod type: object type: array sftpEnabled: @@ -720,12 +668,6 @@ spec: description: The number of seconds the client should cache a preflight response. type: number - required: - - allowedHeaders - - allowedMethods - - allowedOrigins - - exposedHeaders - - maxAgeInSeconds type: object type: array retentionPolicy: @@ -810,21 +752,650 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessTier: + description: Defines the access tier for BlobStorage, FileStorage + and StorageV2 accounts. Valid options are Hot and Cool, defaults + to Hot. + type: string + accountKind: + description: Defines the Kind of account. Valid options are BlobStorage, + BlockBlobStorage, FileStorage, Storage and StorageV2. Defaults + to StorageV2. + type: string + accountReplicationType: + description: Defines the type of replication to use for this storage + account. Valid options are LRS, GRS, RAGRS, ZRS, GZRS and RAGZRS. + type: string + accountTier: + description: Defines the Tier to use for this storage account. + Valid options are Standard and Premium. For BlockBlobStorage + and FileStorage accounts only Premium is valid. Changing this + forces a new resource to be created. + type: string + allowNestedItemsToBePublic: + description: Allow or disallow nested items within this Account + to opt into being public. Defaults to true. + type: boolean + allowedCopyScope: + description: Restrict copy to and from Storage Accounts within + an AAD tenant or with Private Links to the same VNet. Possible + values are AAD and PrivateLink. + type: string + azureFilesAuthentication: + description: A azure_files_authentication block as defined below. + items: + properties: + activeDirectory: + description: A active_directory block as defined below. + Required when directory_type is AD. + items: + properties: + domainGuid: + description: Specifies the domain GUID. + type: string + domainName: + description: Specifies the primary domain that the + AD DNS server is authoritative for. + type: string + domainSid: + description: Specifies the security identifier (SID). + type: string + forestName: + description: Specifies the Active Directory forest. + type: string + netbiosDomainName: + description: Specifies the NetBIOS domain name. + type: string + storageSid: + description: Specifies the security identifier (SID) + for Azure Storage. + type: string + type: object + type: array + directoryType: + description: Specifies the directory service used. Possible + values are AADDS, AD and AADKERB. + type: string + type: object + type: array + blobProperties: + description: A blob_properties block as defined below. + items: + properties: + changeFeedEnabled: + description: Is the blob service properties for change feed + events enabled? Default to false. + type: boolean + changeFeedRetentionInDays: + description: The duration of change feed events retention + in days. The possible values are between 1 and 146000 + days (400 years). Setting this to null (or omit this in + the configuration file) indicates an infinite retention + of the change feed. + type: number + containerDeleteRetentionPolicy: + description: A container_delete_retention_policy block as + defined below. + items: + properties: + days: + description: Specifies the number of days that the + azurerm_storage_share should be retained, between + 1 and 365 days. Defaults to 7. + type: number + type: object + type: array + corsRule: + description: A cors_rule block as defined below. + items: + properties: + allowedHeaders: + description: A list of headers that are allowed to + be a part of the cross-origin request. + items: + type: string + type: array + allowedMethods: + description: A list of HTTP methods that are allowed + to be executed by the origin. Valid options are + DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or + PATCH. + items: + type: string + type: array + allowedOrigins: + description: A list of origin domains that will be + allowed by CORS. + items: + type: string + type: array + exposedHeaders: + description: A list of response headers that are exposed + to CORS clients. + items: + type: string + type: array + maxAgeInSeconds: + description: The number of seconds the client should + cache a preflight response. + type: number + type: object + type: array + defaultServiceVersion: + description: The API Version which should be used by default + for requests to the Data Plane API if an incoming request + doesn't specify an API Version. + type: string + deleteRetentionPolicy: + description: A delete_retention_policy block as defined + below. + items: + properties: + days: + description: Specifies the number of days that the + azurerm_storage_share should be retained, between + 1 and 365 days. Defaults to 7. + type: number + type: object + type: array + lastAccessTimeEnabled: + description: Is the last access time based tracking enabled? + Default to false. + type: boolean + restorePolicy: + description: A restore_policy block as defined below. This + must be used together with delete_retention_policy set, + versioning_enabled and change_feed_enabled set to true. + items: + properties: + days: + description: Specifies the number of days that the + azurerm_storage_share should be retained, between + 1 and 365 days. Defaults to 7. + type: number + type: object + type: array + versioningEnabled: + description: Is versioning enabled? Default to false. + type: boolean + type: object + type: array + crossTenantReplicationEnabled: + description: Should cross Tenant replication be enabled? Defaults + to true. + type: boolean + customDomain: + description: A custom_domain block as documented below. + items: + properties: + name: + description: The Custom Domain Name to use for the Storage + Account, which will be validated by Azure. + type: string + useSubdomain: + description: Should the Custom Domain Name be validated + by using indirect CNAME validation? + type: boolean + type: object + type: array + customerManagedKey: + description: A customer_managed_key block as documented below. + items: + properties: + keyVaultKeyId: + description: The ID of the Key Vault Key, supplying a version-less + key ID will enable auto-rotation of this key. + type: string + userAssignedIdentityId: + description: The ID of a user assigned identity. + type: string + type: object + type: array + defaultToOauthAuthentication: + description: Default to Azure Active Directory authorization in + the Azure portal when accessing the Storage Account. The default + value is false + type: boolean + edgeZone: + description: Specifies the Edge Zone within the Azure Region where + this Storage Account should exist. Changing this forces a new + Storage Account to be created. + type: string + enableHttpsTrafficOnly: + description: Boolean flag which forces HTTPS if enabled, see here + for more information. Defaults to true. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Storage Account. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Storage Account. Possible + values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + immutabilityPolicy: + description: An immutability_policy block as defined below. Changing + this forces a new resource to be created. + items: + properties: + allowProtectedAppendWrites: + description: When enabled, new blocks can be written to + an append blob while maintaining immutability protection + and compliance. Only new blocks can be added and any existing + blocks cannot be modified or deleted. + type: boolean + periodSinceCreationInDays: + description: The immutability period for the blobs in the + container since the policy creation, in days. + type: number + state: + description: Defines the mode of the policy. Disabled state + disables the policy, Unlocked state allows increase and + decrease of immutability retention time and also allows + toggling allowProtectedAppendWrites property, Locked state + only allows the increase of the immutability retention + time. A policy can only be created in a Disabled or Unlocked + state and can be toggled between the two states. Only + a policy in an Unlocked state can transition to a Locked + state which cannot be reverted. + type: string + type: object + type: array + infrastructureEncryptionEnabled: + description: Is infrastructure encryption enabled? Changing this + forces a new resource to be created. Defaults to false. + type: boolean + isHnsEnabled: + description: Is Hierarchical Namespace enabled? This can be used + with Azure Data Lake Storage Gen 2 (see here for more information). + Changing this forces a new resource to be created. + type: boolean + largeFileShareEnabled: + description: Is Large File Share Enabled? + type: boolean + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + minTlsVersion: + description: The minimum supported TLS version for the storage + account. Possible values are TLS1_0, TLS1_1, and TLS1_2. Defaults + to TLS1_2 for new storage accounts. + type: string + networkRules: + description: A network_rules block as documented below. + items: + properties: + bypass: + description: Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. + Valid options are any combination of Logging, Metrics, + AzureServices, or None. + items: + type: string + type: array + defaultAction: + description: Specifies the default action of allow or deny + when no other rules match. Valid options are Deny or Allow. + type: string + ipRules: + description: List of public IP or IP ranges in CIDR Format. + Only IPv4 addresses are allowed. /31 CIDRs, /32 CIDRs, + and Private IP address ranges (as defined in RFC 1918), are + not allowed. + items: + type: string + type: array + privateLinkAccess: + description: One or More private_link_access block as defined + below. + items: + properties: + endpointResourceId: + description: The resource id of the resource access + rule to be granted access. + type: string + endpointTenantId: + description: The tenant id of the resource of the + resource access rule to be granted access. Defaults + to the current tenant id. + type: string + type: object + type: array + virtualNetworkSubnetIds: + description: A list of resource ids for subnets. + items: + type: string + type: array + type: object + type: array + nfsv3Enabled: + description: Is NFSv3 protocol enabled? Changing this forces a + new resource to be created. Defaults to false. + type: boolean + publicNetworkAccessEnabled: + description: Whether the public network access is enabled? Defaults + to true. + type: boolean + queueEncryptionKeyType: + description: The encryption type of the queue service. Possible + values are Service and Account. Changing this forces a new resource + to be created. Default value is Service. + type: string + queueProperties: + description: A queue_properties block as defined below. + items: + properties: + corsRule: + description: A cors_rule block as defined above. + items: + properties: + allowedHeaders: + description: A list of headers that are allowed to + be a part of the cross-origin request. + items: + type: string + type: array + allowedMethods: + description: A list of HTTP methods that are allowed + to be executed by the origin. Valid options are + DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or + PATCH. + items: + type: string + type: array + allowedOrigins: + description: A list of origin domains that will be + allowed by CORS. + items: + type: string + type: array + exposedHeaders: + description: A list of response headers that are exposed + to CORS clients. + items: + type: string + type: array + maxAgeInSeconds: + description: The number of seconds the client should + cache a preflight response. + type: number + type: object + type: array + hourMetrics: + description: A hour_metrics block as defined below. + items: + properties: + enabled: + description: Indicates whether minute metrics are + enabled for the Queue service. + type: boolean + includeApis: + description: Indicates whether metrics should generate + summary statistics for called API operations. + type: boolean + retentionPolicyDays: + description: Specifies the number of days that logs + will be retained. + type: number + version: + description: The version of storage analytics to configure. + type: string + type: object + type: array + logging: + description: A logging block as defined below. + items: + properties: + delete: + description: (Defaults to 60 minutes) Used when deleting + the Storage Account. + type: boolean + read: + description: (Defaults to 5 minutes) Used when retrieving + the Storage Account. + type: boolean + retentionPolicyDays: + description: Specifies the number of days that logs + will be retained. + type: number + version: + description: The version of storage analytics to configure. + type: string + write: + description: Indicates whether all write requests + should be logged. + type: boolean + type: object + type: array + minuteMetrics: + description: A minute_metrics block as defined below. + items: + properties: + enabled: + description: Indicates whether minute metrics are + enabled for the Queue service. + type: boolean + includeApis: + description: Indicates whether metrics should generate + summary statistics for called API operations. + type: boolean + retentionPolicyDays: + description: Specifies the number of days that logs + will be retained. + type: number + version: + description: The version of storage analytics to configure. + type: string + type: object + type: array + type: object + type: array + routing: + description: A routing block as defined below. + items: + properties: + choice: + description: Specifies the kind of network routing opted + by the user. Possible values are InternetRouting and MicrosoftRouting. + Defaults to MicrosoftRouting. + type: string + publishInternetEndpoints: + description: Should internet routing storage endpoints be + published? Defaults to false. + type: boolean + publishMicrosoftEndpoints: + description: Should Microsoft routing storage endpoints + be published? Defaults to false. + type: boolean + type: object + type: array + sasPolicy: + description: A sas_policy block as defined below. + items: + properties: + expirationAction: + description: The SAS expiration action. The only possible + value is Log at this moment. Defaults to Log. + type: string + expirationPeriod: + description: The SAS expiration period in format of DD.HH:MM:SS. + type: string + type: object + type: array + sftpEnabled: + description: Boolean, enable SFTP for the storage account + type: boolean + shareProperties: + description: A share_properties block as defined below. + items: + properties: + corsRule: + description: A cors_rule block as defined below. + items: + properties: + allowedHeaders: + description: A list of headers that are allowed to + be a part of the cross-origin request. + items: + type: string + type: array + allowedMethods: + description: A list of HTTP methods that are allowed + to be executed by the origin. Valid options are + DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or + PATCH. + items: + type: string + type: array + allowedOrigins: + description: A list of origin domains that will be + allowed by CORS. + items: + type: string + type: array + exposedHeaders: + description: A list of response headers that are exposed + to CORS clients. + items: + type: string + type: array + maxAgeInSeconds: + description: The number of seconds the client should + cache a preflight response. + type: number + type: object + type: array + retentionPolicy: + description: A retention_policy block as defined below. + items: + properties: + days: + description: Specifies the number of days that the + azurerm_storage_share should be retained, between + 1 and 365 days. Defaults to 7. + type: number + type: object + type: array + smb: + description: A smb block as defined below. + items: + properties: + authenticationTypes: + description: A set of SMB authentication methods. + Possible values are NTLMv2, and Kerberos. + items: + type: string + type: array + channelEncryptionType: + description: A set of SMB channel encryption. Possible + values are AES-128-CCM, AES-128-GCM, and AES-256-GCM. + items: + type: string + type: array + kerberosTicketEncryptionType: + description: A set of Kerberos ticket encryption. + Possible values are RC4-HMAC, and AES-256. + items: + type: string + type: array + multichannelEnabled: + description: Indicates whether multichannel is enabled. + Defaults to false. This is only supported on Premium + storage accounts. + type: boolean + versions: + description: A set of SMB protocol versions. Possible + values are SMB2.1, SMB3.0, and SMB3.1.1. + items: + type: string + type: array + type: object + type: array + type: object + type: array + sharedAccessKeyEnabled: + description: Indicates whether the storage account permits requests + to be authorized with the account access key via Shared Key. + If false, then all requests, including shared access signatures, + must be authorized with Azure Active Directory (Azure AD). The + default value is true. + type: boolean + staticWebsite: + description: A static_website block as defined below. + items: + properties: + error404Document: + description: The absolute path to a custom webpage that + should be used when a request is made which does not correspond + to an existing file. + type: string + indexDocument: + description: The webpage that Azure Storage serves for requests + to the root of a website or any subfolder. For example, + index.html. The value is case-sensitive. + type: string + type: object + type: array + tableEncryptionKeyType: + description: The encryption type of the table service. Possible + values are Service and Account. Changing this forces a new resource + to be created. Default value is Service. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -998,11 +1569,17 @@ spec: type: object x-kubernetes-validations: - message: accountReplicationType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.accountReplicationType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.accountReplicationType) + || has(self.initProvider.accountReplicationType)' - message: accountTier is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.accountTier) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.accountTier) + || has(self.initProvider.accountTier)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: AccountStatus defines the observed state of Account. properties: diff --git a/package/crds/storage.azure.upbound.io_blobinventorypolicies.yaml b/package/crds/storage.azure.upbound.io_blobinventorypolicies.yaml index e5363c4a1..419cfdb07 100644 --- a/package/crds/storage.azure.upbound.io_blobinventorypolicies.yaml +++ b/package/crds/storage.azure.upbound.io_blobinventorypolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: blobinventorypolicies.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -109,8 +108,6 @@ spec: items: type: string type: array - required: - - blobTypes type: object type: array format: @@ -217,12 +214,6 @@ spec: type: string type: object type: object - required: - - format - - name - - schedule - - schemaFields - - scope type: object type: array storageAccountId: @@ -304,21 +295,113 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + rules: + description: One or more rules blocks as defined below. + items: + properties: + filter: + description: A filter block as defined above. Can only be + set when the scope is Blob. + items: + properties: + blobTypes: + description: A set of blob types. Possible values + are blockBlob, appendBlob, and pageBlob. The storage + account with is_hns_enabled is true doesn't support + pageBlob. + items: + type: string + type: array + excludePrefixes: + description: A set of strings for blob prefixes to + be excluded. Maximum of 10 blob prefixes. + items: + type: string + type: array + includeBlobVersions: + description: Includes blob versions in blob inventory + or not? Defaults to false. + type: boolean + includeDeleted: + description: Includes deleted blobs in blob inventory + or not? Defaults to false. + type: boolean + includeSnapshots: + description: Includes blob snapshots in blob inventory + or not? Defaults to false. + type: boolean + prefixMatch: + description: A set of strings for blob prefixes to + be matched. Maximum of 10 blob prefixes. + items: + type: string + type: array + type: object + type: array + format: + description: The format of the inventory files. Possible + values are Csv and Parquet. + type: string + name: + description: The name which should be used for this Blob + Inventory Policy Rule. + type: string + schedule: + description: The inventory schedule applied by this rule. + Possible values are Daily and Weekly. + type: string + schemaFields: + description: A list of fields to be included in the inventory. + See the Azure API reference for all the supported fields. + items: + type: string + type: array + scope: + description: The scope of the inventory for this rule. Possible + values are Blob and Container. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -492,7 +575,9 @@ spec: type: object x-kubernetes-validations: - message: rules is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rules) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.rules) + || has(self.initProvider.rules)' status: description: BlobInventoryPolicyStatus defines the observed state of BlobInventoryPolicy. properties: diff --git a/package/crds/storage.azure.upbound.io_blobs.yaml b/package/crds/storage.azure.upbound.io_blobs.yaml index 06e346c91..6807e8c81 100644 --- a/package/crds/storage.azure.upbound.io_blobs.yaml +++ b/package/crds/storage.azure.upbound.io_blobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: blobs.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -281,21 +280,102 @@ spec: resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessTier: + description: The access tier of the storage blob. Possible values + are Archive, Cool and Hot. + type: string + cacheControl: + description: Controls the cache control header content of the + response when blob is requested . + type: string + contentMd5: + description: The MD5 sum of the blob contents. Cannot be defined + if source_uri is defined, or if blob type is Append or Page. + Changing this forces a new resource to be created. + type: string + contentType: + description: The content type of the storage blob. Cannot be defined + if source_uri is defined. Defaults to application/octet-stream. + type: string + metadata: + additionalProperties: + type: string + description: A map of custom blob metadata. + type: object + parallelism: + description: The number of workers per CPU core to run for concurrent + uploads. Defaults to 8. Changing this forces a new resource + to be created. + type: number + size: + description: Used only for page blobs to specify the size in bytes + of the blob to be created. Must be a multiple of 512. Defaults + to 0. Changing this forces a new resource to be created. + type: number + source: + description: An absolute path to a file on the local system. This + field cannot be specified for Append blobs and cannot be specified + if source_content or source_uri is specified. Changing this + forces a new resource to be created. + type: string + sourceContent: + description: The content for this blob which should be defined + inline. This field can only be specified for Block blobs and + cannot be specified if source or source_uri is specified. Changing + this forces a new resource to be created. + type: string + sourceUri: + description: The URI of an existing blob, or a file in the Azure + File service, to use as the source contents for the blob to + be created. Changing this forces a new resource to be created. + This field cannot be specified for Append blobs and cannot be + specified if source or source_content is specified. + type: string + type: + description: The type of the storage blob to be created. Possible + values are Append, Block or Page. Changing this forces a new + resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -469,7 +549,9 @@ spec: type: object x-kubernetes-validations: - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' status: description: BlobStatus defines the observed state of Blob. properties: diff --git a/package/crds/storage.azure.upbound.io_containers.yaml b/package/crds/storage.azure.upbound.io_containers.yaml index 4c06d22e9..04ae7bb30 100644 --- a/package/crds/storage.azure.upbound.io_containers.yaml +++ b/package/crds/storage.azure.upbound.io_containers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: containers.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -157,21 +156,56 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + containerAccessType: + description: The Access Level configured for this Container. Possible + values are blob, container or private. Defaults to private. + type: string + metadata: + additionalProperties: + type: string + description: A mapping of MetaData for this Container. All metadata + keys should be lowercase. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/storage.azure.upbound.io_datalakegen2filesystems.yaml b/package/crds/storage.azure.upbound.io_datalakegen2filesystems.yaml index 18bdefd1f..d216aa812 100644 --- a/package/crds/storage.azure.upbound.io_datalakegen2filesystems.yaml +++ b/package/crds/storage.azure.upbound.io_datalakegen2filesystems.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datalakegen2filesystems.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -91,9 +90,6 @@ spec: description: Specifies the type of entry. Can be user, group, mask or other. type: string - required: - - permissions - - type type: object type: array group: @@ -191,21 +187,87 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + ace: + description: One or more ace blocks as defined below to specify + the entries for the ACL for the path. + items: + properties: + id: + description: Specifies the Object ID of the Azure Active + Directory User or Group that the entry relates to. Only + valid for user or group entries. + type: string + permissions: + description: Specifies the permissions for the entry in + rwx form. For example, rwx gives full permissions but + r-- only gives read permissions. + type: string + scope: + description: Specifies whether the ACE represents an access + entry or a default entry. Default value is access. + type: string + type: + description: Specifies the type of entry. Can be user, group, + mask or other. + type: string + type: object + type: array + group: + description: Specifies the Object ID of the Azure Active Directory + Group to make the owning group of the root path (i.e. /). Possible + values also include $superuser. + type: string + owner: + description: Specifies the Object ID of the Azure Active Directory + User to make the owning user of the root path (i.e. /). Possible + values also include $superuser. + type: string + properties: + additionalProperties: + type: string + description: A mapping of Key to Base64-Encoded Values which should + be assigned to this Data Lake Gen2 File System. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/storage.azure.upbound.io_datalakegen2paths.yaml b/package/crds/storage.azure.upbound.io_datalakegen2paths.yaml index cf087c79c..1d45eb246 100644 --- a/package/crds/storage.azure.upbound.io_datalakegen2paths.yaml +++ b/package/crds/storage.azure.upbound.io_datalakegen2paths.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: datalakegen2paths.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -91,9 +90,6 @@ spec: description: Specifies the type of entry. Can be user, group, mask or other. type: string - required: - - permissions - - type type: object type: array filesystemName: @@ -275,21 +271,90 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + ace: + description: One or more ace blocks as defined below to specify + the entries for the ACL for the path. + items: + properties: + id: + description: Specifies the Object ID of the Azure Active + Directory User or Group that the entry relates to. Only + valid for user or group entries. + type: string + permissions: + description: Specifies the permissions for the entry in + rwx form. For example, rwx gives full permissions but + r-- only gives read permissions. + type: string + scope: + description: Specifies whether the ACE represents an access + entry or a default entry. Default value is access. + type: string + type: + description: Specifies the type of entry. Can be user, group, + mask or other. + type: string + type: object + type: array + group: + description: Specifies the Object ID of the Azure Active Directory + Group to make the owning group. Possible values also include + $superuser. + type: string + owner: + description: Specifies the Object ID of the Azure Active Directory + User to make the owning user. Possible values also include $superuser. + type: string + path: + description: The path which should be created within the Data + Lake Gen2 File System in the Storage Account. Changing this + forces a new resource to be created. + type: string + resource: + description: Specifies the type for path to create. Currently + only directory is supported. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -463,9 +528,13 @@ spec: type: object x-kubernetes-validations: - message: path is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.path) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.path) + || has(self.initProvider.path)' - message: resource is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.resource) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.resource) + || has(self.initProvider.resource)' status: description: DataLakeGen2PathStatus defines the observed state of DataLakeGen2Path. properties: diff --git a/package/crds/storage.azure.upbound.io_encryptionscopes.yaml b/package/crds/storage.azure.upbound.io_encryptionscopes.yaml index a3cc1ba2d..ecdb1bcce 100644 --- a/package/crds/storage.azure.upbound.io_encryptionscopes.yaml +++ b/package/crds/storage.azure.upbound.io_encryptionscopes.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: encryptionscopes.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -160,21 +159,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + infrastructureEncryptionRequired: + description: Is a secondary layer of encryption with Platform + Managed Keys for data applied? Changing this forces a new resource + to be created. + type: boolean + keyVaultKeyId: + description: The ID of the Key Vault Key. Required when source + is Microsoft.KeyVault. + type: string + source: + description: The source of the Storage Encryption Scope. Possible + values are Microsoft.KeyVault and Microsoft.Storage. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -348,7 +385,9 @@ spec: type: object x-kubernetes-validations: - message: source is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.source) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.source) + || has(self.initProvider.source)' status: description: EncryptionScopeStatus defines the observed state of EncryptionScope. properties: diff --git a/package/crds/storage.azure.upbound.io_managementpolicies.yaml b/package/crds/storage.azure.upbound.io_managementpolicies.yaml index bbfec1d72..9900c1910 100644 --- a/package/crds/storage.azure.upbound.io_managementpolicies.yaml +++ b/package/crds/storage.azure.upbound.io_managementpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managementpolicies.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -231,9 +230,6 @@ spec: description: The filter tag value used for tag based filtering for blob objects. type: string - required: - - name - - value type: object type: array prefixMatch: @@ -242,19 +238,12 @@ spec: items: type: string type: array - required: - - blobTypes type: object type: array name: description: The name of the rule. Rule name is case-sensitive. It must be unique within a policy. type: string - required: - - actions - - enabled - - filters - - name type: object type: array storageAccountId: @@ -336,21 +325,225 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + rule: + description: A rule block as documented below. + items: + properties: + actions: + description: An actions block as documented below. + items: + properties: + baseBlob: + description: A base_blob block as documented below. + items: + properties: + autoTierToHotFromCoolEnabled: + description: Whether a blob should automatically + be tiered from cool back to hot if it's accessed + again after being tiered to cool. Defaults + to false. + type: boolean + deleteAfterDaysSinceCreationGreaterThan: + description: The age in days after creation + to delete the blob snapshot. Must be between + 0 and 99999. Defaults to -1. + type: number + deleteAfterDaysSinceLastAccessTimeGreaterThan: + description: The age in days after last access + time to delete the blob. Must be between 0 + and 99999. Defaults to -1. + type: number + deleteAfterDaysSinceModificationGreaterThan: + description: The age in days after last modification + to delete the blob. Must be between 0 and + 99999. Defaults to -1. + type: number + tierToArchiveAfterDaysSinceCreationGreaterThan: + description: The age in days after creation + to archive storage. Supports blob currently + at Hot or Cool tier. Must be between 0 and99999. + Defaults to -1. + type: number + tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan: + description: The age in days after last access + time to tier blobs to archive storage. Supports + blob currently at Hot or Cool tier. Must be + between 0 and99999. Defaults to -1. + type: number + tierToArchiveAfterDaysSinceLastTierChangeGreaterThan: + description: The age in days after last tier + change to the blobs to skip to be archved. + Must be between 0 and 99999. Defaults to -1. + type: number + tierToArchiveAfterDaysSinceModificationGreaterThan: + description: The age in days after last modification + to tier blobs to archive storage. Supports + blob currently at Hot or Cool tier. Must be + between 0 and 99999. Defaults to -1. + type: number + tierToCoolAfterDaysSinceCreationGreaterThan: + description: The age in days after creation + to cool storage. Supports blob currently at + Hot tier. Must be between 0 and 99999. Defaults + to -1. + type: number + tierToCoolAfterDaysSinceLastAccessTimeGreaterThan: + description: The age in days after last access + time to tier blobs to cool storage. Supports + blob currently at Hot tier. Must be between + 0 and 99999. Defaults to -1. + type: number + tierToCoolAfterDaysSinceModificationGreaterThan: + description: The age in days after last modification + to tier blobs to cool storage. Supports blob + currently at Hot tier. Must be between 0 and + 99999. Defaults to -1. + type: number + type: object + type: array + snapshot: + description: A snapshot block as documented below. + items: + properties: + changeTierToArchiveAfterDaysSinceCreation: + description: The age in days after creation + to tier blob version to archive storage. Must + be between 0 and 99999. Defaults to -1. + type: number + changeTierToCoolAfterDaysSinceCreation: + description: The age in days creation create + to tier blob version to cool storage. Must + be between 0 and 99999. Defaults to -1. + type: number + deleteAfterDaysSinceCreationGreaterThan: + description: The age in days after creation + to delete the blob snapshot. Must be between + 0 and 99999. Defaults to -1. + type: number + tierToArchiveAfterDaysSinceLastTierChangeGreaterThan: + description: The age in days after last tier + change to the blobs to skip to be archved. + Must be between 0 and 99999. Defaults to -1. + type: number + type: object + type: array + version: + description: A version block as documented below. + items: + properties: + changeTierToArchiveAfterDaysSinceCreation: + description: The age in days after creation + to tier blob version to archive storage. Must + be between 0 and 99999. Defaults to -1. + type: number + changeTierToCoolAfterDaysSinceCreation: + description: The age in days creation create + to tier blob version to cool storage. Must + be between 0 and 99999. Defaults to -1. + type: number + deleteAfterDaysSinceCreation: + description: The age in days after creation + to delete the blob version. Must be between + 0 and 99999. Defaults to -1. + type: number + tierToArchiveAfterDaysSinceLastTierChangeGreaterThan: + description: The age in days after last tier + change to the blobs to skip to be archved. + Must be between 0 and 99999. Defaults to -1. + type: number + type: object + type: array + type: object + type: array + enabled: + description: Boolean to specify whether the rule is enabled. + type: boolean + filters: + description: A filters block as documented below. + items: + properties: + blobTypes: + description: An array of predefined values. Valid + options are blockBlob and appendBlob. + items: + type: string + type: array + matchBlobIndexTag: + description: A match_blob_index_tag block as defined + below. The block defines the blob index tag based + filtering for blob objects. + items: + properties: + name: + description: The name of the rule. Rule name + is case-sensitive. It must be unique within + a policy. + type: string + operation: + description: The comparison operator which is + used for object comparison and filtering. + Possible value is ==. Defaults to ==. + type: string + value: + description: The filter tag value used for tag + based filtering for blob objects. + type: string + type: object + type: array + prefixMatch: + description: An array of strings for prefixes to be + matched. + items: + type: string + type: array + type: object + type: array + name: + description: The name of the rule. Rule name is case-sensitive. + It must be unique within a policy. + type: string + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/storage.azure.upbound.io_objectreplications.yaml b/package/crds/storage.azure.upbound.io_objectreplications.yaml index 62bf8ebfe..1c8a86f72 100644 --- a/package/crds/storage.azure.upbound.io_objectreplications.yaml +++ b/package/crds/storage.azure.upbound.io_objectreplications.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: objectreplications.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -405,21 +404,64 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + rules: + description: One or more rules blocks as defined below. + items: + properties: + copyBlobsCreatedAfter: + description: 'The time after which the Block Blobs created + will be copies to the destination. Possible values are + OnlyNewObjects, Everything and time in RFC3339 format: + 2006-01-02T15:04:00Z.' + type: string + filterOutBlobsWithPrefix: + description: Specifies a list of filters prefixes, the blobs + whose names begin with which will be replicated. + items: + type: string + type: array + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -593,7 +635,9 @@ spec: type: object x-kubernetes-validations: - message: rules is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rules) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.rules) + || has(self.initProvider.rules)' status: description: ObjectReplicationStatus defines the observed state of ObjectReplication. properties: diff --git a/package/crds/storage.azure.upbound.io_queues.yaml b/package/crds/storage.azure.upbound.io_queues.yaml index fafe84fe4..a3bee7233 100644 --- a/package/crds/storage.azure.upbound.io_queues.yaml +++ b/package/crds/storage.azure.upbound.io_queues.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: queues.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -153,21 +152,52 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + metadata: + additionalProperties: + type: string + description: A mapping of MetaData which should be assigned to + this Storage Queue. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/storage.azure.upbound.io_sharedirectories.yaml b/package/crds/storage.azure.upbound.io_sharedirectories.yaml index 61f974ef1..ab38979a4 100644 --- a/package/crds/storage.azure.upbound.io_sharedirectories.yaml +++ b/package/crds/storage.azure.upbound.io_sharedirectories.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sharedirectories.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -234,21 +233,56 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + metadata: + additionalProperties: + type: string + description: A mapping of metadata to assign to this Directory. + type: object + name: + description: The name (or path) of the Directory that should be + created within this File Share. Changing this forces a new resource + to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -422,7 +456,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: ShareDirectoryStatus defines the observed state of ShareDirectory. properties: diff --git a/package/crds/storage.azure.upbound.io_shares.yaml b/package/crds/storage.azure.upbound.io_shares.yaml index 5c2f1d985..bfa3769cc 100644 --- a/package/crds/storage.azure.upbound.io_shares.yaml +++ b/package/crds/storage.azure.upbound.io_shares.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: shares.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -93,16 +92,12 @@ spec: description: The time at which this Access Policy should be valid from, in ISO8601 format. type: string - required: - - permissions type: object type: array id: description: The ID which should be used for this Shared Identifier. type: string - required: - - id type: object type: array enabledProtocol: @@ -202,21 +197,98 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessTier: + description: The access tier of the File Share. Possible values + are Hot, Cool and TransactionOptimized, Premium. + type: string + acl: + description: One or more acl blocks as defined below. + items: + properties: + accessPolicy: + description: An access_policy block as defined below. + items: + properties: + expiry: + description: The time at which this Access Policy + should be valid until, in ISO8601 format. + type: string + permissions: + description: The permissions which should be associated + with this Shared Identifier. Possible value is combination + of r (read), w (write), d (delete), and l (list). + type: string + start: + description: The time at which this Access Policy + should be valid from, in ISO8601 format. + type: string + type: object + type: array + id: + description: The ID which should be used for this Shared + Identifier. + type: string + type: object + type: array + enabledProtocol: + description: The protocol used for the share. Possible values + are SMB and NFS. The SMB indicates the share can be accessed + by SMBv3.0, SMBv2.1 and REST. The NFS indicates the share can + be accessed by NFSv4.1. Defaults to SMB. Changing this forces + a new resource to be created. + type: string + metadata: + additionalProperties: + type: string + description: A mapping of MetaData for this File Share. + type: object + quota: + description: The maximum size of the share, in gigabytes. For + Standard storage accounts, this must be 1GB (or higher) and + at most 5120 GB (5 TB). For Premium FileStorage storage accounts, + this must be greater than 100 GB and at most 102400 GB (100 + TB). + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -390,7 +462,9 @@ spec: type: object x-kubernetes-validations: - message: quota is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.quota) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.quota) + || has(self.initProvider.quota)' status: description: ShareStatus defines the observed state of Share. properties: diff --git a/package/crds/storage.azure.upbound.io_tableentities.yaml b/package/crds/storage.azure.upbound.io_tableentities.yaml index 2f39df031..b0072e197 100644 --- a/package/crds/storage.azure.upbound.io_tableentities.yaml +++ b/package/crds/storage.azure.upbound.io_tableentities.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: tableentities.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -239,21 +238,60 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + entity: + additionalProperties: + type: string + description: A map of key/value pairs that describe the entity + to be inserted/merged in to the storage table. + type: object + partitionKey: + description: The key for the partition where the entity will be + inserted/merged. Changing this forces a new resource. + type: string + rowKey: + description: The key for the row where the entity will be inserted/merged. + Changing this forces a new resource. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -427,11 +465,17 @@ spec: type: object x-kubernetes-validations: - message: entity is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.entity) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.entity) + || has(self.initProvider.entity)' - message: partitionKey is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partitionKey) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.partitionKey) + || has(self.initProvider.partitionKey)' - message: rowKey is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rowKey) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.rowKey) + || has(self.initProvider.rowKey)' status: description: TableEntityStatus defines the observed state of TableEntity. properties: diff --git a/package/crds/storage.azure.upbound.io_tables.yaml b/package/crds/storage.azure.upbound.io_tables.yaml index 1f13304f3..76e002324 100644 --- a/package/crds/storage.azure.upbound.io_tables.yaml +++ b/package/crds/storage.azure.upbound.io_tables.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: tables.storage.azure.upbound.io spec: group: storage.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -88,18 +87,12 @@ spec: description: The ISO8061 UTC time at which this Access Policy should be valid from. type: string - required: - - expiry - - permissions - - start type: object type: array id: description: The ID which should be used for this Shared Identifier. type: string - required: - - id type: object type: array name: @@ -187,21 +180,80 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + acl: + description: One or more acl blocks as defined below. + items: + properties: + accessPolicy: + description: An access_policy block as defined below. + items: + properties: + expiry: + description: The ISO8061 UTC time at which this Access + Policy should be valid until. + type: string + permissions: + description: The permissions which should associated + with this Shared Identifier. + type: string + start: + description: The ISO8061 UTC time at which this Access + Policy should be valid from. + type: string + type: object + type: array + id: + description: The ID which should be used for this Shared + Identifier. + type: string + type: object + type: array + name: + description: The name of the storage table. Only Alphanumeric + characters allowed, starting with a letter. Must be unique within + the storage account the table is located. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -375,7 +427,9 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: TableStatus defines the observed state of Table. properties: diff --git a/package/crds/storagecache.azure.upbound.io_hpccacheaccesspolicies.yaml b/package/crds/storagecache.azure.upbound.io_hpccacheaccesspolicies.yaml index edd212142..9831820ba 100644 --- a/package/crds/storagecache.azure.upbound.io_hpccacheaccesspolicies.yaml +++ b/package/crds/storagecache.azure.upbound.io_hpccacheaccesspolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: hpccacheaccesspolicies.storagecache.azure.upbound.io spec: group: storagecache.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -107,9 +106,6 @@ spec: suidEnabled: description: Whether SUID is allowed? type: boolean - required: - - access - - scope type: object type: array hpcCacheId: @@ -193,21 +189,87 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessRule: + description: Up to three access_rule blocks as defined below. + items: + properties: + access: + description: 'The access level for this rule. Possible values + are: rw, ro, no.' + type: string + anonymousGid: + description: The anonymous GID used when root_squash_enabled + is true. + type: number + anonymousUid: + description: The anonymous UID used when root_squash_enabled + is true. + type: number + filter: + description: 'The filter applied to the scope for this rule. + The filter''s format depends on its scope: default scope + matches all clients and has no filter value; network scope + takes a CIDR format; host takes an IP address or fully + qualified domain name. If a client does not match any + filter rule and there is no default rule, access is denied.' + type: string + rootSquashEnabled: + description: Whether to enable root squash? + type: boolean + scope: + description: 'The scope of this rule. The scope and (potentially) + the filter determine which clients match the rule. Possible + values are: default, network, host.' + type: string + submountAccessEnabled: + description: Whether allow access to subdirectories under + the root export? + type: boolean + suidEnabled: + description: Whether SUID is allowed? + type: boolean + type: object + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -381,7 +443,9 @@ spec: type: object x-kubernetes-validations: - message: accessRule is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.accessRule) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.accessRule) + || has(self.initProvider.accessRule)' status: description: HPCCacheAccessPolicyStatus defines the observed state of HPCCacheAccessPolicy. diff --git a/package/crds/storagecache.azure.upbound.io_hpccacheblobnfstargets.yaml b/package/crds/storagecache.azure.upbound.io_hpccacheblobnfstargets.yaml index b573f72d7..72c383fa6 100644 --- a/package/crds/storagecache.azure.upbound.io_hpccacheblobnfstargets.yaml +++ b/package/crds/storagecache.azure.upbound.io_hpccacheblobnfstargets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: hpccacheblobnfstargets.storagecache.azure.upbound.io spec: group: storagecache.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -248,21 +247,65 @@ spec: and WRITE_WORKLOAD_CLOUDWS.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessPolicyName: + description: The name of the access policy applied to this target. + Defaults to default. + type: string + namespacePath: + description: The client-facing file path of the HPC Cache Blob + NFS Target. + type: string + storageContainerId: + description: The Resource Manager ID of the Storage Container + used as the HPC Cache Blob NFS Target. Changing this forces + a new resource to be created. + type: string + usageModel: + description: 'The type of usage of the HPC Cache Blob NFS Target. + Possible values are: READ_HEAVY_INFREQ, READ_HEAVY_CHECK_180, + WRITE_WORKLOAD_15, WRITE_AROUND, WRITE_WORKLOAD_CHECK_30, WRITE_WORKLOAD_CHECK_60 + and WRITE_WORKLOAD_CLOUDWS.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -436,11 +479,17 @@ spec: type: object x-kubernetes-validations: - message: namespacePath is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.namespacePath) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.namespacePath) + || has(self.initProvider.namespacePath)' - message: storageContainerId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageContainerId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageContainerId) + || has(self.initProvider.storageContainerId)' - message: usageModel is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.usageModel) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.usageModel) + || has(self.initProvider.usageModel)' status: description: HPCCacheBlobNFSTargetStatus defines the observed state of HPCCacheBlobNFSTarget. diff --git a/package/crds/storagecache.azure.upbound.io_hpccacheblobtargets.yaml b/package/crds/storagecache.azure.upbound.io_hpccacheblobtargets.yaml index 90639a440..0eb8a9ab5 100644 --- a/package/crds/storagecache.azure.upbound.io_hpccacheblobtargets.yaml +++ b/package/crds/storagecache.azure.upbound.io_hpccacheblobtargets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: hpccacheblobtargets.storagecache.azure.upbound.io spec: group: storagecache.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -315,21 +314,54 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + accessPolicyName: + description: The name of the access policy applied to this target. + Defaults to default. + type: string + namespacePath: + description: The client-facing file path of the HPC Cache Blob + Target. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -503,7 +535,9 @@ spec: type: object x-kubernetes-validations: - message: namespacePath is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.namespacePath) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.namespacePath) + || has(self.initProvider.namespacePath)' status: description: HPCCacheBlobTargetStatus defines the observed state of HPCCacheBlobTarget. properties: diff --git a/package/crds/storagecache.azure.upbound.io_hpccachenfstargets.yaml b/package/crds/storagecache.azure.upbound.io_hpccachenfstargets.yaml index 9826e0697..a3e8c57f2 100644 --- a/package/crds/storagecache.azure.upbound.io_hpccachenfstargets.yaml +++ b/package/crds/storagecache.azure.upbound.io_hpccachenfstargets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: hpccachenfstargets.storagecache.azure.upbound.io spec: group: storagecache.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -171,9 +170,6 @@ spec: to map to the namespace_path. Defaults to "", in which case the whole nfs_export is exported. type: string - required: - - namespacePath - - nfsExport type: object type: array resourceGroupName: @@ -268,21 +264,82 @@ spec: and WRITE_WORKLOAD_CLOUDWS.' type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + namespaceJunction: + description: Can be specified multiple times to define multiple + namespace_junction. Each namespace_juntion block supports fields + documented below. + items: + properties: + accessPolicyName: + description: The name of the access policy applied to this + target. Defaults to default. + type: string + namespacePath: + description: The client-facing file path of this NFS target + within the HPC Cache NFS Target. + type: string + nfsExport: + description: The NFS export of this NFS target within the + HPC Cache NFS Target. + type: string + targetPath: + description: The relative subdirectory path from the nfs_export + to map to the namespace_path. Defaults to "", in which + case the whole nfs_export is exported. + type: string + type: object + type: array + targetHostName: + description: The IP address or fully qualified domain name (FQDN) + of the HPC Cache NFS target. Changing this forces a new resource + to be created. + type: string + usageModel: + description: 'The type of usage of the HPC Cache NFS Target. Possible + values are: READ_HEAVY_INFREQ, READ_HEAVY_CHECK_180, WRITE_WORKLOAD_15, + WRITE_AROUND, WRITE_WORKLOAD_CHECK_30, WRITE_WORKLOAD_CHECK_60 + and WRITE_WORKLOAD_CLOUDWS.' + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -456,11 +513,17 @@ spec: type: object x-kubernetes-validations: - message: namespaceJunction is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.namespaceJunction) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.namespaceJunction) + || has(self.initProvider.namespaceJunction)' - message: targetHostName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.targetHostName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.targetHostName) + || has(self.initProvider.targetHostName)' - message: usageModel is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.usageModel) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.usageModel) + || has(self.initProvider.usageModel)' status: description: HPCCacheNFSTargetStatus defines the observed state of HPCCacheNFSTarget. properties: diff --git a/package/crds/storagecache.azure.upbound.io_hpccaches.yaml b/package/crds/storagecache.azure.upbound.io_hpccaches.yaml index 4bb762866..28da15ea3 100644 --- a/package/crds/storagecache.azure.upbound.io_hpccaches.yaml +++ b/package/crds/storagecache.azure.upbound.io_hpccaches.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: hpccaches.storagecache.azure.upbound.io spec: group: storagecache.azure.upbound.io @@ -57,7 +56,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -122,13 +121,8 @@ spec: suidEnabled: description: Whether SUID is allowed? type: boolean - required: - - access - - scope type: object type: array - required: - - accessRule type: object type: array directoryActiveDirectory: @@ -177,12 +171,7 @@ spec: administrator. type: string required: - - cacheNetbiosName - - dnsPrimaryIp - - domainName - - domainNetbiosName - passwordSecretRef - - username type: object type: array directoryFlatFile: @@ -197,9 +186,6 @@ spec: description: The URI of the file containing user information (/etc/passwd file format in Unix-like OS). type: string - required: - - groupFileUri - - passwordFileUri type: object type: array directoryLdap: @@ -237,7 +223,6 @@ spec: - namespace type: object required: - - dn - passwordSecretRef type: object type: array @@ -256,9 +241,6 @@ spec: server: description: The FQDN or IP address of the LDAP server. type: string - required: - - baseDn - - server type: object type: array dns: @@ -274,8 +256,6 @@ spec: items: type: string type: array - required: - - servers type: object type: array identity: @@ -296,9 +276,6 @@ spec: value is UserAssigned. Changing this forces a new resource to be created. type: string - required: - - identityIds - - type type: object type: array keyVaultKeyId: @@ -487,21 +464,247 @@ spec: description: A mapping of tags to assign to the HPC Cache. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + automaticallyRotateKeyToLatestEnabled: + description: Specifies whether the HPC Cache automatically rotates + Encryption Key to the latest version. + type: boolean + cacheSizeInGb: + description: The size of the HPC Cache, in GB. Possible values + are 3072, 6144, 12288, 21623, 24576, 43246, 49152 and 86491. + Changing this forces a new resource to be created. + type: number + defaultAccessPolicy: + description: A default_access_policy block as defined below. + items: + properties: + accessRule: + description: One to three access_rule blocks as defined + above. + items: + properties: + access: + description: 'The access level for this rule. Possible + values are: rw, ro, no.' + type: string + anonymousGid: + description: The anonymous GID used when root_squash_enabled + is true. + type: number + anonymousUid: + description: The anonymous UID used when root_squash_enabled + is true. + type: number + filter: + description: 'The filter applied to the scope for + this rule. The filter''s format depends on its scope: + default scope matches all clients and has no filter + value; network scope takes a CIDR format; host takes + an IP address or fully qualified domain name. If + a client does not match any filter rule and there + is no default rule, access is denied.' + type: string + rootSquashEnabled: + description: Whether to enable root squash? + type: boolean + scope: + description: 'The scope of this rule. The scope and + (potentially) the filter determine which clients + match the rule. Possible values are: default, network, + host.' + type: string + submountAccessEnabled: + description: Whether allow access to subdirectories + under the root export? + type: boolean + suidEnabled: + description: Whether SUID is allowed? + type: boolean + type: object + type: array + type: object + type: array + directoryActiveDirectory: + description: A directory_active_directory block as defined below. + items: + properties: + cacheNetbiosName: + description: The NetBIOS name to assign to the HPC Cache + when it joins the Active Directory domain as a server. + type: string + dnsPrimaryIp: + description: The primary DNS IP address used to resolve + the Active Directory domain controller's FQDN. + type: string + dnsSecondaryIp: + description: The secondary DNS IP address used to resolve + the Active Directory domain controller's FQDN. + type: string + domainName: + description: The fully qualified domain name of the Active + Directory domain controller. + type: string + domainNetbiosName: + description: The Active Directory domain's NetBIOS name. + type: string + username: + description: The username of the Active Directory domain + administrator. + type: string + type: object + type: array + directoryFlatFile: + description: A directory_flat_file block as defined below. + items: + properties: + groupFileUri: + description: The URI of the file containing group information + (/etc/group file format in Unix-like OS). + type: string + passwordFileUri: + description: The URI of the file containing user information + (/etc/passwd file format in Unix-like OS). + type: string + type: object + type: array + directoryLdap: + description: A directory_ldap block as defined below. + items: + properties: + baseDn: + description: The base distinguished name (DN) for the LDAP + domain. + type: string + bind: + description: A bind block as defined above. + items: + properties: + dn: + description: The Bind Distinguished Name (DN) identity + to be used in the secure LDAP connection. + type: string + type: object + type: array + certificateValidationUri: + description: The URI of the CA certificate to validate the + LDAP secure connection. + type: string + downloadCertificateAutomatically: + description: Whether the certificate should be automatically + downloaded. This can be set to true only when certificate_validation_uri + is provided. + type: boolean + encrypted: + description: Whether the LDAP connection should be encrypted? + type: boolean + server: + description: The FQDN or IP address of the LDAP server. + type: string + type: object + type: array + dns: + description: A dns block as defined below. + items: + properties: + searchDomain: + description: The DNS search domain for the HPC Cache. + type: string + servers: + description: A list of DNS servers for the HPC Cache. At + most three IP(s) are allowed to set. + items: + type: string + type: array + type: object + type: array + identity: + description: An identity block as defined below. Changing this + forces a new resource to be created. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this HPC Cache. Changing this forces + a new resource to be created. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this HPC Cache. Only possible + value is UserAssigned. Changing this forces a new resource + to be created. + type: string + type: object + type: array + keyVaultKeyId: + description: The ID of the Key Vault Key which should be used + to encrypt the data in this HPC Cache. + type: string + location: + description: Specifies the supported Azure Region where the HPC + Cache should be created. Changing this forces a new resource + to be created. + type: string + mtu: + description: The IPv4 maximum transmission unit configured for + the subnet of the HPC Cache. Possible values range from 576 + - 1500. Defaults to 1500. + type: number + ntpServer: + description: The NTP server IP Address or FQDN for the HPC Cache. + Defaults to time.windows.com. + type: string + skuName: + description: The SKU of HPC Cache to use. Possible values are + (ReadWrite) - Standard_2G, Standard_4G Standard_8G or (ReadOnly) + - Standard_L4_5G, Standard_L9G, and Standard_L16G. Changing + this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the HPC Cache. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -675,11 +878,17 @@ spec: type: object x-kubernetes-validations: - message: cacheSizeInGb is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.cacheSizeInGb) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.cacheSizeInGb) + || has(self.initProvider.cacheSizeInGb)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: HPCCacheStatus defines the observed state of HPCCache. properties: diff --git a/package/crds/storagepool.azure.upbound.io_diskpools.yaml b/package/crds/storagepool.azure.upbound.io_diskpools.yaml index 55d9a5186..21533a601 100644 --- a/package/crds/storagepool.azure.upbound.io_diskpools.yaml +++ b/package/crds/storagepool.azure.upbound.io_diskpools.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: diskpools.storagepool.azure.upbound.io spec: group: storagepool.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -247,21 +246,68 @@ spec: type: string type: array type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Disk Pool should exist. + Changing this forces a new Disk Pool to be created. + type: string + skuName: + description: The SKU of the Disk Pool. Possible values are Basic_B1, + Standard_S1 and Premium_P1. Changing this forces a new Disk + Pool to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Disk Pool. + type: object + zones: + description: Specifies a list of Availability Zones in which this + Disk Pool should be located. Changing this forces a new Disk + Pool to be created. + items: + type: string + type: array + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -435,11 +481,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' - message: zones is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.zones) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.zones) + || has(self.initProvider.zones)' status: description: DiskPoolStatus defines the observed state of DiskPool. properties: diff --git a/package/crds/storagesync.azure.upbound.io_storagesyncs.yaml b/package/crds/storagesync.azure.upbound.io_storagesyncs.yaml index 0e405b9a9..3c10c0422 100644 --- a/package/crds/storagesync.azure.upbound.io_storagesyncs.yaml +++ b/package/crds/storagesync.azure.upbound.io_storagesyncs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: storagesyncs.storagesync.azure.upbound.io spec: group: storagesync.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -163,21 +162,60 @@ spec: Storage Sync. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + incomingTrafficPolicy: + description: Incoming traffic policy. Possible values are AllowAllTraffic + and AllowVirtualNetworksOnly. + type: string + location: + description: The Azure Region where the Storage Sync should exist. + Changing this forces a new Storage Sync to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Storage Sync. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -351,7 +389,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: StorageSyncStatus defines the observed state of StorageSync. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_clusters.yaml b/package/crds/streamanalytics.azure.upbound.io_clusters.yaml index 061b95344..4bacd02e3 100644 --- a/package/crds/streamanalytics.azure.upbound.io_clusters.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_clusters.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: clusters.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -163,21 +162,60 @@ spec: Stream Analytics. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: The Azure Region where the Stream Analytics Cluster + should exist. Changing this forces a new resource to be created. + type: string + streamingCapacity: + description: The number of streaming units supported by the Cluster. + Accepted values are multiples of 36 in the range of 36 to 216. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Stream Analytics. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -351,9 +389,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: streamingCapacity is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.streamingCapacity) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.streamingCapacity) + || has(self.initProvider.streamingCapacity)' status: description: ClusterStatus defines the observed state of Cluster. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_functionjavascriptudas.yaml b/package/crds/streamanalytics.azure.upbound.io_functionjavascriptuda.yaml similarity index 81% rename from package/crds/streamanalytics.azure.upbound.io_functionjavascriptudas.yaml rename to package/crds/streamanalytics.azure.upbound.io_functionjavascriptuda.yaml index 73f4dd8ac..4d7f48680 100644 --- a/package/crds/streamanalytics.azure.upbound.io_functionjavascriptudas.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_functionjavascriptuda.yaml @@ -3,9 +3,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null - name: functionjavascriptudas.streamanalytics.azure.upbound.io + controller-gen.kubebuilder.io/version: v0.12.1 + name: functionjavascriptuda.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io names: @@ -15,7 +14,7 @@ spec: - azure kind: FunctionJavascriptUda listKind: FunctionJavascriptUdaList - plural: functionjavascriptudas + plural: functionjavascriptuda singular: functionjavascriptuda scope: Cluster versions: @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -82,8 +81,6 @@ spec: Possible values include any, array, bigint, datetime, float, nvarchar(max) and record. type: string - required: - - type type: object type: array output: @@ -95,8 +92,6 @@ spec: Possible values include any, array, bigint, datetime, float, nvarchar(max) and record. type: string - required: - - type type: object type: array script: @@ -181,21 +176,75 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + input: + description: One or more input blocks as defined below. + items: + properties: + configurationParameter: + description: Is this input parameter a configuration parameter? + Defaults to false. + type: boolean + type: + description: The input data type of this JavaScript Function. + Possible values include any, array, bigint, datetime, + float, nvarchar(max) and record. + type: string + type: object + type: array + output: + description: An output block as defined below. + items: + properties: + type: + description: The output data type from this JavaScript Function. + Possible values include any, array, bigint, datetime, + float, nvarchar(max) and record. + type: string + type: object + type: array + script: + description: The JavaScript of this UDA Function. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -369,11 +418,17 @@ spec: type: object x-kubernetes-validations: - message: input is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.input) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.input) + || has(self.initProvider.input)' - message: output is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.output) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.output) + || has(self.initProvider.output)' - message: script is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.script) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.script) + || has(self.initProvider.script)' status: description: FunctionJavascriptUdaStatus defines the observed state of FunctionJavascriptUda. diff --git a/package/crds/streamanalytics.azure.upbound.io_jobs.yaml b/package/crds/streamanalytics.azure.upbound.io_jobs.yaml index 89e8d52c9..fbb0d684a 100644 --- a/package/crds/streamanalytics.azure.upbound.io_jobs.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_jobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: jobs.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -106,8 +105,6 @@ spec: that should be configured on this Stream Analytics Job. The only possible value is SystemAssigned. type: string - required: - - type type: object type: array jobStorageAccount: @@ -142,7 +139,6 @@ spec: type: string required: - accountKeySecretRef - - accountName type: object type: array location: @@ -260,21 +256,135 @@ spec: a new resource to be created. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + compatibilityLevel: + description: Specifies the compatibility level for this job - + which controls certain runtime behaviours of the streaming job. + Possible values are 1.0, 1.1 and 1.2. + type: string + contentStoragePolicy: + description: The policy for storing stream analytics content. + Possible values are JobStorageAccount, SystemAccount. + type: string + dataLocale: + description: Specifies the Data Locale of the Job, which should + be a supported .NET Culture. + type: string + eventsLateArrivalMaxDelayInSeconds: + description: Specifies the maximum tolerable delay in seconds + where events arriving late could be included. Supported range + is -1 (indefinite) to 1814399 (20d 23h 59m 59s). Default is + 0. + type: number + eventsOutOfOrderMaxDelayInSeconds: + description: Specifies the maximum tolerable delay in seconds + where out-of-order events can be adjusted to be back in order. + Supported range is 0 to 599 (9m 59s). Default is 5. + type: number + eventsOutOfOrderPolicy: + description: Specifies the policy which should be applied to events + which arrive out of order in the input event stream. Possible + values are Adjust and Drop. Default is Adjust. + type: string + identity: + description: An identity block as defined below. + items: + properties: + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Stream Analytics Job. + The only possible value is SystemAssigned. + type: string + type: object + type: array + jobStorageAccount: + description: The details of the job storage account. A job_storage_account + block as defined below. + items: + properties: + accountName: + description: The name of the Azure storage account. + type: string + authenticationMode: + description: The authentication mode of the storage account. + The only supported value is ConnectionString. Defaults + to ConnectionString. + type: string + type: object + type: array + location: + description: The Azure Region in which the Resource Group exists. + Changing this forces a new resource to be created. + type: string + outputErrorPolicy: + description: Specifies the policy which should be applied to events + which arrive at the output and cannot be written to the external + storage due to being malformed (such as missing column values, + column values of wrong type or size). Possible values are Drop + and Stop. Default is Drop. + type: string + streamAnalyticsClusterId: + description: The ID of an existing Stream Analytics Cluster where + the Stream Analytics Job should run. + type: string + streamingUnits: + description: Specifies the number of streaming units that the + streaming job uses. Supported values are 1, 3, 6 and multiples + of 6 up to 120. + type: number + tags: + additionalProperties: + type: string + description: A mapping of tags assigned to the resource. + type: object + transformationQuery: + description: Specifies the query that will be run in the streaming + job, written in Stream Analytics Query Language (SAQL). + type: string + type: + description: The type of the Stream Analytics Job. Possible values + are Cloud and Edge. Defaults to Cloud. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -448,9 +558,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: transformationQuery is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.transformationQuery) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.transformationQuery) + || has(self.initProvider.transformationQuery)' status: description: JobStatus defines the observed state of Job. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_managedprivateendpoints.yaml b/package/crds/streamanalytics.azure.upbound.io_managedprivateendpoints.yaml index 9e2bd172b..8d715234f 100644 --- a/package/crds/streamanalytics.azure.upbound.io_managedprivateendpoints.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_managedprivateendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managedprivateendpoints.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -312,21 +311,51 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + subresourceName: + description: Specifies the sub resource name which the Stream + Analytics Private Endpoint is able to connect to. Changing this + forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -500,7 +529,9 @@ spec: type: object x-kubernetes-validations: - message: subresourceName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subresourceName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subresourceName) + || has(self.initProvider.subresourceName)' status: description: ManagedPrivateEndpointStatus defines the observed state of ManagedPrivateEndpoint. diff --git a/package/crds/streamanalytics.azure.upbound.io_outputblobs.yaml b/package/crds/streamanalytics.azure.upbound.io_outputblobs.yaml index a5fe522c4..95b4955cf 100644 --- a/package/crds/streamanalytics.azure.upbound.io_outputblobs.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_outputblobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: outputblobs.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -192,8 +191,6 @@ spec: data streams. Possible values are Avro, Csv, Json and Parquet. type: string - required: - - type type: object type: array storageAccountKeySecretRef: @@ -448,21 +445,97 @@ spec: the value of this property is used as the time format instead. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationMode: + description: The authentication mode for the Stream Output. Possible + values are Msi and ConnectionString. Defaults to ConnectionString. + type: string + batchMaxWaitTime: + description: The maximum wait time per batch in hh:mm:ss e.g. + 00:02:00 for two minutes. + type: string + batchMinRows: + description: The minimum number of rows per batch (must be between + 0 and 10000). + type: number + dateFormat: + description: The date format. Wherever {date} appears in path_pattern, + the value of this property is used as the date format instead. + type: string + pathPattern: + description: The blob path pattern. Not a regular expression. + It represents a pattern against which blob names will be matched + to determine whether or not they should be included as input + or output to the job. + type: string + serialization: + description: A serialization block as defined below. + items: + properties: + encoding: + description: The encoding of the incoming data in the case + of input and the encoding of outgoing data in the case + of output. It currently can only be set to UTF8. + type: string + fieldDelimiter: + description: "The delimiter that will be used to separate + comma-separated value (CSV) records. Possible values are + \ (space), , (comma), \t (tab), | (pipe) and ;." + type: string + format: + description: Specifies the format of the JSON the output + will be written in. Possible values are Array and LineSeparated. + type: string + type: + description: The serialization format used for outgoing + data streams. Possible values are Avro, Csv, Json and + Parquet. + type: string + type: object + type: array + timeFormat: + description: The time format. Wherever {time} appears in path_pattern, + the value of this property is used as the time format instead. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -636,13 +709,21 @@ spec: type: object x-kubernetes-validations: - message: dateFormat is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dateFormat) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dateFormat) + || has(self.initProvider.dateFormat)' - message: pathPattern is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.pathPattern) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.pathPattern) + || has(self.initProvider.pathPattern)' - message: serialization is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serialization) + || has(self.initProvider.serialization)' - message: timeFormat is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timeFormat) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.timeFormat) + || has(self.initProvider.timeFormat)' status: description: OutputBlobStatus defines the observed state of OutputBlob. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_outputeventhubs.yaml b/package/crds/streamanalytics.azure.upbound.io_outputeventhubs.yaml index c6a2418b3..e21f9d944 100644 --- a/package/crds/streamanalytics.azure.upbound.io_outputeventhubs.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_outputeventhubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: outputeventhubs.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -260,8 +259,6 @@ spec: data streams. Possible values are Avro, Csv, Json and Parquet. type: string - required: - - type type: object type: array servicebusNamespace: @@ -373,21 +370,90 @@ spec: required: - streamAnalyticsJobName type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationMode: + description: The authentication mode for the Stream Output. Possible + values are Msi and ConnectionString. Defaults to ConnectionString. + type: string + partitionKey: + description: The column that is used for the Event Hub partition + key. + type: string + propertyColumns: + description: A list of property columns to add to the Event Hub + output. + items: + type: string + type: array + serialization: + description: A serialization block as defined below. + items: + properties: + encoding: + description: The encoding of the incoming data in the case + of input and the encoding of outgoing data in the case + of output. It currently can only be set to UTF8. + type: string + fieldDelimiter: + description: "The delimiter that will be used to separate + comma-separated value (CSV) records. Possible values are + \ (space), , (comma), \t (tab), | (pipe) and ;." + type: string + format: + description: Specifies the format of the JSON the output + will be written in. Possible values are Array and LineSeparated. + type: string + type: + description: The serialization format used for outgoing + data streams. Possible values are Avro, Csv, Json and + Parquet. + type: string + type: object + type: array + sharedAccessPolicyName: + description: The shared access policy name for the Event Hub, + Service Bus Queue, Service Bus Topic, etc. Required when authentication_mode + is set to ConnectionString. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -561,7 +627,9 @@ spec: type: object x-kubernetes-validations: - message: serialization is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serialization) + || has(self.initProvider.serialization)' status: description: OutputEventHubStatus defines the observed state of OutputEventHub. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_outputfunctions.yaml b/package/crds/streamanalytics.azure.upbound.io_outputfunctions.yaml index f476a86cd..92f9df81f 100644 --- a/package/crds/streamanalytics.azure.upbound.io_outputfunctions.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_outputfunctions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: outputfunctions.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -332,21 +331,57 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + batchMaxCount: + description: The maximum number of events in each batch that's + sent to the function. Defaults to 100. + type: number + batchMaxInBytes: + description: The maximum batch size in bytes that's sent to the + function. Defaults to 262144 (256 kB). + type: number + functionName: + description: The name of the function in the Function App. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -520,9 +555,12 @@ spec: type: object x-kubernetes-validations: - message: apiKeySecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.apiKeySecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.apiKeySecretRef)' - message: functionName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.functionName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.functionName) + || has(self.initProvider.functionName)' status: description: OutputFunctionStatus defines the observed state of OutputFunction. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_outputmssqls.yaml b/package/crds/streamanalytics.azure.upbound.io_outputmssqls.yaml index bb1d18695..f4d6586bd 100644 --- a/package/crds/streamanalytics.azure.upbound.io_outputmssqls.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_outputmssqls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: outputmssqls.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -424,21 +423,72 @@ spec: if authentication_mode is ConnectionString. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationMode: + description: The authentication mode for the Stream Output. Possible + values are Msi and ConnectionString. Defaults to ConnectionString. + type: string + database: + description: The MS SQL database name where the reference table + exists. Changing this forces a new resource to be created. + type: string + maxBatchCount: + description: The max batch count to write to the SQL Database. + Defaults to 10000. Possible values are between 1 and 1073741824. + type: number + maxWriterCount: + description: The max writer count for the SQL Database. Defaults + to 1. Possible values are 0 which bases the writer count on + the query partition and 1 which corresponds to a single writer. + type: number + name: + description: The name of the Stream Output. Changing this forces + a new resource to be created. + type: string + user: + description: Username used to login to the Microsoft SQL Server. + Changing this forces a new resource to be created. Required + if authentication_mode is ConnectionString. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -612,9 +662,13 @@ spec: type: object x-kubernetes-validations: - message: database is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.database) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.database) + || has(self.initProvider.database)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: OutputMSSQLStatus defines the observed state of OutputMSSQL. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_outputpowerbis.yaml b/package/crds/streamanalytics.azure.upbound.io_outputpowerbis.yaml index 37fb456bf..c8a9c2db4 100644 --- a/package/crds/streamanalytics.azure.upbound.io_outputpowerbis.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_outputpowerbis.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: outputpowerbis.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -169,21 +168,69 @@ spec: used to obtain the refresh token. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dataset: + description: The name of the Power BI dataset. + type: string + groupId: + description: The ID of the Power BI group, this must be a valid + UUID. + type: string + groupName: + description: The name of the Power BI group. Use this property + to help remember which specific Power BI group id was used. + type: string + table: + description: The name of the Power BI table under the specified + dataset. + type: string + tokenUserDisplayName: + description: The user display name of the user that was used to + obtain the refresh token. + type: string + tokenUserPrincipalName: + description: The user principal name (UPN) of the user that was + used to obtain the refresh token. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -357,13 +404,21 @@ spec: type: object x-kubernetes-validations: - message: dataset is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dataset) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dataset) + || has(self.initProvider.dataset)' - message: groupId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.groupId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.groupId) + || has(self.initProvider.groupId)' - message: groupName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.groupName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.groupName) + || has(self.initProvider.groupName)' - message: table is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.table) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.table) + || has(self.initProvider.table)' status: description: OutputPowerBIStatus defines the observed state of OutputPowerBI. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_outputservicebusqueues.yaml b/package/crds/streamanalytics.azure.upbound.io_outputservicebusqueues.yaml index b64e8cde4..6f01c7ac6 100644 --- a/package/crds/streamanalytics.azure.upbound.io_outputservicebusqueues.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_outputservicebusqueues.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: outputservicebusqueues.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -260,8 +259,6 @@ spec: data streams. Possible values are Avro, Csv, Json and Parquet. type: string - required: - - type type: object type: array servicebusNamespace: @@ -451,21 +448,97 @@ spec: Queue Output. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationMode: + description: The authentication mode for the Stream Output. Possible + values are Msi and ConnectionString. Defaults to ConnectionString. + type: string + name: + description: The name of the Stream Output. Changing this forces + a new resource to be created. + type: string + propertyColumns: + description: A list of property columns to add to the Service + Bus Queue output. + items: + type: string + type: array + serialization: + description: A serialization block as defined below. + items: + properties: + encoding: + description: The encoding of the incoming data in the case + of input and the encoding of outgoing data in the case + of output. It currently can only be set to UTF8. + type: string + fieldDelimiter: + description: "The delimiter that will be used to separate + comma-separated value (CSV) records. Possible values are + \ (space), , (comma), \t (tab), | (pipe) and ;." + type: string + format: + description: Specifies the format of the JSON the output + will be written in. Possible values are Array and LineSeparated. + type: string + type: + description: The serialization format used for outgoing + data streams. Possible values are Avro, Csv, Json and + Parquet. + type: string + type: object + type: array + sharedAccessPolicyName: + description: The shared access policy name for the Event Hub, + Service Bus Queue, Service Bus Topic, etc. Required if authentication_mode + is ConnectionString. + type: string + systemPropertyColumns: + additionalProperties: + type: string + description: A key-value pair of system property columns that + will be attached to the outgoing messages for the Service Bus + Queue Output. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -639,9 +712,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: serialization is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serialization) + || has(self.initProvider.serialization)' status: description: OutputServiceBusQueueStatus defines the observed state of OutputServiceBusQueue. diff --git a/package/crds/streamanalytics.azure.upbound.io_outputservicebustopics.yaml b/package/crds/streamanalytics.azure.upbound.io_outputservicebustopics.yaml index b9446b6ba..4e444d387 100644 --- a/package/crds/streamanalytics.azure.upbound.io_outputservicebustopics.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_outputservicebustopics.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: outputservicebustopics.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -184,8 +183,6 @@ spec: data streams. Possible values are Avro, Csv, Json and Parquet. type: string - required: - - type type: object type: array servicebusNamespace: @@ -451,21 +448,97 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationMode: + description: The authentication mode for the Stream Output. Possible + values are Msi and ConnectionString. Defaults to ConnectionString. + type: string + name: + description: The name of the Stream Output. Changing this forces + a new resource to be created. + type: string + propertyColumns: + description: A list of property columns to add to the Service + Bus Topic output. + items: + type: string + type: array + serialization: + description: A serialization block as defined below. + items: + properties: + encoding: + description: The encoding of the incoming data in the case + of input and the encoding of outgoing data in the case + of output. It currently can only be set to UTF8. + type: string + fieldDelimiter: + description: "The delimiter that will be used to separate + comma-separated value (CSV) records. Possible values are + \ (space), , (comma), \t (tab), | (pipe) and ;." + type: string + format: + description: Specifies the format of the JSON the output + will be written in. Possible values are Array and LineSeparated. + type: string + type: + description: The serialization format used for outgoing + data streams. Possible values are Avro, Csv, Json and + Parquet. + type: string + type: object + type: array + sharedAccessPolicyName: + description: The shared access policy name for the Event Hub, + Service Bus Queue, Service Bus Topic, etc. Required if authentication_mode + is ConnectionString. + type: string + systemPropertyColumns: + additionalProperties: + type: string + description: A key-value pair of system property columns that + will be attached to the outgoing messages for the Service Bus + Topic Output. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -639,9 +712,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: serialization is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serialization) + || has(self.initProvider.serialization)' status: description: OutputServiceBusTopicStatus defines the observed state of OutputServiceBusTopic. diff --git a/package/crds/streamanalytics.azure.upbound.io_outputsynapses.yaml b/package/crds/streamanalytics.azure.upbound.io_outputsynapses.yaml index 6505fd3f8..eaf9d692f 100644 --- a/package/crds/streamanalytics.azure.upbound.io_outputsynapses.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_outputsynapses.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: outputsynapses.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -333,21 +332,58 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + database: + description: The name of the Azure SQL database. Changing this + forces a new resource to be created. + type: string + server: + description: The name of the SQL server containing the Azure SQL + database. Changing this forces a new resource to be created. + type: string + table: + description: The name of the table in the Azure SQL database. + Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -521,13 +557,20 @@ spec: type: object x-kubernetes-validations: - message: database is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.database) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.database) + || has(self.initProvider.database)' - message: passwordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)' - message: server is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.server) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.server) + || has(self.initProvider.server)' - message: table is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.table) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.table) + || has(self.initProvider.table)' status: description: OutputSynapseStatus defines the observed state of OutputSynapse. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_outputtables.yaml b/package/crds/streamanalytics.azure.upbound.io_outputtables.yaml index 1f184c57e..495d583db 100644 --- a/package/crds/streamanalytics.azure.upbound.io_outputtables.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_outputtables.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: outputtables.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -343,21 +342,64 @@ spec: required: - streamAnalyticsJobName type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + batchSize: + description: The number of records for a batch operation. Must + be between 1 and 100. + type: number + columnsToRemove: + description: A list of the column names to be removed from output + event entities. + items: + type: string + type: array + partitionKey: + description: The name of the output column that contains the partition + key. + type: string + rowKey: + description: The name of the output column that contains the row + key. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -531,13 +573,20 @@ spec: type: object x-kubernetes-validations: - message: batchSize is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.batchSize) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.batchSize) + || has(self.initProvider.batchSize)' - message: partitionKey is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.partitionKey) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.partitionKey) + || has(self.initProvider.partitionKey)' - message: rowKey is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rowKey) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.rowKey) + || has(self.initProvider.rowKey)' - message: storageAccountKeySecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountKeySecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageAccountKeySecretRef)' status: description: OutputTableStatus defines the observed state of OutputTable. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_referenceinputblobs.yaml b/package/crds/streamanalytics.azure.upbound.io_referenceinputblobs.yaml index 3c90624d5..a02eb20de 100644 --- a/package/crds/streamanalytics.azure.upbound.io_referenceinputblobs.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_referenceinputblobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: referenceinputblobs.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -184,8 +183,6 @@ spec: description: The serialization format used for the reference data. Possible values are Avro, Csv and Json. type: string - required: - - type type: object type: array storageAccountKeySecretRef: @@ -441,21 +438,89 @@ spec: the value of this property is used as the time format instead. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationMode: + description: The authentication mode for the Stream Analytics + Reference Input. Possible values are Msi and ConnectionString. + Defaults to ConnectionString. + type: string + dateFormat: + description: The date format. Wherever {date} appears in path_pattern, + the value of this property is used as the date format instead. + type: string + name: + description: The name of the Reference Input Blob. Changing this + forces a new resource to be created. + type: string + pathPattern: + description: The blob path pattern. Not a regular expression. + It represents a pattern against which blob names will be matched + to determine whether or not they should be included as input + or output to the job. + type: string + serialization: + description: A serialization block as defined below. + items: + properties: + encoding: + description: The encoding of the incoming data in the case + of input and the encoding of outgoing data in the case + of output. It currently can only be set to UTF8. + type: string + fieldDelimiter: + description: "The delimiter that will be used to separate + comma-separated value (CSV) records. Possible values are + \ (space), , (comma), \t (tab), | (pipe) and ;." + type: string + type: + description: The serialization format used for the reference + data. Possible values are Avro, Csv and Json. + type: string + type: object + type: array + timeFormat: + description: The time format. Wherever {time} appears in path_pattern, + the value of this property is used as the time format instead. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -629,15 +694,25 @@ spec: type: object x-kubernetes-validations: - message: dateFormat is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dateFormat) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dateFormat) + || has(self.initProvider.dateFormat)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: pathPattern is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.pathPattern) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.pathPattern) + || has(self.initProvider.pathPattern)' - message: serialization is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serialization) + || has(self.initProvider.serialization)' - message: timeFormat is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timeFormat) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.timeFormat) + || has(self.initProvider.timeFormat)' status: description: ReferenceInputBlobStatus defines the observed state of ReferenceInputBlob. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_referenceinputmssqls.yaml b/package/crds/streamanalytics.azure.upbound.io_referenceinputmssqls.yaml index c6da71a73..a27b00968 100644 --- a/package/crds/streamanalytics.azure.upbound.io_referenceinputmssqls.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_referenceinputmssqls.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: referenceinputmssqls.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -351,21 +350,72 @@ spec: required: - streamAnalyticsJobName type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + deltaSnapshotQuery: + description: The query used to retrieve incremental changes in + the reference data from the MS SQL database. Cannot be set when + refresh_type is Static. + type: string + fullSnapshotQuery: + description: The query used to retrieve the reference data from + the MS SQL database. + type: string + refreshIntervalDuration: + description: The frequency in hh:mm:ss with which the reference + data should be retrieved from the MS SQL database e.g. 00:20:00 + for every 20 minutes. Must be set when refresh_type is RefreshPeriodicallyWithFull + or RefreshPeriodicallyWithDelta. + type: string + refreshType: + description: Defines whether and how the reference data should + be refreshed. Accepted values are Static, RefreshPeriodicallyWithFull + and RefreshPeriodicallyWithDelta. + type: string + table: + description: The name of the table in the Azure SQL database. + type: string + username: + description: The username to connect to the MS SQL database. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -539,13 +589,20 @@ spec: type: object x-kubernetes-validations: - message: fullSnapshotQuery is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.fullSnapshotQuery) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.fullSnapshotQuery) + || has(self.initProvider.fullSnapshotQuery)' - message: passwordSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.passwordSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)' - message: refreshType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.refreshType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.refreshType) + || has(self.initProvider.refreshType)' - message: username is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.username) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.username) + || has(self.initProvider.username)' status: description: ReferenceInputMSSQLStatus defines the observed state of ReferenceInputMSSQL. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_streaminputblobs.yaml b/package/crds/streamanalytics.azure.upbound.io_streaminputblobs.yaml index 9d6f1e85f..b5cfe7eb2 100644 --- a/package/crds/streamanalytics.azure.upbound.io_streaminputblobs.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_streaminputblobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: streaminputblobs.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -179,8 +178,6 @@ spec: description: The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. type: string - required: - - type type: object type: array storageAccountKeySecretRef: @@ -435,21 +432,84 @@ spec: the value of this property is used as the time format instead. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dateFormat: + description: The date format. Wherever {date} appears in path_pattern, + the value of this property is used as the date format instead. + type: string + name: + description: The name of the Stream Input Blob. Changing this + forces a new resource to be created. + type: string + pathPattern: + description: The blob path pattern. Not a regular expression. + It represents a pattern against which blob names will be matched + to determine whether or not they should be included as input + or output to the job. + type: string + serialization: + description: A serialization block as defined below. + items: + properties: + encoding: + description: The encoding of the incoming data in the case + of input and the encoding of outgoing data in the case + of output. It currently can only be set to UTF8. + type: string + fieldDelimiter: + description: "The delimiter that will be used to separate + comma-separated value (CSV) records. Possible values are + \ (space), , (comma), \t (tab), | (pipe) and ;." + type: string + type: + description: The serialization format used for incoming + data streams. Possible values are Avro, Csv and Json. + type: string + type: object + type: array + timeFormat: + description: The time format. Wherever {time} appears in path_pattern, + the value of this property is used as the time format instead. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -623,17 +683,28 @@ spec: type: object x-kubernetes-validations: - message: dateFormat is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dateFormat) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dateFormat) + || has(self.initProvider.dateFormat)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: pathPattern is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.pathPattern) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.pathPattern) + || has(self.initProvider.pathPattern)' - message: serialization is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serialization) + || has(self.initProvider.serialization)' - message: storageAccountKeySecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountKeySecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageAccountKeySecretRef)' - message: timeFormat is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.timeFormat) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.timeFormat) + || has(self.initProvider.timeFormat)' status: description: StreamInputBlobStatus defines the observed state of StreamInputBlob. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_streaminputeventhubs.yaml b/package/crds/streamanalytics.azure.upbound.io_streaminputeventhubs.yaml index 10b8b5fa7..ef167f31f 100644 --- a/package/crds/streamanalytics.azure.upbound.io_streaminputeventhubs.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_streaminputeventhubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: streaminputeventhubs.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -335,8 +334,6 @@ spec: description: The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. type: string - required: - - type type: object type: array servicebusNamespace: @@ -518,21 +515,82 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + authenticationMode: + description: The authentication mode for the Stream Output. Possible + values are Msi and ConnectionString. Defaults to ConnectionString. + type: string + name: + description: The name of the Stream Input EventHub. Changing this + forces a new resource to be created. + type: string + partitionKey: + description: The property the input Event Hub has been partitioned + by. + type: string + serialization: + description: A serialization block as defined below. + items: + properties: + encoding: + description: The encoding of the incoming data in the case + of input and the encoding of outgoing data in the case + of output. It currently can only be set to UTF8. + type: string + fieldDelimiter: + description: "The delimiter that will be used to separate + comma-separated value (CSV) records. Possible values are + \ (space), , (comma), \t (tab), | (pipe) and ;." + type: string + type: + description: The serialization format used for incoming + data streams. Possible values are Avro, Csv and Json. + type: string + type: object + type: array + sharedAccessPolicyName: + description: The shared access policy name for the Event Hub, + Service Bus Queue, Service Bus Topic, etc. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -706,9 +764,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: serialization is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serialization) + || has(self.initProvider.serialization)' status: description: StreamInputEventHubStatus defines the observed state of StreamInputEventHub. properties: diff --git a/package/crds/streamanalytics.azure.upbound.io_streaminputiothubs.yaml b/package/crds/streamanalytics.azure.upbound.io_streaminputiothubs.yaml index 36e135688..2de328536 100644 --- a/package/crds/streamanalytics.azure.upbound.io_streaminputiothubs.yaml +++ b/package/crds/streamanalytics.azure.upbound.io_streaminputiothubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: streaminputiothubs.streamanalytics.azure.upbound.io spec: group: streamanalytics.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -330,8 +329,6 @@ spec: description: The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. type: string - required: - - type type: object type: array sharedAccessPolicyKeySecretRef: @@ -434,21 +431,78 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endpoint: + description: The IoT Hub endpoint to connect to (ie. messages/events, + messages/operationsMonitoringEvents, etc.). + type: string + name: + description: The name of the Stream Input IoTHub. Changing this + forces a new resource to be created. + type: string + serialization: + description: A serialization block as defined below. + items: + properties: + encoding: + description: The encoding of the incoming data in the case + of input and the encoding of outgoing data in the case + of output. It currently can only be set to UTF8. + type: string + fieldDelimiter: + description: "The delimiter that will be used to separate + comma-separated value (CSV) records. Possible values are + \ (space), , (comma), \t (tab), | (pipe) and ;." + type: string + type: + description: The serialization format used for incoming + data streams. Possible values are Avro, Csv and Json. + type: string + type: object + type: array + sharedAccessPolicyName: + description: The shared access policy name for the Event Hub, + Service Bus Queue, Service Bus Topic, etc. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -622,15 +676,24 @@ spec: type: object x-kubernetes-validations: - message: endpoint is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endpoint) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endpoint) + || has(self.initProvider.endpoint)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: serialization is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.serialization) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.serialization) + || has(self.initProvider.serialization)' - message: sharedAccessPolicyKeySecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sharedAccessPolicyKeySecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sharedAccessPolicyKeySecretRef)' - message: sharedAccessPolicyName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sharedAccessPolicyName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sharedAccessPolicyName) + || has(self.initProvider.sharedAccessPolicyName)' status: description: StreamInputIOTHubStatus defines the observed state of StreamInputIOTHub. properties: diff --git a/package/crds/synapse.azure.upbound.io_firewallrules.yaml b/package/crds/synapse.azure.upbound.io_firewallrules.yaml index 6cbc1bc4e..ec3698a8d 100644 --- a/package/crds/synapse.azure.upbound.io_firewallrules.yaml +++ b/package/crds/synapse.azure.upbound.io_firewallrules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: firewallrules.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -155,21 +154,54 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + endIpAddress: + description: The ending IP address to allow through the firewall + for this rule. + type: string + startIpAddress: + description: The starting IP address to allow through the firewall + for this rule. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -343,9 +375,13 @@ spec: type: object x-kubernetes-validations: - message: endIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.endIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.endIpAddress) + || has(self.initProvider.endIpAddress)' - message: startIpAddress is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.startIpAddress) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.startIpAddress) + || has(self.initProvider.startIpAddress)' status: description: FirewallRuleStatus defines the observed state of FirewallRule. properties: diff --git a/package/crds/synapse.azure.upbound.io_integrationruntimeazures.yaml b/package/crds/synapse.azure.upbound.io_integrationruntimeazures.yaml index 608bd2878..25c9c5241 100644 --- a/package/crds/synapse.azure.upbound.io_integrationruntimeazures.yaml +++ b/package/crds/synapse.azure.upbound.io_integrationruntimeazures.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: integrationruntimeazures.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -171,21 +170,69 @@ spec: which will execute data flow job. Defaults to 0. type: number type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + computeType: + description: Compute type of the cluster which will execute data + flow job. Valid values are General, ComputeOptimized and MemoryOptimized. + Defaults to General. + type: string + coreCount: + description: Core count of the cluster which will execute data + flow job. Valid values are 8, 16, 32, 48, 80, 144 and 272. Defaults + to 8. + type: number + description: + description: Integration runtime description. + type: string + location: + description: The Azure Region where the Synapse Azure Integration + Runtime should exist. Use AutoResolve to create an auto-resolve + integration runtime. Changing this forces a new Synapse Azure + Integration Runtime to be created. + type: string + timeToLiveMin: + description: Time to live (in minutes) setting of the cluster + which will execute data flow job. Defaults to 0. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -359,7 +406,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: IntegrationRuntimeAzureStatus defines the observed state of IntegrationRuntimeAzure. diff --git a/package/crds/synapse.azure.upbound.io_integrationruntimeselfhosteds.yaml b/package/crds/synapse.azure.upbound.io_integrationruntimeselfhosteds.yaml index fb1daa4b7..5f9a227bb 100644 --- a/package/crds/synapse.azure.upbound.io_integrationruntimeselfhosteds.yaml +++ b/package/crds/synapse.azure.upbound.io_integrationruntimeselfhosteds.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: integrationruntimeselfhosteds.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -151,21 +150,49 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + description: + description: Integration runtime description. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/synapse.azure.upbound.io_linkedservices.yaml b/package/crds/synapse.azure.upbound.io_linkedservices.yaml index 3b25cbb5d..31db00b70 100644 --- a/package/crds/synapse.azure.upbound.io_linkedservices.yaml +++ b/package/crds/synapse.azure.upbound.io_linkedservices.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linkedservices.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -291,21 +290,107 @@ spec: Synapse Linked Service. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + additionalProperties: + additionalProperties: + type: string + description: A map of additional properties to associate with + the Synapse Linked Service. + type: object + annotations: + description: List of tags that can be used for describing the + Synapse Linked Service. + items: + type: string + type: array + description: + description: The description for the Synapse Linked Service. + type: string + integrationRuntime: + description: A integration_runtime block as defined below. + items: + properties: + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the integration + runtime. + type: object + type: object + type: array + parameters: + additionalProperties: + type: string + description: A map of parameters to associate with the Synapse + Linked Service. + type: object + type: + description: The type of data stores that will be connected to + Synapse. Valid Values include AmazonMWS, AmazonRdsForOracle, + AmazonRdsForSqlServer, AmazonRedshift, AmazonS3, AzureBatch. + Changing this forces a new resource to be created. AzureBlobFS, + AzureBlobStorage, AzureDataExplorer, AzureDataLakeAnalytics, + AzureDataLakeStore, AzureDatabricks, AzureDatabricksDeltaLake, + AzureFileStorage, AzureFunction, AzureKeyVault, AzureML, AzureMLService, + AzureMariaDB, AzureMySql, AzurePostgreSql, AzureSqlDW, AzureSqlDatabase, + AzureSqlMI, AzureSearch, AzureStorage, AzureTableStorage, Cassandra, + CommonDataServiceForApps, Concur, CosmosDb, CosmosDbMongoDbApi, + Couchbase, CustomDataSource, Db2, Drill, Dynamics, DynamicsAX, + DynamicsCrm, Eloqua, FileServer, FtpServer, GoogleAdWords, GoogleBigQuery, + GoogleCloudStorage, Greenplum, HBase, HDInsight, HDInsightOnDemand, + HttpServer, Hdfs, Hive, Hubspot, Impala, Informix, Jira, LinkedService, + Magento, MariaDB, Marketo, MicrosoftAccess, MongoDb, MongoDbAtlas, + MongoDbV2, MySql, Netezza, OData, Odbc, Office365, Oracle, OracleServiceCloud, + Paypal, Phoenix, PostgreSql, Presto, QuickBooks, Responsys, + RestService, SqlServer, Salesforce, SalesforceMarketingCloud, + SalesforceServiceCloud, SapBW, SapCloudForCustomer, SapEcc, + SapHana, SapOpenHub, SapTable, ServiceNow, Sftp, SharePointOnlineList, + Shopify, Snowflake, Spark, Square, Sybase, Teradata, Vertica, + Web, Xero, Zoho. + type: string + typePropertiesJson: + description: A JSON object that contains the properties of the + Synapse Linked Service. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -479,9 +564,13 @@ spec: type: object x-kubernetes-validations: - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' - message: typePropertiesJson is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.typePropertiesJson) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.typePropertiesJson) + || has(self.initProvider.typePropertiesJson)' status: description: LinkedServiceStatus defines the observed state of LinkedService. properties: diff --git a/package/crds/synapse.azure.upbound.io_managedprivateendpoints.yaml b/package/crds/synapse.azure.upbound.io_managedprivateendpoints.yaml index b31d9d2d2..9567be06b 100644 --- a/package/crds/synapse.azure.upbound.io_managedprivateendpoints.yaml +++ b/package/crds/synapse.azure.upbound.io_managedprivateendpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: managedprivateendpoints.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -235,21 +234,56 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + name: + description: Specifies the name which should be used for this + Managed Private Endpoint. Changing this forces a new resource + to be created. + type: string + subresourceName: + description: Specifies the sub resource name which the Synapse + Private Endpoint is able to connect to. Changing this forces + a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -423,9 +457,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: subresourceName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.subresourceName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.subresourceName) + || has(self.initProvider.subresourceName)' status: description: ManagedPrivateEndpointStatus defines the observed state of ManagedPrivateEndpoint. diff --git a/package/crds/synapse.azure.upbound.io_privatelinkhubs.yaml b/package/crds/synapse.azure.upbound.io_privatelinkhubs.yaml index 50c9c195a..90f4123a8 100644 --- a/package/crds/synapse.azure.upbound.io_privatelinkhubs.yaml +++ b/package/crds/synapse.azure.upbound.io_privatelinkhubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: privatelinkhubs.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -159,21 +158,56 @@ spec: Synapse Private Link Hub. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the Azure location where the Synapse Private + Link Hub exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Synapse Private Link Hub. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -347,7 +381,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: PrivateLinkHubStatus defines the observed state of PrivateLinkHub. properties: diff --git a/package/crds/synapse.azure.upbound.io_roleassignments.yaml b/package/crds/synapse.azure.upbound.io_roleassignments.yaml index b7ab0b1b0..7bcd6a35b 100644 --- a/package/crds/synapse.azure.upbound.io_roleassignments.yaml +++ b/package/crds/synapse.azure.upbound.io_roleassignments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: roleassignments.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -159,21 +158,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + principalId: + description: The ID of the Principal (User, Group or Service Principal) + to assign the Synapse Role Definition to. Changing this forces + a new resource to be created. + type: string + roleName: + description: The Role Name of the Synapse Built-In Role. Changing + this forces a new resource to be created. + type: string + synapseSparkPoolId: + description: The Synapse Spark Pool which the Synapse Role Assignment + applies to. Changing this forces a new resource to be created. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -347,9 +384,13 @@ spec: type: object x-kubernetes-validations: - message: principalId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.principalId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.principalId) + || has(self.initProvider.principalId)' - message: roleName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.roleName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.roleName) + || has(self.initProvider.roleName)' status: description: RoleAssignmentStatus defines the observed state of RoleAssignment. properties: diff --git a/package/crds/synapse.azure.upbound.io_sparkpools.yaml b/package/crds/synapse.azure.upbound.io_sparkpools.yaml index 72f57a855..b06d06bcb 100644 --- a/package/crds/synapse.azure.upbound.io_sparkpools.yaml +++ b/package/crds/synapse.azure.upbound.io_sparkpools.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sparkpools.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -76,8 +75,6 @@ spec: description: Number of minutes of idle time before the Spark Pool is automatically paused. Must be between 5 and 10080. type: number - required: - - delayInMinutes type: object type: array autoScale: @@ -93,9 +90,6 @@ spec: description: The minimum number of nodes the Spark Pool can support. Must be between 3 and 200. type: number - required: - - maxNodeCount - - minNodeCount type: object type: array cacheSize: @@ -119,9 +113,6 @@ spec: filename: description: The name of the library requirements file. type: string - required: - - content - - filename type: object type: array maxExecutors: @@ -159,9 +150,6 @@ spec: description: The name of the file where the spark configuration content will be stored. type: string - required: - - content - - filename type: object type: array sparkEventsFolder: @@ -260,21 +248,148 @@ spec: Synapse Spark Pool. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + autoPause: + description: An auto_pause block as defined below. + items: + properties: + delayInMinutes: + description: Number of minutes of idle time before the Spark + Pool is automatically paused. Must be between 5 and 10080. + type: number + type: object + type: array + autoScale: + description: An auto_scale block as defined below. Exactly one + of node_count or auto_scale must be specified. + items: + properties: + maxNodeCount: + description: The maximum number of nodes the Spark Pool + can support. Must be between 3 and 200. + type: number + minNodeCount: + description: The minimum number of nodes the Spark Pool + can support. Must be between 3 and 200. + type: number + type: object + type: array + cacheSize: + description: The cache size in the Spark Pool. + type: number + computeIsolationEnabled: + description: Indicates whether compute isolation is enabled or + not. Defaults to false. + type: boolean + dynamicExecutorAllocationEnabled: + description: Indicates whether Dynamic Executor Allocation is + enabled or not. Defaults to false. + type: boolean + libraryRequirement: + description: A library_requirement block as defined below. + items: + properties: + content: + description: The content of library requirements. + type: string + filename: + description: The name of the library requirements file. + type: string + type: object + type: array + maxExecutors: + description: The maximum number of executors allocated only when + dynamic_executor_allocation_enabled set to true. + type: number + minExecutors: + description: The minimum number of executors allocated only when + dynamic_executor_allocation_enabled set to true. + type: number + nodeCount: + description: The number of nodes in the Spark Pool. Exactly one + of node_count or auto_scale must be specified. + type: number + nodeSize: + description: The level of node in the Spark Pool. Possible values + are Small, Medium, Large, None, XLarge, XXLarge and XXXLarge. + type: string + nodeSizeFamily: + description: The kind of nodes that the Spark Pool provides. Possible + values are MemoryOptimized and None. + type: string + sessionLevelPackagesEnabled: + description: Indicates whether session level packages are enabled + or not. Defaults to false. + type: boolean + sparkConfig: + description: A spark_config block as defined below. + items: + properties: + content: + description: The contents of a spark configuration. + type: string + filename: + description: The name of the file where the spark configuration + content will be stored. + type: string + type: object + type: array + sparkEventsFolder: + description: The Spark events folder. Defaults to /events. + type: string + sparkLogFolder: + description: The default folder where Spark logs will be written. + Defaults to /logs. + type: string + sparkVersion: + description: The Apache Spark version. Possible values are 2.4 + , 3.1 , 3.2 and 3.3. Defaults to 2.4. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Synapse Spark Pool. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -448,9 +563,13 @@ spec: type: object x-kubernetes-validations: - message: nodeSize is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nodeSize) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.nodeSize) + || has(self.initProvider.nodeSize)' - message: nodeSizeFamily is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.nodeSizeFamily) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.nodeSizeFamily) + || has(self.initProvider.nodeSizeFamily)' status: description: SparkPoolStatus defines the observed state of SparkPool. properties: diff --git a/package/crds/synapse.azure.upbound.io_sqlpoolextendedauditingpolicies.yaml b/package/crds/synapse.azure.upbound.io_sqlpoolextendedauditingpolicies.yaml index 57d9ccf8f..b671fd5b6 100644 --- a/package/crds/synapse.azure.upbound.io_sqlpoolextendedauditingpolicies.yaml +++ b/package/crds/synapse.azure.upbound.io_sqlpoolextendedauditingpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqlpoolextendedauditingpolicies.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -254,21 +253,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + logMonitoringEnabled: + description: Enable audit events to Azure Monitor? To enable server + audit events to Azure Monitor, please enable its master database + audit events to Azure Monitor. Defaults to true. + type: boolean + retentionInDays: + description: The number of days to retain logs for in the storage + account. Defaults to 0. + type: number + storageAccountAccessKeyIsSecondary: + description: Is storage_account_access_key value the storage's + secondary key? + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/synapse.azure.upbound.io_sqlpools.yaml b/package/crds/synapse.azure.upbound.io_sqlpools.yaml index 9c0a1fd2e..4a096b42a 100644 --- a/package/crds/synapse.azure.upbound.io_sqlpools.yaml +++ b/package/crds/synapse.azure.upbound.io_sqlpools.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqlpools.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -107,9 +106,6 @@ spec: which is to restore. Changing this forces a new Synapse SQL Pool to be created. type: string - required: - - pointInTime - - sourceDatabaseId type: object type: array skuName: @@ -203,21 +199,99 @@ spec: Synapse SQL Pool. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + collation: + description: The name of the collation to use with this pool, + only applicable when create_mode is set to Default. Azure default + is SQL_LATIN1_GENERAL_CP1_CI_AS. Changing this forces a new + resource to be created. + type: string + createMode: + description: 'Specifies how to create the SQL Pool. Valid values + are: Default, Recovery or PointInTimeRestore. Must be Default + to create a new database. Defaults to Default. Changing this + forces a new resource to be created.' + type: string + dataEncrypted: + description: Is transparent data encryption enabled? + type: boolean + geoBackupPolicyEnabled: + description: Is geo-backup policy enabled? Defaults to true. + type: boolean + recoveryDatabaseId: + description: The ID of the Synapse SQL Pool or SQL Database which + is to back up, only applicable when create_mode is set to Recovery. + Changing this forces a new Synapse SQL Pool to be created. + type: string + restore: + description: A restore block as defined below. only applicable + when create_mode is set to PointInTimeRestore. Changing this + forces a new resource to be created. + items: + properties: + pointInTime: + description: Specifies the Snapshot time to restore formatted + as an RFC3339 date string. Changing this forces a new + Synapse SQL Pool to be created. + type: string + sourceDatabaseId: + description: The ID of the Synapse SQL Pool or SQL Database + which is to restore. Changing this forces a new Synapse + SQL Pool to be created. + type: string + type: object + type: array + skuName: + description: Specifies the SKU Name for this Synapse SQL Pool. + Possible values are DW100c, DW200c, DW300c, DW400c, DW500c, + DW1000c, DW1500c, DW2000c, DW2500c, DW3000c, DW5000c, DW6000c, + DW7500c, DW10000c, DW15000c or DW30000c. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Synapse SQL Pool. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -391,7 +465,9 @@ spec: type: object x-kubernetes-validations: - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: SQLPoolStatus defines the observed state of SQLPool. properties: diff --git a/package/crds/synapse.azure.upbound.io_sqlpoolsecurityalertpolicies.yaml b/package/crds/synapse.azure.upbound.io_sqlpoolsecurityalertpolicies.yaml index 90532e91d..13bd38798 100644 --- a/package/crds/synapse.azure.upbound.io_sqlpoolsecurityalertpolicies.yaml +++ b/package/crds/synapse.azure.upbound.io_sqlpoolsecurityalertpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqlpoolsecurityalertpolicies.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -269,21 +268,73 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + disabledAlerts: + description: 'Specifies an array of alerts that are disabled. + Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly, Data_Exfiltration, Unsafe_Action.' + items: + type: string + type: array + emailAccountAdminsEnabled: + description: Boolean flag which specifies if the alert is sent + to the account administrators or not. Defaults to false. + type: boolean + emailAddresses: + description: Specifies an array of email addresses to which the + alert is sent. + items: + type: string + type: array + policyState: + description: Specifies the state of the policy, whether it is + enabled or disabled or a policy has not been applied yet on + the specific SQL pool. Possible values are Disabled, Enabled + and New. + type: string + retentionDays: + description: Specifies the number of days to keep in the Threat + Detection audit logs. Defaults to 0. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -457,7 +508,9 @@ spec: type: object x-kubernetes-validations: - message: policyState is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policyState) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.policyState) + || has(self.initProvider.policyState)' status: description: SQLPoolSecurityAlertPolicyStatus defines the observed state of SQLPoolSecurityAlertPolicy. diff --git a/package/crds/synapse.azure.upbound.io_sqlpoolworkloadclassifiers.yaml b/package/crds/synapse.azure.upbound.io_sqlpoolworkloadclassifiers.yaml index 1992d090e..5f033c045 100644 --- a/package/crds/synapse.azure.upbound.io_sqlpoolworkloadclassifiers.yaml +++ b/package/crds/synapse.azure.upbound.io_sqlpoolworkloadclassifiers.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqlpoolworkloadclassifiers.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -174,21 +173,70 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + context: + description: Specifies the session context value that a request + can be classified against. + type: string + endTime: + description: The workload classifier end time for classification. + It's of the HH:MM format in UTC time zone. + type: string + importance: + description: The workload classifier importance. The allowed values + are low, below_normal, normal, above_normal and high. + type: string + label: + description: Specifies the label value that a request can be classified + against. + type: string + memberName: + description: The workload classifier member name used to classified + against. + type: string + startTime: + description: The workload classifier start time for classification. + It's of the HH:MM format in UTC time zone. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -362,7 +410,9 @@ spec: type: object x-kubernetes-validations: - message: memberName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.memberName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.memberName) + || has(self.initProvider.memberName)' status: description: SQLPoolWorkloadClassifierStatus defines the observed state of SQLPoolWorkloadClassifier. diff --git a/package/crds/synapse.azure.upbound.io_sqlpoolworkloadgroups.yaml b/package/crds/synapse.azure.upbound.io_sqlpoolworkloadgroups.yaml index 3635f9a28..052c6e2b5 100644 --- a/package/crds/synapse.azure.upbound.io_sqlpoolworkloadgroups.yaml +++ b/package/crds/synapse.azure.upbound.io_sqlpoolworkloadgroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sqlpoolworkloadgroups.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -166,21 +165,66 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + importance: + description: The workload group importance level. Defaults to + normal. + type: string + maxResourcePercent: + description: The workload group cap percentage resource. + type: number + maxResourcePercentPerRequest: + description: The workload group request maximum grant percentage. + Defaults to 3. + type: number + minResourcePercent: + description: The workload group minimum percentage resource. + type: number + minResourcePercentPerRequest: + description: The workload group request minimum grant percentage. + type: number + queryExecutionTimeoutInSeconds: + description: The workload group query execution timeout. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -354,9 +398,13 @@ spec: type: object x-kubernetes-validations: - message: maxResourcePercent is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.maxResourcePercent) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.maxResourcePercent) + || has(self.initProvider.maxResourcePercent)' - message: minResourcePercent is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.minResourcePercent) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.minResourcePercent) + || has(self.initProvider.minResourcePercent)' status: description: SQLPoolWorkloadGroupStatus defines the observed state of SQLPoolWorkloadGroup. diff --git a/package/crds/synapse.azure.upbound.io_workspaceaadadmins.yaml b/package/crds/synapse.azure.upbound.io_workspaceaadadmins.yaml index c4675a5d1..2e0979bc3 100644 --- a/package/crds/synapse.azure.upbound.io_workspaceaadadmins.yaml +++ b/package/crds/synapse.azure.upbound.io_workspaceaadadmins.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: workspaceaadadmins.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,58 @@ spec: Synapse Workspace. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + login: + description: The login name of the Azure AD Administrator of this + Synapse Workspace. + type: string + objectId: + description: The object id of the Azure AD Administrator of this + Synapse Workspace. + type: string + tenantId: + description: The tenant id of the Azure AD Administrator of this + Synapse Workspace. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,11 +382,17 @@ spec: type: object x-kubernetes-validations: - message: login is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.login) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.login) + || has(self.initProvider.login)' - message: objectId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.objectId) + || has(self.initProvider.objectId)' - message: tenantId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tenantId) + || has(self.initProvider.tenantId)' status: description: WorkspaceAADAdminStatus defines the observed state of WorkspaceAADAdmin. properties: diff --git a/package/crds/synapse.azure.upbound.io_workspaceextendedauditingpolicies.yaml b/package/crds/synapse.azure.upbound.io_workspaceextendedauditingpolicies.yaml index 71754be3b..5636f06dd 100644 --- a/package/crds/synapse.azure.upbound.io_workspaceextendedauditingpolicies.yaml +++ b/package/crds/synapse.azure.upbound.io_workspaceextendedauditingpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: workspaceextendedauditingpolicies.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -254,21 +253,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + logMonitoringEnabled: + description: Enable audit events to Azure Monitor? To enable server + audit events to Azure Monitor, please enable its master database + audit events to Azure Monitor. Defaults to true. + type: boolean + retentionInDays: + description: The number of days to retain logs for in the storage + account. Defaults to 0. + type: number + storageAccountAccessKeyIsSecondary: + description: Is storage_account_access_key value the storage's + secondary key? + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/synapse.azure.upbound.io_workspaces.yaml b/package/crds/synapse.azure.upbound.io_workspaces.yaml index b23208f47..b0c3bc1ac 100644 --- a/package/crds/synapse.azure.upbound.io_workspaces.yaml +++ b/package/crds/synapse.azure.upbound.io_workspaces.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: workspaces.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -114,12 +113,6 @@ spec: tenantId: description: the ID of the tenant for the Azure DevOps account. type: string - required: - - accountName - - branchName - - projectName - - repositoryName - - rootFolder type: object type: array computeSubnetId: @@ -324,11 +317,6 @@ spec: description: Specifies the root folder within the repository. Set to / for the top level. type: string - required: - - accountName - - branchName - - repositoryName - - rootFolder type: object type: array identity: @@ -347,8 +335,6 @@ spec: Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array linkingAllowedForAadTenantIds: @@ -662,21 +648,209 @@ spec: Synapse Workspace. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + aadAdmin: + description: An aad_admin block as defined below. Conflicts with + customer_managed_key. + items: + properties: + login: + description: The login name of the Azure AD Administrator + of this Synapse Workspace. + type: string + objectId: + description: The object id of the Azure AD Administrator + of this Synapse Workspace. + type: string + tenantId: + description: The tenant id of the Azure AD Administrator + of this Synapse Workspace. + type: string + type: object + type: array + azureDevopsRepo: + description: An azure_devops_repo block as defined below. + items: + properties: + accountName: + description: Specifies the Azure DevOps account name. + type: string + branchName: + description: Specifies the collaboration branch of the repository + to get code from. + type: string + lastCommitId: + description: The last commit ID. + type: string + projectName: + description: Specifies the name of the Azure DevOps project. + type: string + repositoryName: + description: Specifies the name of the git repository. + type: string + rootFolder: + description: Specifies the root folder within the repository. + Set to / for the top level. + type: string + tenantId: + description: the ID of the tenant for the Azure DevOps account. + type: string + type: object + type: array + customerManagedKey: + description: A customer_managed_key block as defined below. Conflicts + with aad_admin. + items: + properties: + keyName: + description: An identifier for the key. Name needs to match + the name of the key used with the azurerm_synapse_workspace_key + resource. Defaults to "cmk" if not specified. + type: string + type: object + type: array + dataExfiltrationProtectionEnabled: + description: Is data exfiltration protection enabled in this workspace? + If set to true, managed_virtual_network_enabled must also be + set to true. Changing this forces a new resource to be created. + type: boolean + githubRepo: + description: A github_repo block as defined below. + items: + properties: + accountName: + description: Specifies the GitHub account name. + type: string + branchName: + description: Specifies the collaboration branch of the repository + to get code from. + type: string + gitUrl: + description: 'Specifies the GitHub Enterprise host name. + For example: https://github.mydomain.com.' + type: string + lastCommitId: + description: The last commit ID. + type: string + repositoryName: + description: Specifies the name of the git repository. + type: string + rootFolder: + description: Specifies the root folder within the repository. + Set to / for the top level. + type: string + type: object + type: array + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of User Assigned Managed Identity + IDs to be assigned to this Synapse Workspace. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be associated with this Synapse Workspace. + Possible values are SystemAssigned, UserAssigned and SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + linkingAllowedForAadTenantIds: + description: Allowed AAD Tenant Ids For Linking. + items: + type: string + type: array + location: + description: Specifies the Azure Region where the synapse Workspace + should exist. Changing this forces a new resource to be created. + type: string + managedVirtualNetworkEnabled: + description: Is Virtual Network enabled for all computes in this + workspace? Changing this forces a new resource to be created. + type: boolean + publicNetworkAccessEnabled: + description: Whether public network access is allowed for the + Cognitive Account. Defaults to true. + type: boolean + purviewId: + description: The ID of purview account. + type: string + sqlAadAdmin: + description: An sql_aad_admin block as defined below. + items: + properties: + login: + description: The login name of the Azure AD Administrator + of this Synapse Workspace SQL. + type: string + objectId: + description: The object id of the Azure AD Administrator + of this Synapse Workspace SQL. + type: string + tenantId: + description: The tenant id of the Azure AD Administrator + of this Synapse Workspace SQL. + type: string + type: object + type: array + sqlAdministratorLogin: + description: Specifies The login name of the SQL administrator. + Changing this forces a new resource to be created. If this is + not provided aad_admin or customer_managed_key must be provided. + type: string + sqlIdentityControlEnabled: + description: Are pipelines (running as workspace's system assigned + identity) allowed to access SQL pools? + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Synapse Workspace. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -850,7 +1024,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: WorkspaceStatus defines the observed state of Workspace. properties: diff --git a/package/crds/synapse.azure.upbound.io_workspacesecurityalertpolicies.yaml b/package/crds/synapse.azure.upbound.io_workspacesecurityalertpolicies.yaml index 46d523b4f..eabbbd0f9 100644 --- a/package/crds/synapse.azure.upbound.io_workspacesecurityalertpolicies.yaml +++ b/package/crds/synapse.azure.upbound.io_workspacesecurityalertpolicies.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: workspacesecurityalertpolicies.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -269,21 +268,73 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + disabledAlerts: + description: 'Specifies an array of alerts that are disabled. + Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, + Access_Anomaly, Data_Exfiltration, Unsafe_Action.' + items: + type: string + type: array + emailAccountAdminsEnabled: + description: Boolean flag which specifies if the alert is sent + to the account administrators or not. Defaults to false. + type: boolean + emailAddresses: + description: Specifies an array of email addresses to which the + alert is sent. + items: + type: string + type: array + policyState: + description: Specifies the state of the policy, whether it is + enabled or disabled or a policy has not been applied yet on + the specific workspace. Possible values are Disabled, Enabled + and New. + type: string + retentionDays: + description: Specifies the number of days to keep in the Threat + Detection audit logs. Defaults to 0. + type: number + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -457,7 +508,9 @@ spec: type: object x-kubernetes-validations: - message: policyState is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.policyState) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.policyState) + || has(self.initProvider.policyState)' status: description: WorkspaceSecurityAlertPolicyStatus defines the observed state of WorkspaceSecurityAlertPolicy. diff --git a/package/crds/synapse.azure.upbound.io_workspacesqlaadadmins.yaml b/package/crds/synapse.azure.upbound.io_workspacesqlaadadmins.yaml index 5b96a41b6..62d7e93c9 100644 --- a/package/crds/synapse.azure.upbound.io_workspacesqlaadadmins.yaml +++ b/package/crds/synapse.azure.upbound.io_workspacesqlaadadmins.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: workspacesqlaadadmins.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -158,21 +157,58 @@ spec: Synapse Workspace. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + login: + description: The login name of the Azure AD Administrator of this + Synapse Workspace. + type: string + objectId: + description: The object id of the Azure AD Administrator of this + Synapse Workspace. + type: string + tenantId: + description: The tenant id of the Azure AD Administrator of this + Synapse Workspace. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -346,11 +382,17 @@ spec: type: object x-kubernetes-validations: - message: login is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.login) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.login) + || has(self.initProvider.login)' - message: objectId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.objectId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.objectId) + || has(self.initProvider.objectId)' - message: tenantId is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tenantId) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tenantId) + || has(self.initProvider.tenantId)' status: description: WorkspaceSQLAADAdminStatus defines the observed state of WorkspaceSQLAADAdmin. diff --git a/package/crds/synapse.azure.upbound.io_workspacevulnerabilityassessments.yaml b/package/crds/synapse.azure.upbound.io_workspacevulnerabilityassessments.yaml index bd184e6a8..149d5da43 100644 --- a/package/crds/synapse.azure.upbound.io_workspacevulnerabilityassessments.yaml +++ b/package/crds/synapse.azure.upbound.io_workspacevulnerabilityassessments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: workspacevulnerabilityassessments.synapse.azure.upbound.io spec: group: synapse.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -214,21 +213,72 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + recurringScans: + description: The recurring scans settings. The recurring_scans + block supports fields documented below. + items: + properties: + emailSubscriptionAdminsEnabled: + description: Boolean flag which specifies if the schedule + scan notification will be sent to the subscription administrators. + Defaults to false. + type: boolean + emails: + description: Specifies an array of email addresses to which + the scan notification is sent. + items: + type: string + type: array + enabled: + description: Boolean flag which specifies if recurring scans + is enabled or disabled. Defaults to false. + type: boolean + type: object + type: array + storageContainerPath: + description: A blob storage container path to hold the scan results + (e.g. https://example.blob.core.windows.net/VaScans/). + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -402,7 +452,9 @@ spec: type: object x-kubernetes-validations: - message: storageContainerPath is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageContainerPath) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageContainerPath) + || has(self.initProvider.storageContainerPath)' status: description: WorkspaceVulnerabilityAssessmentStatus defines the observed state of WorkspaceVulnerabilityAssessment. diff --git a/package/crds/timeseriesinsights.azure.upbound.io_eventsourceeventhubs.yaml b/package/crds/timeseriesinsights.azure.upbound.io_eventsourceeventhubs.yaml index 47db069c7..0f875e48a 100644 --- a/package/crds/timeseriesinsights.azure.upbound.io_eventsourceeventhubs.yaml +++ b/package/crds/timeseriesinsights.azure.upbound.io_eventsourceeventhubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: eventsourceeventhubs.timeseriesinsights.azure.upbound.io spec: group: timeseriesinsights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -572,21 +571,60 @@ spec: time. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + timestampPropertyName: + description: Specifies the value that will be used as the event + source's timestamp. This value defaults to the event creation + time. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -760,9 +798,12 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sharedAccessKeySecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sharedAccessKeySecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sharedAccessKeySecretRef)' status: description: EventSourceEventHubStatus defines the observed state of EventSourceEventHub. properties: diff --git a/package/crds/timeseriesinsights.azure.upbound.io_eventsourceiothubs.yaml b/package/crds/timeseriesinsights.azure.upbound.io_eventsourceiothubs.yaml index 605e3e8d1..ea3605bcf 100644 --- a/package/crds/timeseriesinsights.azure.upbound.io_eventsourceiothubs.yaml +++ b/package/crds/timeseriesinsights.azure.upbound.io_eventsourceiothubs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: eventsourceiothubs.timeseriesinsights.azure.upbound.io spec: group: timeseriesinsights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -419,21 +418,64 @@ spec: time. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + sharedAccessKeyName: + description: Specifies the name of the Shared Access key that + grants the Event Source access to the IotHub. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + timestampPropertyName: + description: Specifies the value that will be used as the event + source's timestamp. This value defaults to the event creation + time. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -607,11 +649,16 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sharedAccessKeySecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sharedAccessKeySecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sharedAccessKeySecretRef)' - message: sharedAccessKeyName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sharedAccessKeyName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sharedAccessKeyName) + || has(self.initProvider.sharedAccessKeyName)' status: description: EventSourceIOTHubStatus defines the observed state of EventSourceIOTHub. properties: diff --git a/package/crds/timeseriesinsights.azure.upbound.io_gen2environments.yaml b/package/crds/timeseriesinsights.azure.upbound.io_gen2environments.yaml index b82714aef..a05fe9ccd 100644 --- a/package/crds/timeseriesinsights.azure.upbound.io_gen2environments.yaml +++ b/package/crds/timeseriesinsights.azure.upbound.io_gen2environments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: gen2environments.timeseriesinsights.azure.upbound.io spec: group: timeseriesinsights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -285,21 +284,78 @@ spec: query. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + idProperties: + description: A list of property ids for the Azure IoT Time Series + Insights Gen2 Environment. Changing this forces a new resource + to be created. + items: + type: string + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + skuName: + description: Specifies the SKU Name for this IoT Time Series Insights + Gen2 Environment. Currently it supports only L1. For gen2, capacity + cannot be specified. Changing this forces a new resource to + be created. + type: string + storage: + description: A storage block as defined below. + items: + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + warmStoreDataRetentionTime: + description: Specifies the ISO8601 timespan specifying the minimum + number of days the environment's events will be available for + query. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -473,13 +529,21 @@ spec: type: object x-kubernetes-validations: - message: idProperties is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.idProperties) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.idProperties) + || has(self.initProvider.idProperties)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' - message: storage is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storage) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storage) + || has(self.initProvider.storage)' status: description: Gen2EnvironmentStatus defines the observed state of Gen2Environment. properties: diff --git a/package/crds/timeseriesinsights.azure.upbound.io_referencedatasets.yaml b/package/crds/timeseriesinsights.azure.upbound.io_referencedatasets.yaml index 24fe7a79c..7fbb1d228 100644 --- a/package/crds/timeseriesinsights.azure.upbound.io_referencedatasets.yaml +++ b/package/crds/timeseriesinsights.azure.upbound.io_referencedatasets.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: referencedatasets.timeseriesinsights.azure.upbound.io spec: group: timeseriesinsights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -87,9 +86,6 @@ spec: include Bool, DateTime, Double, String. Changing this forces a new resource to be created. type: string - required: - - name - - type type: object type: array location: @@ -183,21 +179,76 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dataStringComparisonBehavior: + description: The comparison behavior that will be used to compare + keys. Valid values include Ordinal and OrdinalIgnoreCase. Defaults + to Ordinal. Changing this forces a new resource to be created. + type: string + keyProperty: + description: A key_property block as defined below. Changing this + forces a new resource to be created. + items: + properties: + name: + description: The name of the key property. Changing this + forces a new resource to be created. + type: string + type: + description: The data type of the key property. Valid values + include Bool, DateTime, Double, String. Changing this + forces a new resource to be created. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -371,9 +422,13 @@ spec: type: object x-kubernetes-validations: - message: keyProperty is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.keyProperty) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.keyProperty) + || has(self.initProvider.keyProperty)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: ReferenceDataSetStatus defines the observed state of ReferenceDataSet. properties: diff --git a/package/crds/timeseriesinsights.azure.upbound.io_standardenvironments.yaml b/package/crds/timeseriesinsights.azure.upbound.io_standardenvironments.yaml index eac5a5aff..ccad3e257 100644 --- a/package/crds/timeseriesinsights.azure.upbound.io_standardenvironments.yaml +++ b/package/crds/timeseriesinsights.azure.upbound.io_standardenvironments.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: standardenvironments.timeseriesinsights.azure.upbound.io spec: group: timeseriesinsights.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -185,21 +184,82 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + dataRetentionTime: + description: Specifies the ISO8601 timespan specifying the minimum + number of days the environment's events will be available for + query. Changing this forces a new resource to be created. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + partitionKey: + description: The name of the event property which will be used + to partition data. Changing this forces a new resource to be + created. + type: string + skuName: + description: 'Specifies the SKU Name for this IoT Time Series + Insights Standard Environment. It is string consisting of two + parts separated by an underscore(_).The first part is the name, + valid values include: S1 and S2. The second part is the capacity + (e.g. the number of deployed units of the sku), which must be + a positive integer (e.g. S1_1). Possible values are S1_1, S1_2, + S1_3, S1_4, S1_5, S1_6, S1_7, S1_8, S1_9, S1_10, S2_1, S2_2, + S2_3, S2_4, S2_5, S2_6, S2_7, S2_8, S2_9 and S2_10. Changing + this forces a new resource to be created.' + type: string + storageLimitExceededBehavior: + description: Specifies the behaviour the IoT Time Series Insights + service should take when the environment's capacity has been + exceeded. Valid values include PauseIngress and PurgeOldData. + Defaults to PurgeOldData. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -373,11 +433,17 @@ spec: type: object x-kubernetes-validations: - message: dataRetentionTime is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.dataRetentionTime) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.dataRetentionTime) + || has(self.initProvider.dataRetentionTime)' - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: StandardEnvironmentStatus defines the observed state of StandardEnvironment. properties: diff --git a/package/crds/web.azure.upbound.io_appactiveslots.yaml b/package/crds/web.azure.upbound.io_appactiveslots.yaml index 294f736e1..7c3efe06c 100644 --- a/package/crds/web.azure.upbound.io_appactiveslots.yaml +++ b/package/crds/web.azure.upbound.io_appactiveslots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appactiveslots.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -156,21 +155,54 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + overwriteNetworkConfig: + description: The swap action should overwrite the Production slot's + network configuration with the configuration from this slot. + Defaults to true. Changing this forces a new resource to be + created. The swap action should overwrite the Production slot's + network configuration with the configuration from this slot. + Defaults to `true`. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/web.azure.upbound.io_apphybridconnections.yaml b/package/crds/web.azure.upbound.io_apphybridconnections.yaml index a8ccdfda0..8aacf41b3 100644 --- a/package/crds/web.azure.upbound.io_apphybridconnections.yaml +++ b/package/crds/web.azure.upbound.io_apphybridconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: apphybridconnections.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -240,21 +239,59 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + hostname: + description: The hostname of the endpoint. The hostname of the + endpoint. + type: string + port: + description: The port to use for the endpoint. The port to use + for the endpoint + type: number + sendKeyName: + description: The name of the Relay key with Send permission to + use. Defaults to RootManageSharedAccessKey The name of the Relay + key with `Send` permission to use. Defaults to `RootManageSharedAccessKey` + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -428,9 +465,13 @@ spec: type: object x-kubernetes-validations: - message: hostname is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.hostname) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.hostname) + || has(self.initProvider.hostname)' - message: port is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.port) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.port) + || has(self.initProvider.port)' status: description: AppHybridConnectionStatus defines the observed state of AppHybridConnection. properties: diff --git a/package/crds/web.azure.upbound.io_appserviceplans.yaml b/package/crds/web.azure.upbound.io_appserviceplans.yaml index 437b2e210..b5943e8fb 100644 --- a/package/crds/web.azure.upbound.io_appserviceplans.yaml +++ b/package/crds/web.azure.upbound.io_appserviceplans.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: appserviceplans.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -193,9 +192,6 @@ spec: tier: description: Specifies the plan's pricing tier. type: string - required: - - size - - tier type: object type: array tags: @@ -208,21 +204,102 @@ spec: Redundant. Changing this forces a new resource to be created. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appServiceEnvironmentId: + description: The ID of the App Service Environment where the App + Service Plan should be located. Changing forces a new resource + to be created. + type: string + isXenon: + description: Whether to create a xenon App Service Plan. + type: boolean + kind: + description: The kind of the App Service Plan to create. Possible + values are Windows (also available as App), Linux, elastic (for + Premium Consumption), xenon and FunctionApp (for a Consumption + Plan). Defaults to Windows. Changing this forces a new resource + to be created. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + maximumElasticWorkerCount: + description: The maximum number of total workers allowed for this + ElasticScaleEnabled App Service Plan. + type: number + perSiteScaling: + description: Can Apps assigned to this App Service Plan be scaled + independently? If set to false apps assigned to this plan will + scale to all instances of the plan. + type: boolean + reserved: + description: Is this App Service Plan Reserved. + type: boolean + sku: + description: A sku block as documented below. + items: + properties: + capacity: + description: Specifies the number of workers associated + with this App Service Plan. + type: number + size: + description: Specifies the plan's instance size. + type: string + tier: + description: Specifies the plan's pricing tier. + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + zoneRedundant: + description: Specifies if the App Service Plan should be Zone + Redundant. Changing this forces a new resource to be created. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -396,9 +473,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: sku is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.sku) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.sku) + || has(self.initProvider.sku)' status: description: AppServicePlanStatus defines the observed state of AppServicePlan. properties: diff --git a/package/crds/web.azure.upbound.io_functionappactiveslots.yaml b/package/crds/web.azure.upbound.io_functionappactiveslots.yaml index 6adb76da5..0023a369e 100644 --- a/package/crds/web.azure.upbound.io_functionappactiveslots.yaml +++ b/package/crds/web.azure.upbound.io_functionappactiveslots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: functionappactiveslots.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -156,21 +155,54 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + overwriteNetworkConfig: + description: The swap action should overwrite the Production slot's + network configuration with the configuration from this slot. + Defaults to true. Changing this forces a new resource to be + created. The swap action should overwrite the Production slot's + network configuration with the configuration from this slot. + Defaults to `true`. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default diff --git a/package/crds/web.azure.upbound.io_functionappfunctions.yaml b/package/crds/web.azure.upbound.io_functionappfunctions.yaml index a188140c1..36fd3cdb1 100644 --- a/package/crds/web.azure.upbound.io_functionappfunctions.yaml +++ b/package/crds/web.azure.upbound.io_functionappfunctions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: functionappfunctions.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -90,9 +89,6 @@ spec: this forces a new resource to be created. The filename of the file to be uploaded. type: string - required: - - content - - name type: object type: array functionAppId: @@ -189,21 +185,83 @@ spec: the function. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + configJson: + description: The config for this Function in JSON format. The + config for this Function in JSON format. + type: string + enabled: + description: Should this function be enabled. Defaults to true. + Should this function be enabled. Defaults to `true`. + type: boolean + file: + description: A file block as detailed below. Changing this forces + a new resource to be created. + items: + properties: + content: + description: The content of the file. Changing this forces + a new resource to be created. The content of the file. + type: string + name: + description: The filename of the file to be uploaded. Changing + this forces a new resource to be created. The filename + of the file to be uploaded. + type: string + type: object + type: array + language: + description: The language the Function is written in. Possible + values are CSharp, Custom, Java, Javascript, Python, PowerShell, + and TypeScript. The language the Function is written in. + type: string + name: + description: The name of the function. Changing this forces a + new resource to be created. The name of the function. + type: string + testData: + description: The test data for the function. The test data for + the function. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -377,9 +435,13 @@ spec: type: object x-kubernetes-validations: - message: configJson is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.configJson) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.configJson) + || has(self.initProvider.configJson)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' status: description: FunctionAppFunctionStatus defines the observed state of FunctionAppFunction. properties: diff --git a/package/crds/web.azure.upbound.io_functionapphybridconnections.yaml b/package/crds/web.azure.upbound.io_functionapphybridconnections.yaml index 146452bdb..1e239f125 100644 --- a/package/crds/web.azure.upbound.io_functionapphybridconnections.yaml +++ b/package/crds/web.azure.upbound.io_functionapphybridconnections.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: functionapphybridconnections.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -59,7 +58,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -243,21 +242,59 @@ spec: key with `Send` permission to use. Defaults to `RootManageSharedAccessKey` type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + hostname: + description: The hostname of the endpoint. The hostname of the + endpoint. + type: string + port: + description: The port to use for the endpoint The port to use + for the endpoint + type: number + sendKeyName: + description: The name of the Relay key with Send permission to + use. Defaults to RootManageSharedAccessKey The name of the Relay + key with `Send` permission to use. Defaults to `RootManageSharedAccessKey` + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -431,9 +468,13 @@ spec: type: object x-kubernetes-validations: - message: hostname is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.hostname) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.hostname) + || has(self.initProvider.hostname)' - message: port is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.port) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.port) + || has(self.initProvider.port)' status: description: FunctionAppHybridConnectionStatus defines the observed state of FunctionAppHybridConnection. diff --git a/package/crds/web.azure.upbound.io_functionapps.yaml b/package/crds/web.azure.upbound.io_functionapps.yaml index ebc2ded3c..11f9944ba 100644 --- a/package/crds/web.azure.upbound.io_functionapps.yaml +++ b/package/crds/web.azure.upbound.io_functionapps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: functionapps.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -189,8 +188,6 @@ spec: - name - namespace type: object - required: - - clientId type: object type: array additionalLoginParams: @@ -247,7 +244,6 @@ spec: type: string type: array required: - - appId - appSecretSecretRef type: object type: array @@ -284,7 +280,6 @@ spec: type: string type: array required: - - clientId - clientSecretSecretRef type: object type: array @@ -325,7 +320,6 @@ spec: type: string type: array required: - - clientId - clientSecretSecretRef type: object type: array @@ -370,7 +364,6 @@ spec: - namespace type: object required: - - consumerKey - consumerSecretSecretRef type: object type: array @@ -379,8 +372,6 @@ spec: client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage. type: string - required: - - enabled type: object type: array clientCertMode: @@ -418,8 +409,6 @@ spec: - namespace type: object required: - - name - - type - valueSecretRef type: object type: array @@ -458,8 +447,6 @@ spec: both a system managed identity as well as the specified user assigned identities. type: string - required: - - type type: object type: array keyVaultReferenceIdentityId: @@ -594,8 +581,6 @@ spec: supportCredentials: description: Are credentials supported? type: boolean - required: - - allowedOrigins type: object type: array dotnetFrameworkVersion: @@ -1084,21 +1069,507 @@ spec: App. Defaults to ~1. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appSettings: + additionalProperties: + type: string + description: A map of key-value pairs for App Settings and custom + values. + type: object + authSettings: + description: A auth_settings block as defined below. + items: + properties: + activeDirectory: + description: A active_directory block as defined below. + items: + properties: + allowedAudiences: + description: Allowed audience values to consider when + validating JWTs issued by Azure Active Directory. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. + type: string + type: object + type: array + additionalLoginParams: + additionalProperties: + type: string + description: Login parameters to send to the OpenID Connect + authorization endpoint when a user logs in. Each parameter + must be in the form "key=value". + type: object + allowedExternalRedirectUrls: + description: External URLs that can be redirected to as + part of logging in or logging out of the app. + items: + type: string + type: array + defaultProvider: + description: The default provider to use when multiple providers + have been set up. Possible values are AzureActiveDirectory, + Facebook, Google, MicrosoftAccount and Twitter. + type: string + enabled: + description: Is Authentication enabled? + type: boolean + facebook: + description: A facebook block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login + type: string + oauthScopes: + description: The OAuth 2.0 scopes that will be requested + as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + items: + type: string + type: array + type: object + type: array + google: + description: A google block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. + type: string + oauthScopes: + description: The OAuth 2.0 scopes that will be requested + as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + items: + type: string + type: array + type: object + type: array + issuer: + description: Issuer URI. When using Azure Active Directory, + this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/. + type: string + microsoft: + description: A microsoft block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. + type: string + oauthScopes: + description: The OAuth 2.0 scopes that will be requested + as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + items: + type: string + type: array + type: object + type: array + runtimeVersion: + description: The runtime version of the Authentication/Authorization + module. + type: string + tokenRefreshExtensionHours: + description: The number of hours after session token expiration + that a session token can be used to call the token refresh + API. Defaults to 72. + type: number + tokenStoreEnabled: + description: If enabled the module will durably store platform-specific + security tokens that are obtained during login flows. + Defaults to false. + type: boolean + twitter: + description: A twitter block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. + type: string + type: object + type: array + unauthenticatedClientAction: + description: The action to take when an unauthenticated + client attempts to access the app. Possible values are + AllowAnonymous and RedirectToLoginPage. + type: string + type: object + type: array + clientCertMode: + description: The mode of the Function App's client certificates + requirement for incoming requests. Possible values are Required + and Optional. + type: string + connectionString: + description: An connection_string block as defined below. + items: + properties: + name: + description: The name of the Connection String. + type: string + type: + description: The type of the Connection String. Possible + values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, + PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer. + type: string + type: object + type: array + dailyMemoryTimeQuota: + description: The amount of memory in gigabyte-seconds that your + application is allowed to consume per day. Setting this value + only affects function apps under the consumption plan. + type: number + enableBuiltinLogging: + description: Should the built-in logging of this Function App + be enabled? Defaults to true. + type: boolean + enabled: + description: Is the Function App enabled? Defaults to true. + type: boolean + httpsOnly: + description: Can the Function App only be accessed via HTTPS? + Defaults to false. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of user managed identity ids + to be assigned. Required if type is UserAssigned. + items: + type: string + type: array + type: + description: Specifies the identity type of the Function + App. Possible values are SystemAssigned (where Azure will + generate a Service Principal for you), UserAssigned where + you can specify the Service Principal IDs in the identity_ids + field, and SystemAssigned, UserAssigned which assigns + both a system managed identity as well as the specified + user assigned identities. + type: string + type: object + type: array + keyVaultReferenceIdentityId: + description: The User Assigned Identity Id used for looking up + KeyVault secrets. The identity must be assigned to the application. + See Access vaults with a user-assigned identity for more information. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + name: + description: Specifies the name of the Function App. Changing + this forces a new resource to be created. Limit the function + name to 32 characters to avoid naming collisions. For more information + about Function App naming rule. + type: string + osType: + description: A string indicating the Operating System type for + this function app. Possible values are linux and “(empty string). + Changing this forces a new resource to be created. Defaults + to "". + type: string + siteConfig: + description: A site_config object as defined below. + items: + properties: + alwaysOn: + description: Should the Function App be loaded at all times? + Defaults to false. + type: boolean + appScaleLimit: + description: The number of workers this function app can + scale out to. Only applicable to apps on the Consumption + and Premium plan. + type: number + autoSwapSlotName: + description: The name of the slot to automatically swap + to during deployment + type: string + cors: + description: A cors block as defined below. + items: + properties: + allowedOrigins: + description: A list of origins which should be able + to make cross-origin calls. * can be used to allow + all calls. + items: + type: string + type: array + supportCredentials: + description: Are credentials supported? + type: boolean + type: object + type: array + dotnetFrameworkVersion: + description: The version of the .NET framework's CLR used + in this function app. Possible values are v4.0 (including + .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information + on which .NET Framework version to use based on the runtime + version you're targeting - please see this table. Defaults + to v4.0. + type: string + elasticInstanceMinimum: + description: The number of minimum instances for this function + app. Only affects apps on the Premium plan. + type: number + ftpsState: + description: 'State of FTP / FTPS service for this function + app. Possible values include: AllAllowed, FtpsOnly and + Disabled. Defaults to AllAllowed.' + type: string + healthCheckPath: + description: Path which will be checked for this function + app health. + type: string + http2Enabled: + description: Specifies whether or not the HTTP2 protocol + should be enabled. Defaults to false. + type: boolean + ipRestriction: + description: A List of objects representing IP restrictions + as defined below. + items: + properties: + action: + description: Allow or Deny access for this IP range. + Defaults to Allow. + type: string + headers: + description: The headers for this specific scm_ip_restriction + as defined below. + items: + properties: + xAzureFdid: + description: A list of allowed Azure FrontDoor + IDs in UUID notation with a maximum of 8. + items: + type: string + type: array + xFdHealthProbe: + description: A list to allow the Azure FrontDoor + health probe header. Only allowed value is + "1". + items: + type: string + type: array + xForwardedFor: + description: A list of allowed 'X-Forwarded-For' + IPs in CIDR notation with a maximum of 8 + items: + type: string + type: array + xForwardedHost: + description: A list of allowed 'X-Forwarded-Host' + domains with a maximum of 8. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: The IP Address used for this IP Restriction + in CIDR notation. + type: string + name: + description: The name for this IP Restriction. + type: string + priority: + description: The priority for this IP Restriction. + Restrictions are enforced in priority order. By + default, priority is set to 65000 if not specified. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + type: string + type: object + type: array + javaVersion: + description: Java version hosted by the function app in + Azure. Possible values are 1.8, 11 & 17 (In-Preview). + type: string + linuxFxVersion: + description: Linux App Framework and version for the AppService, + e.g. DOCKER|(golang:latest). + type: string + minTlsVersion: + description: The minimum supported TLS version for the function + app. Possible values are 1.0, 1.1, and 1.2. Defaults to + 1.2 for new function apps. + type: string + preWarmedInstanceCount: + description: The number of pre-warmed instances for this + function app. Only affects apps on the Premium plan. + type: number + runtimeScaleMonitoringEnabled: + description: Should Runtime Scale Monitoring be enabled?. + Only applicable to apps on the Premium plan. Defaults + to false. + type: boolean + scmIpRestriction: + description: A List of objects representing IP restrictions + as defined below. + items: + properties: + action: + description: Allow or Deny access for this IP range. + Defaults to Allow. + type: string + headers: + description: The headers for this specific scm_ip_restriction + as defined below. + items: + properties: + xAzureFdid: + description: A list of allowed Azure FrontDoor + IDs in UUID notation with a maximum of 8. + items: + type: string + type: array + xFdHealthProbe: + description: A list to allow the Azure FrontDoor + health probe header. Only allowed value is + "1". + items: + type: string + type: array + xForwardedFor: + description: A list of allowed 'X-Forwarded-For' + IPs in CIDR notation with a maximum of 8 + items: + type: string + type: array + xForwardedHost: + description: A list of allowed 'X-Forwarded-Host' + domains with a maximum of 8. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: The IP Address used for this IP Restriction + in CIDR notation. + type: string + name: + description: The name for this IP Restriction. + type: string + priority: + description: The priority for this IP Restriction. + Restrictions are enforced in priority order. By + default, priority is set to 65000 if not specified. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + type: string + type: object + type: array + scmType: + description: 'The type of Source Control used by the Function + App. Valid values include: BitBucketGit, BitBucketHg, + CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, + GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, + and VSTSRM.' + type: string + scmUseMainIpRestriction: + description: IP security restrictions for scm to use main. + Defaults to false. + type: boolean + use32BitWorkerProcess: + description: Should the Function App run in 32 bit mode, + rather than 64 bit mode? Defaults to true. + type: boolean + vnetRouteAllEnabled: + description: Should all outbound traffic to have Virtual + Network Security Groups and User Defined Routes applied? + Defaults to false. + type: boolean + websocketsEnabled: + description: Should WebSockets be enabled? + type: boolean + type: object + type: array + sourceControl: + description: A source_control block, as defined below. + items: + properties: + branch: + description: The branch of the remote repository to use. + Defaults to 'master'. + type: string + manualIntegration: + description: Limits to manual integration. Defaults to false + if not specified. + type: boolean + repoUrl: + description: The URL of the source code repository. + type: string + rollbackEnabled: + description: Enable roll-back for the repository. Defaults + to false if not specified. + type: boolean + useMercurial: + description: Use Mercurial if true, otherwise uses Git. + type: boolean + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + version: + description: The runtime version associated with the Function + App. Defaults to ~1. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1272,11 +1743,16 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: storageAccountAccessKeySecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountAccessKeySecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageAccountAccessKeySecretRef)' status: description: FunctionAppStatus defines the observed state of FunctionApp. properties: diff --git a/package/crds/web.azure.upbound.io_functionappslots.yaml b/package/crds/web.azure.upbound.io_functionappslots.yaml index 450858359..e7662eecb 100644 --- a/package/crds/web.azure.upbound.io_functionappslots.yaml +++ b/package/crds/web.azure.upbound.io_functionappslots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: functionappslots.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -189,8 +188,6 @@ spec: - name - namespace type: object - required: - - clientId type: object type: array additionalLoginParams: @@ -247,7 +244,6 @@ spec: type: string type: array required: - - appId - appSecretSecretRef type: object type: array @@ -284,7 +280,6 @@ spec: type: string type: array required: - - clientId - clientSecretSecretRef type: object type: array @@ -325,7 +320,6 @@ spec: type: string type: array required: - - clientId - clientSecretSecretRef type: object type: array @@ -370,7 +364,6 @@ spec: - namespace type: object required: - - consumerKey - consumerSecretSecretRef type: object type: array @@ -379,8 +372,6 @@ spec: client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage. type: string - required: - - enabled type: object type: array connectionString: @@ -413,8 +404,6 @@ spec: - namespace type: object required: - - name - - type - valueSecretRef type: object type: array @@ -531,8 +520,6 @@ spec: both a system managed identity as well as the specified user assigned identities. type: string - required: - - type type: object type: array location: @@ -655,8 +642,6 @@ spec: supportCredentials: description: Are credentials supported? type: boolean - required: - - allowedOrigins type: object type: array dotnetFrameworkVersion: @@ -1119,21 +1104,463 @@ spec: App. Defaults to ~1. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appSettings: + additionalProperties: + type: string + description: A key-value pair of App Settings. + type: object + authSettings: + description: An auth_settings block as defined below. + items: + properties: + activeDirectory: + description: An active_directory block as defined below. + items: + properties: + allowedAudiences: + description: Allowed audience values to consider when + validating JWTs issued by Azure Active Directory. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. + type: string + type: object + type: array + additionalLoginParams: + additionalProperties: + type: string + description: login parameters to send to the OpenID Connect + authorization endpoint when a user logs in. Each parameter + must be in the form "key=value". + type: object + allowedExternalRedirectUrls: + description: External URLs that can be redirected to as + part of logging in or logging out of the app. + items: + type: string + type: array + defaultProvider: + description: The default provider to use when multiple providers + have been set up. Possible values are AzureActiveDirectory, + Facebook, Google, MicrosoftAccount and Twitter. + type: string + enabled: + description: Is Authentication enabled? + type: boolean + facebook: + description: A facebook block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login + type: string + oauthScopes: + description: The OAuth 2.0 scopes that will be requested + as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + items: + type: string + type: array + type: object + type: array + google: + description: A google block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. + type: string + oauthScopes: + description: The OAuth 2.0 scopes that will be requested + as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + items: + type: string + type: array + type: object + type: array + issuer: + description: Issuer URI. When using Azure Active Directory, + this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/. + type: string + microsoft: + description: A microsoft block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. + type: string + oauthScopes: + description: The OAuth 2.0 scopes that will be requested + as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + items: + type: string + type: array + type: object + type: array + runtimeVersion: + description: The runtime version of the Authentication/Authorization + module. + type: string + tokenRefreshExtensionHours: + description: The number of hours after session token expiration + that a session token can be used to call the token refresh + API. Defaults to 72. + type: number + tokenStoreEnabled: + description: If enabled the module will durably store platform-specific + security tokens that are obtained during login flows. + Defaults to false. + type: boolean + twitter: + description: A twitter block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. + type: string + type: object + type: array + unauthenticatedClientAction: + description: The action to take when an unauthenticated + client attempts to access the app. Possible values are + AllowAnonymous and RedirectToLoginPage. + type: string + type: object + type: array + connectionString: + description: A connection_string block as defined below. + items: + properties: + name: + description: The name of the Connection String. + type: string + type: + description: The type of the Connection String. Possible + values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, + PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer. + type: string + type: object + type: array + dailyMemoryTimeQuota: + description: The amount of memory in gigabyte-seconds that your + application is allowed to consume per day. Setting this value + only affects function apps under the consumption plan. + type: number + enableBuiltinLogging: + description: Should the built-in logging of the Function App be + enabled? Defaults to true. + type: boolean + enabled: + description: Is the Function App enabled? Defaults to true. + type: boolean + httpsOnly: + description: Can the Function App only be accessed via HTTPS? + Defaults to false. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: Specifies a list of user managed identity ids + to be assigned. Required if type is UserAssigned. + items: + type: string + type: array + type: + description: Specifies the identity type of the Function + App. Possible values are SystemAssigned (where Azure will + generate a Service Principal for you), UserAssigned where + you can specify the Service Principal IDs in the identity_ids + field, and SystemAssigned, UserAssigned which assigns + both a system managed identity as well as the specified + user assigned identities. + type: string + type: object + type: array + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + osType: + description: A string indicating the Operating System type for + this function app. The only possible value is linux. Changing + this forces a new resource to be created. + type: string + siteConfig: + description: A site_config object as defined below. + items: + properties: + alwaysOn: + description: Should the Function App be loaded at all times? + Defaults to false. + type: boolean + appScaleLimit: + description: The number of workers this function app can + scale out to. Only applicable to apps on the Consumption + and Premium plan. + type: number + autoSwapSlotName: + description: The name of the slot to automatically swap + to during deployment + type: string + cors: + description: A cors block as defined below. + items: + properties: + allowedOrigins: + description: A list of origins which should be able + to make cross-origin calls. * can be used to allow + all calls. + items: + type: string + type: array + supportCredentials: + description: Are credentials supported? + type: boolean + type: object + type: array + dotnetFrameworkVersion: + description: The version of the .NET framework's CLR used + in this function app. Possible values are v4.0 (including + .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information + on which .NET Framework version to use based on the runtime + version you're targeting - please see this table. Defaults + to v4.0. + type: string + elasticInstanceMinimum: + description: The number of minimum instances for this function + app. Only applicable to apps on the Premium plan. + type: number + ftpsState: + description: 'State of FTP / FTPS service for this function + app. Possible values include: AllAllowed, FtpsOnly and + Disabled.' + type: string + healthCheckPath: + description: Path which will be checked for this function + app health. + type: string + http2Enabled: + description: Specifies whether or not the HTTP2 protocol + should be enabled. Defaults to false. + type: boolean + ipRestriction: + description: A List of objects representing IP restrictions + as defined below. + items: + properties: + action: + description: Allow or Deny access for this IP range. + Defaults to Allow. + type: string + headers: + description: The headers for this specific scm_ip_restriction + as defined below. + items: + properties: + xAzureFdid: + description: A list of allowed Azure FrontDoor + IDs in UUID notation with a maximum of 8. + items: + type: string + type: array + xFdHealthProbe: + description: A list to allow the Azure FrontDoor + health probe header. Only allowed value is + "1". + items: + type: string + type: array + xForwardedFor: + description: A list of allowed 'X-Forwarded-For' + IPs in CIDR notation with a maximum of 8 + items: + type: string + type: array + xForwardedHost: + description: A list of allowed 'X-Forwarded-Host' + domains with a maximum of 8. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: The IP Address used for this IP Restriction + in CIDR notation. + type: string + name: + description: The name for this IP Restriction. + type: string + priority: + description: The priority for this IP Restriction. + Restrictions are enforced in priority order. By + default, priority is set to 65000 if not specified. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + type: string + type: object + type: array + javaVersion: + description: Java version hosted by the function app in + Azure. Possible values are 1.8, 11 & 17 (In-Preview). + type: string + linuxFxVersion: + description: Linux App Framework and version for the AppService, + e.g. DOCKER|(golang:latest). + type: string + minTlsVersion: + description: The minimum supported TLS version for the function + app. Possible values are 1.0, 1.1, and 1.2. Defaults to + 1.2 for new function apps. + type: string + preWarmedInstanceCount: + description: The number of pre-warmed instances for this + function app. Only affects apps on the Premium plan. + type: number + runtimeScaleMonitoringEnabled: + description: Should Runtime Scale Monitoring be enabled?. + Only applicable to apps on the Premium plan. Defaults + to false. + type: boolean + scmIpRestriction: + description: A List of objects representing IP restrictions + as defined below. + items: + properties: + action: + description: Allow or Deny access for this IP range. + Defaults to Allow. + type: string + headers: + description: The headers for this specific scm_ip_restriction + as defined below. + items: + properties: + xAzureFdid: + description: A list of allowed Azure FrontDoor + IDs in UUID notation with a maximum of 8. + items: + type: string + type: array + xFdHealthProbe: + description: A list to allow the Azure FrontDoor + health probe header. Only allowed value is + "1". + items: + type: string + type: array + xForwardedFor: + description: A list of allowed 'X-Forwarded-For' + IPs in CIDR notation with a maximum of 8 + items: + type: string + type: array + xForwardedHost: + description: A list of allowed 'X-Forwarded-Host' + domains with a maximum of 8. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: The IP Address used for this IP Restriction + in CIDR notation. + type: string + name: + description: The name for this IP Restriction. + type: string + priority: + description: The priority for this IP Restriction. + Restrictions are enforced in priority order. By + default, priority is set to 65000 if not specified. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + type: string + type: object + type: array + scmType: + description: 'The type of Source Control used by this function + App. Valid values include: BitBucketGit, BitBucketHg, + CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, + GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, + and VSTSRM.' + type: string + scmUseMainIpRestriction: + description: IP security restrictions for scm to use main. + Defaults to false. + type: boolean + use32BitWorkerProcess: + description: Should the Function App run in 32 bit mode, + rather than 64 bit mode? Defaults to true. + type: boolean + vnetRouteAllEnabled: + description: Is the Function App enabled? Defaults to true. + type: boolean + websocketsEnabled: + description: Should WebSockets be enabled? + type: boolean + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + version: + description: The runtime version associated with the Function + App. Defaults to ~1. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -1307,9 +1734,12 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: storageAccountAccessKeySecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.storageAccountAccessKeySecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.storageAccountAccessKeySecretRef)' status: description: FunctionAppSlotStatus defines the observed state of FunctionAppSlot. properties: diff --git a/package/crds/web.azure.upbound.io_linuxfunctionapps.yaml b/package/crds/web.azure.upbound.io_linuxfunctionapps.yaml index d6ce73f8c..2c1635e91 100644 --- a/package/crds/web.azure.upbound.io_linuxfunctionapps.yaml +++ b/package/crds/web.azure.upbound.io_linuxfunctionapps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linuxfunctionapps.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -126,8 +125,6 @@ spec: the client secret of the Client. Cannot be used with `client_secret`. type: string - required: - - clientId type: object type: array additionalLoginParameters: @@ -207,8 +204,6 @@ spec: items: type: string type: array - required: - - appId type: object type: array github: @@ -258,8 +253,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array google: @@ -310,8 +303,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array issuer: @@ -371,8 +362,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array runtimeVersion: @@ -432,8 +421,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. type: string - required: - - consumerKey type: object type: array unauthenticatedClientAction: @@ -443,8 +430,6 @@ spec: when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' type: string - required: - - enabled type: object type: array authSettingsV2: @@ -535,9 +520,6 @@ spec: false Should the www-authenticate provider should be omitted from the request? Defaults to `false` type: boolean - required: - - clientId - - tenantAuthEndpoint type: object type: array appleV2: @@ -555,9 +537,6 @@ spec: for authentication. The app setting name that contains the `client_secret` value used for Apple Login. type: string - required: - - clientId - - clientSecretSettingName type: object type: array authEnabled: @@ -576,8 +555,6 @@ spec: Client to use to authenticate with Azure Static Web App Authentication. type: string - required: - - clientId type: object type: array configFilePath: @@ -618,10 +595,6 @@ spec: items: type: string type: array - required: - - clientId - - name - - openidConfigurationEndpoint type: object type: array defaultProvider: @@ -666,9 +639,6 @@ spec: items: type: string type: array - required: - - appId - - appSecretSettingName type: object type: array forwardProxyConvention: @@ -713,9 +683,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array googleV2: @@ -750,9 +717,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array httpRouteApiPrefix: @@ -876,9 +840,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array requireAuthentication: @@ -913,9 +874,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. type: string - required: - - consumerKey - - consumerSecretSettingName type: object type: array unauthenticatedAction: @@ -927,8 +885,6 @@ spec: `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. type: string - required: - - login type: object type: array backup: @@ -978,9 +934,6 @@ spec: in RFC-3339 format. When the schedule should start working in RFC-3339 format. type: string - required: - - frequencyInterval - - frequencyUnit type: object type: array storageAccountUrlSecretRef: @@ -1002,8 +955,6 @@ spec: - namespace type: object required: - - name - - schedule - storageAccountUrlSecretRef type: object type: array @@ -1064,8 +1015,6 @@ spec: - namespace type: object required: - - name - - type - valueSecretRef type: object type: array @@ -1111,8 +1060,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array keyVaultReferenceIdentityId: @@ -1438,10 +1385,6 @@ spec: - name - namespace type: object - required: - - imageName - - imageTag - - registryUrl type: object type: array dotnetVersion: @@ -1989,10 +1932,6 @@ spec: type: string required: - accessKeySecretRef - - accountName - - name - - shareName - - type type: object type: array storageAccountAccessKeySecretRef: @@ -2197,21 +2136,1349 @@ spec: in `app_settings`. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appSettings: + additionalProperties: + type: string + description: A map of key-value pairs for App Settings and custom + values. A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) + and custom values. + type: object + authSettings: + description: A auth_settings block as defined below. + items: + properties: + activeDirectory: + description: An active_directory block as defined above. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. Cannot be used + with `client_secret`. + type: string + type: object + type: array + additionalLoginParameters: + additionalProperties: + type: string + description: Specifies a map of login Parameters to send + to the OpenID Connect authorization endpoint when a user + logs in. Specifies a map of Login Parameters to send to + the OpenID Connect authorization endpoint when a user + logs in. + type: object + allowedExternalRedirectUrls: + description: Specifies a list of External URLs that can + be redirected to as part of logging in or logging out + of the Linux Web App. Specifies a list of External URLs + that can be redirected to as part of logging in or logging + out of the Windows Web App. + items: + type: string + type: array + defaultProvider: + description: 'The default authentication provider to use + when multiple providers are configured. Possible values + include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, + Twitter, Github The default authentication provider to + use when multiple providers are configured. Possible values + include: `AzureActiveDirectory`, `Facebook`, `Google`, + `MicrosoftAccount`, `Twitter`, `Github`.' + type: string + enabled: + description: Should the Authentication / Authorization feature + be enabled for the Linux Web App? Should the Authentication + / Authorization feature be enabled? + type: boolean + facebook: + description: A facebook block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. Cannot be specified with + `app_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes to be requested as part of Facebook Login + authentication. + items: + type: string + type: array + type: object + type: array + github: + description: A github block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of GitHub + Login authentication. + items: + type: string + type: array + type: object + type: array + google: + description: A google block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of Google + Sign-In authentication. If not specified, "openid", + "profile", and "email" are used as default scopes. + items: + type: string + type: array + type: object + type: array + issuer: + description: The OpenID Connect Issuer URI that represents + the entity which issues access tokens for this Linux Web + App. The OpenID Connect Issuer URI that represents the + entity which issues access tokens. + type: string + microsoft: + description: A microsoft block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. Cannot be specified + with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. The list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, `wl.basic` is + used as the default scope. + items: + type: string + type: array + type: object + type: array + runtimeVersion: + description: The RuntimeVersion of the Authentication / + Authorization feature in use for the Linux Web App. The + RuntimeVersion of the Authentication / Authorization feature + in use. + type: string + tokenRefreshExtensionHours: + description: The number of hours after session token expiration + that a session token can be used to call the token refresh + API. Defaults to 72 hours. The number of hours after session + token expiration that a session token can be used to call + the token refresh API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Linux Web App durably store platform-specific + security tokens that are obtained during login flows? + Defaults to false. Should the Windows Web App durably + store platform-specific security tokens that are obtained + during login flows? Defaults to `false`. + type: boolean + twitter: + description: A twitter block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. Cannot be specified with `consumer_secret`. + type: string + type: object + type: array + unauthenticatedClientAction: + description: 'The action to take when an unauthenticated + client attempts to access the app. Possible values include: + RedirectToLoginPage, AllowAnonymous. The action to take + when an unauthenticated client attempts to access the + app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' + type: string + type: object + type: array + authSettingsV2: + description: An auth_settings_v2 block as defined below. + items: + properties: + activeDirectoryV2: + description: An active_directory_v2 block as defined below. + items: + properties: + allowedApplications: + description: The list of allowed Applications for + the Default Authorisation Policy. The list of allowed + Applications for the Default Authorisation Policy. + items: + type: string + type: array + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + allowedGroups: + description: The list of allowed Group Names for the + Default Authorisation Policy. The list of allowed + Group Names for the Default Authorisation Policy. + items: + type: string + type: array + allowedIdentities: + description: The list of allowed Identities for the + Default Authorisation Policy. The list of allowed + Identities for the Default Authorisation Policy. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretCertificateThumbprint: + description: The thumbprint of the certificate used + for signing purposes. The thumbprint of the certificate + used for signing purposes. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. + type: string + jwtAllowedClientApplications: + description: A list of Allowed Client Applications + in the JWT Claim. A list of Allowed Client Applications + in the JWT Claim. + items: + type: string + type: array + jwtAllowedGroups: + description: A list of Allowed Groups in the JWT Claim. + A list of Allowed Groups in the JWT Claim. + items: + type: string + type: array + loginParameters: + additionalProperties: + type: string + description: A map of key-value pairs to send to the + Authorisation Endpoint when a user logs in. A map + of key-value pairs to send to the Authorisation + Endpoint when a user logs in. + type: object + tenantAuthEndpoint: + description: The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + type: string + wwwAuthenticationDisabled: + description: Should the www-authenticate provider + should be omitted from the request? Defaults to + false Should the www-authenticate provider should + be omitted from the request? Defaults to `false` + type: boolean + type: object + type: array + appleV2: + description: An apple_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Apple web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Apple Login. + type: string + type: object + type: array + authEnabled: + description: Should the AuthV2 Settings be enabled. Defaults + to false. Should the AuthV2 Settings be enabled. Defaults + to `false` + type: boolean + azureStaticWebAppV2: + description: An azure_static_web_app_v2 block as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Static + Web App Authentication. + type: string + type: object + type: array + configFilePath: + description: The path to the App Auth settings. The path + to the App Auth settings. **Note:** Relative Paths are + evaluated from the Site Root directory. + type: string + customOidcV2: + description: Zero or more custom_oidc_v2 blocks as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with this Custom OIDC. + type: string + name: + description: The name which should be used for this + Storage Account. The name of the Custom OIDC Authentication + Provider. + type: string + nameClaimType: + description: The name of the claim that contains the + users name. The name of the claim that contains + the users name. + type: string + openidConfigurationEndpoint: + description: The app setting name that contains the + client_secret value used for the Custom OIDC Login. + The endpoint that contains all the configuration + endpoints for this Custom OIDC provider. + type: string + scopes: + description: The list of the scopes that should be + requested while authenticating. The list of the + scopes that should be requested while authenticating. + items: + type: string + type: array + type: object + type: array + defaultProvider: + description: The Default Authentication Provider to use + when more than one Authentication Provider is configured + and the unauthenticated_action is set to RedirectToLoginPage. + The Default Authentication Provider to use when the `unauthenticated_action` + is set to `RedirectToLoginPage`. + type: string + excludedPaths: + description: The paths which should be excluded from the + unauthenticated_action when it is set to RedirectToLoginPage. + The paths which should be excluded from the `unauthenticated_action` + when it is set to `RedirectToLoginPage`. + items: + type: string + type: array + facebookV2: + description: A facebook_v2 block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. + type: string + graphApiVersion: + description: The version of the Facebook API to be + used while logging in. The version of the Facebook + API to be used while logging in. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of scopes to be requested as part + of Facebook Login authentication. + items: + type: string + type: array + type: object + type: array + forwardProxyConvention: + description: The convention used to determine the url of + the request made. Possible values include ForwardProxyConventionNoProxy, + ForwardProxyConventionStandard, ForwardProxyConventionCustom. + Defaults to ForwardProxyConventionNoProxy. The convention + used to determine the url of the request made. Possible + values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, + `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + type: string + forwardProxyCustomHostHeaderName: + description: The name of the custom header containing the + host of the request. The name of the header containing + the host of the request. + type: string + forwardProxyCustomSchemeHeaderName: + description: The name of the custom header containing the + scheme of the request. The name of the header containing + the scheme of the request. + type: string + githubV2: + description: A github_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of OAuth 2.0 scopes that will be + requested as part of GitHub Login authentication. + items: + type: string + type: array + type: object + type: array + googleV2: + description: A google_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Google Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of Login scopes that will be requested + as part of Google Sign-In authentication. + items: + type: string + type: array + type: object + type: array + httpRouteApiPrefix: + description: The prefix that should precede all the authentication + and authorisation paths. Defaults to /.auth. The prefix + that should precede all the authentication and authorisation + paths. Defaults to `/.auth` + type: string + login: + description: A login block as defined below. + items: + properties: + allowedExternalRedirectUrls: + description: External URLs that can be redirected + to as part of logging in or logging out of the app. + This is an advanced setting typically only needed + by Windows Store application backends. External + URLs that can be redirected to as part of logging + in or logging out of the app. This is an advanced + setting typically only needed by Windows Store application + backends. **Note:** URLs within the current domain + are always implicitly allowed. + items: + type: string + type: array + cookieExpirationConvention: + description: 'The method by which cookies expire. + Possible values include: FixedTime, and IdentityProviderDerived. + Defaults to FixedTime. The method by which cookies + expire. Possible values include: `FixedTime`, and + `IdentityProviderDerived`. Defaults to `FixedTime`.' + type: string + cookieExpirationTime: + description: The time after the request is made when + the session cookie should expire. Defaults to 08:00:00. + The time after the request is made when the session + cookie should expire. Defaults to `08:00:00`. + type: string + logoutEndpoint: + description: The endpoint to which logout requests + should be made. The endpoint to which logout requests + should be made. + type: string + nonceExpirationTime: + description: The time after the request is made when + the nonce should expire. Defaults to 00:05:00. The + time after the request is made when the nonce should + expire. Defaults to `00:05:00`. + type: string + preserveUrlFragmentsForLogins: + description: Should the fragments from the request + be preserved after the login request is made. Defaults + to false. Should the fragments from the request + be preserved after the login request is made. Defaults + to `false`. + type: boolean + tokenRefreshExtensionTime: + description: The number of hours after session token + expiration that a session token can be used to call + the token refresh API. Defaults to 72 hours. The + number of hours after session token expiration that + a session token can be used to call the token refresh + API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Token Store configuration + Enabled. Defaults to false Should the Token Store + configuration Enabled. Defaults to `false` + type: boolean + tokenStorePath: + description: The directory path in the App Filesystem + in which the tokens will be stored. The directory + path in the App Filesystem in which the tokens will + be stored. + type: string + tokenStoreSasSettingName: + description: The name of the app setting which contains + the SAS URL of the blob storage containing the tokens. + The name of the app setting which contains the SAS + URL of the blob storage containing the tokens. + type: string + validateNonce: + description: Should the nonce be validated while completing + the login flow. Defaults to true. Should the nonce + be validated while completing the login flow. Defaults + to `true`. + type: boolean + type: object + type: array + microsoftV2: + description: A microsoft_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + The list of Login scopes that will be requested + as part of Microsoft Account authentication. + items: + type: string + type: array + type: object + type: array + requireAuthentication: + description: Should the authentication flow be used for + all requests. Should the authentication flow be used for + all requests. + type: boolean + requireHttps: + description: Should HTTPS be required on connections? Defaults + to true. Should HTTPS be required on connections? Defaults + to true. + type: boolean + runtimeVersion: + description: The Runtime Version of the Authentication and + Authorisation feature of this App. Defaults to ~1. The + Runtime Version of the Authentication and Authorisation + feature of this App. Defaults to `~1` + type: string + twitterV2: + description: A twitter_v2 block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. + type: string + type: object + type: array + unauthenticatedAction: + description: The action to take for requests made without + authentication. Possible values include RedirectToLoginPage, + AllowAnonymous, Return401, and Return403. Defaults to + RedirectToLoginPage. The action to take for requests made + without authentication. Possible values include `RedirectToLoginPage`, + `AllowAnonymous`, `Return401`, and `Return403`. Defaults + to `RedirectToLoginPage`. + type: string + type: object + type: array + backup: + description: A backup block as defined below. + items: + properties: + enabled: + description: Should this backup job be enabled? Defaults + to true. Should this backup job be enabled? + type: boolean + name: + description: The name which should be used for this Backup. + The name which should be used for this Backup. + type: string + schedule: + description: A schedule block as defined below. + items: + properties: + frequencyInterval: + description: How often the backup should be executed + (e.g. for weekly backup, this should be set to 7 + and frequency_unit should be set to Day). How often + the backup should be executed (e.g. for weekly backup, + this should be set to `7` and `frequency_unit` should + be set to `Day`). + type: number + frequencyUnit: + description: 'The unit of time for how often the backup + should take place. Possible values include: Day + and Hour. The unit of time for how often the backup + should take place. Possible values include: `Day` + and `Hour`.' + type: string + keepAtLeastOneBackup: + description: Should the service keep at least one + backup, regardless of age of backup. Defaults to + false. Should the service keep at least one backup, + regardless of age of backup. Defaults to `false`. + type: boolean + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. After how many days backups + should be deleted. + type: number + startTime: + description: When the schedule should start working + in RFC-3339 format. When the schedule should start + working in RFC-3339 format. + type: string + type: object + type: array + type: object + type: array + builtinLoggingEnabled: + description: Should built in logging be enabled. Configures AzureWebJobsDashboard + app setting based on the configured storage setting. Defaults + to true. Should built in logging be enabled. Configures `AzureWebJobsDashboard` + app setting based on the configured storage setting + type: boolean + clientCertificateEnabled: + description: Should the function app use Client Certificates. + Should the function app use Client Certificates + type: boolean + clientCertificateExclusionPaths: + description: Paths to exclude when using client certificates, + separated by ; Paths to exclude when using client certificates, + separated by ; + type: string + clientCertificateMode: + description: The mode of the Function App's client certificates + requirement for incoming requests. Possible values are Required, + Optional, and OptionalInteractiveUser. The mode of the Function + App's client certificates requirement for incoming requests. + Possible values are `Required`, `Optional`, and `OptionalInteractiveUser` + type: string + connectionString: + description: One or more connection_string blocks as defined below. + items: + properties: + name: + description: The name which should be used for this Connection. + The name which should be used for this Connection. + type: string + type: + description: 'Type of database. Possible values include: + MySQL, SQLServer, SQLAzure, Custom, NotificationHub, ServiceBus, + EventHub, APIHub, DocDb, RedisCache, and PostgreSQL. Type + of database. Possible values include: `MySQL`, `SQLServer`, + `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, + `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`.' + type: string + type: object + type: array + contentShareForceDisabled: + description: Should the settings for linking the Function App + to storage be suppressed. Force disable the content share settings. + type: boolean + dailyMemoryTimeQuota: + description: The amount of memory in gigabyte-seconds that your + application is allowed to consume per day. Setting this value + only affects function apps under the consumption plan. Defaults + to 0. The amount of memory in gigabyte-seconds that your application + is allowed to consume per day. Setting this value only affects + function apps in Consumption Plans. + type: number + enabled: + description: Is the Function App enabled? Defaults to true. Is + the Linux Function App enabled. + type: boolean + functionsExtensionVersion: + description: The runtime version associated with the Function + App. Defaults to ~4. The runtime version associated with the + Function App. + type: string + httpsOnly: + description: Can the Function App only be accessed via HTTPS? + Defaults to false. Can the Function App only be accessed via + HTTPS? + type: boolean + identity: + description: A identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Linux Function App. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Linux Function App. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + keyVaultReferenceIdentityId: + description: The User Assigned Identity ID used for accessing + KeyVault secrets. The identity must be assigned to the application + in the identity block. For more information see - Access vaults + with a user-assigned identity The User Assigned Identity to + use for Key Vault access. + type: string + location: + description: The Azure Region where the Linux Function App should + exist. Changing this forces a new Linux Function App to be created. + type: string + name: + description: The name which should be used for this Linux Function + App. Changing this forces a new Linux Function App to be created. + Limit the function name to 32 characters to avoid naming collisions. + For more information about Function App naming rule and Host + ID Collisions Specifies the name of the Function App. + type: string + siteConfig: + description: A site_config block as defined below. + items: + properties: + alwaysOn: + description: If this Linux Web App is Always On enabled. + Defaults to false. If this Linux Web App is Always On + enabled. Defaults to `false`. + type: boolean + apiDefinitionUrl: + description: The URL of the API definition that describes + this Linux Function App. The URL of the API definition + that describes this Linux Function App. + type: string + apiManagementApiId: + description: The ID of the API Management API for this Linux + Function App. The ID of the API Management API for this + Linux Function App. + type: string + appCommandLine: + description: The App command line to launch. The program + and any arguments used to launch this app via the command + line. (Example `node myapp.js`). + type: string + appScaleLimit: + description: The number of workers this function app can + scale out to. Only applicable to apps on the Consumption + and Premium plan. The number of workers this function + app can scale out to. Only applicable to apps on the Consumption + and Premium plan. + type: number + appServiceLogs: + description: An app_service_logs block as defined above. + items: + properties: + diskQuotaMb: + description: The amount of disk space to use for logs. + Valid values are between 25 and 100. Defaults to + 35. The amount of disk space to use for logs. Valid + values are between `25` and `100`. + type: number + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. The retention period for + logs in days. Valid values are between `0` and `99999`. + Defaults to `0` (never delete). + type: number + type: object + type: array + applicationStack: + description: An application_stack block as defined above. + items: + properties: + docker: + description: One or more docker blocks as defined + below. A docker block + items: + properties: + imageName: + description: The name of the Docker image to + use. The name of the Docker image to use. + type: string + imageTag: + description: The image tag of the image to use. + The image tag of the image to use. + type: string + registryUrl: + description: The URL of the docker registry. + The URL of the docker registry. + type: string + type: object + type: array + dotnetVersion: + description: The version of .NET to use. Possible + values include 3.1, 6.0 and 7.0. The version of + .Net. Possible values are `3.1`, `6.0` and `7.0` + type: string + javaVersion: + description: The Version of Java to use. Supported + versions include 8, 11 & 17. The version of Java + to use. Possible values are `8`, `11`, and `17` + type: string + nodeVersion: + description: The version of Node to run. Possible + values include 12, 14, 16 and 18. The version of + Node to use. Possible values include `12`, `14`, + `16` and `18` + type: string + powershellCoreVersion: + description: The version of PowerShell Core to run. + Possible values are 7, and 7.2. The version of PowerShell + Core to use. Possibles values are `7`, and `7.2` + type: string + pythonVersion: + description: The version of Python to run. Possible + values are 3.10, 3.9, 3.8 and 3.7. The version of + Python to use. Possible values include `3.10`, `3.9`, + `3.8`, and `3.7`. + type: string + useCustomRuntime: + description: Should the Linux Function App use a custom + runtime? + type: boolean + useDotnetIsolatedRuntime: + description: Should the DotNet process use an isolated + runtime. Defaults to false. Should the DotNet process + use an isolated runtime. Defaults to `false`. + type: boolean + type: object + type: array + containerRegistryManagedIdentityClientId: + description: The Client ID of the Managed Service Identity + to use for connections to the Azure Container Registry. + The Client ID of the Managed Service Identity to use for + connections to the Azure Container Registry. + type: string + containerRegistryUseManagedIdentity: + description: Should connections for Azure Container Registry + use Managed Identity. Should connections for Azure Container + Registry use Managed Identity. + type: boolean + cors: + description: A cors block as defined above. + items: + properties: + allowedOrigins: + description: Specifies a list of origins that should + be allowed to make cross-origin calls. Specifies + a list of origins that should be allowed to make + cross-origin calls. + items: + type: string + type: array + supportCredentials: + description: Are credentials allowed in CORS requests? + Defaults to false. Are credentials allowed in CORS + requests? Defaults to `false`. + type: boolean + type: object + type: array + defaultDocuments: + description: Specifies a list of Default Documents for the + Linux Web App. Specifies a list of Default Documents for + the Linux Web App. + items: + type: string + type: array + elasticInstanceMinimum: + description: The number of minimum instances for this Linux + Function App. Only affects apps on Elastic Premium plans. + The number of minimum instances for this Linux Function + App. Only affects apps on Elastic Premium plans. + type: number + ftpsState: + description: 'State of FTP / FTPS service for this function + app. Possible values include: AllAllowed, FtpsOnly and + Disabled. Defaults to Disabled. State of FTP / FTPS service + for this function app. Possible values include: `AllAllowed`, + `FtpsOnly` and `Disabled`. Defaults to `Disabled`.' + type: string + healthCheckEvictionTimeInMin: + description: The amount of time in minutes that a node can + be unhealthy before being removed from the load balancer. + Possible values are between 2 and 10. Only valid in conjunction + with health_check_path. The amount of time in minutes + that a node is unhealthy before being removed from the + load balancer. Possible values are between `2` and `10`. + Defaults to `10`. Only valid in conjunction with `health_check_path` + type: number + healthCheckPath: + description: The path to be checked for this function app + health. The path to be checked for this function app health. + type: string + http2Enabled: + description: Specifies if the HTTP2 protocol should be enabled. + Defaults to false. Specifies if the http2 protocol should + be enabled. Defaults to `false`. + type: boolean + ipRestriction: + description: One or more ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + loadBalancingMode: + description: 'The Site load balancing mode. Possible values + include: WeightedRoundRobin, LeastRequests, LeastResponseTime, + WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. + Defaults to LeastRequests if omitted. The Site load balancing + mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, + `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, + `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted.' + type: string + managedPipelineMode: + description: 'Managed pipeline mode. Possible values include: + Integrated, Classic. Defaults to Integrated. The Managed + Pipeline mode. Possible values include: `Integrated`, + `Classic`. Defaults to `Integrated`.' + type: string + minimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests. Possible values include: 1.0, + 1.1, and 1.2. Defaults to 1.2. The configures the minimum + version of TLS required for SSL requests. Possible values + include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`.' + type: string + preWarmedInstanceCount: + description: The number of pre-warmed instances for this + function app. Only affects apps on an Elastic Premium + plan. The number of pre-warmed instances for this function + app. Only affects apps on an Elastic Premium plan. + type: number + remoteDebuggingEnabled: + description: Should Remote Debugging be enabled. Defaults + to false. Should Remote Debugging be enabled. Defaults + to `false`. + type: boolean + remoteDebuggingVersion: + description: The Remote Debugging Version. Possible values + include VS2017, VS2019, and VS2022. The Remote Debugging + Version. Possible values include `VS2017`, `VS2019`, and + `VS2022“ + type: string + runtimeScaleMonitoringEnabled: + description: Should Scale Monitoring of the Functions Runtime + be enabled? Should Functions Runtime Scale Monitoring + be enabled. + type: boolean + scmIpRestriction: + description: One or more scm_ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + scmMinimumTlsVersion: + description: 'Configures the minimum version of TLS required + for SSL requests to the SCM site Possible values include: + 1.0, 1.1, and 1.2. Defaults to 1.2. Configures the minimum + version of TLS required for SSL requests to the SCM site + Possible values include: `1.0`, `1.1`, and `1.2`. Defaults + to `1.2`.' + type: string + scmUseMainIpRestriction: + description: Should the Linux Function App ip_restriction + configuration be used for the SCM also. Should the Linux + Function App `ip_restriction` configuration be used for + the SCM also. + type: boolean + use32BitWorker: + description: Should the Linux Web App use a 32-bit worker + process. Defaults to true. Should the Linux Web App use + a 32-bit worker. + type: boolean + vnetRouteAllEnabled: + description: Should all outbound traffic to have NAT Gateways, + Network Security Groups and User Defined Routes applied? + Defaults to false. Should all outbound traffic to have + Virtual Network Security Groups and User Defined Routes + applied? Defaults to `false`. + type: boolean + websocketsEnabled: + description: Should Web Sockets be enabled. Defaults to + false. Should Web Sockets be enabled. Defaults to `false`. + type: boolean + workerCount: + description: The number of Workers for this Linux Function + App. The number of Workers for this Linux Function App. + type: number + type: object + type: array + stickySettings: + description: A sticky_settings block as defined below. + items: + properties: + appSettingNames: + description: A list of app_setting names that the Linux + Function App will not swap between Slots when a swap operation + is triggered. + items: + type: string + type: array + connectionStringNames: + description: A list of connection_string names that the + Linux Function App will not swap between Slots when a + swap operation is triggered. + items: + type: string + type: array + type: object + type: array + storageAccount: + description: One or more storage_account blocks as defined below. + items: + properties: + accountName: + description: The Name of the Storage Account. + type: string + mountPath: + description: The path at which to mount the storage share. + type: string + name: + description: The name which should be used for this Storage + Account. + type: string + shareName: + description: The Name of the File Share or Container Name + for Blob storage. + type: string + type: + description: The Azure Storage Type. Possible values include + AzureFiles and AzureBlob. + type: string + type: object + type: array + storageKeyVaultSecretId: + description: The Key Vault Secret ID, optionally including version, + that contains the Connection String to connect to the storage + account for this Function App. The Key Vault Secret ID, including + version, that contains the Connection String to connect to the + storage account for this Function App. + type: string + storageUsesManagedIdentity: + description: Should the Function App use Managed Identity to access + the storage account. Conflicts with storage_account_access_key. + Should the Function App use its Managed Identity to access storage? + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Linux Function App. + type: object + zipDeployFile: + description: The local path and filename of the Zip packaged application + to deploy to this Linux Function App. The local path and filename + of the Zip packaged application to deploy to this Linux Function + App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` + or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App + in `app_settings`. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -2385,11 +3652,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: siteConfig is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.siteConfig) + || has(self.initProvider.siteConfig)' status: description: LinuxFunctionAppStatus defines the observed state of LinuxFunctionApp. properties: diff --git a/package/crds/web.azure.upbound.io_linuxfunctionappslots.yaml b/package/crds/web.azure.upbound.io_linuxfunctionappslots.yaml index b35a65b88..3a85e3479 100644 --- a/package/crds/web.azure.upbound.io_linuxfunctionappslots.yaml +++ b/package/crds/web.azure.upbound.io_linuxfunctionappslots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linuxfunctionappslots.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -126,8 +125,6 @@ spec: the client secret of the Client. Cannot be used with `client_secret`. type: string - required: - - clientId type: object type: array additionalLoginParameters: @@ -206,8 +203,6 @@ spec: items: type: string type: array - required: - - appId type: object type: array github: @@ -257,8 +252,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array google: @@ -309,8 +302,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array issuer: @@ -370,8 +361,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array runtimeVersion: @@ -430,8 +419,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. type: string - required: - - consumerKey type: object type: array unauthenticatedClientAction: @@ -441,8 +428,6 @@ spec: when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' type: string - required: - - enabled type: object type: array authSettingsV2: @@ -533,9 +518,6 @@ spec: false Should the www-authenticate provider should be omitted from the request? Defaults to `false` type: boolean - required: - - clientId - - tenantAuthEndpoint type: object type: array appleV2: @@ -553,9 +535,6 @@ spec: for authentication. The app setting name that contains the `client_secret` value used for Apple Login. type: string - required: - - clientId - - clientSecretSettingName type: object type: array authEnabled: @@ -574,8 +553,6 @@ spec: Client to use to authenticate with Azure Static Web App Authentication. type: string - required: - - clientId type: object type: array configFilePath: @@ -616,10 +593,6 @@ spec: items: type: string type: array - required: - - clientId - - name - - openidConfigurationEndpoint type: object type: array defaultProvider: @@ -664,9 +637,6 @@ spec: items: type: string type: array - required: - - appId - - appSecretSettingName type: object type: array forwardProxyConvention: @@ -711,9 +681,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array googleV2: @@ -748,9 +715,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array httpRouteApiPrefix: @@ -874,9 +838,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array requireAuthentication: @@ -911,9 +872,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. type: string - required: - - consumerKey - - consumerSecretSettingName type: object type: array unauthenticatedAction: @@ -925,8 +883,6 @@ spec: `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. type: string - required: - - login type: object type: array backup: @@ -976,9 +932,6 @@ spec: in RFC-3339 format. When the schedule should start working in RFC-3339 format. type: string - required: - - frequencyInterval - - frequencyUnit type: object type: array storageAccountUrlSecretRef: @@ -1000,8 +953,6 @@ spec: - namespace type: object required: - - name - - schedule - storageAccountUrlSecretRef type: object type: array @@ -1062,8 +1013,6 @@ spec: - namespace type: object required: - - name - - type - valueSecretRef type: object type: array @@ -1188,8 +1137,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array keyVaultReferenceIdentityId: @@ -1352,10 +1299,6 @@ spec: - name - namespace type: object - required: - - imageName - - imageTag - - registryUrl type: object type: array dotnetVersion: @@ -1886,10 +1829,6 @@ spec: type: string required: - accessKeySecretRef - - accountName - - name - - shareName - - type type: object type: array storageAccountAccessKeySecretRef: @@ -2085,21 +2024,1316 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appSettings: + additionalProperties: + type: string + description: A map of key-value pairs for App Settings and custom + values. A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) + and custom values. + type: object + authSettings: + description: an auth_settings block as detailed below. + items: + properties: + activeDirectory: + description: an active_directory block as detailed below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. Cannot be used + with `client_secret`. + type: string + type: object + type: array + additionalLoginParameters: + additionalProperties: + type: string + description: Specifies a map of login Parameters to send + to the OpenID Connect authorization endpoint when a user + logs in. Specifies a map of Login Parameters to send to + the OpenID Connect authorization endpoint when a user + logs in. + type: object + allowedExternalRedirectUrls: + description: an allowed_external_redirect_urls block as + detailed below. Specifies a list of External URLs that + can be redirected to as part of logging in or logging + out of the Windows Web App. + items: + type: string + type: array + defaultProvider: + description: 'The default authentication provider to use + when multiple providers are configured. Possible values + include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, + Twitter, Github. The default authentication provider to + use when multiple providers are configured. Possible values + include: `AzureActiveDirectory`, `Facebook`, `Google`, + `MicrosoftAccount`, `Twitter`, `Github`.' + type: string + enabled: + description: Should the Authentication / Authorization feature + be enabled? Should the Authentication / Authorization + feature be enabled? + type: boolean + facebook: + description: a facebook block as detailed below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. Cannot be specified with + `app_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes to be requested as part of Facebook Login + authentication. + items: + type: string + type: array + type: object + type: array + github: + description: a github block as detailed below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of GitHub + Login authentication. + items: + type: string + type: array + type: object + type: array + google: + description: a google block as detailed below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of Google + Sign-In authentication. If not specified, "openid", + "profile", and "email" are used as default scopes. + items: + type: string + type: array + type: object + type: array + issuer: + description: The OpenID Connect Issuer URI that represents + the entity which issues access tokens. The OpenID Connect + Issuer URI that represents the entity which issues access + tokens. + type: string + microsoft: + description: a microsoft block as detailed below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. Cannot be specified + with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. The list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, `wl.basic` is + used as the default scope. + items: + type: string + type: array + type: object + type: array + runtimeVersion: + description: The RuntimeVersion of the Authentication / + Authorization feature in use. The RuntimeVersion of the + Authentication / Authorization feature in use. + type: string + tokenRefreshExtensionHours: + description: The number of hours after session token expiration + that a session token can be used to call the token refresh + API. Defaults to 72 hours. The number of hours after session + token expiration that a session token can be used to call + the token refresh API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Linux Web App durably store platform-specific + security tokens that are obtained during login flows? + Defaults to false. Should the Windows Web App durably + store platform-specific security tokens that are obtained + during login flows? Defaults to `false`. + type: boolean + twitter: + description: a twitter block as detailed below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. Cannot be specified with `consumer_secret`. + type: string + type: object + type: array + unauthenticatedClientAction: + description: 'The action to take when an unauthenticated + client attempts to access the app. Possible values include: + RedirectToLoginPage, AllowAnonymous. The action to take + when an unauthenticated client attempts to access the + app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' + type: string + type: object + type: array + authSettingsV2: + description: an auth_settings_v2 block as detailed below. + items: + properties: + activeDirectoryV2: + description: An active_directory_v2 block as defined below. + items: + properties: + allowedApplications: + description: The list of allowed Applications for + the Default Authorisation Policy. The list of allowed + Applications for the Default Authorisation Policy. + items: + type: string + type: array + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + allowedGroups: + description: The list of allowed Group Names for the + Default Authorisation Policy. The list of allowed + Group Names for the Default Authorisation Policy. + items: + type: string + type: array + allowedIdentities: + description: The list of allowed Identities for the + Default Authorisation Policy. The list of allowed + Identities for the Default Authorisation Policy. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretCertificateThumbprint: + description: The thumbprint of the certificate used + for signing purposes. The thumbprint of the certificate + used for signing purposes. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. + type: string + jwtAllowedClientApplications: + description: A list of Allowed Client Applications + in the JWT Claim. A list of Allowed Client Applications + in the JWT Claim. + items: + type: string + type: array + jwtAllowedGroups: + description: A list of Allowed Groups in the JWT Claim. + A list of Allowed Groups in the JWT Claim. + items: + type: string + type: array + loginParameters: + additionalProperties: + type: string + description: A map of key-value pairs to send to the + Authorisation Endpoint when a user logs in. A map + of key-value pairs to send to the Authorisation + Endpoint when a user logs in. + type: object + tenantAuthEndpoint: + description: The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + type: string + wwwAuthenticationDisabled: + description: Should the www-authenticate provider + should be omitted from the request? Defaults to + false Should the www-authenticate provider should + be omitted from the request? Defaults to `false` + type: boolean + type: object + type: array + appleV2: + description: An apple_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Apple web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Apple Login. + type: string + type: object + type: array + authEnabled: + description: Should the AuthV2 Settings be enabled. Defaults + to false. Should the AuthV2 Settings be enabled. Defaults + to `false` + type: boolean + azureStaticWebAppV2: + description: An azure_static_web_app_v2 block as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Static + Web App Authentication. + type: string + type: object + type: array + configFilePath: + description: The path to the App Auth settings. The path + to the App Auth settings. **Note:** Relative Paths are + evaluated from the Site Root directory. + type: string + customOidcV2: + description: Zero or more custom_oidc_v2 blocks as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with this Custom OIDC. + type: string + name: + description: The name which should be used for this + Storage Account. The name of the Custom OIDC Authentication + Provider. + type: string + nameClaimType: + description: The name of the claim that contains the + users name. The name of the claim that contains + the users name. + type: string + openidConfigurationEndpoint: + description: The app setting name that contains the + client_secret value used for the Custom OIDC Login. + The endpoint that contains all the configuration + endpoints for this Custom OIDC provider. + type: string + scopes: + description: The list of the scopes that should be + requested while authenticating. The list of the + scopes that should be requested while authenticating. + items: + type: string + type: array + type: object + type: array + defaultProvider: + description: The Default Authentication Provider to use + when more than one Authentication Provider is configured + and the unauthenticated_action is set to RedirectToLoginPage. + The Default Authentication Provider to use when the `unauthenticated_action` + is set to `RedirectToLoginPage`. + type: string + excludedPaths: + description: The paths which should be excluded from the + unauthenticated_action when it is set to RedirectToLoginPage. + The paths which should be excluded from the `unauthenticated_action` + when it is set to `RedirectToLoginPage`. + items: + type: string + type: array + facebookV2: + description: A facebook_v2 block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. + type: string + graphApiVersion: + description: The version of the Facebook API to be + used while logging in. The version of the Facebook + API to be used while logging in. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of scopes to be requested as part + of Facebook Login authentication. + items: + type: string + type: array + type: object + type: array + forwardProxyConvention: + description: The convention used to determine the url of + the request made. Possible values include ForwardProxyConventionNoProxy, + ForwardProxyConventionStandard, ForwardProxyConventionCustom. + Defaults to ForwardProxyConventionNoProxy. The convention + used to determine the url of the request made. Possible + values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, + `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + type: string + forwardProxyCustomHostHeaderName: + description: The name of the custom header containing the + host of the request. The name of the header containing + the host of the request. + type: string + forwardProxyCustomSchemeHeaderName: + description: The name of the custom header containing the + scheme of the request. The name of the header containing + the scheme of the request. + type: string + githubV2: + description: A github_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of OAuth 2.0 scopes that will be + requested as part of GitHub Login authentication. + items: + type: string + type: array + type: object + type: array + googleV2: + description: A google_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Google Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of Login scopes that will be requested + as part of Google Sign-In authentication. + items: + type: string + type: array + type: object + type: array + httpRouteApiPrefix: + description: The prefix that should precede all the authentication + and authorisation paths. Defaults to /.auth. The prefix + that should precede all the authentication and authorisation + paths. Defaults to `/.auth` + type: string + login: + description: A login block as defined below. + items: + properties: + allowedExternalRedirectUrls: + description: External URLs that can be redirected + to as part of logging in or logging out of the app. + This is an advanced setting typically only needed + by Windows Store application backends. External + URLs that can be redirected to as part of logging + in or logging out of the app. This is an advanced + setting typically only needed by Windows Store application + backends. **Note:** URLs within the current domain + are always implicitly allowed. + items: + type: string + type: array + cookieExpirationConvention: + description: 'The method by which cookies expire. + Possible values include: FixedTime, and IdentityProviderDerived. + Defaults to FixedTime. The method by which cookies + expire. Possible values include: `FixedTime`, and + `IdentityProviderDerived`. Defaults to `FixedTime`.' + type: string + cookieExpirationTime: + description: The time after the request is made when + the session cookie should expire. Defaults to 08:00:00. + The time after the request is made when the session + cookie should expire. Defaults to `08:00:00`. + type: string + logoutEndpoint: + description: The endpoint to which logout requests + should be made. The endpoint to which logout requests + should be made. + type: string + nonceExpirationTime: + description: The time after the request is made when + the nonce should expire. Defaults to 00:05:00. The + time after the request is made when the nonce should + expire. Defaults to `00:05:00`. + type: string + preserveUrlFragmentsForLogins: + description: Should the fragments from the request + be preserved after the login request is made. Defaults + to false. Should the fragments from the request + be preserved after the login request is made. Defaults + to `false`. + type: boolean + tokenRefreshExtensionTime: + description: The number of hours after session token + expiration that a session token can be used to call + the token refresh API. Defaults to 72 hours. The + number of hours after session token expiration that + a session token can be used to call the token refresh + API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Token Store configuration + Enabled. Defaults to false Should the Token Store + configuration Enabled. Defaults to `false` + type: boolean + tokenStorePath: + description: The directory path in the App Filesystem + in which the tokens will be stored. The directory + path in the App Filesystem in which the tokens will + be stored. + type: string + tokenStoreSasSettingName: + description: The name of the app setting which contains + the SAS URL of the blob storage containing the tokens. + The name of the app setting which contains the SAS + URL of the blob storage containing the tokens. + type: string + validateNonce: + description: Should the nonce be validated while completing + the login flow. Defaults to true. Should the nonce + be validated while completing the login flow. Defaults + to `true`. + type: boolean + type: object + type: array + microsoftV2: + description: A microsoft_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + The list of Login scopes that will be requested + as part of Microsoft Account authentication. + items: + type: string + type: array + type: object + type: array + requireAuthentication: + description: Should the authentication flow be used for + all requests. Should the authentication flow be used for + all requests. + type: boolean + requireHttps: + description: Should HTTPS be required on connections? Defaults + to true. Should HTTPS be required on connections? Defaults + to true. + type: boolean + runtimeVersion: + description: The Runtime Version of the Authentication and + Authorisation feature of this App. Defaults to ~1. The + Runtime Version of the Authentication and Authorisation + feature of this App. Defaults to `~1` + type: string + twitterV2: + description: A twitter_v2 block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. + type: string + type: object + type: array + unauthenticatedAction: + description: The action to take for requests made without + authentication. Possible values include RedirectToLoginPage, + AllowAnonymous, Return401, and Return403. Defaults to + RedirectToLoginPage. The action to take for requests made + without authentication. Possible values include `RedirectToLoginPage`, + `AllowAnonymous`, `Return401`, and `Return403`. Defaults + to `RedirectToLoginPage`. + type: string + type: object + type: array + backup: + description: a backup block as detailed below. + items: + properties: + enabled: + description: Should this backup job be enabled? Defaults + to true. Should this backup job be enabled? + type: boolean + name: + description: The name which should be used for this Backup. + The name which should be used for this Backup. + type: string + schedule: + description: a schedule block as detailed below. + items: + properties: + frequencyInterval: + description: How often the backup should be executed + (e.g. for weekly backup, this should be set to 7 + and frequency_unit should be set to Day). How often + the backup should be executed (e.g. for weekly backup, + this should be set to `7` and `frequency_unit` should + be set to `Day`). + type: number + frequencyUnit: + description: 'The unit of time for how often the backup + should take place. Possible values include: Day + and Hour. The unit of time for how often the backup + should take place. Possible values include: `Day` + and `Hour`.' + type: string + keepAtLeastOneBackup: + description: Should the service keep at least one + backup, regardless of age of backup. Defaults to + false. Should the service keep at least one backup, + regardless of age of backup. Defaults to `false`. + type: boolean + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. After how many days backups + should be deleted. + type: number + startTime: + description: When the schedule should start working + in RFC-3339 format. When the schedule should start + working in RFC-3339 format. + type: string + type: object + type: array + type: object + type: array + builtinLoggingEnabled: + description: Should built in logging be enabled. Configures AzureWebJobsDashboard + app setting based on the configured storage setting. Defaults + to true. Should built in logging be enabled. Configures `AzureWebJobsDashboard` + app setting based on the configured storage setting. + type: boolean + clientCertificateEnabled: + description: Should the Function App Slot use Client Certificates. + Should the Function App Slot use Client Certificates. + type: boolean + clientCertificateExclusionPaths: + description: Paths to exclude when using client certificates, + separated by ; Paths to exclude when using client certificates, + separated by ; + type: string + clientCertificateMode: + description: The mode of the Function App Slot's client certificates + requirement for incoming requests. Possible values are Required, + Optional, and OptionalInteractiveUser. The mode of the Function + App Slot's client certificates requirement for incoming requests. + Possible values are `Required`, `Optional`, and `OptionalInteractiveUser`. + type: string + connectionString: + description: a connection_string block as detailed below. + items: + properties: + name: + description: The name which should be used for this Connection. + The name which should be used for this Connection. + type: string + type: + description: 'Type of database. Possible values include: + APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, + PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + Type of database. Possible values include: `MySQL`, `SQLServer`, + `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, + `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`.' + type: string + type: object + type: array + contentShareForceDisabled: + description: Force disable the content share settings. Force disable + the content share settings. + type: boolean + dailyMemoryTimeQuota: + description: The amount of memory in gigabyte-seconds that your + application is allowed to consume per day. Setting this value + only affects function apps in Consumption Plans. Defaults to + 0. The amount of memory in gigabyte-seconds that your application + is allowed to consume per day. Setting this value only affects + function apps in Consumption Plans. + type: number + enabled: + description: Is the Linux Function App Slot enabled. Defaults + to true. Is the Linux Function App Slot enabled. + type: boolean + functionsExtensionVersion: + description: The runtime version associated with the Function + App Slot. Defaults to ~4. The runtime version associated with + the Function App Slot. + type: string + httpsOnly: + description: Can the Function App Slot only be accessed via HTTPS? + Can the Function App Slot only be accessed via HTTPS? + type: boolean + identity: + description: An identity block as detailed below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Linux Function App Slot. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Linux Function App Slot. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + keyVaultReferenceIdentityId: + description: The User Assigned Identity ID used for accessing + KeyVault secrets. The identity must be assigned to the application + in the identity block. For more information see - Access vaults + with a user-assigned identity The User Assigned Identity to + use for Key Vault access. + type: string + servicePlanId: + description: The ID of the Service Plan in which to run this slot. + If not specified the same Service Plan as the Linux Function + App will be used. + type: string + siteConfig: + description: a site_config block as detailed below. + items: + properties: + alwaysOn: + description: If this Linux Web App is Always On enabled. + Defaults to false. If this Linux Web App is Always On + enabled. Defaults to `false`. + type: boolean + apiDefinitionUrl: + description: The URL of the API definition that describes + this Linux Function App. The URL of the API definition + that describes this Linux Function App. + type: string + apiManagementApiId: + description: The ID of the API Management API for this Linux + Function App. The ID of the API Management API for this + Linux Function App. + type: string + appCommandLine: + description: The program and any arguments used to launch + this app via the command line. (Example node myapp.js). + The program and any arguments used to launch this app + via the command line. (Example `node myapp.js`). + type: string + appScaleLimit: + description: The number of workers this function app can + scale out to. Only applicable to apps on the Consumption + and Premium plan. The number of workers this function + app can scale out to. Only applicable to apps on the Consumption + and Premium plan. + type: number + appServiceLogs: + description: an app_service_logs block as detailed below. + items: + properties: + diskQuotaMb: + description: The amount of disk space to use for logs. + Valid values are between 25 and 100. Defaults to + 35. The amount of disk space to use for logs. Valid + values are between `25` and `100`. + type: number + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. The retention period for + logs in days. Valid values are between `0` and `99999`. + Defaults to `0` (never delete). + type: number + type: object + type: array + applicationStack: + description: an application_stack block as detailed below. + items: + properties: + docker: + description: a docker block as detailed below. A docker + block + items: + properties: + imageName: + description: The name of the Docker image to + use. The name of the Docker image to use. + type: string + imageTag: + description: The image tag of the image to use. + The image tag of the image to use. + type: string + registryUrl: + description: The URL of the docker registry. + The URL of the docker registry. + type: string + type: object + type: array + dotnetVersion: + description: The version of .Net. Possible values + are 3.1, 6.0 and 7.0. The version of .Net. Possible + values are `3.1`, `6.0` and `7.0` + type: string + javaVersion: + description: The version of Java to use. Possible + values are 8, 11 & 17 (In-Preview). The version + of Java to use. Possible values are `8`, `11`, and + `17` + type: string + nodeVersion: + description: The version of Node to use. Possible + values include 12, 14, 16 and 18 The version of + Node to use. Possible values include `12`, `14`, + `16` and `18` + type: string + powershellCoreVersion: + description: The version of PowerShell Core to use. + Possibles values are 7 , and 7.2. The version of + PowerShell Core to use. Possibles values are `7`, + and `7.2` + type: string + pythonVersion: + description: The version of Python to use. Possible + values are 3.10, 3.9, 3.8 and 3.7. The version of + Python to use. Possible values include `3.10`, `3.9`, + `3.8`, and `3.7`. + type: string + useCustomRuntime: + description: Should the Linux Function App use a custom + runtime? + type: boolean + useDotnetIsolatedRuntime: + description: Should the DotNet process use an isolated + runtime. Defaults to false. Should the DotNet process + use an isolated runtime. Defaults to `false`. + type: boolean + type: object + type: array + autoSwapSlotName: + description: The name of the slot to automatically swap + with when this slot is successfully deployed. + type: string + containerRegistryManagedIdentityClientId: + description: The Client ID of the Managed Service Identity + to use for connections to the Azure Container Registry. + The Client ID of the Managed Service Identity to use for + connections to the Azure Container Registry. + type: string + containerRegistryUseManagedIdentity: + description: Should connections for Azure Container Registry + use Managed Identity. Should connections for Azure Container + Registry use Managed Identity. + type: boolean + cors: + description: a cors block as detailed below. + items: + properties: + allowedOrigins: + description: an allowed_origins block as detailed + below. Specifies a list of origins that should be + allowed to make cross-origin calls. + items: + type: string + type: array + supportCredentials: + description: Are credentials allowed in CORS requests? + Defaults to false. Are credentials allowed in CORS + requests? Defaults to `false`. + type: boolean + type: object + type: array + defaultDocuments: + description: a default_documents block as detailed below. + Specifies a list of Default Documents for the Linux Web + App. + items: + type: string + type: array + elasticInstanceMinimum: + description: The number of minimum instances for this Linux + Function App. Only affects apps on Elastic Premium plans. + The number of minimum instances for this Linux Function + App. Only affects apps on Elastic Premium plans. + type: number + ftpsState: + description: 'State of FTP / FTPS service for this function + app. Possible values include: AllAllowed, FtpsOnly and + Disabled. Defaults to Disabled. State of FTP / FTPS service + for this function app. Possible values include: `AllAllowed`, + `FtpsOnly` and `Disabled`. Defaults to `Disabled`.' + type: string + healthCheckEvictionTimeInMin: + description: The amount of time in minutes that a node is + unhealthy before being removed from the load balancer. + Possible values are between 2 and 10. Defaults to 10. + Only valid in conjunction with health_check_path The amount + of time in minutes that a node is unhealthy before being + removed from the load balancer. Possible values are between + `2` and `10`. Defaults to `10`. Only valid in conjunction + with `health_check_path` + type: number + healthCheckPath: + description: The path to be checked for this function app + health. The path to be checked for this function app health. + type: string + http2Enabled: + description: Specifies if the HTTP2 protocol should be enabled. + Defaults to false. Specifies if the http2 protocol should + be enabled. Defaults to `false`. + type: boolean + ipRestriction: + description: an ip_restriction block as detailed below. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: a headers block as detailed below. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + loadBalancingMode: + description: 'The Site load balancing mode. Possible values + include: WeightedRoundRobin, LeastRequests, LeastResponseTime, + WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. + Defaults to LeastRequests if omitted. The Site load balancing + mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, + `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, + `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted.' + type: string + managedPipelineMode: + description: 'The Managed Pipeline mode. Possible values + include: Integrated, Classic. Defaults to Integrated. + The Managed Pipeline mode. Possible values include: `Integrated`, + `Classic`. Defaults to `Integrated`.' + type: string + minimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests. Possible values include: 1.0, + 1.1, and 1.2. Defaults to 1.2. The configures the minimum + version of TLS required for SSL requests. Possible values + include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`.' + type: string + preWarmedInstanceCount: + description: The number of pre-warmed instances for this + function app. Only affects apps on an Elastic Premium + plan. The number of pre-warmed instances for this function + app. Only affects apps on an Elastic Premium plan. + type: number + remoteDebuggingEnabled: + description: Should Remote Debugging be enabled. Defaults + to false. Should Remote Debugging be enabled. Defaults + to `false`. + type: boolean + remoteDebuggingVersion: + description: The Remote Debugging Version. Possible values + include VS2017, VS2019, and VS2022 The Remote Debugging + Version. Possible values include `VS2017`, `VS2019`, and + `VS2022` + type: string + runtimeScaleMonitoringEnabled: + description: Should Functions Runtime Scale Monitoring be + enabled. Should Functions Runtime Scale Monitoring be + enabled. + type: boolean + scmIpRestriction: + description: a scm_ip_restriction block as detailed below. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: a headers block as detailed below. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + scmMinimumTlsVersion: + description: 'Configures the minimum version of TLS required + for SSL requests to the SCM site Possible values include: + 1.0, 1.1, and 1.2. Defaults to 1.2. Configures the minimum + version of TLS required for SSL requests to the SCM site + Possible values include: `1.0`, `1.1`, and `1.2`. Defaults + to `1.2`.' + type: string + scmUseMainIpRestriction: + description: Should the Linux Function App ip_restriction + configuration be used for the SCM also. Should the Linux + Function App `ip_restriction` configuration be used for + the SCM also. + type: boolean + use32BitWorker: + description: Should the Linux Web App use a 32-bit worker. + Should the Linux Web App use a 32-bit worker. + type: boolean + vnetRouteAllEnabled: + description: Should all outbound traffic to have NAT Gateways, + Network Security Groups and User Defined Routes applied? + Defaults to false. Should all outbound traffic to have + Virtual Network Security Groups and User Defined Routes + applied? Defaults to `false`. + type: boolean + websocketsEnabled: + description: Should Web Sockets be enabled. Defaults to + false. Should Web Sockets be enabled. Defaults to `false`. + type: boolean + workerCount: + description: The number of Workers for this Linux Function + App. The number of Workers for this Linux Function App. + type: number + type: object + type: array + storageAccount: + description: One or more storage_account blocks as defined below. + items: + properties: + accountName: + description: The Name of the Storage Account. + type: string + mountPath: + description: The path at which to mount the storage share. + type: string + name: + description: The name which should be used for this Storage + Account. + type: string + shareName: + description: The Name of the File Share or Container Name + for Blob storage. + type: string + type: + description: The Azure Storage Type. Possible values include + AzureFiles and AzureBlob. + type: string + type: object + type: array + storageKeyVaultSecretId: + description: The Key Vault Secret ID, optionally including version, + that contains the Connection String to connect to the storage + account for this Function App. The Key Vault Secret ID, including + version, that contains the Connection String to connect to the + storage account for this Function App. + type: string + storageUsesManagedIdentity: + description: Should the Function App Slot use its Managed Identity + to access storage. Should the Function App Slot use its Managed + Identity to access storage? + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Linux Function App. + type: object + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -2273,7 +3507,9 @@ spec: type: object x-kubernetes-validations: - message: siteConfig is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.siteConfig) + || has(self.initProvider.siteConfig)' status: description: LinuxFunctionAppSlotStatus defines the observed state of LinuxFunctionAppSlot. diff --git a/package/crds/web.azure.upbound.io_linuxwebapps.yaml b/package/crds/web.azure.upbound.io_linuxwebapps.yaml index 1b1b4921b..c197b66a3 100644 --- a/package/crds/web.azure.upbound.io_linuxwebapps.yaml +++ b/package/crds/web.azure.upbound.io_linuxwebapps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linuxwebapps.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -124,8 +123,6 @@ spec: the client secret of the Client. Cannot be used with `client_secret`. type: string - required: - - clientId type: object type: array additionalLoginParameters: @@ -207,8 +204,6 @@ spec: items: type: string type: array - required: - - appId type: object type: array github: @@ -258,8 +253,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array google: @@ -310,8 +303,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array issuer: @@ -371,8 +362,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array runtimeVersion: @@ -432,8 +421,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. type: string - required: - - consumerKey type: object type: array unauthenticatedClientAction: @@ -443,8 +430,6 @@ spec: when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' type: string - required: - - enabled type: object type: array authSettingsV2: @@ -535,9 +520,6 @@ spec: false Should the www-authenticate provider should be omitted from the request? Defaults to `false` type: boolean - required: - - clientId - - tenantAuthEndpoint type: object type: array appleV2: @@ -555,9 +537,6 @@ spec: for authentication. The app setting name that contains the `client_secret` value used for Apple Login. type: string - required: - - clientId - - clientSecretSettingName type: object type: array authEnabled: @@ -576,8 +555,6 @@ spec: Client to use to authenticate with Azure Static Web App Authentication. type: string - required: - - clientId type: object type: array configFilePath: @@ -618,10 +595,6 @@ spec: items: type: string type: array - required: - - clientId - - name - - openidConfigurationEndpoint type: object type: array defaultProvider: @@ -666,9 +639,6 @@ spec: items: type: string type: array - required: - - appId - - appSecretSettingName type: object type: array forwardProxyConvention: @@ -713,9 +683,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array googleV2: @@ -750,9 +717,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array httpRouteApiPrefix: @@ -876,9 +840,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array requireAuthentication: @@ -913,9 +874,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. type: string - required: - - consumerKey - - consumerSecretSettingName type: object type: array unauthenticatedAction: @@ -927,8 +885,6 @@ spec: `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. type: string - required: - - login type: object type: array backup: @@ -977,9 +933,6 @@ spec: in RFC-3339 format. When the schedule should start working in RFC-3339 format. type: string - required: - - frequencyInterval - - frequencyUnit type: object type: array storageAccountUrlSecretRef: @@ -1001,8 +954,6 @@ spec: - namespace type: object required: - - name - - schedule - storageAccountUrlSecretRef type: object type: array @@ -1057,8 +1008,6 @@ spec: - namespace type: object required: - - name - - type - valueSecretRef type: object type: array @@ -1085,8 +1034,6 @@ spec: values are SystemAssigned, UserAssigned, and SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array keyVaultReferenceIdentityId: @@ -1126,18 +1073,12 @@ spec: description: SAS url to an Azure blob container with read/write/list/delete permissions. type: string - required: - - level - - retentionInDays - - sasUrl type: object type: array fileSystemLevel: description: 'Log level. Possible values include: Verbose, Information, Warning, and Error.' type: string - required: - - fileSystemLevel type: object type: array detailedErrorMessages: @@ -1193,9 +1134,6 @@ spec: description: The maximum size in megabytes that log files can use. type: number - required: - - retentionInDays - - retentionInMb type: object type: array type: object @@ -1452,8 +1390,6 @@ spec: the defined action will be run in the event of a trigger. type: string - required: - - actionType type: object type: array trigger: @@ -1473,9 +1409,6 @@ spec: description: The time interval in the form hh:mm:ss. type: string - required: - - count - - interval type: object type: array slowRequest: @@ -1500,10 +1433,6 @@ spec: description: The threshold of time passed to qualify as a Slow Request in hh:mm:ss. type: string - required: - - count - - interval - - timeTaken type: object type: array statusCode: @@ -1539,10 +1468,6 @@ spec: description: The Win32 Status Code of the Request. type: string - required: - - count - - interval - - statusCodeRange type: object type: array type: object @@ -2015,10 +1940,6 @@ spec: type: string required: - accessKeySecretRef - - accountName - - name - - shareName - - type type: object type: array tags: @@ -2113,21 +2034,1403 @@ spec: in `app_settings`. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appSettings: + additionalProperties: + type: string + description: A map of key-value pairs of App Settings. + type: object + authSettings: + description: A auth_settings block as defined below. + items: + properties: + activeDirectory: + description: An active_directory block as defined above. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. Cannot be used + with `client_secret`. + type: string + type: object + type: array + additionalLoginParameters: + additionalProperties: + type: string + description: Specifies a map of login Parameters to send + to the OpenID Connect authorization endpoint when a user + logs in. Specifies a map of Login Parameters to send to + the OpenID Connect authorization endpoint when a user + logs in. + type: object + allowedExternalRedirectUrls: + description: Specifies a list of External URLs that can + be redirected to as part of logging in or logging out + of the Linux Web App. Specifies a list of External URLs + that can be redirected to as part of logging in or logging + out of the Windows Web App. + items: + type: string + type: array + defaultProvider: + description: 'The default authentication provider to use + when multiple providers are configured. Possible values + include: BuiltInAuthenticationProviderAzureActiveDirectory, + BuiltInAuthenticationProviderFacebook, BuiltInAuthenticationProviderGoogle, + BuiltInAuthenticationProviderMicrosoftAccount, BuiltInAuthenticationProviderTwitter, + BuiltInAuthenticationProviderGithub The default authentication + provider to use when multiple providers are configured. + Possible values include: `AzureActiveDirectory`, `Facebook`, + `Google`, `MicrosoftAccount`, `Twitter`, `Github`.' + type: string + enabled: + description: Should the Authentication / Authorization feature + be enabled for the Linux Web App? Should the Authentication + / Authorization feature be enabled? + type: boolean + facebook: + description: A facebook block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. Cannot be specified with + `app_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes to be requested as part of Facebook Login + authentication. + items: + type: string + type: array + type: object + type: array + github: + description: A github block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of GitHub + Login authentication. + items: + type: string + type: array + type: object + type: array + google: + description: A google block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of Google + Sign-In authentication. If not specified, "openid", + "profile", and "email" are used as default scopes. + items: + type: string + type: array + type: object + type: array + issuer: + description: The OpenID Connect Issuer URI that represents + the entity that issues access tokens for this Linux Web + App. The OpenID Connect Issuer URI that represents the + entity which issues access tokens. + type: string + microsoft: + description: A microsoft block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. Cannot be specified + with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. The list of OAuth 2.0 + scopes that will be requested as part of Microsoft + Account authentication. If not specified, `wl.basic` + is used as the default scope. + items: + type: string + type: array + type: object + type: array + runtimeVersion: + description: The RuntimeVersion of the Authentication / + Authorization feature in use for the Linux Web App. The + RuntimeVersion of the Authentication / Authorization feature + in use. + type: string + tokenRefreshExtensionHours: + description: The number of hours after session token expiration + that a session token can be used to call the token refresh + API. Defaults to 72 hours. The number of hours after session + token expiration that a session token can be used to call + the token refresh API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Linux Web App durably store platform-specific + security tokens that are obtained during login flows? + Defaults to false. Should the Windows Web App durably + store platform-specific security tokens that are obtained + during login flows? Defaults to `false`. + type: boolean + twitter: + description: A twitter block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. Cannot be specified with `consumer_secret`. + type: string + type: object + type: array + unauthenticatedClientAction: + description: 'The action to take when an unauthenticated + client attempts to access the app. Possible values include: + RedirectToLoginPage, AllowAnonymous. The action to take + when an unauthenticated client attempts to access the + app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' + type: string + type: object + type: array + authSettingsV2: + description: An auth_settings_v2 block as defined below. + items: + properties: + activeDirectoryV2: + description: An active_directory_v2 block as defined below. + items: + properties: + allowedApplications: + description: The list of allowed Applications for + the Default Authorisation Policy. The list of allowed + Applications for the Default Authorisation Policy. + items: + type: string + type: array + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + allowedGroups: + description: The list of allowed Group Names for the + Default Authorisation Policy. The list of allowed + Group Names for the Default Authorisation Policy. + items: + type: string + type: array + allowedIdentities: + description: The list of allowed Identities for the + Default Authorisation Policy. The list of allowed + Identities for the Default Authorisation Policy. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretCertificateThumbprint: + description: The thumbprint of the certificate used + for signing purposes. The thumbprint of the certificate + used for signing purposes. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. + type: string + jwtAllowedClientApplications: + description: A list of Allowed Client Applications + in the JWT Claim. A list of Allowed Client Applications + in the JWT Claim. + items: + type: string + type: array + jwtAllowedGroups: + description: A list of Allowed Groups in the JWT Claim. + A list of Allowed Groups in the JWT Claim. + items: + type: string + type: array + loginParameters: + additionalProperties: + type: string + description: A map of key-value pairs to send to the + Authorisation Endpoint when a user logs in. A map + of key-value pairs to send to the Authorisation + Endpoint when a user logs in. + type: object + tenantAuthEndpoint: + description: The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + type: string + wwwAuthenticationDisabled: + description: Should the www-authenticate provider + should be omitted from the request? Defaults to + false Should the www-authenticate provider should + be omitted from the request? Defaults to `false` + type: boolean + type: object + type: array + appleV2: + description: An apple_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Apple web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Apple Login. + type: string + type: object + type: array + authEnabled: + description: Should the AuthV2 Settings be enabled. Defaults + to false. Should the AuthV2 Settings be enabled. Defaults + to `false` + type: boolean + azureStaticWebAppV2: + description: An azure_static_web_app_v2 block as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Static + Web App Authentication. + type: string + type: object + type: array + configFilePath: + description: The path to the App Auth settings. The path + to the App Auth settings. **Note:** Relative Paths are + evaluated from the Site Root directory. + type: string + customOidcV2: + description: Zero or more custom_oidc_v2 blocks as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with this Custom OIDC. + type: string + name: + description: The name which should be used for this + Storage Account. The name of the Custom OIDC Authentication + Provider. + type: string + nameClaimType: + description: The name of the claim that contains the + users name. The name of the claim that contains + the users name. + type: string + openidConfigurationEndpoint: + description: Specifies the endpoint used for OpenID + Connect Discovery. For example https://example.com/.well-known/openid-configuration. + The endpoint that contains all the configuration + endpoints for this Custom OIDC provider. + type: string + scopes: + description: The list of the scopes that should be + requested while authenticating. The list of the + scopes that should be requested while authenticating. + items: + type: string + type: array + type: object + type: array + defaultProvider: + description: The Default Authentication Provider to use + when more than one Authentication Provider is configured + and the unauthenticated_action is set to RedirectToLoginPage. + The Default Authentication Provider to use when the `unauthenticated_action` + is set to `RedirectToLoginPage`. + type: string + excludedPaths: + description: The paths which should be excluded from the + unauthenticated_action when it is set to RedirectToLoginPage. + The paths which should be excluded from the `unauthenticated_action` + when it is set to `RedirectToLoginPage`. + items: + type: string + type: array + facebookV2: + description: A facebook_v2 block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. + type: string + graphApiVersion: + description: The version of the Facebook API to be + used while logging in. The version of the Facebook + API to be used while logging in. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of scopes to be requested as part + of Facebook Login authentication. + items: + type: string + type: array + type: object + type: array + forwardProxyConvention: + description: The convention used to determine the url of + the request made. Possible values include ForwardProxyConventionNoProxy, + ForwardProxyConventionStandard, ForwardProxyConventionCustom. + Defaults to ForwardProxyConventionNoProxy. The convention + used to determine the url of the request made. Possible + values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, + `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + type: string + forwardProxyCustomHostHeaderName: + description: The name of the custom header containing the + host of the request. The name of the header containing + the host of the request. + type: string + forwardProxyCustomSchemeHeaderName: + description: The name of the custom header containing the + scheme of the request. The name of the header containing + the scheme of the request. + type: string + githubV2: + description: A github_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of OAuth 2.0 scopes that will be + requested as part of GitHub Login authentication. + items: + type: string + type: array + type: object + type: array + googleV2: + description: A google_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Google Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of Login scopes that will be requested + as part of Google Sign-In authentication. + items: + type: string + type: array + type: object + type: array + httpRouteApiPrefix: + description: The prefix that should precede all the authentication + and authorisation paths. Defaults to /.auth. The prefix + that should precede all the authentication and authorisation + paths. Defaults to `/.auth` + type: string + login: + description: A login block as defined below. + items: + properties: + allowedExternalRedirectUrls: + description: External URLs that can be redirected + to as part of logging in or logging out of the app. + This is an advanced setting typically only needed + by Windows Store application backends. External + URLs that can be redirected to as part of logging + in or logging out of the app. This is an advanced + setting typically only needed by Windows Store application + backends. **Note:** URLs within the current domain + are always implicitly allowed. + items: + type: string + type: array + cookieExpirationConvention: + description: 'The method by which cookies expire. + Possible values include: FixedTime, and IdentityProviderDerived. + Defaults to FixedTime. The method by which cookies + expire. Possible values include: `FixedTime`, and + `IdentityProviderDerived`. Defaults to `FixedTime`.' + type: string + cookieExpirationTime: + description: The time after the request is made when + the session cookie should expire. Defaults to 08:00:00. + The time after the request is made when the session + cookie should expire. Defaults to `08:00:00`. + type: string + logoutEndpoint: + description: The endpoint to which logout requests + should be made. The endpoint to which logout requests + should be made. + type: string + nonceExpirationTime: + description: The time after the request is made when + the nonce should expire. Defaults to 00:05:00. The + time after the request is made when the nonce should + expire. Defaults to `00:05:00`. + type: string + preserveUrlFragmentsForLogins: + description: Should the fragments from the request + be preserved after the login request is made. Defaults + to false. Should the fragments from the request + be preserved after the login request is made. Defaults + to `false`. + type: boolean + tokenRefreshExtensionTime: + description: The number of hours after session token + expiration that a session token can be used to call + the token refresh API. Defaults to 72 hours. The + number of hours after session token expiration that + a session token can be used to call the token refresh + API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Token Store configuration + Enabled. Defaults to false Should the Token Store + configuration Enabled. Defaults to `false` + type: boolean + tokenStorePath: + description: The directory path in the App Filesystem + in which the tokens will be stored. The directory + path in the App Filesystem in which the tokens will + be stored. + type: string + tokenStoreSasSettingName: + description: The name of the app setting which contains + the SAS URL of the blob storage containing the tokens. + The name of the app setting which contains the SAS + URL of the blob storage containing the tokens. + type: string + validateNonce: + description: Should the nonce be validated while completing + the login flow. Defaults to true. Should the nonce + be validated while completing the login flow. Defaults + to `true`. + type: boolean + type: object + type: array + microsoftV2: + description: A microsoft_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + The list of Login scopes that will be requested + as part of Microsoft Account authentication. + items: + type: string + type: array + type: object + type: array + requireAuthentication: + description: Should the authentication flow be used for + all requests. Should the authentication flow be used for + all requests. + type: boolean + requireHttps: + description: Should HTTPS be required on connections? Defaults + to true. Should HTTPS be required on connections? Defaults + to true. + type: boolean + runtimeVersion: + description: The Runtime Version of the Authentication and + Authorisation feature of this App. Defaults to ~1. The + Runtime Version of the Authentication and Authorisation + feature of this App. Defaults to `~1` + type: string + twitterV2: + description: A twitter_v2 block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. + type: string + type: object + type: array + unauthenticatedAction: + description: The action to take for requests made without + authentication. Possible values include RedirectToLoginPage, + AllowAnonymous, Return401, and Return403. Defaults to + RedirectToLoginPage. The action to take for requests made + without authentication. Possible values include `RedirectToLoginPage`, + `AllowAnonymous`, `Return401`, and `Return403`. Defaults + to `RedirectToLoginPage`. + type: string + type: object + type: array + backup: + description: A backup block as defined below. + items: + properties: + enabled: + description: Should this backup job be enabled? Defaults + to true. Should this backup job be enabled? + type: boolean + name: + description: The name which should be used for this Backup. + The name which should be used for this Backup. + type: string + schedule: + description: A schedule block as defined below. + items: + properties: + frequencyInterval: + description: How often the backup should be executed + (e.g. for weekly backup, this should be set to 7 + and frequency_unit should be set to Day). How often + the backup should be executed (e.g. for weekly backup, + this should be set to `7` and `frequency_unit` should + be set to `Day`). + type: number + frequencyUnit: + description: 'The unit of time for how often the backup + should take place. Possible values include: Day, + Hour The unit of time for how often the backup should + take place. Possible values include: `Day` and `Hour`.' + type: string + keepAtLeastOneBackup: + description: Should the service keep at least one + backup, regardless of the age of backup? Defaults + to false. Should the service keep at least one backup, + regardless of age of backup. Defaults to `false`. + type: boolean + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. After how many days backups + should be deleted. + type: number + startTime: + description: When the schedule should start working + in RFC-3339 format. When the schedule should start + working in RFC-3339 format. + type: string + type: object + type: array + type: object + type: array + clientAffinityEnabled: + description: Should Client Affinity be enabled? + type: boolean + clientCertificateEnabled: + description: Should Client Certificates be enabled? + type: boolean + clientCertificateExclusionPaths: + description: Paths to exclude when using client certificates, + separated by ; Paths to exclude when using client certificates, + separated by ; + type: string + clientCertificateMode: + description: The Client Certificate mode. Possible values are + Required, Optional, and OptionalInteractiveUser. This property + has no effect when client_certificate_enabled is false + type: string + connectionString: + description: One or more connection_string blocks as defined below. + items: + properties: + name: + description: The name of the Connection String. The name + which should be used for this Connection. + type: string + type: + description: 'Type of database. Possible values include: + MySQL, SQLServer, SQLAzure, Custom, NotificationHub, ServiceBus, + EventHub, APIHub, DocDb, RedisCache, and PostgreSQL. Type + of database. Possible values include: `MySQL`, `SQLServer`, + `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, + `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`.' + type: string + type: object + type: array + enabled: + description: Should the Linux Web App be enabled? Defaults to + true. + type: boolean + httpsOnly: + description: Should the Linux Web App require HTTPS connections. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Linux Web App. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Linux Web App. Possible + values are SystemAssigned, UserAssigned, and SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + keyVaultReferenceIdentityId: + description: The User Assigned Identity ID used for accessing + KeyVault secrets. The identity must be assigned to the application + in the identity block. For more information see - Access vaults + with a user-assigned identity. + type: string + location: + description: The Azure Region where the Linux Web App should exist. + Changing this forces a new Linux Web App to be created. + type: string + logs: + description: A logs block as defined below. + items: + properties: + applicationLogs: + description: A application_logs block as defined above. + items: + properties: + azureBlobStorage: + description: A azure_blob_storage_http block as defined + below. + items: + properties: + level: + description: 'The level at which to log. Possible + values include Error, Warning, Information, + Verbose and Off. NOTE: this field is not available + for http_logs' + type: string + retentionInDays: + description: The retention period in days. A + value of 0 means no retention. + type: number + sasUrl: + description: SAS url to an Azure blob container + with read/write/list/delete permissions. + type: string + type: object + type: array + fileSystemLevel: + description: 'Log level. Possible values include: + Verbose, Information, Warning, and Error.' + type: string + type: object + type: array + detailedErrorMessages: + description: Should detailed error messages be enabled? + type: boolean + failedRequestTracing: + description: Should the failed request tracing be enabled? + type: boolean + httpLogs: + description: An http_logs block as defined above. + items: + properties: + azureBlobStorage: + description: A azure_blob_storage_http block as defined + below. + items: + properties: + retentionInDays: + description: The retention period in days. A + value of 0 means no retention. + type: number + type: object + type: array + fileSystem: + description: A file_system block as defined above. + items: + properties: + retentionInDays: + description: The retention period in days. A + value of 0 means no retention. + type: number + retentionInMb: + description: The maximum size in megabytes that + log files can use. + type: number + type: object + type: array + type: object + type: array + type: object + type: array + siteConfig: + description: A site_config block as defined below. + items: + properties: + alwaysOn: + description: If this Linux Web App is Always On enabled. + Defaults to true. + type: boolean + apiDefinitionUrl: + description: The URL to the API Definition for this Linux + Web App. + type: string + apiManagementApiId: + description: The API Management API ID this Linux Web App + is associated with. + type: string + appCommandLine: + description: The App command line to launch. + type: string + applicationStack: + description: A application_stack block as defined above. + items: + properties: + dockerImage: + description: The Docker image reference, including + repository host as needed. + type: string + dockerImageTag: + description: The image Tag to use. e.g. latest. + type: string + dotnetVersion: + description: The version of .NET to use. Possible + values include 3.1, 5.0, 6.0 and 7.0. + type: string + goVersion: + description: The version of Go to use. Possible values + include 1.18, and 1.19. + type: string + javaServer: + description: The Java server type. Possible values + include JAVA, TOMCAT, and JBOSSEAP. + type: string + javaServerVersion: + description: The Version of the java_server to use. + type: string + javaVersion: + description: The Version of Java to use. Possible + values include 8, 11, and 17. + type: string + nodeVersion: + description: The version of Node to run. Possible + values include 12-lts, 14-lts, 16-lts, and 18-lts. + This property conflicts with java_version. + type: string + phpVersion: + description: The version of PHP to run. Possible values + are 8.0, 8.1 and 8.2. + type: string + pythonVersion: + description: The version of Python to run. Possible + values include 3.7, 3.8, 3.9, 3.10 and 3.11. + type: string + rubyVersion: + description: Te version of Ruby to run. Possible values + include 2.6 and 2.7. + type: string + type: object + type: array + autoHealEnabled: + description: Should Auto heal rules be enabled? Required + with auto_heal_setting. + type: boolean + autoHealSetting: + description: A auto_heal_setting block as defined above. + Required with auto_heal. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. + items: + properties: + actionType: + description: 'Predefined action to be taken + to an Auto Heal trigger. Possible values include: + Recycle.' + type: string + minimumProcessExecutionTime: + description: The minimum amount of time in hh:mm:ss + the Linux Web App must have been running before + the defined action will be run in the event + of a trigger. + type: string + type: object + type: array + trigger: + description: A trigger block as defined below. + items: + properties: + requests: + description: A requests block as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + type: object + type: array + slowRequest: + description: One or more slow_request blocks + as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + path: + description: The path to which this rule + status code applies. + type: string + timeTaken: + description: The threshold of time passed + to qualify as a Slow Request in hh:mm:ss. + type: string + type: object + type: array + statusCode: + description: One or more status_code blocks + as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + path: + description: The path to which this rule + status code applies. + type: string + statusCodeRange: + description: The status code for this + rule, accepts single status codes and + status code ranges. e.g. 500 or 400-499. + Possible values are integers between + 101 and 599 + type: string + subStatus: + description: The Request Sub Status of + the Status Code. + type: number + win32Status: + description: The Win32 Status Code of + the Request. + type: string + type: object + type: array + type: object + type: array + type: object + type: array + containerRegistryManagedIdentityClientId: + description: The Client ID of the Managed Service Identity + to use for connections to the Azure Container Registry. + type: string + containerRegistryUseManagedIdentity: + description: Should connections for Azure Container Registry + use Managed Identity. + type: boolean + cors: + description: A cors block as defined above. + items: + properties: + allowedOrigins: + description: Specifies a list of origins that should + be allowed to make cross-origin calls. Specifies + a list of origins that should be allowed to make + cross-origin calls. + items: + type: string + type: array + supportCredentials: + description: Whether CORS requests with credentials + are allowed. Defaults to false Are credentials allowed + in CORS requests? Defaults to `false`. + type: boolean + type: object + type: array + defaultDocuments: + description: Specifies a list of Default Documents for the + Linux Web App. + items: + type: string + type: array + ftpsState: + description: The State of FTP / FTPS service. Possible values + include AllAllowed, FtpsOnly, and Disabled. + type: string + healthCheckEvictionTimeInMin: + description: The amount of time in minutes that a node can + be unhealthy before being removed from the load balancer. + Possible values are between 2 and 10. Only valid in conjunction + with health_check_path. The amount of time in minutes + that a node is unhealthy before being removed from the + load balancer. Possible values are between `2` and `10`. + Defaults to `10`. Only valid in conjunction with `health_check_path` + type: number + healthCheckPath: + description: The path to the Health Check. + type: string + http2Enabled: + description: Should the HTTP2 be enabled? + type: boolean + ipRestriction: + description: One or more ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + loadBalancingMode: + description: 'The Site load balancing. Possible values include: + WeightedRoundRobin, LeastRequests, LeastResponseTime, + WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. + Defaults to LeastRequests if omitted.' + type: string + localMysqlEnabled: + description: Use Local MySQL. Defaults to false. + type: boolean + managedPipelineMode: + description: Managed pipeline mode. Possible values include + Integrated, and Classic. + type: string + minimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests. Possible values include: 1.0, + 1.1, and 1.2. Defaults to 1.2.' + type: string + remoteDebuggingEnabled: + description: Should Remote Debugging be enabled? Defaults + to false. + type: boolean + remoteDebuggingVersion: + description: The Remote Debugging Version. Possible values + include VS2017 and VS2019 + type: string + scmIpRestriction: + description: One or more scm_ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + scmMinimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests to the SCM site Possible values + include: 1.0, 1.1, and 1.2. Defaults to 1.2.' + type: string + scmUseMainIpRestriction: + description: Should the Linux Web App ip_restriction configuration + be used for the SCM also. + type: boolean + use32BitWorker: + description: Should the Linux Web App use a 32-bit worker? + Defaults to true. + type: boolean + vnetRouteAllEnabled: + description: Should all outbound traffic have NAT Gateways, + Network Security Groups and User Defined Routes applied? + Defaults to false. Should all outbound traffic to have + Virtual Network Security Groups and User Defined Routes + applied? Defaults to `false`. + type: boolean + websocketsEnabled: + description: Should Web Sockets be enabled? Defaults to + false. + type: boolean + workerCount: + description: The number of Workers for this Linux App Service. + type: number + type: object + type: array + stickySettings: + description: A sticky_settings block as defined below. + items: + properties: + appSettingNames: + description: A list of app_setting names that the Linux + Web App will not swap between Slots when a swap operation + is triggered. + items: + type: string + type: array + connectionStringNames: + description: A list of connection_string names that the + Linux Web App will not swap between Slots when a swap + operation is triggered. + items: + type: string + type: array + type: object + type: array + storageAccount: + description: One or more storage_account blocks as defined below. + items: + properties: + accountName: + description: The Name of the Storage Account. + type: string + mountPath: + description: The path at which to mount the storage share. + type: string + name: + description: The name which should be used for this Storage + Account. + type: string + shareName: + description: The Name of the File Share or Container Name + for Blob storage. + type: string + type: + description: The Azure Storage Type. Possible values include + AzureFiles and AzureBlob + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Linux Web App. + type: object + zipDeployFile: + description: The local path and filename of the Zip packaged application + to deploy to this Linux Web App. The local path and filename + of the Zip packaged application to deploy to this Linux Web + App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` + or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App + in `app_settings`. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -2301,9 +3604,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: siteConfig is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.siteConfig) + || has(self.initProvider.siteConfig)' status: description: LinuxWebAppStatus defines the observed state of LinuxWebApp. properties: diff --git a/package/crds/web.azure.upbound.io_linuxwebappslots.yaml b/package/crds/web.azure.upbound.io_linuxwebappslots.yaml index 33d43cee8..8afd43e48 100644 --- a/package/crds/web.azure.upbound.io_linuxwebappslots.yaml +++ b/package/crds/web.azure.upbound.io_linuxwebappslots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: linuxwebappslots.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -201,8 +200,6 @@ spec: the client secret of the Client. Cannot be used with `client_secret`. type: string - required: - - clientId type: object type: array additionalLoginParameters: @@ -284,8 +281,6 @@ spec: items: type: string type: array - required: - - appId type: object type: array github: @@ -335,8 +330,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array google: @@ -387,8 +380,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array issuer: @@ -448,8 +439,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array runtimeVersion: @@ -509,8 +498,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. type: string - required: - - consumerKey type: object type: array unauthenticatedClientAction: @@ -520,8 +507,6 @@ spec: when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' type: string - required: - - enabled type: object type: array authSettingsV2: @@ -612,9 +597,6 @@ spec: false Should the www-authenticate provider should be omitted from the request? Defaults to `false` type: boolean - required: - - clientId - - tenantAuthEndpoint type: object type: array appleV2: @@ -632,9 +614,6 @@ spec: for authentication. The app setting name that contains the `client_secret` value used for Apple Login. type: string - required: - - clientId - - clientSecretSettingName type: object type: array authEnabled: @@ -653,8 +632,6 @@ spec: Client to use to authenticate with Azure Static Web App Authentication. type: string - required: - - clientId type: object type: array configFilePath: @@ -695,10 +672,6 @@ spec: items: type: string type: array - required: - - clientId - - name - - openidConfigurationEndpoint type: object type: array defaultProvider: @@ -743,9 +716,6 @@ spec: items: type: string type: array - required: - - appId - - appSecretSettingName type: object type: array forwardProxyConvention: @@ -790,9 +760,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array googleV2: @@ -827,9 +794,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array httpRouteApiPrefix: @@ -953,9 +917,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array requireAuthentication: @@ -990,9 +951,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. type: string - required: - - consumerKey - - consumerSecretSettingName type: object type: array unauthenticatedAction: @@ -1004,8 +962,6 @@ spec: `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. type: string - required: - - login type: object type: array backup: @@ -1054,9 +1010,6 @@ spec: in RFC-3339 format. When the schedule should start working in RFC-3339 format. type: string - required: - - frequencyInterval - - frequencyUnit type: object type: array storageAccountUrlSecretRef: @@ -1078,8 +1031,6 @@ spec: - namespace type: object required: - - name - - schedule - storageAccountUrlSecretRef type: object type: array @@ -1134,8 +1085,6 @@ spec: - namespace type: object required: - - name - - type - valueSecretRef type: object type: array @@ -1162,8 +1111,6 @@ spec: Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array keyVaultReferenceIdentityId: @@ -1199,18 +1146,12 @@ spec: description: SAS url to an Azure blob container with read/write/list/delete permissions. type: string - required: - - level - - retentionInDays - - sasUrl type: object type: array fileSystemLevel: description: Log level. Possible values include Verbose, Information, Warning, and Error. type: string - required: - - fileSystemLevel type: object type: array detailedErrorMessages: @@ -1266,9 +1207,6 @@ spec: description: The maximum size in megabytes that log files can use. type: number - required: - - retentionInDays - - retentionInMb type: object type: array type: object @@ -1378,8 +1316,6 @@ spec: the defined action will be run in the event of a trigger. type: string - required: - - actionType type: object type: array trigger: @@ -1399,9 +1335,6 @@ spec: description: The time interval in the form hh:mm:ss. type: string - required: - - count - - interval type: object type: array slowRequest: @@ -1426,10 +1359,6 @@ spec: description: The threshold of time passed to qualify as a Slow Request in hh:mm:ss. type: string - required: - - count - - interval - - timeTaken type: object type: array statusCode: @@ -1465,10 +1394,6 @@ spec: description: The Win32 Status Code of the Request. type: string - required: - - count - - interval - - statusCodeRange type: object type: array type: object @@ -1926,10 +1851,6 @@ spec: type: string required: - accessKeySecretRef - - accountName - - name - - shareName - - type type: object type: array tags: @@ -2023,21 +1944,1393 @@ spec: on the App in `app_settings`. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appSettings: + additionalProperties: + type: string + description: A map of key-value pairs of App Settings. + type: object + authSettings: + description: An auth_settings block as defined below. + items: + properties: + activeDirectory: + description: An active_directory block as defined above. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. Cannot be used + with `client_secret`. + type: string + type: object + type: array + additionalLoginParameters: + additionalProperties: + type: string + description: Specifies a map of login Parameters to send + to the OpenID Connect authorization endpoint when a user + logs in. Specifies a map of Login Parameters to send to + the OpenID Connect authorization endpoint when a user + logs in. + type: object + allowedExternalRedirectUrls: + description: Specifies a list of External URLs that can + be redirected to as part of logging in or logging out + of the Linux Web App. Specifies a list of External URLs + that can be redirected to as part of logging in or logging + out of the Windows Web App. + items: + type: string + type: array + defaultProvider: + description: 'The default authentication provider to use + when multiple providers are configured. Possible values + include: BuiltInAuthenticationProviderAzureActiveDirectory, + BuiltInAuthenticationProviderFacebook, BuiltInAuthenticationProviderGoogle, + BuiltInAuthenticationProviderMicrosoftAccount, BuiltInAuthenticationProviderTwitter, + BuiltInAuthenticationProviderGithub The default authentication + provider to use when multiple providers are configured. + Possible values include: `AzureActiveDirectory`, `Facebook`, + `Google`, `MicrosoftAccount`, `Twitter`, `Github`.' + type: string + enabled: + description: Should the Authentication / Authorization feature + be enabled for the Linux Web App? Should the Authentication + / Authorization feature be enabled? + type: boolean + facebook: + description: A facebook block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. Cannot be specified with + `app_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes to be requested as part of Facebook Login + authentication. + items: + type: string + type: array + type: object + type: array + github: + description: A github block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of GitHub + Login authentication. + items: + type: string + type: array + type: object + type: array + google: + description: A google block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of Google + Sign-In authentication. If not specified, "openid", + "profile", and "email" are used as default scopes. + items: + type: string + type: array + type: object + type: array + issuer: + description: The OpenID Connect Issuer URI that represents + the entity that issues access tokens for this Linux Web + App. The OpenID Connect Issuer URI that represents the + entity which issues access tokens. + type: string + microsoft: + description: A microsoft block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. Cannot be specified + with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. The list of OAuth 2.0 + scopes that will be requested as part of Microsoft + Account authentication. If not specified, `wl.basic` + is used as the default scope. + items: + type: string + type: array + type: object + type: array + runtimeVersion: + description: The RuntimeVersion of the Authentication / + Authorization feature in use for the Linux Web App. The + RuntimeVersion of the Authentication / Authorization feature + in use. + type: string + tokenRefreshExtensionHours: + description: The number of hours after session token expiration + that a session token can be used to call the token refresh + API. Defaults to 72 hours. The number of hours after session + token expiration that a session token can be used to call + the token refresh API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Linux Web App durably store platform-specific + security tokens that are obtained during login flows? + Defaults to false. Should the Windows Web App durably + store platform-specific security tokens that are obtained + during login flows? Defaults to `false`. + type: boolean + twitter: + description: A twitter block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. Cannot be specified with `consumer_secret`. + type: string + type: object + type: array + unauthenticatedClientAction: + description: 'The action to take when an unauthenticated + client attempts to access the app. Possible values include: + RedirectToLoginPage, AllowAnonymous. The action to take + when an unauthenticated client attempts to access the + app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' + type: string + type: object + type: array + authSettingsV2: + description: An auth_settings_v2 block as defined below. + items: + properties: + activeDirectoryV2: + description: An active_directory_v2 block as defined below. + items: + properties: + allowedApplications: + description: The list of allowed Applications for + the Default Authorisation Policy. The list of allowed + Applications for the Default Authorisation Policy. + items: + type: string + type: array + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + allowedGroups: + description: The list of allowed Group Names for the + Default Authorisation Policy. The list of allowed + Group Names for the Default Authorisation Policy. + items: + type: string + type: array + allowedIdentities: + description: The list of allowed Identities for the + Default Authorisation Policy. The list of allowed + Identities for the Default Authorisation Policy. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretCertificateThumbprint: + description: The thumbprint of the certificate used + for signing purposes. The thumbprint of the certificate + used for signing purposes. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. + type: string + jwtAllowedClientApplications: + description: A list of Allowed Client Applications + in the JWT Claim. A list of Allowed Client Applications + in the JWT Claim. + items: + type: string + type: array + jwtAllowedGroups: + description: A list of Allowed Groups in the JWT Claim. + A list of Allowed Groups in the JWT Claim. + items: + type: string + type: array + loginParameters: + additionalProperties: + type: string + description: A map of key-value pairs to send to the + Authorisation Endpoint when a user logs in. A map + of key-value pairs to send to the Authorisation + Endpoint when a user logs in. + type: object + tenantAuthEndpoint: + description: The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + type: string + wwwAuthenticationDisabled: + description: Should the www-authenticate provider + should be omitted from the request? Defaults to + false Should the www-authenticate provider should + be omitted from the request? Defaults to `false` + type: boolean + type: object + type: array + appleV2: + description: An apple_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Apple web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Apple Login. + type: string + type: object + type: array + authEnabled: + description: Should the AuthV2 Settings be enabled. Defaults + to false. Should the AuthV2 Settings be enabled. Defaults + to `false` + type: boolean + azureStaticWebAppV2: + description: An azure_static_web_app_v2 block as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Static + Web App Authentication. + type: string + type: object + type: array + configFilePath: + description: The path to the App Auth settings. The path + to the App Auth settings. **Note:** Relative Paths are + evaluated from the Site Root directory. + type: string + customOidcV2: + description: Zero or more custom_oidc_v2 blocks as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with this Custom OIDC. + type: string + name: + description: The name which should be used for this + Storage Account. The name of the Custom OIDC Authentication + Provider. + type: string + nameClaimType: + description: The name of the claim that contains the + users name. The name of the claim that contains + the users name. + type: string + openidConfigurationEndpoint: + description: The app setting name that contains the + client_secret value used for the Custom OIDC Login. + The endpoint that contains all the configuration + endpoints for this Custom OIDC provider. + type: string + scopes: + description: The list of the scopes that should be + requested while authenticating. The list of the + scopes that should be requested while authenticating. + items: + type: string + type: array + type: object + type: array + defaultProvider: + description: The Default Authentication Provider to use + when more than one Authentication Provider is configured + and the unauthenticated_action is set to RedirectToLoginPage. + The Default Authentication Provider to use when the `unauthenticated_action` + is set to `RedirectToLoginPage`. + type: string + excludedPaths: + description: The paths which should be excluded from the + unauthenticated_action when it is set to RedirectToLoginPage. + The paths which should be excluded from the `unauthenticated_action` + when it is set to `RedirectToLoginPage`. + items: + type: string + type: array + facebookV2: + description: A facebook_v2 block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. + type: string + graphApiVersion: + description: The version of the Facebook API to be + used while logging in. The version of the Facebook + API to be used while logging in. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of scopes to be requested as part + of Facebook Login authentication. + items: + type: string + type: array + type: object + type: array + forwardProxyConvention: + description: The convention used to determine the url of + the request made. Possible values include ForwardProxyConventionNoProxy, + ForwardProxyConventionStandard, ForwardProxyConventionCustom. + Defaults to ForwardProxyConventionNoProxy. The convention + used to determine the url of the request made. Possible + values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, + `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + type: string + forwardProxyCustomHostHeaderName: + description: The name of the custom header containing the + host of the request. The name of the header containing + the host of the request. + type: string + forwardProxyCustomSchemeHeaderName: + description: The name of the custom header containing the + scheme of the request. The name of the header containing + the scheme of the request. + type: string + githubV2: + description: A github_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of OAuth 2.0 scopes that will be + requested as part of GitHub Login authentication. + items: + type: string + type: array + type: object + type: array + googleV2: + description: A google_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Google Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of Login scopes that will be requested + as part of Google Sign-In authentication. + items: + type: string + type: array + type: object + type: array + httpRouteApiPrefix: + description: The prefix that should precede all the authentication + and authorisation paths. Defaults to /.auth. The prefix + that should precede all the authentication and authorisation + paths. Defaults to `/.auth` + type: string + login: + description: A login block as defined below. + items: + properties: + allowedExternalRedirectUrls: + description: External URLs that can be redirected + to as part of logging in or logging out of the app. + This is an advanced setting typically only needed + by Windows Store application backends. External + URLs that can be redirected to as part of logging + in or logging out of the app. This is an advanced + setting typically only needed by Windows Store application + backends. **Note:** URLs within the current domain + are always implicitly allowed. + items: + type: string + type: array + cookieExpirationConvention: + description: 'The method by which cookies expire. + Possible values include: FixedTime, and IdentityProviderDerived. + Defaults to FixedTime. The method by which cookies + expire. Possible values include: `FixedTime`, and + `IdentityProviderDerived`. Defaults to `FixedTime`.' + type: string + cookieExpirationTime: + description: The time after the request is made when + the session cookie should expire. Defaults to 08:00:00. + The time after the request is made when the session + cookie should expire. Defaults to `08:00:00`. + type: string + logoutEndpoint: + description: The endpoint to which logout requests + should be made. The endpoint to which logout requests + should be made. + type: string + nonceExpirationTime: + description: The time after the request is made when + the nonce should expire. Defaults to 00:05:00. The + time after the request is made when the nonce should + expire. Defaults to `00:05:00`. + type: string + preserveUrlFragmentsForLogins: + description: Should the fragments from the request + be preserved after the login request is made. Defaults + to false. Should the fragments from the request + be preserved after the login request is made. Defaults + to `false`. + type: boolean + tokenRefreshExtensionTime: + description: The number of hours after session token + expiration that a session token can be used to call + the token refresh API. Defaults to 72 hours. The + number of hours after session token expiration that + a session token can be used to call the token refresh + API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Token Store configuration + Enabled. Defaults to false Should the Token Store + configuration Enabled. Defaults to `false` + type: boolean + tokenStorePath: + description: The directory path in the App Filesystem + in which the tokens will be stored. The directory + path in the App Filesystem in which the tokens will + be stored. + type: string + tokenStoreSasSettingName: + description: The name of the app setting which contains + the SAS URL of the blob storage containing the tokens. + The name of the app setting which contains the SAS + URL of the blob storage containing the tokens. + type: string + validateNonce: + description: Should the nonce be validated while completing + the login flow. Defaults to true. Should the nonce + be validated while completing the login flow. Defaults + to `true`. + type: boolean + type: object + type: array + microsoftV2: + description: A microsoft_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + The list of Login scopes that will be requested + as part of Microsoft Account authentication. + items: + type: string + type: array + type: object + type: array + requireAuthentication: + description: Should the authentication flow be used for + all requests. Should the authentication flow be used for + all requests. + type: boolean + requireHttps: + description: Should HTTPS be required on connections? Defaults + to true. Should HTTPS be required on connections? Defaults + to true. + type: boolean + runtimeVersion: + description: The Runtime Version of the Authentication and + Authorisation feature of this App. Defaults to ~1. The + Runtime Version of the Authentication and Authorisation + feature of this App. Defaults to `~1` + type: string + twitterV2: + description: A twitter_v2 block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. + type: string + type: object + type: array + unauthenticatedAction: + description: The action to take for requests made without + authentication. Possible values include RedirectToLoginPage, + AllowAnonymous, Return401, and Return403. Defaults to + RedirectToLoginPage. The action to take for requests made + without authentication. Possible values include `RedirectToLoginPage`, + `AllowAnonymous`, `Return401`, and `Return403`. Defaults + to `RedirectToLoginPage`. + type: string + type: object + type: array + backup: + description: A backup block as defined below. + items: + properties: + enabled: + description: Should this backup job be enabled? Defaults + to true. Should this backup job be enabled? + type: boolean + name: + description: The name which should be used for this Backup. + The name which should be used for this Backup. + type: string + schedule: + description: An schedule block as defined below. + items: + properties: + frequencyInterval: + description: How often the backup should be executed + (e.g. for weekly backup, this should be set to 7 + and frequency_unit should be set to Day). How often + the backup should be executed (e.g. for weekly backup, + this should be set to `7` and `frequency_unit` should + be set to `Day`). + type: number + frequencyUnit: + description: 'The unit of time for how often the backup + should take place. Possible values include: Day, + Hour The unit of time for how often the backup should + take place. Possible values include: `Day` and `Hour`.' + type: string + keepAtLeastOneBackup: + description: Should the service keep at least one + backup, regardless of the age of backup? Defaults + to false. Should the service keep at least one backup, + regardless of age of backup. Defaults to `false`. + type: boolean + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. After how many days backups + should be deleted. + type: number + startTime: + description: When the schedule should start working + in RFC-3339 format. When the schedule should start + working in RFC-3339 format. + type: string + type: object + type: array + type: object + type: array + clientAffinityEnabled: + description: Should Client Affinity be enabled? + type: boolean + clientCertificateEnabled: + description: Should Client Certificates be enabled? + type: boolean + clientCertificateExclusionPaths: + description: Paths to exclude when using client certificates, + separated by ; Paths to exclude when using client certificates, + separated by ; + type: string + clientCertificateMode: + description: The Client Certificate mode. Possible values are + Required, Optional, and OptionalInteractiveUser. This property + has no effect when client_cert_enabled is false + type: string + connectionString: + description: One or more connection_string blocks as defined below. + items: + properties: + name: + description: The name of the Connection String. The name + which should be used for this Connection. + type: string + type: + description: 'Type of database. Possible values include + APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, + PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + Type of database. Possible values include: `MySQL`, `SQLServer`, + `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, + `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`.' + type: string + type: object + type: array + enabled: + description: Should the Linux Web App be enabled? Defaults to + true. + type: boolean + httpsOnly: + description: Should the Linux Web App require HTTPS connections. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Linux Web App Slot. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Linux Web App Slot. + Possible values are SystemAssigned, UserAssigned and SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + keyVaultReferenceIdentityId: + description: The User Assigned Identity ID used for accessing + KeyVault secrets. The identity must be assigned to the application + in the identity block. For more information see - Access vaults + with a user-assigned identity. + type: string + logs: + description: A logs block as defined below. + items: + properties: + applicationLogs: + description: A application_logs block as defined above. + items: + properties: + azureBlobStorage: + description: A azure_blob_storage_http block as defined + above. + items: + properties: + level: + description: 'The level at which to log. Possible + values include Error, Warning, Information, + Verbose and Off. NOTE: this field is not available + for http_logs' + type: string + retentionInDays: + description: The retention period in days. A + values of 0 means no retention. + type: number + sasUrl: + description: SAS url to an Azure blob container + with read/write/list/delete permissions. + type: string + type: object + type: array + fileSystemLevel: + description: Log level. Possible values include Verbose, + Information, Warning, and Error. + type: string + type: object + type: array + detailedErrorMessages: + description: Should detailed error messages be enabled? + type: boolean + failedRequestTracing: + description: Should the failed request tracing be enabled? + type: boolean + httpLogs: + description: An http_logs block as defined above. + items: + properties: + azureBlobStorage: + description: A azure_blob_storage_http block as defined + above. + items: + properties: + retentionInDays: + description: The retention period in days. A + values of 0 means no retention. + type: number + type: object + type: array + fileSystem: + description: A file_system block as defined above. + items: + properties: + retentionInDays: + description: The retention period in days. A + values of 0 means no retention. + type: number + retentionInMb: + description: The maximum size in megabytes that + log files can use. + type: number + type: object + type: array + type: object + type: array + type: object + type: array + name: + description: The name which should be used for this Linux Web + App Slot. Changing this forces a new Linux Web App Slot to be + created. + type: string + servicePlanId: + description: The ID of the Service Plan in which to run this slot. + If not specified the same Service Plan as the Linux Web App + will be used. + type: string + siteConfig: + description: A site_config block as defined below. + items: + properties: + alwaysOn: + description: If this Linux Web App is Always On enabled. + Defaults to true. + type: boolean + apiDefinitionUrl: + description: The URL to the API Definition for this Linux + Web App Slot. + type: string + apiManagementApiId: + description: The API Management API ID this Linux Web App + Slot is associated with. + type: string + appCommandLine: + description: The App command line to launch. + type: string + applicationStack: + description: A application_stack block as defined above. + items: + properties: + dockerImage: + description: The Docker image reference, including + repository host as needed. + type: string + dockerImageTag: + description: The image Tag to use. e.g. latest. + type: string + dotnetVersion: + description: The version of .NET to use. Possible + values include 3.1, 5.0, 6.0 and 7.0. + type: string + goVersion: + description: The version of Go to use. Possible values + include 1.18, and 1.19. + type: string + javaServer: + description: The Java server type. Possible values + include JAVA, TOMCAT, and JBOSSEAP. + type: string + javaServerVersion: + description: The Version of the java_server to use. + type: string + javaVersion: + description: The Version of Java to use. Possible + values include 8, 11, and 17. + type: string + nodeVersion: + description: The version of Node to run. Possible + values include 12-lts, 14-lts, 16-lts, and 18-lts. + This property conflicts with java_version. + type: string + phpVersion: + description: The version of PHP to run. Possible values + are 8.0, 8.1 and 8.2. + type: string + pythonVersion: + description: The version of Python to run. Possible + values include 3.7, 3.8, 3.9, 3.10 and 3.11. + type: string + rubyVersion: + description: Te version of Ruby to run. Possible values + include 2.6 and 2.7. + type: string + type: object + type: array + autoHealEnabled: + description: Should Auto heal rules be enabled? Required + with auto_heal_setting. + type: boolean + autoHealSetting: + description: A auto_heal_setting block as defined above. + Required with auto_heal. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. + items: + properties: + actionType: + description: 'Predefined action to be taken + to an Auto Heal trigger. Possible values include: + Recycle.' + type: string + minimumProcessExecutionTime: + description: The minimum amount of time in hh:mm:ss + the Linux Web App must have been running before + the defined action will be run in the event + of a trigger. + type: string + type: object + type: array + trigger: + description: A trigger block as defined below. + items: + properties: + requests: + description: A requests block as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + type: object + type: array + slowRequest: + description: One or more slow_request blocks + as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + path: + description: The path to which this rule + status code applies. + type: string + timeTaken: + description: The threshold of time passed + to qualify as a Slow Request in hh:mm:ss. + type: string + type: object + type: array + statusCode: + description: One or more status_code blocks + as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + path: + description: The path to which this rule + status code applies. + type: string + statusCodeRange: + description: The status code for this + rule, accepts single status codes and + status code ranges. e.g. 500 or 400-499. + Possible values are integers between + 101 and 599 + type: string + subStatus: + description: The Request Sub Status of + the Status Code. + type: number + win32Status: + description: The Win32 Status Code of + the Request. + type: string + type: object + type: array + type: object + type: array + type: object + type: array + autoSwapSlotName: + description: The Linux Web App Slot Name to automatically + swap to when deployment to that slot is successfully completed. + type: string + containerRegistryManagedIdentityClientId: + description: The Client ID of the Managed Service Identity + to use for connections to the Azure Container Registry. + type: string + containerRegistryUseManagedIdentity: + description: Should connections for Azure Container Registry + use Managed Identity. + type: boolean + cors: + description: A cors block as defined above. + items: + properties: + allowedOrigins: + description: Specifies a list of origins that should + be allowed to make cross-origin calls. Specifies + a list of origins that should be allowed to make + cross-origin calls. + items: + type: string + type: array + supportCredentials: + description: Whether CORS requests with credentials + are allowed. Defaults to false Are credentials allowed + in CORS requests? Defaults to `false`. + type: boolean + type: object + type: array + defaultDocuments: + description: Specifies a list of Default Documents for the + Linux Web App. + items: + type: string + type: array + ftpsState: + description: The State of FTP / FTPS service. Possible values + include AllAllowed, FtpsOnly, and Disabled. + type: string + healthCheckEvictionTimeInMin: + description: The amount of time in minutes that a node can + be unhealthy before being removed from the load balancer. + Possible values are between 2 and 10. Only valid in conjunction + with health_check_path. The amount of time in minutes + that a node is unhealthy before being removed from the + load balancer. Possible values are between `2` and `10`. + Defaults to `10`. Only valid in conjunction with `health_check_path` + type: number + healthCheckPath: + description: The path to the Health Check. + type: string + http2Enabled: + description: Should the HTTP2 be enabled? + type: boolean + ipRestriction: + description: One or more ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + loadBalancingMode: + description: 'The Site load balancing. Possible values include: + WeightedRoundRobin, LeastRequests, LeastResponseTime, + WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. + Defaults to LeastRequests if omitted.' + type: string + localMysqlEnabled: + description: Use Local MySQL. Defaults to false. + type: boolean + managedPipelineMode: + description: 'Managed pipeline mode. Possible values include: + Integrated, Classic.' + type: string + minimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests. Possible values include: 1.0, + 1.1, and 1.2. Defaults to 1.2.' + type: string + remoteDebuggingEnabled: + description: Should Remote Debugging be enabled? Defaults + to false. + type: boolean + remoteDebuggingVersion: + description: The Remote Debugging Version. Possible values + include VS2017 and VS2019 + type: string + scmIpRestriction: + description: One or more scm_ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + scmMinimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests to the SCM site Possible values + include: 1.0, 1.1, and 1.2. Defaults to 1.2.' + type: string + scmUseMainIpRestriction: + description: Should the Linux Web App ip_restriction configuration + be used for the SCM also. + type: boolean + use32BitWorker: + description: Should the Linux Web App use a 32-bit worker? + Defaults to true. + type: boolean + vnetRouteAllEnabled: + description: Should all outbound traffic have NAT Gateways, + Network Security Groups and User Defined Routes applied? + Defaults to false. Should all outbound traffic to have + Virtual Network Security Groups and User Defined Routes + applied? Defaults to `false`. + type: boolean + websocketsEnabled: + description: Should Web Sockets be enabled? Defaults to + false. + type: boolean + workerCount: + description: The number of Workers for this Linux App Service + Slot. + type: number + type: object + type: array + storageAccount: + description: One or more storage_account blocks as defined below. + items: + properties: + accountName: + description: The Name of the Storage Account. + type: string + mountPath: + description: The path at which to mount the storage share. + type: string + name: + description: The name which should be used for this Storage + Account. + type: string + shareName: + description: The Name of the File Share or Container Name + for Blob storage. + type: string + type: + description: The Azure Storage Type. Possible values include + AzureFiles and AzureBlob + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags that should be assigned to the + Linux Web App. + type: object + zipDeployFile: + description: The local path and filename of the Zip packaged application + to deploy to this Linux Web App. The local path and filename + of the Zip packaged application to deploy to this Windows Web + App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` + on the App in `app_settings`. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -2211,9 +3504,13 @@ spec: type: object x-kubernetes-validations: - message: name is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.name) + || has(self.initProvider.name)' - message: siteConfig is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.siteConfig) + || has(self.initProvider.siteConfig)' status: description: LinuxWebAppSlotStatus defines the observed state of LinuxWebAppSlot. properties: diff --git a/package/crds/web.azure.upbound.io_serviceplans.yaml b/package/crds/web.azure.upbound.io_serviceplans.yaml index 83d83adcc..c3be91fc8 100644 --- a/package/crds/web.azure.upbound.io_serviceplans.yaml +++ b/package/crds/web.azure.upbound.io_serviceplans.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: serviceplans.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -189,21 +188,87 @@ spec: be created. type: boolean type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appServiceEnvironmentId: + description: The ID of the App Service Environment to create this + Service Plan in. + type: string + location: + description: The Azure Region where the Service Plan should exist. + Changing this forces a new AppService to be created. + type: string + maximumElasticWorkerCount: + description: The maximum number of workers to use in an Elastic + SKU Plan. Cannot be set unless using an Elastic SKU. + type: number + osType: + description: The O/S type for the App Services to be hosted in + this plan. Possible values include Windows, Linux, and WindowsContainer. + Changing this forces a new resource to be created. + type: string + perSiteScalingEnabled: + description: Should Per Site Scaling be enabled. Defaults to false. + type: boolean + skuName: + description: The SKU for the plan. Possible values include B1, + B2, B3, D1, F1, I1, I2, I3, I1v2, I2v2, I3v2, I4v2, I5v2, I6v2, + P1v2, P2v2, P3v2, P1v3, P2v3, P3v3, P1mv3, P2mv3, P3mv3, P4mv3, + P5mv3, S1, S2, S3, SHARED, EP1, EP2, EP3, WS1, WS2, WS3, and + Y1. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + AppService. + type: object + workerCount: + description: The number of Workers (instances) to be allocated. + type: number + zoneBalancingEnabled: + description: Should the Service Plan balance across Availability + Zones in the region. Changing this forces a new resource to + be created. + type: boolean + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -377,11 +442,17 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: osType is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.osType) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.osType) + || has(self.initProvider.osType)' - message: skuName is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.skuName) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.skuName) + || has(self.initProvider.skuName)' status: description: ServicePlanStatus defines the observed state of ServicePlan. properties: diff --git a/package/crds/web.azure.upbound.io_sourcecontroltokens.yaml b/package/crds/web.azure.upbound.io_sourcecontroltokens.yaml index 7d027047f..c770b72d1 100644 --- a/package/crds/web.azure.upbound.io_sourcecontroltokens.yaml +++ b/package/crds/web.azure.upbound.io_sourcecontroltokens.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: sourcecontroltokens.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -107,21 +106,50 @@ spec: Dropbox, Github, and OneDrive. type: string type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + type: + description: The Token type. Possible values include Bitbucket, + Dropbox, Github, and OneDrive. + type: string + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -295,9 +323,12 @@ spec: type: object x-kubernetes-validations: - message: tokenSecretRef is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.tokenSecretRef) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.tokenSecretRef)' - message: type is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.type) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.type) + || has(self.initProvider.type)' status: description: SourceControlTokenStatus defines the observed state of SourceControlToken. properties: diff --git a/package/crds/web.azure.upbound.io_staticsites.yaml b/package/crds/web.azure.upbound.io_staticsites.yaml index 426770e26..25943e964 100644 --- a/package/crds/web.azure.upbound.io_staticsites.yaml +++ b/package/crds/web.azure.upbound.io_staticsites.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: staticsites.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -83,8 +82,6 @@ spec: Static Site resource. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. type: string - required: - - type type: object type: array location: @@ -185,21 +182,80 @@ spec: description: A mapping of tags to assign to the resource. type: object type: object - managementPolicy: - default: FullControl + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of Managed Identity IDs which should + be assigned to this Static Site resource. + items: + type: string + type: array + type: + description: The Type of Managed Identity assigned to this + Static Site resource. Possible values are SystemAssigned, + UserAssigned and SystemAssigned, UserAssigned. + type: string + type: object + type: array + location: + description: The Azure Region where the Static Web App should + exist. Changing this forces a new Static Web App to be created. + type: string + skuSize: + description: Specifies the SKU size of the Static Web App. Possible + values are Free or Standard. Defaults to Free. + type: string + skuTier: + description: Specifies the SKU tier of the Static Web App. Possible + values are Free or Standard. Defaults to Free. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + type: object + managementPolicies: + default: + - '*' description: 'THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -373,7 +429,9 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' status: description: StaticSiteStatus defines the observed state of StaticSite. properties: diff --git a/package/crds/web.azure.upbound.io_windowsfunctionapps.yaml b/package/crds/web.azure.upbound.io_windowsfunctionapps.yaml index e27937cd3..34df28c9d 100644 --- a/package/crds/web.azure.upbound.io_windowsfunctionapps.yaml +++ b/package/crds/web.azure.upbound.io_windowsfunctionapps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: windowsfunctionapps.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -126,8 +125,6 @@ spec: the client secret of the Client. Cannot be used with `client_secret`. type: string - required: - - clientId type: object type: array additionalLoginParameters: @@ -207,8 +204,6 @@ spec: items: type: string type: array - required: - - appId type: object type: array github: @@ -258,8 +253,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array google: @@ -310,8 +303,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array issuer: @@ -371,8 +362,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array runtimeVersion: @@ -432,8 +421,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. type: string - required: - - consumerKey type: object type: array unauthenticatedClientAction: @@ -443,8 +430,6 @@ spec: when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' type: string - required: - - enabled type: object type: array authSettingsV2: @@ -535,9 +520,6 @@ spec: false Should the www-authenticate provider should be omitted from the request? Defaults to `false` type: boolean - required: - - clientId - - tenantAuthEndpoint type: object type: array appleV2: @@ -555,9 +537,6 @@ spec: for authentication. The app setting name that contains the `client_secret` value used for Apple Login. type: string - required: - - clientId - - clientSecretSettingName type: object type: array authEnabled: @@ -576,8 +555,6 @@ spec: Client to use to authenticate with Azure Static Web App Authentication. type: string - required: - - clientId type: object type: array configFilePath: @@ -618,10 +595,6 @@ spec: items: type: string type: array - required: - - clientId - - name - - openidConfigurationEndpoint type: object type: array defaultProvider: @@ -666,9 +639,6 @@ spec: items: type: string type: array - required: - - appId - - appSecretSettingName type: object type: array forwardProxyConvention: @@ -713,9 +683,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array googleV2: @@ -750,9 +717,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array httpRouteApiPrefix: @@ -876,9 +840,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array requireAuthentication: @@ -913,9 +874,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. type: string - required: - - consumerKey - - consumerSecretSettingName type: object type: array unauthenticatedAction: @@ -927,8 +885,6 @@ spec: `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. type: string - required: - - login type: object type: array backup: @@ -978,9 +934,6 @@ spec: in RFC-3339 format. When the schedule should start working in RFC-3339 format. type: string - required: - - frequencyInterval - - frequencyUnit type: object type: array storageAccountUrlSecretRef: @@ -1002,8 +955,6 @@ spec: - namespace type: object required: - - name - - schedule - storageAccountUrlSecretRef type: object type: array @@ -1064,8 +1015,6 @@ spec: - namespace type: object required: - - name - - type - valueSecretRef type: object type: array @@ -1111,8 +1060,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array keyVaultReferenceIdentityId: @@ -1910,10 +1857,6 @@ spec: type: string required: - accessKeySecretRef - - accountName - - name - - shareName - - type type: object type: array storageAccountAccessKeySecretRef: @@ -2117,21 +2060,1311 @@ spec: to be set on the App in `app_settings`. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appSettings: + additionalProperties: + type: string + description: A map of key-value pairs for App Settings and custom + values. A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) + and custom values. + type: object + authSettings: + description: A auth_settings block as defined below. + items: + properties: + activeDirectory: + description: An active_directory block as defined above. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. Cannot be used + with `client_secret`. + type: string + type: object + type: array + additionalLoginParameters: + additionalProperties: + type: string + description: Specifies a map of login Parameters to send + to the OpenID Connect authorization endpoint when a user + logs in. Specifies a map of Login Parameters to send to + the OpenID Connect authorization endpoint when a user + logs in. + type: object + allowedExternalRedirectUrls: + description: Specifies a list of External URLs that can + be redirected to as part of logging in or logging out + of the Windows Function App. Specifies a list of External + URLs that can be redirected to as part of logging in or + logging out of the Windows Web App. + items: + type: string + type: array + defaultProvider: + description: 'The default authentication provider to use + when multiple providers are configured. Possible values + include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, + Twitter, Github The default authentication provider to + use when multiple providers are configured. Possible values + include: `AzureActiveDirectory`, `Facebook`, `Google`, + `MicrosoftAccount`, `Twitter`, `Github`.' + type: string + enabled: + description: Should the Authentication / Authorization feature + be enabled for the Windows Function App? Should the Authentication + / Authorization feature be enabled? + type: boolean + facebook: + description: A facebook block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. Cannot be specified with + `app_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes to be requested as part of Facebook Login + authentication. + items: + type: string + type: array + type: object + type: array + github: + description: A github block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of GitHub + Login authentication. + items: + type: string + type: array + type: object + type: array + google: + description: A google block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of Google + Sign-In authentication. If not specified, "openid", + "profile", and "email" are used as default scopes. + items: + type: string + type: array + type: object + type: array + issuer: + description: The OpenID Connect Issuer URI that represents + the entity which issues access tokens for this Windows + Function App. The OpenID Connect Issuer URI that represents + the entity which issues access tokens. + type: string + microsoft: + description: A microsoft block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. Cannot be specified + with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. The list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, `wl.basic` is + used as the default scope. + items: + type: string + type: array + type: object + type: array + runtimeVersion: + description: The Runtime Version of the Authentication / + Authorization feature in use for the Windows Function + App. The RuntimeVersion of the Authentication / Authorization + feature in use. + type: string + tokenRefreshExtensionHours: + description: The number of hours after session token expiration + that a session token can be used to call the token refresh + API. Defaults to 72 hours. The number of hours after session + token expiration that a session token can be used to call + the token refresh API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Windows Function App durably store + platform-specific security tokens that are obtained during + login flows? Defaults to false. Should the Windows Web + App durably store platform-specific security tokens that + are obtained during login flows? Defaults to `false`. + type: boolean + twitter: + description: A twitter block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. Cannot be specified with `consumer_secret`. + type: string + type: object + type: array + unauthenticatedClientAction: + description: 'The action to take when an unauthenticated + client attempts to access the app. Possible values include: + RedirectToLoginPage, AllowAnonymous. The action to take + when an unauthenticated client attempts to access the + app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' + type: string + type: object + type: array + authSettingsV2: + description: A auth_settings_v2 block as defined below. + items: + properties: + activeDirectoryV2: + description: An active_directory_v2 block as defined below. + items: + properties: + allowedApplications: + description: The list of allowed Applications for + the Default Authorisation Policy. The list of allowed + Applications for the Default Authorisation Policy. + items: + type: string + type: array + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + allowedGroups: + description: The list of allowed Group Names for the + Default Authorisation Policy. The list of allowed + Group Names for the Default Authorisation Policy. + items: + type: string + type: array + allowedIdentities: + description: The list of allowed Identities for the + Default Authorisation Policy. The list of allowed + Identities for the Default Authorisation Policy. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretCertificateThumbprint: + description: The thumbprint of the certificate used + for signing purposes. The thumbprint of the certificate + used for signing purposes. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. + type: string + jwtAllowedClientApplications: + description: A list of Allowed Client Applications + in the JWT Claim. A list of Allowed Client Applications + in the JWT Claim. + items: + type: string + type: array + jwtAllowedGroups: + description: A list of Allowed Groups in the JWT Claim. + A list of Allowed Groups in the JWT Claim. + items: + type: string + type: array + loginParameters: + additionalProperties: + type: string + description: A map of key-value pairs to send to the + Authorisation Endpoint when a user logs in. A map + of key-value pairs to send to the Authorisation + Endpoint when a user logs in. + type: object + tenantAuthEndpoint: + description: The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + type: string + wwwAuthenticationDisabled: + description: Should the www-authenticate provider + should be omitted from the request? Defaults to + false Should the www-authenticate provider should + be omitted from the request? Defaults to `false` + type: boolean + type: object + type: array + appleV2: + description: An apple_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Apple web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Apple Login. + type: string + type: object + type: array + authEnabled: + description: Should the AuthV2 Settings be enabled. Defaults + to false. Should the AuthV2 Settings be enabled. Defaults + to `false` + type: boolean + azureStaticWebAppV2: + description: An azure_static_web_app_v2 block as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Static + Web App Authentication. + type: string + type: object + type: array + configFilePath: + description: The path to the App Auth settings. The path + to the App Auth settings. **Note:** Relative Paths are + evaluated from the Site Root directory. + type: string + customOidcV2: + description: Zero or more custom_oidc_v2 blocks as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with this Custom OIDC. + type: string + name: + description: The name which should be used for this + Storage Account. The name of the Custom OIDC Authentication + Provider. + type: string + nameClaimType: + description: The name of the claim that contains the + users name. The name of the claim that contains + the users name. + type: string + openidConfigurationEndpoint: + description: The app setting name that contains the + client_secret value used for the Custom OIDC Login. + The endpoint that contains all the configuration + endpoints for this Custom OIDC provider. + type: string + scopes: + description: The list of the scopes that should be + requested while authenticating. The list of the + scopes that should be requested while authenticating. + items: + type: string + type: array + type: object + type: array + defaultProvider: + description: The Default Authentication Provider to use + when more than one Authentication Provider is configured + and the unauthenticated_action is set to RedirectToLoginPage. + The Default Authentication Provider to use when the `unauthenticated_action` + is set to `RedirectToLoginPage`. + type: string + excludedPaths: + description: The paths which should be excluded from the + unauthenticated_action when it is set to RedirectToLoginPage. + The paths which should be excluded from the `unauthenticated_action` + when it is set to `RedirectToLoginPage`. + items: + type: string + type: array + facebookV2: + description: A facebook_v2 block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. + type: string + graphApiVersion: + description: The version of the Facebook API to be + used while logging in. The version of the Facebook + API to be used while logging in. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of scopes to be requested as part + of Facebook Login authentication. + items: + type: string + type: array + type: object + type: array + forwardProxyConvention: + description: The convention used to determine the url of + the request made. Possible values include ForwardProxyConventionNoProxy, + ForwardProxyConventionStandard, ForwardProxyConventionCustom. + Defaults to ForwardProxyConventionNoProxy. The convention + used to determine the url of the request made. Possible + values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, + `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + type: string + forwardProxyCustomHostHeaderName: + description: The name of the custom header containing the + host of the request. The name of the header containing + the host of the request. + type: string + forwardProxyCustomSchemeHeaderName: + description: The name of the custom header containing the + scheme of the request. The name of the header containing + the scheme of the request. + type: string + githubV2: + description: A github_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of OAuth 2.0 scopes that will be + requested as part of GitHub Login authentication. + items: + type: string + type: array + type: object + type: array + googleV2: + description: A google_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Google Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of Login scopes that will be requested + as part of Google Sign-In authentication. + items: + type: string + type: array + type: object + type: array + httpRouteApiPrefix: + description: The prefix that should precede all the authentication + and authorisation paths. Defaults to /.auth. The prefix + that should precede all the authentication and authorisation + paths. Defaults to `/.auth` + type: string + login: + description: A login block as defined below. + items: + properties: + allowedExternalRedirectUrls: + description: External URLs that can be redirected + to as part of logging in or logging out of the app. + This is an advanced setting typically only needed + by Windows Store application backends. External + URLs that can be redirected to as part of logging + in or logging out of the app. This is an advanced + setting typically only needed by Windows Store application + backends. **Note:** URLs within the current domain + are always implicitly allowed. + items: + type: string + type: array + cookieExpirationConvention: + description: 'The method by which cookies expire. + Possible values include: FixedTime, and IdentityProviderDerived. + Defaults to FixedTime. The method by which cookies + expire. Possible values include: `FixedTime`, and + `IdentityProviderDerived`. Defaults to `FixedTime`.' + type: string + cookieExpirationTime: + description: The time after the request is made when + the session cookie should expire. Defaults to 08:00:00. + The time after the request is made when the session + cookie should expire. Defaults to `08:00:00`. + type: string + logoutEndpoint: + description: The endpoint to which logout requests + should be made. The endpoint to which logout requests + should be made. + type: string + nonceExpirationTime: + description: The time after the request is made when + the nonce should expire. Defaults to 00:05:00. The + time after the request is made when the nonce should + expire. Defaults to `00:05:00`. + type: string + preserveUrlFragmentsForLogins: + description: Should the fragments from the request + be preserved after the login request is made. Defaults + to false. Should the fragments from the request + be preserved after the login request is made. Defaults + to `false`. + type: boolean + tokenRefreshExtensionTime: + description: The number of hours after session token + expiration that a session token can be used to call + the token refresh API. Defaults to 72 hours. The + number of hours after session token expiration that + a session token can be used to call the token refresh + API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Token Store configuration + Enabled. Defaults to false Should the Token Store + configuration Enabled. Defaults to `false` + type: boolean + tokenStorePath: + description: The directory path in the App Filesystem + in which the tokens will be stored. The directory + path in the App Filesystem in which the tokens will + be stored. + type: string + tokenStoreSasSettingName: + description: The name of the app setting which contains + the SAS URL of the blob storage containing the tokens. + The name of the app setting which contains the SAS + URL of the blob storage containing the tokens. + type: string + validateNonce: + description: Should the nonce be validated while completing + the login flow. Defaults to true. Should the nonce + be validated while completing the login flow. Defaults + to `true`. + type: boolean + type: object + type: array + microsoftV2: + description: A microsoft_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + The list of Login scopes that will be requested + as part of Microsoft Account authentication. + items: + type: string + type: array + type: object + type: array + requireAuthentication: + description: Should the authentication flow be used for + all requests. Should the authentication flow be used for + all requests. + type: boolean + requireHttps: + description: Should HTTPS be required on connections? Defaults + to true. Should HTTPS be required on connections? Defaults + to true. + type: boolean + runtimeVersion: + description: The Runtime Version of the Authentication and + Authorisation feature of this App. Defaults to ~1. The + Runtime Version of the Authentication and Authorisation + feature of this App. Defaults to `~1` + type: string + twitterV2: + description: A twitter_v2 block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. + type: string + type: object + type: array + unauthenticatedAction: + description: The action to take for requests made without + authentication. Possible values include RedirectToLoginPage, + AllowAnonymous, Return401, and Return403. Defaults to + RedirectToLoginPage. The action to take for requests made + without authentication. Possible values include `RedirectToLoginPage`, + `AllowAnonymous`, `Return401`, and `Return403`. Defaults + to `RedirectToLoginPage`. + type: string + type: object + type: array + backup: + description: A backup block as defined below. + items: + properties: + enabled: + description: Should this backup job be enabled? Defaults + to true. Should this backup job be enabled? + type: boolean + name: + description: The name which should be used for this Backup. + The name which should be used for this Backup. + type: string + schedule: + description: A schedule block as defined below. + items: + properties: + frequencyInterval: + description: How often the backup should be executed + (e.g. for weekly backup, this should be set to 7 + and frequency_unit should be set to Day). How often + the backup should be executed (e.g. for weekly backup, + this should be set to `7` and `frequency_unit` should + be set to `Day`). + type: number + frequencyUnit: + description: 'The unit of time for how often the backup + should take place. Possible values include: Day + and Hour. The unit of time for how often the backup + should take place. Possible values include: `Day` + and `Hour`.' + type: string + keepAtLeastOneBackup: + description: Should the service keep at least one + backup, regardless of age of backup. Defaults to + false. Should the service keep at least one backup, + regardless of age of backup. Defaults to `false`. + type: boolean + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. After how many days backups + should be deleted. + type: number + startTime: + description: When the schedule should start working + in RFC-3339 format. When the schedule should start + working in RFC-3339 format. + type: string + type: object + type: array + type: object + type: array + builtinLoggingEnabled: + description: Should built in logging be enabled. Configures AzureWebJobsDashboard + app setting based on the configured storage setting. Defaults + to true. Should built in logging be enabled. Configures `AzureWebJobsDashboard` + app setting based on the configured storage setting + type: boolean + clientCertificateEnabled: + description: Should the function app use Client Certificates. + Should the function app use Client Certificates + type: boolean + clientCertificateExclusionPaths: + description: Paths to exclude when using client certificates, + separated by ; Paths to exclude when using client certificates, + separated by ; + type: string + clientCertificateMode: + description: The mode of the Function App's client certificates + requirement for incoming requests. Possible values are Required, + Optional, and OptionalInteractiveUser. The mode of the Function + App's client certificates requirement for incoming requests. + Possible values are `Required`, `Optional`, and `OptionalInteractiveUser` + type: string + connectionString: + description: One or more connection_string blocks as defined below. + items: + properties: + name: + description: The name which should be used for this Connection. + The name which should be used for this Connection. + type: string + type: + description: 'Type of database. Possible values include: + APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, + PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + Type of database. Possible values include: `MySQL`, `SQLServer`, + `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, + `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`.' + type: string + type: object + type: array + contentShareForceDisabled: + description: Should Content Share Settings be disabled. Defaults + to false. Force disable the content share settings. + type: boolean + dailyMemoryTimeQuota: + description: The amount of memory in gigabyte-seconds that your + application is allowed to consume per day. Setting this value + only affects function apps under the consumption plan. Defaults + to 0. The amount of memory in gigabyte-seconds that your application + is allowed to consume per day. Setting this value only affects + function apps in Consumption Plans. + type: number + enabled: + description: Is the Function App enabled? Defaults to true. Is + the Windows Function App enabled. + type: boolean + functionsExtensionVersion: + description: The runtime version associated with the Function + App. Defaults to ~4. The runtime version associated with the + Function App. + type: string + httpsOnly: + description: Can the Function App only be accessed via HTTPS? + Defaults to false. Can the Function App only be accessed via + HTTPS? + type: boolean + identity: + description: A identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Windows Function App. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Windows Function App. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + keyVaultReferenceIdentityId: + description: The User Assigned Identity ID used for accessing + KeyVault secrets. The identity must be assigned to the application + in the identity block. For more information see - Access vaults + with a user-assigned identity The User Assigned Identity to + use for Key Vault access. + type: string + location: + description: The Azure Region where the Windows Function App should + exist. Changing this forces a new Windows Function App to be + created. + type: string + siteConfig: + description: A site_config block as defined below. + items: + properties: + alwaysOn: + description: If this Windows Function App is Always On enabled. + Defaults to false. If this Windows Web App is Always On + enabled. Defaults to `false`. + type: boolean + apiDefinitionUrl: + description: The URL of the API definition that describes + this Windows Function App. The URL of the API definition + that describes this Windows Function App. + type: string + apiManagementApiId: + description: The ID of the API Management API for this Windows + Function App. The ID of the API Management API for this + Windows Function App. + type: string + appCommandLine: + description: The App command line to launch. The program + and any arguments used to launch this app via the command + line. (Example `node myapp.js`). + type: string + appScaleLimit: + description: The number of workers this function app can + scale out to. Only applicable to apps on the Consumption + and Premium plan. The number of workers this function + app can scale out to. Only applicable to apps on the Consumption + and Premium plan. + type: number + appServiceLogs: + description: An app_service_logs block as defined above. + items: + properties: + diskQuotaMb: + description: The amount of disk space to use for logs. + Valid values are between 25 and 100. Defaults to + 35. The amount of disk space to use for logs. Valid + values are between `25` and `100`. + type: number + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. The retention period for + logs in days. Valid values are between `0` and `99999`. + Defaults to `0` (never delete). + type: number + type: object + type: array + applicationStack: + description: An application_stack block as defined above. + items: + properties: + dotnetVersion: + description: The version of .NET to use. Possible + values include v3.0, v4.0 v6.0 and v7.0. The version + of .Net. Possible values are `v3.0`, `v4.0`, `v6.0` + and `v7.0` + type: string + javaVersion: + description: The Version of Java to use. Supported + versions include 1.8, 11 & 17 (In-Preview). The + version of Java to use. Possible values are `1.8`, + `11` and `17` + type: string + nodeVersion: + description: The version of Node to run. Possible + values include ~12, ~14, ~16 and ~18. The version + of Node to use. Possible values include `12`, `14`, + `16` and `18` + type: string + powershellCoreVersion: + description: The version of PowerShell Core to run. + Possible values are 7, and 7.2. The PowerShell Core + version to use. Possible values are `7`, and `7.2` + type: string + useCustomRuntime: + description: Should the Windows Function App use a + custom runtime? Does the Function App use a custom + Application Stack? + type: boolean + useDotnetIsolatedRuntime: + description: Should the DotNet process use an isolated + runtime. Defaults to false. Should the DotNet process + use an isolated runtime. Defaults to `false`. + type: boolean + type: object + type: array + cors: + description: A cors block as defined above. + items: + properties: + allowedOrigins: + description: Specifies a list of origins that should + be allowed to make cross-origin calls. Specifies + a list of origins that should be allowed to make + cross-origin calls. + items: + type: string + type: array + supportCredentials: + description: Are credentials allowed in CORS requests? + Defaults to false. Are credentials allowed in CORS + requests? Defaults to `false`. + type: boolean + type: object + type: array + defaultDocuments: + description: Specifies a list of Default Documents for the + Windows Function App. Specifies a list of Default Documents + for the Windows Web App. + items: + type: string + type: array + elasticInstanceMinimum: + description: The number of minimum instances for this Windows + Function App. Only affects apps on Elastic Premium plans. + The number of minimum instances for this Windows Function + App. Only affects apps on Elastic Premium plans. + type: number + ftpsState: + description: 'State of FTP / FTPS service for this Windows + Function App. Possible values include: AllAllowed, FtpsOnly + and Disabled. Defaults to Disabled. State of FTP / FTPS + service for this function app. Possible values include: + `AllAllowed`, `FtpsOnly` and `Disabled`. Defaults to `Disabled`.' + type: string + healthCheckEvictionTimeInMin: + description: The amount of time in minutes that a node can + be unhealthy before being removed from the load balancer. + Possible values are between 2 and 10. Only valid in conjunction + with health_check_path. The amount of time in minutes + that a node is unhealthy before being removed from the + load balancer. Possible values are between `2` and `10`. + Defaults to `10`. Only valid in conjunction with `health_check_path` + type: number + healthCheckPath: + description: The path to be checked for this Windows Function + App health. The path to be checked for this function app + health. + type: string + http2Enabled: + description: Specifies if the HTTP2 protocol should be enabled. + Defaults to false. Specifies if the http2 protocol should + be enabled. Defaults to `false`. + type: boolean + ipRestriction: + description: One or more ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + loadBalancingMode: + description: 'The Site load balancing mode. Possible values + include: WeightedRoundRobin, LeastRequests, LeastResponseTime, + WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. + Defaults to LeastRequests if omitted. The Site load balancing + mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, + `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, + `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted.' + type: string + managedPipelineMode: + description: 'Managed pipeline mode. Possible values include: + Integrated, Classic. Defaults to Integrated. The Managed + Pipeline mode. Possible values include: `Integrated`, + `Classic`. Defaults to `Integrated`.' + type: string + minimumTlsVersion: + description: 'Configures the minimum version of TLS required + for SSL requests. Possible values include: 1.0, 1.1, and + 1.2. Defaults to 1.2. The configures the minimum version + of TLS required for SSL requests. Possible values include: + `1.0`, `1.1`, and `1.2`. Defaults to `1.2`.' + type: string + preWarmedInstanceCount: + description: The number of pre-warmed instances for this + Windows Function App. Only affects apps on an Elastic + Premium plan. The number of pre-warmed instances for this + function app. Only affects apps on an Elastic Premium + plan. + type: number + remoteDebuggingEnabled: + description: Should Remote Debugging be enabled. Defaults + to false. Should Remote Debugging be enabled. Defaults + to `false`. + type: boolean + remoteDebuggingVersion: + description: The Remote Debugging Version. Possible values + include VS2017, VS2019, and VS2022. The Remote Debugging + Version. Possible values include `VS2017`, `VS2019`, and + `VS2022` + type: string + runtimeScaleMonitoringEnabled: + description: Should Scale Monitoring of the Functions Runtime + be enabled? Should Functions Runtime Scale Monitoring + be enabled. + type: boolean + scmIpRestriction: + description: One or more scm_ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + scmMinimumTlsVersion: + description: 'Configures the minimum version of TLS required + for SSL requests to the SCM site. Possible values include: + 1.0, 1.1, and 1.2. Defaults to 1.2. Configures the minimum + version of TLS required for SSL requests to the SCM site + Possible values include: `1.0`, `1.1`, and `1.2`. Defaults + to `1.2`.' + type: string + scmUseMainIpRestriction: + description: Should the Windows Function App ip_restriction + configuration be used for the SCM also. Should the Windows + Function App `ip_restriction` configuration be used for + the SCM also. + type: boolean + use32BitWorker: + description: Should the Windows Function App use a 32-bit + worker process. Defaults to true. Should the Windows Web + App use a 32-bit worker. + type: boolean + vnetRouteAllEnabled: + description: Should all outbound traffic to have NAT Gateways, + Network Security Groups and User Defined Routes applied? + Defaults to false. Should all outbound traffic to have + Virtual Network Security Groups and User Defined Routes + applied? Defaults to `false`. + type: boolean + websocketsEnabled: + description: Should Web Sockets be enabled. Defaults to + false. Should Web Sockets be enabled. Defaults to `false`. + type: boolean + workerCount: + description: The number of Workers for this Windows Function + App. The number of Workers for this Windows Function App. + type: number + type: object + type: array + stickySettings: + description: A sticky_settings block as defined below. + items: + properties: + appSettingNames: + description: A list of app_setting names that the Windows + Function App will not swap between Slots when a swap operation + is triggered. + items: + type: string + type: array + connectionStringNames: + description: A list of connection_string names that the + Windows Function App will not swap between Slots when + a swap operation is triggered. + items: + type: string + type: array + type: object + type: array + storageAccount: + description: One or more storage_account blocks as defined below. + items: + properties: + accountName: + description: The Name of the Storage Account. + type: string + mountPath: + description: The path at which to mount the storage share. + type: string + name: + description: The name which should be used for this Storage + Account. + type: string + shareName: + description: The Name of the File Share or Container Name + for Blob storage. + type: string + type: + description: The Azure Storage Type. Possible values include + AzureFiles. + type: string + type: object + type: array + storageKeyVaultSecretId: + description: The Key Vault Secret ID, optionally including version, + that contains the Connection String to connect to the storage + account for this Function App. The Key Vault Secret ID, including + version, that contains the Connection String to connect to the + storage account for this Function App. + type: string + storageUsesManagedIdentity: + description: Should the Function App use Managed Identity to access + the storage account. Conflicts with storage_account_access_key. + Should the Function App use its Managed Identity to access storage? + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Windows Function App. + type: object + zipDeployFile: + description: The local path and filename of the Zip packaged application + to deploy to this Windows Function App. The local path and filename + of the Zip packaged application to deploy to this Windows Function + App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` + to be set on the App in `app_settings`. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -2305,9 +3538,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: siteConfig is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.siteConfig) + || has(self.initProvider.siteConfig)' status: description: WindowsFunctionAppStatus defines the observed state of WindowsFunctionApp. properties: diff --git a/package/crds/web.azure.upbound.io_windowsfunctionappslots.yaml b/package/crds/web.azure.upbound.io_windowsfunctionappslots.yaml index caaad793c..7821d88e8 100644 --- a/package/crds/web.azure.upbound.io_windowsfunctionappslots.yaml +++ b/package/crds/web.azure.upbound.io_windowsfunctionappslots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: windowsfunctionappslots.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -126,8 +125,6 @@ spec: the client secret of the Client. Cannot be used with `client_secret`. type: string - required: - - clientId type: object type: array additionalLoginParameters: @@ -206,8 +203,6 @@ spec: items: type: string type: array - required: - - appId type: object type: array github: @@ -257,8 +252,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array google: @@ -309,8 +302,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array issuer: @@ -370,8 +361,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array runtimeVersion: @@ -430,8 +419,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. type: string - required: - - consumerKey type: object type: array unauthenticatedClientAction: @@ -441,8 +428,6 @@ spec: when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' type: string - required: - - enabled type: object type: array authSettingsV2: @@ -533,9 +518,6 @@ spec: false Should the www-authenticate provider should be omitted from the request? Defaults to `false` type: boolean - required: - - clientId - - tenantAuthEndpoint type: object type: array appleV2: @@ -553,9 +535,6 @@ spec: for authentication. The app setting name that contains the `client_secret` value used for Apple Login. type: string - required: - - clientId - - clientSecretSettingName type: object type: array authEnabled: @@ -574,8 +553,6 @@ spec: Client to use to authenticate with Azure Static Web App Authentication. type: string - required: - - clientId type: object type: array configFilePath: @@ -616,10 +593,6 @@ spec: items: type: string type: array - required: - - clientId - - name - - openidConfigurationEndpoint type: object type: array defaultProvider: @@ -664,9 +637,6 @@ spec: items: type: string type: array - required: - - appId - - appSecretSettingName type: object type: array forwardProxyConvention: @@ -711,9 +681,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array googleV2: @@ -748,9 +715,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array httpRouteApiPrefix: @@ -874,9 +838,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array requireAuthentication: @@ -911,9 +872,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. type: string - required: - - consumerKey - - consumerSecretSettingName type: object type: array unauthenticatedAction: @@ -925,8 +883,6 @@ spec: `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. type: string - required: - - login type: object type: array backup: @@ -976,9 +932,6 @@ spec: in RFC-3339 format. When the schedule should start working in RFC-3339 format. type: string - required: - - frequencyInterval - - frequencyUnit type: object type: array storageAccountUrlSecretRef: @@ -1000,8 +953,6 @@ spec: - namespace type: object required: - - name - - schedule - storageAccountUrlSecretRef type: object type: array @@ -1062,8 +1013,6 @@ spec: - namespace type: object required: - - name - - type - valueSecretRef type: object type: array @@ -1188,8 +1137,6 @@ spec: Slot. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array keyVaultReferenceIdentityId: @@ -1810,10 +1757,6 @@ spec: type: string required: - accessKeySecretRef - - accountName - - name - - shareName - - type type: object type: array storageAccountAccessKeySecretRef: @@ -2009,21 +1952,1282 @@ spec: type: object type: object type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appSettings: + additionalProperties: + type: string + description: A map of key-value pairs for App Settings and custom + values. A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) + and custom values. + type: object + authSettings: + description: an auth_settings block as detailed below. + items: + properties: + activeDirectory: + description: an active_directory block as detailed below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. Cannot be used + with `client_secret`. + type: string + type: object + type: array + additionalLoginParameters: + additionalProperties: + type: string + description: Specifies a map of login Parameters to send + to the OpenID Connect authorization endpoint when a user + logs in. Specifies a map of Login Parameters to send to + the OpenID Connect authorization endpoint when a user + logs in. + type: object + allowedExternalRedirectUrls: + description: an allowed_external_redirect_urls block as + detailed below. Specifies a list of External URLs that + can be redirected to as part of logging in or logging + out of the Windows Web App. + items: + type: string + type: array + defaultProvider: + description: 'The default authentication provider to use + when multiple providers are configured. Possible values + include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, + Twitter, Github. The default authentication provider to + use when multiple providers are configured. Possible values + include: `AzureActiveDirectory`, `Facebook`, `Google`, + `MicrosoftAccount`, `Twitter`, `Github`.' + type: string + enabled: + description: Should the Authentication / Authorization feature + be enabled? Should the Authentication / Authorization + feature be enabled? + type: boolean + facebook: + description: a facebook block as detailed below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. Cannot be specified with + `app_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes to be requested as part of Facebook Login + authentication. + items: + type: string + type: array + type: object + type: array + github: + description: a github block as detailed below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of GitHub + Login authentication. + items: + type: string + type: array + type: object + type: array + google: + description: a google block as detailed below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of Google + Sign-In authentication. If not specified, "openid", + "profile", and "email" are used as default scopes. + items: + type: string + type: array + type: object + type: array + issuer: + description: The OpenID Connect Issuer URI that represents + the entity which issues access tokens. The OpenID Connect + Issuer URI that represents the entity which issues access + tokens. + type: string + microsoft: + description: a microsoft block as detailed below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. Cannot be specified + with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, wl.basic is used + as the default scope. The list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, `wl.basic` is + used as the default scope. + items: + type: string + type: array + type: object + type: array + runtimeVersion: + description: The RuntimeVersion of the Authentication / + Authorization feature in use. The RuntimeVersion of the + Authentication / Authorization feature in use. + type: string + tokenRefreshExtensionHours: + description: The number of hours after session token expiration + that a session token can be used to call the token refresh + API. Defaults to 72 hours. The number of hours after session + token expiration that a session token can be used to call + the token refresh API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Windows Web App durably store platform-specific + security tokens that are obtained during login flows? + Defaults to false. Should the Windows Web App durably + store platform-specific security tokens that are obtained + during login flows? Defaults to `false`. + type: boolean + twitter: + description: a twitter block as detailed below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. Cannot be specified with `consumer_secret`. + type: string + type: object + type: array + unauthenticatedClientAction: + description: 'The action to take when an unauthenticated + client attempts to access the app. Possible values include: + RedirectToLoginPage, AllowAnonymous. The action to take + when an unauthenticated client attempts to access the + app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' + type: string + type: object + type: array + authSettingsV2: + description: an auth_settings_v2 block as detailed below. + items: + properties: + activeDirectoryV2: + description: An active_directory_v2 block as defined below. + items: + properties: + allowedApplications: + description: The list of allowed Applications for + the Default Authorisation Policy. The list of allowed + Applications for the Default Authorisation Policy. + items: + type: string + type: array + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + allowedGroups: + description: The list of allowed Group Names for the + Default Authorisation Policy. The list of allowed + Group Names for the Default Authorisation Policy. + items: + type: string + type: array + allowedIdentities: + description: The list of allowed Identities for the + Default Authorisation Policy. The list of allowed + Identities for the Default Authorisation Policy. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretCertificateThumbprint: + description: The thumbprint of the certificate used + for signing purposes. The thumbprint of the certificate + used for signing purposes. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. + type: string + jwtAllowedClientApplications: + description: A list of Allowed Client Applications + in the JWT Claim. A list of Allowed Client Applications + in the JWT Claim. + items: + type: string + type: array + jwtAllowedGroups: + description: A list of Allowed Groups in the JWT Claim. + A list of Allowed Groups in the JWT Claim. + items: + type: string + type: array + loginParameters: + additionalProperties: + type: string + description: A map of key-value pairs to send to the + Authorisation Endpoint when a user logs in. A map + of key-value pairs to send to the Authorisation + Endpoint when a user logs in. + type: object + tenantAuthEndpoint: + description: The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + type: string + wwwAuthenticationDisabled: + description: Should the www-authenticate provider + should be omitted from the request? Defaults to + false Should the www-authenticate provider should + be omitted from the request? Defaults to `false` + type: boolean + type: object + type: array + appleV2: + description: An apple_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Apple web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Apple Login. + type: string + type: object + type: array + authEnabled: + description: Should the AuthV2 Settings be enabled. Defaults + to false. Should the AuthV2 Settings be enabled. Defaults + to `false` + type: boolean + azureStaticWebAppV2: + description: An azure_static_web_app_v2 block as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Static + Web App Authentication. + type: string + type: object + type: array + configFilePath: + description: The path to the App Auth settings. The path + to the App Auth settings. **Note:** Relative Paths are + evaluated from the Site Root directory. + type: string + customOidcV2: + description: Zero or more custom_oidc_v2 blocks as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with this Custom OIDC. + type: string + name: + description: The name which should be used for this + Storage Account. The name of the Custom OIDC Authentication + Provider. + type: string + nameClaimType: + description: The name of the claim that contains the + users name. The name of the claim that contains + the users name. + type: string + openidConfigurationEndpoint: + description: The app setting name that contains the + client_secret value used for the Custom OIDC Login. + The endpoint that contains all the configuration + endpoints for this Custom OIDC provider. + type: string + scopes: + description: The list of the scopes that should be + requested while authenticating. The list of the + scopes that should be requested while authenticating. + items: + type: string + type: array + type: object + type: array + defaultProvider: + description: The Default Authentication Provider to use + when more than one Authentication Provider is configured + and the unauthenticated_action is set to RedirectToLoginPage. + The Default Authentication Provider to use when the `unauthenticated_action` + is set to `RedirectToLoginPage`. + type: string + excludedPaths: + description: The paths which should be excluded from the + unauthenticated_action when it is set to RedirectToLoginPage. + The paths which should be excluded from the `unauthenticated_action` + when it is set to `RedirectToLoginPage`. + items: + type: string + type: array + facebookV2: + description: A facebook_v2 block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. + type: string + graphApiVersion: + description: The version of the Facebook API to be + used while logging in. The version of the Facebook + API to be used while logging in. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of scopes to be requested as part + of Facebook Login authentication. + items: + type: string + type: array + type: object + type: array + forwardProxyConvention: + description: The convention used to determine the url of + the request made. Possible values include ForwardProxyConventionNoProxy, + ForwardProxyConventionStandard, ForwardProxyConventionCustom. + Defaults to ForwardProxyConventionNoProxy. The convention + used to determine the url of the request made. Possible + values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, + `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + type: string + forwardProxyCustomHostHeaderName: + description: The name of the custom header containing the + host of the request. The name of the header containing + the host of the request. + type: string + forwardProxyCustomSchemeHeaderName: + description: The name of the custom header containing the + scheme of the request. The name of the header containing + the scheme of the request. + type: string + githubV2: + description: A github_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of OAuth 2.0 scopes that will be + requested as part of GitHub Login authentication. + items: + type: string + type: array + type: object + type: array + googleV2: + description: A google_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Google Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of Login scopes that will be requested + as part of Google Sign-In authentication. + items: + type: string + type: array + type: object + type: array + httpRouteApiPrefix: + description: The prefix that should precede all the authentication + and authorisation paths. Defaults to /.auth. The prefix + that should precede all the authentication and authorisation + paths. Defaults to `/.auth` + type: string + login: + description: A login block as defined below. + items: + properties: + allowedExternalRedirectUrls: + description: External URLs that can be redirected + to as part of logging in or logging out of the app. + This is an advanced setting typically only needed + by Windows Store application backends. External + URLs that can be redirected to as part of logging + in or logging out of the app. This is an advanced + setting typically only needed by Windows Store application + backends. **Note:** URLs within the current domain + are always implicitly allowed. + items: + type: string + type: array + cookieExpirationConvention: + description: 'The method by which cookies expire. + Possible values include: FixedTime, and IdentityProviderDerived. + Defaults to FixedTime. The method by which cookies + expire. Possible values include: `FixedTime`, and + `IdentityProviderDerived`. Defaults to `FixedTime`.' + type: string + cookieExpirationTime: + description: The time after the request is made when + the session cookie should expire. Defaults to 08:00:00. + The time after the request is made when the session + cookie should expire. Defaults to `08:00:00`. + type: string + logoutEndpoint: + description: The endpoint to which logout requests + should be made. The endpoint to which logout requests + should be made. + type: string + nonceExpirationTime: + description: The time after the request is made when + the nonce should expire. Defaults to 00:05:00. The + time after the request is made when the nonce should + expire. Defaults to `00:05:00`. + type: string + preserveUrlFragmentsForLogins: + description: Should the fragments from the request + be preserved after the login request is made. Defaults + to false. Should the fragments from the request + be preserved after the login request is made. Defaults + to `false`. + type: boolean + tokenRefreshExtensionTime: + description: The number of hours after session token + expiration that a session token can be used to call + the token refresh API. Defaults to 72 hours. The + number of hours after session token expiration that + a session token can be used to call the token refresh + API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Token Store configuration + Enabled. Defaults to false Should the Token Store + configuration Enabled. Defaults to `false` + type: boolean + tokenStorePath: + description: The directory path in the App Filesystem + in which the tokens will be stored. The directory + path in the App Filesystem in which the tokens will + be stored. + type: string + tokenStoreSasSettingName: + description: The name of the app setting which contains + the SAS URL of the blob storage containing the tokens. + The name of the app setting which contains the SAS + URL of the blob storage containing the tokens. + type: string + validateNonce: + description: Should the nonce be validated while completing + the login flow. Defaults to true. Should the nonce + be validated while completing the login flow. Defaults + to `true`. + type: boolean + type: object + type: array + microsoftV2: + description: A microsoft_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + The list of Login scopes that will be requested + as part of Microsoft Account authentication. + items: + type: string + type: array + type: object + type: array + requireAuthentication: + description: Should the authentication flow be used for + all requests. Should the authentication flow be used for + all requests. + type: boolean + requireHttps: + description: Should HTTPS be required on connections? Defaults + to true. Should HTTPS be required on connections? Defaults + to true. + type: boolean + runtimeVersion: + description: The Runtime Version of the Authentication and + Authorisation feature of this App. Defaults to ~1. The + Runtime Version of the Authentication and Authorisation + feature of this App. Defaults to `~1` + type: string + twitterV2: + description: A twitter_v2 block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. + type: string + type: object + type: array + unauthenticatedAction: + description: The action to take for requests made without + authentication. Possible values include RedirectToLoginPage, + AllowAnonymous, Return401, and Return403. Defaults to + RedirectToLoginPage. The action to take for requests made + without authentication. Possible values include `RedirectToLoginPage`, + `AllowAnonymous`, `Return401`, and `Return403`. Defaults + to `RedirectToLoginPage`. + type: string + type: object + type: array + backup: + description: a backup block as detailed below. + items: + properties: + enabled: + description: Should this backup job be enabled? Defaults + to true. Should this backup job be enabled? + type: boolean + name: + description: The name which should be used for this Backup. + The name which should be used for this Backup. + type: string + schedule: + description: a schedule block as detailed below. + items: + properties: + frequencyInterval: + description: How often the backup should be executed + (e.g. for weekly backup, this should be set to 7 + and frequency_unit should be set to Day). How often + the backup should be executed (e.g. for weekly backup, + this should be set to `7` and `frequency_unit` should + be set to `Day`). + type: number + frequencyUnit: + description: 'The unit of time for how often the backup + should take place. Possible values include: Day + and Hour. The unit of time for how often the backup + should take place. Possible values include: `Day` + and `Hour`.' + type: string + keepAtLeastOneBackup: + description: Should the service keep at least one + backup, regardless of age of backup. Defaults to + false. Should the service keep at least one backup, + regardless of age of backup. Defaults to `false`. + type: boolean + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. After how many days backups + should be deleted. + type: number + startTime: + description: When the schedule should start working + in RFC-3339 format. When the schedule should start + working in RFC-3339 format. + type: string + type: object + type: array + type: object + type: array + builtinLoggingEnabled: + description: Should built-in logging be enabled. Configures AzureWebJobsDashboard + app setting based on the configured storage setting. Defaults + to true. Should built in logging be enabled. Configures `AzureWebJobsDashboard` + app setting based on the configured storage setting. + type: boolean + clientCertificateEnabled: + description: Should the Function App Slot use Client Certificates. + Should the Function App Slot use Client Certificates. + type: boolean + clientCertificateExclusionPaths: + description: Paths to exclude when using client certificates, + separated by ; Paths to exclude when using client certificates, + separated by ; + type: string + clientCertificateMode: + description: The mode of the Function App Slot's client certificates + requirement for incoming requests. Possible values are Required, + Optional, and OptionalInteractiveUser. The mode of the Function + App Slot's client certificates requirement for incoming requests. + Possible values are `Required`, `Optional`, and `OptionalInteractiveUser`. + type: string + connectionString: + description: a connection_string block as detailed below. + items: + properties: + name: + description: The name which should be used for this Connection. + The name which should be used for this Connection. + type: string + type: + description: 'Type of database. Possible values include: + APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, + PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + Type of database. Possible values include: `MySQL`, `SQLServer`, + `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, + `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`.' + type: string + type: object + type: array + contentShareForceDisabled: + description: Force disable the content share settings. Force disable + the content share settings. + type: boolean + dailyMemoryTimeQuota: + description: The amount of memory in gigabyte-seconds that your + application is allowed to consume per day. Setting this value + only affects function apps in Consumption Plans. Defaults to + 0. The amount of memory in gigabyte-seconds that your application + is allowed to consume per day. Setting this value only affects + function apps in Consumption Plans. + type: number + enabled: + description: Is the Windows Function App Slot enabled. Defaults + to true. Is the Windows Function App Slot enabled. + type: boolean + functionsExtensionVersion: + description: The runtime version associated with the Function + App Slot. Defaults to ~4. The runtime version associated with + the Function App Slot. + type: string + httpsOnly: + description: Can the Function App Slot only be accessed via HTTPS? + Can the Function App Slot only be accessed via HTTPS? + type: boolean + identity: + description: an identity block as detailed below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Windows Function App Slot. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Windows Function App + Slot. Possible values are SystemAssigned, UserAssigned, + SystemAssigned, UserAssigned (to enable both). + type: string + type: object + type: array + keyVaultReferenceIdentityId: + description: The User Assigned Identity ID used for accessing + KeyVault secrets. The identity must be assigned to the application + in the identity block. For more information see - Access vaults + with a user-assigned identity The User Assigned Identity to + use for Key Vault access. + type: string + servicePlanId: + description: The ID of the Service Plan in which to run this slot. + If not specified the same Service Plan as the Windows Function + App will be used. + type: string + siteConfig: + description: a site_config block as detailed below. + items: + properties: + alwaysOn: + description: If this Windows Web App is Always On enabled. + Defaults to false. If this Windows Web App is Always On + enabled. Defaults to `false`. + type: boolean + apiDefinitionUrl: + description: The URL of the API definition that describes + this Windows Function App. The URL of the API definition + that describes this Windows Function App. + type: string + apiManagementApiId: + description: The ID of the API Management API for this Windows + Function App. The ID of the API Management API for this + Windows Function App. + type: string + appCommandLine: + description: The program and any arguments used to launch + this app via the command line. (Example node myapp.js). + The program and any arguments used to launch this app + via the command line. (Example `node myapp.js`). + type: string + appScaleLimit: + description: The number of workers this function app can + scale out to. Only applicable to apps on the Consumption + and Premium plan. The number of workers this function + app can scale out to. Only applicable to apps on the Consumption + and Premium plan. + type: number + appServiceLogs: + description: an app_service_logs block as detailed below. + items: + properties: + diskQuotaMb: + description: The amount of disk space to use for logs. + Valid values are between 25 and 100. Defaults to + 35. The amount of disk space to use for logs. Valid + values are between `25` and `100`. + type: number + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. The retention period for + logs in days. Valid values are between `0` and `99999`. + Defaults to `0` (never delete). + type: number + type: object + type: array + applicationStack: + description: an application_stack block as detailed below. + items: + properties: + dotnetVersion: + description: The version of .Net. Possible values + are v3.0, v4.0, v6.0 and v7.0. Defaults to v4.0. + The version of .Net. Possible values are `v3.0`, + `v4.0`, `v6.0` and `v7.0` + type: string + javaVersion: + description: The version of Java to use. Possible + values are 1.8, 11 and 17 (In-Preview). The version + of Java to use. Possible values are `1.8`, `11` + and `17` + type: string + nodeVersion: + description: The version of Node to use. Possible + values are ~12, ~14, ~16 and ~18. The version of + Node to use. Possible values include `12`, `14`, + `16` and `18` + type: string + powershellCoreVersion: + description: The PowerShell Core version to use. Possible + values are 7, and 7.2. The PowerShell Core version + to use. Possible values are `7`, and `7.2` + type: string + useCustomRuntime: + description: Does the Function App use a custom Application + Stack? Does the Function App use a custom Application + Stack? + type: boolean + useDotnetIsolatedRuntime: + description: Should the DotNet process use an isolated + runtime. Defaults to false. Should the DotNet process + use an isolated runtime. Defaults to `false`. + type: boolean + type: object + type: array + autoSwapSlotName: + description: The name of the slot to automatically swap + with when this slot is successfully deployed. + type: string + cors: + description: a cors block as detailed below. + items: + properties: + allowedOrigins: + description: an allowed_origins block as detailed + below. Specifies a list of origins that should be + allowed to make cross-origin calls. + items: + type: string + type: array + supportCredentials: + description: Are credentials allowed in CORS requests? + Defaults to false. Are credentials allowed in CORS + requests? Defaults to `false`. + type: boolean + type: object + type: array + defaultDocuments: + description: a default_documents block as detailed below. + Specifies a list of Default Documents for the Windows + Web App. + items: + type: string + type: array + elasticInstanceMinimum: + description: The number of minimum instances for this Windows + Function App. Only affects apps on Elastic Premium plans. + The number of minimum instances for this Windows Function + App. Only affects apps on Elastic Premium plans. + type: number + ftpsState: + description: 'State of FTP / FTPS service for this function + app. Possible values include: AllAllowed, FtpsOnly and + Disabled. Defaults to Disabled. State of FTP / FTPS service + for this function app. Possible values include: `AllAllowed`, + `FtpsOnly` and `Disabled`. Defaults to `Disabled`.' + type: string + healthCheckEvictionTimeInMin: + description: The amount of time in minutes that a node is + unhealthy before being removed from the load balancer. + Possible values are between 2 and 10. Defaults to 10. + Only valid in conjunction with health_check_path The amount + of time in minutes that a node is unhealthy before being + removed from the load balancer. Possible values are between + `2` and `10`. Defaults to `10`. Only valid in conjunction + with `health_check_path` + type: number + healthCheckPath: + description: The path to be checked for this function app + health. The path to be checked for this function app health. + type: string + http2Enabled: + description: Specifies if the HTTP2 protocol should be enabled. + Defaults to false. Specifies if the http2 protocol should + be enabled. Defaults to `false`. + type: boolean + ipRestriction: + description: an ip_restriction block as detailed below. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: a headers block as detailed below. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + loadBalancingMode: + description: 'The Site load balancing mode. Possible values + include: WeightedRoundRobin, LeastRequests, LeastResponseTime, + WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. + Defaults to LeastRequests if omitted. The Site load balancing + mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, + `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, + `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted.' + type: string + managedPipelineMode: + description: 'The Managed Pipeline mode. Possible values + include: Integrated, Classic. Defaults to Integrated. + The Managed Pipeline mode. Possible values include: `Integrated`, + `Classic`. Defaults to `Integrated`.' + type: string + minimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests. Possible values include: 1.0, + 1.1, and 1.2. Defaults to 1.2. The configures the minimum + version of TLS required for SSL requests. Possible values + include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`.' + type: string + preWarmedInstanceCount: + description: The number of pre-warmed instances for this + function app. Only affects apps on an Elastic Premium + plan. The number of pre-warmed instances for this function + app. Only affects apps on an Elastic Premium plan. + type: number + remoteDebuggingEnabled: + description: Should Remote Debugging be enabled. Defaults + to false. Should Remote Debugging be enabled. Defaults + to `false`. + type: boolean + remoteDebuggingVersion: + description: The Remote Debugging Version. Possible values + include VS2017, VS2019, and VS2022 The Remote Debugging + Version. Possible values include `VS2017`, `VS2019`, and + `VS2022` + type: string + runtimeScaleMonitoringEnabled: + description: Should Scale Monitoring of the Functions Runtime + be enabled? Should Functions Runtime Scale Monitoring + be enabled. + type: boolean + scmIpRestriction: + description: a scm_ip_restriction block as detailed below. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: a headers block as detailed below. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + scmMinimumTlsVersion: + description: 'Configures the minimum version of TLS required + for SSL requests to the SCM site Possible values include: + 1.0, 1.1, and 1.2. Defaults to 1.2. Configures the minimum + version of TLS required for SSL requests to the SCM site + Possible values include: `1.0`, `1.1`, and `1.2`. Defaults + to `1.2`.' + type: string + scmUseMainIpRestriction: + description: Should the Windows Function App ip_restriction + configuration be used for the SCM also. Should the Windows + Function App `ip_restriction` configuration be used for + the SCM also. + type: boolean + use32BitWorker: + description: Should the Windows Web App use a 32-bit worker. + Defaults to true. Should the Windows Web App use a 32-bit + worker. + type: boolean + vnetRouteAllEnabled: + description: Should all outbound traffic to have NAT Gateways, + Network Security Groups and User Defined Routes applied? + Defaults to false. Should all outbound traffic to have + Virtual Network Security Groups and User Defined Routes + applied? Defaults to `false`. + type: boolean + websocketsEnabled: + description: Should Web Sockets be enabled. Defaults to + false. Should Web Sockets be enabled. Defaults to `false`. + type: boolean + workerCount: + description: The number of Workers for this Windows Function + App. The number of Workers for this Windows Function App. + type: number + type: object + type: array + storageAccount: + description: One or more storage_account blocks as defined below. + items: + properties: + accountName: + description: The Name of the Storage Account. + type: string + mountPath: + description: The path at which to mount the storage share. + type: string + name: + description: The name which should be used for this Storage + Account. + type: string + shareName: + description: The Name of the File Share or Container Name + for Blob storage. + type: string + type: + description: The Azure Storage Type. Possible values include + AzureFiles. + type: string + type: object + type: array + storageKeyVaultSecretId: + description: The Key Vault Secret ID, optionally including version, + that contains the Connection String to connect to the storage + account for this Function App Slot. The Key Vault Secret ID, + including version, that contains the Connection String to connect + to the storage account for this Function App. + type: string + storageUsesManagedIdentity: + description: Should the Function App Slot use its Managed Identity + to access storage. Should the Function App Slot use its Managed + Identity to access storage? + type: boolean + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Windows Function App Slot. + type: object + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -2197,7 +3401,9 @@ spec: type: object x-kubernetes-validations: - message: siteConfig is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.siteConfig) + || has(self.initProvider.siteConfig)' status: description: WindowsFunctionAppSlotStatus defines the observed state of WindowsFunctionAppSlot. diff --git a/package/crds/web.azure.upbound.io_windowswebapps.yaml b/package/crds/web.azure.upbound.io_windowswebapps.yaml index da88f8e0f..7c258deb0 100644 --- a/package/crds/web.azure.upbound.io_windowswebapps.yaml +++ b/package/crds/web.azure.upbound.io_windowswebapps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: windowswebapps.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -124,8 +123,6 @@ spec: the client secret of the Client. Cannot be used with `client_secret`. type: string - required: - - clientId type: object type: array additionalLoginParameters: @@ -205,8 +202,6 @@ spec: items: type: string type: array - required: - - appId type: object type: array github: @@ -256,8 +251,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array google: @@ -308,8 +301,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array issuer: @@ -369,8 +360,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array runtimeVersion: @@ -430,8 +419,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. type: string - required: - - consumerKey type: object type: array unauthenticatedClientAction: @@ -441,8 +428,6 @@ spec: when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' type: string - required: - - enabled type: object type: array authSettingsV2: @@ -533,9 +518,6 @@ spec: false Should the www-authenticate provider should be omitted from the request? Defaults to `false` type: boolean - required: - - clientId - - tenantAuthEndpoint type: object type: array appleV2: @@ -553,9 +535,6 @@ spec: for authentication. The app setting name that contains the `client_secret` value used for Apple Login. type: string - required: - - clientId - - clientSecretSettingName type: object type: array authEnabled: @@ -574,8 +553,6 @@ spec: Client to use to authenticate with Azure Static Web App Authentication. type: string - required: - - clientId type: object type: array configFilePath: @@ -616,10 +593,6 @@ spec: items: type: string type: array - required: - - clientId - - name - - openidConfigurationEndpoint type: object type: array defaultProvider: @@ -664,9 +637,6 @@ spec: items: type: string type: array - required: - - appId - - appSecretSettingName type: object type: array forwardProxyConvention: @@ -711,9 +681,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array googleV2: @@ -748,9 +715,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array httpRouteApiPrefix: @@ -874,9 +838,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array requireAuthentication: @@ -911,9 +872,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. type: string - required: - - consumerKey - - consumerSecretSettingName type: object type: array unauthenticatedAction: @@ -925,8 +883,6 @@ spec: `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. type: string - required: - - login type: object type: array backup: @@ -975,9 +931,6 @@ spec: in RFC-3339 format. When the schedule should start working in RFC-3339 format. type: string - required: - - frequencyInterval - - frequencyUnit type: object type: array storageAccountUrlSecretRef: @@ -999,8 +952,6 @@ spec: - namespace type: object required: - - name - - schedule - storageAccountUrlSecretRef type: object type: array @@ -1055,8 +1006,6 @@ spec: - namespace type: object required: - - name - - type - valueSecretRef type: object type: array @@ -1083,8 +1032,6 @@ spec: values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array keyVaultReferenceIdentityId: @@ -1124,18 +1071,12 @@ spec: description: SAS url to an Azure blob container with read/write/list/delete permissions. type: string - required: - - level - - retentionInDays - - sasUrl type: object type: array fileSystemLevel: description: 'Log level. Possible values include: Verbose, Information, Warning, and Error.' type: string - required: - - fileSystemLevel type: object type: array detailedErrorMessages: @@ -1191,9 +1132,6 @@ spec: description: The maximum size in megabytes that log files can use. type: number - required: - - retentionInDays - - retentionInMb type: object type: array type: object @@ -1475,8 +1413,6 @@ spec: description: The parameters to pass to the specified executable. type: string - required: - - executable type: object type: array minimumProcessExecutionTime: @@ -1485,8 +1421,6 @@ spec: before the defined action will be run in the event of a trigger. type: string - required: - - actionType type: object type: array trigger: @@ -1511,9 +1445,6 @@ spec: description: The time interval in the form hh:mm:ss. type: string - required: - - count - - interval type: object type: array slowRequest: @@ -1538,10 +1469,6 @@ spec: description: The threshold of time passed to qualify as a Slow Request in hh:mm:ss. type: string - required: - - count - - interval - - timeTaken type: object type: array statusCode: @@ -1577,17 +1504,10 @@ spec: description: The Win32 Status Code of the Request. type: string - required: - - count - - interval - - statusCodeRange type: object type: array type: object type: array - required: - - action - - trigger type: object type: array containerRegistryManagedIdentityClientId: @@ -2006,10 +1926,6 @@ spec: virtualPath: description: The Virtual Path for the Virtual Application. type: string - required: - - physicalPath - - preload - - virtualPath type: object type: array vnetRouteAllEnabled: @@ -2089,10 +2005,6 @@ spec: type: string required: - accessKeySecretRef - - accountName - - name - - shareName - - type type: object type: array tags: @@ -2187,21 +2099,1468 @@ spec: in `app_settings`. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appSettings: + additionalProperties: + type: string + description: A map of key-value pairs of App Settings. + type: object + authSettings: + description: An auth_settings block as defined below. + items: + properties: + activeDirectory: + description: An active_directory block as defined above. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. Cannot be used + with `client_secret`. + type: string + type: object + type: array + additionalLoginParameters: + additionalProperties: + type: string + description: Specifies a map of login Parameters to send + to the OpenID Connect authorization endpoint when a user + logs in. Specifies a map of Login Parameters to send to + the OpenID Connect authorization endpoint when a user + logs in. + type: object + allowedExternalRedirectUrls: + description: Specifies a list of External URLs that can + be redirected to as part of logging in or logging out + of the Windows Web App. Specifies a list of External URLs + that can be redirected to as part of logging in or logging + out of the Windows Web App. + items: + type: string + type: array + defaultProvider: + description: 'The default authentication provider to use + when multiple providers are configured. Possible values + include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, + Twitter, Github The default authentication provider to + use when multiple providers are configured. Possible values + include: `AzureActiveDirectory`, `Facebook`, `Google`, + `MicrosoftAccount`, `Twitter`, `Github`.' + type: string + enabled: + description: Should the Authentication / Authorization feature + is enabled for the Windows Web App be enabled? Should + the Authentication / Authorization feature be enabled? + type: boolean + facebook: + description: A facebook block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. Cannot be specified with + `app_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes to be requested as part of Facebook Login + authentication. + items: + type: string + type: array + type: object + type: array + github: + description: A github block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of GitHub + Login authentication. + items: + type: string + type: array + type: object + type: array + google: + description: A google block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of Google + Sign-In authentication. If not specified, "openid", + "profile", and "email" are used as default scopes. + items: + type: string + type: array + type: object + type: array + issuer: + description: The OpenID Connect Issuer URI that represents + the entity which issues access tokens for this Windows + Web App. The OpenID Connect Issuer URI that represents + the entity which issues access tokens. + type: string + microsoft: + description: A microsoft block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. Cannot be specified + with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. The list of OAuth 2.0 + scopes that will be requested as part of Microsoft + Account authentication. If not specified, `wl.basic` + is used as the default scope. + items: + type: string + type: array + type: object + type: array + runtimeVersion: + description: The RuntimeVersion of the Authentication / + Authorization feature in use for the Windows Web App. + The RuntimeVersion of the Authentication / Authorization + feature in use. + type: string + tokenRefreshExtensionHours: + description: The number of hours after session token expiration + that a session token can be used to call the token refresh + API. Defaults to 72 hours. The number of hours after session + token expiration that a session token can be used to call + the token refresh API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Windows Web App durably store platform-specific + security tokens that are obtained during login flows? + Defaults to false. Should the Windows Web App durably + store platform-specific security tokens that are obtained + during login flows? Defaults to `false`. + type: boolean + twitter: + description: A twitter block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. Cannot be specified with `consumer_secret`. + type: string + type: object + type: array + unauthenticatedClientAction: + description: 'The action to take when an unauthenticated + client attempts to access the app. Possible values include: + RedirectToLoginPage, AllowAnonymous. The action to take + when an unauthenticated client attempts to access the + app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' + type: string + type: object + type: array + authSettingsV2: + description: An auth_settings_v2 block as defined below. + items: + properties: + activeDirectoryV2: + description: An active_directory_v2 block as defined below. + items: + properties: + allowedApplications: + description: The list of allowed Applications for + the Default Authorisation Policy. The list of allowed + Applications for the Default Authorisation Policy. + items: + type: string + type: array + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + allowedGroups: + description: The list of allowed Group Names for the + Default Authorisation Policy. The list of allowed + Group Names for the Default Authorisation Policy. + items: + type: string + type: array + allowedIdentities: + description: The list of allowed Identities for the + Default Authorisation Policy. The list of allowed + Identities for the Default Authorisation Policy. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretCertificateThumbprint: + description: The thumbprint of the certificate used + for signing purposes. The thumbprint of the certificate + used for signing purposes. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. + type: string + jwtAllowedClientApplications: + description: A list of Allowed Client Applications + in the JWT Claim. A list of Allowed Client Applications + in the JWT Claim. + items: + type: string + type: array + jwtAllowedGroups: + description: A list of Allowed Groups in the JWT Claim. + A list of Allowed Groups in the JWT Claim. + items: + type: string + type: array + loginParameters: + additionalProperties: + type: string + description: A map of key-value pairs to send to the + Authorisation Endpoint when a user logs in. A map + of key-value pairs to send to the Authorisation + Endpoint when a user logs in. + type: object + tenantAuthEndpoint: + description: The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + type: string + wwwAuthenticationDisabled: + description: Should the www-authenticate provider + should be omitted from the request? Defaults to + false Should the www-authenticate provider should + be omitted from the request? Defaults to `false` + type: boolean + type: object + type: array + appleV2: + description: An apple_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Apple web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Apple Login. + type: string + type: object + type: array + authEnabled: + description: Should the AuthV2 Settings be enabled. Defaults + to false. Should the AuthV2 Settings be enabled. Defaults + to `false` + type: boolean + azureStaticWebAppV2: + description: An azure_static_web_app_v2 block as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Static + Web App Authentication. + type: string + type: object + type: array + configFilePath: + description: The path to the App Auth settings. The path + to the App Auth settings. **Note:** Relative Paths are + evaluated from the Site Root directory. + type: string + customOidcV2: + description: Zero or more custom_oidc_v2 blocks as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with this Custom OIDC. + type: string + name: + description: The name which should be used for this + TODO. The name of the Custom OIDC Authentication + Provider. + type: string + nameClaimType: + description: The name of the claim that contains the + users name. The name of the claim that contains + the users name. + type: string + openidConfigurationEndpoint: + description: The app setting name that contains the + client_secret value used for the Custom OIDC Login. + The endpoint that contains all the configuration + endpoints for this Custom OIDC provider. + type: string + scopes: + description: The list of the scopes that should be + requested while authenticating. The list of the + scopes that should be requested while authenticating. + items: + type: string + type: array + type: object + type: array + defaultProvider: + description: The Default Authentication Provider to use + when more than one Authentication Provider is configured + and the unauthenticated_action is set to RedirectToLoginPage. + The Default Authentication Provider to use when the `unauthenticated_action` + is set to `RedirectToLoginPage`. + type: string + excludedPaths: + description: The paths which should be excluded from the + unauthenticated_action when it is set to RedirectToLoginPage. + The paths which should be excluded from the `unauthenticated_action` + when it is set to `RedirectToLoginPage`. + items: + type: string + type: array + facebookV2: + description: A facebook_v2 block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. + type: string + graphApiVersion: + description: The version of the Facebook API to be + used while logging in. The version of the Facebook + API to be used while logging in. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of scopes to be requested as part + of Facebook Login authentication. + items: + type: string + type: array + type: object + type: array + forwardProxyConvention: + description: The convention used to determine the url of + the request made. Possible values include ForwardProxyConventionNoProxy, + ForwardProxyConventionStandard, ForwardProxyConventionCustom. + Defaults to ForwardProxyConventionNoProxy. The convention + used to determine the url of the request made. Possible + values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, + `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + type: string + forwardProxyCustomHostHeaderName: + description: The name of the custom header containing the + host of the request. The name of the header containing + the host of the request. + type: string + forwardProxyCustomSchemeHeaderName: + description: The name of the custom header containing the + scheme of the request. The name of the header containing + the scheme of the request. + type: string + githubV2: + description: A github_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of OAuth 2.0 scopes that will be + requested as part of GitHub Login authentication. + items: + type: string + type: array + type: object + type: array + googleV2: + description: A google_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Google Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of Login scopes that will be requested + as part of Google Sign-In authentication. + items: + type: string + type: array + type: object + type: array + httpRouteApiPrefix: + description: The prefix that should precede all the authentication + and authorisation paths. Defaults to /.auth. The prefix + that should precede all the authentication and authorisation + paths. Defaults to `/.auth` + type: string + login: + description: A login block as defined below. + items: + properties: + allowedExternalRedirectUrls: + description: External URLs that can be redirected + to as part of logging in or logging out of the app. + This is an advanced setting typically only needed + by Windows Store application backends. External + URLs that can be redirected to as part of logging + in or logging out of the app. This is an advanced + setting typically only needed by Windows Store application + backends. **Note:** URLs within the current domain + are always implicitly allowed. + items: + type: string + type: array + cookieExpirationConvention: + description: 'The method by which cookies expire. + Possible values include: FixedTime, and IdentityProviderDerived. + Defaults to FixedTime. The method by which cookies + expire. Possible values include: `FixedTime`, and + `IdentityProviderDerived`. Defaults to `FixedTime`.' + type: string + cookieExpirationTime: + description: The time after the request is made when + the session cookie should expire. Defaults to 08:00:00. + The time after the request is made when the session + cookie should expire. Defaults to `08:00:00`. + type: string + logoutEndpoint: + description: The endpoint to which logout requests + should be made. The endpoint to which logout requests + should be made. + type: string + nonceExpirationTime: + description: The time after the request is made when + the nonce should expire. Defaults to 00:05:00. The + time after the request is made when the nonce should + expire. Defaults to `00:05:00`. + type: string + preserveUrlFragmentsForLogins: + description: Should the fragments from the request + be preserved after the login request is made. Defaults + to false. Should the fragments from the request + be preserved after the login request is made. Defaults + to `false`. + type: boolean + tokenRefreshExtensionTime: + description: The number of hours after session token + expiration that a session token can be used to call + the token refresh API. Defaults to 72 hours. The + number of hours after session token expiration that + a session token can be used to call the token refresh + API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Token Store configuration + Enabled. Defaults to false Should the Token Store + configuration Enabled. Defaults to `false` + type: boolean + tokenStorePath: + description: The directory path in the App Filesystem + in which the tokens will be stored. The directory + path in the App Filesystem in which the tokens will + be stored. + type: string + tokenStoreSasSettingName: + description: The name of the app setting which contains + the SAS URL of the blob storage containing the tokens. + The name of the app setting which contains the SAS + URL of the blob storage containing the tokens. + type: string + validateNonce: + description: Should the nonce be validated while completing + the login flow. Defaults to true. Should the nonce + be validated while completing the login flow. Defaults + to `true`. + type: boolean + type: object + type: array + microsoftV2: + description: A microsoft_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + The list of Login scopes that will be requested + as part of Microsoft Account authentication. + items: + type: string + type: array + type: object + type: array + requireAuthentication: + description: Should the authentication flow be used for + all requests. Should the authentication flow be used for + all requests. + type: boolean + requireHttps: + description: Should HTTPS be required on connections? Defaults + to true. Should HTTPS be required on connections? Defaults + to true. + type: boolean + runtimeVersion: + description: The Runtime Version of the Authentication and + Authorisation feature of this App. Defaults to ~1. The + Runtime Version of the Authentication and Authorisation + feature of this App. Defaults to `~1` + type: string + twitterV2: + description: A twitter_v2 block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. + type: string + type: object + type: array + unauthenticatedAction: + description: The action to take for requests made without + authentication. Possible values include RedirectToLoginPage, + AllowAnonymous, Return401, and Return403. Defaults to + RedirectToLoginPage. The action to take for requests made + without authentication. Possible values include `RedirectToLoginPage`, + `AllowAnonymous`, `Return401`, and `Return403`. Defaults + to `RedirectToLoginPage`. + type: string + type: object + type: array + backup: + description: A backup block as defined below. + items: + properties: + enabled: + description: Should this backup job be enabled? Defaults + to true. Should this backup job be enabled? + type: boolean + name: + description: The name which should be used for this Backup. + The name which should be used for this Backup. + type: string + schedule: + description: A schedule block as defined below. + items: + properties: + frequencyInterval: + description: How often the backup should be executed + (e.g. for weekly backup, this should be set to 7 + and frequency_unit should be set to Day). How often + the backup should be executed (e.g. for weekly backup, + this should be set to `7` and `frequency_unit` should + be set to `Day`). + type: number + frequencyUnit: + description: 'The unit of time for how often the backup + should take place. Possible values include: Day, + Hour The unit of time for how often the backup should + take place. Possible values include: `Day` and `Hour`.' + type: string + keepAtLeastOneBackup: + description: Should the service keep at least one + backup, regardless of age of backup. Defaults to + false. Should the service keep at least one backup, + regardless of age of backup. Defaults to `false`. + type: boolean + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. After how many days backups + should be deleted. + type: number + startTime: + description: When the schedule should start working + in RFC-3339 format. When the schedule should start + working in RFC-3339 format. + type: string + type: object + type: array + type: object + type: array + clientAffinityEnabled: + description: Should Client Affinity be enabled? + type: boolean + clientCertificateEnabled: + description: Should Client Certificates be enabled? + type: boolean + clientCertificateExclusionPaths: + description: Paths to exclude when using client certificates, + separated by ; Paths to exclude when using client certificates, + separated by ; + type: string + clientCertificateMode: + description: The Client Certificate mode. Possible values are + Required, Optional, and OptionalInteractiveUser. This property + has no effect when client_cert_enabled is false + type: string + connectionString: + description: One or more connection_string blocks as defined below. + items: + properties: + name: + description: The name of the Connection String. The name + which should be used for this Connection. + type: string + type: + description: 'Type of database. Possible values include: + APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, + PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + Type of database. Possible values include: `MySQL`, `SQLServer`, + `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, + `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`.' + type: string + type: object + type: array + enabled: + description: Should the Windows Web App be enabled? Defaults to + true. + type: boolean + httpsOnly: + description: Should the Windows Web App require HTTPS connections. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Windows Web App. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Windows Web App. Possible + values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + keyVaultReferenceIdentityId: + description: The User Assigned Identity ID used for accessing + KeyVault secrets. The identity must be assigned to the application + in the identity block. For more information see - Access vaults + with a user-assigned identity + type: string + location: + description: The Azure Region where the Windows Web App should + exist. Changing this forces a new Windows Web App to be created. + type: string + logs: + description: A logs block as defined below. + items: + properties: + applicationLogs: + description: A application_logs block as defined above. + items: + properties: + azureBlobStorage: + description: A azure_blob_storage_http block as defined + above. + items: + properties: + level: + description: 'The level at which to log. Possible + values include Error, Warning, Information, + Verbose and Off. NOTE: this field is not available + for http_logs' + type: string + retentionInDays: + description: The retention period in days. A + values of 0 means no retention. + type: number + sasUrl: + description: SAS url to an Azure blob container + with read/write/list/delete permissions. + type: string + type: object + type: array + fileSystemLevel: + description: 'Log level. Possible values include: + Verbose, Information, Warning, and Error.' + type: string + type: object + type: array + detailedErrorMessages: + description: Should detailed error messages be enabled. + type: boolean + failedRequestTracing: + description: Should tracing be enabled for failed requests. + type: boolean + httpLogs: + description: A http_logs block as defined above. + items: + properties: + azureBlobStorage: + description: A azure_blob_storage_http block as defined + above. + items: + properties: + retentionInDays: + description: The retention period in days. A + values of 0 means no retention. + type: number + type: object + type: array + fileSystem: + description: A file_system block as defined above. + items: + properties: + retentionInDays: + description: The retention period in days. A + values of 0 means no retention. + type: number + retentionInMb: + description: The maximum size in megabytes that + log files can use. + type: number + type: object + type: array + type: object + type: array + type: object + type: array + siteConfig: + description: A site_config block as defined below. + items: + properties: + alwaysOn: + description: If this Windows Web App is Always On enabled. + Defaults to true. + type: boolean + apiDefinitionUrl: + description: The URL to the API Definition for this Windows + Web App. + type: string + apiManagementApiId: + description: The API Management API ID this Windows Web + App Slot is associated with. + type: string + appCommandLine: + description: The App command line to launch. + type: string + applicationStack: + description: A application_stack block as defined above. + items: + properties: + currentStack: + description: The Application Stack for the Windows + Web App. Possible values include dotnet, dotnetcore, + node, python, php, and java. + type: string + dockerContainerName: + description: The name of the Docker Container. For + example azure-app-service/samples/aspnethelloworld + type: string + dockerContainerRegistry: + description: The registry Host on which the specified + Docker Container can be located. For example mcr.microsoft.com + type: string + dockerContainerTag: + description: The Image Tag of the specified Docker + Container to use. For example latest + type: string + dotnetCoreVersion: + description: The version of .NET to use when current_stack + is set to dotnetcore. Possible values include v4.0. + The version of DotNetCore to use. + type: string + dotnetVersion: + description: The version of .NET to use when current_stack + is set to dotnet. Possible values include v2.0,v3.0, + v4.0, v5.0, v6.0 and v7.0. + type: string + javaContainer: + type: string + javaContainerVersion: + type: string + javaEmbeddedServerEnabled: + description: Should the Java Embedded Server (Java + SE) be used to run the app. Should the application + use the embedded web server for the version of Java + in use. + type: boolean + javaVersion: + description: The version of Java to use when current_stack + is set to java. + type: string + nodeVersion: + description: The version of node to use when current_stack + is set to node. Possible values are ~12, ~14, ~16, + and ~18. + type: string + phpVersion: + description: The version of PHP to use when current_stack + is set to php. Possible values are 7.1, 7.4 and + Off. + type: string + python: + description: Specifies whether this is a Python app. + Defaults to false. + type: boolean + pythonVersion: + type: string + tomcatVersion: + description: The version of Tomcat the Java App should + use. Conflicts with java_embedded_server_enabled + type: string + type: object + type: array + autoHealEnabled: + description: Should Auto heal rules be enabled. Required + with auto_heal_setting. + type: boolean + autoHealSetting: + description: A auto_heal_setting block as defined above. + Required with auto_heal. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. + items: + properties: + actionType: + description: 'Predefined action to be taken + to an Auto Heal trigger. Possible values include: + Recycle, LogEvent, and CustomAction.' + type: string + customAction: + description: A custom_action block as defined + below. + items: + properties: + executable: + description: The executable to run for + the custom_action. + type: string + parameters: + description: The parameters to pass to + the specified executable. + type: string + type: object + type: array + minimumProcessExecutionTime: + description: The minimum amount of time in hh:mm:ss + the Windows Web App must have been running + before the defined action will be run in the + event of a trigger. + type: string + type: object + type: array + trigger: + description: A trigger block as defined below. + items: + properties: + privateMemoryKb: + description: The amount of Private Memory to + be consumed for this rule to trigger. Possible + values are between 102400 and 13631488. + type: number + requests: + description: A requests block as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + type: object + type: array + slowRequest: + description: One or more slow_request blocks + as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + path: + description: The path to which this rule + status code applies. + type: string + timeTaken: + description: The threshold of time passed + to qualify as a Slow Request in hh:mm:ss. + type: string + type: object + type: array + statusCode: + description: One or more status_code blocks + as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + path: + description: The path to which this rule + status code applies. + type: string + statusCodeRange: + description: The status code for this + rule, accepts single status codes and + status code ranges. e.g. 500 or 400-499. + Possible values are integers between + 101 and 599 + type: string + subStatus: + description: The Request Sub Status of + the Status Code. + type: number + win32Status: + description: The Win32 Status Code of + the Request. + type: string + type: object + type: array + type: object + type: array + type: object + type: array + containerRegistryManagedIdentityClientId: + description: The Client ID of the Managed Service Identity + to use for connections to the Azure Container Registry. + type: string + containerRegistryUseManagedIdentity: + description: Should connections for Azure Container Registry + use Managed Identity. + type: boolean + cors: + description: A cors block as defined above. + items: + properties: + allowedOrigins: + description: Specifies a list of origins that should + be allowed to make cross-origin calls. Specifies + a list of origins that should be allowed to make + cross-origin calls. + items: + type: string + type: array + supportCredentials: + description: Whether CORS requests with credentials + are allowed. Defaults to false Are credentials allowed + in CORS requests? Defaults to `false`. + type: boolean + type: object + type: array + defaultDocuments: + description: Specifies a list of Default Documents for the + Windows Web App. + items: + type: string + type: array + ftpsState: + description: 'The State of FTP / FTPS service. Possible + values include: AllAllowed, FtpsOnly, Disabled.' + type: string + healthCheckEvictionTimeInMin: + description: The amount of time in minutes that a node can + be unhealthy before being removed from the load balancer. + Possible values are between 2 and 10. Only valid in conjunction + with health_check_path. The amount of time in minutes + that a node is unhealthy before being removed from the + load balancer. Possible values are between `2` and `10`. + Defaults to `10`. Only valid in conjunction with `health_check_path` + type: number + healthCheckPath: + description: The path to the Health Check. + type: string + http2Enabled: + description: Should the HTTP2 be enabled? + type: boolean + ipRestriction: + description: One or more ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + TODO. The name which should be used for this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + loadBalancingMode: + description: 'The Site load balancing. Possible values include: + WeightedRoundRobin, LeastRequests, LeastResponseTime, + WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. + Defaults to LeastRequests if omitted.' + type: string + localMysqlEnabled: + description: Use Local MySQL. Defaults to false. + type: boolean + managedPipelineMode: + description: 'Managed pipeline mode. Possible values include: + Integrated, Classic.' + type: string + minimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests. Possible values include: 1.0, + 1.1, and 1.2. Defaults to 1.2.' + type: string + remoteDebuggingEnabled: + description: Should Remote Debugging be enabled. Defaults + to false. + type: boolean + remoteDebuggingVersion: + description: The Remote Debugging Version. Possible values + include VS2017 and VS2019 + type: string + scmIpRestriction: + description: One or more scm_ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + TODO. The name which should be used for this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + scmMinimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests to the SCM site Possible values + include: 1.0, 1.1, and 1.2. Defaults to 1.2.' + type: string + scmUseMainIpRestriction: + description: Should the Windows Web App ip_restriction configuration + be used for the SCM also. + type: boolean + use32BitWorker: + description: Should the Windows Web App use a 32-bit worker. + Defaults to true. + type: boolean + virtualApplication: + description: One or more virtual_application blocks as defined + below. + items: + properties: + physicalPath: + description: The physical path for the Virtual Application. + type: string + preload: + description: Should pre-loading be enabled. + type: boolean + virtualDirectory: + description: One or more virtual_directory blocks + as defined below. + items: + properties: + physicalPath: + description: The physical path for the Virtual + Application. + type: string + virtualPath: + description: The Virtual Path for the Virtual + Application. + type: string + type: object + type: array + virtualPath: + description: The Virtual Path for the Virtual Application. + type: string + type: object + type: array + vnetRouteAllEnabled: + description: Should all outbound traffic to have NAT Gateways, + Network Security Groups and User Defined Routes applied? + Defaults to false. Should all outbound traffic to have + Virtual Network Security Groups and User Defined Routes + applied? Defaults to `false`. + type: boolean + websocketsEnabled: + description: Should Web Sockets be enabled. Defaults to + false. + type: boolean + workerCount: + description: The number of Workers for this Windows App + Service. + type: number + type: object + type: array + stickySettings: + description: A sticky_settings block as defined below. + items: + properties: + appSettingNames: + description: A list of app_setting names that the Windows + Web App will not swap between Slots when a swap operation + is triggered. + items: + type: string + type: array + connectionStringNames: + description: A list of connection_string names that the + Windows Web App will not swap between Slots when a swap + operation is triggered. + items: + type: string + type: array + type: object + type: array + storageAccount: + description: One or more storage_account blocks as defined below. + items: + properties: + accountName: + description: The Name of the Storage Account. + type: string + mountPath: + description: The path at which to mount the storage share. + type: string + name: + description: The name which should be used for this TODO. + type: string + shareName: + description: The Name of the File Share or Container Name + for Blob storage. + type: string + type: + description: The Azure Storage Type. Possible values include + AzureFiles and AzureBlob + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Windows Web App. + type: object + zipDeployFile: + description: The local path and filename of the Zip packaged application + to deploy to this Windows Web App. The local path and filename + of the Zip packaged application to deploy to this Windows Web + App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` + or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App + in `app_settings`. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -2375,9 +3734,13 @@ spec: type: object x-kubernetes-validations: - message: location is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.location) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.location) + || has(self.initProvider.location)' - message: siteConfig is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.siteConfig) + || has(self.initProvider.siteConfig)' status: description: WindowsWebAppStatus defines the observed state of WindowsWebApp. properties: diff --git a/package/crds/web.azure.upbound.io_windowswebappslots.yaml b/package/crds/web.azure.upbound.io_windowswebappslots.yaml index 86280a8e9..67b3de73f 100644 --- a/package/crds/web.azure.upbound.io_windowswebappslots.yaml +++ b/package/crds/web.azure.upbound.io_windowswebappslots.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.11.3 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.12.1 name: windowswebappslots.web.azure.upbound.io spec: group: web.azure.upbound.io @@ -58,7 +57,7 @@ spec: description: 'DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either "Delete" or "Orphan" the external resource. This field is planned to be deprecated - in favor of the ManagementPolicy field in a future release. Currently, + in favor of the ManagementPolicies field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' @@ -202,8 +201,6 @@ spec: the client secret of the Client. Cannot be used with `client_secret`. type: string - required: - - clientId type: object type: array additionalLoginParameters: @@ -283,8 +280,6 @@ spec: items: type: string type: array - required: - - appId type: object type: array github: @@ -334,8 +329,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array google: @@ -386,8 +379,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array issuer: @@ -447,8 +438,6 @@ spec: items: type: string type: array - required: - - clientId type: object type: array runtimeVersion: @@ -508,8 +497,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. type: string - required: - - consumerKey type: object type: array unauthenticatedClientAction: @@ -519,8 +506,6 @@ spec: when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' type: string - required: - - enabled type: object type: array authSettingsV2: @@ -611,9 +596,6 @@ spec: false Should the www-authenticate provider should be omitted from the request? Defaults to `false` type: boolean - required: - - clientId - - tenantAuthEndpoint type: object type: array appleV2: @@ -631,9 +613,6 @@ spec: for authentication. The app setting name that contains the `client_secret` value used for Apple Login. type: string - required: - - clientId - - clientSecretSettingName type: object type: array authEnabled: @@ -652,8 +631,6 @@ spec: Client to use to authenticate with Azure Static Web App Authentication. type: string - required: - - clientId type: object type: array configFilePath: @@ -694,10 +671,6 @@ spec: items: type: string type: array - required: - - clientId - - name - - openidConfigurationEndpoint type: object type: array defaultProvider: @@ -742,9 +715,6 @@ spec: items: type: string type: array - required: - - appId - - appSecretSettingName type: object type: array forwardProxyConvention: @@ -789,9 +759,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array googleV2: @@ -826,9 +793,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array httpRouteApiPrefix: @@ -952,9 +916,6 @@ spec: items: type: string type: array - required: - - clientId - - clientSecretSettingName type: object type: array requireAuthentication: @@ -989,9 +950,6 @@ spec: the OAuth 1.0a consumer secret of the Twitter application used for sign-in. type: string - required: - - consumerKey - - consumerSecretSettingName type: object type: array unauthenticatedAction: @@ -1003,8 +961,6 @@ spec: `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. type: string - required: - - login type: object type: array backup: @@ -1053,9 +1009,6 @@ spec: in RFC-3339 format. When the schedule should start working in RFC-3339 format. type: string - required: - - frequencyInterval - - frequencyUnit type: object type: array storageAccountUrlSecretRef: @@ -1077,8 +1030,6 @@ spec: - namespace type: object required: - - name - - schedule - storageAccountUrlSecretRef type: object type: array @@ -1133,8 +1084,6 @@ spec: - namespace type: object required: - - name - - type - valueSecretRef type: object type: array @@ -1161,8 +1110,6 @@ spec: Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). type: string - required: - - type type: object type: array keyVaultReferenceIdentityId: @@ -1198,18 +1145,12 @@ spec: description: SAS url to an Azure blob container with read/write/list/delete permissions. type: string - required: - - level - - retentionInDays - - sasUrl type: object type: array fileSystemLevel: description: 'Log level. Possible values include: Verbose, Information, Warning, and Error.' type: string - required: - - fileSystemLevel type: object type: array detailedErrorMessages: @@ -1265,9 +1206,6 @@ spec: description: The maximum size in megabytes that log files can use. type: number - required: - - retentionInDays - - retentionInMb type: object type: array type: object @@ -1398,8 +1336,6 @@ spec: description: The parameters to pass to the specified executable. type: string - required: - - executable type: object type: array minimumProcessExecutionTime: @@ -1408,8 +1344,6 @@ spec: before the defined action will be run in the event of a trigger. type: string - required: - - actionType type: object type: array trigger: @@ -1434,9 +1368,6 @@ spec: description: The time interval in the form hh:mm:ss. type: string - required: - - count - - interval type: object type: array slowRequest: @@ -1461,10 +1392,6 @@ spec: description: The threshold of time passed to qualify as a Slow Request in hh:mm:ss. type: string - required: - - count - - interval - - timeTaken type: object type: array statusCode: @@ -1500,17 +1427,10 @@ spec: description: The Win32 Status Code of the Request. type: string - required: - - count - - interval - - statusCodeRange type: object type: array type: object type: array - required: - - action - - trigger type: object type: array autoSwapSlotName: @@ -1935,10 +1855,6 @@ spec: virtualPath: description: The Virtual Path for the Virtual Application. type: string - required: - - physicalPath - - preload - - virtualPath type: object type: array vnetRouteAllEnabled: @@ -1999,10 +1915,6 @@ spec: type: string required: - accessKeySecretRef - - accountName - - name - - shareName - - type type: object type: array tags: @@ -2096,21 +2008,1456 @@ spec: on the App in `app_settings`. type: string type: object - managementPolicy: - default: FullControl - description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + initProvider: + description: THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored unless the relevant Crossplane feature flag is - enabled, and may be changed or removed without notice. ManagementPolicy - specifies the level of control Crossplane has over the managed external - resource. This field is planned to replace the DeletionPolicy field - in a future release. Currently, both could be set independently - and non-default values would be honored if the feature flag is enabled. - See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223' - enum: - - FullControl - - ObserveOnly - - OrphanOnDelete - type: string + enabled, and may be changed or removed without notice. InitProvider + holds the same fields as ForProvider, with the exception of Identifier + and other resource reference fields. The fields that are in InitProvider + are merged into ForProvider when the resource is created. The same + fields are also added to the terraform ignore_changes hook, to avoid + updating them after creation. This is useful for fields that are + required on creation, but we do not desire to update them after + creation, for example because of an external controller is managing + them, like an autoscaler. + properties: + appSettings: + additionalProperties: + type: string + description: A map of key-value pairs of App Settings. + type: object + authSettings: + description: An auth_settings block as defined below. + items: + properties: + activeDirectory: + description: An active_directory block as defined above. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. Cannot be used + with `client_secret`. + type: string + type: object + type: array + additionalLoginParameters: + additionalProperties: + type: string + description: Specifies a map of login Parameters to send + to the OpenID Connect authorization endpoint when a user + logs in. Specifies a map of Login Parameters to send to + the OpenID Connect authorization endpoint when a user + logs in. + type: object + allowedExternalRedirectUrls: + description: Specifies a list of External URLs that can + be redirected to as part of logging in or logging out + of the Windows Web App Slot. Specifies a list of External + URLs that can be redirected to as part of logging in or + logging out of the Windows Web App. + items: + type: string + type: array + defaultProvider: + description: 'The default authentication provider to use + when multiple providers are configured. Possible values + include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, + Twitter, Github. The default authentication provider to + use when multiple providers are configured. Possible values + include: `AzureActiveDirectory`, `Facebook`, `Google`, + `MicrosoftAccount`, `Twitter`, `Github`.' + type: string + enabled: + description: Should the Authentication / Authorization feature + be enabled for the Windows Web App? Should the Authentication + / Authorization feature be enabled? + type: boolean + facebook: + description: A facebook block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. Cannot be specified with + `app_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes to be requested as part of Facebook Login + authentication. + items: + type: string + type: array + type: object + type: array + github: + description: A github block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of GitHub + Login authentication. + items: + type: string + type: array + type: object + type: array + google: + description: A google block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + Cannot be specified with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. Specifies a list of OAuth + 2.0 scopes that will be requested as part of Google + Sign-In authentication. If not specified, "openid", + "profile", and "email" are used as default scopes. + items: + type: string + type: array + type: object + type: array + issuer: + description: The OpenID Connect Issuer URI that represents + the entity which issues access tokens for this Windows + Web App Slot. The OpenID Connect Issuer URI that represents + the entity which issues access tokens. + type: string + microsoft: + description: A microsoft block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. Cannot be specified + with `client_secret`. + type: string + oauthScopes: + description: Specifies a list of OAuth 2.0 scopes + that will be requested as part of Microsoft Account + authentication. If not specified, "wl.basic" is + used as the default scope. The list of OAuth 2.0 + scopes that will be requested as part of Microsoft + Account authentication. If not specified, `wl.basic` + is used as the default scope. + items: + type: string + type: array + type: object + type: array + runtimeVersion: + description: The RuntimeVersion of the Authentication / + Authorization feature in use for the Windows Web App Slot. + The RuntimeVersion of the Authentication / Authorization + feature in use. + type: string + tokenRefreshExtensionHours: + description: The number of hours after session token expiration + that a session token can be used to call the token refresh + API. Defaults to 72 hours. The number of hours after session + token expiration that a session token can be used to call + the token refresh API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Windows Web App Slot durably store + platform-specific security tokens that are obtained during + login flows? Defaults to false. Should the Windows Web + App durably store platform-specific security tokens that + are obtained during login flows? Defaults to `false`. + type: boolean + twitter: + description: A twitter block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. Cannot be specified with `consumer_secret`. + type: string + type: object + type: array + unauthenticatedClientAction: + description: 'The action to take when an unauthenticated + client attempts to access the app. Possible values include: + RedirectToLoginPage, AllowAnonymous. The action to take + when an unauthenticated client attempts to access the + app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`.' + type: string + type: object + type: array + authSettingsV2: + description: An auth_settings_v2 block as defined below. + items: + properties: + activeDirectoryV2: + description: An active_directory_v2 block as defined below. + items: + properties: + allowedApplications: + description: The list of allowed Applications for + the Default Authorisation Policy. The list of allowed + Applications for the Default Authorisation Policy. + items: + type: string + type: array + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed audience + values to consider when validating JWTs issued by + Azure Active Directory. + items: + type: string + type: array + allowedGroups: + description: The list of allowed Group Names for the + Default Authorisation Policy. The list of allowed + Group Names for the Default Authorisation Policy. + items: + type: string + type: array + allowedIdentities: + description: The list of allowed Identities for the + Default Authorisation Policy. The list of allowed + Identities for the Default Authorisation Policy. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Active + Directory. + type: string + clientSecretCertificateThumbprint: + description: The thumbprint of the certificate used + for signing purposes. The thumbprint of the certificate + used for signing purposes. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The App Setting name that contains + the client secret of the Client. + type: string + jwtAllowedClientApplications: + description: A list of Allowed Client Applications + in the JWT Claim. A list of Allowed Client Applications + in the JWT Claim. + items: + type: string + type: array + jwtAllowedGroups: + description: A list of Allowed Groups in the JWT Claim. + A list of Allowed Groups in the JWT Claim. + items: + type: string + type: array + loginParameters: + additionalProperties: + type: string + description: A map of key-value pairs to send to the + Authorisation Endpoint when a user logs in. A map + of key-value pairs to send to the Authorisation + Endpoint when a user logs in. + type: object + tenantAuthEndpoint: + description: The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ + The Azure Tenant Endpoint for the Authenticating + Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + type: string + wwwAuthenticationDisabled: + description: Should the www-authenticate provider + should be omitted from the request? Defaults to + false Should the www-authenticate provider should + be omitted from the request? Defaults to `false` + type: boolean + type: object + type: array + appleV2: + description: An apple_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Apple web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Apple Login. + type: string + type: object + type: array + authEnabled: + description: Should the AuthV2 Settings be enabled. Defaults + to false. Should the AuthV2 Settings be enabled. Defaults + to `false` + type: boolean + azureStaticWebAppV2: + description: An azure_static_web_app_v2 block as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with Azure Static + Web App Authentication. + type: string + type: object + type: array + configFilePath: + description: The path to the App Auth settings. The path + to the App Auth settings. **Note:** Relative Paths are + evaluated from the Site Root directory. + type: string + customOidcV2: + description: Zero or more custom_oidc_v2 blocks as defined + below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + Client to use to authenticate with this Custom OIDC. + type: string + name: + description: The name which should be used for this + Storage Account. The name of the Custom OIDC Authentication + Provider. + type: string + nameClaimType: + description: The name of the claim that contains the + users name. The name of the claim that contains + the users name. + type: string + openidConfigurationEndpoint: + description: The app setting name that contains the + client_secret value used for the Custom OIDC Login. + The endpoint that contains all the configuration + endpoints for this Custom OIDC provider. + type: string + scopes: + description: The list of the scopes that should be + requested while authenticating. The list of the + scopes that should be requested while authenticating. + items: + type: string + type: array + type: object + type: array + defaultProvider: + description: The Default Authentication Provider to use + when more than one Authentication Provider is configured + and the unauthenticated_action is set to RedirectToLoginPage. + The Default Authentication Provider to use when the `unauthenticated_action` + is set to `RedirectToLoginPage`. + type: string + excludedPaths: + description: The paths which should be excluded from the + unauthenticated_action when it is set to RedirectToLoginPage. + The paths which should be excluded from the `unauthenticated_action` + when it is set to `RedirectToLoginPage`. + items: + type: string + type: array + facebookV2: + description: A facebook_v2 block as defined below. + items: + properties: + appId: + description: The App ID of the Facebook app used for + login. The App ID of the Facebook app used for login. + type: string + appSecretSettingName: + description: The app setting name that contains the + app_secret value used for Facebook Login. The app + setting name that contains the `app_secret` value + used for Facebook Login. + type: string + graphApiVersion: + description: The version of the Facebook API to be + used while logging in. The version of the Facebook + API to be used while logging in. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of scopes to be requested as part + of Facebook Login authentication. + items: + type: string + type: array + type: object + type: array + forwardProxyConvention: + description: The convention used to determine the url of + the request made. Possible values include ForwardProxyConventionNoProxy, + ForwardProxyConventionStandard, ForwardProxyConventionCustom. + Defaults to ForwardProxyConventionNoProxy. The convention + used to determine the url of the request made. Possible + values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, + `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + type: string + forwardProxyCustomHostHeaderName: + description: The name of the custom header containing the + host of the request. The name of the header containing + the host of the request. + type: string + forwardProxyCustomSchemeHeaderName: + description: The name of the custom header containing the + scheme of the request. The name of the header containing + the scheme of the request. + type: string + githubV2: + description: A github_v2 block as defined below. + items: + properties: + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The ID of the + GitHub app used for login. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for GitHub Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of OAuth 2.0 scopes that will be + requested as part of GitHub Login authentication. + items: + type: string + type: array + type: object + type: array + googleV2: + description: A google_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Google Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OpenID + Connect Client ID for the Google web application. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name that contains + the `client_secret` value used for Google Login. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + Specifies a list of Login scopes that will be requested + as part of Google Sign-In authentication. + items: + type: string + type: array + type: object + type: array + httpRouteApiPrefix: + description: The prefix that should precede all the authentication + and authorisation paths. Defaults to /.auth. The prefix + that should precede all the authentication and authorisation + paths. Defaults to `/.auth` + type: string + login: + description: A login block as defined below. + items: + properties: + allowedExternalRedirectUrls: + description: External URLs that can be redirected + to as part of logging in or logging out of the app. + This is an advanced setting typically only needed + by Windows Store application backends. External + URLs that can be redirected to as part of logging + in or logging out of the app. This is an advanced + setting typically only needed by Windows Store application + backends. **Note:** URLs within the current domain + are always implicitly allowed. + items: + type: string + type: array + cookieExpirationConvention: + description: 'The method by which cookies expire. + Possible values include: FixedTime, and IdentityProviderDerived. + Defaults to FixedTime. The method by which cookies + expire. Possible values include: `FixedTime`, and + `IdentityProviderDerived`. Defaults to `FixedTime`.' + type: string + cookieExpirationTime: + description: The time after the request is made when + the session cookie should expire. Defaults to 08:00:00. + The time after the request is made when the session + cookie should expire. Defaults to `08:00:00`. + type: string + logoutEndpoint: + description: The endpoint to which logout requests + should be made. The endpoint to which logout requests + should be made. + type: string + nonceExpirationTime: + description: The time after the request is made when + the nonce should expire. Defaults to 00:05:00. The + time after the request is made when the nonce should + expire. Defaults to `00:05:00`. + type: string + preserveUrlFragmentsForLogins: + description: Should the fragments from the request + be preserved after the login request is made. Defaults + to false. Should the fragments from the request + be preserved after the login request is made. Defaults + to `false`. + type: boolean + tokenRefreshExtensionTime: + description: The number of hours after session token + expiration that a session token can be used to call + the token refresh API. Defaults to 72 hours. The + number of hours after session token expiration that + a session token can be used to call the token refresh + API. Defaults to `72` hours. + type: number + tokenStoreEnabled: + description: Should the Token Store configuration + Enabled. Defaults to false Should the Token Store + configuration Enabled. Defaults to `false` + type: boolean + tokenStorePath: + description: The directory path in the App Filesystem + in which the tokens will be stored. The directory + path in the App Filesystem in which the tokens will + be stored. + type: string + tokenStoreSasSettingName: + description: The name of the app setting which contains + the SAS URL of the blob storage containing the tokens. + The name of the app setting which contains the SAS + URL of the blob storage containing the tokens. + type: string + validateNonce: + description: Should the nonce be validated while completing + the login flow. Defaults to true. Should the nonce + be validated while completing the login flow. Defaults + to `true`. + type: boolean + type: object + type: array + microsoftV2: + description: A microsoft_v2 block as defined below. + items: + properties: + allowedAudiences: + description: Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. Specifies a list of Allowed Audiences + that will be requested as part of Microsoft Sign-In + authentication. + items: + type: string + type: array + clientId: + description: The OAuth 2.0 client ID that was created + for the app used for authentication. The OAuth 2.0 + client ID that was created for the app used for + authentication. + type: string + clientSecretSettingName: + description: The app setting name containing the OAuth + 2.0 client secret that was created for the app used + for authentication. The app setting name containing + the OAuth 2.0 client secret that was created for + the app used for authentication. + type: string + loginScopes: + description: The list of Login scopes that should + be requested as part of Microsoft Account authentication. + The list of Login scopes that will be requested + as part of Microsoft Account authentication. + items: + type: string + type: array + type: object + type: array + requireAuthentication: + description: Should the authentication flow be used for + all requests. Should the authentication flow be used for + all requests. + type: boolean + requireHttps: + description: Should HTTPS be required on connections? Defaults + to true. Should HTTPS be required on connections? Defaults + to true. + type: boolean + runtimeVersion: + description: The Runtime Version of the Authentication and + Authorisation feature of this App. Defaults to ~1. The + Runtime Version of the Authentication and Authorisation + feature of this App. Defaults to `~1` + type: string + twitterV2: + description: A twitter_v2 block as defined below. + items: + properties: + consumerKey: + description: The OAuth 1.0a consumer key of the Twitter + application used for sign-in. The OAuth 1.0a consumer + key of the Twitter application used for sign-in. + type: string + consumerSecretSettingName: + description: The app setting name that contains the + OAuth 1.0a consumer secret of the Twitter application + used for sign-in. The app setting name that contains + the OAuth 1.0a consumer secret of the Twitter application + used for sign-in. + type: string + type: object + type: array + unauthenticatedAction: + description: The action to take for requests made without + authentication. Possible values include RedirectToLoginPage, + AllowAnonymous, Return401, and Return403. Defaults to + RedirectToLoginPage. The action to take for requests made + without authentication. Possible values include `RedirectToLoginPage`, + `AllowAnonymous`, `Return401`, and `Return403`. Defaults + to `RedirectToLoginPage`. + type: string + type: object + type: array + backup: + description: A backup block as defined below. + items: + properties: + enabled: + description: Should this backup job be enabled? Defaults + to true. Should this backup job be enabled? + type: boolean + name: + description: The name which should be used for this Backup. + The name which should be used for this Backup. + type: string + schedule: + description: A schedule block as defined below. + items: + properties: + frequencyInterval: + description: How often the backup should be executed + (e.g. for weekly backup, this should be set to 7 + and frequency_unit should be set to Day). How often + the backup should be executed (e.g. for weekly backup, + this should be set to `7` and `frequency_unit` should + be set to `Day`). + type: number + frequencyUnit: + description: 'The unit of time for how often the backup + should take place. Possible values include: Day, + Hour The unit of time for how often the backup should + take place. Possible values include: `Day` and `Hour`.' + type: string + keepAtLeastOneBackup: + description: Should the service keep at least one + backup, regardless of age of backup. Defaults to + false. Should the service keep at least one backup, + regardless of age of backup. Defaults to `false`. + type: boolean + retentionPeriodDays: + description: After how many days backups should be + deleted. Defaults to 30. After how many days backups + should be deleted. + type: number + startTime: + description: When the schedule should start working + in RFC-3339 format. When the schedule should start + working in RFC-3339 format. + type: string + type: object + type: array + type: object + type: array + clientAffinityEnabled: + description: Should Client Affinity be enabled? + type: boolean + clientCertificateEnabled: + description: Should Client Certificates be enabled? + type: boolean + clientCertificateExclusionPaths: + description: Paths to exclude when using client certificates, + separated by ; Paths to exclude when using client certificates, + separated by ; + type: string + clientCertificateMode: + description: The Client Certificate mode. Possible values are + Required, Optional, and OptionalInteractiveUser. This property + has no effect when client_cert_enabled is false + type: string + connectionString: + description: One or more connection_string blocks as defined below. + items: + properties: + name: + description: The name of the connection String. The name + which should be used for this Connection. + type: string + type: + description: 'Type of database. Possible values include: + APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, + PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. + Type of database. Possible values include: `MySQL`, `SQLServer`, + `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, + `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`.' + type: string + type: object + type: array + enabled: + description: Should the Windows Web App Slot be enabled? Defaults + to true. + type: boolean + httpsOnly: + description: Should the Windows Web App Slot require HTTPS connections. + type: boolean + identity: + description: An identity block as defined below. + items: + properties: + identityIds: + description: A list of User Assigned Managed Identity IDs + to be assigned to this Windows Web App Slot. + items: + type: string + type: array + type: + description: Specifies the type of Managed Service Identity + that should be configured on this Windows Web App Slot. + Possible values are SystemAssigned, UserAssigned, SystemAssigned, + UserAssigned (to enable both). + type: string + type: object + type: array + keyVaultReferenceIdentityId: + description: The User Assigned Identity ID used for accessing + KeyVault secrets. The identity must be assigned to the application + in the identity block. For more information see - Access vaults + with a user-assigned identity + type: string + logs: + description: A logs block as defined below. + items: + properties: + applicationLogs: + description: A application_logs block as defined above. + items: + properties: + azureBlobStorage: + description: A azure_blob_storage_http block as defined + above. + items: + properties: + level: + description: 'The level at which to log. Possible + values include Error, Warning, Information, + Verbose and Off. NOTE: this field is not available + for http_logs' + type: string + retentionInDays: + description: The retention period in days. A + values of 0 means no retention. + type: number + sasUrl: + description: SAS url to an Azure blob container + with read/write/list/delete permissions. + type: string + type: object + type: array + fileSystemLevel: + description: 'Log level. Possible values include: + Verbose, Information, Warning, and Error.' + type: string + type: object + type: array + detailedErrorMessages: + description: Should detailed error messages be enabled. + type: boolean + failedRequestTracing: + description: Should failed request tracing be enabled. + type: boolean + httpLogs: + description: An http_logs block as defined above. + items: + properties: + azureBlobStorage: + description: A azure_blob_storage_http block as defined + above. + items: + properties: + retentionInDays: + description: The retention period in days. A + values of 0 means no retention. + type: number + type: object + type: array + fileSystem: + description: A file_system block as defined above. + items: + properties: + retentionInDays: + description: The retention period in days. A + values of 0 means no retention. + type: number + retentionInMb: + description: The maximum size in megabytes that + log files can use. + type: number + type: object + type: array + type: object + type: array + type: object + type: array + servicePlanId: + description: The ID of the Service Plan in which to run this slot. + If not specified the same Service Plan as the Windows Web App + will be used. + type: string + siteConfig: + description: A site_config block as defined below. + items: + properties: + alwaysOn: + description: If this Windows Web App Slot is Always On enabled. + Defaults to true. + type: boolean + apiDefinitionUrl: + description: The URL to the API Definition for this Windows + Web App Slot. + type: string + apiManagementApiId: + description: The API Management API ID this Windows Web + App Slot os associated with. + type: string + appCommandLine: + description: The App command line to launch. + type: string + applicationStack: + description: A application_stack block as defined above. + items: + properties: + currentStack: + description: The Application Stack for the Windows + Web App. Possible values include dotnet, dotnetcore, + node, python, php, and java. + type: string + dockerContainerName: + description: The name of the Docker Container. For + example azure-app-service/samples/aspnethelloworld + type: string + dockerContainerRegistry: + description: The registry Host on which the specified + Docker Container can be located. For example mcr.microsoft.com + type: string + dockerContainerTag: + description: The Image Tag of the specified Docker + Container to use. For example latest + type: string + dotnetCoreVersion: + description: The version of .NET to use when current_stack + is set to dotnetcore. Possible values include v4.0. + The version of DotNetCore to use. + type: string + dotnetVersion: + description: The version of .NET to use when current_stack + is set to dotnet. Possible values include v2.0,v3.0, + v4.0, v5.0, v6.0 and v7.0. + type: string + javaContainer: + type: string + javaContainerVersion: + type: string + javaEmbeddedServerEnabled: + description: Should the Java Embedded Server (Java + SE) be used to run the app. Should the application + use the embedded web server for the version of Java + in use. + type: boolean + javaVersion: + description: The version of Java to use when current_stack + is set to java. Possible values include 1.7, 1.8, + 11 and 17. Required with java_container and java_container_version. + type: string + nodeVersion: + description: The version of node to use when current_stack + is set to node. Possible values include ~12, ~14, + ~16, and ~18. + type: string + phpVersion: + description: The version of PHP to use when current_stack + is set to php. Possible values are 7.1, 7.4 and + Off. + type: string + python: + description: The app is a Python app. Defaults to + false. + type: boolean + pythonVersion: + type: string + tomcatVersion: + description: The version of Tomcat the Java App should + use. + type: string + type: object + type: array + autoHealEnabled: + description: Should Auto heal rules be enabled. Required + with auto_heal_setting. + type: boolean + autoHealSetting: + description: A auto_heal_setting block as defined above. + Required with auto_heal. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. + items: + properties: + actionType: + description: Predefined action to be taken to + an Auto Heal trigger. Possible values are + CustomAction, LogEvent and Recycle. + type: string + customAction: + description: A custom_action block as defined + below. + items: + properties: + executable: + description: The executable to run for + the custom_action. + type: string + parameters: + description: The parameters to pass to + the specified executable. + type: string + type: object + type: array + minimumProcessExecutionTime: + description: The minimum amount of time in hh:mm:ss + the Windows Web App Slot must have been running + before the defined action will be run in the + event of a trigger. + type: string + type: object + type: array + trigger: + description: A trigger block as defined below. + items: + properties: + privateMemoryKb: + description: The amount of Private Memory to + be consumed for this rule to trigger. Possible + values are between 102400 and 13631488. + type: number + requests: + description: A requests block as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + type: object + type: array + slowRequest: + description: One or more slow_request blocks + as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + path: + description: The path to which this rule + status code applies. + type: string + timeTaken: + description: The threshold of time passed + to qualify as a Slow Request in hh:mm:ss. + type: string + type: object + type: array + statusCode: + description: One or more status_code blocks + as defined above. + items: + properties: + count: + description: The number of occurrences + of the defined status_code in the specified + interval on which to trigger this rule. + type: number + interval: + description: The time interval in the + form hh:mm:ss. + type: string + path: + description: The path to which this rule + status code applies. + type: string + statusCodeRange: + description: The status code for this + rule, accepts single status codes and + status code ranges. e.g. 500 or 400-499. + Possible values are integers between + 101 and 599 + type: string + subStatus: + description: The Request Sub Status of + the Status Code. + type: number + win32Status: + description: The Win32 Status Code of + the Request. + type: string + type: object + type: array + type: object + type: array + type: object + type: array + autoSwapSlotName: + description: The Windows Web App Slot Name to automatically + swap to when deployment to that slot is successfully completed. + type: string + containerRegistryManagedIdentityClientId: + description: The Client ID of the Managed Service Identity + to use for connections to the Azure Container Registry. + type: string + containerRegistryUseManagedIdentity: + description: Should connections for Azure Container Registry + use Managed Identity. + type: boolean + cors: + description: A cors block as defined above. + items: + properties: + allowedOrigins: + description: Specifies a list of origins that should + be allowed to make cross-origin calls. Specifies + a list of origins that should be allowed to make + cross-origin calls. + items: + type: string + type: array + supportCredentials: + description: Whether CORS requests with credentials + are allowed. Defaults to false Are credentials allowed + in CORS requests? Defaults to `false`. + type: boolean + type: object + type: array + defaultDocuments: + description: Specifies a list of Default Documents for the + Windows Web App Slot. + items: + type: string + type: array + ftpsState: + description: 'The State of FTP / FTPS service. Possible + values include: AllAllowed, FtpsOnly, Disabled.' + type: string + healthCheckEvictionTimeInMin: + description: The amount of time in minutes that a node can + be unhealthy before being removed from the load balancer. + Possible values are between 2 and 10. Only valid in conjunction + with health_check_path. The amount of time in minutes + that a node is unhealthy before being removed from the + load balancer. Possible values are between `2` and `10`. + Defaults to `10`. Only valid in conjunction with `health_check_path` + type: number + healthCheckPath: + description: The path to the Health Check. + type: string + http2Enabled: + description: Should the HTTP2 be enabled? + type: boolean + ipRestriction: + description: One or more ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + loadBalancingMode: + description: 'The Site load balancing. Possible values include: + WeightedRoundRobin, LeastRequests, LeastResponseTime, + WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. + Defaults to LeastRequests if omitted.' + type: string + localMysqlEnabled: + description: Use Local MySQL. Defaults to false. + type: boolean + managedPipelineMode: + description: 'Managed pipeline mode. Possible values include: + Integrated, Classic.' + type: string + minimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests. Possible values include: 1.0, + 1.1, and 1.2. Defaults to 1.2.' + type: string + remoteDebuggingEnabled: + description: Should Remote Debugging be enabled. Defaults + to false. + type: boolean + remoteDebuggingVersion: + description: The Remote Debugging Version. Possible values + include VS2017 and VS2019 + type: string + scmIpRestriction: + description: One or more scm_ip_restriction blocks as defined + above. + items: + properties: + action: + description: The action to take. Possible values are + Allow or Deny. The action to take. Possible values + are `Allow` or `Deny`. + type: string + headers: + description: A headers block as defined above. + items: + properties: + xAzureFdid: + description: Specifies a list of Azure Front + Door IDs. + items: + type: string + type: array + xFdHealthProbe: + description: Specifies if a Front Door Health + Probe should be expected. The only possible + value is 1. + items: + type: string + type: array + xForwardedFor: + description: Specifies a list of addresses for + which matching should be applied. Omitting + this value means allow any. + items: + type: string + type: array + xForwardedHost: + description: Specifies a list of Hosts for which + matching should be applied. + items: + type: string + type: array + type: object + type: array + ipAddress: + description: 'The CIDR notation of the IP or IP Range + to match. For example: 10.0.0.0/24 or 192.168.10.1/32 + The CIDR notation of the IP or IP Range to match. + For example: `10.0.0.0/24` or `192.168.10.1/32` + or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22`' + type: string + name: + description: The name which should be used for this + Storage Account. The name which should be used for + this `ip_restriction`. + type: string + priority: + description: The priority value of this ip_restriction. + Defaults to 65000. The priority value of this `ip_restriction`. + type: number + serviceTag: + description: The Service Tag used for this IP Restriction. + The Service Tag used for this IP Restriction. + type: string + type: object + type: array + scmMinimumTlsVersion: + description: 'The configures the minimum version of TLS + required for SSL requests to the SCM site Possible values + include: 1.0, 1.1, and 1.2. Defaults to 1.2.' + type: string + scmUseMainIpRestriction: + description: Should the Windows Web App Slot ip_restriction + configuration be used for the SCM also. + type: boolean + use32BitWorker: + description: Should the Windows Web App Slotuse a 32-bit + worker. Defaults to true. + type: boolean + virtualApplication: + description: One or more virtual_application blocks as defined + below. + items: + properties: + physicalPath: + description: The physical path for the Virtual Application. + type: string + preload: + description: Should pre-loading be enabled. + type: boolean + virtualDirectory: + description: One or more virtual_directory blocks + as defined below. + items: + properties: + physicalPath: + description: The physical path for the Virtual + Application. + type: string + virtualPath: + description: The Virtual Path for the Virtual + Application. + type: string + type: object + type: array + virtualPath: + description: The Virtual Path for the Virtual Application. + type: string + type: object + type: array + vnetRouteAllEnabled: + description: Should all outbound traffic to have NAT Gateways, + Network Security Groups and User Defined Routes applied? + Defaults to false. Should all outbound traffic to have + Virtual Network Security Groups and User Defined Routes + applied? Defaults to `false`. + type: boolean + websocketsEnabled: + description: Should Web Sockets be enabled. Defaults to + false. + type: boolean + workerCount: + description: The number of Workers for this Windows App + Service Slot. + type: number + type: object + type: array + storageAccount: + description: One or more storage_account blocks as defined below. + items: + properties: + accountName: + description: The Name of the Storage Account. + type: string + mountPath: + description: The path at which to mount the storage share. + type: string + name: + description: The name which should be used for this Storage + Account. + type: string + shareName: + description: The Name of the File Share or Container Name + for Blob storage. + type: string + type: + description: The Azure Storage Type. Possible values include + AzureFiles and AzureBlob + type: string + type: object + type: array + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Windows Web App Slot. + type: object + zipDeployFile: + description: The local path and filename of the Zip packaged application + to deploy to this Windows Web App. The local path and filename + of the Zip packaged application to deploy to this Windows Web + App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` + on the App in `app_settings`. + type: string + type: object + managementPolicies: + default: + - '*' + description: 'THIS IS AN ALPHA FIELD. Do not use it in production. + It is not honored unless the relevant Crossplane feature flag is + enabled, and may be changed or removed without notice. ManagementPolicies + specify the array of actions Crossplane is allowed to take on the + managed and external resources. This field is planned to replace + the DeletionPolicy field in a future release. Currently, both could + be set independently and non-default values would be honored if + the feature flag is enabled. If both are custom, the DeletionPolicy + field will be ignored. See the design doc for more information: + https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 + and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md' + items: + description: A ManagementAction represents an action that the Crossplane + controllers can take on an external resource. + enum: + - Observe + - Create + - Update + - Delete + - LateInitialize + - '*' + type: string + type: array providerConfigRef: default: name: default @@ -2284,7 +3631,9 @@ spec: type: object x-kubernetes-validations: - message: siteConfig is a required parameter - rule: self.managementPolicy == 'ObserveOnly' || has(self.forProvider.siteConfig) + rule: '!(''*'' in self.managementPolicies || ''Create'' in self.managementPolicies + || ''Update'' in self.managementPolicies) || has(self.forProvider.siteConfig) + || has(self.initProvider.siteConfig)' status: description: WindowsWebAppSlotStatus defines the observed state of WindowsWebAppSlot. properties: